This commit is contained in:
ProjectKoi-Kalo\Kalo 2025-05-21 16:14:50 +08:00
parent fd360b5d69
commit 9cc1084fff
6 changed files with 269 additions and 13 deletions

View File

@ -65,7 +65,43 @@
</DamageDef>
<DamageDef>
<defName>DRM_Frostcover</defName>
<defName>DRM_Damage_FrostCoverd</defName>
<label>frostbite</label>
<workerClass>DamageWorker_Frostbite</workerClass>
<externalViolence>false</externalViolence>
<deathMessage>{0} has succumbed to frostbite.</deathMessage>
<hediff>Frostbite</hediff>
<harmAllLayersUntilOutside>true</harmAllLayersUntilOutside>
<canUseDeflectMetalEffect>false</canUseDeflectMetalEffect>
<additionalHediffs>
<li>
<hediff>Hypothermia</hediff>
<severityPerDamageDealt>0.003</severityPerDamageDealt>
<inverseStatScaling>true</inverseStatScaling>
<victimSeverityScalingByInvBodySize>true</victimSeverityScalingByInvBodySize>
</li>
<li>
<hediff>DRM_CryoShock</hediff>
<severityPerDamageDealt>0.02</severityPerDamageDealt>
</li>
<li>
<hediff>DRM_Hediff_FrostCoverd</hediff>
<severityPerDamageDealt>0.01</severityPerDamageDealt>
<inverseStatScaling>true</inverseStatScaling>
<victimSeverityScalingByInvBodySize>true</victimSeverityScalingByInvBodySize>
</li>
</additionalHediffs>
<armorCategory>Heat</armorCategory>
<isRanged>true</isRanged>
<makesAnimalsFlee>true</makesAnimalsFlee>
<defaultDamage>3</defaultDamage>
<defaultArmorPenetration>0</defaultArmorPenetration>
<buildingDamageFactorImpassable>0</buildingDamageFactorImpassable>
<buildingDamageFactorPassable>0</buildingDamageFactorPassable>
</DamageDef>
<DamageDef>
<defName>DRM_Damage_FrostCoverd_after</defName>
<label>frostbite</label>
<workerClass>DamageWorker_Frostbite</workerClass>
<externalViolence>false</externalViolence>

View File

