Beiträge von Mr.Soap
-
-
So wieder da Kaliber da ist es doch:
FrakCar[car][FraktionID] = dini_Int(FrakCars,"Fraktion");
oder meinst du Unter OnPlayerStateChange
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate==PLAYER_STATE_DRIVER)
{
new vehicle;
vehicle = GetPlayerVehicleID(playerid);
if(FrakCar[vehicle][FraktionID] == PlayerInfo[playerid][pMember] || FrakCar[vehicle][FraktionID] == 0) // Hier
{
}
else
{
new datei[42];
format(datei,sizeof(datei),"Das Car gehört der Fraktion %d An!",FrakCar[vehicle][FraktionID]);
SendClientMessage(playerid,ROT,datei);
SendClientMessage(playerid,ROT,"Sie gehören Nicht dieser Fraktion an!");
RemovePlayerFromVehicle(playerid);
}
}
return 1;
} -
Also Unter OnGameModeInit Werden sie nach restart so Geladen:
for(new car=1;car<MAX_FRAKCARS;car++)
{
LoadFrakCars(car);
}sie werden in einer .txt Abgespeichert soll ich das in .ini ändern ?
Falls du was anderes meinst bitte Fragen... Dan hab ich falsch verstanden
bin kurz 5 Min. weg... Oder Kürzer
-
Das ist die varriable für den Format wo es Abgespeichert wird...
//edit Hier Enum:
enum fraktionautos
{
Float:CarX,
Float:CarY,
Float:CarZ,
Float:CarAngle,
Farbe1,
Farbe2,
FraktionID,
ModelID
}
new FrakCar[MAX_VEHICLES][fraktionautos]; -
Ja Nach Server-Konsole (Print Funktion schon) Im Stock Der die Cars Lädt klappt ja alles noch hier der Stock:
( Kaliber )
stock LoadFrakCars(car)
{
new FrakCars[64];
for(new fraks=1;fraks<MAX_FRAKS;fraks++)
{
format(FrakCars,64,"/Fraktionen/%d/%d.txt",fraks,car);
if(fexist(FrakCars))
{
FrakCar[car][CarX] = dini_Float(FrakCars,"x");
FrakCar[car][CarY] = dini_Float(FrakCars,"y");
FrakCar[car][CarZ] = dini_Float(FrakCars,"z");
FrakCar[car][CarAngle] = dini_Float(FrakCars,"angle");
FrakCar[car][Farbe1] = dini_Int(FrakCars,"Farbe1");
FrakCar[car][Farbe2] = dini_Int(FrakCars,"Farbe2");
FrakCar[car][ModelID] = dini_Int(FrakCars,"ModelID");
FrakCar[car][FraktionID] = dini_Int(FrakCars,"Fraktion");
FraktionCar[car] = AddStaticVehicle(FrakCar[car][ModelID], FrakCar[car][CarX], FrakCar[car][CarY], FrakCar[car][CarZ], FrakCar[car][CarAngle], FrakCar[car][Farbe1], FrakCar[car][Farbe2]);
printf("Car %d der Fraktion %d Erfolgreich Geladen!", car, FrakCar[car][FraktionID]);
}
}
return 1;
} -
Danke, Sehr nett Alle gucken irgendwie nur schnell drüber aber finden nichts...
-
Ja, war ja nur ne idee hab Leider keine Zeit Bin am Fraktionautohaus doch habe ein Problem leider keine Antwort...
-
Gut gemacht

