diff --git a/OpenRa.Game/GameRules/GeneralInfo.cs b/OpenRa.Game/GameRules/GeneralInfo.cs index 1a60e473d9..e89632f348 100644 --- a/OpenRa.Game/GameRules/GeneralInfo.cs +++ b/OpenRa.Game/GameRules/GeneralInfo.cs @@ -18,17 +18,7 @@ namespace OpenRa.GameRules public readonly string WoodCrate = null; /* Special Weapons */ - public readonly int ChronoDuration = 0; - public readonly bool ChronoKillCargo = true; - [Obsolete] public readonly int ChronoTechLevel = -1; - [Obsolete] public readonly int GPSTechLevel = -1; - public readonly int GapRadius = 0; public readonly float GapRegenInterval =0; - public readonly float IronCurtain = 0; /* minutes */ - [Obsolete] public readonly int ParaTech = -1; - [Obsolete] public readonly int ParabombTech = -1; - public readonly int RadarJamRadius = 1; - [Obsolete] public readonly int SpyPlaneTech = -1; public readonly int BadgerBombCount = 1; /* Chrono Side Effects */ @@ -54,9 +44,7 @@ namespace OpenRa.GameRules public readonly int AVMineDamage = 0; public readonly int AtomDamage = 0; public readonly float BallisticScatter = 0; - public readonly int BridgeStrength = 0; public readonly float C4Delay = 0; - public readonly float Crush = 0; public readonly float ExpSpread = 0; public readonly int FireSupress = 0; public readonly float HomingScatter = 0; @@ -66,7 +54,6 @@ namespace OpenRa.GameRules public readonly bool PlayerAutoCrush = false; public readonly bool PlayerReturnFire = false; public readonly bool PlayerScatter = false; - public readonly float ProneDamage = 0; public readonly bool TreeTargeting = false; public readonly int Incoming = 0; diff --git a/OpenRa.Game/Traits/Chronoshiftable.cs b/OpenRa.Game/Traits/Chronoshiftable.cs index 30306ec3b6..0c8e049c28 100644 --- a/OpenRa.Game/Traits/Chronoshiftable.cs +++ b/OpenRa.Game/Traits/Chronoshiftable.cs @@ -45,13 +45,15 @@ namespace OpenRa.Traits // Cannot chronoshift into unexplored location if (!self.Owner.Shroud.IsExplored(order.TargetLocation)) return; + + var info = self.Owner.PlayerActor.Info.Traits.Get(); // Set up return-to-sender info chronoshiftOrigin = self.Location; - chronoshiftReturnTicks = (int)(Rules.General.ChronoDuration * 60 * 25); + chronoshiftReturnTicks = (int)(info.Duration * 60 * 25); // Kill cargo - if (Rules.General.ChronoKillCargo && self.traits.Contains()) + if (info.KillCargo && self.traits.Contains()) { var cargo = self.traits.Get(); while (!cargo.IsEmpty(self)) diff --git a/mods/ra/rules.ini b/mods/ra/rules.ini index b6be525c34..1e045d3bdc 100644 --- a/mods/ra/rules.ini +++ b/mods/ra/rules.ini @@ -22,17 +22,7 @@ WoodCrate=Money ; solo play wood crate bonus ; This section probably dies --chrisf ; special weapons -ChronoDuration=3 ; time that a unit will remain chronoshifted before returning to start location -ChronoKillCargo=yes ; Should cargo be destroyed when object is chronoshifted? -ChronoTechLevel=12 ; Tech level at which Chrono facility can create Chrono effect -GPSTechLevel=8 ; tech level at which GPS satelite becomes available -GapRadius=10 ; radius of gap generator (cells) GapRegenInterval=.1 ; gap generators will regenerate their shroud at this time interval -IronCurtain=.75 ; minutes that Iron Curtain invulnerability lasts -ParaTech=5 ; tech level when free para-infantry appears from airstrip -ParabombTech=8 ; tech level that parabomb appears free with airfield -RadarJamRadius=15 ; cell radius distance that mobile radar jammer is effective -SpyPlaneTech=5 ; tech level when free spy plane appears from airstrip BadgerBombCount=1 ; number of badgers used to drop parabombs ; Chrono side effects @@ -58,9 +48,7 @@ APMineDamage=1000 ; damage to inflict when anti-personnel mine explodes AVMineDamage=1200 ; damage to inflict when anti-vehicle mine explodes AtomDamage=1000 ; damage points when nuclear bomb explodes (regardless of source) BallisticScatter=1.0 ; maximum scatter distance (cells) for inaccurate ballistic projectiles -BridgeStrength=1000 ; strength of bridge [smaller means more easily destroyed] C4Delay=.03 ; minutes to delay after placing C4 before building will explode -Crush=1.5 ; if this close (cells) to crushable target, then crush instead of firing upon it (computer only) ExpSpread=.3 ; cell damage spread per 256 damage points for exploding object types [if Explodes=yes] FireSupress=1 ; radius from target to look for friendlies and thus discourage firing upon, if found HomingScatter=2.0 ; maximum scatter distance (cells) for inaccurate homing projectiles @@ -70,7 +58,6 @@ OreExplosive=no ; Does the harvester explode big time when destroyed? PlayerAutoCrush=no ; Will player controlled units automatically try to crush enemy infantry? PlayerReturnFire=no ; More aggressive return fire from player controlled objects? PlayerScatter=no ; Will player units scatter, of their own accord, from threats and damage? -ProneDamage=50% ; when infantry is prone, damage is reduced to this percentage TreeTargeting=no ; Automatically show target cursor when over trees? Incoming=10 ; If an incoming projectile is as slow or slower than this, then ; object in the target location will try to run away. Grenades and