GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: DeVilZ le 07 Juillet 2009, 12:04:13
-
Bon alors voilà, je ne me souviens pu du code a faire pour que tout le monde voie quand un joueur s econnecte.
Sur le SFTDM par exemple sa met : TrucMuche viens de se connecter blablabla ...
j'imagine bien le code commence rcomme sa :
SendClientMessageToAll(playerid, color, "%s viens de se connecter" , playername");
Ya une fonction a défénir ? j'obtien une erreur fonction mismatch ou je ne sais plus trop quoi =S
Double post
up
-
la fonction ici c'est que ne n'as pas chercher :rules
new playername[MAX_PLAYER_NAME]; //stock le non du joeur
GetPlayerName(playerid, playername, sizeof(playername)); / /tu chope le non du joeur et lenvoi juste au dessus
format(string, sizeof(string), "..::%s a rejoint le serveur::..", playername);//tu va chercher le non du joueur tout au début
SendClientMessageToAll(color, string); //tu envoie le méssage a tt le monde
-
Ah oui. J'ai fait un fonction similaire ... mais sa marche avec 3Warning +D :boulz
:dejadehors
-
Moi j<aimerais faire que sa envois juste au Admin et que sa ecrit Prenom_Nom - IP
-
Moi j<aimerais faire que sa envois juste au Admin et que sa ecrit Prenom_Nom - IP
c'est le méme code pour renvoyer l'ip cherche juste commment utiliser GetPlayerIp ;)
-
Et pour envoyer aux admin il faudra faire une boucle et une condition avec 'IsPlayerAdmin'.
-
Dévellope svp je comprend pas ..
-
Un truque comme sa :
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerAdmin(i))
{
SendClientMessage(i, couleur, message);
}
}
Compris ?
-
Moi j'ai sa:
new playername[MAX_PLAYER_NAME]; //stock le nom du joeur
new playerip[MAX_PLAYER_NAME]; //stock le ip du joueur
GetPlayerName(playerid, playername, sizeof(playername)); // tu chope le non du joeur et lenvoi juste au dessus
GetPlayerIp(playerid, playerip, sizeof(playerip)); // tu chope le ip du joueur et l,envoie au adm
format(string, sizeof(string), ".[ %s - ]", playername, playerip);//tu va chercher le non du joueur tout au début
SendClientMessageToAll(color, string); // tu envoie le méssage a tous le monde
-
Non mais moi je te donne la solution pour l'envoyer qu'aux admins
genre au lieu du SendClientMessageToAll(color, string);
tu doit faire la boucle.
-
Voila, vu que l'aime bien aider les gens et que cette disctution devient longue :D
Metit FS de ma composition à partir du RAF ADMIN SCRIPT :)
PS : Dédicasse à R@F pour son super boulot ;)
#include <a_samp>
//COLORS
#define COLOR_GREEN 0x008000FF
new Mute[MAX_PLAYERS];
public OnFilterScriptInit()
{
print("\n--------------------------------------------------------------------------------------------------------------");
print(" Entree, sortir serveur -- Manathann RP / depuis de model du RAF ADMIN SCRIPT");
print("----------------------------------------------------------------------------------------------------------------\n");
}
public OnPlayerConnect(playerid)
{
new string[256], pname[250];
GetPlayerName(playerid, pname, sizeof(pname));
format(string, sizeof(string), "**** %s est entré en ville ****", pname);
SendClientMessageToAll(COLOR_GREEN, string);
Mute[playerid] = 0;
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new pname[400], string[500];
GetPlayerName(playerid, pname, sizeof(pname));
if(reason == 0)
{
format(string, sizeof(string), "**** %s a quitté la ville. (Innactif) ****", pname);
SendClientMessageToAll(COLOR_GREEN, string);
print(string);
}
else if(reason == 1)
{
format(string, sizeof(string), "**** %s a quitté la ville. (Parti...) ****", pname);
SendClientMessageToAll(COLOR_GREEN, string);
print(string);
}
else if(reason == 2)
{
format(string, sizeof(string), "**** %s a quitté la ville. (Parti...) ****", pname);
SendClientMessageToAll(COLOR_GREEN, string);
print(string);
}
return 1;
}
Et pour toi PureNation, au lieu de SendClientMessageToAll, tu fait SendAdminMessage
Par contre pour l'ip je sais pas trop.
Cordialement,
-
SendAdminMessage(color, "%s - %d" , pname, pip); getip ? playerip ? :-X
-
Salut,
la fonction à utiliser est GetPlayerIP dont l'organisation des paramètres est exactement la même que celle de GetPlayerName
amusez-vous :P
++Sim++
-
ok merci
Mais moi j'ai sa :
C:\Users\manathannrp\Desktop\Manathann\filterscripts\mancon.pwn(12) : error 001: expected token: "(", but found ";"
C:\Users\manathannrp\Desktop\Manathann\filterscripts\mancon.pwn(13) : error 001: expected token: ")", but found "forward"
C:\Users\manathannrp\Desktop\Manathann\filterscripts\mancon.pwn(13) : error 001: expected token: ";", but found "forward"
C:\Users\manathannrp\Desktop\Manathann\filterscripts\mancon.pwn(13) : error 001: expected token: "(", but found ";"
C:\Users\manathannrp\Desktop\Manathann\filterscripts\mancon.pwn(13) : fatal error 107: too many error messages on one line
Vous pouvez voir mon FS en haut et j'ai ajouté sa dans OnPlayerConnect :
new string[256], pip[250];
GetPlayerIp(playerid, pip, sizeof(pip));
format(string, sizeof(string), "**** Adresse IP %d ****", pip);
SendAdminMessage(COLOR_BLEUVERT, string);
Mute[playerid] = 0;
return 1;
}
Et mes CallBack :
forward pip;
forward GetPlayerIp;
Mais ca me dit qe sa va pas :s
-
Salut,
tu ne donne pas la bonne orthographe pour tes forward, comme il s'agit de fonctions, tu dois toujours y mettre des parenthèses....
de plus, dans ce cas ci les deux forward sont complètement inutiles puisque ces fonctions sont déjà déclarées dans les includes et les variables ne doivent jamais être déclarées à l'aide de forward
++Sim++
-
Moi je l'ai fais et sa marche ! ;) Merci a vous :P :happy