Postado Agosto 26, 2017 7 anos Tendo esse seguinte script abaixo, se possível incrementar, mais uma coluna "de charges" para que eu use aols, etc... e ao usar essa mesma action, teleportar para X posição, e quando chegar nessa X posição, sai um effect e ganha uma storage. --[numeração] = {id = ID DO ITEM, count = QUANTIDADE DO ITEM, c = CHANCE, char = charges} local items = { --[numeração] = {id = ID DO ITEM, count = QUANTIDADE DO ITEM, c = CHANCE} [1]={id=8884, count=1, c=10}, -- item 1 [2]={id=8890, count=1, c=10}, -- item 2 [3]={id=8888, count=1, c=10}, -- item 3 [4]={id=8905, count=1, c=10}, -- item 4 [5]={id=10511, count=1, c=10}, -- item 5 [6]={id=10515, count=1, c=10}, -- item 6 [7]={id=10514, count=1, c=10}, -- item 7 [8]={id=10139, count=1, c=10}, -- item 8 [9]={id=10719, count=1, c=10}, -- item 9 [10]={id=12608, count=75, c=10}, -- item 9 } function getRandomItem(t) local i = math.random(1, #t) i = t[i] if math.random(1, 100) <= i.c then return i end return getRandomItem(t) end function onUse(cid, item, fromPosition, itemEx, toPosition) local i = getRandomItem(items) doPlayerAddItem(cid, i.id, i.count) doSendAnimatedText(getPlayerPosition(cid), "Magic Box!", TEXTCOLOR_YELLOW) doPlayerSendTextMessage(cid, 27, "You opened a chest event and won "..i.count.."x "..getItemNameById(i.id)..(i.count > 1 and "s" or "")..".") doRemoveItem(item.uid, 1) return true end Pedido de 2 scripts: 1 - Uma action Ao clicar na porta, (contendo um actionid), você é teleportado para uma posição X, e terá 15 segundos para fazer uma ação, após esse tempo, é teleportado para outra posição, mas, se tiver uma X storage temporária, ele não é teleportado. 2 - Movements que remove uma storage. Editado Agosto 26, 2017 7 anos por JcA (veja o histórico de edições)
Postado Agosto 26, 2017 7 anos Solução local items = { --[numeração] = {id = ID DO ITEM, count = QUANTIDADE DO ITEM, c = CHANCE} [1]={id=8884, count=1, c=10}, -- item 1 [2]={id=8890, count=1, c=10}, -- item 2 [3]={id=8888, count=1, c=10}, -- item 3 [4]={id=8905, count=1, c=10}, -- item 4 [5]={id=10511, count=1, c=10}, -- item 5 [6]={id=10515, count=1, c=10}, -- item 6 [7]={id=10514, count=1, c=10}, -- item 7 [8]={id=10139, count=1, c=10}, -- item 8 [9]={id=10719, count=1, c=10}, -- item 9 [10]={id=12608, count=75, c=10}, -- item 9 } function getRandomItem(t) local i = math.random(1, #t) i = t[i] if math.random(1, 100) <= i.c then return i end return getRandomItem(t) end function onUse(cid, item, fromPosition, itemEx, toPosition) local i = getRandomItem(items) local effect = 1 local Pos = {x = 1, y = 1, z = 7} local PlayerPos = {x = getPlayerPosition(cid).x + 0, y = getPlayerPosition(cid).y + 0, z = getPlayerPosition(cid).z} local stor = 98543 if getPlayerStorageValue(cid,stor) == -1 then doPlayerAddItem(cid, i.id, i.count) doTeleportThing(cid, Pos) doSendMagicEffect(PlayerPos,effect) doSendAnimatedText(getPlayerPosition(cid), "Magic Box!", TEXTCOLOR_YELLOW) doPlayerSendTextMessage(cid, 27, "You opened a chest event and won "..i.count.."x "..getItemNameById(i.id)..(i.count > 1 and "s" or "")..".") doRemoveItem(item.uid, 1) setPlayerStorageValue(cid,stor,1) else doPlayerSendTextMessage(cid,25,"The chest event is empty.") end return true end Movements function onStepIn(cid, item, pos) local stor = x if getPlayerStorageValue(cid,stor) > 1 then doPlayerSendCancel(cid,"Removido") setPlayerStorageValue(cid,stor,0) end end Editado Agosto 26, 2017 7 anos por DboExplorer (veja o histórico de edições) Te ajudei ?? Que tal fazer uma contribuição ?
Postado Agosto 26, 2017 7 anos Autor 8 minutos atrás, DboExplorer disse: local items = { --[numeração] = {id = ID DO ITEM, count = QUANTIDADE DO ITEM, c = CHANCE} [1]={id=8884, count=1, c=10}, -- item 1 [2]={id=8890, count=1, c=10}, -- item 2 [3]={id=8888, count=1, c=10}, -- item 3 [4]={id=8905, count=1, c=10}, -- item 4 [5]={id=10511, count=1, c=10}, -- item 5 [6]={id=10515, count=1, c=10}, -- item 6 [7]={id=10514, count=1, c=10}, -- item 7 [8]={id=10139, count=1, c=10}, -- item 8 [9]={id=10719, count=1, c=10}, -- item 9 [10]={id=12608, count=75, c=10}, -- item 9 } function getRandomItem(t) local i = math.random(1, #t) i = t[i] if math.random(1, 100) <= i.c then return i end return getRandomItem(t) end function onUse(cid, item, fromPosition, itemEx, toPosition) local i = getRandomItem(items) local effect = 1 local PlayerPos = {x = getPlayerPosition(cid).x + 0, y = getPlayerPosition(cid).y + 0, z = getPlayerPosition(cid).z} local stor = 98543 if getPlayerStorageValue(cid,stor) == -1 then doPlayerAddItem(cid, i.id, i.count) doTeleportThing(cid, Pos) doSendMagicEffect(PlayerPos,effect) doSendAnimatedText(getPlayerPosition(cid), "Magic Box!", TEXTCOLOR_YELLOW) doPlayerSendTextMessage(cid, 27, "You opened a chest event and won "..i.count.."x "..getItemNameById(i.id)..(i.count > 1 and "s" or "")..".") doRemoveItem(item.uid, 1) setPlayerStorageValue(cid,stor,1) else doPlayerSendTextMessage(cid,25,"The chest event is empty.") end return true end Movements function onStepIn(cid, item, pos) local stor = x if getPlayerStorageValue(cid,stor) > 1 then doPlayerSendCancel(cid,"Removido") setPlayerStorageValue(cid,stor,0) end end Onde eu configuro essa action para ir para determinada posição? Editado Agosto 26, 2017 7 anos por JcA (veja o histórico de edições)
Postado Agosto 26, 2017 7 anos 27 minutos atrás, JcA disse: Onde eu configuro essa action para ir para determinada posição? Editado Te ajudei ?? Que tal fazer uma contribuição ?
Postado Agosto 27, 2017 7 anos Autor 14 horas atrás, DboExplorer disse: Editado Consegui com esse Movements, e a Action esta perfeita, agr: function onStepIn(cid) if isPlayer(cid) then setPlayerStorageValue(cid, 98543, -1) doSendAnimatedText(getPlayerPosition(cid), "Boa Sorte!", TEXTCOLOR_YELLOW) end return true end E esse outro script para porta, tem como? Editado Agosto 27, 2017 7 anos por JcA (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.