DrPastah – User

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
(Update)
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{UserDefaultPage}}
== Helicopter Transport Script ==
== Helicopter Transport Script ==
<code>
 
    // The Landing needs to be a helipad object. You can use an invisible helipad.
<sqf>
    spawnTransportQRF = {
// The Landing needs to be a helipad object. You can use an invisible helipad.
        _spawn = _this select 0;
spawnTransportQRF = {
        _lz = _this select 1;
_spawn = _this select 0;
        _exit = _this select 2;
_lz = _this select 1;
        // Helicopter with pilots  
_exit = _this select 2;
        _heliGroup = createGroup WEST;
// Helicopter with pilots
        _heli = createVehicle ['RHS_UH1Y_UNARMED_d', _spawn, [], 300, 'FLY'];
_heliGroup = createGroup WEST;
        _pilot = _heliGroup createUnit ['rhsusf_usmc_marpat_d_helipilot', _spawn, [], 300, 'CAN_COLLIDE'];
_heli = createVehicle ['RHS_UH1Y_UNARMED_d', _spawn, [], 300, 'FLY'];
        _pilot setRank 'PRIVATE';
_pilot = _heliGroup createUnit ['rhsusf_usmc_marpat_d_helipilot', _spawn, [], 300, 'CAN_COLLIDE'];
        _copilot = _heliGroup createUnit ['rhsusf_usmc_marpat_d_helipilot', _spawn, [], 300, 'CAN_COLLIDE'];
_pilot setRank 'PRIVATE';
        _copilot setRank 'PRIVATE';
_copilot = _heliGroup createUnit ['rhsusf_usmc_marpat_d_helipilot', _spawn, [], 300, 'CAN_COLLIDE'];
        // Put pilots in chopper
_copilot setRank 'PRIVATE';
        _pilot moveInDriver _heli;
// Put pilots in chopper
        _copilot moveInAny _heli;
_pilot moveInDriver _heli;
        _heliGroup setFormation 'WEDGE';
_copilot moveInAny _heli;
        _heliGroup setBehaviour 'SAFE';
_heliGroup setFormation 'WEDGE';
        _heliGroup setSpeedMode 'NORMAL';
_heliGroup setBehaviour 'SAFE';
        // Fireteam
_heliGroup setSpeedMode 'NORMAL';
        _team = createGroup WEST;
// Fireteam
        _newUnit = _team createUnit ['rhsusf_usmc_marpat_d_teamleader', _spawn, [], 300, 'CAN_COLLIDE'];
_team = createGroup WEST;
        _newUnit setRank 'SERGEANT';
_newUnit = _team createUnit ['rhsusf_usmc_marpat_d_teamleader', _spawn, [], 300, 'CAN_COLLIDE'];
        _newUnit = _team createUnit ['rhsusf_usmc_marpat_d_autorifleman', _spawn, [], 300, 'CAN_COLLIDE'];
_newUnit setRank 'SERGEANT';
        _newUnit setRank 'CORPORAL';
_newUnit = _team createUnit ['rhsusf_usmc_marpat_d_autorifleman', _spawn, [], 300, 'CAN_COLLIDE'];
        _newUnit = _team createUnit ['rhsusf_usmc_marpat_d_rifleman_m4', _spawn, [], 300, 'CAN_COLLIDE'];
_newUnit setRank 'CORPORAL';
        _newUnit setRank 'PRIVATE';
_newUnit = _team createUnit ['rhsusf_usmc_marpat_d_rifleman_m4', _spawn, [], 300, 'CAN_COLLIDE'];
        _newUnit = _team createUnit ['rhsusf_usmc_marpat_d_riflemanat', _spawn, [], 300, 'CAN_COLLIDE'];
_newUnit setRank 'PRIVATE';
        _newUnit setRank 'PRIVATE';
_newUnit = _team createUnit ['rhsusf_usmc_marpat_d_riflemanat', _spawn, [], 300, 'CAN_COLLIDE'];
        // Put fireteam in chopper
_newUnit setRank 'PRIVATE';
        {
// Put fireteam in chopper
            _x moveInCargo _heli;
{
        } forEach units _team;
_x moveInCargo _heli;
        // Make sure all waypoints are deleted
} forEach units _team;
        while {(count (waypoints (_team) )) > 0} do
// Make sure all waypoints are deleted
        {
while {(count (waypoints (_team) )) > 0} do
            deleteWaypoint ((waypoints (_team) ) select 0);
{
        };
deleteWaypoint ((waypoints (_team) ) select 0);
        while {(count (waypoints (_heliGroup) )) > 0} do
};
        {
while {(count (waypoints (_heliGroup) )) > 0} do
            deleteWaypoint ((waypoints (_heliGroup) ) select 0);
{
        };
deleteWaypoint ((waypoints (_heliGroup)) select 0);
        // Tell them to land and unload
};
        _wp1 = _heliGroup addWaypoint [_lz, 0];
// Tell them to land and unload
        _wp1 setWaypointType "TR UNLOAD";
_wp1 = _heliGroup addWaypoint [_lz, 0];
        _wp2 = _team addWaypoint [_lz, 0];
_wp1 setWaypointType "TR UNLOAD";
        _wp2 setWaypointType "GETOUT";
_wp2 = _team addWaypoint [_lz, 0];
        _wp2 synchronizeWaypoint [_wp1];
_wp2 setWaypointType "GETOUT";
        _heliGroup addWaypoint [_exit, 0];
_wp2 synchronizeWaypoint [_wp1];
        _team setFormation 'WEDGE';
_heliGroup addWaypoint [_exit, 0];
        _team setCombatMode 'YELLOW';
_team setFormation 'WEDGE';
        _team setBehaviour 'AWARE';
_team setCombatMode 'YELLOW';
        _team setSpeedMode 'NORMAL';
_team setBehaviour 'AWARE';
        [_team, 1] setWaypointSpeed "NORMAL";
_team setSpeedMode 'NORMAL';
    };
[_team, 1] setWaypointSpeed "NORMAL";
    [spawn, lz, exit] call spawnTransportQRF;
};
</code>
 
