GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: chneubeul le 30 Octobre 2010, 00:03:06

Titre: [Demande Aide] Renvoie sur une commande
Posté par: chneubeul le 30 Octobre 2010, 00:03:06
Bonsoir, j'aimerais pouvoir faire comme avant c'est à dire :

return OnPlayerCommandText ...

mais actuellement j'utilise zcmd et donc j'ai fait ça :

return CMD:login(playerid, log);

Pensant que c'était une "fonction" je me suis dit pourquoi pas...
Mais apparemment pas totalement :'(

Voila ce que pawno me dit -> invalid expression, assumed zero

Comment puis détourner ça, sans avoir à mettre un code à rallonge dans mon OnDialogResponse :D

Bonne nuit !
Sam.  :cheers
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: Ssk le 30 Octobre 2010, 00:07:40
J'ai pas très bien compris ce que tu voulais, mais si tu veut renvoyer ce que la fonction retourne, fait comme cela.

normalement le code que tu as donné est bon.
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: chneubeul le 30 Octobre 2010, 00:17:14
Non il me met une erreur, aprés ça vien peut être du format ( log ) ?
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: S!m le 30 Octobre 2010, 00:18:04
Salut,

si tu parle de faire return OnPlayerCommandText(playerid, "lacommande qu'il aurait tapé"); pour, par exemple, un menu. Tu peut toujours le faire. zcmd gère tout appel de OnPlayerCommandText, que ce soit par le script ou le serveur (appel interne de sa-mp si tu préfère).

à noter que si tu veut appeler une commande qui se trouve dans un autre script tu devras utiliser CallRemoteFunction.

++Sim++
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: chneubeul le 30 Octobre 2010, 00:19:35
Ah ok donc je peut faire return onplayercommandtext( /login )  ? et ça marchera..

Merci ! :D
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: Ssk le 30 Octobre 2010, 00:48:34
Oui, sans oublier de mettre en premier paramètre l'id du joueur.
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: chneubeul le 30 Octobre 2010, 00:52:54
Ah ouais, pas bête, j'y avais pas pensé >.<

Un coup de pouce en plus ça en mérite une -->  :dling   
Voire deux :D -->  :dling
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: chneubeul le 30 Octobre 2010, 11:54:43
Ouais j'avais compris Dizzy  :...
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: chneubeul le 30 Octobre 2010, 12:07:25
Faut bien que que je renvoie le paramètre sinon, la commande va marcher comme si tu taper /login et pas /login [mdp]

...
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: chneubeul le 30 Octobre 2010, 17:21:51
Ben moi c'est CMD: ^^
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: S!m le 30 Octobre 2010, 17:27:46
Salut,


je t'explique:

CMD:login(...)
devient:
forward cmd_login(...);
public cmd_login(...)

par ce code ci:

#define COMMAND:%1(%2)          \
forward cmd_%1(%2); \
public cmd_%1(%2)

#define CMD:%1(%2) \
COMMAND:%1(%2)

bref, tu retourne le forward.... donc ça ne fonctionnera jamais.

Utilise la méthode de Dizzy, elle fonctionne

++Sim++
Titre: Re : [Demande Aide] Renvoie sur une commande
Posté par: chneubeul le 30 Octobre 2010, 17:49:43
Ahhh ouaiis okk !! x'D
J'ai trop coder aujourd'hui j'ai le cerveaux en compote  :bangin

A là votre !  :dling  :cheers