/repair funktioniert nicht? Warum?

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
  • Hay Ho Scripter und Community.


    Ich habe ein Problem und zwar sobald /repair eintippe kommt einfach nichts.
    Was habe ch falsch gemacht?
    Hier der Code:


    if(strcmp(cmd, "/repair", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(JobDuty[playerid] == 1)
    {
    if(PlayerInfo[playerid][pLeader] == 18 || PlayerInfo[playerid][pMember] == 18)
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Benutze: /repair [SpielerID] [Preis]");
    return 1;
    }
    new playa;
    new money;
    playa = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    money = strval(tmp);
    if(money < 1 || money > 2000) { SendClientMessage(playerid, COLOR_GREY, "Repairpreis kann max. $2000 betragen!"); return 1; }
    if(IsPlayerConnected(playa))
    {
    if(playa != INVALID_PLAYER_ID)
    {
    if(ProxDetectorS(8.0, playerid, playa)&& IsPlayerInAnyVehicle(playa))
    {
    GetPlayerName(playa, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* Du bietest %s an sein Auto für $%d zu reparieren.",giveplayer,money);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* Mechaniker %s bietet dir an dein Auto für $%d zu reparieren, (Benutze /accept repair) zum akzteptieren.",sendername,money);
    SendClientMessage(playa, COLOR_LIGHTBLUE, string);
    RepairOffer[playa] = playerid;
    RepairPrice[playa] = money;
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Spieler nicht in deiner Nähe.");
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist offline.");
    }
    }
    }
    return 1;
    }
    }


    Danke im Vorraus :)


    MFG

  • Beitrag von Melburn ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Sollte so klappen..
    Ansonsten debugge es mal..


    if(strcmp(cmd, "/repair", true) == 0){
    if(JobDuty[playerid] == 1 && PlayerInfo[playerid][pLeader] == 18 || PlayerInfo[playerid][pMember] == 18){
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))return SendClientMessage(playerid, COLOR_LIGHTBLUE, "Benutze: /repair [SpielerID] [Preis]");
    new playa,money;
    playa = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    money = strval(tmp);
    if(money < 1 || money > 2000)return SendClientMessage(playerid, COLOR_GREY, "Repairpreis kann max. $2000 betragen!");
    if(!IsPlayerConnected(playa))return SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist offline.");
    if(ProxDetectorS(8.0, playerid, playa) && IsPlayerInAnyVehicle(playa)){
    GetPlayerName(playa, giveplayer, sizeof(giveplayer)), GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* Du bietest %s an sein Auto für $%d zu reparieren.",giveplayer,money);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), "* Mechaniker %s bietet dir an dein Auto für $%d zu reparieren, (Benutze /accept repair) zum akzteptieren.",sendername,money);
    SendClientMessage(playa, COLOR_LIGHTBLUE, string);
    RepairOffer[playa] = playerid;
    RepairPrice[playa] = money;
    }
    else return SendClientMessage(playerid, COLOR_GREY, "Spieler nicht in deiner Nähe.");
    }
    return 1;
    }

  • Spoiler anzeigen
    if(!strcmp(cmd,"/repair",true))
    {
    printf("JobDuty: %d",JobDuty[playerid]);
    if(JobDuty[playerid] == 1)
    {
    printf("pLeader: %d - pMember: %d",PlayerInfo[playerid][pLeader],PlayerInfo[playerid][pMember]);
    if(PlayerInfo[playerid][pLeader] == 18 || PlayerInfo[playerid][pMember] == 18)
    {
    tmp = strtok(cmdtext,idx);
    if(!strlen(tmp))return SendClientMessage(playerid,COLOR_LIGHTBLUE,"Benutze: /repair [SpielerID] [Preis]");
    new playa,money;
    playa = ReturnUser(tmp);
    tmp = strtok(cmdtext,idx);
    money = strval(tmp);
    if(money < 1 || money > 2000)return SendClientMessage(playerid,COLOR_GREY,"Repairpreis kann max. 2000$ betragen!");
    if(IsPlayerConnected(paya))
    {
    printf("playa: %d - playerid: %d",playa,playerid);
    if(playa != playerid)
    {
    if(ProxDetectorS(8,playerid,playa) && IsPlayerInAnyVehicle(playa))
    {
    GetPlayerName(playerid,sendername,sizeof sendername);
    GetPlayerName(paya,giveplayer,sizeof giveplayer);
    format(string,sizeof string,"* Du bietest %s an sein Auto für $%d zu reparieren.",giveplayer,money);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
    format(string,sizeof string,"* Mechaniker %s bietet dir an dein Auto für $%d zu reparieren. (Benutze /accept repair) zum akzeptieren",sendername,money);
    SendClientMessage(paya,COLOR_LIGHTBLUE,string);
    RepairOffer[playa] = playerid;
    RepairPrice[paya] = money;
    printf("Angebot abgeschickt");
    return 1;
    }
    return SendClientMessage(playerid, COLOR_GREY, "Spieler nicht in deiner Nähe.");
    }
    return SendClientMessage(playerid,COLOR_GREY,"Du kannst dein Auto nicht selbst reparieren");
    }
    return SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist offline.");
    }
    }
    return 1;
    }

    Lass es dir mal so durch printen, und zeige uns was kommt.
    EDIT: @leader_king: oder ist das schon behoben worden?

    Einmal editiert, zuletzt von AirM4X ()