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

RHS Compat - Add RHS:SAF compat #7793

Merged
merged 8 commits into from
Jul 22, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
1 change: 1 addition & 0 deletions addons/main/CfgSettings.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ class CfgSettings {
compat_rhs_afrf3[] = {"ace_compat_rhs_afrf3", {VERSION_AR}, "isClass (configFile >> 'CfgPatches' >> 'rhs_main')"};
compat_rhs_usf3[] = {"ace_compat_rhs_usf3", {VERSION_AR}, "isClass (configFile >> 'CfgPatches' >> 'rhsusf_main')"};
compat_rhs_gref3[] = {"ace_compat_rhs_gref3", {VERSION_AR}, "isClass (configFile >> 'CfgPatches' >> 'rhsgref_main')"};
compat_rhs_saf3[] = {"ace_compat_rhs_saf3", {VERSION_AR}, "isClass (configFile >> 'CfgPatches' >> 'rhssaf_main')"};
};
};
};
Expand Down
1 change: 1 addition & 0 deletions optionals/compat_rhs_saf3/$PBOPREFIX$
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
z\ace\addons\compat_rhs_saf3
58 changes: 58 additions & 0 deletions optionals/compat_rhs_saf3/CfgAmmo.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
class CfgAmmo {

// ACE Ballistics
class BulletBase;
class rhs_ammo_792x57_Ball: BulletBase {
ACE_caliber = 8.077;
ACE_bulletLength = 28.651;
ACE_bulletMass = 12.7008;
ACE_ammoTempMuzzleVelocityShifts[] = {-26.55, -25.47, -22.85, -20.12, -16.98, -12.80, -7.64, -1.53, 5.96, 15.17, 26.19};
ACE_ballisticCoefficients[] = {0.315};
ACE_velocityBoundaries[] = {};
ACE_standardAtmosphere = "ASM";
ACE_dragModel = 1;
ACE_muzzleVelocities[] = {785, 800, 815};
ACE_barrelLengths[] = {508.0, 599.948, 660.4};
};

class rhs_B_762x39_Ball;
class rhssaf_ammo_762x39_m82_api: rhs_B_762x39_Ball {
ACE_Caliber = 7.8994;
ACE_bulletMass = 7.6074;
ACE_bulletLength = 27.2796;
ACE_muzzleVelocities[] = {650, 700, 748};
ACE_barrelLengths[] = {206.85, 329.62, 412.75};
};

// ACE Explosives
class DirectionalBombBase;
class rhssaf_mine_mrud_a_ammo: DirectionalBombBase {
ace_explosives_defuseObjectPosition[] = {-0.034, 0, 0.202};
};

class rhssaf_mine_mrud_d_ammo: rhssaf_mine_mrud_a_ammo {
ace_explosives_defuseObjectPosition[] = {0.0325, 0, 0.18};
};

class MineBase;
class rhssaf_mine_pma3_ammo: MineBase {
ace_explosives_defuseObjectPosition[] = {0, 0, 0.025};
};

class rhssaf_mine_tma4_ammo: MineBase {
ace_explosives_defuseObjectPosition[] = {0, 0, 0.045};
};

class PipeBombBase;
class rhssaf_tm100_ammo: PipeBombBase {
ace_explosives_defuseObjectPosition[] = {-0.055, 0, 0.014};
};

class rhssaf_tm200_ammo: rhssaf_tm100_ammo {
ace_explosives_defuseObjectPosition[] = {-0.055, 0, 0.018};
};

class rhssaf_tm500_ammo: rhssaf_tm100_ammo {
ace_explosives_defuseObjectPosition[] = {-0.056, 0, 0.032};
};
};
75 changes: 75 additions & 0 deletions optionals/compat_rhs_saf3/CfgMagazines.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
class CfgMagazines {

// ACE Explosives
class ATMine_Range_Mag;
class rhssaf_mine_mrud_a_mag: ATMine_Range_Mag {
ace_explosives_SetupObject = "ACE_Explosives_Place_rhssaf_mine_mrud_a";
class ACE_Triggers {
SupportedTriggers[] = {"Tripwire"};
};
};

class rhssaf_mine_mrud_b_mag: rhssaf_mine_mrud_a_mag {
ace_explosives_SetupObject = "ACE_Explosives_Place_rhssaf_mine_mrud_b";
};

class rhssaf_mine_mrud_c_mag: rhssaf_mine_mrud_a_mag {
ace_explosives_SetupObject = "ACE_Explosives_Place_rhssaf_mine_mrud_c";
};

class rhssaf_mine_mrud_d_mag: rhssaf_mine_mrud_a_mag {
ace_explosives_SetupObject = "ACE_Explosives_Place_rhssaf_mine_mrud_d";
class ACE_Triggers {
SupportedTriggers[] = {"Command", "MK16_Transmitter"};
class Command {
FuseTime = 0.5;
};
class MK16_Transmitter: Command {};
};
};

class rhssaf_mine_pma3_mag: ATMine_Range_Mag {
ace_explosives_SetupObject = "ACE_Explosives_Place_rhssaf_mine_pma3";
class ACE_Triggers {
SupportedTriggers[] = {"PressurePlate"};
class PressurePlate {
digDistance = 0.026;
};
};
};

class rhssaf_mine_tma4_mag: ATMine_Range_Mag {
ace_explosives_SetupObject = "ACE_Explosives_Place_rhssaf_mine_tma4";
class ACE_Triggers {
SupportedTriggers[] = {"PressurePlate"};
class PressurePlate {
digDistance = 0.05;
};
};
};

class CA_Magazine;
class rhssaf_tm100_mag: CA_Magazine {
ace_explosives_DelayTime = 1;
ace_explosives_Placeable = 1;
ace_explosives_SetupObject = "ACE_Explosives_Place_rhssaf_tm100";
class ACE_Triggers {
SupportedTriggers[] = {"Timer", "Command", "MK16_Transmitter"};
class Timer {
FuseTime = 0.5;
};
class Command {
FuseTime = 0.5;
};
class MK16_Transmitter: Command {};
};
};

class rhssaf_tm200_mag: rhssaf_tm100_mag {
ace_explosives_SetupObject = "ACE_Explosives_Place_rhssaf_tm200";
};

class rhssaf_tm500_mag: rhssaf_tm100_mag {
ace_explosives_SetupObject = "ACE_Explosives_Place_rhssaf_tm500";
};
};
90 changes: 90 additions & 0 deletions optionals/compat_rhs_saf3/CfgVehicles.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
class CfgVehicles {

// ACE Explosives
class Items_base_F;
class ACE_Explosives_Place: Items_base_F {
class ACE_Actions {
class ACE_MainActions;
};
};

class ACE_Explosives_Place_rhssaf_mine_mrud_a: ACE_Explosives_Place {
displayName = $STR_RHSSAF_MRUD_A_DISPLAYNAME;
model = "\rhssaf\addons\rhssaf_m_explosives\mines_ap\mrud\rhssaf_mrud_a_e";
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
position = "[0.034, 0, 0.202]";
};
};
};

