Ir para conteúdo

[Npc] Mate O Monstro E Complete Sua Tarefa.


thalia

Posts Recomendados

Olá (: , estou aqui de novo com um npc bom para servidores RPG'

 

~~> Como funciona? <~~



 

Você fala com o npc, o npc sumona um monstro e após matar este monstro,



ele te dá uma reconpensa.

 

 

~~> Como Instalar? <~~



 

-> Vá em data/creaturescripts/creaturescripts.xml e add essa tag:

 

<event type="death" name="NPC" event="script" value="npcquest.lua"/>

 

->Agora vá em creaturescripts/scripts e crie um novo arquivo com o nome npcquest.lua e bote isto dentro:

 

function onDeath(cid, corpse, killer)

local monstName = "Monk" -- nome do monstro
local Storage = 9755 -- nao mude

       if isMonster(cid) then
           if string.lower(getCreatureName(cid)) == string.lower(monstName) then
              setPlayerStorageValue(killer[1], Storage, 1)
              doCreatureSay(killer[1],'Você completo sua tarefa.',TALKTYPE_ORANGE_1)
           end   
        end 
return TRUE
end

 

->Agora você vai no xml do monstro que você escolheu e lá no final do script antes do </monster>, você add:

 

<script>
<event name="NPC"/>
</script>

 

 

->Agora em data/npc, crie um novo arquivo com o nome Jhow.xml e bote isto dentro:

 

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Jhow" script="data/npc/scripts/jhow.lua" walkinterval="2000" floorchange="0">
   <health now="100" max="100"/>
   <look type="138" head="96" body="95" legs="0" feet="95" addons="0"/>
       <parameters>
               <parameter key="message_greet" value="Ola |PLAYERNAME|, voce quer testar suas habilidades?" />
               <parameter key="module_keywords" value="1" />
       </parameters>     
</npc>

 

->Agora vá em npc/script e crie um novo arquivo com o nome de jhow.lua e bote isto dentro:

 

  local nomeMonst = "Monk" -- Nome do mosntro que ele vai sumonar
local itemid = 2150

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)
if(not npcHandler:isFocused(cid)) then
return false
end

local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid

if getPlayerStorageValue(cid, 9755) == -1 then
if(msgcontains(msg, 'yes')) then
selfSay('Mate este monstro para completar sua tarefa.', cid)
doCreateMonster(nomeMonst,getThingPos(cid))
talkState[talkUser] = 1
end
return true
end
if getPlayerStorageValue(cid, 9755) == 1 then
selfSay('Você matou o monstro e ganhou um item.', cid)
doPlayerAddItem(cid, itemid,1)
setPlayerStorageValue(cid, 9755,2)
talkState[talkUser] = 0
return true
end
if getPlayerStorageValue(cid, 9755) == 2 then
selfSay('Você já fez esta tarefa.', cid)
talkState[talkUser] = 0
return true
end

return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

->Agora volte lá em creaturescripts/scripts/ e procure por login.lua e antes do ultimo return true add isto:

 

registerCreatureEvent(cid, "NPC")

 

 

Pronto amigo! NPC instalado :},

COMENTEM Por favor

Link para o comentário
Compartilhar em outros sites

Vlw pelo script mas pode me ajudar?

 

Aqui está dando isso:

 

[27/04/2011 17:59:45] [Warning - Npc::loadFromXml] Cannot load npc file (data/npc/jhow.xml).
[27/04/2011 17:59:45] Line: 6, Info: Input is not proper UTF-8, indicate encoding !
[27/04/2011 17:59:45] Bytes: 0xE9 0x20 0x75 0x6D

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

Aeee daora!

 

Ou você sabe como depois de derrotar esse monstro ele coloocar outro para matar? (Ai eu posso fazer ginásio pokemon :smile_positivo: ) ... E mais uma coisa, eu fui tentar fazer um outro igual a esse (só quee com outro nome) mas na hora de por ele no map editor o map editor fala : Couldn't open file Larry.xml, Invalid Format?

 

Oquee eu faço?! Me ajude por favor

Editado por Poketch
Link para o comentário
Compartilhar em outros sites

  • 1 month later...

Aeee daora!

 

Ou você sabe como depois de derrotar esse monstro ele coloocar outro para matar? (Ai eu posso fazer ginásio pokemon :smile_positivo: ) ... E mais uma coisa, eu fui tentar fazer um outro igual a esse (só quee com outro nome) mas na hora de por ele no map editor o map editor fala : Couldn't open file Larry.xml, Invalid Format?

 

Oquee eu faço?! Me ajude por favor

 

No caso, vc reparou que o "NPC" tem Storage né?

 

Quando você criou o Larry, vc mudou o Storage do NPC?

 

 

--O estranho é que está falando no ERROR, que não pôde abrir o "Larry.xml", Formato Inválido.

 

Neste caso, é como se você tivesse colocado o nome errado no NPC e no Map Editor ou a extensão dele, confira aí em todos lugares que você colocou o nome de Larry para ver se não tem nada faltando.

 

 

Abraços

Link para o comentário
Compartilhar em outros sites

Aeee daora!

 

Ou você sabe como depois de derrotar esse monstro ele coloocar outro para matar? (Ai eu posso fazer ginásio pokemon :smile_positivo: ) ... E mais uma coisa, eu fui tentar fazer um outro igual a esse (só quee com outro nome) mas na hora de por ele no map editor o map editor fala : Couldn't open file Larry.xml, Invalid Format?

 

Oquee eu faço?! Me ajude por favor

 

 

 

Isso acontece pq voce fez alguma coisa de errado no .LUA do npc ;D

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...
  • 2 weeks later...

Olá tem um bug, quando ele fica perguntado, se quero treinar minha habilidades, se falo "yes" três mil vezes, ela sumona três mil vezes o Bicho

 

Aew, provavelmente você irá usar o NPC em uma quest, eu fiz o seguinte (é só uma opnião), crie um monstro,e edite ao seu jeito e coloque pouca exp no monstro, assim memso que sumone muitos mosntros não se tornará um "abusr" de exp.

Eu coloquei o item a ser pego pelo npc, pra usar em uma mesa q da use no item encima da mesa ganha storage par alibera ruma porta e pegar o item... assim nao fica uma coisa mt simples apenas de matar o bicho e ja era

Link para o comentário
Compartilhar em outros sites

  • 2 months later...
  • 1 month later...
  • 7 months later...
×
×
  • Criar Novo...