Browse Source

SWOPless B2 fixes+assets exploding and vanishing

Erliens 3 years ago
parent
commit
02bf54550a

+ 232 - 1
addons - Copy/RD501_Units/opfor/B2/config.cpp

@@ -20,7 +20,8 @@ class CfgPatches
 		requiredVersion=0.1;
 		units[]={
 			macro_new_unit_class(opfor,B2_droid_Standard),
-			macro_new_unit_class(opfor,B2_droid_Super)
+			macro_new_unit_class(opfor,B2_droid_Super),
+			macro_new_unit_class(opfor,B2_droid_Standard_mk2)
 		};
 		weapons[]=
 		{
@@ -43,6 +44,7 @@ class Extended_Init_EventHandlers
 class CfgVehicles
 {
 	class SWOP_B2_superdroid;
+	class O_Soldier_F;
 	class macro_new_unit_class(opfor,B2_droid_Standard): SWOP_B2_superdroid
 	{
 		faction=macro_cis_faction
@@ -252,6 +254,217 @@ class CfgVehicles
         weapons[] = {"SWOP_B2gun","Throw","Put"};
         linkedItems[] = {"ItemMap","ItemCompass","ItemWatch","ItemRadio","NVGoggles"};
 	};
+class macro_new_unit_class(opfor,B2_droid_Standard_mk2): O_Soldier_F
+	{
+		faction=macro_cis_faction
+		editorSubcategory=macro_editor_cat(B2)
+		displayname = "B2 Mk2";
+		scope=2;
+		class HitPoints
+		{
+			class HitFace
+			{
+				armor=6;
+				material=-1;
+				name="face_hub";
+				passThrough=0.013;
+				radius=0.079999998;
+				explosionShielding=1;
+				minimalHit=0.0099999998;
+			};
+			class HitNeck: HitFace
+			{
+				armor=6;
+				material=-1;
+				name="neck";
+				passThrough=0.013;
+				radius=0.1;
+				explosionShielding=1;
+				minimalHit=0.0099999998;
+			};
+			class HitHead: HitNeck
+			{
+				armor=6;
+				material=-1;
+				name="head";
+				passThrough=0.13;
+				radius=0.2;
+				explosionShielding=1;
+				minimalHit=0.0099999998;
+				depends="HitFace max HitNeck";
+			};
+			class HitPelvis: HitHead
+			{
+				armor=8;
+				material=-1;
+				name="pelvis";
+				passThrough=0.44;
+				radius=0.23999999;
+				explosionShielding=1;
+				visual="injury_body";
+				minimalHit=0.0099999998;
+				depends="0";
+			};
+			class HitAbdomen: HitPelvis
+			{
+				armor=8;
+				material=-1;
+				name="spine1";
+				passThrough=0.44;
+				radius=0.16;
+				explosionShielding=1;
+				visual="injury_body";
+				minimalHit=0.0099999998;
+			};
+			class HitDiaphragm: HitAbdomen
+			{
+				armor=8;
+				material=-1;
+				name="spine2";
+				passThrough=0.44;
+				radius=0.18000001;
+				explosionShielding=1.5;
+				visual="injury_body";
+				minimalHit=0.0099999998;
+			};
+			class HitChest: HitDiaphragm
+			{
+				armor=8;
+				material=-1;
+				name="spine3";
+				passThrough=0.44;
+				radius=0.18000001;
+				explosionShielding=1.5;
+				visual="injury_body";
+				minimalHit=0.0099999998;
+			};
+			class HitBody: HitChest
+			{
+				armor=1000;
+				material=-1;
+				name="body";
+				passThrough=1;
+				radius=0;
+				explosionShielding=1.5;
+				visual="injury_body";
+				minimalHit=0.0099999998;
+				depends="HitPelvis max HitAbdomen max HitDiaphragm max HitChest";
+			};
+			class HitArms: HitBody
+			{
+				armor=6;
+				material=-1;
+				name="arms";			
+				passThrough=0.13;
+				radius=0.1;
+				explosionShielding=0.4;
+				visual="injury_hands";
+				minimalHit=0.0099999998;
+				depends="0";
+			};
+			class HitRightHand :HitArms
+			{
+				armor = 8;
+				explosionShielding = 0.25;
+				material = -1;
+				minimalHit = 0.01;
+				name = "hand_r";
+				passThrough = 0.1;
+				radius = 0.1;
+				visual = "injury_hands";
+			};
+			class HitLeftHand :HitArms
+			{
+				armor = 8;
+				explosionShielding = 0.25;
+				material = -1;
+				minimalHit = 0.01;
+				name = "hand_l";
+				passThrough = 0.1;
+				radius = 0.1;
+				visual = "injury_hands";
+			};
+			class HitHands: HitArms
+			{
+				armor=6;
+				material=-1;
+				name="hands";
+				passThrough=0.13;
+				radius=0.1;
+				explosionShielding=0.30000001;
+				visual="injury_hands";
+				minimalHit=0.0099999998;
+				depends="HitArms";
+			};
+			class HitLegs: HitHands
+			{
+				armor=6;
+				material=-1;
+				name="legs";
+				passThrough=0.13;
+				radius=0.1;
+				explosionShielding=0.30000001;
+				visual="injury_legs";
+				minimalHit=0.0099999998;
+				depends="0";
+			};
+			class HitLeftLeg :HitLegs
+			{
+				armor = 8;
+				explosionShielding = 0.25;
+				material = -1;
+				minimalHit = 0.01;
+				name = "leg_l";
+				passThrough = 0.1;
+				radius = 0.1;
+				visual = "injury_legs";
+			};
+			class HitRightLeg :HitLegs
+			{
+				armor = 8;
+				explosionShielding = 0.25;
+				material = -1;
+				minimalHit = 0.01;
+				name = "leg_r";
+				passThrough = 0.1;
+				radius = 0.1;
+				visual = "injury_leg";
+			};
+			class Incapacitated: HitLegs
+			{
+				armor=1000;
+				material=-1;
+				name="body";
+				passThrough=1;
+				radius=0;
+				explosionShielding=1;
+				visual="";
+				minimalHit=0;
+				depends="(((Total - 0.25) max 0) + ((HitHead - 0.25) max 0) + ((HitBody - 0.25) max 0)) * 2";
+			};
+		};
+		armor=15;
+		armorStructural=1;
+		explosionShielding=0.40000001;
+		model="\101st_Aux_Mod\Addons\DBA_CIS\Assets\B2.p3d";
+		uniformClass=macro_new_uniform_class(opfor,B2_Armor_mk2)
+		class EventHandlers;
+		hiddenSelections[]=
+		{
+			"Camo1","Camo2","Camo3"
+		};
+		hiddenSelectionsTextures[]=
+		{
+        "RD501_Units\textures\CIS\B2\rocket\Reskinb2_chest.paa",
+        "RD501_Units\textures\CIS\B2\rocket\ReskinB2_waist.paa",
+        "RD501_Units\textures\CIS\B2\rocket\ReskinB2_legs.paa"
+		};
+		respawnWeapons[] = {macro_new_weapon(b2,standard),"Put"};
+        magazines[] = {macro_new_mag(b2gun,40),macro_new_mag(b2gun,40),macro_new_mag(b2gun,40),macro_new_mag(b2gun,40),macro_new_mag(b2rocket,3),macro_new_mag(b2rocket,3)};
+        weapons[] = {macro_new_weapon(b2,standard),"Put"};
+		respawnMagazines[]= {macro_new_mag(b2gun,40),macro_new_mag(b2gun,40),macro_new_mag(b2gun,40),macro_new_mag(b2gun,40),macro_new_mag(b2rocket,3),macro_new_mag(b2rocket,3)};
+        linkedItems[] = {"ItemMap","ItemCompass","ItemWatch","ItemRadio","NVGoggles"};
+	};
 	class macro_new_unit_class(opfor,B2_droid_Super) : macro_new_unit_class(opfor,B2_droid_Standard)
 	{
 		displayname = "Super B2";
@@ -477,6 +690,24 @@ class CfgWeapons
 		JLTS_deathSounds = "DeathDroid";
 		class EventHandlers : DefaultEventhandlers {};
 	};
+	class macro_new_uniform_class(opfor,B2_Armor_mk2): UniformItem
+	{
+		scope=2;
+		displayName="RD501 B2";
+		picture = "\SWOP_droids\data\ico\B2ico.paa"
+		model = "\A3\Characters_F\Common\Suitpacks\suitpack_blufor_diver";
+		class ItemInfo: UniformItem
+		{
+			uniformModel="-";
+			uniformClass=macro_new_unit_class(opfor,B2_droid_Standard_mk2)
+			containerClass="Supply40";
+			mass=80;
+		};
+		JLTS_isDroid = 1; 
+		JLTS_hasEMPProtection = 0; 
+		JLTS_deathSounds = "DeathDroid";
+		class EventHandlers : DefaultEventhandlers {};
+	};
 	class macro_new_uniform_class(opfor,B2_SuperArmor): SWOP_B2_superdroid_F_Spec
 	{
 		scope=2;

+ 2 - 2
addons - Copy/RD501_Vehicles/land/bantha/config.cpp

@@ -191,8 +191,8 @@ class CfgVehicles
 		{
 			class MainTurret:MainTurret
 			{
-				weapons[] = {"SCI_autocannon_Z20_HBB","missiles_DAGR","missiles_titan"};
-				magazines[] = {"SCI_500Rnd_Z20_HBB","SCI_500Rnd_Z20_HBB","SCI_500Rnd_Z20_HBB","SCI_500Rnd_Z20_HBB","12Rnd_PG_missiles","2Rnd_GAT_missiles"};
+				weapons[] = {"212th_autocannon_Z20_HBB","missiles_DAGR","missiles_titan"};
+				magazines[] = {"212th_500Rnd_Z20_HBB","212th_500Rnd_Z20_HBB","212th_500Rnd_Z20_HBB","212th_500Rnd_Z20_HBB","12Rnd_PG_missiles","2Rnd_GAT_missiles"};
 				class HitPoints:HitPoints
 				{
 					class HitTurret:HitTurret

+ 156 - 0
addons - Copy/RD501_Vehicles/land/dwarf_spider_droid/config.cpp

@@ -101,6 +101,84 @@ class CfgVehicles
 				radius = 3;
 			};
 		};
+		destrType = "DestructBuilding";
+		explosionEffect="FuelExplosion";
+		class DestructionEffects
+		{
+			class Dust
+			{
+				intensity = 0.1;
+				interval = 1;
+				lifeTime = 0.01;
+				position = "destructionEffect2";
+				simulation = "particles";
+				type = "HousePartDust";
+			};
+			class Light1
+			{
+				enabled = "distToWater";
+				intensity = 0.1;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "light";
+				type = "ObjectDestructionLightSmall";
+			};
+			class Fire1
+			{
+				intensity = 0.15;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "particles";
+				type = "ObjectDestructionFire1Small";
+			};
+			class Refract1
+			{
+				intensity = 1;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "particles";
+				type = "SmallFireFRefract";
+			};
+			class Sound
+			{
+				intensity = 1;
+				interval = 1;
+				lifeTime = 1;
+				position = "destructionEffect";
+				simulation = "sound";
+				type = "Fire";
+			};
+			class sparks1
+			{
+				intensity = 0.5;
+				interval = 1;
+				lifeTime = 0;
+				position = "destructionEffect2";
+				simulation = "particles";
+				type = "ObjectDestructionSparks";
+			};
+			class Smoke1
+			{
+				simulation="particles";
+				type="BarelDestructionSmoke";
+				position[]={0,0,0};
+				intensity=0.2;
+				interval=1;
+				lifeTime=1;
+			};
+			class HouseDestr
+			{
+				intensity=1;
+				interval=1;
+				lifeTime=5;
+				position="";
+				simulation="destroy";
+				type="DelayedDestruction";
+			};
+		};
 	};
 
 	class macro_new_vehicle(dwarf_spider_droid,Movable_MkII): macro_new_vehicle(dwarf_spider_droid,MkII)
@@ -154,6 +232,84 @@ class CfgVehicles
 				};
 			};
 		};
