Postado Janeiro 21, 2018 7 anos Autor @Mono Singed quando eu puxasse a alavanca pra direita -> todos os players online ganhariam esse efeito. quando eu puxasse a alavanca pra esquerda <- o efeito seria desativado tipo, por storage acho que não funciona , porq não so ganharia os players online no momento que eu ativasse a alavanca? e os players que logassem após eu puxar a alavanca? ganhariam o efeito?PS: O ideal não seria um "Globalstorage"? ( eu n sei fazer =/ ) Editado Janeiro 21, 2018 7 anos por poko360 (veja o histórico de edições)
Postado Janeiro 21, 2018 7 anos 1 hora atrás, poko360 disse: @Mono Singed quando eu puxasse a alavanca pra direita -> todos os players online ganhariam esse efeito. quando eu puxasse a alavanca pra esquerda <- o efeito seria desativado tipo, por storage acho que não funciona , porq não so ganharia os players online no momento que eu ativasse a alavanca? e os players que logassem após eu puxar a alavanca? ganhariam o efeito?PS: O ideal não seria um "Globalstorage"? ( eu n sei fazer =/ ) Ah, sim. Para isso, abra a pasta data, depois a lib, e no arquivo de nome parecido "000-constants", adicione no começo: DOUBLEXP_STORAGE = 30050 (já fica a dica, sempre que tu quiser criar uma variável ou função que seja acessível em todos scripts, bote num arquivo dentro dessa lib) Crie a action: alavancas = {1945, 1946} function onUse(player, item, fromPosition, target, toPosition) if getStorage(DOUBLEXP_STORAGE) < 1 then setStorage(DOUBLEXP_STORAGE, 1) else setStorage(DOUBLEXP_STORAGE, -1) end doTransformItem(item, (item.itemid == alavancas[1] and alavancas[2] or alavancas[1])) return true end E substitua teu globalevent: function onThink(interval, lastExecution) if getStorage(DOUBLEXP_STORAGE) == 1 then for _, name in ipairs(getOnlinePlayers()) do local cid = getPlayerByName(name) if getPlayerGroupId(cid) < 4 then doSendAnimatedText(getPlayerPosition(cid), "2x EXP", 251) doSendMagicEffect(getPlayerPosition(cid), 27) doSendMagicEffect(getPlayerPosition(cid), 30) local spot = getThingPosition(cid) doSendDistanceShoot({x = spot.x + 1, y = spot.y + 1, z = spot.z}, spot, 34) doSendDistanceShoot({x = spot.x - 1, y = spot.y - 1, z = spot.z}, spot, 34) doSendDistanceShoot({x = spot.x + 1, y = spot.y - 1, z = spot.z}, spot, 34) doSendDistanceShoot({x = spot.x - 1, y = spot.y + 1, z = spot.z}, spot, 34) doSendDistanceShoot({x = spot.x + 1, y = spot.y + 0, z = spot.z}, spot, 34) doSendDistanceShoot({x = spot.x + 0, y = spot.y + 1, z = spot.z}, spot, 34) doSendDistanceShoot({x = spot.x - 1, y = spot.y + 0, z = spot.z}, spot, 34) doSendDistanceShoot({x = spot.x + 0, y = spot.y - 1, z = spot.z}, spot, 34) end end end return true end Editado Janeiro 21, 2018 7 anos por Mono Singed (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.