ACE3/addons/sitting/functions/fnc_canSit.sqf

30 lines
800 B
Plaintext
Raw Normal View History

#include "script_component.hpp"
/*
* Author: Jonpas, vabene1111
* Check if the player can sit down.
*
* Arguments:
* 0: Seat <OBJECT>
* 1: Player <OBJECT>
* 2: Seat Position <NUMBER> (default: 0)
*
* Return Value:
* Can Sit Down <BOOL>
*
* Example:
* [cursorObject, player] call ace_sitting_fnc_canSit
*
* Public: No
*/
params ["_seat", "_player", ["_seatPos", 0]];
// Sitting enabled, not occupied and standing up (or not on a big slope)
XGVAR(enable) &&
{isNil {_player getVariable QGVAR(sittingStatus)}} &&
{
private _seatsClaimed = _seat getVariable [QGVAR(seatsClaimed), []];
_seatsClaimed isEqualTo [] || {!(_seatsClaimed select _seatPos)}
} &&
{round (vectorUp _seat select 0) == 0 && {round (vectorUp _seat select 1) == 0} && {round (vectorUp _seat select 2) == 1}}