class ACE_Explosives_Place_rhssaf_mine_mrud_b: ACE_Explosives_Place_rhssaf_mine_mrud_a {
displayName = $STR_RHSSAF_MRUD_B_DISPLAYNAME;
model = "\rhssaf\addons\rhssaf_m_explosives\mines_ap\mrud\rhssaf_mrud_b_e";
};

class ACE_Explosives_Place_rhssaf_mine_mrud_c: ACE_Explosives_Place_rhssaf_mine_mrud_a {
displayName = $STR_RHSSAF_MRUD_C_DISPLAYNAME;
model = "\rhssaf\addons\rhssaf_m_explosives\mines_ap\mrud\rhssaf_mrud_c_e";
};

class ACE_Explosives_Place_rhssaf_mine_mrud_d: ACE_Explosives_Place_rhssaf_mine_mrud_a {
displayName = $STR_RHSSAF_MRUD_D_DISPLAYNAME;
model = "\rhssaf\addons\rhssaf_m_explosives\mines_ap\mrud\rhssaf_mrud_d_e";
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
position = "[-0.0325, 0, 0.18]";
};
};
};

class ACE_Explosives_Place_rhssaf_mine_pma3: ACE_Explosives_Place {
displayName = $STR_RHSSAF_PMA3_DISPLAYNAME;
model = "\rhssaf\addons\rhssaf_m_explosives\mines_ap\pma\rhssaf_pma3_d";
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
position = "[0, 0, 0.02]";
};
};
};

