Tamaño del Texto:
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.
¿Perdiste tu email de activación?
 

Páginas: [1]   Ir Abajo
  Imprimir  
Autor Tema: Como hago para que mi npc camine??  (Leído 187 veces)
0 Usuarios y 1 Visitante están viendo este tema.
belian
Usuario Novato

Desconectado Desconectado

Mensajes: 9
Miembro Nº: 912




Última visita: Hoy a las 06:41:27
« : 10 de Febrero de 2008, 01:46:39 »

Holas soy yo nuevamente gracias a los que me ayudaron con mi otra consulta...
Mi pregunta de ahora es como puesdo hacer que mi npc camine por un mapa X en cualquier direccion (osea al azar algo como y,0 x,0 ) y cada cierto tiempo unos 10 minutos

aca dejo la quest que me gustaria que caminara ;

//This quest is custom. Don't use it.

geffen.gat,115,107,5   script   Lord Kaho's Servant   61,{
   mes "[Lord Kaho's Servant]";
   mes "I worked myself to death trying to fulfill Lord Kaho's ridiculous expectations for a headgear!";
   mes "Now that I've finally found the formula for the perfect headgear, I'm willing to share my time and talents";
   next;
   mes "You need the following to get the Kaho horns!";
   mes "3 emperiums";
   mes "Oh yea... i also forgot to mention these X_X";
   next;
   mes "1 Skull - From Dark Lord";
   mes "1 Heroic Emblem - From Orc Hero";
   mes "1 Evil Horn - From Baphomet";
   mes "1 Red Frame - From Doppelganger";
   mes "1 Smoking Pipe - From Eddga";
   mes "1 Fang of Garm - From Garm";
   mes "1 Mother's Nightmare - From Maya";
   mes "1 Sphynx Hat - from Osiris";
   mes "1 Diamond Ring - from Mistress";
   next;
   mes "Were' not done yet sweety...";
   mes "Im a big fan of dolls, so you need to bring me these cuties";
   mes "1 Poring Doll - a Poring drop";
   mes "1 Chonchon Doll - a Chonchon Drop";
   mes "1 Baphomet Doll - a Baphomet drop";
   mes "1 Osiris Doll - an Osiris drop";
   mes "1 Rocker Doll - a Rocker drop";
   mes "1 Apez Fanitem Doll - a Yoyo drop";
   mes "1 Racoon Doll - a Smokie drop";
   mes "1 Spore Doll - a Spore drop";
   next;
   mes "Finally, i worked hard to make these horns for my master with all the mentioned items above...";
   mes "Please include 5 million zeny for my efforts.";
   next;
   mes "[Lord Kaho's Servant]";
   mes ". . . . . .";
   mes "Are you ready for me to make this special item?";
   next;
   menu "Sure am!",-,"These requirements are unfathomable!",LUnfathomable;

      mes "[Lord Kaho's Servant]";
      if(countitem(754) < 1 || countitem(753) < 1 || countitem(752) < 1 || countitem(751) < 1 || countitem(750) < 1
         || countitem(743) < 1 || countitem(742) < 1 || countitem(741) < 1 || countitem(2613) < 1
         || countitem(5053) < 1 || countitem(7020) < 1 || countitem(7036) < 1 || countitem(2268) < 1
         || countitem(734) < 1 || countitem(923) < 1 || countitem(968) < 1 || countitem(7005) < 1
         || countitem(714) < 3 || Zeny < 5000000) goto LNotEnough;
      delitem 754,1;
      delitem 753,1;
      delitem 752,1;
      delitem 751,1;
      delitem 750,1;
      delitem 743,1;
      delitem 742,1;
      delitem 741,1;
      delitem 2613,1;
      delitem 5053,1;
      delitem 7020,1;
      delitem 7036,1;
      delitem 2268,1;
      delitem 734,1;
      delitem 923,1;
      delitem 968,1;
      delitem 7005,1;
      delitem 714,3;
      set Zeny,Zeny-5000000;
      mes "Wow!  You are brave indeed!";
      getitem 5013,1;
      mes ". . . . .";
      mes "Enjoy being God of Rune Midgard!";
      close;

      LNotEnough:
         mes ". . . . .";
         mes ". . .I'm sorry .. You don't have enough money and items ..";
         mes "I can't afford to make this if you don't bring all materials needed.  Please understand this is to benefit heroes such as yourself!";
         close;

   LUnfathomable:
      mes ". . . . .";
      mes "What I had to go through was more unfathomable..";
      mes "If you succeed in getting these items, you will have incredible strength!";
      close;
}