+		destrType = "DestructBuilding";
+		explosionEffect="FuelExplosion";
+		class DestructionEffects
+		{
+			class Dust
+			{
+				intensity = 0.1;
+				interval = 1;
+				lifeTime = 0.01;
+				position = "destructionEffect2";
+				simulation = "particles";
+				type = "HousePartDust";
+			};
+			class Light1
+			{
+				enabled = "distToWater";
+				intensity = 0.1;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "light";
+				type = "ObjectDestructionLightSmall";
+			};
+			class Fire1
+			{
+				intensity = 0.15;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "particles";
+				type = "ObjectDestructionFire1Small";
+			};
+			class Refract1
+			{
+				intensity = 1;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "particles";
+				type = "SmallFireFRefract";
+			};
+			class Sound
+			{
+				intensity = 1;
+				interval = 1;
+				lifeTime = 1;
+				position = "destructionEffect";
+				simulation = "sound";
+				type = "Fire";
+			};
+			class sparks1
+			{
+				intensity = 0.5;
+				interval = 1;
+				lifeTime = 0;
+				position = "destructionEffect2";
+				simulation = "particles";
+				type = "ObjectDestructionSparks";
+			};
+			class Smoke1
+			{
+				simulation="particles";
+				type="BarelDestructionSmoke";
+				position[]={0,0,0};
+				intensity=0.2;
+				interval=1;
+				lifeTime=1;
+			};
+			class HouseDestr
+			{
+				intensity=1;
+				interval=1;
+				lifeTime=5;
+				position="";
+				simulation="destroy";
+				type="DelayedDestruction";
+			};
+		}
 	};
 	class macro_new_vehicle(crab_droid,Movable_MkII): macro_new_vehicle(crab_droid,MkII)
 	{

+ 156 - 0
addons - Copy/RD501_Vehicles/land/static_cis/config.cpp

@@ -90,6 +90,84 @@ class CfgVehicles
 				};
 			};
 		};
