This commit is the equivalent of a atomic bomb

This commit is contained in:
2026-02-15 08:08:56 -03:00
commit e4ac56b038
6934 changed files with 916278 additions and 0 deletions

View File

@@ -0,0 +1,326 @@
class Braf_MT12_base_F: Rifle_Base_F {
author="BRAF Team";
_generalMacro="Braf_MT12_base_F";
scope=0;
displayName="MT12 Base";
magazines[]=
{
"30Rnd_9x21_Mag"
};
reloadAction="GestureReloadSMG_02";
recoil="recoil_smg_05";
maxZeroing=100;
handAnim[]=
{
"OFP2_ManSkeleton",
"\A3\Weapons_F\Rifles\MX\data\Anim\MX_dmr.rtm"
};
overviewPicture="\A3\Data_F_Mark\Images\watermarkInfo_page07_ca.paa";
discreteDistanceInitIndex=2;
cursor="smg";
class Library
{
libTextDesc="Beretta MP12S 9mm";
};
class WeaponSlotsInfo: WeaponSlotsInfo
{
class CowsSlot
{
};
class MuzzleSlot
{
};
class UnderBarrelSlot
{
};
class PointerSlot
{
};
mass=66.138702;
};
distanceZoomMin=300;
distanceZoomMax=300;
changeFiremodeSound[]=
{
"A3\Sounds_F\arsenal\weapons\SMG\Sting\firemode_Sting",
0.25118864,
1,
5
};
drySound[]=
{
"braf\braf_weapons_sound\weapons\MT12\mt12_hammer.ogg",
3,
1,
10
};
reloadMagazineSound[]=
{
"braf\braf_weapons_sound\weapons\MT12\reload.ogg",
1,
1,
10
};
modes[]=
{
"Single",
"FullAuto",
"single_close_optics1",
"single_medium_optics1",
"single_far_optics1",
"fullauto_medium"
};
bullet1[]=
{
"A3\sounds_f\weapons\shells\9mm\metal_9mm_01",
0.50118703,
1,
15
};
bullet2[]=
{
"A3\sounds_f\weapons\shells\9mm\metal_9mm_02",
0.50118703,
1,
15
};
bullet3[]=
{
"A3\sounds_f\weapons\shells\9mm\metal_9mm_03",
0.50118703,
1,
15
};
bullet4[]=
{
"A3\sounds_f\weapons\shells\9mm\metal_9mm_04",
0.50118703,
1,
15
};
bullet5[]=
{
"A3\sounds_f\weapons\shells\9mm\dirt_9mm_01",
0.50118703,
1,
15
};
bullet6[]=
{
"A3\sounds_f\weapons\shells\9mm\dirt_9mm_02",
0.50118703,
1,
15
};
bullet7[]=
{
"A3\sounds_f\weapons\shells\9mm\dirt_9mm_03",
0.50118703,
1,
15
};
bullet8[]=
{
"A3\sounds_f\weapons\shells\9mm\dirt_9mm_04",
0.50118703,
1,
15
};
bullet9[]=
{
"A3\sounds_f\weapons\shells\9mm\grass_9mm_01",
0.39810699,
1,
15
};
bullet10[]=
{
"A3\sounds_f\weapons\shells\9mm\grass_9mm_02",
0.39810699,
1,
15
};
bullet11[]=
{
"A3\sounds_f\weapons\shells\9mm\grass_9mm_03",
0.39810699,
1,
15
};
bullet12[]=
{
"A3\sounds_f\weapons\shells\9mm\grass_9mm_04",
0.39810699,
1,
15
};
soundBullet[]=
{
"bullet1",
0.082999997,
"bullet2",
0.082999997,
"bullet3",
0.082999997,
"bullet4",
0.082999997,
"bullet5",
0.082999997,
"bullet6",
0.082999997,
"bullet7",
0.082999997,
"bullet8",
0.082999997,
"bullet9",
0.082999997,
"bullet10",
0.082999997,
"bullet11",
0.082999997,
"bullet12",
0.082999997
};
class Single: Mode_SemiAuto
{
class BaseSoundModeType;
class StandardSound: BaseSoundModeType
{
SoundSetShot[]=
{
"SMGVermin_Shot_SoundSet",
"SMGVermin_Tail_SoundSet",
"SMGVermin_InteriorTail_SoundSet"
};
};
class SilencedSound: BaseSoundModeType
{
SoundSetShot[]=
{
"SMGVermin_silencerShot_SoundSet",
"SMGVermin_silencerTail_SoundSet",
"SMGVermin_silencerInteriorTail_SoundSet"
};
};
reloadTime=0.054499999;
dispersion=0.00057999999;
initSpeed=850;
minRange=2;
minRangeProbab=0.30000001;
midRange=350;
midRangeProbab=0.69999999;
maxRange=500;
maxRangeProbab=0.050000001;
};
class FullAuto: Mode_FullAuto
{
class BaseSoundModeType;
class StandardSound: BaseSoundModeType
{
SoundSetShot[]=
{
"SMGVermin_Shot_SoundSet",
"SMGVermin_Tail_SoundSet",
"SMGVermin_InteriorTail_SoundSet"
};
};
class SilencedSound: BaseSoundModeType
{
SoundSetShot[]=
{
"SMGVermin_silencerShot_SoundSet",
"SMGVermin_silencerTail_SoundSet",
"SMGVermin_silencerInteriorTail_SoundSet"
};
};
reloadTime=0.054499999;
dispersion=0.00057999999;
minRange=0;
minRangeProbab=0.89999998;
midRange=15;
midRangeProbab=0.69999999;
maxRange=30;
maxRangeProbab=0.050000001;
aiRateOfFire=5;
};
class single_close_optics1: Single
{
requiredOpticType=1;
showToPlayer=0;
minRange=2;
minRangeProbab=0.050000001;
midRange=300;
midRangeProbab=0.80000001;
maxRange=500;
maxRangeProbab=0.0099999998;
aiRateOfFire=2;
aiRateOfFireDistance=300;
};
class single_medium_optics1: single_close_optics1
{
minRange=300;
minRangeProbab=0.050000001;
midRange=500;
midRangeProbab=0.69999999;
maxRange=700;
maxRangeProbab=0.050000001;
aiRateOfFire=2;
aiRateOfFireDistance=500;
};
class single_far_optics1: single_medium_optics1
{
requiredOpticType=2;
minRange=300;
minRangeProbab=0.050000001;
midRange=700;
midRangeProbab=0.5;
maxRange=1000;
maxRangeProbab=0.050000001;
aiRateOfFire=4;
aiRateOfFireDistance=600;
};
class fullauto_medium: FullAuto
{
showToPlayer=0;
burst=3;
minRange=2;
minRangeProbab=0.5;
midRange=50;
midRangeProbab=0.69999999;
maxRange=100;
maxRangeProbab=0.050000001;
aiRateOfFire=2;
};
aiDispersionCoefY=3;
aiDispersionCoefX=2;
};
class Braf_MT12: Braf_MT12_base_F {
author="BRAF Team";
_generalMacro="Braf_MT12";
scope=2;
model="braf\braf_weapons_smg\9mm_BerettaMT12\mt12.p3d";
dexterity=1.6;
displayName="Beretta MP12S 9mm";
picture="\braf\braf_weapons_smg\9mm_BerettaMT12\ui\bereta_ui.paa";
UiPicture="\A3\weapons_f\data\UI\icon_regular_CA.paa";
descriptionShort="SMG Beretta MP12S 9mm";
inertia=0.40000001;
aimTransitionSpeed=1.3;
initSpeed=370;
class WeaponSlotsInfo: WeaponSlotsInfo
{
mass=66.138702;
};
ace_overheating_mrbs=100;
ace_overheating_slowdownFactor=1;
ace_overheating_allowSwapBarrel=1;
ACE_barrelTwist=254;
ACE_Overheating_Dispersion=1;
ACE_barrelLength=200;
ACE_twistDirection=1;
ACE_clearJamAction="braf_GestureClear_barrel_mt12";
class ItemInfo
{
priority=1;
};
};

