Postado Maio 15, 2015 10 anos Bom, queria um npc que da uma montaria por um item. Ao player falar hi, o npc ira dizerNpc: Olá Player, bem-vindo a minha casa. Em que posso ajudar? caso o player souber algo a respeito, ele ira falar isso abaixo.Player: kevnan Então o npc ira dizer para o player.Npc: Ah você conhece meu filho Kevnan? Que ótimo conhecer você. A vários dias ele saiu em uma jornada perigosa e até então não tenho notícias dele, você sabe algo a respeito? Então se ele souber algo a respeito, ira dizerPlayer: Eu te amo mae, desculpe minha teimosia.. Então o npc ira dizer para o player.Npc: Você Quer algo aqui? Meu filho usava lindas botas, A vários dias ele saiu em uma jornada perigosa e até então não tenho notícias dele. Então o player ira dizer.Player: cavalo Se o player tiver o item de id: 11367 ganha a montaria de id: 23, e o npc ira falarNpc: Nossa, você é realmente um guerreiro muito forte. Muito obrigado por vingar a morte do meu filho, como prometido aqui está a recompensa, o cavalo de fogo, este cavalo pertencia ao meu filho, sem dúvidas o melhor cavalo já visto, você merece. Caso você perda o cavalo, você poderá recuperar com um novo coração de ethershreck. Mas caso ele não tenha o item de id: 11367, o npc ira dizer.Npc: Traga-me o coração do monstro que derrotou meu filho que irei dar um brinde que meu filho gostava muito. Bom, é isso. obrigado !!
Postado Maio 16, 2015 10 anos Script em "Data/npc/scripts": local t = { itemneed = 11367, -- Item necessário. mount = 23 -- MountID. } local storage = 55501 -- Storage, só mexa se necessário. 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) player = Player(cid) if(not npcHandler:isFocused(cid)) then return false end msg = msg:lower(); local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if msgcontains(msg, 'kevnan') then if player:getStorageValue(storage) < 1 then npcHandler:say("Ah você conhece meu filho Kevnan? Que ótimo conhecer você. A vários dias ele saiu em uma jornada perigosa e até então não tenho notícias dele, você sabe algo a respeito?", cid) talkState[talkUser] = 1 else npcHandler:say("Você por aqui novamente? Você já me ajudou vingando meu filho e sou muito grato por isso.", cid) talkState[talkUser] = 0 end elseif msgcontains(msg, 'yes') then if talkState[talkUser] == 1 then npcHandler:say('Você quer algo aqui? Meu filho usava lindas botas, a vários dias ele saiu em uma jornada perigosa e até então não tenho notícias dele.', cid) talkState[talkUser] = 2 end elseif msgcontains(msg, 'cavalo') then if talkState[talkUser] == 2 then if player:getItemCount(t.itemneed) >= 1 then npcHandler:say('Nossa, você é realmente um guerreiro muito forte. Muito obrigado por vingar a morte do meu filho, como prometido aqui está a recompensa, o cavalo de fogo, este cavalo pertencia ao meu filho, sem dúvidas o melhor cavalo já visto, você merece. Caso você perda o cavalo, você poderá recuperar com um novo coração de ethershreck.', cid) doSendMagicEffect(getPlayerPosition(cid), 13) player:addMount(t.mount) player:setStorageValue(storage, 1) doPlayerRemoveItem(cid, t.itemneed, 1) talkState[talkUser] = 0 else npcHandler:say('Traga-me o coração do monstro que derrotou meu filho que irei dar um brinde que meu filho gostava muito.', cid) talkState[talkUser] = 0 end end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) XML: <?xml version="1.0" encoding="UTF-8"?> <npc name="Npc_name" script="nome_do_script.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="9" head="20" body="30" legs="40" feet="50" corpse="6080"/> <parameters> <parameter key="message_greet" value="Ola |PLAYERNAME|, bem-vindo a minha casa. Em que posso ajudar?"/> <parameter key="message_farewell" value="Good bye."/> </parameters> </npc> Se tiver algum erro ou faltar algo, me avise .
Postado Maio 16, 2015 10 anos Veja se você copiou corretamente o script, acabei de testar aqui e está normal.
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.