Skip to content

Commit

Permalink
Merge pull request #2956 from CombatExtended-Continued/MortarAirburst
Browse files Browse the repository at this point in the history
Implement Airburst Shells
  • Loading branch information
N7Huntsman authored Jan 29, 2024
2 parents 1725fc4 + ec938c2 commit e608d64
Show file tree
Hide file tree
Showing 11 changed files with 272 additions and 93 deletions.
126 changes: 109 additions & 17 deletions Defs/Ammo/Shell/105mmHowitzer.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,10 @@

<CombatExtended.AmmoSetDef>
<defName>AmmoSet_105mmHowitzerShell</defName>
<label>105mm Howitzer shells</label>
<label>105mm howitzer shells</label>
<ammoTypes>
<Ammo_105mmHowitzerShell_HE>Bullet_105mmHowitzerShell_HE</Ammo_105mmHowitzerShell_HE>
<Ammo_105mmHowitzerShell_HE_HFuzed>Bullet_105mmHowitzerShell_HE_HFuzed</Ammo_105mmHowitzerShell_HE_HFuzed>
<Ammo_105mmHowitzerShell_Incendiary>Bullet_105mmHowitzerShell_Incendiary</Ammo_105mmHowitzerShell_Incendiary>
<Ammo_105mmHowitzerShell_EMP>Bullet_105mmHowitzerShell_EMP</Ammo_105mmHowitzerShell_EMP>
<Ammo_105mmHowitzerShell_Smoke>Bullet_105mmHowitzerShell_Smoke</Ammo_105mmHowitzerShell_Smoke>
Expand All @@ -24,7 +25,7 @@

<CombatExtended.AmmoSetDef>
<defName>AmmoSet_105mmHowitzerShell_directfire</defName>
<label>105mm Howitzer shells</label>
<label>105mm howitzer shells</label>
<ammoTypes>
<Ammo_105mmHowitzerShell_HEAT>Bullet_105mmHowitzerShell_HEAT_directfire</Ammo_105mmHowitzerShell_HEAT>
<Ammo_105mmHowitzerShell_HE>Bullet_105mmHowitzerShell_HE_directfire</Ammo_105mmHowitzerShell_HE>
Expand Down Expand Up @@ -74,6 +75,20 @@
<detonateProjectile>Bullet_105mmHowitzerShell_HE</detonateProjectile>
</ThingDef>

<ThingDef Class="CombatExtended.AmmoDef" ParentName="105mmHowitzerShellBase">
<defName>Ammo_105mmHowitzerShell_HE_HFuzed</defName>
<label>105mm Howitzer shell (Airburst)</label>
<graphicData>
<texPath>Things/Ammo/Cannon/Howitzer/AB</texPath>
<graphicClass>Graphic_StackCount</graphicClass>
</graphicData>
<statBases>
<MarketValue>151.92</MarketValue>
</statBases>
<ammoClass>GrenadeHETF</ammoClass>
<detonateProjectile>Bullet_105mmHowitzerShell_HE</detonateProjectile>
</ThingDef>

<ThingDef Class="CombatExtended.AmmoDef" ParentName="105mmHowitzerShellBase">
<defName>Ammo_105mmHowitzerShell_HEAT</defName>
<label>105mm Howitzer shell (HEAT)</label>
Expand Down Expand Up @@ -181,6 +196,36 @@
</comps>
</ThingDef>

<ThingDef ParentName="Base105mmHowitzerShell">
<defName>Bullet_105mmHowitzerShell_HE_HFuzed</defName>
<label>105mm Howitzer shell (Airburst)</label>
<thingClass>CombatExtended.ProjectileCE_HeightFuse</thingClass>
<graphicData>
<texPath>Things/Projectile/Cannon/Howitzer/AB</texPath>
<graphicClass>Graphic_Single</graphicClass>
</graphicData>
<projectile Class="CombatExtended.ProjectilePropertiesCE">
<damageDef>Smoke</damageDef>
<damageAmountBase>0</damageAmountBase>
<explosionRadius>3</explosionRadius>
<soundExplode>MortarBomb_Explode</soundExplode>
<applyDamageToExplosionCellsNeighbors>true</applyDamageToExplosionCellsNeighbors>
<aimHeightOffset>11</aimHeightOffset>
<shellingProps>
<damage>0.26</damage>
</shellingProps>
</projectile>
<comps>
<li Class="CombatExtended.CompProperties_Fragments">
<fragments>
<Fragment_Large>40</Fragment_Large>
<Fragment_Small>44</Fragment_Small>
</fragments>
<fragAngleRange>-90~-40</fragAngleRange>
</li>
</comps>
</ThingDef>

<ThingDef ParentName="Base105mmHowitzerShell">
<defName>Bullet_105mmHowitzerShell_Incendiary</defName>
<label>105mm Howitzer shell (Incendiary)</label>
Expand Down Expand Up @@ -389,9 +434,9 @@

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_105mmHowitzerShell_HE</defName>
<label>make 105mm HE Howitzer shells x2</label>
<description>Craft 2 105mm HE Howitzer shells.</description>
<jobString>Making 105mm HE Howitzer shells.</jobString>
<label>make 105mm HE howitzer shells x2</label>
<description>Craft 2 105mm HE howitzer shells.</description>
<jobString>Making 105mm HE howitzer shells.</jobString>
<workAmount>10000</workAmount>
<ingredients>
<li>
Expand Down Expand Up @@ -434,11 +479,58 @@
</skillRequirements>
</RecipeDef>

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_105mmHowitzerShell_HE_HFuzed</defName>
<label>make 105mm airburst howitzer shells x2</label>
<description>Craft 2 105mm airburst howitzer shells.</description>
<jobString>Making 105mm airburst howitzer shells.</jobString>
<workAmount>11200</workAmount>
<ingredients>
<li>
<filter>
<thingDefs>
<li>Steel</li>
</thingDefs>
</filter>
<count>60</count>
</li>
<li>
<filter>
<thingDefs>
<li>ComponentIndustrial</li>
</thingDefs>
</filter>
<count>4</count>
</li>
<li>
<filter>
<thingDefs>
<li>FSX</li>
</thingDefs>
</filter>
<count>7</count>
</li>
</ingredients>
<fixedIngredientFilter>
<thingDefs>
<li>Steel</li>
<li>ComponentIndustrial</li>
<li>FSX</li>
</thingDefs>
</fixedIngredientFilter>
<products>
<Ammo_105mmHowitzerShell_HE_HFuzed>2</Ammo_105mmHowitzerShell_HE_HFuzed>
</products>
<skillRequirements>
<Crafting>5</Crafting>
</skillRequirements>
</RecipeDef>

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_105mmHowitzerShell_HEAT</defName>
<label>make 105mm HEAT Howitzer shells x2</label>
<description>Craft 2 105mm HEAT Howitzer shells.</description>
<jobString>Making 105mm HEAT Howitzer shells.</jobString>
<label>make 105mm HEAT howitzer shells x2</label>
<description>Craft 2 105mm HEAT howitzer shells.</description>
<jobString>Making 105mm HEAT howitzer shells.</jobString>
<workAmount>10400</workAmount>
<ingredients>
<li>
Expand Down Expand Up @@ -483,9 +575,9 @@

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_105mmHowitzerShell_Incendiary</defName>
<label>make 105mm Incendiary Howitzer shells x2</label>
<description>Craft 2 105mm Incendiary Howitzer shells.</description>
<jobString>Making 105mm Incendiary Howitzer shells.</jobString>
<label>make 105mm Incendiary howitzer shells x2</label>
<description>Craft 2 105mm Incendiary howitzer shells.</description>
<jobString>Making 105mm Incendiary howitzer shells.</jobString>
<workAmount>8400</workAmount>
<ingredients>
<li>
Expand Down Expand Up @@ -530,9 +622,9 @@

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_105mmHowitzerShell_EMP</defName>
<label>make 105mm EMP Howitzer shells x2</label>
<description>Craft 2 105mm EMP Howitzer shells.</description>
<jobString>Making 105mm EMP Howitzer shells.</jobString>
<label>make 105mm EMP howitzer shells x2</label>
<description>Craft 2 105mm EMP howitzer shells.</description>
<jobString>Making 105mm EMP howitzer shells.</jobString>
<researchPrerequisite>MicroelectronicsBasics</researchPrerequisite>
<workAmount>12000</workAmount>
<ingredients>
Expand Down Expand Up @@ -569,9 +661,9 @@

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_105mmHowitzerShell_Smoke</defName>
<label>make 105mm Smoke Howitzer shells x2</label>
<description>Craft 2 105mm Smoke Howitzer shells.</description>
<jobString>Making 105mm Smoke Howitzer shells.</jobString>
<label>make 105mm Smoke howitzer shells x2</label>
<description>Craft 2 105mm Smoke howitzer shells.</description>
<jobString>Making 105mm Smoke howitzer shells.</jobString>
<workAmount>8400</workAmount>
<ingredients>
<li>
Expand Down
108 changes: 100 additions & 8 deletions Defs/Ammo/Shell/155mmHowitzer.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,10 @@

