Postado Abril 1, 2014 11 anos Substitui por esse: local config = { [1] = { item = 2160 , count = 10 } , [2] = { item = 2160 , count = 10 } , [3] = { item = 2160 , count = 10 } , [4] = { item = 2160 , count = 10 } , [5] = { removeItem = 2160 , count = 1 } } function onUse(cid, item, frompos, item2, topos) if(doPlayerRemoveItem(cid, config[4].removeItem, config[4].count)) then doPlayerSendTextMessage(cid,22,"Aposta realizada! Aguarde o resultado!") local sort = config[math.random(1, #config -1)] doPlayerAddItem(uid, config[sort].item, config[sort].count) else doPlayerSendTextMessage(cid,22,"Você não possui dinheiro suficiente para fazer a aposta!") end return true end
Postado Abril 1, 2014 11 anos Mesmo erro, [1/4/2014 17:3:1] [Error - Action Interface] [1/4/2014 17:3:1] data/actions/scripts/surprise2.lua:onUse [1/4/2014 17:3:1] Description: [1/4/2014 17:3:1] data/actions/scripts/surprise2.lua:13: attempt to index field '?' (a nil value) [1/4/2014 17:3:1] stack traceback: [1/4/2014 17:3:1] data/actions/scripts/surprise2.lua:13: in function <data/actions/scripts/surprise2.lua:9>
Postado Abril 2, 2014 11 anos Bom, desculpe pela demora, tenho faculdade a noite, e trabalho durante o dia, aqui vai: Já testei e funcionou. Na alavanca, muda o número que você pois em action para 0, e coloque o numero que tinha antes em actionid, poe em uniqueid, depois salva o mapa. Ai, na actions.xml, mude a tag que tinha antes para: <action uniqueid="NUMERO" script="nomeDoArquivo.lua"/> Agora, nos scripts, mude o que vc tinha para: local config = { [1] = { item = 2470 } , [2] = { item = 2466 } , [3] = { item = 2471 } , [4] = { item = 2160 } , [5] = { removeItem = 2160 , count = 1 } } function onUse(cid, item, frompos, item2, topos) local own = getPlayerItemCount(cid, config[5].removeItem) if item.uid == 8787 then -- uniqid que vai na alavanca if(own > 0) then doPlayerRemoveItem(cid, config[5].removeItem, config[5].count) doPlayerSendTextMessage(cid,22,"Aposta realizada! Aguarde o resultado!") local sort = config[math.random(1, #config -1)].item if(sort == 2160) then item_uid = doPlayerAddItem(cid, sort, 10) -- 10 é quantidade de item se for crystal coin doPlayerSendTextMessage(cid,22,"Você recebeu seu prêmio !") return true else item_uid = doPlayerAddItem(cid, sort, 1) -- 1 é a quantidade do item normal (n empilhavel) doPlayerSendTextMessage(cid,22,"Você recebeu seu prêmio !") return true end else doPlayerSendTextMessage(cid,22,"Você não possui dinheiro suficiente para fazer a aposta!") return false end end end Espero ter ajudado, foi dificil portanto se possível contribui com um +REP =) -GstavoLiber Editado Abril 2, 2014 11 anos por GstavoLiber (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.