@ -637,7 +637,7 @@
<comps>
<li Class="HediffCompProperties_DisappearsOnDeath" />
<li Class="HediffCompProperties_Disappears">
<disappearsAfterTicks>1800</disappearsAfterTicks> <!-- 30 seconds -->
<disappearsAfterTicks>1800</disappearsAfterTicks> <!-- 30 seconds -->
<showRemainingTime>true</showRemainingTime>
</li>
</comps>
@ -695,13 +695,177 @@
<severityPerDay>-4</severityPerDay>
</li>
<li Class="DragonianMix.HediffCompProperties_TimedExplosion">
<damageDef>Bomb</damageDef>
<soundDef>Explosion_Bomb</soundDef>
<explosionRadius>2</explosionRadius>
<showRemainingTime>true</showRemainingTime>
<damageAmount>30</damageAmount>
<armorPenetration>0.10</armorPenetration>
<disappearsAfterTicks>200</disappearsAfterTicks>
<damageDef>Bomb</damageDef>
<soundDef>Explosion_Bomb</soundDef>
<explosionRadius>2</explosionRadius>
<showRemainingTime>true</showRemainingTime>
<damageAmount>30</damageAmount>
<armorPenetration>0.10</armorPenetration>
<disappearsAfterTicks>200</disappearsAfterTicks>
</li>
<li Class="HediffCompProperties_DisappearsOnDeath"/>
</comps>
<stages>
<li>
<label>minor</label>
<becomeVisible>true</becomeVisible>
</li>
<li>
<label>minor</label>
<minSeverity>0.2</minSeverity>
<capMods>
<li>
<capacity>Moving</capacity>
<offset>-0.1</offset>
</li>
</capMods>
</li>
<li>
<label>moderate</label>
<minSeverity>0.35</minSeverity>
<capMods>
<li>
<capacity>Moving</capacity>
<offset>-0.2</offset>
</li>
</capMods>
</li>
<li>
<label>serious</label>
<minSeverity>0.5</minSeverity>
<capMods>
<li>
<capacity>Moving</capacity>
<offset>-0.3</offset>
</li>
</capMods>
</li>
<li>
<label>extreme</label>
<minSeverity>0.65</minSeverity>
<capMods>
<li>
<capacity>Moving</capacity>
<offset>-0.4</offset>
</li>
</capMods>
</li>
<li>
<label>completely</label>
<minSeverity>0.85</minSeverity>
<capMods>
<li>
<capacity>Moving</capacity>
<offset>-0.5</offset>
</li>
</capMods>
</li>
</stages>
</HediffDef>
<HediffDef>
<defName>DRM_Hediff_FrostCoverd</defName>
<label>Frost Coverd</label>
<description>This preson is coverd with Frozen cloud.</description>
<defaultLabelColor>(1, 1, 0.8)</defaultLabelColor>
<hediffClass>HediffWithComps</hediffClass>
<comps>
<li Class="HediffCompProperties_SeverityPerDay">
<severityPerDay>-4</severityPerDay>
</li>
<li Class="DragonianMix.HediffCompProperties_TimedExplosion">
<damageDef>DRM_Damage_FrostCoverd</damageDef>
<soundDef>Explosion_Stun</soundDef>
<explosionRadius>3</explosionRadius>
<showRemainingTime>true</showRemainingTime>
<damageAmount>5</damageAmount>
<armorPenetration>0.10</armorPenetration>
<disappearsAfterTicks>60~120</disappearsAfterTicks>
<postExplosionSpawnThingDef>DRM_FrostGasCloud_Ex</postExplosionSpawnThingDef> <!-- ARL_ToxicGasCloud -->
<postExplosionSpawnChance>1</postExplosionSpawnChance>
<postExplosionSpawnThingCount>1</postExplosionSpawnThingCount>
</li>
<li Class="HediffCompProperties_DisappearsOnDeath"/>
</comps>
<stages>
<li>
<label>minor</label>
<becomeVisible>true</becomeVisible>
</li>
<li>
<label>minor</label>
<minSeverity>0.2</minSeverity>
<capMods>
<li>
<capacity>Moving</capacity>
<offset>-0.1</offset>
</li>
</capMods>
</li>
<li>
<label>moderate</label>
<minSeverity>0.35</minSeverity>
<capMods>
<li>
<capacity>Moving</capacity>
<offset>-0.2</offset>
</li>
</capMods>
</li>
<li>
<label>serious</label>
<minSeverity>0.5</minSeverity>
<capMods>
<li>
<capacity>Moving</capacity>
<offset>-0.3</offset>
</li>
</capMods>
</li>
<li>
<label>extreme</label>
<minSeverity>0.65</minSeverity>
<capMods>
<li>
<capacity>Moving</capacity>
<offset>-0.4</offset>
</li>
</capMods>
</li>
<li>
<label>completely</label>
<minSeverity>0.85</minSeverity>
<capMods>
<li>
<capacity>Moving</capacity>
<offset>-0.5</offset>
</li>
</capMods>
</li>
</stages>
</HediffDef>
<HediffDef>
<defName>DRM_Hediff_FrostCoverd_after</defName>
<label>Frost Coverd</label>
<description>This preson is coverd with Frozen cloud.</description>
<defaultLabelColor>(1, 1, 0.8)</defaultLabelColor>
<hediffClass>HediffWithComps</hediffClass>
<comps>
<li Class="HediffCompProperties_SeverityPerDay">
<severityPerDay>-4</severityPerDay>
</li>
<li Class="DragonianMix.HediffCompProperties_TimedExplosion">
<damageDef>DRM_Damage_FrostCoverd_after</damageDef>
<soundDef>Explosion_Stun</soundDef>
<explosionRadius>3</explosionRadius>
<showRemainingTime>true</showRemainingTime>
<damageAmount>5</damageAmount>
<armorPenetration>0.10</armorPenetration>
<disappearsAfterTicks>60~120</disappearsAfterTicks>
<postExplosionSpawnThingDef>DRM_FrostGasCloud</postExplosionSpawnThingDef> <!-- ARL_ToxicGasCloud -->
<postExplosionSpawnChance>1</postExplosionSpawnChance>
<postExplosionSpawnThingCount>1</postExplosionSpawnThingCount>
</li>
<li Class="HediffCompProperties_DisappearsOnDeath"/>
</comps>