+		destrType = "DestructBuilding";
+		explosionEffect="FuelExplosion";
+		class DestructionEffects
+		{
+			class Dust
+			{
+				intensity = 0.1;
+				interval = 1;
+				lifeTime = 0.01;
+				position = "destructionEffect2";
+				simulation = "particles";
+				type = "HousePartDust";
+			};
+			class Light1
+			{
+				enabled = "distToWater";
+				intensity = 0.1;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "light";
+				type = "ObjectDestructionLightSmall";
+			};
+			class Fire1
+			{
+				intensity = 0.15;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "particles";
+				type = "ObjectDestructionFire1Small";
+			};
+			class Refract1
+			{
+				intensity = 1;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "particles";
+				type = "SmallFireFRefract";
+			};
+			class Sound
+			{
+				intensity = 1;
+				interval = 1;
+				lifeTime = 1;
+				position = "destructionEffect";
+				simulation = "sound";
+				type = "Fire";
+			};
+			class sparks1
+			{
+				intensity = 0.5;
+				interval = 1;
+				lifeTime = 0;
+				position = "destructionEffect2";
+				simulation = "particles";
+				type = "ObjectDestructionSparks";
+			};
+			class Smoke1
+			{
+				simulation="particles";
+				type="BarelDestructionSmoke";
+				position[]={0,0,0};
+				intensity=0.2;
+				interval=1;
+				lifeTime=1;
+			};
+			class HouseDestr
+			{
+				intensity=1;
+				interval=1;
+				lifeTime=5;
+				position="";
+				simulation="destroy";
+				type="DelayedDestruction";
+			};
+		};
 	};
 	class 3as_ParticleCannon_Base: StaticMGWeapon
 	{
@@ -122,6 +200,84 @@ class CfgVehicles
 				magazines[]={macro_new_mag(generic_aircraft_gun,1000),macro_new_mag(generic_aircraft_gun,1000),macro_new_mag(generic_aircraft_gun,1000),macro_new_mag(generic_aircraft_gun,1000),macro_new_mag(generic_aircraft_gun,1000)};
 			};
 		};
