virtual public void SetActionMode(bool set_mode, eActionMode mode, ICreature leader_creature, bool need_backup_scale) { if (BattleBase.CurrentBattleMode == eBattleMode.None) { return; } if (set_mode) { IsPause = ePauseType.Pause; m_Light.intensity = 1f; TextManager.Instance.Clear(); backup_container = leader_creature.Container; foreach (var creature in m_LightingCreatures) { creature.Creature.Character.transform.localScale = Vector3.one * creature.Creature.Scale; } List <ICreature> team_creatures = null; List <ICreature> enemy_creatures = null; if (leader_creature.IsTeam) { leader_creature.Character.transform.SetParent(battle_layout.m_Mine.Center.transform, false); team_creatures = characters; enemy_creatures = enemies; } else { leader_creature.Character.transform.SetParent(battle_layout.m_Enemy.Center.transform, false); team_creatures = enemies; enemy_creatures = characters; } backup_scale = leader_creature.Scale; if (need_backup_scale) { leader_creature.Character.transform.localScale = Vector3.one; leader_creature.Scale = 1f; } foreach (var creature in team_creatures) { eCharacterDummyMode dummy_mode = eCharacterDummyMode.Hidden; if (creature == leader_creature) { dummy_mode = eCharacterDummyMode.Active; } else if (mode == eActionMode.NotHidden || mode == eActionMode.EnemyHidden) { dummy_mode = eCharacterDummyMode.Dummy; } creature.SetDummyMode(dummy_mode); if (dummy_mode == eCharacterDummyMode.Active) { LightingTarget.SetType(creature.Character, eLightingType.Active); } } foreach (var creature in enemy_creatures) { eCharacterDummyMode dummy_mode = eCharacterDummyMode.Hidden; if (mode == eActionMode.NotHidden || mode == eActionMode.TeamHidden) { dummy_mode = eCharacterDummyMode.Dummy; } creature.SetDummyMode(dummy_mode); } foreach (var particle in m_PlayingParticles) { particle.SetHidden(true); } m_SkillCamera.transform.localPosition = Vector3.zero; m_SkillCamera.transform.localRotation = Quaternion.identity; m_SkillCamera.gameObject.SetActive(true); backup_camera = Camera.main; backup_camera.enabled = false; if (m_Bottom != null) { m_Bottom.SetActive(false); } } else { backup_camera.enabled = true; m_SkillCamera.gameObject.SetActive(false); IsPause = ePauseType.None; if (m_Bottom != null) { m_Bottom.SetActive(true); } leader_creature.Character.transform.SetParent(backup_container.transform, false); leader_creature.Scale = backup_scale; leader_creature.Character.transform.localScale = Vector3.one * backup_scale; backup_container = null; // LightingTarget.SetType(leader_creature.Character, eLightingType.None); List <ICreature> team_creatures = null; List <ICreature> enemy_creatures = null; if (leader_creature.IsTeam) { team_creatures = characters; enemy_creatures = enemies; } else { team_creatures = enemies; enemy_creatures = characters; } foreach (var creature in team_creatures) { if (creature != null) { creature.SetDummyMode(eCharacterDummyMode.None); var target = m_LightingTargets.Find(t => t.Character == creature.Character); if (target != null) { target.SetType(); } else { LightingTarget.SetType(creature.Character, eLightingType.None); } } } foreach (var creature in enemy_creatures) { if (creature != null) { creature.SetDummyMode(eCharacterDummyMode.None); var target = m_LightingTargets.Find(t => t.Character == creature.Character); if (target != null) { target.SetType(); } else { LightingTarget.SetType(creature.Character, eLightingType.None); } } } foreach (var particle in m_PlayingParticles) { particle.SetHidden(false); } } }
public override void SetActionMode(bool set_mode, eActionMode mode, ICreature leader_creature, bool need_backup_scale) { Tooltip.Instance.CloseAllTooltip(); base.SetActionMode(set_mode, mode, leader_creature, need_backup_scale); }