Criando Um Npc De Compra

Rotciv
Por Rotciv
em Tutoriais de Scripting
  • 1
  • 2

Rotciv

avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 14/10/05Posts: 423Char no Tibia: Rotciv
focus = 0 talk_start = 0 target = 0 following = false attacking = false function onThingMove(creature, thing, oldpos, oldstackpos) end function onCreatureAppear(creature) end function onCreatureDisappear(cid, pos)  if focus == cid then         selfSay('Good bye then.')         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 ((string.find(msg, '(%a*)hi(%a*)')) and (focus == 0)) and getDistanceToCreature(cid) < 4 then  	selfSay('Hello, ' .. creatureGetName(cid) .. '! I sell ropes (50gps), shovels (20gps), backpacks (10gps), manafluids (100gps), lifefluids (60gps) and fishing rods (100gps). I buy vials (10gps).')  	focus = cid  	talk_start = os.clock()  elseif string.find(msg, '(%a*)hi(%a*)') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then  	selfSay('Sorry, ' .. creatureGetName(cid) .. '! I talk to you in a minute.')  elseif msgcontains(msg, 'rope') and focus == cid then  	buy(cid,2941,1,50)  	talk_start = os.clock()  elseif msgcontains(msg, 'shovel') and focus == cid then  	buy(cid,3395,1,20)  	talk_start = os.clock()  elseif msgcontains(msg, 'backpack') and focus == cid then  	buy(cid,2792,1,10)  	talk_start = os.clock()  elseif msgcontains(msg, 'manafluid') or msgcontains(msg, 'mana fluid') and focus == cid then  	buy(cid,2812,7,100)  	talk_start = os.clock()  elseif msgcontains(msg, 'lifefluid') or msgcontains(msg, 'life fluid') and focus == cid then  	buy(cid,2812,10,60)  	talk_start = os.clock()  elseif msgcontains(msg, 'fishing rod') and focus == cid then  	buy(cid,3421,1,100)  	talk_start = os.clock()	elseif (msgcontains(msg, 'vial') or msgcontains(msg, 'flask')) and focus == cid then  	sell(cid,2812,1,10)  	talk_start = os.clock()  elseif string.find(msg, '(%a*)bye(%a*)') and focus == cid and getDistanceToCreature(cid) < 4 then  	selfSay('Good bye, ' .. creatureGetName(cid) .. '!')  	focus = 0  	talk_start = 0  end end function onCreatureChangeOutfit(creature) end function onThink()  if (os.clock() - talk_start) > 30 then  	if focus > 0 then    selfSay('Next Please...')  	end    focus = 0  end	if focus ~= 0 then  if getDistanceToCreature(focus) > 5 then  	selfSay('Good bye then.')  	focus = 0  end	end end

 

AGORA VOCÊ FAZ O SEGUINTE:

elseif msgcontains(msg, 'rope') and focus == cid then

   buy(cid,2941,1,50)

   talk_start = os.clock()

EXPLICAÇÃO:

Laranja: PALAVRA QUE O PLAYER TEM QUE FALAR PARA COMPRAR O ITEM.

AZUL: ID DO ITEM QUE O VO PLAYER VAI COMPRAR.

Verde: Quantidade do item que o player vai receber ao comprar. Ex: se você colocar 2 e o player for comprar uma corda, na hora que ele falar "hi" - "rope", ele irá receber 2 cordas. Então, deixe 1.

Amarelo: Quantidade de dinheiro que o player vai ter que pagar! EM GPS!

Espero ter ajudado. Qualquer dúvida :laughing:

Acessando apenas para criticar (positivamente).

E-mail: rotciv@xtibia.com

Calmo

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/12/05Posts: 18

POR MIN EU ACHEI EXELENTE O TUTO!!

VLW

MESMO!!

OBRIGADO!!

Pedala Robinhu

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 27/12/05Posts: 62

hehe isso e tao obvio + eu nem parei pra pensai brigadao ae

Dak~.

Imperi

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 13/10/05Posts: 55

Muito bom o TUTO o.O

~*~ Imperi Again ~*~

user posted image

buster287

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 11/12/05Posts: 27

Muito bom.

É muito simples nem da pra acredita q eu nem sabia disso XD

Retired.

Pedala Robinhu

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 27/12/05Posts: 62

Mto legal xDD gosttei

Dak~.

Pato_Verde

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/01/06Posts: 8

Hummm...realmente eh muito óbovio e eu jah sabia fazer.Porém,quando eu tento mudar o npc Dark Rodo (vendedor de runes) ele dá erro!Gostaria de saber o por quê.Obrigado!

---Edit---

Desculpe por ressuscitar o tópico mais é que eu estou começando com OT Server somente agora.Obrigado.

fran_furious

xD
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 16/04/06Posts: 17Gênero: MasculinoChar no Tibia: nao interessa

cara :icon1: otimo tuto,, vlw funciono direitinhu

shemmue

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 22/04/06Posts: 40Char no Tibia: Xydle Grion

 

:bye: eu pensei nisso + fikei com medo d erra em algo ai vim da uma conferida e tava certo vlw msm

Do it Now!
<img src="http://img89.imageshack.us/img89/9028/darkangel0rw.gif" border="0" class="linked-sig-image" />

Coisinha Bacana <a href="http://www.flogao.com.br/xydlegrion" target="_blank">Não clica curioso!</a> e se clicar não olha
<img src="http://img470.imageshack.us/img470/5472/ultrarox3wq.gif" border="0" class="linked-sig-image" />

joaokk

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 17/05/06Posts: 90

thx pelu tutor ;)

mi audo mtuuuu

Bob_Maluco

Banido
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 10/06/06Posts: 3

ajudou pax pq todo mundo do meu ot queria compra itens e era um saco fika procurando o id depois cria o item e vende

*** Banido por postar Keylogger ***

God Luan

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 24/07/06Posts: 67

Ajudou mto cara

Parabens..

Otimo tuto

Atenciosamente,God Luan.

____________________________





[x] 140 Posts
[x] 150 Posts
[x] 160 Posts
[x] 170 Posts
[x] 180 Posts
[ ] 190 Posts
[ ] 200 Posts

  • 1
  • 2