Armed-Assault.de Twitter
 
 
Themen-Optionen Ansicht
Alt 22.08.2010, 14:36   #1 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von todyoungblood
 
Registriert seit: 29.05.2009
Ort: Reutlingen
Alter: 50
Beiträge: 134
todyoungblood eine Nachricht über AIM schicken
Standard Fallschirmjäger an zufälligem Punkt abspringen lassen

Hallo Leute,

ich bins mal wieder

Währe super wenn sich jemand mal mein Script anschauen könnte.
Irgendwie funktioniert das nicht (nicht schimpfen ist noch sqs ).
Ich würde gerne in meiner Mission eine Einheit KSK Soldaten an einem Punkt abspringen lassen der zuvor per Zufallsgenerator ausgelost wurde.
Wenn das Flugzeug die Dropzone erreicht hat, sollen die Einheiten in kurzem Abstand hintereinander abspringen und das Flugzeug wegfliegen und bei [0,0,0] gelöscht werden.

Auf der Karte befindet sich:

6x Heli H (invisible) = d1,d2,d3,d4,d5,dropzone
1x C130 (fliegend) = plane
2x Piloten (this movein.....) pilot1,pilot2
10 x KSK Einheiten (this movein....) ksk1,ksk2,...-ksk10

Die Heli Hs d1-d5 wurden an die verschiedenen Absprungpunkte gesetzt.