es la quest del kaho horn me gustaria que estubiese en morroc fild 19 (solo ejemplo) y se diera bueltas en ese mapa al azar cada diez minutos caminara .
   de ante mano gracias....  pcrywy7

En línea
DivineRO :: Foro :: Ragnarok Online
« : 10 de Febrero de 2008, 01:46:39 »

 En línea
Bokko
Usuario Novato

Desconectado Desconectado

Mensajes: 12
Miembro Nº: 7272





Última visita: 19 de Junio de 2008, 12:57:34
« Respuesta #1 : 10 de Febrero de 2008, 09:20:53 »


Jamas vi un NPC andando, y tampoco tienen los sprites para simular el movimiento, a menos que uses el sprite de algún monstruo. De todos modos no escuche acerca de hacer que se movieran... solo puedo decirte eso, a ver si alguien sabe algo más pues es interesante.
En línea
Hattori
Moderador
Posteador Diamante
*
Conectado Conectado

Mensajes: 1916
Miembro Nº: 1353





Última visita: Hoy a las 10:00:05
« Respuesta #2 : 10 de Febrero de 2008, 11:53:09 »

mira para que un npc camine deves poner este comando en el script:
Citar
*npcspeed <speed value>;
*npcwalkto <x>,<y>;
*npcstop;

ejemplo:
Citar
*npcspeed <300>;    Aqui la velocidadad de 1-1000
*npcwalkto <150>,<150>;
*npcstop;

O si tambien se puede con:

Citar
*movenpc <NPC name>,x,y;
ejemplo:
Citar
moveNPC "Bokko",200,50;

Si no entiendes algo me lo dices vale?
En línea

belian
Usuario Novato

Desconectado Desconectado

Mensajes: 9
Miembro Nº: 912




Última visita: Hoy a las 06:41:27
« Respuesta #3 : 11 de Febrero de 2008, 03:09:37 »

mira para que un npc camine deves poner este comando en el script:
Citar
*npcspeed <speed value>;
*npcwalkto <x>,<y>;
*npcstop;

ejemplo:
Citar
*npcspeed <300>;    Aqui la velocidadad de 1-1000
*npcwalkto <150>,<150>;
*npcstop;

O si tambien se puede con:

Citar
*movenpc <NPC name>,x,y;
ejemplo:
Citar
moveNPC "Bokko",200,50;

Si no entiendes algo me lo dices vale?

eso va seguido de la hubicacion del npc (prontera xxx yyy bokko 3)
y cuantaz veces puedo repetir la operacion y luego puedo hacer que lo reita el circuito cada ves que llegue al ultimo punto
En línea
Hattori
Moderador
Posteador Diamante
*
Conectado Conectado

Mensajes: 1916
Miembro Nº: 1353





Última visita: Hoy a las 10:00:05
« Respuesta #4 : 11 de Febrero de 2008, 07:23:03 »

Mirate este script que esta mejor para que lo entiendas yo aprendi hacerlo gracias a este script espero que te funcione ati tambien...

Citar
// -o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o- \\
//                              True Walk NPC v.2                                \\
//                (c) 2007, by Myzter (Raff - Pow4Ever.com)                      \\
//                     for use with eAthena SVN > 8000                           \\
// -o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o- \\
//       This is a very good method to add walk capabilities to your NPCs        \\
//                protecting the user from the distance errors                   \\
// -o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o- \\

// -o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o- \\
//               NPC SAMPLE (WITH DUPLICATES) - HUNGRY VAMPIRES :P               \\
// -o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o- \\
prontera.gat,155,170,3   script   Vampire#1::Vmp   799,3,3,{
   // -o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o- \\
   // Header - Please include this header in your Walk Enabled NPCs to control distance errors
   // Set the status to "In Use" (multiplayer)
      set .inUse, .inUse + 1;
   // Reset the current lock time while the user talk with the NPC
      set .curLockT,0;
   // -o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o- \\
   
   mes "[Vampire]";
   mes "Hi " + strcharinfo(0) + ", can you give me some drops of your blood please?";
   next;
   if (select("Sure","Noo!") == 1) {
      percentheal -rand(10),0;
      mes "[Vampire]";
      mes "Thanks you " + strcharinfo(0) + ", i love your blood!";
      close2; // This close command ensure the execution of the next lines after press Close Button
      // Reverse the status to "Free to walk"
      set .inUse, .inUse - 1;
      end;
   }
   mes "[Vampire]";
   mes "Snarkklllliiitshhh...";
   close2; // This close command ensure the execution of the next lines after press Close
   // Set status to "Free to walk"
   set .inUse, .inUse - 1;
   end;
