public override WealthComponent Create() { if (TypeObject.Exchange.Value) { var exchangeFactory = new ExchangeFactory(TypeObject.Exchange.Value, GameObject); exchangeFactory.Create(); } Component.Money = TypeObject.Money; var exchangeComponent = GameObject.GetComponent <ExchangeComponent>(); if (exchangeComponent) { exchangeComponent.ItemSold += Component.OnItemSold; exchangeComponent.ItemBought += Component.OnItemBought; } if (Locator.Time) { Locator.Time.YearTicked += Component.OnYearTicked; } return(Component); }
public override CartComponent Create() { Component.Type = TypeObject.CartType; var exchangeFactory = new ExchangeFactory(TypeObject.Exchange.Value, GameObject); exchangeFactory.Create(); var travelFactory = new TravelFactory(TypeObject.Travel.Value, GameObject, ParentObject); var travelComponent = travelFactory.Create(); travelComponent.DestinationReached += Component.OnDestinationReached; return(Component); }
public override MarketComponent Create() { Locator.Market = Component; var locationFactory = new LocationFactory(TypeObject.Location.Value, GameObject); locationFactory.Create(); foreach (var exchange in TypeObject.Exchanges) { var exchangeFactory = new ExchangeFactory(exchange.Value, parentObject: GameObject); exchangeFactory.Create(); } return(Component); }
void CreateExchange() { var exchangeFactory = new ExchangeFactory(TypeObject.Exchange.Value, GameObject); exchangeFactory.Create(); }