diff --git a/FA_Weapons_VKN/config.cpp b/FA_Weapons_VKN/config.cpp index 6dc2da0..297c605 100644 --- a/FA_Weapons_VKN/config.cpp +++ b/FA_Weapons_VKN/config.cpp @@ -1,1157 +1,1156 @@ -/* -File: -config.cpp - FA_Weapons_VKN - -Author: -Luca - https://steamcommunity.com/id/7112015/ - -Made for: -Viking PMC Mod - -Model Sources: -https://www.cgtrader.com/3d-models/military/gun/akm-model-and-textures-d57f1daa31fedfe78f111ace718dd32b -https://www.cgtrader.com/3d-models/military/gun/ak-74-093b2b06-e36c-4130-ac62-9162c96d2c4c -https://sketchfab.com/3d-models/mp5-submachinegun-2a9ce66fe96643fc8f20927401e5054c -https://sketchfab.com/3d-models/svd-dragunov-updated-d4a9412275aa4974b146ad8ce9dc5fc2 -https://sketchfab.com/3d-models/vss-vintorez-18e1f60286d346728f650984f4ae70aa -https://www.cgtrader.com/3d-models/military/gun/ak5c-rifle - -Documentation: -Config files for them gunz, what else m8? - -Usage Agreement: -Permission is hereby given to the Viking PMC Mod to make use of the weapons and files within this pbo. - -Viking PMC does not have ownership of the included contents and as such are not permitted to re-distribute any of the included files, nor to grant permission to others to make use of them. -Furthermore it is forbidden to change/remove any of the authors tagged, be that me (Luca) or the original 3D-Artists whose work has been used in the creation of these weapons. -It is also not allowed to remove or change any of the URLs that link to the original sourcefiles. - -Usage of these files on monetized servers/communities is prohibited, unless permitted BI and all other mod authors whose work is being used. - -This pbo file must be kept and not renamed, and all its contents must remain within, however they may be altered as long as the process of doing so does not violate the agreement in any form or way. -Viking PMC are permitted to edit/change values, animations, sounds, textures, etc. as they see fit as long as it does not violate any other points of the agreement. -This includes but is not limted to: textures, config-files, 3D-models. - -I (Luca) do keep the right to cancel the permitted use of my work at any point without further explanation if deemed necessary, this requires the Viking PMC mod to remove any of the files based on, and all files included within, this pbo from their mod as soon as possible (best case: within 24-48h). -*/ - -#define private 0 -#define protected 1 -#define public 2 - -class CfgPatches -{ - class FA_Weapons_VKN - { - author = "Luca"; - requiredaddons[] = {"A3_Weapons_F","A3_Data_F"}; - requiredversion = 1.0; - units[] = {}; - weapons[] = {"VKN_AK5C", "VKN_VSS", "VKN_MP5"}; - magazines[] = {"VKN_10Rnd_762x54mm_Mag", "VKN_20Rnd_9x39mm_Mag"}; - }; -}; - -class cfgSoundShaders -{ - class mx_Closure_SoundShader; - class mx_closeShot_SoundShader; - class mx_midShot_SoundShader; - class mx_distShot_SoundShader; - class AK5C_Closure_SoundShader : mx_Closure_SoundShader - { - samples[] = {{"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_1.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_2.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_3.ogg", 1}}; - }; - class AK5C_closeShot_SoundShader : mx_closeShot_SoundShader - { - samples[] = {{"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_1.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_2.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_3.ogg", 1}}; - }; - class AK5C_midShot_SoundShader : mx_midShot_SoundShader - { - samples[] = {{"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_1.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_2.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_3.ogg", 1}}; - }; - class AK5C_distShot_SoundShader : mx_distShot_SoundShader - { - samples[] = {{"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_1.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_2.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_3.ogg", 1}}; - }; -}; - -class cfgSoundSets { - class AK5C_Shot_SoundSet { - soundShaders[] = {AK5C_Closure_SoundShader, AK5C_closeShot_SoundShader, AK5C_midShot_SoundShader, AK5C_distShot_SoundShader}; - }; -}; -class Mode_SemiAuto; -class Mode_FullAuto; -class Mode_Burst; -class SlotInfo; -class PointerSlot; -class CowsSlot; -class MuzzleSlot; -class UnderBarrelSlot; -class GunParticles; - -class CfgWeapons -{ - class Rifle_Base_F; - class Pistol_Base_F; - - class FA_Base_Rifle_VKN : Rifle_Base_F { - class WeaponSlotsInfo { - class SlotInfo; - }; - class GunParticles; - class AnimationSources; - }; - - class FA_Base_Pistol_VKN : Pistol_Base_F { - class WeaponSlotsInfo { - class SlotInfo; - }; - class GunParticles; - class AnimationSources; - }; - -//AKM - Source: https://www.cgtrader.com/3d-models/military/gun/akm-model-and-textures-d57f1daa31fedfe78f111ace718dd32b - class VKN_AKM: FA_Base_Rifle_VKN - { - scope = public; - author = "Luca, Author: chamferzone"; - maxZeroing = 800; - picture = "\FA_Weapons_VKN\data\icons\icon_akm_ca.paa"; - displayName = "AKM"; - descriptionShort = "AKM - Assault Rifle <br/>Caliber: 7.62x39mm"; - magazines[] = {"30Rnd_762x39_Mag_F","30Rnd_762x39_Mag_Green_F","30Rnd_762x39_Mag_Tracer_F","30Rnd_762x39_Mag_Tracer_Green_F"}; - model = "FA_Weapons_VKN\data\akm\AKM.p3d"; - hiddenSelections[] = {"camo1"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\akm\textures\akm_co.paa"}; - changeFiremodeSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK47\AK47_firemode",0.6,1,5}; - drySound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK47\AK47_dry", 0.6,1,10}; - reloadMagazineSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK47\AK47_reload",1,1,10}; - reloadAction = "GestureReloadAKM"; - handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_Exp\Rifles\AKM\Data\Anim\akm.rtm"}; - inertia = 0.6; - recoil = "recoil_akm"; - modes[] = {"FullAuto", "Single"}; - - class Single: Mode_SemiAuto - { - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]={"AK47_Shot_SoundSet","AK47_tail_SoundSet","AK47_InteriorTail_SoundSet"}; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]={"AK12_silencerShot_SoundSet","AK12_silencerTail_SoundSet","AK12_silencerInteriorTail_SoundSet"}; - }; - reloadTime=0.1; - dispersion = 0.00145; - }; - - class FullAuto: Mode_FullAuto - { - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]={"AK47_Shot_SoundSet","AK47_tail_SoundSet","AK47_InteriorTail_SoundSet"}; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]={"AK12_silencerShot_SoundSet","AK12_silencerTail_SoundSet","AK12_silencerInteriorTail_SoundSet"}; - }; - reloadTime = 0.1; - dispersion = 0.00145; - }; - - class WeaponSlotsInfo : WeaponSlotsInfo - { - mass = 120; - allowedSlots[] = {901}; - class MuzzleSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - iconScale = 0.1; - }; - class CowsSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - class PointerSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - iconScale = 0.1; - }; - }; - }; - -//AK74M - Source: https://www.cgtrader.com/3d-models/military/gun/ak-74-093b2b06-e36c-4130-ac62-9162c96d2c4c - class VKN_AK74M : FA_Base_Rifle_VKN { - scope = public; - author = "Luca, Author: saintsellotape"; - maxZeroing = 600; - displayName = "AK-74M"; - descriptionshort = "AK-74M - Assault Rifle <br/>Caliber: 5.45x39mm"; - model = "\FA_Weapons_VKN\data\ak74\AK74M.p3d"; - magazines[] = {"30Rnd_545x39_Mag_F","30Rnd_545x39_Mag_Green_F","30Rnd_545x39_Mag_Tracer_F","30Rnd_545x39_Mag_Tracer_Green_F"}; - reloadAction = "GestureReloadAKM"; - handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_Exp\Rifles\AKM\Data\Anim\akm.rtm"}; - drySound[]={"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK74\AK74_dry",0.6,1,10}; - reloadMagazineSound[]={"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK74\AK74_reload",1,1,10}; - changeFiremodeSound[]={"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK74\AK74_firemode",0.7,1,5}; - picture = "\FA_Weapons_VKN\data\icons\icon_ak74_ca.paa"; - inertia = 0.55; - recoil = "recoil_aks"; - modes[]= {"FullAuto", "Single"}; - hiddenSelections[] = {"camo_body","camo_grip","camo_handguard","camo_stock","camo_muzzle"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak74\textures\camo_body\body_co.paa", "FA_Weapons_VKN\data\ak74\textures\camo_grip\grip_plastic_co.paa", "FA_Weapons_VKN\data\ak74\textures\camo_handguard\handguard_plastic_co.paa", "FA_Weapons_VKN\data\ak74\textures\camo_stock\stock_plastic_co.paa", "FA_Weapons_VKN\data\ak74\textures\camo_muzzle\FlashSuppressor_co.paa"}; - magazineReloadSwitchPhase = 0.15; - - class Single: Mode_SemiAuto - { - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]={"AK74_Shot_SoundSet","AK74_Tail_SoundSet","AK74_InteriorTail_SoundSet"}; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]={"SPAR01_silencerShot_SoundSet","SPAR01_silencerTail_SoundSet","SPAR01_silencerInteriorTail_SoundSet"}; - }; - dispersion=0.00145; - reloadTime=0.085000001; - }; - class FullAuto: Mode_FullAuto - { - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]={"AK74_Shot_SoundSet","AK74_Tail_SoundSet","AK74_InteriorTail_SoundSet"}; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]={"SPAR01_silencerShot_SoundSet","SPAR01_silencerTail_SoundSet","SPAR01_silencerInteriorTail_SoundSet"}; - }; - dispersion=0.00145; - reloadTime=0.085000001; - }; - - class WeaponSlotsInfo : WeaponSlotsInfo - { - mass = 105; - allowedSlots[] = {901}; - - class MuzzleSlot : SlotInfo { - linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - iconScale = 0.1; - }; - - class CowsSlot : SlotInfo { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - - class PointerSlot : SlotInfo { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - displayName = "$STR_A3_PointerSlot0"; - iconScale = 0.1; - }; - }; - }; - -//MP5 - Source: https://sketchfab.com/3d-models/mp5-submachinegun-2a9ce66fe96643fc8f20927401e5054c - class VKN_MP5 : FA_Base_Rifle_VKN { - scope = public; - author = "Luca, Author: michaelkarel29"; - maxZeroing = 200; - displayName = "MP5"; - descriptionshort = "MP5 - Submachine Gun <br/>Caliber: 9x21mm"; - model = "\FA_Weapons_VKN\data\mp5\MP5.p3d"; - magazines[] = {"30Rnd_9x21_Mag_SMG_02_Tracer_Green","30Rnd_9x21_Mag_SMG_02_Tracer_Yellow","30Rnd_9x21_Mag_SMG_02_Tracer_Red","30Rnd_9x21_Mag_SMG_02"}; - picture = "\FA_Weapons_VKN\data\icons\icon_mp5_ca.paa"; - changeFiremodeSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\SMGs\Rogue9\Rogue9_firemode",0.6,1,5}; - drySound[] = {"A3\Sounds_F_Exp\arsenal\weapons\SMGs\Rogue9\Rogue9_dry", 0.6, 1, 10}; - hiddenSelections[] = {"camo1","camo2"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\mp5\textures\mp5_co.paa", "FA_Weapons_VKN\data\mp5\textures\mp5_co.paa"}; - hiddenSelectionsMaterials[] = {"FA_Weapons_VKN\data\mp5\textures\mp5.rvmat", "FA_Weapons_VKN\data\mp5\textures\mp5_plastic.rvmat"}; - handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_beta\Smgs\SMG_02\data\Anim\SMG_02.rtm"}; - reloadAction = "GestureReloadSMG_05"; - reloadMagazineSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\SMGs\Rogue9\Rogue9_Reload",1,1,10}; - inertia = 0.25; - recoil = "recoil_smg_05"; - modes[] = {"FullAuto", "Burst", "Single"}; - - class Single : Mode_SemiAuto { - sounds[]= - { - "StandardSound", - "SilencedSound" - }; - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]= - { - "Rogue9_Shot_SoundSet", - "Rogue9_Tail_SoundSet", - "Rogue9_InteriorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "Rogue9_silencerShot_SoundSet", - "Rogue9_silencerTail_SoundSet", - "Rogue9_silencerInteriorTail_SoundSet" - }; - }; - reloadTime = 0.067000002; - dispersion = 0.001391; - }; - class Burst : Mode_Burst - { - sounds[]= - { - "StandardSound", - "SilencedSound" - }; - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]= - { - "Rogue9_Shot_SoundSet", - "Rogue9_Tail_SoundSet", - "Rogue9_InteriorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "Rogue9_silencerShot_SoundSet", - "Rogue9_silencerTail_SoundSet", - "Rogue9_silencerInteriorTail_SoundSet" - }; - }; - reloadTime = 0.067000002; - dispersion = 0.001391; - }; - class FullAuto : Mode_FullAuto - { - sounds[]= - { - "StandardSound", - "SilencedSound" - }; - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]= - { - "Rogue9_Shot_SoundSet", - "Rogue9_Tail_SoundSet", - "Rogue9_InteriorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "Rogue9_silencerShot_SoundSet", - "Rogue9_silencerTail_SoundSet", - "Rogue9_silencerInteriorTail_SoundSet" - }; - }; - reloadTime = 0.067000002; - dispersion = 0.001391; - }; - class WeaponSlotsInfo - { - mass = 50; - allowedSlots[] = {901}; - class MuzzleSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - iconScale = 0.1; - }; - class CowsSlot : CowsSlot - { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - class PointerSlot : PointerSlot - { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - iconScale = 0.1; - }; - }; - }; - -//SVD - Source: https://sketchfab.com/3d-models/svd-dragunov-updated-d4a9412275aa4974b146ad8ce9dc5fc2 - class VKN_SVD: FA_Base_Rifle_VKN - { - scope = public; - author = "Luca, Author: WillyG99"; - maxZeroing = 1000; - picture = "\FA_Weapons_VKN\data\icons\icon_svd_ca.paa"; - displayName = "SVD"; - descriptionShort = "SVD - Sniper Rifle <br/>Caliber: 7.62x54mm"; - magazines[] = {"VKN_10Rnd_762x54mm_Mag"}; - model = "FA_Weapons_VKN\data\svd\SVD.p3d"; - hiddenSelections[] = {"camo1","camo2"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\svd\textures\svd_co.paa", "FA_Weapons_VKN\data\svd\textures\svd_co.paa"}; - drySound[] = {"A3\Sounds_F_Mark\arsenal\weapons\LongRangeRifles\DMR_05_Cyrus\DMR_05_Dry",0.6,1,10}; - handAnim[] = {"OFP2_ManSkeleton","\A3\Weapons_F_Mark\LongRangeRifles\DMR_04\data\Anim\DMR_04.rtm"}; - reloadAction = "GestureReloadDMR05"; - reloadMagazineSound[] = {"A3\Sounds_F_Mark\arsenal\weapons\LongRangeRifles\DMR_05_Cyrus\DMR_05_reload",1,1,10}; - inertia = 0.75; - recoil = "recoil_dmr_02"; - modes[] = {"Single"}; - - class Single : Mode_SemiAuto { - sounds[]= - { - "StandardSound", - "SilencedSound" - }; - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]= - { - "DMR05_Shot_SoundSet", - "DMR05_tail_SoundSet", - "DMR05_InteriorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "DMR05_silencerShot_SoundSet", - "DMR05_silencerTail_SoundSet", - "DMR05_silencerInteriorTail_SoundSet" - }; - }; - reloadTime = 0.13; - dispersion = 0.000461; - }; - class WeaponSlotsInfo - { - mass = 165; - allowedSlots[] = {901}; - class MuzzleSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - iconScale = 0.1; - }; - class CowsSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - class UnderBarrelSlot : SlotInfo - { - linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; - iconScale = 0.1; - }; - }; - }; -//VSS - Source: https://sketchfab.com/3d-models/vss-vintorez-18e1f60286d346728f650984f4ae70aa - class VKN_VSS : FA_Base_Rifle_VKN { - scope = public; - author = "Luca, Author: Artem Goyko"; - maxZeroing = 500; - displayName = "VSS Vintorez"; - descriptionshort = "VSS - Sniper Rifle <br/>Caliber: 9x39mm"; - model = "\FA_Weapons_VKN\data\vss\vss.p3d"; - magazines[] = {"VKN_20Rnd_9x39mm_Mag"}; - picture = "\FA_Weapons_VKN\data\icons\icon_vss_ca.paa"; - changeFiremodeSound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Vermin\firemode_Vermin",0.6,1,5}; - drySound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Vermin\Dry_Vermin",0.6,1,10}; - hiddenSelections[] = {"camo1"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\vss\textures\camo1_LIGHT_TEST_co.paa"}; - handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_beta\Smgs\SMG_02\data\Anim\SMG_02.rtm"}; - reloadAction="GestureReloadSMG_02"; - reloadMagazineSound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Sting\reload_sting",1,1,10}; - inertia = 0.4; - recoil = "recoil_smg_01"; - modes[] = {"Single", "FullAuto"}; - - class Single: Mode_SemiAuto - { - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - SoundSetShot[]= - { - "SMGVermin_silencerShot_SoundSet", - "SMGVermin_silencerTail_SoundSet", - "SMGVermin_silencerInteriorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "SMGVermin_silencerShot_SoundSet", - "SMGVermin_silencerTail_SoundSet", - "SMGVermin_silencerInteriorTail_SoundSet" - }; - }; - reloadTime=0.11; - dispersion = 0.00046; - }; - class FullAuto: Mode_FullAuto - { - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - SoundSetShot[]= - { - "SMGVermin_silencerShot_SoundSet", - "SMGVermin_silencerTail_SoundSet", - "SMGVermin_silencerInteriorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "SMGVermin_silencerShot_SoundSet", - "SMGVermin_silencerTail_SoundSet", - "SMGVermin_silencerInteriorTail_SoundSet" - }; - }; - reloadTime = 0.11; - dispersion = 0.00046; - }; - class WeaponSlotsInfo - { - mass = 80; - allowedSlots[] = {901,701}; - class CowsSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - class PointerSlot : PointerSlot - { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - iconScale = 0.1; - }; - }; - }; - - -//AK5C - Source: https://www.cgtrader.com/3d-models/military/gun/ak5c-rifle -class VKN_AK5C : FA_Base_Rifle_VKN - { - scope = public; - author = "Luca, Author: A-Editor"; - maxZeroing = 600; - displayName = "AK5C Green"; - descriptionshort = "AK5C - Assault Rifle <br/>Caliber: 5.56x45mm"; - model = "\FA_Weapons_VKN\data\ak5c\ak5c.p3d"; - magazines[] = {"30Rnd_556x45_Stanag", "30Rnd_556x45_Stanag_green", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red", "30Rnd_556x45_Stanag_Tracer_Green", "30Rnd_556x45_Stanag_Tracer_Yellow"}; - reloadAction = "GestureReloadSPAR_01"; - handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_Exp\Rifles\SPAR_01\Data\Anim\SPAR_01.rtm"}; - drySound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\SPAR01\SPAR01_dry", 0.5, 1, 10}; - reloadMagazineSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\SPAR01\SPAR01_reload", 1, 1, 10}; - changeFiremodeSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\SPAR01\SPAR01_firemode", 0.6, 1, 5}; - picture = "\FA_Weapons_VKN\data\icons\icon_ak5c_ca.paa"; - inertia = 0.45; - recoil = "recoil_aks"; - modes[] = {"FullAuto", "Single"}; - hiddenSelections[] = {"camo1"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_od_co.paa"}; - class Single : Mode_SemiAuto - { - class BaseSoundModeType; - class StandardSound : BaseSoundModeType - { - soundSetShot[]={"AK74_Shot_SoundSet","AK74_Tail_SoundSet","AK74_InteriorTail_SoundSet"}; - }; - class SilencedSound : BaseSoundModeType - { - SoundSetShot[] = {"Mk20_silencerShot_SoundSet", "Mk20_silencerTail_SoundSet"}; - }; - dispersion = 0.00132; - reloadTime = 0.0735; - }; - class FullAuto : Mode_FullAuto - { - class BaseSoundModeType; - class StandardSound : BaseSoundModeType - { - soundSetShot[]={"AK74_Shot_SoundSet","AK74_Tail_SoundSet","AK74_InteriorTail_SoundSet"}; - }; - class SilencedSound : BaseSoundModeType - { - SoundSetShot[] = {"Mk20_silencerShot_SoundSet", "Mk20_silencerTail_SoundSet"}; - }; - dispersion = 0.00132; - reloadTime = 0.0735; - }; - class WeaponSlotsInfo : WeaponSlotsInfo - { - mass = 100; - allowedSlots[] = {901}; - class MuzzleSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - iconScale = 0.1; - }; - class CowsSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - class PointerSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - displayName = "$STR_A3_PointerSlot0"; - compatibleItems[] = {"acc_flashlight", "acc_pointer_IR"}; - iconScale = 0.1; - }; - class UnderBarrelSlot : SlotInfo - { - linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; - iconScale = 0.1; - }; - }; - }; - class VKN_AK5C_Collapsed : VKN_AK5C - { - scope = public; - author = "Luca, Author: A-Editor"; - displayName = "AK5C Green (Collapsed)"; - model = "\FA_Weapons_VKN\data\ak5c\ak5c_collapsed.p3d"; - inertia = 0.35; - }; - class VKN_AK5C_bl : VKN_AK5C - { - scope = public; - author = "Luca, Author: A-Editor"; - displayName = "AK5C Black"; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_bl_co.paa"}; - }; - class VKN_AK5C_bl_Collapsed : VKN_AK5C_Collapsed - { - scope = public; - author = "Luca, Author: A-Editor"; - displayName = "AK5C Black (Collapsed)"; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_bl_co.paa"}; - }; - class VKN_AK5C_wht : VKN_AK5C - { - scope = public; - author = "Luca, Author: A-Editor"; - displayName = "AK5C White"; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_wht_co.paa"}; - }; - class VKN_AK5C_wht_Collapsed : VKN_AK5C_Collapsed - { - scope = public; - author = "Luca, Author: A-Editor"; - displayName = "AK5C White (Collapsed)"; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_wht_co.paa"}; - }; - class VKN_AK5C_snd : VKN_AK5C - { - scope = public; - author = "Luca, Author: A-Editor"; - displayName = "AK5C Sand"; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_snd_co.paa"}; - }; - class VKN_AK5C_snd_Collapsed : VKN_AK5C_Collapsed - { - scope = public; - author = "Luca, Author: A-Editor"; - displayName = "AK5C Sand (Collapsed)"; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_snd_co.paa"}; - }; -//Remington 870 - Source: https://www.cgtrader.com/3d-models/military/gun/rm-870-shotgun - class VKN_Remington870: FA_Base_Rifle_VKN - { - scope = public; - author = "Luca, Author: michaelkarel29"; - maxZeroing = 100; - picture = "\FA_Weapons_VKN\data\icons\icon_rm870_ca.paa"; - displayName = "Remington 870"; - descriptionShort = "Remington 870 - Shotgun <br/>Caliber: 12 Gauge"; - magazines[] = {"VKN_8Rnd_12Gauge_Pellets","VKN_8Rnd_12Gauge_Slugs","2Rnd_12Gauge_Pellets", "2Rnd_12Gauge_Slug"}; - model = "FA_Weapons_VKN\data\remington870\Remington870.p3d"; - hiddenSelections[] = {"camo1"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\remington870\textures\RM870_co.paa"}; - drySound[] = {"A3\sounds_f\weapons\other\dry1", 0.6, 1, 10}; - reloadMagazineSound[] = {"FA_Weapons_VKN\data\sounds\RM870_Reload.wav", 0.8, 1, 20}; - reloadAction = "GestureReloadM4SSAS"; - handAnim[] = {"OFP2_ManSkeleton", "\FA_Weapons_VKN\data\anims\RM870.rtm"}; - inertia = 0.4; - recoil = "recoil_huntershotgun_01"; - modes[] = {"Single"}; - - class Single : Mode_SemiAuto { - sounds[]= - { - "StandardSound", - "SilencedSound" - }; - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]= - { - "HunterShotgun_01_Shot_SoundSet", - "HunterShotgun_01_Tail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "HunterShotgun_01_Shot_SoundSet", - "HunterShotgun_01_Tail_SoundSet" - }; - }; - dispersion = 0.0037; - reloadTime = 0.5; - }; - - class WeaponSlotsInfo : WeaponSlotsInfo { - mass = 110; - allowedSlots[] = {901}; - - class CowsSlot : SlotInfo { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - }; - - class EventHandlers { - fired = "_this call CBA_fnc_weaponEvents"; - }; - class CBA_weaponEvents { - handAction = ""; - sound = "VKN_RM870_Pumping"; - soundLocation = "RightHandMiddle1"; - delay = 0; - onEmpty = 0; - hasOptic = 0; - soundEmpty = ""; - soundLocationEmpty = ""; - }; - }; - -//SIG P250 - Source: https://www.cgtrader.com/3d-models/military/gun/sig-sauer-p250 - class VKN_SigP250: FA_Base_Pistol_VKN - { - scope = public; - author = "Luca, Author: hanyrick"; - picture = "\FA_Weapons_VKN\data\icons\icon_sigp250_ca.paa"; - displayName = "Sig Sauer P250"; - descriptionShort = "Sig Sauer P250 - Handgun <br/>Caliber: 9x21mm"; - magazines[] = {"16Rnd_9x21_Mag","16Rnd_9x21_yellow_Mag","16Rnd_9x21_green_Mag","16Rnd_9x21_red_Mag","30Rnd_9x21_Green_Mag","30Rnd_9x21_Yellow_Mag","30Rnd_9x21_Red_Mag","30Rnd_9x21_Mag"}; - model = "FA_Weapons_VKN\data\sigp250\SigP250.p3d"; - hiddenSelections[] = {"camo1"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\sigp250\textures\SigP250_co.paa"}; - changeFiremodeSound[] = {}; - reloadMagazineSound[]={"A3\Sounds_F\arsenal\weapons\Pistols\P07\reload_P07",1,1,10}; - drySound[] = {"A3\Sounds_F\arsenal\weapons\Pistols\P07\dry_P07", 0.5, 1, 20}; - inertia = 0.1; - recoil = "recoil_pistol_p07"; - modes[] = {"Single"}; - class Single : Mode_SemiAuto - { - sounds[] = - { - StandardSound, - SilencedSound - }; - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]= - { - "P07_Shot_SoundSet", - "P07_Tail_SoundSet", - "P07_InteriorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "P07_silencerShot_SoundSet", - "P07_silencerTail_SoundSet", - "P07_silencerInteriorTail_SoundSet" - }; - }; - reloadTime = 0.08; - dispersion = 0.003; - }; - - class WeaponSlotsInfo : WeaponSlotsInfo - { - mass = 30; - allowedSlots[] = {701,801,901}; - class MuzzleSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - iconScale = 0.1; - }; - class CowsSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - class PointerSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - iconScale = 0.1; - }; - }; - }; - -//SIG P226 - Source: https://sketchfab.com/3d-models/sig-sauer-p226-53072553551e403a921448ee5581990e - class VKN_SigP226: FA_Base_Pistol_VKN - { - scope = public; - author = "Luca, Author: Yksnawel"; - picture = "\FA_Weapons_VKN\data\icons\icon_sigp226_ca.paa"; - displayName = "Sig Sauer P226"; - descriptionShort = "Sig Sauer P226 - Handgun <br/>Caliber: 9x21mm"; - magazines[] = {"16Rnd_9x21_Mag","16Rnd_9x21_yellow_Mag","16Rnd_9x21_green_Mag","16Rnd_9x21_red_Mag","30Rnd_9x21_Green_Mag","30Rnd_9x21_Yellow_Mag","30Rnd_9x21_Red_Mag","30Rnd_9x21_Mag"}; - model = "FA_Weapons_VKN\data\sigp226\SigP226.p3d"; - hiddenSelections[] = {"camo1","camo2","camo3","camo4","camo5"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\sigp226\textures\barrel\barrel_co.paa", "FA_Weapons_VKN\data\sigp226\textures\body\body_co.paa", "FA_Weapons_VKN\data\sigp226\textures\grip\grip_co.paa", "FA_Weapons_VKN\data\sigp226\textures\magazine\magazine_co.paa", "FA_Weapons_VKN\data\sigp226\textures\slide\slide_co.paa"}; - changeFiremodeSound[] = {}; - reloadMagazineSound[]={"A3\Sounds_F\arsenal\weapons\Pistols\P07\reload_P07",1,1,10}; - drySound[] = {"A3\Sounds_F\arsenal\weapons\Pistols\P07\dry_P07", 0.5, 1, 20}; - inertia = 0.1; - recoil = "recoil_pistol_rook40"; - modes[] = {"Single"}; - class Single : Mode_SemiAuto - { - sounds[] = - { - StandardSound, - SilencedSound - }; - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]= - { - "Rook40_Shot_SoundSet", - "Rook40_Tail_SoundSet", - "Rook40_InteriorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "Rook40_silencerShot_SoundSet", - "Rook40_silencerTail_SoundSet", - "Rook40_silencerInteriorTail_SoundSet" - }; - }; - reloadTime = 0.082; - dispersion = 0.00285; - }; - - class WeaponSlotsInfo : WeaponSlotsInfo - { - mass = 30; - allowedSlots[] = {701,801,901}; - class MuzzleSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - iconScale = 0.1; - }; - class CowsSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - class PointerSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - iconScale = 0.1; - }; - }; - }; - -//Desert Eagle - Source: https://www.cgtrader.com/3d-models/military/gun/desert-eagle-pbr - class VKN_DesertEagle: FA_Base_Pistol_VKN - { - scope = public; - author = "Luca"; - picture = "\FA_Weapons_VKN\data\icons\icon_deagle_ca.paa"; - displayName = "Desert Eagle"; - descriptionShort = "Desert Eagle - Handgun <br/>Caliber: .50 Action Express"; - magazines[] = {"VKN_7Rnd_50AE_Mag"}; - model = "FA_Weapons_VKN\data\deserteagle\DEagle.p3d"; - hiddenSelections[] = {"camo1","camo2"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\deserteagle\textures\DEagle_co.paa", "FA_Weapons_VKN\data\deserteagle\textures\bullet\bullet_co.paa"}; - changeFiremodeSound[] = {}; - reloadMagazineSound[]={"A3\Sounds_F\arsenal\weapons\Pistols\4-Five\reload_4_five",1.5,1,15}; - drySound[] = {"A3\Sounds_F\arsenal\weapons\Pistols\4-Five\dry_4_Five", 0.8, 1, 20}; - inertia = 0.13; - recoil = "recoil_ARX_secondary"; - modes[] = {"Single"}; - class Single : Mode_SemiAuto - { - sounds[] = - { - StandardSound, - SilencedSound - }; - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - soundSetShot[]= - { - "50cal_Type115_Shot_SoundSet", - "50cal_Type115_Tail_SoundSet", - "50cal_Type115_interiorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - soundSetShot[]= - { - "50cal_Type115_Shot_SoundSet", - "50cal_Type115_Tail_SoundSet", - "50cal_Type115_interiorTail_SoundSet" - }; - }; - reloadTime = 0.135; - dispersion = 0.00453; - }; - - class WeaponSlotsInfo : WeaponSlotsInfo - { - mass = 48; - allowedSlots[] = {701,801,901}; - class CowsSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - class PointerSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - iconScale = 0.1; - }; - }; - }; - -//AS Val - Source: https://www.cgtrader.com/3d-models/military/gun/as-val-game-ready - class VKN_ASVAL : FA_Base_Rifle_VKN { - scope = public; - author = "Luca, Author: simon1-mercuzot"; - maxZeroing = 300; - displayName = "AS Val"; - descriptionshort = "AS Val - Assault Rifle <br/>Caliber: 9x39mm"; - model = "\FA_Weapons_VKN\data\asval\as_val.p3d"; - magazines[] = {"VKN_30Rnd_9x39mm_Mag","VKN_20Rnd_9x39mm_Mag"}; - picture = "\FA_Weapons_VKN\data\icons\icon_asval_ca.paa"; - changeFiremodeSound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Vermin\firemode_Vermin",0.6,1,5}; - drySound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Vermin\Dry_Vermin",0.6,1,10}; - hiddenSelections[] = {"camo1"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\asval\textures\body_co.paa"}; - handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_beta\Smgs\SMG_02\data\Anim\SMG_02.rtm"}; - reloadAction="GestureReloadSMG_02"; - reloadMagazineSound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Sting\reload_sting",1,1,10}; - inertia = 0.3; - recoil = "recoil_smg_01"; - modes[] = {"Single", "FullAuto"}; - magazineReloadSwitchPhase = 0.15; - - class Single: Mode_SemiAuto - { - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - SoundSetShot[]= - { - "SMGVermin_silencerShot_SoundSet", - "SMGVermin_silencerTail_SoundSet", - "SMGVermin_silencerInteriorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "SMGVermin_silencerShot_SoundSet", - "SMGVermin_silencerTail_SoundSet", - "SMGVermin_silencerInteriorTail_SoundSet" - }; - }; - reloadTime=0.08; - dispersion = 0.000551; - }; - class FullAuto: Mode_FullAuto - { - class BaseSoundModeType; - class StandardSound: BaseSoundModeType - { - SoundSetShot[]= - { - "SMGVermin_silencerShot_SoundSet", - "SMGVermin_silencerTail_SoundSet", - "SMGVermin_silencerInteriorTail_SoundSet" - }; - }; - class SilencedSound: BaseSoundModeType - { - SoundSetShot[]= - { - "SMGVermin_silencerShot_SoundSet", - "SMGVermin_silencerTail_SoundSet", - "SMGVermin_silencerInteriorTail_SoundSet" - }; - }; - reloadTime = 0.08; - dispersion = 0.000551; - }; - class WeaponSlotsInfo - { - mass = 65; - allowedSlots[] = {901,701}; - class CowsSlot : SlotInfo - { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - iconScale = 0.1; - }; - class PointerSlot : PointerSlot - { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - iconScale = 0.1; - }; - }; - }; - - class VKN_ASVAL_Custom : VKN_ASVAL { - author = "Luca, Author: simon1-mercuzot"; - displayName = "AS Val (Custom)"; - model = "\FA_Weapons_VKN\data\asval\as_val_custom.p3d"; - hiddenSelections[] = {"camo1","camo2"}; - hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\asval\textures\body_co.paa","FA_Weapons_VKN\data\asval\textures\stock\stock_co.paa"}; - }; -}; - -class CfgAmmo { - class B_9x21_Ball; - class B_12Gauge_Slug_NoCartridge; - class B_12Gauge_Pellets_Submunition; - class B_50BW_Ball_F; - - class FA_VKN_9x39mm_Ball : B_9x21_Ball { - hit = 6; - caliber = 1.35; - }; - - class VKN_12Gauge_Slug : B_12Gauge_Slug_NoCartridge { - cartridge = "FxCartridge_slug"; - }; - - class VKN_12Gauge_Pellets : B_12Gauge_Pellets_Submunition { - cartridge = "FxCartridge_slug"; - }; - - class VKN_50AE_Ball : B_50BW_Ball_F { - hit = 13.2; - caliber = 2.2; - cartridge = "FxCartridge_762x39"; - }; -}; - -class CfgMagazines { - class 20Rnd_762x51_Mag; - class 30Rnd_9x21_Mag; - class 2Rnd_12Gauge_Slug; - class 2Rnd_12Gauge_Pellets; - class 9Rnd_45ACP_Mag; - - class VKN_10Rnd_762x54mm_Mag : 20Rnd_762x51_Mag { - scope = public; - author = "Luca"; - displayName = "10Rnd 7.62x54mm"; - picture = "\FA_Weapons_VKN\data\icons\icon_svd_mag_ca.paa"; - count = 10; - ammo = "B_762x54_Ball"; - descriptionshort = "Caliber: 7.62x54mm<br />Rounds: 10<br />Used in: SVD"; - mass = 10; - }; - - class VKN_20Rnd_9x39mm_Mag : 30Rnd_9x21_Mag { - scope = public; - author = "Luca"; - displayName = "20Rnd 9x39mm"; - picture = "\FA_Weapons_VKN\data\icons\icon_vss_mag_ca.paa"; - count = 20; - ammo = "FA_VKN_9x39mm_Ball"; - reloadAction="GestureReloadSMG_02"; - descriptionshort = "Caliber: 9x39mm<br />Rounds: 20<br />Used in: VSS, AS Val"; - model = "\FA_Weapons_VKN\data\magazines\20Rnd_939Mag.p3d"; - modelSpecial = "\FA_Weapons_VKN\data\magazines\20Rnd_939Mag.p3d"; - modelSpecialIsProxy = 1; - mass = 10; - }; - - class VKN_8Rnd_12Gauge_Slugs : 2Rnd_12Gauge_Slug { - scope = public; - author = "Luca"; - displayName = "8Rnd 12 Gauge Slugs"; - picture = "\FA_Weapons_VKN\data\icons\mag_slugs_ca.paa"; - count = 8; - //ammo = "B_12Gauge_Slug"; = Overpowered, use at own risk - ammo = "VKN_12Gauge_Slug"; - descriptionShort = "Caliber: 12 Gauge<br />Rounds: 8<br />Used in: Remington 870"; - mass = 8; - }; - - class VKN_8Rnd_12Gauge_Pellets : 2Rnd_12Gauge_Pellets { - scope = public; - author = "Luca"; - picture = "\FA_Weapons_VKN\data\icons\mag_pellets_ca.paa"; - displayName = "8Rnd 12 Gauge Pellets"; - count = 8; - //ammo = "B_12Gauge_Pellets"; = Overpowered, use at own risk - ammo = "VKN_12Gauge_Pellets"; - descriptionShort = "Caliber: 12 Gauge<br />Rounds: 8<br />Used in: Remington 870"; - mass = 8; - }; - - class VKN_7Rnd_50AE_Mag : 9Rnd_45ACP_Mag { - scope = public; - author = "Luca"; - displayName = "7Rnd .50AE"; - picture = "\FA_Weapons_VKN\data\icons\icon_deagle_mag_ca.paa"; - count = 7; - ammo = "VKN_50AE_Ball"; - descriptionshort = "Caliber: .50 Action Express<br />Rounds: 7<br />Used in: Desert Eagle"; - mass = 12; - }; - - class VKN_30Rnd_9x39mm_Mag : VKN_20Rnd_9x39mm_Mag { - scope = public; - author = "Luca"; - displayName = "30Rnd 9x39mm"; - picture = "\FA_Weapons_VKN\data\icons\icon_asval_mag_ca.paa"; - count = 30; - descriptionshort = "Caliber: 9x39mm<br />Rounds: 30<br />Used in: AS Val, VSS"; - model = "\FA_Weapons_VKN\data\magazines\30Rnd_939Mag.p3d"; - modelSpecial = "\FA_Weapons_VKN\data\magazines\30Rnd_939Mag.p3d"; - modelSpecialIsProxy = 1; - mass = 14; - }; -}; +/* +File: +config.cpp - FA_Weapons_VKN + +Author: +Luca - https://steamcommunity.com/id/7112015/ + +Made for: +Viking PMC Mod + +Model Sources: +https://www.cgtrader.com/3d-models/military/gun/akm-model-and-textures-d57f1daa31fedfe78f111ace718dd32b +https://www.cgtrader.com/3d-models/military/gun/ak-74-093b2b06-e36c-4130-ac62-9162c96d2c4c +https://sketchfab.com/3d-models/mp5-submachinegun-2a9ce66fe96643fc8f20927401e5054c +https://sketchfab.com/3d-models/svd-dragunov-updated-d4a9412275aa4974b146ad8ce9dc5fc2 +https://sketchfab.com/3d-models/vss-vintorez-18e1f60286d346728f650984f4ae70aa +https://www.cgtrader.com/3d-models/military/gun/ak5c-rifle + +Documentation: +Config files for them gunz, what else m8? + +Usage Agreement: +Permission is hereby given to the Viking PMC Mod to make use of the weapons and files within this pbo. + +Viking PMC does not have ownership of the included contents and as such are not permitted to re-distribute any of the included files, nor to grant permission to others to make use of them. +Furthermore it is forbidden to change/remove any of the authors tagged, be that me (Luca) or the original 3D-Artists whose work has been used in the creation of these weapons. +It is also not allowed to remove or change any of the URLs that link to the original sourcefiles. + +Usage of these files on monetized servers/communities is prohibited, unless permitted BI and all other mod authors whose work is being used. + +This pbo file must be kept and not renamed, and all its contents must remain within, however they may be altered as long as the process of doing so does not violate the agreement in any form or way. +Viking PMC are permitted to edit/change values, animations, sounds, textures, etc. as they see fit as long as it does not violate any other points of the agreement. +This includes but is not limted to: textures, config-files, 3D-models. + +I (Luca) do keep the right to cancel the permitted use of my work at any point without further explanation if deemed necessary, this requires the Viking PMC mod to remove any of the files based on, and all files included within, this pbo from their mod as soon as possible (best case: within 24-48h). +*/ + +#define private 0 +#define protected 1 +#define public 2 + +class CfgPatches +{ + class FA_Weapons_VKN + { + author = "Luca"; + requiredaddons[] = {"A3_Weapons_F","A3_Data_F"}; + requiredversion = 1.0; + units[] = {}; + weapons[] = {"VKN_AK5C", "VKN_VSS", "VKN_MP5"}; + magazines[] = {"VKN_10Rnd_762x54mm_Mag", "VKN_20Rnd_9x39mm_Mag"}; + }; +}; + +class cfgSoundShaders +{ + class mx_Closure_SoundShader; + class mx_closeShot_SoundShader; + class mx_midShot_SoundShader; + class mx_distShot_SoundShader; + class AK5C_Closure_SoundShader : mx_Closure_SoundShader + { + samples[] = {{"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_1.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_2.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_3.ogg", 1}}; + }; + class AK5C_closeShot_SoundShader : mx_closeShot_SoundShader + { + samples[] = {{"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_1.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_2.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_3.ogg", 1}}; + }; + class AK5C_midShot_SoundShader : mx_midShot_SoundShader + { + samples[] = {{"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_1.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_2.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_3.ogg", 1}}; + }; + class AK5C_distShot_SoundShader : mx_distShot_SoundShader + { + samples[] = {{"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_1.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_2.ogg", 1}, {"\FA_Weapons_VKN\data\ak5c\sounds\AK5C_st_3.ogg", 1}}; + }; +}; + +class cfgSoundSets { + class AK5C_Shot_SoundSet { + soundShaders[] = {AK5C_Closure_SoundShader, AK5C_closeShot_SoundShader, AK5C_midShot_SoundShader, AK5C_distShot_SoundShader}; + }; +}; +class Mode_SemiAuto; +class Mode_FullAuto; +class Mode_Burst; +class SlotInfo; +class PointerSlot; +class CowsSlot; +class MuzzleSlot; +class UnderBarrelSlot; +class GunParticles; + +class CfgWeapons +{ + class Rifle_Base_F; + class Pistol_Base_F; + + class FA_Base_Rifle_VKN : Rifle_Base_F { + class WeaponSlotsInfo { + class SlotInfo; + }; + class GunParticles; + class AnimationSources; + }; + + class FA_Base_Pistol_VKN : Pistol_Base_F { + class WeaponSlotsInfo { + class SlotInfo; + }; + class GunParticles; + class AnimationSources; + }; + +//AKM - Source: https://www.cgtrader.com/3d-models/military/gun/akm-model-and-textures-d57f1daa31fedfe78f111ace718dd32b + class VKN_AKM: FA_Base_Rifle_VKN + { + scope = public; + author = "Luca, Author: chamferzone"; + maxZeroing = 800; + picture = "\FA_Weapons_VKN\data\icons\icon_akm_ca.paa"; + displayName = "AKM"; + descriptionShort = "AKM - Assault Rifle <br/>Caliber: 7.62x39mm"; + magazines[] = {"30Rnd_762x39_Mag_F","30Rnd_762x39_Mag_Green_F","30Rnd_762x39_Mag_Tracer_F","30Rnd_762x39_Mag_Tracer_Green_F"}; + model = "FA_Weapons_VKN\data\akm\AKM.p3d"; + hiddenSelections[] = {"camo1"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\akm\textures\akm_co.paa"}; + changeFiremodeSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK47\AK47_firemode",0.6,1,5}; + drySound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK47\AK47_dry", 0.6,1,10}; + reloadMagazineSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK47\AK47_reload",1,1,10}; + reloadAction = "GestureReloadAKM"; + handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_Exp\Rifles\AKM\Data\Anim\akm.rtm"}; + inertia = 0.6; + recoil = "recoil_akm"; + modes[] = {"FullAuto", "Single"}; + + class Single: Mode_SemiAuto + { + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]={"AK47_Shot_SoundSet","AK47_tail_SoundSet","AK47_InteriorTail_SoundSet"}; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]={"AK12_silencerShot_SoundSet","AK12_silencerTail_SoundSet","AK12_silencerInteriorTail_SoundSet"}; + }; + reloadTime=0.1; + dispersion = 0.00145; + }; + + class FullAuto: Mode_FullAuto + { + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]={"AK47_Shot_SoundSet","AK47_tail_SoundSet","AK47_InteriorTail_SoundSet"}; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]={"AK12_silencerShot_SoundSet","AK12_silencerTail_SoundSet","AK12_silencerInteriorTail_SoundSet"}; + }; + reloadTime = 0.1; + dispersion = 0.00145; + }; + + class WeaponSlotsInfo : WeaponSlotsInfo + { + mass = 120; + allowedSlots[] = {901}; + class MuzzleSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + iconScale = 0.1; + }; + class CowsSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + class PointerSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + iconScale = 0.1; + }; + }; + }; + +//AK74M - Source: https://www.cgtrader.com/3d-models/military/gun/ak-74-093b2b06-e36c-4130-ac62-9162c96d2c4c + class VKN_AK74M : FA_Base_Rifle_VKN { + scope = public; + author = "Luca, Author: saintsellotape"; + maxZeroing = 600; + displayName = "AK-74M"; + descriptionshort = "AK-74M - Assault Rifle <br/>Caliber: 5.45x39mm"; + model = "\FA_Weapons_VKN\data\ak74\AK74M.p3d"; + magazines[] = {"30Rnd_545x39_Mag_F","30Rnd_545x39_Mag_Green_F","30Rnd_545x39_Mag_Tracer_F","30Rnd_545x39_Mag_Tracer_Green_F"}; + reloadAction = "GestureReloadAKM"; + handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_Exp\Rifles\AKM\Data\Anim\akm.rtm"}; + drySound[]={"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK74\AK74_dry",0.6,1,10}; + reloadMagazineSound[]={"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK74\AK74_reload",1,1,10}; + changeFiremodeSound[]={"A3\Sounds_F_Exp\arsenal\weapons\Rifles\Rifle_AK74\AK74_firemode",0.7,1,5}; + picture = "\FA_Weapons_VKN\data\icons\icon_ak74_ca.paa"; + inertia = 0.55; + recoil = "recoil_aks"; + modes[]= {"FullAuto", "Single"}; + hiddenSelections[] = {"camo_body","camo_grip","camo_handguard","camo_stock","camo_muzzle"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak74\textures\camo_body\body_co.paa", "FA_Weapons_VKN\data\ak74\textures\camo_grip\grip_plastic_co.paa", "FA_Weapons_VKN\data\ak74\textures\camo_handguard\handguard_plastic_co.paa", "FA_Weapons_VKN\data\ak74\textures\camo_stock\stock_plastic_co.paa", "FA_Weapons_VKN\data\ak74\textures\camo_muzzle\FlashSuppressor_co.paa"}; + magazineReloadSwitchPhase = 0.15; + + class Single: Mode_SemiAuto + { + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]={"AK74_Shot_SoundSet","AK74_Tail_SoundSet","AK74_InteriorTail_SoundSet"}; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]={"SPAR01_silencerShot_SoundSet","SPAR01_silencerTail_SoundSet","SPAR01_silencerInteriorTail_SoundSet"}; + }; + dispersion=0.00145; + reloadTime=0.085000001; + }; + class FullAuto: Mode_FullAuto + { + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]={"AK74_Shot_SoundSet","AK74_Tail_SoundSet","AK74_InteriorTail_SoundSet"}; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]={"SPAR01_silencerShot_SoundSet","SPAR01_silencerTail_SoundSet","SPAR01_silencerInteriorTail_SoundSet"}; + }; + dispersion=0.00145; + reloadTime=0.085000001; + }; + + class WeaponSlotsInfo : WeaponSlotsInfo + { + mass = 105; + allowedSlots[] = {901}; + + class MuzzleSlot : SlotInfo { + linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + iconScale = 0.1; + }; + + class CowsSlot : SlotInfo { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + + class PointerSlot : SlotInfo { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + displayName = "$STR_A3_PointerSlot0"; + iconScale = 0.1; + }; + }; + }; + +//MP5 - Source: https://sketchfab.com/3d-models/mp5-submachinegun-2a9ce66fe96643fc8f20927401e5054c + class VKN_MP5 : FA_Base_Rifle_VKN { + scope = public; + author = "Luca, Author: michaelkarel29"; + maxZeroing = 200; + displayName = "MP5"; + descriptionshort = "MP5 - Submachine Gun <br/>Caliber: 9x21mm"; + model = "\FA_Weapons_VKN\data\mp5\MP5.p3d"; + magazines[] = {"30Rnd_9x21_Mag_SMG_02_Tracer_Green","30Rnd_9x21_Mag_SMG_02_Tracer_Yellow","30Rnd_9x21_Mag_SMG_02_Tracer_Red","30Rnd_9x21_Mag_SMG_02"}; + picture = "\FA_Weapons_VKN\data\icons\icon_mp5_ca.paa"; + changeFiremodeSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\SMGs\Rogue9\Rogue9_firemode",0.6,1,5}; + drySound[] = {"A3\Sounds_F_Exp\arsenal\weapons\SMGs\Rogue9\Rogue9_dry", 0.6, 1, 10}; + hiddenSelections[] = {"camo1","camo2"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\mp5\textures\mp5_co.paa", "FA_Weapons_VKN\data\mp5\textures\mp5_co.paa"}; + hiddenSelectionsMaterials[] = {"FA_Weapons_VKN\data\mp5\textures\mp5.rvmat", "FA_Weapons_VKN\data\mp5\textures\mp5_plastic.rvmat"}; + handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_beta\Smgs\SMG_02\data\Anim\SMG_02.rtm"}; + reloadAction = "GestureReloadSMG_05"; + reloadMagazineSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\SMGs\Rogue9\Rogue9_Reload",1,1,10}; + inertia = 0.25; + recoil = "recoil_smg_05"; + modes[] = {"FullAuto", "Burst", "Single"}; + + class Single : Mode_SemiAuto { + sounds[]= + { + "StandardSound", + "SilencedSound" + }; + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]= + { + "Rogue9_Shot_SoundSet", + "Rogue9_Tail_SoundSet", + "Rogue9_InteriorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "Rogue9_silencerShot_SoundSet", + "Rogue9_silencerTail_SoundSet", + "Rogue9_silencerInteriorTail_SoundSet" + }; + }; + reloadTime = 0.067000002; + dispersion = 0.001391; + }; + class Burst : Mode_Burst + { + sounds[]= + { + "StandardSound", + "SilencedSound" + }; + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]= + { + "Rogue9_Shot_SoundSet", + "Rogue9_Tail_SoundSet", + "Rogue9_InteriorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "Rogue9_silencerShot_SoundSet", + "Rogue9_silencerTail_SoundSet", + "Rogue9_silencerInteriorTail_SoundSet" + }; + }; + reloadTime = 0.067000002; + dispersion = 0.001391; + }; + class FullAuto : Mode_FullAuto + { + sounds[]= + { + "StandardSound", + "SilencedSound" + }; + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]= + { + "Rogue9_Shot_SoundSet", + "Rogue9_Tail_SoundSet", + "Rogue9_InteriorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "Rogue9_silencerShot_SoundSet", + "Rogue9_silencerTail_SoundSet", + "Rogue9_silencerInteriorTail_SoundSet" + }; + }; + reloadTime = 0.067000002; + dispersion = 0.001391; + }; + class WeaponSlotsInfo + { + mass = 50; + allowedSlots[] = {901}; + class MuzzleSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + iconScale = 0.1; + }; + class CowsSlot : CowsSlot + { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + class PointerSlot : PointerSlot + { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + iconScale = 0.1; + }; + }; + }; + +//SVD - Source: https://sketchfab.com/3d-models/svd-dragunov-updated-d4a9412275aa4974b146ad8ce9dc5fc2 + class VKN_SVD: FA_Base_Rifle_VKN + { + scope = public; + author = "Luca, Author: WillyG99"; + maxZeroing = 1000; + picture = "\FA_Weapons_VKN\data\icons\icon_svd_ca.paa"; + displayName = "SVD"; + descriptionShort = "SVD - Sniper Rifle <br/>Caliber: 7.62x54mm"; + magazines[] = {"VKN_10Rnd_762x54mm_Mag"}; + model = "FA_Weapons_VKN\data\svd\SVD.p3d"; + hiddenSelections[] = {"camo1","camo2"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\svd\textures\svd_co.paa", "FA_Weapons_VKN\data\svd\textures\svd_co.paa"}; + drySound[] = {"A3\Sounds_F_Mark\arsenal\weapons\LongRangeRifles\DMR_05_Cyrus\DMR_05_Dry",0.6,1,10}; + handAnim[] = {"OFP2_ManSkeleton","\A3\Weapons_F_Mark\LongRangeRifles\DMR_04\data\Anim\DMR_04.rtm"}; + reloadAction = "GestureReloadDMR05"; + reloadMagazineSound[] = {"A3\Sounds_F_Mark\arsenal\weapons\LongRangeRifles\DMR_05_Cyrus\DMR_05_reload",1,1,10}; + inertia = 0.75; + recoil = "recoil_dmr_02"; + modes[] = {"Single"}; + + class Single : Mode_SemiAuto { + sounds[]= + { + "StandardSound", + "SilencedSound" + }; + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]= + { + "DMR05_Shot_SoundSet", + "DMR05_tail_SoundSet", + "DMR05_InteriorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "DMR05_silencerShot_SoundSet", + "DMR05_silencerTail_SoundSet", + "DMR05_silencerInteriorTail_SoundSet" + }; + }; + reloadTime = 0.13; + dispersion = 0.000461; + }; + class WeaponSlotsInfo + { + mass = 165; + allowedSlots[] = {901}; + class MuzzleSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + iconScale = 0.1; + }; + class CowsSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + class UnderBarrelSlot : SlotInfo + { + linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; + iconScale = 0.1; + }; + }; + }; +//VSS - Source: https://sketchfab.com/3d-models/vss-vintorez-18e1f60286d346728f650984f4ae70aa + class VKN_VSS : FA_Base_Rifle_VKN { + scope = public; + author = "Luca, Author: Artem Goyko"; + maxZeroing = 500; + displayName = "VSS Vintorez"; + descriptionshort = "VSS - Sniper Rifle <br/>Caliber: 9x39mm"; + model = "\FA_Weapons_VKN\data\vss\vss.p3d"; + magazines[] = {"VKN_20Rnd_9x39mm_Mag"}; + picture = "\FA_Weapons_VKN\data\icons\icon_vss_ca.paa"; + changeFiremodeSound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Vermin\firemode_Vermin",0.6,1,5}; + drySound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Vermin\Dry_Vermin",0.6,1,10}; + hiddenSelections[] = {"camo1"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\vss\textures\camo1_LIGHT_TEST_co.paa"}; + handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_beta\Smgs\SMG_02\data\Anim\SMG_02.rtm"}; + reloadAction="GestureReloadSMG_02"; + reloadMagazineSound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Sting\reload_sting",1,1,10}; + inertia = 0.4; + recoil = "recoil_smg_01"; + modes[] = {"Single", "FullAuto"}; + + class Single: Mode_SemiAuto + { + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + SoundSetShot[]= + { + "SMGVermin_silencerShot_SoundSet", + "SMGVermin_silencerTail_SoundSet", + "SMGVermin_silencerInteriorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "SMGVermin_silencerShot_SoundSet", + "SMGVermin_silencerTail_SoundSet", + "SMGVermin_silencerInteriorTail_SoundSet" + }; + }; + reloadTime=0.11; + dispersion = 0.00046; + }; + class FullAuto: Mode_FullAuto + { + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + SoundSetShot[]= + { + "SMGVermin_silencerShot_SoundSet", + "SMGVermin_silencerTail_SoundSet", + "SMGVermin_silencerInteriorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "SMGVermin_silencerShot_SoundSet", + "SMGVermin_silencerTail_SoundSet", + "SMGVermin_silencerInteriorTail_SoundSet" + }; + }; + reloadTime = 0.11; + dispersion = 0.00046; + }; + class WeaponSlotsInfo + { + mass = 80; + allowedSlots[] = {901,701}; + class CowsSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + class PointerSlot : PointerSlot + { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + iconScale = 0.1; + }; + }; + }; + + +//AK5C - Source: https://www.cgtrader.com/3d-models/military/gun/ak5c-rifle +class VKN_AK5C : FA_Base_Rifle_VKN + { + scope = public; + author = "Luca, Author: A-Editor"; + maxZeroing = 600; + displayName = "AK5C Green"; + descriptionshort = "AK5C - Assault Rifle <br/>Caliber: 5.56x45mm"; + model = "\FA_Weapons_VKN\data\ak5c\ak5c.p3d"; + magazines[] = {"30Rnd_556x45_Stanag", "30Rnd_556x45_Stanag_green", "30Rnd_556x45_Stanag_red", "30Rnd_556x45_Stanag_Tracer_Red", "30Rnd_556x45_Stanag_Tracer_Green", "30Rnd_556x45_Stanag_Tracer_Yellow"}; + reloadAction = "GestureReloadSPAR_01"; + handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_Exp\Rifles\SPAR_01\Data\Anim\SPAR_01.rtm"}; + drySound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\SPAR01\SPAR01_dry", 0.5, 1, 10}; + reloadMagazineSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\SPAR01\SPAR01_reload", 1, 1, 10}; + changeFiremodeSound[] = {"A3\Sounds_F_Exp\arsenal\weapons\Rifles\SPAR01\SPAR01_firemode", 0.6, 1, 5}; + picture = "\FA_Weapons_VKN\data\icons\icon_ak5c_ca.paa"; + inertia = 0.45; + recoil = "recoil_aks"; + modes[] = {"FullAuto", "Single"}; + hiddenSelections[] = {"camo1"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_od_co.paa"}; + class Single : Mode_SemiAuto + { + class BaseSoundModeType; + class StandardSound : BaseSoundModeType + { + soundSetShot[]={"AK74_Shot_SoundSet","AK74_Tail_SoundSet","AK74_InteriorTail_SoundSet"}; + }; + class SilencedSound : BaseSoundModeType + { + SoundSetShot[] = {"Mk20_silencerShot_SoundSet", "Mk20_silencerTail_SoundSet"}; + }; + dispersion = 0.00132; + reloadTime = 0.0735; + }; + class FullAuto : Mode_FullAuto + { + class BaseSoundModeType; + class StandardSound : BaseSoundModeType + { + soundSetShot[]={"AK74_Shot_SoundSet","AK74_Tail_SoundSet","AK74_InteriorTail_SoundSet"}; + }; + class SilencedSound : BaseSoundModeType + { + SoundSetShot[] = {"Mk20_silencerShot_SoundSet", "Mk20_silencerTail_SoundSet"}; + }; + dispersion = 0.00132; + reloadTime = 0.0735; + }; + class WeaponSlotsInfo : WeaponSlotsInfo + { + mass = 100; + allowedSlots[] = {901}; + class MuzzleSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + iconScale = 0.1; + }; + class CowsSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + class PointerSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + displayName = "$STR_A3_PointerSlot0"; + iconScale = 0.1; + }; + class UnderBarrelSlot : SlotInfo + { + linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; + iconScale = 0.1; + }; + }; + }; + class VKN_AK5C_Collapsed : VKN_AK5C + { + scope = public; + author = "Luca, Author: A-Editor"; + displayName = "AK5C Green (Collapsed)"; + model = "\FA_Weapons_VKN\data\ak5c\ak5c_collapsed.p3d"; + inertia = 0.35; + }; + class VKN_AK5C_bl : VKN_AK5C + { + scope = public; + author = "Luca, Author: A-Editor"; + displayName = "AK5C Black"; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_bl_co.paa"}; + }; + class VKN_AK5C_bl_Collapsed : VKN_AK5C_Collapsed + { + scope = public; + author = "Luca, Author: A-Editor"; + displayName = "AK5C Black (Collapsed)"; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_bl_co.paa"}; + }; + class VKN_AK5C_wht : VKN_AK5C + { + scope = public; + author = "Luca, Author: A-Editor"; + displayName = "AK5C White"; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_wht_co.paa"}; + }; + class VKN_AK5C_wht_Collapsed : VKN_AK5C_Collapsed + { + scope = public; + author = "Luca, Author: A-Editor"; + displayName = "AK5C White (Collapsed)"; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_wht_co.paa"}; + }; + class VKN_AK5C_snd : VKN_AK5C + { + scope = public; + author = "Luca, Author: A-Editor"; + displayName = "AK5C Sand"; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_snd_co.paa"}; + }; + class VKN_AK5C_snd_Collapsed : VKN_AK5C_Collapsed + { + scope = public; + author = "Luca, Author: A-Editor"; + displayName = "AK5C Sand (Collapsed)"; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\ak5c\textures\ak5c_snd_co.paa"}; + }; +//Remington 870 - Source: https://www.cgtrader.com/3d-models/military/gun/rm-870-shotgun + class VKN_Remington870: FA_Base_Rifle_VKN + { + scope = public; + author = "Luca, Author: michaelkarel29"; + maxZeroing = 100; + picture = "\FA_Weapons_VKN\data\icons\icon_rm870_ca.paa"; + displayName = "Remington 870"; + descriptionShort = "Remington 870 - Shotgun <br/>Caliber: 12 Gauge"; + magazines[] = {"VKN_8Rnd_12Gauge_Pellets","VKN_8Rnd_12Gauge_Slugs","2Rnd_12Gauge_Pellets", "2Rnd_12Gauge_Slug"}; + model = "FA_Weapons_VKN\data\remington870\Remington870.p3d"; + hiddenSelections[] = {"camo1"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\remington870\textures\RM870_co.paa"}; + drySound[] = {"A3\sounds_f\weapons\other\dry1", 0.6, 1, 10}; + reloadMagazineSound[] = {"FA_Weapons_VKN\data\sounds\RM870_Reload.wav", 0.8, 1, 20}; + reloadAction = "GestureReloadM4SSAS"; + handAnim[] = {"OFP2_ManSkeleton", "\FA_Weapons_VKN\data\anims\RM870.rtm"}; + inertia = 0.4; + recoil = "recoil_huntershotgun_01"; + modes[] = {"Single"}; + + class Single : Mode_SemiAuto { + sounds[]= + { + "StandardSound", + "SilencedSound" + }; + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]= + { + "HunterShotgun_01_Shot_SoundSet", + "HunterShotgun_01_Tail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "HunterShotgun_01_Shot_SoundSet", + "HunterShotgun_01_Tail_SoundSet" + }; + }; + dispersion = 0.0037; + reloadTime = 0.5; + }; + + class WeaponSlotsInfo : WeaponSlotsInfo { + mass = 110; + allowedSlots[] = {901}; + + class CowsSlot : SlotInfo { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + }; + + class EventHandlers { + fired = "_this call CBA_fnc_weaponEvents"; + }; + class CBA_weaponEvents { + handAction = ""; + sound = "VKN_RM870_Pumping"; + soundLocation = "RightHandMiddle1"; + delay = 0; + onEmpty = 0; + hasOptic = 0; + soundEmpty = ""; + soundLocationEmpty = ""; + }; + }; + +//SIG P250 - Source: https://www.cgtrader.com/3d-models/military/gun/sig-sauer-p250 + class VKN_SigP250: FA_Base_Pistol_VKN + { + scope = public; + author = "Luca, Author: hanyrick"; + picture = "\FA_Weapons_VKN\data\icons\icon_sigp250_ca.paa"; + displayName = "Sig Sauer P250"; + descriptionShort = "Sig Sauer P250 - Handgun <br/>Caliber: 9x21mm"; + magazines[] = {"16Rnd_9x21_Mag","16Rnd_9x21_yellow_Mag","16Rnd_9x21_green_Mag","16Rnd_9x21_red_Mag","30Rnd_9x21_Green_Mag","30Rnd_9x21_Yellow_Mag","30Rnd_9x21_Red_Mag","30Rnd_9x21_Mag"}; + model = "FA_Weapons_VKN\data\sigp250\SigP250.p3d"; + hiddenSelections[] = {"camo1"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\sigp250\textures\SigP250_co.paa"}; + changeFiremodeSound[] = {}; + reloadMagazineSound[]={"A3\Sounds_F\arsenal\weapons\Pistols\P07\reload_P07",1,1,10}; + drySound[] = {"A3\Sounds_F\arsenal\weapons\Pistols\P07\dry_P07", 0.5, 1, 20}; + inertia = 0.1; + recoil = "recoil_pistol_p07"; + modes[] = {"Single"}; + class Single : Mode_SemiAuto + { + sounds[] = + { + StandardSound, + SilencedSound + }; + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]= + { + "P07_Shot_SoundSet", + "P07_Tail_SoundSet", + "P07_InteriorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "P07_silencerShot_SoundSet", + "P07_silencerTail_SoundSet", + "P07_silencerInteriorTail_SoundSet" + }; + }; + reloadTime = 0.08; + dispersion = 0.003; + }; + + class WeaponSlotsInfo : WeaponSlotsInfo + { + mass = 30; + allowedSlots[] = {701,801,901}; + class MuzzleSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + iconScale = 0.1; + }; + class CowsSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + class PointerSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + iconScale = 0.1; + }; + }; + }; + +//SIG P226 - Source: https://sketchfab.com/3d-models/sig-sauer-p226-53072553551e403a921448ee5581990e + class VKN_SigP226: FA_Base_Pistol_VKN + { + scope = public; + author = "Luca, Author: Yksnawel"; + picture = "\FA_Weapons_VKN\data\icons\icon_sigp226_ca.paa"; + displayName = "Sig Sauer P226"; + descriptionShort = "Sig Sauer P226 - Handgun <br/>Caliber: 9x21mm"; + magazines[] = {"16Rnd_9x21_Mag","16Rnd_9x21_yellow_Mag","16Rnd_9x21_green_Mag","16Rnd_9x21_red_Mag","30Rnd_9x21_Green_Mag","30Rnd_9x21_Yellow_Mag","30Rnd_9x21_Red_Mag","30Rnd_9x21_Mag"}; + model = "FA_Weapons_VKN\data\sigp226\SigP226.p3d"; + hiddenSelections[] = {"camo1","camo2","camo3","camo4","camo5"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\sigp226\textures\barrel\barrel_co.paa", "FA_Weapons_VKN\data\sigp226\textures\body\body_co.paa", "FA_Weapons_VKN\data\sigp226\textures\grip\grip_co.paa", "FA_Weapons_VKN\data\sigp226\textures\magazine\magazine_co.paa", "FA_Weapons_VKN\data\sigp226\textures\slide\slide_co.paa"}; + changeFiremodeSound[] = {}; + reloadMagazineSound[]={"A3\Sounds_F\arsenal\weapons\Pistols\P07\reload_P07",1,1,10}; + drySound[] = {"A3\Sounds_F\arsenal\weapons\Pistols\P07\dry_P07", 0.5, 1, 20}; + inertia = 0.1; + recoil = "recoil_pistol_rook40"; + modes[] = {"Single"}; + class Single : Mode_SemiAuto + { + sounds[] = + { + StandardSound, + SilencedSound + }; + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]= + { + "Rook40_Shot_SoundSet", + "Rook40_Tail_SoundSet", + "Rook40_InteriorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "Rook40_silencerShot_SoundSet", + "Rook40_silencerTail_SoundSet", + "Rook40_silencerInteriorTail_SoundSet" + }; + }; + reloadTime = 0.082; + dispersion = 0.00285; + }; + + class WeaponSlotsInfo : WeaponSlotsInfo + { + mass = 30; + allowedSlots[] = {701,801,901}; + class MuzzleSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + iconScale = 0.1; + }; + class CowsSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + class PointerSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + iconScale = 0.1; + }; + }; + }; + +//Desert Eagle - Source: https://www.cgtrader.com/3d-models/military/gun/desert-eagle-pbr + class VKN_DesertEagle: FA_Base_Pistol_VKN + { + scope = public; + author = "Luca"; + picture = "\FA_Weapons_VKN\data\icons\icon_deagle_ca.paa"; + displayName = "Desert Eagle"; + descriptionShort = "Desert Eagle - Handgun <br/>Caliber: .50 Action Express"; + magazines[] = {"VKN_7Rnd_50AE_Mag"}; + model = "FA_Weapons_VKN\data\deserteagle\DEagle.p3d"; + hiddenSelections[] = {"camo1","camo2"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\deserteagle\textures\DEagle_co.paa", "FA_Weapons_VKN\data\deserteagle\textures\bullet\bullet_co.paa"}; + changeFiremodeSound[] = {}; + reloadMagazineSound[]={"A3\Sounds_F\arsenal\weapons\Pistols\4-Five\reload_4_five",1.5,1,15}; + drySound[] = {"A3\Sounds_F\arsenal\weapons\Pistols\4-Five\dry_4_Five", 0.8, 1, 20}; + inertia = 0.13; + recoil = "recoil_ARX_secondary"; + modes[] = {"Single"}; + class Single : Mode_SemiAuto + { + sounds[] = + { + StandardSound, + SilencedSound + }; + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + soundSetShot[]= + { + "50cal_Type115_Shot_SoundSet", + "50cal_Type115_Tail_SoundSet", + "50cal_Type115_interiorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + soundSetShot[]= + { + "50cal_Type115_Shot_SoundSet", + "50cal_Type115_Tail_SoundSet", + "50cal_Type115_interiorTail_SoundSet" + }; + }; + reloadTime = 0.135; + dispersion = 0.00453; + }; + + class WeaponSlotsInfo : WeaponSlotsInfo + { + mass = 48; + allowedSlots[] = {701,801,901}; + class CowsSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + class PointerSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + iconScale = 0.1; + }; + }; + }; + +//AS Val - Source: https://www.cgtrader.com/3d-models/military/gun/as-val-game-ready + class VKN_ASVAL : FA_Base_Rifle_VKN { + scope = public; + author = "Luca, Author: simon1-mercuzot"; + maxZeroing = 300; + displayName = "AS Val"; + descriptionshort = "AS Val - Assault Rifle <br/>Caliber: 9x39mm"; + model = "\FA_Weapons_VKN\data\asval\as_val.p3d"; + magazines[] = {"VKN_30Rnd_9x39mm_Mag","VKN_20Rnd_9x39mm_Mag"}; + picture = "\FA_Weapons_VKN\data\icons\icon_asval_ca.paa"; + changeFiremodeSound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Vermin\firemode_Vermin",0.6,1,5}; + drySound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Vermin\Dry_Vermin",0.6,1,10}; + hiddenSelections[] = {"camo1"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\asval\textures\body_co.paa"}; + handAnim[] = {"OFP2_ManSkeleton", "\A3\Weapons_F_beta\Smgs\SMG_02\data\Anim\SMG_02.rtm"}; + reloadAction="GestureReloadSMG_02"; + reloadMagazineSound[] = {"A3\Sounds_F\arsenal\weapons\SMG\Sting\reload_sting",1,1,10}; + inertia = 0.3; + recoil = "recoil_smg_01"; + modes[] = {"Single", "FullAuto"}; + magazineReloadSwitchPhase = 0.15; + + class Single: Mode_SemiAuto + { + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + SoundSetShot[]= + { + "SMGVermin_silencerShot_SoundSet", + "SMGVermin_silencerTail_SoundSet", + "SMGVermin_silencerInteriorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "SMGVermin_silencerShot_SoundSet", + "SMGVermin_silencerTail_SoundSet", + "SMGVermin_silencerInteriorTail_SoundSet" + }; + }; + reloadTime=0.08; + dispersion = 0.000551; + }; + class FullAuto: Mode_FullAuto + { + class BaseSoundModeType; + class StandardSound: BaseSoundModeType + { + SoundSetShot[]= + { + "SMGVermin_silencerShot_SoundSet", + "SMGVermin_silencerTail_SoundSet", + "SMGVermin_silencerInteriorTail_SoundSet" + }; + }; + class SilencedSound: BaseSoundModeType + { + SoundSetShot[]= + { + "SMGVermin_silencerShot_SoundSet", + "SMGVermin_silencerTail_SoundSet", + "SMGVermin_silencerInteriorTail_SoundSet" + }; + }; + reloadTime = 0.08; + dispersion = 0.000551; + }; + class WeaponSlotsInfo + { + mass = 65; + allowedSlots[] = {901,701}; + class CowsSlot : SlotInfo + { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + iconScale = 0.1; + }; + class PointerSlot : PointerSlot + { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + iconScale = 0.1; + }; + }; + }; + + class VKN_ASVAL_Custom : VKN_ASVAL { + author = "Luca, Author: simon1-mercuzot"; + displayName = "AS Val (Custom)"; + model = "\FA_Weapons_VKN\data\asval\as_val_custom.p3d"; + hiddenSelections[] = {"camo1","camo2"}; + hiddenSelectionsTextures[] = {"FA_Weapons_VKN\data\asval\textures\body_co.paa","FA_Weapons_VKN\data\asval\textures\stock\stock_co.paa"}; + }; +}; + +class CfgAmmo { + class B_9x21_Ball; + class B_12Gauge_Slug_NoCartridge; + class B_12Gauge_Pellets_Submunition; + class B_50BW_Ball_F; + + class FA_VKN_9x39mm_Ball : B_9x21_Ball { + hit = 6; + caliber = 1.35; + }; + + class VKN_12Gauge_Slug : B_12Gauge_Slug_NoCartridge { + cartridge = "FxCartridge_slug"; + }; + + class VKN_12Gauge_Pellets : B_12Gauge_Pellets_Submunition { + cartridge = "FxCartridge_slug"; + }; + + class VKN_50AE_Ball : B_50BW_Ball_F { + hit = 13.2; + caliber = 2.2; + cartridge = "FxCartridge_762x39"; + }; +}; + +class CfgMagazines { + class 20Rnd_762x51_Mag; + class 30Rnd_9x21_Mag; + class 2Rnd_12Gauge_Slug; + class 2Rnd_12Gauge_Pellets; + class 9Rnd_45ACP_Mag; + + class VKN_10Rnd_762x54mm_Mag : 20Rnd_762x51_Mag { + scope = public; + author = "Luca"; + displayName = "10Rnd 7.62x54mm"; + picture = "\FA_Weapons_VKN\data\icons\icon_svd_mag_ca.paa"; + count = 10; + ammo = "B_762x54_Ball"; + descriptionshort = "Caliber: 7.62x54mm<br />Rounds: 10<br />Used in: SVD"; + mass = 10; + }; + + class VKN_20Rnd_9x39mm_Mag : 30Rnd_9x21_Mag { + scope = public; + author = "Luca"; + displayName = "20Rnd 9x39mm"; + picture = "\FA_Weapons_VKN\data\icons\icon_vss_mag_ca.paa"; + count = 20; + ammo = "FA_VKN_9x39mm_Ball"; + reloadAction="GestureReloadSMG_02"; + descriptionshort = "Caliber: 9x39mm<br />Rounds: 20<br />Used in: VSS, AS Val"; + model = "\FA_Weapons_VKN\data\magazines\20Rnd_939Mag.p3d"; + modelSpecial = "\FA_Weapons_VKN\data\magazines\20Rnd_939Mag.p3d"; + modelSpecialIsProxy = 1; + mass = 10; + }; + + class VKN_8Rnd_12Gauge_Slugs : 2Rnd_12Gauge_Slug { + scope = public; + author = "Luca"; + displayName = "8Rnd 12 Gauge Slugs"; + picture = "\FA_Weapons_VKN\data\icons\mag_slugs_ca.paa"; + count = 8; + //ammo = "B_12Gauge_Slug"; = Overpowered, use at own risk + ammo = "VKN_12Gauge_Slug"; + descriptionShort = "Caliber: 12 Gauge<br />Rounds: 8<br />Used in: Remington 870"; + mass = 8; + }; + + class VKN_8Rnd_12Gauge_Pellets : 2Rnd_12Gauge_Pellets { + scope = public; + author = "Luca"; + picture = "\FA_Weapons_VKN\data\icons\mag_pellets_ca.paa"; + displayName = "8Rnd 12 Gauge Pellets"; + count = 8; + //ammo = "B_12Gauge_Pellets"; = Overpowered, use at own risk + ammo = "VKN_12Gauge_Pellets"; + descriptionShort = "Caliber: 12 Gauge<br />Rounds: 8<br />Used in: Remington 870"; + mass = 8; + }; + + class VKN_7Rnd_50AE_Mag : 9Rnd_45ACP_Mag { + scope = public; + author = "Luca"; + displayName = "7Rnd .50AE"; + picture = "\FA_Weapons_VKN\data\icons\icon_deagle_mag_ca.paa"; + count = 7; + ammo = "VKN_50AE_Ball"; + descriptionshort = "Caliber: .50 Action Express<br />Rounds: 7<br />Used in: Desert Eagle"; + mass = 12; + }; + + class VKN_30Rnd_9x39mm_Mag : VKN_20Rnd_9x39mm_Mag { + scope = public; + author = "Luca"; + displayName = "30Rnd 9x39mm"; + picture = "\FA_Weapons_VKN\data\icons\icon_asval_mag_ca.paa"; + count = 30; + descriptionshort = "Caliber: 9x39mm<br />Rounds: 30<br />Used in: AS Val, VSS"; + model = "\FA_Weapons_VKN\data\magazines\30Rnd_939Mag.p3d"; + modelSpecial = "\FA_Weapons_VKN\data\magazines\30Rnd_939Mag.p3d"; + modelSpecialIsProxy = 1; + mass = 14; + }; +}; diff --git a/VKN_Compatibility/config.cpp b/VKN_Compatibility/config.cpp index 581047b..1728350 100644 --- a/VKN_Compatibility/config.cpp +++ b/VKN_Compatibility/config.cpp @@ -1,122 +1,127 @@ -class CfgPatches { - class VKN_Compatibility { - name = VKN_Compatibility; - author = "Curious"; - version = 1.0.0; - versionStr = "1.0.0"; - versionAr[] = {0,1,0}; - - units[] = {}; - - requiredAddons[] = - { - "A3_Weapons_F", - "A3_Data_F" - }; - weapons[] = {"VKN_AK5C", "VKN_MP5", "VKN_VSS"}; - }; -}; - -#define private 0 -#define protected 1 -#define public 2 - - - -//CBA JR -class asdg_FrontSideRail; -class asdg_UnderSlot; -class asdg_OpticRail1913; -class asdg_OpticRail1913_short; -class asdg_OpticRail1913_long; -class asdg_MuzzleSlot_556; -class asdg_MuzzleSlot_9MM_SMG; - - -//Normal -class SlotInfo; -class PointerSlot; -class CowsSlot; -class MuzzleSlot; -class WeaponSlotsInfo; - - -class CfgWeapons { - - class FA_Base_Rifle_VKN; - - class VKN_MP5: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - mass = 115; - allowedSlots[] = {901}; - - class MuzzleSlot : asdg_MuzzleSlot_9MM_SMG { - //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - - class CowsSlot : asdg_OpticRail1913_short { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - - class VKN_VSS: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - mass = 115; - allowedSlots[] = {901}; - class CowsSlot : asdg_OpticRail1913_long { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - - class VKN_AK5C: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - mass = 115; - allowedSlots[] = {901}; - - class MuzzleSlot : asdg_MuzzleSlot_556 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - - class CowsSlot : asdg_OpticRail1913 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - - class UnderBarrelSlot : SlotInfo { - linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; - compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - - }; - -}; +class CfgPatches { + class VKN_Compatibility { + name = VKN_Compatibility; + author = "Curious"; + version = 1.0.0; + versionStr = "1.0.0"; + versionAr[] = {0,1,0}; + + units[] = {}; + + requiredAddons[] = + { + "A3_Weapons_F", + "A3_Data_F", + "FA_Weapons_VKN" + }; + weapons[] = {"VKN_AK5C", "VKN_MP5", "VKN_VSS"}; + }; +}; + +#define private 0 +#define protected 1 +#define public 2 + + + +//CBA JR +class asdg_FrontSideRail; +class asdg_UnderSlot; +class asdg_OpticRail1913; +class asdg_OpticRail1913_short; +class asdg_OpticRail1913_long; +class asdg_MuzzleSlot_556; +class asdg_MuzzleSlot_9MM_SMG; + +//RHS JR +class rhs_western_rifle_laser_slot; +class rhs_western_rifle_laser_slot_top; + + +//Normal +class SlotInfo; +class PointerSlot; +class CowsSlot; +class MuzzleSlot; +class WeaponSlotsInfo; + + +class CfgWeapons { + + class FA_Base_Rifle_VKN; + + class VKN_MP5: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + mass = 115; + allowedSlots[] = {901}; + + class MuzzleSlot : asdg_MuzzleSlot_9MM_SMG { + //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + + class CowsSlot : asdg_OpticRail1913_short { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + + class VKN_VSS: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + mass = 115; + allowedSlots[] = {901}; + class CowsSlot : asdg_OpticRail1913_long { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + + class VKN_AK5C: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + mass = 115; + allowedSlots[] = {901}; + + class MuzzleSlot : asdg_MuzzleSlot_556 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + + class CowsSlot : asdg_OpticRail1913 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + + class UnderBarrelSlot : SlotInfo { + linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; + compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + + }; + +}; diff --git a/VKN_Misc/config.cpp b/VKN_Misc/config.cpp index 17124db..c537c30 100644 --- a/VKN_Misc/config.cpp +++ b/VKN_Misc/config.cpp @@ -1,1230 +1,1231 @@ -class CfgPatches { - class VKN_Misc { - name = VKN_Misc; - author = "Curious"; - version = 1.0.0; - versionStr = "1.0.0"; - versionAr[] = {0,1,0}; - - units[] = {}; - - requiredAddons[] = - { - "A3_Editor_F", - "A3_Data_F", - "A3_UI_F", - "A3_UI_F_Curator", - "A3_Functions_F", - "A3_Functions_F_Curator", - "A3_Functions_F_Mark", - "A3_Modules_F", - "A3_Modules_F_Curator", - "A3_Map_Altis", - "A3_Map_Stratis", - "A3_Map_VR", - "A3_Map_Malden", - "A3_Map_Stratis_Scenes", - "A3_Map_Altis_Scenes", - "A3_Map_VR_Scenes", - "A3_Map_Malden_Scenes_F", - "VKN_Functions" - }; - }; -}; - -#define private 0 // Hidden to all -#define protected 1 // Can use but still hidden -#define public 2 // Visible to all - -//UI Inheritence -class rscText; -class rscButton; -class rscPicture; -class rscActiveText; -class rscListBox; -class rscCombo; -class rscProgress; -class iGUIBack; -class rscStructuredText; -class rscCheckbox; -class rscFrame; -class rscEdit; - - -//Eden ctrls -class ctrlEdit; -class ctrlEditMulti; -class ctrlButton; -class ctrlButtonPicture; -class ctrlButtonClose; -class ctrlButtonCancel; -class ctrlButtonOK; -class ctrlButtonSearch; -class ctrlButtonCollapseAll; -class ctrlButtonExpandAll; -class ctrlButtonPictureKeepAspect; -class ctrlStructuredText; -class ctrlCombo; -class ctrlCheckbox; -class ctrlXSliderH; -class ctrlControlsGroup; -class ctrlControlsGroupNoScrollbars; -class ctrlMenuStrip; -class ctrlMenu; -class ctrlStaticBackground; -class ctrlStatic; -class ctrlStaticFooter; -class ctrlStaticBackgroundDisable; -class ctrlStaticBackgroundDisableTiles; -class ctrlStaticPictureKeepAspect; -class ctrlStaticPicture; -class ctrlStaticMulti; -class ctrlStaticTitle; -class ctrlStaticLine; -class ctrlTree; -class ctrlListbox; -class ctrlListNBox; -class ctrlToolbox; -class ctrlToolboxPictureKeepAspect; -class ctrlProgress; -class ctrlStaticFrame; -class scrollbar; -class ctrlShortcutButton; -class ctrlActivePicture; - -class VKN_ctrlActivePicture: ctrlActivePicture { - colorActive[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.77])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.51])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.08])",1}; - colorBackgroundActive[] = {-1,-1,-1,-1}; -}; - - -/////// -//3DEN Enhanced Disable Background - Credits to R3vo https://github.com/R3voA3/3den-Enhanced/ -//GUI and script related macros -#include "\a3\3DEN\UI\macros.inc" -//DIK Key Codes -#include "\a3\ui_f\hpp\definedikcodes.inc" -//Common GRIDs -#include "\a3\ui_f\hpp\definecommongrids.inc" -//Eden Editor IDDs and IDCs as well as controls types and styles and macros -#include "\a3\3den\ui\resincl.inc" - -//Defines -#define CENTERED_X(w) (CENTER_X - (w / 2 * GRID_W)) -#define DIALOG_TOP (safezoneY + 17 * GRID_H) -#define CTRL_DEFAULT_H (5 * GRID_H) - -//Disabled background -#define DISABLE_BACKGROUND class BackgroundDisable: ctrlStaticBackgroundDisable {};\ - class BackgroundDisableTiles: ctrlStaticBackgroundDisableTiles {}; -////////////////////// -////////////////////// - - -enableDebugConsole[] = {"76561197996326460", "76561198116251840", "76561198138461195", "76561198044162606", "76561198036865266", "76561197960287930"}; - -class CfgMPGameTypes { - class COOP; - class VKN_OP { - id = 433; - name = "VKN Operation"; - picture = "\VKN_Misc\VikingLogo128.paa"; - shortcut = "VKN OP"; - description = "Custom Viking PMC Operation - Customized gametype cfg."; - }; -}; - - -//Orbats and mainMenu Credit -class cfgOrbat { - #include "configs\VKN_Orbat.hpp" -}; - -class cfgCredits { - #include "configs\VKN_Orbat.hpp" - - class VKNCreditsMovie { - #include "configs\cfgCredits_Roles.hpp" - }; - class VKNCreditsRanks { - #include "configs\cfgCredits_Ranks.hpp" - }; -}; - -class CfgEditorSubcategories { - class VKN_Objects - { - displayName = "Viking Objects"; - }; -}; - -class CfgMovesBasic; -class CfgMovesMaleSdr: CfgMovesBasic { - class States { - class LadderCivilStatic; - class AswmPercMstpSnonWnonDnon; - class AsswPercMstpSnonWnonDnon; - class AbswPercMstpSnonWnonDnon; - class AdvePercMstpSnonWrflDnon; - class AsdvPercMstpSnonWrflDnon; - class AbdvPercMstpSnonWrflDnon; - class LadderCivilUpLoop: LadderCivilStatic { - speed="1.05/(2/3)"; - }; - - class AswmPercMrunSnonWnonDf: AswmPercMstpSnonWnonDnon { - speed=0.38; - }; - class AsswPercMrunSnonWnonDf: AsswPercMstpSnonWnonDnon { - speed=0.38; - }; - class AbswPercMrunSnonWnonDf: AbswPercMstpSnonWnonDnon { - speed=0.34; - }; - class AdvePercMrunSnonWrflDf: AdvePercMstpSnonWrflDnon { - speed=0.2; - }; - class AsdvPercMrunSnonWrflDf: AsdvPercMstpSnonWrflDnon { - speed=0.2; - }; - class AbdvPercMrunSnonWrflDf: AbdvPercMstpSnonWrflDnon { - speed=0.2; - }; - - }; -}; -class CfgAnimation { - ladderSpeed="0.5*2"; -}; - - -//ASDG Joint Rails - cba merge configs - -#include "ASDGJR\jr_config.hpp" - -//Sort out our custom weapons - same as compat mod -//Normal -class SlotInfo; -class PointerSlot; -class CowsSlot; -class MuzzleSlot; -class WeaponSlotsInfo; - -class CfgWeapons { - - class FA_Base_Rifle_VKN; - class FA_Base_Pistol_VKN; - - class VKN_MP5: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class MuzzleSlot : asdg_MuzzleSlot_9MM_SMG { - //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class CowsSlot : asdg_OpticRail1913_short { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - - class VKN_VSS: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class CowsSlot : asdg_OpticRail1913_long { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - class VKN_AKM: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class MuzzleSlot : asdg_MuzzleSlot_762R { - //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class CowsSlot : asdg_OpticRail1913 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class UnderBarrelSlot : SlotInfo { - linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; - compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - class VKN_AK74M: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class MuzzleSlot : asdg_MuzzleSlot_545R { - //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class CowsSlot : asdg_OpticRail1913 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class UnderBarrelSlot : SlotInfo { - linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; - compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - class VKN_SVD: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class MuzzleSlot : asdg_MuzzleSlot_762R_SVD { - //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class CowsSlot : asdg_OpticRail1913 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class UnderBarrelSlot : SlotInfo { - linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; - compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - class VKN_AK5C: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class MuzzleSlot : asdg_MuzzleSlot_556 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class CowsSlot : asdg_OpticRail1913 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class UnderBarrelSlot : SlotInfo { - linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; - compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - class VKN_ASVAL: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class MuzzleSlot : asdg_MuzzleSlot_556 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class CowsSlot : asdg_OpticRail1913 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class UnderBarrelSlot : SlotInfo { - linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; - compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - class VKN_Remington870: FA_Base_Rifle_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class MuzzleSlot : asdg_MuzzleSlot_556 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class CowsSlot : asdg_OpticRail1913 { - //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_FrontSideRail { - //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class UnderBarrelSlot : SlotInfo { - linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; - compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - class VKN_DesertEagle: FA_Base_Pistol_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class CowsSlot : asdg_PistolOpticRail1913 { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_PistolUnderRail { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - class VKN_SigP250: FA_Base_Pistol_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class CowsSlot : asdg_PistolOpticRail1913 { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_PistolUnderRail { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; - class VKN_SigP226: FA_Base_Pistol_VKN { - class WeaponSlotsInfo : WeaponSlotsInfo { - class CowsSlot : asdg_PistolOpticRail1913 { - linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - class PointerSlot : asdg_PistolUnderRail { - linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; - //compatibleItems[] = {}; - iconScale = 0.1; - }; - }; - }; -}; - - - -////// -////// RSC DISPLAY INVENTORY ADJUSTMENTS - attempt to overwrite existing data while keeping rest of system intact -////// - -// Need to switch mags UI pos on primary weapon as its the wrong way round -//Adjust opacity on logo -//Make repack mag button same style as exit -//fix missing text on items -//See Suggestions on discord - -/* -class RscDisplayInventory { - class controls { - #include "displays\VKN_rscDisplayInventory.hpp" - }; -}; - -class RscDisplayInventory_DLCTemplate { - class controls { - #include "displays\VKN_rscDisplayInventory.hpp" - }; -} - -class VKN_Inventory { - class controls { - #include "displays\VKN_rscDisplayInventory.hpp" - }; -}; -*/ - - - -// Default Discord Rich Presence for Connors's workshop mod. -class cfgDiscordRichPresence { - applicationID = "565082898638569472"; - defaultDetails = "Viking PMC"; - defaultState = "In the Menus..."; - defaultLargeImageKey = "vkn_logo"; - defaultLargeImageText = "Viking PMC"; - defaultSmallImageKey = "arma3"; - defaultSmallImageText = ""; -}; - -#include "fonts\cfgFontFamilies.hpp" -#include "markers\cfgMarkers.hpp" -#include "compositions\cfgGroups.hpp" -#include "configs\cfgInsignia.hpp" - - -class RscStandardDisplay; -class RscControlsGroup; -class RscPictureKeepAspect; -class RscVignette; - -//Full screen loading -//display change -class RscPictureload: RscPictureKeepAspect -{ - style="0x30 + 0x800"; - idc=999; - text="#(argb,8,8,3)color(0,0,0,1)"; - colorText[]={1,1,1,1}; - x="safezoneX"; - y="safezoneY"; - w="0.5*(safezoneW)"; - h="0.5*(safezoneH)"; - -}; - -class RscDisplayLoadMission: RscStandardDisplay -{ - onLoad="['onload',_this,'RscDisplayLoading'] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; - onUnload="[""onUnload"",_this,""RscDisplayLoading""] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; - class controlsBackground - { - class CA_Vignette: RscVignette - { - colorText[]={0,0,0,1}; - }; - class Map: RscPicture - { - idc=999; - text="#(argb,8,8,3)color(0,0,0,1)"; - colorText[]={1,1,1,1}; - x="safezoneX"; - y="safezoneY - (safezoneW * 4/3) / 4"; - w="safezoneW"; - h="safezoneW * 4/3"; - }; - class Noise: RscPicture - { - text="\A3\Ui_f\data\GUI\Cfg\LoadingScreens\LoadingNoise_ca.paa"; - colorText[]={1,1,1,0.3}; - x="safezoneX"; - y="safezoneY"; - w="safezoneW"; - h="safezoneH"; - }; - }; -}; -class RscDisplayLoading -{ - onLoad="['onload',_this,'RscDisplayLoading'] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; - onUnload="[""onUnload"",_this,""RscDisplayLoading""] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; - - class controlsBackground - { - class CA_Vignette: RscVignette - { - colorText[]={0,0,0,1}; - }; - class Map: RscPicture - { - idc=999; - text="#(argb,8,8,3)color(0,0,0,1)"; - colorText[]={1,1,1,1}; - x="safezoneX"; - y="safezoneY - (safezoneW * 4/3) / 4"; - w="safezoneW"; - h="safezoneW * 4/3"; - }; - class Noise: RscPicture - { - text="\A3\Ui_f\data\GUI\Cfg\LoadingScreens\LoadingNoise_ca.paa"; - colorText[]={1,1,1,0.3}; - x="safezoneX"; - y="safezoneY"; - w="safezoneW"; - h="safezoneH"; - }; - }; -}; -class RscDisplayNotFreeze: RscStandardDisplay -{ - onLoad="['onload',_this,'RscDisplayLoading'] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; - onUnload="[""onUnload"",_this,""RscDisplayLoading""] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; - - class controlsBackground - { - class CA_Vignette: RscVignette - { - colorText[]={0,0,0,1}; - }; - class Map: RscPicture - { - idc=999; - text="#(argb,8,8,3)color(0,0,0,1)"; - colorText[]={1,1,1,1}; - x="safezoneX"; - y="safezoneY - (safezoneW * 4/3) / 4"; - w="safezoneW"; - h="safezoneW * 4/3"; - }; - class Noise: RscPicture - { - text="\A3\Ui_f\data\GUI\Cfg\LoadingScreens\LoadingNoise_ca.paa"; - colorText[]={1,1,1,0.3}; - x="safezoneX"; - y="safezoneY"; - w="safezoneW"; - h="safezoneH"; - }; - }; - -}; -class RscDisplayLoadCustom: RscDisplayLoadMission -{ - onLoad="['onload',_this,'RscDisplayLoading'] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; - onUnload="[""onUnload"",_this,""RscDisplayLoading""] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; - - class controlsBackground - { - class CA_Vignette: RscVignette - { - colorText[]={0,0,0,1}; - }; - class Map: RscPicture - { - idc=999; - text="#(argb,8,8,3)color(0,0,0,1)"; - colorText[]={1,1,1,1}; - x="safezoneX"; - y="safezoneY - (safezoneW * 4/3) / 4"; - w="safezoneW"; - h="safezoneW * 4/3"; - }; - class Noise: RscPicture - { - text="\A3\Ui_f\data\GUI\Cfg\LoadingScreens\LoadingNoise_ca.paa"; - colorText[]={1,1,1,0.3}; - x="safezoneX"; - y="safezoneY"; - w="safezoneW"; - h="safezoneH"; - }; - }; -}; - -////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - - -//3den Editor edits -class cfg3DEN { - class EventHandlers { - class VKN { - OnTerrainNew = "call VKN_EH_fnc_eh_onMissionLoad"; - }; - }; -}; - -class display3DEN { - class Controls { - class MenuStrip: ctrlMenuStrip { - class Items { - class Tools { - items[] += {"Mission_Template_Tool", "Separator"}; - }; - class Mission_Template_Tool { - text = "Mission Template Tool"; - Picture = "\VKN_Misc\VikingLogo128.paa"; - action = "[] spawn VKN_VTT_fnc_VTT_home;"; - }; - - //disable enter key - class MissionPreviewSP { - shortcuts[]={156}; - }; - class ButtonPlay: ctrlShortcutButton { - - shortcuts[]= { - "0x00050000 + 0", - 57 - }; - }; - }; - }; - }; -}; - - -#define COLOR_TRANSPARENT { 0, 0, 0, 0 } -#define COLOR_WHITE { 1, 1, 1, 1 } -#define BACKGROUND_IMAGE ["\VKN_Misc\Main Menu\Static Background Images\Background1.paa","\VKN_Misc\Main Menu\Static Background Images\Background2.paa","\VKN_Misc\Main Menu\Static Background Images\Background3.paa","\VKN_Misc\Main Menu\Static Background Images\Background4.paa","\VKN_Misc\Main Menu\Static Background Images\Background5.paa","\VKN_Misc\Main Menu\Static Background Images\Background6.paa","\VKN_Misc\Main Menu\Static Background Images\Background7.paa","\VKN_Misc\Main Menu\Static Background Images\Background8.paa"] - -class RscDisplayStart: RscStandardDisplay { - class controls { - class LoadingStart: RscControlsGroup { - class controls { - delete Logo; - delete Noise; - delete Black; - class RscPicture; - class RscText; - - class Viking_Background: RscPicture - { - idc = 1211; - style = "0x30"; - text = __EVAL(selectRandom BACKGROUND_IMAGE); - x = 0 * safezoneW; y = 0 * safezoneH; - w = 1 * safezoneW; h = 1 * safezoneH; - colorBackground[] = COLOR_TRANSPARENT; - }; - class Viking_Logo: RscPictureKeepAspect { - idc = 1200; - style = "0x30 + 0x800"; - text = "\VKN_Misc\VikingLogo2048.paa"; - x = 0.066875 * safezoneW; y = 0.236 * safezoneH; - w = 0.288750 * safezoneW; h = 0.528 * safezoneH; - }; - /*class Viking_Text_Image: RscPictureKeepAspect { - idc = 1201; - style = "0x30 + 0x800"; - text = "\VKN_Misc\Main Menu\VikingPMCText.paa"; - x = 0.360781 * safezoneW; y = 0.456 * safezoneH; - w = 0.618750 * safezoneW; h = 0.077 * safezoneH; - };*/ - class Viking_Text: RscText { - idc = 1000; - style = "0x00 + 0x02"; - colorBackground[] = COLOR_TRANSPARENT; - colorText[] = COLOR_WHITE; - font = "ExoMedium"; - text = "ARMA 3 | VIKING PMC EDITION"; //--- ToDo: Localize; // - x = 0.371093 * safezoneW; y = 0.379 * safezoneH; - w = 0.623906 * safezoneW; h = 0.22 * safezoneH; - sizeEx = safeZoneH * 0.1; - }; - }; - }; - }; -}; - -#include "\vkn_misc\displays\displayDefines.hpp" -#include "\VKN_Misc\displays\VKN_Template_Tool_Home.hpp" -#include "\VKN_Misc\displays\VKN_Template_Tool_Basic_Settings.hpp" -#include "\VKN_Misc\displays\VKN_Template_Tool_File_Setup.hpp" -#include "\VKN_Misc\displays\VKN_Template_Tool_Info.hpp" -#include "\VKN_Misc\displays\VKN_Template_Tool_Notification.hpp" -#include "\VKN_Misc\displays\VKN_Template_Tool_Delete_Check.hpp" - - - -class RscDisplayMain: RscStandardDisplay { - - //#include "\VKN_Misc\Main Menu\VKN_MainMenuDefines.hpp" - - class Spotlight { - class Viking_Welcome { - text = "VKN Offical Mod"; - textIsQuote = 0; - picture = "\VKN_Misc\VikingLogo512.paa"; - video = "\VKN_Misc\VKNLOGO_512x.ogv"; - action = "disableserialization; _script = [] execVM '\VKN_Functions\Functions\fn_ORBATCreate.sqf'; _code = uiNamespace getvariable 'CUR_bis_fnc_credits'; [_code] spawn _code;"; - actionText = "Developed By Viking PMC"; - condition = "true"; - }; - class Server_Join { - text = "Quick Join Server #1"; - textIsQuote = 0; - picture = "\VKN_Misc\VikingLogo512.paa"; - video = ""; - action = "0 = [_this, '', '', ''] execVM '\VKN_Functions\Functions\fn_joinServer.sqf';"; - actionText = "Direct Connect to Server"; - condition = "true"; - }; - }; -/* - idd=0; - scriptName="RscDisplayMain"; - scriptPath="GUI"; - onLoad="_script = [""onLoad"",_this,""RscDisplayMain"",'GUI'] call (uinamespace getvariable 'BIS_fnc_initDisplay'); diag_log 'VKN_MainMenu_start'; diag_log str _script; diag_log 'VKN_MainMenu_end';"; - onUnload="[""onUnload"",_this,""RscDisplayMain"",'GUI'] call (uinamespace getvariable 'BIS_fnc_initDisplay')"; - class ControlsBackground - { - class MouseArea: RscText - { - idc=999; - style=16; - x="safezoneXAbs"; - y="safezoneY"; - w="safezoneWAbs"; - h="safezoneH"; - }; - class BackgroundLeft: RscText - { - idc = 1001; - x = -3.83233 * safezoneW + safezoneX; - y = -5.275 * safezoneH + safezoneY; - w = 3.83233 * safezoneW; - h = 11 * safezoneH; - colorBackground[] = {0.1,0.1,0.1,0}; - }; - class BackgroundRight: BackgroundLeft - { - idc = 1002; - x = 1 * safezoneW + safezoneX; - y = -5.275 * safezoneH + safezoneY; - w = 4.12603 * safezoneW; - h = 11 * safezoneH; - colorBackground[] = {0.1,0.1,0.1,0}; - }; - class Picture: RscPicture - { - idc = 998; - - text = ""; - x = -0.000281541 * safezoneW + safezoneX; - y = 0.000329973 * safezoneH + safezoneY; - w = 1.00056 * safezoneW; - h = 1.771 * safezoneH; - }; - }; - class Controls { - - //Remove/overwrite old main menu - delete ModIcons; - delete B_Quit; - delete B_Expansions; - delete B_Credits; - delete B_Player; - delete B_Options; - delete B_SinglePlayer; - delete B_MissionEditor; - delete B_MultiPlayer; - delete B_SingleMission; - delete B_Campaign; - delete Date; - delete ModList; - delete TrafficLight; - delete Version; - - class RscMainMenuSpotlight; - class RscActivePicture; - class RscButton; - class RscActivePictureKeepAspect; - class RscButtonMenu; - class RscControlsGroupNoScrollbars; - class RscControlsGroupNoHScrollbars; - class BackgroundSpotlight: RscPicture {colorText[] = {0,0,0,0};}; - class BackgroundSpotlightLeft: BackgroundSpotlight {colorText[] = {0,0,0,0};}; - class BackgroundSpotlightRight: BackgroundSpotlightLeft {colorText[] = {0,0,0,0};}; - class Spotlight1: RscMainMenuSpotlight {x = 1.00028 * safezoneW + safezoneX; y = 0.148 * safezoneH + safezoneY; w = 0.166708 * safezoneW; h = 0.296296 * safezoneH;}; - class Spotlight3: RscMainMenuSpotlight {x = 1.00028 * safezoneW + safezoneX; y = 0.148 * safezoneH + safezoneY; w = 0.166708 * safezoneW; h = 0.296296 * safezoneH;}; - class BackgroundBar: RscText {colorBackground[] = {0,0,0,0};}; - class BackgroundCenter: BackgroundBar {colorBackground[] = {0,0,0,0};}; - class BackgroundBarLeft: RscPicture {text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\gradientMods_ca.paa";}; - class BackgroundBarRight: BackgroundBarLeft {text = "";}; - class Logo: RscActivePicture {text = "\a3\Ui_f\data\Logos\arma3_shadow_ca.paa";}; - class BackgroundLeft: RscText {colorBackground[] = {0.1,0.1,0.1,0};}; - class BackgroundRight: BackgroundLeft {colorBackground[] = {0.1,0.1,0.1,0};}; - class Picture: RscPicture {text = "";}; - - - - class Button3DEditor: RscButton - { - idc = 115; - shortcuts[] = {"512 + 0x20"}; - onButtonClick = "!cheatsenabled"; - - x = -3.83233 * safezoneW + safezoneX; - y = -5.275 * safezoneH + safezoneY; - w = 0 * safezoneW; - h = 0 * safezoneH; - colorBackground[] = {0,0,0,0}; - }; - class Spotlight2: RscText - { - idc = 1020; - show = 0; - - x = 0.54126 * safezoneW + safezoneX; - y = 0.368 * safezoneH + safezoneY; - w = 0.166708 * safezoneW; - h = 0.296296 * safezoneH; - }; - class SpotlightPrev: RscActivePictureKeepAspect - { - idc = 1060; - //color[] = {1,1,1,0.25}; - //fade = 1; - - show = 0; - - text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\spotlightPrev_ca.paa"; //--- ToDo: Localize; - x = 0.54126 * safezoneW + safezoneX; - y = 0.676 * safezoneH + safezoneY; - w = 0.166708 * safezoneW; - h = 0.037037 * safezoneH; - //colorActive[] = {1,1,1,1}; - }; - class SpotlightNext: SpotlightPrev - { - idc = 1061; - angle = 180; - - text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\spotlightNext_ca.paa"; //--- ToDo: Localize; - x = 0.54126 * safezoneW + safezoneX; - y = 0.324 * safezoneH + safezoneY; - w = 0.165041 * safezoneW; - h = 0.033 * safezoneH; - colorActive[] = {1,1,1,1}; - }; - class TitleSingleplayer: RscButtonMenu - { - idc = 1011; - - text = "Singleplayer"; //--- ToDo: Localize; - x = 0.195705 * safezoneW + safezoneX; - y = 0.291 * safezoneH + safezoneY; - w = 0.0979933 * safezoneW; - h = 0.044 * safezoneH; - colorText[] = {1,1,1,1}; - colorBackground[] = {0,0,0,0}; - }; - class GroupSingleplayer: RscControlsGroupNoScrollbars - { - idc = 1001; - - x = 0.293698 * safezoneW + safezoneX; - y = 0.291 * safezoneH + safezoneY; - w = 0.0833542 * safezoneW; - h = 0.111111 * safezoneH; - class Controls - { - }; - }; - class TitleMultiplayer: RscButtonMenu - { - idc = 1012; - - text = "Multiplayer"; //--- ToDo: Localize; - x = 0.195705 * safezoneW + safezoneX; - y = 0.379 * safezoneH + safezoneY; - w = 0.0979933 * safezoneW; - h = 0.044 * safezoneH; - colorText[] = {1,1,1,1}; - colorBackground[] = {0,0,0,0}; - }; - class GroupMultiplayer: RscControlsGroupNoScrollbars - { - idc = 1002; - - x = 0.293698 * safezoneW + safezoneX; - y = 0.379 * safezoneH + safezoneY; - w = 0.0833542 * safezoneW; - h = 0.0666667 * safezoneH; - class Controls - { - }; - }; - class TitleTutorials: RscButtonMenu - { - idc = 1013; - - text = "Tutorials"; //--- ToDo: Localize; - x = 0.195705 * safezoneW + safezoneX; - y = 0.467 * safezoneH + safezoneY; - w = 0.0979933 * safezoneW; - h = 0.044 * safezoneH; - colorText[] = {1,1,1,1}; - colorBackground[] = {0,0,0,0}; - }; - class GroupTutorials: RscControlsGroupNoScrollbars - { - idc = 1003; - - x = 0.293698 * safezoneW + safezoneX; - y = 0.467 * safezoneH + safezoneY; - w = 0.112528 * safezoneW; - h = 0.133333 * safezoneH; - class Controls - { - }; - }; - class TitleOptions: RscButtonMenu - { - idc = 1014; - - text = "Options"; //--- ToDo: Localize; - x = 0.195705 * safezoneW + safezoneX; - y = 0.555 * safezoneH + safezoneY; - w = 0.0979933 * safezoneW; - h = 0.044 * safezoneH; - colorText[] = {1,1,1,1}; - colorBackground[] = {0,0,0,0}; - }; - class TitleSession: RscButtonMenu - { - idc = 1015; - - text = "Profile Settings"; //--- ToDo: Localize; - x = 0.195705 * safezoneW + safezoneX; - y = 0.643 * safezoneH + safezoneY; - w = 0.0979933 * safezoneW; - h = 0.044 * safezoneH; - colorText[] = {1,1,1,1}; - colorBackground[] = {0,0,0,0}; - }; - class TitleIconSingleplayer: RscButton - { - idc = 1111; - show = 0; - style = "0x30 + 0x800"; - colorBackgroundActive[] = {1,1,1,1}; - colorFocused[] = {1,1,1,1}; - onMouseEnter = "(_this select 0) ctrlsettextcolor [0,0,0,1];"; - onSetFocus = "(_this select 0) ctrlsettextcolor [0,0,0,1];"; - onMouseExit = "(_this select 0) ctrlsettextcolor [1,1,1,1];"; - onKillFocus = "(_this select 0) ctrlsettextcolor [1,1,1,1];"; - - text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\menu_singleplayer_ca.paa"; //--- ToDo: Localize; - x = 0.216335 * safezoneW + safezoneX; - y = 0.291 * safezoneH + safezoneY; - w = 0.0333416 * safezoneW; - h = 0.0296296 * safezoneH; - colorBackground[] = {0,0,0,0}; - tooltip = "Singleplayer"; //--- ToDo: Localize; - }; - class TitleIconMultiplayer: TitleIconSingleplayer - { - idc = 1112; - - text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\menu_multiplayer_ca.paa"; //--- ToDo: Localize; - x = 0.216335 * safezoneW + safezoneX; - y = 0.379 * safezoneH + safezoneY; - w = 0.0333416 * safezoneW; - h = 0.0296296 * safezoneH; - colorBackground[] = {0,0,0,0}; - tooltip = "Multiplayer"; //--- ToDo: Localize; - }; - class TitleIconTutorials: TitleIconSingleplayer - { - idc = 1113; - - text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\menu_tutorials_ca.paa"; //--- ToDo: Localize; - x = 0.20602 * safezoneW + safezoneX; - y = 0.467 * safezoneH + safezoneY; - w = 0.0333416 * safezoneW; - h = 0.0296296 * safezoneH; - colorBackground[] = {0,0,0,0}; - tooltip = "Tutorials"; //--- ToDo: Localize; - }; - class TitleIconOptions: TitleIconSingleplayer - { - idc = 1114; - - text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\menu_options_ca.paa"; //--- ToDo: Localize; - x = 0.200863 * safezoneW + safezoneX; - y = 0.555 * safezoneH + safezoneY; - w = 0.0333416 * safezoneW; - h = 0.0296296 * safezoneH; - colorBackground[] = {0,0,0,0}; - tooltip = "Options"; //--- ToDo: Localize; - }; - class Exit: RscButtonMenu - { - idc = 106; - - text = "Exit Game"; //--- ToDo: Localize; - x = 0.195705 * safezoneW + safezoneX; - y = 0.72 * safezoneH + safezoneY; - w = 0.0979933 * safezoneW; - h = 0.044 * safezoneH; - colorText[] = {1,1,1,1}; - colorBackground[] = {0,0,0,0}; - }; - class RscPicture_1201: RscPicture - { - idc = 1201; - text = "\VKN_misc\main menu\VikingPMCText.paa"; - x = 0.195705 * safezoneW + safezoneX; - y = 0.203 * safezoneH + safezoneY; - w = 0.510597 * safezoneW; - h = 0.066 * safezoneH; - }; - class RscPicture_1202: RscPicture - { - idc = 1202; - text = "#(argb,8,8,3)color(1,1,1,1)"; - x = 0.75272 * safezoneW + safezoneX; - y = 0.203 * safezoneH + safezoneY; - w = 0.211459 * safezoneW; - h = 0.561 * safezoneH; - }; - class GroupOptions: RscControlsGroupNoScrollbars - { - idc = 1004; - - x = 0.293698 * safezoneW + safezoneX; - y = 0.555 * safezoneH + safezoneY; - w = 0.0833542 * safezoneW; - h = 0.133333 * safezoneH; - class Controls - { - }; - }; - class GroupSession: RscControlsGroupNoScrollbars - { - idc = 1005; - - x = 0.293698 * safezoneW + safezoneX; - y = 0.643 * safezoneH + safezoneY; - w = 0.0833542 * safezoneW; - h = 0.0888889 * safezoneH; - class Controls - { - }; - }; - class InfoMods: RscControlsGroupNoHScrollbars - { - idc = 1030; - - x = 0.00277848 * safezoneW + safezoneX; - y = 0.944778 * safezoneH + safezoneY; - w = 1.00056 * safezoneW; - h = 0.033 * safezoneH; - class Controls - { - }; - }; - class InfoDLCsOwned: InfoMods - { - idc = 10311; - - x = 0.00487599 * safezoneW + safezoneX; - y = 0.907 * safezoneH + safezoneY; - w = 0.497222 * safezoneW; - h = 0.0296296 * safezoneH; - class Controls - { - }; - }; - class InfoNews: InfoMods - { - idc = 1032; - - x = 0.913867 * safezoneW + safezoneX; - y = 0.914815 * safezoneH + safezoneY; - w = 0.0833542 * safezoneW; - h = 0.0296296 * safezoneH; - class Controls - { - }; - }; - class InfoVersion: InfoNews - { - idc = 1033; - - x = 0.913867 * safezoneW + safezoneX; - y = 0.948148 * safezoneH + safezoneY; - w = 0.0833542 * safezoneW; - h = 0.0296296 * safezoneH; - class Controls - { - }; - }; - class Footer: RscText - { - style = 2; - shadow = 0; - font = "RobotoCondensedLight"; - - idc = 1010; - text = "© 2013-2018 Bohemia Interactive a.s. All rights reserved. (Main Menu by Curious)"; //--- ToDo: Localize; - x = 0 * safezoneW + safezoneX; - y = 0.985185 * safezoneH + safezoneY; - w = 1 * safezoneW; - h = 0.0148148 * safezoneH; - colorText[] = {1,1,1,0.5}; - colorBackground[] = {0,0,0,0.75}; - sizeEx = 1 * (pixelH * pixelGrid * 2) * GUI_GRID_H; - }; - class InfoDLCs: InfoDLCsOwned - { - idc = 10311; - - x = 0.505158 * safezoneW + safezoneX; - y = 0.907 * safezoneH + safezoneY; - w = 0.497222 * safezoneW; - h = 0.0296296 * safezoneH; - class Controls - { - }; - }; - }; -*/ -}; -/* -class RscDisplayMainMenuBackground { - #include "\VKN_Misc\Main Menu\VKN_MainMenuDefines.hpp" - scriptName="RscDisplayMainMenuBackground"; - scriptPath="GUI"; - onLoad="[""onLoad"",_this,""RscDisplayMainMenuBackground"",'GUI'] call (uinamespace getvariable 'BIS_fnc_initDisplay')"; - onUnload="[""onUnload"",_this,""RscDisplayMainMenuBackground"",'GUI'] call (uinamespace getvariable 'BIS_fnc_initDisplay')"; - idd=-1; - fadein=0; - fadeout=0; - duration=1e+010; - class Controls - { - class Background { - colorBackground[]={0,0,0,0}; - }; - class Picture { - text=""; - }; - class BackgroundLeft: RscText - { - idc = 1001; - x = -3.83233 * safezoneW + safezoneX; - y = -5.275 * safezoneH + safezoneY; - w = 3.83233 * safezoneW; - h = 11 * safezoneH; - colorBackground[] = {0.1,0.1,0.1,1}; - }; - class BackgroundRight: BackgroundLeft - { - idc = 1002; - x = 1 * safezoneW + safezoneX; - y = -5.275 * safezoneH + safezoneY; - w = 4.12603 * safezoneW; - h = 11 * safezoneH; - colorBackground[] = {0.1,0.1,0.1,1}; - }; - }; -}; -*/ +class CfgPatches { + class VKN_Misc { + name = VKN_Misc; + author = "Curious"; + version = 1.0.0; + versionStr = "1.0.0"; + versionAr[] = {0,1,0}; + + units[] = {}; + + requiredAddons[] = + { + "A3_Editor_F", + "A3_Data_F", + "A3_UI_F", + "A3_UI_F_Curator", + "A3_Functions_F", + "A3_Functions_F_Curator", + "A3_Functions_F_Mark", + "A3_Modules_F", + "A3_Modules_F_Curator", + "A3_Map_Altis", + "A3_Map_Stratis", + "A3_Map_VR", + "A3_Map_Malden", + "A3_Map_Stratis_Scenes", + "A3_Map_Altis_Scenes", + "A3_Map_VR_Scenes", + "A3_Map_Malden_Scenes_F", + "FA_Weapons_VKN", + "VKN_Functions" + }; + }; +}; + +#define private 0 // Hidden to all +#define protected 1 // Can use but still hidden +#define public 2 // Visible to all + +//UI Inheritence +class rscText; +class rscButton; +class rscPicture; +class rscActiveText; +class rscListBox; +class rscCombo; +class rscProgress; +class iGUIBack; +class rscStructuredText; +class rscCheckbox; +class rscFrame; +class rscEdit; + + +//Eden ctrls +class ctrlEdit; +class ctrlEditMulti; +class ctrlButton; +class ctrlButtonPicture; +class ctrlButtonClose; +class ctrlButtonCancel; +class ctrlButtonOK; +class ctrlButtonSearch; +class ctrlButtonCollapseAll; +class ctrlButtonExpandAll; +class ctrlButtonPictureKeepAspect; +class ctrlStructuredText; +class ctrlCombo; +class ctrlCheckbox; +class ctrlXSliderH; +class ctrlControlsGroup; +class ctrlControlsGroupNoScrollbars; +class ctrlMenuStrip; +class ctrlMenu; +class ctrlStaticBackground; +class ctrlStatic; +class ctrlStaticFooter; +class ctrlStaticBackgroundDisable; +class ctrlStaticBackgroundDisableTiles; +class ctrlStaticPictureKeepAspect; +class ctrlStaticPicture; +class ctrlStaticMulti; +class ctrlStaticTitle; +class ctrlStaticLine; +class ctrlTree; +class ctrlListbox; +class ctrlListNBox; +class ctrlToolbox; +class ctrlToolboxPictureKeepAspect; +class ctrlProgress; +class ctrlStaticFrame; +class scrollbar; +class ctrlShortcutButton; +class ctrlActivePicture; + +class VKN_ctrlActivePicture: ctrlActivePicture { + colorActive[] = {"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.77])","(profilenamespace getvariable ['GUI_BCG_RGB_G',0.51])","(profilenamespace getvariable ['GUI_BCG_RGB_B',0.08])",1}; + colorBackgroundActive[] = {-1,-1,-1,-1}; +}; + + +/////// +//3DEN Enhanced Disable Background - Credits to R3vo https://github.com/R3voA3/3den-Enhanced/ +//GUI and script related macros +#include "\a3\3DEN\UI\macros.inc" +//DIK Key Codes +#include "\a3\ui_f\hpp\definedikcodes.inc" +//Common GRIDs +#include "\a3\ui_f\hpp\definecommongrids.inc" +//Eden Editor IDDs and IDCs as well as controls types and styles and macros +#include "\a3\3den\ui\resincl.inc" + +//Defines +#define CENTERED_X(w) (CENTER_X - (w / 2 * GRID_W)) +#define DIALOG_TOP (safezoneY + 17 * GRID_H) +#define CTRL_DEFAULT_H (5 * GRID_H) + +//Disabled background +#define DISABLE_BACKGROUND class BackgroundDisable: ctrlStaticBackgroundDisable {};\ + class BackgroundDisableTiles: ctrlStaticBackgroundDisableTiles {}; +////////////////////// +////////////////////// + + +enableDebugConsole[] = {"76561197996326460", "76561198116251840", "76561198138461195", "76561198044162606", "76561198036865266", "76561197960287930"}; + +class CfgMPGameTypes { + class COOP; + class VKN_OP { + id = 433; + name = "VKN Operation"; + picture = "\VKN_Misc\VikingLogo128.paa"; + shortcut = "VKN OP"; + description = "Custom Viking PMC Operation - Customized gametype cfg."; + }; +}; + + +//Orbats and mainMenu Credit +class cfgOrbat { + #include "configs\VKN_Orbat.hpp" +}; + +class cfgCredits { + #include "configs\VKN_Orbat.hpp" + + class VKNCreditsMovie { + #include "configs\cfgCredits_Roles.hpp" + }; + class VKNCreditsRanks { + #include "configs\cfgCredits_Ranks.hpp" + }; +}; + +class CfgEditorSubcategories { + class VKN_Objects + { + displayName = "Viking Objects"; + }; +}; + +class CfgMovesBasic; +class CfgMovesMaleSdr: CfgMovesBasic { + class States { + class LadderCivilStatic; + class AswmPercMstpSnonWnonDnon; + class AsswPercMstpSnonWnonDnon; + class AbswPercMstpSnonWnonDnon; + class AdvePercMstpSnonWrflDnon; + class AsdvPercMstpSnonWrflDnon; + class AbdvPercMstpSnonWrflDnon; + class LadderCivilUpLoop: LadderCivilStatic { + speed="1.05/(2/3)"; + }; + + class AswmPercMrunSnonWnonDf: AswmPercMstpSnonWnonDnon { + speed=0.38; + }; + class AsswPercMrunSnonWnonDf: AsswPercMstpSnonWnonDnon { + speed=0.38; + }; + class AbswPercMrunSnonWnonDf: AbswPercMstpSnonWnonDnon { + speed=0.34; + }; + class AdvePercMrunSnonWrflDf: AdvePercMstpSnonWrflDnon { + speed=0.2; + }; + class AsdvPercMrunSnonWrflDf: AsdvPercMstpSnonWrflDnon { + speed=0.2; + }; + class AbdvPercMrunSnonWrflDf: AbdvPercMstpSnonWrflDnon { + speed=0.2; + }; + + }; +}; +class CfgAnimation { + ladderSpeed="0.5*2"; +}; + + +//ASDG Joint Rails - cba merge configs + +#include "ASDGJR\jr_config.hpp" + +//Sort out our custom weapons - same as compat mod +//Normal +class SlotInfo; +class PointerSlot; +class CowsSlot; +class MuzzleSlot; +class WeaponSlotsInfo; + +class CfgWeapons { + + class FA_Base_Rifle_VKN; + class FA_Base_Pistol_VKN; + + class VKN_MP5: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class MuzzleSlot : asdg_MuzzleSlot_9MM_SMG { + //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class CowsSlot : asdg_OpticRail1913_short { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + + class VKN_VSS: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class CowsSlot : asdg_OpticRail1913_long { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + class VKN_AKM: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class MuzzleSlot : asdg_MuzzleSlot_762R { + //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class CowsSlot : asdg_OpticRail1913 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class UnderBarrelSlot : SlotInfo { + linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; + compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + class VKN_AK74M: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class MuzzleSlot : asdg_MuzzleSlot_545R { + //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class CowsSlot : asdg_OpticRail1913 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class UnderBarrelSlot : SlotInfo { + linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; + compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + class VKN_SVD: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class MuzzleSlot : asdg_MuzzleSlot_762R_SVD { + //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class CowsSlot : asdg_OpticRail1913 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class UnderBarrelSlot : SlotInfo { + linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; + compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + class VKN_AK5C: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class MuzzleSlot : asdg_MuzzleSlot_556 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class CowsSlot : asdg_OpticRail1913 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class UnderBarrelSlot : SlotInfo { + linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; + compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + class VKN_ASVAL: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class MuzzleSlot : asdg_MuzzleSlot_556 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class CowsSlot : asdg_OpticRail1913 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class UnderBarrelSlot : SlotInfo { + linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; + compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + class VKN_Remington870: FA_Base_Rifle_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class MuzzleSlot : asdg_MuzzleSlot_556 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\MUZZLE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class CowsSlot : asdg_OpticRail1913 { + //linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_FrontSideRail { + //linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class UnderBarrelSlot : SlotInfo { + linkProxy = "\A3\data_f_mark\proxies\weapon_slots\UNDERBARREL"; + compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + class VKN_DesertEagle: FA_Base_Pistol_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class CowsSlot : asdg_PistolOpticRail1913 { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_PistolUnderRail { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + class VKN_SigP250: FA_Base_Pistol_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class CowsSlot : asdg_PistolOpticRail1913 { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_PistolUnderRail { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; + class VKN_SigP226: FA_Base_Pistol_VKN { + class WeaponSlotsInfo : WeaponSlotsInfo { + class CowsSlot : asdg_PistolOpticRail1913 { + linkProxy = "\A3\data_f\proxies\weapon_slots\TOP"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + class PointerSlot : asdg_PistolUnderRail { + linkProxy = "\A3\data_f\proxies\weapon_slots\SIDE"; + //compatibleItems[] = {}; + iconScale = 0.1; + }; + }; + }; +}; + + + +////// +////// RSC DISPLAY INVENTORY ADJUSTMENTS - attempt to overwrite existing data while keeping rest of system intact +////// + +// Need to switch mags UI pos on primary weapon as its the wrong way round +//Adjust opacity on logo +//Make repack mag button same style as exit +//fix missing text on items +//See Suggestions on discord + +/* +class RscDisplayInventory { + class controls { + #include "displays\VKN_rscDisplayInventory.hpp" + }; +}; + +class RscDisplayInventory_DLCTemplate { + class controls { + #include "displays\VKN_rscDisplayInventory.hpp" + }; +} + +class VKN_Inventory { + class controls { + #include "displays\VKN_rscDisplayInventory.hpp" + }; +}; +*/ + + + +// Default Discord Rich Presence for Connors's workshop mod. +class cfgDiscordRichPresence { + applicationID = "565082898638569472"; + defaultDetails = "Viking PMC"; + defaultState = "In the Menus..."; + defaultLargeImageKey = "vkn_logo"; + defaultLargeImageText = "Viking PMC"; + defaultSmallImageKey = "arma3"; + defaultSmallImageText = ""; +}; + +#include "fonts\cfgFontFamilies.hpp" +#include "markers\cfgMarkers.hpp" +#include "compositions\cfgGroups.hpp" +#include "configs\cfgInsignia.hpp" + + +class RscStandardDisplay; +class RscControlsGroup; +class RscPictureKeepAspect; +class RscVignette; + +//Full screen loading +//display change +class RscPictureload: RscPictureKeepAspect +{ + style="0x30 + 0x800"; + idc=999; + text="#(argb,8,8,3)color(0,0,0,1)"; + colorText[]={1,1,1,1}; + x="safezoneX"; + y="safezoneY"; + w="0.5*(safezoneW)"; + h="0.5*(safezoneH)"; + +}; + +class RscDisplayLoadMission: RscStandardDisplay +{ + onLoad="['onload',_this,'RscDisplayLoading'] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; + onUnload="[""onUnload"",_this,""RscDisplayLoading""] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; + class controlsBackground + { + class CA_Vignette: RscVignette + { + colorText[]={0,0,0,1}; + }; + class Map: RscPicture + { + idc=999; + text="#(argb,8,8,3)color(0,0,0,1)"; + colorText[]={1,1,1,1}; + x="safezoneX"; + y="safezoneY - (safezoneW * 4/3) / 4"; + w="safezoneW"; + h="safezoneW * 4/3"; + }; + class Noise: RscPicture + { + text="\A3\Ui_f\data\GUI\Cfg\LoadingScreens\LoadingNoise_ca.paa"; + colorText[]={1,1,1,0.3}; + x="safezoneX"; + y="safezoneY"; + w="safezoneW"; + h="safezoneH"; + }; + }; +}; +class RscDisplayLoading +{ + onLoad="['onload',_this,'RscDisplayLoading'] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; + onUnload="[""onUnload"",_this,""RscDisplayLoading""] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; + + class controlsBackground + { + class CA_Vignette: RscVignette + { + colorText[]={0,0,0,1}; + }; + class Map: RscPicture + { + idc=999; + text="#(argb,8,8,3)color(0,0,0,1)"; + colorText[]={1,1,1,1}; + x="safezoneX"; + y="safezoneY - (safezoneW * 4/3) / 4"; + w="safezoneW"; + h="safezoneW * 4/3"; + }; + class Noise: RscPicture + { + text="\A3\Ui_f\data\GUI\Cfg\LoadingScreens\LoadingNoise_ca.paa"; + colorText[]={1,1,1,0.3}; + x="safezoneX"; + y="safezoneY"; + w="safezoneW"; + h="safezoneH"; + }; + }; +}; +class RscDisplayNotFreeze: RscStandardDisplay +{ + onLoad="['onload',_this,'RscDisplayLoading'] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; + onUnload="[""onUnload"",_this,""RscDisplayLoading""] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; + + class controlsBackground + { + class CA_Vignette: RscVignette + { + colorText[]={0,0,0,1}; + }; + class Map: RscPicture + { + idc=999; + text="#(argb,8,8,3)color(0,0,0,1)"; + colorText[]={1,1,1,1}; + x="safezoneX"; + y="safezoneY - (safezoneW * 4/3) / 4"; + w="safezoneW"; + h="safezoneW * 4/3"; + }; + class Noise: RscPicture + { + text="\A3\Ui_f\data\GUI\Cfg\LoadingScreens\LoadingNoise_ca.paa"; + colorText[]={1,1,1,0.3}; + x="safezoneX"; + y="safezoneY"; + w="safezoneW"; + h="safezoneH"; + }; + }; + +}; +class RscDisplayLoadCustom: RscDisplayLoadMission +{ + onLoad="['onload',_this,'RscDisplayLoading'] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; + onUnload="[""onUnload"",_this,""RscDisplayLoading""] call (uiNamespace getVariable 'full_mission_load_fnc_load')"; + + class controlsBackground + { + class CA_Vignette: RscVignette + { + colorText[]={0,0,0,1}; + }; + class Map: RscPicture + { + idc=999; + text="#(argb,8,8,3)color(0,0,0,1)"; + colorText[]={1,1,1,1}; + x="safezoneX"; + y="safezoneY - (safezoneW * 4/3) / 4"; + w="safezoneW"; + h="safezoneW * 4/3"; + }; + class Noise: RscPicture + { + text="\A3\Ui_f\data\GUI\Cfg\LoadingScreens\LoadingNoise_ca.paa"; + colorText[]={1,1,1,0.3}; + x="safezoneX"; + y="safezoneY"; + w="safezoneW"; + h="safezoneH"; + }; + }; +}; + +////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + +//3den Editor edits +class cfg3DEN { + class EventHandlers { + class VKN { + OnTerrainNew = "call VKN_EH_fnc_eh_onMissionLoad"; + }; + }; +}; + +class display3DEN { + class Controls { + class MenuStrip: ctrlMenuStrip { + class Items { + class Tools { + items[] += {"Mission_Template_Tool", "Separator"}; + }; + class Mission_Template_Tool { + text = "Mission Template Tool"; + Picture = "\VKN_Misc\VikingLogo128.paa"; + action = "[] spawn VKN_VTT_fnc_VTT_home;"; + }; + + //disable enter key + class MissionPreviewSP { + shortcuts[]={156}; + }; + class ButtonPlay: ctrlShortcutButton { + + shortcuts[]= { + "0x00050000 + 0", + 57 + }; + }; + }; + }; + }; +}; + + +#define COLOR_TRANSPARENT { 0, 0, 0, 0 } +#define COLOR_WHITE { 1, 1, 1, 1 } +#define BACKGROUND_IMAGE ["\VKN_Misc\Main Menu\Static Background Images\Background1.paa","\VKN_Misc\Main Menu\Static Background Images\Background2.paa","\VKN_Misc\Main Menu\Static Background Images\Background3.paa","\VKN_Misc\Main Menu\Static Background Images\Background4.paa","\VKN_Misc\Main Menu\Static Background Images\Background5.paa","\VKN_Misc\Main Menu\Static Background Images\Background6.paa","\VKN_Misc\Main Menu\Static Background Images\Background7.paa","\VKN_Misc\Main Menu\Static Background Images\Background8.paa"] + +class RscDisplayStart: RscStandardDisplay { + class controls { + class LoadingStart: RscControlsGroup { + class controls { + delete Logo; + delete Noise; + delete Black; + class RscPicture; + class RscText; + + class Viking_Background: RscPicture + { + idc = 1211; + style = "0x30"; + text = __EVAL(selectRandom BACKGROUND_IMAGE); + x = 0 * safezoneW; y = 0 * safezoneH; + w = 1 * safezoneW; h = 1 * safezoneH; + colorBackground[] = COLOR_TRANSPARENT; + }; + class Viking_Logo: RscPictureKeepAspect { + idc = 1200; + style = "0x30 + 0x800"; + text = "\VKN_Misc\VikingLogo2048.paa"; + x = 0.066875 * safezoneW; y = 0.236 * safezoneH; + w = 0.288750 * safezoneW; h = 0.528 * safezoneH; + }; + /*class Viking_Text_Image: RscPictureKeepAspect { + idc = 1201; + style = "0x30 + 0x800"; + text = "\VKN_Misc\Main Menu\VikingPMCText.paa"; + x = 0.360781 * safezoneW; y = 0.456 * safezoneH; + w = 0.618750 * safezoneW; h = 0.077 * safezoneH; + };*/ + class Viking_Text: RscText { + idc = 1000; + style = "0x00 + 0x02"; + colorBackground[] = COLOR_TRANSPARENT; + colorText[] = COLOR_WHITE; + font = "ExoMedium"; + text = "ARMA 3 | VIKING PMC EDITION"; //--- ToDo: Localize; // + x = 0.371093 * safezoneW; y = 0.379 * safezoneH; + w = 0.623906 * safezoneW; h = 0.22 * safezoneH; + sizeEx = safeZoneH * 0.1; + }; + }; + }; + }; +}; + +#include "\vkn_misc\displays\displayDefines.hpp" +#include "\VKN_Misc\displays\VKN_Template_Tool_Home.hpp" +#include "\VKN_Misc\displays\VKN_Template_Tool_Basic_Settings.hpp" +#include "\VKN_Misc\displays\VKN_Template_Tool_File_Setup.hpp" +#include "\VKN_Misc\displays\VKN_Template_Tool_Info.hpp" +#include "\VKN_Misc\displays\VKN_Template_Tool_Notification.hpp" +#include "\VKN_Misc\displays\VKN_Template_Tool_Delete_Check.hpp" + + + +class RscDisplayMain: RscStandardDisplay { + + //#include "\VKN_Misc\Main Menu\VKN_MainMenuDefines.hpp" + + class Spotlight { + class Viking_Welcome { + text = "VKN Offical Mod"; + textIsQuote = 0; + picture = "\VKN_Misc\VikingLogo512.paa"; + video = "\VKN_Misc\VKNLOGO_512x.ogv"; + action = "disableserialization; _script = [] execVM '\VKN_Functions\Functions\fn_ORBATCreate.sqf'; _code = uiNamespace getvariable 'CUR_bis_fnc_credits'; [_code] spawn _code;"; + actionText = "Developed By Viking PMC"; + condition = "true"; + }; + class Server_Join { + text = "Quick Join Server #1"; + textIsQuote = 0; + picture = "\VKN_Misc\VikingLogo512.paa"; + video = ""; + action = "0 = [_this, '', '', ''] execVM '\VKN_Functions\Functions\fn_joinServer.sqf';"; + actionText = "Direct Connect to Server"; + condition = "true"; + }; + }; +/* + idd=0; + scriptName="RscDisplayMain"; + scriptPath="GUI"; + onLoad="_script = [""onLoad"",_this,""RscDisplayMain"",'GUI'] call (uinamespace getvariable 'BIS_fnc_initDisplay'); diag_log 'VKN_MainMenu_start'; diag_log str _script; diag_log 'VKN_MainMenu_end';"; + onUnload="[""onUnload"",_this,""RscDisplayMain"",'GUI'] call (uinamespace getvariable 'BIS_fnc_initDisplay')"; + class ControlsBackground + { + class MouseArea: RscText + { + idc=999; + style=16; + x="safezoneXAbs"; + y="safezoneY"; + w="safezoneWAbs"; + h="safezoneH"; + }; + class BackgroundLeft: RscText + { + idc = 1001; + x = -3.83233 * safezoneW + safezoneX; + y = -5.275 * safezoneH + safezoneY; + w = 3.83233 * safezoneW; + h = 11 * safezoneH; + colorBackground[] = {0.1,0.1,0.1,0}; + }; + class BackgroundRight: BackgroundLeft + { + idc = 1002; + x = 1 * safezoneW + safezoneX; + y = -5.275 * safezoneH + safezoneY; + w = 4.12603 * safezoneW; + h = 11 * safezoneH; + colorBackground[] = {0.1,0.1,0.1,0}; + }; + class Picture: RscPicture + { + idc = 998; + + text = ""; + x = -0.000281541 * safezoneW + safezoneX; + y = 0.000329973 * safezoneH + safezoneY; + w = 1.00056 * safezoneW; + h = 1.771 * safezoneH; + }; + }; + class Controls { + + //Remove/overwrite old main menu + delete ModIcons; + delete B_Quit; + delete B_Expansions; + delete B_Credits; + delete B_Player; + delete B_Options; + delete B_SinglePlayer; + delete B_MissionEditor; + delete B_MultiPlayer; + delete B_SingleMission; + delete B_Campaign; + delete Date; + delete ModList; + delete TrafficLight; + delete Version; + + class RscMainMenuSpotlight; + class RscActivePicture; + class RscButton; + class RscActivePictureKeepAspect; + class RscButtonMenu; + class RscControlsGroupNoScrollbars; + class RscControlsGroupNoHScrollbars; + class BackgroundSpotlight: RscPicture {colorText[] = {0,0,0,0};}; + class BackgroundSpotlightLeft: BackgroundSpotlight {colorText[] = {0,0,0,0};}; + class BackgroundSpotlightRight: BackgroundSpotlightLeft {colorText[] = {0,0,0,0};}; + class Spotlight1: RscMainMenuSpotlight {x = 1.00028 * safezoneW + safezoneX; y = 0.148 * safezoneH + safezoneY; w = 0.166708 * safezoneW; h = 0.296296 * safezoneH;}; + class Spotlight3: RscMainMenuSpotlight {x = 1.00028 * safezoneW + safezoneX; y = 0.148 * safezoneH + safezoneY; w = 0.166708 * safezoneW; h = 0.296296 * safezoneH;}; + class BackgroundBar: RscText {colorBackground[] = {0,0,0,0};}; + class BackgroundCenter: BackgroundBar {colorBackground[] = {0,0,0,0};}; + class BackgroundBarLeft: RscPicture {text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\gradientMods_ca.paa";}; + class BackgroundBarRight: BackgroundBarLeft {text = "";}; + class Logo: RscActivePicture {text = "\a3\Ui_f\data\Logos\arma3_shadow_ca.paa";}; + class BackgroundLeft: RscText {colorBackground[] = {0.1,0.1,0.1,0};}; + class BackgroundRight: BackgroundLeft {colorBackground[] = {0.1,0.1,0.1,0};}; + class Picture: RscPicture {text = "";}; + + + + class Button3DEditor: RscButton + { + idc = 115; + shortcuts[] = {"512 + 0x20"}; + onButtonClick = "!cheatsenabled"; + + x = -3.83233 * safezoneW + safezoneX; + y = -5.275 * safezoneH + safezoneY; + w = 0 * safezoneW; + h = 0 * safezoneH; + colorBackground[] = {0,0,0,0}; + }; + class Spotlight2: RscText + { + idc = 1020; + show = 0; + + x = 0.54126 * safezoneW + safezoneX; + y = 0.368 * safezoneH + safezoneY; + w = 0.166708 * safezoneW; + h = 0.296296 * safezoneH; + }; + class SpotlightPrev: RscActivePictureKeepAspect + { + idc = 1060; + //color[] = {1,1,1,0.25}; + //fade = 1; + + show = 0; + + text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\spotlightPrev_ca.paa"; //--- ToDo: Localize; + x = 0.54126 * safezoneW + safezoneX; + y = 0.676 * safezoneH + safezoneY; + w = 0.166708 * safezoneW; + h = 0.037037 * safezoneH; + //colorActive[] = {1,1,1,1}; + }; + class SpotlightNext: SpotlightPrev + { + idc = 1061; + angle = 180; + + text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\spotlightNext_ca.paa"; //--- ToDo: Localize; + x = 0.54126 * safezoneW + safezoneX; + y = 0.324 * safezoneH + safezoneY; + w = 0.165041 * safezoneW; + h = 0.033 * safezoneH; + colorActive[] = {1,1,1,1}; + }; + class TitleSingleplayer: RscButtonMenu + { + idc = 1011; + + text = "Singleplayer"; //--- ToDo: Localize; + x = 0.195705 * safezoneW + safezoneX; + y = 0.291 * safezoneH + safezoneY; + w = 0.0979933 * safezoneW; + h = 0.044 * safezoneH; + colorText[] = {1,1,1,1}; + colorBackground[] = {0,0,0,0}; + }; + class GroupSingleplayer: RscControlsGroupNoScrollbars + { + idc = 1001; + + x = 0.293698 * safezoneW + safezoneX; + y = 0.291 * safezoneH + safezoneY; + w = 0.0833542 * safezoneW; + h = 0.111111 * safezoneH; + class Controls + { + }; + }; + class TitleMultiplayer: RscButtonMenu + { + idc = 1012; + + text = "Multiplayer"; //--- ToDo: Localize; + x = 0.195705 * safezoneW + safezoneX; + y = 0.379 * safezoneH + safezoneY; + w = 0.0979933 * safezoneW; + h = 0.044 * safezoneH; + colorText[] = {1,1,1,1}; + colorBackground[] = {0,0,0,0}; + }; + class GroupMultiplayer: RscControlsGroupNoScrollbars + { + idc = 1002; + + x = 0.293698 * safezoneW + safezoneX; + y = 0.379 * safezoneH + safezoneY; + w = 0.0833542 * safezoneW; + h = 0.0666667 * safezoneH; + class Controls + { + }; + }; + class TitleTutorials: RscButtonMenu + { + idc = 1013; + + text = "Tutorials"; //--- ToDo: Localize; + x = 0.195705 * safezoneW + safezoneX; + y = 0.467 * safezoneH + safezoneY; + w = 0.0979933 * safezoneW; + h = 0.044 * safezoneH; + colorText[] = {1,1,1,1}; + colorBackground[] = {0,0,0,0}; + }; + class GroupTutorials: RscControlsGroupNoScrollbars + { + idc = 1003; + + x = 0.293698 * safezoneW + safezoneX; + y = 0.467 * safezoneH + safezoneY; + w = 0.112528 * safezoneW; + h = 0.133333 * safezoneH; + class Controls + { + }; + }; + class TitleOptions: RscButtonMenu + { + idc = 1014; + + text = "Options"; //--- ToDo: Localize; + x = 0.195705 * safezoneW + safezoneX; + y = 0.555 * safezoneH + safezoneY; + w = 0.0979933 * safezoneW; + h = 0.044 * safezoneH; + colorText[] = {1,1,1,1}; + colorBackground[] = {0,0,0,0}; + }; + class TitleSession: RscButtonMenu + { + idc = 1015; + + text = "Profile Settings"; //--- ToDo: Localize; + x = 0.195705 * safezoneW + safezoneX; + y = 0.643 * safezoneH + safezoneY; + w = 0.0979933 * safezoneW; + h = 0.044 * safezoneH; + colorText[] = {1,1,1,1}; + colorBackground[] = {0,0,0,0}; + }; + class TitleIconSingleplayer: RscButton + { + idc = 1111; + show = 0; + style = "0x30 + 0x800"; + colorBackgroundActive[] = {1,1,1,1}; + colorFocused[] = {1,1,1,1}; + onMouseEnter = "(_this select 0) ctrlsettextcolor [0,0,0,1];"; + onSetFocus = "(_this select 0) ctrlsettextcolor [0,0,0,1];"; + onMouseExit = "(_this select 0) ctrlsettextcolor [1,1,1,1];"; + onKillFocus = "(_this select 0) ctrlsettextcolor [1,1,1,1];"; + + text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\menu_singleplayer_ca.paa"; //--- ToDo: Localize; + x = 0.216335 * safezoneW + safezoneX; + y = 0.291 * safezoneH + safezoneY; + w = 0.0333416 * safezoneW; + h = 0.0296296 * safezoneH; + colorBackground[] = {0,0,0,0}; + tooltip = "Singleplayer"; //--- ToDo: Localize; + }; + class TitleIconMultiplayer: TitleIconSingleplayer + { + idc = 1112; + + text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\menu_multiplayer_ca.paa"; //--- ToDo: Localize; + x = 0.216335 * safezoneW + safezoneX; + y = 0.379 * safezoneH + safezoneY; + w = 0.0333416 * safezoneW; + h = 0.0296296 * safezoneH; + colorBackground[] = {0,0,0,0}; + tooltip = "Multiplayer"; //--- ToDo: Localize; + }; + class TitleIconTutorials: TitleIconSingleplayer + { + idc = 1113; + + text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\menu_tutorials_ca.paa"; //--- ToDo: Localize; + x = 0.20602 * safezoneW + safezoneX; + y = 0.467 * safezoneH + safezoneY; + w = 0.0333416 * safezoneW; + h = 0.0296296 * safezoneH; + colorBackground[] = {0,0,0,0}; + tooltip = "Tutorials"; //--- ToDo: Localize; + }; + class TitleIconOptions: TitleIconSingleplayer + { + idc = 1114; + + text = "\a3\Ui_f\data\GUI\Rsc\RscDisplayMain\menu_options_ca.paa"; //--- ToDo: Localize; + x = 0.200863 * safezoneW + safezoneX; + y = 0.555 * safezoneH + safezoneY; + w = 0.0333416 * safezoneW; + h = 0.0296296 * safezoneH; + colorBackground[] = {0,0,0,0}; + tooltip = "Options"; //--- ToDo: Localize; + }; + class Exit: RscButtonMenu + { + idc = 106; + + text = "Exit Game"; //--- ToDo: Localize; + x = 0.195705 * safezoneW + safezoneX; + y = 0.72 * safezoneH + safezoneY; + w = 0.0979933 * safezoneW; + h = 0.044 * safezoneH; + colorText[] = {1,1,1,1}; + colorBackground[] = {0,0,0,0}; + }; + class RscPicture_1201: RscPicture + { + idc = 1201; + text = "\VKN_misc\main menu\VikingPMCText.paa"; + x = 0.195705 * safezoneW + safezoneX; + y = 0.203 * safezoneH + safezoneY; + w = 0.510597 * safezoneW; + h = 0.066 * safezoneH; + }; + class RscPicture_1202: RscPicture + { + idc = 1202; + text = "#(argb,8,8,3)color(1,1,1,1)"; + x = 0.75272 * safezoneW + safezoneX; + y = 0.203 * safezoneH + safezoneY; + w = 0.211459 * safezoneW; + h = 0.561 * safezoneH; + }; + class GroupOptions: RscControlsGroupNoScrollbars + { + idc = 1004; + + x = 0.293698 * safezoneW + safezoneX; + y = 0.555 * safezoneH + safezoneY; + w = 0.0833542 * safezoneW; + h = 0.133333 * safezoneH; + class Controls + { + }; + }; + class GroupSession: RscControlsGroupNoScrollbars + { + idc = 1005; + + x = 0.293698 * safezoneW + safezoneX; + y = 0.643 * safezoneH + safezoneY; + w = 0.0833542 * safezoneW; + h = 0.0888889 * safezoneH; + class Controls + { + }; + }; + class InfoMods: RscControlsGroupNoHScrollbars + { + idc = 1030; + + x = 0.00277848 * safezoneW + safezoneX; + y = 0.944778 * safezoneH + safezoneY; + w = 1.00056 * safezoneW; + h = 0.033 * safezoneH; + class Controls + { + }; + }; + class InfoDLCsOwned: InfoMods + { + idc = 10311; + + x = 0.00487599 * safezoneW + safezoneX; + y = 0.907 * safezoneH + safezoneY; + w = 0.497222 * safezoneW; + h = 0.0296296 * safezoneH; + class Controls + { + }; + }; + class InfoNews: InfoMods + { + idc = 1032; + + x = 0.913867 * safezoneW + safezoneX; + y = 0.914815 * safezoneH + safezoneY; + w = 0.0833542 * safezoneW; + h = 0.0296296 * safezoneH; + class Controls + { + }; + }; + class InfoVersion: InfoNews + { + idc = 1033; + + x = 0.913867 * safezoneW + safezoneX; + y = 0.948148 * safezoneH + safezoneY; + w = 0.0833542 * safezoneW; + h = 0.0296296 * safezoneH; + class Controls + { + }; + }; + class Footer: RscText + { + style = 2; + shadow = 0; + font = "RobotoCondensedLight"; + + idc = 1010; + text = "© 2013-2018 Bohemia Interactive a.s. All rights reserved. (Main Menu by Curious)"; //--- ToDo: Localize; + x = 0 * safezoneW + safezoneX; + y = 0.985185 * safezoneH + safezoneY; + w = 1 * safezoneW; + h = 0.0148148 * safezoneH; + colorText[] = {1,1,1,0.5}; + colorBackground[] = {0,0,0,0.75}; + sizeEx = 1 * (pixelH * pixelGrid * 2) * GUI_GRID_H; + }; + class InfoDLCs: InfoDLCsOwned + { + idc = 10311; + + x = 0.505158 * safezoneW + safezoneX; + y = 0.907 * safezoneH + safezoneY; + w = 0.497222 * safezoneW; + h = 0.0296296 * safezoneH; + class Controls + { + }; + }; + }; +*/ +}; +/* +class RscDisplayMainMenuBackground { + #include "\VKN_Misc\Main Menu\VKN_MainMenuDefines.hpp" + scriptName="RscDisplayMainMenuBackground"; + scriptPath="GUI"; + onLoad="[""onLoad"",_this,""RscDisplayMainMenuBackground"",'GUI'] call (uinamespace getvariable 'BIS_fnc_initDisplay')"; + onUnload="[""onUnload"",_this,""RscDisplayMainMenuBackground"",'GUI'] call (uinamespace getvariable 'BIS_fnc_initDisplay')"; + idd=-1; + fadein=0; + fadeout=0; + duration=1e+010; + class Controls + { + class Background { + colorBackground[]={0,0,0,0}; + }; + class Picture { + text=""; + }; + class BackgroundLeft: RscText + { + idc = 1001; + x = -3.83233 * safezoneW + safezoneX; + y = -5.275 * safezoneH + safezoneY; + w = 3.83233 * safezoneW; + h = 11 * safezoneH; + colorBackground[] = {0.1,0.1,0.1,1}; + }; + class BackgroundRight: BackgroundLeft + { + idc = 1002; + x = 1 * safezoneW + safezoneX; + y = -5.275 * safezoneH + safezoneY; + w = 4.12603 * safezoneW; + h = 11 * safezoneH; + colorBackground[] = {0.1,0.1,0.1,1}; + }; + }; +}; +*/