mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
cf8c847811
* Added check for crew status If a one or more passenger in a vehicle are conscious, not captive and hostile to the interacting unit, the interactions (passenger, cargo) will not appear. * Update fnc_canInteractWithVehicleCrew.sqf * Update fnc_canInteractWithVehicleCrew.sqf
32 lines
897 B
Plaintext
32 lines
897 B
Plaintext
#include "..\script_component.hpp"
|
|
/*
|
|
* Author: johnb43
|
|
* Checks if a unit can interact with the vehicle crew inside.
|
|
*
|
|
* Arguments:
|
|
* 0: Player <OBJECT>
|
|
* 1: Vehicle <OBJECT>
|
|
*
|
|
* Return Value:
|
|
* Unit can interact with vehicle crew <BOOL>
|
|
*
|
|
* Example:
|
|
* [cursorObject, player] call ace_interaction_fnc_canInteractWithVehicleCrew
|
|
*
|
|
* Public: No
|
|
*/
|
|
|
|
params ["_player", "_vehicle"];
|
|
|
|
private _crew = crew _vehicle;
|
|
|
|
// If vehicle is empty, quit
|
|
if (_crew isEqualTo []) exitWith {true};
|
|
|
|
private _sidePlayer = side group _player;
|
|
|
|
(_crew select {_x != _player && {!unitIsUAV _x}}) findIf { // ignore player and UAV units
|
|
// Units must all be unconscious, captive or friendly (side group is used in case unit is captive/unconscious) for actions to show up
|
|
!captive _x && {lifeState _x in ["HEALTHY", "INJURED"]} && {[_sidePlayer, side group _x] call BIS_fnc_sideIsEnemy}
|
|
} == -1
|