Moderador Yomee 1.278 Postado 6 de Fevereiro Moderador Compartilhar Postado 6 de Fevereiro Um script simples sobre alimentação: você clica no botão e ele consome o alimento que está no seu inventário. O script é bem básico, mas vai ajudar vocês a entender como funciona o ExtendedOpcode e como começar a construir outros sistemas. (Pelo menos, foi o que me serviu de guia!) CREDITOS: Ascuas Funkeln DOWNLOAD: Spoiler This is the hidden content, please Entre ou Cadastre-se SCAN: This is the hidden content, please Entre ou Cadastre-se VIDEO DEMONSTRATIVO: Spoiler 20250206-1704-17.0403214.mp4 ------------------------------------------------------------------------------------------------------------ 📜 Implementação do Opcode no Servidor Se você ainda não implementou suporte para Opcode no lado do servidor, será necessário adicioná-lo na sua source para que scripts com opcode funcione corretamente. 📌 Siga este tutorial e adicione o suporte à sua source do TFS 1.x+: This is the hidden content, please Entre ou Cadastre-se : This is the hidden content, please Entre ou Cadastre-se ⚠️ Atenção: Não sou responsável por possíveis danos à sua source. Faça as alterações por sua conta e risco. ------------------------------------------------------------------------------------------------------------ VAMOS COMEÇAR O TUTORIAL: Abram a pasta do OTClient de vocês, vão até a pasta modules e adicionem o "food_eater" dentro dela. Ficando assim: Spoiler Após isso, vão até a pasta do servidor de vocês e acessem o seguinte destino: data/creaturescripts/creaturescripts.xml. Adicionem esta tag: <event type="extendedopcode" name="foodeater" script="foodeater.lua" /> Ficando assim. Spoiler Após isso, vá até data/creaturescripts/scripts, crie um arquivo chamado "foodeater.lua" e adicione o seguinte código dentro dele: Spoiler function onExtendedOpcode(player, opcode, buffer) local banana = player:getItemCount(2676) local cake = player:getItemCount(6278) local melon = player:getItemCount(2680) local grape = player:getItemCount(2681) -- Adicionando a uva local buf = tonumber(buffer) if opcode == 14 and buf == 1 and banana >= 1 then player:feed(180) player:say("Omn, omn~! Banani!", TALKTYPE_MONSTER_SAY) player:removeItem(2676, 1) elseif opcode == 14 and buf == 3 and cake >= 1 then player:feed(180) player:say("Omn, omn~! Fat Boosting!", TALKTYPE_MONSTER_SAY) player:removeItem(6278, 1) elseif opcode == 14 and buf == 2 and melon >= 1 then player:removeItem(2680, 1) player:feed(180) player:say("Omn, omn~! He?!", TALKTYPE_MONSTER_SAY) elseif opcode == 14 and buf == 4 and grape >= 1 then -- Nova condição para uva player:feed(180) player:say("Omn, omn~! Uvinha!", TALKTYPE_MONSTER_SAY) player:removeItem(2681, 1) end end Após isso, abram o login.lua, que também está dentro de data/creaturescripts/scripts, e adicionem esta linha: player:registerEvent("foodeater"), ficando assim. Spoiler Pronto! Ao abrir o OTClient, o módulo já estará funcionando em conjunto com o servidor. Seguindo essa ideia, você pode criar diferentes tipos de sistemas. Lembre-se de que você pode utilizar o ChatGPT para te ajudar nessas ideias. Existem diversas bibliotecas sobre .lua focadas em Tibia. Recomendo procurar com cuidado e aprender a utilizá-las a seu favor. Spoiler 32 3 1 Link para o comentário https://tibiadevs.com/forums/topic/877-food_eater-m%C3%B3dulo-servidor-clean-para-entender-e-compreender-o-funcionamento/ Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados
Crie uma conta ou entre para comentar
Você precisar ser um membro para fazer um comentário
Criar uma conta
Crie uma nova conta em nossa comunidade. É fácil!
Crie uma nova contaEntrar
Já tem uma conta? Faça o login.
Entrar Agora