Hallo, mal ne kleine und schnelle frage
Wie kann ich bei einen rennen spieler neben einander aufstellen ? mit random wird das nicht klappen da die manchmal auf einander spawnen werden denke ich jetzt mal :p
Spieler aufstellen? o.o
- Msk.
- Geschlossen
- Erledigt
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
-
-
Du legst einfach eine Startposition fest.
Und je nach Spieleranzahl für Du folgendes in eine der Koordinaten ein:
SetPlayerPos(playerid, (X + SpielerAnzahl * 10), Y, Z); -
einfach ne schleife durchlaufen lassen und dann alle ne Posi geben die du definiert hast, am besten in einem Enum.
Sollte kein Problem sein denk ich.
-
1. Das Forum ist die letzte Anlaufstelle für solche Fragen.+
2. Du kannst jeder Playerid ein eigenes Car zuweißen.
Oder du machst es so:
Connected ein neuer Spieler wird ein Car erstellt das dann weiter entfernt ist als das vorherige das sich dann immer wieder verdoppelt.
Oder du spawnst alle Fahrzeuge weißt ihnen Variable zu und gibst jeder ID ein Car.
Dir überlassen!
Hoff bitte nicht auf Copy&Paste da biste hier Falsch!
-
einfach ne schleife durchlaufen lassen und dann alle ne Posi geben die du definiert hast, am besten in einem Enum.
Sollte kein Problem sein denk ich.
Viel zu umständlich...Eine feste Position festlegen und die Spieler dann einfach,
anhand der Spieleranzahl x 10 (beispielsweise) verschieben. -
Viel zu umständlich...Eine feste Position festlegen und die Spieler dann einfach,
anhand der Spieleranzahl x 10 (beispielsweise) verschieben.umständlich ja, dafür wesentlich genauer. Jedem dem seine.
-
@ImageCloud was geht mit dir up c_C
naja ich hab es so das alle spieler auf einmal spawnen sagen wir mal 20 spieler, und ich hab feste coordinaten schon geschpeichert
naja vielleicht mach ich einfach eine tabelle, in der ich die coordinaten reinmache und dann per random zuweise wenn die sich wiederholen dann eine andere xd -
Was ist daran bitte genauer?
Legst Du eine Startposition fest und verschiebst alle
weiteren Spieler, jeweils um EXAKT 10, geht's wohl nicht genauer.Falls doch, erläutere mir das mal bitte, mit Beispiel und Begründung.
-
Was ist daran bitte genauer?
Legst Du eine Startposition fest und verschiebst alle
weiteren Spieler, jeweils um EXAKT 10, geht's wohl nicht genauer.Falls doch, erläutere mir das mal bitte, mit Beispiel und Begründung.
Du weisst nicht wie er die Fahrzeuge aufstellen will. Vllt. will er ja wie beim Formel 1 Aufstellen, oder gar sehr weit voneinander entfernt oder vllt. willer das später wie Derby benutzen( ein kreis ) oder an einer Rampe.
Ausserdem kann er mit meiner Methode mehrere Strecken machen indem er einfach bisl umschreibt und dann mehr ins enum reinschreibt.
-
@ 4#Future
ich hab dein Post 'ignoriert' da es bei mir NICHT klappen wird... ich hab eine gemappte Strecke und da klappt sowas einfach nicht, das die autos nicht immer genau 10 m neben einander sind bzw. hintereinander
-
@MSK
Dann brauchst Du meine Hilfe ja nicht mehr...
-
Das könnte alles möglich sein.
Doch dazu brauchst Du Deine komplizierte Idee immernoch nicht.Dann änderst Du einfach zwei von drei oder alle Koordinaten.
Ryhtmische Änderungen oder alternierende, kann er wohl selbst erstellen?!
Ich glaube, dass wäre viel umständlicher und bei vielen Strecken vllt. sogar unübersichtlich. Aber wie gesagt, jedem dem seine, beide methoden funzen.
@ <(^^_)>Msk.:
Wieso ignorieren? Es war nur von bsp von ihm. Kannst es auf jedenfall benutzen, musst nur mal bisl nachdenken und umschreiben, er hat dir nen guten Hinweis gegeben -
oh mein gott... ich hab nicht direkt ignorieren gemeint, ich wusste einfach nicht wie ich es sagen soll, ich bin ein netter mensch, und ich such hier hilfe und kein streit c_C
ok, also ich hab erst mir die coordinaten geschpeichert, nun erstelle ich ein enum, und mal gucken ich hoffe ich schaff es weiter alleine
-
Wenn Du alle Koordinaten gespeichert hast, speicherst
Du sie eben beispielsweise in einem enum und teilst sie
dann den Spielern, die am Rennen teilnehmen, den Spielern zu.Am besten durch eine kleine Schleife.
Wenn Dir die Idee gefällt, kannst Du es ja so umsetzen
-
ich hab keine kraft mehr, ich muss es aber noch heute fertig machen >.>
ich hab verdammt noch mal keine idee wie ich es machen soll xdvielleicht macht mir das ja jemand, und wenn nicht dann probiere ich es nochmal morgen wenn ich mich ausschlaffe c_C
new Positionen[][] =
{
{2460.6025,-3145.8916,13.4212},
{2454.8855,-3145.9048,13.4212},
{2448.4207,-3146.1404,13.4212},
{2442.5635,-3145.8777,13.4212},
{2436.5962,-3145.2649,13.4212},
{2430.7417,-3146.0488,13.4212},
{2430.6450,-3137.6794,13.4212},
{2436.4480,-3137.3628,13.4212},
{2442.6331,-3137.5845,13.4212},
{2448.6348,-3137.4717,13.4212},
{2454.3523,-3137.0774,13.4212},
{2460.6174,-3137.4773,13.4212}
}; -
Ich hätte mal eine ganz simple Vorlage für Dich, die so natürlich noch nicht funktioniert.
Aber ich bin sicher, dass bekommst Du auch noch hin.
new RennPositionen[12][3] =
{
{2460.6025,-3145.8916,13.4212},
{2454.8855,-3145.9048,13.4212},
{2448.4207,-3146.1404,13.4212},
{2442.5635,-3145.8777,13.4212},
{2436.5962,-3145.2649,13.4212},
{2430.7417,-3146.0488,13.4212},
{2430.6450,-3137.6794,13.4212},
{2436.4480,-3137.3628,13.4212},
{2442.6331,-3137.5845,13.4212},
{2448.6348,-3137.4717,13.4212},
{2454.3523,-3137.0774,13.4212},
{2460.6174,-3137.4773,13.4212}
};// ANZAHL_SPIELTEILNEHMER bitte erechnen - wie viele Spieler nehmen am Rennen teil
for new(i = 0; i < ANZAHL_SPIELTEILNEHMER; i++)
{
SetPlayerPos(i, RennPositionen[i][0], RennPositionen[i][1], RennPositionen[i][2]);
} -
new cy=0;
for(new i=0; i<MAX_PLAYERS;i++)
{SetPlayerPos(i, x, y+cy, z);
cy++;}
-
Sonny dir ist klar das er vielleicht ein paar millimeter nach rechts geht ?
Ergebnis = Hängen ineinander.Am besten * 2 oder * 3 machen.
-
new cy=0;
for(new i=0; i<max_players;i++)
{SetPlayerPos(i, x, y+cy, z);
cy++;}
Dein Vorschlag ist absolut unsinnig.Falls Du das Thema mal richtig verfolgst, wirst Du festellen,
dass bereits vordeklarierte Positionen vorhanden sind und
diese an die Teilnehmer verteilt werden sollen.Aber nur so nebenbei
-
Seine Positionen gehen immer um 6 Einheiten runter bzw hoch also geht das auch ganz einfach so.
Statt cy++ halt cy = cy+6;
-