Creating Join and Leave Messages FR

From SA-MP Wiki

Jump to: navigation, search

Créer un message de connexion

Créer un message de connexion est assez simple à faire, il suffit d'envoyer un message à tous le monde au moment ou un joueur se connecte (évidemment). On va donc manipuler la fonction SendClientMessage et la callback OnPlayerConnect.

public OnPlayerConnect(playerid)
{
    new pname[MAX_PLAYER_NAME], string[22 + MAX_PLAYER_NAME];
    //On crée une variable pname qui va contenir le nom du joueur, et une variable string qui est le message à envoyer
    GetPlayerName(playerid, pname, sizeof(pname)); 
    //On récupère le nom du joueur dans la variable pname et on met comme taille maximale, la taille de pname
    format(string, sizeof(string), "%s s'est connecté au serveur !", pname); 
    //On formate le message le message et on insère la valeur de la variable pname(le nom du joueur) au tout début
    SendClientMessageToAll(0xAAAAAAAA, string); 
    //On envoie le message à tous le monde
    return 1;
}

C'est très simple non ?

Créer un message de dé-connexion

Cette fois-ci on doit envoyer un message a tous le monde quand il se déconnecte et on doit réussir à obtenir le type de déconnection (kick, bug, quitte volontairement). On va donc devoir se servir de SendClientMessage et OnPlayerDisconnect.

public OnPlayerDisconnect(playerid, reason)
{
    new pname[MAX_PLAYER_NAME], string[39 + MAX_PLAYER_NAME]; 
    //On crée une variable pname qui va contenir le nom du joueur, et une variable string qui est le message à envoyer
    GetPlayerName(playerid, pname, sizeof(pname)); 
    //On récupère le nom du joueur dans la variable pname et on met comme taille maximale, la taille de pname
 
    switch(reason) 
    {//On modifie le message en y insérant la valeur de la variable pname, donc le nom du joueur et on modifie le message selon le type de dé-connexion
        case 0: format(string, sizeof(string), "%s a quitté le serveur. (Connexion perdue)", pname);  
        //Si c'est 0, c'est un bug
        case 1: format(string, sizeof(string), "%s a quitté le serveur. (Déconnexion)", pname); 
        //Si c'est 1, il a quitté volontairement
        case 2: format(string, sizeof(string), "%s a quitté le serveur. (Exclu/Banni)", pname); 
        //Si c'est 2, il a été kické
    } 
 
    SendClientMessageToAll(0xAAAAAAAA, string); 
    //On envoie le message à tous les joueurs
    return 1;
}

Merci d'avoir suivi ce tutoriel, vous n'avez plus qu'a tout faire vous-même sans regarder cette page pour vous entraîner !

Personal tools