Hey,
ich wolltee Fragen, ob man abfragen kann,
wie viele Sitze ein Auto hat?
Und ob man abfragen kann ob der Sitz frei ist?
mfg
Hey,
ich wolltee Fragen, ob man abfragen kann,
wie viele Sitze ein Auto hat?
Und ob man abfragen kann ob der Sitz frei ist?
mfg
Gute Frage
http://wiki.sa-mp.com/wiki/PutPlayerInVehicle
Vieleicht hilft dir das etwas
Da sind auch andere links um die Sitzlätze auszulesen. Genau hab ich mich damit noch nich beschäftigt - brauchte ich noch nicht
Kann man dem Fahrzeug auch mehr Sitze geben?
http://wiki.sa-mp.com/wiki/PutPlayerInVehicle
Vieleicht hilft dir das etwas
Da sind auch andere links um die Sitzlätze auszulesen. Genau hab ich mich damit noch nich beschäftigt - brauchte ich noch nicht
Okey, damit könntei ch prüfen ob der platz frei ist, zwar eine unnötige schleife was sein muss muss sein
Nun jetzt brauch ich nur noch eine Funktion um abzufragen wie viele Sitze das Auto hat
Nein das ist nicht möglich.
Wo sollten die Spieler dann sitzen, hinterm Kofferaum in der Luft, oder auf der Motorhaube ?
Ich dachte, an ein innen interrior, das man dem fahrzeug gibt.
Ist das überhaupt möglich?
Du könntest riesen if Abfrage machen, und für jedes Auto die Sitzplätze manuel eintragen.
Falls du es ingame anzeigen möchtest
@Koala
Das ist meines wissens nach nicht möglich.
Maximal 4 minimal 2, 0 = fahrer | 1-3 = Beifahrer (1) > Neben den Fahrer
Mach ne schleife durch bis zu 4 sitzen, überprüfe mit GetPlayerVehicleSeat ob dieser Spieler in dem angegeben Fahrzeug ist und ob der sitz nicht 0-4 returnt
Aber ne andere frage was hast du vor ? Den spieler in ein freien Platz telepotieren ?
Wenn ja, schreib Ich sag dir dann wie du es anstellst
Wenn du ganz viele Leute rein willst, könntest du (z.b. für ein Enforcer) ein Interior mappen, und bei OnPlayerStateChange wenn er mit G(Beifahrer) einsteigt, dann er dort hingeportet wird. Wenn er "F" drückt, dann er dann wieder neben das auto gespawnt wird...
Maximal 4 minimal 2, 0 = fahrer | 1-3 = Beifahrer (1) > Neben den Fahrer
Mach ne schleife durch bis zu 4 sitzen, überprüfe mit GetPlayerVehicleSeat ob dieser Spieler in dem angegeben Fahrzeug ist und ob der sitz nicht 0-4 returnt
Aber ne andere frage was hast du vor ? Den spieler in ein freien Platz telepotieren ?
Wenn ja, schreib Ich sag dir dann wie du es anstellst
So weit war ich auch schon^^
Genau, ich möchte den Spieler in einen Freien Platz setzen. nur dafür muss ich halt wissen, welches VehicleModel wie viele Plätze hat und da ich kb hab für rund 200 Models die sitze einzutragen...
Minimal 2 ist quatsch. EIn Fahhrad ist auch ein Fahrzeug und hat nur einen sitzplatz
Maximal 4 ist auch qautsch. Ein Coach kann mehr als 4 Spieler mitnehmen.
Es gibt bereits dafür eine Funktion von RyDer im englischen Forum, und diese ist nicht gerade einfach.
Maximal 4 minimal 2, 0 = fahrer | 1-3 = Beifahrer (1) > Neben den Fahrer
Mach ne schleife durch bis zu 4 sitzen, überprüfe mit GetPlayerVehicleSeat ob dieser Spieler in dem angegeben Fahrzeug ist und ob der sitz nicht 0-4 returnt
Aber ne andere frage was hast du vor ? Den spieler in ein freien Platz telepotieren ?
Wenn ja, schreib Ich sag dir dann wie du es anstellst
Maximal 4 stimmt nicht den ein Bus hat ungefähr 9 Plätze
@all spamt hier mal net so rum liefert lieber produktive beiträge danke
Es gibt bereits dafür eine Funktion von RyDer im englischen Forum, und diese ist nicht gerade einfach.
Schwer gibt es bei Pawn nicht und nen Link wäre sehr nett
mfg
@Sonderzeichen, über das Fahrrad habe ich nicht nachgedacht danke für die Korrektur
@b2t
Also, du musst nicht überprüfen wv existieren sondern welche die frei sind, da es ja keine GetVehicleSeat funktion gibt müssen wir eine Schleife durch alle player ziehen
public getSitz(vid) {
new sitz;
for(new p; p < MAX_PLAYERS; p++) {
if ( !IsPlayerConnected(p) ) return 1; // Wenn Spiele nicht auf den Server ist
if(IsPlayerInVehicle(p, vid)) // wenn der spieler im fahrzeug ist
{
sitz=GetPlayerVehicleSeat(p); // Den Sitz abfragen
for(new sitze=0; sitze < 4; sitze++) { // 0- > 4 Sitze
if(sitz != sitze) { // Wenn der sitz wo der Spieler ist nicht einer der 4 Sitze ist dann -> Sitz shicken
return sitze; // Ausgeben
}
}
}
}
return 0; // Fahrer wenn er nix gefunden hat alg. keine spieler
}
Hab ich kurz gemacht, sry für späte antwort war noch kurz was spielen , die Funktion ist ungetestet
Alles anzeigen@Sonderzeichen, über das Fahrrad habe ich nicht nachgedacht danke für die Korrektur
@b2t
Also, du musst nicht überprüfen wv existieren sondern welche die frei sind, da es ja keine GetVehicleSeat funktion gibt müssen wir eine Schleife durch alle player ziehen
public getSitz(vid) {
new sitz;
for(new p; p < MAX_PLAYERS; p++) {
if ( !IsPlayerConnected(p) ) return 1; // Wenn Spiele nicht auf den Server ist
if(IsPlayerInVehicle(p, vid)) // wenn der spieler im fahrzeug ist
{
sitz=GetPlayerVehicleSeat(p); // Den Sitz abfragen
for(new sitze=0; sitze < 4; sitze++) { // 0- > 4 Sitze
if(sitz != sitze) { // Wenn der sitz wo der Spieler ist nicht einer der 4 Sitze ist dann -> Sitz shicken
return sitze; // Ausgeben
}
}
}
}
return 0; // Fahrer wenn er nix gefunden hat alg. keine spieler
}
Hab ich kurz gemacht, sry für späte antwort war noch kurz was spielen , die Funktion ist ungetestet
genau das würde ich ja hinbekommen, jetzt hast du aber genau den fehler gemacht den ich meinte.
Du wurdest jemanden dann in einen Sitz stecken, der garnicht im Fahrzeug vorhanden ist.
Da du eine Schleife von 0-3 durchlaufen lässt. was ist aber wenn das ein Motorrad ist? Dann setzt du jemanden auf Platz 4, da er frei sit.
Ja, gut jetzt verstehe ich was du meinst GetPlayerVehicleSeat gibt 128 als Wert zurückwenn der Sitz nicht existiert, überprüf nach den "rein" Warpen ob er 128 ist wenn ja, -1 wenn immernoch wieder -1
Falls du das nicht möchtet kann ich dir gleich eine Liste zukommen lassen, auch wenn ich sie nicht benutzen würde ich habe hier irgendwo eine weiß aber nicht genau wo..
//EDIT hab die liste
Ja, gut jetzt verstehe ich was du meinst GetPlayerVehicleSeat gibt 128 als Wert zurückwenn der Sitz nicht existiert, überprüf nach den "rein" Warpen ob er 128 ist wenn ja, -1 wenn immernoch wieder -1
Falls du das nicht möchtet kann ich dir gleich eine Liste zukommen lassen, auch wenn ich sie nicht benutzen würde ich habe hier irgendwo eine weiß aber nicht genau wo..
//EDIT hab die liste
Das wäre eine Idee, aber wenn keiner Frei ist fliegt man für 0,5 sekunden durch die gegend und ladet wieder drausen
Wäre sehr nett mit der lsite
//Info: Die Liste ist aus den MTA: SA Code Project du kannst ja die Namen entfernen oder auch gleichzeitig anpassen an dein Speedometer whatever
Ich denke du weißt wie du die Liste in ne enum anpasst ?