Make RangeModifier interfaces require explicit implementation

This commit is contained in:
reaperrr
2016-10-22 21:53:14 +02:00
parent 02f14f0761
commit 2d0560dcb7
2 changed files with 6 additions and 2 deletions

View File

@@ -18,7 +18,7 @@ namespace OpenRA.Mods.Common.Traits
{ {
public override object Create(ActorInitializer init) { return new RangeMultiplier(this, init.Self.Info.Name); } public override object Create(ActorInitializer init) { return new RangeMultiplier(this, init.Self.Info.Name); }
public int GetRangeModifierDefault() int IRangeModifierInfo.GetRangeModifierDefault()
{ {
return BaseLevel > 0 || UpgradeTypes.Length == 0 ? 100 : Modifier[0]; return BaseLevel > 0 || UpgradeTypes.Length == 0 ? 100 : Modifier[0];
} }
@@ -29,6 +29,6 @@ namespace OpenRA.Mods.Common.Traits
public RangeMultiplier(RangeMultiplierInfo info, string actorType) public RangeMultiplier(RangeMultiplierInfo info, string actorType)
: base(info, "RangeMultiplier", actorType) { } : base(info, "RangeMultiplier", actorType) { }
public int GetRangeModifier() { return GetModifier(); } int IRangeModifier.GetRangeModifier() { return GetModifier(); }
} }
} }

View File

@@ -217,7 +217,11 @@ namespace OpenRA.Mods.Common.Traits
[RequireExplicitImplementation] [RequireExplicitImplementation]
public interface IInaccuracyModifier { int GetInaccuracyModifier(); } public interface IInaccuracyModifier { int GetInaccuracyModifier(); }
[RequireExplicitImplementation]
public interface IRangeModifier { int GetRangeModifier(); } public interface IRangeModifier { int GetRangeModifier(); }
[RequireExplicitImplementation]
public interface IRangeModifierInfo : ITraitInfoInterface { int GetRangeModifierDefault(); } public interface IRangeModifierInfo : ITraitInfoInterface { int GetRangeModifierDefault(); }
public interface IPowerModifier { int GetPowerModifier(); } public interface IPowerModifier { int GetPowerModifier(); }
} }