Postado Junho 23, 2015 9 anos Autor acabei de fazer um aqui pq nem tinha arquivo.xml <npc name="sex" script="data/npc/scripts/sex.lua" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="128" head="0" body="87" legs="39" feet="0"/> <parameters> <parameter key="module_travel" value="1"/> <parameter key="message_greet" value="Olá |PLAYERNAME|. quer troca de sexo virar um traveco diga {sex change} ?" /> </parameters> </npc> sex.lua local item_id = {2160,1} -- edita aqui 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 function creatureSayCallback(cid, type, msg) local msg = msg:lower(); local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if(not npcHandler:isFocused(cid)) then return false end if msgcontains(msg, "sex change") then if doPlayerRemoveItem(cid,item_id[1],item_id[2]) then doPlayerSetSex(cid,getPlayerSex(cid) == 1 and 0 or 1) doPlayerSendTextMessage(cid,22,"pronto troquei o seu sexo") doSendMagicEffect(getCreaturePosition(cid),28) else selfSay("você não tem dinheiro", cid) talkState[talkUser] = 0 end return true end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Editado Junho 23, 2015 9 anos por jhubber (veja o histórico de edições)
Postado Junho 23, 2015 9 anos Porque <parameter key="module_travel" value="1"/> no seu XML? o.O Troca seu XML por esse: <?xml version="1.0"?> <npc name="Sex" script="data/npc/scripts/sex.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="128" head="0" body="87" legs="39" feet="0"/> <parameters> <parameter key="message_greet" value="Olá |PLAYERNAME|. quer troca de sexo virar um traveco diga {sex change} ?" /> </parameters> </npc> The medieval RpG Server [RpG] OLDWORLD OPEN TIBIA
Postado Junho 23, 2015 9 anos Autor Porque <parameter key="module_travel" value="1"/> no seu XML? o.O Troca seu XML por esse: <?xml version="1.0"?> <npc name="Sex" script="data/npc/scripts/sex.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="128" head="0" body="87" legs="39" feet="0"/> <parameters> <parameter key="message_greet" value="Olá |PLAYERNAME|. quer troca de sexo virar um traveco diga {sex change} ?" /> </parameters> </npc> Também não deu certo. Apareceu o mesmo erro acabei de fazer um aqui pq nem tinha arquivo.xml <npc name="sex" script="data/npc/scripts/sex.lua" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="128" head="0" body="87" legs="39" feet="0"/> <parameters> <parameter key="module_travel" value="1"/> <parameter key="message_greet" value="Olá |PLAYERNAME|. quer troca de sexo virar um traveco diga {sex change} ?" /> </parameters> </npc> sex.lua local item_id = {2160,1} -- edita aqui 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 function creatureSayCallback(cid, type, msg) local msg = msg:lower(); local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if(not npcHandler:isFocused(cid)) then return false end if msgcontains(msg, "sex change") then if doPlayerRemoveItem(cid,item_id[1],item_id[2]) then doPlayerSetSex(cid,getPlayerSex(cid) == 1 and 0 or 1) doPlayerSendTextMessage(cid,22,"pronto troquei o seu sexo") doSendMagicEffect(getCreaturePosition(cid),28) else selfSay("você não tem dinheiro", cid) talkState[talkUser] = 0 end return true end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Funciono perfeito so que na fala do npc para o player não pode ter o acento se não o tibia não reconhece " <parameter key="message_greet" value="Olá |PLAYERNAME|. quer troca de sexo virar um traveco diga {sex change} ?" /> " em "Olá" não pode ter o acento no " á " tem que ficar: <npc name="sex" script="data/npc/scripts/sex.lua" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="128" head="0" body="87" legs="39" feet="0"/> <parameters> <parameter key="module_travel" value="1"/> <parameter key="message_greet" value="Ola |PLAYERNAME|. quer troca de sexo virar um traveco diga {sex change} ?" /> </parameters> </npc> Muito obrigado pela a atenção e pela a ajuda de todo mundo Tópico Resolvido.
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.