public static BuildingState ReduceBuyBuildingAction(BuildingState state, BuyBuildingAction action) { var building = BuildingStorage.Buildings[action.Id]; return(state with { OwnedBuildings = state.OwnedBuildings.Concat(new[] { building }), Reach = state.Reach + building.Reach, }); }
public static AppState ReduceBuyBuildingAction(AppState state, BuyBuildingAction action) { return(state with { Money = state.Money - action.Cost, Timestamp = DateTime.Now }); }