diff --git a/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/Assemblies/WulaFallenEmpire.dll index 01a4d656..0b7d7239 100644 Binary files a/1.6/Assemblies/WulaFallenEmpire.dll and b/1.6/Assemblies/WulaFallenEmpire.dll differ diff --git a/1.6/Defs/DamageDefs/Damages_Wula.xml b/1.6/Defs/DamageDefs/Damages_Wula.xml index 38994349..ef8c4abb 100644 --- a/1.6/Defs/DamageDefs/Damages_Wula.xml +++ b/1.6/Defs/DamageDefs/Damages_Wula.xml @@ -108,19 +108,25 @@ - + WULA_SP_Live_Shelter_Heal - {0} 过奶死了。 - 0 + DamageWorker_AddInjury + true + {0} 被奶死了。 + true + false + true + 1 0 - 3000 - Burn - Heat - 10 - 10 - -
  • Regeneration
  • -
    + 9999 + 0 + 0 + +
  • + WULA_Psi_Regeneration + 0.5 +
  • +
    diff --git a/1.6/Defs/HediffDefs/Hediffs_WULA_Damage_Effect.xml b/1.6/Defs/HediffDefs/Hediffs_WULA_Damage_Effect.xml index f5bcdc6b..a00ee701 100644 --- a/1.6/Defs/HediffDefs/Hediffs_WULA_Damage_Effect.xml +++ b/1.6/Defs/HediffDefs/Hediffs_WULA_Damage_Effect.xml @@ -114,4 +114,52 @@ + + + WULA_Psi_Regeneration + + 在强大的灵能术式影响下,这个生物正在以一种快到不可思议的速度再生。他们几乎能在短时间内治愈任何伤口。 + false + 1 + (1, 1, 0.8) + HediffWithComps + +
  • + 0 + + 100 +
  • +
  • + 0.5 + + 200 +
  • +
  • + 1.0 + + 300 +
  • +
  • + 1.5 + + 400 +
  • +
  • + 2.0 + + 500 +
  • +
  • + 2.5 + + 600 +
  • +
    + +
  • + -5 +
  • +
  • + + \ No newline at end of file diff --git a/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Spiritualist_Weapon.xml b/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Spiritualist_Weapon.xml index a3f5c514..f1a2d527 100644 --- a/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Spiritualist_Weapon.xml +++ b/1.6/Defs/ThingDefs_Misc/Weapons/WULA_FE_Spiritualist_Weapon.xml @@ -395,7 +395,7 @@ WulaFallenEmpire.Verb_ShootArc true WULA_SP_Live_Shelter_Heal - 0 + 1.0 0 4 20 @@ -406,6 +406,7 @@ 9 True True + false 3 WULA_SP_Spear_Impale_ArcBeam Mote_HellsphereCannon_Charge diff --git a/Source/WulaFallenEmpire/Verb/ShootArc.cs b/Source/WulaFallenEmpire/Verb/ShootArc.cs index e31a1ef5..b08c6d44 100644 --- a/Source/WulaFallenEmpire/Verb/ShootArc.cs +++ b/Source/WulaFallenEmpire/Verb/ShootArc.cs @@ -26,6 +26,8 @@ namespace WulaFallenEmpire public int conductNum; public bool conductFriendly = false; + + public bool conductHostile = true; } public class Verb_ShootArc : Verb @@ -42,7 +44,16 @@ namespace WulaFallenEmpire { get { - return (this.Props.damageAmount > 0) ? this.Props.damageAmount : this.verbProps.beamDamageDef.defaultDamage; + if (this.Props.damageAmount > 0) + { + return this.Props.damageAmount; + } + if (this.verbProps.beamDamageDef != null) + { + return this.verbProps.beamDamageDef.defaultDamage; + } + Log.ErrorOnce(string.Format("Verb_ShootArc on {0} has no damageAmount and no beamDamageDef.", (this.caster != null) ? this.caster.def.defName : "null"), this.GetHashCode()); + return 0; } } @@ -50,7 +61,15 @@ namespace WulaFallenEmpire { get { - return (this.Props.armorPenetration > 0f) ? this.Props.armorPenetration : this.verbProps.beamDamageDef.defaultArmorPenetration; + if (this.Props.armorPenetration > 0f) + { + return this.Props.armorPenetration; + } + if (this.verbProps.beamDamageDef != null) + { + return this.verbProps.beamDamageDef.defaultArmorPenetration; + } + return 0f; } } @@ -122,7 +141,7 @@ namespace WulaFallenEmpire if (list[num] is Pawn p) { bool isFriendly = p.Faction != null && casterPawn.Faction != null && !p.Faction.HostileTo(casterPawn.Faction); - if (!this.Props.conductFriendly && isFriendly) + if ((!this.Props.conductFriendly && isFriendly) || (!this.Props.conductHostile && p.HostileTo(casterPawn))) { continue; }