mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Added cse_sys_ieds source
This commit is contained in:
parent
a0f98b2e11
commit
91c77cdb7b
7
TO_MERGE/cse/sys_ieds/CfgAddons.h
Normal file
7
TO_MERGE/cse/sys_ieds/CfgAddons.h
Normal file
@ -0,0 +1,7 @@
|
||||
class CfgAddons {
|
||||
class PreloadAddons {
|
||||
class cse_sys_ieds {
|
||||
list[] = {"cse_sys_ieds"};
|
||||
};
|
||||
};
|
||||
};
|
24
TO_MERGE/cse/sys_ieds/CfgFunctions.h
Normal file
24
TO_MERGE/cse/sys_ieds/CfgFunctions.h
Normal file
@ -0,0 +1,24 @@
|
||||
class CfgFunctions {
|
||||
class CSE {
|
||||
class IEDS {
|
||||
file = "cse\cse_sys_ieds\functions";
|
||||
class module_spawnIED { recompile = 1; };
|
||||
class createIEDObject_IEDS { recompile = 1; };
|
||||
class checkIEDActivated_IEDS { recompile = 1; };
|
||||
class checkPressurePlateActivated_IEDS { recompile = 1; };
|
||||
class checkRadioTriggered_IEDS { recompile = 1; };
|
||||
class monitorIEDS_IEDS { recompile = 1; };
|
||||
class onIEDActivated_IEDS { recompile = 1; };
|
||||
class thor3_detection_IEDS { recompile = 1; };
|
||||
class playThorIIISound_IEDS { recompile = 1; };
|
||||
class triggerManGotVisual_IEDS { recompile = 1; };
|
||||
class moduleTriggerMan_IEDS { recompile = 1; };
|
||||
class placeDownIED_IEDS { recompile = 1; };
|
||||
class monitorPlayerIEDs_IEDS { recompile = 1; };
|
||||
|
||||
class onCellPhoneOpened_IEDS { recompile = 1; };
|
||||
class cellphone_detonateIED_IEDS { recompile = 1; };
|
||||
class checkIfJammed_IEDS { recompile = 1; };
|
||||
};
|
||||
};
|
||||
};
|
9
TO_MERGE/cse/sys_ieds/CfgSounds.h
Normal file
9
TO_MERGE/cse/sys_ieds/CfgSounds.h
Normal file
@ -0,0 +1,9 @@
|
||||
class CfgSounds
|
||||
{
|
||||
class cse_thor3_beep1
|
||||
{
|
||||
name = "cse_thor3_beep1";
|
||||
sound[] = {"cse\cse_sys_ieds\sounds\beeps\03_Dull_Short_Mid.wav","db-1",1};
|
||||
titles[] = {};
|
||||
};
|
||||
};
|
203
TO_MERGE/cse/sys_ieds/CfgVehicles.h
Normal file
203
TO_MERGE/cse/sys_ieds/CfgVehicles.h
Normal file
@ -0,0 +1,203 @@
|
||||
class CfgVehicles {
|
||||
class Logic;
|
||||
class Module_F: Logic {
|
||||
class ArgumentsBaseUnits {
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
class cse_playerSpawnedIED: Logic {
|
||||
displayName = "Player placed IED";
|
||||
};
|
||||
|
||||
class cseModule_spawnIEDs: Module_F {
|
||||
scope = 2;
|
||||
displayName = "Create IED [CSE]";
|
||||
icon = "\cse\cse_main\data\cse_explosive_module.paa";
|
||||
category = "cseMisc";
|
||||
function = "cse_fnc_module_spawnIED";
|
||||
functionPriority = 1;
|
||||
isGlobal = 0;
|
||||
isTriggerActivated = 0;
|
||||
class Arguments {
|
||||
class typeOfIED {
|
||||
displayName = "Type";
|
||||
description = "The Type of the IED";
|
||||
typeName = "NUMBER";
|
||||
class values {
|
||||
class land {name="Normal"; value=0; default=1; };
|
||||
class urban {name="Urban"; value=1; };
|
||||
};
|
||||
};
|
||||
|
||||
class sizeOfIED {
|
||||
displayName = "Size";
|
||||
description = "The size of the IED";
|
||||
typeName = "NUMBER";
|
||||
class values {
|
||||
class small {name="Small"; value=1; default=1; };
|
||||
class large {name="Large"; value=0; };
|
||||
};
|
||||
};
|
||||
|
||||
class heightOfIED {
|
||||
displayName = "Height";
|
||||
description = "The height that the IED is burried";
|
||||
typeName = "NUMBER";
|
||||
class values {
|
||||
class Above {name="Above Ground"; value=0; default=1; };
|
||||
class slightly {name="Slightly burried"; value=-0.015; };
|
||||
class medium {name="Medium burried"; value=-0.025; };
|
||||
class almost {name="Almost burried"; value=-0.05; };
|
||||
class fully {name="Fully burried"; value=-0.1; };
|
||||
};
|
||||
};
|
||||
|
||||
class iedActivationType {
|
||||
displayName = "Activation Type";
|
||||
description = "How is the IED activated";
|
||||
typeName = "NUMBER";
|
||||
class values {
|
||||
class None {name="None"; value=-1; };
|
||||
class PressurePlate {name="Pressure Plate"; value=0; default=1;};
|
||||
class Radio {name="Radio"; value=1; };
|
||||
};
|
||||
};
|
||||
|
||||
class activatedForTargets {
|
||||
displayName = "Activated for";
|
||||
description = "What types is the IED activated for";
|
||||
typeName = "NUMBER";
|
||||
class values {
|
||||
class None {name="None"; value=-1; };
|
||||
class All {name="Any type"; value=0; default=1;};
|
||||
class Vehicles {name="Any Vehicle"; value=1; };
|
||||
class Land {name="Ground Vehicles"; value=2; };
|
||||
class Air {name="Airial Vehicles"; value=3; };
|
||||
class Man {name="Man"; value=4; };
|
||||
};
|
||||
};
|
||||
|
||||
class activatedForSides {
|
||||
displayName = "What sides activate this IED";
|
||||
description = "What types is the IED activated for";
|
||||
typeName = "NUMBER";
|
||||
class values {
|
||||
class None {name="None"; value=-1; };
|
||||
class All {name="Any side"; value=0; default=1; };
|
||||
class West {name="BLUFOR"; value=1; };
|
||||
class East {name="OpFOR"; value=2; };
|
||||
class Ind {name="Independant"; value=3; };
|
||||
class Civ {name="Civilian"; value=4; };
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class ModuleDescription {
|
||||
description = "Create an IED on position."; // Short description, will be formatted as structured text
|
||||
sync[] = {"cseModule_spawnIEDs"};
|
||||
position = 1; // Position is taken into effect
|
||||
direction = 0; // Direction is taken into effect
|
||||
optional = 0; // Synced entity is optional
|
||||
duplicate = 1; // Multiple entities of this type can be synced
|
||||
|
||||
class cseModule_spawnIEDs {
|
||||
description[] = { // Multi-line descriptions are supported
|
||||
"Synchronize ieds with other IEDs to create chain ieds.",
|
||||
"When one of the synchronized ieds is triggered,",
|
||||
"all other IEDs will explode as well."
|
||||
};
|
||||
position = 1; // Position is taken into effect
|
||||
direction = 0; // Direction is taken into effect
|
||||
optional = 1; // Synced entity is optional
|
||||
duplicate = 1; // Multiple entities of this type can be synced
|
||||
synced[] = {"cseModule_spawnIEDs"}; // Pre-define entities like "AnyBrain" can be used. See the list below
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
class cseModule_triggerManLinkIEDS: Module_F {
|
||||
scope = 2;
|
||||
displayName = "Triggerman [CSE]";
|
||||
icon = "\cse\cse_main\data\cse_explosive_module.paa";
|
||||
category = "cseMisc";
|
||||
function = "cse_fnc_moduleTriggerMan_IEDS";
|
||||
functionPriority = 1;
|
||||
isGlobal = 0;
|
||||
isTriggerActivated = 0;
|
||||
class Arguments {
|
||||
class EnableList {
|
||||
displayName = "List";
|
||||
description = "List of unit names that will be able to trigger the radio IED.";
|
||||
defaultValue = "";
|
||||
};
|
||||
};
|
||||
|
||||
class ModuleDescription {
|
||||
description = "Defines units as triggerman."; // Short description, will be formatted as structured text
|
||||
sync[] = {"cseModule_spawnIEDs"};
|
||||
position = 0; // Position is taken into effect
|
||||
direction = 0; // Direction is taken into effect
|
||||
optional = 0; // Synced entity is optional
|
||||
duplicate = 1; // Multiple entities of this type can be synced
|
||||
|
||||
class cseModule_spawnIEDs {
|
||||
description[] = { // Multi-line descriptions are supported
|
||||
"Synchronize module with IEDs to define.",
|
||||
"which ieds can be triggered by units listed in module,"
|
||||
};
|
||||
position = 0; // Position is taken into effect
|
||||
direction = 0; // Direction is taken into effect
|
||||
optional = 0; // Synced entity is optional
|
||||
duplicate = 1; // Multiple entities of this type can be synced
|
||||
synced[] = {"cseModule_spawnIEDs"}; // Pre-define entities like "AnyBrain" can be used. See the list below
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
class B_Kitbag_sgg;
|
||||
class cse_thorIII_backpack: B_Kitbag_sgg {
|
||||
scope = 1;
|
||||
author = "Combat Space Enhancement";
|
||||
displayName = "THOR III - Jammer";
|
||||
};
|
||||
|
||||
|
||||
// class Items_base_F;
|
||||
// class cse_ied_pressureplate_small: Items_base_F {
|
||||
// scope = 2;
|
||||
// author = "Combat Space Enhancement";
|
||||
// displayName = "Pressure Plate IED (Small)";
|
||||
// picture = "\A3\Weapons_F\Data\UI\gear_c4_charge_small_CA.paa";
|
||||
// descriptionShort = "Pressure Plate IED (Small)";
|
||||
// descriptionUse = "Pressure Plate IED (Small)";
|
||||
// model = "\A3\Weapons_F\Explosives\IED_land_small";
|
||||
// };
|
||||
// class cse_ied_pressureplate_large: cse_ied_pressureplate_small {
|
||||
// scope = 2;
|
||||
// author = "Combat Space Enhancement";
|
||||
// displayName = "Pressure Plate IED (Large)";
|
||||
// picture = "\A3\Weapons_F\Data\UI\gear_c4_charge_small_CA.paa";
|
||||
// descriptionShort = "Pressure Plate IED (Large)";
|
||||
// descriptionUse = "Pressure Plate IED (Large)";
|
||||
// model = "\A3\Weapons_F\Explosives\IED_land_big";
|
||||
// };
|
||||
// class cse_ied_radio_small: cse_ied_pressureplate_small {
|
||||
// scope = 2;
|
||||
// author = "Combat Space Enhancement";
|
||||
// displayName = "Radio Triggered IED (Small)";
|
||||
// picture = "\A3\Weapons_F\Data\UI\gear_c4_charge_small_CA.paa";
|
||||
// descriptionShort = "Radio Triggered IED (Small)";
|
||||
// descriptionUse = "Radio Triggered IED (Small)";
|
||||
// model = "\A3\Weapons_F\Explosives\IED_land_small";
|
||||
// };
|
||||
// class cse_ied_radio_large: cse_ied_radio_small {
|
||||
// scope = 2;
|
||||
// author = "Combat Space Enhancement";
|
||||
// displayName = "Radio Triggered IED (Large)";
|
||||
// picture = "\A3\Weapons_F\Data\UI\gear_c4_charge_small_CA.paa";
|
||||
// descriptionShort = "Radio Triggered IED (Large)";
|
||||
// descriptionUse = "Radio Triggered IED (Large)";
|
||||
// model = "\A3\Weapons_F\Explosives\IED_land_big";
|
||||
// };
|
||||
};
|
133
TO_MERGE/cse/sys_ieds/CfgWeapons.h
Normal file
133
TO_MERGE/cse/sys_ieds/CfgWeapons.h
Normal file
@ -0,0 +1,133 @@
|
||||
class CfgWeapons {
|
||||
class ItemCore;
|
||||
class InventoryItem_Base_F;
|
||||
class cse_ied_wires: ItemCore {
|
||||
author = "Combat Space Enhancement";
|
||||
scope = 2;
|
||||
displayName = "Wires (IED Material)";
|
||||
picture = "\cse_sys_ballistics\basicBallistics\data\weatherMeter.paa";
|
||||
descriptionShort = "Necessary material for creating an IED";
|
||||
descriptionUse = "Used to connect the detonation device with the explosive";
|
||||
model = "\A3\weapons_F\ammo\mag_univ.p3d";
|
||||
class ItemInfo: InventoryItem_Base_F
|
||||
{
|
||||
mass=10;
|
||||
type=201;
|
||||
};
|
||||
};
|
||||
class cse_ied_explosive: ItemCore {
|
||||
author = "Combat Space Enhancement";
|
||||
scope = 2;
|
||||
displayName = "Explosive Material (IED Material)";
|
||||
picture = "\cse_sys_ballistics\basicBallistics\data\weatherMeter.paa";
|
||||
descriptionShort = "Provides the boom.";
|
||||
descriptionUse = "Makes the IED.";
|
||||
model = "\A3\weapons_F\ammo\mag_univ.p3d";
|
||||
class ItemInfo: InventoryItem_Base_F
|
||||
{
|
||||
mass=10;
|
||||
type=201;
|
||||
};
|
||||
};
|
||||
class cse_ied_detonator: ItemCore {
|
||||
author = "Combat Space Enhancement";
|
||||
scope = 2;
|
||||
displayName = "Detonator (IED Material)";
|
||||
picture = "\cse_sys_ballistics\basicBallistics\data\weatherMeter.paa";
|
||||
descriptionShort = "Used to detonate the explosive.";
|
||||
descriptionUse = "Ensures the explosives goes off when activated.";
|
||||
model = "\A3\weapons_F\ammo\mag_univ.p3d";
|
||||
class ItemInfo: InventoryItem_Base_F
|
||||
{
|
||||
mass=10;
|
||||
type=201;
|
||||
};
|
||||
};
|
||||
class cse_ied_pressure_plate: ItemCore {
|
||||
author = "Combat Space Enhancement";
|
||||
scope = 2;
|
||||
displayName = "Pressure Plate (IED Material)";
|
||||
picture = "\cse_sys_ballistics\basicBallistics\data\weatherMeter.paa";
|
||||
descriptionShort = "Pressure plate for creating IEDs";
|
||||
descriptionUse = "Pressure plate for creating IEDs";
|
||||
model = "\A3\weapons_F\ammo\mag_univ.p3d";
|
||||
class ItemInfo: InventoryItem_Base_F
|
||||
{
|
||||
mass=10;
|
||||
type=201;
|
||||
};
|
||||
};
|
||||
class cse_ied_reciever: ItemCore {
|
||||
author = "Combat Space Enhancement";
|
||||
scope = 2;
|
||||
displayName = "Reciever (IED Material)";
|
||||
picture = "\cse_sys_ballistics\basicBallistics\data\weatherMeter.paa";
|
||||
descriptionShort = "Radio Reciever for creating Radio activated IEDs";
|
||||
descriptionUse = "Radio Reciever for creating Radio activated IEDs";
|
||||
model = "\A3\weapons_F\ammo\mag_univ.p3d";
|
||||
class ItemInfo: InventoryItem_Base_F
|
||||
{
|
||||
mass=10;
|
||||
type=201;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
class cse_ied_pressureplate_small: ItemCore {
|
||||
author = "Combat Space Enhancement";
|
||||
scope = 2;
|
||||
displayName = "Pressure Plate IED (Small)";
|
||||
picture = "\A3\Weapons_F\Data\UI\gear_c4_charge_small_CA.paa";
|
||||
descriptionShort = "Pressure Plate IED (Small)";
|
||||
descriptionUse = "Pressure Plate IED (Small)";
|
||||
model = "\A3\Weapons_F\Explosives\IED_land_small";
|
||||
class ItemInfo: InventoryItem_Base_F
|
||||
{
|
||||
mass=10;
|
||||
type=201;
|
||||
};
|
||||
};
|
||||
class cse_ied_pressureplate_large: ItemCore {
|
||||
author = "Combat Space Enhancement";
|
||||
scope = 2;
|
||||
displayName = "Pressure Plate IED (Large)";
|
||||
picture = "\A3\Weapons_F\Data\UI\gear_c4_charge_small_CA.paa";
|
||||
descriptionShort = "Pressure Plate IED (Large)";
|
||||
descriptionUse = "Pressure Plate IED (Large)";
|
||||
model = "\A3\Weapons_F\Explosives\IED_land_big";
|
||||
class ItemInfo: InventoryItem_Base_F
|
||||
{
|
||||
mass=10;
|
||||
type=201;
|
||||
};
|
||||
};
|
||||
class cse_ied_radio_small: ItemCore {
|
||||
author = "Combat Space Enhancement";
|
||||
scope = 2;
|
||||
displayName = "Radio Triggered IED (Small)";
|
||||
picture = "\A3\Weapons_F\Data\UI\gear_c4_charge_small_CA.paa";
|
||||
descriptionShort = "Radio Triggered IED (Small)";
|
||||
descriptionUse = "Radio Triggered IED (Small)";
|
||||
model = "\A3\Weapons_F\Explosives\IED_land_small";
|
||||
class ItemInfo: InventoryItem_Base_F
|
||||
{
|
||||
mass=10;
|
||||
type=201;
|
||||
};
|
||||
};
|
||||
class cse_ied_radio_large: ItemCore {
|
||||
author = "Combat Space Enhancement";
|
||||
scope = 2;
|
||||
displayName = "Radio Triggered IED (Large)";
|
||||
picture = "\A3\Weapons_F\Data\UI\gear_c4_charge_small_CA.paa";
|
||||
descriptionShort = "Radio Triggered IED (Large)";
|
||||
descriptionUse = "Radio Triggered IED (Large)";
|
||||
model = "\A3\Weapons_F\Explosives\IED_land_big";
|
||||
class ItemInfo: InventoryItem_Base_F
|
||||
{
|
||||
mass=10;
|
||||
type=201;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
8
TO_MERGE/cse/sys_ieds/Combat_Space_Enhancement.h
Normal file
8
TO_MERGE/cse/sys_ieds/Combat_Space_Enhancement.h
Normal file
@ -0,0 +1,8 @@
|
||||
class Combat_Space_Enhancement {
|
||||
class cfgModules {
|
||||
class cse_sys_ieds {
|
||||
init = "call compile preprocessFile 'cse\cse_sys_ieds\init_sys_ieds.sqf';";
|
||||
name = "IEDs";
|
||||
};
|
||||
};
|
||||
};
|
2
TO_MERGE/cse/sys_ieds/GUI.h
Normal file
2
TO_MERGE/cse/sys_ieds/GUI.h
Normal file
@ -0,0 +1,2 @@
|
||||
#include "ui\define.hpp"
|
||||
#include "ui\cellphone.hpp"
|
22
TO_MERGE/cse/sys_ieds/config.cpp
Normal file
22
TO_MERGE/cse/sys_ieds/config.cpp
Normal file
@ -0,0 +1,22 @@
|
||||
#define _ARMA_
|
||||
class CfgPatches
|
||||
{
|
||||
class cse_sys_ieds
|
||||
{
|
||||
units[] = {"cse_thorIII_backpack" /*, "cse_ied_pressureplate_small", "cse_ied_pressureplate_large", "cse_ied_radio_small", "cse_ied_radio_large"*/};
|
||||
weapons[] = {};
|
||||
requiredVersion = 0.1;
|
||||
requiredAddons[] = {"cse_f_eh","cse_main"};
|
||||
version = "0.10.0_rc";
|
||||
author[] = {"Combat Space Enhancement"};
|
||||
authorUrl = "http://csemod.com";
|
||||
};
|
||||
};
|
||||
|
||||
#include "CfgFunctions.h"
|
||||
#include "CfgVehicles.h"
|
||||
#include "CfgWeapons.h"
|
||||
#include "CfgSounds.h"
|
||||
#include "Combat_Space_Enhancement.h"
|
||||
#include "CfgAddOns.h"
|
||||
#include "GUI.h"
|
BIN
TO_MERGE/cse/sys_ieds/data/cellphone_background.paa
Normal file
BIN
TO_MERGE/cse/sys_ieds/data/cellphone_background.paa
Normal file
Binary file not shown.
BIN
TO_MERGE/cse/sys_ieds/data/icon_cellphone.paa
Normal file
BIN
TO_MERGE/cse/sys_ieds/data/icon_cellphone.paa
Normal file
Binary file not shown.
23
TO_MERGE/cse/sys_ieds/functions.sqf
Normal file
23
TO_MERGE/cse/sys_ieds/functions.sqf
Normal file
@ -0,0 +1,23 @@
|
||||
|
||||
cse_fnc_spawn_ieds_IED = compile preprocessFile "cse\cse_sys_ieds\fnc_spawn_ieds.sqf";
|
||||
cse_fnc_spawn_chain_IED = compile preprocessFile "cse\cse_sys_ieds\fnc_spawn_chain.sqf";
|
||||
cse_fnc_link_chain_IED = compile preprocessFile "cse\cse_sys_ieds\fnc_link_chain.sqf";
|
||||
cse_fnc_thor3_detection_IED = compile preprocessFile "cse\cse_sys_ieds\fnc_thor3_detection.sqf";
|
||||
cse_fnc_triggerManGotVisual_IED = compile preprocessFile "cse\cse_sys_ieds\fnc_triggerManGotVisual.sqf";
|
||||
|
||||
|
||||
cse_fnc_checkIEDActivated_IED = compile preprocessFile "cse\cse_sys_ieds\fnc_checkIEDActivated.sqf";
|
||||
cse_fnc_checkPressurePlateActivated_IED = compile preprocessFile "cse\cse_sys_ieds\fnc_checkPressurePlateActivated.sqf";
|
||||
cse_fnc_checkRadioTriggered_IED = compile preprocessFile "cse\cse_sys_ieds\fnc_checkRadioTriggered.sqf";
|
||||
|
||||
|
||||
|
||||
cse_fnc_spotterFlee_IED = compile preprocessFile "cse\cse_sys_ieds\spotter\fnc_spotterFlee.sqf";
|
||||
cse_fnc_spotterBehaviour_IED = compile preprocessFile "cse\cse_sys_ieds\spotter\fnc_spotterBehaviour.sqf";
|
||||
|
||||
|
||||
cse_fnc_searchGround_IED = compile preprocessFile "cse\cse_sys_ieds\fnc_searchGround.sqf";
|
||||
|
||||
cse_fnc_broadcastTHOR3Sound = {
|
||||
(_this select 0) say3D "beep";
|
||||
};
|
@ -0,0 +1,46 @@
|
||||
/**
|
||||
* fn_cellphone_detonateIED_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_display", "_iedInfo"];
|
||||
_display = uiNamespace getVariable 'cse_ied_cellphone';
|
||||
|
||||
|
||||
if (isnil "CSE_PLAYER_PLACED_RADIO_IEDS_IEDS") then {
|
||||
CSE_PLAYER_PLACED_RADIO_IEDS_IEDS = [];
|
||||
};
|
||||
|
||||
if (isnil "CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS") then {
|
||||
CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS = 0;
|
||||
};
|
||||
|
||||
|
||||
if (CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS > count CSE_PLAYER_PLACED_RADIO_IEDS_IEDS) then {
|
||||
CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS = 0;
|
||||
};
|
||||
|
||||
if (CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS < 0) then {
|
||||
CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS = (count CSE_PLAYER_PLACED_RADIO_IEDS_IEDS) - 1;
|
||||
};
|
||||
|
||||
if !(CSE_PLAYER_PLACED_RADIO_IEDS_IEDS isEqualTo []) then {
|
||||
_iedInfo = CSE_PLAYER_PLACED_RADIO_IEDS_IEDS select CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS;
|
||||
_iedLogic = _iedInfo select 0;
|
||||
|
||||
if !([_iedLogic] call cse_fnc_checkIfJammed_IEDS) then {
|
||||
if (_iedLogic distance player < 3000) then {
|
||||
[_iedLogic] call cse_fnc_onIEDActivated_IEDS;
|
||||
CSE_PLAYER_PLACED_RADIO_IEDS_IEDS set [CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS, objNull];
|
||||
CSE_PLAYER_PLACED_RADIO_IEDS_IEDS = CSE_PLAYER_PLACED_RADIO_IEDS_IEDS - [objNull];
|
||||
CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS = CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS - 1;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
[_display] call cse_fnc_onCellPhoneOpened_IEDS;
|
@ -0,0 +1,39 @@
|
||||
/**
|
||||
* fn_checkIEDActivated_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_logic","_triggered"];
|
||||
_logic = _this select 0;
|
||||
_triggered = false;
|
||||
|
||||
switch (true) do {
|
||||
case (_logic getvariable ["iedActivationType",0] == 0): {
|
||||
if ([_logic] call cse_fnc_checkPressurePlateActivated_IEDS) then {
|
||||
_triggered = true;
|
||||
};
|
||||
};
|
||||
case (_logic getvariable ["iedActivationType",0] == 1): {
|
||||
if ([_logic] call cse_fnc_checkRadioTriggered_IEDS) then {
|
||||
_triggered = true;
|
||||
};
|
||||
};
|
||||
case (_logic getvariable ["iedActivationType",0] == 2): {
|
||||
if ([_logic] call cse_fnc_checkPressurePlateActivated_IEDS) then {
|
||||
_triggered = true;
|
||||
};
|
||||
};
|
||||
default {
|
||||
};
|
||||
};
|
||||
|
||||
if (_triggered) then {
|
||||
[_logic] call cse_fnc_onIEDActivated_IEDS;
|
||||
};
|
||||
|
||||
_triggered
|
22
TO_MERGE/cse/sys_ieds/functions/fn_checkIfJammed_IEDS.sqf
Normal file
22
TO_MERGE/cse/sys_ieds/functions/fn_checkIfJammed_IEDS.sqf
Normal file
@ -0,0 +1,22 @@
|
||||
/**
|
||||
* fn_checkIfJammed_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_ied", "_radioBlock", "_personsAround"];
|
||||
_ied = _this select 0;
|
||||
_radioBlock = false;
|
||||
_personsAround = (position _ied) nearEntities [["CaManBase"], 50];
|
||||
{
|
||||
if ((backpack _x == "cse_thorIII_backpack") && {(_x getvariable ["CSE_THOR_III_PACK_ENABLED_IEDS",false])}) exitwith {
|
||||
_radioBlock = true;
|
||||
};
|
||||
false;
|
||||
}count _personsAround;
|
||||
|
||||
_radioBlock
|
@ -0,0 +1,34 @@
|
||||
/**
|
||||
* fn_checkPressurePlateActivated_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_pressurePlate","_return","_list","_pos"];
|
||||
_pressurePlate = _this select 0;
|
||||
_return = false;
|
||||
|
||||
_pos = ASLToATL (getPosASL _pressurePlate);
|
||||
_list = _pos nearEntities [(_pressurePlate getvariable ["activatedForTargets",["Man", "Air", "Car", "Motorcycle", "Tank"]]),3];
|
||||
{
|
||||
if (side _x in (_pressurePlate getvariable ["activatedForSides",[WEST]])) then {
|
||||
if (_x isKindOf "CaManBase") then {
|
||||
if (_x distance _pressurePlate < random(1)) then {
|
||||
_return = true;
|
||||
};
|
||||
} else {
|
||||
if (_x distance _pressurePlate < (0.5+random(3))) then {
|
||||
_return = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
if (_return) exitwith {};
|
||||
false;
|
||||
}count _list;
|
||||
|
||||
_return
|
||||
|
@ -0,0 +1,54 @@
|
||||
/**
|
||||
* fn_checkRadioTriggered_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_ied","_return","_list","_radioBlock","_personsAround","_targetDetected","_triggerMan"];
|
||||
_ied = _this select 0;
|
||||
_return = false;
|
||||
_targetDetected = false;
|
||||
_triggerManUnits = _ied getvariable ["cse_ieds_triggerManUnits",[]];
|
||||
if ((_triggerManUnits isEqualTo [])) exitwith{false;};
|
||||
_list = (position _ied) nearEntities [(_ied getvariable ["activatedForTargets",["CaManBase", "Air", "Car", "Motorcycle", "Tank"]]),5];
|
||||
{
|
||||
_target = _x;
|
||||
{
|
||||
if ([_x, _target] call cse_fnc_triggerManGotVisual_IEDS) then {
|
||||
if (side _target in (_ied getvariable ["activatedForSides",[WEST]])) then {
|
||||
_targetDetected = true;
|
||||
};
|
||||
};
|
||||
if (_targetDetected) exitwith {};
|
||||
}count _triggerManUnits;
|
||||
if (_targetDetected) exitwith {};
|
||||
}count _list;
|
||||
|
||||
if (!(_list isEqualTo []) && _targetDetected) then {
|
||||
_radioBlock = [_ied] call cse_fnc_checkifJammed_IEDS;
|
||||
_nearestPerson = _list select 0;
|
||||
_vehicleNear = false;
|
||||
{
|
||||
if (_ied distance _x < (_ied distance _nearestPerson)) then {
|
||||
_nearestPerson = _x;
|
||||
};
|
||||
if (!(_x iskindof "CaManBase")) then {
|
||||
_vehicleNear = true;
|
||||
};
|
||||
}foreach _list;
|
||||
|
||||
if (!_radioBlock) then {
|
||||
if (count _list > 5) then {
|
||||
_return = true;
|
||||
} else {
|
||||
if (((_nearestPerson distance _ied < 1) || _vehicleNear) && random(1) >0.985) then {
|
||||
_return = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
_return
|
31
TO_MERGE/cse/sys_ieds/functions/fn_createIEDObject_IEDS.sqf
Normal file
31
TO_MERGE/cse/sys_ieds/functions/fn_createIEDObject_IEDS.sqf
Normal file
@ -0,0 +1,31 @@
|
||||
/**
|
||||
* fn_createIEDObject_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
#define LAND_IEDS ["IEDLandBig_Remote_Ammo", "IEDLandSmall_Remote_Ammo"]
|
||||
#define URBAN_IEDS ["IEDUrbanBig_Remote_Ammo", "IEDUrbanSmall_Remote_Ammo"]
|
||||
|
||||
private ["_logic","_typeOfIED", "_sizeOfIED", "_heightOfIED", "_iedClass", "_iedCreated"];
|
||||
_logic = [_this,0,objNull,[objNull]] call BIS_fnc_param;
|
||||
|
||||
if (isNull _logic) exitwith {
|
||||
|
||||
};
|
||||
_typeOfIED = _logic getvariable ["typeOfIED", 0];
|
||||
_sizeOfIED = _logic getvariable ["sizeOfIED", 0];
|
||||
_heightOfIED = _logic getvariable ["heightOfIED", 0];
|
||||
|
||||
_iedClass = switch (_typeOfIED) do {
|
||||
case 0: { LAND_IEDS select _sizeOfIED};
|
||||
case 1: { URBAN_IEDS select _sizeOfIED };
|
||||
};
|
||||
_iedCreated = _iedClass createVehicle (getPos _logic);
|
||||
_logic setvariable ["cse_linkedIED_IEDS",_iedCreated, true];
|
||||
_iedCreated setPos [getPos _Logic select 0, getPos _Logic select 1, (getPos _Logic select 2) + _heightOfIED];
|
||||
[format["CREATED IED: %1", _iedCreated]] call cse_fnc_debug;
|
16
TO_MERGE/cse/sys_ieds/functions/fn_moduleTriggerMan_IEDS.sqf
Normal file
16
TO_MERGE/cse/sys_ieds/functions/fn_moduleTriggerMan_IEDS.sqf
Normal file
@ -0,0 +1,16 @@
|
||||
/**
|
||||
* fn_moduleTriggerMan_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_logic", "_units", "_activated", "_totalCollection", "_collection", "_collectObjects"];
|
||||
_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;
|
||||
|
||||
if (!local _logic) exitwith {};
|
84
TO_MERGE/cse/sys_ieds/functions/fn_module_spawnIED.sqf
Normal file
84
TO_MERGE/cse/sys_ieds/functions/fn_module_spawnIED.sqf
Normal file
@ -0,0 +1,84 @@
|
||||
/**
|
||||
* fn_module_spawnIED.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_logic", "_units", "_activated", "_totalCollection", "_collection", "_collectObjects"];
|
||||
_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;
|
||||
|
||||
if (!local _logic) exitwith {};
|
||||
|
||||
_totalCollection = [];
|
||||
_collectObjects = {
|
||||
private ["_logic", "_collection"];
|
||||
_logic = _this select 0;
|
||||
_collection = synchronizedObjects _logic;
|
||||
{
|
||||
if !(_x in _totalCollection) then {
|
||||
if (typeOf _x == "cseModule_spawnIEDs") then {
|
||||
if !(_x getvariable ["cse_master_IED", false]) then {
|
||||
_x setvariable ["cse_subclass_IED", true];
|
||||
_x setvariable ["cse_controlledBy_IED",_logic];
|
||||
_totalCollection pushback _x;
|
||||
[_x] call _collectObjects;
|
||||
};
|
||||
} else {
|
||||
if (typeOf _x == "cseModule_triggerManLinkIEDS") then {
|
||||
_list = _x getvariable ["EnableList",""];
|
||||
_list = "[" + _list + "]";
|
||||
_parsedList = [] call compile _list;
|
||||
_triggerManList = (_logic getvariable ["cse_ieds_triggerManUnits", []]) + _parsedList;
|
||||
_logic setvariable ["cse_ieds_triggerManUnits", _triggerManList];
|
||||
[format["_triggerManList %1",_triggerManList]] call cse_fnc_debug;
|
||||
};
|
||||
};
|
||||
};
|
||||
}foreach _collection;
|
||||
};
|
||||
|
||||
if !(_logic getvariable ["cse_subclass_IED",false]) then {
|
||||
_logic setvariable ["cse_master_IED", true];
|
||||
[_logic] call _collectObjects;
|
||||
if (_logic getvariable ["cse_master_IED", false]) then {
|
||||
_logic setvariable ["cse_iedCollection", (_logic getvariable ["cse_iedCollection",[]]) + _totalCollection];
|
||||
[format["%1 I am a master IED. Collection is: %2", _logic, (_logic getvariable ["cse_iedCollection",[]])]] call cse_fnc_debug;
|
||||
if (isnil "CSE_MASTER_IED_COLLECTION") then {
|
||||
CSE_MASTER_IED_COLLECTION = [];
|
||||
};
|
||||
CSE_MASTER_IED_COLLECTION pushback _logic;
|
||||
};
|
||||
};
|
||||
|
||||
[_logic] call cse_fnc_createIEDObject_IEDS;
|
||||
|
||||
_activatedSides = _logic getvariable ["activatedForSides", -1];
|
||||
_activatedTargets = _logic getvariable ["activatedForTargets", -1];
|
||||
|
||||
_activatedTargets = switch (_activatedTargets) do {
|
||||
case 0: {["CaManBase", "Air", "Car", "Motorcycle", "Tank"]};
|
||||
case 1: {["Air", "Car", "Motorcycle", "Tank"]};
|
||||
case 2: {["Car", "Motorcycle", "Tank"]};
|
||||
case 3: {["Air"]};
|
||||
case 4: {["CaManBase"]};
|
||||
default {[]};
|
||||
};
|
||||
_logic setvariable ["activatedForTargets", _activatedTargets];
|
||||
|
||||
_activatedSides = switch (_activatedSides) do {
|
||||
case 0: {[west, east, independent, civilian, sideEnemy, sideFriendly]};
|
||||
case 1: {[west, sideEnemy]};
|
||||
case 2: {[east, sideEnemy]};
|
||||
case 3: {[independent, sideEnemy]};
|
||||
case 4: {[civilian, sideEnemy]};
|
||||
default {[]};
|
||||
};
|
||||
|
||||
_logic setvariable ["activatedForSides", _activatedSides, true];
|
||||
_logic setvariable ["iedActivationType", _logic getvariable ["iedActivationType",0], true];
|
40
TO_MERGE/cse/sys_ieds/functions/fn_monitorIEDs_IEDS.sqf
Normal file
40
TO_MERGE/cse/sys_ieds/functions/fn_monitorIEDs_IEDS.sqf
Normal file
@ -0,0 +1,40 @@
|
||||
/**
|
||||
* fn_monitorIEDs_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_activated"];
|
||||
if !(isnil "CSE_MONITORING_IEDS") exitwith {};
|
||||
CSE_MONITORING_IEDS = true;
|
||||
sleep 1;
|
||||
if (isnil "CSE_MASTER_IED_COLLECTION") then {
|
||||
CSE_MASTER_IED_COLLECTION = [];
|
||||
};
|
||||
_code = '
|
||||
{
|
||||
_activated = false;
|
||||
if !([_x] call cse_fnc_checkIEDActivated_IEDS) then {
|
||||
{
|
||||
if ([_x] call cse_fnc_checkIEDActivated_IEDS) exitwith { _activated = true;};
|
||||
}foreach (_x getvariable ["cse_iedCollection", []]);
|
||||
} else {
|
||||
_activated = true;
|
||||
};
|
||||
if (_activated) exitwith {
|
||||
CSE_MASTER_IED_COLLECTION deleteAt _foreachIndex;
|
||||
};
|
||||
false;
|
||||
}count CSE_MASTER_IED_COLLECTION;
|
||||
|
||||
false;';
|
||||
|
||||
cse_sys_ieds_monitorIEDs_Trigger = createTrigger["EmptyDetector", [0,0,0]];
|
||||
cse_sys_ieds_monitorIEDs_Trigger setTriggerActivation ["NONE", "PRESENT", true];
|
||||
cse_sys_ieds_monitorIEDs_Trigger setTriggerTimeout [0, 0, 0, false];
|
||||
cse_sys_ieds_monitorIEDs_Trigger setTriggerStatements[_code, "", ""];
|
||||
|
@ -0,0 +1,40 @@
|
||||
/**
|
||||
* fn_monitorPlayerIEDs_IEDS.sqf
|
||||
* @Descr: Checks player placed pressure plate IEDs
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
|
||||
private ["_activated"];
|
||||
if !(isnil "CSE_MONITORING_PLAYER_IEDS") exitwith {};
|
||||
CSE_MONITORING_PLAYER_IEDS = true;
|
||||
sleep 1;
|
||||
if (isnil "CSE_PLAYER_PLACED_PRESSURE_IEDS_IEDS") then {
|
||||
CSE_PLAYER_PLACED_PRESSURE_IEDS_IEDS = [];
|
||||
};
|
||||
|
||||
[format["CSE_MONITORING_PLAYER_IEDS"]] call cse_fnc_debug;
|
||||
_code = '
|
||||
{
|
||||
_activated = false;
|
||||
if ([_X] call cse_fnc_checkPressurePlateActivated_IEDS) then {
|
||||
_activated = true;
|
||||
[_x] call cse_fnc_onIEDActivated_IEDS;
|
||||
};
|
||||
if (_activated || isNull _x) exitwith {
|
||||
CSE_PLAYER_PLACED_PRESSURE_IEDS_IEDS deleteAt _foreachIndex;
|
||||
};
|
||||
false;
|
||||
}count CSE_PLAYER_PLACED_PRESSURE_IEDS_IEDS;
|
||||
';
|
||||
|
||||
|
||||
cse_sys_ieds_monitorPlayerIEDs_Trigger = createTrigger["EmptyDetector", [0,0,0]];
|
||||
cse_sys_ieds_monitorPlayerIEDs_Trigger setTriggerActivation ["NONE", "PRESENT", true];
|
||||
cse_sys_ieds_monitorPlayerIEDs_Trigger setTriggerTimeout [0, 0, 0, false];
|
||||
cse_sys_ieds_monitorPlayerIEDs_Trigger setTriggerStatements[_code, "", ""];
|
||||
|
@ -0,0 +1,53 @@
|
||||
/**
|
||||
* fn_onCellPhoneOpened_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
|
||||
private ["_display"];
|
||||
_display = uiNamespace getVariable 'cse_ied_cellphone';
|
||||
|
||||
|
||||
if (isnil "CSE_PLAYER_PLACED_RADIO_IEDS_IEDS") then {
|
||||
CSE_PLAYER_PLACED_RADIO_IEDS_IEDS = [];
|
||||
};
|
||||
|
||||
(_display displayCtrl 10) ctrlSetText "Adres book";
|
||||
|
||||
if (isnil "CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS") then {
|
||||
CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS = 0;
|
||||
};
|
||||
|
||||
if (CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS > count CSE_PLAYER_PLACED_RADIO_IEDS_IEDS) then {
|
||||
CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS = 0;
|
||||
};
|
||||
|
||||
if (CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS < 0) then {
|
||||
CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS = (count CSE_PLAYER_PLACED_RADIO_IEDS_IEDS) - 1;
|
||||
};
|
||||
(_display displayCtrl 12) ctrlSetText "";
|
||||
(_display displayCtrl 13) ctrlSetText "";
|
||||
(_display displayCtrl 14) ctrlSetText "";
|
||||
|
||||
_ctrlIDC = 12;
|
||||
_cellphoneBookPointer = CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS;
|
||||
for [{_EHiterator=0}, {(_EHiterator< 3)}, {_EHiterator=_EHiterator+1}] do {
|
||||
if (_cellphoneBookPointer >= count CSE_PLAYER_PLACED_RADIO_IEDS_IEDS) then {
|
||||
_cellphoneBookPointer = 0;
|
||||
};
|
||||
if (_cellphoneBookPointer < 0) then {
|
||||
_cellphoneBookPointer = (count CSE_PLAYER_PLACED_RADIO_IEDS_IEDS) - 1;
|
||||
};
|
||||
if (_EHiterator < count CSE_PLAYER_PLACED_RADIO_IEDS_IEDS) then {
|
||||
(_display displayCtrl _ctrlIDC) ctrlSetText format["#%1", ((CSE_PLAYER_PLACED_RADIO_IEDS_IEDS select _cellphoneBookPointer) select 1)];
|
||||
_cellphoneBookPointer = _cellphoneBookPointer + 1;
|
||||
_ctrlIDC = _ctrlIDC + 1;
|
||||
};
|
||||
};
|
||||
|
||||
(_display displayCtrl 12) ctrlSetbackgroundColor [0,0,0,0.1];
|
46
TO_MERGE/cse/sys_ieds/functions/fn_onIEDActivated_IEDS.sqf
Normal file
46
TO_MERGE/cse/sys_ieds/functions/fn_onIEDActivated_IEDS.sqf
Normal file
@ -0,0 +1,46 @@
|
||||
/**
|
||||
* fn_onIEDActivated_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_logic","_chain","_iedLogic", "_trigger", "_getMasterIED"];
|
||||
_logic = [_this,0,objNull,[objNull]] call BIS_fnc_param;
|
||||
|
||||
|
||||
_getMasterIED = {
|
||||
if (_logic getvariable ["cse_subclass_IED",false]) then {
|
||||
_logic = _logic getvariable ["cse_controlledBy_IED",_logic];
|
||||
if (_logic getvariable ["cse_subclass_IED",false]) then {
|
||||
call _getMasterIED;
|
||||
};
|
||||
};
|
||||
};
|
||||
call _getMasterIED;
|
||||
|
||||
_chain = _logic getvariable ["cse_iedCollection",[]];
|
||||
_chain pushback _logic;
|
||||
{
|
||||
private ["_ied", "_trigger"];
|
||||
_iedLogic = _x;
|
||||
_trigger = _iedLogic getvariable ["cse_linkedIED_IEDS", objNull];
|
||||
[_iedLogic,_trigger, _logic] spawn {
|
||||
_iedLogic = _this select 0;
|
||||
_trigger = _this select 1;
|
||||
_master = _this select 2;
|
||||
if (!isNull _trigger) then {
|
||||
if (random(1)>0.5 && (_iedLogic != _master)) then {
|
||||
uisleep (random(2));
|
||||
};
|
||||
//(_iedLogic getvariable ["explosiveType","R_60mm_HE"]) createVehicle (getPos _iedLogic);
|
||||
deleteVehicle _iedLogic;
|
||||
_trigger setDamage 1;
|
||||
};
|
||||
};
|
||||
}foreach _chain;
|
||||
|
||||
[format["%1 is triggering ied chain: %1",_logic, _chain]] call cse_fnc_debug;
|
53
TO_MERGE/cse/sys_ieds/functions/fn_placeDownIED_IEDS.sqf
Normal file
53
TO_MERGE/cse/sys_ieds/functions/fn_placeDownIED_IEDS.sqf
Normal file
@ -0,0 +1,53 @@
|
||||
/**
|
||||
* fn_placeDownIED_IEDS.sqf
|
||||
* @Descr: Places down an IED (Player side)
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: [type NUMBER (The type of IED.), size NUMBER, activationType NUMBER (1 = radio, 0 = pressure plate)]
|
||||
* @Return: logic LOGIC Returns the created IED logic
|
||||
* @PublicAPI: true
|
||||
*/
|
||||
|
||||
private ["_position", "_logic"];
|
||||
_typeOfIED = _this select 0;
|
||||
_sizeOfIED = _this select 1;
|
||||
_activationType = _this select 2;
|
||||
//_position = _this select 3;
|
||||
|
||||
|
||||
_position = getPos player;
|
||||
_logic = (createGroup sideLogic) createUnit ["cse_playerSpawnedIED", _position, [], 0, "FORM"];
|
||||
_logic setPos _position;
|
||||
|
||||
_logic setvariable ["typeOfIED", _typeOfIED, true];
|
||||
_logic setvariable ["sizeOfIED", _sizeOfIED, true];
|
||||
_logic setvariable ["heightOfIED", 0, true];
|
||||
_logic setvariable ["iedActivationType", _activationType, true];
|
||||
|
||||
[_logic] call cse_fnc_createIEDObject_IEDS;
|
||||
|
||||
if (isnil "CSE_PLAYER_PLACED_PRESSURE_IEDS_IEDS") then {
|
||||
CSE_PLAYER_PLACED_PRESSURE_IEDS_IEDS = [];
|
||||
};
|
||||
|
||||
if (isnil "CSE_PLAYER_PLACED_RADIO_IEDS_IEDS") then {
|
||||
CSE_PLAYER_PLACED_RADIO_IEDS_IEDS = [];
|
||||
};
|
||||
if (isnil "CSE_PLAYER_PLACED_RADIO_IEDS_COUNTER_IEDS") then {
|
||||
CSE_PLAYER_PLACED_RADIO_IEDS_COUNTER_IEDS = 0;
|
||||
};
|
||||
|
||||
if (_activationType != 1) then {
|
||||
_logic spawn {
|
||||
hintSilent parseText "<t align='center'>You placed down an IED. </br>IED will be activate in 5 seconds.</t>";
|
||||
uisleep 5;
|
||||
CSE_PLAYER_PLACED_PRESSURE_IEDS_IEDS pushback _this;
|
||||
};
|
||||
} else {
|
||||
CSE_PLAYER_PLACED_RADIO_IEDS_COUNTER_IEDS = CSE_PLAYER_PLACED_RADIO_IEDS_COUNTER_IEDS + 1;
|
||||
CSE_PLAYER_PLACED_RADIO_IEDS_IEDS pushback [_logic, format["IED %1",CSE_PLAYER_PLACED_RADIO_IEDS_COUNTER_IEDS]];
|
||||
};
|
||||
|
||||
[format["fn_placeDownIED_IEDS %1", _logic]] call cse_fnc_debug;
|
||||
|
||||
_logic
|
11
TO_MERGE/cse/sys_ieds/functions/fn_playThorIIISound_IEDS.sqf
Normal file
11
TO_MERGE/cse/sys_ieds/functions/fn_playThorIIISound_IEDS.sqf
Normal file
@ -0,0 +1,11 @@
|
||||
/**
|
||||
* fn_playThorIIISound_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
(_this select 0) say3D "cse_thor3_beep1";
|
46
TO_MERGE/cse/sys_ieds/functions/fn_searchGround_IEDS.sqf
Normal file
46
TO_MERGE/cse/sys_ieds/functions/fn_searchGround_IEDS.sqf
Normal file
@ -0,0 +1,46 @@
|
||||
/**
|
||||
* fn_searchGround_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
#define AVAILABLE_IEDS ["cseModule_spawnIEDs", "cse_playerSpawnedIED"]
|
||||
#define MAX_SEARCH_DISTANCE 2.5
|
||||
|
||||
private ["_unit", "_foundIEDS", "_diggedUp", "_pos", "_height"];
|
||||
_unit = [_this, 0, objNull, [objNull]] call BIS_fnc_Param;
|
||||
|
||||
_foundIEDS = nearestObjects [_unit, AVAILABLE_IEDS, MAX_SEARCH_DISTANCE];
|
||||
_diggedUp = false;
|
||||
{
|
||||
_ied = _x getvariable ["cse_linkedIED_IEDS", objNull];
|
||||
if (((getPos _ied) select 2) < 0) then {
|
||||
if (random(1)>0.1) then {
|
||||
_diggedUp = true;
|
||||
};
|
||||
};
|
||||
if (_diggedUp) exitwith{
|
||||
_pos = getPos _ied;
|
||||
_height = (_pos select 2) + 0.09;
|
||||
if (_height > 0) then {
|
||||
_height = 0;
|
||||
};
|
||||
_pos set[2,_height];
|
||||
_ied setPos _pos;
|
||||
};
|
||||
}foreach _foundIEDs;
|
||||
|
||||
if (_unit == player) then {
|
||||
if (_diggedUp) then {
|
||||
_unit sidechat "You uncover some of an IED";
|
||||
_unit sidechat format["Pos: %1",_pos];
|
||||
} else {
|
||||
_unit sidechat "You didn't find anything";
|
||||
};
|
||||
};
|
||||
|
||||
true;
|
28
TO_MERGE/cse/sys_ieds/functions/fn_thor3_detection_IEDS.sqf
Normal file
28
TO_MERGE/cse/sys_ieds/functions/fn_thor3_detection_IEDS.sqf
Normal file
@ -0,0 +1,28 @@
|
||||
if (!isnil "CSE_LAST_TRACKER_THORBEEP_MOMENT") exitwith {};
|
||||
|
||||
CSE_PLAY_THOR_III_SOUND_IEDS = false;
|
||||
CSE_THOR_III_PACK_ENABLED_IEDS = true;
|
||||
player setvariable ["CSE_THOR_III_PACK_ENABLED_IEDS",true,true];
|
||||
CSE_LAST_TRACKER_THORBEEP_MOMENT = time;
|
||||
_code = {
|
||||
if ((backpack player) == "cse_thorIII_backpack" && {(player getvariable ["CSE_THOR_III_PACK_ENABLED_IEDS", false])}) then {
|
||||
_foundIEDS = nearestObjects [player, ["cseModule_spawnIEDs", "cse_playerSpawnedIED"], 50];
|
||||
{
|
||||
_distanceToIED = player distance _x;
|
||||
if (_distanceToIED < 50) exitwith {
|
||||
if (_X getvariable ["iedActivationType",0] == 1) exitwith {
|
||||
_timeDifference = (_distanceToIED/50) * 10 * MODIFIER_LOOP_DELAY;
|
||||
if (time - CSE_LAST_TRACKER_THORBEEP_MOMENT >= (_timeDifference*accTime)) then {
|
||||
CSE_LAST_TRACKER_THORBEEP_MOMENT = time;
|
||||
playSound3D ["cse\cse_sys_ieds\sounds\beeps\03_Dull_Short_Mid.wav", player, false, getPos player, 35, 1, 10];
|
||||
};
|
||||
};
|
||||
};
|
||||
CSE_LAST_TRACKER_THORBEEP_MOMENT = time;
|
||||
}count _foundIEDS;
|
||||
};
|
||||
};
|
||||
|
||||
["cse_thor3TrackerBeeping", [], _code] call cse_fnc_addTaskToPool_f;
|
||||
|
||||
true;
|
@ -0,0 +1,22 @@
|
||||
/**
|
||||
* fn_triggerManGotVisual_IEDS.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
private ["_triggerMan","_obj","_return"];
|
||||
_triggerMan = _this select 0;
|
||||
_obj = _this select 1;
|
||||
_return = false;
|
||||
|
||||
if (!(_triggerMan getvariable ["cse_ieds_SpotterFleeing_IEDS",false]) && _triggerMan != _obj && alive _triggerMan) then {
|
||||
if (_obj distance _triggerMan <350) then {
|
||||
_triggerMan doWatch _obj;
|
||||
_return = !(lineIntersects [eyePos _triggerMan, getPos _obj,_triggerMan]);
|
||||
};
|
||||
};
|
||||
_return
|
BIN
TO_MERGE/cse/sys_ieds/icon.paa
Normal file
BIN
TO_MERGE/cse/sys_ieds/icon.paa
Normal file
Binary file not shown.
37
TO_MERGE/cse/sys_ieds/init_sys_ieds.sqf
Normal file
37
TO_MERGE/cse/sys_ieds/init_sys_ieds.sqf
Normal file
@ -0,0 +1,37 @@
|
||||
/**
|
||||
* init_sys_ieds.sqf
|
||||
* @Descr: N/A
|
||||
* @Author: Glowbal
|
||||
*
|
||||
* @Arguments: []
|
||||
* @Return:
|
||||
* @PublicAPI: false
|
||||
*/
|
||||
|
||||
#define IED_ICON "\A3\Weapons_F\Data\UI\gear_c4_charge_small_CA.paa"
|
||||
|
||||
if (isServer) then {
|
||||
call cse_fnc_monitorIEDS_IEDS;
|
||||
};
|
||||
|
||||
if (hasInterface) then {
|
||||
CSE_THOR_III_PACK_ENABLED_IEDS = true;
|
||||
call cse_fnc_thor3_detection_IEDS;
|
||||
call cse_fnc_monitorPlayerIEDS_IEDS;
|
||||
};
|
||||
|
||||
waituntil{!isnil "cse_gui"};
|
||||
|
||||
_entries = [
|
||||
["Pressure Plate (S)", {([player,"cse_ied_pressureplate_small"] call cse_fnc_hasItem)}, IED_ICON, {closeDialog 0; [0, 1, 0] call cse_fnc_placeDownIED_IEDS; player removeItem "cse_ied_pressureplate_small";}, "Place Pressure plate IED (Small)"],
|
||||
|
||||
["Pressure Plate (M)", {([player,"cse_ied_pressureplate_large"] call cse_fnc_hasItem)}, IED_ICON, {closeDialog 0; [0, 0, 0] call cse_fnc_placeDownIED_IEDS; player removeItem "cse_ied_pressureplate_large";}, "Place Pressure plate IED (Large)"],
|
||||
|
||||
["Radio (S)", {([player,"cse_ied_radio_small"] call cse_fnc_hasItem)}, IED_ICON, {closeDialog 0; [0, 1, 1] call cse_fnc_placeDownIED_IEDS; player removeItem "cse_ied_radio_small";}, "Place Radio IED (Small)"],
|
||||
["Radio (M)", {([player,"cse_ied_radio_large"] call cse_fnc_hasItem)}, IED_ICON, {closeDialog 0; [0, 0, 1] call cse_fnc_placeDownIED_IEDS; player removeItem "cse_ied_radio_large";}, "Place Radio IED (Large)"],
|
||||
["Cell Phone", {([player,"cse_oldphone"] call cse_fnc_hasItem)}, "cse\cse_sys_ieds\data\icon_cellphone.paa", {closeDialog 0; createDialog "cse_ied_cellphone";}, "Use Cell Phone Trigger"]
|
||||
];
|
||||
|
||||
["ActionMenu","equipment", _entries ] call cse_fnc_addMultipleEntriesToRadialCategory_F;
|
||||
|
||||
true;
|
BIN
TO_MERGE/cse/sys_ieds/sounds/beeps/03_Dull_Short_Mid.wav
Normal file
BIN
TO_MERGE/cse/sys_ieds/sounds/beeps/03_Dull_Short_Mid.wav
Normal file
Binary file not shown.
28
TO_MERGE/cse/sys_ieds/stringtable.xml
Normal file
28
TO_MERGE/cse/sys_ieds/stringtable.xml
Normal file
@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<Project name="Combat Space Enhancement">
|
||||
<Package name="cse_sys_ieds">
|
||||
<Container ID="Items">
|
||||
|
||||
<Key ID="STR_CSE_ITEM_IED_PRESSUREPLATE_SMALL">
|
||||
<Original>Pressure Plate IED (Small)</Original>
|
||||
<Polish>IED z zapalnikiem naciskowym (mały)</Polish>
|
||||
<Spanish>IED Placa de Presión (Pequeño)</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_CSE_ITEM_IED_PRESSUREPLATE_LARGE">
|
||||
<Original>Pressure Plate IED (Large)</Original>
|
||||
<Polish>IED z zapalnikiem naciskowym (duży)</Polish>
|
||||
<Spanish>IED Placa de Presión (Grande)</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_CSE_ITEM_IED_RADIO_SMALL">
|
||||
<Original>Radio IED (Small)</Original>
|
||||
<Polish>IED z zapalnikiem radiowym (mały)</Polish>
|
||||
<Spanish>IED Activación remota (Pequeño)</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_CSE_ITEM_IED_RADIO_LARGE">
|
||||
<Original>Radio IED (Large)</Original>
|
||||
<Polish>IED z zapalnikiem radiowym (duży)</Polish>
|
||||
<Spanish>IED Activación remota (Grande)</Spanish>
|
||||
</Key>
|
||||
</Container>
|
||||
</Package>
|
||||
</Project>
|
111
TO_MERGE/cse/sys_ieds/ui/cellphone.hpp
Normal file
111
TO_MERGE/cse/sys_ieds/ui/cellphone.hpp
Normal file
@ -0,0 +1,111 @@
|
||||
class cse_ied_cellphone {
|
||||
idd = 754321;
|
||||
movingEnable = true;
|
||||
onLoad = "uiNamespace setVariable ['cse_ied_cellphone', _this select 0]; [_this] call cse_fnc_onCellPhoneOpened_IEDS; ['CSE_RADIAL_MENU', false] call cse_fnc_gui_blurScreen;";
|
||||
onUnload = "";
|
||||
|
||||
class controlsBackground {
|
||||
class cse_background : cse_gui_backgroundBase {
|
||||
idc = -1;
|
||||
x = "0 * (((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 = "15 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "30 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
text = "cse\cse_sys_ieds\data\cellphone_background.paa";
|
||||
};
|
||||
};
|
||||
class controls {
|
||||
class labelTextMenu : cse_gui_staticBase {
|
||||
idc = 10;
|
||||
x = "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 = "5.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.7)";
|
||||
text = "SERVICE";
|
||||
colorBackground[] = {0,0,0,0.0};
|
||||
colorText[] = {0.0, 0.0, 0.0, 1.0};
|
||||
style = ST_CENTER;
|
||||
};
|
||||
class labelTextLineOne : labelTextMenu {
|
||||
idc = 11;
|
||||
x = "5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "19.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "5.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "0.6 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 0.6)";
|
||||
text = "";
|
||||
style = ST_LEFT;
|
||||
};
|
||||
class labelTextLineTwo : labelTextLineOne {
|
||||
idc = 12;
|
||||
y = "20.3 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
text = "";
|
||||
};
|
||||
class labelTextLineThree : labelTextLineOne {
|
||||
idc = 13;
|
||||
y = "21 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
text = "";
|
||||
};
|
||||
class labelTextLineFour : labelTextLineOne {
|
||||
idc = 14;
|
||||
y = "21.7 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
text = "";
|
||||
};
|
||||
|
||||
|
||||
class actionCenter : cse_gui_buttonBase {
|
||||
idc = 30;
|
||||
text = "";
|
||||
x = "6.5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "23 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "2.5 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "1 * ((((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_cellphone_detonateIED_IEDS;";
|
||||
};
|
||||
|
||||
class actionButtonLeft : actionCenter {
|
||||
idc = 31;
|
||||
text = "";
|
||||
x = "5 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "24 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "0.9 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "0.9 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
action = "";
|
||||
};
|
||||
class actionButtonRight_downwards : actionButtonLeft {
|
||||
idc = 32;
|
||||
text = "";
|
||||
x = "8.3 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "24.5 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "0.9 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "0.9 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
action = "CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS = CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS - 1; [_this] call cse_fnc_onCellPhoneOpened_IEDS;";
|
||||
};
|
||||
class actionButtonRight_up : actionButtonRight_downwards {
|
||||
idc = 32;
|
||||
text = "";
|
||||
x = "9.3 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
|
||||
y = "23.75 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
|
||||
w = "0.9 * (((safezoneW / safezoneH) min 1.2) / 40)";
|
||||
h = "0.9 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
|
||||
action = "CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS = CSE_CELLPHONE_ADRESSBOOK_POINTER_IEDS + 1; [_this] call cse_fnc_onCellPhoneOpened_IEDS;";
|
||||
};
|
||||
|
||||
};
|
||||
};
|
0
TO_MERGE/cse/sys_ieds/ui/createIED.hpp
Normal file
0
TO_MERGE/cse/sys_ieds/ui/createIED.hpp
Normal file
797
TO_MERGE/cse/sys_ieds/ui/define.hpp
Normal file
797
TO_MERGE/cse/sys_ieds/ui/define.hpp
Normal file
@ -0,0 +1,797 @@
|
||||
|
||||
#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
|
Loading…
Reference in New Issue
Block a user