/sms - returnt immer "Nummer existiert nicht" - Auch wenn richtige Nummer

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
  • Hey ihr lieben :D


    Ich hab grad ein Problem mit meinem /sms Befehl.. ich kann ingame die richtige oder falsche Nummer eingeben,
    /sms 5819 Hallo = Ist richtig,aber returnt: Diese Nummer existiert nicht.


    /sms 62256 Hallo = Ist falsch,returnt: Diese Nummer existiert nicht.



    Ich hab eig. nach meinen Augen alles richtig,vielleicht könnt ihr ja aber helfen:


    ocmd:sms(playerid..)
    ocmd:sms(playerid,params[])
    {
    if(GetPVarInt(playerid,"NHandy")==1)
    {
    new hnum,string[128];
    if(sscanf(params,"is",hnum,string))return SendClientMessage(playerid,gelb,"Verwendung: /sms (Handynummer) (Nachricht)");
    if(GetNumPlayerId(hnum) == -1)return SendClientMessage(playerid,grau,"Die Nummer existiert nicht.");


    format(string,sizeof(string),"** SMS: %s,von %s (%i) **",string,PlayerName(playerid),Handynummer[playerid]);
    SendClientMessage(GetNumPlayerId(hnum),gelb,string);
    SendClientMessage(playerid,gruen,"Nachricht wurde versendet.");
    new hgeld[129];
    new hgeldmin;
    hgeldmin=strlen(string) * handy_sms_preis_pro_char;
    format(hgeld,sizeof(hgeld),"- %i$",hgeldmin);
    GameTextForPlayer(playerid,hgeld,5000,3);
    GivePlayerMoney(playerid,-hgeldmin);
    }
    return 1;
    }



    Hier die Abfrage ob die bei /sms angegebene Nummer auch existiert:
    stock GetNumPlayerId(num)
    {
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(Handynummer[i] == num) // anpassen
    {
    return i;
    }
    }
    return -1;
    }


    Desweiteren bekommt der Spieler eine Nummer,die wird auch richtig verteilt..Schließlich steht sie ja auch in meinen Stats.
    Oben im Script ist bereits:
    new Handynummer[MAX_PLAYERS];
    angegeben wurden..



    WAS ist dort falsch?

  • Gemacht..Kleiner Ausschnitt meiner Spieler Lade Funktion:



    Handynummer[playerid]=GetPVarInt(playerid,"Handynummer");
    SetPVarInt(playerid,"Respekt",dini_Int(PlayerDatei,"Respekt"));
    SetPVarInt(playerid,"Carslots",dini_Int(PlayerDatei,"Carslots"));
    SetPVarInt(playerid,"Pilotrespekt",dini_Int(PlayerDatei,"Pilotrespekt"));
    SetPVarInt(playerid,"Perso",dini_Int(PlayerDatei,"Perso"));
    SetPVarInt(playerid,"Handynummer",dini_Int(PlayerDatei,"Handynummer"));
    SetPVarInt(playerid,"Konto",dini_Int(PlayerDatei,"Konto"));


    Die Nummer ist von der Zuweisung korrekt und fehlerfrei.
    Hab sie ja im /stats Befehl eingebunden und dort wird mir eine richtige Nummer angezeigt.