Botando Seus Npcs Para Andar.

meleca
Por meleca
em Tutoriais de Scripting
  • 1
  • 2

meleca

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 22/10/05Posts: 18

Bem antes de começar os ots q eu testei e funciono foram : yurots,darkonia e hotserv mas em outros deve funcionar!

Abra o arkivo data/npc/scripts/lib/npc.lua < e nele adicione. ( bote no meio de duas funções quaisquer )

CODE :

function moveRandom(ox,oy,max)

maxx = ox + max

maxy = oy + max

minx = ox - max

miny = oy - max

cx, cy, cz = selfGetPosition()

randmove = math.random(1,50)

if randmove == 1 then

nx = cx + 1

ny = cy

end

if randmove == 2 then

nx = cx - 1

ny = cy

end

if randmove == 3 then

ny = cy + 1

nx = cx

end

if randmove == 4 then

ny = cy - 1

nx = cx

end

if randmove >= 5 then

nx = cx

ny = cy

end

if((nx < maxx) and (ny < maxy) and (nx > minx) and (ny > miny)) then

moveToPosition(nx, ny, cz)

end

end

------------------------------------

depois disso vc vai trabalhar no arkivo lua do seu npc

lá no topo acrescente:

ox = 400

oy = 400

oz = 7

max = 5

ox, oy e oz é a posição de respaw do seu NPC, altere de acordo com cada NPC. o MAX é a quantidade maxima de SQMs que o NPC vai poder se afastar do ser respaw.

Ainda no arquivo do NPC dentro da função onThink() (use procura para achar onde está), coloque isso aki...

if(focus == 0) then

moveRandom(ox,oy,max)

end

Pronto agora seus npcs estão prontos para andar!!

Créditos pro JTE,

MeLeCa.

~~mlc~~

1 vez Tibiano , Sempre Tibiano.

~~Viva as Diferenças , Fod@-Se a Igualdade~~

untitled1xj2.jpg

userbar010xo.gif

hacker7mj.gif

meutrabalho025yw.png

Rafix

Banido
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 30/08/05Posts: 231Char no Tibia: retired

Explica melhor isso ae pra raça intender, pq comigo naum deu certo...

Flws

Atenciosamente,

Rafix

Usuário Banido.

Motivo: Atitude Ofensivas

meleca

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 22/10/05Posts: 18

tp primero vc abre o npc.lua q se localiza na pasta do seu ot/data/npc/scripts/lib

ai vc abre esse arkivo o npc.lua e no final add isso :

 

function moveRandom(ox,oy,max)maxx = ox + maxmaxy = oy + maxminx = ox - maxminy = oy - maxcx, cy, cz = selfGetPosition()randmove = math.random(1,50)if randmove == 1 thennx = cx + 1ny = cyendif randmove == 2 thennx = cx - 1ny = cyendif randmove == 3 thenny = cy + 1nx = cxendif randmove == 4 thenny = cy - 1nx = cxendif randmove >= 5 thennx = cxny = cyendif((nx < maxx) and (ny < maxy) and (nx > minx) and (ny > miny)) thenmoveToPosition(nx, ny, cz)endend

 

ai depois q vc add isso no npc.lua vc vai no arkivo do seu npc e add isso:

 

ox = 400oy = 400oz = 7max = 5

 

ox, oy e oz é a posição de respaw do seu NPC, altere de acordo com cada NPC. o MAX é a quantidade maxima de SQMs que o NPC vai poder se afastar do ser respaw.

Ainda no arquivo do NPC dentro da função onThink() (use procura para achar onde está), coloque isso aki...

 

if(focus == 0) thenmoveRandom(ox,oy,max)end

 

Agora é so salvar tudo e abrir seu ot i ver seus npcs andarem xD

~~mlc~~

1 vez Tibiano , Sempre Tibiano.

~~Viva as Diferenças , Fod@-Se a Igualdade~~

untitled1xj2.jpg

userbar010xo.gif

hacker7mj.gif

meutrabalho025yw.png

Héliton

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 04/10/05Posts: 42

meleca,

Edite seu primeiro tópico para como está este último post seu, aí eu moverei para Tutoriais.

;]

