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