DanceSelect.cs 34 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181
  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using MaidStatus;
  6. using UnityEngine;
  7. using wf;
  8. public class DanceSelect : WfScreenChildren
  9. {
  10. public static void CreateDanceData()
  11. {
  12. if (DanceSelect.dance_data_list_ != null)
  13. {
  14. return;
  15. }
  16. HashSet<int> enabled_id_list = new HashSet<int>();
  17. Action<string> action = delegate(string file_name)
  18. {
  19. file_name += ".nei";
  20. if (!GameUty.FileSystem.IsExistentFile(file_name))
  21. {
  22. return;
  23. }
  24. using (AFileBase afileBase2 = GameUty.FileSystem.FileOpen(file_name))
  25. {
  26. using (CsvParser csvParser2 = new CsvParser())
  27. {
  28. bool condition2 = csvParser2.Open(afileBase2);
  29. NDebug.Assert(condition2, file_name + "\nopen failed.");
  30. for (int m = 1; m < csvParser2.max_cell_y; m++)
  31. {
  32. if (csvParser2.IsCellToExistData(0, m))
  33. {
  34. int cellAsInteger2 = csvParser2.GetCellAsInteger(0, m);
  35. if (!enabled_id_list.Contains(cellAsInteger2))
  36. {
  37. enabled_id_list.Add(cellAsInteger2);
  38. }
  39. }
  40. }
  41. }
  42. }
  43. };
  44. action("dance_enabled_list");
  45. for (int i = 0; i < GameUty.PathList.Count; i++)
  46. {
  47. action("dance_enabled_list_" + GameUty.PathList[i]);
  48. }
  49. DanceSelect.dance_data_list_ = new List<DanceData>();
  50. using (AFileBase afileBase = GameUty.FileSystem.FileOpen("dance_setting.nei"))
  51. {
  52. using (CsvParser csvParser = new CsvParser())
  53. {
  54. bool condition = csvParser.Open(afileBase);
  55. NDebug.Assert(condition, "file open error[dance_setting.nei]");
  56. for (int j = 1; j < csvParser.max_cell_y; j++)
  57. {
  58. if (csvParser.IsCellToExistData(0, j))
  59. {
  60. int num = 0;
  61. int cellAsInteger = csvParser.GetCellAsInteger(num++, j);
  62. if (enabled_id_list.Contains(cellAsInteger))
  63. {
  64. DanceData danceData = new DanceData();
  65. danceData.ID = cellAsInteger;
  66. danceData.title = csvParser.GetCellAsString(num++, j);
  67. danceData.title = danceData.title.Replace("《改行》", "\n");
  68. danceData.title_font_size = csvParser.GetCellAsInteger(num++, j);
  69. danceData.title_offset_y = csvParser.GetCellAsInteger(num++, j);
  70. danceData.select_chara_num = csvParser.GetCellAsInteger(num++, j);
  71. danceData.scene_name = csvParser.GetCellAsString(num++, j);
  72. danceData.commentary_text = csvParser.GetCellAsString(num++, j);
  73. danceData.commentary_text = danceData.commentary_text.Replace("《改行》", "\n");
  74. danceData.sample_image_name = csvParser.GetCellAsString(num++, j);
  75. danceData.bgm_file_name = csvParser.GetCellAsString(num++, j);
  76. danceData.preset_name = new List<string>();
  77. for (int k = 0; k < danceData.select_chara_num; k++)
  78. {
  79. danceData.preset_name.Add(string.Empty);
  80. }
  81. string cellAsString = csvParser.GetCellAsString(num++, j);
  82. if (!string.IsNullOrEmpty(cellAsString))
  83. {
  84. string[] array = cellAsString.Split(new char[]
  85. {
  86. ','
  87. });
  88. NDebug.Assert(array.Length <= danceData.preset_name.Count, "ダンス[" + danceData.title + "]のプリセット人数設定が\n多すぎます");
  89. int num2 = 0;
  90. while (num2 < danceData.preset_name.Count && num2 < array.Length)
  91. {
  92. danceData.preset_name[num2] = array[num2].Trim();
  93. num2++;
  94. }
  95. }
  96. string cellAsString2 = csvParser.GetCellAsString(num++, j);
  97. if (!string.IsNullOrEmpty(cellAsString2))
  98. {
  99. danceData.scenario_progress = int.Parse(cellAsString2);
  100. }
  101. string cellAsString3 = csvParser.GetCellAsString(num++, j);
  102. if (!string.IsNullOrEmpty(cellAsString3))
  103. {
  104. danceData.Term = (DanceData.DanceTerm)Enum.Parse(typeof(DanceData.DanceTerm), cellAsString3);
  105. }
  106. danceData.AppealCutinName = csvParser.GetCellAsString(num++, j);
  107. danceData.ReversalCutinName = csvParser.GetCellAsString(num++, j);
  108. danceData.danceshow_scene = csvParser.GetCellAsString(num++, j);
  109. danceData.danceshow_image = csvParser.GetCellAsString(num++, j);
  110. string cellAsString4 = csvParser.GetCellAsString(num++, j);
  111. if (!string.IsNullOrEmpty(cellAsString4))
  112. {
  113. foreach (string text in cellAsString4.Split(new char[]
  114. {
  115. ','
  116. }))
  117. {
  118. string s = text.Split(new char[]
  119. {
  120. '='
  121. })[1].Split(new char[]
  122. {
  123. '_'
  124. })[1];
  125. danceData.maid_order.Add(int.Parse(s) - 1);
  126. }
  127. }
  128. danceData.bgType = ((!(csvParser.GetCellAsString(num++, j) == "ライブステージ")) ? DanceData.BgType.Theater : DanceData.BgType.LiveStage);
  129. danceData.InitialPlayable = csvParser.IsCellToExistData(num++, j);
  130. danceData.IsPlayable = danceData.InitialPlayable;
  131. DanceSelect.dance_data_list_.Add(danceData);
  132. }
  133. }
  134. }
  135. }
  136. }
  137. }
  138. public override void Awake()
  139. {
  140. DanceSelect.CreateDanceData();
  141. base.Awake();
  142. if (GameMain.Instance.ScriptMgr.adv_kag.tag_backup.ContainsKey("only_release"))
  143. {
  144. this.m_ExistOnlyRelease = true;
  145. this.m_OnlyRelease = int.Parse(GameMain.Instance.ScriptMgr.adv_kag.tag_backup["only_release"]);
  146. DanceSelect.m_SelectedDance.Clear();
  147. }
  148. this.m_ForceTheater = GameMain.Instance.ScriptMgr.adv_kag.tag_backup.ContainsKey("force_theater");
  149. this.m_ReleaseButton.gameObject.SetActive(false);
  150. EventDelegate.Add(this.OkButton.onClick, new EventDelegate.Callback(this.OnClickOkButton));
  151. EventDelegate.Add(this.CancelButton.onClick, new EventDelegate.Callback(this.OnClickCancelButton));
  152. GameObject gameObject = this.OkButton.transform.parent.gameObject;
  153. this.m_MainButtonPanel = gameObject.GetComponent<UIPanel>();
  154. EventDelegate.Add(this.m_SubOkButton.onClick, new EventDelegate.Callback(this.OnClickOkButton));
  155. EventDelegate.Add(this.m_SubCancelButton.onClick, new EventDelegate.Callback(this.OnClickCancelButton));
  156. GameObject gameObject2 = this.m_SubOkButton.transform.parent.gameObject;
  157. EventDelegate.Add(this.m_BackButton.onClick, new EventDelegate.Callback(this.OnClickCancelButton));
  158. EventDelegate.Add(this.m_ReleaseButton.onClick, new EventDelegate.Callback(this.SwitchAllRelease));
  159. this.m_DanceShowPanel.SetActive(false);
  160. this.m_DanceModePanel.gameObject.SetActive(false);
  161. switch (RhythmAction_Mgr.NowDance)
  162. {
  163. case RhythmAction_Mgr.DanceType.Free:
  164. case RhythmAction_Mgr.DanceType.View:
  165. case RhythmAction_Mgr.DanceType.Touch:
  166. case RhythmAction_Mgr.DanceType.VrDance:
  167. {
  168. gameObject2.SetActive(false);
  169. this.CancelButton.gameObject.SetActive(false);
  170. Transform transform = this.m_DanceModePanel.transform.Find("ButtonGroup");
  171. bool flag = GameMain.Instance.VRMode && !GameMain.Instance.OvrMgr.OvrCamera.IsNoHandController;
  172. if (flag)
  173. {
  174. transform.localPosition = Vector3.zero;
  175. }
  176. IEnumerator enumerator = transform.GetEnumerator();
  177. try
  178. {
  179. while (enumerator.MoveNext())
  180. {
  181. object obj = enumerator.Current;
  182. Transform transform2 = (Transform)obj;
  183. if (!flag && transform2.name == "TouchMode")
  184. {
  185. transform2.gameObject.SetActive(false);
  186. }
  187. else
  188. {
  189. UIButton component = transform2.GetComponent<UIButton>();
  190. UILabel component2 = transform2.Find("Label").GetComponent<UILabel>();
  191. this.m_DanceModeButtonGroup.Add(component, component2);
  192. EventDelegate.Add(component.onClick, new EventDelegate.Callback(this.SetDanceMode));
  193. }
  194. }
  195. }
  196. finally
  197. {
  198. IDisposable disposable;
  199. if ((disposable = (enumerator as IDisposable)) != null)
  200. {
  201. disposable.Dispose();
  202. }
  203. }
  204. break;
  205. }
  206. case RhythmAction_Mgr.DanceType.Challenge:
  207. gameObject.transform.parent = this.CharaSelectPanel.ParentPanel.gameObject.transform;
  208. gameObject2.transform.parent = this.MusicSelectPanel.ParentPanel.gameObject.transform;
  209. UTY.GetChildObject(this.MusicSelectPanel.ParentPanel.gameObject, "SelectPanel", false).SetActive(false);
  210. this.m_DanceShowPanel.SetActive(true);
  211. break;
  212. case RhythmAction_Mgr.DanceType.VS:
  213. case RhythmAction_Mgr.DanceType.VS_Skip:
  214. gameObject.SetActive(false);
  215. this.m_SubCancelButton.gameObject.SetActive(false);
  216. break;
  217. }
  218. this.select_panelset_array_ = new DanceSelect.SelectPanelSet[]
  219. {
  220. this.CharaSelectPanel,
  221. this.MusicSelectPanel
  222. };
  223. for (int i = 0; i < this.select_panelset_array_.Length; i++)
  224. {
  225. NDebug.AssertNull(this.select_panelset_array_[i].ContentsPanel != null && this.select_panelset_array_[i].ParentPanel != null);
  226. }
  227. this.chara_select_mgr_ = this.CharaSelectPanel.ParentPanel.gameObject.GetComponentInChildren<CharacterSelectManager>();
  228. NDebug.AssertNull(this.chara_select_mgr_ != null);
  229. }
  230. private void CreateMusicPanel()
  231. {
  232. if (!RhythmAction_Mgr.IsVSDance || RhythmAction_Mgr.NowState != RhythmAction_Mgr.DanceState.Dance_Second)
  233. {
  234. DanceSelect.m_SelectedDance.Clear();
  235. }
  236. UIWFTabPanel uiwftabPanel = this.m_MusicUnitPanel.GetComponent<UIWFTabPanel>();
  237. if (!uiwftabPanel)
  238. {
  239. uiwftabPanel = this.m_MusicUnitPanel.AddComponent<UIWFTabPanel>();
  240. }
  241. GameObject gameObject = this.MusicSelectPanel.ContentsPanel.GetComponentInChildren<UIGrid>().gameObject;
  242. for (int i = 0; i < gameObject.transform.childCount; i++)
  243. {
  244. Transform child = gameObject.transform.GetChild(i);
  245. UnityEngine.Object.Destroy(child.gameObject);
  246. }
  247. gameObject.transform.DetachChildren();
  248. int musicReleaseFlag = RhythmAction_Mgr.MusicReleaseFlag;
  249. this.m_SecondDanceData = null;
  250. UIWFTabButton uiwftabButton = null;
  251. int j = 0;
  252. while (j < DanceSelect.dance_data_list_.Count)
  253. {
  254. if (RhythmAction_Mgr.NowDance == RhythmAction_Mgr.DanceType.Challenge)
  255. {
  256. break;
  257. }
  258. if (RhythmAction_Mgr.IsVSDance)
  259. {
  260. if (this.m_SecondDanceData == null && RhythmAction_Mgr.NowState == RhythmAction_Mgr.DanceState.Dance_First && VsDanceDataMgr.Instance.CurrentSetting.Music2ndID == DanceSelect.dance_data_list_[j].ID)
  261. {
  262. this.m_SecondDanceData = DanceSelect.dance_data_list_[j];
  263. }
  264. if (DanceSelect.dance_data_list_[j].Term != DanceData.DanceTerm.VS外 && !((!this.m_ForceTheater) ? (DanceSelect.dance_data_list_[j].bgType == DanceData.BgType.Theater) : (DanceSelect.dance_data_list_[j].bgType != DanceData.BgType.Theater)))
  265. {
  266. if (!this.m_ExistOnlyRelease || DanceSelect.dance_data_list_[j].scenario_progress == this.m_OnlyRelease)
  267. {
  268. if (this.m_ExistOnlyRelease || DanceSelect.dance_data_list_[j].IsPlayable)
  269. {
  270. goto IL_1EF;
  271. }
  272. }
  273. }
  274. }
  275. else if (this.m_AllRelease || DanceSelect.dance_data_list_[j].IsPlayable)
  276. {
  277. goto IL_1EF;
  278. }
  279. IL_339:
  280. j++;
  281. continue;
  282. IL_1EF:
  283. GameObject gameObject2 = Utility.CreatePrefab(gameObject, "SceneDanceSelect/Prefab/SongPlate", true);
  284. UTY.GetChildObject(gameObject2, "title", false).GetComponent<UILabel>().fontSize = DanceSelect.dance_data_list_[j].title_font_size;
  285. UTY.GetChildObject(gameObject2, "title", false).transform.localPosition = new Vector3(0f, (float)DanceSelect.dance_data_list_[j].title_offset_y, 0f);
  286. UTY.GetChildObject(gameObject2, "title", false).GetComponent<UILabel>().text = DanceSelect.dance_data_list_[j].title;
  287. gameObject2.name = DanceSelect.dance_data_list_[j].title;
  288. UIWFTabButton componentInChildren = gameObject2.GetComponentInChildren<UIWFTabButton>();
  289. if (!uiwftabButton)
  290. {
  291. uiwftabButton = componentInChildren;
  292. }
  293. if (RhythmAction_Mgr.IsVSDance)
  294. {
  295. if (DanceSelect.dance_data_list_[j].select_chara_num > GameMain.Instance.CharacterMgr.GetStockMaidCount())
  296. {
  297. componentInChildren.isEnabled = false;
  298. this.m_NotSelectDance.Add(componentInChildren);
  299. }
  300. this.m_SongPlatelUI.Add(componentInChildren);
  301. EventDelegate.Add(componentInChildren.onSelect, new EventDelegate.Callback(this.OnSelectSong));
  302. }
  303. EventDelegate.Add(componentInChildren.onSelect, new EventDelegate.Callback(this.OnSelectSong));
  304. goto IL_339;
  305. }
  306. gameObject.GetComponent<UIGrid>().repositionNow = true;
  307. this.MusicSelectPanel.ContentsPanel.GetComponent<UIScrollView>().ResetPosition();
  308. uiwftabPanel.UpdateChildren();
  309. if (RhythmAction_Mgr.IsVSDance && this.m_NotSelectDance.Count > 0)
  310. {
  311. foreach (UIWFTabButton uiwftabButton2 in this.m_SongPlatelUI)
  312. {
  313. EventDelegate.Add(uiwftabButton2.onClick, new EventDelegate.Callback(this.PlateDisable));
  314. }
  315. }
  316. if (this.music_info_ != null)
  317. {
  318. this.music_info_.Release();
  319. }
  320. GameObject childObject = UTY.GetChildObject(this.MusicSelectPanel.ParentPanel.gameObject, "MujicInfo", false);
  321. if (RhythmAction_Mgr.NowDance == RhythmAction_Mgr.DanceType.Challenge)
  322. {
  323. childObject.SetActive(false);
  324. this.music_info_ = new DanceSelectMusicInfo(this.m_DanceShowPanel);
  325. }
  326. else
  327. {
  328. this.music_info_ = new DanceSelectMusicInfo(childObject);
  329. }
  330. GameObject infoUI = this.music_info_.InfoUI;
  331. if (RhythmAction_Mgr.IsVSDance)
  332. {
  333. infoUI.SetActive(false);
  334. }
  335. if (uiwftabButton && DanceSelect.m_SelectedDance.Count == 0 && this.IsFreeDance())
  336. {
  337. uiwftabPanel.Select(uiwftabButton);
  338. }
  339. }
  340. private void PlateDisable()
  341. {
  342. foreach (UIWFSelectButton uiwfselectButton in this.m_NotSelectDance)
  343. {
  344. uiwfselectButton.isEnabled = false;
  345. }
  346. }
  347. private void SwitchAllRelease()
  348. {
  349. this.m_AllRelease = !this.m_AllRelease;
  350. this.m_ReleaseButton.defaultColor = (this.m_ReleaseButton.hover = ((!this.m_AllRelease) ? this.m_ReleaseOffCol : this.m_ReleaseOnCol));
  351. this.CreateMusicPanel();
  352. }
  353. public void Start()
  354. {
  355. this.CreateMusicPanel();
  356. this.Init();
  357. this.m_ReleaseButton.defaultColor = (this.m_ReleaseButton.hover = ((!this.m_AllRelease) ? this.m_ReleaseOffCol : this.m_ReleaseOnCol));
  358. if (!this.IsFreeDance())
  359. {
  360. this.m_SettingObj.SetUIMode(string.Empty);
  361. }
  362. this.m_WarningText.SetActive(false);
  363. if (RhythmAction_Mgr.NowDance == RhythmAction_Mgr.DanceType.Challenge)
  364. {
  365. if (DanceSelect.ChallengeDay < GameMain.Instance.CharacterMgr.status.days)
  366. {
  367. List<DanceData> list = (from e in DanceSelect.dance_data_list_
  368. where e.bgType == DanceData.BgType.Theater
  369. select e).ToList<DanceData>();
  370. if (!this.m_AllRelease)
  371. {
  372. list = (from e in list
  373. where e.IsPlayable
  374. select e).ToList<DanceData>();
  375. }
  376. int index = UnityEngine.Random.Range(0, list.Count);
  377. string title = list[index].title;
  378. for (int i = 0; i < list.Count; i++)
  379. {
  380. if (list[i].title == title)
  381. {
  382. DanceSelect.m_SelectedDance.Clear();
  383. DanceSelect.m_SelectedDance.Add(list[i]);
  384. DanceSelect.m_ChallengeDanceData = list[i];
  385. break;
  386. }
  387. }
  388. DanceSelect.ChallengeDay = GameMain.Instance.CharacterMgr.status.days;
  389. }
  390. else
  391. {
  392. DanceSelect.m_SelectedDance.Clear();
  393. DanceSelect.m_SelectedDance.Add(DanceSelect.m_ChallengeDanceData);
  394. }
  395. this.music_info_.SetDanceData(DanceSelect.m_SelectedDance.First<DanceData>());
  396. this.m_SubOkButton.isEnabled = (DanceSelect.m_ChallengeDanceData.select_chara_num <= GameMain.Instance.CharacterMgr.GetStockMaidCount());
  397. this.m_WarningText.SetActive(!this.m_SubOkButton.isEnabled);
  398. }
  399. }
  400. protected override void OnCall()
  401. {
  402. uGUITutorialPanel.OpenTutorial("SceneDanceSelect", null, false);
  403. GameMain.Instance.SysShortcut.strSceneHelpName = "SceneDanceSelect";
  404. CharacterMgr characterMgr = GameMain.Instance.CharacterMgr;
  405. characterMgr.DeactivateCharaAll();
  406. for (int i = 0; i < characterMgr.GetMaidCount(); i++)
  407. {
  408. if (characterMgr.GetMaid(i) != null)
  409. {
  410. characterMgr.Deactivate(i, false);
  411. }
  412. }
  413. GameMain.Instance.BgMgr.ChangeBg(this.m_BGName);
  414. GameMain.Instance.MainCamera.SetTargetPos(this.m_CamPos, true);
  415. GameMain.Instance.MainCamera.SetDistance(this.m_CamDistance, true);
  416. GameMain.Instance.MainCamera.SetAroundAngle(this.m_CamAngle, true);
  417. GameMain.Instance.SoundMgr.PlayBGM(this.m_BGM, 0.5f, true);
  418. this.Init();
  419. DanceData danceData = DanceSelect.dance_data_list_.SingleOrDefault((DanceData e) => e.title == "Night Magic Fire");
  420. DanceSelect.m_SelectedDance.Clear();
  421. DanceSelect.m_SelectedDance.Add(danceData);
  422. DanceMain.SelectDanceData = danceData;
  423. this.m_DanceModePanel.alpha = 0f;
  424. this.CharaSelectPanel.ParentPanel.alpha = 1f;
  425. this.CallCharaSelect();
  426. this.m_SettingObj.SetUIMode("鑑賞モード");
  427. if (RhythmAction_Mgr.IsVSDance && DanceSelect.m_SelectedDance.Count == 0)
  428. {
  429. UIWFTabPanel componentInChildren = this.MusicSelectPanel.ContentsPanel.GetComponentInChildren<UIWFTabPanel>();
  430. componentInChildren.Select(this.MusicSelectPanel.ContentsPanel.GetComponentInChildren<UIGrid>().GetChild(0).GetComponentInChildren<UIWFTabButton>());
  431. }
  432. if (GameMain.Instance.VRMode)
  433. {
  434. UnityEngine.Object original = Resources.Load("OVR/DanceOVRDialog");
  435. GameObject gameObject = UnityEngine.Object.Instantiate(original) as GameObject;
  436. GameObject gameObject2 = GameObject.Find("/UI Root");
  437. gameObject.transform.SetParent(gameObject2.transform, false);
  438. gameObject.GetComponent<UIPanel>().depth = 250;
  439. this.ovr_dance_cam_dlg_ = gameObject.GetComponent<FFNameDialog>();
  440. this.ovr_dance_cam_dlg_.Init();
  441. gameObject.SetActive(false);
  442. }
  443. }
  444. public void OnDestroy()
  445. {
  446. if (this.music_info_ != null)
  447. {
  448. this.music_info_.Release();
  449. }
  450. }
  451. public override void Update()
  452. {
  453. base.Update();
  454. if (GameMain.Instance.MainCamera.IsFadeProc() || GameMain.Instance.MainCamera.IsFadeOut())
  455. {
  456. return;
  457. }
  458. if (this.m_ReleaseButton.gameObject.activeSelf)
  459. {
  460. return;
  461. }
  462. foreach (KeyCode key in this.m_ReleseShowKey)
  463. {
  464. if (!Input.GetKey(key))
  465. {
  466. return;
  467. }
  468. }
  469. this.m_ReleaseButton.gameObject.SetActive(true);
  470. }
  471. private void Init()
  472. {
  473. this.m_DanceModePanel.alpha = 0f;
  474. for (int i = 0; i < this.select_panelset_array_.Length; i++)
  475. {
  476. this.select_panelset_array_[i].ParentPanel.gameObject.SetActive(true);
  477. this.select_panelset_array_[i].ParentPanel.alpha = 0f;
  478. }
  479. DanceMain.KaraokeMode = false;
  480. UIRect danceModePanel = this.m_DanceModePanel;
  481. float num = 0f;
  482. this.MusicSelectPanel.ParentPanel.alpha = num;
  483. num = num;
  484. this.CharaSelectPanel.ParentPanel.alpha = num;
  485. danceModePanel.alpha = num;
  486. if (this.IsFreeDance())
  487. {
  488. this.m_DanceModePanel.alpha = 1f;
  489. }
  490. else if (RhythmAction_Mgr.IsVSDance && DanceSelect.m_SelectedDance.Count > 0)
  491. {
  492. this.CharaSelectPanel.ParentPanel.alpha = 1f;
  493. }
  494. else
  495. {
  496. this.MusicSelectPanel.ParentPanel.alpha = 1f;
  497. }
  498. }
  499. public void SetCancelLabel(string cancel_call_label)
  500. {
  501. this.cancel_call_label_ = cancel_call_label;
  502. }
  503. private void CallMusicSelect()
  504. {
  505. string normalSprite = "cm3d2_common_nextbuttom";
  506. if (this.IsFreeDance())
  507. {
  508. this.OkButton.normalSprite = normalSprite;
  509. this.OkButton.isEnabled = true;
  510. }
  511. else
  512. {
  513. this.m_SubOkButton.normalSprite = normalSprite;
  514. }
  515. this.status_ = DanceSelect.Status.MusicSelect;
  516. if (this.MusicSelectPanel.ParentPanel.alpha != 1f)
  517. {
  518. iTween.ValueTo(base.gameObject, iTween.Hash(new object[]
  519. {
  520. "easetype",
  521. iTween.EaseType.easeOutQuad,
  522. "from",
  523. 0f,
  524. "to",
  525. 1f,
  526. "time",
  527. DanceSelect.kFadeTime,
  528. "delay",
  529. 0,
  530. "onUpdate",
  531. "OnUpdateFadeMusicPanel"
  532. }));
  533. if (this.CharaSelectPanel.ParentPanel.alpha != 0f)
  534. {
  535. iTween.ValueTo(base.gameObject, iTween.Hash(new object[]
  536. {
  537. "easetype",
  538. iTween.EaseType.easeOutQuad,
  539. "from",
  540. 1f,
  541. "to",
  542. 0f,
  543. "time",
  544. DanceSelect.kFadeTime,
  545. "delay",
  546. 0,
  547. "onUpdate",
  548. "OnUpdateFadeCharaPanel"
  549. }));
  550. }
  551. else if (this.m_DanceModePanel.alpha != 0f)
  552. {
  553. iTween.ValueTo(base.gameObject, iTween.Hash(new object[]
  554. {
  555. "easetype",
  556. iTween.EaseType.easeOutQuad,
  557. "from",
  558. 1f,
  559. "to",
  560. 0f,
  561. "time",
  562. DanceSelect.kFadeTime,
  563. "delay",
  564. 0,
  565. "onUpdate",
  566. "OnUpdateDanceModePanel"
  567. }));
  568. }
  569. }
  570. }
  571. private void CallCharaSelect()
  572. {
  573. string normalSprite = "cm3d2_common_okbuttom";
  574. if (RhythmAction_Mgr.IsVSDance)
  575. {
  576. this.m_SubOkButton.normalSprite = normalSprite;
  577. }
  578. else
  579. {
  580. this.OkButton.normalSprite = normalSprite;
  581. }
  582. this.status_ = DanceSelect.Status.CaharaSelect;
  583. DanceSelect.m_SelectedMaid.Clear();
  584. if (DanceSelect.m_SelectedDance.Count > 0)
  585. {
  586. int select_chara_num = DanceSelect.m_SelectedDance.First<DanceData>().select_chara_num;
  587. if (RhythmAction_Mgr.IsVSDance && this.m_SecondDanceData != null)
  588. {
  589. DanceSelect.m_SelectedDance.Add(this.m_SecondDanceData);
  590. }
  591. if (1 < select_chara_num)
  592. {
  593. if (RhythmAction_Mgr.IsVSDance)
  594. {
  595. this.m_SubOkButton.isEnabled = false;
  596. }
  597. else
  598. {
  599. this.OkButton.isEnabled = false;
  600. }
  601. CharacterSelectManager.CallBackOnMultiSelect callBackOnMultiSelect = delegate(Maid[] maid_array)
  602. {
  603. DanceSelect.m_SelectedMaid.Clear();
  604. for (int j = 0; j < maid_array.Length; j++)
  605. {
  606. DanceSelect.m_SelectedMaid.Add(maid_array[j]);
  607. }
  608. if (RhythmAction_Mgr.IsVSDance)
  609. {
  610. this.m_SubOkButton.isEnabled = DanceSelect.m_SelectedMaid.All((Maid e) => e != null);
  611. }
  612. else if (RhythmAction_Mgr.NowDance == RhythmAction_Mgr.DanceType.Challenge)
  613. {
  614. this.OkButton.isEnabled = DanceSelect.m_SelectedMaid.All((Maid e) => e != null);
  615. }
  616. else
  617. {
  618. this.OkButton.isEnabled = DanceSelect.m_SelectedMaid.Any((Maid e) => e != null);
  619. }
  620. };
  621. this.chara_select_mgr_.SetCallBackOnMultiSelect(callBackOnMultiSelect);
  622. this.chara_select_mgr_.Create(CharacterSelectManager.Type.Multiple, select_chara_num, true);
  623. }
  624. else
  625. {
  626. CharacterSelectManager.CallBackOnSelect callBackCallBackOnSelect = delegate(Maid select_maid)
  627. {
  628. DanceSelect.m_SelectedMaid.Clear();
  629. DanceSelect.m_SelectedMaid.Add(select_maid);
  630. };
  631. this.chara_select_mgr_.SetCallBackCallBackOnSelect(callBackCallBackOnSelect);
  632. this.chara_select_mgr_.Create(CharacterSelectManager.Type.Select, 3, true);
  633. }
  634. if (RhythmAction_Mgr.IsVSDance)
  635. {
  636. for (int i = 0; i < GameMain.Instance.CharacterMgr.GetStockMaidCount(); i++)
  637. {
  638. Maid stockMaid = GameMain.Instance.CharacterMgr.GetStockMaid(i);
  639. if (!stockMaid.status.mainChara || stockMaid.status.heroineType != HeroineType.Original || !ScenarioData.IsMainPersonal(stockMaid))
  640. {
  641. this.chara_select_mgr_.RemoveMaidPlate(stockMaid);
  642. }
  643. }
  644. }
  645. }
  646. if (this.CharaSelectPanel.ParentPanel.alpha != 1f)
  647. {
  648. iTween.ValueTo(base.gameObject, iTween.Hash(new object[]
  649. {
  650. "easetype",
  651. iTween.EaseType.easeOutQuad,
  652. "from",
  653. 0f,
  654. "to",
  655. 1f,
  656. "time",
  657. DanceSelect.kFadeTime,
  658. "delay",
  659. 0,
  660. "onUpdate",
  661. "OnUpdateFadeCharaPanel"
  662. }));
  663. iTween.ValueTo(base.gameObject, iTween.Hash(new object[]
  664. {
  665. "easetype",
  666. iTween.EaseType.easeOutQuad,
  667. "from",
  668. 1f,
  669. "to",
  670. 0f,
  671. "time",
  672. DanceSelect.kFadeTime,
  673. "delay",
  674. 0,
  675. "onUpdate",
  676. "OnUpdateFadeMusicPanel"
  677. }));
  678. }
  679. }
  680. private void CallDanceModeSelect()
  681. {
  682. this.status_ = DanceSelect.Status.DanceModeSelect;
  683. this.m_MainButtonFade = true;
  684. if (this.m_DanceModePanel.alpha != 1f)
  685. {
  686. iTween.ValueTo(base.gameObject, iTween.Hash(new object[]
  687. {
  688. "easetype",
  689. iTween.EaseType.easeOutQuad,
  690. "from",
  691. 0f,
  692. "to",
  693. 1f,
  694. "time",
  695. DanceSelect.kFadeTime,
  696. "delay",
  697. 0,
  698. "onUpdate",
  699. "OnUpdateDanceModePanel"
  700. }));
  701. iTween.ValueTo(base.gameObject, iTween.Hash(new object[]
  702. {
  703. "easetype",
  704. iTween.EaseType.easeOutQuad,
  705. "from",
  706. 1f,
  707. "to",
  708. 0f,
  709. "time",
  710. DanceSelect.kFadeTime,
  711. "delay",
  712. 0,
  713. "onUpdate",
  714. "OnUpdateFadeMusicPanel"
  715. }));
  716. }
  717. }
  718. private void OnUpdateFadeMusicPanel(float val)
  719. {
  720. this.MusicSelectPanel.ParentPanel.alpha = val;
  721. if (this.m_MainButtonFade)
  722. {
  723. this.m_MainButtonPanel.alpha = val;
  724. }
  725. }
  726. private void OnUpdateFadeCharaPanel(float val)
  727. {
  728. this.CharaSelectPanel.ParentPanel.alpha = val;
  729. }
  730. private void OnUpdateDanceModePanel(float val)
  731. {
  732. this.m_DanceModePanel.alpha = val;
  733. }
  734. private void OnSelectSong()
  735. {
  736. if (RhythmAction_Mgr.NowDance == RhythmAction_Mgr.DanceType.Challenge)
  737. {
  738. return;
  739. }
  740. string name = UIWFSelectButton.current.gameObject.transform.parent.name;
  741. if (!UIWFSelectButton.current.isSelected)
  742. {
  743. return;
  744. }
  745. for (int i = 0; i < DanceSelect.dance_data_list_.Count; i++)
  746. {
  747. if (DanceSelect.dance_data_list_[i].title == name)
  748. {
  749. DanceSelect.m_SelectedDance.Clear();
  750. DanceSelect.m_SelectedDance.Add(DanceSelect.dance_data_list_[i]);
  751. this.music_info_.SetDanceData(DanceSelect.m_SelectedDance.First<DanceData>());
  752. if (!this.music_info_.InfoUI.activeSelf)
  753. {
  754. this.music_info_.InfoUI.SetActive(true);
  755. }
  756. break;
  757. }
  758. }
  759. }
  760. private void OnClickOkButton()
  761. {
  762. if (DanceSelect.m_SelectedDance == null)
  763. {
  764. return;
  765. }
  766. if (this.status_ == DanceSelect.Status.MusicSelect)
  767. {
  768. if (this.MusicSelectPanel.ParentPanel.alpha != 1f)
  769. {
  770. return;
  771. }
  772. this.m_MainButtonFade = false;
  773. this.CallCharaSelect();
  774. }
  775. else if (this.status_ == DanceSelect.Status.CaharaSelect)
  776. {
  777. if (DanceSelect.m_SelectedDance.First<DanceData>().select_chara_num == 1 && DanceSelect.m_SelectedMaid.Count <= 0)
  778. {
  779. return;
  780. }
  781. if (this.CharaSelectPanel.ParentPanel.alpha != 1f)
  782. {
  783. return;
  784. }
  785. DanceMain.SelectDanceData = DanceSelect.m_SelectedDance.First<DanceData>();
  786. string str = DanceSelect.m_SelectedDance.First<DanceData>().scene_name;
  787. if (RhythmAction_Mgr.NowDance == RhythmAction_Mgr.DanceType.Challenge && !string.IsNullOrEmpty(DanceSelect.m_SelectedDance.First<DanceData>().danceshow_scene))
  788. {
  789. str = DanceSelect.m_SelectedDance.First<DanceData>().danceshow_scene;
  790. }
  791. GameMain.Instance.ScriptMgr.EvalScript("tf['dance_scene_name'] = '" + str + "';");
  792. foreach (Maid maid in DanceSelect.m_SelectedMaid)
  793. {
  794. if (maid)
  795. {
  796. DanceSelect.SelectTopMaid = maid;
  797. break;
  798. }
  799. }
  800. this.m_SettingObj.DisSelectable();
  801. if (!GameMain.Instance.VRMode)
  802. {
  803. this.Finish();
  804. }
  805. else if (RhythmAction_Mgr.NowDance == RhythmAction_Mgr.DanceType.Touch)
  806. {
  807. this.OnOvrCamFree();
  808. }
  809. else
  810. {
  811. this.ovr_dance_cam_dlg_.Show("カメラのタイプを選んで下さい。", "自由カメラ", new FFNameDialog.OnClick(this.OnOvrCamFree), "移動カメラ", new FFNameDialog.OnClick(this.OnOvrCamMove));
  812. }
  813. }
  814. }
  815. private void OnClickCancelButton()
  816. {
  817. switch (this.status_)
  818. {
  819. case DanceSelect.Status.MusicSelect:
  820. if (this.MusicSelectPanel.ParentPanel.alpha != 1f)
  821. {
  822. return;
  823. }
  824. if (this.IsFreeDance())
  825. {
  826. this.m_MainButtonFade = true;
  827. this.CallDanceModeSelect();
  828. }
  829. else if (!string.IsNullOrEmpty(this.cancel_call_label_))
  830. {
  831. this.CancelFinish();
  832. }
  833. break;
  834. case DanceSelect.Status.CaharaSelect:
  835. if (this.CharaSelectPanel.ParentPanel.alpha != 1f)
  836. {
  837. return;
  838. }
  839. this.m_MainButtonFade = false;
  840. this.CallMusicSelect();
  841. break;
  842. case DanceSelect.Status.DanceModeSelect:
  843. if (this.m_DanceModePanel.alpha != 1f)
  844. {
  845. return;
  846. }
  847. if (!string.IsNullOrEmpty(this.cancel_call_label_))
  848. {
  849. this.CancelFinish();
  850. }
  851. break;
  852. }
  853. }
  854. private void CancelFinish()
  855. {
  856. DanceSelectManager danceSelectManager = base.parent_mgr as DanceSelectManager;
  857. NDebug.AssertNull(danceSelectManager != null);
  858. danceSelectManager.move_screen.SetNextLabel(this.cancel_call_label_);
  859. DanceSelect.m_SelectedDance.Clear();
  860. this.Finish();
  861. }
  862. private void SetDanceMode()
  863. {
  864. if (this.m_DanceModePanel.alpha != 1f)
  865. {
  866. return;
  867. }
  868. RhythmAction_Mgr.DanceType nowDance = RhythmAction_Mgr.NowDance;
  869. if (this.m_DanceModeButtonGroup[UIButton.current].transform.parent.name == "GameMode")
  870. {
  871. RhythmAction_Mgr.SetDanceType(RhythmAction_Mgr.DanceType.Free);
  872. }
  873. else if (this.m_DanceModeButtonGroup[UIButton.current].transform.parent.name == "ViewMode")
  874. {
  875. RhythmAction_Mgr.SetDanceType(RhythmAction_Mgr.DanceType.View);
  876. }
  877. else if (this.m_DanceModeButtonGroup[UIButton.current].transform.parent.name == "TouchMode")
  878. {
  879. RhythmAction_Mgr.SetDanceType(RhythmAction_Mgr.DanceType.Touch);
  880. }
  881. this.m_SettingObj.SetUIMode(this.m_DanceModeButtonGroup[UIButton.current].text);
  882. this.CallMusicSelect();
  883. }
  884. private void OnOvrCamFree()
  885. {
  886. GameMain.Instance.CMSystem.SetTmpGenericFlag("ダンスOVRカメラタイプ", 0);
  887. this.Finish();
  888. }
  889. private void OnOvrCamMove()
  890. {
  891. GameMain.Instance.CMSystem.SetTmpGenericFlag("ダンスOVRカメラタイプ", 1);
  892. this.Finish();
  893. }
  894. private bool IsFreeDance()
  895. {
  896. bool flag = RhythmAction_Mgr.NowDance == RhythmAction_Mgr.DanceType.Free;
  897. flag |= (RhythmAction_Mgr.NowDance == RhythmAction_Mgr.DanceType.View);
  898. return flag | RhythmAction_Mgr.NowDance == RhythmAction_Mgr.DanceType.Touch;
  899. }
  900. public override bool Finish()
  901. {
  902. bool flag = base.Finish();
  903. if (flag && 0 < DanceSelect.m_SelectedMaid.Count && RhythmAction_Mgr.IsVSDance)
  904. {
  905. GameMain.Instance.SoundMgr.StopBGM(1.5f);
  906. }
  907. return flag;
  908. }
  909. protected override void OnFinish()
  910. {
  911. if (DanceSelect.m_SelectedDance.Count > 0)
  912. {
  913. DanceSelect.SelectMaidActive(DanceSelect.m_SelectedDance.First<DanceData>());
  914. }
  915. base.parent_mgr.CallScreen("Move");
  916. GameMain.Instance.LoadIcon.NextLoadIcontImmediatelyDisplay();
  917. }
  918. public static void BenchMarkInit()
  919. {
  920. DanceSelect.SelectTopMaid = null;
  921. DanceSelect.m_SelectedDance.Clear();
  922. DanceSelect.m_SelectedMaid.Clear();
  923. DanceSelect.CreateDanceData();
  924. DanceData danceData = DanceSelect.dance_data_list_.SingleOrDefault((DanceData e) => e.title == "Night Magic Fire");
  925. NDebug.Assert(danceData != null, "ダンス曲「Night Magic Fire」が存在してません");
  926. DanceMain.SelectDanceData = danceData;
  927. GameMain.Instance.ScriptMgr.EvalScript("tf['dance_scene_name'] = '" + danceData.scene_name + "';");
  928. }
  929. public static void TrialVsDanceInit()
  930. {
  931. }
  932. public static void SelectMaidActive(DanceData set_dance)
  933. {
  934. if (set_dance == null)
  935. {
  936. return;
  937. }
  938. CharacterMgr characterMgr = GameMain.Instance.CharacterMgr;
  939. characterMgr.DeactivateCharaAll();
  940. GameMain.Instance.CMSystem.SetTmpGenericFlag("ダンス設定人数", 0);
  941. if (0 < DanceSelect.m_SelectedMaid.Count)
  942. {
  943. int num = 0;
  944. for (int i = 0; i < set_dance.select_chara_num; i++)
  945. {
  946. if (i >= DanceSelect.m_SelectedMaid.Count)
  947. {
  948. break;
  949. }
  950. if (DanceSelect.m_SelectedMaid[i])
  951. {
  952. characterMgr.SetActiveMaid(DanceSelect.m_SelectedMaid[i], i);
  953. num++;
  954. }
  955. }
  956. GameMain.Instance.CMSystem.SetTmpGenericFlag("ダンス設定人数", num);
  957. }
  958. }
  959. public static void SetNextDance()
  960. {
  961. if (!RhythmAction_Mgr.IsVSDance || DanceMain.KaraokeMode)
  962. {
  963. DanceMain.SelectDanceData = null;
  964. return;
  965. }
  966. if (!DanceBattle_Mgr.Instance.IsWin() && RhythmAction_Mgr.NowDance != RhythmAction_Mgr.DanceType.VS_Skip)
  967. {
  968. DanceMain.SelectDanceData = null;
  969. }
  970. else if (DanceSelect.m_SelectedDance.Count > 0)
  971. {
  972. DanceSelect.m_SelectedDance.RemoveAt(0);
  973. if (DanceSelect.m_SelectedDance.Count > 0)
  974. {
  975. DanceMain.SelectDanceData = DanceSelect.m_SelectedDance.First<DanceData>();
  976. }
  977. }
  978. }
  979. public static List<DanceData> GetDanceDataList()
  980. {
  981. DanceSelect.CreateDanceData();
  982. return DanceSelect.dance_data_list_;
  983. }
  984. public static List<Maid> SelectedMaid
  985. {
  986. get
  987. {
  988. return DanceSelect.m_SelectedMaid;
  989. }
  990. }
  991. public static Maid SelectTopMaid { get; private set; }
  992. private bool m_AllRelease
  993. {
  994. get
  995. {
  996. return DanceSetting.Settings.AllRelease;
  997. }
  998. set
  999. {
  1000. DanceSetting.Settings.AllRelease = value;
  1001. }
  1002. }
  1003. public static float kFadeTime = 0.3f;
  1004. public static List<DanceData> dance_data_list_;
  1005. private const int m_SongSelectMax = 2;
  1006. private const string m_NMFtitle = "Night Magic Fire";
  1007. private const string m_ETYLtitle = "entrance to you";
  1008. private const string m_TutorialName = "SceneDanceSelect";
  1009. public DanceSelect.SelectPanelSet CharaSelectPanel;
  1010. public DanceSelect.SelectPanelSet MusicSelectPanel;
  1011. public UIButton OkButton;
  1012. public UIButton CancelButton;
  1013. private UIPanel m_MainButtonPanel;
  1014. private bool m_MainButtonFade;
  1015. [SerializeField]
  1016. [Header("背景名")]
  1017. private string m_BGName = "LiveStage";
  1018. [SerializeField]
  1019. [Header("BGM名")]
  1020. private string m_BGM = "BGM020.ogg";
  1021. [SerializeField]
  1022. private Vector3 m_CamPos = new Vector3(0.03458221f, 0.4823192f, 0.1880018f);
  1023. [SerializeField]
  1024. private float m_CamDistance = 7.199994f;
  1025. [SerializeField]
  1026. private Vector2 m_CamAngle = new Vector2(180.2993f, 21.18012f);
  1027. [SerializeField]
  1028. [Header("右下のOKボタン")]
  1029. private UIButton m_SubOkButton;
  1030. [SerializeField]
  1031. [Header("右下のCancelボタン")]
  1032. private UIButton m_SubCancelButton;
  1033. [SerializeField]
  1034. [Header("Backボタン")]
  1035. private UIButton m_BackButton;
  1036. [SerializeField]
  1037. [Header("ダンスモード設定パネル")]
  1038. private UIPanel m_DanceModePanel;
  1039. [SerializeField]
  1040. [Header("人数不足警告テキスト")]
  1041. private GameObject m_WarningText;
  1042. private Dictionary<UIButton, UILabel> m_DanceModeButtonGroup = new Dictionary<UIButton, UILabel>();
  1043. [SerializeField]
  1044. [Header("チャレンジ時の楽曲情報UIパネル")]
  1045. private GameObject m_DanceShowPanel;
  1046. [SerializeField]
  1047. [Header("楽曲選択グリッド")]
  1048. private GameObject m_MusicUnitPanel;
  1049. [SerializeField]
  1050. [Header("ダンス設定UI")]
  1051. private DanceSetting m_SettingObj;
  1052. [SerializeField]
  1053. [Header("曲全解放ボタン")]
  1054. private UIButton m_ReleaseButton;
  1055. [SerializeField]
  1056. private Color m_ReleaseOnCol;
  1057. [SerializeField]
  1058. private Color m_ReleaseOffCol;
  1059. [SerializeField]
  1060. [Header("全曲解放ボタンを表示する際のショートカットキー")]
  1061. private List<KeyCode> m_ReleseShowKey = new List<KeyCode>
  1062. {
  1063. KeyCode.D,
  1064. KeyCode.N,
  1065. KeyCode.C
  1066. };
  1067. private UILabel m_CharaSelectLabel;
  1068. private List<UIWFSelectButton> m_NotSelectDance = new List<UIWFSelectButton>();
  1069. private List<UIWFTabButton> m_SongPlatelUI = new List<UIWFTabButton>();
  1070. private static List<DanceData> m_SelectedDance = new List<DanceData>();
  1071. private static List<Maid> m_SelectedMaid = new List<Maid>();
  1072. private DanceData m_SecondDanceData;
  1073. private static DanceData m_ChallengeDanceData = null;
  1074. public static int ChallengeDay = 0;
  1075. private bool m_ForceTheater;
  1076. private bool m_ExistOnlyRelease;
  1077. private int m_OnlyRelease = -1;
  1078. private DanceSelectMusicInfo music_info_;
  1079. private DanceSelect.SelectPanelSet[] select_panelset_array_;
  1080. private CharacterSelectManager chara_select_mgr_;
  1081. private DanceSelect.Status status_;
  1082. private string cancel_call_label_;
  1083. private FFNameDialog ovr_dance_cam_dlg_;
  1084. [Serializable]
  1085. public class SelectPanelSet
  1086. {
  1087. public UIPanel ParentPanel;
  1088. public UIPanel ContentsPanel;
  1089. }
  1090. private enum Status
  1091. {
  1092. MusicSelect,
  1093. CaharaSelect,
  1094. DanceModeSelect
  1095. }
  1096. }