Wieso spawnt Gespcihertes Car 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
  • Hallo, ich wollte diesen Wieso das Car was ich gespeichert habe beim Login nicht spawnt.



    forward OnPlayerCarsLoad(playerid);
    public OnPlayerCarsLoad(playerid)
    {
    new Autodatei[64];
    new name[MAX_PLAYER_NAME];
    new Float:X, Float:Y, Float:Z,Float:R;
    new vID = GetPlayerVehicleID(playerid);
    GetVehiclePos(vID, X, Y, Z);
    GetVehicleZAngle(vID,R);
    GetPlayerName(playerid,name,sizeof(name));
    format(Autodatei,sizeof(Autodatei),"/Autos/%s.txt",name);
    dini_Float(Autodatei, "X");
    dini_Float(Autodatei, "Y");
    dini_Float(Autodatei, "Z");
    dini_Float(Autodatei, "R");
    CreateVehicle(vID,X,Y,Z,R,-1,-1,-1);
    return 1;
    }



    Danke im Vorraus

  • machs mal so

    forward OnPlayerCarsLoad(playerid);
    public OnPlayerCarsLoad(playerid)
    {
    new Autodatei[64],name[MAX_PLAYER_NAME],Float:X, Float:Y, Float:Z,Float:R, vID = GetPlayerVehicleID(playerid);;
    GetPlayerName(playerid,name,sizeof(name));
    format(Autodatei,sizeof(Autodatei),"/Autos/%s.txt",name);
    X=dini_Float(Autodatei, "X");
    Y=dini_Float(Autodatei, "Y");
    Z=dini_Float(Autodatei, "Z");
    R=dini_Float(Autodatei, "R");
    CreateVehicle(vID,X,Y,Z,R,-1,-1,-1);
    return 1;
    }

  • geht immernoch nicht



    Wie lasse ich die Modelid auslesen?


    habs so versucht:



    forward OnPlayerCarsLoad(playerid);
    public OnPlayerCarsLoad(playerid)
    {
    ZEILE 1195 new Autodatei[64],name[MAX_PLAYER_NAME],Float:X, Float:Y, Float:Z,Float:R, vID = GetPlayerVehicleID(playerid);
    GetPlayerName(playerid,name,sizeof(name));
    format(Autodatei,sizeof(Autodatei),"/Autos/%s.txt",name);
    ZEILE 1198 new Modelid=dini_Get(Autodatei, "Modelid");
    X=dini_Float(Autodatei, "X");
    Y=dini_Float(Autodatei, "Y");
    Z=dini_Float(Autodatei, "Z");
    R=dini_Float(Autodatei, "R");
    CreateVehicle(Modelid,X,Y,Z,R,-1,-1,-1);
    return 1;
    }



    Kommen aber diese Errors:



    C:\Users\*******\Desktop\Scripts\Selfmade\gamemodes\Selfmadeneu.pwn(1198) : error 033: array must be indexed (variable "-unknown-")
    C:\Users\*******\Desktop\Scripts\Selfmade\gamemodes\Selfmadeneu.pwn(1195) : warning 204: symbol is assigned a value that is never used: "vID"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase

  • forward OnPlayerCarsLoad(playerid);
    public OnPlayerCarsLoad(playerid)
    {
    new Autodatei[64],name[MAX_PLAYER_NAME],Float:X, Float:Y, Float:Z,Float:R;
    GetPlayerName(playerid,name,sizeof(name));
    format(Autodatei,sizeof(Autodatei),"/Autos/%s.txt",name);
    new Modelid=dini_Int(Autodatei, "Modelid");
    X=dini_Float(Autodatei, "X");
    Y=dini_Float(Autodatei, "Y");
    Z=dini_Float(Autodatei, "Z");
    R=dini_Float(Autodatei, "R");
    CreateVehicle(Modelid,X,Y,Z,R,-1,-1,-1);
    return 1;
    }


    An die Mods: Thread bitte verschieben in die Scripting Sektion. Thx.

  • Jeffry? Jetzt steht des in der txt datei



    Modelid=561
    X=0.000000
    Y=0.000000
    Z=0.000000
    R=90.281799


    ?? Er speichert nur die Facingangle vom auto aber nicht die Pos

  • Dann solltest du noch den Teil posten, bei dem das Auto gespeichert wird, dort ist dann was falsch.


    savecar(playerid)
    {
    new Autodatei[64];
    new name[MAX_PLAYER_NAME];
    new Float:X, Float:Y, Float:Z,Float:R;
    new vID = GetPlayerVehicleID(playerid);
    GetVehiclePos(vID, X, Y, Z);
    GetVehicleZAngle(vID,R);
    GetPlayerName(playerid,name,sizeof(name));
    format(Autodatei,sizeof(Autodatei),"/Autos/%s.txt",name);
    dini_FloatSet(Autodatei, "X", X);
    dini_FloatSet(Autodatei, "Y", Y);
    dini_FloatSet(Autodatei, "Z", Z);
    return 1;
    }

  • new vID = GetPlayerVehicleID(playerid);


    Damit bekommst du nicht den Wagen den dem Spieler gehört, sondern du bekommst den Wagen in dem der Spieler sitzt ...
    Du musst die ID von dem Fahrzeug, welches gekauft wurde, beim Einloggen speichern und beim Ausloggen nimmst du dann diese ID.
    War das verständlich?


    MfG Kevin

  • Mach mal:
    savecar(playerid, vehID)
    {
    new Autodatei[64];
    new name[MAX_PLAYER_NAME];
    new Float:X, Float:Y, Float:Z,Float:R;
    GetVehiclePos(vehID, X, Y, Z);
    GetVehicleZAngle(vehID,R);
    GetPlayerName(playerid,name,sizeof(name));
    format(Autodatei,sizeof(Autodatei),"/Autos/%s.txt",name);
    dini_FloatSet(Autodatei, "X", X);
    dini_FloatSet(Autodatei, "Y", Y);
    dini_FloatSet(Autodatei, "Z", Z);
    return 1;
    }


    Und bei OnVehicleExit:
    savecar(playerid, vehicleid);