Autoposition speichert sich nicht?

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
  • Also ich habe erst in mein Script eingebaut, dass man ein Auto in einer Datei gespeichert wird und wenn man connected geladen bzw wenn man disconnected "gelöscht" wird. Wenn man die Koordinaten in die Datei eingibt klappt das auch (Hab noch kein Autohaus oder dergleichen^^)
    Aber der /park Befehl dazu funktioniert die die Koordinaten bis auf die ModelID werden immer auf 0 gesetzt
    Hier mal meine Codeschnippsel


    enum Spielerauto
    {
    Modelid,
    Float:Xa,
    Float:Ya,
    Float:Za,
    Float:Angle,
    Farbe1,
    Farbe2
    };
    new aInfo[MAX_PLAYERS][Spielerauto];


    new privatcar[200];


    public OnPlayerDisconnect(playerid, reason)
    {
    //Speichern
    SpielerSpeichern(playerid);
    InventarSpeichern(playerid);
    ResetVehicle(playerid);
    pInfo[playerid][Eingeloggt]=0;
    Anfrage[playerid] = 0;
    Zielfrak[playerid] = 0;


    return 1;
    }


    /*ocmd:park(playerid,params[])
    {
    new vehicleid2,model2,Float:x2,Float:y2,Float:z2,Float:angle2,color1,color2;
    vehicleid2 = GetPlayerVehicleID(playerid),
    model2 = GetVehicleModel(vehicleid2);
    GetVehiclePos(model2,x2,y2,z2);
    GetVehicleZAngle(model2,angle2);
    GetVehicleColor(model2,color1,color2);
    aInfo[playerid][Modelid] = model2;
    aInfo[playerid][Xa] = x2;
    aInfo[playerid][Ya] = y2;
    aInfo[playerid][Za] = z2;
    aInfo[playerid][Angle] = angle2;
    aInfo[playerid][Farbe1] = color1;
    aInfo[playerid][Farbe2] = color2;
    AutoSpeichern(playerid);
    SCM(playerid,gelb,"Du hast dein Fahrzeug umgeparkt");
    return 1;
    }*/


    ocmd:park(playerid,params[])
    {
    new vehicleid2,model2,Float:x2,Float:y2,Float:z2,Float:angle2,color1,color2;
    vehicleid2 = GetPlayerVehicleID(playerid),
    model2 = GetVehicleModel(vehicleid2);
    GetVehiclePos(model2,x2,y2,z2);
    GetVehicleZAngle(model2,angle2);
    GetVehicleColor(model2,color1,color2);
    SCM(playerid,gelb,"Du hast dein Auto umgeparkt");
    new Autos[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Autos,sizeof(Autos),"/Autos/%s.txt",name);
    if(dini_Exists(Autos))
    {
    dini_IntSet(Autos,"FahrzeugID",model2);
    dini_FloatSet(Autos,"Pos X",x2);
    dini_FloatSet(Autos,"Pos Y",y2);
    dini_FloatSet(Autos,"Pos Z",z2);
    dini_FloatSet(Autos,"Angle",angle2);
    dini_IntSet(Autos,"Farbe 1",color1);
    dini_IntSet(Autos,"Farbe 2",color2);
    }
    return 1;
    }
    //Beider Befehle funktionieren nicht


    stock Register(playerid,key[])
    {
    new Spielerdatei[64];
    new Inventar[64];
    new Autos[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    format(Inventar,sizeof(Inventar),"/Inventar/%s.txt",name);
    format(Autos,sizeof(Autos),"/Autos/%s.txt",name);
    dini_Create(Spielerdatei);
    dini_Create(Inventar);
    dini_Create(Autos);
    ...
    stock Login(playerid,key[])
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),true))
    {
    AccountLaden(playerid);
    InventarLaden(playerid);
    AutoLaden(playerid);
    pInfo[playerid][Eingeloggt]=1;
    pInfo[playerid][ZsL]=0;
    SendClientMessage(playerid,grün,"Du hast dich erfolgreich eingeloggt");
    return 1;
    }
    else
    {
    SendClientMessage(playerid,rot,"Falsches Passwort");
    ShowPlayerDialog(playerid,DIALOG_Login,DIALOG_STYLE_PASSWORD,"Login"," Dein Account wurde gefunden, bitte gib dein Passwort ein.","Login","Abbrechen");
    return 1;
    }


    }
    stock AutoSpeichern(playerid)
    {
    new Autos[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Autos,sizeof(Autos),"/Autos/%s.txt",name);
    if(dini_Exists(Autos))
    {
    dini_IntSet(Autos,"FahrzeugID",aInfo[playerid][Modelid]);
    dini_FloatSet(Autos,"Pos X",aInfo[playerid][Xa]);
    dini_FloatSet(Autos,"Pos Y",aInfo[playerid][Ya]);
    dini_FloatSet(Autos,"Pos Z",aInfo[playerid][Za]);
    dini_FloatSet(Autos,"Angle",aInfo[playerid][Angle]);
    dini_IntSet(Autos,"Farbe 1",aInfo[playerid][Farbe1]);
    dini_IntSet(Autos,"Farbe 2",aInfo[playerid][Farbe2]);
    }
    return 1;
    }


    stock AutoLaden(playerid)
    {
    new Autos[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Autos,sizeof(Autos),"/Autos/%s.txt",name);
    if(dini_Exists(Autos))
    {
    aInfo[playerid][Modelid] = dini_Int(Autos,"FahrzeugID");
    aInfo[playerid][Xa] = dini_Float(Autos,"Pos X");
    aInfo[playerid][Ya] = dini_Float(Autos,"Pos Y");
    aInfo[playerid][Za] = dini_Float(Autos,"Pos Z");
    aInfo[playerid][Angle] = dini_Float(Autos,"Angle");
    aInfo[playerid][Farbe1] = dini_Int(Autos,"Farbe 1");
    aInfo[playerid][Farbe2] = dini_Int(Autos,"Farbe 2");
    privatcar[0+playerid] = CreateVehicle(aInfo[playerid][Modelid],aInfo[playerid][Xa],aInfo[playerid][Ya],aInfo[playerid][Za],aInfo[playerid][Angle],aInfo[playerid][Farbe1],aInfo[playerid][Farbe2],-1);
    }
    return 1;
    }


    stock ResetVehicle(playerid)
    {
    DestroyVehicle(privatcar[0+playerid]);
    return 1;
    }


    Ich hoffe ihr könnt mir helfen

    Einmal editiert, zuletzt von MrMonkey ()

  • Ich würde mal unter Autospeichern:
    Ge3tVihiclePos dazuschreiben :D


    Ich weiß was du meinst aber ich hab das so "gescripted", dass beim Speichern die Werte der Variablen aInfo[playerid][Xa]... in die Datei gespeichert werden udn wie man an meinem /park Befehl sehen kann nehmen die Variablen einen Wert an und dannach sollte dieser gespeichert werden also sollte das laut meinem Verständnis auch funktionieren
    Aber ich probiers trotzdem mal :D


    /edit:So habs probiert hab mal alles von dem CMD in den stock gepackt aber es funktioniert trotzdem nicht

    4 Mal editiert, zuletzt von MrMonkey ()