mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
70 lines
1.8 KiB
Plaintext
70 lines
1.8 KiB
Plaintext
|
#include "script_component.hpp"
|
||
|
/*
|
||
|
* Author: Jonpas
|
||
|
* Changes camera mode based on vehicle type the player is currently occupying.
|
||
|
*
|
||
|
* Arguments:
|
||
|
* 0: Vehicle <OBJECT>
|
||
|
*
|
||
|
* Return Value:
|
||
|
* None
|
||
|
*
|
||
|
* Example:
|
||
|
* [vehicle] call ace_viewrestriction_fnc_selectiveChangeCamera
|
||
|
*
|
||
|
* Public: No
|
||
|
*/
|
||
|
|
||
|
params ["_cameraOn"];
|
||
|
|
||
|
// Foot
|
||
|
if (_cameraOn isKindOf "CAManBase") exitWith {
|
||
|
if (XGVAR(modeSelectiveFoot) == 1) exitWith {
|
||
|
_cameraOn switchCamera "INTERNAL";
|
||
|
};
|
||
|
if (XGVAR(modeSelectiveFoot) == 2) exitWith {
|
||
|
_cameraOn switchCamera "EXTERNAL";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
// Land Vehicles
|
||
|
if (_cameraOn isKindOf "LandVehicle") exitWith {
|
||
|
if (XGVAR(modeSelectiveLand) == 1) exitWith {
|
||
|
_cameraOn switchCamera "INTERNAL";
|
||
|
};
|
||
|
if (XGVAR(modeSelectiveLand) == 2) exitWith {
|
||
|
_cameraOn switchCamera "EXTERNAL";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
// UAVs (must be evaluated before Air Vehicles due to inheritance tree)
|
||
|
// Disabled - Reference comment in FUNC(canChangeCamera)
|
||
|
/*if (_cameraOn isKindOf "UAV" || {_cameraOn isKindOf "UAV_01_base_F"}) exitWith {
|
||
|
if (GVAR(modeSelectiveUAV) == 1) exitWith {
|
||
|
_cameraOn switchCamera "INTERNAL";
|
||
|
};
|
||
|
if (GVAR(modeSelectiveUAV) == 2) exitWith {
|
||
|
_cameraOn switchCamera "EXTERNAL";
|
||
|
};
|
||
|
};*/
|
||
|
|
||
|
// Air Vehicles (must be evaluated after UAVs due to inheritance tree)
|
||
|
if (_cameraOn isKindOf "Air") exitWith {
|
||
|
if (XGVAR(modeSelectiveAir) == 1) exitWith {
|
||
|
_cameraOn switchCamera "INTERNAL";
|
||
|
};
|
||
|
if (XGVAR(modeSelectiveAir) == 2) exitWith {
|
||
|
_cameraOn switchCamera "EXTERNAL";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
// Sea Vehicles
|
||
|
if (_cameraOn isKindOf "Ship") exitWith {
|
||
|
if (XGVAR(modeSelectiveSea) == 1) exitWith {
|
||
|
_cameraOn switchCamera "INTERNAL";
|
||
|
};
|
||
|
if (XGVAR(modeSelectiveSea) == 2) exitWith {
|
||
|
_cameraOn switchCamera "EXTERNAL";
|
||
|
};
|
||
|
};
|