View File

@ -424,7 +424,7 @@
<amount>15</amount>
</li>
<li>
<def>DRM_Frostcover</def>
<def>DRM_Damage_FrostCoverd</def>
<amount>15</amount>
</li>
</extraMeleeDamages>

View File

@ -70,4 +70,59 @@
</modExtensions>
</ThingDef>
<!-- Gas : Thing -->
<ThingDef ParentName="DRM_BaseGas">
<defName>DRM_FrostGasCloud_Ex</defName>
<label>Frost cloud</label>
<graphicData>
<texPath>Things/Gas/Puff</texPath>
<drawSize>2.6</drawSize>
<color>(0.52, 1, 0.95,0.5)</color>
</graphicData>
<gas>
<expireSeconds>
<min>5</min>
<max>10</max>
</expireSeconds>
<!--<blockTurretTracking>true</blockTurretTracking>
<accuracyPenalty>0.3</accuracyPenalty>-->
<rotationSpeed>5</rotationSpeed>
</gas>
<thingClass>DragonianMix.OPToxicGas</thingClass>
<modExtensions>
<li Class="DragonianMix.OPToxicDefs">
<OPToxicHediff>DRM_Hediff_FrostCoverd_after</OPToxicHediff> <!-- Name of HediffDef to apply, change to own HediffDef -->
<OPToxicSeverity>0.1</OPToxicSeverity> <!-- Severity build up per Tick period -->
<OPSevUpTickPeriod>240</OPSevUpTickPeriod> <!-- No of game ticks per each build up, recommend >= 120 -->
</li>
</modExtensions>
</ThingDef>
<ThingDef ParentName="DRM_BaseGas">
<defName>DRM_FrostGasCloud</defName>
<label>Frost cloud</label>
<graphicData>
<texPath>Things/Gas/Puff</texPath>
<drawSize>2.6</drawSize>
<color>(0.52, 1, 0.95,0.5)</color>
</graphicData>
<gas>
<expireSeconds>
<min>5</min>
<max>10</max>
</expireSeconds>
<!--<blockTurretTracking>true</blockTurretTracking>
<accuracyPenalty>0.3</accuracyPenalty>-->
<rotationSpeed>5</rotationSpeed>
</gas>
<thingClass>DragonianMix.OPToxicGas</thingClass>
<modExtensions>
<li Class="DragonianMix.OPToxicDefs">
<OPToxicHediff>DRM_CryoShock</OPToxicHediff> <!-- Name of HediffDef to apply, change to own HediffDef -->
<OPToxicSeverity>0.1</OPToxicSeverity> <!-- Severity build up per Tick period -->
<OPSevUpTickPeriod>240</OPSevUpTickPeriod> <!-- No of game ticks per each build up, recommend >= 120 -->
</li>
</modExtensions>
</ThingDef>
</Defs>

View File

@ -67,7 +67,7 @@
<beamFleckChancePerTick>0.32</beamFleckChancePerTick>
<beamGroundFleckDef>Fleck_BeamBurn</beamGroundFleckDef>
<beamDamageDef>DRM_Frostcover</beamDamageDef>
<beamDamageDef>DRM_Damage_FrostCoverd_after</beamDamageDef>
<beamMoteDef>Mote_GraserBeamBase</beamMoteDef>
<beamEndEffecterDef>GraserBeam_End</beamEndEffecterDef>
<beamLineFleckDef>Fleck_BeamSpark</beamLineFleckDef>
@ -102,7 +102,7 @@
<power>15</power>
<extraMeleeDamages>
<li>
<def>DRM_Frostcover</def>
<def>DRM_Damage_FrostCoverd</def>
<amount>30</amount>
<chance>1</chance>
</li>

View File

@ -31,7 +31,7 @@
<cooldownTime>3.35</cooldownTime>
<extraMeleeDamages>
<li>
<def>DRM_Frostcover</def>
<def>DRM_Damage_FrostCoverd</def>
<amount>20</amount>
</li>
<li>
@ -39,6 +39,7 @@
<amount>11</amount>
</li>
</extraMeleeDamages>
<chanceFactor>10</chanceFactor>
</li>
</tools>
</value>