Bienvenue sur JeuxOnLine - MMO, MMORPG et MOBA !
Les sites de JeuxOnLine...
 

Panneau de contrôle

Recherche | Retour aux forums

JOL Archives

Zone ou portail qui teleporte en fonction

Par Blam le 28/12/2002 à 12:40:50 (#2894648)

Zone ou portail qui teleporte en fonction du niveau du joueur.

J'ai un souci avec ce truc simple.
ex: je voudrai qu'un joueur niveau un qui prends le meme portail qu'un niveau 2 se retrouve a un endroit different.

portail ou zone.

Par eMRaistlin le 28/12/2002 à 12:59:30 (#2894744)


object oPC = GetLastUsedBy();
int nLevel = GetHitDice(oPC);

if (nLevel == 1)
{
JumpToLocation(GetWaypointByTag("TAG"));
}

else if (nLevel == 2)
{
JumpToLocation(GetWaypointByTag("TAG2"));
}
else if (nLevel >= 3)
{
JumpToLocation(GetWaypointByTag("TAG3"));
}


En gros, je ferait ca...

erreur

Par Blam le 28/12/2002 à 13:04:44 (#2894782)

merci mais j'ai quand meme une erreur


if (nLevel == 1) qui fait que ca ne compile pas

Par Jedaï le 28/12/2002 à 13:18:23 (#2894862)

Blam > Tu as oublié de mettre ce script à l'intérieur d'une fonction main().


void main()
{

object oPC = GetLastUsedBy();

int nLevel = GetHitDice(oPC);



if (nLevel == 1)

{

JumpToLocation(GetWaypointByTag("TAG"));

}



else if (nLevel == 2)

{

JumpToLocation(GetWaypointByTag("TAG2"));

}

else if (nLevel >= 3)

{

JumpToLocation(GetWaypointByTag("TAG3"));

}
}

exact

Par Blam le 28/12/2002 à 13:34:08 (#2894955)

mais vous avez essayé de le compiler ? :))))))


JumpToLocation(GetWaypointByTag("TAG"));

erreur, aussi
ActionJumpToLocation ?

Par Archamedes_Fr le 28/12/2002 à 13:45:14 (#2895011)

Pour un script qui téléporte de façon aléatoire, j'utilise ceci:

ActionDoCommand(JumpToLocation( GetLocation( GetWaypointByTag( "WP_TELE1"))))


Et ça marche impec.

deja mieux

Par Blam le 28/12/2002 à 14:17:28 (#2895194)

Ca se compile parfaitement mais ca marche pas


J'ai donc fait ma compil a moi mais dites moi ou est l'erreur car ca ne marche toujours pas :)

void main()
{

object oPC = GetLastUsedBy();

int nLevel = GetHitDice(oPC);

if (nLevel == 1)
{
ActionDoCommand(JumpToLocation( GetLocation( GetWaypointByTag("WP_ARRIVE001"))));
}
else if (nLevel >= 2)//supérieur ou egal, c'est bien ca ?
{
ActionDoCommand(JumpToLocation( GetLocation( GetWaypointByTag("WP_ARRIVE002"))));
}
}


les waypoints y sont !

Par Jedaï le 28/12/2002 à 14:59:34 (#2895406)

Hum...oui évidemment, j'avais pas fais attention :o

Un portail qui essaie de se téléporter ça doit pas le faire ....;)


PHP:--------------------------------------------------------------------------------
void main()
{

object oPC = GetLastUsedBy();

int nLevel = GetHitDice(oPC);


switch(nLevel)
{

case 1 :
AssignCommand(oPC, JumpToObject(GetWaypointByTag("TAG"));
break;

case 2 :
AssignCommand(oPC, JumpToObject(GetWaypointByTag("TAG1"));
break;

default :
AssignCommand(oPC, JumpToObject(GetWaypointByTag("TAG2"));

}
}

Par Archamedes_Fr le 28/12/2002 à 15:32:37 (#2895609)

Avec ça tu devrais plus avoir de problème...

Par coolstar le 28/12/2002 à 15:36:37 (#2895629)

Des switch et tout est tellement plus joli (et Propre!)... :D

oui

Par Blam le 28/12/2002 à 15:41:30 (#2895658)

A condition de rajouter un ) en fin des tris lignes

Merci a vous tous :)
Impeccable.

Et voila pour une fois sans Lys !!!!

Par coolstar le 28/12/2002 à 15:55:53 (#2895719)

Tiens, en relisant je viens de découvrir l'option 'default :'... c Kool ça! :D




PS: Tant que j'y suis, suite à l'à-propos de Blam, un petit correctif 'Plug&Play' pour les nbs qui passeraient derrière... ;)


void main()
{
// DECLARATION DES VARIABLES :
object oPC = GetLastUsedBy(); // Récupérer le 'Dernier Utilisateur'
int nLevel = GetHitDice(oPC); // Récupérer le Level du PC (qu'importe la 'Classe'!)

switch (nLevel) // Distribution selon le Level du PC :
{
case 1: // Si Level 1 :
AssignCommand(oPC, JumpToObject(GetWaypointByTag("TAG"))); // 'Assigne' au PC un 'Jump'
break;

case 2: // Si Level 2 :
AssignCommand(oPC, JumpToObject(GetWaypointByTag("TAG1"))); // Idem
break;

default: // Résultat de la 'Distribution' autrement (donc Level est > 2)...
AssignCommand(oPC, JumpToObject(GetWaypointByTag("TAG2"))); // Idem
}
}

JOL Archives 1.0.1
@ JOL / JeuxOnLine