Wanteds vergeben

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
  • Abend,


    ich hab gerade einen /su CMD gescriptet der einem Spieler erlaubt einem anderen Spieler Wanted´s zu geben.
    nur wie mache ich das der wen der Spieler z.b. 1 Wanted hat und der Cop 6 gibt das die Wanteds nicht auf 7 hochrutschen?
    Code:
    ocmd:su(playerid,params[])
    {
    if(SpielerInfo[playerid][pFraktion] == 1||SpielerInfo[playerid][pFraktion] == 2||SpielerInfo[playerid][pFraktion] == 3){
    if(OnDuty[playerid] ==1){
    new pID,stk,grund[128],string[128];
    if(sscanf(params,"uis",pID,stk,grund))return SendClientMessage(playerid,WEIß,"Nutze: /su [ID] [Anzahl] [Grund]");
    if(SpielerInfo[pID][pWanted]>=6){
    SendClientMessage(playerid,WEIß,"Der Spieler kann nicht mehr als 6 Wanteds bekommen");
    }
    if(IsPlayerConnected(pID)){
    if(SpielerInfo[pID][pJail]==0){
    if(SpielerInfo[pID][pFraktion] == 1||SpielerInfo[pID][pFraktion] == 2||SpielerInfo[pID][pFraktion] == 3){
    GetPlayerName(playerid,sendername,sizeof(sendername));
    GetPlayerName(pID,giveplayer,sizeof(giveplayer));
    format(string,sizeof(string),"Du hast ein Verbrechen begangen: %s. Von %s",grund,sendername);
    SendClientMessage(pID,HELLROT,string);
    format(string,sizeof(string),"Vergebene Wanteds: %d. Neues Wantedlevel: %d",stk,SpielerInfo[pID][pWanted]);
    SendClientMessage(pID,GELB,string);
    for(new i=0; i <MAX_PLAYERS; i++){
    if(IsACop(i)){
    format(string,sizeof(string),"HQ: Alle Einheiten: Reporter: %s, vergebene Wanteds: %d",sendername,stk);
    SendClientMessage(i,BLAU,string);
    format(string,sizeof(string),"HQ: Grund: %s, Verbrecher: %s, Aktuelle Wanted´s: %d",grund,giveplayer,SpielerInfo[pID][pWanted]);
    SendClientMessage(i,BLAU,string);
    }
    }
    return 1;
    }else SendClientMessage(playerid,WEIß,"Du darfst keine Polizisten anklagen");
    }else SendClientMessage(playerid,WEIß,"Der Spieler ist im Gefängnis");
    }else SendClientMessage(playerid,WEIß,"Der Spieler ist nicht Online");
    }else SendClientMessage(playerid,WEIß,"Du bist nicht im Dienst");
    }
    return 1;
    }

  • Nein, ich meine z.b. der Spieler hat 3 Wanteds und ein Cop gibt dem Spieler 6 dann gehen die Wanteds des Spielers auf 9 wie mache ich das anders?
    mein jetziger Code:
    ocmd:su(playerid,params[])
    {
    if(SpielerInfo[playerid][pFraktion] == 1||SpielerInfo[playerid][pFraktion] == 2||SpielerInfo[playerid][pFraktion] == 3){
    if(OnDuty[playerid] ==1){
    new pID,stk,grund[128],string[128];
    if(sscanf(params,"uis",pID,stk,grund))return SendClientMessage(playerid,WEIß,"Nutze: /su [ID] [Anzahl] [Grund]");
    if(SpielerInfo[pID][pWanted]>=6){
    SendClientMessage(playerid,WEIß,"Der Spieler kann nicht mehr als 6 Wanteds bekommen");
    }
    if(IsPlayerConnected(pID)){
    if(SpielerInfo[pID][pJail]==0){
    if(SpielerInfo[pID][pFraktion] == 1||SpielerInfo[pID][pFraktion] == 2||SpielerInfo[pID][pFraktion] == 3){
    if(stk>1&&stk<6){
    GetPlayerName(playerid,sendername,sizeof(sendername));
    GetPlayerName(pID,giveplayer,sizeof(giveplayer));
    format(string,sizeof(string),"Du hast ein Verbrechen begangen: %s. Von %s",grund,sendername);
    SendClientMessage(pID,HELLROT,string);
    format(string,sizeof(string),"Vergebene Wanteds: %d. Neues Wantedlevel: %d",stk,SpielerInfo[pID][pWanted]);
    SendClientMessage(pID,GELB,string);
    SetPlayerWantedLevel(pID,GetPlayerWantedLevel(pID)+stk);SavePlayer(pID);
    for(new i=0; i <MAX_PLAYERS; i++){
    if(IsACop(i)){
    format(string,sizeof(string),"HQ: Alle Einheiten: Reporter: %s, vergebene Wanteds: %d",sendername,stk);
    SendClientMessage(i,BLAU,string);
    format(string,sizeof(string),"HQ: Grund: %s, Verbrecher: %s, Aktuelle Wanted´s: %d",grund,giveplayer,SpielerInfo[pID][pWanted]);
    SendClientMessage(i,BLAU,string);
    }
    }
    return 1;
    }else SendClientMessage(playerid,WEIß,"Nur zwischen 1 bis 6 Wanteds dürfen vergeben werden");
    }else SendClientMessage(playerid,WEIß,"Du darfst keine Polizisten anklagen");
    }else SendClientMessage(playerid,WEIß,"Der Spieler ist im Gefängnis");
    }else SendClientMessage(playerid,WEIß,"Der Spieler ist nicht Online");
    }else SendClientMessage(playerid,WEIß,"Du bist nicht im Dienst");
    }
    return 1;
    }

  • //edit 2
    Nun hab ich das Problem so gelöst aber wirklich Zeilen schonend ist es nicht :|
    Pastebin link
    ocmd:su(playerid,params[])
    {
    if(SpielerInfo[playerid][pFraktion] == 1||SpielerInfo[playerid][pFraktion] == 2||SpielerInfo[playerid][pFraktion] == 3){
    if(OnDuty[playerid] ==1){
    new pID,stk,grund[128],string[128];
    if(sscanf(params,"uis",pID,stk,grund))return SendClientMessage(playerid,WEIß,"Nutze: /su [ID] [Anzahl] [Grund]");
    if(SpielerInfo[pID][pWanted]>=6){
    SendClientMessage(playerid,WEIß,"Der Spieler kann nicht mehr als 6 Wanteds bekommen");
    }
    if(pID == playerid){
    SendClientMessage(playerid,WEIß,"Du kannst dir selbst keine Wanteds geben");
    }
    if(IsPlayerConnected(pID)){
    if(SpielerInfo[pID][pJail]==0){
    if(SpielerInfo[pID][pFraktion] == 1||SpielerInfo[pID][pFraktion] == 2||SpielerInfo[pID][pFraktion] == 3){
    if(stk>1&&stk<6){
    GetPlayerName(playerid,sendername,sizeof(sendername));
    GetPlayerName(pID,giveplayer,sizeof(giveplayer));
    format(string,sizeof(string),"Du hast ein Verbrechen begangen: %s. Von %s",grund,sendername);
    SendClientMessage(pID,HELLROT,string);
    if(SpielerInfo[pID][pWanted]==0){
    format(string,sizeof(string),"Vergebene Wanteds: %d. Neues Wantedlevel: %d",stk,SpielerInfo[pID][pWanted]);
    }
    else if(SpielerInfo[pID][pWanted]==1&&stk==6){
    format(string,sizeof(string),"Vergebene Wanteds: %d. Neues Wantedlevel: 6",stk);
    }
    else if(SpielerInfo[pID][pWanted]==2&&stk>=5){
    format(string,sizeof(string),"Vergebene Wanteds: %d. Neues Wantedlevel: 6",stk);
    }
    else if(SpielerInfo[pID][pWanted]==3&&stk>=4){
    format(string,sizeof(string),"Vergebene Wanteds: %d. Neues Wantedlevel: 6",stk);
    }
    else if(SpielerInfo[pID][pWanted]==4&&stk>=3){
    format(string,sizeof(string),"Vergebene Wanteds: %d. Neues Wantedlevel: 6",stk);
    }
    else if(SpielerInfo[pID][pWanted]==5&&stk>=2){
    format(string,sizeof(string),"Vergebene Wanteds: %d. Neues Wantedlevel: 6",stk);
    }
    else if(SpielerInfo[pID][pWanted]==6&&stk>=1){
    format(string,sizeof(string),"Vergebene Wanteds: %d. Neues Wantedlevel: 6",stk);
    }
    SendClientMessage(pID,GELB,string);
    SetPlayerWantedLevel(pID,GetPlayerWantedLevel(pID)+stk);SavePlayer(pID);
    if(GetPlayerWantedLevel(playerid)>=6){
    SetPlayerWantedLevel(pID,6);
    }
    for(new i=0; i <MAX_PLAYERS; i++){
    if(IsACop(i)){
    format(string,sizeof(string),"HQ: Alle Einheiten: Reporter: %s, vergebene Wanteds: %d",sendername,stk);
    SendClientMessage(i,BLAU,string);
    format(string,sizeof(string),"HQ: Grund: %s, Verbrecher: %s, Aktuelle Wanted´s: %d",grund,giveplayer,SpielerInfo[pID][pWanted]);
    SendClientMessage(i,BLAU,string);
    }
    }
    return 1;
    }else SendClientMessage(playerid,WEIß,"Nur zwischen 1 bis 6 Wanteds dürfen vergeben werden");
    }else SendClientMessage(playerid,WEIß,"Du darfst keine Polizisten anklagen");
    }else SendClientMessage(playerid,WEIß,"Der Spieler ist im Gefängnis");
    }else SendClientMessage(playerid,WEIß,"Der Spieler ist nicht Online");
    }else SendClientMessage(playerid,WEIß,"Du bist nicht im Dienst");
    }
    return 1;
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen