mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
202 lines
7.6 KiB
Plaintext
202 lines
7.6 KiB
Plaintext
// by esteldunedain
|
|
#include "script_component.hpp"
|
|
|
|
if (!hasInterface) exitWith {};
|
|
|
|
// add keybinds
|
|
["ACE3 Weapons", QGVAR(SelectPistolNew), localize LSTRING(SelectPistol), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, ACE_player, ["isNotInside", "isNotEscorting"]] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false};
|
|
|
|
// Statement
|
|
[ACE_player, handgunWeapon ACE_player] call FUNC(selectWeaponMode);
|
|
false
|
|
},
|
|
{false},
|
|
[0, [false, false, false]], false] call CBA_fnc_addKeybind; //Unbound (was 1 Key)
|
|
|
|
["ACE3 Weapons", QGVAR(SelectRifleNew), localize LSTRING(SelectRifle), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, ACE_player, ["isNotInside", "isNotEscorting"]] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false};
|
|
|
|
// Statement
|
|
[ACE_player, primaryWeapon ACE_player] call FUNC(selectWeaponMode);
|
|
false
|
|
},
|
|
{false},
|
|
[0, [false, false, false]], false] call CBA_fnc_addKeybind; //Unbound (was 2 Key)
|
|
|
|
["ACE3 Weapons", QGVAR(SelectRifleMuzzleNew), localize LSTRING(SelectRifleMuzzle), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, ACE_player, ["isNotInside", "isNotEscorting"]] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false};
|
|
|
|
// Statement
|
|
[ACE_player, primaryWeapon ACE_player] call FUNC(selectWeaponMuzzle);
|
|
false
|
|
},
|
|
{false},
|
|
[0, [false, false, false]], false] call CBA_fnc_addKeybind; //Unbound (was 3 Key)
|
|
|
|
["ACE3 Weapons", QGVAR(SelectLauncherNew), localize LSTRING(SelectLauncher), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, ACE_player, ["isNotInside", "isNotEscorting"]] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false};
|
|
|
|
// Statement
|
|
[ACE_player, secondaryWeapon ACE_player] call FUNC(selectWeaponMode);
|
|
false
|
|
},
|
|
{false},
|
|
[0, [false, false, false]], false] call CBA_fnc_addKeybind; //Unbound (was 4 Key)
|
|
|
|
["ACE3 Weapons", QGVAR(SelectBinocularNew), localize LSTRING(SelectBinocular), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, ACE_player, ["isNotInside", "isNotEscorting"]] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false};
|
|
|
|
// Statement
|
|
[ACE_player, binocular ACE_player] call FUNC(selectWeaponMode);
|
|
false
|
|
},
|
|
{false},
|
|
[0, [false, false, false]], false] call CBA_fnc_addKeybind; //Unbound (was 5 Key)
|
|
|
|
["ACE3 Weapons", QGVAR(SelectGrenadeFrag), localize LSTRING(SelectGrenadeFrag), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, ACE_player, ["isNotInside", "isNotEscorting"]] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false};
|
|
|
|
// Statement
|
|
[ACE_player, 1] call FUNC(selectNextGrenade);
|
|
true
|
|
},
|
|
{false},
|
|
[7, [false, false, false]], false] call CBA_fnc_addKeybind; //6 Key
|
|
|
|
["ACE3 Weapons", QGVAR(SelectGrenadeOther), localize LSTRING(SelectGrenadeOther), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, ACE_player, ["isNotInside", "isNotEscorting"]] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false};
|
|
|
|
// Statement
|
|
[ACE_player, 2] call FUNC(selectNextGrenade);
|
|
true
|
|
},
|
|
{false},
|
|
[8, [false, false, false]], false] call CBA_fnc_addKeybind; //7 Key
|
|
|
|
["ACE3 Weapons", QGVAR(HolsterWeapon), localize LSTRING(HolsterWeapon), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, ACE_player, ["isNotInside", "isNotEscorting"]] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !([ACE_player] call EFUNC(common,canUseWeapon)) exitWith {false};
|
|
|
|
// Statement
|
|
if ((currentWeapon ACE_player) != "") then {
|
|
[ACE_player] call FUNC(putWeaponAway);
|
|
} else {
|
|
private _weapon = switch (true) do {
|
|
case ((primaryWeapon ACE_player) != ""): {primaryWeapon ACE_player};
|
|
case ((handgunWeapon ACE_player) != ""): {handgunWeapon ACE_player};
|
|
case ((secondaryWeapon ACE_player) != ""): {secondaryWeapon ACE_player};
|
|
default {""};
|
|
};
|
|
if (_weapon != "") then {ACE_player selectWeapon _weapon};
|
|
};
|
|
true
|
|
},
|
|
{false},
|
|
[11, [false, false, false]], false] call CBA_fnc_addKeybind; //0 Key
|
|
|
|
["ACE3 Vehicles", QGVAR(EngineOn), localize LSTRING(EngineOn), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, vehicle ACE_player, []] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !((ACE_player != vehicle ACE_player) && {ACE_player == driver vehicle ACE_player} && {!isEngineOn vehicle ACE_player}) exitWith {false};
|
|
|
|
// Statement
|
|
vehicle ACE_player engineOn true;
|
|
true
|
|
},
|
|
{false},
|
|
[3, [false, false, false]], false] call CBA_fnc_addKeybind; //2 Key
|
|
|
|
["ACE3 Vehicles", QGVAR(EngineOff), localize LSTRING(EngineOff), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, vehicle ACE_player, []] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !(ACE_player != vehicle ACE_player && {ACE_player == driver vehicle ACE_player} && {isEngineOn vehicle ACE_player}) exitWith {false};
|
|
|
|
// Statement
|
|
vehicle ACE_player engineOn false;
|
|
true
|
|
},
|
|
{false},
|
|
[2, [false, false, false]], false] call CBA_fnc_addKeybind; //1 Key
|
|
|
|
["ACE3 Vehicles", QGVAR(SelectMainGunNew), localize LSTRING(SelectMainGun), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, vehicle ACE_player, []] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !(ACE_player != vehicle ACE_player) exitWith {false};
|
|
|
|
// Statement
|
|
[ACE_player, vehicle ACE_player, 0] call FUNC(selectWeaponVehicle);
|
|
true
|
|
},
|
|
{false},
|
|
[0, [false, false, false]], false] call CBA_fnc_addKeybind; //Unbound (was 3 Key)
|
|
|
|
["ACE3 Vehicles", QGVAR(SelectMachineGunNew), localize LSTRING(SelectMachineGun), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, vehicle ACE_player, []] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !(ACE_player != vehicle ACE_player) exitWith {false};
|
|
|
|
// Statement
|
|
[ACE_player, vehicle ACE_player, 1] call FUNC(selectWeaponVehicle);
|
|
true
|
|
},
|
|
{false},
|
|
[0, [false, false, false]], false] call CBA_fnc_addKeybind; //Unbound (was 4 Key)
|
|
|
|
["ACE3 Vehicles", QGVAR(SelectMissilesNew), localize LSTRING(SelectMissiles), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, vehicle ACE_player, []] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !(ACE_player != vehicle ACE_player) exitWith {false};
|
|
|
|
// Statement
|
|
[ACE_player, vehicle ACE_player, 2] call FUNC(selectWeaponVehicle);
|
|
true
|
|
},
|
|
{false},
|
|
[0, [false, false, false]], false] call CBA_fnc_addKeybind; //Unbound (was 5 Key)
|
|
|
|
["ACE3 Vehicles", QGVAR(FireSmokeLauncher), localize LSTRING(FireSmokeLauncher), {
|
|
// Conditions: canInteract
|
|
if !([ACE_player, vehicle ACE_player, []] call EFUNC(common,canInteractWith)) exitWith {false};
|
|
// Conditions: specific
|
|
if !(ACE_player != vehicle ACE_player && {ACE_player == commander vehicle ACE_player}) exitWith {false};
|
|
|
|
// Statement
|
|
[vehicle ACE_player] call FUNC(fireSmokeLauncher);
|
|
true
|
|
},
|
|
{false},
|
|
[10, [false, false, false]], false] call CBA_fnc_addKeybind; //9 Key
|
|
|
|
|
|
// Register fire event handler
|
|
["firedPlayer", DFUNC(throwGrenade)] call EFUNC(common,addEventHandler);
|