protected Building(BuildingBlueprint blueprint, PositionedFootprint footprint) { if (!footprint.IsValid) { throw new ArgumentOutOfRangeException(); } this.blueprint = blueprint; this.footprint = footprint; Health = 1; BuildManager = new BuildProcessManager(this, blueprint); }
public PlayerBuilding(BuildingBlueprint blueprint, PositionedFootprint footprint) : base(blueprint, footprint) { }
public void HandleClick(GameInstance game, PositionedFootprint footprint) { footprint.OccupiedTiles .Where(t => t.IsValid) .ForEach(tile => requestToggle(game, tile)); }
public void HandleHover(GameInstance game, PositionedFootprint footprint) { }
public Base(PositionedFootprint footprint) : base(Blueprint, footprint) { BuildManager.Progress(ResourceGrant.Infinite); }
public void Click(PositionedFootprint footprint) { ClickHandler?.HandleClick(game, footprint); }
public void HandleClick(GameInstance game, PositionedFootprint footprint) { footprint.OccupiedTiles .Where(t => t.IsValid && t.Info.IsPassable) .ForEach(tile => game.State.Add(new EnemyUnit(new UnitBlueprint(100, 25, new Speed(2), 10), tile))); }
public void Hover(PositionedFootprint footprint) { ClickHandler?.HandleHover(game, footprint); }
public void SetFootprint(PositionedFootprint footprint) { this.footprint = footprint; }
public void HandleClick(GameInstance game, PositionedFootprint footprint) { game.Request(BuildBuilding.Request, blueprint, footprint); }
public void HandleHover(GameInstance game, PositionedFootprint footprint) { ghost.SetFootprint(footprint); }
public Implementation(GameState game, BuildingBlueprint blueprint, PositionedFootprint footprint) { this.game = game; this.blueprint = blueprint; this.footprint = footprint; }
public static IRequest Request(GameState game, BuildingBlueprint blueprint, PositionedFootprint footprint) => new Implementation(game, blueprint, footprint);