Postado Julho 12, 2013 11 anos Olá, estou precisando de um Script de um NPC, que ao dizer x palavra para ele você vai receber uma recompensa, e que possa dar uma quantidade de itens por que eu quero colocar um NPC, que da um item mais só que em certa quantidade! obrigado. Editado Julho 12, 2013 11 anos por Tiag017 (veja o histórico de edições)
Postado Julho 12, 2013 11 anos Crie um arquivo chamado Fance.lua na pasta data/npc/scripts e cole isso local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end local cfg = { mensage = "item", -- Mensagem que o jogador irá falar para ganhar o item. storage = 40001, -- Storage para o jogador não ganhar o item mais de uma vez. count = 1, -- Quantidade do item que o jogador irá receber. item = 1234 -- ID do item que o jogador irá receber. } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, cfg.mensage) then if getPlayerStorageValue(cid, cfg.storage) <= 0 then selfSay("You have found ".. cfg.count .." ".. cfg.item ..".", cid) doPlayerAddItem(cid, cfg.item, cfg.count) setPlayerStorageValue(cid, cfg.storage, 1) else selfSay("Have you received your item.", cid) end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Crie um arquivo chamado Fance.lua na pasta data/npc e cole isso <?xml version="1.0" encoding="UTF-8"?> <npc name="Fance" script="data/npc/scripts/Fance.lua" walkinterval="25" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="128" head="97" body="100" legs="115" feet="114" corpse="2212"/> <parameters> <parameter key="message_greet" value="Hey |PLAYERNAME|!"/> <parameter key="message_walkaway" value="Hey Hey, where you go ?"/> <parameter key="message_farewell" value="Bye bye."/> </parameters> </npc> Att. Giovani Rodrigo
Postado Julho 12, 2013 11 anos Autor Da erro, quando eu abro o executavel fiz algumas alterações, nele para ficar do meu jeito as alterações que eu fiz foram no id do item e na quantidade do item, mais como você, esta vendo a baixo não ta legal o Script se tiver como concertar. [12/07/201314:17:07] [Error - LuaScriptInterface::loadFile] data/npc/scripts/Tibia.lua:13: '}' expected (to close '{' at line 11) near 'storage' [12/07/2013 14:17:07] [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/Tibia.lua [12/07/2013 14:17:07] data/npc/scripts/Tibia.lua:13: '}' expected (to close '{' at line 11) near 'storage' Editado Julho 12, 2013 11 anos por Tiag017 (veja o histórico de edições)
Postado Julho 12, 2013 11 anos Não sei se estou certo. Mas aparentemente, esta faltando "}" o fechamento da declaração. local cfg = { mensage = "item", -- Mensagem que o jogador irá falar para ganhar o item. storage = 40001, -- Storage para o jogador não ganhar o item mais de uma vez. count = 1, -- Quantidade do item que o jogador irá receber. item = 1234 -- ID do item que o jogador irá receber.} Att..
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.