mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
parent
5ca113d0ba
commit
abc91f1564
@ -1,7 +1,5 @@
|
|||||||
class CfgFontFamilies
|
class CfgFontFamilies {
|
||||||
{
|
class PixelSplitterBold {
|
||||||
class PixelSplitterBold
|
|
||||||
{
|
|
||||||
fonts[] = { QPATHTOF(PixelSplitterBold\PixelSplitterBold6),
|
fonts[] = { QPATHTOF(PixelSplitterBold\PixelSplitterBold6),
|
||||||
QPATHTOF(PixelSplitterBold\PixelSplitterBold7),
|
QPATHTOF(PixelSplitterBold\PixelSplitterBold7),
|
||||||
QPATHTOF(PixelSplitterBold\PixelSplitterBold8),
|
QPATHTOF(PixelSplitterBold\PixelSplitterBold8),
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
class CfgMovesBasic {
|
class CfgMovesBasic {
|
||||||
class StandBase;
|
class StandBase;
|
||||||
};
|
};
|
||||||
@ -7,29 +6,29 @@ class CfgMovesMaleSdr: CfgMovesBasic {
|
|||||||
class States {
|
class States {
|
||||||
// rifle
|
// rifle
|
||||||
class AmovPercMstpSlowWrflDnon: StandBase {
|
class AmovPercMstpSlowWrflDnon: StandBase {
|
||||||
variantsPlayer[] = {/*"AidlPercMstpSlowWrflDnon_G01",0.5,"AidlPercMstpSlowWrflDnon_G02",0.125,"AidlPercMstpSlowWrflDnon_G03",0.125,"AidlPercMstpSlowWrflDnon_G04",0.125,"AidlPercMstpSlowWrflDnon_G05",0.125*/};
|
variantsPlayer[] = {/*"AidlPercMstpSlowWrflDnon_G01", 0.5, "AidlPercMstpSlowWrflDnon_G02", 0.125, "AidlPercMstpSlowWrflDnon_G03", 0.125, "AidlPercMstpSlowWrflDnon_G04", 0.125, "AidlPercMstpSlowWrflDnon_G05", 0.125*/};
|
||||||
};
|
};
|
||||||
class AmovPknlMstpSlowWrflDnon: AmovPercMstpSlowWrflDnon {
|
class AmovPknlMstpSlowWrflDnon: AmovPercMstpSlowWrflDnon {
|
||||||
variantsPlayer[] = {/*"AidlPknlMstpSlowWrflDnon_G01",0.25,"AidlPknlMstpSlowWrflDnon_G02",0.25,"AidlPknlMstpSlowWrflDnon_G03",0.25*/};
|
variantsPlayer[] = {/*"AidlPknlMstpSlowWrflDnon_G01", 0.25, "AidlPknlMstpSlowWrflDnon_G02", 0.25, "AidlPknlMstpSlowWrflDnon_G03", 0.25*/};
|
||||||
};
|
};
|
||||||
|
|
||||||
// pistol
|
// pistol
|
||||||
class AmovPercMstpSrasWpstDnon;
|
class AmovPercMstpSrasWpstDnon;
|
||||||
class AmovPercMstpSlowWpstDnon: AmovPercMstpSrasWpstDnon {
|
class AmovPercMstpSlowWpstDnon: AmovPercMstpSrasWpstDnon {
|
||||||
variantsPlayer[] = {/*"AidlPercMstpSlowWpstDnon_G01",0.333,"AidlPercMstpSlowWpstDnon_G02",0.333,"AidlPercMstpSlowWpstDnon_G03",0.334*/};
|
variantsPlayer[] = {/*"AidlPercMstpSlowWpstDnon_G01", 0.333, "AidlPercMstpSlowWpstDnon_G02", 0.333, "AidlPercMstpSlowWpstDnon_G03", 0.334*/};
|
||||||
};
|
};
|
||||||
|
|
||||||
class AmovPknlMstpSrasWpstDnon;
|
class AmovPknlMstpSrasWpstDnon;
|
||||||
class AmovPknlMstpSlowWpstDnon: AmovPknlMstpSrasWpstDnon {
|
class AmovPknlMstpSlowWpstDnon: AmovPknlMstpSrasWpstDnon {
|
||||||
variantsPlayer[] = {/*"AidlPknlMstpSlowWpstDnon_G03",0.333,"AidlPknlMstpSlowWpstDnon_G02",0.333,"AidlPknlMstpSlowWpstDnon_G01",0.334*/};
|
variantsPlayer[] = {/*"AidlPknlMstpSlowWpstDnon_G03", 0.333, "AidlPknlMstpSlowWpstDnon_G02", 0.333, "AidlPknlMstpSlowWpstDnon_G01", 0.334*/};
|
||||||
};
|
};
|
||||||
|
|
||||||
// none
|
// none
|
||||||
class AmovPercMstpSnonWnonDnon: StandBase {
|
class AmovPercMstpSnonWnonDnon: StandBase {
|
||||||
variantsPlayer[] = {/*"AidlPercMstpSnonWnonDnon_G01",0.16,"AidlPercMstpSnonWnonDnon_G02",0.16,"AidlPercMstpSnonWnonDnon_G03",0.16,"AidlPercMstpSnonWnonDnon_G04",0.16,"AidlPercMstpSnonWnonDnon_G05",0.16,"AidlPercMstpSnonWnonDnon_G06",0.16*/};
|
variantsPlayer[] = {/*"AidlPercMstpSnonWnonDnon_G01", 0.16, "AidlPercMstpSnonWnonDnon_G02", 0.16, "AidlPercMstpSnonWnonDnon_G03", 0.16, "AidlPercMstpSnonWnonDnon_G04", 0.16, "AidlPercMstpSnonWnonDnon_G05", 0.16, "AidlPercMstpSnonWnonDnon_G06", 0.16*/};
|
||||||
};
|
};
|
||||||
class AmovPknlMstpSnonWnonDnon: AmovPercMstpSnonWnonDnon {
|
class AmovPknlMstpSnonWnonDnon: AmovPercMstpSnonWnonDnon {
|
||||||
variantsPlayer[] = {/*"AidlPknlMstpSnonWnonDnon_G01",0.33,"AidlPknlMstpSnonWnonDnon_G02",0.33,"AidlPknlMstpSnonWnonDnon_G03",0.33*/};
|
variantsPlayer[] = {/*"AidlPknlMstpSnonWnonDnon_G01", 0.33, "AidlPknlMstpSnonWnonDnon_G02", 0.33, "AidlPknlMstpSnonWnonDnon_G03", 0.33*/};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
class Extended_PostInit_EventHandlers {
|
class Extended_PostInit_EventHandlers {
|
||||||
class ADDON {
|
class ADDON {
|
||||||
init = QUOTE(call COMPILE_FILE(XEH_postInit));
|
init = QUOTE(call COMPILE_FILE(XEH_postInit));
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
// by commy2
|
// By commy2
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
// unmute unit if that player disconnects
|
// Unmute unit if that player disconnects
|
||||||
if (isServer) then {
|
if (isServer) then {
|
||||||
addMissionEventHandler ["HandleDisconnect", {
|
addMissionEventHandler ["HandleDisconnect", {
|
||||||
[_this select 0, "isPlayer"] call EFUNC(common,unmuteUnit);
|
[_this select 0, "isPlayer"] call EFUNC(common,unmuteUnit);
|
||||||
@ -15,14 +15,14 @@ if (!isNull ace_player) then {
|
|||||||
[ace_player, "isPlayer"] call EFUNC(common,muteUnit);
|
[ace_player, "isPlayer"] call EFUNC(common,muteUnit);
|
||||||
};
|
};
|
||||||
|
|
||||||
// mutes/unmutes units when the player changes
|
// Mutes/unmutes units when the player changes
|
||||||
["unit", {
|
["unit", {
|
||||||
params ["_newPlayer", "_oldPlayer"];
|
params ["_newPlayer", "_oldPlayer"];
|
||||||
|
|
||||||
// mute the new player
|
// Mute the new player
|
||||||
[_newPlayer, "isPlayer"] call EFUNC(common,muteUnit);
|
[_newPlayer, "isPlayer"] call EFUNC(common,muteUnit);
|
||||||
|
|
||||||
// unmute the old player
|
// Unmute the old player
|
||||||
if (alive _oldPlayer) then {
|
if (alive _oldPlayer) then {
|
||||||
[_oldPlayer, "isPlayer"] call EFUNC(common,unmuteUnit);
|
[_oldPlayer, "isPlayer"] call EFUNC(common,unmuteUnit);
|
||||||
};
|
};
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
class CfgActions {
|
class CfgActions {
|
||||||
class None;
|
class None;
|
||||||
class Rearm: None {
|
class Rearm: None {
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
class Extended_PreStart_EventHandlers {
|
class Extended_PreStart_EventHandlers {
|
||||||
class ADDON {
|
class ADDON {
|
||||||
init = QUOTE(call COMPILE_FILE(XEH_preStart));
|
init = QUOTE(call COMPILE_FILE(XEH_preStart));
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
class CfgOpticsEffect {
|
class CfgOpticsEffect {
|
||||||
class ACE_OpticsRadBlur1 {
|
class ACE_OpticsRadBlur1 {
|
||||||
type = "radialblur";
|
type = "radialblur";
|
||||||
params[] = {0.015,0,0.14,0.2};
|
params[] = {0.015, 0, 0.14, 0.2};
|
||||||
priority = 950;
|
priority = 950;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -9,12 +9,12 @@ class RscInGameUI {
|
|||||||
};
|
};
|
||||||
|
|
||||||
class ACE_RscWeaponZeroing: RscWeaponZeroing {
|
class ACE_RscWeaponZeroing: RscWeaponZeroing {
|
||||||
controls[] = {"CA_Zeroing","CA_FOVMode","ACE_DrawReticleHelper","ACE_ScriptedReticle"};
|
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
|
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;
|
idc = 154;
|
||||||
style = 2;
|
style = 2;
|
||||||
colorText[] = {0,0,0,0};
|
colorText[] = {0, 0, 0, 0};
|
||||||
x = 0;
|
x = 0;
|
||||||
y = 0;
|
y = 0;
|
||||||
w = 0;
|
w = 0;
|
||||||
@ -40,12 +40,12 @@ class RscInGameUI {
|
|||||||
};
|
};
|
||||||
|
|
||||||
class ACE_RscWeapon_base: RscWeaponZeroing {
|
class ACE_RscWeapon_base: RscWeaponZeroing {
|
||||||
controls[] = {"CA_Zeroing","CA_FOVMode","ACE_DrawReticleHelper","ReticleDay","ReticleNight","BodyNight","BodyDay", "trippleHeadLeft", "trippleHeadRight"}; // don't change this order
|
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
|
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;
|
idc = 154;
|
||||||
style = 2;
|
style = 2;
|
||||||
colorText[] = {0,0,0,0};
|
colorText[] = {0, 0, 0, 0};
|
||||||
x = 0;
|
x = 0;
|
||||||
y = 0;
|
y = 0;
|
||||||
w = 0;
|
w = 0;
|
||||||
@ -66,12 +66,12 @@ class RscInGameUI {
|
|||||||
size = 0;
|
size = 0;
|
||||||
sizeEx = 1;
|
sizeEx = 1;
|
||||||
text = "";
|
text = "";
|
||||||
colorText[] = {1,1,1,0};
|
colorText[] = {1, 1, 1, 0};
|
||||||
colorBackground[] = {0,0,0,0};
|
colorBackground[] = {0, 0, 0, 0};
|
||||||
x = safezoneX+0.5*safezoneW-0.5*SIZEX;
|
x = safezoneX + 0.5 * safezoneW - 0.5 * SIZEX;
|
||||||
y = safezoneY+0.5*safezoneH-0.5*SIZEX*(4/3);
|
y = safezoneY + 0.5 * safezoneH - 0.5 * SIZEX * (4 / 3);
|
||||||
w = SIZEX;
|
w = SIZEX;
|
||||||
h = SIZEX*(4/3);
|
h = SIZEX * (4 / 3);
|
||||||
};
|
};
|
||||||
|
|
||||||
class ReticleNight: ReticleDay {
|
class ReticleNight: ReticleDay {
|
||||||
@ -84,10 +84,10 @@ class RscInGameUI {
|
|||||||
class BodyDay: ReticleDay {
|
class BodyDay: ReticleDay {
|
||||||
idc = 1713005;
|
idc = 1713005;
|
||||||
text = "";
|
text = "";
|
||||||
x = safezoneX+0.5*safezoneW-0.5*SIZEX;
|
x = safezoneX + 0.5 * safezoneW - 0.5 * SIZEX;
|
||||||
y = safezoneY+0.5*safezoneH-0.5*SIZEX*(4/3);
|
y = safezoneY + 0.5 * safezoneH - 0.5 * SIZEX * (4 / 3);
|
||||||
w = SIZEX;
|
w = SIZEX;
|
||||||
h = SIZEX*(4/3);
|
h = SIZEX * (4 / 3);
|
||||||
};
|
};
|
||||||
|
|
||||||
class BodyNight: BodyDay {
|
class BodyNight: BodyDay {
|
||||||
@ -95,21 +95,21 @@ class RscInGameUI {
|
|||||||
text = "";
|
text = "";
|
||||||
};
|
};
|
||||||
|
|
||||||
//These are just black side panels to cover the areas that the optics p3d doesn't cover
|
// 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
|
// It will ONLY effect tripple head users as (safezoneX == safeZoneXAbs) for everyone else
|
||||||
//Reference PR #1156:
|
// Reference PR #1156:
|
||||||
class trippleHeadLeft: RscText {
|
class trippleHeadLeft: RscText {
|
||||||
idc = 1713010;
|
idc = 1713010;
|
||||||
x = "safeZoneXAbs";
|
x = "safeZoneXAbs";
|
||||||
Y = "safezoneY";
|
Y = "safezoneY";
|
||||||
W = "(safezoneX - safeZoneXAbs) * ((getResolution select 4)/(16/3))";
|
W = "(safezoneX - safeZoneXAbs) * ((getResolution select 4) / (16 / 3))";
|
||||||
H = "safeZoneH";
|
H = "safeZoneH";
|
||||||
colorBackground[] = {0,0,0,1};
|
colorBackground[] = {0, 0, 0, 1};
|
||||||
};
|
};
|
||||||
class trippleHeadRight: trippleHeadLeft {
|
class trippleHeadRight: trippleHeadLeft {
|
||||||
idc = 1713011;
|
idc = 1713011;
|
||||||
x = "safeZoneXAbs + safeZoneWAbs - (safezoneX - safeZoneXABS) * ((getResolution select 4)/(16/3))";
|
x = "safeZoneXAbs + safeZoneWAbs - (safezoneX - safeZoneXABS) * ((getResolution select 4) / (16 / 3))";
|
||||||
colorBackground[] = {0,0,0,1};
|
colorBackground[] = {0, 0, 0, 1};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -190,12 +190,12 @@ class RscInGameUI {
|
|||||||
|
|
||||||
_ctrl = (D displayCtrl 1713006);
|
_ctrl = (D displayCtrl 1713006);
|
||||||
|
|
||||||
_sizeX = 1.54/(getResolution select 5);
|
_sizeX = 1.54 / (getResolution select 5);
|
||||||
_sizeY = _sizeX*safezoneW/safezoneH;
|
_sizeY = _sizeX * safezoneW / safezoneH;
|
||||||
|
|
||||||
_ctrl ctrlSetPosition [
|
_ctrl ctrlSetPosition [
|
||||||
safezoneX+0.5*safezoneW-0.5*_sizeX,
|
safezoneX + 0.5 * safezoneW - 0.5 * _sizeX,
|
||||||
safezoneY+0.5*safezoneH-0.5*_sizeY,
|
safezoneY + 0.5 * safezoneH - 0.5 * _sizeY,
|
||||||
_sizeX,
|
_sizeX,
|
||||||
_sizeY
|
_sizeY
|
||||||
];
|
];
|
||||||
|
@ -86,9 +86,9 @@ class CfgWeapons {
|
|||||||
opticsZoomInit = 0.0872664626;
|
opticsZoomInit = 0.0872664626;
|
||||||
opticsZoomMax = 0.0872664626;
|
opticsZoomMax = 0.0872664626;
|
||||||
opticsZoomMin = 0.0872664626;
|
opticsZoomMin = 0.0872664626;
|
||||||
opticsPPEffects[] = {"OpticsCHAbera5","OpticsBlur5","ACE_OpticsRadBlur1"};
|
opticsPPEffects[] = {"OpticsCHAbera5", "OpticsBlur5", "ACE_OpticsRadBlur1"};
|
||||||
opticsDisablePeripherialVision = 0;
|
opticsDisablePeripherialVision = 0;
|
||||||
visionMode[] = {"Normal","NVG"};
|
visionMode[] = {"Normal", "NVG"};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -135,7 +135,7 @@ class CfgWeapons {
|
|||||||
opticsZoomInit = 0.0872664626;
|
opticsZoomInit = 0.0872664626;
|
||||||
opticsZoomMax = 0.0872664626;
|
opticsZoomMax = 0.0872664626;
|
||||||
opticsZoomMin = 0.0872664626;
|
opticsZoomMin = 0.0872664626;
|
||||||
opticsPPEffects[] = {"OpticsCHAbera5","OpticsBlur5","ACE_OpticsRadBlur1"};
|
opticsPPEffects[] = {"OpticsCHAbera5", "OpticsBlur5", "ACE_OpticsRadBlur1"};
|
||||||
opticsDisablePeripherialVision = 0;
|
opticsDisablePeripherialVision = 0;
|
||||||
visionMode[] = {"Normal"};
|
visionMode[] = {"Normal"};
|
||||||
};
|
};
|
||||||
@ -184,7 +184,7 @@ class CfgWeapons {
|
|||||||
opticsZoomInit = 0.0872664626;
|
opticsZoomInit = 0.0872664626;
|
||||||
opticsZoomMax = 0.0872664626;
|
opticsZoomMax = 0.0872664626;
|
||||||
opticsZoomMin = 0.0872664626;
|
opticsZoomMin = 0.0872664626;
|
||||||
opticsPPEffects[] = {"OpticsCHAbera5","OpticsBlur5","ACE_OpticsRadBlur1"};
|
opticsPPEffects[] = {"OpticsCHAbera5", "OpticsBlur5", "ACE_OpticsRadBlur1"};
|
||||||
opticsDisablePeripherialVision = 0;
|
opticsDisablePeripherialVision = 0;
|
||||||
visionMode[] = {"Normal"};
|
visionMode[] = {"Normal"};
|
||||||
};
|
};
|
||||||
@ -227,13 +227,13 @@ class CfgWeapons {
|
|||||||
class ItemInfo: ItemInfo {
|
class ItemInfo: ItemInfo {
|
||||||
class OpticsModes: OpticsModes {
|
class OpticsModes: OpticsModes {
|
||||||
class Snip: Snip {
|
class Snip: Snip {
|
||||||
modelOptics[] = {QPATHTOF(models\ace_optics_reticle90.p3d),QPATHTOF(models\ace_optics_reticle90.p3d)};
|
modelOptics[] = {QPATHTOF(models\ace_optics_reticle90.p3d), QPATHTOF(models\ace_optics_reticle90.p3d)};
|
||||||
useModelOptics = 1;
|
useModelOptics = 1;
|
||||||
opticsZoomInit = 0.0116;
|
opticsZoomInit = 0.0116;
|
||||||
opticsZoomMax = 0.0464;
|
opticsZoomMax = 0.0464;
|
||||||
opticsZoomMin = 0.0116;
|
opticsZoomMin = 0.0116;
|
||||||
discreteFOV[] = {0.0464, 0.0116};
|
discreteFOV[] = {0.0464, 0.0116};
|
||||||
opticsPPEffects[] = {"OpticsCHAbera1","OpticsBlur1","ACE_OpticsRadBlur1"};
|
opticsPPEffects[] = {"OpticsCHAbera1", "OpticsBlur1", "ACE_OpticsRadBlur1"};
|
||||||
opticsDisablePeripherialVision = 0;
|
opticsDisablePeripherialVision = 0;
|
||||||
};
|
};
|
||||||
class Iron: Iron {};
|
class Iron: Iron {};
|
||||||
@ -250,7 +250,7 @@ class CfgWeapons {
|
|||||||
class ItemInfo: ItemInfo {
|
class ItemInfo: ItemInfo {
|
||||||
class OpticsModes: OpticsModes {
|
class OpticsModes: OpticsModes {
|
||||||
class Snip: Snip {
|
class Snip: Snip {
|
||||||
modelOptics[] = {QPATHTOF(models\ace_optics_pip.p3d),QPATHTOF(models\ace_optics_pip.p3d)};
|
modelOptics[] = {QPATHTOF(models\ace_optics_pip.p3d), QPATHTOF(models\ace_optics_pip.p3d)};
|
||||||
};
|
};
|
||||||
class Iron: Iron {};
|
class Iron: Iron {};
|
||||||
};
|
};
|
||||||
@ -279,13 +279,13 @@ class CfgWeapons {
|
|||||||
class ItemInfo: ItemInfo {
|
class ItemInfo: ItemInfo {
|
||||||
class OpticsModes: OpticsModes {
|
class OpticsModes: OpticsModes {
|
||||||
class Snip: Snip {
|
class Snip: Snip {
|
||||||
modelOptics[] = {QPATHTOF(models\ace_optics_reticle90.p3d),QPATHTOF(models\ace_optics_reticle90.p3d)};
|
modelOptics[] = {QPATHTOF(models\ace_optics_reticle90.p3d), QPATHTOF(models\ace_optics_reticle90.p3d)};
|
||||||
useModelOptics = 1;
|
useModelOptics = 1;
|
||||||
opticsZoomInit = 0.0116;
|
opticsZoomInit = 0.0116;
|
||||||
opticsZoomMax = 0.0464;
|
opticsZoomMax = 0.0464;
|
||||||
opticsZoomMin = 0.0116;
|
opticsZoomMin = 0.0116;
|
||||||
discreteFOV[] = {};
|
discreteFOV[] = {};
|
||||||
opticsPPEffects[] = {"OpticsCHAbera1","OpticsBlur1","ACE_OpticsRadBlur1"};
|
opticsPPEffects[] = {"OpticsCHAbera1", "OpticsBlur1", "ACE_OpticsRadBlur1"};
|
||||||
opticsDisablePeripherialVision = 0;
|
opticsDisablePeripherialVision = 0;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@ -301,7 +301,7 @@ class CfgWeapons {
|
|||||||
class ItemInfo: ItemInfo {
|
class ItemInfo: ItemInfo {
|
||||||
class OpticsModes: OpticsModes {
|
class OpticsModes: OpticsModes {
|
||||||
class Snip: Snip {
|
class Snip: Snip {
|
||||||
modelOptics[] = {QPATHTOF(models\ace_optics_pip.p3d),QPATHTOF(models\ace_optics_pip.p3d)};
|
modelOptics[] = {QPATHTOF(models\ace_optics_pip.p3d), QPATHTOF(models\ace_optics_pip.p3d)};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
PREP(handleFired);
|
PREP(handleFired);
|
||||||
PREP(onDrawScope);
|
PREP(onDrawScope);
|
||||||
PREP(onDrawScope2D);
|
PREP(onDrawScope2D);
|
||||||
|
@ -18,7 +18,7 @@ GVAR(camera) = objNull;
|
|||||||
params ["", "_isfeatureCameraActive"];
|
params ["", "_isfeatureCameraActive"];
|
||||||
TRACE_1("ace_activeCameraChanged",_isfeatureCameraActive);
|
TRACE_1("ace_activeCameraChanged",_isfeatureCameraActive);
|
||||||
if (!_isfeatureCameraActive) then {
|
if (!_isfeatureCameraActive) then {
|
||||||
//Destroy the camera, and it will be re-created in the onDrawScope2d helper
|
// Destroy the camera, and it will be re-created in the onDrawScope2d helper
|
||||||
if (!isNull GVAR(camera)) then {
|
if (!isNull GVAR(camera)) then {
|
||||||
GVAR(camera) cameraEffect ["TERMINATE", "BACK"];
|
GVAR(camera) cameraEffect ["TERMINATE", "BACK"];
|
||||||
camDestroy GVAR(camera);
|
camDestroy GVAR(camera);
|
||||||
|
@ -18,12 +18,12 @@
|
|||||||
|
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
//IGNORE_PRIVATE_WARNING ["_unit", "_weapon", "_muzzle", "_mode", "_ammo", "_magazine", "_projectile", "_vehicle", "_gunner", "_turret"];
|
// IGNORE_PRIVATE_WARNING ["_unit", "_weapon", "_muzzle", "_mode", "_ammo", "_magazine", "_projectile", "_vehicle", "_gunner", "_turret"];
|
||||||
TRACE_10("firedEH:",_unit, _weapon, _muzzle, _mode, _ammo, _magazine, _projectile, _vehicle, _gunner, _turret);
|
TRACE_10("firedEH:",_unit, _weapon, _muzzle, _mode, _ammo, _magazine, _projectile, _vehicle, _gunner, _turret);
|
||||||
|
|
||||||
disableSerialization;
|
disableSerialization;
|
||||||
|
|
||||||
// check if compatible scope is used
|
// Check if compatible scope is used
|
||||||
private _display = uiNamespace getVariable [QGVAR(RscWeaponInfo2D), displayNull];
|
private _display = uiNamespace getVariable [QGVAR(RscWeaponInfo2D), displayNull];
|
||||||
|
|
||||||
if (isNull _display) exitWith {};
|
if (isNull _display) exitWith {};
|
||||||
@ -49,12 +49,12 @@ _scopeShiftY = _recoilCoef * linearConversion [0, 1, random 1, SCOPE_SHIFT_Y_MIN
|
|||||||
// Create and commit recoil effect
|
// Create and commit recoil effect
|
||||||
private ["_sizeX", "_sizeY"];
|
private ["_sizeX", "_sizeY"];
|
||||||
|
|
||||||
_sizeX = (0.75 + _recoilScope)/(getResolution select 5);
|
_sizeX = (0.75 + _recoilScope) / (getResolution select 5);
|
||||||
_sizeY = _sizeX*(4/3);
|
_sizeY = _sizeX * (4 / 3);
|
||||||
|
|
||||||
private _positionReticle = [
|
private _positionReticle = [
|
||||||
safezoneX + 0.5 * safezoneW - 0.5*(_sizeX + _reticleShiftX),
|
safezoneX + 0.5 * safezoneW - 0.5 * (_sizeX + _reticleShiftX),
|
||||||
safezoneY + 0.5 * safezoneH - 0.5*(_sizeY + _reticleShiftY),
|
safezoneY + 0.5 * safezoneH - 0.5 * (_sizeY + _reticleShiftY),
|
||||||
_sizeX,
|
_sizeX,
|
||||||
_sizeY
|
_sizeY
|
||||||
];
|
];
|
||||||
@ -63,8 +63,8 @@ private _positionReticle = [
|
|||||||
(_display displayCtrl 1713002) ctrlSetPosition _positionReticle;
|
(_display displayCtrl 1713002) ctrlSetPosition _positionReticle;
|
||||||
|
|
||||||
private _positionBody = [
|
private _positionBody = [
|
||||||
safezoneX + 0.5 * safezoneW - 0.5*(2 * _sizeX + _scopeShiftX),
|
safezoneX + 0.5 * safezoneW - 0.5 * (2 * _sizeX + _scopeShiftX),
|
||||||
safezoneY + 0.5 * safezoneH - 0.5*(2 * _sizeY + _scopeShiftY),
|
safezoneY + 0.5 * safezoneH - 0.5 * (2 * _sizeY + _scopeShiftY),
|
||||||
2 * _sizeX,
|
2 * _sizeX,
|
||||||
2 * _sizeY
|
2 * _sizeY
|
||||||
];
|
];
|
||||||
@ -78,8 +78,8 @@ private _positionBody = [
|
|||||||
(_display displayCtrl 1713006) ctrlCommit 0;
|
(_display displayCtrl 1713006) ctrlCommit 0;
|
||||||
|
|
||||||
// Bring them all back
|
// Bring them all back
|
||||||
_sizeX = 0.75/(getResolution select 5);
|
_sizeX = 0.75 / (getResolution select 5);
|
||||||
_sizeY = _sizeX*(4/3);
|
_sizeY = _sizeX * (4 / 3);
|
||||||
|
|
||||||
_positionReticle = [
|
_positionReticle = [
|
||||||
safezoneX + 0.5 * safezoneW - 0.5 * _sizeX,
|
safezoneX + 0.5 * safezoneW - 0.5 * _sizeX,
|
||||||
|
@ -26,12 +26,12 @@ if (!ctrlShown (_display displayCtrl 154)) exitWith {
|
|||||||
_control ctrlShow false;
|
_control ctrlShow false;
|
||||||
};
|
};
|
||||||
|
|
||||||
private _sizeX = (call EFUNC(common,getZoom))/4;
|
private _sizeX = (call EFUNC(common,getZoom)) / 4;
|
||||||
private _sizeY = _sizeX*safezoneW/safezoneH;
|
private _sizeY = _sizeX * safezoneW / safezoneH;
|
||||||
|
|
||||||
_control ctrlSetPosition [
|
_control ctrlSetPosition [
|
||||||
safezoneX+0.5*safezoneW-0.5*_sizeX,
|
safezoneX + 0.5 * safezoneW - 0.5 * _sizeX,
|
||||||
safezoneY+0.5*safezoneH-0.5*_sizeY,
|
safezoneY + 0.5 * safezoneH - 0.5 * _sizeY,
|
||||||
_sizeX,
|
_sizeX,
|
||||||
_sizeY
|
_sizeY
|
||||||
];
|
];
|
||||||
|
@ -32,7 +32,7 @@ if (_isPIP) then {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// PiP technique by BadBenson
|
// PiP technique by BadBenson
|
||||||
GVAR(camera) = "camera" camCreate positionCameraToWorld [0,0,0];
|
GVAR(camera) = "camera" camCreate positionCameraToWorld [0, 0, 0];
|
||||||
GVAR(camera) camSetFov 0.7;
|
GVAR(camera) camSetFov 0.7;
|
||||||
GVAR(camera) camSetTarget ACE_player;
|
GVAR(camera) camSetTarget ACE_player;
|
||||||
GVAR(camera) camCommit 1;
|
GVAR(camera) camCommit 1;
|
||||||
@ -42,7 +42,7 @@ if (_isPIP) then {
|
|||||||
|
|
||||||
TRACE_2("created new pip camera",GVAR(camera),isNull GVAR(camera));
|
TRACE_2("created new pip camera",GVAR(camera),isNull GVAR(camera));
|
||||||
|
|
||||||
//Start a waitUntil to handle destruction after GVAR(pipLastFrame) is no longer updated
|
// Start a waitUntil to handle destruction after GVAR(pipLastFrame) is no longer updated
|
||||||
[{
|
[{
|
||||||
(abs (diag_frameno - GVAR(pipLastFrame))) > 1
|
(abs (diag_frameno - GVAR(pipLastFrame))) > 1
|
||||||
}, {
|
}, {
|
||||||
@ -64,8 +64,8 @@ if (!ctrlShown (_display displayCtrl 154)) exitWith {
|
|||||||
};
|
};
|
||||||
|
|
||||||
if (_isPIP) then {
|
if (_isPIP) then {
|
||||||
GVAR(camera) setPosATL positionCameraToWorld [0,0,0.4];
|
GVAR(camera) setPosATL positionCameraToWorld [0, 0, 0.4];
|
||||||
GVAR(camera) camPrepareTarget positionCameraToWorld [0,0,50];
|
GVAR(camera) camPrepareTarget positionCameraToWorld [0, 0, 50];
|
||||||
GVAR(camera) camCommitPrepared 0;
|
GVAR(camera) camCommitPrepared 0;
|
||||||
|
|
||||||
// @todo, check if that needs to be done at all
|
// @todo, check if that needs to be done at all
|
||||||
@ -78,15 +78,15 @@ if (_isPIP) then {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
// calculate lighting
|
// Calculate lighting
|
||||||
private _dayOpacity = call EFUNC(common,ambientBrightness);
|
private _dayOpacity = call EFUNC(common,ambientBrightness);
|
||||||
private _nightOpacity = [1,0] select (_dayOpacity == 1);
|
private _nightOpacity = [1, 0] select (_dayOpacity == 1);
|
||||||
|
|
||||||
// Apply lighting and make layers visible
|
// Apply lighting and make layers visible
|
||||||
(_display displayCtrl 1713001) ctrlSetTextColor [1,1,1,1];
|
(_display displayCtrl 1713001) ctrlSetTextColor [1, 1, 1, 1];
|
||||||
(_display displayCtrl 1713002) ctrlSetTextColor [1,1,1,[0,1] select (_dayOpacity < 0.5)];
|
(_display displayCtrl 1713002) ctrlSetTextColor [1, 1, 1, [0, 1] select (_dayOpacity < 0.5)];
|
||||||
(_display displayCtrl 1713005) ctrlSetTextColor [1,1,1,_dayOpacity];
|
(_display displayCtrl 1713005) ctrlSetTextColor [1, 1, 1, _dayOpacity];
|
||||||
(_display displayCtrl 1713006) ctrlSetTextColor [1,1,1,_nightOpacity];
|
(_display displayCtrl 1713006) ctrlSetTextColor [1, 1, 1, _nightOpacity];
|
||||||
|
|
||||||
/*
|
/*
|
||||||
(_display displayCtrl 1713001) ctrlCommit 0;
|
(_display displayCtrl 1713001) ctrlCommit 0;
|
||||||
|
@ -26,12 +26,12 @@ class CfgVehicles {
|
|||||||
// so if a vehicle's engine starts, the entire model will begin to warm up at the rate of htMax up to a temperature of afMax,
|
// so if a vehicle's engine starts, the entire model will begin to warm up at the rate of htMax up to a temperature of afMax,
|
||||||
// likewise if it begins driving, the entire model will heat up at the rate specified by htMax to a maximum temperature of mfMax.
|
// likewise if it begins driving, the entire model will heat up at the rate specified by htMax to a maximum temperature of mfMax.
|
||||||
class AllVehicles: All {
|
class AllVehicles: All {
|
||||||
htMin=60; // Minimum half-cooling time (in seconds)
|
htMin = 60; // Minimum half-cooling time (in seconds)
|
||||||
htMax=1800; // Maximum half-cooling time (in seconds)
|
htMax = 1800; // Maximum half-cooling time (in seconds)
|
||||||
afMax=70; // Maximum temperature in case the model is alive (in celsius)
|
afMax = 70; // Maximum temperature in case the model is alive (in celsius)
|
||||||
mfMax=50; // Maximum temperature when the model is moving (in celsius)
|
mfMax = 50; // Maximum temperature when the model is moving (in celsius)
|
||||||
mFact=0.0; // Metabolism factor - number from interval <0, 1> (0 - metabolism has no influence, 1 - metabolism has full influence (no other temperature source will be considered))
|
mFact = 0.0; // Metabolism factor - number from interval <0, 1> (0 - metabolism has no influence, 1 - metabolism has full influence (no other temperature source will be considered))
|
||||||
tBody=0; // Metabolism temperature of the model (in celsius)
|
tBody = 0; // Metabolism temperature of the model (in celsius)
|
||||||
};
|
};
|
||||||
|
|
||||||
class Animal;
|
class Animal;
|
||||||
|
Loading…
Reference in New Issue
Block a user