/wanted [ID] <- ID ist immer NPC

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,


    ich schreibe ein Selfmade und habe dort NPC's drin.
    Mein Wanted Befehl sieht so aus:
    ocmd:wanted(playerid, params[])
    {
    new wanteds,pID;
    new Wanted[128],Cop[128],Verbrecher[128],Grund[128];
    new pname[MAX_PLAYER_NAME];
    new pname2[MAX_PLAYER_NAME];
    GetPlayerName(pID,pname,sizeof(pname));
    GetPlayerName(playerid,pname2,sizeof(pname2));
    if(pID == playerid) return SendClientMessage(playerid,ROT,"Du kannst dir nicht selber Wanteds geben!");
    if(sscanf(params,"uis",pID,wanteds,Grund))return SendClientMessage(playerid,ROT,"/wanted [Spieler] [Wantedzahl] [Grund]");
    if(wanteds<1||wanteds>6)return SendClientMessage(playerid,ROT,"Du kannst nur minimal 1 Wanted oder maximal 6 Wanteds geben!");
    if(!IstPolizist(playerid)) return SendClientMessage(playerid,ROT,"Du bist kein Cop!");
    SetPlayerWantedLevel(pID, GetPlayerWantedLevel(pID)+wanteds);
    SetPVarInt(pID,"Wantedlevel",GetPlayerWantedLevel(pID));
    format(Cop,sizeof(Cop)," Du hast %s Wanteds gegeben. Grund %s",pname,Grund);
    format(Verbrecher,sizeof(Verbrecher)," %s hat dir %i Wanteds Gegeben. Grund: %s",pname2,wanteds,Grund);
    format(Wanted,sizeof(Wanted), "Nun ist dein Wantedlevel auf %i gestiegen!",GetPlayerWantedLevel(pID));
    SendClientMessage(playerid,BLAU,Cop);
    SendClientMessage(pID,ROT,Verbrecher);
    SendClientMessage(pID,ROT,Wanted);
    new SpielerDatei[128];
    format(SpielerDatei,sizeof(SpielerDatei),"/Accounts/%s.ini",pname);
    dini_IntSet(SpielerDatei, "WantedLevel", GetPlayerWantedLevel(pID));
    return 1;
    }

    Wenn ich jetzt /wanted 3 2 TEST eingebe, kommt Du hast Clown wanteds gegeben. Grund: Test
    Clown = NPC
    OnPlayerSpawn
    if(IsPlayerNPC(playerid))
    {
    new botname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,botname,sizeof(botname));
    if(!strcmp(botname,"Clown",true))
    {
    SetPlayerInterior(playerid,0);
    SetPlayerSkin(playerid,264);
    Spieler[playerid][Skin] = 264;
    }
    else if(!strcmp(botname,"Mofahaendler",true))
    {
    SetPlayerInterior(playerid,0);
    SetPlayerSkin(playerid,227);
    Spieler[playerid][Skin] = 227;
    }
    else if(!strcmp(botname,"Zollbeamter",true))
    {
    SetPlayerInterior(playerid,0);
    GivePlayerWeapon(playerid,3,1);
    SetPlayerSkin(playerid,281);
    Spieler[playerid][Skin] = 281;
    }
    }
    if(IsPlayerNPC(playerid))return 1;


    Habe das Probem auch bei /pban
    Vlt wenn ihr mir bei dem command helfen könnt, kann ich das bei /pban auch fixxen...
    Ich sehe einfach kein Fehler... benutze Dini für account speichern.


    Mit freundlichen Grüßen
    Skillz

    Mit freundlichen Grüßen
    Skillz

  • Der Clown hat ID 0, richtig? Du lässt dir mit dem Initalisierungswert der Variabel 'pID' den Namen per GetPlayerName() geben, da der Initalisierungswert der Variabel 0 ist, ist der Name logischerweiße auch falsch.

  • Der Clown hat ID 0, richtig? Du lässt dir mit dem Initalisierungswert der Variabel 'pID' den Namen per GetPlayerName() geben, da der Initalisierungswert der Variabel 0 ist, ist der Name logischerweiße auch falsch.


    D.h. ich soll abfragen ob pID über 0 ist oder wie soll ich das machen?

    Mit freundlichen Grüßen
    Skillz