private void SkillToSubscribe() { _container.Add(_battlerSpriteModel.SelectedSubject.Subscribe(_ => { var skill = SkillsDicionary.GetSkillById(_skillModel.SkillId); var battler = BattlerDictionary.GetBattlerByUniqId(_battleModel.ActiveUniqId); switch (skill.target) { case SkillConsts.ENEMY: case SkillConsts.MEMBER: var uniqId = _battlerSpriteModel.SelectUniqId; var toBattler = BattlerDictionary.GetBattlerByUniqId(uniqId); BattleLogic.SkillToSingle(skill.skillId, battler, toBattler) .Subscribe( __ => { _battleModel.NextTurn.OnNext(Unit.Default); }); break; case SkillConsts.ALL_ENEMY: BattleLogic.SkillToAll(skill.skillId, battler, BattleDictionary.GetRivalBattlers(battler.battlerType)).Subscribe(__ => { _battleModel.NextTurn.OnNext(Unit.Default); }); break; case SkillConsts.ALL_MEMBER: BattleLogic.SkillToAll(skill.skillId, battler, BattleDictionary.GetMemberBattlers(battler.battlerType)).Subscribe(__ => { _battleModel.NextTurn.OnNext(Unit.Default); }); break; case SkillConsts.RANDOM_ENEMY: BattleLogic.SkillToRandom(skill.skillId, battler, BattleDictionary.GetRivalUniqIds(BattlerEnum.BattlerType.Actor)).Subscribe( __ => { _battleModel.NextTurn.OnNext(Unit.Default); }); break; case SkillConsts.RANDOM_MEMBER: BattleLogic.SkillToRandom(skill.skillId, battler, BattleDictionary.GetMemberUniqIds(BattlerEnum.BattlerType.Actor)).Subscribe( __ => { _battleModel.NextTurn.OnNext(Unit.Default); }); break; } })); }
public static bool AllEnemyDeadCheck() { var battlers = BattleDictionary.GetRivalBattlers(BattlerEnum.BattlerType.Actor); foreach (var battler in battlers) { if (DeadCheck(battler) == false) { return(false); } } return(true); }