From f0588c319fc2afa127eec288bba40e7eb8d19fe8 Mon Sep 17 00:00:00 2001 From: Bear Date: Mon, 30 Dec 2024 05:50:41 -0300 Subject: [PATCH] Several changes to add thugs when CUP is installed --- addons/characters/units/CUP/config.cpp | 24 +++ .../units/CUP/thug_opfor_units_CUP.hpp | 192 ++++++++++++++++++ addons/characters/units/thug_opfor_units.hpp | 23 +-- addons/main/config.cpp | 9 + .../main/functions/fn_thugsequippistolCUP.sqf | 17 +- .../main/functions/fn_thugsequiprifleCUP.sqf | 54 +++-- .../functions/fn_thugsequipshotgunCUP.sqf | 27 +++ addons/main/functions/fn_thugsequipsmgCUP.sqf | 30 +++ .../main/functions/fn_thugsequipsniperCUP.sqf | 36 +++- addons/main/functions/fn_thugswearCUP.sqf | 8 +- .../main/functions/fn_thugswearbikerCUP.sqf | 106 ++++++++++ addons/soft/CUP/Thugs_veh.hpp | 64 ++++++ addons/soft/CUP/config.cpp | 31 +++ addons/soft/Thugs_veh.hpp | 25 +++ addons/soft/config.cpp | 8 +- 15 files changed, 609 insertions(+), 45 deletions(-) create mode 100644 addons/characters/units/CUP/config.cpp create mode 100644 addons/characters/units/CUP/thug_opfor_units_CUP.hpp create mode 100644 addons/main/functions/fn_thugsequipshotgunCUP.sqf create mode 100644 addons/main/functions/fn_thugsequipsmgCUP.sqf create mode 100644 addons/main/functions/fn_thugswearbikerCUP.sqf create mode 100644 addons/soft/CUP/Thugs_veh.hpp create mode 100644 addons/soft/CUP/config.cpp create mode 100644 addons/soft/Thugs_veh.hpp diff --git a/addons/characters/units/CUP/config.cpp b/addons/characters/units/CUP/config.cpp new file mode 100644 index 0000000..6840aab --- /dev/null +++ b/addons/characters/units/CUP/config.cpp @@ -0,0 +1,24 @@ +class CfgPatches +{ + class braf_factions_characters_CUP + { + author = "BRAF Team"; + skipWhenMissingDependencies = 1; + requiredAddons[] = { + "BRAF_characters_army", + "braf_factions_characters", + "CUP_BaseConfigs" + }; + requiredVersion = 0.1; + units[] = {}; + weapons[] = {}; + }; +}; + +class DefaultEventHandlers; +class CfgVehicles +{ + skipWhenMissingDependencies = 1; + #include "thug_opfor_units_CUP.hpp" +}; + diff --git a/addons/characters/units/CUP/thug_opfor_units_CUP.hpp b/addons/characters/units/CUP/thug_opfor_units_CUP.hpp new file mode 100644 index 0000000..0fc025d --- /dev/null +++ b/addons/characters/units/CUP/thug_opfor_units_CUP.hpp @@ -0,0 +1,192 @@ +class I_G_Soldier_base_F; +class O_G_Soldier_F:I_G_Soldier_base_F +{ + class EventHandlers; +}; +class O_G_soldier_M_F:I_G_Soldier_base_F +{ + class EventHandlers; +}; +class braf_factions_thug_pistol: O_G_Soldier_F +{ + scope = 2; + scopeArsenal = 2; + scopeCurator = 2; + _generalMacro = "braf_factions_thug_pistol"; + displayName = "Thug (Pistol)"; + faction = "BRAF_Thugs"; + uniformClass = "U_I_C_Soldier_Bandit_4_F"; + backpack = ""; + weapons[] = {"hgun_ACPC2_F", "Throw", "Put"}; + magazines[] = {"9Rnd_45ACP_Mag", "9Rnd_45ACP_Mag", "9Rnd_45ACP_Mag", "9Rnd_45ACP_Mag", "9Rnd_45ACP_Mag"}; + items[] = {"FirstAidKit"}; + linkedItems[] = {}; + genericNames = "braf_brazilian_names"; + identityTypes[] = { + "NoGlasses", + "LanguageFRE_F", + "Head_Tanoan" + }; + class EventHandlers : EventHandlers { + init = "if (local (_this select 0)) then {[(_this select 0), [], nil] call BIS_fnc_unitHeadgear;[_this select 0] call braf_factions_fnc_thugswearCUP;[_this select 0] call braf_factions_fnc_thugsequippistolCUP;};[_this select 0] call braf_factions_fnc_thugsequipvestCUP;};"; + }; + skipWhenMissingDependencies = 1; +}; + + + +class braf_factions_thug_marksman: O_G_soldier_M_F +{ + scope = 2; + scopeArsenal = 2; + scopeCurator = 2; + _generalMacro = "braf_factions_thug_marksman"; + displayName = "Thug (Marksman)"; + faction = "BRAF_Thugs"; + uniformClass = "U_I_C_Soldier_Bandit_4_F"; + backpack = ""; + weapons[] = {"Braf_aglc_preto", "Throw", "Put"}; + magazines[] = {"braf_5Rnd_308_Red", "braf_5Rnd_308_Red", "braf_5Rnd_308_Red"}; + items[] = {}; + linkedItems[] = {"optic_LRPS"}; + genericNames = "braf_brazilian_names"; + identityTypes[] = { + "NoGlasses", + "LanguageFRE_F", + "Head_Tanoan" + }; + class EventHandlers : EventHandlers { + init = "if (local (_this select 0)) then {[(_this select 0), [], nil] call BIS_fnc_unitHeadgear;[_this select 0] call braf_factions_fnc_thugswearCUP;[_this select 0] call braf_factions_fnc_thugsequipsniperCUP;[_this select 0] call braf_factions_fnc_thugsequipvestCUP;};"; + }; + skipWhenMissingDependencies = 1; +}; + +class braf_factions_thug_rifleman: O_G_Soldier_F +{ + scope = 2; + scopeArsenal = 2; + scopeCurator = 2; + _generalMacro = "braf_factions_thug_marksman"; + displayName = "Thug (AKM)"; + faction = "BRAF_Thugs"; + uniformClass = "U_I_C_Soldier_Bandit_4_F"; + backpack = ""; + weapons[] = {"arifle_AKM_F", "Throw", "Put"}; + magazines[] = {"30Rnd_762x39_Mag_F", "30Rnd_762x39_Mag_F", "30Rnd_762x39_Mag_F"}; + items[] = {"FirstAidKit"}; + linkedItems[] = {}; + genericNames = "braf_brazilian_names"; + identityTypes[] = { + "NoGlasses", + "LanguageFRE_F", + "Head_Tanoan" + }; + class EventHandlers : EventHandlers { + init = "if (local (_this select 0)) then {[(_this select 0), [], nil] call BIS_fnc_unitHeadgear;[_this select 0] call braf_factions_fnc_thugswearCUP;[_this select 0] call braf_factions_fnc_thugsequiprifleCUP;};[_this select 0] call braf_factions_fnc_thugsequipvestCUP;"; + }; + skipWhenMissingDependencies = 1; +}; + +class braf_factions_thug_shotgun: O_G_Soldier_F +{ + scope = 2; + scopeArsenal = 2; + scopeCurator = 2; + _generalMacro = "braf_factions_thug_shotgun"; + displayName = "Thug (Shotgun)"; + faction = "BRAF_Thugs"; + uniformClass = "U_I_C_Soldier_Bandit_4_F"; + backpack = ""; + weapons[] = {"sgun_HunterShotgun_01_F", "Throw", "Put"}; + magazines[] = {"2Rnd_12Gauge_Pellets", "2Rnd_12Gauge_Pellets", "2Rnd_12Gauge_Pellets", "2Rnd_12Gauge_Pellets", "2Rnd_12Gauge_Pellets"}; + items[] = {}; + linkedItems[] = {}; + genericNames = "braf_brazilian_names"; + identityTypes[] = { + "NoGlasses", + "LanguageFRE_F", + "Head_Tanoan" + }; + class EventHandlers : EventHandlers { + init = "if (local (_this select 0)) then {[(_this select 0), [], nil] call BIS_fnc_unitHeadgear;[_this select 0] call braf_factions_fnc_thugswearCUP;[_this select 0] call braf_factions_fnc_thugsequipshotgunCUP;};[_this select 0] call braf_factions_fnc_thugsequipvestCUP;"; + }; + skipWhenMissingDependencies = 1; +}; + +class braf_factions_thug_smg: O_G_Soldier_F +{ + scope = 2; + scopeArsenal = 2; + scopeCurator = 2; + _generalMacro = "braf_factions_thug_smg"; + displayName = "Thug (SMG)"; + faction = "BRAF_Thugs"; + uniformClass = "U_I_C_Soldier_Bandit_4_F"; + backpack = ""; + weapons[] = {"Braf_MT12", "Throw", "Put"}; + magazines[] = {"30Rnd_9x21_Mag", "30Rnd_9x21_Mag", "30Rnd_9x21_Mag"}; + items[] = {"FirstAidKit"}; + linkedItems[] = {}; + genericNames = "braf_brazilian_names"; + identityTypes[] = { + "NoGlasses", + "LanguageFRE_F", + "Head_Tanoan" + }; + class EventHandlers : EventHandlers { + init = "if (local (_this select 0)) then {[(_this select 0), [], nil] call BIS_fnc_unitHeadgear;[_this select 0] call braf_factions_fnc_thugswearCUP;[_this select 0] call braf_factions_fnc_thugsequipsmgCUP;};[_this select 0] call braf_factions_fnc_thugsequipvestCUP;"; + }; + skipWhenMissingDependencies = 1; +}; + +class braf_factions_thug_biker: O_G_Soldier_F +{ + scope = 2; + scopeArsenal = 2; + scopeCurator = 2; + _generalMacro = "braf_factions_thug_biker"; + displayName = "Thug (Biker)"; + faction = "BRAF_Thugs"; + uniformClass = "U_I_C_Soldier_Bandit_4_F"; + backpack = ""; + weapons[] = {"Braf_MT12", "Throw", "Put"}; + magazines[] = {"30Rnd_9x21_Mag", "30Rnd_9x21_Mag", "30Rnd_9x21_Mag", "braf_Igla_missile"}; + items[] = {"FirstAidKit"}; + linkedItems[] = {}; + genericNames = "braf_brazilian_names"; + identityTypes[] = { + "NoGlasses", + "LanguageFRE_F", + "Head_Tanoan" + }; + class EventHandlers : EventHandlers { + init = "if (local (_this select 0)) then {[(_this select 0), [], nil] call BIS_fnc_unitHeadgear;[_this select 0] call braf_factions_fnc_thugswearbikerCUP;[_this select 0] call braf_factions_fnc_thugsequippistolCUP;};[_this select 0] call braf_factions_fnc_thugsequipvestCUP;};"; + }; + skipWhenMissingDependencies = 1; +}; + +class braf_factions_thug_at: O_G_Soldier_F +{ + scope = 2; + scopeArsenal = 2; + scopeCurator = 2; + _generalMacro = "braf_factions_thug_at"; + displayName = "Thug (AT)"; + faction = "BRAF_Thugs"; + uniformClass = "U_I_C_Soldier_Bandit_4_F"; + backpack = ""; + weapons[] = {"Braf_MT12", "CUP_launch_RPG18", "Throw", "Put"}; + magazines[] = {"30Rnd_9x21_Mag", "30Rnd_9x21_Mag", "30Rnd_9x21_Mag"}; + items[] = {"FirstAidKit"}; + linkedItems[] = {}; + genericNames = "braf_brazilian_names"; + identityTypes[] = { + "NoGlasses", + "LanguageFRE_F", + "Head_Tanoan" + }; + class EventHandlers : EventHandlers { + init = "if (local (_this select 0)) then {[(_this select 0), [], nil] call BIS_fnc_unitHeadgear;[_this select 0] call braf_factions_fnc_thugswearCUP;[_this select 0] call braf_factions_fnc_thugsequiprifleCUP;};[_this select 0] call braf_factions_fnc_thugsequipvestCUP;"; + }; + skipWhenMissingDependencies = 1; +}; \ No newline at end of file diff --git a/addons/characters/units/thug_opfor_units.hpp b/addons/characters/units/thug_opfor_units.hpp index d5921d4..f40fc77 100644 --- a/addons/characters/units/thug_opfor_units.hpp +++ b/addons/characters/units/thug_opfor_units.hpp @@ -1,5 +1,12 @@ -class O_G_Soldier_F; - +class I_G_Soldier_base_F; +class O_G_Soldier_F:I_G_Soldier_base_F +{ + class EventHandlers; +}; +class O_G_soldier_M_F:I_G_Soldier_base_F +{ + class EventHandlers; +}; class braf_factions_thug_pistol: O_G_Soldier_F { scope = 2; @@ -20,19 +27,11 @@ class braf_factions_thug_pistol: O_G_Soldier_F "LanguageFRE_F", "Head_Tanoan" }; - #if _has_include("\CUP\Weapons\CUP_Weapons_DynamicLoadout\mk82\CUP_mk82_pod.p3d") - class EventHandlers : EventHandlers { - init = "if (local (_this select 0)) then {[(_this select 0), [], nil] call BIS_fnc_unitHeadgear;[_this select 0] call braf_factions_fnc_thugswearCUP;[_this select 0] call braf_factions_fnc_thugsequippistolCUP;};"; - }; - #else class EventHandlers : EventHandlers { - init = "if (local (_this select 0)) then {[(_this select 0), [], nil] call BIS_fnc_unitHeadgear;[_this select 0] call braf_factions_fnc_thugswear;};"; + init = "if (local (_this select 0)) then {[(_this select 0), [], nil] call BIS_fnc_unitHeadgear;[_this select 0] call braf_factions_fnc_thugswear;[_this select 0] call braf_factions_fnc_thugsequippistolCUP;};"; }; - #endif + }; - -class O_G_soldier_M_F; - class braf_factions_thug_marksman: O_G_soldier_M_F { scope = 2; diff --git a/addons/main/config.cpp b/addons/main/config.cpp index 4a958b9..dc7aca4 100644 --- a/addons/main/config.cpp +++ b/addons/main/config.cpp @@ -31,6 +31,15 @@ class CfgFunctions { class thugsequipvestCUP { file = "braf\braf_factions\addons\main\functions\fn_thugsequipvestCUP.sqf"; }; + class thugsequipshotgunCUP { + file = "braf\braf_factions\addons\main\functions\fn_thugsequipshotgunCUP.sqf"; + }; + class thugsequipsmgCUP { + file = "braf\braf_factions\addons\main\functions\fn_thugsequipsmgCUP.sqf"; + }; + class thugswearbikerCUP { + file = "braf\braf_factions\addons\main\functions\fn_thugswearbikerCUP.sqf"; + }; }; }; }; diff --git a/addons/main/functions/fn_thugsequippistolCUP.sqf b/addons/main/functions/fn_thugsequippistolCUP.sqf index 18f421d..7230cab 100644 --- a/addons/main/functions/fn_thugsequippistolCUP.sqf +++ b/addons/main/functions/fn_thugsequippistolCUP.sqf @@ -1,6 +1,6 @@ params["_unit"]; -Pistol = [ +_pistol = [ "hgun_ACPC2_F", "hgun_Rook40_F", "hgun_P07_blk_F", @@ -23,6 +23,17 @@ Pistol = [ "CUP_hgun_TT" ]; +_currentMagazine = getArray ( configFile >> "CfgWeapons" >> primaryWeapon _unit >> "magazines" ); + + //Remove all current weapon magazines + { + _unit removeMagazines _x; + }forEach _currentMagazine; +_definedWeapon = (selectRandom _pistol); +_unit addWeaponGlobal _definedWeapon; + +_compatibleMagazines = compatibleMagazines _definedWeapon; + +_magazine = (selectRandom _compatibleMagazines); +_unit addMagazines [_magazine, 6]; -_unit addSecondaryWeaponItem (selectRandom Pistol); -_unit [Pistol] call BIS_fnc_compatibleMagazines; diff --git a/addons/main/functions/fn_thugsequiprifleCUP.sqf b/addons/main/functions/fn_thugsequiprifleCUP.sqf index 8e2fe05..9e38910 100644 --- a/addons/main/functions/fn_thugsequiprifleCUP.sqf +++ b/addons/main/functions/fn_thugsequiprifleCUP.sqf @@ -1,10 +1,27 @@ + params["_unit"]; -Weapon = [ - "Braf_MT12", - "braf_boito_14_oldstock", - "braf_boito_14_nostock", - "braf_boito_20_oldstock", +magazineBlacklist = [ + "braf_30Rnd_556x45_Blank", + "CUP_100Rnd_TE1_Green_Tracer_556x45_BetaCMag_ar15", + "CUP_100Rnd_TE1_Red_Tracer_556x45_BetaCMag_ar15", + "CUP_100Rnd_TE1_Yellow_Tracer_556x45_BetaCMag_ar15", + "CUP_100Rnd_556x45_BetaCMag_ar15", + "150Rnd_556x45_Drum_Green_Mag_F", + "150Rnd_556x45_Drum_Mag_F", + "150Rnd_556x45_Drum_Sand_Mag_F", + "150Rnd_556x45_Drum_Green_Mag_Tracer_F", + "150Rnd_556x45_Drum_Mag_Tracer_F", + "150Rnd_556x45_Drum_Sand_Mag_Tracer_F", + "braf_20Rnd_762x51_Blank", + "braf_30Rnd_556x45_HK_festim", + "braf_sig_556x45_festim" + + ]; + + + +_weapon = [ "Braf_m16a1_carbine_9mm", "Braf_m16a1_carbine", "Braf_m16a1e1", @@ -25,7 +42,6 @@ Weapon = [ "braf_factions_lapa_Desert", "braf_factions_lapa_green", "Braf_Lapa", - "Braf_Mekanika_URU_v1", "braf_factions_md1_hiaf", "braf_factions_fal_hiaf", "CUP_arifle_ACR_blk_556", @@ -52,23 +68,23 @@ Weapon = [ "CUP_arifle_G3A3_modern_ris_black", "CUP_arifle_Galil_SAR_black", "CUP_arifle_HK416_CQB_Black", - "CUP_sgun_M1014", - "CUP_sgun_M1014_vfg", - "CUP_smg_M3A1", - "CUP_smg_M3A1_blk", "CUP_arifle_M4A1_black", "CUP_arifle_M4A3_black", - "CUP_smg_Mac10", - "CUP_smg_MP5A5_Rail", - "CUP_smg_MP5A5_Rail_VFG", - "CUP_smg_MP7", - "CUP_smg_vityaz", "CUP_arifle_Sa58s", - "CUP_smg_SA61", "CUP_arifle_SR3M_Vikhr", - "CUP_smg_UZI", "CUP_arifle_xm29_ke_blk" ]; -_unit addPrimaryWeaponItem (selectRandom Weapon); -_unit [Weapon] call BIS_fnc_compatibleMagazines; \ No newline at end of file +_currentMagazine = getArray ( configFile >> "CfgWeapons" >> primaryWeapon _unit >> "magazines" ); + + //Remove all current weapon magazines + { + _unit removeMagazines _x; + }forEach _currentMagazine; +_definedWeapon = (selectRandom _weapon); +_unit addWeaponGlobal _definedWeapon; + +_compatibleMagazines = compatibleMagazines _definedWeapon; +_compatibleMagazines = _compatibleMagazines - magazineBlacklist +_magazine = (selectRandom _compatibleMagazines); +_unit addMagazines [_magazine, 6]; \ No newline at end of file diff --git a/addons/main/functions/fn_thugsequipshotgunCUP.sqf b/addons/main/functions/fn_thugsequipshotgunCUP.sqf new file mode 100644 index 0000000..b560b58 --- /dev/null +++ b/addons/main/functions/fn_thugsequipshotgunCUP.sqf @@ -0,0 +1,27 @@ +params["_unit"]; + +magazineBlacklist = ["BRAF_Boito_5Rnd_riot","BRAF_Boito_7Rnd_riot"] + +_weapon = [ + + "braf_boito_14_oldstock", + "braf_boito_14_nostock", + "braf_boito_20_oldstock", + "CUP_sgun_M1014", + "CUP_sgun_M1014_vfg" +]; + +_currentMagazine = getArray ( configFile >> "CfgWeapons" >> primaryWeapon _unit >> "magazines" ); + + //Remove all current weapon magazines + { + _unit removeMagazines _x; + }forEach _currentMagazine; +_definedWeapon = (selectRandom _weapon); +_unit addWeaponGlobal _definedWeapon; + +_compatibleMagazines = compatibleMagazines _definedWeapon; +_compatibleMagazines = _compatibleMagazines - magazineBlacklist + +_magazine = (selectRandom _compatibleMagazines); +_unit addMagazines [_magazine, 6]; \ No newline at end of file diff --git a/addons/main/functions/fn_thugsequipsmgCUP.sqf b/addons/main/functions/fn_thugsequipsmgCUP.sqf new file mode 100644 index 0000000..71fc0f7 --- /dev/null +++ b/addons/main/functions/fn_thugsequipsmgCUP.sqf @@ -0,0 +1,30 @@ +params["_unit"]; + +_weapon = [ + "Braf_MT12", + "Braf_m16a1_carbine_9mm", + "Braf_Mekanika_URU_v1", + "CUP_smg_M3A1", + "CUP_smg_M3A1_blk", + "CUP_smg_Mac10", + "CUP_smg_MP5A5_Rail", + "CUP_smg_MP5A5_Rail_VFG", + "CUP_smg_MP7", + "CUP_smg_vityaz", + "CUP_smg_SA61", + "CUP_smg_UZI" +]; + +_currentMagazine = getArray ( configFile >> "CfgWeapons" >> primaryWeapon _unit >> "magazines" ); + + //Remove all current weapon magazines + { + _unit removeMagazines _x; + }forEach _currentMagazine; +_definedWeapon = (selectRandom _weapon); +_unit addWeaponGlobal _definedWeapon; + +_compatibleMagazines = compatibleMagazines _definedWeapon; + +_magazine = (selectRandom _compatibleMagazines); +_unit addMagazines [_magazine, 6]; \ No newline at end of file diff --git a/addons/main/functions/fn_thugsequipsniperCUP.sqf b/addons/main/functions/fn_thugsequipsniperCUP.sqf index 5aa5f51..6c08cc0 100644 --- a/addons/main/functions/fn_thugsequipsniperCUP.sqf +++ b/addons/main/functions/fn_thugsequipsniperCUP.sqf @@ -1,6 +1,24 @@ params["_unit"]; -Sniper = [ +magazineBlacklist = [ + "braf_30Rnd_556x45_Blank", + "CUP_100Rnd_TE1_Green_Tracer_556x45_BetaCMag_ar15", + "CUP_100Rnd_TE1_Red_Tracer_556x45_BetaCMag_ar15", + "CUP_100Rnd_TE1_Yellow_Tracer_556x45_BetaCMag_ar15", + "CUP_100Rnd_556x45_BetaCMag_ar15", + "150Rnd_556x45_Drum_Green_Mag_F", + "150Rnd_556x45_Drum_Mag_F", + "150Rnd_556x45_Drum_Sand_Mag_F", + "150Rnd_556x45_Drum_Green_Mag_Tracer_F", + "150Rnd_556x45_Drum_Mag_Tracer_F", + "150Rnd_556x45_Drum_Sand_Mag_Tracer_F", + "braf_20Rnd_762x51_Blank", + "braf_30Rnd_556x45_HK_festim", + "braf_sig_556x45_festim" + + ]; + +_sniper = [ "Braf_aglc_scope", "braf_factions_aglc_verde_scope", "CUP_srifle_M14_DMR", @@ -11,5 +29,17 @@ Sniper = [ ]; -_unit addSecondaryWeaponItem (selectRandom Sniper); -_unit [Sniper] call BIS_fnc_compatibleMagazines; +_currentMagazine = getArray ( configFile >> "CfgWeapons" >> primaryWeapon _unit >> "magazines" ); + + //Remove all current weapon magazines + { + _unit removeMagazines _x; + }forEach _currentMagazine; +_definedWeapon = (selectRandom _sniper); +_unit addWeaponGlobal _definedWeapon; + +_compatibleMagazines = compatibleMagazines _definedWeapon; +_compatibleMagazines = _compatibleMagazines - magazineBlacklist + +_magazine = (selectRandom _compatibleMagazines); +_unit addMagazines [_magazine, 6]; diff --git a/addons/main/functions/fn_thugswearCUP.sqf b/addons/main/functions/fn_thugswearCUP.sqf index 9190905..fe62bd1 100644 --- a/addons/main/functions/fn_thugswearCUP.sqf +++ b/addons/main/functions/fn_thugswearCUP.sqf @@ -20,6 +20,7 @@ suits = [ "CUP_U_I_GUE_Anorak_03", "CUP_U_I_GUE_Anorak_02", "CUP_U_I_GUE_Anorak_01", + "braf_thug_irregular_army_tshirt_black_uniform", "CUP_U_I_GUE_Flecktarn3" ]; @@ -72,12 +73,7 @@ headgears = [ "H_Shemag_olive", "H_Bandanna_surfer_blk", "H_Bandanna_blu", - "H_Bandanna_blu", - "H_RacingHelmet_1_black_F", - "H_RacingHelmet_1_white_F", - "H_RacingHelmet_1_red_F", - "H_RacingHelmet_1_orange_F", - "H_RacingHelmet_1_blue_F" + "H_Bandanna_blu" ]; facewears = [ diff --git a/addons/main/functions/fn_thugswearbikerCUP.sqf b/addons/main/functions/fn_thugswearbikerCUP.sqf new file mode 100644 index 0000000..7c7ee69 --- /dev/null +++ b/addons/main/functions/fn_thugswearbikerCUP.sqf @@ -0,0 +1,106 @@ +params["_unit"]; + +suits = [ + "U_C_Poloshirt_blue", + "U_C_Poloshirt_burgundy", + "U_C_Poloshirt_salmon", + "U_C_Poloshirt_tricolour", + "U_BG_Guerilla2_1", + "U_I_C_Soldier_Bandit_4_F", + "U_I_C_Soldier_Bandit_1_F", + "U_I_C_Soldier_Bandit_2_F", + "U_I_C_Soldier_Bandit_5_F", + "U_I_C_Soldier_Bandit_3_F", + "U_I_C_Soldier_Para_4_F", + "U_C_man_sport_2_F", + "U_C_Man_casual_5_F", + "U_C_ArtTShirt_01_v4_F", + "U_C_Uniform_Farmer_01_F", + "U_I_L_Uniform_01_tshirt_olive_F", + "CUP_U_I_GUE_Anorak_03", + "CUP_U_I_GUE_Anorak_02", + "CUP_U_I_GUE_Anorak_01", + "braf_thug_irregular_army_tshirt_black_uniform", + "CUP_U_I_GUE_Flecktarn3" + +]; + +headgears = [ + "", + "", + "", + "", + "H_RacingHelmet_1_black_F", + "H_RacingHelmet_1_white_F", + "H_RacingHelmet_1_red_F", + "H_RacingHelmet_1_orange_F", + "H_RacingHelmet_1_blue_F" +]; + +facewears = [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "G_Aviator", + "G_Shades_Black", + "G_Shades_Blue", + "G_Shades_Green", + "G_Shades_Red", + "G_Spectacles", + "G_Sport_Blackred", + "G_Squares_Tinted", + "G_Squares", + "G_Spectacles_Tinted", + "G_Bandanna_shades", + "G_Bandanna_aviator", + "G_Bandanna_blk", + "G_Bandanna_CandySkull", + "G_Bandanna_Skull1", + "G_Bandanna_Syndikat1", + "G_Bandanna_Skull2", + "G_Bandanna_Syndikat2", + "CUP_G_RUS_Ratnik_Balaclava_Green_2", + "CUP_G_RUS_Ratnik_Balaclava_Olive_1", + "CUP_G_PMC_Facewrap_Tropical_Glasses_Ember", + "CUP_G_Scarf_Face_Grn", + "CUP_G_Scarf_Face_Red", + "CUP_G_Scarf_Face_Tan", + "CUP_G_Oakleys_Embr", + "CUP_G_TK_RoundGlasses_blk", + "CUP_FR_NeckScarf", + "CUP_G_WristWatch", + "G_EyeProtectors_F" +]; +_unit forceAddUniform (selectRandom suits); +_unit addHeadgear (selectRandom headgears); +_unit addGoggles (selectRandom facewears); \ No newline at end of file diff --git a/addons/soft/CUP/Thugs_veh.hpp b/addons/soft/CUP/Thugs_veh.hpp new file mode 100644 index 0000000..c15c5eb --- /dev/null +++ b/addons/soft/CUP/Thugs_veh.hpp @@ -0,0 +1,64 @@ +class CUP_O_TT650_TKA; +class Braf_TT650_Thugs: CUP_O_TT650_TKA +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_biker"; + skipWhenMissingDependencies = 1; +}; +class CUP_C_Datsun_4seat; +class braf_datsun2_thugs: CUP_C_Datsun_4seat +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_smg"; + skipWhenMissingDependencies = 1; +}; +class CUP_C_Golf4_black_Civ; +class braf_golf2_thugs: CUP_C_Golf4_black_Civ +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_smg"; + skipWhenMissingDependencies = 1; +}; +class CUP_C_Golf4_camodark_Civ; +class braf_golf_thugs: CUP_C_Golf4_camodark_Civ +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_smg"; + skipWhenMissingDependencies = 1; +}; +class CUP_C_Skoda_CR_CIV; +class braf_skoda_thugs: CUP_C_Skoda_CR_CIV +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_smg"; + skipWhenMissingDependencies = 1; +}; +class CUP_C_Datsun_Tubeframe; +class braf_datsun_thugs: CUP_C_Datsun_Tubeframe +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_smg"; + skipWhenMissingDependencies = 1; +}; +class CUP_C_SUV_TK; +class braf_SUV_thugs:CUP_C_SUV_TK +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_smg"; + skipWhenMissingDependencies = 1; +}; +class CUP_C_Lada_GreenTK_CIV; +class braf_lada_thugs: CUP_C_Lada_GreenTK_CIV +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_smg"; + skipWhenMissingDependencies = 1; +}; \ No newline at end of file diff --git a/addons/soft/CUP/config.cpp b/addons/soft/CUP/config.cpp new file mode 100644 index 0000000..0a2f49f --- /dev/null +++ b/addons/soft/CUP/config.cpp @@ -0,0 +1,31 @@ +class CfgPatches +{ + class braf_factions_soft_CUP + { + author = "BRAF Team"; + addonRootClass = "BRAF_Soft"; + skipWhenMissingDependencies = 1; + requiredAddons[] = { + "braf_soft", + "braf_factions_soft", + "CUP_BaseConfigs" + }; + requiredVersion = 0.1; + units[] = { + "Braf_TT650_Thugs", + "braf_datsun2_thugs", + "braf_golf2_thugs", + "braf_golf_thugs", + "braf_skoda_thugs", + "braf_datsun_thugs", + "braf_SUV_thugs", + "braf_lada_thugs" + + }; + weapons[] = {}; + }; +}; +class CfgVehicles +{ +#include "Thugs_veh.hpp" +}; \ No newline at end of file diff --git a/addons/soft/Thugs_veh.hpp b/addons/soft/Thugs_veh.hpp new file mode 100644 index 0000000..e619ae6 --- /dev/null +++ b/addons/soft/Thugs_veh.hpp @@ -0,0 +1,25 @@ + +class C_Offroad_02_unarmed_F; +class braf_offroad_thugs: C_Offroad_02_unarmed_F +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_smg"; + skipWhenMissingDependencies = 1; +}; +class C_Offroad_01_F; +class braf_jeep_thugs: C_Offroad_01_F +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_smg"; + skipWhenMissingDependencies = 1; +}; +class braf_voadeira_03; +class braf_voadeira_thugs: braf_voadeira_03 +{ + side = 0; + faction = "BRAF_Thugs" ; + crew = "braf_factions_thug_smg"; + skipWhenMissingDependencies = 1; +}; \ No newline at end of file diff --git a/addons/soft/config.cpp b/addons/soft/config.cpp index c243e45..f44c7d8 100644 --- a/addons/soft/config.cpp +++ b/addons/soft/config.cpp @@ -5,7 +5,7 @@ class CfgPatches author = "BRAF Team"; addonRootClass = "BRAF_Soft"; requiredAddons[] = { - "braf_soft", + "braf_soft" }; requiredVersion = 0.1; units[] = { @@ -25,11 +25,14 @@ class CfgPatches "braf_am21_Covered", "braf_am21_opened", "braf_am21_cargo", + // THUGS + "braf_offroad_thugs", + "braf_jeep_thugs", + "braf_voadeira_thugs" }; weapons[] = {}; }; }; - class CfgVehicles { class braf_worker_covered; @@ -50,4 +53,5 @@ class CfgVehicles #include "AM11_base.hpp" #include "v_cratenia.hpp" +#include "Thugs_veh.hpp" }; \ No newline at end of file