Berufe Problem

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
  • Hallo leute


    Ich bin grad dabei einen neuen Beruf zu machen! (FBI)


    So dieser beruf soll die commands /jail , /unjail , /Regierung


    Sooo Bei /regierung soll so funktionieren das man /Regierung (Text) macht und es alle User lesen können


    so ich habe bisjetzt volgendes gemacht:


    FBI bei den Defines hinzugefügt:
    #define TEAM_ARBEITSLOS 5
    #define TEAM_POLIZIST 6
    #define TEAM_ADAC 7
    #define TEAM_FAHRSCHULE 8
    #define TEAM_AUTOHAUS 9
    #define TEAM_SPEDITION 10
    #define TEAM_KELLNER 11
    #define TEAM_GEBRAUCHT 12
    #define TEAM_SANI 13
    #define TEAM_FBI 14


    und bei den hier:
    new berufe[MAX_BERUFE][256] = {
    {"Arbeitslos"},
    {"Polizist"},
    {"Mechaniker"},
    {"Fahrschullehrer"},
    {"Autoverkäufer"},
    {"Spediteur"},
    {"Kellner"},
    {"Gebrauchtwagenhändler"},
    {"Sanitäter"}
    {"FBI"}
    };



    Hier habe ich auch schon /jail und /unjail:
    //---------------------------------------------------------("FBI")--------------------------------------------------------


    if(strcmp(cmd, "/jail", true) == 0 && gTeam[playerid] == TEAM_FBI) {
    new tmp[256];
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) {
    SendClientMessage(playerid, COLOR_ORANGE, "Benutzung: /jail [Player ID]");
    return 1;
    }
    giveplayerid = strval(tmp);
    if(GetDistanceBetweenPlayers(playerid,giveplayerid)<11) {
    if (IsPlayerConnected(giveplayerid))
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast sie/ihn erfolgreich gejailt!");
    Jail(giveplayerid);
    }else{
    SendClientMessage(playerid,COLOR_RED,"Spieler existiert nicht oder ist zu weit entfernt");
    }
    return 1;
    }
    }



    if(strcmp(cmd, "/unjail", true) == 0 && gTeam[playerid] == TEAM_FBI) {
    new tmp[256];
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) {
    SendClientMessage(playerid, COLOR_ORANGE, "Benutzung: /unjail [Player ID]");
    }
    giveplayerid = strval(tmp);
    if (IsPlayerConnected(giveplayerid))
    if (IsPlayerConnected(giveplayerid))
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast sie/ihn erfolgreich unjailt!");
    Unjail(giveplayerid);
    }else{
    SendClientMessage(playerid,COLOR_RED,"Spieler existiert nicht oder ist zu weit entfernt");
    }
    return 1;
    } Dies habe ich aber von der Polizei kopiert



    soo /regierung bekomme ich garnicht erst auf die kette wüste ich auch garnicht wie und hier nun zu meinen bisherigen beiden errors


    D:\Pawn\pawno\Reallife GM\Test GM.pwn(275) : error 001: expected token: "}", but found "{"
    D:\Pawn\pawno\Reallife GM\Test GM.pwn(276) : error 010: invalid function or declaration


    hier die zeilen der errors
    {"FBI"}
    };

  • emm ich weis auch net woran es liegt aber vllt. liegt es daran das du bei den letzten beiden das "," vergessen hast.

  • Jaa Geil danke es lag wirklich nur an diesem Blöden Komma xDDDDD hätt ich auch selber drauf kommen können VIELEN VIELEN dank!!!


    aber da bleibt noch ne frage offen!


    Könnte mir jemand den Befehl /regierung (Text) machen der text soll dann in Rot Mit Regierung davor für alle spiler sichtbar sein!



    //edit: Achso nochne frage habe ja oben dien Jail command gepostet wo wird definiert wo die spieler hinkommen wen man /jail macht weil das fbi gefängniss woanders sein soll

    Einmal editiert, zuletzt von Keylon ()

  • if(strcmp(cmd, "/regierung", true) == 0 || strcmp(cmd, "/rg", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(!IsACop(playerid))
    {
    SendClientMessage(playerid, COLOR_RED, " Du bist nicht befugt!");
    return 1;
    }
    if(PlayerInfo[playerid][pRank] < 5)
    {
    SendClientMessage(playerid, COLOR_GREY, " Benötigst Rang 5!");
    return 1;
    }
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "FEHLER: (/rg) [text]");
    return 1;
    }
    SendClientMessageToAll(COLOR_WHITE, "|___________ Regierungs Meldungen ___________|");
    format(string, sizeof(string), "Meldung: %s: %s", sendername, result);
    SendClientMessageToAll(COLOR_RED, string);
    }
    return 1;
    }

  • Ohh das ging ja schnell Danke sehr nur ein problem habe ich noch


    Die berufe werden so definiert


    if(strcmp(cmd, "/jail", true) == 0 && gTeam[playerid] == TEAM_FBI)


    Beispiel von meinem /jail command


    und die jobs haben keine Ränge

  • Dein befehl würde nicht mit meinem script harmonieren Ich habe keine Job Ränge und wen ich definieren will das der befehl nur für einen bestimten job ist dann müsste ich das so schreiben


    if(strcmp(cmd, "/regierung", true) == 0 && gTeam[playerid] == TEAM_FBI) das ==TEAM_FBI steht dafür das nur der job den befehl amchen kann





    //Edit habe das jetzt so doch wen ich Complimieren will stürtzt der Complimierer ab


    if(strcmp(cmdtext,"/regierung", true,5)== 0 && gTeam[playerid] == TEAM_POLIZIST)
    {if(!strlen(strget(cmdtext,2)))
    return
    SendClientMessage(playerid,gelb,"Benutze: /regierung [Text]");
    GetPlayerName(playerid,name,sizeof name);


    SendClientMessageToAll(COLOR_WHITE, "|___________ Regierungs Meldungen ___________|");
    format(string, sizeof(string), "Meldung: %s: %s", sendername, result);
    SendClientMessageToAll(COLOR_RED, string);


    }
    return 1;
    }


    //edit: Habe noch ein Problem mit dem FBI job! man geht normalerweise Onduty in dem man in so ein zeichen rein geht dann öffnet sich ein Dialog wo man Dienst Beginnen und Beenden kann dieses zeichen habe ich jetzt schon reingemappt und ins script reingemacht


    Kleiner ausschnitt:


    CreatePickup ( 1275, 23, -2664.8015,640.1572,14.4531 ); //Hospital
    CreatePickup ( 1239, 23, -1549.1708,124.0538,3.5547 ); //Minimission TKN
    CreatePickup ( 1275, 23, -2595.84,615.59,14.45 ); //FBI

    3 Mal editiert, zuletzt von Keylon ()