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…
x
Reference in New Issue
Block a user