Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Chemical - Improve various aspects #597

Merged
Merged
Changes from 20 commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
8a0168c
save
MiszczuZPolski Sep 7, 2024
3ade69c
switch to events for gasmasks
MiszczuZPolski Sep 19, 2024
a7766eb
gas mask volume adjust
MiszczuZPolski Sep 20, 2024
10f5bcb
change gas zones to hashmap system inspired by ace fire addon
MiszczuZPolski Sep 20, 2024
676c917
remove diaglog
MiszczuZPolski Sep 20, 2024
7642c99
Update fnc_gasmodule.sqf
MiszczuZPolski Sep 20, 2024
b8cc05f
change handleMaskDur
MiszczuZPolski Sep 20, 2024
0655af0
more stuff
MiszczuZPolski Sep 20, 2024
5690ecf
working zones and seal action
MiszczuZPolski Sep 20, 2024
67c0674
cleanup
MiszczuZPolski Sep 20, 2024
e350ace
chem detector
MiszczuZPolski Sep 21, 2024
df36c69
ace actions to put on/ take off mask
MiszczuZPolski Sep 22, 2024
f08294f
more stuff
MiszczuZPolski Sep 22, 2024
7551ba8
Merge branch 'dev-Tomcat' into chemicalFix
MiszczuZPolski Oct 28, 2024
ea30ea6
EFFECTS
MiszczuZPolski Oct 28, 2024
3edf2ef
Update fnc_initEffects.sqf
MiszczuZPolski Oct 28, 2024
33ec12b
Merge branch 'chemicalFix' of https://github.com/MiszczuZPolski/KAM i…
MiszczuZPolski Nov 12, 2024
c42c76b
working gas detector
MiszczuZPolski Nov 12, 2024
18c80c1
update
MiszczuZPolski Nov 12, 2024
291bc93
tear gas weapon drop
MiszczuZPolski Nov 12, 2024
65aa5f1
Update addons/chemical/functions/fnc_showChemDetector.sqf
mazinskihenry Nov 25, 2024
3d432b8
Update addons/chemical/functions/fnc_showChemDetector.sqf
mazinskihenry Nov 25, 2024
d57cf59
stringtable
MiszczuZPolski Dec 2, 2024
8707b12
cleanup
MiszczuZPolski Dec 2, 2024
6e20050
Update fnc_showChemDetector.sqf
MiszczuZPolski Dec 2, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .hemtt/launch.toml
MiszczuZPolski marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -3,4 +3,6 @@ workshop = [
"450814997", # CBA_A3's Workshop ID
"463939057", # ACE3's Workshop ID
"2369477168", # Advanced Developer Tools's Workshop ID
]
"1645973522", #Intercept's Workshop ID
"1652506957" # ASP Workshop ID
]
25 changes: 11 additions & 14 deletions addons/chemical/CfgAmmo.hpp
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
class CfgAmmo
{
class CfgAmmo {

class SmokeShellArty;
class KAT_SmokeShellArty: SmokeShellArty{
class KAT_SmokeShellArty: SmokeShellArty {
smokeColor[] = {0,0,0,0};
};

class Smoke_82mm_AMOS_White;
class Sh_82mm_AMOS_Type0: Smoke_82mm_AMOS_White
{
class Sh_82mm_AMOS_Type0: Smoke_82mm_AMOS_White {
KAT_projectile = 1;
KAT_lifetime = 90;
KAT_radius = 10;
KAT_toxicLvL = 0;
KAT_toxicLvL = 1;
soundFakeFall[] = {"soundFakeFall0",0.25,"soundFakeFall1",0.25,"soundFakeFall2",0.25,"soundFakeFall3",0.25};
soundFakeFall0[] = {"a3\Sounds_F\weapons\falling_bomb\fall_01",3.16228,1,1000};
soundFakeFall1[] = {"a3\Sounds_F\weapons\falling_bomb\fall_02",3.16228,1,1000};
@@ -21,17 +20,16 @@ class CfgAmmo
whistleOnFire = 2;
submunitionAmmo = "KAT_SmokeShellArty";
};
class Sh_82mm_AMOS_TypeCS: Sh_82mm_AMOS_Type0
{

class Sh_82mm_AMOS_TypeCS: Sh_82mm_AMOS_Type0 {
KAT_projectile = 1;
KAT_lifetime = 60;
KAT_radius = 10;
KAT_toxicLvL = 1; //cs
KAT_toxicLvL = 0; //cs
};

class SmokeShell;
class KAT_G_M7A3: SmokeShell
{
class KAT_G_M7A3: SmokeShell {
KAT_csGas = 1;
model = QPATHTOF(ui\m7a3_throw.p3d);
dangerRadiusHit = -1;
@@ -58,7 +56,7 @@ class CfgAmmo
indirectHit = 0;
indirectHitRange = 0;
soundHit[] = {"A3\Sounds_F\weapons\smokeshell\smoke_3",1.25893,1,100};
explosionEffects = "KAT_GASTripEffect";
explosionEffects = "KAT_TripWireGasEffect";
CraterEffects = "";
soundTrigger[] = {"",1,1};
class CamShakeExplode {
@@ -115,9 +113,8 @@ class CfgAmmo
frequency = 5;
distance = 250;
};


};

class Mo_cluster_Bomb_01_F;
class KAT_CAS_M43_Ammo_sub: Mo_cluster_Bomb_01_F {
hit = 0;
22 changes: 11 additions & 11 deletions addons/chemical/CfgCloudlets.hpp
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
class CfgCloudlets {
class Default;
class ACE_GasTrip: Default {
class KAT_TripWireGas: Default {
lifeTime = 0;
beforeDestroyScript = QPATHTOF(functions\fnc_GasTripEffect.sqf);
};

class CAS_GAS_Explosion_FX_Script: Default {
class KAT_CAS_GAS_Explosion_FX_Script: Default {
lifeTime = 0;
beforeDestroyScript = QPATHTOF(functions\fnc_CASCreateGas.sqf);
};

class CAS_GAS_Explosion_FX: Default {
class KAT_CAS_GAS_Explosion_FX: Default {
interval = 0.03;
circleRadius = 0;
circleVelocity[] = {0,0,0};
@@ -63,7 +63,7 @@ class CfgCloudlets {
position[] = {0,0,0};
};

class CAS_GAS_FX: Default {
class KAT_CAS_GAS_FX: Default {
interval = 0.03;
circleRadius = 0;
circleVelocity[] = {0,0,0};
@@ -113,47 +113,47 @@ class CfgCloudlets {
};
};

class KAT_GASTripEffect {
class KAT_TripWireGasEffect {
class spawnGAS {
simulation = "particles";
type = "ACE_GasTrip";
type = "KAT_TripWireGas";
position = "explosionPos";
};
};

class KAT_GAS_ClusterExplosion {
class ExplosionEffect {
simulation = "particles";
type = "CAS_GAS_Explosion_FX";
type = "KAT_CAS_GAS_Explosion_FX";
position = "explosionPos";
lifeTime = 2;
particleFSLoop = 1;
};
class CAS_GAS_Effect {
simulation = "particles";
type = "CAS_GAS_FX";
type = "KAT_CAS_GAS_FX";
position = "explosionPos";
lifeTime = 240;
particleFSLoop = 1;
};
class GAS_Script {
simulation = "particles";
type = "CAS_GAS_Explosion_FX_Script";
type = "KAT_CAS_GAS_Explosion_FX_Script";
position = "explosionPos";
};
};

class KAT_CAS_R_HYDRA_Explosion {
class CAS_R_GAS_Effect {
simulation = "particles";
type = "CAS_GAS_FX";
type = "KAT_CAS_GAS_FX";
position = "explosionPos";
lifeTime = 240;
particleFSLoop = 1;
};
class R_GAS_Script {
simulation = "particles";
type = "CAS_GAS_Explosion_FX_Script";
type = "KAT_CAS_GAS_Explosion_FX_Script";
position = "explosionPos";
};
};
6 changes: 3 additions & 3 deletions addons/chemical/CfgGlasses.hpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
class cfgGlasses
class CfgGlasses
{
class G_RegulatorMask_F;
class kat_mask_M50: G_RegulatorMask_F
@@ -11,12 +11,12 @@ class cfgGlasses
mass = 4;

};

class kat_mask_M04: kat_mask_M50
{
author = "Assaultboy";
displayname = "M04 Promask";
model = QPATHTOF(models\kat_mask_m04.p3d);
picture = QPATHTOF(ui\maskM04.paa);
};
};
};
14 changes: 7 additions & 7 deletions addons/chemical/CfgMagazines.hpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
class cfgMagazines
class CfgMagazines
{
class ACE_1Rnd_82mm_Mo_HE;
class KAT_1Rnd_82mm_Mo_Type0: ACE_1Rnd_82mm_Mo_HE
@@ -14,15 +14,15 @@ class cfgMagazines
scope = 1;
count = 5;
};
class KAT_1Rnd_82mm_Mo_TypeCS: ACE_1Rnd_82mm_Mo_HE
class KAT_1Rnd_82mm_Mo_TypeCS: ACE_1Rnd_82mm_Mo_HE
{
author="DiGii";
ammo="Sh_82mm_AMOS_TypeCS";
displayNameMFDFormat= CSTRING(CSGas_MFDNAME);
displayNameShort= CSTRING(CSGas_MFDNAME);
displayName= CSTRING(CSGas_DisplayName);
};
class KAT_3Rnd_82mm_Mo_TypeCS_AI: KAT_1Rnd_82mm_Mo_TypeCS
class KAT_3Rnd_82mm_Mo_TypeCS_AI: KAT_1Rnd_82mm_Mo_TypeCS
{
scope = 1;
count = 3;
@@ -36,7 +36,7 @@ class cfgMagazines
descriptionShort = CSTRING(M7A3_DcsShort);
displayNameShort = CSTRING(M7A3_CSGrenade_ShortName);
model = QPATHTOF(ui\m7a3.p3d);
picture = QPATHTOF(ui\KAT_m7a3_ca.paa);
picture = QPATHTOF(ui\KAT_m7a3_ca.paa);
ammo = "KAT_G_M7A3";
mass = 4;
};
@@ -69,7 +69,7 @@ class cfgMagazines
pylonWeapon = "KAT_CAS_M43_Bomb";
};

class KAT_CAS_M43_Mag_x2 : PylonRack_Bomb_GBU12_x2
class KAT_CAS_M43_Mag_x2 : PylonRack_Bomb_GBU12_x2
{
ammo = "KAT_CAS_M43_Ammo";
author = "DiGii";
@@ -82,7 +82,7 @@ class cfgMagazines
mass = 200;
pylonWeapon = "KAT_CAS_M43_Bomb";
};

class PylonRack_19Rnd_Rocket_Skyfire;
class KAT_CAS_R_80mm_GAS_MAG: PylonRack_19Rnd_Rocket_Skyfire {
ammo = "KAT_CAS_R_80mm_GAS_AMMO";
@@ -93,4 +93,4 @@ class cfgMagazines
pylonWeapon = "KAT_CAS_R_80mm_GAS_POD";
hardpoints[] = {"RHS_HP_UPK23_KA52","RHS_HP_9m120_Mi28","RHS_HP_KH55SM_INT","RHS_HP_TU95MS6_INT","RHS_HP_FFAR_ARMY","RHS_HP_MELB","O_MISSILE_PYLON","O_SKYFIRE","B_MISSILE_PYLON","DAGR","DAR","B_SHIEKER","CUP_PylonPod_19Rnd_Rocket_FFAR_plane_M","CUP_NATO_HELO_ROCKETS","CUP_19Rnd_FFAR","B_AH_99_PYLON","CUP_SUPER_PYLON","CUP_32Rnd_S5","pook_RPOD","RHS_HP_FFAR_USMC", "RHS_HP_INGWE", "RHS_HP_MELB_R", "RHS_HP_MELB","RHS_HP_UB32","pook_HELI_BMB","pook_HELI_MISSILERACK"};
};
};
};
47 changes: 25 additions & 22 deletions addons/chemical/CfgVehicles.hpp
Original file line number Diff line number Diff line change
@@ -19,19 +19,21 @@ class CfgVehicles {
showDisabled = 0;
icon = QPATHTOF(ui\gasmaskfilter_ca.paa);
};
class KAT_MuteChemDetector {
displayName = CSTRING(ChemDetector_Mute);
condition = QUOTE([ARR_2(_player,true)] call FUNC(getChemDetectorState));
statement = QUOTE(_player setVariable [ARR_3(QQGVAR(chemDetectorState),false,true)]);
class KAT_PutOnGasMask {
displayName = "Put on Gas Mask";
MiszczuZPolski marked this conversation as resolved.
Show resolved Hide resolved
condition = QUOTE([_player] call FUNC(canPutOnGasMask));
exceptions[] = {"isNotSwimming", "isNotInside", "isNotSitting"};
statement = QUOTE([_player] call FUNC(putOnGasMask));
showDisabled = 0;
icon = QPATHTOF(ui\ChemDetectorIcon.paa);
icon = QPATHTOF(ui\Gasmask_icon.paa);
};
class KAT_UnmuteChemDetector {
displayName = CSTRING(ChemDetector_Unmute);
condition = QUOTE([ARR_2(_player,false)] call FUNC(getChemDetectorState));
statement = QUOTE(_player setVariable [ARR_3(QQGVAR(chemDetectorState),true,true)]);
class KAT_TakeOffGasMask {
displayName = "Take off Gas Mask";
MiszczuZPolski marked this conversation as resolved.
Show resolved Hide resolved
condition = QUOTE([_player] call FUNC(canTakeOffGasMask));
exceptions[] = {"isNotSwimming", "isNotInside", "isNotSitting"};
statement = QUOTE([_player] call FUNC(takeOffGasMask));
showDisabled = 0;
icon = QPATHTOF(ui\ChemDetectorIcon.paa);
icon = QPATHTOF(ui\Gasmask_icon.paa);
};
};
};
@@ -96,32 +98,25 @@ class CfgVehicles {
function = QFUNC(gasmodule);
isTriggerActivated = 0;
functionPriority = 1;
isGlobal = 1;
isGlobal = 0;

class Arguments: AttributesBase
{
class Radius_Max
class Radius
{
displayName = CSTRING(UI_max_range);
tooltip = CSTRING(GasModule_min_radius_dcs);
typeName = "NUMBER";
defaultValue = 20;
};
class Radius_Min
{
displayName = CSTRING(UI_min_range);
tooltip = CSTRING(GasModule_max_radius_dcs);
typeName = "NUMBER";
defaultValue = 10;
};
class GAS_Type
{
displayName = CSTRING(UI_gasType);
typeName = "NUMBER";
class values {
class toxicgas {
class ToxicGas {
name = CSTRING(LvL1_Gas);
value = 0;
value = 1;
default = 1;
};
/* class csgas {
@@ -160,10 +155,11 @@ class CfgVehicles {
curatorCanAttach = 1;
displayName = CSTRING(GasModule_Displayname);
category = QEGVAR(zeus,KAM);
function = QACEFUNC(common,dummy);
curatorInfoType = QGVAR(kat_RscGasModul);
isTriggerActivated = 0;
functionPriority = 1;
isGlobal = 1;
isGlobal = 0;
};


@@ -214,4 +210,11 @@ class CfgVehicles {
ammo = "KAT_Gas_TripWireMine_Ammo";
displayName = CSTRING(TriWire_Gas_Name);
};


class Static;
class GVAR(logic): Static {
scope = 1;
displayName = "";
};
};
15 changes: 6 additions & 9 deletions addons/chemical/XEH_PREP.hpp
Original file line number Diff line number Diff line change
@@ -1,29 +1,23 @@
PREP(afterWait);
PREP(AttributeRadius);
PREP(breathing);
PREP(canPutGasMask);
PREP(canPutOnGasMask);
PREP(canReplaceFilter);
PREP(canTakeOffGasMask);
PREP(CASCreateGas);
PREP(changeGasMaskFilter);
PREP(checkGasMaskDur);
PREP(chemDetector);
PREP(coughing);
PREP(createSealAction);
PREP(createZone);
PREP(csGrenade);
PREP(displayGasMaskDur);
PREP(fullHealLocal);
PREP(gasAI);
PREP(gasCheck);
PREP(gasCheckLocal);
PREP(gasManagerPFH);
PREP(gasmodule);
PREP(GasTripEffect);
PREP(getChemDetectorState);
PREP(getList);
PREP(giveUnitGasMask);
PREP(gui_updateBodyImage);
PREP(gui_updateInjuryListGeneral);
PREP(handleCSGas);
PREP(handleFired);
PREP(handleGasMaskDur);
PREP(handleRespawn);
@@ -32,8 +26,11 @@ PREP(hasGasMaskON);
PREP(hideChemDetector);
PREP(init);
PREP(initModule);
PREP(poison);
PREP(putOnGasMask);
PREP(showChemDetector);
PREP(spawnSmoke);
PREP(takeOffGasMask);
PREP(throwGrenade);
PREP(treatmentAdvanced_AtropineLocal);
PREP(ui_gasModule);
Loading
Loading