Skip to content

Commit

Permalink
Merge pull request #341 from Azodion/CUP_FFP
Browse files Browse the repository at this point in the history
CUP SFP Finnish Forces Pack
  • Loading branch information
stutpip123 authored Oct 21, 2024
2 parents dcbc50f + 810378f commit 9971e7b
Show file tree
Hide file tree
Showing 19 changed files with 4,706 additions and 2 deletions.
1,336 changes: 1,336 additions & 0 deletions A3A/addons/core/Templates/Templates/CUP/CUP_AI_HAFM.sqf

Large diffs are not rendered by default.

10 changes: 9 additions & 1 deletion A3A/addons/core/Templates/Templates/CUP/templates.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -260,15 +260,23 @@
file = "CUP_AI_LDF";
};

class HAFM_Base : CUP_Base
{
requiredAddons[] = {"CUP_Creatures_People_Civil_Russia", "CUP_BaseConfigs", "CUP_AirVehicles_Core", "HAFM_Acc"}; // units, weapons, vehicles
//CUP NorAF

class NorAF_Base : CUP_Base
{
requiredAddons[] = {"CUP_Creatures_People_Civil_Russia", "CUP_BaseConfigs", "CUP_AirVehicles_Core", "Flex_CUP_NOR_Faction"}; // units, weapons, vehicles
//requiredAddons[] = {"CUP_AirVehicles_Core"}; // vehicles requires units & weapons
priority = 61;
};

class CUP_HAFM : HAFM_Base
{
side = "Occ";
flagTexture = "\A3\ui_f\data\map\markers\flags\Greece_ca.paa";
name = "CUP HAFM";
file = "CUP_AI_HAFM";
class CUP_NorAF_Temperate : NorAF_Base
{
side = "Occ";
Expand Down
1,372 changes: 1,372 additions & 0 deletions A3A/addons/core/Templates/Templates/SWE/FFP_AI_FIN_Arctic.sqf

Large diffs are not rendered by default.

1,366 changes: 1,366 additions & 0 deletions A3A/addons/core/Templates/Templates/SWE/FFP_AI_FIN_Temperate.sqf

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
["attributesVehicles", [

["ffp_bv206", ["cost", 20]]

]] call _fnc_saveToTemplate;
24 changes: 24 additions & 0 deletions A3A/addons/core/Templates/Templates/SWE/templates.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,28 @@
name = "SFP Sweden Winter";
file = "SFP_AI_SWE_Arctic";
climate[] = {"arctic"};
};

class FFP_Base : SFP_Base
{
requiredAddons[] = {"CUP_Creatures_People_Civil_Russia", "CUP_BaseConfigs", "CUP_AirVehicles_Core", "sfp_soldiers", "Finnish_Forces_Pack"}; // units, weapons, vehicles
basepath = QPATHTOFOLDER(Templates\Templates\SWE);
logo = "\ffp_config\data\flag\fin_flag_map_ca.paa";
priority = 90;
};

class FFP_Fin_Temperate : FFP_Base
{
side = "Occ";
flagTexture = "\ffp_config\data\flag\fin_flag_ca.paa";
name = "FFP Finland Temperate";
file = "FFP_AI_FIN_Temperate";
climate[] = {"temperate","tropical"};
};

class FFP_Fin_Arctic : FFP_Fin_Temperate
{
name = "FFP Finland Winter";
file = "FFP_AI_FIN_Arctic";
climate[] = {"arctic"};
};
38 changes: 38 additions & 0 deletions A3A/addons/hals/Addons/store/config.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ class cfgHALsStore
#include "config\fow.hpp"
#include "config\eaw.hpp"
#include "config\cwr.hpp"
#include "config\ffp.hpp"
#include "config\ylarms.hpp"
#include "config\ProjInfAD.hpp"
#include "config\JCAArsenal.hpp"
Expand Down Expand Up @@ -833,6 +834,39 @@ class cfgHALsStore
"opticsCWR"
};
};
class ffpstock
{
displayName = $STR_ARMS_DEALER_STORE;
categories[] = {
"handgunsffp",
"mgffp",
"riflesffp",
"sniperriflesffp",
"launchersffp",
"launchermagazinesffp",
"magazinesffp",
"opticsffp"
};
};
class hafmstock
{
displayName = $STR_ARMS_DEALER_STORE;
categories[] = {
"handgunsHAFM",
"smgHAFM",
"mgHAFM",
"riflesHAFM",
"sniperriflesHAFM",
"launchersHAFM",
"launchermagazinesHAFM",
"muzzlesHAFM",
"magazinesHAFM",
"pointersHAFM",
"specialweaponsHAFM",
"opticsHAFM",
"underbarrelHAFM"
};
};
class ylarmsstock
{
displayName = $STR_ARMS_DEALER_STORE;
Expand All @@ -848,6 +882,8 @@ class cfgHALsStore
"magazinesYLA",
"underbarrelYLA",
"specialWeaponsYLA"
};
};
class projinf_stock
{
displayName = $STR_ARMS_DEALER_STORE;
Expand All @@ -859,6 +895,8 @@ class cfgHALsStore
"opticsProjInfAD",
"magazinesProjInfAD",
"underbarrelProjInfAD"
};
};
class jca_stock
{
displayName = $STR_ARMS_DEALER_STORE;
Expand Down
82 changes: 82 additions & 0 deletions A3A/addons/hals/Addons/store/config/ffp.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
//FFP Finland
class handgunsffp{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_ffp", localize "STR_A3AU_handguns"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\handgun_ca.paa";

ITEM(ffp_pist2008, 110, PISTOL_STOCK); //AMMO: ffp_17rnd_9x9_mag
};

class mgffp{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_ffp", localize "STR_A3AU_mgs"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\primaryWeapon_ca.paa";

ITEM(ffp_KVKK, 600, RIFLE_STOCK); //Ammo: ffp_100Rnd_KVKK_mag/ffp_100Rnd_KVKK_mag_Tracer
ITEM(ffp_kk_pkm, 650, RIFLE_STOCK); //Ammo: ffp_100Rnd_762x54_pkm/ffp_100Rnd_762x54_pkm_Tracer

};

class riflesffp{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_ffp", localize "STR_A3AU_rifles"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\primaryWeapon_ca.paa";

ITEM(ffp_rk62, 325, RIFLE_STOCK); //Ammo: ffp_30Rnd_762x39/ffp_30Rnd_762x39_tracer
ITEM(ffp_rk95, 445, RIFLE_STOCK); //Ammo: ffp_30Rnd_762x39/ffp_30Rnd_762x39_tracer

};

class sniperriflesffp{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_ffp", localize "STR_A3AU_sniperRifles"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\primaryWeapon_ca.paa";

ITEM(ffp_TKiv2000, 800, RIFLE_STOCK); // Ammo: ffp_5Rnd_TKiv2000_mag

};

class launchersffp{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_ffp", localize "STR_A3AU_launchers"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\secondaryWeapon_ca.paa";

ITEM(ffp_nlaw, 750, 25); // ffp_nlaw_mag
ITEM(ffp_Apilas, 500, 25);
ITEM(ffp_66kes12, 400, 25);
ITEM(ffp_66kes12_rak, 400, 25);
ITEM(ffp_kes88, 400, 25);
ITEM(ffp_ito15, 750, 25); // ffp_ito15_mag

};

class launchermagazinesffp{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_ffp", localize "STR_A3AU_launcherAmmo"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\cargoMag_ca.paa";

ITEM(ffp_nlaw_mag, 150, 15);
ITEM(ffp_ito15_mag, 200, 15);

};

class magazinesffp{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_ffp", localize "STR_A3AU_magazines"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\cargoMag_ca.paa";

ITEM(ffp_5Rnd_TKiv2000_mag, 200, MZ_STOCK);
ITEM(ffp_100Rnd_KVKK_mag, 120, MZ_STOCK);
ITEM(ffp_100Rnd_KVKK_mag_Tracer, 120, MZ_STOCK);
ITEM(ffp_100Rnd_762x54_pkm, 120, MZ_STOCK);
ITEM(ffp_100Rnd_762x54_pkm_Tracer, 120, MZ_STOCK);
ITEM(ffp_30Rnd_762x39, 100, MZ_STOCK);
ITEM(ffp_30Rnd_762x39_tracer, 100, MZ_STOCK);
ITEM(ffp_17rnd_9x9_mag, 40, MZ_STOCK);

};

class opticsffp{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_ffp", localize "STR_A3AU_sights"]);
picture = "\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\ItemOptic_ca.paa";

ITEM(ffp_ta11_2d, 250, MAGAZINE_STOCK);
ITEM(ffp_ta11_3d, 250, MAGAZINE_STOCK);
ITEM(ffp_pp04, 150, MAGAZINE_STOCK);
ITEM(ffp_pp09, 150, MAGAZINE_STOCK);
ITEM(ffp_optic_TKiv2000, 450, MAGAZINE_STOCK);

};
149 changes: 149 additions & 0 deletions A3A/addons/hals/Addons/store/config/hafm.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,149 @@
class handgunsHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_handguns"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\handgun_ca.paa";

ITEM(HAFM_Colt1911, 200, PISTOL_STOCK);// HAFM_1911_Mag
ITEM(HAFM_G17C, 150, PISTOL_STOCK);// HAFM_G17C_Mag
ITEM(HAFM_sig226, 170, PISTOL_STOCK);// HAFM_sig226
};

class smgHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_smgs"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\primaryWeapon_ca.paa";

ITEM(HAFM_MP5A4, 200, RIFLE_STOCK);// HAFM_MP5A4_Mag
ITEM(HAFM_MP5A4_EOD, 500, RIFLE_STOCK);// UGL | HAFM_MP5A4_Mag
};

class mgHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_mgs"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\primaryWeapon_ca.paa";

ITEM(HAFM_M60E4, 1250, RIFLE_STOCK);// HAFM_M60_762
ITEM(HAFM_M249, 1250, RIFLE_STOCK);// HAFM_M249_556
ITEM(HAFM_HK21, 1400, RIFLE_STOCK);// HAFM_HK21_762
};

class riflesHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_rifles"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\primaryWeapon_ca.paa";
ITEM(HAFM_m4dd_short, 800, RIFLE_STOCK);// hafm_mag_30Rnd_556x45_M855_Stanag/hafm_mag_30Rnd_556x45_M855A1_Stanag/hafm_mag_30Rnd_556x45_Mk318_Stanag
ITEM(HAFM_m4ddGL_short, 1200, RIFLE_STOCK);// UGL | hafm_mag_30Rnd_556x45_M855_Stanag/hafm_mag_30Rnd_556x45_M855A1_Stanag/hafm_mag_30Rnd_556x45_Mk318_Stanag
ITEM(HAFM_m4ddGL320_short, 1250, RIFLE_STOCK);// Better UGL? | hafm_mag_30Rnd_556x45_M855_Stanag/hafm_mag_30Rnd_556x45_M855A1_Stanag/hafm_mag_30Rnd_556x45_Mk318_Stanag
ITEM(HAFM_m4ddv5_long, 900, RIFLE_STOCK);// M4DD But Heavier and Longer Shaft | hafm_mag_30Rnd_556x45_M855_Stanag/hafm_mag_30Rnd_556x45_M855A1_Stanag/hafm_mag_30Rnd_556x45_Mk318_Stanag
ITEM(HAFM_G36C, 800, RIFLE_STOCK);// HAFM_G36C_mag
ITEM(HAFM_G36C_M320, 1200, RIFLE_STOCK);// UGL | HAFM_G36C_mag
ITEM(HAFM_G3A3, 800, RIFLE_STOCK);// HAFM_20rnd_G3A3_762
ITEM(HAFM_G3A3_GL, 1200, RIFLE_STOCK);// UGL | HAFM_20rnd_G3A3_762
ITEM(HAFM_G3A3RIS, 900, RIFLE_STOCK);// HAFM_20rnd_G3A3_762
ITEM(HAFM_G3A4, 800, RIFLE_STOCK);// HAFM_20rnd_G3A3_762
ITEM(HAFM_G3A3_SG, 800, RIFLE_STOCK);// HAFM_20rnd_G3A3_762
ITEM(HAFM_G3A3, 800, RIFLE_STOCK);// HAFM_20rnd_G3A3_762
ITEM(HAFM_G3A3, 800, RIFLE_STOCK);// HAFM_20rnd_G3A3_762
ITEM(HAFM_HK416, 800, RIFLE_STOCK);// M4DD But Cooler Looking | hafm_mag_30Rnd_556x45_M855_Stanag/hafm_mag_30Rnd_556x45_M855A1_Stanag/hafm_mag_30Rnd_556x45_Mk318_Stanag
ITEM(HAFM_HK416GL, 1250, RIFLE_STOCK);// M4DD But Cooler Looking and UGL | hafm_mag_30Rnd_556x45_M855_Stanag/hafm_mag_30Rnd_556x45_M855A1_Stanag/hafm_mag_30Rnd_556x45_Mk318_Stanag
ITEM(HAFM_M4A1, 800, RIFLE_STOCK);// M4DD But Older | hafm_mag_30Rnd_556x45_M855_Stanag/hafm_mag_30Rnd_556x45_M855A1_Stanag/hafm_mag_30Rnd_556x45_Mk318_Stanag
ITEM(HAFM_M4A1_EMPTY, 800, RIFLE_STOCK);// M4DD But Older | hafm_mag_30Rnd_556x45_M855_Stanag/hafm_mag_30Rnd_556x45_M855A1_Stanag/hafm_mag_30Rnd_556x45_Mk318_Stanag
ITEM(HAFM_M4A1_M203, 1200, RIFLE_STOCK);// M4DD But Older and UGL | hafm_mag_30Rnd_556x45_M855_Stanag/hafm_mag_30Rnd_556x45_M855A1_Stanag/hafm_mag_30Rnd_556x45_Mk318_Stanag
};

class sniperriflesHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_sniperRifles"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\primaryWeapon_ca.paa";

ITEM(HAFM_M14_EMPTY, 2550, RIFLE_STOCK);// HAFM_20rnd_M14_762
ITEM(HAFM_M110_EMPTY, 3250, RIFLE_STOCK);// HAFM_20rnd_M110_762
ITEM(HAFM_M107_EMPTY, 4500, RIFLE_STOCK);// HAFM_10rnd_M107
};

class launchersHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_launchers"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\secondaryWeapon_ca.paa";
ITEM(hafm_gustav, 1250, 20);
ITEM(HAFM_fgm148, 3250, 3);// hafm_fgm148_magazine_AT
ITEM(HAFM_M136_Loaded, 750, LAUNCHER_STOCK);// Disposable
ITEM(HAFM_M136_hedp_Loaded, 750, LAUNCHER_STOCK);// Disposable
ITEM(HAFM_M136_hp_Loaded, 750, LAUNCHER_STOCK);// Disposable
ITEM(HAFM_M72_Loaded, 750, LAUNCHER_STOCK);// Disposable
};

class launchermagazinesHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_launcherAmmo"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\cargoMag_ca.paa";
ITEM(hafm_fgm148_magazine_AT, 300, 10);
};

class muzzlesHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_muzzles"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\itemMuzzle_ca.paa";

