C++大神帮帮忙!~~这个是一个游戏的程序,现在只能买到1-1 2-2 3-3 的属性矿,我想实现玩家可以购买到50-50的属性矿应该怎么修改!~~~

weixin_41635859 2018-01-15 09:29:43
npc_cwxz = createNPC(0, 1589, 1527, 25, 1126, '上古矿师', 4, 4, 1)
--基础价格
KuangList = {
{id = 1200 ,name = '铜矿石' ,up = 10000},
{id = 1201 ,name = '铁矿石' ,up = 10000},
{id = 1202 ,name = '火铜矿石' ,up = 10000},
{id = 1203 ,name = '寒铁矿石' ,up = 10000},
{id = 1204 ,name = '乌金矿石' ,up = 20000},
{id = 1205 ,name = '玄金矿石' ,up = 40000},
{id = 1206 ,name = '天陨矿石' ,up = 60000},
{id = 1207 ,name = '混沌矿晶' ,up = 100000},
{id = 1208 ,name = '七彩神石' ,up = 200000},
}

--属性价格比率
KSList = {
{name = '利刃' ,desc = '攻击' ,rate = 3},
{name = '磐石' ,desc = '防御' ,rate = 2},
{name = '沉思' ,desc = '法攻' ,rate = 3},
{name = '凝固' ,desc = '法防' ,rate = 2},
{name = '凝视' ,desc = '命中' ,rate = 2},
{name = '幻影' ,desc = '闪避' ,rate = 2},
}

--点数价格比率
KLList = {
{name = '1-1' ,rate = 1},
{name = '2-2' ,rate = 3},
{name = '3-3' ,rate = 5},
}

function KSmm_OnRequest()
KSmm()
end

function KSmm()
-- 取得玩家指针
r,actorid = ISGetActorID()
if r~= 0 then
return
end

local player = getPlayerHandle(actorid)
if player == 0 then
return
end
local plyLevel = getCreatureProperty(player,0) + 1
map = getThingMap(player)

-- 玩家选择标志
SelectItem = ISGetRequestNumber('selectitem')

if SelectItem == 0 then
ISResponseClear()
ISResponseWrite('<br><text color="255,255,0">上古矿师:</text><br><br>')
ISResponseWrite('  您可以使用华夏币自助购买属性矿!<br><br>')
for i = 1 ,9 do
ISResponseWrite(i..'.<a href="KSmm.lua?selectitem=1&itemid='..i..'&funcflag=10087">'..KuangList[i]['name']..'</a><br>')
end
elseif SelectItem == 1 then
ISResponseClear()
itemid = ISGetRequestNumber('itemid')
ISResponseWrite('<br><text color="255,255,0">上古矿师:</text><br><br>')
ISResponseWrite('  您可以使用华夏币自助购买属性矿!<br>')
ISResponseWrite('  你选择的是:<text color="232,164,23">'..KuangList[itemid]['name']..'</text><br>')
ISResponseWrite('  请选择购买的属性:<br><br>')
for i = 1 ,6 do
ISResponseWrite(i..'.<a href="KSmm.lua?selectitem=2&itemid='..itemid..'&attrid='..i..'&funcflag=10087">'..KSList[i]['name']..' 【'..KSList[i]['desc']..'】</a><br>')
end
elseif SelectItem == 2 then
ISResponseClear()
itemid = ISGetRequestNumber('itemid')
attrid = ISGetRequestNumber('attrid')
ISResponseWrite('<br><text color="255,255,0">上古矿师:</text><br><br>')
ISResponseWrite('  您可以使用华夏币自助购买属性矿!<br>')
ISResponseWrite('  你选择的是:<text color="232,164,23">'..KuangList[itemid]['name']..'('..KSList[attrid]['name']..')</text><br>')
ISResponseWrite('  请选择购买的属性:<br><br>')
local up = KuangList[itemid]['up'] * KSList[attrid]['rate']
for i = 1 ,3 do
ISResponseWrite(i..'.<a href="KSmm.lua?selectitem=3&itemid='..itemid..'&attrid='..attrid..'&attrval='..i..'&funcflag=10087">'..KLList[i]['name']..' 【'..KLList[i]['rate'] * up..'华夏币】</a><br>')
end
elseif SelectItem == 3 then
itemid = ISGetRequestNumber('itemid')
attrid = ISGetRequestNumber('attrid')
attrval = ISGetRequestNumber('attrval')
local up = KuangList[itemid]['up'] * KSList[attrid]['rate'] * KLList[attrval]['rate']
local name = KuangList[itemid]['name']..'*'..KSList[attrid]['name']..'('..KLList[attrval]['name']..')'
addGoodsNum = 5
local money = getCreatureProperty(player, 50)
if money < up * addGoodsNum then
BroadcastMessageOneActor(map, player, '华夏币不足!!!')
return
else
addCreatureProperty(player, 50, - up * addGoodsNum)
local sxkuang = createJewel(map, 0, 0, itemid + 1199, attrid, attrval, attrval, 0, 0, addGoodsNum)
addGoods(player, sxkuang)
BroadcastMessageOneActor(map, player, '你获得'..addGoodsNum..'个'..name..'!')
end
-- 离开处理
elseif SelectItem == 99 then
ISResponseClear()
else
ISResponseClear()
end
end


-- 脚本卸载调用函数
function KSmm_Destroy()
DeleteNPC(npc_KSmmNPC)
end
...全文
524 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
super_admi 2018-01-17
  • 打赏
  • 举报
回复
我查了一下,你应该发到Ruby版块。
super_admi 2018-01-17
  • 打赏
  • 举报
回复
发错版块了吧?这明显不是C/C++,也不是VB,更不是JAVA,不是C#,不是Python, 这是方言脚本吧?
赵4老师 2018-01-16
  • 打赏
  • 举报
回复
代码功能归根结底不是别人帮自己看或讲解或注释出来的;而是被自己静下心来花足够长的时间和精力亲自动手单步或设断点或对执行到某步获得的中间结果显示或写到日志文件中一步一步分析出来的。 提醒:再牛×的老师也无法代替学生自己领悟和上厕所! 单步调试和设断点调试(VS IDE中编译连接通过以后,按F10或F11键单步执行,按Shift+F11退出当前函数;在某行按F9设断点后按F5执行停在该断点处。)是程序员必须掌握的技能之一。
weixin_41635859 2018-01-16
  • 打赏
  • 举报
回复
首先感谢赵4老师能回复我的帖子.....我是个小白,根本不会运行VSIDE 就连VSIDE是什么我都不知道, "提醒:再牛×的老师也无法代替学生自己领悟和上厕所!"这句话是不是说的过重了??? 你教我就教我不教我就算了 说这些有的没的有意思么??配的上老师的这个神圣的职业么??

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