public Actor(ActorDefinition actorDefinition) : this() { Id = actorDefinition.Id; Abilities.AddRange(actorDefinition.Abilities); Equipment.AddRange(actorDefinition.Equipment.Select(x => new Item(x))); BaseStatistics = actorDefinition.BaseStatistics; Diameter = actorDefinition.Diameter; MovementSpeed = actorDefinition.MovementSpeed; Faction = actorDefinition.Faction; Name = actorDefinition.Name; TextureName = actorDefinition.TextureName; Cost = actorDefinition.Cost; ResourceType = actorDefinition.ResourceType; CurrentHealth = MaximumHealth; CurrentMana = MaximumMana; }
public ActorDefinitionForm(string fileName) { InitializeComponent(); this.fileName = fileName; if (File.Exists(fileName)) { using (var reader = XmlReader.Create(fileName)) { actor = IntermediateSerializer.Deserialize<ActorDefinition>(reader, Resources.SourcePath + @"Eternia.XnaClient\GameContent\Actors\"); } } else { actor = new ActorDefinition(); } }
private Color GetHeroColor(ActorDefinition hero) { if (hero.Cost > player.Gold) return Color.Salmon; return Color.LightGray; }
private void BuyHero(ActorDefinition hero) { if (hero != null && player.Gold >= hero.Cost) { player.Gold -= hero.Cost; player.Heroes.Add(new Actor(hero)); availableHeroes.Remove(hero); } }