Rocha_Br

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 25/08/05Posts: 1
Bem antes de começar os ots q eu testei e funciono foram : yurots,darkonia e hotserv mas em outros deve funcionar!

Abra o arkivo data/npc/scripts/lib/npc.lua  < e nele adicione. ( bote no meio de duas funções quaisquer )

CODE :

function moveRandom(ox,oy,max)

maxx = ox + max

maxy = oy + max

minx = ox - max

miny = oy - max

cx, cy, cz = selfGetPosition()

randmove = math.random(1,50)

if randmove == 1 then

nx = cx + 1

ny = cy

end

if randmove == 2 then

nx = cx - 1

ny = cy

end

if randmove == 3 then

ny = cy + 1

nx = cx

end

if randmove == 4 then

ny = cy - 1

nx = cx

end

if randmove >= 5 then

nx = cx

ny = cy

end

if((nx < maxx) and (ny < maxy) and (nx > minx) and (ny > miny)) then

moveToPosition(nx, ny, cz)

end

end

[/code]

depois disso vc vai trabalhar no arkivo lua do seu npc

lá no topo acrescente:

 

ox = 400oy = 400oz = 7max = 5

 

ox, oy e oz é a posição de respaw do seu NPC, altere de acordo com cada NPC. o MAX é a quantidade maxima de SQMs que o NPC vai poder se afastar do ser respaw.

Ainda no arquivo do NPC dentro da função onThink() (use procura para achar onde está), coloque isso aki...

if(focus == 0) then

moveRandom(ox,oy,max)

end

Pronto agora seus npcs estão prontos para andar!!

Créditos pro JTE,

MeLeCa.

 

 

 

Xiu Xiu

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 13/10/05Posts: 33Char no Tibia: Xiu-Xiu

aff kra.. explicado mto mal... sem neurose... mas num gostei =/

Roy~

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/11/05Posts: 1

Só uma duvida,isso ai serve pro YurOTS 0.93?

SpankerII

Membro
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 10/10/05Posts: 87

Não gostei, muito mal explicado !

Obrigado,

Spanker

;welcome back

Calmo

avatar
Campones
Campones

INFOS

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

if(focus == 0) then

moveRandom(ox,oy,max)

end

Esa parte pode me ajudar???

Obrigado..

bawanan

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 18/10/05Posts: 2

cara dao os creditos pro cara certo tenho vc so copio e colo ate as mesmas palavras tao igual ao cara que posto em outro forum

Chakau

Banido
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 09/11/06Posts: 278

Rox

parabens manu

[Usuário banido, Ofensas/Xingamentos a Equipe]
Addict

Andre_Tsung

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 22/01/07Posts: 3

Aeee fmz galera??

Eu to aki pra fala q consegui faze o npc anda.. vlw ae pelo topico meleca xD

meu ot e um zorzin e funfo perfeito..... :tongue:

 

 

VLW ABRAÇOS E ATE MAIS...

GOD Zé

avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 03/12/06Posts: 255

Cara Não Acho Muito Util Npc Andar...Depende =) Mas Tah Valendo Tem Uns Que Gostam De Ficar Atras De Npc Ou Seja...Depende do Tamanho Da Loja Funcionou Perfeitamente Na Que Eu Fis =P Vlws E Cya!

QUOTE
Aí GaLeRa CoM Um BrAçO Só ( _o/ _o/ _o/ ) AgOrAaa cOm O OuTrO ( \o_ \o_ \o_ ) AgOraaa COm Os DoiS ( \o/ \o/ \o/ ) VaMo Lá!! MãO Na CaBeÇa ( <o> <o> <o> ) PrA CimA (|o| |o| |o|) AGorA NenhUm DoS doiS ( _o_ _o_ _o_ ) IsSo... aGoRa QuErU VeR GeRaL PrUm LaDo ( o/ o/ o/ ) GeRaL PrO OuTrO ( \o \o \o ) BaTeNu PaLmInHa ( /o\ \o/ /o\ ) AgOrA AnImAe!¡!¡!

Universal Storm Ats União :-)

~*~~*~
Use minha fan bar
~*~~*~

gafanhoto

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 27/04/07Posts: 15

Ótimo tutorial!!

  • 1
  • 2