ACE3/addons/optics/CfgWeapons.hpp
J3aLeiNe fd8167b7e7 AB - correct mildot reticle LRPS/AMS/KHS (#3664)
* correct mildot reticle LRPS/AMS/KHS

correct mildot reticle LRPS/AMS/KHS

* replace 1 tab with 1 space

replace 1 tab with 1 space

* fix tab

* ace_scope : correct mildot reticle for LRPS and SOS 2D/PiP SFP scopes

ace_scope : correct mildot reticle for LRPS and SOS 2D/PiP SFP scopes,
same opticszoommax/min for each scopes : 1µ (1meter for 1000meter) / 4µ
(4meter for 1000meter),
LRPS :  variable magnification / SOS : 2 magnifications
2016-05-07 22:20:50 +02:00

327 lines
11 KiB
C++

class CfgWeapons {
class ItemCore;
class InventoryOpticsItem_Base_F;
class Default;
class Binocular: Default {
forceOptics = 0; // Allow using compass with Binocular
opticsZoomMin = 0.056889; // 5.25x power
opticsZoomMax = 0.056889; // 9 px/mil
modelOptics = "\z\ace\addons\optics\models\NWD_M22_5x"; // 7 degrees horizontal field of view
visionMode[] = {"Normal"}; // Can't use nvgs with binoculars any more than you can with scopes
// Fix AI using Binocs on short range - #18737
// minRange = 300; // 300 = uses Rangefinder often (runs a few meters, stops, uses RF, repeats)
minRange = 500; //500 = seem almost never use it..?
minRangeProbab = 0.001;
midRange = 1000;
midRangeProbab = 0.01;
maxRange = 5000;
maxRangeProbab = 0.01;
};
// zooming reticle scopes
class optic_DMS: ItemCore {
class ItemInfo: InventoryOpticsItem_Base_F {
class OpticsModes {
class Snip;
class Iron;
};
};
};
/*class ACE_optic_DMS: optic_DMS {
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_DMS";
scope = 1;
displayName = "LOCALIZE ACE DMS";
//descriptionShort = "$STR_A3_CFGWEAPONS_ACC_DMS1";
weaponInfoType = "ACE_RscWeaponZeroing";
class ItemInfo: ItemInfo {
modelOptics = QUOTE(PATHTOF(models\ace_shortdot_optics.p3d));
class OpticsModes: OpticsModes {
class Snip: Snip {
opticsZoomMin = 0.05;
opticsZoomMax = 0.3;
opticsZoomInit = 0.3;
discretefov[] = {};
modelOptics[] = {};
};
class Iron: Iron {};
};
};
};*/
// PIP scopes
class optic_Hamr: ItemCore {
class ItemInfo: InventoryOpticsItem_Base_F {
class OpticsModes {
class Hamr2Collimator;
class Hamr2Scope;
};
};
};
class ACE_optic_Hamr_2D: optic_Hamr {
GVAR(BodyDay) = QUOTE(PATHTOF(reticles\hamr-body_ca.paa));
GVAR(BodyNight) = QUOTE(PATHTOF(reticles\hamr-bodyNight_ca.paa));
GVAR(ReticleDay) = QUOTE(PATHTOF(reticles\hamr-reticle65_ca.paa));
GVAR(ReticleNight) = QUOTE(PATHTOF(reticles\hamr-reticle65Illum_ca.paa));
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_Hamr_2D";
displayName = CSTRING(hamr);
weaponInfoType = "ACE_RscWeapon_Hamr";
class ItemInfo: ItemInfo {
modelOptics = QUOTE(PATHTOF(models\ace_optics_reticle90.p3d));
class OpticsModes: OpticsModes {
class Hamr2Collimator: Hamr2Collimator {};
class Hamr2Scope: Hamr2Scope {
useModelOptics = 1;
opticsZoomInit = 0.0872664626;
opticsZoomMax = 0.0872664626;
opticsZoomMin = 0.0872664626;
opticsPPEffects[] = {"OpticsCHAbera5","OpticsBlur5","ACE_OpticsRadBlur1"};
opticsDisablePeripherialVision = 0;
visionMode[] = {"Normal","NVG"};
};
};
};
};
class ACE_optic_Hamr_PIP: ACE_optic_Hamr_2D {
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_Hamr_PIP";
//scopeArsenal = 1;
displayName = CSTRING(hamr_pip);
class ItemInfo: ItemInfo {
modelOptics = QUOTE(PATHTOF(models\ace_optics_pip.p3d));
};
};
class optic_Arco: ItemCore {
class ItemInfo: InventoryOpticsItem_Base_F {
class OpticsModes {
class ARCO2collimator;
class ARCO2scope: ARCO2collimator {};
};
};
};
class ACE_optic_Arco_2D: optic_Arco {
GVAR(BodyDay) = QUOTE(PATHTOF(reticles\arco-body_ca.paa));
GVAR(BodyNight) = QUOTE(PATHTOF(reticles\arco-bodyNight_ca.paa));
GVAR(ReticleDay) = QUOTE(PATHTOF(reticles\arco-reticle65_ca.paa));
GVAR(ReticleNight) = QUOTE(PATHTOF(reticles\arco-reticle65Illum_ca.paa));
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_Arco_2D";
displayName = CSTRING(arco);
weaponInfoType = "ACE_RscWeapon_Arco";
class ItemInfo: ItemInfo {
modelOptics = QUOTE(PATHTOF(models\ace_optics_reticle90.p3d));
class OpticsModes: OpticsModes {
class ARCO2collimator: ARCO2collimator {};
class ARCO2scope: ARCO2scope {
useModelOptics = 1;
opticsZoomInit = 0.0872664626;
opticsZoomMax = 0.0872664626;
opticsZoomMin = 0.0872664626;
opticsPPEffects[] = {"OpticsCHAbera5","OpticsBlur5","ACE_OpticsRadBlur1"};
opticsDisablePeripherialVision = 0;
visionMode[] = {"Normal"};
};
};
};
};
class ACE_optic_Arco_PIP: ACE_optic_Arco_2D {
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_Arco_PIP";
//scopeArsenal = 1;
displayName = CSTRING(arco_pip);
class ItemInfo: ItemInfo {
modelOptics = QUOTE(PATHTOF(models\ace_optics_pip.p3d));
};
};
class optic_MRCO: ItemCore {
class ItemInfo: InventoryOpticsItem_Base_F {
class OpticsModes {
class MRCOcq;
class MRCOscope;
};
};
};
class ACE_optic_MRCO_2D: optic_MRCO {
GVAR(BodyDay) = QUOTE(PATHTOF(reticles\mrco-body_ca.paa));
GVAR(BodyNight) = QUOTE(PATHTOF(reticles\mrco-bodyNight_ca.paa));
GVAR(ReticleDay) = QUOTE(PATHTOF(reticles\mrco-reticle556_ca.paa));
GVAR(ReticleNight) = QUOTE(PATHTOF(reticles\mrco-reticle556Illum_ca.paa));
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_MRCO_2D";
displayName = CSTRING(valdada);
weaponInfoType = "ACE_RscWeapon_MRCO";
class ItemInfo: ItemInfo {
modelOptics = QUOTE(PATHTOF(models\ace_optics_reticle90.p3d));
class OpticsModes: OpticsModes {
class MRCOcq: MRCOcq {};
class MRCOscope: MRCOscope {
useModelOptics = 1;
opticsZoomInit = 0.0872664626;
opticsZoomMax = 0.0872664626;
opticsZoomMin = 0.0872664626;
opticsPPEffects[] = {"OpticsCHAbera5","OpticsBlur5","ACE_OpticsRadBlur1"};
opticsDisablePeripherialVision = 0;
visionMode[] = {"Normal"};
};
};
};
};
class ACE_optic_MRCO_PIP: ACE_optic_MRCO_2D {
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_MRCO_PIP";
scope = 1;
//scopeArsenal = 1;
displayName = CSTRING(valdada_pip);
class ItemInfo: ItemInfo {
modelOptics = QUOTE(PATHTOF(models\ace_optics_pip.p3d));
};
};
class optic_SOS: ItemCore {
class ItemInfo: InventoryOpticsItem_Base_F {
class OpticsModes {
class Snip;
class Iron;
};
};
};
class ACE_optic_SOS_2D: optic_SOS {
GVAR(BodyDay) = QUOTE(PATHTOF(reticles\sos-body_ca.paa));
GVAR(BodyNight) = QUOTE(PATHTOF(reticles\sos-bodyNight_ca.paa));
GVAR(ReticleDay) = QUOTE(PATHTOF(reticles\sos-reticleMLR_ca.paa));
GVAR(ReticleNight) = QUOTE(PATHTOF(reticles\sos-reticleMLRIllum_ca.paa));
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_SOS_2D";
displayName = CSTRING(sos);
weaponInfoType = "ACE_RscWeapon_SOS";
class ItemInfo: ItemInfo {
class OpticsModes: OpticsModes {
class Snip: Snip {
modelOptics[] = {QUOTE(PATHTOF(models\ace_optics_reticle90.p3d)),QUOTE(PATHTOF(models\ace_optics_reticle90.p3d))};
useModelOptics = 1;
opticsZoomInit = 0.0116;
opticsZoomMax = 0.0464;
opticsZoomMin = 0.0116;
discreteFOV[] = {0.0464, 0.0116};
opticsPPEffects[] = {"OpticsCHAbera1","OpticsBlur1","ACE_OpticsRadBlur1"};
opticsDisablePeripherialVision = 0;
};
class Iron: Iron {};
};
};
};
class ACE_optic_SOS_PIP: ACE_optic_SOS_2D {
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_SOS_PIP";
//scopeArsenal = 1;
displayName = CSTRING(sos_pip);
class ItemInfo: ItemInfo {
class OpticsModes: OpticsModes {
class Snip: Snip {
modelOptics[] = {QUOTE(PATHTOF(models\ace_optics_pip.p3d)),QUOTE(PATHTOF(models\ace_optics_pip.p3d))};
};
class Iron: Iron {};
};
};
};
class optic_LRPS: ItemCore {
class ItemInfo: InventoryOpticsItem_Base_F {
class OpticsModes {
class Snip;
};
};
};
class ACE_optic_LRPS_2D: optic_LRPS {
GVAR(BodyDay) = QUOTE(PATHTOF(reticles\sos-body_ca.paa));
GVAR(BodyNight) = QUOTE(PATHTOF(reticles\sos-bodyNight_ca.paa));
GVAR(ReticleDay) = QUOTE(PATHTOF(reticles\sos-reticleMLR_ca.paa));
GVAR(ReticleNight) = QUOTE(PATHTOF(reticles\sos-reticleMLRIllum_ca.paa));
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_LRPS_2D";
displayName = CSTRING(lrps);
weaponInfoType = "ACE_RscWeapon_SOS";
class ItemInfo: ItemInfo {
class OpticsModes: OpticsModes {
class Snip: Snip {
modelOptics[] = {QUOTE(PATHTOF(models\ace_optics_reticle90.p3d)),QUOTE(PATHTOF(models\ace_optics_reticle90.p3d))};
useModelOptics = 1;
opticsZoomInit = 0.0116;
opticsZoomMax = 0.0464;
opticsZoomMin = 0.0116;
discreteFOV[] = {};
opticsPPEffects[] = {"OpticsCHAbera1","OpticsBlur1","ACE_OpticsRadBlur1"};
opticsDisablePeripherialVision = 0;
};
};
};
};
class ACE_optic_LRPS_PIP: ACE_optic_LRPS_2D {
author = ECSTRING(common,ACETeam);
_generalMacro = "ACE_optic_LRPS_PIP";
//scopeArsenal = 1;
displayName = CSTRING(lrps_pip);
class ItemInfo: ItemInfo {
class OpticsModes: OpticsModes {
class Snip: Snip {
modelOptics[] = {QUOTE(PATHTOF(models\ace_optics_pip.p3d)),QUOTE(PATHTOF(models\ace_optics_pip.p3d))};
};
};
};
};
};
class SlotInfo;
class CowsSlot: SlotInfo {
compatibleItems[] += {
"ACE_optic_Hamr_2D",
"ACE_optic_Hamr_PIP",
"ACE_optic_Arco_2D",
"ACE_optic_Arco_PIP",
"ACE_optic_MRCO_2D",
"ACE_optic_MRCO_PIP",
"ACE_optic_SOS_2D",
"ACE_optic_SOS_PIP",
"ACE_optic_LRPS_2D",
"ACE_optic_LRPS_PIP"
//"ACE_optic_DMS"
};
};