class ACE_Explosives_Place_rhssaf_mine_tma4: ACE_Explosives_Place {
displayName = $STR_RHSSAF_TMA4_DISPLAYNAME;
model = "\rhssaf\addons\rhssaf_m_explosives\mines_at\tma4\rhssaf_tma4_d";
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
position = "[0, 0, 0.024]";
};
};
};

class ACE_Explosives_Place_rhssaf_tm100: ACE_Explosives_Place {
displayName = $STR_RHSSAF_TM100_DISPLAYNAME;
model = "\rhssaf\addons\rhssaf_m_explosives\tm500\rhssaf_tm100_e";
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
position = "[0.055, 0, 0.014]";
};
};
};

class ACE_Explosives_Place_rhssaf_tm200: ACE_Explosives_Place {
displayName = $STR_RHSSAF_TM200_DISPLAYNAME;
model = "\rhssaf\addons\rhssaf_m_explosives\tm500\rhssaf_tm200_e";
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
position = "[0.055, 0, 0.018]";
};
};
};

class ACE_Explosives_Place_rhssaf_tm500: ACE_Explosives_Place {
displayName = $STR_RHSSAF_TM500_DISPLAYNAME;
model = "\rhssaf\addons\rhssaf_m_explosives\tm500\rhssaf_tm500_e";
class ACE_Actions: ACE_Actions {
class ACE_MainActions: ACE_MainActions {
position = "[0.056, 0, 0.028]";
};
};
};
};
66 changes: 66 additions & 0 deletions optionals/compat_rhs_saf3/CfgWeapons.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
class CfgWeapons {

// ACE Ballistics
class rhs_weap_g36_base;
class rhs_weap_g36c: rhs_weap_g36_base {
ACE_barrelLength = 228;
ACE_barrelTwist = 178;
};

class rhs_weap_g36kv: rhs_weap_g36_base {
ACE_barrelLength = 318;
ACE_barrelTwist = 178;
};

class rhs_weap_m21_base;
class rhs_weap_m21a: rhs_weap_m21_base {
ACE_barrelLength = 460;
ACE_barrelTwist = 177.8;
};

class rhs_weap_m21a_pr: rhs_weap_m21_base {
ACE_barrelLength = 460;
ACE_barrelTwist = 177.8;
};

class rhs_weap_m21a_pr_pbg40: rhs_weap_m21_base {
ACE_barrelLength = 460;
ACE_barrelTwist = 177.8;
};

class rhs_weap_m21s: rhs_weap_m21_base {
ACE_barrelLength = 375;
ACE_barrelTwist = 177.8;
};

class rhs_weap_m21s_pr: rhs_weap_m21a_pr {
ACE_barrelLength = 375;
ACE_barrelTwist = 177.8;
};

class Rifle_Base_F;
class rhs_weap_m70_base: Rifle_Base_F {
ACE_barrelLength = 415;
ACE_barrelTwist = 240;
};

class rhs_weap_m92: rhs_weap_m70_base {
ACE_barrelLength = 254;
};

class rhs_weap_m76: rhs_weap_m70_base {
ACE_barrelLength = 550;
};

class Rifle_Long_Base_F;
class rhs_weap_m84: Rifle_Long_Base_F {
ACE_barrelLength = 658;
ACE_barrelTwist = 240;
ACE_Overheating_allowSwapBarrel = 1;
};

class hgun_P07_F;
class rhs_weap_cz99: hgun_P07_F {
ACE_barrelLength = 108;
};
};
20 changes: 20 additions & 0 deletions optionals/compat_rhs_saf3/config.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#include "script_component.hpp"

class CfgPatches {
class ADDON {
name = COMPONENT_NAME;
units[] = {};
weapons[] = {};
requiredVersion = REQUIRED_VERSION;
requiredAddons[] = {"ace_explosives", "rhssaf_c_weapons", "rhssaf_main"};
author = ECSTRING(common,ACETeam);
authors[] = {};
url = ECSTRING(main,URL);
VERSION_CONFIG;
};
};

#include "CfgAmmo.hpp"
#include "CfgMagazines.hpp"
#include "CfgWeapons.hpp"
#include "CfgVehicles.hpp"
6 changes: 6 additions & 0 deletions optionals/compat_rhs_saf3/script_component.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#define COMPONENT compat_rhs_saf3
#define COMPONENT_BEAUTIFIED RHS SAF Compatibility

#include "\z\ace\addons\main\script_mod.hpp"

#include "\z\ace\addons\main\script_macros.hpp"