10/10
//edit Hätte was das Wirklich Geil wär Du gehst zum NPC Verkäufer dan kommt nen Dialog und der NPC läuft dan mit dir zum Auto zum ansehen...
-
Hallo, wie mache ich eine Varraible für Autos ich habe das so Getestet:
new CarFraktion[MAX_VEHICLES];
beim Laden dan:FrakCar[car][FraktionID] = dini_Int(FrakCars,"Fraktion");
Zum test ist ein printf in der Ladefunktion:
printf("Car %d der Fraktion %d Erfolgreich Geladen!", car, FrakCar[car][FraktionID]);
Doch wenn ich das so mit String bei OnPlayerStateChange Verwende:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate==PLAYER_STATE_DRIVER)
{
new vehicle;
vehicle = GetPlayerVehicleID(playerid);
if(FrakCar[vehicle][FraktionID] == PlayerInfo[playerid][pMember] || FrakCar[vehicle][FraktionID] == 0)
{
}
else
{
new datei[42];
format(datei,sizeof(datei),"Das Car gehört der Fraktion %d An!",FrakCar[vehicle][FraktionID]);
SendClientMessage(playerid,ROT,datei);
SendClientMessage(playerid,ROT,"Sie gehören Nicht dieser Fraktion an!");
RemovePlayerFromVehicle(playerid);
}
}
return 1;
}
kommt z.B bei diesem Car:
Es gehöre zur Fraktion 2 ...wenn ihr irgendein Abschnitt oder so noch Braucht Melden!
Danke an Alle Die Helfen!
MFG Arendium
-
Hei, habe mir eben ein frak-Autohaus erstellt doch wenn Ich das jetzt so Bei OnPlayerStateChangeHabe:
if(newstate==PLAYER_STATE_DRIVER)
{
new vehicle;
vehicle = GetPlayerVehicleID(playerid);
if(PlayerInfo[playerid][pMember] == FrakCar[vehicle][FraktionID])
{
}
else
{
new datei[42];
format(datei,sizeof(datei),"Das Car gehört der Fraktion %d An!",FrakCar[vehicle][FraktionID]);
SendClientMessage(playerid,ROT,datei);
SendClientMessage(playerid,ROT,"Sie gehören Nicht dieser Fraktion an!");
RemovePlayerFromVehicle(playerid);
}
}
Der String ist nur zum testen... Dan:Kommt Ingame Dieses Car gehört der Fraktion 0 an Obwohl es eig. zu Fraktion 2 Gehört Die Cars sind so in einer .txt Angelegt:
Die Lade-Funktion:
stock LoadFrakCars(car)
{
new FrakCars[64];
for(new fraks=1;fraks<MAX_FRAKS;fraks++)
{
format(FrakCars,64,"/Fraktionen/%d/%d.txt",fraks,car);
if(fexist(FrakCars))
{
FrakCar[car][CarX] = dini_Float(FrakCars,"x");
FrakCar[car][CarY] = dini_Float(FrakCars,"y");
FrakCar[car][CarZ] = dini_Float(FrakCars,"z");
FrakCar[car][CarAngle] = dini_Float(FrakCars,"angle");
FrakCar[car][Farbe1] = dini_Int(FrakCars,"Farbe1");
FrakCar[car][Farbe2] = dini_Int(FrakCars,"Farbe2");
FrakCar[car][FraktionID] = dini_Int(FrakCars,"Fraktion");
FrakCar[car][ModelID] = dini_Int(FrakCars,"ModelID");
FrakCar[car][FraktionID] = AddStaticVehicle(FrakCar[car][ModelID], FrakCar[car][CarX], FrakCar[car][CarY], FrakCar[car][CarZ], FrakCar[car][CarAngle], FrakCar[car][Farbe1], FrakCar[car][Farbe2]);
printf("Car %d der Fraktion %d Erfolgreich Geladen!", car,FrakCar[car][FraktionID]);
}
}
return 1;
}Ihr dürft: Es editieren und mir Helfen
Ihr dürft NICHT: es für Euren Server Benutzen!Ich bitte um Verständniss und hoffe auf Hilfe
Hier noch ein Bild mit dem String zum test:

MFG Arendium

