class RscOpticsValue; class RscMapControl; class RscText; class RscInGameUI { class RscUnitInfo; class RscWeaponZeroing: RscUnitInfo { class CA_Zeroing; }; class ACE_RscWeaponZeroing: RscWeaponZeroing { controls[] = {"CA_Zeroing","CA_FOVMode","ACE_DrawReticleHelper","ACE_ScriptedReticle"}; class CA_FOVMode: RscOpticsValue { // idea by Taosenai. Apparently this can be used via isNil check to determine wheter the scope or the kolimator is used idc = 154; style = 2; colorText[] = {0,0,0,0}; x = 0; y = 0; w = 0; h = 0; }; class ACE_DrawReticleHelper: RscMapControl { onDraw = QUOTE([ctrlParent (_this select 0)] call DFUNC(onDrawScope)); idc = -1; w = 0; h = 0; }; class ACE_ScriptedReticle: RscText { idc = 1713154; style = 48; size = 1; sizeEx = 0; text = QUOTE(PATHTOF(reticles\ace_shortdot_reticle_1.paa)); w = 0; h = 0; }; }; class ACE_RscWeapon_base: RscWeaponZeroing { controls[] = {"CA_Zeroing","CA_FOVMode","ACE_DrawReticleHelper","ReticleDay","ReticleNight","BodyNight","BodyDay", "trippleHeadLeft", "trippleHeadRight"}; // don't change this order class CA_FOVMode: RscOpticsValue { // idea by Taosenai. Apparently this can be used via isNil check to determine wheter the scope or the kolimator is used idc = 154; style = 2; colorText[] = {0,0,0,0}; x = 0; y = 0; w = 0; h = 0; }; class ACE_DrawReticleHelper: RscMapControl { onDraw = QUOTE([ctrlParent (_this select 0)] call DFUNC(onDrawScope2D)); idc = -1; w = 0; h = 0; }; #define SIZEX 0.75/(getResolution select 5) class ReticleDay: RscText { idc = 1713001; style = 48; size = 0; sizeEx = 1; text = ""; colorText[] = {1,1,1,0}; colorBackground[] = {0,0,0,0}; x = safezoneX+0.5*safezoneW-0.5*SIZEX; y = safezoneY+0.5*safezoneH-0.5*SIZEX*(4/3); w = SIZEX; h = SIZEX*(4/3); }; class ReticleNight: ReticleDay { idc = 1713002; text = ""; }; #undef SIZEX #define SIZEX 2*0.75/(getResolution select 5) class BodyDay: ReticleDay { idc = 1713005; text = ""; x = safezoneX+0.5*safezoneW-0.5*SIZEX; y = safezoneY+0.5*safezoneH-0.5*SIZEX*(4/3); w = SIZEX; h = SIZEX*(4/3); }; class BodyNight: BodyDay { idc = 1713006; text = ""; }; //These are just black side panels to cover the areas that the optics p3d doesn't cover //It will ONLY effect tripple head users as (safezoneX == safeZoneXAbs) for everyone else //Reference PR #1156: class trippleHeadLeft: RscText { idc = 1713010; x = "safeZoneXAbs"; Y = "safezoneY"; W = "(safezoneX - safeZoneXAbs) * ((getResolution select 4)/(16/3))"; H = "safeZoneH"; colorBackground[] = {0,0,0,1}; }; class trippleHeadRight: trippleHeadLeft { idc = 1713011; x = "safeZoneXAbs + safeZoneWAbs - (safezoneX - safeZoneXABS) * ((getResolution select 4)/(16/3))"; colorBackground[] = {0,0,0,1}; }; }; class ACE_RscWeapon_Hamr: ACE_RscWeapon_base { class ReticleDay: ReticleDay { text = QUOTE(PATHTOF(reticles\hamr-reticle65_ca.paa)); }; class ReticleNight: ReticleNight { text = QUOTE(PATHTOF(reticles\hamr-reticle65Illum_ca.paa)); }; class BodyDay: BodyDay { text = QUOTE(PATHTOF(reticles\hamr-body_ca.paa)); }; class BodyNight: BodyNight { text = QUOTE(PATHTOF(reticles\hamr-bodyNight_ca.paa)); }; }; class ACE_RscWeapon_Arco: ACE_RscWeapon_base { class ReticleDay: ReticleDay { text = QUOTE(PATHTOF(reticles\arco-reticle65_ca.paa)); }; class ReticleNight: ReticleNight { text = QUOTE(PATHTOF(reticles\arco-reticle65Illum_ca.paa)); }; class BodyDay: BodyDay { text = QUOTE(PATHTOF(reticles\arco-body_ca.paa)); }; class BodyNight: BodyNight { text = QUOTE(PATHTOF(reticles\arco-bodyNight_ca.paa)); }; }; class ACE_RscWeapon_MRCO: ACE_RscWeapon_base { class ReticleDay: ReticleDay { text = QUOTE(PATHTOF(reticles\mrco-reticle556_ca.paa)); }; class ReticleNight: ReticleNight { text = QUOTE(PATHTOF(reticles\mrco-reticle556Illum_ca.paa)); }; class BodyDay: BodyDay { text = QUOTE(PATHTOF(reticles\mrco-body_ca.paa)); }; class BodyNight: BodyNight { text = QUOTE(PATHTOF(reticles\mrco-bodyNight_ca.paa)); }; }; class ACE_RscWeapon_SOS: ACE_RscWeapon_base { class ReticleDay: ReticleDay { text = QUOTE(PATHTOF(reticles\sos-reticleMLR_ca.paa)); }; class ReticleNight: ReticleNight { text = QUOTE(PATHTOF(reticles\sos-reticleMLRIllum_ca.paa)); }; class BodyDay: BodyDay { text = QUOTE(PATHTOF(reticles\sos-body_ca.paa)); }; class BodyNight: BodyNight { text = QUOTE(PATHTOF(reticles\sos-bodyNight_ca.paa)); }; }; }; /* _ctrl = (D displayCtrl 1713006); _sizeX = 1.54/(getResolution select 5); _sizeY = _sizeX*safezoneW/safezoneH; _ctrl ctrlSetPosition [ safezoneX+0.5*safezoneW-0.5*_sizeX, safezoneY+0.5*safezoneH-0.5*_sizeY, _sizeX, _sizeY ]; _ctrl ctrlCommit 0 */