Szerző Téma: Csapatban levõ beszélgetés  (Megtekintve 536 alkalommal)

Csapatban levõ beszélgetés
« Dátum: 2013. március 29. - 17:16:23 »
0 Show voters
Sziasztok. Csinálok egy TDM szerót, és azt szeretném megcsinálni, hogy a csapatokon belül lehessen úgy beszélgetni, hogy az ellenség ne lássa mit ír.
Már ennyit írtam:
if(GetPlayerTeam(TEAM_GROOVE))
    {
    new string[150];
    new jatekosnev[MAX_PLAYER_NAME];
GetPlayerName(playerid, jatekosnev, MAX_PLAYER_NAME);
format(string, sizeof(string), \"%s mondja: %s\", jatekosnev, text);
return 1;
    }

 
Aki megmondja megy a +

Csapatban levõ beszélgetés
« Válasz #1 Dátum: 2013. március 29. - 22:46:05 »
0 Show voters
if(GetPlayerTeam(playerid) == TEAM_GROOVE)

Nem elérhető BackUP

  • 908
    • Profil megtekintése
Csapatban levõ beszélgetés
« Válasz #2 Dátum: 2013. március 30. - 13:29:07 »
+1 Show voters
ez így el sem küldi.
Nagyon egyszerû a megoldás.
 
public SendGroove(color, string[])
{
              for(new i = 0; i < MAX_PLAYERS; i++) // Egyértelmû for ciklus
{
if(IsPlayerConnected(i)) // megnézzük csatlakozva van e a játékos
{
   if(GetPlayerTeam(i) == TEAM_GROOVE) // ugye itt megnézzük, hogy a csatlakozottak közül ki van a \'groove\' csapatban.
   {
      SendClientMessage(i, color, string); // Aki benne van, annak elküldjök az üzenetet.
   }
}
}

 
parancshoz példa:
 
CMD:csapat(playerid, params[])
{
             new uzenet[100];
             new str[70];
             new nev[40];
             if(GetPlayerTeam(playerid) != TEAM_GROOVE) return SendClientMessage(playerid, Piros, \"- Nem vagy a Groove csapat tagja!\");
             if(sscanf(params,\"s[100]\",uzenet)) return SendClientMessage(playerid, Piros, \"Használd így: /csapat <üzeneted>\");
             GetPlayerName(playerid,nev,sizeof(nev));
             format(str,sizeof(str),\"[Csapat]%s: %s\",nev,uzenet);
             SendGroove(Citrom, str); // Elküldjük a csapatnak az üzenetet.
             return 1;
}

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal