/gefängnis

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hi Leute,


    habe ein Alcatraz und ein Knast System,


    aber wie kann ich machen das wenn ein cop /gefängnis schreibt sieht wer im Genfängis ist?


    Hier die Abfragen:


    if(PlayerInfo[playerid][pJailed] == 2)//Alcatraz
    if(PlayerInfo[playerid][pJailed] == 1)//Normaler knast


    Hoffe ihr könnt mir weiter helfen


    Mfg


    Strato

  • So wie ich das jetzt verstanden habe, wird bei jedem Spieler über ein Array gespeichert in welchem Knast er ist, bzw ob er gar nicht drin ist.
    Dann musst du einfach mit einer for-loop alle Spieler durchgehen und bei jedem bei dem die If zutrifft den Namen an den die Command ausführende ID senden.


  • new pName[MAX_PLAYER_NAME],string[64];
    for(new i = 0;i<MAX_PLAYER;i++)
    {
    if(IsPlayerConnected(i))
    {
    GetPlayerName(i,pName,sizeof(pName));
    if(PlayerInfo[i][pJailed] == 2) // Alkatraz
    {
    format(string,sizeof(string),"Alkatraz: %s",pName);
    }
    else if(PlayerInfo[i][pJailed] == 1) // Knast
    {
    format(string,sizeof(string),"Knast: %s",pName);
    }
    SendClientMessage(playerid,COLOR,string);
    }
    }

  • new pName[MAX_PLAYER_NAME],string[64];
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    GetPlayerName(i,pName,sizeof(pName));
    if(GetPVarInt(i,"DeathMatch") == 1) // Alkatraz
    {
    format(string,sizeof(string),"DeagleDeathMatch: %s",pName);
    }
    else if(GetPVarInt(i,"DeathMatch") == 2) // Alkatraz) // Knast
    {
    format(string,sizeof(string),"Andere DeathMatches: %s",pName);
    }
    SendClientMessage(playerid,COLOR_GRAY,string);
    }
    }
    richtig ist es so :)

  • noch weiter vorkaun?
    Du musst das ganze als einen Befehl erstellen



    if(!strcmp(cmdtext, "/gefängnis", true) && strlen(cmdtext) != 0)
    {
    if(PlayerInfo[playerid][Job] == Cop)
    {
    new pName[MAX_PLAYER_NAME],string[64];
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    GetPlayerName(i,pName,sizeof(pName));
    if(PlayerInfo[i][pJailed] == 2) // Alkatraz
    {
    format(string,sizeof(string),"Alkatraz: %s",pName);
    }
    else if(PlayerInfo[i][pJailed] == 1) // Knast
    {
    format(string,sizeof(string),"Knast: %s",pName);
    }
    SendClientMessage(playerid,COLOR,string);
    }
    }
    }
    }
    #


    edit: MAX_PLAYER -> MAX_PLAYERS

    Einmal editiert, zuletzt von Hagi ()

  • Danke so habe noch warning


    C:\Users\Strato\Desktop\RRP Server\gamemodes\Release.pwn(53302) : warning 219: local variable "string" shadows a variable at a preceding level


    new pName[MAX_PLAYER_NAME],string[64];

  • ersetz einfach z.B.
    string zu
    string1111
    also so:

    if(!strcmp(cmdtext, "/gefängnis", true) && strlen(cmdtext) != 0)
    {
    if(PlayerInfo[playerid][Job] == Cop)
    {
    new pName[MAX_PLAYER_NAME],string1111[64];
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    GetPlayerName(i,pName,sizeof(pName));
    if(PlayerInfo[i][pJailed] == 2) // Alkatraz
    {
    format(string1111,sizeof(string1111),"Alkatraz: %s",pName);
    }
    else if(PlayerInfo[i][pJailed] == 1) // Knast
    {
    format(string1111,sizeof(string1111),"Knast: %s",pName);
    }
    SendClientMessage(playerid,COLOR,string);
    }
    }
    }
    }


    graphics frontend web