PHP-Code:
_start=random 5;
_start : goto "d1";
_start : goto "d2";
_start : goto "d3";
_start : goto "d4";
_start : goto "d5";
#d1
dropzone setpos getpos d1;
goto 
"aproach";
#d2
dropzone setpos getpos d2;
goto 
"aproach";
#d3
dropzone setpos getpos d3;
goto 
"aproach";
#d4
dropzone setpos getpos d4;
goto 
"aproach";
#d5
dropzone setpos getpos d5;
goto 
"aproach";
#aproach
pilot1 action ["gear_up"vehicle plane] ;
plane flyinHeight 150;
plane setSpeedMode "limited";
#check
pilot1 doMove getPos dropzone;
~
0.1
plane flyinHeight 150
;
~
0.1
? (plane distance dropzone) <500 : goto "jump"
~0.1
goto "check"
#jump
_aunits = [ksk1,ksk2,ksk3,ksk4,ksk5,ksk6,ksk7,ksk8,ksk9,ksk10];
_i 0;
_j count _aunits;
#here
(_aunits select _iaction ["EJECT"plane] ;
unAssignVehicle (_aunits select _i) ;
_i=_i+1;
~
0.5
?_j>_i : goto "here"
#home
dropzone setPos [0,0,0];
plane setSpeedMode "FULL"
Pilot1 doMove getPos dropzone;
? (
plane distance dropzone) <400 : goto "delete"
~0.1
goto "home"
#delete
deleteVehicle plane;
deleteUnit pilot1;
deleteUnit pilot2;
exit 
Gruß Tod
__________________

Langsam ist präzise.....und präzise ist schnell....
http://www.astore.de
http://www.astore-shop.de
http://www.voodoo-puppe.net

Geändert von todyoungblood (22.08.2010 um 14:43 Uhr).
todyoungblood ist offline  
Alt 22.08.2010, 17:08   #2 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Init von einer beliebigen Einheit
Code:
null=[dropzone,Pilot1,Pilot2,plane] execVM "drop.sqf";
drop.sqf:
Code:
private ["_drop","_start","_pilot1","_pilot2","_plane"];
_drop = _this select 0;
_pilot1 = _this select 1;
_pilot2 = _this select 2;
_plane = _this select 3;
_start = random 5;

if (_start<1) then {_drop setPos getPos d1};
if (_start<2) then {_drop setPos getPos d2};
if (_start<3) then {_drop setPos getPos d3};
if (_start<4) then {_drop setPos getPos d4};
if (_start<5) then {_drop setPos getPos d5};

_pilot action ["gear_up", vehicle _plane];
_plane flyinHeight 150; _plane setSpeedMode "limited"; _pilot doMove getPos _drop; if ((_plane distance _drop) <500) then { ksk1 action ["EJECT",vehicle _plane]; sleep 0.5; ksk2 action ["EJECT",vehicle _plane]; sleep 0.5; ksk3 action ["EJECT",vehicle _plane]; sleep 0.5; ksk4 action ["EJECT",vehicle _plane]; sleep 0.5; ksk5 action ["EJECT",vehicle _plane]; sleep 0.5; ksk6 action ["EJECT",vehicle _plane]; sleep 0.5; ksk7 action ["EJECT",vehicle _plane]; sleep 0.5; ksk8 action ["EJECT",vehicle _plane]; sleep 0.5; ksk9 action ["EJECT",vehicle _plane]; sleep 0.5; ksk10 action ["EJECT",vehicle _plane]; sleep 2; _plane setSpeedMode "FULL"; _pilot doMove getPos drop2; }; if ((_plane distance drop2) <400) then { deleteVehicle _plane; deleteUnit _pilot1; deleteUnit _pilot2; };



Edit: du musst dann lediglich noch ein Helicopter H mit den Namen drop2 erstellen, dort wird dann das Flugzeug und die Piloten gelöscht
__________________

Geändert von Rockhount (22.08.2010 um 17:32 Uhr).
Rockhount ist offline  
Alt 22.08.2010, 17:11   #3 (permalink)
10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Buliwyf
 
Registriert seit: 11.03.2005
Ort: HH
Alter: 53
Beiträge: 1.930
Standard

Ich kann kein SQS...

Was passiert denn bislang? So wie ich das sehe ist der erste Fehler, dass Du mehr Leute aus dem Flieger abspringen lässt als da sind.

_j = count _aunits macht 10 Einheiten
Dein Loop durchläuft aber 11mal....

__________________
Buliwyf ist offline  
Alt 22.08.2010, 18:20   #4 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von TraX
 
Registriert seit: 20.06.2009
Alter: 52
Beiträge: 158
Standard

Hallo

@Rockhount
dürfte ich dieses Script für eine Mission nutzen ?
TraX ist offline  
Alt 22.08.2010, 18:31   #5 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Ja klar, wieso den nicht.
__________________
Rockhount ist offline  
Alt 22.08.2010, 18:55   #6 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von TraX
 
Registriert seit: 20.06.2009
Alter: 52
Beiträge: 158
Standard

ich Frage lieber mal nach...
in sqf bin ich nicht so bewandert, in sqs ists ja nicht schwer.

ein Deutsches sqf Tutorial wäre nicht schlecht

Danke

Geändert von TraX (22.08.2010 um 18:58 Uhr).
TraX ist offline  
Alt 22.08.2010, 20:34   #7 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Verbesserte Version:

Code:
private ["_drop","_start","_pilot1","_pilot2","_plane"];
_drop = _this select 0;
_pilot1 = _this select 1;
_pilot2 = _this select 2;
_plane = _this select 3;
_start = random 5;

_pilot1 moveInDriver _plane;
_pilot2 moveInCargo [_plane, 1]
ksk1 moveInCargo [_plane, 4];
ksk2 moveInCargo [_plane, 5];
ksk3 moveInCargo [_plane, 6];
ksk4 moveInCargo [_plane, 7];
ksk5 moveInCargo [_plane, 8];
ksk6 moveInCargo [_plane, 9];
ksk7 moveInCargo [_plane, 10];
ksk8 moveInCargo [_plane, 11];
ksk9 moveInCargo [_plane, 12];
ksk10 moveInCargo [_plane, 13];

if (_start==0) then {_drop setPos getPos d1};
if (_start==1) then {_drop setPos getPos d2};
if (_start==2) then {_drop setPos getPos d3};
if (_start==3) then {_drop setPos getPos d4};
if (_start==4) then {_drop setPos getPos d5};

_pilot action ["gear_up", vehicle _plane];
_plane flyinHeight 150; _plane setSpeedMode "limited"; _pilot doMove getPos _drop; if ((_plane distance _drop) <500) then { if (ksk1 in _plane) then {ksk1 action ["EJECT",vehicle _plane];}; sleep 0.5; if (ksk2 in _plane) then {ksk2 action ["EJECT",vehicle _plane];}; sleep 0.5; if (ksk3 in _plane) then {ksk3 action ["EJECT",vehicle _plane];}; sleep 0.5; if (ksk4 in _plane) then {ksk4 action ["EJECT",vehicle _plane];}; sleep 0.5; if (ksk5 in _plane) then {ksk5 action ["EJECT",vehicle _plane];}; sleep 0.5; if (ksk6 in _plane) then {ksk6 action ["EJECT",vehicle _plane];}; sleep 0.5; if (ksk7 in _plane) then {ksk7 action ["EJECT",vehicle _plane];}; sleep 0.5; if (ksk8 in _plane) then {ksk8 action ["EJECT",vehicle _plane];}; sleep 0.5; if (ksk9 in _plane) then {ksk9 action ["EJECT",vehicle _plane];}; sleep 0.5; if (ksk10 in _plane) then {ksk10 action ["EJECT",vehicle _plane];}; sleep 2; _plane setSpeedMode "FULL"; _pilot doMove getPos drop2; }; if ((_plane distance drop2) <400) then { deleteVehicle _plane; deleteUnit _pilot1; deleteUnit _pilot2; };
__________________
Rockhount ist offline  
Alt 23.08.2010, 12:45   #8 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von todyoungblood
 
Registriert seit: 29.05.2009
Ort: Reutlingen
Alter: 50
Beiträge: 134
todyoungblood eine Nachricht über AIM schicken
Standard

Rockhount Du bist mein sqf Held

Dank Dir werds gleich mal ausprobieren.

Gruß Tod
__________________

Langsam ist präzise.....und präzise ist schnell....
http://www.astore.de
http://www.astore-shop.de
http://www.voodoo-puppe.net
todyoungblood ist offline  
Alt 23.08.2010, 12:56   #9 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von todyoungblood
 
Registriert seit: 29.05.2009
Ort: Reutlingen
Alter: 50
Beiträge: 134
todyoungblood eine Nachricht über AIM schicken
Standard

Hast Du mir vieleicht auch ein SQF Tutorial wo mans lernen kann?
SQS is ja nich mehr so zeitgemäß
__________________

Langsam ist präzise.....und präzise ist schnell....
http://www.astore.de
http://www.astore-shop.de
http://www.voodoo-puppe.net
todyoungblood ist offline  
Alt 23.08.2010, 13:55   #10 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von todyoungblood
 
Registriert seit: 29.05.2009
Ort: Reutlingen
Alter: 50
Beiträge: 134
todyoungblood eine Nachricht über AIM schicken
Standard

Hab es gerade getestet.....aber irgendwie funktioniert das nicht.
Komischerweise steigen nur die Piloten ein und fliegen dann im Kreis.
Das Heli H dropzone hast Du in drop umbenannt oder?

Vieleicht kannst Du Dir ja mal die Missionsdatei anschauen.

Gruß Tod
__________________

Langsam ist präzise.....und präzise ist schnell....
http://www.astore.de
http://www.astore-shop.de
http://www.voodoo-puppe.net
todyoungblood ist offline  
Alt 23.08.2010, 15:10   #11 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Soweit bin ich bis jetzt gekommen:

Code:
private ["_drop","_start","_pilot1","_pilot2","_plane"];
_drop = _this select 0;
_pilot1 = _this select 1;
_pilot2 = _this select 2;
_plane = _this select 3;
_start = round(random 4);
publicVariable "_start";

_pilot1 moveInDriver _plane;
_pilot2 moveInCargo [_plane, 3];
ksk1 moveInCargo [_plane, 4];
ksk2 moveInCargo [_plane, 5];
ksk3 moveInCargo [_plane, 6];
ksk4 moveInCargo [_plane, 7];
ksk5 moveInCargo [_plane, 8];
ksk6 moveInCargo [_plane, 9];
ksk7 moveInCargo [_plane, 10];
ksk8 moveInCargo [_plane, 11];
ksk9 moveInCargo [_plane, 12];
ksk10 moveInCargo [_plane, 13];

if (_start == 0) then {_drop setPos [getPos d1 select 0, getPos d1 select 1, 0]};
if (_start == 1) then {_drop setPos [getPos d2 select 0, getPos d2 select 1, 0]};
if (_start == 2) then {_drop setPos [getPos d3 select 0, getPos d3 select 1, 0]};
if (_start == 3) then {_drop setPos [getPos d4 select 0, getPos d4 select 1, 0]};
if (_start == 4) then {_drop setPos [getPos d5 select 0, getPos d5 select 1, 0]};

_pilot action ["gear_up", vehicle _plane]; 
_plane flyinHeight 150; 
_plane setSpeedMode "limited";
_pilot doMove getPos _drop;

if ((_plane distance _drop) < 500) then {
ksk1 action ["EJECT", vehicle _plane];
sleep 0.5;
ksk2 action ["EJECT", vehicle _plane];
sleep 0.5;
ksk3 action ["EJECT", vehicle _plane];
sleep 0.5;
ksk4 action ["EJECT", vehicle _plane];
sleep 0.5;
ksk5 action ["EJECT", vehicle _plane];
sleep 0.5;
ksk6 action ["EJECT", vehicle _plane];
sleep 0.5;
ksk7 action ["EJECT", vehicle _plane];
sleep 0.5;
ksk8 action ["EJECT", vehicle _plane];
sleep 0.5;
ksk9 action ["EJECT", vehicle _plane];
sleep 0.5;
ksk10 action ["EJECT", vehicle _plane];
sleep 2;
_plane setSpeedMode "FULL";
_pilot doMove getPos drop2; 
};

if ((_plane distance drop2) <400) then {
deleteVehicle _plane; 
deleteUnit _pilot1; 
deleteUnit _pilot2; 
};
aber anscheinend greift weder das:

Code:
if (_start == 0) then {_drop setPos [getPos d1 select 0, getPos d1 select 1, 0]};
if (_start == 1) then {_drop setPos [getPos d2 select 0, getPos d2 select 1, 0]};
if (_start == 2) then {_drop setPos [getPos d3 select 0, getPos d3 select 1, 0]};
if (_start == 3) then {_drop setPos [getPos d4 select 0, getPos d4 select 1, 0]};
if (_start == 4) then {_drop setPos [getPos d5 select 0, getPos d5 select 1, 0]};
noch das hier richtig:

Code:
if ((_plane distance _drop) < 500) then {...};
__________________
Rockhount ist offline  
Alt 26.08.2010, 12:14   #12 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Habe hier noch ein seltenes SQF Tutorial gefunden.



MfG Rockhount
__________________
Rockhount ist offline  
Alt 02.09.2010, 17:39   #13 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von todyoungblood
 
Registriert seit: 29.05.2009
Ort: Reutlingen
Alter: 50
Beiträge: 134
todyoungblood eine Nachricht über AIM schicken
Standard

Dank Dir
Bist mit demn Script schon weiter gekommen?

Gruß Tod
__________________

Langsam ist präzise.....und präzise ist schnell....
http://www.astore.de
http://www.astore-shop.de
http://www.voodoo-puppe.net
todyoungblood ist offline  
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Einheiten abspringen lassen. comrade91 Editing & Scripting 7 23.05.2010 08:27


Kontakt - HX3.de - Archiv - Nach oben

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