General uncontroversial cleanup:
- Made private methods static where possible (runtime can elide checking the object for null). - Declared attribute classes as sealed (allows reflection on attributes to complete faster). - Moved some static cctor's into field initializers (static cctor's are slower than static field initializers). - Made classes static if they contained only static methods (can't create instances of useless objects). - Use inferable Exts.Lazy and not new Lazy<T>(). - Added required STAThread attribute to CrashDialog. - Removed unused parameters in private methods. - Added Serializable attribute to exceptions. - Added parameter name in calls to ArgumentNullException. - Use of as operator instead of is + cast. - Changed (x as Foo).Bar anti-pattern into ((Foo)x).Bar. Results in sensible cast exceptions on error rather than null dereferences. - Removed unused method in NullShader.
This commit is contained in:
@@ -22,7 +22,7 @@ using OpenRA.Support;
|
||||
|
||||
namespace OpenRA.Mods.RA.AI
|
||||
{
|
||||
public class HackyAIInfo : IBotInfo, ITraitInfo
|
||||
public sealed class HackyAIInfo : IBotInfo, ITraitInfo
|
||||
{
|
||||
public readonly string Name = "Unnamed Bot";
|
||||
public readonly int SquadSize = 8;
|
||||
@@ -90,7 +90,7 @@ namespace OpenRA.Mods.RA.AI
|
||||
|
||||
public enum BuildingType { Building, Defense, Refinery }
|
||||
|
||||
public class HackyAI : ITick, IBot, INotifyDamage
|
||||
public sealed class HackyAI : ITick, IBot, INotifyDamage
|
||||
{
|
||||
bool enabled;
|
||||
public int ticks;
|
||||
@@ -157,7 +157,7 @@ namespace OpenRA.Mods.RA.AI
|
||||
.Select(t => t.TerrainType).ToArray();
|
||||
}
|
||||
|
||||
int GetPowerProvidedBy(ActorInfo building)
|
||||
static int GetPowerProvidedBy(ActorInfo building)
|
||||
{
|
||||
var bi = building.Traits.GetOrDefault<BuildingInfo>();
|
||||
return bi != null ? bi.Power : 0;
|
||||
|
||||
Reference in New Issue
Block a user