Features/orbital bombardment#4475
Conversation
|
Savegame to quickly test it And here's a example of a orbital mortar <Defs>
<CombatExtended.AmmoSetDef>
<defName>AmmoSet_OrbitalMortarShell</defName>
<label>orbital mortar shells</label>
<ammoTypes>
<!-- Overrides vanilla artillery shell -->
<Shell_HighExplosive>Bullet_OrbitalMortarShell_HE</Shell_HighExplosive>
</ammoTypes>
<isMortarAmmoSet>true</isMortarAmmoSet>
<!-- This ammoset functions as the mortar generic due to hardcoded references -->
<modExtensions>
<li Class="CombatExtended.GenericLabelExtension">
<genericLabel>mortar shells</genericLabel>
</li>
</modExtensions>
</CombatExtended.AmmoSetDef>
<ThingDef ParentName="BaseExplosiveBullet">
<thingClass>CombatExtended.ProjectileCE_Explosive</thingClass>
<defName>Bullet_OrbitalMortarShell_HE</defName>
<graphicData>
<shaderType>TransparentPostLight</shaderType>
<texPath>Things/Projectile/Mortar/HE</texPath>
<graphicClass>Graphic_Single</graphicClass>
</graphicData>
<projectile Class="CombatExtended.ProjectilePropertiesCE">
<speed>0</speed>
<soundHitThickRoof>Artillery_HitThickRoof</soundHitThickRoof>
<soundImpactAnticipate>MortarRound_PreImpact</soundImpactAnticipate>
<soundAmbient>MortarRound_Ambient</soundAmbient>
<flyOverhead>true</flyOverhead>
<dropsCasings>false</dropsCasings>
<gravityFactor>5</gravityFactor>
<shellingProps>
<iconPath>Things/WorldObjects/Munitions/Mortar</iconPath>
<tilesPerTick>0.06</tilesPerTick>
<range>300</range>
</shellingProps>
<damageDef>Bomb</damageDef>
<damageAmountBase>156</damageAmountBase>
<explosionRadius>2.5</explosionRadius>
<flyOverhead>true</flyOverhead>
<soundExplode>MortarBomb_Explode</soundExplode>
<applyDamageToExplosionCellsNeighbors>true</applyDamageToExplosionCellsNeighbors>
<ai_IsIncendiary>true</ai_IsIncendiary>
<preExplosionSpawnSingleThingDef>Filth_BlastMark</preExplosionSpawnSingleThingDef>
</projectile>
<label>81mm mortar shell (HE)</label>
<comps>
<li Class="CombatExtended.CompProperties_Fragments">
<fragments>
<Fragment_Large>16</Fragment_Large>
<Fragment_Small>25</Fragment_Small>
</fragments>
</li>
</comps>
<modExtensions>
<li Class="CombatExtended.GenericLabelExtension">
<genericLabel>mortar shell (HE)</genericLabel>
</li>
</modExtensions>
</ThingDef>
<ThingDef Name="OrbitalBaseArtilleryBuilding" ParentName="BuildingBase" Abstract="True">
<thingClass>Building_TurretGun</thingClass>
<drawerType>MapMeshAndRealTime</drawerType>
<drawHighlight>true</drawHighlight>
<drawHighlightOnlyForHostile>true</drawHighlightOnlyForHostile>
<graphicData>
<graphicClass>Graphic_Single</graphicClass>
<texPath>Things/Building/Security/TurretMortar_Base</texPath>
<drawSize>(4,4)</drawSize>
<damageData>
<rect>(0.38,0.2,0.56375,0.8)</rect>
<cornerTL>Damage/Corner</cornerTL>
</damageData>
<shadowData>
<offset>(-0.13,-0.87,-0.1)</offset>
<volume>(0.5,0.4,1.05)</volume>
</shadowData>
</graphicData>
<minifiedDef>MinifiedThing</minifiedDef>
<altitudeLayer>Building</altitudeLayer>
<hasInteractionCell>True</hasInteractionCell>
<interactionCellOffset>(0,0,-1)</interactionCellOffset>
<stealable>false</stealable>
<size>(2,2)</size>
<passability>PassThroughOnly</passability>
<pathCost>50</pathCost>
<fillPercent>0.4</fillPercent>
<thingCategories>
<li>BuildingsSecurity</li>
</thingCategories>
<stuffCategories>
<li>Metallic</li>
</stuffCategories>
<tickerType>Normal</tickerType>
<terrainAffordanceNeeded>Light</terrainAffordanceNeeded>
<designationCategory>Security</designationCategory>
<costStuffCount>75</costStuffCount>
<constructionSkillPrerequisite>5</constructionSkillPrerequisite>
<costList>
<Steel>150</Steel>
<ComponentIndustrial>6</ComponentIndustrial>
</costList>
<inspectorTabs>
<li>ITab_Shells</li>
</inspectorTabs>
<comps>
<li Class="CompProperties_Forbiddable"/>
<li Class="CompProperties_Mannable">
<manWorkType>Violent</manWorkType>
<planetLayerWhitelist>
<li>Surface</li>
</planetLayerWhitelist>
</li>
</comps>
<statBases>
<MaxHitPoints>180</MaxHitPoints>
<Flammability>0.7</Flammability>
<WorkToBuild>2000</WorkToBuild>
<Mass>30</Mass>
<Beauty>-20</Beauty>
</statBases>
<building>
<turretBurstWarmupTime>4.0</turretBurstWarmupTime>
<turretBurstCooldownTime>28.0</turretBurstCooldownTime>
<buildingTags>
<li>Artillery</li>
</buildingTags>
</building>
<placeWorkers>
<li>PlaceWorker_NotUnderRoof</li>
<li>PlaceWorker_TurretTop</li>
<li>PlaceWorker_PreventInteractionSpotOverlap</li>
</placeWorkers>
<researchPrerequisites>
<li>Mortars</li>
</researchPrerequisites>
<uiIconScale>1.1</uiIconScale>
</ThingDef>
<ThingDef ParentName="BaseArtilleryBuilding">
<defName>Orbital_Turret_Mortar</defName>
<label>orbital mortar</label>
<description>test.</description>
<costListForDifficulty>
<difficultyVar>classicMortars</difficultyVar>
<invert>true</invert>
<costList>
<ComponentIndustrial>6</ComponentIndustrial>
<ReinforcedBarrel>1</ReinforcedBarrel>
</costList>
<costStuffCount>50</costStuffCount>
</costListForDifficulty>
<designationHotKey>Misc4</designationHotKey>
<terrainAffordanceNeeded>Heavy</terrainAffordanceNeeded>
<building>
<turretGunDef>Orbital_Mortar_Gun</turretGunDef>
<buildingTags>
<li>Artillery_BaseDestroyer</li>
<li>Artillery_MannedMortar</li>
</buildingTags>
</building>
<uiIconPath>Things/Building/Security/TurretMortar_MenuIcon</uiIconPath>
<uiIconScale>0.9</uiIconScale>
<comps>
<li Class="CompProperties_Mannable">
<manWorkType>Violent</manWorkType>
</li>
</comps>
</ThingDef>
<ThingDef ParentName="BaseArtilleryWeapon">
<defName>Orbital_Mortar_Gun</defName>
<label>orbital mortar</label>
<description>Test</description>
<recoilPower>3</recoilPower>
<graphicData>
<texPath>Things/Building/Security/TurretMortar_Top</texPath>
</graphicData>
<weaponTags>
<li>Artillery_BaseDestroyer</li>
</weaponTags>
<statBases>
<SightsEfficiency>0.5</SightsEfficiency>
</statBases>
<verbs>
<li Class="CombatExtended.VerbPropertiesCE">
<verbClass>CombatExtended.Verb_ShootMortarCE</verbClass>
<forceNormalTimeSpeed>false</forceNormalTimeSpeed>
<hasStandardCommand>true</hasStandardCommand>
<defaultProjectile>Bullet_81mmMortarShell_HE</defaultProjectile>
<warmupTime>5.5</warmupTime>
<minRange>32</minRange>
<range>700</range>
<burstShotCount>1</burstShotCount>
<soundCast>Mortar_LaunchA</soundCast>
<muzzleFlashScale>16</muzzleFlashScale>
<circularError>1</circularError>
<indirectFirePenalty>0.2</indirectFirePenalty>
<targetParams>
<canTargetLocations>true</canTargetLocations>
</targetParams>
</li>
</verbs>
<comps>
<li Class="CombatExtended.CompProperties_Charges">
<chargeSpeeds>
<li>30</li>
<li>50</li>
<li>70</li>
<li>90</li>
</chargeSpeeds>
</li>
<li Class="CombatExtended.CompProperties_AmmoUser">
<magazineSize>1</magazineSize>
<reloadTime>5</reloadTime>
<ammoSet>AmmoSet_OrbitalMortarShell</ammoSet>
</li>
<li Class="CombatExtended.CompProperties_OrbitalTurret">
<interLayerPrecisionBonusFactor>20</interLayerPrecisionBonusFactor>
<isMarkMandatory>false</isMarkMandatory>
</li>
</comps>
<building>
<fixedStorageSettings>
<filter>
<categories>
<li>MortarShells</li>
</categories>
</filter>
</fixedStorageSettings>
<defaultStorageSettings>
<filter>
<categories>
<li>MortarShells</li>
</categories>
<disallowedThingDefs>
<li>Shell_Firefoam</li>
<li>Shell_AntigrainWarhead</li>
</disallowedThingDefs>
</filter>
</defaultStorageSettings>
</building>
</ThingDef>
</Defs> |
|
You can download the rebuilt assembly for this PR here: https://combatextended.lp-programming.com/CombatExtended-22319790602.zip |
6696972 to
782cccc
Compare
|
You can download the rebuilt assembly for this PR here: https://combatextended.lp-programming.com/CombatExtended-22593402666.zip |
782cccc to
bd8ad19
Compare
|
You can download the rebuilt assembly for this PR here: https://combatextended.lp-programming.com/CombatExtended-23381666708.zip |
|
You can download the rebuilt assembly for this PR here: https://combatextended.lp-programming.com/CombatExtended-23382679147.zip |
8cfdc17 to
fa5f1d1
Compare
|
You can download the rebuilt assembly for this PR here: https://combatextended.lp-programming.com/CombatExtended-25214372588.zip |
fa5f1d1 to
4ed72d9
Compare
|
You can download the rebuilt assembly for this PR here: https://combatextended.lp-programming.com/CombatExtended-25557426654.zip |
|
You can download the rebuilt assembly for this PR here: https://combatextended.lp-programming.com/CombatExtended-25557626524.zip |
Additions
Describe new functionality added by your code, e.g.
Testing
Check tests you have performed: