Hi ich habe eine Frage bezüglich /park ich kriege es nicht hin die Koordinaten zu speichern.Ich ahbe das Tutorial angeguckt http://forum.sa-mp.de/san-andr…auf-system-19#post1093363 hoffe jemand kann mir helfen!.Danke im voraus!
/park Befehl.HELP!
- xAuraHDx
- Geschlossen
- Erledigt
In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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
-
-
Da gibt es mehrere Möglichkeiten, benutzt du dini oder mySQL ?
Koordinaten speicherst du ja zum Beispiel über ein enum oder über eine Variable.
Variable = GetVehiclePos(vehicleid, x, y, z); -
Da gibt es mehrere Möglichkeiten, benutzt du dini oder mySQL ?
Koordinaten speicherst du ja zum Beispiel über ein enum oder über eine Variable.
Variable = GetVehiclePos(vehicleid, x, y, z);
Ich benutze es mit dini.Hoffe du kannst mir weiter helfen! -
Allerdings, ja
Schreibe ganz oben irgendwohin:
forward ParkSave();
Benutze zum Beispiel ein enum:
enum parkInfo
{
Float:Park_x,
Float:Park_y,
Float:Park_z
}
new Park[MAX_PLAYERS][parkInfo];nun unter deinen Befehl /park:
new Float:x,Float:y,Float:z;
GetVehiclePos(vehicleid,x,y,z);
Park[playerid][Park_x] = x;
Park[playerid][Park_y] = y;
Park[playerid][Park_z] = z;
ParkSave();Nun ganz unten:
public ParkSave()
{
new playername[20], speichern[128];
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(playerid,playername,sizeof(playername)); // /Ordner/%s.ini wenn du nur /%s.ini schreibst speichert er alle autos unter den scriptfiles
if(fexist(speichern))
{
dini_FloatSet(speichern,"Car_X",Park[playerid][Park_x]);
dini_FloatSet(speichern,"Car_Y",Park[playerid][Park_y]);
dini_FloatSet(speichern,"Car_Z",Park[playerid][Park_z]);
}
}MfG.
D4rkCl3ric -
Allerdings, ja
Schreibe ganz oben irgendwohin:
forward ParkSave();
Benutze zum Beispiel ein enum:
enum parkInfo
{
Float:Park_x,
Float:Park_y,
Float:Park_z
}
new Park[MAX_PLAYERS][parkInfo];nun unter deinen Befehl /park:
new Float:x,Float:y,Float:z;
GetVehiclePos(vehicleid,x,y,z);
Park[playerid][Park_x] = x;
Park[playerid][Park_y] = y;
Park[playerid][Park_z] = z;
ParkSave();Nun ganz unten:
public ParkSave()
{
new playername[20], speichern[128];
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(playerid,playername,sizeof(playername)); // /Ordner/%s.ini wenn du nur /%s.ini schreibst speichert er alle autos unter den scriptfiles
if(fexist(speichern))
{
dini_FloatSet(speichern,"Car_X",Park[playerid][Park_x]);
dini_FloatSet(speichern,"Car_Y",Park[playerid][Park_y]);
dini_FloatSet(speichern,"Car_Z",Park[playerid][Park_z]);
}
}MfG.
D4rkCl3ric
Hi sorry das ich mich so anstelle aber ERROS Hier:
C:\Users\Administrator\Desktop\Script\gamemodes\AL.pwn(2446) : error 017: undefined symbol "vehicleid"
C:\Users\Administrator\Desktop\Script\gamemodes\AL.pwn(5081) : error 017: undefined symbol "playerid"
C:\Users\Administrator\Desktop\Script\gamemodes\AL.pwn(5081) : error 001: expected token: ",", but found ";"
C:\Users\Administrator\Desktop\Script\gamemodes\AL.pwn(5084) : error 017: undefined symbol "playerid"
C:\Users\Administrator\Desktop\Script\gamemodes\AL.pwn(5085) : error 017: undefined symbol "playerid"
C:\Users\Administrator\Desktop\Script\gamemodes\AL.pwn(5086) : error 017: undefined symbol "playerid"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase6 Errors.
/Edit vehicleid error weg aber playerid nicht
//Edit playerid error weg aber nur den nicht
C:\Users\Administrator\Desktop\Script\gamemodes\AL.pwn(5082) : error 001: expected token: ",", but found ";"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase1 Error.
-
Sorry bin total müde zurzeit, du stellst dich normal an der Fehler lag bei mir du musst "public ParkSave()" zu folgendem umschreiben:
public ParkSave()
{
for(new i; i < MAX_PLAYERS; i++)
{
new playername[20], speichern[128];
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(i,playername,sizeof(playername)); // /Ordner/%s.ini wenn du nur /%s.ini schreibst speichert er alle autos unter den scriptfiles
if(fexist(speichern))
{
dini_FloatSet(speichern,"Car_X",Park[i][Park_x]);
dini_FloatSet(speichern,"Car_Y",Park[i][Park_y]);
dini_FloatSet(speichern,"Car_Z",Park[i][Park_z]);
}
}
} -
public ParkSave()
{
for(new i; i < MAX_PLAYERS; i++)
{
new playername[20], speichern[128];
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(i,playername,sizeof(playername)); // /Ordner/%s.ini wenn du nur /%s.ini schreibst speichert er alle autos unter den scriptfiles
if(fexist(speichern))
{
dini_FloatSet(speichern,"Car_X",Park[i][Park_x]);
dini_FloatSet(speichern,"Car_Y",Park[i][Park_y]);
dini_FloatSet(speichern,"Car_Z",Park[i][Park_z]);
}
}
}geht immer noch nicht error:
C:\Users\Administrator\Desktop\Script\gamemodes\AL.pwn(5084) : error 001: expected token: ",", but found ";"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase1 Error.
und hier:
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(i,playername,sizeof(playername)); -
dan schreib es so:
public ParkSave()
{
for(new i; i < MAX_PLAYERS; i++)
{
new playername[20], speichern[128];
GetPlayerName(i,playername,sizeof(playername));
format(speichern, sizeof(speichern), "/Autos/%s.ini", playername); // /Ordner/%s.ini wenn du nur /%s.ini schreibst speichert er alle autos unter den scriptfiles
if(fexist(speichern))
{
dini_FloatSet(speichern,"Car_X",Park[i][Park_x]);
dini_FloatSet(speichern,"Car_Y",Park[i][Park_y]);
dini_FloatSet(speichern,"Car_Z",Park[i][Park_z]);
}
}
} -
man kann es schon mit einem einzigen befehl machen, indem man einfach die SpawnX, SpawnY und SpawnZ auf die VehiclePositions setzt
-
for(new i; i < MAX_PLAYERS; i++)
Sorry bin total müde zurzeit, du stellst dich normal an der Fehler lag bei mir du musst "public ParkSave()" zu folgendem umschreiben:
public ParkSave()
{
for(new i; i < MAX_PLAYERS; i++)
{
new playername[20], speichern[128];
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(i,playername,sizeof(playername)); // /Ordner/%s.ini wenn du nur /%s.ini schreibst speichert er alle autos unter den scriptfiles
if(fexist(speichern))
{
dini_FloatSet(speichern,"Car_X",Park[i][Park_x]);
dini_FloatSet(speichern,"Car_Y",Park[i][Park_y]);
dini_FloatSet(speichern,"Car_Z",Park[i][Park_z]);
}
}
}dan schreib es so:
public ParkSave()
{
for(new i; i < MAX_PLAYERS; i++)
{
new playername[20], speichern[128];
GetPlayerName(i,playername,sizeof(playername));
format(speichern, sizeof(speichern), "/Autos/%s.ini", playername); // /Ordner/%s.ini wenn du nur /%s.ini schreibst speichert er alle autos unter den scriptfiles
if(fexist(speichern))
{
dini_FloatSet(speichern,"Car_X",Park[i][Park_x]);
dini_FloatSet(speichern,"Car_Y",Park[i][Park_y]);
dini_FloatSet(speichern,"Car_Z",Park[i][Park_z]);
}
}
}
Danke aber Auto steht nicht da ich versuche mal weiter -
-
... du musst die Koordinaten ja auch laden
Bis jetzt speicherst du sie nur, und der Server weiß ja nicht, was du da speicherst und dass da ein Auto geladen werden soll -
... du musst die Koordinaten ja auch laden
Bis jetzt speicherst du sie nur, und der Server weiß ja nicht, was du da speicherst und dass da ein Auto geladen werden soll
Könntes du mir vielleicht zeigen wie -
Mit dini kenne ich mich nicht aus
Ich nutzte MySQL -
Mit dini kenne ich mich nicht aus
Ich nutzte MySQL
schade -
Sorry habe es gestern nicht mehr ausgehalten und bin direkt ins bett Du musst zum Beispiel:
forward LoadAutos();
danach unter OnPlayerConnect:
LoadAutos();und ganz unten:
public LoadAutos()
{
new playername[20], speichern[128];
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(i,playername,sizeof(playername));
if(fexist(speichern))
{
Park[playerid][Park_X] = dini_Float(speichern,"Car_X");
Park[playerid][Park_Y] = dini_Float(speichern,"Car_Y");
Park[playerid][Park_Z] = dini_Float(speichern,"Car_Z");
}}
So liest du die X,Y,Z Koordinaten aus, diese musst du nun nur noch in ein AddStaticVehicle oder CreateVehicle umwandeln (Einfach anstatt der X koordinate, Park[playerid][Park_X] verwenden)
Ich hoffe ich konnte dir helfen und weiterhin viel glück -
vergiss net die Vehicleid zu speichern/laden
-
Vehicleid, Tunings usw. Klar das habe ich alles nicht eingefügt aber seine Anfrage war wie man die "X,Y,Z Koordinate" speichern kann, das habe ich ihm gezeigt
-
Ist doch ok ich hab mir das auchma angekuckt und bekomme errors ._.
Zeile (195) : Unbekannte Variable : "Park_X"
Zeile (196) : Unbekannte Variable : "Park_Y"
Zeile (197) : Unbekannte Variable : "Park_Z"
Zeile (206) : Unbekannte Variable : "i"
Zeile (206) : Erwartete Zeichen ",", aber gefunden ";"
Zeile (207) : Unbekannte Variable : "exist"
Zeile (209) : Unbekannte Variable : "playerid"
Zeile (209) : Variable wurde falsch definiert (Float,Integer[...])
Zeile (210) : Unbekannte Variable : "playerid"
Zeile (210) : Variable wurde falsch definiert (Float,Integer[...])
Zeile (211) : Unbekannte Variable : "playerid"
Zeile (211) : Variable wurde falsch definiert (Float,Integer[...])
Zeile (212) : Unbekannte Variable : "playerid"public VehicleSave()
{
for(new i; i < MAX_PLAYERS; i++)
{
new playername[20], speichern[128];
GetPlayerName(i,playername,sizeof(playername));
format(speichern, sizeof(speichern), "/Autos/%s.ini", playername);
if(fexist(speichern))
{
dini_FloatSet(speichern,"Car_X",Park[i][Park_X]);
dini_FloatSet(speichern,"Car_Y",Park[i][Park_Y]);
dini_FloatSet(speichern,"Car_Z",Park[i][Park_Z]);
dini_IntSet(speichern,"Owner",Park[i][Owner]);
}
}
}public VehicleLoad()
{
new playername[20], speichern[128];
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(i,playername,sizeof(playername));
if(exist(speichern))
{
Park[playerid][Park_X] = dini_Float(speichern,"Car_X");
Park[playerid][Park_Y] = dini_Float(speichern,"Car_Y");
Park[playerid][Park_Z] = dini_Float(speichern,"Car_Z");
Park[playerid][Owner] = dini_Int(speichern,"Owner");
}}
-
Ist doch ok ich hab mir das auchma angekuckt und bekomme errors ._.
Zeile (195) : Unbekannte Variable : "Park_X"
Zeile (196) : Unbekannte Variable : "Park_Y"
Zeile (197) : Unbekannte Variable : "Park_Z"
Zeile (206) : Unbekannte Variable : "i"
Zeile (206) : Erwartete Zeichen ",", aber gefunden ";"
Zeile (207) : Unbekannte Variable : "exist"
Zeile (209) : Unbekannte Variable : "playerid"
Zeile (209) : Variable wurde falsch definiert (Float,Integer[...])
Zeile (210) : Unbekannte Variable : "playerid"
Zeile (210) : Variable wurde falsch definiert (Float,Integer[...])
Zeile (211) : Unbekannte Variable : "playerid"
Zeile (211) : Variable wurde falsch definiert (Float,Integer[...])
Zeile (212) : Unbekannte Variable : "playerid"public VehicleSave()
{
for(new i; i < MAX_PLAYERS; i++)
{
new playername[20], speichern[128];
GetPlayerName(i,playername,sizeof(playername));
format(speichern, sizeof(speichern), "/Autos/%s.ini", playername);
if(fexist(speichern))
{
dini_FloatSet(speichern,"Car_X",Park[i][Park_X]);
dini_FloatSet(speichern,"Car_Y",Park[i][Park_Y]);
dini_FloatSet(speichern,"Car_Z",Park[i][Park_Z]);
dini_IntSet(speichern,"Owner",Park[i][Owner]);
}
}
}public VehicleLoad()
{
new playername[20], speichern[128];
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(i,playername,sizeof(playername));
if(exist(speichern))
{
Park[playerid][Park_X] = dini_Float(speichern,"Car_X");
Park[playerid][Park_Y] = dini_Float(speichern,"Car_Y");
Park[playerid][Park_Z] = dini_Float(speichern,"Car_Z");
Park[playerid][Owner] = dini_Int(speichern,"Owner");
}}
Wie möchtest du denn einen Owner in eine Zahl stecken? du musst ihn mit dini_Set definieren.
hast du denn auch mein enum eingefügt ?
Bei Vehicleload ist ein fehler aufgekommen:
public VehicleLoad()
{
for(new i; i < MAX_PLAYERS; i++)
{
new playername[20], speichern[128];
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(i,playername,sizeof(playername));
if(exist(speichern))
{
Park[i][Park_X] = dini_Float(speichern,"Car_X");
Park[i][Park_Y] = dini_Float(speichern,"Car_Y");
Park[i][Park_Z] = dini_Float(speichern,"Car_Z");
Park[i][Owner] = dini_Int(speichern,"Owner");
}
}
} -
Zeile (130) : Unbekannte Variable : "X"
Zeile (132) : Unbekannte Funktion
Zeile (133) : Unbekannte Funktion
Zeile (195) : Unbekannte Variable : "Park_X"
Zeile (196) : Unbekannte Variable : "Park_Y"
Zeile (197) : Unbekannte Variable : "Park_Z"
Zeile (208) : Erwartete Zeichen ",", aber gefunden ";"public VehicleSave()
{
for(new i; i < MAX_PLAYERS; i++)
{
new playername[20], speichern[128];
GetPlayerName(i,playername,sizeof(playername));
format(speichern, sizeof(speichern), "/Autos/%s.ini", playername);
if(fexist(speichern))
{
dini_FloatSet(speichern,"Car_X",Park[i][Park_X]);
dini_FloatSet(speichern,"Car_Y",Park[i][Park_Y]);
dini_FloatSet(speichern,"Car_Z",Park[i][Park_Z]);
dini_Set(speichern,"Owner",Park[i][Owner]);
}
}
}public VehicleLoad()
{
for(new i; i < MAX_PLAYERS; i++)
{
new playername[20], speichern[128];
format(speichern, sizeof(speichern), "/Autos/%s.ini", GetPlayerName(i,playername,sizeof(playername));
if(exist(speichern))
{
Park[i][Park_X] = dini_Float(speichern,"Car_X");
Park[i][Park_Y] = dini_Float(speichern,"Car_Y");
Park[i][Park_Z] = dini_Float(speichern,"Car_Z");
Park[i][Owner] = dini_Get(speichern,"Owner");
}
}
}enum parkInfo
{
Float:Park_x,
Float:Park_y,
Float:Park_z,
Owner
}
new Park[MAX_PLAYERS][parkInfo];