public void TestSimpleOneRoundExpeditionWithTenOfAllUnits() { var sendUnits = new UnitCollection( new UnitAmount(UnitInfo.WorkerUnitType, 10), new UnitAmount(UnitInfo.SoldierUnitType, 10), new UnitAmount(UnitInfo.ScientistUnitType, 10)); ExpeditionData data = new ExpeditionData { Owner = null, // not important StartingRound = 1, EndingRound = 1, AssignedUnits = sendUnits, RemainingUnits = sendUnits.Clone(), CurrentRange = 0.0m, DiscoveredResources = new ResourceCollection() }; ExpeditionLogic expeditionLogic = ObtainExpeditionLogic(); var statePrinter = StatePrinters.For(data); statePrinter.PrintState(data, Console.Out); expeditionLogic.ProcessExpedition(data, 1); statePrinter.PrintState(data, Console.Out); }
protected override object Converter(JToken expedition) { var expeditionData = new ExpeditionData() { Day = DateTime.Today, LastUpdate = expedition.Value <DateTime>("lastUpdate"), Expeditions = new List <Expedition>() }; var expeditions = expedition.Value <JArray>("expeditionData"); foreach (var exp in expeditions.Children <JObject>()) { var expeditionToAdd = new Expedition() { StartDate = exp.Value <DateTime>("startDate"), EndDate = exp.Value <DateTime>("endDate"), RouteId = exp.Value <int>("routeId"), TripId = exp.Value <int>("tripId"), TechnicalTrip = exp.Value <bool>("technicalTrip"), MainRoute = exp.Value <bool>("mainRoute") }; expeditionData.Expeditions.Add(expeditionToAdd); } return(expeditionData); }
private void UpdateGetRewardSuccess() { ExpeditionData data = ExpeditionData.GetExpeditionDataByID(ExpeditionProxy.instance.selectExpeditionDungeonInfo.id); LuaTable tips_model = LuaScriptMgr.Instance.CallLuaFunction("gamemanager.GetModel", "tips_model")[0] as LuaTable; LuaTable tip_view = tips_model.GetLuaFunction("GetTipView").Call("common_reward_tips_view")[0] as LuaTable; tip_view.GetLuaFunction("CreateByCSharpGameResDataList").Call(data.rewardList); }
public static void ExpeditionUpdate(eRundownTier tier, int expIndex, ExpeditionInTierData inTierData) { _IsDefaultSettingBlocked = false; //Revert Previous Expedition Data if (_PreviousExpData != null) { _PreviousExpData.ScoutWaveSettings = _DefaultWaveSettingID; _PreviousExpData.ScoutWavePopulation = _DefaultWavePopulationID; } _PreviousExpData = inTierData.Expedition; _DefaultWaveSettingID = _PreviousExpData.ScoutWaveSettings; _DefaultWavePopulationID = _PreviousExpData.ScoutWavePopulation; _CurrentExpeditionTier = tier; _CurrentExpeditionIndex = expIndex; _ActiveScoutSettings.Clear(); foreach (var setting in _ScoutSettings) { if (!setting.IsMatch(_CurrentExpeditionTier, _CurrentExpeditionIndex)) { continue; } foreach (var scoutSetting in setting.ScoutSettings) { var targetSetting = GetTargetSetting(scoutSetting.TargetSetting); var waveSetting = GetWaveSetting(scoutSetting.WaveSetting); if (targetSetting == null) { continue; } if (waveSetting == null) { continue; } var settingCache = new ScoutSettingCache() { TargetSetting = targetSetting, WaveSetting = waveSetting }; _ActiveScoutSettings.Add(settingCache); } } if (_ActiveScoutSettings.Count > 0) { _PreviousExpData.ScoutWaveSettings = 0u; _PreviousExpData.ScoutWavePopulation = 0u; _IsDefaultSettingBlocked = true; } }
TripsWithBusStops Map(BusLineData busLine, ExpeditionData expeditionObject, TripData tripData, BusStopData busStopData, StopInTripData stopInTripData) { var tripsWithBusStops = new TripsWithBusStops() { Day = busLine.Day, Trips = new List <Trip>() }; busLine.Routes.ForEach(route => { var tripListByRouteId = tripData.Trips.Where(x => x.RouteId == route.RouteId).ToList(); tripListByRouteId.ForEach(tripByRouteId => { var expedition = expeditionObject.Expeditions .FirstOrDefault(exp => exp.RouteId == tripByRouteId.RouteId && exp.TripId == tripByRouteId.TripId && (exp.StartDate.Date == busLine.Day.Date || exp.StartDate.Date < busLine.Day.Date)); if (expedition == null || expedition.TechnicalTrip) { return; } tripsWithBusStops.Trips.Add( new Trip() { Id = tripByRouteId.Id, TripId = tripByRouteId.TripId, RouteId = tripByRouteId.RouteId, AgencyId = route.AgencyId, BusLineName = route.RouteShortName, MainRoute = expedition.MainRoute, TripHeadsign = tripByRouteId.TripHeadsign, DirectionId = tripByRouteId.DirectionId, Stops = _stopHelper.GetStopList(tripByRouteId, stopInTripData.StopsInTrip.Where(x => x.RouteId == tripByRouteId.RouteId && x.TripId == tripByRouteId.TripId).ToList(), expedition.MainRoute, busStopData.Stops) }); }); }); tripsWithBusStops.Trips = tripsWithBusStops.Trips.OrderBy(x => x.BusLineName).ToList(); return(tripsWithBusStops); }
public void OnClickDungeonButtonHandler() { if (!expeditionDungeonInfo.isUnlocked) { if (expeditionDungeonInfo.data.type != (int)ExpeditionDungeonType.Expedition_Normal) { ExpeditionData data = ExpeditionData.GetExpeditionDataByID(expeditionDungeonInfo.id); CommonRewardTipsView.Open(data.rewardList); } return; } ExpeditionProxy.instance.selectExpeditionDungeonInfo = expeditionDungeonInfo; int type = expeditionDungeonInfo.data.type; if (type == (int)ExpeditionDungeonType.Expedition_Normal) { if (expeditionDungeonInfo.isFinished) { CommonAutoDestroyTipsView.Open(Localization.Get("ui.expedition_view.conquerOther")); return; } } else { if (expeditionDungeonInfo.isFinished) { ExpeditionData data = ExpeditionData.GetExpeditionDataByID(expeditionDungeonInfo.id); if (!expeditionDungeonInfo.isGetReward) { CommonRewardTipsView.Open(data.rewardList, true, ClickRewardBtnHandler); } else { CommonRewardTipsView.Open(data.rewardList); } return; } } //ExpeditionFormationView.Open(true); ExpeditionEmbattleView.Open(true); }
public void TestThreeRoundExpeditionWithTenOfAllUnits() { var sendUnits = new UnitCollection( new UnitAmount(UnitInfo.WorkerUnitType, 10), new UnitAmount(UnitInfo.SoldierUnitType, 10), new UnitAmount(UnitInfo.ScientistUnitType, 10)); ExpeditionData data = new ExpeditionData { Owner = null, // not important StartingRound = 1, EndingRound = 3, AssignedUnits = sendUnits, RemainingUnits = sendUnits.Clone(), CurrentRange = 0.0m, DiscoveredResources = new ResourceCollection() }; var gameState = new GameState(); ExpeditionLogic expeditionLogic = ObtainExpeditionLogic(gameState); var enemy1 = new Player("Nosgoh", PlayerType.Enemy); enemy1.BaseUnits = new UnitCollection( new UnitAmount(UnitInfo.SoldierUnitType, 40), new UnitAmount(UnitInfo.WargUnitType, 45)); gameState.AddPlayer(enemy1); var statePrinter = StatePrinters.For(data); statePrinter.PrintState(data, Console.Out); expeditionLogic.ProcessExpedition(data, 1); statePrinter.PrintState(data, Console.Out); expeditionLogic.ProcessExpedition(data, 2); statePrinter.PrintState(data, Console.Out); expeditionLogic.ProcessExpedition(data, 3); statePrinter.PrintState(data, Console.Out); }
public List <TripsWithBusStops> GetTripsWithBusStops(List <TripData> tripDataList, List <BusStopData> busStopDataList, List <BusLineData> busLineDataList, List <StopInTripData> stopInTripDataList, ExpeditionData expeditionObject) { var tripsWithBusStops = new List <TripsWithBusStops>(); try { busLineDataList.ForEach(busLine => tripsWithBusStops.Add( Map(busLine, expeditionObject, tripDataList.SingleOrDefault(trip => trip.Day == busLine.Day), busStopDataList.SingleOrDefault(stop => stop.Day == busLine.Day), stopInTripDataList.SingleOrDefault(stopInTrip => stopInTrip.Day == busLine.Day) ))); } catch (NullReferenceException nre) { var message = nre.Message; } return(tripsWithBusStops); }
public List <TripsWithBusStops> GetTripsWithBusStopList(List <TripData> tripDataList, List <BusStopData> busStopDataList, List <BusLineData> busLineDataList, List <StopInTripData> stopInTripDataList, ExpeditionData expeditionObject) { return(_tripsWithBusStopsService.GetTripsWithBusStops(tripDataList, busStopDataList, busLineDataList, stopInTripDataList, expeditionObject)); }