Tutorial de Tupi
n acest tutorial vă voi prezenta cum se poate realiza comanda prin care un jucător poate șopti catre alt jucător
Înainte de toate eu am folosit include-ul: a_samp, sscanf2, zcmd și am definit SCM-ul
Code:
#include <a_samp>
#include <zcmd>
#include <sscanf2>
#define SCM SendClientMessage
Acum vom crea comanda în sine prin care vom sopti unui jucător.
Code:
CMD:whisper(playerid, params[])
{
new id, message[64], string[128], sendername[16], receivername[16], Float:Pos[3]; //ne cream variabilele de care avem nevoie
if(sscanf(params, "us[64]", id, message)) return SCM(playerid, -1, "Use: /whisper <Name/Playerid> <Message>"); //verificam daca in sintaxa comenzii s-a folosit un nume/id si un mesaj
if(playerid == id) return 1; //daca ID-ul introdus in sintaxa comenzii corespunde cu propriul ID atunci nu vom returna nimic
GetPlayerPos(id, Pos[0], Pos[1], Pos[2]);
if(!IsPlayerInRangeOfPoint(playerid, 5.0, Pos[0], Pos[1], Pos[2])) return SCM(playerid, -1, "Eroare: Acest jucator nu se langa tine."); //verificam daca jucatorul nu catre care se sopteste nu este langa cel care sopteste atunci returnam un mesaj informativ
GetPlayerName(playerid, sendername, 16); //luam numele nostru
GetPlayerName(id, receivername, 16); //luam numele celui caruia ii soptim
format(string, sizeof(string), "Whisper to %s: %s", receivername, message); //formatam string-ul in felul urmator
SCM(playerid, -1, string); //trimitem primul string formatat jucatorului care sopteste
format(string, sizeof(string), "Whisper from %s: %s", sendername, message); //formatam din nou string-ul in felul urmator
SCM(id, -1, string); //trimitem din nou string-ul formatat jucatorului catre care se sopteste
return 1;
}