Frage zu Skin Speichern

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 zusammen.


    Irgendwie wird, bei mir beim Ausloggen der Skin nicht Gespeichert


    Hier mal die ganzen Befehle:

    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,"Skin"));
    pInfo[playerid][Adminlevel] = dini_Int(Spielerdatei, "Adminlevel");
    pInfo[playerid][Bank] = dini_Int(Spielerdatei, "Bank");
    pInfo[playerid][Fraktion] = dini_Int(Spielerdatei, "Fraktion");
    pInfo[playerid][Baned] = dini_Int(Spielerdatei, "Baned");
    pInfo[playerid][Afk] = dini_Int(Spielerdatei,"Afk");
    SetPVarInt(playerid,"Wanteds",dini_Int(Spielerdatei,"Wanteds"));
    if(pInfo[playerid][Baned] == 1)
    {
    SendClientMessage(playerid,ROT,"Du bist vom Server gebannt.");
    Kick(playerid);
    }
    SetPVarInt(playerid,"loggedin",1);
    return 1;
    }

    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, "Adminlevel", pInfo[playerid][Adminlevel]);
    dini_IntSet(Spielerdatei, "Fraktion", pInfo[playerid][Fraktion]);
    dini_IntSet(Spielerdatei, "Bank", pInfo[playerid][Bank]);
    dini_IntSet(Spielerdatei, "Baned", pInfo[playerid][Baned]);
    dini_IntSet(Spielerdatei, "Geld", pInfo[playerid][Geld]);
    dini_IntSet(Spielerdatei, "Level", pInfo[playerid][Level]);
    dini_IntSet(Spielerdatei,"Afk",pInfo[playerid][Afk]);
    dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(Spielerdatei,"Skin",GetPlayerSkin(playerid));
    dini_IntSet(Spielerdatei,"Wanteds",GetPlayerWantedLevel(playerid));
    }
    return 1;
    }

    public OnPlayerSpawn(playerid)
    {
    SetPlayerSkin(pInfo[playerid][Skin]);
    if(IsPlayerNPC(playerid))return 1;
    switch(pInfo[playerid][Fraktion])
    {
    case 0:{}
    case 1:{SetPlayerPos(playerid,lspdspawn);SetPlayerColor(playerid,HELLBLAU);}
    case 2:{SetPlayerPos(playerid,medicspawn);SetPlayerColor(playerid,ROT);}
    case 3:{SetPlayerPos(playerid,Fbispawn);SetPlayerColor(playerid,BLAU);}
    }
    return 1;
    }


    Würde es so Überhaupt funktionieren, das der Skiin gespeichert wird?


    Mit Freundlichen Grüßen
    Dome331

  • Hallo CroXx16


    Leider bekomme, ich durch Einen mir Unbekannten grund diesen Error:

    error 017: undefined symbol "Spielerdatei"


    Sobald ich den Code wieder Entferne, habe ich keine Error mehr.


    Mit Freundlichen Grüßen
    Dome331

  • Hallo


    Der fehler is Behoben & Hoffe es wird dann später Funktioneren..


    Leider habe, ich noch ein paar Kleine/Mittel Probleme.


    Unwar spinnt, dieser Befehl ein bisschen Ingame:

    if(strcmp(cmdtext, "/motor", true) == 0)
    {
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    new car = GetPlayerVehicleID(playerid);
    if(GetVehicleModel(car) == 509 || GetVehicleModel(car) == 481 || GetVehicleModel(car) == 510)
    {
    SendClientMessage(playerid, BLAU, "Du sitzt auf einem Fahrrad. Das hat keinen Motor!");
    }


    else if (Motor[car] == false)
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = true;
    SendClientMessage(playerid,ROT,"Du hast den Motor gestartet!");
    }


    else
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = false;
    SendClientMessage(playerid,ROT,"Du hast den Motor ausgeschaltet!");
    }
    }
    }


    Es kommt immer Ingame Server Command falsch .. Aber Trotzdem, wir Ingame der Motor Gestartet.


    Hoffe du kannst, mir weiter Helfen.


    Mit Freundlichen Grüßen
    Dome331

  • Versuchs mal so:


    if(strcmp(cmdtext, "/motor", true) == 0)
    {
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    new car = GetPlayerVehicleID(playerid);
    if(GetVehicleModel(car) == 509 || GetVehicleModel(car) == 481 || GetVehicleModel(car) == 510)
    {
    SendClientMessage(playerid, BLAU, "Du sitzt auf einem Fahrrad. Das hat keinen Motor!");
    }


    else if (Motor[car] == false)
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = true;
    SendClientMessage(playerid,ROT,"Du hast den Motor gestartet!");
    }


    else
    {
    GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor[car] = false;
    SendClientMessage(playerid,ROT,"Du hast den Motor ausgeschaltet!");
    }
    }
    return 1;
    }

  • Hallo.


    Danke werde es später mal Testen.


    Sorry das ich dich & Die anderen, mit Cods vorschmeiße^^ Aber kriege, das irgendwie nicht 100% Gebacken.


    Ich sitze momentan noch an 2-3 Anderen befehle.
    Die leider, ein paar Warnings + fehler mit Bringen.


    Hier mal die Befehle & Die Warnings:
    Zeile:565-568
    ocmd:setadmin(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,5))return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
    new pID,Adminlevel,string[128];
    if(sscanf(params,"ui",pID,Adminlevel))return SendClientMessage(playerid,ROT,"/setadmin [spieler] [level]");
    if(pInfo[pID][Adminlevel]<0||pInfo[pID][Adminlevel]>5)return SendClientMessage(playerid,ROT,"Bitte gültigen Rang angeben.");
    pInfo[pID][Adminlevel] = Adminlevel;
    SpielerSpeichern(pID);
    SendClientMessageToAll(BLAU,"Es wurde jemand zu Admin gemacht.");
    return 1;
    }
    Hier die Warnings:C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(565) : warning 219: local variable "Adminlevel" shadows a variable at a preceding level
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(566) : warning 213: tag mismatch
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(568) : warning 213: tag mismatch
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(565) : warning 204: symbol is assigned a value that is never used: "string"



    ocmd:duty(playerid,params[])
    {
    #pragma unused params
    if(GetPVarInt(playerid,"duty") == 1)return SendClientMessage(playerid,BLAU,"Du bist bereits im Dienst.");
    if(IsPlayerInRangeOfPoint(playerid,2,255.1183,77.2086,1003.6406) && pInfo[playerid][Fraktion] == 1)
    {
    new str[128];
    format(str,sizeof(str),"%s Ist in Dienst gegangen.",SpielerName(playerid));
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(pInfo[i][Fraktion] == 1)
    {
    SendClientMessage(i,BLAU,str);
    }
    }
    SetPVarInt(playerid,"duty",1);
    SendClientMessage(playerid,BLAU,"Du bist nun im Dienst.");
    SetPlayerSkin(pInfo[playerid][Skin],282);
    }
    return 1;
    }


    Diesen befehl, möchte ich Halt gerne an diesen Enum anpassen:

    enum Info
    {
    Adminlevel,
    Fraktion,
    Geld,
    Level,
    Baned,
    Bank,
    Afk,
    Skin,
    Duty,
    Offduty,
    ubid,
    Watends
    }


    Nur gehen diese Befehle, dann ingame nicht ;(
    Hoffe das ihr mir, Trotzdem helfen Würdet.


    Mit Freundlichen Grüßen
    Dome331

  • Das


    new string[128];
    und das
    pInfo[pID][Adminlevel] = Adminlevel;


    kannst du rauslöschen :P

  • Danke für die Hilfe!


    Leider kommen, dabei diese Warnings:
    Zeile: 566

    if(sscanf(params,"ui",pID,Adminlevel))return SendClientMessage(playerid,ROT,"/setadmin [spieler] [level]");


    Dann habe, ich noch Probleme beim Speichern von Wanteds.


    Hier die Zeile:

    dini_Set(Spielerdatei,"Wanteds");


    Diese sind im Register/Load/Speichern vorhanden undzwar so:
    LoadAccountZeile: 1477:

    SetPVarInt(playerid,"Wanteds",dini_Int(Spielerdatei,"Wanteds"));
    Register Zeile:1439

    dini_IntSet(Spielerdatei,"Wanteds");


    SpielerSpeichern Zeile: 1504:

    dini_IntSet(Spielerdatei,"Wanteds",GetPlayerWantedLevel(playerid));


    Die meisten, die mir Bis jetz geholfen haben z.b "CroXx16" Werde ich im Script mit Bennen!


    Mit Freundlichen Grüßen
    Dome331

  • Welcher Warning kommt denn da ?


    So gehts richtig mit den Wanteds:


    Register:
    SetPlayerWantedLevel(playerid, 0);


    SpielerSpeichern:
    dini_IntSet(user,"Wanted",GetPlayerWantedLevel(playerid));


    SpielerLaden:
    SetPlayerWantedLevel(playerid,dini_Int(user,"Wanted"));


    Du brauchst mich net im Script mitbennen^^ Ich helfe gerne :P

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


    danke für deine Weitere Hilfe ^^


    Ich arbeite momentan an einem Haus-System, leider bekomme ich 13 Error´s -.-


    Ich will nicht nerven, aber könntest du nochmal helfen?...


    Hier die Einzelnen Zeilen:
    public OnGameModeExit()
    {
    for(new haus=1;haus<MAX_HAUS;haus++)
    {
    KillHaus(haus); //error 017: undefined symbol "KillHaus
    }
    return 1;
    }

    ocmd:exit(playerid,params[])
    {
    if(inHaus[playerid] == -1)return SendClientMessage(playerid,0x00FF00,"Du bist in keinem Haus!");
    new haus = inHaus[playerid]; //error 017: undefined symbol "haus_innenraum
    new innenraum = HausInfo[haus][haus_innenraum]; //speichert den Innenraum vom Haus in einer eigenen Variable
    if(!IsPlayerInRangeOfPoint(playerid,5,HausInnenraum[innenraum][innen_x],HausInnenraum[innenraum][innen_y],HausInnenraum[innenraum][innen_z]))return SendClientMessage(playerid,0x00FF00,"Du bist nicht am Ausgang!");
    // wenn der Spieler NICHT an den Innenraum-Koordinaten ist dann kommt eine Fehlermeldung... Wenn doch dann:


    SetPlayerPos(playerid,HausInfo[haus][haus_x],HausInfo[haus][haus_y],HausInfo[haus][haus_z]); // setzt den Spieler an die Eingangs-Koordinaten
    SetPlayerInterior(playerid,0); //wichtig! Spieler muss wieder in die Interior 0 gesetzt werden
    SendClientMessage(playerid,0x00FF00,"Du hast das Haus verlassen!");
    inHaus[playerid] = -1;// Jetzt ist der Spieler in keinem Haus mehr
    return 1;
    }
    [pwn]
    ocmd:enter(playerid,params[])
    {
    for(new haus=1;haus<MAX_HAUS;haus++) // Schleife für alle Häuser
    {
    if(IsPlayerInRangeOfPoint(playerid,5,HausInfo[haus][haus_x],HausInfo[haus][haus_y],HausInfo[haus][haus_z])) //wenn der Spieler am Haus steht
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    if(strcmp(HausInfo[haus][haus_besitzer],name,false) == 0) //wenn der Name vom Spieler der Name vom Besitzer ist...
    {
    new innenraum = HausInfo[haus][haus_innenraum]; // error 017: undefined symbol "haus_innenraum"
    // das ist nicht nötig aber so ist es leichter zu verstehen
    SetPlayerPos(playerid,HausInnenraum[innenraum][innen_x],HausInnenraum[innenraum][innen_y],HausInnenraum[innenraum][innen_z]); // dann Spieler zu den Innenraum-Koordinaten teleportieren
    SetPlayerInterior(playerid,HausInnenraum[innenraum][innen_interior]);
    inHaus[playerid] = haus;
    }
    else SendClientMessage(playerid,0x00FF00,"Du bist nicht der Besitzer! Du darfst hier nicht rein!"); // wenn der Spieler nicht der Besitzer ist
    }
    }
    return 1;
    }

    ocmd:kaufen(playerid,params[])
    {
    for(new haus=1;haus<MAX_HAUS;haus++)
    {
    if(IsPlayerInRangeOfPoint(playerid,5,HausInfo[haus][haus_x],HausInfo[haus][haus_y],HausInfo[haus][haus_z]))
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof name);
    if(strcmp(HausInfo[haus][haus_besitzer],name,false) == 0)return SendClientMessage(playerid,0x00FF00,"Dieses Haus gehört dir bereits!");
    if(strcmp(HausInfo[haus][haus_besitzer],"Keiner",false))return SendClientMessage(playerid,0x00FF00,"Dieses Haus steht nicht zum Verkauf!");
    if(GetPlayerMoney(playerid) < HausInfo[haus][haus_preis])return SendClientMessage(playerid,0x00FF00,"Du hast nicht genug Geld!");
    GivePlayerMoney(playerid,-HausInfo[haus][haus_preis]); // Geld abziehen
    new pfad[50];
    format(pfad,50,"/haus/%d.txt",haus); // Pfad formatieren
    dini_Set(pfad,"besitzer",name); // Besitzer überschreiben
    KillHaus(haus); //error 017: undefined symbol "KillHaus"
    LoadHaus(haus); // Haus laden
    }
    }
    return 1;
    }


    Habe noch ein paar Andere Errors aber, diese Versuche ich mal in ruhe & mit zeit zu fixxen..


    Mit Freundlichen Grüßne
    Dome331

  • Hallo.


    Ich habe momentan ein paar Erros in meinem /Leader Befehl.


    Hier die Error´s:
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1069) : warning 212: possibly unintended bitwise operation
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1069) : warning 213: tag mismatch
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1071) : error 035: argument type mismatch (argument 2)
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1071) : error 035: argument type mismatch (argument 2)
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1072) : error 017: undefined symbol "string"
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1072) : error 029: invalid expression, assumed zero
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1072) : warning 215: expression has no effect
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1073) : error 017: undefined symbol "COLOR_SVIJETLOCRVENA"
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1075) : warning 212: possibly unintended bitwise operation
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1075) : warning 213: tag mismatch
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1077) : error 035: argument type mismatch (argument 2)
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1077) : error 035: argument type mismatch (argument 2)
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1078) : error 017: undefined symbol "string"
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1078) : warning 215: expression has no effect
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1078) : error 001: expected token: ";", but found "]"
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1078) : error 029: invalid expression, assumed zero
    C:\Users\Dome\Desktop\Server!\gamemodes\Not-Reallife.pwn(1078) : fatal error 107: too many error messages on one line


    Hier der Ganze code:
    Zeile: 1069if(pInfo[playerid][Fraktion] == 1 | pInfo[playerid][Fraktionlevel] == 6)
    Zeile: 1075if(pInfo[playerid][Fraktion] == 3 | pInfo[playerid][Fraktionlevel] == 6)
    Zeile:1226 new string[128];
    Zeile: 1244new string[128];


    Hoffe es findet, dich jemand der mir Helfen Könnt.


    Mit Freundlichen Grüßen
    Dome331


    //Edit neue Hilfe Anfrage hinzugefügt

    2 Mal editiert, zuletzt von Dome331 ()