<CombatExtended.AmmoSetDef>
<defName>AmmoSet_155mmHowitzerShell</defName>
<label>155mm Howitzer shells</label>
<label>155mm howitzer shells</label>
<ammoTypes>
<Ammo_155mmHowitzerShell_HE>Bullet_155mmHowitzerShell_HE</Ammo_155mmHowitzerShell_HE>
<Ammo_155mmHowitzerShell_HE_HFuzed>Bullet_155mmHowitzerShell_HE_HFuzed</Ammo_155mmHowitzerShell_HE_HFuzed>
<Ammo_155mmHowitzerShell_Incendiary>Bullet_155mmHowitzerShell_Incendiary</Ammo_155mmHowitzerShell_Incendiary>
<Ammo_155mmHowitzerShell_EMP>Bullet_155mmHowitzerShell_EMP</Ammo_155mmHowitzerShell_EMP>
<Ammo_155mmHowitzerShell_Smoke>Bullet_155mmHowitzerShell_Smoke</Ammo_155mmHowitzerShell_Smoke>
Expand All @@ -24,7 +25,7 @@

<CombatExtended.AmmoSetDef>
<defName>AmmoSet_155mmHowitzerShell_directfire</defName>
<label>155mm Howitzer shells</label>
<label>155mm howitzer shells</label>
<ammoTypes>
<Ammo_155mmHowitzerShell_HE>Bullet_155mmHowitzerShell_HE_directfire</Ammo_155mmHowitzerShell_HE>
<Ammo_155mmHowitzerShell_Incendiary>Bullet_155mmHowitzerShell_Incendiary_directfire</Ammo_155mmHowitzerShell_Incendiary>
Expand Down Expand Up @@ -70,6 +71,20 @@
<detonateProjectile>Bullet_155mmHowitzerShell_HE</detonateProjectile>
</ThingDef>

<ThingDef Class="CombatExtended.AmmoDef" ParentName="155mmHowitzerShellBase">
<defName>Ammo_155mmHowitzerShell_HE_HFuzed</defName>
<label>155mm Howitzer shell (Airburst)</label>
<graphicData>
<texPath>Things/Ammo/Cannon/Howitzer/AB</texPath>
<graphicClass>Graphic_StackCount</graphicClass>
</graphicData>
<statBases>
<MarketValue>449.6</MarketValue>
</statBases>
<ammoClass>GrenadeHETF</ammoClass>
<detonateProjectile>Bullet_155mmHowitzerShell_HE</detonateProjectile>
</ThingDef>

<ThingDef Class="CombatExtended.AmmoDef" ParentName="155mmHowitzerShellBase">
<defName>Ammo_155mmHowitzerShell_Incendiary</defName>
<label>155mm Howitzer shell (Incendiary)</label>
Expand Down Expand Up @@ -164,6 +179,36 @@
</comps>
</ThingDef>