+		destrType = "DestructBuilding";
+		explosionEffect="FuelExplosion";
+		class DestructionEffects
+		{
+			class Dust
+			{
+				intensity = 0.1;
+				interval = 1;
+				lifeTime = 0.01;
+				position = "destructionEffect2";
+				simulation = "particles";
+				type = "HousePartDust";
+			};
+			class Light1
+			{
+				enabled = "distToWater";
+				intensity = 0.1;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "light";
+				type = "ObjectDestructionLightSmall";
+			};
+			class Fire1
+			{
+				intensity = 0.15;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "particles";
+				type = "ObjectDestructionFire1Small";
+			};
+			class Refract1
+			{
+				intensity = 1;
+				interval = 1;
+				lifeTime = 3;
+				position = "destructionEffect";
+				simulation = "particles";
+				type = "SmallFireFRefract";
+			};
+			class Sound
+			{
+				intensity = 1;
+				interval = 1;
+				lifeTime = 1;
+				position = "destructionEffect";
+				simulation = "sound";
+				type = "Fire";
+			};
+			class sparks1
+			{
+				intensity = 0.5;
+				interval = 1;
+				lifeTime = 0;
+				position = "destructionEffect2";
+				simulation = "particles";
+				type = "ObjectDestructionSparks";
+			};
+			class Smoke1
+			{
+				simulation="particles";
+				type="BarelDestructionSmoke";
+				position[]={0,0,0};
+				intensity=0.2;
+				interval=1;
+				lifeTime=1;
+			};
+			class HouseDestr
+			{
+				intensity=1;
+				interval=1;
+				lifeTime=5;
+				position="";
+				simulation="destroy";
+				type="DelayedDestruction";
+			};
+		};
 	};
 	/*class StaticMortar: StaticWeapon
 	{

+ 120 - 0
addons - Copy/RD501_Weapons/Droid_weapons/B2/config.cpp

@@ -0,0 +1,120 @@
+#define COMPONENT E5
+#include "../../../RD501_main/config_macros.hpp"
+#include "../../_common/common.hpp"
+
+
+
+class CfgPatches
+{
+	class macro_patch_name(b2)
+	{
+		author=DANKAUTHORS;
+		addonRootClass= macro_patch_name(weapons)
+		requiredAddons[]=
+		{
+			macro_patch_name(weapons)
+		};
+		requiredVersion=0.1;
+		units[]={};
+		weapons[]={
+			macro_new_weapon(b2,standard)
+		};
+	};
+};
+
+class CfgWeapons
+{
+	class Rifle_Base_F;
+	class Rifle_Long_Base_F: Rifle_Base_F
+	{};
+	class DBA_B2_Weapon: Rifle_Long_Base_F
+	{class Secondary: Rifle_Long_Base_F{};};
+	class macro_new_weapon(b2,standard):DBA_B2_Weapon
+	{
+		magazines[]=
+		{
+			macro_new_mag(b2gun,40)
+		};	
+	reloadAction="";
+	class Secondary: Secondary
+		{
+		muzzles[]=
+			{
+				"this"
+			};
+			magazines[]=
+			{
+				macro_new_mag(b2rocket,3)
+			};
+		};
+	
+	};
+};
+
+class CfgMagazines
+{
+	class CA_Magazine;
+	class 101st_B2_Rocket: CA_Magazine{};
+	class macro_new_mag(b2rocket,3):101st_B2_Rocket
+	{
+		descriptionShort="Wrist Rockets";
+		displayName="B2 Wrist Rockets";
+		count=3;
+		ammo=macro_new_ammo(b2rocket)
+	};
+	class 101st_B2_Mag: CA_Magazine{}
+	class macro_new_mag(b2gun,40):101st_B2_Mag
+	{
+		descriptionShort="B2 Droid Magazine";
+		displayName="B2 Droid Magazine";
+		count=40;
+		ammo=macro_new_ammo(b2gun)
+		tracersEvery=1;
+	};
+};
+
+class CfgAmmo
+{
+	class JLTS_bullet_carbine_red;
+	class 101st_Wrist_Rocket_Ammo: JLTS_bullet_carbine_red{}
+	class macro_new_ammo(b2rocket):101st_Wrist_Rocket_Ammo
+	{
+		cost=50;
+		caliber=3;
+		dangerRadiusBulletClose=16;
+		dangerRadiusHit=40;
+		effectFly="b2rockets_Effect";
+		explosionAngle=60;
+		explosive=0.80000001;
+		hit=100;
+		effectFlare="FlareShell";
+		effectsFire="CannonFire";
+		explosionDir="explosionDir";
+		explosionEffects="ATMissileExplosion";
+		explosionEffectsDir="explosionDir";
+		explosionPos="explosionPos";
+		explosionType="explosive";
+		indirectHit=5;
+		indirectHitRange=3;
+		model="\A3\Weapons_F\Ammo\ugl_slug";
+		muzzleEffect="BIS_fnc_effectFiredRocket";
+	};
+	class 101st_B2_Ammo: JLTS_bullet_carbine_red{}
+	class macro_new_ammo(b2gun):101st_B2_Ammo
+	{
+		cost=1;
+		caliber=3;
+		dangerRadiusBulletClose=16;
+		dangerRadiusHit=40;
+		explosionAngle=60;
+		explosive=0;
+		hit=20;
+		model="\RD501_Vehicle_Weapons\_ammo\data\laser_small_red.p3d";
+		tracerScale=1;
+		tracerStartTime=0;
+		tracerEndTime=10;
+		explosionSoundEffect="DefaultExplosion";
+		explosionEffects="ExploAmmoExplosionPlaneCAS";
+		craterEffects="ExploAmmoCrater";
+	};
+};