mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
pull master into branch
This commit is contained in:
commit
9e2eaa96e1
@ -1,39 +0,0 @@
|
||||
/*
|
||||
* Author: KoffeinFlummi
|
||||
*
|
||||
* Initializes vars needed for scope adjustment and watches for scope changes.
|
||||
*
|
||||
* Arguments:
|
||||
* None
|
||||
*
|
||||
* Return Value:
|
||||
* None
|
||||
*/
|
||||
AGM_Scopes_fadeScript = scriptNull;
|
||||
|
||||
// show overlay after changing weapon/optic
|
||||
0 spawn {
|
||||
_layer = ["AGM_Scope_Zeroing"] call BIS_fnc_rscLayer;
|
||||
while {True} do {
|
||||
waitUntil {[AGM_player, 0,0] call AGM_Scopes_fnc_canAdjustScope};
|
||||
_layer cutRsc ["AGM_Scope_Zeroing", "PLAIN", 0, false];
|
||||
sleep 3;
|
||||
_layer cutFadeOut 2;
|
||||
|
||||
_weapon = currentWeapon AGM_player;
|
||||
_optics = [AGM_player] call AGM_Scopes_fnc_getOptics;
|
||||
waitUntil {sleep 0.05; !(_optics isEqualTo ([AGM_player] call AGM_Scopes_fnc_getOptics)) or (currentWeapon AGM_player != _weapon)};
|
||||
};
|
||||
};
|
||||
|
||||
// instantly hide when scoping in
|
||||
0 spawn {
|
||||
_layer = ["AGM_Scope_Zeroing"] call BIS_fnc_rscLayer;
|
||||
while {True} do {
|
||||
waitUntil {sleep 0.05; cameraView == "GUNNER"};
|
||||
if !(isNull AGM_Scopes_fadeScript) then {
|
||||
terminate AGM_Scopes_fadeScript;
|
||||
};
|
||||
_layer cutText ["", "PLAIN", 0];
|
||||
};
|
||||
};
|
@ -1,238 +0,0 @@
|
||||
class CfgPatches {
|
||||
class AGM_Scopes {
|
||||
units[] = {};
|
||||
weapons[] = {};
|
||||
requiredVersion = 0.60;
|
||||
requiredAddons[] = {AGM_Core};
|
||||
version = "0.95";
|
||||
versionStr = "0.95";
|
||||
versionAr[] = {0,95,0};
|
||||
author[] = {"KoffeinFlummi"};
|
||||
authorUrl = "https://github.com/KoffeinFlummi";
|
||||
};
|
||||
};
|
||||
|
||||
class CfgFunctions {
|
||||
class AGM_Scopes {
|
||||
class AGM_Scopes {
|
||||
file = "AGM_Scopes\functions";
|
||||
class adjustScope;
|
||||
class canAdjustScope;
|
||||
class firedEH;
|
||||
class getOptics;
|
||||
class hideZeroing;
|
||||
class inventoryCheck;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_PostInit_EventHandlers {
|
||||
class AGM_Scopes {
|
||||
clientInit = "call compile preprocessFileLineNumbers '\AGM_Scopes\clientInit.sqf';";
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_Fired_EventHandlers {
|
||||
class CAManBase {
|
||||
class AGM_Scopes {
|
||||
clientFired = "if (_this select 0 == AGM_player) then {_this call AGM_Scopes_fnc_firedEH};";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_Take_EventHandlers {
|
||||
class CAManBase {
|
||||
class AGM_Scopes {
|
||||
clientTake = "if (_this select 0 == AGM_player) then {_this call AGM_Scopes_fnc_inventoryCheck};";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_Put_EventHandlers {
|
||||
class CAManBase {
|
||||
class AGM_Scopes {
|
||||
clientPut = "if (_this select 0 == AGM_player) then {_this call AGM_Scopes_fnc_inventoryCheck};";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_InitPost_EventHandlers {
|
||||
class CAManBase {
|
||||
class AGM_Scopes {
|
||||
init = "if (_this select 0 == call AGM_Core_fnc_player) then {_this call AGM_Scopes_fnc_inventoryCheck};";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_Respawn_EventHandlers {
|
||||
class CAManBase {
|
||||
class AGM_Scopes {
|
||||
respawn = "if (_this select 0 == call AGM_Core_fnc_player) then {_this call AGM_Scopes_fnc_inventoryCheck};";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class AGM_Core_Default_Keys {
|
||||
class adjustScopeUp {
|
||||
displayName = "$STR_AGM_Scopes_AdjustUp";
|
||||
condition = "[_player] call AGM_Scopes_fnc_inventoryCheck; [_player, 0, 0.1] call AGM_Scopes_fnc_canAdjustScope";
|
||||
statement = "[_player, 0, 0.1] call AGM_Scopes_fnc_adjustScope;";
|
||||
allowHolding = 1;
|
||||
key = 201;
|
||||
shift = 0;
|
||||
control = 0;
|
||||
alt = 0;
|
||||
};
|
||||
class adjustScopeDown: adjustScopeUp {
|
||||
displayName = "$STR_AGM_Scopes_AdjustDown";
|
||||
condition = "[_player] call AGM_Scopes_fnc_inventoryCheck; [_player, 0, -0.1] call AGM_Scopes_fnc_canAdjustScope";
|
||||
statement = "[_player, 0, -0.1] call AGM_Scopes_fnc_adjustScope;";
|
||||
key = 209;
|
||||
};
|
||||
class adjustScopeLeft: adjustScopeUp {
|
||||
displayName = "$STR_AGM_Scopes_AdjustLeft";
|
||||
condition = "[_player] call AGM_Scopes_fnc_inventoryCheck; [_player, -0.1, 0] call AGM_Scopes_fnc_canAdjustScope";
|
||||
statement = "[_player, -0.1, 0] call AGM_Scopes_fnc_adjustScope;";
|
||||
key = 209;
|
||||
control = 1;
|
||||
};
|
||||
class adjustScopeRight: adjustScopeLeft {
|
||||
displayName = "$STR_AGM_Scopes_AdjustRight";
|
||||
condition = "[_player] call AGM_Scopes_fnc_inventoryCheck; [_player, 0.1, 0] call AGM_Scopes_fnc_canAdjustScope";
|
||||
statement = "[_player, 0.1, 0] call AGM_Scopes_fnc_adjustScope;";
|
||||
key = 201;
|
||||
};
|
||||
};
|
||||
|
||||
class CfgSounds {
|
||||
class AGM_Sound_Click;
|
||||
class AGM_Scopes_Click_1: AGM_Sound_Click {
|
||||
sound[] = {"\AGM_Scopes\sounds\agm_scopes_click.wav", 3, 2, 200};
|
||||
};
|
||||
class AGM_Scopes_Click_2: AGM_Scopes_Click_1 {
|
||||
sound[] = {"\AGM_Scopes\sounds\agm_scopes_click.wav", 3.3, 1.8, 200};
|
||||
};
|
||||
class AGM_Scopes_Click_3: AGM_Scopes_Click_1 {
|
||||
sound[] = {"\AGM_Scopes\sounds\agm_scopes_click.wav", 2.8, 2.3, 200};
|
||||
};
|
||||
};
|
||||
|
||||
class CfgWeapons {
|
||||
class ItemCore;
|
||||
class InventoryOpticsItem_Base_F;
|
||||
|
||||
class optic_LRPS: ItemCore {
|
||||
AGM_ScopeAdjust_Horizontal[] = {-50,50};
|
||||
AGM_ScopeAdjust_Vertical[] = {-70,70};
|
||||
class ItemInfo: InventoryOpticsItem_Base_F {
|
||||
class OpticsModes {
|
||||
class Snip {
|
||||
discreteDistance[] = {1};
|
||||
discreteDistanceInitIndex = 0;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class optic_SOS: ItemCore {
|
||||
AGM_ScopeAdjust_Horizontal[] = {-50,50};
|
||||
AGM_ScopeAdjust_Vertical[] = {-60,60};
|
||||
class ItemInfo: InventoryOpticsItem_Base_F {
|
||||
class OpticsModes {
|
||||
class Snip {
|
||||
discreteDistance[] = {1};
|
||||
discreteDistanceInitIndex = 0;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class optic_DMS: ItemCore {
|
||||
AGM_ScopeAdjust_Horizontal[] = {-40,40};
|
||||
AGM_ScopeAdjust_Vertical[] = {-40,40};
|
||||
class ItemInfo: InventoryOpticsItem_Base_F {
|
||||
class OpticsModes {
|
||||
class Snip {
|
||||
discreteDistance[] = {1};
|
||||
discreteDistanceInitIndex = 0;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class RscTitles {
|
||||
class AGM_Scope_Zeroing {
|
||||
idd = -1;
|
||||
movingEnable = 0;
|
||||
enableSimulation = 1;
|
||||
enableDisplay = 1;
|
||||
onLoad = "_this spawn compile preprocessFileLineNumbers '\AGM_Scopes\scripts\zeroingOnLoad.sqf'; uiNamespace setVariable ['AGM_Scope_Debug', _this];";
|
||||
duration = 1e+011;
|
||||
fadein = 0;
|
||||
fadeout = 0;
|
||||
name = "AGM_Scope_Zeroing";
|
||||
class RscPicture;
|
||||
class RscText;
|
||||
class controls {
|
||||
class AGM_Scope_Zeroing_BG: RscPicture {
|
||||
idc = 925001;
|
||||
type = 0;
|
||||
text = "AGM_Scopes\UI\scopes_bg.paa";
|
||||
style = 48 + 0x800;
|
||||
scale = 1;
|
||||
sizeEx = 1;
|
||||
font = "PuristaMedium";
|
||||
colorText[] = {1,1,1,1};
|
||||
colorBackground[] = {1,1,1,1};
|
||||
shadow = 1;
|
||||
|
||||
x = (0.5-0.4/2) * safezoneW + safezoneX;
|
||||
y = 0 * safezoneH + safezoneY;
|
||||
w = 0.4 * safezoneW;
|
||||
h = 0.3 * safezoneH;
|
||||
};
|
||||
class AGM_Scope_Zeroing_Vertical: RscText {
|
||||
idc = 925002;
|
||||
type = 0;
|
||||
style = 2;
|
||||
sizeEx = 0.04;
|
||||
lineSpacing = 1;
|
||||
font = "PuristaMedium";
|
||||
text = "";
|
||||
colorText[] = {1,1,1, 0.9};
|
||||
colorBackground[] = {1,0,0, 0};
|
||||
shadow = 0;
|
||||
|
||||
x = (0.5-0.4/2 + 0.45*0.4) * safezoneW + safezoneX;
|
||||
y = (0 + 0.19*0.3) * safezoneH + safezoneY;
|
||||
w = 0.04 * safezoneW;
|
||||
h = 0.025 * safezoneH;
|
||||
};
|
||||
class AGM_Scope_Zeroing_Horizontal: RscText {
|
||||
idc = 925003;
|
||||
type = 0;
|
||||
style = 0;
|
||||
sizeEx = 0.04;
|
||||
lineSpacing = 1;
|
||||
font = "PuristaMedium";
|
||||
text = "";
|
||||
colorText[] = {1,1,1, 0.9};
|
||||
colorBackground[] = {1,0,0, 0};
|
||||
shadow = 0;
|
||||
|
||||
x = (0.5-0.4/2 + 0.6*0.4) * safezoneW + safezoneX;
|
||||
y = (0 + 0.47*0.3) * safezoneH + safezoneY;
|
||||
w = 0.04 * safezoneW;
|
||||
h = 0.025 * safezoneH;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class RscInGameUI {
|
||||
class RscUnitInfo;
|
||||
class RscWeaponZeroing: RscUnitInfo {
|
||||
onLoad = "[""onLoad"",_this,""RscUnitInfo"",'IGUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf""; uiNamespace setVariable ['AGM_dlgWeaponZeroing', _this select 0];";
|
||||
};
|
||||
};
|
@ -1,67 +0,0 @@
|
||||
/*
|
||||
* Author: KoffeinFlummi
|
||||
*
|
||||
* Changes the adjustment for the current scope
|
||||
*
|
||||
* Arguments:
|
||||
* 0: Horizontal adjustment
|
||||
* 1: Vertical adjustment
|
||||
*
|
||||
* Return Value:
|
||||
* True
|
||||
*/
|
||||
|
||||
private ["_unit", "_weapons", "_zeroing", "_pitchbankyaw", "_pitch", "_bank", "_yaw", "_hint"];
|
||||
|
||||
_unit = _this select 0;
|
||||
|
||||
_weapons = [
|
||||
primaryWeapon _unit,
|
||||
secondaryWeapon _unit,
|
||||
handgunWeapon _unit
|
||||
];
|
||||
|
||||
if (isNil "AGM_Scopes_Adjustment") then {
|
||||
AGM_Scopes_Adjustment = [[0,0], [0,0], [0,0]];
|
||||
};
|
||||
|
||||
_zeroing = AGM_Scopes_Adjustment select (_weapons find (currentWeapon _unit));
|
||||
_zeroing set [0, (round (((_zeroing select 0) + (_this select 1)) * 10)) / 10];
|
||||
_zeroing set [1, (round (((_zeroing select 1) + (_this select 2)) * 10)) / 10];
|
||||
|
||||
AGM_Scopes_Adjustment set [_weapons find (currentWeapon _unit), _zeroing];
|
||||
|
||||
playSound (["AGM_Scopes_Click_1", "AGM_Scopes_Click_2", "AGM_Scopes_Click_3"] select floor random 3);
|
||||
|
||||
// slightly rotate the player if looking through optic
|
||||
if (cameraView == "GUNNER") then {
|
||||
_pitchbankyaw = [_unit] call AGM_Core_fnc_getPitchBankYaw;
|
||||
// these are not exact mil-to-degree conversions, but instead chosen
|
||||
// to minimize the effect of rounding errors
|
||||
_pitch = (_pitchbankyaw select 0) + ((_this select 2) * -0.04);
|
||||
_bank = _pitchbankyaw select 1;
|
||||
_yaw = (_pitchbankyaw select 2) + ((_this select 1) * -0.04);
|
||||
[_unit, _pitch, _bank, _yaw] call AGM_Core_fnc_setPitchBankYaw;
|
||||
};
|
||||
|
||||
_display = uiNamespace getVariable ["AGM_Scopes_ZeroingDisplay", displayNull];
|
||||
if !(isNull _display) then {
|
||||
_vertical = _display displayCtrl 925002;
|
||||
_horizontal = _display displayCtrl 925003;
|
||||
_vertical ctrlSetText (str (_zeroing select 1));
|
||||
_horizontal ctrlSetText (str (_zeroing select 0));
|
||||
};
|
||||
|
||||
if (!isNull (missionNamespace getVariable ["AGM_Scopes_fadeScript", scriptNull])) then {
|
||||
terminate AGM_Scopes_fadeScript;
|
||||
};
|
||||
if (cameraView != "GUNNER") then {
|
||||
AGM_Scopes_fadeScript = 0 spawn {
|
||||
_layer = ["AGM_Scope_Zeroing"] call BIS_fnc_rscLayer;
|
||||
_layer cutRsc ["AGM_Scope_Zeroing", "PLAIN", 0, false];
|
||||
sleep 3;
|
||||
_layer cutFadeOut 2;
|
||||
};
|
||||
};
|
||||
|
||||
true
|
@ -1,25 +0,0 @@
|
||||
// by commy2
|
||||
|
||||
private ["_state", "_ctrl"];
|
||||
|
||||
_state = _this select 0;
|
||||
|
||||
disableSerialization;
|
||||
_ctrl = (uiNamespace getVariable ['AGM_dlgWeaponZeroing', displayNull]) displayCtrl 168;
|
||||
|
||||
if (_state) then {
|
||||
_ctrl ctrlSetPosition [0,0,0,0];
|
||||
} else {
|
||||
private "_config";
|
||||
|
||||
_config = configFile >> "RscInGameUI" >> "RscWeaponZeroing" >> "CA_Zeroing";
|
||||
|
||||
_ctrl ctrlSetPosition [
|
||||
getNumber (_config >> "x"),
|
||||
getNumber (_config >> "y"),
|
||||
getNumber (_config >> "w"),
|
||||
getNumber (_config >> "h")
|
||||
];
|
||||
};
|
||||
|
||||
_ctrl ctrlCommit 0;
|
@ -1,21 +0,0 @@
|
||||
// by KoffeinFlummi / commy2
|
||||
|
||||
private "_new";
|
||||
|
||||
_new = _this call AGM_Scopes_fnc_getOptics;
|
||||
|
||||
if (isNil "AGM_Scopes_Optics") then {
|
||||
AGM_Scopes_Optics = ["", "", ""];
|
||||
};
|
||||
|
||||
if (isNil "AGM_Scopes_Adjustment") then {
|
||||
AGM_Scopes_Adjustment = [[0,0], [0,0], [0,0]];
|
||||
};
|
||||
|
||||
{
|
||||
if (_new select _forEachIndex != _x) then {
|
||||
AGM_Scopes_Adjustment set [_forEachIndex, [0,0]];
|
||||
};
|
||||
} forEach AGM_Scopes_Optics;
|
||||
|
||||
AGM_Scopes_Optics = _new;
|
@ -1,18 +0,0 @@
|
||||
disableSerialization;
|
||||
|
||||
_display = _this select 0;
|
||||
uiNamespace setVariable ["AGM_Scopes_ZeroingDisplay", _display];
|
||||
_vertical = _display displayCtrl 925002;
|
||||
_horizontal = _display displayCtrl 925003;
|
||||
|
||||
_weapons = [
|
||||
primaryWeapon player,
|
||||
secondaryWeapon player,
|
||||
handgunWeapon player
|
||||
];
|
||||
|
||||
if ((currentWeapon player) in _weapons) then {
|
||||
_zeroing = AGM_Scopes_Adjustment select (_weapons find (currentWeapon player));
|
||||
_horizontal ctrlSetText (str (_zeroing select 0));
|
||||
_vertical ctrlSetText (str (_zeroing select 1));
|
||||
};
|
@ -1,20 +0,0 @@
|
||||
class CfgFunctions {
|
||||
class CSE {
|
||||
class eventhandlers {
|
||||
file = "cse\cse_f_eh\functions";
|
||||
class initialization_f {
|
||||
preInit = 1;
|
||||
postInit = 1;
|
||||
recompile = 1;
|
||||
};
|
||||
class eventHandler_f { recompile = 1; };
|
||||
class HandleHeal_EH_F { recompile = 1; };
|
||||
class HandleDamage_EH_F { recompile = 1; };
|
||||
class customEventHandler_F { recompile = 1; };
|
||||
class getCustomResults_F { recompile = 1; };
|
||||
class setEventhandler_f { recompile = 1; };
|
||||
class removeEventHandler_f { recompile = 1; };
|
||||
class addModuleEventHandlers_f { recompile = 1; };
|
||||
};
|
||||
};
|
||||
};
|
@ -1,180 +0,0 @@
|
||||
class CfgVehicles {
|
||||
class All;
|
||||
class AllVehicles : All {
|
||||
class EventHandlers {
|
||||
handleDamage = "[_this,'handleDamage'] call CSE_fnc_HandleDamage_EH_F;";
|
||||
HandleHeal = "[_this,'handleHeal'] call CSE_fnc_HandleHeal_EH_F;";
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
|
||||
class Man;
|
||||
class CAManBase: Man {
|
||||
class EventHandlers {
|
||||
handleDamage = "[_this,'handleDamage'] call CSE_fnc_HandleDamage_EH_F;";
|
||||
HandleHeal = "[_this,'handleHeal'] call CSE_fnc_HandleHeal_EH_F;";
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
|
||||
class SoldierGB : CAManBase{
|
||||
class EventHandlers {
|
||||
handleDamage = "[_this,'handleDamage'] call CSE_fnc_HandleDamage_EH_F;";
|
||||
HandleHeal = "[_this,'handleHeal'] call CSE_fnc_HandleHeal_EH_F;";
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
class SoldierWB : CAManBase {
|
||||
class EventHandlers {
|
||||
handleDamage = "[_this,'handleDamage'] call CSE_fnc_HandleDamage_EH_F;";
|
||||
HandleHeal = "[_this,'handleHeal'] call CSE_fnc_HandleHeal_EH_F;";
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
class SoldierEB : CAManBase{
|
||||
class EventHandlers {
|
||||
handleDamage = "[_this,'handleDamage'] call CSE_fnc_HandleDamage_EH_F;";
|
||||
HandleHeal = "[_this,'handleHeal'] call CSE_fnc_HandleHeal_EH_F;";
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
class B_Soldier_base_F: SoldierWB {
|
||||
class EventHandlers {
|
||||
handleDamage = "[_this,'handleDamage'] call CSE_fnc_HandleDamage_EH_F;";
|
||||
HandleHeal = "[_this,'handleHeal'] call CSE_fnc_HandleHeal_EH_F;";
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
class B_Soldier_03_f: B_Soldier_base_F {
|
||||
class EventHandlers {
|
||||
handleDamage = "[_this,'handleDamage'] call CSE_fnc_HandleDamage_EH_F;";
|
||||
HandleHeal = "[_this,'handleHeal'] call CSE_fnc_HandleHeal_EH_F;";
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
|
||||
class LandVehicle;
|
||||
class Car: LandVehicle {
|
||||
class EventHandlers {
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
class Tank: LandVehicle {
|
||||
class EventHandlers {
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
|
||||
class Air;
|
||||
class Helicopter: Air {
|
||||
class EventHandlers {
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
class Plane: Air {
|
||||
class EventHandlers {
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
class Ship: AllVehicles {
|
||||
class EventHandlers {
|
||||
local = "_this call cse_eh_cba_compat_local;";
|
||||
killed = "_this call cse_eh_cba_compat_Killed";
|
||||
firedNear = "_this call cse_eh_cba_compat_FiredNear";
|
||||
fired = "_this call cse_eh_cba_compat_Fired";
|
||||
respawn = "_this call cse_eh_cba_compat_Respawn";
|
||||
Take = "_this call cse_eh_cba_compat_Take";
|
||||
Put = "_this call cse_eh_cba_compat_Put";
|
||||
GetIn = "_this call cse_eh_cba_compat_GetIn";
|
||||
GetOut = "_this call cse_eh_cba_compat_GetOut";
|
||||
};
|
||||
};
|
||||
};
|
@ -1,13 +0,0 @@
|
||||
|
||||
class Combat_Space_Enhancement {
|
||||
class EventHandlers {
|
||||
class PreInit_EventHandlers {
|
||||
class cse_xeh_fired_eventHandler_Compat {
|
||||
init = "call compile preprocessFile 'cse\cse_f_eh\cba_compat_init.sqf';";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class CustomResults {};
|
||||
class CustomEventHandlers {};
|
||||
};
|
@ -1,103 +0,0 @@
|
||||
class Extended_Fired_Eventhandlers
|
||||
{
|
||||
class AllVehicles
|
||||
{
|
||||
class cse_CBA_COMPAT_XEH
|
||||
{
|
||||
Fired = "[_this,'fired'] call cse_fnc_eventHandler_F;";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_HandleDamage_Eventhandlers
|
||||
{
|
||||
class AllVehicles
|
||||
{
|
||||
class cse_CBA_COMPAT_XEH
|
||||
{
|
||||
handleDamage = "[_this,'handleDamage'] call CSE_fnc_HandleDamage_EH_F;";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_FiredNear_Eventhandlers
|
||||
{
|
||||
class AllVehicles
|
||||
{
|
||||
class cse_CBA_COMPAT_XEH
|
||||
{
|
||||
FiredNear = "[_this,'firedNear'] call cse_fnc_eventHandler_F;";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_Killed_Eventhandlers
|
||||
{
|
||||
class AllVehicles
|
||||
{
|
||||
class cse_CBA_COMPAT_XEH
|
||||
{
|
||||
Killed = "[_this,'killed'] call cse_fnc_eventHandler_F;";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_Local_Eventhandlers
|
||||
{
|
||||
class AllVehicles
|
||||
{
|
||||
class cse_CBA_COMPAT_XEH
|
||||
{
|
||||
Local = "[_this,'local'] call cse_fnc_eventHandler_F;";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_Respawn_Eventhandlers
|
||||
{
|
||||
class AllVehicles
|
||||
{
|
||||
class cse_CBA_COMPAT_XEH {
|
||||
Respawn = "[_this,'respawn'] call cse_fnc_eventHandler_F;";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_Take_Eventhandlers
|
||||
{
|
||||
class AllVehicles
|
||||
{
|
||||
class cse_CBA_COMPAT_XEH {
|
||||
Take = "[_this,'take'] call cse_fnc_eventHandler_F;";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_Put_Eventhandlers
|
||||
{
|
||||
class AllVehicles
|
||||
{
|
||||
class cse_CBA_COMPAT_XEH {
|
||||
Put = "[_this,'put'] call cse_fnc_eventHandler_F;";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class Extended_GetIn_Eventhandlers
|
||||
{
|
||||
class AllVehicles
|
||||
{
|
||||
class cse_CBA_COMPAT_XEH {
|
||||
GetIn = "[_this,'getIn'] call cse_fnc_eventHandler_F;";
|
||||
};
|
||||
};
|
||||
};
|
||||
class Extended_GetOut_EventHandlers
|
||||
{
|
||||
class AllVehicles
|
||||
{
|
||||
class cse_CBA_COMPAT_XEH {
|
||||
GetOut = "[_this,'getOut'] call cse_fnc_eventHandler_F;";
|
||||
};
|
||||
};
|
||||
};
|
@ -1,19 +0,0 @@
|
||||
/**
|
||||
* cba_compat_init.sqf
|
||||
* @Descr: CBA compatability wrapper.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return: void
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
cse_eh_cba_compat_local = if (!isClass (configFile >> 'CfgPatches' >> 'CBA_main')) then { {[_this,'local'] call cse_fnc_eventHandler_F;} } else {{}};
|
||||
cse_eh_cba_compat_Respawn = if (!isClass (configFile >> 'CfgPatches' >> 'CBA_main')) then { {[_this,'respawn'] call cse_fnc_eventHandler_F;} } else {{}};
|
||||
cse_eh_cba_compat_Killed = if (!isClass (configFile >> 'CfgPatches' >> 'CBA_main')) then { {[_this,'killed'] call cse_fnc_eventHandler_F;} } else {{}};
|
||||
cse_eh_cba_compat_FiredNear = if (!isClass (configFile >> 'CfgPatches' >> 'CBA_main')) then { {[_this,'firedNear'] call cse_fnc_eventHandler_F;} } else {{}};
|
||||
cse_eh_cba_compat_Fired = if (!isClass (configFile >> 'CfgPatches' >> 'CBA_main')) then { {[_this,'fired'] call cse_fnc_eventHandler_F;} } else {{}};
|
||||
cse_eh_cba_compat_Take = if (!isClass (configFile >> 'CfgPatches' >> 'CBA_main')) then { {[_this,'Take'] call cse_fnc_eventHandler_F;} } else {{}};
|
||||
cse_eh_cba_compat_Put = if (!isClass (configFile >> 'CfgPatches' >> 'CBA_main')) then { {[_this,'Put'] call cse_fnc_eventHandler_F;} } else {{}};
|
||||
cse_eh_cba_compat_GetIn = if (!isClass (configFile >> 'CfgPatches' >> 'CBA_main')) then { {[_this,'GetIn'] call cse_fnc_eventHandler_F;} } else {{}};
|
||||
cse_eh_cba_compat_GetOut = if (!isClass (configFile >> 'CfgPatches' >> 'CBA_main')) then { {[_this,'GetOut'] call cse_fnc_eventHandler_F;} } else {{}};
|
@ -1,31 +0,0 @@
|
||||
class CfgPatches
|
||||
{
|
||||
class cse_f_eh
|
||||
{
|
||||
units[] = {};
|
||||
weapons[] = {};
|
||||
requiredVersion = 0.1;
|
||||
requiredAddons[] = {/*"cba_extended_eventhandlers", "cba_xeh", "extended_eventhandlers"*/ "A3_Characters_F","A3_Boat_F","A3_animals_f","A3_air_f","A3_soft_f","A3_static_f","A3_weapons_f","a3_structures_f"};
|
||||
version = "0.10.0_rc";
|
||||
author[] = {"Combat Space Enhancement"};
|
||||
authorUrl = "http://csemod.com";
|
||||
};
|
||||
};
|
||||
class CfgAddons {
|
||||
class PreloadAddons {
|
||||
class cse_f_eh {
|
||||
list[] = {"cse_f_eh"};
|
||||
};
|
||||
};
|
||||
};
|
||||
/* Event handlers */
|
||||
#include "CfgVehicles.h"
|
||||
|
||||
/* For CBA Compatability */
|
||||
#include "Extended_Init_EventHandlers.h"
|
||||
|
||||
/* Ensures that the functions are being compiled */
|
||||
#include "CfgFunctions.h"
|
||||
|
||||
/* To ensure that the custom eventhandler classes exist */
|
||||
#include "Combat_Space_Enhancement.h"
|
@ -1,54 +0,0 @@
|
||||
/**
|
||||
* fn_HandleHeal_eh_f.sqf
|
||||
* @Descr: Execute the handleHeal Eventhandlers. Is currently bugged due to Arma Engine problem?
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return: BOOL Returns true if handleHeal has been fully handled
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_vehicle","_allPreInitHandlers","_handle","_totalValue","_cfg","_amountOfHandlers", "_newCfg","_returnValue","_ehCfg"];
|
||||
_vehicle = (_this select 0) select 1;
|
||||
_handle = _this select 1;
|
||||
_allPreInitHandlers = [];
|
||||
|
||||
if (!local _vehicle) exitwith {};
|
||||
if (isnil "CSE_fnc_HandleHeal_EH_F") then {
|
||||
CSE_fnc_HandleHeal_EH_F = compile preProcessFileLineNumbers '\cse\cse_f_eh\fn_HandleHeal_EH_F.sqf';
|
||||
};
|
||||
|
||||
if (isnil "CSE_F_MODULE_OBJ_EH") then {
|
||||
CSE_F_MODULE_OBJ_EH = [];
|
||||
};
|
||||
{
|
||||
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _x);
|
||||
if (isClass _cfg) then {
|
||||
if (isClass (_cfg >> "EventHandlers")) then {
|
||||
_numberOfEH = count (_cfg >> "EventHandlers");
|
||||
for "_j" from 0 to (_numberOfEH -1) /* step +1 */ do {
|
||||
//for [{_j=0}, {_j< _numberOfEH}, {_j=_j+1}] do {
|
||||
_ehCfg = ((_cfg >> "EventHandlers") select _j);
|
||||
if (isClass _ehCfg) then {
|
||||
if (_vehicle isKindOf (ConfigName _ehCfg)) then {
|
||||
_allPreInitHandlers pushback compile getText(_ehCfg >> _handle);
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}foreach CSE_F_MODULE_OBJ_EH;
|
||||
{
|
||||
private ["_returnValue"];
|
||||
_returnValue = (_this select 0) call _x;
|
||||
}foreach _allPreInitHandlers;
|
||||
[_allPreInitHandlers] call cse_fnc_debug;
|
||||
|
||||
AISFinishHeal [(_this select 0) select 0, (_this select 0) select 1, (_this select 0) select 2];
|
||||
|
||||
if (count _allPreInitHandlers > 0) then {
|
||||
true;
|
||||
} else {
|
||||
false;
|
||||
};
|
@ -1,64 +0,0 @@
|
||||
/**
|
||||
* fn_addModuleEventhandlers_f.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_entity", "_handle", "_eventHandlerName", "_eventHandlerCollection", "_cfg", "_numberOfEH", "_ehCfg", "_classType", "_text", "_code", "_eventHandlerCollection","_collectedEHIDs", "_collectedID_VarName"];
|
||||
_entity = _this select 0;
|
||||
_handle = _this select 1;
|
||||
|
||||
_eventHandlerName = ("cse_f_eventhandler_" + _handle);
|
||||
|
||||
_eventHandlerCollection = missionNamespace getvariable _eventHandlerName;
|
||||
if (isnil "_eventHandlerCollection") then {
|
||||
_eventHandlerCollection = [];
|
||||
{
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _x >> "EventHandlers");
|
||||
if (isClass (_cfg)) then {
|
||||
_numberOfEH = count (_cfg);
|
||||
|
||||
for "_EHiterator" from 0 to (_numberOfEH -1) do {
|
||||
_ehCfg = ((_cfg) select _EHiterator);
|
||||
if (isClass _ehCfg) then {
|
||||
_classType = (ConfigName _ehCfg);
|
||||
_text = getText(_ehCfg >> _handle);
|
||||
if (_text != "") then {
|
||||
_code = (compile _text);
|
||||
_eventHandlerCollection pushBack [_classType, _code, _x];
|
||||
true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}count CSE_F_MODULE_OBJ_EH;
|
||||
missionNamespace setvariable [_eventHandlerName, _eventHandlerCollection];
|
||||
if (isnil "cse_f_eventhandlers_collection") then {
|
||||
cse_f_eventhandlers_collection = [];
|
||||
};
|
||||
cse_f_eventhandlers_collection pushBack _eventHandlerName;
|
||||
};
|
||||
|
||||
_collectedID_VarName = format["cse_addModuleEventHandlers_f_%1_ids", _handle];
|
||||
|
||||
// clear all module eventhandlers first
|
||||
_collectedEHIDs = _entity getvariable [_collectedID_VarName, []];
|
||||
{
|
||||
[_entity, _handle, _x] call cse_fnc_removeEventHandler_F;
|
||||
}foreach _collectedEHIDs;
|
||||
|
||||
// now we add the new ones
|
||||
_collectedEHIDs = [];
|
||||
{
|
||||
if (_entity isKindOf (_x select 0)) then {
|
||||
_collectedEHIDs pushback (format["cse_moduleEventhandlerID_", _foreachIndex]);
|
||||
[_entity, _handle, format["cse_moduleEventhandlerID_", _foreachIndex], _x select 1] call cse_fnc_setEventhandler_f;
|
||||
};
|
||||
}foreach _eventHandlerCollection;
|
||||
|
||||
// Store the new IDs
|
||||
_entity setvariable [_collectedID_VarName, _collectedEHIDs];
|
@ -1,61 +0,0 @@
|
||||
/**
|
||||
* fn_customEventHandler_f.sqf
|
||||
* @Descr: Execute a custom defined eventhandler.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [arguments ANY, handle STRING (The name of the eventhandler)]
|
||||
* @Return: ARRAY Array containing the results of the called eventhandlers.
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
|
||||
private ["_arguments","_handle","_ehCfg","_eventHandlerCollection","_eventHandlerName","_cfg","_code","_classType", "_return"];
|
||||
_arguments = _this select 0;
|
||||
_handle = _this select 1;
|
||||
|
||||
_eventHandlerName = ("cse_f_custom_eventhandler_" + _handle);
|
||||
_eventHandlerCollection = missionNamespace getvariable _eventHandlerName;
|
||||
if (isnil "_eventHandlerCollection") then {
|
||||
_eventHandlerCollection = [];
|
||||
[format["caching Custom Eventhandler: %1",_handle]] call cse_fnc_debug;
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "CustomEventHandlers" >> _handle);
|
||||
if (isClass _cfg) then {
|
||||
_numberOfEH = count _cfg;
|
||||
|
||||
for "_EHiterator" from 0 to (_numberOfEH -1) /* step +1 */ do {
|
||||
//for [{_EHiterator=0}, {(_EHiterator< _numberOfEH)}, {_EHiterator=_EHiterator+1}] do {
|
||||
_ehCfg = _cfg select _EHiterator;
|
||||
if (isClass _ehCfg) then {
|
||||
_classType = (ConfigName _ehCfg);
|
||||
_code = (compile getText(_ehCfg >> "onCall"));
|
||||
_eventHandlerCollection pushback [_classType, _code];
|
||||
true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
_cfg = (MissionConfigFile >> "Combat_Space_Enhancement" >> "CustomEventHandlers" >> _handle);
|
||||
if (isClass _cfg) then {
|
||||
_numberOfEH = count _cfg;
|
||||
for "_EHiterator" from 0 to (_numberOfEH -1) /* step +1 */ do {
|
||||
//for [{_EHiterator=0}, {(_EHiterator< _numberOfEH)}, {_EHiterator=_EHiterator+1}] do {
|
||||
_ehCfg = _cfg select _EHiterator;
|
||||
if (isClass _ehCfg) then {
|
||||
_classType = (ConfigName _ehCfg);
|
||||
_code = (compile getText(_ehCfg >> "onCall"));
|
||||
_eventHandlerCollection pushback [_classType, _code];
|
||||
true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
missionNamespace setvariable [_eventHandlerName, _eventHandlerCollection];
|
||||
[format["Custom Eventhandler: %1 cache: %2",_handle, _eventHandlerCollection]] call cse_fnc_debug;
|
||||
};
|
||||
|
||||
_return = [];
|
||||
{
|
||||
_return pushback (_arguments call (_x select 1));
|
||||
}foreach _eventHandlerCollection;
|
||||
|
||||
_return
|
@ -1,65 +0,0 @@
|
||||
/**
|
||||
* fn_eventHandler_f.sqf
|
||||
* @Descr: Execute eventhandlers
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return: void
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_args","_handle","_entity","_cfgFile","_cfg","_numberOfEH","_ehCfg","_value", "_code", "_eventHandlerCollection", "_classType", "_eventHandlerName"];
|
||||
_args = _this select 0;
|
||||
_handle = _this select 1;
|
||||
_entity = _args select 0;
|
||||
|
||||
if (isnil "CSE_F_MODULE_OBJ_EH") then {
|
||||
CSE_F_MODULE_OBJ_EH = [];
|
||||
};
|
||||
|
||||
if (!(local _entity) && _handle != "fired") exitwith {};
|
||||
_eventHandlerName = ("cse_f_eventhandler_" + _handle);
|
||||
|
||||
_eventHandlerCollection = missionNamespace getvariable _eventHandlerName;
|
||||
if (isnil "_eventHandlerCollection") then {
|
||||
_eventHandlerCollection = [];
|
||||
{
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _x >> "EventHandlers");
|
||||
if (isClass (_cfg)) then {
|
||||
_numberOfEH = count (_cfg);
|
||||
|
||||
for "_EHiterator" from 0 to (_numberOfEH -1) do {
|
||||
_ehCfg = ((_cfg) select _EHiterator);
|
||||
if (isClass _ehCfg) then {
|
||||
_classType = (ConfigName _ehCfg);
|
||||
_text = getText(_ehCfg >> _handle);
|
||||
if (_text != "") then {
|
||||
_code = (compile _text);
|
||||
_eventHandlerCollection pushBack [_classType, _code, _x];
|
||||
true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}count CSE_F_MODULE_OBJ_EH;
|
||||
missionNamespace setvariable [_eventHandlerName, _eventHandlerCollection];
|
||||
if (isnil "cse_f_eventhandlers_collection") then {
|
||||
cse_f_eventhandlers_collection = [];
|
||||
};
|
||||
cse_f_eventhandlers_collection pushBack _eventHandlerName;
|
||||
};
|
||||
|
||||
_setHandler = _entity getvariable ("cse_f_setEventhandler_" + _handle);
|
||||
if (isnil "_setHandler") then {
|
||||
{
|
||||
if (_entity isKindOf (_x select 0)) then {
|
||||
_args call (_x select 1);
|
||||
};
|
||||
false;
|
||||
}count _eventHandlerCollection;
|
||||
} else {
|
||||
{
|
||||
_args call (_X select 1);
|
||||
false;
|
||||
}count _setHandler;
|
||||
};
|
@ -1,42 +0,0 @@
|
||||
/**
|
||||
* fn_getCustomResults_f.sqf
|
||||
* @Descr: Executes custom results eventhandlers, collects their output and returns this.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [arguments ANY, handle STRING]
|
||||
* @Return: ARRAY Collection of all return values of all executed CustomResult handlers
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
|
||||
private ["_arguments","_handle","_ehCfg","_eventHandlerCollection","_eventHandlerName","_cfg","_code","_classType", "_return"];
|
||||
_arguments = _this select 0;
|
||||
_handle = _this select 1;
|
||||
|
||||
_eventHandlerName = ("cse_f_custom_results_eventhandler_" + _handle);
|
||||
_eventHandlerCollection = missionNamespace getvariable _eventHandlerName;
|
||||
if (isnil "_eventHandlerCollection") then {
|
||||
_eventHandlerCollection = [];
|
||||
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "CustomResults" >> _handle);
|
||||
if (isClass _cfg) then {
|
||||
_numberOfEH = count _cfg;
|
||||
for [{_EHiterator=0}, {(_EHiterator< _numberOfEH)}, {_EHiterator=_EHiterator+1}] do {
|
||||
_ehCfg = _cfg select _EHiterator;
|
||||
if (isClass _ehCfg) then {
|
||||
_classType = (ConfigName _ehCfg);
|
||||
_code = (compile getText(_ehCfg >> "onCall"));
|
||||
_eventHandlerCollection set [ count _eventHandlerCollection, [_classType, _code]];
|
||||
true;
|
||||
};
|
||||
};
|
||||
};
|
||||
missionNamespace setvariable [_eventHandlerName, _eventHandlerCollection];
|
||||
};
|
||||
|
||||
_return = [];
|
||||
{
|
||||
_return set [ count _return, _arguments call (_x select 1) ];
|
||||
}foreach _eventHandlerCollection;
|
||||
|
||||
_return
|
@ -1,79 +0,0 @@
|
||||
/**
|
||||
* fn_handleDamage_eh_f.sqf
|
||||
* @Descr: Execute the handleDamage Eventhandler
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return: NUMBER Returns a number based on output of executed eventhandlers
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_vehicle","_allPreInitHandlers","_handle","_totalValue","_cfg","_amountOfHandlers", "_newCfg","_returnValue","_ehCfg", "_fullDamage", "_returnDamage"];
|
||||
_vehicle = (_this select 0) select 0;
|
||||
_handle = _this select 1;
|
||||
if (!local _vehicle) exitwith {};
|
||||
if (_vehicle isKindOf "CAManBase") then {
|
||||
_name = _vehicle getVariable "cse_name";
|
||||
if (isNil "_name") then {
|
||||
_vehicle setvariable ["cse_name", name _vehicle, true];
|
||||
};
|
||||
};
|
||||
|
||||
_eventHandlerName = "cse_f_eventhandler_handleDamage";
|
||||
_eventHandlerCollection = missionNamespace getvariable _eventHandlerName;
|
||||
if (isnil "_eventHandlerCollection") then {
|
||||
_eventHandlerCollection = [];
|
||||
if (isnil "CSE_F_MODULE_OBJ_EH") then {
|
||||
CSE_F_MODULE_OBJ_EH = [];
|
||||
};
|
||||
{
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _x);
|
||||
if (isClass _cfg) then {
|
||||
if (isClass (_cfg >> "EventHandlers")) then {
|
||||
_numberOfEH = count (_cfg >> "EventHandlers");
|
||||
|
||||
for "_j" from 0 to (_numberOfEH -1) /* step +1 */ do {
|
||||
//for [{_j=0}, {_j< _numberOfEH}, {_j=_j+1}] do {
|
||||
_ehCfg = ((_cfg >> "EventHandlers") select _j);
|
||||
if (isClass _ehCfg) then {
|
||||
if (getText(_ehCfg >> _handle) != "") then {
|
||||
_eventHandlerCollection pushBack [(ConfigName _ehCfg), compile getText(_ehCfg >> _handle)];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}foreach CSE_F_MODULE_OBJ_EH;
|
||||
missionNamespace setvariable [_eventHandlerName, _eventHandlerCollection];
|
||||
|
||||
if (isnil "cse_f_eventhandlers_collection") then {
|
||||
cse_f_eventhandlers_collection = [];
|
||||
};
|
||||
cse_f_eventhandlers_collection pushBack _eventHandlerName;
|
||||
};
|
||||
_returnDamage = (_this select 0) select 2;
|
||||
{
|
||||
if (_vehicle isKindOf (_x select 0)) then {
|
||||
private "_returnValue";
|
||||
_returnValue = (_this select 0) call (_x select 1);
|
||||
if (!isnil "_returnValue") then {
|
||||
if (typeName _returnValue == typeName 0) then {
|
||||
_returnDamage = _returnValue;
|
||||
};
|
||||
};
|
||||
};
|
||||
}foreach _eventHandlerCollection;
|
||||
|
||||
if (typeName _returnDamage == typeName 0) then {
|
||||
if (_returnDamage >= 0.9) then {
|
||||
if (isnil "CSE_ENABLE_REVIVE_F") then {
|
||||
CSE_ENABLE_REVIVE_F = 0;
|
||||
};
|
||||
if ((CSE_ENABLE_REVIVE_F == 1 && isPlayer _vehicle) || (CSE_ENABLE_REVIVE_F == 2)) then {
|
||||
_returnDamage = 0.9;
|
||||
};
|
||||
};
|
||||
} else {
|
||||
_returnDamage = (_this select 0) select 2;
|
||||
};
|
||||
_returnDamage
|
@ -1,55 +0,0 @@
|
||||
/**
|
||||
* fn_initialization_f.sqf
|
||||
* @Descr: Grabs all pre and post init defined events from the config files and executes those.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [setToExecute STRING]
|
||||
* @Return: void
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_allPreInitHandlers","_cfg","_cfgOpt","_text"];
|
||||
_allPreInitHandlers = [];
|
||||
|
||||
if ((_this select 0) == "preInit") then {
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "EventHandlers" >> "PreInit_EventHandlers");
|
||||
|
||||
for "_i" from 0 to ((count _cfg)-1) /* step +1 */ do {
|
||||
_this spawn (compile (getText ((_cfg select _i) >> "init")));
|
||||
};
|
||||
} else {
|
||||
if ((_this select 0) == "postInit") then {
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "EventHandlers" >> "PostInit_EventHandlers");
|
||||
|
||||
for "_i" from 0 to ((count _cfg)-1) /* step +1 */ do {
|
||||
_this spawn (compile (getText ((_cfg select _i) >> "init")));
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
if (isnil "CSE_F_EH_ALLOW_MISSION_CONFIG") then {
|
||||
CSE_F_EH_ALLOW_MISSION_CONFIG = true;
|
||||
};
|
||||
|
||||
if (CSE_F_EH_ALLOW_MISSION_CONFIG) then {
|
||||
_allPreInitHandlers = [];
|
||||
if ((_this select 0) == "preInit") then {
|
||||
_cfg = (missionConfigFile >> "Combat_Space_Enhancement" >> "EventHandlers" >> "PreInit_EventHandlers");
|
||||
|
||||
for "_i" from 0 to ((count _cfg)-1) /* step +1 */ do {
|
||||
_this spawn (compile (getText ((_cfg select _i) >> "init")));
|
||||
};
|
||||
} else {
|
||||
if ((_this select 0) == "postInit") then {
|
||||
_cfg = (missionConfigFile >> "Combat_Space_Enhancement" >> "EventHandlers" >> "PostInit_EventHandlers");
|
||||
|
||||
for "_i" from 0 to ((count _cfg)-1) /* step +1 */ do {
|
||||
_this spawn (compile (getText ((_cfg select _i) >> "init")));
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
if ((_this select 0) == "postInit") then {
|
||||
cse_postInit = true;
|
||||
};
|
@ -1,33 +0,0 @@
|
||||
/**
|
||||
* fn_removeEventhandler_f.sqf
|
||||
* @Descr: Removes an eventhandler with the specified ID
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [object OBJECT, handler STRING, id STRING]
|
||||
* @Return: nil
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_obj", "_handler", "_id", "_varName", "_handlers", "_newHandlers"];
|
||||
_obj = _this select 0;
|
||||
_handler = _this select 1;
|
||||
_id = _this select 2;
|
||||
|
||||
_varName = "cse_f_setEventhandler_" + _handler;
|
||||
_handlers = _obj getvariable [_varName, []];
|
||||
|
||||
_newHandlers = [];
|
||||
{
|
||||
if (_x select 0 != _id) then {
|
||||
_newHandlers pushback _x;
|
||||
};
|
||||
}foreach _handlers;
|
||||
|
||||
if (count _newHandlers > 0) then {
|
||||
_obj setvariable [_varName, _newHandlers];
|
||||
} else {
|
||||
// remove and default to original CSE handlers
|
||||
_obj setvariable [_varName, nil];
|
||||
};
|
||||
|
||||
true;
|
@ -1,35 +0,0 @@
|
||||
/**
|
||||
* fn_setEventhandler_f.sqf
|
||||
* @Descr: Set the event handler for a specific object. Stacks. Overwrites the CSE module eventhandlers.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [object OBJECT, handler STRING, id STRING, code CODE]
|
||||
* @Return: nil
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_obj", "_handler", "_id", "_code", "_varName", "_handlers", "_found"];
|
||||
_obj = _this select 0;
|
||||
_handler = _this select 1;
|
||||
_id = _this select 2;
|
||||
_code = _this select 3;
|
||||
|
||||
_varName = "cse_f_setEventhandler_" + _handler;
|
||||
_handlers = _obj getvariable [_varName, []];
|
||||
|
||||
_found = -1;
|
||||
{
|
||||
if (_x select 0 == _id) exitwith {
|
||||
_found = _foreachIndex;
|
||||
};
|
||||
}foreach _handlers;
|
||||
|
||||
if (_found < 0) then {
|
||||
_handlers pushback [_id, _code];
|
||||
} else {
|
||||
_handlers set [_found, [_id, _code]];
|
||||
};
|
||||
|
||||
_obj setvariable [_varName, _handlers];
|
||||
|
||||
true;
|
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<Project name="Combat Space Enhancement">
|
||||
<Package name="cse_sys_weaponrest">
|
||||
<Container ID="WeaponResting">
|
||||
</Container>
|
||||
</Package>
|
||||
</Project>
|
@ -1,22 +0,0 @@
|
||||
class CfgFunctions
|
||||
{
|
||||
class CSE
|
||||
{
|
||||
|
||||
class Modules
|
||||
{
|
||||
file = "cse\cse_f_modules\functions";
|
||||
class initalizeModule_F { recompile = 1; };
|
||||
class isModuleEnabled_F { recompile = 1; };
|
||||
class getModule_f { recompile = 1; };
|
||||
class getModuleCondition_f { recompile = 1; };
|
||||
class getModules_f { recompile = 1; };
|
||||
class initalizeModuleObjEH { recompile = 1; };
|
||||
class moduleIsActive_f { recompile = 1; };
|
||||
class enableModule_f { recompile = 1; };
|
||||
class getCfgModuleInits_f { recompile = 1; };
|
||||
class getCfgModuleArguments_f { recompile = 1; };
|
||||
class remoteModuleInit { recompile = 1; };
|
||||
};
|
||||
};
|
||||
};
|
@ -1,21 +0,0 @@
|
||||
class Combat_Space_Enhancement {
|
||||
class EventHandlers {
|
||||
class PreInit_EventHandlers {
|
||||
class cse_f_modules {
|
||||
init = " call compile preprocessFile 'cse\cse_f_modules\init.sqf';";
|
||||
};
|
||||
};
|
||||
class PostInit_EventHandlers {
|
||||
class cse_f_modules {
|
||||
init = " call compile preprocessFile 'cse\cse_f_modules\post-init.sqf';";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class CustomEventHandlers {
|
||||
/**
|
||||
* Called when the enableModule_f function is called. Third argument is whatever or not the module has initalized.
|
||||
*/
|
||||
class moduleEnabled_f; // [moduleName, arguments, enabled]
|
||||
};
|
||||
};
|
@ -1,23 +0,0 @@
|
||||
class CfgPatches
|
||||
{
|
||||
class cse_f_modules
|
||||
{
|
||||
units[] = {};
|
||||
weapons[] = {};
|
||||
requiredVersion = 0.1;
|
||||
requiredAddons[] = {"cse_main"};
|
||||
version = "0.10.0_rc";
|
||||
author[] = {"Combat Space Enhancement"};
|
||||
authorUrl = "http://csemod.com";
|
||||
};
|
||||
};
|
||||
class CfgAddons {
|
||||
class PreloadAddons {
|
||||
class cse_f_modules {
|
||||
list[] = {"cse_f_modules"};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#include "CfgFunctions.h"
|
||||
#include "Combat_Space_Enhancement.h"
|
@ -1,36 +0,0 @@
|
||||
/**
|
||||
* fn_enableModule_f.sqf
|
||||
* @Descr: Enable a CSE Module
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [moduleName STRING, arguments ARRAY (Format: [[name STRING, value ANY]])]
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_moduleName", "_arguments", "_moduleInfo"];
|
||||
_moduleName = _this select 0;
|
||||
_arguments = _this select 1;
|
||||
|
||||
[format["enableModule_f %1 %2",_this, ([_moduleName] call cse_fnc_isModuleEnabled_F)]] call cse_fnc_debug;
|
||||
if ([_moduleName] call cse_fnc_isModuleEnabled_F) exitwith {
|
||||
[[_moduleName, _arguments, false],"moduleEnabled_f"] call cse_fnc_customEventHandler_F;
|
||||
};
|
||||
if (isnil "CSE_F_MODULE_OBJ_EH") then {
|
||||
CSE_F_MODULE_OBJ_EH = [];
|
||||
};
|
||||
CSE_F_MODULE_OBJ_EH pushback _moduleName;
|
||||
|
||||
_initField = getText(ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _moduleName >> "init");
|
||||
_arguments call compile _initField;
|
||||
|
||||
if !(isnil "cse_f_eventhandlers_collection") then {
|
||||
{
|
||||
missionNamespace setvariable [_x, nil]; // clear all eventhandlers.
|
||||
}foreach cse_f_eventhandlers_collection;
|
||||
};
|
||||
[_moduleName] call cse_fnc_parseModuleForConfigurations;
|
||||
|
||||
[[_moduleName, _arguments, true],"moduleEnabled_f"] call cse_fnc_customEventHandler_F;
|
||||
|
||||
[format["Initalize module: %1 COMPLETED. Arguments: %2", _moduleName, _arguments], 3] call cse_fnc_debug;
|
@ -1,98 +0,0 @@
|
||||
/**
|
||||
* fn_getCfgModuleArguments_f.sqf
|
||||
* @Descr: Grab Module arguments for a specific module in a config file.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [moduleName STRING (The classname of the CSE module), configPath CONFIG (Path to the module Config)]
|
||||
* @Return: ARRAY An array with parameters for given module. If the parameters for the provided module have not been found within the config, default values will be used.
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_configOfModule","_collectedInits","_cfgRoot","_amountOfClasses","_i","_arguments","_moduleName","_CfgVehEntry","_CfgModuleEntry","_moduleArguments","_j","_cfg","_value","_typeNameArgument", "_return"];
|
||||
_moduleName = _this select 0;
|
||||
_configOfModule = _this select 1;
|
||||
_return = [];
|
||||
// Array for collection all initalization arguments for the given module.
|
||||
_arguments = [];
|
||||
// Grab necessary config entries
|
||||
|
||||
_CfgVehEntry = (ConfigFile >> "CfgVehicles" >> _moduleName);
|
||||
_CfgModuleEntry = (ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _moduleName);
|
||||
|
||||
if (isClass _CfgModuleEntry) then {
|
||||
if (isClass _CfgVehEntry) then {
|
||||
// init with parameters
|
||||
_moduleArguments = (_CfgVehEntry >> "Arguments");
|
||||
if (isClass _moduleArguments) then {
|
||||
|
||||
// Looping through the expected arguments, based on what is defined in the module Argument Class in CfgVehicles.
|
||||
for [{_j=0}, {_j < (count _moduleArguments)}, {_j=_j+1}] do {
|
||||
// if the argument is a class, parse it. Otherwise we will be ignoring it.
|
||||
if (isClass (_moduleArguments select _j)) then {
|
||||
|
||||
// Grab the value from the argument defined in the description.ext and current class.
|
||||
_value = 0; // (_configOfModule >> configName(_moduleArguments select _j)) call bis_fnc_getCfgData;
|
||||
// This will be used to validate the retrieved value for a proper value.
|
||||
_typeNameArgument = getText((_moduleArguments select _j) >> "typeName");
|
||||
|
||||
call {
|
||||
if (_typeNameArgument == "BOOL") exitwith {
|
||||
_value = getNumber(_configOfModule >> configName(_moduleArguments select _j)) == 1;
|
||||
};
|
||||
if (_typeNameArgument == "NUMBER") exitwith {
|
||||
_value = getNumber(_configOfModule >> configName(_moduleArguments select _j));
|
||||
};
|
||||
if (_typeNameArgument == "STRING") exitwith {
|
||||
_value = getText(_configOfModule >> configName(_moduleArguments select _j));
|
||||
};
|
||||
};
|
||||
|
||||
// If the argument is defined in the description.ext, we will validate the typeName of the argument and store it in the argument array.
|
||||
if (!isnil "_value") then {
|
||||
if (typeName _value == _typeNameArgument || TRUE) then { // lets assume the values are correct until we write a function to properly compare the typeNames.
|
||||
_arguments pushback [(ConfigName (_moduleArguments select _j)), _value];
|
||||
} else {
|
||||
// Incase the typeName is invalid, we will set a default value and store this instead.
|
||||
call {
|
||||
if (_typeNameArgument == "BOOL") exitwith {
|
||||
_value = getNumber((_moduleArguments select _j) >> "defaultValue") == 1;
|
||||
};
|
||||
if (_typeNameArgument == "NUMBER") exitwith {
|
||||
_value = getNumber((_moduleArguments select _j) >> "defaultValue");
|
||||
};
|
||||
if (_typeNameArgument == "STRING") exitwith {
|
||||
_value = getText((_moduleArguments select _j) >> "defaultValue");
|
||||
};
|
||||
};
|
||||
[format["Module Argument has not been set %1 %2. Module need to be replaced. Value used: %4", _moduleName, (ConfigName (_moduleArguments select _j)), _typeNameArgument, _value], 1] call cse_fnc_debug;
|
||||
_arguments pushback [(ConfigName (_moduleArguments select _j)), _value];
|
||||
};
|
||||
} else {
|
||||
[format["Value is nil for %1 %2", _moduleName, (ConfigName (_moduleArguments select _j))], 1] call cse_fnc_debug;
|
||||
// Because the value has not been defined, we will use a default value instead.
|
||||
// TODO implement defaultValue retrieval for non defined arguments.
|
||||
_value = "";
|
||||
if (_typeNameArgument != "") then {
|
||||
call {
|
||||
if (_typeNameArgument == "BOOL") exitwith {
|
||||
_value = getNumber((_moduleArguments select _j) >> "defaultValue") == 1;
|
||||
};
|
||||
if (_typeNameArgument == "NUMBER") exitwith {
|
||||
_value = getNumber((_moduleArguments select _j) >> "defaultValue");
|
||||
};
|
||||
if (_typeNameArgument == "STRING") exitwith {
|
||||
_value = getText((_moduleArguments select _j) >> "defaultValue");
|
||||
};
|
||||
};
|
||||
[format["Module Argument has not been set %1 %2. Module need to be replaced. Value used: %4", _moduleName, (ConfigName (_moduleArguments select _j)), _typeNameArgument, _value], 1] call cse_fnc_debug;
|
||||
_arguments pushback [(ConfigName (_moduleArguments select _j)), _value];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
} else {
|
||||
// init with no parameters. We do not have to collect anything for this.
|
||||
};
|
||||
};
|
||||
_arguments
|
@ -1,28 +0,0 @@
|
||||
/**
|
||||
* fn_getCfgModuleInits_f.sqf
|
||||
* @Descr: Grab all defined modules in the given config space, collect their arguments and return them.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [config CONFIG (For example: MissionConfigFile or ConfigFile)]
|
||||
* @Return: ARRAY Array with format: [[moduleName STRING, moduleArgs ARRAY (Format: [argumentName STRING, value ANY])], ...]
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_config","_collectedInits","_cfgRoot","_amountOfClasses","_i","_arguments","_moduleName","_CfgVehEntry","_CfgModuleEntry","_moduleArguments","_j","_cfg","_value","_moduleArgs"];
|
||||
_config = [_this, 0, MissionConfigFile, [MissionConfigFile]] call BIS_fnc_Param;
|
||||
|
||||
_collectedInits = [];
|
||||
_cfgRoot = (_config >> "Combat_Space_Enhancement" >> "Modules");
|
||||
_amountOfClasses = count _cfgRoot;
|
||||
for [{_i=0}, {_i < _amountOfClasses}, {_i=_i+1}] do {
|
||||
if (isClass (_cfgRoot select _i)) then {
|
||||
_moduleName = ConfigName (_cfgRoot select _i);
|
||||
_disableConfigExecution = getNumber (ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _moduleName >> "disableConfigExecution");
|
||||
if (_disableConfigExecution > 0) exitwith {};
|
||||
if (!([_moduleName] call cse_fnc_isModuleEnabled_f)) then {
|
||||
_moduleArgs = [_moduleName, (_cfgRoot select _i)] call cse_fnc_getCfgModuleArguments_f;
|
||||
_collectedInits pushback [_moduleName, _moduleArgs];
|
||||
};
|
||||
};
|
||||
};
|
||||
_collectedInits
|
@ -1,20 +0,0 @@
|
||||
/**
|
||||
* fn_getModuleCondition_f.sqf
|
||||
* @Descr: N/A DEPRECATED
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_moduleName","_condition","_return","_cfgFile"];
|
||||
|
||||
_moduleName = _this select 0;
|
||||
_return = "";
|
||||
_cfgFile = (ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _moduleName);
|
||||
if (isClass _cfgFile) then {
|
||||
_return = format["CSE_MODULE_CONDITION_%1",_moduleName];
|
||||
|
||||
};
|
||||
_return
|
@ -1,22 +0,0 @@
|
||||
/**
|
||||
* fn_getModule_f.sqf
|
||||
* @Descr: Gets module information. DEPRECATED
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [ModuleName STRING]
|
||||
* @Return: ARRAY Returns an array with [ModuleName STRING, initLine STRING]
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_module","_cfg","_init","_name"];
|
||||
_moduleName = _this select 0;
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _moduleName);
|
||||
_module = [];
|
||||
if (isClass _cfg) then {
|
||||
_init = getText (_cfg >> "init");
|
||||
_name = getText (_cfg >> "name");
|
||||
//_module set [count _module,[_name,_init]];
|
||||
_module = [_name,_init];
|
||||
};
|
||||
|
||||
_module
|
@ -1,15 +0,0 @@
|
||||
/**
|
||||
* fn_getModules_f.sqf
|
||||
* @Descr: Returns all current active CSE Modules
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return: ARRAY List of all current Modules [moduleName STRING (Module classname), ...]
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
if (isnil "CSE_F_MODULE_OBJ_EH") then {
|
||||
CSE_F_MODULE_OBJ_EH = [];
|
||||
};
|
||||
|
||||
CSE_F_MODULE_OBJ_EH;
|
@ -1,59 +0,0 @@
|
||||
/**
|
||||
* fn_initalizeModuleObjEH.sqf
|
||||
* @Descr: initalize module Object init Eventhandlers. DEPRICATED. DO NOT USE.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [object OBJECT, eventhandler STRING]
|
||||
* @Return: void
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
|
||||
private ["_entity","_handle","_cfg","_ehCfg","_numberOfEH"];
|
||||
_entity = (_this select 0) select 0;
|
||||
_handle = _this select 1;
|
||||
|
||||
if (!local _entity) exitwith{};
|
||||
if (isnil "cse_postInit") then {
|
||||
_this spawn {
|
||||
private ["_entity"];
|
||||
_entity = (_this select 0) select 0;
|
||||
_handle = _this select 1;
|
||||
waituntil{(!isnil 'cse_postInit')};
|
||||
{
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _x);
|
||||
if (isClass _cfg) then {
|
||||
if (isClass (_cfg >> "EventHandlers")) then {
|
||||
_numberOfEH = count (_cfg >> "EventHandlers");
|
||||
for [{_j=0}, {_j< _numberOfEH}, {_j=_j+1}] do {
|
||||
_ehCfg = ((_cfg >> "EventHandlers") select _j);
|
||||
if (isClass _ehCfg) then {
|
||||
if (_entity isKindOf (ConfigName _ehCfg)) then {
|
||||
(_this select 0) call (compile getText(_ehCfg >> _handle));
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}foreach (call cse_fnc_getModules);
|
||||
};
|
||||
} else {
|
||||
|
||||
if (!local _entity) exitwith{};
|
||||
{
|
||||
_cfg = (ConfigFile >> "Combat_Space_Enhancement" >> "CfgModules" >> _x);
|
||||
if (isClass _cfg) then {
|
||||
if (isClass (_cfg >> "EventHandlers")) then {
|
||||
_numberOfEH = count (_cfg >> "EventHandlers");
|
||||
for [{_j=0}, {_j< _numberOfEH}, {_j=_j+1}] do {
|
||||
_ehCfg = ((_cfg >> "EventHandlers") select _j);
|
||||
if (isClass _ehCfg) then {
|
||||
if (_entity isKindOf (ConfigName _ehCfg)) then {
|
||||
(_this select 0) call (compile getText(_ehCfg >> _handle));
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}foreach (call cse_fnc_getModules);
|
||||
};
|
@ -1,59 +0,0 @@
|
||||
/**
|
||||
* fn_initalizeModule_F.sqf
|
||||
* @Descr: Initalize a CSE Module. To be called through the BI A3 Module Framework
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_moduleName","_arguments","_logic","_units", "_activated","_cfg", "_moduleInfo", "_value", "_typeNameArgument"];
|
||||
if (count _this > 1) then {
|
||||
_moduleName = typeOf (_this select 0);
|
||||
} else {
|
||||
_moduleName = _this select 0;
|
||||
};
|
||||
[format["Initalize module: %1 IN QUE",_moduleName], 3] call cse_fnc_debug;
|
||||
waituntil {(!isnil 'cse_f_modules')};
|
||||
[format["Initalize module: %1 STARTED",_moduleName], 3] call cse_fnc_debug;
|
||||
|
||||
_arguments = [];
|
||||
if (count _this >1) then {
|
||||
_logic = [_this,0,objNull,[objNull]] call BIS_fnc_param;
|
||||
_units = [_this,1,[],[[]]] call BIS_fnc_param;
|
||||
_activated = [_this,2,true,[true]] call BIS_fnc_param;
|
||||
_moduleName = typeOf _logic;
|
||||
_cfg = (ConfigFile >> "CfgVehicles" >> _moduleName >> "Arguments");
|
||||
if (isClass _cfg) then {
|
||||
for [{_i=0}, {_i < (count _cfg)}, {_i=_i+1}] do {
|
||||
if (isClass (_cfg select _i)) then {
|
||||
_value = _logic getvariable (ConfigName (_cfg select _i));
|
||||
if (!isnil "_value") then {
|
||||
_arguments pushback [(ConfigName (_cfg select _i)), _value];
|
||||
} else {
|
||||
_typeNameArgument = getText ((_cfg select _i) >> "typeName");
|
||||
_value = "";
|
||||
if (_typeNameArgument != "") then {
|
||||
call {
|
||||
if (_typeNameArgument == "BOOL") exitwith {
|
||||
_value = getNumber((_cfg select _i) >> "defaultValue") == 1;
|
||||
};
|
||||
if (_typeNameArgument == "NUMBER") exitwith {
|
||||
_value = getNumber((_cfg select _i) >> "defaultValue");
|
||||
};
|
||||
if (_typeNameArgument == "STRING") exitwith {
|
||||
_value = getText((_cfg select _i) >> "defaultValue");
|
||||
};
|
||||
};
|
||||
[format["Module Argument has not been set %1 %2. Module need to be replaced. Value used: %4", _moduleName, (ConfigName (_cfg select _i)), _typeNameArgument, _value], 1] call cse_fnc_debug;
|
||||
_arguments pushback [(ConfigName (_cfg select _i)), _value];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
} else {
|
||||
_moduleName = _this select 0;
|
||||
};
|
||||
[_moduleName, _arguments] call cse_fnc_enableModule_f;
|
@ -1,14 +0,0 @@
|
||||
/**
|
||||
* fn_isModuleEnabled_F.sqf
|
||||
* @Descr: Check if given CSE Module class is enabled
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [moduleName STRING]
|
||||
* @Return: BOOL Returns true if module is currently enabled
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
if (isnil "CSE_F_MODULE_OBJ_EH") then {
|
||||
CSE_F_MODULE_OBJ_EH = [];
|
||||
};
|
||||
((_this select 0) in CSE_F_MODULE_OBJ_EH);
|
@ -1,19 +0,0 @@
|
||||
/**
|
||||
* fn_moduleIsActive_f.sqf
|
||||
* @Descr: Check if given module name is active. DEPRICATED. DO NOT USE.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [moduleName STRING]
|
||||
* @Return: BOOL Returns true if moduel is currently active
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_moduleName","_return","_condition"];
|
||||
_moduleName = _this select 0;
|
||||
_return = false;
|
||||
|
||||
_condition = [_moduleNAme] call cse_fnc_getModuleCondition_F;
|
||||
if (!isnil "_condition") then {
|
||||
call compile format["_return = %1;",_condition];
|
||||
};
|
||||
_return
|
@ -1,17 +0,0 @@
|
||||
/**
|
||||
* fn_remoteModuleInit.sqf
|
||||
* @Descr: Called by remote execution script to initialize modules.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [[moduleName STRING, arguments ARRAY (Format: [argumentName STRING, value ANY])], ...]
|
||||
* @Return: nil
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_toinitalizeModules"];
|
||||
_toinitalizeModules = _this select 0;
|
||||
sleep 5;
|
||||
{
|
||||
[format["initalize module through Cfg REMOTE: %1",_x]] call cse_fnc_debug;
|
||||
_x call cse_fnc_enableModule_f;
|
||||
}foreach _toinitalizeModules;
|
@ -1,3 +0,0 @@
|
||||
|
||||
|
||||
cse_f_modules = true;
|
@ -1,21 +0,0 @@
|
||||
// Collect cfg modules and initalize them.
|
||||
[] spawn {
|
||||
// by waiting, we ensure that CSE Config modules aren't initalized before the modules have been.
|
||||
sleep 5;
|
||||
_toinitalizeModules = [MissionConfigFile] call cse_fnc_getCfgModuleInits_f;
|
||||
{
|
||||
[format["initalize module through cfg: %1",_x]] call cse_fnc_debug;
|
||||
_x call cse_fnc_enableModule_f;
|
||||
}foreach _toinitalizeModules;
|
||||
|
||||
// Check if we want to collect server side modules
|
||||
_allowCfg = ((getNumber(MissionConfigFile >> "Combat_Space_Enhancement" >> "DisableModuleConfig")) == 0);
|
||||
if (isServer && _allowCfg) then {
|
||||
_toinitalizeModules = [configFile] call cse_fnc_getCfgModuleInits_f;
|
||||
|
||||
[format["initalize modules through server cfg: %1",_toinitalizeModules]] call cse_fnc_debug;
|
||||
if !(_toinitalizeModules isEqualTo []) then {
|
||||
[[_toinitalizeModules], "cse_fnc_remoteModuleInit", true, true] spawn BIS_fnc_MP;
|
||||
};
|
||||
};
|
||||
};
|
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<Project name="Combat Space Enhancement">
|
||||
<Package name="cse_f_modules">
|
||||
<Container ID="Modules">
|
||||
</Container>
|
||||
</Package>
|
||||
</Project>
|
@ -1,49 +0,0 @@
|
||||
class CfgFunctions {
|
||||
class CSE {
|
||||
class Carry {
|
||||
file = "cse\cse_f_states\carry\functions";
|
||||
class carryObj { recompile = 1; };
|
||||
class carriedByObj { recompile = 1; };
|
||||
class getCarriedObj { recompile = 1; };
|
||||
class getCarriedBy { recompile = 1; };
|
||||
class beingCarried { recompile = 1; };
|
||||
class setCarriedBy { recompile = 1; }; /* Should not be used by other developers */
|
||||
};
|
||||
class Unconscious {
|
||||
file = "cse\cse_f_states\unconscious\functions";
|
||||
class setUnconsciousState { recompile = 1; };
|
||||
class isUnconscious { recompile = 1; };
|
||||
class getUnconsciousCondition { recompile = 1; };
|
||||
class registerUnconsciousCondition { recompile = 1; };
|
||||
class setCaptiveSwitch { recompile = 1; };
|
||||
class moveToTempGroup { recompile = 1; };
|
||||
class canGoUnconsciousState { recompile = 1; };
|
||||
class setWeaponsCorrectUnconscious { recompile = 1; };
|
||||
};
|
||||
class Visual {
|
||||
file = "cse\cse_f_states\visual\functions";
|
||||
class effectPain { recompile = 1; };
|
||||
class effectBleeding { recompile = 1; };
|
||||
class effectBlackOut { recompile = 1; };
|
||||
};
|
||||
class Movement {
|
||||
file = "cse\cse_f_states\movement\functions";
|
||||
class limitMovementSpeed { recompile = 1; };
|
||||
class limitSpeed { recompile = 1; };
|
||||
};
|
||||
class Arrest {
|
||||
file = "cse\cse_f_states\arrest\functions";
|
||||
class setArrestState { recompile = 1; };
|
||||
class isArrested { recompile = 1; };
|
||||
};
|
||||
class LoadPerson {
|
||||
file = "cse\cse_f_states\LoadPerson\functions";
|
||||
class loadPerson_F { recompile = 1; };
|
||||
class loadPersonLocal_F {recompile = 1; };
|
||||
class makeCopyOfBody_F { recompile = 1; };
|
||||
class makeCopyOfBodyLocal_F { recompile = 1; };
|
||||
class unloadPerson_F { recompile = 1; };
|
||||
class cleanUpCopyOfBody_F { recompile = 1; };
|
||||
};
|
||||
};
|
||||
};
|
@ -1,26 +0,0 @@
|
||||
class Combat_Space_Enhancement
|
||||
{
|
||||
class EventHandlers
|
||||
{
|
||||
class PostInit_EventHandlers
|
||||
{
|
||||
class cse_f_states
|
||||
{
|
||||
init = " call compile preprocessFile 'cse\cse_f_states\init.sqf';";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
class CustomEventHandlers {
|
||||
class setUnconsciousState {}; // [unit, bool]
|
||||
class setArrestState {}; // [unit, bool]
|
||||
class carryObject {}; // [_unit, _to, _fallDown],"carryObject"
|
||||
|
||||
class carryObjectDropped {
|
||||
class cleanUpCopiesAfterDrag { // [unit, droppedObject]
|
||||
onCall = "[_this select 1] call cse_fnc_cleanUpCopyOfBody_f;";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
@ -1,43 +0,0 @@
|
||||
/**
|
||||
* fn_setArrestState.sqf
|
||||
* @Descr: Set a unit in arrest state
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [unitToBeArrested OBJECT, setArrested BOOL]
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_unit","_setArrest"];
|
||||
_unit = [_this, 0, objNull, [objNull]] call BIS_fnc_Param;
|
||||
_setArrest = [_this, 1, false, [false]] call BIS_fnc_Param;
|
||||
|
||||
if (_setArrest) then {
|
||||
[_unit, "cse_state_arrested", true] call cse_fnc_setVariable;
|
||||
|
||||
if ([_unit] call cse_fnc_isAwake) then {
|
||||
if (vehicle _unit == _unit) then {
|
||||
[_unit,"UnaErcPoslechVelitele2",true] call cse_fnc_broadcastAnim;
|
||||
};
|
||||
};
|
||||
if (IsPlayer _unit) then {
|
||||
[["arrested", true],"cse_fnc_disableUserInput_f",_unit,false] call BIS_fnc_MP;
|
||||
};
|
||||
_unit disableAI "Move";
|
||||
_unit disableAI "ANIM";
|
||||
} else {
|
||||
[_unit, "cse_state_arrested", false] call cse_fnc_setVariable;
|
||||
|
||||
if ([_unit] call cse_fnc_isAwake) then {
|
||||
if (vehicle _unit == _unit) then {
|
||||
[_unit,"",true] call cse_fnc_broadcastAnim;
|
||||
};
|
||||
_unit enableAI "Move";
|
||||
_unit enableAI "ANIM";
|
||||
};
|
||||
if (IsPlayer _unit) then {
|
||||
[["arrested", false],"cse_fnc_disableUserInput_f",_unit,false] call BIS_fnc_MP;
|
||||
};
|
||||
};
|
||||
|
||||
[[_unit, _setArrest],"setArrestState"] call cse_fnc_customEventHandler_F;
|
@ -1,74 +0,0 @@
|
||||
/**
|
||||
* fn_carryObj.sqf
|
||||
* @Descr: Have a unit carry an object. Use ObjNull for second parameter if you want the unit to carry nothing
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [unit OBJECT, objectToCarry OBJECT, attachToVector ARRAY (Optional)]
|
||||
* @Return: BOOL Returns true if succesful
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_unit","_to","_return", "_fallDown", "_carriedObj", "_positionUnit"];
|
||||
_unit = [_this, 0,ObjNull, [ObjNull]] call bis_fnc_param;
|
||||
_to = [_this, 1,ObjNull, [ObjNull]] call bis_fnc_param;
|
||||
_fallDown = false;
|
||||
if (count _this > 3) then {
|
||||
_fallDown = _this select 3;
|
||||
};
|
||||
_return = false;
|
||||
|
||||
[format["fnc_carryObj - UNIT: %1 ATTEMPTS TO CARRY %2",_unit,_to],2] call cse_fnc_debug;
|
||||
|
||||
if (((typeName _to) == "OBJECT" && (isNull ([_unit] call cse_fnc_getCarriedObj))) || isNull _to) then {
|
||||
if (vehicle _unit != _unit) exitwith {};
|
||||
if (!isNull _to) then {
|
||||
if ((isNull ([_to] call cse_fnc_getCarriedObj)) && ([_unit] call cse_fnc_canInteract)) then {
|
||||
_return = true;
|
||||
_unit setvariable ["cse_carriedObj",_to,true];
|
||||
if (_fallDown) then {
|
||||
// [_unit,_fallDown] call cse_fnc_limitMovementSpeed;
|
||||
};
|
||||
[_to, _unit] call cse_fnc_setCarriedBy;
|
||||
if (count _this > 2) then {
|
||||
if (count (_this select 2) == 3) then {
|
||||
_to attachTo [_unit,(_this select 2)];
|
||||
[format["fnc_carryObj - UNIT: %1 TO %2 - attachTo offset: %3",_unit,_to,(_this select 2)],2] call cse_fnc_debug;
|
||||
};
|
||||
} else {
|
||||
[format["fnc_carryObj - UNIT: %1 TO %2 - Script expects external handling of attachTo Command. Exiting",_unit,_to],2] call cse_fnc_debug;
|
||||
};
|
||||
|
||||
[[_unit, _to, _fallDown],"carryObject"] call cse_fnc_customEventHandler_F;
|
||||
|
||||
};
|
||||
} else {
|
||||
if (!isNull ([_unit] call cse_fnc_getCarriedObj)) then {
|
||||
[format["fnc_carryObj - UNIT: %1 DROPING CARRIED OBJECT",_unit],2] call cse_fnc_debug;
|
||||
_carriedObj = ([_unit] call cse_fnc_getCarriedObj);
|
||||
|
||||
detach _carriedObj;
|
||||
//_carriedObj setPosATL [(getPosATL _carriedObj) select 0, (getPosATL _carriedObj) select 1,0];
|
||||
if (!surfaceIsWater getPos _unit) then {
|
||||
_positionUnit = getPosATL _carriedObj;
|
||||
_positionUnit set [2, ((getPosATL _unit) select 2) + 0.1];
|
||||
_carriedObj setPosATL _positionUnit;
|
||||
} else {
|
||||
_positionUnit = getPosASL _carriedObj;
|
||||
_positionUnit set [2, ((getPosASL _unit) select 2) + 0.1];
|
||||
_carriedObj setPosASL _positionUnit;
|
||||
};
|
||||
[[_unit, _carriedObj],"carryObjectDropped"] call cse_fnc_customEventHandler_F;
|
||||
|
||||
[[_unit] call cse_fnc_getCarriedObj, objNull] call cse_fnc_setCarriedBy;
|
||||
_unit setvariable ["cse_carriedObj",_to,true];
|
||||
_return = true;
|
||||
|
||||
[[_unit, _to, _fallDown],"carryObject"] call cse_fnc_customEventHandler_F;
|
||||
};
|
||||
};
|
||||
} else {
|
||||
[format["fnc_carryObj - UNIT: %1 FAILED TO CARRY %2 - not an object or already carrying",_unit,_to],2] call cse_fnc_debug;
|
||||
};
|
||||
|
||||
//[format["UNIT: %1 ATTEMPTS TO CARRY %2",_unit,_to],2] call cse_fnc_debug;
|
||||
_return
|
@ -1,26 +0,0 @@
|
||||
#define _ARMA_
|
||||
class CfgPatches
|
||||
{
|
||||
class cse_f_states
|
||||
{
|
||||
units[] = {};
|
||||
weapons[] = {};
|
||||
requiredVersion = 0.1;
|
||||
requiredAddons[] = {"cse_main"};
|
||||
version = "0.5";
|
||||
author[] = {"Combat Space Enhancement"};
|
||||
authorUrl = "http://csemod.com";
|
||||
};
|
||||
};
|
||||
class CfgAddons {
|
||||
class PreloadAddons {
|
||||
class cse_f_states {
|
||||
list[] = {"cse_f_states"};
|
||||
};
|
||||
};
|
||||
};
|
||||
#include "CfgFunctions.h"
|
||||
#include "Combat_Space_Enhancement.h"
|
||||
#include "define.hpp"
|
||||
#include "visual\empty.hpp"
|
||||
#include "visual\effects.hpp"
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,104 +0,0 @@
|
||||
/*
|
||||
|
||||
*/
|
||||
|
||||
|
||||
cse_fnc_setCanSwitchAnim = {
|
||||
private ["_unit","_to","_return"];
|
||||
_unit = _this select 0;
|
||||
_to = _this select 1;
|
||||
_return = false;
|
||||
if (((typeName _to) == "BOOL")) then {
|
||||
_unit setvariable ["cse_canSwitchAnimation",_to,true];
|
||||
_return = true;
|
||||
};
|
||||
_return
|
||||
};
|
||||
cse_fnc_getCanSwitchAnim = {
|
||||
private ["_unit","_return"];
|
||||
_unit = _this select 0;
|
||||
_return = _unit getvariable "cse_canSwitchAnimation";
|
||||
_return
|
||||
};
|
||||
|
||||
cse_fnc_setCurrentMenu = {
|
||||
_unit = _this select 0;
|
||||
_to = _this select 1;
|
||||
_return = false;
|
||||
if ((typeName _to) == "STRING") then {
|
||||
_unit setvariable ["cse_currentMenu",_to,true];
|
||||
_return = true;
|
||||
};
|
||||
_return
|
||||
};
|
||||
cse_fnc_getCurrentMenu = {
|
||||
_unit = _this select 0;
|
||||
_return = _unit getvariable ["cse_currentMenu",""];
|
||||
_return
|
||||
};
|
||||
|
||||
cse_fnc_changeBlurialVisionState = {
|
||||
private ["_unit","_to"];
|
||||
_unit = _this select 0;
|
||||
_to = _this select 1;
|
||||
_return = false;
|
||||
if (((typeName _to) == "SCALAR")) then {
|
||||
if (_to < -1) then {
|
||||
_to = -1;
|
||||
} else {
|
||||
if (_to > 1) then {
|
||||
_to = 1;
|
||||
};
|
||||
};
|
||||
_unit setvariable ["cse_blurialVisualState", [_unit] call cse_fnc_getBlurialVisionState + _to,false];
|
||||
_return = true;
|
||||
};
|
||||
_return
|
||||
};
|
||||
cse_fnc_getBlurialVisionState = {
|
||||
private ["_unit"];
|
||||
_unit = _this select 0;
|
||||
_return = _unit getvariable ["cse_blurialVisualState",0];
|
||||
_return
|
||||
};
|
||||
|
||||
// EVERYTHING BELOW HERE IS STILL WORK IN PROGRESS
|
||||
|
||||
cse_fnc_setMovementState = {
|
||||
private ["_unit","_to"];
|
||||
_unit = _this select 0;
|
||||
_to = _this select 1;
|
||||
_return = false;
|
||||
if (((typeName _to) == "SCALAR")) then {
|
||||
_unit setvariable ["cse_movementState",_to,false];
|
||||
_return = true;
|
||||
};
|
||||
_return
|
||||
};
|
||||
cse_fnc_getMovementState = {
|
||||
private ["_unit"];
|
||||
_unit = _this select 0;
|
||||
_return = _unit getvariable ["cse_movementState",0];
|
||||
_return
|
||||
};
|
||||
|
||||
cse_fnc_setHearingState = {
|
||||
private ["_unit","_to"];
|
||||
_unit = _this select 0;
|
||||
_to = _this select 1;
|
||||
_return = false;
|
||||
if (((typeName _to) == "SCALAR")) then {
|
||||
_unit setvariable ["cse_hearingState",_to,false];
|
||||
_return = true;
|
||||
};
|
||||
_return
|
||||
};
|
||||
cse_fnc_getHearingState = {
|
||||
private ["_unit"];
|
||||
_unit = _this select 0;
|
||||
_return = _unit getvariable ["cse_hearingState",0];
|
||||
_return
|
||||
};
|
||||
|
||||
|
||||
|
@ -1,37 +0,0 @@
|
||||
/*
|
||||
|
||||
*/
|
||||
|
||||
call compileFinal preprocessFile "cse\cse_f_states\functions.sqf";
|
||||
|
||||
if (!isDedicated) then {
|
||||
45 cutRsc ["RscCSEScreenEffectsBlack","PLAIN"];
|
||||
};
|
||||
|
||||
if (isServer) then {
|
||||
CSE_LOGIC_OBJECT = (createGroup sideLogic) createUnit ["logic", [1,1,1], [], 0, "FORM"];
|
||||
publicVariable "CSE_LOGIC_OBJECT";
|
||||
};
|
||||
|
||||
|
||||
["cse_isDead",false,true,"cse"] call cse_fnc_defineVariable;
|
||||
["cse_isDeadPlayer", false, true, "cse"] call cse_fnc_defineVariable;
|
||||
["cse_state_arrested",false,true,"cse"] call cse_fnc_defineVariable;
|
||||
["cse_state_unconscious",false,true,"cse"] call cse_fnc_defineVariable;
|
||||
["CSE_ENABLE_REVIVE_SETDEAD_F",0,false,"cse"] call cse_fnc_defineVariable;
|
||||
["cse_carriedBy",objNull,false,"cse"] call cse_fnc_defineVariable;
|
||||
|
||||
if (isnil "CSE_MARKED_FOR_GABAGE_COLLECTION") then {
|
||||
CSE_MARKED_FOR_GABAGE_COLLECTION = [];
|
||||
};
|
||||
|
||||
[] spawn {
|
||||
waituntil {
|
||||
{
|
||||
deleteVehicle _x;
|
||||
false;
|
||||
}count CSE_MARKED_FOR_GABAGE_COLLECTION;
|
||||
CSE_MARKED_FOR_GABAGE_COLLECTION = CSE_MARKED_FOR_GABAGE_COLLECTION - [objNull];
|
||||
false;
|
||||
};
|
||||
};
|
@ -1,37 +0,0 @@
|
||||
/**
|
||||
* fn_loadPersonLocal_f.sqf
|
||||
* @Descr: Load a person, local
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [unit OBJECT, vehicle OBJECT, caller OBJECT]
|
||||
* @Return: void
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_unit","_vehicle","_caller","_handle","_loaded"];
|
||||
_unit = [_this, 0, ObjNull,[ObjNull]] call BIS_fnc_Param;
|
||||
_vehicle = [_this, 1, ObjNull,[ObjNull]] call BIS_fnc_Param;
|
||||
_caller = [_this, 2, ObjNull,[ObjNull]] call BIS_fnc_Param;
|
||||
|
||||
if (!alive _unit) then {
|
||||
_unit = [_unit,_caller] call cse_fnc_makeCopyOfBody_F;
|
||||
};
|
||||
|
||||
_unit moveInCargo _vehicle;
|
||||
_loaded = _vehicle getvariable ["cse_loaded_persons_F",[]];
|
||||
_loaded pushback _unit;
|
||||
_vehicle setvariable ["cse_loaded_persons_F",_loaded,true];
|
||||
if (!([_unit] call cse_fnc_isAwake)) then {
|
||||
_handle = [_unit,_vehicle] spawn {
|
||||
private ["_unit","_vehicle"];
|
||||
_unit = _this select 0;
|
||||
_vehicle = _this select 1;
|
||||
waituntil {vehicle _unit == _vehicle};
|
||||
sleep 0.5;
|
||||
[_unit,([_unit] call cse_fnc_getDeathAnim)] call cse_fnc_broadcastAnim;
|
||||
};
|
||||
} else {
|
||||
if ([_unit] call cse_fnc_isArrested) then {
|
||||
|
||||
};
|
||||
};
|
@ -1,40 +0,0 @@
|
||||
/**
|
||||
* fn_loadPerson_f.sqf
|
||||
* @Descr: Loads a specified unit into any nearby vehicle
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [caller OBJECT, unitToBeLoaded OBJECT]
|
||||
* @Return: OBJECT Returns the vehicle that the unitToBeloaded has been loaded in. Returns ObjNull if function failed
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
#define GROUP_SWITCH_ID "cse_fnc_loadPerson_F"
|
||||
|
||||
private ["_caller", "_unit","_vehicle", "_loadcar", "_loadhelicopter", "_loadtank"];
|
||||
_caller = [_this, 0, ObjNull,[ObjNull]] call BIS_fnc_Param;
|
||||
_unit = [_this, 1, ObjNull,[ObjNull]] call BIS_fnc_Param;
|
||||
_vehicle = ObjNull;
|
||||
|
||||
if (!([_caller] call cse_fnc_canInteract) || {_caller == _unit}) exitwith {_vehicle};
|
||||
|
||||
_loadcar = nearestObject [_unit, "car"];
|
||||
if (_unit distance _loadcar <= 10) then {
|
||||
_vehicle = _loadcar;
|
||||
} else {
|
||||
_loadhelicopter = nearestObject [_unit, "air"];
|
||||
if (_unit distance _loadhelicopter <= 10) then {
|
||||
_vehicle = _loadhelicopter;
|
||||
} else {
|
||||
_loadtank = nearestObject [_unit, "tank"];
|
||||
if (_unit distance _loadtank <= 10) then {
|
||||
_vehicle = _loadtank;
|
||||
};
|
||||
};
|
||||
};
|
||||
if (!isNull _vehicle) then {
|
||||
[_unit, true, GROUP_SWITCH_ID, side group _caller] call cse_fnc_switchToGroupSide_f;
|
||||
[_caller,objNull] call cse_fnc_carryObj;
|
||||
[_unit,objNull] call cse_fnc_carryObj;
|
||||
[[_unit, _vehicle,_caller], "cse_fnc_loadPersonLocal_F", _unit, false] spawn BIS_fnc_MP;
|
||||
};
|
||||
_vehicle
|
@ -1,62 +0,0 @@
|
||||
/**
|
||||
* fn_makeCopyOfBodyLocal_f.sqf
|
||||
* @Descr: Makes a copy of a dead body. For handling dead bodies for actions such as load and carry.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [oldBody OBJECT, newUnit OBJECT]
|
||||
* @Return: void
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_oldBody","_newUnit","_class","_group","_position","_side","_allVariables"];
|
||||
_oldBody = _this select 0;
|
||||
_newUnit = _this select 1;
|
||||
|
||||
if (alive _oldBody) exitwith {}; // we only want to do this for dead bodies
|
||||
_name = _oldBody getvariable ["cse_name","unknown"];
|
||||
_allVariables = [_oldBody] call cse_fnc_getAllSetVariables;
|
||||
// [NAME (STRING), TYPENAME (STRING), VALUE (ANY), DEFAULT GLOBAL (BOOLEAN)]
|
||||
{
|
||||
[_newUnit,_x select 0, _x select 2] call cse_fnc_setVariable;
|
||||
}foreach _allVariables;
|
||||
_newUnit setVariable ["cse_name",_name,true];
|
||||
|
||||
_newUnit disableAI "TARGET";
|
||||
_newUnit disableAI "AUTOTARGET";
|
||||
_newUnit disableAI "MOVE";
|
||||
_newUnit disableAI "ANIM";
|
||||
_newUnit disableAI "FSM";
|
||||
_newUnit setvariable ["cse_isDead",true,true];
|
||||
|
||||
removeallweapons _newUnit;
|
||||
removeallassigneditems _newUnit;
|
||||
removeUniform _newUnit;
|
||||
removeHeadgear _newUnit;
|
||||
removeBackpack _newUnit;
|
||||
removeVest _newUnit;
|
||||
|
||||
|
||||
_newUnit addHeadgear (headgear _oldBody);
|
||||
_newUnit addBackpack (backpack _oldBody);
|
||||
clearItemCargoGlobal (backpackContainer _newUnit);
|
||||
clearMagazineCargoGlobal (backpackContainer _newUnit);
|
||||
clearWeaponCargoGlobal (backpackContainer _newUnit);
|
||||
|
||||
_newUnit addVest (vest _oldBody);
|
||||
clearItemCargoGlobal (backpackContainer _newUnit);
|
||||
clearMagazineCargoGlobal (backpackContainer _newUnit);
|
||||
clearWeaponCargoGlobal (backpackContainer _newUnit);
|
||||
|
||||
_newUnit addUniform (uniform _oldBody);
|
||||
clearItemCargoGlobal (backpackContainer _newUnit);
|
||||
clearMagazineCargoGlobal (backpackContainer _newUnit);
|
||||
clearWeaponCargoGlobal (backpackContainer _newUnit);
|
||||
|
||||
{_newUnit addMagazine _x} count (magazines _oldBody);
|
||||
{_newUnit addWeapon _x} count (weapons _oldBody);
|
||||
{_newUnit addItem _x} count (items _oldBody);
|
||||
|
||||
_newUnit selectWeapon (primaryWeapon _newUnit);
|
||||
//[_newUnit,([_newUnit] call cse_fnc_getDeathAnim)] call cse_fnc_broadcastAnim;
|
||||
|
||||
deleteVehicle _oldBody;
|
@ -1,88 +0,0 @@
|
||||
/**
|
||||
* fn_makeCopyOfBody_f.sqf
|
||||
* @Descr: Makes a copy of a dead body. For handling dead bodies for actions such as load and carry.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [oldBody OBJECT, caller OBJECT]
|
||||
* @Return: newUnit OBJECT Returns the copy of the unit. If no copy could be made, returns the oldBody
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_oldBody","_newUnit","_class","_group","_position","_side","_allVariables"];
|
||||
_oldBody = _this select 0;
|
||||
_caller = _this select 1;
|
||||
|
||||
if (alive _oldBody) exitwith {_oldBody}; // we only want to do this for dead bodies
|
||||
_name = _oldBody getvariable ["cse_name","unknown"];
|
||||
_class = typeof _oldBody;
|
||||
_side = side _caller;
|
||||
_group = createGroup _side;
|
||||
_position = getPos _oldBody;
|
||||
|
||||
_newUnit = _group createUnit [typeof _oldBody, _position, [], 0, "NONE"];
|
||||
|
||||
_allVariables = [_oldBody] call cse_fnc_getAllSetVariables;
|
||||
// [NAME (STRING), TYPENAME (STRING), VALUE (ANY), DEFAULT GLOBAL (BOOLEAN)]
|
||||
{
|
||||
[_newUnit,_x select 0, _x select 2] call cse_fnc_setVariable;
|
||||
}foreach _allVariables;
|
||||
_newUnit setVariable ["cse_name",_name,true];
|
||||
|
||||
_newUnit disableAI "TARGET";
|
||||
_newUnit disableAI "AUTOTARGET";
|
||||
_newUnit disableAI "MOVE";
|
||||
_newUnit disableAI "ANIM";
|
||||
_newUnit disableAI "FSM";
|
||||
_newUnit setvariable ["cse_isDead",true,true];
|
||||
|
||||
removeallweapons _newUnit;
|
||||
removeallassigneditems _newUnit;
|
||||
removeUniform _newUnit;
|
||||
removeHeadgear _newUnit;
|
||||
removeBackpack _newUnit;
|
||||
removeVest _newUnit;
|
||||
|
||||
|
||||
_newUnit addHeadgear (headgear _oldBody);
|
||||
_newUnit addBackpack (backpack _oldBody);
|
||||
clearItemCargoGlobal (backpackContainer _newUnit);
|
||||
clearMagazineCargoGlobal (backpackContainer _newUnit);
|
||||
clearWeaponCargoGlobal (backpackContainer _newUnit);
|
||||
|
||||
_newUnit addVest (vest _oldBody);
|
||||
clearItemCargoGlobal (backpackContainer _newUnit);
|
||||
clearMagazineCargoGlobal (backpackContainer _newUnit);
|
||||
clearWeaponCargoGlobal (backpackContainer _newUnit);
|
||||
|
||||
_newUnit addUniform (uniform _oldBody);
|
||||
clearItemCargoGlobal (backpackContainer _newUnit);
|
||||
clearMagazineCargoGlobal (backpackContainer _newUnit);
|
||||
clearWeaponCargoGlobal (backpackContainer _newUnit);
|
||||
|
||||
{_newUnit addMagazine _x} count (magazines _oldBody);
|
||||
{_newUnit addWeapon _x} count (weapons _oldBody);
|
||||
{_newUnit addItem _x} count (items _oldBody);
|
||||
|
||||
_newUnit selectWeapon (primaryWeapon _newUnit);
|
||||
//_newUnit playMoveNow ([_newUnit] call cse_fnc_getDeathAnim);
|
||||
|
||||
deleteVehicle _oldBody;
|
||||
|
||||
// try and clean it up entirely.
|
||||
if (!isNull _oldBody) then {
|
||||
|
||||
if (isMultiplayer) then {
|
||||
_oldBody hideObjectGlobal true;
|
||||
} else {
|
||||
_oldBody hideObject true;
|
||||
};
|
||||
_oldBody setvariable ["cse_originalCopy_f", true];
|
||||
_newUnit setvariable ["cse_copyOfBody_f", _oldBody];
|
||||
if (isnil "CSE_MARKED_FOR_GABAGE_COLLECTION") then {
|
||||
CSE_MARKED_FOR_GABAGE_COLLECTION = [];
|
||||
};
|
||||
CSE_MARKED_FOR_GABAGE_COLLECTION pushback _oldBody;
|
||||
};
|
||||
|
||||
_newUnit setDamage 0.9;
|
||||
_newUnit
|
@ -1,57 +0,0 @@
|
||||
/**
|
||||
* fn_unloadPerson_f.sqf
|
||||
* @Descr: Unload a person from a vehicle
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [caller OBJECT, unit OBJECT]
|
||||
* @Return: BOOL Returns true if succesfully unloaded person
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
#define GROUP_SWITCH_ID "cse_fnc_loadPerson_F"
|
||||
|
||||
private ["_caller", "_unit","_vehicle", "_loaded"];
|
||||
_caller = [_this, 0, ObjNull,[ObjNull]] call BIS_fnc_Param;
|
||||
_unit = [_this, 1, ObjNull,[ObjNull]] call BIS_fnc_Param;
|
||||
_vehicle = vehicle _unit;
|
||||
|
||||
if (_vehicle == _unit) exitwith {false;};
|
||||
if !(speed _vehicle <1 && (((getpos _vehicle) select 2) < 2)) exitwith {false;};
|
||||
if (!([_caller] call cse_fnc_isAwake)) exitwith{false;};
|
||||
|
||||
moveOut _unit;
|
||||
unassignVehicle _unit;
|
||||
if (!alive _unit) then {
|
||||
_unit action ["Eject", vehicle _unit];
|
||||
};
|
||||
|
||||
[_unit, false, GROUP_SWITCH_ID, side group _caller] call cse_fnc_switchToGroupSide_f;
|
||||
|
||||
_loaded = _vehicle getvariable ["cse_loaded_persons_F",[]];
|
||||
_loaded = _loaded - [_unit];
|
||||
_vehicle setvariable ["cse_loaded_persons_F",_loaded,true];
|
||||
|
||||
if (!([_unit] call cse_fnc_isAwake)) then {
|
||||
_handle = [_unit,_vehicle] spawn {
|
||||
private ["_unit","_vehicle"];
|
||||
_unit = _this select 0;
|
||||
_vehicle = _this select 1;
|
||||
waituntil {vehicle _unit != _vehicle};
|
||||
[_unit,([_unit] call cse_fnc_getDeathAnim)] call cse_fnc_broadcastAnim;
|
||||
[format["Unit should move into death anim: %1", _unit]] call cse_fnc_Debug;
|
||||
};
|
||||
} else {
|
||||
if ([_unit] call cse_fnc_isArrested) then {
|
||||
_handle = [_unit,_vehicle] spawn {
|
||||
_unit = _this select 0;
|
||||
_vehicle = _this select 1;
|
||||
waituntil {vehicle _unit != _vehicle};
|
||||
[_unit,"UnaErcPoslechVelitele2",true] call cse_fnc_broadcastAnim;
|
||||
[format["Unit should move into arrested anim: %1", _unit]] call cse_fnc_Debug;
|
||||
};
|
||||
} else {
|
||||
[format["Unit should move into normal anim: %1", _unit]] call cse_fnc_Debug;
|
||||
};
|
||||
};
|
||||
|
||||
true;
|
@ -1,34 +0,0 @@
|
||||
/**
|
||||
* fn_limitMovementSpeed.sqf
|
||||
* @Descr: Limits the movement speed of a unit
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [unit OBJECT, fallDown BOOL (Optional)]
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
_this spawn {
|
||||
private ["_unit","_carriedObj"];
|
||||
_unit = _this select 0;
|
||||
_fallDown = false;
|
||||
if (count _this > 1) then {
|
||||
_fallDown = _this select 1;
|
||||
};
|
||||
_carriedObj = [_unit] call cse_fnc_getCarriedObj;
|
||||
while {sleep 1;_carriedObj = [_unit] call cse_fnc_getCarriedObj; ((!isNull _carriedObj) && (alive _unit))} do {
|
||||
if (speed _unit > 12 && vehicle _unit == _unit) then {
|
||||
[format["Unit ran to fast (Speed: %1, is now dropping carrying obj",speed _unit],2] call cse_fnc_debug;
|
||||
if (_fallDown) then {
|
||||
_unit playMove "amovppnemstpsraswrfldnon";
|
||||
};
|
||||
|
||||
if (_carriedObj isKindOf "Man") then {
|
||||
hint "You can not move this fast while transporting this person.";
|
||||
} else {
|
||||
hint "You can not move this fast while carrying this object";
|
||||
};
|
||||
[_unit,ObjNull] call cse_fnc_carryObj;
|
||||
};
|
||||
};
|
||||
};
|
@ -1,38 +0,0 @@
|
||||
/**
|
||||
* fn_limitSpeed.sqf
|
||||
* @Descr: Limits the speed of an object
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [vehicle OBJECT, maxSpeed NUMBER]
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
_this spawn {
|
||||
private ["_vehicle", "_maxSpeed", "_velocity"];
|
||||
|
||||
_vehicle = _this select 0;
|
||||
_maxSpeed = _this select 1;
|
||||
if ((_vehicle getvariable ["cse_f_limitSpeed",false])) then {
|
||||
_vehicle setvariable ["cse_f_limitSpeed",nil,true];
|
||||
};
|
||||
|
||||
if (_maxSpeed < 0) exitwith {};
|
||||
_vehicle setvariable ["cse_f_limitSpeed",true,true];
|
||||
|
||||
waitUntil {
|
||||
_speed = speed _vehicle;
|
||||
if (_speed > _maxSpeed) then {
|
||||
_velocity = velocity _vehicle;
|
||||
_x = _velocity select 0;
|
||||
_y = _velocity select 1;
|
||||
_z = _velocity select 2;
|
||||
|
||||
_diff = _speed - _maxSpeed;
|
||||
_percentage = (_speed / 100) * _diff;
|
||||
_newVelocity = [_x - (_x * _percentage), _y - (_y * _percentage), _z - (_z * _percentage)];
|
||||
_vehicle setVelocity _newVelocity;
|
||||
};
|
||||
!(_vehicle getvariable ["cse_f_limitSpeed",false])
|
||||
};
|
||||
};
|
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<Project name="Combat Space Enhancement">
|
||||
<Package name="cse_f_states">
|
||||
<Container ID="States">
|
||||
</Container>
|
||||
</Package>
|
||||
</Project>
|
@ -1,32 +0,0 @@
|
||||
/**
|
||||
* fn_getUnconsciousCondition.sqf
|
||||
* @Descr: get whatever or not a unit should be or stay unconscious
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [unit OBJECT]
|
||||
* @Return: BOOL True when the unit should be unconscious
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_unit","_return"];
|
||||
_unit = _this select 0;
|
||||
|
||||
|
||||
if (isnil "CSE_UNCONSCIOUS_CONDITIONS_F") then {
|
||||
CSE_UNCONSCIOUS_CONDITIONS_F = [];
|
||||
};
|
||||
|
||||
_return = false;
|
||||
{
|
||||
|
||||
|
||||
if (typeName _x == typeName {}) then {
|
||||
if (([_unit] call _x)) then {
|
||||
_return = true;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
if (_return) exitwith{};
|
||||
}foreach CSE_UNCONSCIOUS_CONDITIONS_F;
|
||||
_return
|
@ -1,30 +0,0 @@
|
||||
/**
|
||||
* fn_moveToTempGroup_f.sqf
|
||||
* Moves a unit into a temporarly group and stores its original group to allow rejoining.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [unit OBJECT, moveToTempGroup BOOL]
|
||||
* @Return: void
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_unit","_moveTo","_previousGroup","_newGroup", "_currentGroup", "_switchToGroup"];
|
||||
_unit = [_this, 0,ObjNull,[ObjNull]] call BIS_fnc_Param;
|
||||
_moveTo = [_this, 1,false,[false]] call BIS_fnc_Param;
|
||||
|
||||
if (_moveTo) then {
|
||||
_previousGroup = group _unit;
|
||||
_newGroup = createGroup (side _previousGroup);
|
||||
[_unit] joinSilent _newGroup;
|
||||
_unit setvariable ["cse_previous_group_f",_previousGroup];
|
||||
} else {
|
||||
_previousGroup = _unit getvariable "cse_previous_group_f";
|
||||
if (!isnil "_previousGroup") then {
|
||||
_currentGroup = group _unit;
|
||||
_unit setvariable ["cse_previous_group_f",nil];
|
||||
[_unit] joinSilent _previousGroup;
|
||||
if (count units _currentGroup == 0) then {
|
||||
deleteGroup _currentGroup;
|
||||
};
|
||||
};
|
||||
};
|
@ -1,95 +0,0 @@
|
||||
/**
|
||||
* fn_setUnconsciousState.sqf
|
||||
* @Descr: Sets a unit in the unconscious state
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [unit OBJECT]
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
|
||||
private ["_unit", "_animState", "_dAnim"];
|
||||
_unit = _this select 0;
|
||||
|
||||
_dAnim = ([_unit] call cse_fnc_getDeathAnim);
|
||||
if !([_unit] call cse_fnc_canGoUnconsciousState) exitwith{};
|
||||
if (!local _unit) exitwith {
|
||||
[[_unit], "cse_fnc_setUnconsciousState", _unit, false] spawn BIS_fnc_MP;
|
||||
};
|
||||
|
||||
// get rid of the object we are carrying, before we go unconscious.
|
||||
[_unit, ObjNull, [0,0,0]] call cse_fnc_carryObj;
|
||||
|
||||
_unit setvariable ["cse_state_unconscious",true,true];
|
||||
[_unit] call cse_fnc_setWeaponsCorrectUnconscious;
|
||||
|
||||
_animState = animationState _unit;
|
||||
|
||||
_originalPos = unitPos _unit;
|
||||
if (isPlayer _unit) then {
|
||||
[] call cse_fnc_closeAllDialogs_f;
|
||||
[true] call cse_fnc_effectBlackOut;
|
||||
["unconscious", true] call cse_fnc_disableUserInput_f;
|
||||
[false] call cse_fnc_setVolume_f;
|
||||
|
||||
/* Disable this, because the disableUserInput function call above - users already cannot leave vehicles because of that function. */
|
||||
//[_unit] spawn cse_fnc_lockVehicleOfUnitUntil;
|
||||
} else {
|
||||
_unit setUnitPos "DOWN";
|
||||
[_unit, true] call cse_fnc_disableAI_F;
|
||||
};
|
||||
[_unit, true, "cse_unconsciousState", side group _unit] call cse_fnc_switchToGroupSide_f;
|
||||
|
||||
_captiveSwitch = [_unit, true] call cse_fnc_setCaptiveSwitch;
|
||||
_unit setUnconscious true;
|
||||
[_unit, _dAnim] call cse_fnc_localAnim;
|
||||
|
||||
[_unit,_animState, _captiveSwitch, _originalPos] spawn {
|
||||
private ["_unit", "_vehicleOfUnit","_lockSwitch","_minWaitingTime", "_oldAnimation", "_captiveSwitch"];
|
||||
_unit = _this select 0;
|
||||
_oldAnimation = _this select 1;
|
||||
_captiveSwitch = _this select 2;
|
||||
_originalPos = _this select 3;
|
||||
|
||||
_minWaitingTime = (round(random(10)+5));
|
||||
_counter = time;
|
||||
while {(((time - _counter) < _minWaitingTime) && {alive _unit})} do {
|
||||
if (vehicle _unit == _unit && {animationState _unit != "deadState" && animationState _unit != "unconscious"} && {(alive _unit)} && {(isNull ([_unit] call cse_fnc_getCarriedBy))}) then {
|
||||
[_unit,([_unit] call cse_fnc_getDeathAnim)] call cse_fnc_broadcastAnim;
|
||||
};
|
||||
sleep 0.1;
|
||||
};
|
||||
waituntil{(!([_unit] call cse_fnc_getUnconsciousCondition) || !alive _unit)};
|
||||
[format["setUnconsciousState false - %1",_unit]] call cse_fnc_debug;
|
||||
sleep 0.5;
|
||||
if (_captiveSwitch) then {
|
||||
[_unit, false] call cse_fnc_setCaptiveSwitch;
|
||||
};
|
||||
_unit setUnconscious false;
|
||||
[_unit, false, "cse_unconsciousState", side group _unit] call cse_fnc_switchToGroupSide_f;
|
||||
|
||||
if (isPlayer _unit) then {
|
||||
[false] call cse_fnc_effectBlackOut;
|
||||
[true] call cse_fnc_setVolume_f;
|
||||
["unconscious", false] call cse_fnc_disableUserInput_f;
|
||||
} else {
|
||||
[_unit, false] call cse_fnc_disableAI_F;
|
||||
_unit setUnitPos _originalPos; // This is not position but stance (DOWN, MIDDLE, UP)
|
||||
};
|
||||
|
||||
waituntil {!([_unit] call cse_fnc_beingCarried)};
|
||||
if (alive _unit) then {
|
||||
if (vehicle _unit == _unit) then {
|
||||
[format["Resetting unit animiation to normal %1",_unit]] call cse_fnc_debug;
|
||||
//[_unit,"",false] call cse_fnc_broadcastAnim;
|
||||
[_unit,"amovppnemstpsnonwnondnon",false] call cse_fnc_broadcastAnim;
|
||||
} else {
|
||||
[format["Resetting unit animiation to oldAnimation %1 - %2",_unit, _oldAnimation]] call cse_fnc_debug;
|
||||
[_unit, _oldAnimation,false] call cse_fnc_broadcastAnim;
|
||||
};
|
||||
_unit setvariable ["cse_state_unconscious", false, true];
|
||||
};
|
||||
[[_unit, false],"setUnconsciousState"] call cse_fnc_customEventHandler_F;
|
||||
};
|
||||
[[_unit, true],"setUnconsciousState"] call cse_fnc_customEventHandler_F;
|
@ -1,312 +0,0 @@
|
||||
class RscTitles{
|
||||
class RscCSEScreenEffectsBlack {
|
||||
duration = 10e10;
|
||||
idd = 1111;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSEFadingBlackUI', _this select 0];";
|
||||
|
||||
class controlsBackground {
|
||||
class cse_BlackScreen: cse_gui_backgroundBase {
|
||||
text = "cse\cse_f_states\data\black_out1.paa";
|
||||
colorText[] = {0.0, 0.0, 0.0, 0.0};
|
||||
idc = 11112;
|
||||
x = safezoneX;
|
||||
y = safezoneY;
|
||||
w = safezoneW;
|
||||
h = safezoneH;
|
||||
};
|
||||
};
|
||||
};
|
||||
class RscCSEScreenEffectsPain {
|
||||
duration = 1;
|
||||
idd = 1111;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSEPainScreen', _this select 0];";
|
||||
|
||||
class controlsBackground {
|
||||
class cse_PainScreen: cse_gui_backgroundBase {
|
||||
text = "cse\cse_f_states\data\pain_screen3.paa";
|
||||
colorText[] = {1, 1, 1, 0.5};
|
||||
idc = 11114;
|
||||
x = safezoneX;
|
||||
y = safezoneY;
|
||||
w = safezoneW;
|
||||
h = safezoneH;
|
||||
};
|
||||
};
|
||||
};
|
||||
class RscCSEScreenEffectsBleeding {
|
||||
duration = 1;
|
||||
idd = 1111;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSEBleedingScreen', _this select 0];";
|
||||
|
||||
class controlsBackground {
|
||||
class cse_BleedingScreen: cse_gui_backgroundBase {
|
||||
text = "cse\cse_f_states\data\cse_bleedingScreen_v5.paa";
|
||||
colorText[] = {0.9, 0.2, 0.2, 0.6};
|
||||
idc = 11113;
|
||||
x = safezoneX;
|
||||
y = safezoneY;
|
||||
w = safezoneW;
|
||||
h = safezoneH;
|
||||
};
|
||||
};
|
||||
};
|
||||
class RscCSEScreenEffectsHit{
|
||||
duration = 1.1;
|
||||
idd = 1111;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSEHitScreen', _this select 0];";
|
||||
|
||||
class controlsBackground {
|
||||
class cse_EffectHit: cse_gui_backgroundBase {
|
||||
text = "cse\cse_f_states\data\hit_screen1.paa";
|
||||
colorText[] = {0.7, 0.2, 0.2, 0.4};
|
||||
idc = 11113;
|
||||
x = safezoneX;
|
||||
y = safezoneY;
|
||||
w = safezoneW;
|
||||
h = safezoneH;
|
||||
};
|
||||
};
|
||||
};
|
||||
class RscCSEScreenEffectsHitPain{
|
||||
duration = 1.1;
|
||||
idd = 1111;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSEHitPainScreen', _this select 0];";
|
||||
|
||||
class controlsBackground {
|
||||
class cse_EffectHitNew: cse_gui_backgroundBase {
|
||||
text = "cse\cse_f_states\data\hit_screen1.paa";
|
||||
colorText[] = {0.9, 0.9, 0.9, 0.7};
|
||||
idc = 11113;
|
||||
x = safezoneX;
|
||||
y = safezoneY;
|
||||
w = safezoneW;
|
||||
h = safezoneH;
|
||||
};
|
||||
};
|
||||
};
|
||||
class RscCSEScreenEffectsBlur {
|
||||
duration = 2;
|
||||
idd = 1111;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSEBlurScreen', _this select 0];";
|
||||
|
||||
class controlsBackground {
|
||||
class cse_BlurScreen: cse_gui_backgroundBase {
|
||||
text = "cse\cse_f_states\data\cse_blurryScreen.paa";
|
||||
colorText[] = {0.5, 0.5, 0.5, 0.2};
|
||||
idc = 11114;
|
||||
x = safezoneX;
|
||||
y = safezoneY;
|
||||
w = safezoneW;
|
||||
h = safezoneH;
|
||||
};
|
||||
};
|
||||
};
|
||||
class cse_progressBar_Sample {
|
||||
idd = -1;
|
||||
onLoad = "uiNamespace setVariable ['cse_progressBar_Sample', _this select 0]; ";
|
||||
fadein = 0;
|
||||
fadeout = 0;
|
||||
duration = 10e10;
|
||||
class Controls {
|
||||
|
||||
class background: cse_gui_backgroundBase {
|
||||
idc = -1;
|
||||
colorBackground[] = {0,0,0,1};
|
||||
colorText[] = {1, 1, 1, 1};
|
||||
x = "1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "29 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "38 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "0.4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
text = "#(argb,8,8,3)color(0,0,0,0.4)";
|
||||
};
|
||||
|
||||
class Progress: cse_gui_RscProgress {
|
||||
idc = 6;
|
||||
x = "1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "29 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "38 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "0.4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
colorFrame[] = {0,0,0,0};
|
||||
colorBar[] = {0.27,0.5,0.31,0.6};
|
||||
// colorBar[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.69])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.75])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.5])", "(profilenamespace getvariable ['GUI_BCG_RGB_A',0.9])"};
|
||||
texture = "#(argb,8,8,3)color(1,1,1,0.7)";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
class CSE_DISPLAY_MESSAGE {
|
||||
duration = 7;
|
||||
idd = 86411;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSE_DISPLAY_MESSAGE', _this select 0];";
|
||||
fadein = 0;
|
||||
class controlsBackground {
|
||||
class header: cse_gui_staticBase {
|
||||
idc = 1;
|
||||
type = CT_STATIC;
|
||||
x = "safezoneX + (safezoneW / 10)";
|
||||
y = "safezoneY + (30 * (safeZoneH / 40))";
|
||||
w = "(safeZoneW / 10)";
|
||||
h = "(safeZoneH / 40)";
|
||||
style = ST_LEFT;
|
||||
font = FontCSE;
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {0.85, 0.85, 0.85, 1.0};
|
||||
colorBackground[] = {0, 0, 0, 0.9};
|
||||
text = "";
|
||||
};
|
||||
class text: header {
|
||||
idc = 2;
|
||||
y = "safezoneY + (31 * (safeZoneH / 40))";
|
||||
w = "(safeZoneW / 10) * 1.3";
|
||||
colorText[] = {0.0, 0.0, 0.0, 1.0};
|
||||
colorBackground[] = {1, 1, 1, 0.9};
|
||||
text = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class CSE_DISPLAY_INFORMATION {
|
||||
duration = 15;
|
||||
idd = 86412;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSE_DISPLAY_INFORMATION', _this select 0];";
|
||||
fadein = 0;
|
||||
class controlsBackground {
|
||||
class header: cse_gui_staticBase {
|
||||
idc = 1;
|
||||
type = CT_STATIC;
|
||||
x = "safezoneX + (safezoneW / 10)";
|
||||
y = "safezoneY + (6 * (safeZoneH / 40))";
|
||||
w = "(safeZoneW / 10)";
|
||||
h = "(safeZoneH / 40)";
|
||||
style = ST_LEFT;
|
||||
font = FontCSE;
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {0.85, 0.85, 0.85, 1.0};
|
||||
colorBackground[] = {0, 0, 0, 0.9};
|
||||
text = "";
|
||||
};
|
||||
class text: header {
|
||||
idc = 2;
|
||||
y = "safezoneY + (7.1 * (safeZoneH / 40))";
|
||||
w = "(safeZoneW / 10) * 1.3";
|
||||
colorText[] = {0.0, 0.0, 0.0, 1.0};
|
||||
colorBackground[] = {1, 1, 1, 0.9};
|
||||
text = "";
|
||||
};
|
||||
class text2: text {
|
||||
idc = 3;
|
||||
y = "safezoneY + (8.2 * (safeZoneH / 40))";
|
||||
};
|
||||
class text3: text {
|
||||
idc = 4;
|
||||
y = "safezoneY + (9.3 * (safeZoneH / 40))";
|
||||
};
|
||||
class text4: text {
|
||||
idc = 5;
|
||||
y = "safezoneY + (10.4 * (safeZoneH / 40))";
|
||||
};
|
||||
class text5: text {
|
||||
idc = 6;
|
||||
y = "safezoneY + (11.5 * (safeZoneH / 40))";
|
||||
};
|
||||
|
||||
|
||||
class icon: cse_gui_backgroundBase {
|
||||
type = CT_STATIC;
|
||||
idc = 10;
|
||||
style = ST_PICTURE;
|
||||
colorBackground[] = {0,0,0,1};
|
||||
colorText[] = {1, 1, 1, 1};
|
||||
font = FontCSE;
|
||||
text = "";
|
||||
sizeEx = 0.032;
|
||||
x = "safezoneX + (safezoneW / 10)";
|
||||
y = "safezoneY + (4 * (safeZoneH / 40))";
|
||||
w = "(safeZoneH / 40)*2";
|
||||
h = "(safeZoneH / 40)*2";
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
class CSE_DISPLAY_MESSAGE_CONCEPT {
|
||||
duration = 15;
|
||||
idd = 86413;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSE_DISPLAY_MESSAGE_CONCEPT', _this select 0];";
|
||||
fadein = 0;
|
||||
class controlsBackground {
|
||||
class header: cse_gui_staticBase {
|
||||
idc = 1;
|
||||
type = CT_STATIC;
|
||||
x = "safezoneX + (safezoneW / 10)";
|
||||
y = "safezoneY + (6 * (safeZoneH / 40))";
|
||||
w = "(safeZoneW / 10)";
|
||||
h = "(safeZoneH / 40)";
|
||||
style = ST_LEFT + ST_SHADOW;
|
||||
font = "EtelkaMonospacePro";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {1,1,1, 1.0};
|
||||
colorBackground[] = {0, 0, 0, 0.0};
|
||||
text = "";
|
||||
shadow = 2;
|
||||
};
|
||||
class text: header {
|
||||
idc = 2;
|
||||
y = "safezoneY + (31 * (safeZoneH / 40))";
|
||||
w = "(safeZoneW / 10) * 1.3";
|
||||
text = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class CSE_sys_field_rations_PlayerStatusUI {
|
||||
duration = 1e+011;
|
||||
idd = 1111;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSE_sys_field_rations_PlayerStatusUI', _this select 0];";
|
||||
class controlsBackground {
|
||||
class FoodStatus: cse_gui_backgroundBase {
|
||||
text = "cse\cse_sys_field_rations\data\hud_foodstatus.paa";
|
||||
colorText[] = {0.0,1.0,0.0,0.4};
|
||||
idc = 11112;
|
||||
x = (safezoneW + safezoneX) - (2 * (((safezoneW / safezoneH) min 1.2) / 40));
|
||||
y = "28 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "1.75 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1.75 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
};
|
||||
class drinkStatus: cse_gui_backgroundBase {
|
||||
text = "cse\cse_sys_field_rations\data\hud_drinkstatus.paa";
|
||||
colorText[] = {0.0,1.0,0.0,0.4};
|
||||
idc = 11113;
|
||||
x = (safezoneW + safezoneX) - (2 * (((safezoneW / safezoneH) min 1.2) / 40));
|
||||
y = "30 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "1.75 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1.75 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
};
|
||||
/* class CamelBak: cse_gui_backgroundBase {
|
||||
text = "cse\cse_sys_field_rations\data\hud_camelbak.paa";
|
||||
colorText[] = {0.0,1.0,0.0,0};
|
||||
idc = 11114;
|
||||
x = "0.955313 * safezoneW + safezoneX";
|
||||
y = "0.80 * safezoneH + safezoneY";
|
||||
w = 0.05;
|
||||
h = 0.09;
|
||||
};*/
|
||||
};
|
||||
};
|
||||
|
||||
// class RscHealthTextures {
|
||||
// onload = "uinamespace setvariable ['RscHealthTextures',_this select 0]; ['RscHealthTextures has activated'] call cse_fnc_debug;";
|
||||
// };
|
||||
};
|
@ -1,21 +0,0 @@
|
||||
class cse_empty_screen {
|
||||
idd = 679123;
|
||||
movingEnable = false;
|
||||
onLoad = "uiNamespace setVariable ['cse_empty_screen', _this select 0];";
|
||||
onUnload = "if (!isnil 'CSE_DISABLE_USER_INPUT_SCREEN') then { createDialog 'cse_empty_screen';};";
|
||||
class controlsBackground {
|
||||
class cse_background : cse_gui_backgroundBase {
|
||||
idc = 1;
|
||||
x = safezoneX;
|
||||
y = safezoneY;
|
||||
w = safezoneW;
|
||||
h = safezoneH;
|
||||
text = "";
|
||||
moving = 0;
|
||||
};
|
||||
};
|
||||
|
||||
class controls {
|
||||
|
||||
};
|
||||
};
|
@ -1,19 +0,0 @@
|
||||
/**
|
||||
* fn_effectBlackOut.sqf
|
||||
* @Descr: Displays the blacked out effect for clients.
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [displayEffect BOOL]
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_displayEffect","_CSEFadingBlackUI"];
|
||||
_displayEffect = [_this, 0, false,[false]] call bis_fnc_param;
|
||||
disableSerialization;
|
||||
_CSEFadingBlackUI = uiNamespace getVariable "CSEFadingBlackUI";
|
||||
if (_displayEffect) then {
|
||||
(_CSEFadingBlackUI displayCtrl 11112) ctrlSetTextColor [0.0,0.0,0.0,0.9];
|
||||
} else {
|
||||
(_CSEFadingBlackUI displayCtrl 11112) ctrlSetTextColor [0.0,0.0,0.0,0.0];
|
||||
};
|
@ -1,30 +0,0 @@
|
||||
/**
|
||||
* fn_effectBleeding.sqf
|
||||
* @Descr: Displays the CSE Bleeding effect
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [bloodLoss NUMBER]
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_handle"];
|
||||
if (isnil "cseDisplayingBleedingEffect") then {
|
||||
cseDisplayingBleedingEffect = false;
|
||||
};
|
||||
if (cseDisplayingBleedingEffect) exitwith {};
|
||||
_handle = _this spawn {
|
||||
private ["_unit","_bloodLoss","_time"];
|
||||
_bloodLoss = _this select 0;
|
||||
if (!(_bloodLoss > 0)) exitwith{};
|
||||
_time = 6 - _bloodLoss;
|
||||
if (_time <1.5) then {
|
||||
_time = 1.5;
|
||||
};
|
||||
cseDisplayingBleedingEffect = true;
|
||||
47 cutRsc ["RscCSEScreenEffectsBleeding","PLAIN"];
|
||||
sleep _time;
|
||||
cseDisplayingBleedingEffect = false;
|
||||
};
|
||||
|
||||
_handle
|
@ -1,27 +0,0 @@
|
||||
/**
|
||||
* fn_effectPain.sqf
|
||||
* @Descr: Displays the CSE Pain effect
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [painRatio NUMBER]
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
if (isnil "cseDisplayingPainEffect") then {
|
||||
cseDisplayingPainEffect = false;
|
||||
};
|
||||
if (cseDisplayingPainEffect) exitwith {};
|
||||
_this spawn {
|
||||
private ["_ratio","_time"];
|
||||
_ratio = _this select 0;
|
||||
if (!(_ratio > 0)) exitwith{};
|
||||
_time = 6 - _ratio;
|
||||
if (_time <1.5) then {
|
||||
_time = 1.5;
|
||||
};
|
||||
cseDisplayingPainEffect = true;
|
||||
46 cutRsc ["RscCSEScreenEffectsPain","PLAIN"];
|
||||
sleep _time;
|
||||
cseDisplayingPainEffect = false;
|
||||
};
|
@ -1,61 +0,0 @@
|
||||
class CfgFunctions {
|
||||
class CSE
|
||||
{
|
||||
class GUI
|
||||
{
|
||||
file = "cse\cse_gui\functions";
|
||||
class gui_keyPressed { recompile = 1; };
|
||||
class gui_createInteractionMenu { recompile = 1; };
|
||||
class gui_addMenuEntry { recompile = 1; };
|
||||
class gui_getMenuEntries { recompile = 1; };
|
||||
class gui_displaySubMenuButtons { recompile = 1; };
|
||||
class gui_hideSubMenuButtons { recompile = 1; };
|
||||
class gui_hideSubSubMenuButtons { recompile = 1; };
|
||||
class gui_sortMenuEntries { recompile = 1; };
|
||||
class gui_refreshLastSubMenu { recompile = 1; };
|
||||
class gui_displayEventHandler { recompile = 1; };
|
||||
class gui_loadingBar { recompile = 1; };
|
||||
class gui_hasOptionAvailable { recompile = 1; };
|
||||
class gui_displayInformation { recompile = 1; };
|
||||
class gui_displayMessage { recompile = 1; };
|
||||
class gui_blurScreen { recompile = 1; };
|
||||
class gui_displayIcon { recompile = 1; };
|
||||
};
|
||||
class RadialMenu {
|
||||
file = "cse\cse_gui\radialmenu";
|
||||
class findTargetOfMenu_GUI { recompile = 1; };
|
||||
class openRadialMenu_GUI {recompile = 1; };
|
||||
class openRadialSubMenu_GUI {recompile = 1; };
|
||||
class setRadialMenuOptions_GUI {recompile = 1; };
|
||||
class setRadialMenuName_GUI { recompile = 1; };
|
||||
class getcurrentRadialTarget_GUI { recompile = 1; };
|
||||
class returnToPreviousSubMenu_GUI { recompile = 1; };
|
||||
class setRadialSecondRing_GUI { recompile = 1; };
|
||||
class openRadialSecondRing_GUI { recompile = 1; };
|
||||
class closeRadialSecondRing_GUI { recompile = 1; };
|
||||
class setRadialMenuTargetName_GUI { recompile = 1; };
|
||||
class findtargetName_GUI { recompile = 1;};
|
||||
class setRadialOptionSelected_GUI { recompile = 1; };
|
||||
class isRadialOptionSelected_GUI { recompile = 1; };
|
||||
class isOpenSecondRing_GUI { recompile = 1; };
|
||||
class addEntryToRadialInteraction_F { recompile = 1; };
|
||||
class createRadialInteraction_F { recompile = 1; };
|
||||
class getRadialInteractionEntries_F { recompile = 1; };
|
||||
class openRadialInteractionMenu_F { recompile = 1; };
|
||||
class radialUsesSorter_F { recompile = 1; };
|
||||
class getEntryToMenuSorter_F { recompile = 1; };
|
||||
class addEntryToMenuSorter_F { recompile = 1; };
|
||||
class createCategoryRadialMenu_F { recompile = 1; };
|
||||
class getAllCategoryEntriesRadialMenu_F { recompile = 1; };
|
||||
class addCategoryEntryRadialMenu_F { recompile = 1; };
|
||||
class hasEntriesRadialInteraction_F { recompile = 1; };
|
||||
class addMultipleEntriesToRadialCategory_F { recompile = 1; };
|
||||
class getIcon_F { recompile = 1; };
|
||||
class categoryHasActionsAvailable_F { recompile = 1; };
|
||||
};
|
||||
class WeaponSelector {
|
||||
file = "cse\cse_gui\WeaponSelector";
|
||||
class onWeaponSelectorOpened_GUI { recompile = 1; };
|
||||
};
|
||||
};
|
||||
};
|
@ -1,13 +0,0 @@
|
||||
class Combat_Space_Enhancement {
|
||||
class EventHandlers {
|
||||
class PostInit_EventHandlers {
|
||||
class cse_gui {
|
||||
init = " call compile preprocessFile 'cse\cse_gui\init.sqf';";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class CustomEventHandlers {
|
||||
class openRadialMenu {}; // [_menuName, _entries, _target]
|
||||
};
|
||||
};
|
@ -1,10 +0,0 @@
|
||||
#include "gui\define.hpp"
|
||||
#include "gui\interactionMenu.hpp"
|
||||
#include "gui\interactionMenu_white.hpp"
|
||||
#include "gui\radial.h"
|
||||
#include "gui\cseLogoPlain.hpp"
|
||||
#include "gui\dynamicMenu.h"
|
||||
#include "gui\RscTitles.h"
|
||||
|
||||
|
||||
// #include "gui\weapon_selector.h"
|
@ -1,25 +0,0 @@
|
||||
#define _ARMA_
|
||||
class CfgPatches
|
||||
{
|
||||
class cse_gui
|
||||
{
|
||||
units[] = {};
|
||||
weapons[] = {};
|
||||
requiredVersion = 0.1;
|
||||
requiredAddons[] = {"a3_ui_f", "cse_main"};
|
||||
version = "0.10.0_rc";
|
||||
author[] = {"Combat Space Enhancement"};
|
||||
authorUrl = "http://csemod.com";
|
||||
};
|
||||
};
|
||||
class CfgAddons {
|
||||
class PreloadAddons {
|
||||
class cse_gui {
|
||||
list[] = {"cse_gui"};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
#include "CfgFunctions.h"
|
||||
#include "Combat_Space_Enhancement.h"
|
||||
#include "GUI.h"
|
Binary file not shown.
@ -1,54 +0,0 @@
|
||||
/**
|
||||
* fn_addCatagoryEntry.sqf
|
||||
* @Descr: Add a Catagory entry to a menu
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [menuName STRING, categoryName STRING, code CODE, condition CODE]
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_menuName","_catagoryName","_code","_condition","_foundMenuName","_foundEntryName","_counter","_onPosMenu","_onPosCatagory","_catagoryCounter","_entryCollection","_entry"];
|
||||
_menuName = [_this,0,"",[""]] call BIS_fnc_Param;
|
||||
_catagoryName = [_this,1, "",[""]] call BIS_fnc_Param;
|
||||
_code = [_this,2,{},[{}]] call BIS_fnc_Param;
|
||||
_condition = [_this,3,{},[{}]] call BIS_fnc_Param;
|
||||
|
||||
|
||||
if (isnil "CSE_CATAGORY_LIST_ENTRIES") then {
|
||||
CSE_CATAGORY_LIST_ENTRIES = [];
|
||||
};
|
||||
|
||||
_foundMenuName = false;
|
||||
_foundEntryName = false;
|
||||
_onPosMenu = 0;
|
||||
_onPosCatagory = 0;
|
||||
_counter = 0;
|
||||
{
|
||||
if ((_x select 0) == _menuName) exitwith {
|
||||
// found entry
|
||||
_foundMenuName = true;
|
||||
_onPosMenu = _counter;
|
||||
_catagoryCounter = 0;
|
||||
{
|
||||
if ((_x select 0) == _catagoryName) exitwith {
|
||||
_foundEntryName = true;
|
||||
_onPosCatagory = _catagoryCounter;
|
||||
};
|
||||
_catagoryCounter = _catagoryCounter + 1;
|
||||
}foreach (_x select 1);
|
||||
};
|
||||
_counter = _counter + 1;
|
||||
}foreach CSE_CATAGORY_LIST_ENTRIES;
|
||||
|
||||
|
||||
if (!_foundMenuName) then {
|
||||
} else {
|
||||
if (!_foundEntryName) then {
|
||||
} else {
|
||||
_entry = [_catagoryName,_condition,_code];
|
||||
_arrayOfCatagories = CSE_CATAGORY_LIST_ENTRIES select _onPosMenu;
|
||||
_entryCollection = _arrayOfCatagories select _onPosCatagory;
|
||||
_entryCollection pushback _entry;
|
||||
};
|
||||
};
|
@ -1,76 +0,0 @@
|
||||
/**
|
||||
* fn_gui_addCatagory.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_menuName","_catagoryCounter","_catagoryName","_condition","_priority","_foundEntryName","_foundMenuName", "_counter","_onPosCatagory","_onPosMenu","_catagoryCounter","_arrayOfCatagories"];
|
||||
_menuName = _this select 0;
|
||||
_catagoryName = _this select 1;
|
||||
_condition = _this select 2;
|
||||
_priority = _this select 3;
|
||||
|
||||
|
||||
if (isnil "CSE_CATAGORY_LIST_ENTRIES") then {
|
||||
CSE_CATAGORY_LIST_ENTRIES = [];
|
||||
CSE_CATAGORY_LIST_ENTRIES pushback [_menuName,[_catagoryName, [] ] ];
|
||||
};
|
||||
|
||||
_foundMenuName = false;
|
||||
_foundEntryName = false;
|
||||
_onPosMenu = 0;
|
||||
_onPosCatagory = 0;
|
||||
{
|
||||
if ((_x select 0) == _menuName) exitwith {
|
||||
_foundMenuName = true;
|
||||
_onPosMenu = _foreachIndex;
|
||||
_catagoryCounter = 0;
|
||||
{
|
||||
if ((_x select 0) == _catagoryName) exitwith {
|
||||
_foundEntryName = true;
|
||||
_onPosCatagory = _catagoryCounter;
|
||||
};
|
||||
_catagoryCounter = _catagoryCounter + 1;
|
||||
}foreach (_x select 1);
|
||||
};
|
||||
}foreach CSE_CATAGORY_LIST_ENTRIES;
|
||||
|
||||
if (!_foundMenuName) then {
|
||||
CSE_CATAGORY_LIST_ENTRIES pushback [_menuName,[_catagoryName, [] ] ];
|
||||
} else {
|
||||
if (!_foundEntryName) then {
|
||||
_arrayOfCatagories = CSE_CATAGORY_LIST_ENTRIES select _onPosMenu;
|
||||
_arrayOfCatagories pushback [_catagoryName, [] ];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
cse_fnc_gui_getCatagoryEntries = {
|
||||
|
||||
if (isnil "CSE_CATAGORY_LIST_ENTRIES") {
|
||||
CSE_CATAGORY_LIST_ENTRIES = [];
|
||||
};
|
||||
_return = [];
|
||||
|
||||
{
|
||||
if ((_x select 0) == (_this select 0)) exitwith {
|
||||
{
|
||||
if ((_x select 0) == (_this select 1)) exitwith {
|
||||
_return = _x select 1;
|
||||
};
|
||||
}foreach (_x select 1);
|
||||
};
|
||||
}foreach CSE_CATAGORY_LIST_ENTRIES
|
||||
|
||||
_return
|
||||
};
|
||||
|
||||
[_menuName,_catagoryName + " >",_condition,{
|
||||
[_catagoryName,_this select 2,[_menuName,_catagoryName] call cse_fnc_gui_getCatagoryEntries] call cse_fnc_gui_displaySubMenuButtons;
|
||||
},_priority] call cse_fnc_gui_addMenuEntry;
|
||||
|
||||
|
@ -1,47 +0,0 @@
|
||||
/**
|
||||
* fn_gui_addMenuEntry.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
if (isDedicated) exitwith { [format["GUI - fnc_gui_addMenuEntry EXIT ON DEDICATED"],2] call cse_fnc_debug;};
|
||||
|
||||
if (isnil "cse_gui_availableMenuOptions") then {
|
||||
cse_gui_availableMenuOptions = [];
|
||||
};
|
||||
private ["_menuName","_optionName","_menuCondition","_menuAction","_priority"];
|
||||
_menuName = _this select 0;
|
||||
_optionName = _this select 1;
|
||||
_menuCondition = _this select 2;
|
||||
_menuAction = _this select 3;
|
||||
_priority = _this select 4;
|
||||
|
||||
_MENU_VAR = format["CSE_GUI_MENU_OPTIONS_%1", _menuName];
|
||||
if (isnil _MENU_VAR) then {
|
||||
call compile format["%1 = [];",_MENU_VAR];
|
||||
};
|
||||
|
||||
//[format["GUI - fnc_gui_addMenuEntry %1",_this, _MENU_VAR],2] call cse_fnc_debug;
|
||||
|
||||
[_menuName,_optionName,_menuCondition,_menuAction,_priority] call compile format["%1 pushback _this;",_MENU_VAR];
|
||||
|
||||
//cse_gui_availableMenuOptions = cse_gui_availableMenuOptions + [[_menuName,_optionName,_menuCondition,_menuAction,_priority]];
|
||||
|
||||
/*
|
||||
CSE_CONDITION_COMPARE_ARRAY_conditionCompareArray = [];
|
||||
if (isnil 'CSE_CONDITION_COMPARE_CACHE') then {
|
||||
CSE_CONDITION_COMPARE_CACHE = [];
|
||||
};
|
||||
{
|
||||
_condition = _x select 2;
|
||||
if !(_condition in CSE_CONDITION_COMPARE_CACHE) then {
|
||||
CSE_CONDITION_COMPARE_CACHE set [ count CSE_CONDITION_COMPARE_CACHE , _condition ];
|
||||
} else {
|
||||
player sidechat format["CACHING CONDITION: %1",_x];
|
||||
_x set [ 2 , CSE_CONDITION_COMPARE_CACHE find _condition];
|
||||
};
|
||||
}foreach (call compile (format["%1",_MENU_VAR]));*/
|
@ -1,37 +0,0 @@
|
||||
/**
|
||||
* fn_gui_blurScreen.sqf
|
||||
* @Descr:
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_id", "_show"];
|
||||
_id = [_this, 0, "", [""]] call BIS_fnc_Param;
|
||||
_show = [_this, 1, false, [false]] call BIS_fnc_Param;
|
||||
|
||||
if (isnil "CSE_GUI_SHOW_BLUR_SCREEN_COLLECTION") then {
|
||||
CSE_GUI_SHOW_BLUR_SCREEN_COLLECTION = [];
|
||||
};
|
||||
|
||||
if (_show) then {
|
||||
CSE_GUI_SHOW_BLUR_SCREEN_COLLECTION pushback _id;
|
||||
// show blur
|
||||
if (isnil 'CSE_MENU_ppHandle_GUI_BLUR_SCREEN') then {
|
||||
CSE_MENU_ppHandle_GUI_BLUR_SCREEN = ppEffectCreate ["DynamicBlur", 102];
|
||||
CSE_MENU_ppHandle_GUI_BLUR_SCREEN ppEffectAdjust [0.9];
|
||||
CSE_MENU_ppHandle_GUI_BLUR_SCREEN ppEffectEnable true;
|
||||
CSE_MENU_ppHandle_GUI_BLUR_SCREEN ppEffectCommit 0;
|
||||
};
|
||||
} else {
|
||||
CSE_GUI_SHOW_BLUR_SCREEN_COLLECTION = CSE_GUI_SHOW_BLUR_SCREEN_COLLECTION - [_id];
|
||||
if (CSE_GUI_SHOW_BLUR_SCREEN_COLLECTION isEqualTo []) then {
|
||||
// hide blur
|
||||
if (!isnil 'CSE_MENU_ppHandle_GUI_BLUR_SCREEN') then {
|
||||
ppEffectDestroy CSE_MENU_ppHandle_GUI_BLUR_SCREEN;
|
||||
CSE_MENU_ppHandle_GUI_BLUR_SCREEN = nil;
|
||||
};
|
||||
};
|
||||
};
|
@ -1,19 +0,0 @@
|
||||
/**
|
||||
* fn_gui_createInteractionMenu.sqf
|
||||
* @Descr: Creates a interaction menu
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [name STRINg, keybinding ARRAY, idd NUMBER, condition CODE, type NUMBER]
|
||||
* @Return: void
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_name","_condition","_keyBinding","_idd","_type","_codeToExecute"];
|
||||
_name = _this select 0;
|
||||
_keyBinding = _this select 1;
|
||||
_idd = _this select 2;
|
||||
_condition = _this select 3;
|
||||
_type = _this select 4;
|
||||
|
||||
_codeToExecute = compile format[ "%1 call cse_fnc_gui_keyPressed;", [_name,_condition,_type] ];
|
||||
[_name, _keyBinding, _codeToExecute, _idd] call cse_fnc_addKeyBindingForMenu_F;
|
@ -1,74 +0,0 @@
|
||||
/**
|
||||
* fn_gui_displayEventHandler.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
[] spawn {
|
||||
waitUntil {!isNull player && (player == player) && !(isNull (findDisplay 46))};
|
||||
CSE_KEY_COUNTER = 0;
|
||||
CSE_DISPLAY_MENU = false;
|
||||
CSE_MENU_ONRELEASE = false;
|
||||
|
||||
|
||||
CSE_KEY_PRESSED_HANDLER = {
|
||||
// state of Shift, Ctrl and Alt
|
||||
//if (!(_this select 2)) then {
|
||||
if !([player] call cse_fnc_isAwake) exitwith{};
|
||||
_MENU_VAR = format['CSE_GUI_MENU_%1', (_this select 1)];
|
||||
if (isnil _MENU_VAR) exitwith {};
|
||||
|
||||
_menu = (call compile _MENU_VAR) select 0;
|
||||
|
||||
_states = _menu select 4;
|
||||
if (((_states select 1) == 0) && (_this select 2)) exitwith {};
|
||||
if (((_states select 1) == 1) && !(_this select 2)) exitwith {};
|
||||
|
||||
if (((_states select 2) == 0) && (_this select 3)) exitwith {};
|
||||
if (((_states select 2) == 1) && !(_this select 3)) exitwith {};
|
||||
|
||||
if (((_states select 3) == 0) && (_this select 4)) exitwith {};
|
||||
if (((_states select 3) == 1) && !(_this select 4)) exitwith {};
|
||||
|
||||
if (CSE_DISPLAY_MENU && !CSE_KEY_RELEASED) exitwith {};
|
||||
if (CSE_DISPLAY_MENU && CSE_KEY_RELEASED) exitwith { closeDialog 145201;};
|
||||
if (dialog) exitwith { closeDialog 0; };
|
||||
|
||||
_STARTINGTIME = time;
|
||||
CSE_DISPLAY_MENU = true;
|
||||
CSE_KEY_RELEASED = false;
|
||||
//null = [_this,_STARTINGTIME,(call compile _MENU_VAR) select 0] spawn {
|
||||
_handle = [_this,_STARTINGTIME] spawn {
|
||||
waituntil{CSE_KEY_RELEASED || (time - ((_this select 1)) > 0.25)};
|
||||
if (!CSE_KEY_RELEASED) then {
|
||||
|
||||
CSE_MENU_ONRELEASE = true;
|
||||
waituntil {CSE_KEY_RELEASED};
|
||||
CSE_MENU_ONRELEASE = false;
|
||||
closeDialog 145201;
|
||||
} else {
|
||||
CSE_KEY_RELEASED = true;
|
||||
};
|
||||
waituntil {!dialog};
|
||||
CSE_DISPLAY_MENU = false;
|
||||
};
|
||||
[(_menu select 0),(_menu select 1),(_menu select 3)] call cse_fnc_gui_keyPressed;
|
||||
//};
|
||||
false;
|
||||
};
|
||||
/*
|
||||
|
||||
cse_displayEventHandler_Dialog = findDisplay 46 displayAddEventHandler ["keyDown", CSE_KEY_PRESSED_HANDLER];
|
||||
cse_displayEventHandler_DialogReleased = findDisplay 46 displayAddEventHandler ["keyUp", {
|
||||
_MENU_VAR = format['CSE_GUI_MENU_%1', (_this select 1)];
|
||||
if (CSE_DISPLAY_MENU) then {
|
||||
if (!isnil _MENU_VAR) then {
|
||||
CSE_KEY_RELEASED = true;
|
||||
};
|
||||
};
|
||||
}];*/
|
||||
};
|
@ -1,104 +0,0 @@
|
||||
/**
|
||||
* fn_gui_displaySubMenuButtons.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_rootButton","_allMenuEntries","_allAvailableMainButtons","_selectedMainMenuButton","_interactionDialog","_position","_placeEntry"];
|
||||
disableSerialization;
|
||||
_interactionDialog = uiNamespace getvariable "cse_interactionGUI";
|
||||
_rootButton = (_interactionDialog displayCtrl (_this select 1));
|
||||
_allMenuEntries = _this select 2;
|
||||
|
||||
_headerNumber = 112;
|
||||
_selectedMainMenuButton = 201;
|
||||
_maxCtrlNumber = 215;
|
||||
if ((_this select 1) > 200 && (_this select 1) < 300) then {
|
||||
_headerNumber = 113;
|
||||
_selectedMainMenuButton = 301;
|
||||
_maxCtrlNumber = 315;
|
||||
};
|
||||
_allAvailableMainButtons = 15;
|
||||
|
||||
//hint format ["ROOTBUTTON: %1",_rootButton];
|
||||
_position = ctrlPosition _rootButton;
|
||||
//_position = [(_position select 0) + 0.26, (_position select 1)];
|
||||
_position = [(_position select 0) + 0.31, (_position select 1)];
|
||||
|
||||
CMS_GUI_LATEST_SUBMENU = _this;
|
||||
|
||||
(_interactionDialog displayCtrl _headerNumber) ctrlSetText (_this select 0);
|
||||
(_interactionDialog displayCtrl _headerNumber) ctrlSetPosition [_position select 0,(_position select 1) - 0.040];
|
||||
//(_interactionDialog displayCtrl _headerNumber) ctrlSetBackgroundColor [0, 0, 0.6, 0.75];
|
||||
(_interactionDialog displayCtrl _headerNumber) ctrlSetBackgroundColor [(profilenamespace getvariable ['IGUI_BCG_RGB_R',0]),(profilenamespace getvariable ['IGUI_BCG_RGB_G',1]),(profilenamespace getvariable ['IGUI_BCG_RGB_B',1]), 0.75];
|
||||
(_interactionDialog displayCtrl _headerNumber) ctrlSetBackgroundColor [(profilenamespace getvariable ['GUI_BCG_RGB_R',0]),(profilenamespace getvariable ['GUI_BCG_RGB_G',1]),(profilenamespace getvariable ['GUI_BCG_RGB_B',1]), 0.75];
|
||||
(_interactionDialog displayCtrl _headerNumber) ctrlCommit 0;
|
||||
|
||||
|
||||
CSE_UI_EFFECT = true; // temp enabled
|
||||
_placeEntry = {
|
||||
private ["_entry"];
|
||||
_entry = (_interactionDialog displayCtrl _selectedMainMenuButton);
|
||||
_entry ctrlSetText ( (_x select 0));
|
||||
_entry ctrlSetPosition _position;
|
||||
if (_selectedMainMenuButton < 300) then {
|
||||
_entry ctrlSetEventHandler ["ButtonClick", format["call cse_fnc_gui_hideSubSubMenuButtons;[player,CSE_interactionTarget,%2] call %1; call cse_fnc_gui_refreshLastSubMenu;",(_x select 2),_selectedMainMenuButton]];
|
||||
} else {
|
||||
_entry ctrlSetEventHandler ["ButtonClick", format["[player,CSE_interactionTarget,%2] call %1; call cse_fnc_gui_refreshLastSubMenu;",(_x select 2),_selectedMainMenuButton]];
|
||||
};
|
||||
if (isnil "CSE_UI_EFFECT") then {
|
||||
_entry ctrlCommit 0;
|
||||
} else {
|
||||
if (CSE_UI_EFFECT) then {
|
||||
_entry ctrlCommit 0.2;
|
||||
} else {
|
||||
_entry ctrlCommit 0;
|
||||
};
|
||||
};
|
||||
// updating new information
|
||||
_position = [(_position select 0), (_position select 1) + 0.040];
|
||||
_selectedMainMenuButton = _selectedMainMenuButton + 1;
|
||||
};
|
||||
|
||||
_returningEntries = [];
|
||||
{
|
||||
if ((typeName (_x select 1)) == "CODE") then {
|
||||
if ([player,CSE_interactionTarget] call (_x select 1)) then {
|
||||
_returningEntries set[count _returningEntries,_x];
|
||||
};
|
||||
} else {
|
||||
if ((typeName (_x select 1)) == "BOOL") then {
|
||||
if (_x select 1) then {
|
||||
_returningEntries set[count _returningEntries,_x];
|
||||
};
|
||||
};
|
||||
};
|
||||
}foreach _allMenuEntries;
|
||||
|
||||
|
||||
// for effects
|
||||
{
|
||||
|
||||
_entry = (_interactionDialog displayCtrl _selectedMainMenuButton);
|
||||
_entry ctrlSetPosition _position;
|
||||
_entry ctrlCommit 0;
|
||||
_selectedMainMenuButton = _selectedMainMenuButton + 1;
|
||||
|
||||
if (_selectedMainMenuButton >= _maxCtrlNumber + _allAvailableMainButtons) exitwith{};
|
||||
}foreach _returningEntries;
|
||||
|
||||
|
||||
|
||||
_selectedMainMenuButton = 201;
|
||||
if ((_this select 1) > 200 && (_this select 1) < 300) then {
|
||||
_headerNumber = 113;
|
||||
_selectedMainMenuButton = 301;
|
||||
};
|
||||
{
|
||||
call _placeEntry;
|
||||
if (_selectedMainMenuButton >= _maxCtrlNumber + _allAvailableMainButtons) exitwith{};
|
||||
}foreach _returningEntries;
|
@ -1,45 +0,0 @@
|
||||
/**
|
||||
* fn_gui_getMenuEntries.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_menuName","_returningEntries","_MENU_VAR","_cond"];
|
||||
_menuName = _this select 0;
|
||||
|
||||
//[_menuName] call cse_fnc_gui_sortMenuEntries;
|
||||
// in futute, look into splitting this all up into multiple threads
|
||||
_returningEntries = [];
|
||||
|
||||
_MENU_VAR = format["CSE_GUI_MENU_OPTIONS_%1", _menuName];
|
||||
if (isnil _MENU_VAR) then {
|
||||
call compile format["%1 = [];",_MENU_VAR];
|
||||
};
|
||||
|
||||
{
|
||||
|
||||
_cond = (_x select 2);
|
||||
|
||||
if ((typeName _cond) == "CODE") then {
|
||||
_passing = ([player,CSE_interactionTarget] call (_x select 2));
|
||||
if (typeName _passing != "BOOL") then {
|
||||
_passing = false;
|
||||
} else {
|
||||
};
|
||||
if (_passing) then {
|
||||
_returningEntries set[count _returningEntries,_x];
|
||||
};
|
||||
} else {
|
||||
if ((typeName _cond) == "BOOL") then {
|
||||
if (_cond) then {
|
||||
_returningEntries set[count _returningEntries,_x];
|
||||
};
|
||||
};
|
||||
};
|
||||
}foreach (call compile _MENU_VAR);
|
||||
|
||||
_returningEntries
|
@ -1,48 +0,0 @@
|
||||
/**
|
||||
* fn_gui_hasOptionAvailable.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_menuName","_returningEntries","_MENU_VAR","_cond","_return","_target"];
|
||||
_menuName = _this select 0;
|
||||
_target = _this select 1;
|
||||
//[_menuName] call cse_fnc_gui_sortMenuEntries;
|
||||
// in futute, look into splitting this all up into multiple threads
|
||||
_returningEntries = [];
|
||||
|
||||
_MENU_VAR = format["CSE_GUI_MENU_OPTIONS_%1", _menuName];
|
||||
if (isnil _MENU_VAR) then {
|
||||
call compile format["%1 = [];",_MENU_VAR];
|
||||
};
|
||||
_return = false;
|
||||
{
|
||||
|
||||
_cond = (_x select 2);
|
||||
|
||||
if ((typeName _cond) == "CODE") then {
|
||||
_passing = ([player,_target] call (_x select 2));
|
||||
if (typeName _passing != "BOOL") then {
|
||||
_passing = false;
|
||||
} else {
|
||||
};
|
||||
if (_passing) then {
|
||||
_returningEntries set[count _returningEntries,_x];
|
||||
};
|
||||
} else {
|
||||
if ((typeName _cond) == "BOOL") then {
|
||||
if (_cond) then {
|
||||
_returningEntries set[count _returningEntries,_x];
|
||||
};
|
||||
};
|
||||
};
|
||||
if (count _returningEntries > 0) exitwith {
|
||||
_return = true;
|
||||
};
|
||||
}foreach (call compile _MENU_VAR);
|
||||
|
||||
_return
|
@ -1,32 +0,0 @@
|
||||
/**
|
||||
* fn_gui_hideSubMenuButtons.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_allAvailableMainButtons","_selectedMainMenuButton","_interactionDialog","_position","_placeEntry"];
|
||||
disableSerialization;
|
||||
_interactionDialog = uiNamespace getvariable "cse_interactionGUI";
|
||||
|
||||
_allAvailableMainButtons = 20;
|
||||
_selectedMainMenuButton = 201;
|
||||
|
||||
_position = [100,100];
|
||||
(_interactionDialog displayCtrl 112) ctrlSetPosition [_position select 0,(_position select 1) - 0.045];
|
||||
(_interactionDialog displayCtrl 112) ctrlCommit 0;
|
||||
for [{_x=0},{_x < _allAvailableMainButtons},{_x=_x+1}] do
|
||||
{
|
||||
private ["_entry"];
|
||||
_entry = (_interactionDialog displayCtrl _selectedMainMenuButton);
|
||||
_entry ctrlSetPosition _position;
|
||||
_entry ctrlRemoveAllEventHandlers "ButtonClick";
|
||||
_entry ctrlCommit 0;
|
||||
_selectedMainMenuButton = _selectedMainMenuButton +1;
|
||||
};
|
||||
|
||||
|
||||
call cse_fnc_gui_hideSubSubMenuButtons;
|
@ -1,32 +0,0 @@
|
||||
/**
|
||||
* fn_gui_hideSubSubMenuButtons.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_rootButton","_allMenuEntries","_allAvailableMainButtons","_selectedMainMenuButton","_interactionDialog","_position","_placeEntry"];
|
||||
disableSerialization;
|
||||
_interactionDialog = uiNamespace getvariable "cse_interactionGUI";
|
||||
|
||||
_allAvailableMainButtons = 20;
|
||||
_selectedMainMenuButton = 301;
|
||||
|
||||
//if (((ctrlPosition (_interactionDialog displayCtrl _selectedMainMenuButton))select 0) == (0.4 + 0.26)) then {
|
||||
|
||||
_position = [100,100];
|
||||
(_interactionDialog displayCtrl 113) ctrlSetPosition [_position select 0,(_position select 1) - 0.045];
|
||||
(_interactionDialog displayCtrl 113) ctrlCommit 0;
|
||||
for [{_x=0},{_x < _allAvailableMainButtons},{_x=_x+1}] do
|
||||
{
|
||||
private ["_entry"];
|
||||
_entry = (_interactionDialog displayCtrl _selectedMainMenuButton);
|
||||
_entry ctrlSetPosition _position;
|
||||
_entry ctrlRemoveAllEventHandlers "ButtonClick";
|
||||
_entry ctrlCommit 0;
|
||||
_selectedMainMenuButton = _selectedMainMenuButton +1;
|
||||
};
|
||||
//};
|
@ -1,180 +0,0 @@
|
||||
/**
|
||||
* fn_gui_keyPressed.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_menu","_condition","_target","_type","_allAvailableMainButtons","_selectedMainMenuButton","_menuName","_carriedObj", "_allMenuEntries"];
|
||||
_menu = _this select 0;
|
||||
_condition = _this select 1;
|
||||
_type = _this select 2;
|
||||
if (isDedicated) exitwith{};
|
||||
if (! call _condition) exitwith {};
|
||||
|
||||
//if (cursortarget iskindof "MAN") then {
|
||||
//};
|
||||
CMS_GUI_LATEST_SUBMENU = [];
|
||||
_allAvailableMainButtons = 10;
|
||||
_selectedMainMenuButton = 150;
|
||||
_menuName = "";
|
||||
if (isnil "_type") then {
|
||||
_type = 0;
|
||||
};
|
||||
|
||||
|
||||
_target = switch (_type) do {
|
||||
case 2: {if (isNull cursortarget) then {player} else{cursortarget};};
|
||||
case 1: {cursortarget};
|
||||
case 0: {player};
|
||||
default {player};
|
||||
};
|
||||
if ((_target distance player) > 10 && {(_type == 2)}) then {
|
||||
_target = player;
|
||||
};
|
||||
if (_target == player) then {
|
||||
_menuName = "Your Person";
|
||||
if (_type == 2) then {
|
||||
_menu = "SelfInteraction";
|
||||
};
|
||||
_targetName = [_target] call cse_fnc_getName;
|
||||
|
||||
} else {
|
||||
_carriedObj = [player] call cse_fnc_getCarriedObj;
|
||||
if (!isNull _carriedObj) then {
|
||||
_target = _carriedObj;
|
||||
};
|
||||
|
||||
_menuName = switch (true) do {
|
||||
case (_target isKindOf "CaManBase"): {([_target] call cse_fnc_getName)};
|
||||
case ((_target isKindOf "All")): {(getText(configFile >> "Cfgvehicles" >> typeof _target >> "displayName"))};
|
||||
default {"Object"};
|
||||
};
|
||||
if (_type == 2) then {
|
||||
_menu = "InteractionMenu";
|
||||
};
|
||||
};
|
||||
|
||||
//_allMenuEntries = [_menu] call cse_fnc_gui_getMenuEntries;
|
||||
if (!([_menu,_target] call cse_fnc_gui_hasOptionAvailable) && _type == 2 && (_menu != "SelfInteraction")) then {
|
||||
//_allMenuEntries = ["SelfInteraction"] call cse_fnc_gui_getMenuEntries;
|
||||
_menu = "SelfInteraction";
|
||||
_menuName = "Your Person";
|
||||
_target = player;
|
||||
_targetName = [_target] call cse_fnc_getName;
|
||||
};
|
||||
if (!([_menu,_target] call cse_fnc_gui_hasOptionAvailable)) exitwith {};
|
||||
//if (count _allMenuEntries <1) exitwith { [format["GUI - FAILED TO OPEN MENU: NO ENTRIES PASSED CONDITION TEST"],2] call cse_fnc_debug; };
|
||||
|
||||
|
||||
CSE_interactionTarget = _target;
|
||||
//[format["GUI - MENU OPENING %1",_menu],3] call cse_fnc_debug;
|
||||
[player,_target] call cse_fnc_registerInteractingWith;
|
||||
if (isnil "cse_use_white_menu") then {
|
||||
createDialog "cse_interactionGUI";
|
||||
} else {
|
||||
createDialog "cse_interactionGUI_w";
|
||||
};
|
||||
setMousePosition [0.45, 0.55];
|
||||
|
||||
disableSerialization;
|
||||
_interactionDialog = uiNamespace getvariable "cse_interactionGUI";
|
||||
|
||||
//_position = [0.46,0.5];
|
||||
_position = [safezoneX + (safezoneW / 1.9), safezoneY + (safezoneH / 1.9) ];
|
||||
//_position = [0.4 * safezoneW + safezoneX, 0.55 * safezoneH + safezoneY];
|
||||
|
||||
ctrlSetFocus (_interactionDialog displayCtrl 210) ;
|
||||
(_interactionDialog displayCtrl 111) ctrlSetText _menuName;
|
||||
(_interactionDialog displayCtrl 111) ctrlSetPosition [_position select 0,(_position select 1) - 0.040];
|
||||
//(_interactionDialog displayCtrl 111) ctrlSetBackgroundColor [0, 0, 0.6, 0.75];
|
||||
//(_interactionDialog displayCtrl 111) ctrlSetBackgroundColor [(profilenamespace getvariable ['IGUI_BCG_RGB_R',0]),(profilenamespace getvariable ['IGUI_BCG_RGB_G',1]),(profilenamespace getvariable ['IGUI_BCG_RGB_B',1]), 0.75];
|
||||
(_interactionDialog displayCtrl 111) ctrlSetBackgroundColor [(profilenamespace getvariable ['GUI_BCG_RGB_R',0]),(profilenamespace getvariable ['GUI_BCG_RGB_G',1]),(profilenamespace getvariable ['GUI_BCG_RGB_B',1]), 0.75];
|
||||
(_interactionDialog displayCtrl 111) ctrlCommit 0;
|
||||
|
||||
_allMenuEntries = [_menu] call cse_fnc_gui_getMenuEntries;
|
||||
{
|
||||
private ["_entry"];
|
||||
_entry = (_interactionDialog displayCtrl _selectedMainMenuButton);
|
||||
_entry ctrlSetText ((_x select 1));
|
||||
_entry ctrlSetPosition _position;
|
||||
_entry ctrlSetEventHandler ["ButtonClick", format["[] call cse_fnc_gui_hideSubMenuButtons; [player,CSE_interactionTarget,%2] spawn %1",(_x select 3),_selectedMainMenuButton]];
|
||||
_entry ctrlCommit 0;
|
||||
|
||||
// updating new information
|
||||
_position = [(_position select 0), (_position select 1) + 0.040];
|
||||
_selectedMainMenuButton = _selectedMainMenuButton + 1;
|
||||
if (_selectedMainMenuButton >= 164 + _allAvailableMainButtons) exitwith{};
|
||||
}foreach _allMenuEntries;
|
||||
|
||||
[] spawn {
|
||||
waituntil {!dialog};
|
||||
[player,CSE_interactionTarget] call cse_fnc_unregisterInteractingWith;
|
||||
//[format["GUI - MENU CLOSED"]] call cse_fnc_debug;
|
||||
};
|
||||
|
||||
// ICONS SUPPORT
|
||||
|
||||
// cse\cse_gui\data\icon_tags.paa
|
||||
|
||||
_IDC_OF_ICON_OPTION = 400;
|
||||
(_interactionDialog displayCtrl _IDC_OF_ICON_OPTION) ctrlSetText "cse\cse_gui\data\icon_settings.paa";
|
||||
(_interactionDialog displayCtrl (_IDC_OF_ICON_OPTION + 100)) ctrlSetEventHandler ["ButtonClick", "
|
||||
CloseDialog 0; createDialog 'cse_settingsMenu';
|
||||
"];
|
||||
(_interactionDialog displayCtrl (_IDC_OF_ICON_OPTION + 100)) ctrlSetTooltip "Open the Settings Menu";
|
||||
_IDC_OF_ICON_OPTION = _IDC_OF_ICON_OPTION + 1;
|
||||
|
||||
|
||||
if (["cse_sys_tags"] call cse_fnc_isModuleEnabled_F) then {
|
||||
(_interactionDialog displayCtrl _IDC_OF_ICON_OPTION) ctrlSetText "cse\cse_gui\data\icon_tags.paa";
|
||||
(_interactionDialog displayCtrl (_IDC_OF_ICON_OPTION + 100)) ctrlSetEventHandler ["ButtonClick", "
|
||||
if (isnil 'CSE_DRAW_TAG_ICONS_TAGS') then {
|
||||
CSE_DRAW_TAG_ICONS_TAGS = false;
|
||||
};
|
||||
CSE_DRAW_TAG_ICONS_TAGS = !CSE_DRAW_TAG_ICONS_TAGS;
|
||||
if (CSE_DRAW_TAG_ICONS_TAGS) then {
|
||||
hintSilent 'Enabled Tags';
|
||||
} else {
|
||||
hintSilent 'Disabled Tags';
|
||||
};
|
||||
"];
|
||||
|
||||
(_interactionDialog displayCtrl (_IDC_OF_ICON_OPTION + 100)) ctrlSetTooltip "Toggle CSE Tag System ON/OFF";
|
||||
_IDC_OF_ICON_OPTION = _IDC_OF_ICON_OPTION + 1;
|
||||
};
|
||||
|
||||
if (isnil "CSE_DEBUG_ALLOW_RESET_MODE_ENABLED") then {
|
||||
CSE_DEBUG_ALLOW_RESET_MODE_ENABLED = false;
|
||||
};
|
||||
if (CSE_DEBUG_ALLOW_RESET_MODE_ENABLED) then {
|
||||
(_interactionDialog displayCtrl _IDC_OF_ICON_OPTION) ctrlSetText "cse\cse_gui\data\icon_reset_small.paa";
|
||||
(_interactionDialog displayCtrl (_IDC_OF_ICON_OPTION + 100)) ctrlSetEventHandler ["ButtonClick", "
|
||||
[CSE_interactionTarget] spawn cse_fnc_resetAllDefaults;
|
||||
"];
|
||||
|
||||
(_interactionDialog displayCtrl (_IDC_OF_ICON_OPTION + 100)) ctrlSetTooltip "Full CSE reset off target";
|
||||
_IDC_OF_ICON_OPTION = _IDC_OF_ICON_OPTION + 1;
|
||||
};
|
||||
|
||||
while {(_IDC_OF_ICON_OPTION < 403)} do {
|
||||
ctrlEnable[_IDC_OF_ICON_OPTION+100,false];
|
||||
_IDC_OF_ICON_OPTION = _IDC_OF_ICON_OPTION + 1;
|
||||
};
|
||||
|
||||
/*
|
||||
if (["cse_sys_medical"] call cse_fnc_isModuleEnabled_F) then {
|
||||
if (CSE_interactionTarget isKindOf "CAManBase") then {
|
||||
[] spawn {
|
||||
while {(dialog)} do {
|
||||
_status = [CSE_interactionTarget] call cse_fnc_getTriageStatus_CMS;
|
||||
[[CSE_interactionTarget] call cse_fnc_getName,["Triage status: "+ (_status select 0)],0] call cse_fnc_gui_displayInformation;
|
||||
sleep 0.1;
|
||||
};
|
||||
["",[""],0] call cse_fnc_gui_displayInformation;
|
||||
};
|
||||
};
|
||||
};*/
|
@ -1,46 +0,0 @@
|
||||
/**
|
||||
* fn_gui_loadingbar.sqf
|
||||
* @Descr: Displays a loading bar and halts script until loading bar has finished
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [timeToWait NUMBER, condition CODE (Optional), onSuccess CODE (Optional), onFailure CODE (Optional), arguments ARRAY (Optional)]
|
||||
* @Return: BOOl Returns true if loading bar has fully finished. Otherwise false
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_timeToWait","_cond","_onfailure","_onSuccess","_args","_dialog","_ctrl","_newStatus","_start","_return"];
|
||||
_timeToWait = _this select 0;
|
||||
_cond = [_this, 1, {true}, [{true}]] call BIS_fnc_Param;
|
||||
_onSuccess = [_this, 2, {}, [{}]] call BIS_fnc_Param;
|
||||
_onfailure = [_this, 3, {}, [{}]] call BIS_fnc_Param;
|
||||
_args = [_this, 4, [], [[]]] call BIS_fnc_Param;
|
||||
|
||||
if (_timeToWait > 0) then {
|
||||
disableSerialization;
|
||||
1534 cutRsc ["cse_progressBar_Sample","plain"];
|
||||
_dialog = uiNamespace getvariable "cse_progressBar_Sample";
|
||||
_ctrl = _dialog displayCtrl 6;
|
||||
_newStatus = 0;
|
||||
_start = diag_tickTime;
|
||||
while {(_newStatus <= 1.00 && (call _cond))} do {
|
||||
uisleep 0.01;
|
||||
_ctrl progressSetPosition _newStatus;
|
||||
_newStatus = (diag_tickTime - _start) / _timeToWait;
|
||||
};
|
||||
1534 cutText ["","plain"];
|
||||
_return = false;
|
||||
if (_newStatus >= 1.00) then {
|
||||
_return = true;
|
||||
_args call _onSuccess;
|
||||
} else {
|
||||
_args call _onfailure;
|
||||
};
|
||||
} else {
|
||||
if ((call _cond)) then {
|
||||
_return = true;
|
||||
_args call _onSuccess;
|
||||
} else {
|
||||
_args call _onfailure;
|
||||
};
|
||||
};
|
||||
_return
|
@ -1,19 +0,0 @@
|
||||
/**
|
||||
* fn_gui_refreshLastSubMenu.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_lastMenu"];
|
||||
_lastMenu = CMS_GUI_LATEST_SUBMENU;
|
||||
|
||||
if ((_lastMenu select 1) > 200 && (_lastMenu select 1) < 300) then {
|
||||
call cse_fnc_gui_hideSubSubMenuButtons;
|
||||
} else {
|
||||
call cse_fnc_gui_hideSubMenuButtons;
|
||||
};
|
||||
_lastMenu call cse_fnc_gui_displaySubMenuButtons;
|
@ -1,23 +0,0 @@
|
||||
/**
|
||||
* fn_gui_sortMenuEntries.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
|
||||
private ["_menuName"];
|
||||
_menuName = _this select 0;
|
||||
|
||||
_MENU_VAR = format["CSE_GUI_MENU_OPTIONS_%1", _menuName];
|
||||
if (isnil _MENU_VAR) then {
|
||||
call compile format["%1 = [];",_MENU_VAR];
|
||||
};
|
||||
|
||||
if (count (call compile _MENU_VAR) > 1) then {
|
||||
format["%1 = [%1,[],{_x}] call BIS_fnc_sortBy;",_MENU_VAR];
|
||||
};
|
||||
true
|
@ -1,50 +0,0 @@
|
||||
|
||||
#define RIGHT_SIDE (safezoneW + safezoneX)
|
||||
#define LEFT_SIDE safezoneX
|
||||
#define TOP_SIDE safeZoneY
|
||||
#define BOTTOM_SIDE (safeZoneH + safezoneY)
|
||||
|
||||
#define ICON_WIDTH (1.75 * (((safezoneW / safezoneH) min 1.2) / 40))
|
||||
#define X_POS_ICONS RIGHT_SIDE - (1.1 * ICON_WIDTH)
|
||||
#define Y_POS_ICONS TOP_SIDE + (2.2 * ICON_WIDTH)
|
||||
#define DIFFERENCE_ICONS (1.1 * ICON_WIDTH)
|
||||
|
||||
class RscTitles {
|
||||
class cse_gui_iconsDisplay {
|
||||
duration = 1e+011;
|
||||
idd = 1111;
|
||||
movingenable = 0;
|
||||
onLoad = "uiNamespace setVariable ['cse_gui_iconsDisplay', _this select 0];";
|
||||
class controlsBackground {
|
||||
class icon_1: cse_gui_backgroundBase {
|
||||
text = "";
|
||||
colorText[] = {0.0,1.0,0.0,0.4};
|
||||
idc = 10501;
|
||||
x = X_POS_ICONS;
|
||||
y = Y_POS_ICONS + (0 * DIFFERENCE_ICONS);
|
||||
w = ICON_WIDTH;
|
||||
h = ICON_WIDTH;
|
||||
};
|
||||
class icon_2: icon_1 {
|
||||
idc = 10502;
|
||||
y = Y_POS_ICONS + (1 * DIFFERENCE_ICONS);
|
||||
};
|
||||
class icon_3: icon_1 {
|
||||
idc = 10503;
|
||||
y = Y_POS_ICONS + (2 * DIFFERENCE_ICONS);
|
||||
};
|
||||
class icon_4: icon_1 {
|
||||
idc = 10504;
|
||||
y = Y_POS_ICONS + (3 * DIFFERENCE_ICONS);
|
||||
};
|
||||
class icon_5: icon_1 {
|
||||
idc = 10505;
|
||||
y = Y_POS_ICONS + (4 * DIFFERENCE_ICONS);
|
||||
};
|
||||
class icon_6: icon_1 {
|
||||
idc = 10506;
|
||||
y = Y_POS_ICONS + (5 * DIFFERENCE_ICONS);
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
@ -1,31 +0,0 @@
|
||||
|
||||
class CSE_LogoPlain {
|
||||
idd = 432350;
|
||||
movingenable = 0;
|
||||
fadein = 1;
|
||||
fadeout = 1;
|
||||
onLoad = "uiNamespace setVariable ['CSE_LogoPlain', _this select 0];";
|
||||
onUnload = "uiNamespace setVariable ['CSE_LogoPlain', nil];";
|
||||
onMouseButtonClick = "closeDialog 432350;";
|
||||
class controlsBackground {
|
||||
class backgroundTop: cse_gui_backgroundBase{
|
||||
idc = 1;
|
||||
type = CT_STATIC;
|
||||
x = "safezoneX";
|
||||
y = "safezoneY";
|
||||
w = "safezoneW";
|
||||
h = "safezoneH";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {1,1,1,1};
|
||||
colorBackground[] = {1,1,1,1};
|
||||
text = "cse\cse_gui\data\logo_black_background.paa";
|
||||
onMouseButtonClick = "closeDialog 432350;";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
class controls {
|
||||
|
||||
};
|
||||
};
|
@ -1,797 +0,0 @@
|
||||
|
||||
#ifndef CSE_DEFINE_H
|
||||
#define CSE_DEFINE_H
|
||||
// define.hpp
|
||||
|
||||
#define true 1
|
||||
#define false 0
|
||||
|
||||
#define CT_STATIC 0
|
||||
#define CT_BUTTON 1
|
||||
#define CT_EDIT 2
|
||||
#define CT_SLIDER 3
|
||||
#define CT_COMBO 4
|
||||
#define CT_LISTBOX 5
|
||||
#define CT_TOOLBOX 6
|
||||
#define CT_CHECKBOXES 7
|
||||
#define CT_PROGRESS 8
|
||||
#define CT_HTML 9
|
||||
#define CT_STATIC_SKEW 10
|
||||
#define CT_ACTIVETEXT 11
|
||||
#define CT_TREE 12
|
||||
#define CT_STRUCTURED_TEXT 13
|
||||
#define CT_CONTEXT_MENU 14
|
||||
#define CT_CONTROLS_GROUP 15
|
||||
#define CT_SHORTCUTBUTTON 16
|
||||
#define CT_XKEYDESC 40
|
||||
#define CT_XBUTTON 41
|
||||
#define CT_XLISTBOX 42
|
||||
#define CT_XSLIDER 43
|
||||
#define CT_XCOMBO 44
|
||||
#define CT_ANIMATED_TEXTURE 45
|
||||
#define CT_OBJECT 80
|
||||
#define CT_OBJECT_ZOOM 81
|
||||
#define CT_OBJECT_CONTAINER 82
|
||||
#define CT_OBJECT_CONT_ANIM 83
|
||||
#define CT_LINEBREAK 98
|
||||
#define CT_ANIMATED_USER 99
|
||||
#define CT_MAP 100
|
||||
#define CT_MAP_MAIN 101
|
||||
#define CT_LISTNBOX 102
|
||||
|
||||
// Static styles
|
||||
#define ST_POS 0x0F
|
||||
#define ST_HPOS 0x03
|
||||
#define ST_VPOS 0x0C
|
||||
#define ST_LEFT 0x00
|
||||
#define ST_RIGHT 0x01
|
||||
#define ST_CENTER 0x02
|
||||
#define ST_DOWN 0x04
|
||||
#define ST_UP 0x08
|
||||
#define ST_VCENTER 0x0c
|
||||
|
||||
#define ST_TYPE 0xF0
|
||||
#define ST_SINGLE 0
|
||||
#define ST_MULTI 16
|
||||
#define ST_TITLE_BAR 32
|
||||
#define ST_PICTURE 48
|
||||
#define ST_FRAME 64
|
||||
#define ST_BACKGROUND 80
|
||||
#define ST_GROUP_BOX 96
|
||||
#define ST_GROUP_BOX2 112
|
||||
#define ST_HUD_BACKGROUND 128
|
||||
#define ST_TILE_PICTURE 144
|
||||
#define ST_WITH_RECT 160
|
||||
#define ST_LINE 176
|
||||
|
||||
#define ST_SHADOW 0x100
|
||||
#define ST_NO_RECT 0x200 // this style works for CT_STATIC in conjunction with ST_MULTI
|
||||
#define ST_KEEP_ASPECT_RATIO 0x800
|
||||
|
||||
#define ST_TITLE ST_TITLE_BAR + ST_CENTER
|
||||
|
||||
// Slider styles
|
||||
#define SL_DIR 0x400
|
||||
#define SL_VERT 0
|
||||
#define SL_HORZ 0x400
|
||||
|
||||
#define SL_TEXTURES 0x10
|
||||
|
||||
// Listbox styles
|
||||
#define LB_TEXTURES 0x10
|
||||
#define LB_MULTI 0x20
|
||||
#define FontCSE "PuristaMedium"
|
||||
|
||||
class cse_gui_backgroundBase {
|
||||
type = CT_STATIC;
|
||||
idc = -1;
|
||||
style = ST_PICTURE;
|
||||
colorBackground[] = {0,0,0,0};
|
||||
colorText[] = {1, 1, 1, 1};
|
||||
font = FontCSE;
|
||||
text = "";
|
||||
sizeEx = 0.032;
|
||||
};
|
||||
class cse_gui_editBase
|
||||
{
|
||||
access = 0;
|
||||
type = 2;
|
||||
x = 0;
|
||||
y = 0;
|
||||
h = 0.04;
|
||||
w = 0.2;
|
||||
colorBackground[] =
|
||||
{
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
1
|
||||
};
|
||||
colorText[] =
|
||||
{
|
||||
0.95,
|
||||
0.95,
|
||||
0.95,
|
||||
1
|
||||
};
|
||||
colorSelection[] =
|
||||
{
|
||||
"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])",
|
||||
"(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])",
|
||||
"(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])",
|
||||
1
|
||||
};
|
||||
autocomplete = "";
|
||||
text = "";
|
||||
size = 0.2;
|
||||
style = "0x00 + 0x40";
|
||||
font = "PuristaMedium";
|
||||
shadow = 2;
|
||||
sizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorDisabled[] =
|
||||
{
|
||||
1,
|
||||
1,
|
||||
1,
|
||||
0.25
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
class cse_gui_buttonBase {
|
||||
idc = -1;
|
||||
type = 16;
|
||||
style = ST_LEFT;
|
||||
text = "";
|
||||
action = "";
|
||||
x = 0.0;
|
||||
y = 0.0;
|
||||
w = 0.25;
|
||||
h = 0.04;
|
||||
size = 0.03921;
|
||||
sizeEx = 0.03921;
|
||||
color[] = {1.0, 1.0, 1.0, 1};
|
||||
color2[] = {1.0, 1.0, 1.0, 1};
|
||||
/*colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.69])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.75])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.5])", "(profilenamespace getvariable ['GUI_BCG_RGB_A',0.5])"};
|
||||
colorbackground2[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.69])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.75])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.5])", 0.4};
|
||||
colorDisabled[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.69])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.75])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.5])", 0.25};
|
||||
colorFocused[] = {"(profilenamespace getvariable ['IGUI_TEXT_RGB_R',0])","(profilenamespace getvariable ['IGUI_TEXT_RGB_G',1])","(profilenamespace getvariable ['IGUI_TEXT_RGB_B',1])","(profilenamespace getvariable ['IGUI_TEXT_RGB_A',0.8])", 0.8};
|
||||
colorBackgroundFocused[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.69])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.75])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.5])", 0.8};
|
||||
*/
|
||||
|
||||
colorBackground[] = {1,1,1,0.95};
|
||||
colorbackground2[] = {1,1,1,0.95};
|
||||
colorDisabled[] = {1,1,1,0.6};
|
||||
colorFocused[] = {1,1,1,1};
|
||||
colorBackgroundFocused[] = {1,1,1,1};
|
||||
periodFocus = 1.2;
|
||||
periodOver = 0.8;
|
||||
default = false;
|
||||
class HitZone {
|
||||
left = 0.00;
|
||||
top = 0.00;
|
||||
right = 0.00;
|
||||
bottom = 0.00;
|
||||
};
|
||||
|
||||
class ShortcutPos {
|
||||
left = 0.00;
|
||||
top = 0.00;
|
||||
w = 0.00;
|
||||
h = 0.00;
|
||||
};
|
||||
|
||||
class TextPos {
|
||||
left = 0.002;
|
||||
top = 0.0004;
|
||||
right = 0.0;
|
||||
bottom = 0.00;
|
||||
};
|
||||
textureNoShortcut = "";
|
||||
animTextureNormal = "cse\cse_gui\data\buttonNormal_gradient_top.paa";
|
||||
animTextureDisabled = "cse\cse_gui\data\buttonDisabled_gradient.paa";
|
||||
animTextureOver = "cse\cse_gui\data\buttonNormal_gradient_top.paa";
|
||||
animTextureFocused = "cse\cse_gui\data\buttonNormal_gradient_top.paa";
|
||||
animTexturePressed = "cse\cse_gui\data\buttonNormal_gradient_top.paa";
|
||||
animTextureDefault = "cse\cse_gui\data\buttonNormal_gradient_top.paa";
|
||||
period = 0.5;
|
||||
font = FontCSE;
|
||||
soundClick[] = {"\A3\ui_f\data\sound\RscButton\soundClick",0.09,1};
|
||||
soundPush[] = {"\A3\ui_f\data\sound\RscButton\soundPush",0.0,0};
|
||||
soundEnter[] = {"\A3\ui_f\data\sound\RscButton\soundEnter",0.07,1};
|
||||
soundEscape[] = {"\A3\ui_f\data\sound\RscButton\soundEscape",0.09,1};
|
||||
class Attributes {
|
||||
font = FontCSE;
|
||||
color = "#E5E5E5";
|
||||
align = "center";
|
||||
shadow = "true";
|
||||
};
|
||||
class AttributesImage {
|
||||
font = FontCSE;
|
||||
color = "#E5E5E5";
|
||||
align = "left";
|
||||
shadow = "true";
|
||||
};
|
||||
};
|
||||
|
||||
class cse_gui_RscProgress {
|
||||
type = 8;
|
||||
style = 0;
|
||||
colorFrame[] = {1,1,1,0.7};
|
||||
colorBar[] = {1,1,1,0.7};
|
||||
texture = "#(argb,8,8,3)color(1,1,1,0.7)";
|
||||
x = "1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "10 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "38 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "0.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
};
|
||||
|
||||
|
||||
class cse_gui_staticBase {
|
||||
idc = -1;
|
||||
type = CT_STATIC;
|
||||
x = 0.0;
|
||||
y = 0.0;
|
||||
w = 0.183825;
|
||||
h = 0.104575;
|
||||
style = ST_LEFT;
|
||||
font = FontCSE;
|
||||
sizeEx = 0.03921;
|
||||
colorText[] = {0.95, 0.95, 0.95, 1.0};
|
||||
colorBackground[] = {0, 0, 0, 0};
|
||||
text = "";
|
||||
};
|
||||
|
||||
class RscListBox;
|
||||
class cse_gui_listBoxBase : RscListBox{
|
||||
type = CT_LISTBOX;
|
||||
style = ST_MULTI;
|
||||
font = FontCSE;
|
||||
sizeEx = 0.03921;
|
||||
color[] = {1, 1, 1, 1};
|
||||
colorText[] = {0.543, 0.5742, 0.4102, 1.0};
|
||||
colorScrollbar[] = {0.95, 0.95, 0.95, 1};
|
||||
colorSelect[] = {0.95, 0.95, 0.95, 1};
|
||||
colorSelect2[] = {0.95, 0.95, 0.95, 1};
|
||||
colorSelectBackground[] = {0, 0, 0, 1};
|
||||
colorSelectBackground2[] = {0.543, 0.5742, 0.4102, 1.0};
|
||||
colorDisabled[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.69])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.75])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.5])", 0.25};
|
||||
period = 1.2;
|
||||
rowHeight = 0.03;
|
||||
colorBackground[] = {0, 0, 0, 1};
|
||||
maxHistoryDelay = 1.0;
|
||||
autoScrollSpeed = -1;
|
||||
autoScrollDelay = 5;
|
||||
autoScrollRewind = 0;
|
||||
soundSelect[] = {"",0.1,1};
|
||||
soundExpand[] = {"",0.1,1};
|
||||
soundCollapse[] = {"",0.1,1};
|
||||
class ListScrollBar {
|
||||
arrowEmpty = "\A3\ui_f\data\gui\cfg\scrollbar\arrowEmpty_ca.paa";
|
||||
arrowFull = "\A3\ui_f\data\gui\cfg\scrollbar\arrowFull_ca.paa";
|
||||
autoScrollDelay = 5;
|
||||
autoScrollEnabled = 0;
|
||||
autoScrollRewind = 0;
|
||||
autoScrollSpeed = -1;
|
||||
border = "\A3\ui_f\data\gui\cfg\scrollbar\border_ca.paa";
|
||||
color[] = {1,1,1,0.6};
|
||||
colorActive[] = {1,1,1,1};
|
||||
colorDisabled[] = {1,1,1,0.3};
|
||||
height = 0;
|
||||
scrollSpeed = 0.06;
|
||||
shadow = 0;
|
||||
thumb = "\A3\ui_f\data\gui\cfg\scrollbar\thumb_ca.paa";
|
||||
width = 0;
|
||||
};
|
||||
class ScrollBar {
|
||||
color[] = {1, 1, 1, 0.6};
|
||||
colorActive[] = {1, 1, 1, 1};
|
||||
colorDisabled[] = {1, 1, 1, 0.3};
|
||||
thumb = "";
|
||||
arrowFull = "";
|
||||
arrowEmpty = "";
|
||||
border = "";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
class cse_gui_listNBox {
|
||||
access = 0;
|
||||
type = CT_LISTNBOX;// 102;
|
||||
style =ST_MULTI;
|
||||
w = 0.4;
|
||||
h = 0.4;
|
||||
font = FontCSE;
|
||||
sizeEx = 0.031;
|
||||
|
||||
autoScrollSpeed = -1;
|
||||
autoScrollDelay = 5;
|
||||
autoScrollRewind = 0;
|
||||
arrowEmpty = "#(argb,8,8,3)color(1,1,1,1)";
|
||||
arrowFull = "#(argb,8,8,3)color(1,1,1,1)";
|
||||
columns[] = {0.0};
|
||||
color[] = {1, 1, 1, 1};
|
||||
|
||||
rowHeight = 0.03;
|
||||
colorBackground[] = {0, 0, 0, 0.2};
|
||||
colorText[] = {1,1, 1, 1.0};
|
||||
colorScrollbar[] = {0.95, 0.95, 0.95, 1};
|
||||
colorSelect[] = {0.95, 0.95, 0.95, 1};
|
||||
colorSelect2[] = {0.95, 0.95, 0.95, 1};
|
||||
colorSelectBackground[] = {0, 0, 0, 0.0};
|
||||
colorSelectBackground2[] = {0.0, 0.0, 0.0, 0.5};
|
||||
colorActive[] = {0,0,0,1};
|
||||
colorDisabled[] = {0,0,0,0.3};
|
||||
rows = 1;
|
||||
|
||||
drawSideArrows = 0;
|
||||
idcLeft = -1;
|
||||
idcRight = -1;
|
||||
maxHistoryDelay = 1;
|
||||
soundSelect[] = {"", 0.1, 1};
|
||||
period = 1;
|
||||
shadow = 2;
|
||||
class ScrollBar {
|
||||
arrowEmpty = "#(argb,8,8,3)color(1,1,1,1)";
|
||||
arrowFull = "#(argb,8,8,3)color(1,1,1,1)";
|
||||
border = "#(argb,8,8,3)color(1,1,1,1)";
|
||||
color[] = {1,1,1,0.6};
|
||||
colorActive[] = {1,1,1,1};
|
||||
colorDisabled[] = {1,1,1,0.3};
|
||||
thumb = "#(argb,8,8,3)color(1,1,1,1)";
|
||||
};
|
||||
class ListScrollBar {
|
||||
arrowEmpty = "\A3\ui_f\data\gui\cfg\scrollbar\arrowEmpty_ca.paa";
|
||||
arrowFull = "\A3\ui_f\data\gui\cfg\scrollbar\arrowFull_ca.paa";
|
||||
autoScrollDelay = 5;
|
||||
autoScrollEnabled = 0;
|
||||
autoScrollRewind = 0;
|
||||
autoScrollSpeed = -1;
|
||||
border = "\A3\ui_f\data\gui\cfg\scrollbar\border_ca.paa";
|
||||
color[] = {1,1,1,0.6};
|
||||
colorActive[] = {1,1,1,1};
|
||||
colorDisabled[] = {1,1,1,0.3};
|
||||
height = 0;
|
||||
scrollSpeed = 0.06;
|
||||
shadow = 0;
|
||||
thumb = "\A3\ui_f\data\gui\cfg\scrollbar\thumb_ca.paa";
|
||||
width = 0;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
class RscCombo;
|
||||
class cse_gui_comboBoxBase: RscCombo {
|
||||
idc = -1;
|
||||
type = 4;
|
||||
style = "0x10 + 0x200";
|
||||
x = 0;
|
||||
y = 0;
|
||||
w = 0.3;
|
||||
h = 0.035;
|
||||
color[] = {0,0,0,0.6};
|
||||
colorActive[] = {1,0,0,1};
|
||||
colorBackground[] = {0,0,0,1};
|
||||
colorDisabled[] = {1,1,1,0.25};
|
||||
colorScrollbar[] = {1,0,0,1};
|
||||
colorSelect[] = {0,0,0,1};
|
||||
colorSelectBackground[] = {1,1,1,0.7};
|
||||
colorText[] = {1,1,1,1};
|
||||
|
||||
arrowEmpty = "";
|
||||
arrowFull = "";
|
||||
wholeHeight = 0.45;
|
||||
font = FontCSE;
|
||||
sizeEx = 0.031;
|
||||
soundSelect[] = {"\A3\ui_f\data\sound\RscCombo\soundSelect",0.1,1};
|
||||
soundExpand[] = {"\A3\ui_f\data\sound\RscCombo\soundExpand",0.1,1};
|
||||
soundCollapse[] = {"\A3\ui_f\data\sound\RscCombo\soundCollapse",0.1,1};
|
||||
maxHistoryDelay = 1.0;
|
||||
class ScrollBar
|
||||
{
|
||||
color[] = {0.3,0.3,0.3,0.6};
|
||||
colorActive[] = {0.3,0.3,0.3,1};
|
||||
colorDisabled[] = {0.3,0.3,0.3,0.3};
|
||||
thumb = "\A3\ui_f\data\gui\cfg\scrollbar\thumb_ca.paa";
|
||||
arrowEmpty = "\A3\ui_f\data\gui\cfg\scrollbar\arrowEmpty_ca.paa";
|
||||
arrowFull = "\A3\ui_f\data\gui\cfg\scrollbar\arrowFull_ca.paa";
|
||||
border = "";
|
||||
};
|
||||
class ComboScrollBar {
|
||||
arrowEmpty = "\A3\ui_f\data\gui\cfg\scrollbar\arrowEmpty_ca.paa";
|
||||
arrowFull = "\A3\ui_f\data\gui\cfg\scrollbar\arrowFull_ca.paa";
|
||||
autoScrollDelay = 5;
|
||||
autoScrollEnabled = 0;
|
||||
autoScrollRewind = 0;
|
||||
autoScrollSpeed = -1;
|
||||
border = "\A3\ui_f\data\gui\cfg\scrollbar\border_ca.paa";
|
||||
color[] = {0.3,0.3,0.3,0.6};
|
||||
colorActive[] = {0.3,0.3,0.3,1};
|
||||
colorDisabled[] = {0.3,0.3,0.3,0.3};
|
||||
height = 0;
|
||||
scrollSpeed = 0.06;
|
||||
shadow = 0;
|
||||
thumb = "\A3\ui_f\data\gui\cfg\scrollbar\thumb_ca.paa";
|
||||
width = 0;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
class cse_gui_mapBase {
|
||||
moveOnEdges = 1;
|
||||
x = "SafeZoneXAbs";
|
||||
y = "SafeZoneY + 1.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
w = "SafeZoneWAbs";
|
||||
h = "SafeZoneH - 1.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
type = 100; // Use 100 to hide markers
|
||||
style = 48;
|
||||
shadow = 0;
|
||||
|
||||
ptsPerSquareSea = 5;
|
||||
ptsPerSquareTxt = 3;
|
||||
ptsPerSquareCLn = 10;
|
||||
ptsPerSquareExp = 10;
|
||||
ptsPerSquareCost = 10;
|
||||
ptsPerSquareFor = 9;
|
||||
ptsPerSquareForEdge = 9;
|
||||
ptsPerSquareRoad = 6;
|
||||
ptsPerSquareObj = 9;
|
||||
showCountourInterval = 0;
|
||||
scaleMin = 0.001;
|
||||
scaleMax = 1.0;
|
||||
scaleDefault = 0.16;
|
||||
maxSatelliteAlpha = 0.85;
|
||||
alphaFadeStartScale = 0.35;
|
||||
alphaFadeEndScale = 0.4;
|
||||
colorBackground[] = {0.969,0.957,0.949,1.0};
|
||||
colorSea[] = {0.467,0.631,0.851,0.5};
|
||||
colorForest[] = {0.624,0.78,0.388,0.5};
|
||||
colorForestBorder[] = {0.0,0.0,0.0,0.0};
|
||||
colorRocks[] = {0.0,0.0,0.0,0.3};
|
||||
colorRocksBorder[] = {0.0,0.0,0.0,0.0};
|
||||
colorLevels[] = {0.286,0.177,0.094,0.5};
|
||||
colorMainCountlines[] = {0.572,0.354,0.188,0.5};
|
||||
colorCountlines[] = {0.572,0.354,0.188,0.25};
|
||||
colorMainCountlinesWater[] = {0.491,0.577,0.702,0.6};
|
||||
colorCountlinesWater[] = {0.491,0.577,0.702,0.3};
|
||||
colorPowerLines[] = {0.1,0.1,0.1,1.0};
|
||||
colorRailWay[] = {0.8,0.2,0.0,1.0};
|
||||
colorNames[] = {0.1,0.1,0.1,0.9};
|
||||
colorInactive[] = {1.0,1.0,1.0,0.5};
|
||||
colorOutside[] = {0.0,0.0,0.0,1.0};
|
||||
colorTracks[] = {0.84,0.76,0.65,0.15};
|
||||
colorTracksFill[] = {0.84,0.76,0.65,1.0};
|
||||
colorRoads[] = {0.7,0.7,0.7,1.0};
|
||||
colorRoadsFill[] = {1.0,1.0,1.0,1.0};
|
||||
colorMainRoads[] = {0.9,0.5,0.3,1.0};
|
||||
colorMainRoadsFill[] = {1.0,0.6,0.4,1.0};
|
||||
colorGrid[] = {0.1,0.1,0.1,0.6};
|
||||
colorGridMap[] = {0.1,0.1,0.1,0.6};
|
||||
colorText[] = {1, 1, 1, 0.85};
|
||||
font = "PuristaMedium";
|
||||
sizeEx = 0.0270000;
|
||||
stickX[] = {0.20, {"Gamma", 1.00, 1.50} };
|
||||
stickY[] = {0.20, {"Gamma", 1.00, 1.50} };
|
||||
onMouseButtonClick = "";
|
||||
onMouseButtonDblClick = "";
|
||||
|
||||
fontLabel = "PuristaMedium";
|
||||
sizeExLabel = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";
|
||||
fontGrid = "TahomaB";
|
||||
sizeExGrid = 0.02;
|
||||
fontUnits = "TahomaB";
|
||||
sizeExUnits = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";
|
||||
fontNames = "PuristaMedium";
|
||||
sizeExNames = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8) * 2";
|
||||
fontInfo = "PuristaMedium";
|
||||
sizeExInfo = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";
|
||||
fontLevel = "TahomaB";
|
||||
sizeExLevel = 0.02;
|
||||
text = "#(argb,8,8,3)color(1,1,1,1)";
|
||||
class ActiveMarker {
|
||||
color[] = {0.30, 0.10, 0.90, 1.00};
|
||||
size = 50;
|
||||
};
|
||||
class Legend
|
||||
{
|
||||
x = "SafeZoneX + ( ((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
y = "SafeZoneY + safezoneH - 4.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
w = "10 * ( ((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.5 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
sizeEx = "( ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";
|
||||
colorBackground[] = {1,1,1,0.5};
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
class Task
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\taskIcon_CA.paa";
|
||||
iconCreated = "\A3\ui_f\data\map\mapcontrol\taskIconCreated_CA.paa";
|
||||
iconCanceled = "\A3\ui_f\data\map\mapcontrol\taskIconCanceled_CA.paa";
|
||||
iconDone = "\A3\ui_f\data\map\mapcontrol\taskIconDone_CA.paa";
|
||||
iconFailed = "\A3\ui_f\data\map\mapcontrol\taskIconFailed_CA.paa";
|
||||
color[] = {"(profilenamespace getvariable ['IGUI_TEXT_RGB_R',0])","(profilenamespace getvariable ['IGUI_TEXT_RGB_G',1])","(profilenamespace getvariable ['IGUI_TEXT_RGB_B',1])","(profilenamespace getvariable ['IGUI_TEXT_RGB_A',0.8])"};
|
||||
colorCreated[] = {1,1,1,1};
|
||||
colorCanceled[] = {0.7,0.7,0.7,1};
|
||||
colorDone[] = {0.7,1,0.3,1};
|
||||
colorFailed[] = {1,0.3,0.2,1};
|
||||
size = 27;
|
||||
importance = 1;
|
||||
coefMin = 1;
|
||||
coefMax = 1;
|
||||
};
|
||||
class Waypoint
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\waypoint_ca.paa";
|
||||
color[] = {0,0,0,1};
|
||||
size = 20;
|
||||
importance = "1.2 * 16 * 0.05";
|
||||
coefMin = 0.900000;
|
||||
coefMax = 4;
|
||||
};
|
||||
class WaypointCompleted
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\waypointCompleted_ca.paa";
|
||||
color[] = {0,0,0,1};
|
||||
size = 20;
|
||||
importance = "1.2 * 16 * 0.05";
|
||||
coefMin = 0.900000;
|
||||
coefMax = 4;
|
||||
};
|
||||
class CustomMark
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\custommark_ca.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 1;
|
||||
coefMax = 1;
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
class Command
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\waypoint_ca.paa";
|
||||
size = 18;
|
||||
importance = 1;
|
||||
coefMin = 1;
|
||||
coefMax = 1;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class Bush
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\bush_ca.paa";
|
||||
color[] = {0.45,0.64,0.33,0.4};
|
||||
size = "14/2";
|
||||
importance = "0.2 * 14 * 0.05 * 0.05";
|
||||
coefMin = 0.25;
|
||||
coefMax = 4;
|
||||
};
|
||||
class Rock
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\rock_ca.paa";
|
||||
color[] = {0.1,0.1,0.1,0.8};
|
||||
size = 12;
|
||||
importance = "0.5 * 12 * 0.05";
|
||||
coefMin = 0.25;
|
||||
coefMax = 4;
|
||||
};
|
||||
class SmallTree
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\bush_ca.paa";
|
||||
color[] = {0.45,0.64,0.33,0.4};
|
||||
size = 12;
|
||||
importance = "0.6 * 12 * 0.05";
|
||||
coefMin = 0.25;
|
||||
coefMax = 4;
|
||||
};
|
||||
class Tree
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\bush_ca.paa";
|
||||
color[] = {0.45,0.64,0.33,0.4};
|
||||
size = 12;
|
||||
importance = "0.9 * 16 * 0.05";
|
||||
coefMin = 0.25;
|
||||
coefMax = 4;
|
||||
};
|
||||
class busstop
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\busstop_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class fuelstation
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\fuelstation_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class hospital
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\hospital_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class church
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\church_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class lighthouse
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\lighthouse_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class power
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\power_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class powersolar
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\powersolar_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class powerwave
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\powerwave_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class powerwind
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\powerwind_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class quay
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\quay_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class shipwreck
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\shipwreck_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class transmitter
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\transmitter_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class watertower
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\watertower_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {1,1,1,1};
|
||||
};
|
||||
class Cross
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\Cross_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
class Chapel
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\Chapel_CA.paa";
|
||||
size = 24;
|
||||
importance = 1;
|
||||
coefMin = 0.85;
|
||||
coefMax = 1.0;
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
class Bunker
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\bunker_ca.paa";
|
||||
size = 14;
|
||||
importance = "1.5 * 14 * 0.05";
|
||||
coefMin = 0.25;
|
||||
coefMax = 4;
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
class Fortress
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\bunker_ca.paa";
|
||||
size = 16;
|
||||
importance = "2 * 16 * 0.05";
|
||||
coefMin = 0.25;
|
||||
coefMax = 4;
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
class Fountain
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\fountain_ca.paa";
|
||||
size = 11;
|
||||
importance = "1 * 12 * 0.05";
|
||||
coefMin = 0.25;
|
||||
coefMax = 4;
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
class Ruin
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\ruin_ca.paa";
|
||||
size = 16;
|
||||
importance = "1.2 * 16 * 0.05";
|
||||
coefMin = 1;
|
||||
coefMax = 4;
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
class Stack
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\stack_ca.paa";
|
||||
size = 20;
|
||||
importance = "2 * 16 * 0.05";
|
||||
coefMin = 0.9;
|
||||
coefMax = 4;
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
class Tourism
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\tourism_ca.paa";
|
||||
size = 16;
|
||||
importance = "1 * 16 * 0.05";
|
||||
coefMin = 0.7;
|
||||
coefMax = 4;
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
class ViewTower
|
||||
{
|
||||
icon = "\A3\ui_f\data\map\mapcontrol\viewtower_ca.paa";
|
||||
size = 16;
|
||||
importance = "2.5 * 16 * 0.05";
|
||||
coefMin = 0.5;
|
||||
coefMax = 4;
|
||||
color[] = {0,0,0,1};
|
||||
};
|
||||
};
|
||||
|
||||
#endif
|
@ -1,12 +0,0 @@
|
||||
class cse_dynamicMenuGUI {
|
||||
idd = 176890;
|
||||
movingEnable = false;
|
||||
onLoad = "uiNamespace setVariable ['cse_dynamicMenuGUI', _this select 0];";
|
||||
|
||||
class controlsBackground {
|
||||
};
|
||||
|
||||
class controls {
|
||||
|
||||
};
|
||||
};
|
@ -1,494 +0,0 @@
|
||||
class cse_interactionGUI {
|
||||
idd = 145201;
|
||||
movingEnable = false;
|
||||
onLoad = "uiNamespace setVariable ['cse_interactionGUI', _this select 0];";
|
||||
|
||||
|
||||
class controlsBackground {
|
||||
class cse_background : cse_gui_backgroundBase {
|
||||
idc = -1;
|
||||
x = 0.138;
|
||||
y = 0.17;
|
||||
w = 1.2549;
|
||||
h = 0.836601;
|
||||
text = "";
|
||||
};
|
||||
};
|
||||
|
||||
class controls {
|
||||
|
||||
class cse_interactionName {
|
||||
idc = 111;
|
||||
type = CT_STATIC;
|
||||
x = 10.44;
|
||||
y = 10.75;
|
||||
w = 0.3;
|
||||
h = 0.04;
|
||||
style = ST_CENTER + ST_SHADOW;
|
||||
font = "PuristaMedium";
|
||||
sizeEx = 0.0406536;
|
||||
colorText[] = {0.95, 0.95, 0.95, 1};
|
||||
//colorBackground[] = {1, 1, 1, 0};
|
||||
colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.69])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.75])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.5])", 0.9};
|
||||
text = "";
|
||||
};
|
||||
class cse_subMenuName: cse_interactionName {
|
||||
idc = 112;
|
||||
};
|
||||
class cse_subSubMenuName: cse_interactionName {
|
||||
idc = 113;
|
||||
};
|
||||
|
||||
class cse_option1 : cse_gui_buttonBase {
|
||||
|
||||
idc = 150;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4; // add 5 to each
|
||||
y = 10.45;
|
||||
w = 0.3;
|
||||
h = 0.04;
|
||||
color[] = {1, 1, 1, 1};
|
||||
color2[] = {0,0,0, 1};
|
||||
colorText[] = {1, 1, 1,1};
|
||||
colorBackground[] = {1,1,1,0.95};
|
||||
colorbackground2[] = {1,1,1,0.95};
|
||||
colorDisabled[] = {1,1,1,0.6};
|
||||
colorFocused[] = {0,0,0,1};
|
||||
colorBackgroundFocused[] = {1,1,1,1};
|
||||
animTextureNormal = "cse\cse_gui\data\buttonNormal_gradient_top.paa";
|
||||
animTextureDisabled = "cse\cse_gui\data\buttonDisabled_gradient.paa";
|
||||
animTextureOver = "cse\cse_gui\data\buttonNormal_gradient_top_w.paa";
|
||||
animTextureFocused = "cse\cse_gui\data\buttonNormal_gradient_top_w.paa";
|
||||
animTexturePressed = "cse\cse_gui\data\buttonNormal_gradient_top_w.paa";
|
||||
animTextureDefault = "cse\cse_gui\data\buttonNormal_gradient_top.paa";
|
||||
|
||||
/* animTextureNormal = "";
|
||||
animTextureDisabled = "";
|
||||
animTextureOver = "";
|
||||
animTextureFocused = "";
|
||||
animTexturePressed = "";
|
||||
animTextureDefault = ""; */
|
||||
};
|
||||
class cse_option2 : cse_option1 {
|
||||
idc = 151;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.5;
|
||||
};
|
||||
class cse_option3 : cse_option1 {
|
||||
idc = 152;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.55;
|
||||
};
|
||||
class cse_option4 : cse_option1 {
|
||||
idc = 153;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.6;
|
||||
};
|
||||
class cse_option5 : cse_option1 {
|
||||
idc = 154;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.65;
|
||||
};
|
||||
class cse_option6 : cse_option1 {
|
||||
idc = 155;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.7;
|
||||
};
|
||||
class cse_option7 : cse_option1 {
|
||||
idc = 156;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.75;
|
||||
};
|
||||
class cse_option8 : cse_option1 {
|
||||
idc = 157;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.8;
|
||||
};
|
||||
class cse_option9 : cse_option1 {
|
||||
idc = 158;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.85;
|
||||
};
|
||||
class cse_option10 : cse_option1 {
|
||||
idc = 159;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_option11 : cse_option1 {
|
||||
idc = 160;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_option12 : cse_option1 {
|
||||
idc = 161;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_option13 : cse_option1 {
|
||||
idc = 162;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_option14 : cse_option1 {
|
||||
idc = 163;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_option15 : cse_option1 {
|
||||
idc = 164;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
|
||||
|
||||
// Sub menu Options
|
||||
class cse_subMenuButton1 : cse_option1 {
|
||||
idc = 201;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.75;
|
||||
};
|
||||
class cse_subMenuButton2 : cse_option1 {
|
||||
idc = 202;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.8;
|
||||
};
|
||||
class cse_subMenuButton3 : cse_option1 {
|
||||
idc = 203;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.85;
|
||||
};
|
||||
class cse_subMenuButton4 : cse_option1 {
|
||||
idc = 204;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_subMenuButton5 : cse_option1 {
|
||||
idc = 205;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.95;
|
||||
};
|
||||
class cse_subMenuButton6 : cse_option1 {
|
||||
idc = 206;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuButton7 : cse_option1 {
|
||||
idc = 207;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuButton8 : cse_option1 {
|
||||
idc = 208;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuButton9 : cse_option1 {
|
||||
idc = 209;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuButton10 : cse_option1 {
|
||||
idc = 210;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuButton11 : cse_option1 {
|
||||
idc = 211;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuButton12 : cse_option1 {
|
||||
idc = 212;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuButton13 : cse_option1 {
|
||||
idc = 213;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuButton14 : cse_option1 {
|
||||
idc = 214;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuButton15 : cse_option1 {
|
||||
idc = 215;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
|
||||
|
||||
class cse_subMenuSub1 : cse_option1 {
|
||||
idc = 301;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.75;
|
||||
};
|
||||
class cse_subMenuSub2 : cse_option1 {
|
||||
idc = 302;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.8;
|
||||
};
|
||||
class cse_subMenuSub3 : cse_option1 {
|
||||
idc = 303;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.85;
|
||||
};
|
||||
class cse_subMenuSub4 : cse_option1 {
|
||||
idc = 304;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_subMenuSub5 : cse_option1 {
|
||||
idc = 305;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.95;
|
||||
};
|
||||
class cse_subMenuSub6 : cse_option1 {
|
||||
idc = 306;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuSub7 : cse_option1 {
|
||||
idc = 307;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuSub8 : cse_option1 {
|
||||
idc = 308;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuSub9 : cse_option1 {
|
||||
idc = 309;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuSub10 : cse_option1 {
|
||||
idc = 310;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuSub11 : cse_option1 {
|
||||
idc = 311;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuSub12 : cse_option1 {
|
||||
idc = 312;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuSub13 : cse_option1 {
|
||||
idc = 313;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuSub14 : cse_option1 {
|
||||
idc = 314;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuSub15 : cse_option1 {
|
||||
idc = 315;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
|
||||
class iconImg1: cse_gui_backgroundBase {
|
||||
idc = 400;
|
||||
x = (safezoneX + (safeZoneW - 0.1));
|
||||
y = (safezoneY + (safeZoneH - 0.1));
|
||||
w = 0.05;
|
||||
h = 0.05;
|
||||
size = 0.1;
|
||||
SizeEx = 0.1;
|
||||
colorBackground[] = {0,0,0,1};
|
||||
colorPicture[] = {1,1,1,1};
|
||||
colorText[] = {1,1,1,1};
|
||||
text = "";
|
||||
};
|
||||
|
||||
class option_tags : cse_gui_buttonBase {
|
||||
idc = 500;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = (safezoneX + (safeZoneW - 0.1));
|
||||
y = (safezoneY + (safeZoneH - 0.1));
|
||||
w = 0.05;
|
||||
h = 0.05;
|
||||
class TextPos {
|
||||
left = 0;
|
||||
top = 0;
|
||||
right = 0.0;
|
||||
bottom = 0.00;
|
||||
};
|
||||
animTextureNormal = "";
|
||||
animTextureDisabled = "";
|
||||
animTextureOver = "";
|
||||
animTextureFocused = "";
|
||||
animTexturePressed = "";
|
||||
animTextureDefault = "";
|
||||
};
|
||||
|
||||
class iconImg2: iconImg1 {
|
||||
idc = 401;
|
||||
x = (safezoneX + (safeZoneW - 0.15));
|
||||
y = (safezoneY + (safeZoneH - 0.1));
|
||||
w = 0.05;
|
||||
h = 0.05;
|
||||
size = 0.1;
|
||||
SizeEx = 0.1;
|
||||
colorBackground[] = {0,0,0,1};
|
||||
colorPicture[] = {1,1,1,1};
|
||||
colorText[] = {1,1,1,1};
|
||||
text = "";
|
||||
};
|
||||
class iconImg3: iconImg1 {
|
||||
idc = 402;
|
||||
x = (safezoneX + (safeZoneW - 0.2));
|
||||
y = (safezoneY + (safeZoneH - 0.1));
|
||||
w = 0.05;
|
||||
h = 0.05;
|
||||
size = 0.1;
|
||||
SizeEx = 0.1;
|
||||
colorBackground[] = {0,0,0,1};
|
||||
colorPicture[] = {1,1,1,1};
|
||||
colorText[] = {1,1,1,1};
|
||||
text = "";
|
||||
};
|
||||
|
||||
class option_icon2 : option_tags {
|
||||
idc = 501;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = (safezoneX + (safeZoneW - 0.15));
|
||||
y = (safezoneY + (safeZoneH - 0.1));
|
||||
w = 0.05;
|
||||
h = 0.05;
|
||||
class TextPos {
|
||||
left = 0;
|
||||
top = 0;
|
||||
right = 0.0;
|
||||
bottom = 0.00;
|
||||
};
|
||||
animTextureNormal = "";
|
||||
animTextureDisabled = "";
|
||||
animTextureOver = "";
|
||||
animTextureFocused = "";
|
||||
animTexturePressed = "";
|
||||
animTextureDefault = "";
|
||||
};
|
||||
|
||||
class option_icon3 : option_tags {
|
||||
idc = 502;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = (safezoneX + (safeZoneW - 0.2));
|
||||
y = (safezoneY + (safeZoneH - 0.1));
|
||||
w = 0.05;
|
||||
h = 0.05;
|
||||
class TextPos {
|
||||
left = 0;
|
||||
top = 0;
|
||||
right = 0.0;
|
||||
bottom = 0.00;
|
||||
};
|
||||
animTextureNormal = "";
|
||||
animTextureDisabled = "";
|
||||
animTextureOver = "";
|
||||
animTextureFocused = "";
|
||||
animTexturePressed = "";
|
||||
animTextureDefault = "";
|
||||
};
|
||||
};
|
||||
};
|
@ -1,417 +0,0 @@
|
||||
class cse_interactionGUI_w {
|
||||
idd = 145201;
|
||||
movingEnable = false;
|
||||
onLoad = "uiNamespace setVariable ['cse_interactionGUI', _this select 0];";
|
||||
|
||||
|
||||
class controlsBackground {
|
||||
class cse_background : cse_gui_backgroundBase {
|
||||
idc = -1;
|
||||
x = 0.138;
|
||||
y = 0.17;
|
||||
w = 1.2549;
|
||||
h = 0.836601;
|
||||
text = "";
|
||||
};
|
||||
};
|
||||
|
||||
class controls {
|
||||
|
||||
class cse_interactionName {
|
||||
idc = 111;
|
||||
type = CT_STATIC;
|
||||
x = 10.44;
|
||||
y = 10.75;
|
||||
w = 0.3;
|
||||
h = 0.04;
|
||||
style = ST_CENTER + ST_SHADOW;
|
||||
font = "PuristaMedium";
|
||||
sizeEx = 0.0406536;
|
||||
colorText[] = {0.95, 0.95, 0.95, 1};
|
||||
//colorBackground[] = {1, 1, 1, 0};
|
||||
colorBackground[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.69])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.75])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.5])", 0.9};
|
||||
text = "";
|
||||
};
|
||||
class cse_subMenuName: cse_interactionName {
|
||||
idc = 112;
|
||||
};
|
||||
class cse_subSubMenuName: cse_interactionName {
|
||||
idc = 113;
|
||||
};
|
||||
|
||||
class cse_option1 : cse_gui_buttonBase {
|
||||
|
||||
idc = 150;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4; // add 5 to each
|
||||
y = 10.45;
|
||||
w = 0.3;
|
||||
h = 0.04;
|
||||
color[] = {0,0,0, 1};
|
||||
color2[] = {1,1,1, 1};
|
||||
colorText[] = {0,0,0,1};
|
||||
colorBackground[] = {1,1,1,0.95};
|
||||
colorbackground2[] = {1,1,1,0.95};
|
||||
colorDisabled[] = {1,1,1,0.6};
|
||||
colorFocused[] = {0,0,0,1};
|
||||
colorBackgroundFocused[] = {1,1,1,1};
|
||||
animTextureNormal = "cse\cse_gui\data\buttonNormal_gradient_top_w.paa";
|
||||
animTextureDisabled = "cse\cse_gui\data\buttonDisabled_gradient.paa";
|
||||
animTextureOver = "cse\cse_gui\data\buttonNormal_gradient_top.paa";
|
||||
animTextureFocused = "cse\cse_gui\data\buttonNormal_gradient_top.paa";
|
||||
animTexturePressed = "cse\cse_gui\data\buttonNormal_gradient_top.paa";
|
||||
animTextureDefault = "cse\cse_gui\data\buttonNormal_gradient_top_w.paa";
|
||||
};
|
||||
class cse_option2 : cse_option1 {
|
||||
idc = 151;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.5;
|
||||
};
|
||||
class cse_option3 : cse_option1 {
|
||||
idc = 152;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.55;
|
||||
};
|
||||
class cse_option4 : cse_option1 {
|
||||
idc = 153;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.6;
|
||||
};
|
||||
class cse_option5 : cse_option1 {
|
||||
idc = 154;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.65;
|
||||
};
|
||||
class cse_option6 : cse_option1 {
|
||||
idc = 155;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.7;
|
||||
};
|
||||
class cse_option7 : cse_option1 {
|
||||
idc = 156;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.75;
|
||||
};
|
||||
class cse_option8 : cse_option1 {
|
||||
idc = 157;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.8;
|
||||
};
|
||||
class cse_option9 : cse_option1 {
|
||||
idc = 158;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.85;
|
||||
};
|
||||
class cse_option10 : cse_option1 {
|
||||
idc = 159;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_option11 : cse_option1 {
|
||||
idc = 160;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_option12 : cse_option1 {
|
||||
idc = 161;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_option13 : cse_option1 {
|
||||
idc = 162;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_option14 : cse_option1 {
|
||||
idc = 163;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_option15 : cse_option1 {
|
||||
idc = 164;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.4;
|
||||
y = 10.9;
|
||||
};
|
||||
|
||||
|
||||
// Sub menu Options
|
||||
class cse_subMenuButton1 : cse_option1 {
|
||||
idc = 201;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.75;
|
||||
};
|
||||
class cse_subMenuButton2 : cse_option1 {
|
||||
idc = 202;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.8;
|
||||
};
|
||||
class cse_subMenuButton3 : cse_option1 {
|
||||
idc = 203;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.85;
|
||||
};
|
||||
class cse_subMenuButton4 : cse_option1 {
|
||||
idc = 204;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_subMenuButton5 : cse_option1 {
|
||||
idc = 205;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.95;
|
||||
};
|
||||
class cse_subMenuButton6 : cse_option1 {
|
||||
idc = 206;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuButton7 : cse_option1 {
|
||||
idc = 207;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuButton8 : cse_option1 {
|
||||
idc = 208;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuButton9 : cse_option1 {
|
||||
idc = 209;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuButton10 : cse_option1 {
|
||||
idc = 210;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuButton11 : cse_option1 {
|
||||
idc = 211;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuButton12 : cse_option1 {
|
||||
idc = 212;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuButton13 : cse_option1 {
|
||||
idc = 213;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuButton14 : cse_option1 {
|
||||
idc = 214;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuButton15 : cse_option1 {
|
||||
idc = 215;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
|
||||
|
||||
class cse_subMenuSub1 : cse_option1 {
|
||||
idc = 301;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.75;
|
||||
};
|
||||
class cse_subMenuSub2 : cse_option1 {
|
||||
idc = 302;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.8;
|
||||
};
|
||||
class cse_subMenuSub3 : cse_option1 {
|
||||
idc = 303;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.85;
|
||||
};
|
||||
class cse_subMenuSub4 : cse_option1 {
|
||||
idc = 304;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.9;
|
||||
};
|
||||
class cse_subMenuSub5 : cse_option1 {
|
||||
idc = 305;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.95;
|
||||
};
|
||||
class cse_subMenuSub6 : cse_option1 {
|
||||
idc = 306;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuSub7 : cse_option1 {
|
||||
idc = 307;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuSub8 : cse_option1 {
|
||||
idc = 308;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuSub9 : cse_option1 {
|
||||
idc = 309;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 10.88;
|
||||
y = 10.0;
|
||||
};
|
||||
class cse_subMenuSub10 : cse_option1 {
|
||||
idc = 310;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuSub11 : cse_option1 {
|
||||
idc = 311;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuSub12 : cse_option1 {
|
||||
idc = 312;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuSub13 : cse_option1 {
|
||||
idc = 313;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuSub14 : cse_option1 {
|
||||
idc = 314;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
class cse_subMenuSub15 : cse_option1 {
|
||||
idc = 315;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = 100.88;
|
||||
y = 100.0;
|
||||
};
|
||||
|
||||
class iconImg1: cse_gui_backgroundBase {
|
||||
idc = 400;
|
||||
x = (safezoneX + (safeZoneW - 0.1));
|
||||
y = (safezoneY + (safeZoneH - 0.1));
|
||||
w = 0.1;
|
||||
h = 0.1;
|
||||
size = 0.1;
|
||||
SizeEx = 0.1;
|
||||
colorBackground[] = {0,0,0,1};
|
||||
colorPicture[] = {1,1,1,1};
|
||||
colorText[] = {1,1,1,1};
|
||||
text = "";
|
||||
};
|
||||
|
||||
class option_tags : cse_gui_buttonBase {
|
||||
idc = 500;
|
||||
text = "";
|
||||
onButtonClick = "";
|
||||
x = (safezoneX + (safeZoneW - 0.1));
|
||||
y = (safezoneY + (safeZoneH - 0.1));
|
||||
w = 0.1;
|
||||
h = 0.1;
|
||||
class TextPos {
|
||||
left = 0;
|
||||
top = 0;
|
||||
right = 0.0;
|
||||
bottom = 0.00;
|
||||
};
|
||||
animTextureNormal = "";
|
||||
animTextureDisabled = "";
|
||||
animTextureOver = "";
|
||||
animTextureFocused = "";
|
||||
animTexturePressed = "";
|
||||
animTextureDefault = "";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
@ -1,648 +0,0 @@
|
||||
|
||||
class CSE_RADIAL_MENU {
|
||||
idd = 432341;
|
||||
movingenable = 0;
|
||||
fadein = 0;
|
||||
fadeout = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSE_RADIAL_MENU', _this select 0]; ['CSE_RADIAL_MENU', true] call cse_fnc_gui_blurScreen;";
|
||||
onUnload = "['CSE_RADIAL_MENU', false] call cse_fnc_gui_blurScreen; ";
|
||||
class controlsBackground {
|
||||
class backgroundTop: cse_gui_backgroundBase{
|
||||
idc = 800;
|
||||
type = CT_STATIC;
|
||||
x = "12.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "7.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "15 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "15 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {0, 0, 0, 0.66};
|
||||
colorBackground[] = {0, 0, 0, 0.66};
|
||||
text = "cse\cse_gui\radialmenu\data\radial_background_top_w.paa";
|
||||
};
|
||||
class backgroundTopLeft: backgroundTop{
|
||||
idc = 801;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_background_topleft_w.paa";
|
||||
};
|
||||
class backgroundTopRight: backgroundTop{
|
||||
idc = 802;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_background_topright_w.paa";
|
||||
};
|
||||
class backgroundCenterLeft: backgroundTop{
|
||||
idc = 803;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_background_centerleft_w.paa";
|
||||
};
|
||||
class backgroundCenterRight: backgroundTop{
|
||||
idc = 804;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_background_centerright_w.paa";
|
||||
};
|
||||
|
||||
class backgroundBottomLeft: backgroundTop{
|
||||
idc = 805;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_background_bottomleft_w.paa";
|
||||
};
|
||||
class backgroundBottomRight: backgroundTop{
|
||||
idc = 806;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_background_bottomright_w.paa";
|
||||
};
|
||||
class backgroundBottom: backgroundTop{
|
||||
idc = 807;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_background_bottom_w.paa";
|
||||
};
|
||||
class backgroundCenter: backgroundTop{
|
||||
idc = 808;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_center_info_background.paa";
|
||||
};
|
||||
class submenu_background_topleft: cse_gui_backgroundBase{
|
||||
idc = 700;
|
||||
type = CT_STATIC;
|
||||
x = "5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "-1.25 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "30 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "30 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {0, 0, 0, 0.0};
|
||||
colorBackground[] = {0, 0, 0, 0.66};
|
||||
text = "cse\cse_gui\radialmenu\data\radial_submenu_topleft.paa";
|
||||
};
|
||||
class submenu_background_topright: submenu_background_topleft{
|
||||
idc = 701;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_submenu_topright.paa";
|
||||
};
|
||||
class submenu_background_bottomleft: submenu_background_topleft{
|
||||
idc = 702;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_submenu_bottomleft.paa";
|
||||
};
|
||||
class submenu_background_bottomright: submenu_background_topleft{
|
||||
idc = 703;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_submenu_bottomright.paa";
|
||||
};
|
||||
|
||||
|
||||
class iconCenter: cse_gui_backgroundBase{
|
||||
idc = 710;
|
||||
type = CT_STATIC;
|
||||
x = "18.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "4 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {1,1,1, 0.4};
|
||||
colorBackground[] = {1,1,1, 0.0};
|
||||
text = "";
|
||||
};
|
||||
class iconCenter_return: cse_gui_backgroundBase{
|
||||
idc = 711;
|
||||
type = CT_STATIC;
|
||||
x = "19.25 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "16.7 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "1.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {1,1,1, 0.4};
|
||||
colorBackground[] = {1,1,1, 0.0};
|
||||
text = "cse\cse_gui\radialmenu\data\icons\icon_return.paa";
|
||||
};
|
||||
|
||||
};
|
||||
class controls {
|
||||
class LabelmenuName: cse_gui_staticBase{
|
||||
idc = 1;
|
||||
x = "17 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "6 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";
|
||||
colorText[] = {0.97,0.97,0.97,1};
|
||||
colorBackground[] = {0,0,0, 0.0};
|
||||
text = "";
|
||||
style = ST_CENTER;
|
||||
};
|
||||
|
||||
class LabeltargetName: LabelmenuName{
|
||||
idc = 2;
|
||||
y = "14 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.6)";
|
||||
};
|
||||
class actionToPrevious : cse_gui_buttonBase {
|
||||
idc = 2315;
|
||||
text = "";
|
||||
/*x = "12.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "23.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "15 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";*/
|
||||
x = "19.25 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "16.7 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "1.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
animTextureNormal = "#(argb,8,8,3)color(0,0,0,0.0)";
|
||||
animTextureDisabled = "#(argb,8,8,3)color(0,0,0,0.0)";
|
||||
animTextureOver = "#(argb,8,8,3)color(1,1,1,0.0)";
|
||||
animTextureFocused = "#(argb,8,8,3)color(1,1,1,0.0)";
|
||||
animTexturePressed = "#(argb,8,8,3)color(1,1,1,0.0)";
|
||||
animTextureDefault = "#(argb,8,8,3)color(1,1,1,0.0)";
|
||||
color[] = {1, 1, 1, 1};
|
||||
color2[] = {0,0,0, 1};
|
||||
colorBackgroundFocused[] = {1,1,1,1};
|
||||
colorBackground[] = {1,1,1,1};
|
||||
colorbackground2[] = {1,1,1,1};
|
||||
colorDisabled[] = {0.5,0.5,0.5,0.8};
|
||||
colorFocused[] = {0,0,0,1};
|
||||
periodFocus = 1;
|
||||
periodOver = 1;
|
||||
action = "[] call cse_fnc_returnToPreviousSubMenu_GUI;";
|
||||
};
|
||||
|
||||
/** ICONS FOR INNER CYCIRLE */
|
||||
class InnerCycle_iconTop: cse_gui_backgroundBase{
|
||||
idc = 100;
|
||||
type = CT_STATIC;
|
||||
x = "19 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "7.75 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "1.75 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1.75 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {1,1,1, 0.66};
|
||||
colorBackground[] = {1,1,1, 0.66};
|
||||
text = "";
|
||||
};
|
||||
class InnerCycle_iconTopLeft : InnerCycle_iconTop {
|
||||
idc = 101;
|
||||
x = "15 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "9.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
|
||||
};
|
||||
class InnerCycle_iconTopRight : InnerCycle_iconTop {
|
||||
idc = 102;
|
||||
x = "23.1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "9.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_iconCenterLeft : InnerCycle_iconTop {
|
||||
idc = 103;
|
||||
x = "13.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_iconCenterRight : InnerCycle_iconTop {
|
||||
idc = 104;
|
||||
x = "24.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_iconBottomLeft : InnerCycle_iconTop {
|
||||
idc = 105;
|
||||
x = "15 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "17.1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_iconBottomRight : InnerCycle_iconTop {
|
||||
idc = 106;
|
||||
x = "23.1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "17.1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
|
||||
class InnerCycle_iconBottom : InnerCycle_iconTop {
|
||||
idc = 107;
|
||||
x = "19 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "18.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
|
||||
/** TEXT */
|
||||
class InnerCycle_TextTop: cse_gui_staticBase{
|
||||
idc = 200;
|
||||
x = "18 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "9.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.6 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.7)";
|
||||
colorText[] = {1,1,1, 0.66};
|
||||
colorBackground[] = {1,1,1, 0.0};
|
||||
text = "";
|
||||
style = ST_CENTER;
|
||||
};
|
||||
class InnerCycle_TextTopLeft : InnerCycle_TextTop {
|
||||
idc = 201;
|
||||
x = "14.6 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "11.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
|
||||
};
|
||||
class InnerCycle_TextTopRight : InnerCycle_TextTop {
|
||||
idc = 202;
|
||||
x = "22.1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "11.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_TextCenterLeft : InnerCycle_TextTop {
|
||||
idc = 203;
|
||||
x = "12.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "15.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_TextCenterRight : InnerCycle_TextTop {
|
||||
idc = 204;
|
||||
x = "23.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "15.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_TextBottomLeft : InnerCycle_TextTop {
|
||||
idc = 205;
|
||||
x = "14.6 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "19.1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_TextBottomRight : InnerCycle_TextTop {
|
||||
idc = 206;
|
||||
x = "22.1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "19.1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
|
||||
class InnerCycle_TextBottom : InnerCycle_TextTop {
|
||||
idc = 207;
|
||||
x = "18 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "20.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
|
||||
class InnerCycle_actionTop : cse_gui_buttonBase {
|
||||
idc = 10;
|
||||
text = "";
|
||||
x = "18.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "7.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "2.7 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.9 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
/*animTextureNormal = "#(argb,8,8,3)color(0,0,0,0.6)";
|
||||
animTextureDisabled = "#(argb,8,8,3)color(0,0,0,0.5)";
|
||||
animTextureOver = "#(argb,8,8,3)color(1,1,1,0.5)";
|
||||
animTextureFocused = "#(argb,8,8,3)color(1,1,1,0.5)";
|
||||
animTexturePressed = "#(argb,8,8,3)color(1,1,1,0.5)";
|
||||
animTextureDefault = "#(argb,8,8,3)color(1,1,1,0.5)";*/
|
||||
animTextureNormal = "#(argb,8,8,3)color(0,0,0,0)";
|
||||
animTextureDisabled = "#(argb,8,8,3)color(0,0,0,0)";
|
||||
animTextureOver = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
animTextureFocused = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
animTexturePressed = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
animTextureDefault = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
color[] = {1, 1, 1, 1};
|
||||
color2[] = {0,0,0, 1};
|
||||
colorBackgroundFocused[] = {1,1,1,1};
|
||||
colorBackground[] = {1,1,1,1};
|
||||
colorbackground2[] = {1,1,1,1};
|
||||
colorDisabled[] = {0.5,0.5,0.5,0.8};
|
||||
colorFocused[] = {0,0,0,1};
|
||||
periodFocus = 1;
|
||||
periodOver = 1;
|
||||
action = "";
|
||||
onMouseEnter = "[] call compile CSE_RADIAL_MENU_CODE_ON_MOUSE_IN_BUTTON_10;";
|
||||
};
|
||||
|
||||
class InnerCycle_actionTopLeft : InnerCycle_actionTop {
|
||||
idc = 11;
|
||||
text = "";
|
||||
x = "14.1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "9.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "[] call compile CSE_RADIAL_MENU_CODE_ON_MOUSE_IN_BUTTON_11;";
|
||||
};
|
||||
class InnerCycle_actionTopRight : InnerCycle_actionTop {
|
||||
idc = 12;
|
||||
text = "";
|
||||
x = "22.1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "9.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "[] call compile CSE_RADIAL_MENU_CODE_ON_MOUSE_IN_BUTTON_12;";
|
||||
};
|
||||
|
||||
|
||||
|
||||
class InnerCycle_actionCenterLeft : InnerCycle_actionTop {
|
||||
idc = 13;
|
||||
text = "";
|
||||
x = "12.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "4 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "[] call compile CSE_RADIAL_MENU_CODE_ON_MOUSE_IN_BUTTON_13;";
|
||||
};
|
||||
class InnerCycle_actionCenterRight : InnerCycle_actionTop {
|
||||
idc = 14;
|
||||
text = "";
|
||||
x = "23.3 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "4 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "[] call compile CSE_RADIAL_MENU_CODE_ON_MOUSE_IN_BUTTON_14;";
|
||||
};
|
||||
|
||||
|
||||
class InnerCycle_actionBottomLeft : InnerCycle_actionTop {
|
||||
idc = 15;
|
||||
text = "";
|
||||
x = "14.1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "17.1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "[] call compile CSE_RADIAL_MENU_CODE_ON_MOUSE_IN_BUTTON_15;";
|
||||
};
|
||||
class InnerCycle_actionBottomRight : InnerCycle_actionTop {
|
||||
idc = 16;
|
||||
text = "";
|
||||
x = "22.1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "17.1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "[] call compile CSE_RADIAL_MENU_CODE_ON_MOUSE_IN_BUTTON_16;";
|
||||
};
|
||||
|
||||
class InnerCycle_actionBottom : InnerCycle_actionTop {
|
||||
idc = 17;
|
||||
text = "";
|
||||
x = "18.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "18.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "2.7 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.9 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "[] call compile CSE_RADIAL_MENU_CODE_ON_MOUSE_IN_BUTTON_17;";
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
class secondCycle_iconBottomLeft: cse_gui_backgroundBase{
|
||||
idc = 350;
|
||||
type = CT_STATIC;
|
||||
x = "10.25 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "18 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "1.75 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1.75 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {1,1,1, 0.66};
|
||||
colorBackground[] = {1,1,1, 0.66};
|
||||
text = "";
|
||||
};
|
||||
class secondCycle_iconBottomLeftTwo : secondCycle_iconBottomLeft {
|
||||
idc = 351;
|
||||
x = "9.25 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "14.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_iconBottomLeftThree : secondCycle_iconBottomLeft {
|
||||
idc = 352;
|
||||
x = "9.25 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "11.25 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_iconTopLeftOne : secondCycle_iconBottomLeft {
|
||||
idc = 353;
|
||||
x = "10.75 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "8.25 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_iconTopLeftTwo : secondCycle_iconBottomLeft {
|
||||
idc = 354;
|
||||
text = "";
|
||||
x = "13.75 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_iconTopLeftThree : secondCycle_iconBottomLeft {
|
||||
idc = 355;
|
||||
x = "17.25 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_iconTopRightOne : secondCycle_iconBottomLeft {
|
||||
idc = 356;
|
||||
x = "21.35 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_iconTopRightTwo : secondCycle_iconBottomLeft {
|
||||
idc = 357;
|
||||
x = "24.84 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_iconTopRightThree : secondCycle_iconBottomLeft {
|
||||
idc = 358;
|
||||
x = "27.48 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "8.25 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_iconBottomRightOne : secondCycle_iconBottomLeft {
|
||||
idc = 359;
|
||||
x = "29.65 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "11.25 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_iconBottomRightTwo : secondCycle_iconBottomLeft {
|
||||
idc = 360;
|
||||
x = "29.65 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "14.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_iconBottomRightThree : secondCycle_iconBottomLeft {
|
||||
idc = 361;
|
||||
x = "28.65 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "18 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
|
||||
|
||||
class secondCycle_TextBottomLeft: cse_gui_staticBase{
|
||||
idc = 400;
|
||||
x = "8.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "20 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "4.6 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.7)";
|
||||
colorText[] = {1,1,1, 0.66};
|
||||
colorBackground[] = {1,1,1, 0.0};
|
||||
text = "";
|
||||
style = ST_CENTER;
|
||||
};
|
||||
|
||||
|
||||
class secondCycle_textBottomLeftTwo : secondCycle_TextBottomLeft {
|
||||
idc = 401;
|
||||
x = "7.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "16.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_textBottomLeftThree : secondCycle_TextBottomLeft {
|
||||
idc = 402;
|
||||
x = "7.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_textTopLeftOne : secondCycle_TextBottomLeft {
|
||||
idc = 403;
|
||||
x = "9 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "10 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_textTopLeftTwo : secondCycle_TextBottomLeft {
|
||||
idc = 404;
|
||||
text = "";
|
||||
x = "12 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "7 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_textTopLeftThree : secondCycle_TextBottomLeft {
|
||||
idc = 405;
|
||||
x = "15.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "6 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_textTopRightOne : secondCycle_TextBottomLeft {
|
||||
idc = 406;
|
||||
x = "19.1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "6 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_textTopRightTwo : secondCycle_TextBottomLeft {
|
||||
idc = 407;
|
||||
x = "22.6 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "7 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_textTopRightThree : secondCycle_TextBottomLeft {
|
||||
idc = 408;
|
||||
x = "25.6 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "10 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_textBottomRightOne : secondCycle_TextBottomLeft {
|
||||
idc = 409;
|
||||
x = "27.4 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_textBottomRightTwo : secondCycle_TextBottomLeft {
|
||||
idc = 410;
|
||||
x = "27.4 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "16.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class secondCycle_textBottomRightThree : secondCycle_TextBottomLeft {
|
||||
idc = 411;
|
||||
x = "26.4 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "20 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
|
||||
class secondCycle_actionBottomLeft : cse_gui_buttonBase {
|
||||
idc = 300;
|
||||
text = "";
|
||||
x = "9.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "18 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
/*animTextureNormal = "#(argb,8,8,3)color(0,0,0,0.6)";
|
||||
animTextureDisabled = "#(argb,8,8,3)color(0,0,0,0.5)";
|
||||
animTextureOver = "#(argb,8,8,3)color(1,1,1,0.5)";
|
||||
animTextureFocused = "#(argb,8,8,3)color(1,1,1,0.5)";
|
||||
animTexturePressed = "#(argb,8,8,3)color(1,1,1,0.5)";
|
||||
animTextureDefault = "#(argb,8,8,3)color(1,1,1,0.5)";*/
|
||||
animTextureNormal = "#(argb,8,8,3)color(0,0,0,0)";
|
||||
animTextureDisabled = "#(argb,8,8,3)color(0,0,0,0)";
|
||||
animTextureOver = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
animTextureFocused = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
animTexturePressed = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
animTextureDefault = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
color[] = {1, 1, 1, 1};
|
||||
color2[] = {0,0,0, 1};
|
||||
colorBackgroundFocused[] = {1,1,1,1};
|
||||
colorBackground[] = {1,1,1,1};
|
||||
colorbackground2[] = {1,1,1,1};
|
||||
colorDisabled[] = {0.5,0.5,0.5,0.8};
|
||||
colorFocused[] = {0,0,0,1};
|
||||
periodFocus = 1;
|
||||
periodOver = 1;
|
||||
action = "";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 350) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 350) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
|
||||
class secondCycle_actionBottomLeftTwo : secondCycle_actionBottomLeft {
|
||||
idc = 301;
|
||||
x = "8.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "14.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 351) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 351) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
class secondCycle_actionBottomLeftThree : secondCycle_actionBottomLeft {
|
||||
idc = 302;
|
||||
x = "8.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "11.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 352) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 352) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
|
||||
class secondCycle_actionTopLeftOne : secondCycle_actionBottomLeft {
|
||||
idc = 303;
|
||||
x = "10 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 353) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 353) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
class secondCycle_actionTopLeftTwo : secondCycle_actionBottomLeft {
|
||||
idc = 304;
|
||||
text = "";
|
||||
x = "13 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 354) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 354) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
class secondCycle_actionTopLeftThree : secondCycle_actionBottomLeft {
|
||||
idc = 305;
|
||||
x = "16.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 355) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 355) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
class secondCycle_actionTopRightOne : secondCycle_actionBottomLeft {
|
||||
idc = 306;
|
||||
x = "20.1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 356) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 356) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
class secondCycle_actionTopRightTwo : secondCycle_actionBottomLeft {
|
||||
idc = 307;
|
||||
x = "23.6 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 357) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 357) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
class secondCycle_actionTopRightThree : secondCycle_actionBottomLeft {
|
||||
idc = 308;
|
||||
x = "26.6 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "8 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 358) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 358) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
class secondCycle_actionBottomRightOne : secondCycle_actionBottomLeft {
|
||||
idc = 309;
|
||||
x = "28.4 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "11.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 359) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 359) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
class secondCycle_actionBottomRightTwo : secondCycle_actionBottomLeft {
|
||||
idc = 310;
|
||||
x = "28.4 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "14.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 360) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 360) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
class secondCycle_actionBottomRightThree : secondCycle_actionBottomLeft {
|
||||
idc = 311;
|
||||
x = "27.4 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "18 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 361) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RADIAL_MENU') displayCtrl 361) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
@ -1,195 +0,0 @@
|
||||
|
||||
class CSE_RscWeaponSelector {
|
||||
idd = 432342;
|
||||
movingenable = 0;
|
||||
fadein = 0;
|
||||
fadeout = 0;
|
||||
onLoad = "uiNamespace setVariable ['CSE_RscWeaponSelector', _this select 0]; _this call cse_fnc_onWeaponSelectorOpened_GUI;";
|
||||
|
||||
class controlsBackground {
|
||||
class backgroundTop: cse_gui_backgroundBase{
|
||||
idc = 800;
|
||||
type = CT_STATIC;
|
||||
x = "12.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "7.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "15 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "15 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {0.5, 0.2, 0.1, 0.4};
|
||||
colorBackground[] = {0, 0, 0, 0.4};
|
||||
text = "cse\cse_gui\radialmenu\data\radial_center_background_full_512.paa";
|
||||
};
|
||||
class backgroundCenter: backgroundTop{
|
||||
idc = 808;
|
||||
text = "cse\cse_gui\radialmenu\data\radial_center_info_background.paa";
|
||||
};
|
||||
class iconCenter: cse_gui_backgroundBase{
|
||||
idc = 710;
|
||||
type = CT_STATIC;
|
||||
x = "17 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "12 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {1,1,1, 0.4};
|
||||
colorBackground[] = {1,1,1, 0.0};
|
||||
text = "";
|
||||
};
|
||||
};
|
||||
|
||||
class controls {
|
||||
class LabelmenuName: cse_gui_staticBase{
|
||||
idc = 1;
|
||||
x = "17 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "6 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.8)";
|
||||
colorText[] = {1,1,1, 1};
|
||||
colorBackground[] = {0,0,0, 0.2};
|
||||
text = "";
|
||||
style = ST_CENTER;
|
||||
};
|
||||
|
||||
class labelCurrentSelectedName: LabelmenuName{
|
||||
idc = 2;
|
||||
y = "14 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.6)";
|
||||
};
|
||||
|
||||
/** ICONS FOR INNER CYCIRLE */
|
||||
class InnerCycle_iconTop: cse_gui_backgroundBase{
|
||||
idc = 100;
|
||||
type = CT_STATIC;
|
||||
x = "17.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "7.75 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
|
||||
colorText[] = {1,1,1, 0.66};
|
||||
colorBackground[] = {1,1,1, 0.66};
|
||||
text = "";
|
||||
};
|
||||
|
||||
class InnerCycle_iconCenterLeft : InnerCycle_iconTop {
|
||||
idc = 103;
|
||||
x = "13.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_iconCenterRight : InnerCycle_iconTop {
|
||||
idc = 104;
|
||||
x = "24.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_iconBottom : InnerCycle_iconTop {
|
||||
idc = 107;
|
||||
x = "17.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "18.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
|
||||
/** TEXT */
|
||||
class InnerCycle_TextTop: cse_gui_staticBase{
|
||||
idc = 200;
|
||||
x = "18 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "9.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "3.6 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
font = "PuristaMedium";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.7)";
|
||||
colorText[] = {1,1,1, 0.66};
|
||||
colorBackground[] = {1,1,1, 0.0};
|
||||
text = "";
|
||||
style = ST_CENTER;
|
||||
};
|
||||
|
||||
class InnerCycle_TextCenterLeft : InnerCycle_TextTop {
|
||||
idc = 203;
|
||||
x = "12.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "15.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
class InnerCycle_TextCenterRight : InnerCycle_TextTop {
|
||||
idc = 204;
|
||||
x = "23.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "15.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
|
||||
class InnerCycle_TextBottom : InnerCycle_TextTop {
|
||||
idc = 207;
|
||||
x = "18 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "20.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
};
|
||||
|
||||
class InnerCycle_actionTop : cse_gui_buttonBase {
|
||||
idc = 10;
|
||||
text = "";
|
||||
x = "18.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "7.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "2.7 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.9 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
/*animTextureNormal = "#(argb,8,8,3)color(0,0,0,0.6)";
|
||||
animTextureDisabled = "#(argb,8,8,3)color(0,0,0,0.5)";
|
||||
animTextureOver = "#(argb,8,8,3)color(1,1,1,0.5)";
|
||||
animTextureFocused = "#(argb,8,8,3)color(1,1,1,0.5)";
|
||||
animTexturePressed = "#(argb,8,8,3)color(1,1,1,0.5)";
|
||||
animTextureDefault = "#(argb,8,8,3)color(1,1,1,0.5)";*/
|
||||
animTextureNormal = "#(argb,8,8,3)color(0,0,0,0)";
|
||||
animTextureDisabled = "#(argb,8,8,3)color(0,0,0,0)";
|
||||
animTextureOver = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
animTextureFocused = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
animTexturePressed = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
animTextureDefault = "#(argb,8,8,3)color(1,1,1,0)";
|
||||
color[] = {1, 1, 1, 1};
|
||||
color2[] = {0,0,0, 1};
|
||||
colorBackgroundFocused[] = {1,1,1,1};
|
||||
colorBackground[] = {1,1,1,1};
|
||||
colorbackground2[] = {1,1,1,1};
|
||||
colorDisabled[] = {0.5,0.5,0.5,0.8};
|
||||
colorFocused[] = {0,0,0,1};
|
||||
periodFocus = 1;
|
||||
periodOver = 1;
|
||||
action = "";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RscWeaponSelector') displayCtrl 100) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RscWeaponSelector') displayCtrl 100) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
|
||||
|
||||
class InnerCycle_actionCenterLeft : InnerCycle_actionTop {
|
||||
idc = 13;
|
||||
text = "";
|
||||
x = "12.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "4 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RscWeaponSelector') displayCtrl 103) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RscWeaponSelector') displayCtrl 103) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
class InnerCycle_actionCenterRight : InnerCycle_actionTop {
|
||||
idc = 14;
|
||||
text = "";
|
||||
x = "23.3 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "13.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "4 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RscWeaponSelector') displayCtrl 104) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RscWeaponSelector') displayCtrl 104) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
|
||||
|
||||
class InnerCycle_actionBottom : InnerCycle_actionTop {
|
||||
idc = 17;
|
||||
text = "";
|
||||
x = "18.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "18.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "2.7 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "3.9 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
onMouseEnter = "((uiNamespace getvariable 'CSE_RscWeaponSelector') displayCtrl 107) ctrlSetTextColor [1, 1, 1, 1];";
|
||||
onMouseExit = "((uiNamespace getvariable 'CSE_RscWeaponSelector') displayCtrl 107) ctrlSetTextColor [1, 1, 1, 0.66];";
|
||||
};
|
||||
|
||||
|
||||
};
|
||||
};
|
@ -1,37 +0,0 @@
|
||||
CSE_ALLOW_ON_MOUSE_OVER_OPEN_RADIALMENU = false;
|
||||
CSE_ICON_PATH = "cse\cse_gui\radialmenu\data\icons\";
|
||||
|
||||
if (!isDedicated) then {
|
||||
call cse_fnc_gui_displayEventHandler;
|
||||
[format["GUI - REGISTERING INTERACTION MENUS"],3] call cse_fnc_debug;
|
||||
#include "init_action_ui.sqf" // radis menu + action keybindings
|
||||
|
||||
if ((((["CombinedInteractionMenu","menu",[0,0,0,0]] call cse_fnc_getKeyBindingFromProfile_F) select 0) != 0) && (((["radius_menu","menu",[0,0,0,0]] call cse_fnc_getKeyBindingFromProfile_F) select 0) == 0)) then {
|
||||
["radius_menu", (["CombinedInteractionMenu","menu",[0,0,0,0]] call cse_fnc_getKeyBindingFromProfile_F)] call cse_fnc_updateMenuKeyBinding_f;
|
||||
["CombinedInteractionMenu", [0,0,0,0]] call cse_fnc_updateMenuKeyBinding_f;
|
||||
};
|
||||
};
|
||||
cse_gui = true;
|
||||
|
||||
[format["GUI - INIT COMPLETE"],3] call cse_fnc_debug;
|
||||
|
||||
|
||||
["cse_gui_radialMenu_AllowOnMouseOver", ["Enable", "Disable"], (["cse_gui_radialMenu_AllowOnMouseOver", 0] call cse_fnc_getClientSideOptionFromProfile_F), {
|
||||
CSE_ALLOW_ON_MOUSE_OVER_OPEN_RADIALMENU = (_this select 1) == 0;
|
||||
}] call cse_fnc_addClientSideOptions_f;
|
||||
|
||||
["cse_gui_radialMenu_AllowOnMouseOver","option","Radial Menu (Hover)","Open the radial menu category when you hover your mouse over the button."] call cse_fnc_settingsDefineDetails_F;
|
||||
|
||||
|
||||
cse_fnc_interactWithVehicle_Crew_Condition = {
|
||||
private ["_return"];
|
||||
_return = false;
|
||||
if (((_this select 0) distance (_this select 1) < 10)) then {
|
||||
if (((_this select 1) isKindOf "Car") || ((_this select 1) isKindOf "Air") || ((_this select 1) isKindOf "Tank")) then {
|
||||
if (count (crew (_this select 1)) > 0) then {
|
||||
_return = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
_return
|
||||
};
|
@ -1,63 +0,0 @@
|
||||
#define ACTION_MENU "ActionMenu"
|
||||
|
||||
|
||||
[ACTION_MENU, "Action Menu", {[player] call cse_fnc_isAwake && vehicle player == cameraOn}, 2, "", {}, false] call cse_fnc_createRadialInteraction_F;
|
||||
cse_fnc_openActionMenu_GUI = {
|
||||
|
||||
["ActionMenu"] call cse_fnc_openRadialInteractionMenu_F;
|
||||
if ([player] call cse_fnc_canInteract && {animationState player == 'deadState' || animationState player == 'unconscious'} && {(vehicle player == player)}) then {
|
||||
[player, 'amovppnemstpsnonwnondnon'] call cse_fnc_broadcastAnim;
|
||||
};
|
||||
};
|
||||
|
||||
["radius_menu", (["radius_menu","menu",[0,0,0,0]] call cse_fnc_getKeyBindingFromProfile_F), cse_fnc_openActionMenu_GUI, 800] call cse_fnc_addKeyBindingForMenu_F;
|
||||
["radius_menu","menu","Open Action Menu","Opens the CSE Radial Action Menu"] call cse_fnc_settingsDefineDetails_F;
|
||||
|
||||
|
||||
cse_fnc_playerCanInteractWithPerson = {
|
||||
private ["_person","_modify"];
|
||||
_person = _this select 0;
|
||||
_modify = _this select 1;
|
||||
_return = false;
|
||||
if (_person isKindOf "CAManBase") then {
|
||||
_return = switch (_modify) do {
|
||||
case 0: {([_person] call cse_fnc_isAwake)};
|
||||
case 1: {true};
|
||||
default {false};
|
||||
};
|
||||
};
|
||||
_return
|
||||
};
|
||||
|
||||
// CATEGORIES
|
||||
[ACTION_MENU,"interaction", "Interact", {["ActionMenu", "interaction", _this select 1] call cse_fnc_categoryHasActionsAvailable_F}, CSE_ICON_PATH + "icon_interact.paa", 0, "Interact with"] call cse_fnc_createCategoryRadialMenu_F;
|
||||
[ACTION_MENU,"equipment", "Equipment", {["ActionMenu", "equipment", _this select 1] call cse_fnc_categoryHasActionsAvailable_F}, CSE_ICON_PATH + "icon_backpack_radio.paa", 1, "Equipment & Gear"] call cse_fnc_createCategoryRadialMenu_F;
|
||||
[ACTION_MENU,"medical_menu", "Medical", {["ActionMenu", "medical_menu", _this select 1] call cse_fnc_categoryHasActionsAvailable_F}, CSE_ICON_PATH + "icon_examine_patient.paa", 2, "Medical Interaction"] call cse_fnc_createCategoryRadialMenu_F;
|
||||
[ACTION_MENU,"group_actions", "Group", {["ActionMenu", "group_actions", _this select 1] call cse_fnc_categoryHasActionsAvailable_F}, CSE_ICON_PATH + "icon_group.paa", 3, "Your Group"] call cse_fnc_createCategoryRadialMenu_F;
|
||||
[ACTION_MENU,"survival", "Survival", {["ActionMenu", "survival", _this select 1] call cse_fnc_categoryHasActionsAvailable_F}, CSE_ICON_PATH + "icon_survival.paa", 4, "Survival actions"] call cse_fnc_createCategoryRadialMenu_F;
|
||||
|
||||
if ([] call cse_fnc_isLoaded_ALiVE_Mod) then {
|
||||
[ACTION_MENU,"alive_actions", "ALiVE", {["ActionMenu", "alive_actions", _this select 1] call cse_fnc_categoryHasActionsAvailable_F}, CSE_ICON_PATH + "icon_alive_mod.paa", 5, "ALiVE actions"] call cse_fnc_createCategoryRadialMenu_F;
|
||||
};
|
||||
|
||||
[ACTION_MENU,"custom_actions", "Custom", {["ActionMenu", "custom_actions", _this select 1] call cse_fnc_categoryHasActionsAvailable_F}, CSE_ICON_PATH + "icon_lines_horizontal_s.paa", 6, "Custom actions"] call cse_fnc_createCategoryRadialMenu_F;
|
||||
|
||||
// Entries
|
||||
[ACTION_MENU,"custom_actions", [["Curator", {getAssignedCuratorLogic player in allCurators}, CSE_ICON_PATH + "icon_curator.paa", {closeDialog 0; openCuratorInterface; }, "Open Curator Interface"]] ] call cse_fnc_addMultipleEntriesToRadialCategory_F;
|
||||
|
||||
|
||||
|
||||
|
||||
/*
|
||||
["myID_1", true, CSE_ICON_PATH + "icon_group.paa", [1,1,1,1]] call cse_fnc_gui_displayIcon;
|
||||
["myID_2", true, CSE_ICON_PATH + "icon_backpack_radio.paa", [1,1,1,1]] call cse_fnc_gui_displayIcon;
|
||||
["myID_3", true, CSE_ICON_PATH + "icon_interact.paa", [1,1,1,1]] call cse_fnc_gui_displayIcon;
|
||||
["myID_4", true, CSE_ICON_PATH + "icon_survival.paa", [1,1,1,1]] call cse_fnc_gui_displayIcon;
|
||||
|
||||
|
||||
["myID_1", false, CSE_ICON_PATH + "icon_group.paa", [1,1,1,1]] call cse_fnc_gui_displayIcon;
|
||||
["myID_2", false, CSE_ICON_PATH + "icon_backpack_radio.paa", [1,1,1,1]] call cse_fnc_gui_displayIcon;
|
||||
["myID_3", false, CSE_ICON_PATH + "icon_interact.paa", [1,1,1,1]] call cse_fnc_gui_displayIcon;
|
||||
["myID_4", false, CSE_ICON_PATH + "icon_survival.paa", [1,1,1,1]] call cse_fnc_gui_displayIcon;
|
||||
|
||||
*/
|
@ -1,6 +0,0 @@
|
||||
|
||||
if ((((["CombinedInteractionMenu","menu",[0,0,0,0]] call cse_fnc_getKeyBindingFromProfile_F) select 0) != 0) && (((["radius_menu","menu",[0,0,0,0]] call cse_fnc_getKeyBindingFromProfile_F) select 0) == 0)) then {
|
||||
["radius_menu", (["CombinedInteractionMenu","menu",[0,0,0,0]] call cse_fnc_getKeyBindingFromProfile_F)] call cse_fnc_updateMenuKeyBinding_f;
|
||||
["CombinedInteractionMenu", [0,0,0,0]] call cse_fnc_updateMenuKeyBinding_f;
|
||||
};
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user