Skin will nicht laden..

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
  • Moin,
    ich hab ein kleines Problem undzwar habe ich mir einen /setskin Befehl gemacht und dieser funktioniert auch..
    Das Problem ist das mein Login/Register System was auch die SpielerAkten erstellt den Skin zwar speichert aber
    beim neueinloggen wieder auf 0 setzt.
    /setskin Befehl:

    if(strcmp(strget(cmdtext,0),"/setskin",true)==0)
    {
    if(!strlen(strget(cmdtext,2)))return SendClientMessage(playerid,ROT,"Benutzte: /setskin [ID] [SKINDID]");
    {
    if(isPlayerAnAdmin(playerid,3))
    {
    new ziel=strval(strget(cmdtext,1));
    new skinid=strval(strget(cmdtext,2));
    SetPlayerSkin(ziel,skinid);
    SendClientMessage(playerid,GELB,"Dein Skin wurde von Admin %s gewechselt");
    }else{
    SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    }
    }
    return 1;
    }


    stock SpielerSpeichern:

    stock SpielerSpeichern(playerid)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"SkinID",GetPlayerSkin(playerid));
    dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    dini_IntSet(Spielerdatei,"Banned",GetPVarInt(playerid,"Banned"));
    dini_IntSet(Spielerdatei,"Supporter",GetPVarInt(playerid,"Supporter"));
    dini_IntSet(Spielerdatei,"Fuehrerschein",GetPVarInt(playerid,"Fuehrerschein"));
    dini_IntSet(Spielerdatei,"ZeitSeitPD", GetPVarInt(playerid,"ZeitSeitPD"));
    dini_IntSet(Spielerdatei,"Respektpunkte", GetPVarInt(playerid,"Respektpunkte"));
    dini_IntSet(Spielerdatei,"Respekt", GetPVarInt(playerid,"Respekt"));
    dini_IntSet(Spielerdatei,"LevelMoney", GetPVarInt(playerid,"LevelMoney"));
    }
    return 1;
    }


    stock LoadAccount:

    stock LoadAccount(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
    SetPlayerSkin(playerid,dini_Int(Spielerdatei,"SkinID"));
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    SetPVarInt(playerid,"Fuehrerschein",dini_Int(Spielerdatei,"Fuehrerschein"));
    SetPVarInt(playerid,"loggedin",1);
    SetPVarInt(playerid,"Supporter",dini_Int(Spielerdatei,"Supporter"));
    SetPVarInt(playerid,"ZeitSeitPD", dini_Int(Spielerdatei, "ZeitSeitPD"));
    SetPVarInt(playerid,"Respektpunkte", dini_Int(Spielerdatei, "Respektpunkte"));
    SetPVarInt(playerid,"Respekt", dini_Int(Spielerdatei, "Respekt"));
    SetPVarInt(playerid,"LevelMoney", dini_Int(Spielerdatei, "LevelMoney"));
    SetPVarInt(playerid,"Banned",dini_Int(Spielerdatei,"Banned"));
    if(GetPVarInt(playerid,"Banned")==1)
    {
    SendClientMessage(playerid,ROT,"Du bist auf unserem Server gebannt");
    Kick(playerid);
    }
    return 1;
    }


    Würde mich wirklich freuen wenn mir jmd helfen könnte :D

  • Ich kann des grade net testen da imemr wenn ich mein /setskin befehl benutzte der server abstzürzt :D muss jetzt erstmal gucken woran des wieder liegt.


    //edit:
    Das Funktioniert irgentwie auch nicht..
    hilft es vlt das ich sage das ich nen Timer für die Skinauswahl beim login habe ? :D
    Bei mir will SpawnPlayer; nicht funktionieren ^^


  • ocmd:setskin(playerid,params[])
    {
    if(Spieler[playerid][Admin] <= 3)return SendClientMessage(playerid,COLOR_GREY, "Du brauchst Admin Rank 3 für den Befehl!");// Wichtig anpassen in eigene Variable!!!
    new skinID, pID, string[256];
    if(sscanf(params,"ui",pID,skinID))return SendClientMessage(playerid,COLOR_GREY, "FEHLER: /setskin [SpielerID] [SkinID]");
    SetPlayerSkin(pID, skinID);
    format(string, sizeof(string), " ** Admin %s hat deinen Skin auf ID %d gesetzt. **", SpielerName(playerid), skinID);
    SendClientMessage(pID, COLOR_LIGHTBLUE, string);
    format(string, sizeof(string), " ** Du hast den Skin von %s auf %d gesetzt. **", SpielerName(pID), skinID);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    return 1;
    }





    Hab dir mal den Setskin Befehl mit OCMD in Verbindung mit SSCANF gemacht.
    Du brauhst noch den Stock SpielerName, der eig im MrMonat Script mit dabei ist, und dein Script sieht mir so aus wie Mr Monat.
    Nur das mit dem GetplayerName kann ich noch net sogut. ^^


    PS: Admin Variable anpassen.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Du solltest in deinem CMD auch die PVar speichern lassen.




    if(strcmp(strget(cmdtext,0),"/setskin",true)==0)
    {
    if(!strlen(strget(cmdtext,2)))return SendClientMessage(playerid,ROT,"Benutzte: /setskin [ID] [SKINDID]");
    {
    if(isPlayerAnAdmin(playerid,3))
    {
    new ziel=strval(strget(cmdtext,1));
    new skinid=strval(strget(cmdtext,2));
    SetPlayerSkin(ziel,skinid);
    // Wo wird denn hier die PVarInt gesetzt? Wenn du hier keine setzt kann auch keine Geladen werden?
    // --> SetPVarInt(ziel,"SkinID",skinid);
    SendClientMessage(playerid,GELB,"Dein Skin wurde von Admin %s gewechselt");
    }else{
    SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    }
    }
    return 1;
    }


    edit: Fehler :S
    EDIT2: noch ein fehler o0 :S

  • Oben neben der Überschrift ist so ein Symbol, wenn du da klickst kannst du den Thread hier schließen, sofern wirklich alles beseitigt ist ;)