[spawn, lz, exit] call spawnTransportQRF;
</sqf>

Latest revision as of 12:38, 6 April 2024

Helicopter Transport Script

// The Landing needs to be a helipad object. You can use an invisible helipad. spawnTransportQRF = { _spawn = _this select 0; _lz = _this select 1; _exit = _this select 2; // Helicopter with pilots _heliGroup = createGroup WEST; _heli = createVehicle ['RHS_UH1Y_UNARMED_d', _spawn, [], 300, 'FLY']; _pilot = _heliGroup createUnit ['rhsusf_usmc_marpat_d_helipilot', _spawn, [], 300, 'CAN_COLLIDE']; _pilot setRank 'PRIVATE'; _copilot = _heliGroup createUnit ['rhsusf_usmc_marpat_d_helipilot', _spawn, [], 300, 'CAN_COLLIDE']; _copilot setRank 'PRIVATE'; // Put pilots in chopper _pilot moveInDriver _heli; _copilot moveInAny _heli; _heliGroup setFormation 'WEDGE'; _heliGroup setBehaviour 'SAFE'; _heliGroup setSpeedMode 'NORMAL'; // Fireteam _team = createGroup WEST; _newUnit = _team createUnit ['rhsusf_usmc_marpat_d_teamleader', _spawn, [], 300, 'CAN_COLLIDE']; _newUnit setRank 'SERGEANT'; _newUnit = _team createUnit ['rhsusf_usmc_marpat_d_autorifleman', _spawn, [], 300, 'CAN_COLLIDE']; _newUnit setRank 'CORPORAL'; _newUnit = _team createUnit ['rhsusf_usmc_marpat_d_rifleman_m4', _spawn, [], 300, 'CAN_COLLIDE']; _newUnit setRank 'PRIVATE'; _newUnit = _team createUnit ['rhsusf_usmc_marpat_d_riflemanat', _spawn, [], 300, 'CAN_COLLIDE']; _newUnit setRank 'PRIVATE'; // Put fireteam in chopper { _x moveInCargo _heli; } forEach units _team; // Make sure all waypoints are deleted while {(count (waypoints (_team) )) > 0} do { deleteWaypoint ((waypoints (_team) ) select 0); }; while {(count (waypoints (_heliGroup) )) > 0} do { deleteWaypoint ((waypoints (_heliGroup)) select 0); }; // Tell them to land and unload _wp1 = _heliGroup addWaypoint [_lz, 0]; _wp1 setWaypointType "TR UNLOAD"; _wp2 = _team addWaypoint [_lz, 0]; _wp2 setWaypointType "GETOUT"; _wp2 synchronizeWaypoint [_wp1]; _heliGroup addWaypoint [_exit, 0]; _team setFormation 'WEDGE'; _team setCombatMode 'YELLOW'; _team setBehaviour 'AWARE'; _team setSpeedMode 'NORMAL'; [_team, 1] setWaypointSpeed "NORMAL"; }; [spawn, lz, exit] call spawnTransportQRF;