Postado Abril 9, 2022 3 anos Recomendação de boa prática; quando um jogador usa o item, toda a função onUse é percorrida, e suas variáveis inicializadas. Recomendo mover a variável mounts para fora mantendo localmente, assim, é inicializada junto com o servidor. local action = Action() local mounts = { 1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 12, 13, 14, 16, 18, 19, 20, 23, 27, 28, 29, 30, 31, 32, 35, 42, 43, 47, 48, 49, 53, 56, 62, 68, 75, 80, 93, 98, 100, 104, 109, 110, 114, 117, 119, 122, 123, 126, 129, 133, 136, 140, 143, 148, 151, 154, 157, 158, 159, 160, 166, 169, 170, 171, 178, 179, 180, 184, 190 } function action.onUse(cid, item, toPosition, itemEx, fromPosition) if getPlayerStorageValue(cid, 64801) ~= 1 then for mount in pairs(mounts) do doPlayerAddMount(cid, mount) end doSendMagicEffect(getThingPos(cid), CONST_ME_FIREWORK_YELLOW) doRemoveItem(item.uid) setPlayerStorageValue(cid, 64801, 1) end return true end action:id(37587) action:register() Outra consideração; os nomes das montarias são inúteis nesse momento, use apenas o id e para consultas, procure um arquivo mounts.xml
Postado Abril 10, 2022 3 anos 21 horas atrás, Ramon Bernardo disse: Recomendo mover a variável mounts para fora mantendo localmente Achei interessante sua posição e lembrei de uma dúvida que tive em outro fórum ... se puder comentar lá já que sua recomendação é diferente do que falaram lá ... https://otland.net/threads/doubts-about-efficiency-in-the-use-of-local-variables-in-lua.279993/post-2687894 STYLLER OT 2022
Postado Abril 10, 2022 3 anos 52 minutos atrás, luanluciano93 disse: Achei interessante sua posição e lembrei de uma dúvida que tive em outro fórum ... se puder comentar lá já que sua recomendação é diferente do que falaram lá ... https://otland.net/threads/doubts-about-efficiency-in-the-use-of-local-variables-in-lua.279993/post-2687894 Existe duas situações, Sarah e Wolf explicaram bem. Você pode cria-la localmente no arquivo (crie uma vez, mantenha em cache até o fim do servidor), ou quando necessário (crie, use e apague). Isso vai de caso-a-caso, mas cache é sempre bom, por que não?
Postado Abril 11, 2022 3 anos 14 horas atrás, Ramon Bernardo disse: Existe duas situações, Sarah e Wolf explicaram bem. Você pode cria-la localmente no arquivo (crie uma vez, mantenha em cache até o fim do servidor), ou quando necessário (crie, use e apague). Isso vai de caso-a-caso, mas cache é sempre bom, por que não? Gostaria de saber o caso-a-caso de quando usar um e quando usa o outro. STYLLER OT 2022
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.