/vehsave Command

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
  • Guten Tag,
    ich habe den Command /vehsave gescriptet aber ich komme einfach nicht weiter.
    Ich möchte das die Cars gesaved werden aber das haut nicht so ganz hin also mein Command sieht so aus:


    if(strcmp(strget(cmdtext,0),"/vehsave", true) == 0)
    {
    if(PlayerInfo[playerid][pAdmin] >= 1336)
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    if(!strlen(strget(cmdtext,1))) return SendClientMessage(playerid,COLOR_GRAD1,"Benutze: /vehsave [CARID]");
    {

    new float:PosX;
    new float:PosY;
    new float:PosZ;
    new float:Zangel;
    new playerpos;
    new facing;
    new autoid = GetPlayerVehicleID(playerid);
    new datei[100];

    format(datei,sizeof(datei),"/Cars/Car_%d.cfg",autoid);

    playerpos = GetPlayerPos(playerid,PosX,PosY,PosZ);
    facing = GetPlayerFacingAngle(playerid,Zangel);


    dini_Create(datei);
    dini_IntSet(datei,"VehID",GetVehicleModel(autoid));
    dini_FloatSet(datei,"Car-PosX",PosX);
    dini_FloatSet(datei,"Car-PosY",PosY);
    dini_FloatSet(datei,"Car-PosZ",PosZ);
    dini_FloatSet(datei,"Car-ZAngel",Zangel);
    }
    }
    }
    return 1;
    }


    Es wird auch alles gespeichert in den einzelnen Datein nur ich weiß jetzt nicht wie ich das laden kann.
    Ich habe so angefangen:


    if(dini_Exists("/Cars/Car_*.cfg"))
    {
    new float:PosX;
    new float:PosY;
    new float:PosZ;
    new float:Zangel;
    new modelid;

    modelid = dini_Int("/Cars/Car_*.cfg","VehID");
    PosX = dini_Float("/Cars/Car_*.cfg","Car-PosX");
    PosY = dini_Float("/Cars/Car_*.cfg","Car-PosY");
    PosZ = dini_Float("/Cars/Car_*.cfg","Car-PosZ");
    Zangel = dini_Float("/Cars/Car_*.cfg","ZAngel");
    AddStaticVehicle(modelid,PosX,PosY,PosZ,Zangel,1,1);

    }
    Kann mir jemand helfen bitte
    Mit Freundlichen Grüßen RaZzer683

  • Weiß nich genau obs geht, ungetestet.


    if(dini_Exists("/Cars/Car_*.cfg"))
    {
    new float:PosX;
    new float:PosY;
    new float:PosZ;
    new float:Zangel;
    new modelid;


    modelid = dini_Get("/Cars/Car_*.cfg","VehID");
    PosX = dini_Get("/Cars/Car_*.cfg","Car-PosX");
    PosY = dini_Get("/Cars/Car_*.cfg","Car-PosY");
    PosZ = dini_Get("/Cars/Car_*.cfg","Car-PosZ");
    Zangel = dini_Get("/Cars/Car_*.cfg","ZAngel");
    AddStaticVehicle(modelid,PosX,PosY,PosZ,Zangel,1,1);


    }


    ps. Oben
    format(datei,sizeof(datei),"/Cars/Car_%d.cfg",autoid);
    und hier:
    /Cars/Car_*.cfg .. weiß jetz nich genau ob das geht ?


    ps.: schau dir das an : http://forum.sa-mp.de/wbb/san-andreas-multiplayer/tutorials/6569-dateiensystem-dini-dateien-erstellen-löschen-speichern-laden/

  • new autoid = GetPlayerVehicleID(playerid);
    new datei[100];
    format(datei,sizeof(datei),"/Cars/Car_%d.cfg",autoid);
    if(dini_Exists("datei"))
    {
    new float:PosX;
    new float:PosY;
    new float:PosZ;
    new float:Zangel;
    new modelid;


    modelid = dini_Get("/Cars/Car_*.cfg","VehID");
    PosX = dini_Get("/Cars/Car_*.cfg","Car-PosX");
    PosY = dini_Get("/Cars/Car_*.cfg","Car-PosY");
    PosZ = dini_Get("/Cars/Car_*.cfg","Car-PosZ");
    Zangel = dini_Get("/Cars/Car_*.cfg","ZAngel");
    AddStaticVehicle(modelid,PosX,PosY,PosZ,Zangel,1,1);
    }


    und eins merken!
    jedes mal wenn du auf die Datei zugreifen willst, musst du diesen Teil hier immer vor der if-Abfrage haben!
    new autoid = GetPlayerVehicleID(playerid);
    new datei[100];
    format(datei,sizeof(datei),"/Cars/Car_%d.cfg",autoid);



    OnPlayerAsks(playerid,text)
    {
    new needhelp[192];
    format(needhelp,sizeof(needhelp),"%s",text);
    if(playerid == needhelp)
    {
    SendPrivateMessage(a6150,0xF0F0F0FF,text);
    }
    return 1;
    }

  • C:\Users\Predator\Desktop\gf_suchtis-v601.pwn(14450) : error 017: undefined symbol "playerid"


    //---------------------------------[CAR SAVE]----------------------------------
    new autoid = GetPlayerVehicleID(playerid);
    new datei[100];
    format(datei,sizeof(datei),"/Cars/Car_%d.cfg",autoid);
    if(dini_Exists("/Cars/Car_%d.cfg"))
    {
    new float:PosX;
    new float:PosY;
    new float:PosZ;
    new float:Zangel;
    new modelid;

    modelid = dini_Int("/Cars/Car_%d.cfg","VehID");
    PosX = dini_Float("/Cars/Car_%d.cfg","Car-PosX");
    PosY = dini_Float("/Cars/Car_%d.cfg","Car-PosY");
    PosZ = dini_Float("/Cars/Car_%d.cfg","Car-PosZ");
    Zangel = dini_Float("/Cars/Car_%d.cfg","ZAngel");
    AddStaticVehicle(modelid,PosX,PosY,PosZ,Zangel,1,1);

    }
    Steht bei OnGamemodeInit


    Irgend wie muss ich doch abfragen können was ich oben eingegeben habe und das dann hier bei if(dini_Exists(%d))
    auslesen lassen oder?

    Einmal editiert, zuletzt von Purex ()

  • meine version müsste funktionieren.
    wegen dem playerid - zeig ma die zeile?
    und hängt diese zeile mit einem timer zusammen?



    OnPlayerAsks(playerid,text)
    {
    new needhelp[192];
    format(needhelp,sizeof(needhelp),"%s",text);
    if(playerid == needhelp)
    {
    SendPrivateMessage(a6150,0xF0F0F0FF,text);
    }
    return 1;
    }

  • Hmm ich versteh jetzt nicht was du willst aber wenn der wagen spawnen soll wenn der Gamemode geladen werden soll was hat das dann mir der playerid zutun ich meine wenn dir Gamemode


    wieder geladen wurde ist es unmöglich das ein spieler on ist also geht das nicht