OnInit:
   // Define the coordinates for this NPC (you can use 0,400/0,400 for a full map movement)
   // Horizontal coordinates
   set .minX,148;
   set .maxX,162;
   // Vertical coordinates
   set .minY,175;
   set .maxY,132;
   // Define the min/max distance for each movement
   set .minD,0;
   set .maxD,10;
   // Define stopped steps before change the status back to "Free to walk"
   set .maxLock,30;
   // Set the speed for this NPC (50=Faster / 250=Slower)
   npcspeed 100;
   
   // Start the movements
   initnpctimer;
   end;
   
// Set here the time for the next movement (ms)
OnTimer1000:
   if (.inUse) {
      set .curLockT, .curLockT + 1;
      if (.curLockT > .maxLock) set .inUse, 0;
   } else {
      getmapxy .map$,.x,.y,1;
      set .curX, callfunc("NPCWalk",.minX, .maxX,.minD,.maxD,.x);
      set .curY, callfunc("NPCWalk",.minY, .maxY,.minD,.maxD,.y);
      npcwalkto .curX, .curY;
   }
   stopnpctimer;
   initnpctimer;
   end;
OnTouch:
   percentheal -rand(1,20),0;
   npctalk "Ohh thank you " + strcharinfo(0) + ", your blood tastes excellent";
   emotion e_gg;
   specialeffect2 216;
}

prontera.gat,155,169,3   duplicate(Vmp)   Vampire#2   799,3,3
prontera.gat,150,166,3   duplicate(Vmp)   Vampire#3   799,3,3
prontera.gat,160,163,3   duplicate(Vmp)   Vampire#4   799,3,3
prontera.gat,155,160,3   duplicate(Vmp)   Vampire#5   799,3,3
prontera.gat,150,157,3   duplicate(Vmp)   Vampire#6   799,3,3
prontera.gat,160,154,3   duplicate(Vmp)   Vampire#7   799,3,3
prontera.gat,155,151,3   duplicate(Vmp)   Vampire#8   799,3,3
prontera.gat,150,148,3   duplicate(Vmp)   Vampire#9   799,3,3
prontera.gat,160,145,3   duplicate(Vmp)   Vampire#10   799,3,3
prontera.gat,155,142,3   duplicate(Vmp)   Vampire#11   799,3,3
prontera.gat,150,139,3   duplicate(Vmp)   Vampire#12   799,3,3
prontera.gat,160,136,3   duplicate(Vmp)   Vampire#13   799,3,3
prontera.gat,155,133,3   duplicate(Vmp)   Vampire#14   799,3,3
prontera.gat,150,130,3   duplicate(Vmp)   Vampire#15   799,3,3
prontera.gat,160,127,3   duplicate(Vmp)   Vampire#16   799,3,3
prontera.gat,155,124,3   duplicate(Vmp)   Vampire#17   799,3,3
prontera.gat,150,121,3   duplicate(Vmp)   Vampire#17   799,3,3
// -o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o- \\
//                                 END SAMPLE                                    \\
// -o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o- \\

// Function to calculate one single coordinate
function   script   NPCWalk   {
   set .CP, getarg(4);
   set .DST, rand(getarg(2),getarg(3));
   if (rand(2))
      set .CP, .CP + .DST;
   else
      set .CP, .CP - .DST;
   if (.CP < getarg(0)) set .CP, .CP + .DST;
   if (.CP > getarg(1)) set .CP, .CP - .DST;
   return .CP;
}
En línea

Raony
Muteado
Usuario Habitual
*
Desconectado Desconectado

Mensajes: 69
Miembro Nº: 4180



WWW

Última visita: 23 de Julio de 2008, 09:31:43
« Respuesta #5 : 02 de Marzo de 2008, 04:07:04 »

Si hay NPC's caminando, yo tengo un npc que se llama aliza y barre xD
En línea

Hattori
Moderador
Posteador Diamante
*
Conectado Conectado

Mensajes: 1916
Miembro Nº: 1353





Última visita: Hoy a las 10:00:05
« Respuesta #6 : 02 de Marzo de 2008, 01:43:30 »

Raony haz mas pequeña tu firma ¬¬

PD: Pon algunos de esos npc para que valla comprandolo.
En línea

Páginas: [1]   Ir Arriba
  Imprimir  
 
Ir a:  

Powered by SMF 1.1.5 | SMF © 2006, Simple Machines LLC
Seo4Smf v0.2 © Webmaster's Talks

BlueSkies design by Bloc, editado por eves para DivineRO | XHTML | CSS

Página creada en 0.17 segundos con 19 consultas.


Google visitó por ultima vez esta pagina 14 de Julio de 2008, 09:20:07