-
Hei, habe mir eben ein frak-Autohaus erstellt doch wenn Ich das jetzt so Bei OnPlayerStateChangeHabe:
if(newstate==PLAYER_STATE_DRIVER)
{
new vehicle;
vehicle = GetPlayerVehicleID(playerid);
if(PlayerInfo[playerid][pMember] == FrakCar[vehicle][FraktionID])
{
}
else
{
new datei[42];
format(datei,sizeof(datei),"Das Car gehört der Fraktion %d An!",FrakCar[vehicle][FraktionID]);
SendClientMessage(playerid,ROT,datei);
SendClientMessage(playerid,ROT,"Sie gehören Nicht dieser Fraktion an!");
RemovePlayerFromVehicle(playerid);
}
}
Der String ist nur zum testen... Dan:Kommt Ingame Dieses Car gehört der Fraktion 0 an Obwohl es eig. zu Fraktion 2 Gehört Die Cars sind so in einer .txt Angelegt:
Die Lade-Funktion:
stock LoadFrakCars(car)
{
new FrakCars[64];
for(new fraks=1;fraks<MAX_FRAKS;fraks++)
{
format(FrakCars,64,"/Fraktionen/%d/%d.txt",fraks,car);
if(fexist(FrakCars))
{
FrakCar[car][CarX] = dini_Float(FrakCars,"x");
FrakCar[car][CarY] = dini_Float(FrakCars,"y");
FrakCar[car][CarZ] = dini_Float(FrakCars,"z");
FrakCar[car][CarAngle] = dini_Float(FrakCars,"angle");
FrakCar[car][Farbe1] = dini_Int(FrakCars,"Farbe1");
FrakCar[car][Farbe2] = dini_Int(FrakCars,"Farbe2");
FrakCar[car][FraktionID] = dini_Int(FrakCars,"Fraktion");
FrakCar[car][ModelID] = dini_Int(FrakCars,"ModelID");
FrakCar[car][FraktionID] = AddStaticVehicle(FrakCar[car][ModelID], FrakCar[car][CarX], FrakCar[car][CarY], FrakCar[car][CarZ], FrakCar[car][CarAngle], FrakCar[car][Farbe1], FrakCar[car][Farbe2]);
printf("Car %d der Fraktion %d Erfolgreich Geladen!", car,FrakCar[car][FraktionID]);
}
}
return 1;
}Ihr dürft: Es editieren und mir Helfen
Ihr dürft NICHT: es für Euren Server Benutzen!Ich bitte um Verständniss und hoffe auf Hilfe
MFG Arendium

-
Zeig mal bitte die Logs
-
Klappt irgendwie net ganz... ich versuche es mal selbst zu fixxen
-
Also z.B immer wenn der Timer fertig ist printest du z.B eine nachrivht um den Timer zu testen wenn jemand in der Zone ist printest du das wenn nicht das nicht Si kannst du den Timrrer UND den textdraw prüfen
-
Versuchs mal mirlt der print Methode bis wo es klappt..
-
Aso also führt es so zu KEINEN laggs ?
PS: Nice BSN!
-
Ja,danke bin am Handy Damit kann ich dann unendlich Fraks machen oder ?
und wie siehts von rescorcen aus das ist soweit ich gerade sehe net lastig oder ? -
Ein TImer und dan mit IsPlayerInArena und natürlich noch eine Schleife

-
-
Hei, diese Load Funktion ist bisher nur Für die Fraktion 1 Wie könnte ich das für die anderen machen ohne 300 + Zeilen und so ?
stock LoadFrakCars(car)
{
new FrakCars[64];
format(FrakCars,64,"/1/%d.txt",car);
if(!fexist(FrakCars))return 0;
FrakCar[car][CarX] = dini_Float(FrakCars,"x");
FrakCar[car][CarY] = dini_Float(FrakCars,"y");
FrakCar[car][CarZ] = dini_Float(FrakCars,"z");
FrakCar[car][CarAngle] = dini_Float(FrakCars,"angle");
FrakCar[car][Farbe1] = dini_Int(FrakCars,"Farbe1");
FrakCar[car][Farbe2] = dini_Int(FrakCars,"Farbe2");
FrakCar[car][FraktionID] = dini_Int(FrakCars,"FrakID");
FrakCar[car][ModelID] = dini_Int(FrakCars,"ModelID");
FrakCar[car][FraktionID] = AddStaticVehicle(FrakCar[car][ModelID], FrakCar[car][CarX], FrakCar[car][CarY], FrakCar[car][CarZ], FrakCar[car][CarAngle], FrakCar[car][Farbe1], FrakCar[car][Farbe2]);
printf("Car %s der Fraktion %s Erfolgreich Geladen!", car,FrakCar[car][FraktionID]);return 1;
}