Otóż, w multiplayerowej misji w której to musimy zagarnąć wyspę dla frakcji dla której gramy jest pewna rzecz która mnie bardzo interesuje. Mianowicie chodzi mi o moment gdy zdobędziemy dowolną bazę. Gdy zdobędziemy bazę, po krótkim czasie niedaleko pojawia się śmigłowiec wraz z jednostkami na pokładzie po czym leci w okolicę bazy i desantuje te jednostki, następnie śmigłowiec leci trochę dalej i znika. Pogrzebałem trochę i znalazłem to:
Niestety nic kompletnie z tego nie rozumiem, czy mogę prosić kogoś kto mógłby mi powiedzieć jak zastosować to w edytorze, chcę żeby skrypt uruchamiał przez wyzwalacz.
Proszę o pomoc.
goto "start"
#loop_main
;hint "loop_main"
switch (_side) do { case east: {goto "loop_east"}; case west : {goto "loop_west"}; default {goto "end"};}
#loop_west
if (not (_pozice in West_base)) then {goto "end"}
if (_y > 30) then {deleteGroup _para; goto "start"}
_y = _y + 1
;hint format ["%1",_y]
~1
goto "loop_west"
#loop_east
if (not (_pozice in East_base)) then {goto "end"}
if (_y > 30) then {deleteGroup _para; goto "start"}
_y = _y + 1
;hint format ["%1",_y]
~1
goto "loop_east"
#start
? not local Al : goto "end"
_y = 0
_number = _this select 1
_pozice = AllBase select _number
if (_pozice in east_base) then {goto "east"} else {if (_pozice in west_base) then {goto "west"} else {goto "end"}}
#west
if (_pozice in sent_convoy_west) then {} else {sent_para_west = sent_para_west + [_pozice]}
_para = createGroup (west)
_pilot = createGroup (west)
_heli = createVehicle ["uh60mg", [(getMarkerPos "home_base_west" select 0)-100 +random 200,(getMarkerPos "home_base_west" select 1)-100 +random 200,(200 + random 100)], [], 0, "FLY"]
_heli setdir 90
_heli engineon true
_heli lock true
"SoldierWPilot" createUnit [getMarkerPos "home_base_west", _pilot]
(units _pilot select 0) moveInDriver _heli
(units _pilot select 0) setBehaviour "careless"
_heli flyInHeight 100
"SoldierWSaboteurPipe" createUnit [[1,1,1], _para]
"SoldierWSaboteurPipe" createUnit [[1,1,1], _para]
"SoldierWSaboteurPipe" createUnit [[1,1,1], _para]
"SoldierWSaboteurPipe" createUnit [[1,1,1], _para]
"SoldierWSaboteurPipe" createUnit [[1,1,1], _para]
"SoldierWSaboteurPipe" createUnit [[1,1,1], _para]
"SoldierWSaboteurPipe" createUnit [[1,1,1], _para]
"SoldierWSaboteurPipe" createUnit [[1,1,1], _para]
"SoldierWSaboteurPipe" createUnit [[1,1,1], _para]
{_x removemagazine "pipebomb"} foreach units _para
{_x removemagazine "pipebomb"} foreach units _para
{_x removemagazine "pipebomb"} foreach units _para
(units _para select 0) addmagazine "M136"
(units _para select 0) addmagazine "M136"
(units _para select 0) addweapon "m136"
(units _para select 1) addmagazine "M136"
(units _para select 1) addmagazine "M136"
(units _para select 1) addweapon "m136"
_side = side leader _para
goto "uni"
#east
if (_pozice in sent_para_east) then {} else {sent_para_east = sent_para_east + [_pozice]}
_para = createGroup (east)
_pilot = createGroup (east)
_heli = createVehicle ["Mi17_MG", [(getMarkerPos "home_base_east" select 0)-100 +random 200,(getMarkerPos "home_base_east" select 1)-100 +random 200,(200 + random 100)], [], 0, "FLY"]
_heli setdir 270
_heli engineon true
_heli lock true
"SoldierEPilot" createUnit [getMarkerPos "home_base_east", _pilot]
(units _pilot select 0) moveInDriver _heli
(units _pilot select 0) setBehaviour "careless"
_heli flyInHeight 100
"SoldierESaboteurPipe" createUnit [[1,1,1], _para]
"SoldierESaboteurPipe" createUnit [[1,1,1], _para]
"SoldierESaboteurPipe" createUnit [[1,1,1], _para]
"SoldierESaboteurPipe" createUnit [[1,1,1], _para]
"SoldierESaboteurPipe" createUnit [[1,1,1], _para]
"SoldierESaboteurPipe" createUnit [[1,1,1], _para]
"SoldierESaboteurPipe" createUnit [[1,1,1], _para]
"SoldierESaboteurPipe" createUnit [[1,1,1], _para]
"SoldierESaboteurPipe" createUnit [[1,1,1], _para]
{_x removemagazine "pipebomb"} foreach units _para
{_x removemagazine "pipebomb"} foreach units _para
{_x removemagazine "pipebomb"} foreach units _para
(units _para select 0) addmagazine "PG7V"
(units _para select 0) addmagazine "PG7V"
(units _para select 0) addweapon "RPG7V"
(units _para select 1) addmagazine "PG7V"
(units _para select 1) addmagazine "PG7V"
(units _para select 1) addweapon "RPG7V"
_side = side leader _para
#uni
{_x moveincargo _heli} forEach (units _para)
(driver _heli) commandMove (getPos _pozice)
;pracovni verze REMOVE
(driver _heli) doMove (getPos _pozice)
@ ((_heli distance _pozice) < 160) or (not alive _heli)
~1
if (not alive _heli) then {leader _para move [(getpos _pozice select 0)+1,(getpos _pozice select 1)+1,0]; driver _heli move getPos _pozice;switch (_side) do {case east: {hlaskaE_par = _number; publicvariable "hlaskaE_par"}; case west : {hlaskaW_par = _number; publicvariable "hlaskaW_par"};}; goto "loop_main"}
_aunits = units _para
_i = 0
_j = count _aunits
#Here
(_aunits select _i) action ["EJECT",_heli]
unassignvehicle (_aunits select _i)
_i=_i+1
~0.5
?_j>_i:goto "Here"
{unassignvehicle _x} forEach units _para
driver _heli commandMove [100,100,100]
;pracovni verze REMOVE
switch (_side) do {case west: {driver _heli doMove [0,5000,100]}; case east :{driver _heli doMove [15000,5000,100]};default {driver _heli doMove [100,100,100]};}
leader _para move [(getpos _pozice select 0)+1,(getpos _pozice select 1)+1,0]
@ ( (({(_x distance _pozice) < 80} count units _para) > 0) and (({alive _x} count units _para) > 0) and (({vehicle _x == _x} count units _para) == (count units _para)) ) or (({alive _x} count units _para) == 0)
;kdyz jsou zniceni a zakladna je stale vase, poslete nove paragany, kdyz jsou na zemi, blizko a je to nase, dejte moznost poslat konvoj
switch (_side) do { case east: {can_convoy_east = can_convoy_east + [_pozice]}; case west : {can_convoy_west = can_convoy_west + [_pozice]}; default {goto "end"};}
@ ((getpos _heli select 0) < 1000) or ((getpos _heli select 0) > 10000)
{deletevehicle _x} foreach (crew _heli)
deletevehicle _heli
#end
Niestety nic kompletnie z tego nie rozumiem, czy mogę prosić kogoś kto mógłby mi powiedzieć jak zastosować to w edytorze, chcę żeby skrypt uruchamiał przez wyzwalacz.
Proszę o pomoc.