Ir para conteúdo
  • 0

Npc Que Vende Addons De Monstros.


Felipefox34

Pergunta

Tipo do script: Slayer Yourots v11

Protocolo (versão do Tibia): 8.40

Servidor utilizado: The Forgotten Server

Nível de experiência:

Adicionais/Informações: quero um npc que venda addon de mostros.

Valendo Rep+.

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

Primeiro tens que ir em data/XML/outfits.xml e colar as tags dos novos outfits.

Exemplo:

<outfit id="25">
   <list gender="0-3" lookType="159" name="Elf"/>
</outfit>

<outfit id="26">
   <list gender="0-3" lookType="160" name="Dwarf"/>
</outfit>

 

Explicando:

outfit id = você coloca o numero de identificação, veja o numero da ultima outfit id e coloque o proximo numero, obs: "não é o numero da outfit".

gender = male e female.

looktype = agora sim e o numero correspondente a outfit do monstro, vc pode descobrir looks diferentes usando o comando "/newtype numero".

name = nome que vai aparecer na hra de escolher a out.

 

Você ainda pode usar a tag apenas para premium usar o out, ficaria assim:

<outfit id="25" premium="yes">

 

Depois disso os players ja poderão escolher as outfits de monstros.

Agora as que você quiser que os player só possam usar depois de comprar no npc, use tags com tags diferentes, assim:

<outfit id="25" quest="40850">
   <list gender="0-3" lookType="159" name="Elf"/>
</outfit>

<outfit id="26" quest="40851">
<list gender="0-3" lookType="160" name="Dwarf"/>
</outfit>

 

Ou, apenas premium que comprarem no npc, basta adicionar a tag do premium.

 

Agora criando o npc, vai na pasta data/npc/ duplica um arquivo e nomeia para "Monsterout Seller" sem as aspas e nele cole:

<?xml version="1.0" encoding="UTF-8"?>
<npc name="Monsterout Seller" script="outseller.lua" walkinterval="2000" floorchange="0">

<health now="999999" max="999999"/>
<look type="12" corpse="2212"/> <!-- troque o looktype para o outfit que o npc vai estar -->

<parameters>
<parameter key="message_greet" value="Eu vendo {monster outfits}!."/>
</parameters>

</npc>

 

Agora em data/npc/scripts, duplica um arquivo e nomeia para "outseller" sem as aspas e nele cole:

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 msgcontains(msg, 'monster outfits') then

selfSay('I Sell outfit {Elf}, {Dwarf}. For 10k each.', cid)
talkState[talkUser] = 2


elseif talkState[talkUser] == 2 then

if msgcontains(msg, 'Elf') then
   if (doPlayerRemoveMoney(cid, 10000)) then -- preço que custara o out de elf
       doSendMagicEffect(getCreaturePosition(cid), 30) -- effect que o player recebera
       selfSay('Você recebeu o Elf Outfit.', cid)
       setPlayerStorageValue(cid, 40850) -- aqui você poem o nomero da quest que você setou no outfit.xml para o elf
   else
       selfSay('Você não possui dinheiro suficiente.', cid)
   end

talkState[talkUser] = 3

elseif msgcontains(msg, 'Dwarf') then
   if (doPlayerRemoveMoney(cid, 10000)) then -- preço que custara o out de dwarf
       doSendMagicEffect(getCreaturePosition(cid), 30) -- effect que o player recebera
       selfSay('Você recebeu o Dwarf Outfit.', cid)
       setPlayerStorageValue(cid, 40851) -- aqui você poem o nomero da quest que você setou no outfit.xml para o elf
   else
       selfSay('Você não possui dinheiro suficiente.', cid)
   end

talkState[talkUser] = 1

else

selfSay('Não posso realizar comprar outfit monster.', cid)

end

end

end

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

 

 

Agora sóh adicionar o npc no mapa e testar! Fiz rapidinho então ficou meia boca, quando tiver mais tempo ageito o código para ficar mais facil.

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

  • 0

Deu serto mudei

 

<outfit id="25" quest="40850">

<list gender="0-3" lookType="159" name="Elf"/>

</outfit>

 

<outfit id="26" quest="40851">

<list gender="0-3" lookype="160" name="Dwarf"/>

</outfit

mudei para um que ja tinha no meu meu ot Rep+

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...