<ThingDef ParentName="Base155mmHowitzerShell">
<defName>Bullet_155mmHowitzerShell_HE_HFuzed</defName>
<label>155mm Howitzer shell (Airburst)</label>
<thingClass>CombatExtended.ProjectileCE_HeightFuse</thingClass>
<graphicData>
<texPath>Things/Projectile/Cannon/Howitzer/AB</texPath>
<graphicClass>Graphic_Single</graphicClass>
</graphicData>
<projectile Class="CombatExtended.ProjectilePropertiesCE">
<damageDef>Smoke</damageDef>
<damageAmountBase>0</damageAmountBase>
<explosionRadius>5.5</explosionRadius>
<soundExplode>MortarBomb_Explode</soundExplode>
<applyDamageToExplosionCellsNeighbors>true</applyDamageToExplosionCellsNeighbors>
<aimHeightOffset>12</aimHeightOffset>
<shellingProps>
<damage>0.33</damage>
</shellingProps>
</projectile>
<comps>
<li Class="CombatExtended.CompProperties_Fragments">
<fragments>
<Fragment_Large>40</Fragment_Large>
<Fragment_Small>80</Fragment_Small>
</fragments>
<fragAngleRange>-90~-40</fragAngleRange>
</li>
</comps>
</ThingDef>

<ThingDef ParentName="Base155mmHowitzerShell">
<defName>Bullet_155mmHowitzerShell_Incendiary</defName>
<label>155mm Howitzer shell (Incendiary)</label>
Expand Down Expand Up @@ -341,9 +386,9 @@

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_155mmHowitzerShell_HE</defName>
<label>make 155mm HE Howitzer shells x1</label>
<description>Craft 1 155mm HE Howitzer shells.</description>
<jobString>Making 155mm HE Howitzer shells.</jobString>
<label>make 155mm HE howitzer shells x1</label>
<description>Craft 1 155mm HE howitzer shells.</description>
<jobString>Making 155mm HE howitzer shells.</jobString>
<workAmount>17400</workAmount>
<ingredients>
<li>
Expand Down Expand Up @@ -386,9 +431,56 @@
</skillRequirements>
</RecipeDef>

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_155mmHowitzerShell_HE_HFuzed</defName>
<label>make 155mm airburst howitzer shells x1</label>
<description>Craft 1 155mm airburst howitzer shells.</description>
<jobString>Making 155mm airburst howitzer shells.</jobString>
<workAmount>18600</workAmount>
<ingredients>
<li>
<filter>
<thingDefs>
<li>Steel</li>
</thingDefs>
</filter>
<count>94</count>
</li>
<li>
<filter>
<thingDefs>
<li>ComponentIndustrial</li>
</thingDefs>
</filter>
<count>4</count>
</li>
<li>
<filter>
<thingDefs>
<li>FSX</li>
</thingDefs>
</filter>
<count>17</count>
</li>
</ingredients>
<fixedIngredientFilter>
<thingDefs>
<li>Steel</li>
<li>ComponentIndustrial</li>
<li>FSX</li>
</thingDefs>
</fixedIngredientFilter>
<products>
<Ammo_155mmHowitzerShell_HE_HFuzed>1</Ammo_155mmHowitzerShell_HE_HFuzed>
</products>
<skillRequirements>
<Crafting>5</Crafting>
</skillRequirements>
</RecipeDef>

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_155mmHowitzerShell_Incendiary</defName>
<label>make 155mm Incendiary Howitzer shells x1</label>
<label>make 155mm Incendiary howitzer shells x1</label>
<description>Craft 155mm Incendiary Howitzer shell.</description>
<jobString>Making 155mm Incendiary Howitzer shell.</jobString>
<workAmount>12600</workAmount>
Expand Down Expand Up @@ -435,7 +527,7 @@

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_155mmHowitzerShell_EMP</defName>
<label>make 155mm EMP Howitzer shells x1</label>
<label>make 155mm EMP howitzer shells x1</label>
<description>Craft 155mm EMP Howitzer shell.</description>
<jobString>Making 155mm EMP Howitzer shell.</jobString>
<researchPrerequisite>MicroelectronicsBasics</researchPrerequisite>
Expand Down Expand Up @@ -474,7 +566,7 @@

<RecipeDef ParentName="AmmoRecipeBase">
<defName>MakeAmmo_155mmHowitzerShell_Smoke</defName>
<label>make 155mm Smoke Howitzer shells x1</label>
<label>make 155mm Smoke howitzer shells x1</label>
<description>Craft 155mm Smoke Howitzer shell.</description>
<jobString>Making 155mm Smoke Howitzer shell.</jobString>
<workAmount>11400</workAmount>
Expand Down
Loading

0 comments on commit e608d64

Please sign in to comment.