Primeiramente oi,
Eu Hoje vim mostrar a minha nova invençao...O NPC de addon só que inves de ele pedir 5 e 10 mil ele pede items, mas nao para addon 1 e addon 2 e sim para cada addon de cada roupa eu pus um certo item!!!
local focus = 0local talk_start = 0
local target = 0
local following = false
local attacking = false
function onThingMove(creature, thing, oldpos, oldstackpos)
end
function onCreatureAppear(creature)
end
function onCreatureDisappear(cid, pos)
if focus == cid then
selfSay('Tchau, Volte sempre.')
focus = 0
talk_start = 0
end
end
function onCreatureTurn(creature)
end
function msgcontains(txt, str)
return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))
end
function onCreatureSay(cid, type, msg)
msg = string.lower(msg)
if (msgcontains(msg, 'hi') and (focus == 0)) and getDistanceToCreature(cid) < 4 then
selfSay('Ola ' .. creatureGetName(cid) .. '! Eu tenho todos os addons é só falar o nome da roupa e primeiro pro addon 1 e segundo pro addon 2 exemplo: Beggar primeiro...Aviso:Nao vendo addon de summoner Female por ela nao ter a roupa!!!')
focus = cid
talk_start = os.clock()
elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then
selfSay('Desculpe, ' .. creatureGetName(cid) .. '!Ja Falo Com Você Um Minuto!.')
elseif focus == cid then
talk_start = os.clock()
if msgcontains(msg, 'citizen primeiro') then
selfSay('Voce tem as 100 Chiken Feathers necessarias para conseguir o addon?')
talk_state = 1
elseif msgcontains(msg, 'citizen segundo') then
selfSay('Você tem os 50 Honeycomb necessarios para conseguir o addon?')
talk_state = 2
elseif msgcontains(msg, 'mage primeiro') then
selfSay('Você tem as 100 Holy Orchid necessarias para conseguir o addon?')
talk_state = 3
elseif msgcontains(msg, 'mage segundo') then
selfSay('Você tem o Ferumbras Hat necessario para conseguir o addon?')
talk_state = 4
elseif msgcontains(msg, 'hunter primeiro') then
selfSay('Você tem as 10 Enchanted Chicken Feather necessarias para conseguir o addon?')
talk_state = 5
elseif msgcontains(msg, 'hunter segundo') then
selfSay('Você tem a Sniper Glove necessaria para conseguir o addon?')
talk_state = 6
elseif msgcontains(msg, 'knight primeiro') then
selfSay('Você tem os 100 Iron Ores necessarios para conseguir o addon?')
talk_state = 7
elseif msgcontains(msg, 'knight segundo') then
selfSay('Você tem os 50 Perfect Behemonth Fangs necessarios para conseguir o addon?')
talk_state = 8
elseif msgcontains(msg, 'wizard primeiro') then
selfSay('Você tem o Ring Of The Sky necessario para conseguir o addon?')
talk_state = 9
elseif msgcontains(msg, 'wizard segundo') then
selfSay('Você tem os 50 Holy Orchids necessarios para conseguir o addon?')
talk_state = 10
elseif msgcontains(msg, 'warrior primeiro') then
selfSay('Você tem as 50 Turtle Shells necessarias para conseguir o addon?')
talk_state = 11
elseif msgcontains(msg, 'warrior segundo') then
selfSay('Você tem os 50 Ape Fur necessarios para conseguir o addon?')
talk_state = 12
elseif msgcontains(msg, 'summoner primeiro') then
selfSay('Você tem os 50 Ape Fur necessarios para conseguir o addon?')
talk_state = 13
elseif msgcontains(msg, 'summoner segundo') then
selfSay('Você tem os 5 Magic Sulphur necessarios para conseguir o addon?')
talk_state = 14
elseif msgcontains(msg, 'oriental primeiro') then
selfSay('Você tem os 100 Fish Fin necessarios para conseguir o addon?')
talk_state = 15
elseif msgcontains(msg, 'oriental segundo') then
selfSay('Você tem os 100 Blue Piece Of Cloth necessarios para conseguir o addon?')
talk_state = 16
elseif msgcontains(msg, 'druid primeiro') then
selfSay('Você tem as 100 Wolf Paws necessarias para conseguir o addon?')
talk_state = 17
elseif msgcontains(msg, 'druid segundo') then
selfSay('Você tem os 100 Demon Dust necessarios para conseguir o addon?')
talk_state = 18
elseif msgcontains(msg, 'barbarian primeiro') then
selfSay('Você tem os 100 Spider Silks necessarios para conseguir o addon?')
talk_state = 19
elseif msgcontains(msg, 'barbarian segundo') then
selfSay('Você tem os 50 Green Piece of Cloth necessarios para conseguir o addon?')
talk_state = 20
elseif msgcontains(msg, 'nobleman primeiro') then
selfSay('Você tem os 150k necessarios para conseguir o addon?')
talk_state = 21
elseif msgcontains(msg, 'nobleman segundo') then
selfSay('Você tem os 150k necessarios para conseguir o addon?')
talk_state = 22
elseif msgcontains(msg, 'assassin primeiro') then
selfSay('Você tem os 100 Beholder Eyes necessarios para conseguir o addon?')
talk_state = 23
elseif msgcontains(msg, 'assassin segundo') then
selfSay('Você tem os 100 White Pieces of Cloth necessarios para conseguir o addon?')
talk_state = 24
elseif msgcontains(msg, 'beggar primeiro') then
selfSay('Você tem as 100 Minotaur Leather necessarias para conseguir o addon?')
talk_state = 25
elseif msgcontains(msg, 'beggar segundo') then
selfSay('Você tem os 20k necessarios para conseguir o addon?')
talk_state = 26
elseif msgcontains(msg, 'norseman primeiro') then
selfSay('Você tem os 100 Red Dragon Scale necessarios para conseguir o addon?')
talk_state = 27
elseif msgcontains(msg, 'norseman segundo') then
selfSay('Você tem as 100 Dwarf Beards necessarias para conseguir o addon?')
talk_state = 28
elseif msgcontains(msg, 'pirate primeiro') then
selfSay('Você tem os 100 Eye Patch necessarios para conseguir o addon?')
talk_state = 29
elseif msgcontains(msg, 'pirate segundo') then
selfSay('Você tem as 100 Peg Legs necessarias para conseguir o addon?')
talk_state = 30
elseif msgcontains(msg, 'shaman primeiro') then
selfSay('Você tem as 5 Behemonth Claw necessarias para conseguir o addon?')
talk_state = 31
elseif msgcontains(msg, 'shaman segundo') then
selfSay('Você tem as 5 Banana Staffs necessarias para conseguir o addon?')
talk_state = 32
elseif msgcontains(msg, 'nightmare primeiro') then
selfSay('Você tem os 50 Demoniac Essences necessarios para conseguir o addon?')
talk_state = 33
elseif msgcontains(msg, 'nightmare segundo') then
selfSay('Você tem o Fire Bug necessario para conseguir o addon?')
talk_state = 34
elseif msgcontains(msg, 'brotherwood primeiro') then
selfSay('Você tem os 100 Perfect Behemonth Fang necessarios para conseguir o addon?')
talk_state = 35
elseif msgcontains(msg, 'brotherwood segundo') then
selfSay('Você tem as 100 Lizard Leathers necessarias para conseguir o addon?')
talk_state = 36
elseif msgcontains(msg, 'jester primeiro') then
selfSay('Você tem os 100 Yellow Piece of Cloth necessarios para conseguir o addon?')
talk_state = 37
elseif msgcontains(msg, 'jester segundo') then
selfSay('Você tem os 100 Green Piece of Cloth necessarios para conseguir o addon?')
talk_state = 38
elseif talk_state == 1 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5890,100) == TRUE then
doPlayerAddAddon(cid, 136, 1)
doPlayerAddAddon(cid, 128, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 2 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5902,50) == TRUE then
doPlayerAddAddon(cid, 136, 2)
doPlayerAddAddon(cid, 128, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 3 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5922,100) == TRUE then
doPlayerAddAddon(cid, 130, 1)
doPlayerAddAddon(cid, 138, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 4 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5903,1) == TRUE then
doPlayerAddAddon(cid, 130, 2)
doPlayerAddAddon(cid, 138, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 5 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5891,10) == TRUE then
doPlayerAddAddon(cid, 129, 1)
doPlayerAddAddon(cid, 137, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 6 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5875,1) == TRUE then
doPlayerAddAddon(cid, 129, 2)
doPlayerAddAddon(cid, 137, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 7 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5880,100) == TRUE then
doPlayerAddAddon(cid, 131, 1)
doPlayerAddAddon(cid, 139, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 8 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5893,50) == TRUE then
doPlayerAddAddon(cid, 131, 2)
doPlayerAddAddon(cid, 139, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 9 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,2123,50) == TRUE then
doPlayerAddAddon(cid, 145, 1)
doPlayerAddAddon(cid, 149, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 10 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5922,50) == TRUE then
doPlayerAddAddon(cid, 145, 2)
doPlayerAddAddon(cid, 149, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 11 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5899,50) == TRUE then
doPlayerAddAddon(cid, 134, 1)
doPlayerAddAddon(cid, 142, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 12 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5883,50) == TRUE then
doPlayerAddAddon(cid, 134, 2)
doPlayerAddAddon(cid, 142, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 13 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5883,50) == TRUE then
doPlayerAddAddon(cid, 133, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 14 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5904,5) == TRUE then
doPlayerAddAddon(cid, 133, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 15 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5895,100) == TRUE then
doPlayerAddAddon(cid, 146, 1)
doPlayerAddAddon(cid, 150, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 16 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5912,50) == TRUE then
doPlayerAddAddon(cid, 146, 2)
doPlayerAddAddon(cid, 150, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 17 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5897,100) == TRUE then
doPlayerAddAddon(cid, 144, 1)
doPlayerAddAddon(cid, 148, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 18 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5906,100) == TRUE then
doPlayerAddAddon(cid, 144, 2)
doPlayerAddAddon(cid, 148, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 19 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5879,100) == TRUE then
doPlayerAddAddon(cid, 143, 1)
doPlayerAddAddon(cid, 147, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 20 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5910,50) == TRUE then
doPlayerAddAddon(cid, 143, 2)
doPlayerAddAddon(cid, 147, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 21 then
if msgcontains(msg, 'yes') then
if pay(cid,150000) == TRUE then
doPlayerAddAddon(cid, 132, 1)
doPlayerAddAddon(cid, 140, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 22 then
if msgcontains(msg, 'yes') then
if pay(cid,150000) == TRUE then
doPlayerAddAddon(cid, 132, 2)
doPlayerAddAddon(cid, 140, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 23 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5898,100) == TRUE then
doPlayerAddAddon(cid, 152, 1)
doPlayerAddAddon(cid, 156, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 24 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5909,100) == TRUE then
doPlayerAddAddon(cid, 152, 2)
doPlayerAddAddon(cid, 156, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 25 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5878,100) == TRUE then
doPlayerAddAddon(cid, 153, 1)
doPlayerAddAddon(cid, 157, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 26 then
if msgcontains(msg, 'yes') then
if pay(cid,20000) == TRUE then
doPlayerAddAddon(cid, 153, 2)
doPlayerAddAddon(cid, 157, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 27 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5882,100) == TRUE then
doPlayerAddAddon(cid, 251, 1)
doPlayerAddAddon(cid, 252, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 28 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5900,100) == TRUE then
doPlayerAddAddon(cid, 251, 2)
doPlayerAddAddon(cid, 252, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 29 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,6098,100) == TRUE then
doPlayerAddAddon(cid, 151, 1)
doPlayerAddAddon(cid, 155, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 30 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,6126,100) == TRUE then
doPlayerAddAddon(cid, 151, 2)
doPlayerAddAddon(cid, 155, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 31 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5930,5) == TRUE then
doPlayerAddAddon(cid, 154, 1)
doPlayerAddAddon(cid, 158, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 32 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,3966,5) == TRUE then
doPlayerAddAddon(cid, 154, 2)
doPlayerAddAddon(cid, 158, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 33 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,6500,50) == TRUE then
doPlayerAddAddon(cid, 268, 1)
doPlayerAddAddon(cid, 269, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 34 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5468,1) == TRUE then
doPlayerAddAddon(cid, 268, 2)
doPlayerAddAddon(cid, 269, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 35 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5893,100) == TRUE then
doPlayerAddAddon(cid, 278, 1)
doPlayerAddAddon(cid, 279, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 36 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5876,100) == TRUE then
doPlayerAddAddon(cid, 278, 2)
doPlayerAddAddon(cid, 279, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 37 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5914,100) == TRUE then
doPlayerAddAddon(cid, 273, 1)
doPlayerAddAddon(cid, 270, 1)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif talk_state == 38 then
if msgcontains(msg, 'yes') then
if doPlayerRemoveItem(cid,5910,100) == TRUE then
doPlayerAddAddon(cid, 273, 2)
doPlayerAddAddon(cid, 270, 2)
else
selfSay('Desculpe Você nao tem o necessario para esse addon.')
end
end
talk_state = 0
elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then
selfSay('Tchau, ' .. creatureGetName(cid) .. '!')
focus = 0
talk_start = 0
end
end
end
function onCreatureChangeOutfit(creature)
end
function onThink()
doNpcSetCreatureFocus(focus)
if (os.clock() - talk_start) > 30 then
if focus > 0 then
selfSay('Proximo Porfavor...')
end
focus = 0
end
if focus ~= 0 then
if getDistanceToCreature(focus) > 5 then
selfSay('Tchau, Tchau Amigo.')
focus = 0
end
end
end
Eu tentei me basear no npc de addon do tibia global...portanto havera alguns que até tem os itens do tibia global...mas como nao quis dificultar muito escolhi apenas um item para cada addon para nao dar muita confusao...tambem nao quis dar muito confusao entre sexo entao quando por exemplo voce comprar a bolsa do citizen voce vai receber a da mulher e do homem mais como voce tem apenas um tipo de roupa a outra addon sera apenas ignorada...aahh quase me eskeci voces vao ver que tem um ali que só tem addon para homens...é o do summoner...nao tem roupa de summoner de mulher no ot...na verdade tem mas esta no lugar da roupa de mage porque a roupa de mage nao existe!!!
Esse NPC foi 100% criado por Pedr1nh0 (EU)
Bem na verdade vamos falar em 99%
Eu tive uma duvida sobre o npc e _Ferrari_ me ajudou entao ele merece um pouco de credito
Esse NPC é de 8.1...creio que funcione em todos...nao cheguei a testar...e tbm acredito que funcione em 8.0 pois nao há muita diferença entre os npcs de 8.0 pra 8.1
Ai Tbm tem os addons do Jester (akele palhaço) O Brotherhood (O escudeiro axo que é) e o Nightmare (a Morte)
Qualquer duvida é só postar que estarei olhando diariamente!!!
FIQUEI MAIS DE 4 HORAS FAZENDO ESSE NPC...CE FOR USAR PELO MENOS COMENTE!!!
Ce alguem achar alguma erro que eu deixei pra tras...que eu sou meio quarta feira...intaum ce tiver alguma coisa errada comente aki que eu tento resolver o mais rapido possivel pra que mais ninguem pegue o erro!!!
Espero ter ajudado
!!!!!!Galera o Conde sapo que ajudou arrumando o npc!!!!
Vlw ai todo mundo pelo post...eu só nao coloquei todo mundo aki pq ce nao ia ficar uma bagunça!!