ITEM(HAFM_M4_muzzle_snds_556, 50, MZ_STOCK);
ITEM(HAFM_M249_muzzle, 50, MZ_STOCK);
ITEM(HAFM_Mad_556_muzzle, 50, MZ_STOCK);
ITEM(HAFM_G3_762_muzzle, 60, MZ_STOCK);
ITEM(HAFM_Gem_762_muzzle, 60, MZ_STOCK);
ITEM(HAFM_MP5_muzzle_snds_9mm, 25, MZ_STOCK);
};

class magazinesHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_magazines"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\cargoMag_ca.paa";

ITEM(hafm_mag_30Rnd_556x45_M855_Stanag, 100, MZ_STOCK);
ITEM(hafm_mag_30Rnd_556x45_M855A1_Stanag, 100, MZ_STOCK);
ITEM(hafm_mag_30Rnd_556x45_Mk318_Stanag, 100, MZ_STOCK);
ITEM(hafm_mag_arrow, 80, MZ_STOCK);
ITEM(hafm_mag_arrow_exp, 400, MZ_STOCK);
ITEM(HAFM_G36C, 100, MZ_STOCK);
ITEM(HAFM_20rnd_G3A3_762, 150, MZ_STOCK);
ITEM(HAFM_HK21_762, 150, MZ_STOCK);
ITEM(HAFM_20rnd_M14_762, 150, MZ_STOCK);
ITEM(HAFM_20rnd_M110_762, 150, MZ_STOCK);
ITEM(HAFM_M249_556, 150, MZ_STOCK);
ITEM(HAFM_M60_762, 150, MZ_STOCK);
ITEM(HAFM_MP5A4_Mag, 80, MZ_STOCK);
ITEM(HAFM_10rnd_M107, 400, MZ_STOCK);
};

