Rules.NewUnitInfo rename -> ActorInfo

This commit is contained in:
Chris Forbes
2010-01-17 11:07:08 +13:00
parent 33ba3a58c5
commit d1ecfacd55
10 changed files with 23 additions and 23 deletions

View File

@@ -32,7 +32,7 @@ namespace OpenRa
if (name != null)
{
Info = Rules.NewUnitInfo[name.ToLowerInvariant()];
Info = Rules.ActorInfo[name.ToLowerInvariant()];
Health = this.GetMaxHP();
foreach (var trait in Info.Traits.WithInterface<ITraitInfo>())

View File

@@ -111,7 +111,7 @@ namespace OpenRa
panelSprites = Graphics.Util.MakeArray(8,
n => SequenceProvider.GetImageFromCollection(renderer, "panel", n.ToString()));
tabSprites = Rules.NewUnitInfo.Values
tabSprites = Rules.ActorInfo.Values
.Where(u => u.Traits.Contains<BuildableInfo>())
.ToDictionary(
u => u.Name,
@@ -122,7 +122,7 @@ namespace OpenRa
u => u.Key,
u => SpriteSheetBuilder.LoadAllSprites(u.Value.Image)[0]);
var groups = Rules.NewUnitInfo.Values.Select( x => x.Category ).Distinct().Where( g => g != null ).ToList();
var groups = Rules.ActorInfo.Values.Select( x => x.Category ).Distinct().Where( g => g != null ).ToList();
tabImageNames = groups.Select(
(g, i) => Pair.New(g,
@@ -746,7 +746,7 @@ namespace OpenRa
void StartProduction( string item )
{
var unit = Rules.NewUnitInfo[item];
var unit = Rules.ActorInfo[item];
Sound.Play(unit.Traits.Contains<BuildingInfo>() ? "abldgin1.aud" : "train1.aud");
Game.controller.AddOrder(Order.StartProduction(Game.LocalPlayer, item));
}
@@ -754,7 +754,7 @@ namespace OpenRa
void HandleBuildPalette(string item, bool isLmb)
{
var player = Game.LocalPlayer;
var unit = Rules.NewUnitInfo[item];
var unit = Rules.ActorInfo[item];
var queue = player.PlayerActor.traits.Get<Traits.ProductionQueue>();
var producing = queue.AllItems(unit.Category).FirstOrDefault( a => a.Item == item );
@@ -839,7 +839,7 @@ namespace OpenRa
rgbaRenderer.DrawSprite(tooltipSprite, p, PaletteType.Chrome);
rgbaRenderer.Flush();
var info = Rules.NewUnitInfo[unit];
var info = Rules.ActorInfo[unit];
var buildable = info.Traits.Get<BuildableInfo>();
renderer.DrawText2(buildable.Description, p.ToInt2() + new int2(5,5), Color.White);
@@ -876,7 +876,7 @@ namespace OpenRa
if( a[ 0 ] == '@' )
return "any " + a.Substring( 1 );
else
return Rules.NewUnitInfo[ a.ToLowerInvariant() ].Traits.Get<BuildableInfo>().Description;
return Rules.ActorInfo[ a.ToLowerInvariant() ].Traits.Get<BuildableInfo>().Description;
}
void DrawSupportPowers()

View File

@@ -22,7 +22,7 @@ namespace OpenRa
public static Map Map;
public static TileSet TileSet;
public static Dictionary<string, ActorInfo> NewUnitInfo;
public static Dictionary<string, ActorInfo> ActorInfo;
public static void LoadRules(string mapFileName, bool useAftermath)
{
@@ -70,9 +70,9 @@ namespace OpenRa
yamlRules = MiniYaml.Merge( MiniYaml.FromFile( "[mod]Separate buildqueue for defense.yaml" ), yamlRules );
NewUnitInfo = new Dictionary<string, ActorInfo>();
ActorInfo = new Dictionary<string, ActorInfo>();
foreach( var kv in yamlRules )
NewUnitInfo.Add(kv.Key.ToLowerInvariant(), new ActorInfo(kv.Key.ToLowerInvariant(), kv.Value, yamlRules));
ActorInfo.Add(kv.Key.ToLowerInvariant(), new ActorInfo(kv.Key.ToLowerInvariant(), kv.Value, yamlRules));
TechTree = new TechTree();
Map = new Map( AllRules );

View File

@@ -11,7 +11,7 @@ namespace OpenRa.GameRules
public TechTree()
{
foreach( var info in Rules.NewUnitInfo.Values )
foreach( var info in Rules.ActorInfo.Values )
{
var pi = info.Traits.GetOrDefault<ProductionInfo>();
if (pi != null)
@@ -62,7 +62,7 @@ namespace OpenRa.GameRules
public IEnumerable<ActorInfo> AllBuildables(Player player, params string[] categories)
{
return Rules.NewUnitInfo.Values
return Rules.ActorInfo.Values
.Where( x => x.Name[ 0 ] != '^' )
.Where( x => categories.Contains( x.Category ) )
.Where( x => x.Traits.Contains<BuildableInfo>() );
@@ -72,7 +72,7 @@ namespace OpenRa.GameRules
{
var builtAt = info.Traits.Get<BuildableInfo>().BuiltAt;
if( builtAt.Length != 0 )
return builtAt.Select( x => Rules.NewUnitInfo[ x.ToLowerInvariant() ] );
return builtAt.Select( x => Rules.ActorInfo[ x.ToLowerInvariant() ] );
else
return producesIndex[ info.Category ];
}

View File

@@ -8,7 +8,7 @@ namespace OpenRa.Orders
{
readonly Actor Producer;
readonly string Building;
BuildingInfo BuildingInfo { get { return Rules.NewUnitInfo[ Building ].Traits.Get<BuildingInfo>(); } }
BuildingInfo BuildingInfo { get { return Rules.ActorInfo[ Building ].Traits.Get<BuildingInfo>(); } }
public PlaceBuildingOrderGenerator(Actor producer, string name)
{
@@ -41,7 +41,7 @@ namespace OpenRa.Orders
public void Tick()
{
var producing = Producer.traits.Get<Traits.ProductionQueue>().CurrentItem( Rules.NewUnitInfo[ Building ].Category );
var producing = Producer.traits.Get<Traits.ProductionQueue>().CurrentItem( Rules.ActorInfo[ Building ].Category );
if (producing == null || producing.Item != Building || producing.RemainingTime != 0)
Game.controller.CancelInputMode();
}

View File

@@ -69,7 +69,7 @@ namespace OpenRa.Orders
else
return Cursor.MoveBlocked;
case "DeployMcv":
var factBuildingInfo = Rules.NewUnitInfo["fact"].Traits.Get<BuildingInfo>();
var factBuildingInfo = Rules.ActorInfo["fact"].Traits.Get<BuildingInfo>();
if (Game.CanPlaceBuilding("fact", factBuildingInfo, a.Location - new int2(1, 1), a, false))
return Cursor.Deploy;
else

View File

@@ -17,7 +17,7 @@ namespace OpenRa.Orders
Game.world.AddFrameEndTask( _ =>
{
var queue = order.Player.PlayerActor.traits.Get<ProductionQueue>();
var unit = Rules.NewUnitInfo[ order.TargetString ];
var unit = Rules.ActorInfo[ order.TargetString ];
var producing = queue.CurrentItem(unit.Category);
if( producing == null || producing.Item != order.TargetString || producing.RemainingTime != 0 )
return;

View File

@@ -50,7 +50,7 @@ namespace OpenRa
var buildings = Rules.TechTree.GatherBuildings(Owner);
var effectivePrereq = Info.Prerequisite
.Select( a => a.ToLowerInvariant() )
.Where( a => Rules.NewUnitInfo[a].Traits.Get<BuildableInfo>().Owner.Contains( Owner.Race ));
.Where( a => Rules.ActorInfo[a].Traits.Get<BuildableInfo>().Owner.Contains( Owner.Race ));
IsAvailable = Info.TechLevel > -1
&& effectivePrereq.Any()

View File

@@ -24,7 +24,7 @@ namespace OpenRa.Traits
{
if( order.OrderString == "DeployMcv" )
{
var factBuildingInfo = Rules.NewUnitInfo[ "fact" ].Traits.Get<BuildingInfo>();
var factBuildingInfo = Rules.ActorInfo[ "fact" ].Traits.Get<BuildingInfo>();
if( Game.CanPlaceBuilding( "fact", factBuildingInfo, self.Location - new int2( 1, 1 ), self, false ) )
{
self.CancelActivity();

View File

@@ -33,7 +33,7 @@ namespace OpenRa.Traits
{
case "StartProduction":
{
var unit = Rules.NewUnitInfo[ order.TargetString ];
var unit = Rules.ActorInfo[ order.TargetString ];
var ui = unit.Traits.Get<BuildableInfo>();
var time = ui.Cost
* Rules.General.BuildSpeed /* todo: country-specific build speed bonus */
@@ -65,7 +65,7 @@ namespace OpenRa.Traits
}
case "PauseProduction":
{
var producing = CurrentItem( Rules.NewUnitInfo[ order.TargetString ].Category );
var producing = CurrentItem( Rules.ActorInfo[ order.TargetString ].Category );
if( producing != null && producing.Item == order.TargetString )
producing.Paused = ( order.TargetLocation.X != 0 );
break;
@@ -95,7 +95,7 @@ namespace OpenRa.Traits
public void CancelProduction( string itemName )
{
var category = Rules.NewUnitInfo[itemName].Category;
var category = Rules.ActorInfo[itemName].Category;
var queue = production[ category ];
if (queue.Count == 0) return;
@@ -126,7 +126,7 @@ namespace OpenRa.Traits
public void BuildUnit( string name )
{
var newUnitType = Rules.NewUnitInfo[ name ];
var newUnitType = Rules.ActorInfo[ name ];
var producerTypes = Rules.TechTree.UnitBuiltAt( newUnitType );
Actor producer = null;