HX3 Foren

HX3 Foren (https://hx3.de/)
-   Editing (https://hx3.de/editing-139/)
-   -   Hallo frage Zufalls Position! (https://hx3.de/editing-139/hallo-frage-zufalls-position-15958/)

Ghost_Aut 15.03.2009 17:40

Hallo frage Zufalls Position!
 
Würde gerne in der Mp Mission eine Ari von Mr-Murray mit einbauen,die D30 Geschütze habe ich im Editor erstellt und den Auslöser auch!!Und habe mir 6 Scripts mit den Namen Artellerie1.sqs bis Artellerie6.sqs Erstellt mit verschiedenen Positionen, ich würde gerne am Anfang der Mission Eines der Skripts starten lassen, das die Position der Ari nicht immer auf der gleichen stelle, In der Mission steht! Wie könnte man das in der init.sqs konfigurieren!!
Es solte nur eins von den sechs ausgefürt werden einmal!!
Lg: Ghost

TeRp 15.03.2009 19:22

Mal so aus'm Stehgreif, keine Garantie:

Code:

_tmp = ceil (random 6);
if (_tmp == 0) then { _tmp = 1; };

_script = format ["Artillerie%1.sqs",_tmp];
[] exec _script;


Master85 15.03.2009 19:32

Du brauchst das mit den 6 verschiedenen Skripts gar nicht machen, kannst sowas verwenden:

Code:

_positions = [[1,2,3],[4,5,6],[7,8,9]];
_pos = _positions select floor(random (count _positions));

_pos sollte dann eine der Positionen aus dem _positions-Array enthalten.

Wenn du das mit den 6 Skripts umbedingt haben willst, wird es irgendwas mit
Code:

exec format ["Artillerie%1.sqs", 1 + floor(random 6)]
sein.

Edit: zu lange rumgebastelt, TeRp war schneller...

Ghost_Aut 15.03.2009 20:54

Danke Leute!!

Ich habe es gerade getestet von euch beiden, und es gehen beide code!!
Danke noch mal für eure schnelle hilfe!!

Mfg: Ghost

Vienna 15.03.2009 21:18

Ich nehme an, die Objekte einer Artilleriebatterie sollen beim Verstellen ihre Anordnung beibehalten. Das ist mit dem Skript möglich. Die versetzten Objekte verändern an ihrem neuen Platz nicht die Anordnung zueinander.

Es sollten aber nicht wahllose Plätze sein, da die Geschütze nicht an einem Steilhang stehen sollen. Einfach mehrere Positionen markieren und die Positionen per Zufall auswählen.

Skript Move_Units.sqf
Code:

// ***********************************************************
// Versetzt eine Gruppe von Objekten an eine andere Position,
//  unter Beibehaltung der Stellung der Objekte zueinander.
//
// Aufruf: [[<Neue Position>],[<Objektname 1>,<Objektname 2>,usw...]] execVM "Move_Units.sqf"
// ***********************************************************

if (!isServer) exitWith {};

private ["_posX","_posY","_obj","_posRx","_posRy"];

//Parameter

  //neue Position
  _posX = (_this select 0) select 0;
  _posY = (_this select 0) select 1;
       
//Liste (Array) mit den Objekt-Namen der Gruppe
  _obj  = _this select 1;

//Position der 1. Unit als Referenz
 _posRx = getpos(_obj select 0)select 0;
 _posRy = getpos(_obj select 0)select 1;

//Schleife durch alle Objekte der Liste
 {
  //Unit auf neue Position in Relation zur 1. Unit
  _x setpos [_posX+((getpos _x select 0)-_posRx),_posY+((getpos _x select 1)-_posRy)]
  } forEach _obj


Ghost_Aut 16.03.2009 20:16

Hallo Vienna!

Es ist sicher ein guter code, und werd in sicher mal brauchen können,
aber ich habe 6 script.sqs!
wo ich auch marker erstellen muss und auslöser bei scripts, erstelle, da es ein artellerie lager werden solte!

dadurch versetze ich sie mit der,
position[]={6256.066895,-65.478279,12139.111328};

wie den einen Turm!!
turm1 = "WarfareBEastMGNest_PK" createVehicle [7855.384277,15779.550781,30.806419];
turm1
setDir 125
turm1
lockfalse

und die beiden code, sind eh ganz gut und einfach zu verwenden!!
aber danke!!
habe spähter eh noch eine frage an dich wegen den LaserAirHQ!!

Mfg: Ghost


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:36 Uhr.

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias


SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119