class pointersHAFM{
displayName = __EVAL(formatText ["%1 %2 %3 %4 %5", localize "STR_A3AU_hafm", localize "STR_A3AU_barret", localize "STR_A3AU_handles", localize "STR_A3AU_and", localize "STR_A3AU_bipods"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\itemAcc_ca.paa";

ITEM(HAFM_acc_PEQ15_side, 100, PN_STOCK);
ITEM(HAFM_flashlight_trl, 70, PN_STOCK);
ITEM(HAFM_acc_flashlight_mp5, 40, PN_STOCK);
};

class specialweaponsHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_specialWeapons"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\primaryWeapon_ca.paa";
ITEM(hafm_crossbow, 300, RIFLE_STOCK);// Really Cool | hafm_mag_arrow/hafm_mag_arrow_exp
};

class opticsHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_sights"]);
picture = "\A3\Ui_f\data\GUI\Rsc\RscDisplayArsenal\ItemOptic_ca.paa";
ITEM(HAFM_acog_rmr, 200, 100);
ITEM(HAFM_acog_ard_rmr, 230, 100);
ITEM(HAFM_Mark_Scope, 300, 100);
ITEM(HAFM_Comp_m3, 150, 100);
ITEM(HAFM_Comp_m3_low, 150, 100);
ITEM(HAFM_Comp_m4, 150, 100);
ITEM(HAFM_optic_ELCAN, 200, 100);
ITEM(HAFM_Elcan_Spectre, 200, 100);
ITEM(HAFM_Elcan_Spectre_ARD, 200, 100);
ITEM(HAFM_Elcan_Spectre_ARD_RMR, 230, 100);
ITEM(HAFM_Eotech_553, 150, 100);
ITEM(HAFM_Eotech_553_tan, 150, 100);
ITEM(HAFM_scope_optic_m107, 300, 100);
ITEM(HAFM_M68, 150, 100);
ITEM(HAFM_M110v2_scope, 300, 100);
ITEM(HAFM_Mk4_LRT, 500, 100);
};

class underbarrelHAFM{
displayName = __EVAL(formatText ["%1 %2", localize "STR_A3AU_hafm", localize "STR_A3AU_bagsStatics"]);
picture = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\itemBipod_ca.paa";

ITEM(HAFM_Harris_Bipod, 100, 50);
};
13 changes: 13 additions & 0 deletions A3A/addons/hals/Stringtable.xml
Original file line number Diff line number Diff line change
Expand Up @@ -861,6 +861,19 @@
<Korean>Cold War ReArmed</Korean>
<French>Cold War ReArmed</French>
</Key>
<Key ID="STR_A3AU_ffp">
<Original>FFP</Original>
<English>FFP</English>
<Russian>FFP</Russian>
<Korean>FFP</Korean>
<French>FFP</French>
</Key>
<Key ID="STR_A3AU_hafm">
<Original>HAFM</Original>
<English>HAFM</English>
<Russian>HAFM</Russian>
<Korean>HAFM</Korean>
<French>HAFM</French>
<Key ID="STR_A3AU_ylarms">
<Original>YLArms</Original>
<English>YLArms</English>
Expand Down
1 change: 1 addition & 0 deletions A3A/addons/logistics/CfgLogistics.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ class DOUBLES(ADDON,Nodes)
#include "Nodes\EAW.hpp"
#include "Nodes\FOW.hpp"
#include "Nodes\CWR.hpp"
#include "Nodes\HAFM.hpp"
};

class DOUBLES(ADDON,Cargo)
Expand Down
Loading

0 comments on commit 9971e7b

Please sign in to comment.