public TerrainController(CoreGameScreenController parent, IClientDataService ds, Network.Network network, IRealestateDomain domain, PurchaseLotRegulator purchaseRegulator) { this.Parent = parent; this.DataService = ds; this.PurchaseRegulator = purchaseRegulator; Network = network; PurchaseRegulator.OnError += PurchaseRegulator_OnError; PurchaseRegulator.OnTransition += PurchaseRegulator_OnTransition; PurchaseRegulator.OnPurchased += PurchaseRegulator_OnPurchased; Realestate = domain.GetByShard(network.MyShard.Id); CurrentHoverLot = new Binding <Lot>() .WithMultiBinding(RefreshTooltip, "Lot_Price", "Lot_IsOnline", "Lot_Name", "Lot_NumOccupants", "Lot_LeaderID"); CurrentCity = new Binding <City>().WithMultiBinding(RefreshCity, "City_ReservedLotInfo", "City_SpotlightsVector"); }