Aller au contenu

Fonction "teleport To Id"


yom

Messages recommandés

Salut à tous,

 

Je cherche comment intégrer dans mon filtre la fonction pour se téléporter à un joueur avec son ID

 

J'ai trouvé la fonction dans le filtre Debug de Makabo, mais je n'arrive pas à l'intégrer dans mon filtre (1000 et une erreurs)

 

Alors j'ai essayé de créer un nouveau filtre avec seulement cette fonction, j'arrive à compiler, mais voila mon problème (soyez très attentifs j'ai eu du mal à le décrire) :

 

-Donc en ce moment j'ai 3 filtres:

 

1- Filtre1 : Makabo Admin System

2- Filtre2 : Mon filtre avec des fonctions comme téléportation à un endroit précis, blocage des portes etc...

3- Filtre3 : Qui contient uniquement la fonction pour se téléporter à l'ID (il faut etre logué niveau 2 minimum)

 

-Si je les place dans cet ordre dans "server.cfg", le Filtre3 ne fonctionne pas du tout, que je me logue ou pas

 

-Par contre, si je place le Filtre3 avant le Filtre2 dans "server.cfg"et que je ne me logue pas, tout fonctionne sauf le Filtre3 (puisqu'il faut etre logué niveau 2 minimum), mais les ennuis arrivent quand je me logue (niveau 6) :

 

D'accord le Filtre3 fonctionne parfaitement, mais c'est le Filtre2 qui ne fonctionne plus du tout!!!Donc adieu toutes mes autres fonctions!

 

Encore une aide pour vous aidez à comprendre : par contre, si j'utilise le filtre Debug à la place de mon Filter3, toujours avant le Filtre2, tout fonctionne parfaitement!

 

Alors je suis sûr d'avoir oublié quelque chose du filtre Debug, que je n'ai pas copié dans le Filtre3.

 

En esperant que vous pourrez m'aider, merci !

Modifié par yom
Lien vers le commentaire
Partager sur d’autres sites

LOL

 

Probleme résolu, avec un peu de temps! Pour que ca fonctionne j'ai dû changer un "return 1" en "return 0" et un "return 0" en "return 1", mais quelqu'un peut-il m'expliquer pourquoi cette simple erreur faisait que mon Filtre2 ne fonctionnait plus après m'etre logué (incomprehensible pour moi...)

 

Par contre je cherche toujours comment l'intégrer dans mon filtre, au lieu d'en recréer un, parce que quand j'essaie, Pawno me fait une erreur générale...ca non plus je ne comprend pas trop pourquoi...

 

 

Et j'ai une autre question vite fait:

 

Que faut-il ajouter pour obtenir le nom du joueur grâce à l'ID?

 

if(strcmp(command,"/>") == 0) {

new id = strval(strtok(cmdtext,index));

if(IsPlayerConnected(id)) {

GetPlayerPos(id,x,y,z);

SetPlayerPos(playerid,x,y,z);

SendClientMessage(playerid, 0xFFFF00AA,"You have been teleported near NOMDUJOUEUR");

} else {SendClientMessage(playerid,0xFFFF00AA,"Not online");

}

return 1;

}

 

Ca doit pas être bien dur, mais pas moyen de trouver...

 

Sur ce, bonne journée...moi je vais dormir lol

Modifié par yom
Lien vers le commentaire
Partager sur d’autres sites

Que faut-il ajouter pour obtenir le nom du joueur grâce à l'ID?
GetPlayerName(playerid, consta name[],len) ^^ :P

 

un ptit bout de script qui peut t'aider:

new string[256];

new name[MAX_PLAYER_NAME];

GetPlayerName(playerid,name, sizeof(name));

format(string, sizeof(string), "%s a gagne la course %d min %d sec !", name, minutes, secondes);

SendClientMessage(playerid, 0xAFAFAFAA,string);

 

le reste peut pas t'aider jamais utilisé les filtres

Modifié par Le_CuLtO
Lien vers le commentaire
Partager sur d’autres sites

Merci beaucoup, c'etait exactement ca (le ptit bout de script)! enfin presque, voila ce que ca donne pour moi:

 

new string[256];

new name[MAX_PLAYER_NAME];

 

-> ces deux lignes au début de mon script

 

 

GetPlayerName(playerid,name, sizeof(name));

format(string, sizeof(string), "You have been teleported near %s!", name);

SendClientMessage(playerid, 0xAFAFAFAA,string);

 

-> ces trois lignes dans la fonction teleport

 

 

Et bref ca fonctionne parfaitement, encore merci à toi!

Modifié par yom
Lien vers le commentaire
Partager sur d’autres sites

je pense que tu l'a remarque mais attention:

GetPlayerName(playerid,name, sizeof(name));

format(string, sizeof(string), "You have been teleported near %s!", name);

SendClientMessage(playerid, 0xAFAFAFAA,string);

 

avec cette commande tu va dire au joueur "toto" (qui veu se teleporter) qu'il va se teleporter vers toto lol !

Lien vers le commentaire
Partager sur d’autres sites

Oui je viens de remarqué ca a l'instant, après avoir testé sur un autre joueur...

 

Je vais essayé de fixer ca tout de suite

 

EDIT : Il suffisait de changer

 

GetPlayerName(playerid,name, sizeof(name));

 

en

 

GetPlayerName(id,name, sizeof(name));

Modifié par yom
Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

Chargement
×
×
  • Créer...