using System; using System.Collections.Generic; using Schedule; public class SceneCharacterSelect : WfScreenManager { public static void CreateYotogiCharaList() { SceneCharacterSelect.chara_guid_stock_list.Clear(); List yotogiMaids = ScheduleAPI.GetYotogiMaids(GameMain.Instance.CharacterMgr.status.isDaytime); for (int i = 0; i < yotogiMaids.Count; i++) { SceneCharacterSelect.chara_guid_stock_list.Add(yotogiMaids[i].status.guid); } } public static void CreateVipCharaList() { SceneCharacterSelect.chara_guid_stock_list.Clear(); List vipWorkMaids = ScheduleAPI.GetVipWorkMaids(GameMain.Instance.CharacterMgr.status.isDaytime); for (int i = 0; i < vipWorkMaids.Count; i++) { SceneCharacterSelect.chara_guid_stock_list.Add(vipWorkMaids[i].status.guid); } } public static void CreateFacilityCharaList() { SceneCharacterSelect.chara_guid_stock_list.Clear(); List facilityPowerUpMaids = ScheduleAPI.GetFacilityPowerUpMaids(GameMain.Instance.CharacterMgr.status.isDaytime); for (int i = 0; i < facilityPowerUpMaids.Count; i++) { SceneCharacterSelect.chara_guid_stock_list.Add(facilityPowerUpMaids[i].status.guid); } } public static bool IsSelectChara() { return 0 < SceneCharacterSelect.chara_guid_stock_list.Count; } public void Awake() { this.adv_kag_ = GameMain.Instance.ScriptMgr.adv_kag; } public override void Start() { base.Start(); this.move_screen_ = base.children_dic["Move"].GetComponent(); this.select_type_ = SceneCharacterSelect.SelectType.Communication; this.select_dance_chara_num_ = 1; string empty = string.Empty; string empty2 = string.Empty; if (this.adv_kag_.tag_backup != null && 0 < this.adv_kag_.tag_backup.Count && this.adv_kag_.tag_backup["name"] == "SceneCharacterSelect") { NDebug.Assert(this.adv_kag_.tag_backup.ContainsKey("label"), "SceneCharacterSelectにlabelの設定がされていませんでした"); NDebug.Assert(this.adv_kag_.tag_backup.ContainsKey("type"), "SceneCharacterSelectにtypeの設定がされていませんでした"); this.move_screen_.SetNextLabel(this.adv_kag_.tag_backup["label"]); if (this.adv_kag_.tag_backup.ContainsKey("cancel_label")) { CharacterSelectMain component = base.children_dic["Main"].GetComponent(); component.SetCancelLabel(this.adv_kag_.tag_backup["cancel_label"]); } try { this.select_type_ = (SceneCharacterSelect.SelectType)Enum.Parse(typeof(SceneCharacterSelect.SelectType), this.adv_kag_.tag_backup["type"]); } catch { NDebug.Assert("SelectType enum parse error.\n" + this.adv_kag_.tag_backup["type"], false); } if (this.adv_kag_.tag_backup["type"] == "コミュ") { this.select_type_ = SceneCharacterSelect.SelectType.Communication; } if (this.adv_kag_.tag_backup.ContainsKey("select_chara_num")) { this.select_dance_chara_num_ = int.Parse(this.adv_kag_.tag_backup["select_chara_num"]); } if (this.adv_kag_.tag_backup.ContainsKey("maid")) { this.select_maid_slot_ = int.Parse(this.adv_kag_.tag_backup["maid"]); } } if (this.select_type_ != SceneCharacterSelect.SelectType.VRComSelect && this.select_type_ != SceneCharacterSelect.SelectType.Additional) { GameMain.Instance.MainLight.Reset(); GameMain.Instance.CharacterMgr.ResetCharaPosAll(); GameMain.Instance.MainCamera.Reset(CameraMain.CameraType.Target, true); } GameMain.Instance.SoundMgr.VoiceStopAll(); this.CallScreen("Main"); } protected override void SettingChildrenList(Dictionary children_dic) { string[] array = new string[] { "Main", "Move" }; for (int i = 0; i < array.Length; i++) { WfScreenChildren component = UTY.GetChildObject(base.gameObject, array[i], false).GetComponent(); component.parent_mgr = this; children_dic.Add(array[i], component); } } public WfScreenMoveChildren move_screen { get { return this.move_screen_; } } public SceneCharacterSelect.SelectType select_type { get { return this.select_type_; } } public int select_dance_chara_num { get { return this.select_dance_chara_num_; } } public int select_maid_slot { get { return this.select_maid_slot_; } } public static List chara_guid_stock_list = new List(); public static List select_maid_list = new List(); private WfScreenMoveChildren move_screen_; private ADVKagManager adv_kag_; private SceneCharacterSelect.SelectType select_type_; private int select_dance_chara_num_; private int select_maid_slot_; public enum SelectType { Communication, Yotogi, Vip, CompetitiveShow, TouchCharaSelect, VRComSelect, Free, Facility, Recollection, VRKaraokeSelect, Additional } }