private Schedule FindSchedule() { var result = _client.GetXHR("http://astrum.amebagames.com/_/guildbattle/lobby"); GuildBattleLobbyInfo lobby = JsonConvert.DeserializeObject <GuildBattleLobbyInfo>(result); if (lobby.available && "start".Equals(lobby.status)) { _client.Access("/guildbattle&route=top&value=battle"); return(lobby.schedule.Find(item => "start".Equals(item.status))); } return(null); }
public void Run() { var responseString = _client.GetXHR("http://astrum.amebagames.com/_/mypage"); var mypage = JsonConvert.DeserializeObject <MypageInfo>(responseString); InfoPrinter.PrintMypage(mypage, _client.ViewModel); InfoUpdater.UpdateMypageView(mypage, _client.ViewModel); _client.Access("mypage"); if (mypage.loginBonus != null) { if (mypage.loginBonus.basic) { LoginBonusBasic(); } if (mypage.loginBonus.@event) { LoginBonusEvent(); } if (mypage.loginBonus.longLogin) { LoginBonusLongLogin(); } } }
public void Run() { TalkListInfo talkList = TalkList(); _client.ViewModel.TalkList = talkList.list; _client.Access("talk"); }
public FuryRaidInfo FuryRaidInfo() { _client.Access("furyraid"); var eventId = _client.ViewModel.FuryRaidEventId; string result = _client.GetXHR("http://astrum.amebagames.com/_/event/furyraid?_id=" + Uri.EscapeDataString(eventId)); FuryRaidInfo raidInfo = JsonConvert.DeserializeObject <FuryRaidInfo>(result); _client.DelayShort(); return(raidInfo); }
private GiftInfo CheckGift(int limited) { var url = string.Format("http://astrum.amebagames.com/_/gift?page=1&size=10&type=all&limited={0}", limited); var result = _client.GetXHR(url); var giftInfo = JsonConvert.DeserializeObject <GiftInfo>(result); _client.Access("gift"); _client.DelayShort(); return(giftInfo); }
public void Run() { var responseString = _client.GetXHR("http://astrum.amebagames.com/_/item"); var itemList = JsonConvert.DeserializeObject <ItemList>(responseString); _client.Access("item"); foreach (var item in itemList.list) { InfoUpdater.UpdateItemStock(item, _client.ViewModel); } }
public void FuryRaidEvent() { _client.Access("furyraid"); var eventId = _client.ViewModel.FuryRaidEventId; FuryRaidEventInfo eventInfo = FuryRaidEventInfo(eventId); _client.ViewModel.EventName = eventInfo.name; _client.ViewModel.FeverProgress = eventInfo.fever.progress; _client.ViewModel.EventKills = eventInfo.totalRewards.user.total; InfoPrinter.PrintFuryRaidInfo(eventInfo, _client.ViewModel); RankingInfo ranking = _client.Ranking(eventId); _client.ViewModel.Ranking = ranking.ranking; _client.ViewModel.Point = ranking.point; InfoPrinter.PrintRankingInfo(ranking, _client.ViewModel); _client.DelayShort(); }
public void Run() { _client.Access("breeding"); var breedingInfo = BreedingInfo(); var stage = EnterBreedingStage(); var areaId = stage._id; while (_client.ViewModel.IsRunning) { if (stage.isBossStage) { BreedingAreaBossBattle(areaId); return; } else if (stage.stageClear && stage.nextStage.isBossStage) { stage = ForwardBreedingStage(areaId); _client.RaiseNotificationEvent("area boss", AstrumClient.DELAY_LONG); BreedingAreaBossBattle(areaId); return; } else { var breedingRaidId = stage.status.breeding._id; if (breedingRaidId != null) { _client.ViewModel.IsBreedingRaid = true; if (_client.ViewModel.CanFullAttackForEvent) { BreedingRaid(breedingRaidId); return; } } else { _client.ViewModel.IsBreedingRaid = false; } bool isBpFull = _client.ViewModel.BpValue >= AstrumClient.BP_FULL; bool isFever = _client.ViewModel.Fever; if (!isBpFull && !isFever) { _client.ViewModel.IsStaminaEmpty = true; } else { _client.ViewModel.IsStaminaEmpty = false; } if (_client.ViewModel.IsStaminaEmpty) { bool staminaGreaterThanKeep = _client.ViewModel.StaminaValue >= _client.ViewModel.KeepStamina; bool staminaGreaterThanExp = _client.ViewModel.StaminaValue >= (_client.ViewModel.ExpMax - _client.ViewModel.ExpValue); if (staminaGreaterThanKeep || staminaGreaterThanExp) { _client.ViewModel.IsStaminaEmpty = false; } else { return; } } if (stage.staminaEmpty) { if (stage.items != null && _client.ViewModel.ExpMax - _client.ViewModel.ExpValue > 100) { var item = stage.items.Find(e => AstrumClient.INSTANT_HALF_STAMINA.Equals(e._id)); if (item.stock > _client.ViewModel.MinStaminaStock && _client.ViewModel.Fever) { _client.UseItem(AstrumClient.ITEM_STAMINA, AstrumClient.INSTANT_HALF_STAMINA, 1); return; } else { _client.ViewModel.IsStaminaEmpty = true; return; } } else { _client.ViewModel.IsStaminaEmpty = true; return; } } //forward stage = ForwardBreedingStage(areaId); } } }
public void Run() { _client.Access("stage"); var viewModel = _client.ViewModel; var stage = EnterStage(); var areaId = stage._id; while (viewModel.IsRunning) { if (stage.isBossStage) { AreaBossBattle(areaId); return; } else if (stage.stageClear && stage.nextStage.isBossStage) { stage = ForwardStage(areaId); AreaBossBattle(areaId); return; } else { viewModel.IsFuryRaid = false; viewModel.IsLimitedRaid = false; if (viewModel.IsFuryRaidEnable) { viewModel.IsFuryRaid = true; if (stage.furyraid != null) { if (stage.furyraid.rare == 4) { viewModel.CanFuryRaid = true; } } else if (viewModel.CanFuryRaid) { _client.FuryRaid(); viewModel.CanFuryRaid = false; return; } else if (!viewModel.Fever) { if (stage.status.furyraid.find != null) { if (stage.status.furyraid.find.isNew || viewModel.CanFullAttack) { _client.FuryRaid(); return; } } if (stage.status.furyraid.rescue != null) { if (stage.status.furyraid.rescue.isNew) { _client.FuryRaid(); return; } } } } if (viewModel.IsLimitedRaidEnable) { var limitedRaidId = stage.status.limitedraid._id; if (limitedRaidId != null) { viewModel.IsLimitedRaid = true; if (viewModel.CanFullAttackForEvent) { _client.LimitedRaid(); return; } } } if (stage.status.raid != null && !viewModel.Fever) { viewModel.IsFuryRaid = false; viewModel.IsLimitedRaid = false; viewModel.IsBreedingRaid = false; if (stage.status.raid.find != null) { if (stage.status.raid.find.isNew || viewModel.CanFullAttack) { _client.Raid(); return; } } if (stage.status.raid.rescue != null) { if (stage.status.raid.rescue.isNew || viewModel.CanFullAttack) { _client.Raid(); return; } } } if (viewModel.IsStaminaEmpty) { bool staminaGreaterThanKeep = viewModel.StaminaValue >= viewModel.KeepStamina; bool staminaGreaterThanExp = viewModel.StaminaValue >= (viewModel.ExpMax - viewModel.ExpValue); bool isBpFull = viewModel.BpValue >= AstrumClient.BP_FULL; bool isFever = viewModel.Fever; if (staminaGreaterThanKeep || staminaGreaterThanExp || isBpFull || isFever) { viewModel.IsStaminaEmpty = false; } else { return; } } if (stage.staminaEmpty) { if (stage.items != null && viewModel.ExpMax - viewModel.ExpValue > 100) { var item = stage.items.Find(e => AstrumClient.INSTANT_HALF_STAMINA.Equals(e._id)); if (item.stock > viewModel.MinStaminaStock && viewModel.Fever) { _client.UseItem(AstrumClient.ITEM_STAMINA, AstrumClient.INSTANT_HALF_STAMINA, 1); return; } else { viewModel.IsStaminaEmpty = true; return; } } else { viewModel.IsStaminaEmpty = true; return; } } //forward stage = ForwardStage(areaId); } } }