View File

@@ -0,0 +1,92 @@
ambient[] = {1,1,1,1};
diffuse[] = {0.7,0.7,0.7,1};
forcedDiffuse[] = {0,0,0,1};
emmisive[] = {0,0,0,0};
specular[] = {0.05,0.05,0.05,1};
specularPower = 60;
PixelShaderID = "Super";
VertexShaderID = "Super";
class Stage1
{
texture = "braf\braf_weapons_smg\9mm_BerettaMT12\Data\mt12_nohq.paa";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage2
{
texture = "#(argb,8,8,3)color(0.5,0.5,0.5,0.5,DT)";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage3
{
texture = "#(argb,8,8,3)color(0.0,0.0,0.0,0.0,MC)";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage4
{
texture = "braf\braf_weapons_smg\9mm_BerettaMT12\Data\mt12_as.paa";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage5
{
texture = "braf\braf_weapons_smg\9mm_BerettaMT12\Data\mt12_smdi.paa";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage6
{
texture = "#(ai,64,64,1)fresnel(5.4,1.4)";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage7
{
texture = "a3\data_f\env_land_ca.paa";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,374 @@
class CfgSkeletons
{
class Default
{
isDiscrete=1;
skeletonInherit="";
skeletonBones[]={};
};
class MT12_keleton: Default
{
skeletonBones[]=
{
"magazine", "",
"zarelho", "",
"stock", "",
"mag_release", "",
"bullet007", "",
"bullet008", "",
"charging_handle", "",
"selector", "",
"safe", "",
"Sling", "",
"alsa", "",
"trigger", "",
"zeroing", "",
"janela", "",
"Alca_mira", "",
"trilho_frontal", "",
"muzzleFlash", "",
"optic_rail", "",
"zasleh", "",
"bolt", "charging_handle"
};
};
};
class CfgModels
{
class Default
{
sectionsInherit="";
sections[]={};
skeletonName="";
};
class MT12: Default
{
sections[]=
{
"zasleh","muzzleFlash","magazine","selector","bolt","optic_rail","mira","zeroing","alsa","zarelho","trilho_frontal","granada","Sling","camo","camo1","camo2","camo3","camo4","camo5"
};
skeletonName="MT12_keleton";
sectionsInherit="";
class Animations
{
class trigger /// not in this model, but good to use
{
type = "rotation";
source = "reload";
sourceAddress = "clamp";
selection = "trigger";
axis = "trigger_axis";
minValue = 0;
maxValue = "1";
angle0 = "0";
angle1 = "rad -30";
};
class zarelho /// not in this model, but good to use
{
type = "rotation";
source = "reload";
sourceAddress = "clamp";
selection = "zarelho";
axis = "zarelho_axis";
minValue = 0;
maxValue = "1";
angle0 = "0";
angle1 = "rad 30";
};
class stock /// not in this model, but good to use
{
type = "rotation";
source = "isselected";
sourceAddress = "clamp";
selection = "stock";
axis = "stock_axis";
minValue = 0;
maxValue = "1";
angle0 = "rad 175";
angle1 = "0";
};
class selector /// not in this model, but good to use
{
type = "rotation";
source = "weaponMode";
sourceAddress = "clamp";
selection = "selector";
axis = "selector_axis";
minValue = 0;
maxValue = "1";
angle0 = "rad 05";
angle1 = "rad -360";
};
class mag_release /// not in this model, but good to use
{
type = "rotation";
source = "reloadMagazine";
sourceAddress = "clamp";
selection = "mag_release";
axis = "mag_release_axis";
minValue = 0;
maxValue = "0.5";
angle0 = "rad 0";
angle1 = "rad -10";
};
class safe /// not in this model, but good to use
{
type = "translation";
source = "reload";
sourceAddress = "clamp";
selection = "safe";
axis = "safe_axis";
minValue = 0;
maxValue = "1";
offset0="0";
offset1="1";
};
class bullet007_revolving_hide
{
type="hide";
source="revolving";
selection="bullet007";
sourceAddress="clamp";
minPhase=0;
maxPhase=1;
minValue=0;
maxValue=1;
memory=0;
hideValue=0;
unHideValue=0.035;
};
class bullet008_revolving_hide
{
type="hide";
source="revolving";
selection="bullet008";
sourceAddress="clamp";
minPhase=0;
maxPhase=1;
minValue=0;
maxValue=1;
memory=0;
hideValue=0;
unHideValue=0.035;
};
class optic_rail
{
type="hide";
source="hasOptics";
selection="optic_rail";
minValue=0;
maxValue=1;
hideValue=-1.0;
unhideValue = 0.5;
};
class acessory_rail
{
type="hide";
source="hasAccessory";
selection="trilho_frontal";
minValue=0;
maxValue=1;
hideValue=-1.0;
unhideValue = 0.5;
};
//class Sling_hide
//{
// type="hide";
// source="isSelected"; //bipod
// selection="Sling";
// minValue=0;
// maxValue=1;
// hideValue = 1.0;
// unhideValue =-0.5;
//};
class reload_magazine_hide
{
type="hide";
source="reloadMagazine";
selection="magazine";
minValue=0;
maxValue=1;
hideValue = 0.126;
unhidevalue = 0.6300;
};
class unloaded_magazine_hide
{
type = "hide";
source = "hasMagazine";
selection = "magazine";
hideValue=0.100000;
};
class magazine_reload_move_1
{
type = "translation";
source = "reloadMagazine";
selection = "magazine";
axis = "magazine_axis";
minValue = 0.145;
maxValue = 0.170;
offset0 = 0.0;
offset1 = 0.5;
};
class magazine_reload_move_2: magazine_reload_move_1
{
minValue = 0.573;
maxValue = 0.602;
offset0 = 0.0;
offset1 = -0.5;
};
class backsight_rotate
{
type="translation";
source="zeroing";
selection="Alca_mira";
axis="mira_axis";
minValue=0;
maxValue=1;
//hideValue=1;
offset0=0;
offset1="-0.8";
};
//class charge1
//{
//type="translation";
//source="reloadMagazine";
//selection= "charging_handle";
//axis="bolt_axis";
//begin = "bolt_axis_end";
//end = "bolt_axis_begin";
//memory = 1;
//minValue=0.76875;
//maxValue=0.79375;
//offset0="0";
//offset1="1";
//};
//class charge2
//{
//type="translation";
//source="reloadMagazine";
//selection= "charging_handle";
//axis="bolt_axis";
//begin = "bolt_axis_end";
//end = "bolt_axis_begin";
//memory = 1;
//minValue=0.80625;
//maxValue=0.825;
//offset0="0";
//offset1="-1";
//};
class bolt
{
type="translation";
source="reload";
selection="bolt";
axis="bolt_axis";
begin = "bolt_axis_end";
end = "bolt_axis_begin";
memory = 1;
minValue=0;
maxValue="0.8";
offset0="0";
offset1="1";
};
class bolt_2: bolt
{
minValue = 0;
maxValue = 0.5;
offset0 = 0;
offset1 = 0.14;
};
class bolt_empty: bolt{
source = "isEmptyNoReload";
minValue = 0;
maxValue = 1;
offset0 = 0;
offset1 = 1;
};
class bolt_reload_move_1: bolt_empty {
source="reloadMagazine"; // z: should work like that only if weapon is empty
minValue=0;
maxValue=0.00001;
};
class bolt_reload_move_2: bolt_reload_move_1 {
source="reloadMagazine"; // z: should work like that only if weapon is empty
minValue=0.78;
maxValue=0.80;
offset1 = -1;
};
class bullet_cover
{
type="rotation";
source="reload";
sourceAddress="mirror";
selection="janela";
axis="janela_eixo";
memory=1;
minValue=0.0;
maxValue=0.5;
angle0=0;
angle1=-0.4;
};
// bullet_cover FIRE ANIM START
class bullet_cover_UP
{
type="rotation";
source="reload";
selection="janela";
axis="janela_eixo";
memory=1;
minValue=0.0;
maxValue=0.05;
angle0=0.75;
angle1=-0.5;
};
class bullet_cover_UP_02
{
type="rotation";
source="reload";
selection="janela";
axis="janela_eixo";
memory=1;
minValue=0.05;
maxValue=0.1;
angle0=0.0;
angle1=-0.02;
};
class bullet_cover_DOWN
{
type="rotation";
source="reload";
selection="janela";
axis="janela_eixo";
memory=1;
minValue=0.1;
maxValue=0.5;
angle0=0.0;
angle1=1.27;
};
// bullet_cover FIRE ANIM END
class muzzleFlashROT
{
type="rotationX";
source="ammoRandom"; //use ammo count as phase for animation
sourceAddress="loop"; //loop when phase out of bounds
selection="zasleh"; //selection we want to rotate
axis=""; //no own axis - center of rotation is computed from selection
centerFirstVertex=true; //use first vertex of selection as center of rotation
minValue=0;
maxValue=4; //rotation angle will be 360/4 = 90 degrees
angle0="rad 0";
angle1="rad 360";
};
};
};
};

Binary file not shown.

View File

@@ -0,0 +1,328 @@
class Braf_Mekanika_URU_base: Rifle_Base_F {
author="BRAF Team";
_generalMacro="Braf_Mekanika_URU_base";
scope=0;
displayName="Mekanika URU 9mm";
picture = "";
magazines[]=
{
"30Rnd_9x21_Mag"
};
reloadAction="GestureReloadSMG_02";
recoil="recoil_smg_05";
maxZeroing=100;
handAnim[]=
{
"OFP2_ManSkeleton",
"\braf\braf_weapons_anim\animations\9mm_URU\uru_hand_anim.rtm"
};
overviewPicture="\A3\Data_F_Mark\Images\watermarkInfo_page07_ca.paa";
discreteDistanceInitIndex=2;
cursor="smg";
class Library
{
libTextDesc="Mekanika URU v1 9mm SMG";
};
class WeaponSlotsInfo: WeaponSlotsInfo
{
class CowsSlot
{
};
class MuzzleSlot
{
};
class UnderBarrelSlot
{
};
class PointerSlot
{
};
mass=66.138702;
};
distanceZoomMin=300;
distanceZoomMax=300;
changeFiremodeSound[]=
{
"A3\Sounds_F\arsenal\weapons\SMG\Sting\firemode_Sting",
0.25118864,
1,
5
};
drySound[]=
{
"braf\braf_weapons_sound\weapons\MT12\mt12_hammer.ogg",
3,
1,
10
};
reloadMagazineSound[]=
{
"braf\braf_weapons_sound\weapons\MT12\reload.ogg",
1,
1,
10
};
modes[]=
{
"Single",
"FullAuto",
"single_close_optics1",
"single_medium_optics1",
"single_far_optics1",
"fullauto_medium"
};
bullet1[]=
{
"A3\sounds_f\weapons\shells\9mm\metal_9mm_01",
0.50118703,
1,
15
};
bullet2[]=
{
"A3\sounds_f\weapons\shells\9mm\metal_9mm_02",
0.50118703,
1,
15
};
bullet3[]=
{
"A3\sounds_f\weapons\shells\9mm\metal_9mm_03",
0.50118703,
1,
15
};
bullet4[]=
{
"A3\sounds_f\weapons\shells\9mm\metal_9mm_04",
0.50118703,
1,
15
};
bullet5[]=
{
"A3\sounds_f\weapons\shells\9mm\dirt_9mm_01",
0.50118703,
1,
15
};
bullet6[]=
{
"A3\sounds_f\weapons\shells\9mm\dirt_9mm_02",
0.50118703,
1,
15
};
bullet7[]=
{
"A3\sounds_f\weapons\shells\9mm\dirt_9mm_03",
0.50118703,
1,
15
};
bullet8[]=
{
"A3\sounds_f\weapons\shells\9mm\dirt_9mm_04",
0.50118703,
1,
15
};
bullet9[]=
{
"A3\sounds_f\weapons\shells\9mm\grass_9mm_01",
0.39810699,
1,
15
};
bullet10[]=
{
"A3\sounds_f\weapons\shells\9mm\grass_9mm_02",
0.39810699,
1,
15
};
bullet11[]=
{
"A3\sounds_f\weapons\shells\9mm\grass_9mm_03",
0.39810699,
1,
15
};
bullet12[]=
{
"A3\sounds_f\weapons\shells\9mm\grass_9mm_04",
0.39810699,
1,
15
};
soundBullet[]=
{
"bullet1",
0.082999997,
"bullet2",
0.082999997,
"bullet3",
0.082999997,
"bullet4",
0.082999997,
"bullet5",
0.082999997,
"bullet6",
0.082999997,
"bullet7",
0.082999997,
"bullet8",
0.082999997,
"bullet9",
0.082999997,
"bullet10",
0.082999997,
"bullet11",
0.082999997,
"bullet12",
0.082999997
};
class Single: Mode_SemiAuto
{
class BaseSoundModeType;
class StandardSound: BaseSoundModeType
{
SoundSetShot[]=
{
"SMGVermin_Shot_SoundSet",
"SMGVermin_Tail_SoundSet",
"SMGVermin_InteriorTail_SoundSet"
};
};
class SilencedSound: BaseSoundModeType
{
SoundSetShot[]=
{
"SMGVermin_silencerShot_SoundSet",
"SMGVermin_silencerTail_SoundSet",
"SMGVermin_silencerInteriorTail_SoundSet"
};
};
reloadTime=0.054499999;
dispersion=0.00057999999;
initSpeed=850;
minRange=2;
minRangeProbab=0.30000001;
midRange=350;
midRangeProbab=0.69999999;
maxRange=500;
maxRangeProbab=0.050000001;
};
class FullAuto: Mode_FullAuto
{
class BaseSoundModeType;
class StandardSound: BaseSoundModeType
{
SoundSetShot[]=
{
"SMGVermin_Shot_SoundSet",
"SMGVermin_Tail_SoundSet",
"SMGVermin_InteriorTail_SoundSet"
};
};
class SilencedSound: BaseSoundModeType
{
SoundSetShot[]=
{
"SMGVermin_silencerShot_SoundSet",
"SMGVermin_silencerTail_SoundSet",
"SMGVermin_silencerInteriorTail_SoundSet"
};
};
reloadTime=0.054499999;
dispersion=0.00057999999;
minRange=0;
minRangeProbab=0.89999998;
midRange=15;
midRangeProbab=0.69999999;
maxRange=30;
maxRangeProbab=0.050000001;
aiRateOfFire=5;
};
class single_close_optics1: Single
{
requiredOpticType=1;
showToPlayer=0;
minRange=2;
minRangeProbab=0.050000001;
midRange=300;
midRangeProbab=0.80000001;
maxRange=500;
maxRangeProbab=0.0099999998;
aiRateOfFire=2;
aiRateOfFireDistance=300;
};
class single_medium_optics1: single_close_optics1
{
minRange=300;
minRangeProbab=0.050000001;
midRange=500;
midRangeProbab=0.69999999;
maxRange=700;
maxRangeProbab=0.050000001;
aiRateOfFire=2;
aiRateOfFireDistance=500;
};
class single_far_optics1: single_medium_optics1
{
requiredOpticType=2;
minRange=300;
minRangeProbab=0.050000001;
midRange=700;
midRangeProbab=0.5;
maxRange=1000;
maxRangeProbab=0.050000001;
aiRateOfFire=4;
aiRateOfFireDistance=600;
};
class fullauto_medium: FullAuto
{
showToPlayer=0;
burst=3;
minRange=2;
minRangeProbab=0.5;
midRange=50;
midRangeProbab=0.69999999;
maxRange=100;
maxRangeProbab=0.050000001;
aiRateOfFire=2;
};
aiDispersionCoefY=3;
aiDispersionCoefX=2;
};
class Braf_Mekanika_URU_v1: Braf_Mekanika_URU_base {
_generalMacro="Braf_Mekanika_URU_v1";
author="BRAF Team";
scope=2;
model="braf\braf_weapons_smg\9mm_URU\URU.p3d";
dexterity=1.6;
displayName="Mekanika URU V1";
picture="\braf\braf_weapons_smg\9mm_URU\data\ui\uru_sub_v1_ui_co.paa";
UiPicture="\A3\weapons_f\data\UI\icon_regular_CA.paa";
descriptionShort="SMG Mekanika URU V1 9mm";
inertia=0.40000001;
aimTransitionSpeed=1.3;
initSpeed=370;
class WeaponSlotsInfo: WeaponSlotsInfo
{
mass=66.138702;
};
ace_overheating_mrbs=100;
ace_overheating_slowdownFactor=1;
ace_overheating_allowSwapBarrel=1;
ACE_barrelTwist=254;
ACE_Overheating_Dispersion=1;
ACE_barrelLength=200;
ACE_twistDirection=1;
ACE_clearJamAction="braf_GestureClear_barrel_mt12";
class ItemInfo
{
priority=1;
};
};

BIN
braf_weapons_smg/9mm_URU/URU.p3d LFS Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,92 @@
ambient[] = {1,1,1,1};
diffuse[] = {1,1,1,1};
forcedDiffuse[] = {0.3,0.3,0.3,1};
emmisive[] = {0,0,0,0};
specular[] = {0.05,0.05,0.05,1};
specularPower = 60;
PixelShaderID = "Super";
VertexShaderID = "Super";
class Stage1
{
texture = "braf\braf_weapons_smg\9mm_URU\data\uru_sub_v1_nohq.paa";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage2
{
texture = "#(argb,8,8,3)color(0.5,0.5,0.5,0.5,DT)";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage3
{
texture = "#(argb,8,8,3)color(0.0,0.0,0.0,0.0,MC)";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage4
{
texture = "braf\braf_weapons_smg\9mm_URU\data\uru_sub_v1_as.paa";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage5
{
texture = "braf\braf_weapons_smg\9mm_URU\data\uru_sub_v1_smdi.paa";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage6
{
texture = "#(ai,64,64,1)fresnel(5.4,1.4)";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};
class Stage7
{
texture = "a3\data_f\env_land_ca.paa";
uvSource = "tex";
class uvTransform
{
aside[] = {1,0,0};
up[] = {0,1,0};
dir[] = {0,0,0};
pos[] = {0,0,0};
};
};

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,272 @@
class CfgSkeletons
{
class Default
{
isDiscrete=1;
skeletonInherit="";
skeletonBones[]={};
};
class URU_skeleton: Default
{
skeletonBones[]=
{
"magazine", "",
"bullet007", "",
"bullet008", "",
"charging_handle", "",
"selector", "",
"trigger", "",
"janela", "",
"muzzleFlash", "",
"optic_rail", "",
"zasleh", "",
"bolt", "charging_handle"
};
};
};
class CfgModels
{
class Default
{
sectionsInherit="";
sections[]={};
skeletonName="";
};
class uru: Default
{
sections[]=
{
"zasleh","muzzleFlash","magazine","selector","bolt","optic_rail","mira","zeroing","alsa","zarelho","trilho_frontal","granada","Sling","Camo"
};
skeletonName="URU_skeleton";
sectionsInherit="";
class Animations
{
class trigger /// not in this model, but good to use
{
type = "rotation";
source = "reload";
sourceAddress = "clamp";
selection = "trigger";
axis = "trigger_axis";
minValue = 0;
maxValue = "1";
angle0 = "0";
angle1 = "rad -30";
};
class selector /// not in this model, but good to use
{
type = "rotation";
source = "weaponMode";
sourceAddress = "clamp";
selection = "selector";
axis = "selector_axis";
minValue = 0;
maxValue = "1";
angle0 = "rad 0";
angle1 = "rad -495";
};
class bullet007_revolving_hide
{
type="hide";
source="revolving";
selection="bullet007";
sourceAddress="clamp";
minPhase=0;
maxPhase=1;
minValue=0;
maxValue=1;
memory=0;
hideValue=0;
unHideValue=0.035;
};
class bullet008_revolving_hide
{
type="hide";
source="revolving";
selection="bullet008";
sourceAddress="clamp";
minPhase=0;
maxPhase=1;
minValue=0;
maxValue=1;
memory=0;
hideValue=0;
unHideValue=0.035;
};
class optic_rail
{
type="hide";
source="hasOptics";
selection="optic_rail";
minValue=0;
maxValue=1;
hideValue=-1.0;
unhideValue = 0.5;
};
class acessory_rail
{
type="hide";
source="hasAccessory";
selection="trilho_frontal";
minValue=0;
maxValue=1;
hideValue=-1.0;
unhideValue = 0.5;
};
class reload_magazine_hide
{
type="hide";
source="reloadMagazine";
selection="magazine";
minValue=0;
maxValue=1;
hideValue = 0.126;
unhidevalue = 0.6300;
};
class unloaded_magazine_hide
{
type = "hide";
source = "hasMagazine";
selection = "magazine";
hideValue=0.100000;
};
class magazine_reload_move_1
{
type = "translation";
source = "reloadMagazine";
selection = "magazine";
axis = "magazine_axis";
minValue = 0.145;
maxValue = 0.170;
offset0 = 0.0;
offset1 = 0.5;
};
class magazine_reload_move_2: magazine_reload_move_1
{
minValue = 0.573;
maxValue = 0.602;
offset0 = 0.0;
offset1 = -0.5;
};
class backsight_rotate
{
type="translation";
source="zeroing";
selection="Alca_mira";
axis="mira_axis";
minValue=0;
maxValue=1;
//hideValue=1;
offset0=0;
offset1="-0.8";
};
class bolt
{
type="translation";
source="reload";
selection="bolt";
axis="bolt_axis";
begin = "bolt_axis_end";
end = "bolt_axis_begin";
memory = 1;
minValue=0;
maxValue="0.8";
offset0="0";
offset1="1";
};
class bolt_2: bolt
{
minValue = 0;
maxValue = 0.5;
offset0 = 0;
offset1 = 0.14;
};
class bolt_empty: bolt{
source = "isEmptyNoReload";
minValue = 0;
maxValue = 1;
offset0 = 0;
offset1 = 1;
};
class bolt_reload_move_1: bolt_empty {
source="reloadMagazine"; // z: should work like that only if weapon is empty
minValue=0;
maxValue=0.00001;
};
class bolt_reload_move_2: bolt_reload_move_1 {
source="reloadMagazine"; // z: should work like that only if weapon is empty
minValue=0.78;
maxValue=0.80;
offset1 = -1;
};
class bullet_cover
{
type="rotation";
source="reload";
sourceAddress="mirror";
selection="janela";
axis="janela_eixo";
memory=1;
minValue=0.0;
maxValue=0.5;
angle0=0;
angle1=-0.4;
};
// bullet_cover FIRE ANIM START
class bullet_cover_UP
{
type="rotation";
source="reload";
selection="janela";
axis="janela_eixo";
memory=1;
minValue=0.0;
maxValue=0.05;
angle0=0.75;
angle1=-0.5;
};
class bullet_cover_UP_02
{
type="rotation";
source="reload";
selection="janela";
axis="janela_eixo";
memory=1;
minValue=0.05;
maxValue=0.1;
angle0=0.0;
angle1=-0.02;
};
class bullet_cover_DOWN
{
type="rotation";
source="reload";
selection="janela";
axis="janela_eixo";
memory=1;
minValue=0.1;
maxValue=0.5;
angle0=0.0;
angle1=1.27;
};
// bullet_cover FIRE ANIM END
class muzzleFlashROT
{
type="rotationX";
source="ammoRandom"; //use ammo count as phase for animation
sourceAddress="loop"; //loop when phase out of bounds
selection="zasleh"; //selection we want to rotate
axis=""; //no own axis - center of rotation is computed from selection
centerFirstVertex=true; //use first vertex of selection as center of rotation
minValue=0;
maxValue=4; //rotation angle will be 360/4 = 90 degrees
angle0="rad 0";
angle1="rad 360";
};
};
};
};

View File

@@ -0,0 +1,26 @@
class CfgPatches
{
class braf_weapons_smg
{
author = "BRAF Team";
units[] = {};
weapons[] = {};
requiredVersion = 0.1;
requiredAddons[] = {"A3_weapons_f","braf_main"};
};
};
class Mode_SemiAuto;
class Mode_FullAuto;
class CfgWeapons
{
class Rifle;
class Rifle_Base_F : Rifle
{
class WeaponSlotsInfo;
class GunParticles;
};
#include "9mm_BerettaMT12\9mm_BerettaMT12.hpp"
#include "9mm_URU\9mm_URU.hpp"
};