|  | @@ -0,0 +1,532 @@
 | 
	
		
			
				|  |  | +using System;
 | 
	
		
			
				|  |  | +using System.Collections;
 | 
	
		
			
				|  |  | +using System.Collections.Generic;
 | 
	
		
			
				|  |  | +using System.Runtime.CompilerServices;
 | 
	
		
			
				|  |  | +using UnityEngine;
 | 
	
		
			
				|  |  | +using UnityEngine.UI;
 | 
	
		
			
				|  |  | +using wf;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +namespace PrivateMaidMode
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	public class PrivateCharaSelectMain : WfScreenChildren
 | 
	
		
			
				|  |  | +	{
 | 
	
		
			
				|  |  | +		public override void Awake()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			base.Awake();
 | 
	
		
			
				|  |  | +			this.charaContent = UTY.GetChildObject(base.root_obj, "CharacterSelect/uGUI Scroll View/Viewport/Content", false);
 | 
	
		
			
				|  |  | +			this.charaSelectMgr = UTY.GetChildObject(base.root_obj, "CharacterSelect/uGUI Scroll View/Viewport", false).GetComponent<uGUICharacterSelectManager>();
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		protected override void OnCall()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainLight.Reset();
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.Reset(CameraMain.CameraType.Target, true);
 | 
	
		
			
				|  |  | +			GameMain.Instance.SoundMgr.VoiceStopAll();
 | 
	
		
			
				|  |  | +			this.m_selectMaid = null;
 | 
	
		
			
				|  |  | +			this.m_selectBG = null;
 | 
	
		
			
				|  |  | +			this.m_selectLocation = null;
 | 
	
		
			
				|  |  | +			this.charaMgr = GameMain.Instance.CharacterMgr;
 | 
	
		
			
				|  |  | +			this.isDaily = this.charaMgr.status.isDaytime;
 | 
	
		
			
				|  |  | +			this.charaSelectMgr.SetCallBackOnSelect(new uGUICharacterSelectManager.CallBackOnSelect(this.SelectCharacter));
 | 
	
		
			
				|  |  | +			uGUICharacterSelectManager uGUICharacterSelectManager = this.charaSelectMgr;
 | 
	
		
			
				|  |  | +			if (PrivateCharaSelectMain.<>f__mg$cache0 == null)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				PrivateCharaSelectMain.<>f__mg$cache0 = new uGUICharacterSelectManager.CallBackMaidList(uGUICharacterSelectManager.PrivateMaidList);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			uGUICharacterSelectManager.SetCallBackMaidList(PrivateCharaSelectMain.<>f__mg$cache0);
 | 
	
		
			
				|  |  | +			this.charaSelectMgr.Create(uGUICharacterSelectManager.Type.Private);
 | 
	
		
			
				|  |  | +			this.buttonList = this.charaSelectMgr.GetButtonList();
 | 
	
		
			
				|  |  | +			this.maidList = this.charaSelectMgr.GetMaidList();
 | 
	
		
			
				|  |  | +			this.buttonList[0].onSelectEvent.Add(new EventDelegate(new EventDelegate.Callback(this.OnSelectNoSelect)));
 | 
	
		
			
				|  |  | +			if (this.maidList.Count > 0)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				this.CreateRandomButton(this.buttonList[1], PrivateCharaSelectMain.SelectType.Maid);
 | 
	
		
			
				|  |  | +				for (int i = 2; i < this.buttonList.Count; i++)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					this.buttonList[i].onSelectEvent.Add(new EventDelegate(new EventDelegate.Callback(this.OnClickSelectChara)));
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +				if (PrivateModeMgr.Instance.isRandomMaid)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					this.charaContent.GetComponent<uGUITabPanel>().Select(this.buttonList[1]);
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			this.CreateBGPanel();
 | 
	
		
			
				|  |  | +			this.CreateBGPosPanel();
 | 
	
		
			
				|  |  | +			GameMain.Instance.CharacterMgr.DeactivateCharaAll();
 | 
	
		
			
				|  |  | +			GameMain.Instance.CharacterMgr.DeactivateMaid(0);
 | 
	
		
			
				|  |  | +			if (PrivateModeMgr.Instance.LoadPrivateMaid(this.isDaily))
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				this.m_selectMaid = PrivateModeMgr.Instance.PrivateMaid;
 | 
	
		
			
				|  |  | +				this.m_selectBG = PrivateModeMgr.Instance.SelectBG;
 | 
	
		
			
				|  |  | +				this.m_selectLocation = PrivateModeMgr.Instance.SelectLocation;
 | 
	
		
			
				|  |  | +				this.SetSelectAll();
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			else
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				uGUITabPanel component = this.charaContent.GetComponent<uGUITabPanel>();
 | 
	
		
			
				|  |  | +				component.Select(this.buttonList[0]);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			uGUITutorialPanel.OpenTutorial("ScenePrivate", null, false);
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		public void SetPrivateSettingManager(PrivateSettingManager mgr)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			this.privateManager = mgr;
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void CreateBGPanel()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			GameObject parentPanel = this.GetParentPanel(PrivateCharaSelectMain.SelectType.BG);
 | 
	
		
			
				|  |  | +			this.ResetChildren(parentPanel.transform);
 | 
	
		
			
				|  |  | +			this.bgList = new List<DataBase.BG>();
 | 
	
		
			
				|  |  | +			using (List<DataBase.Data>.Enumerator enumerator = DataBase.GetAllDatas(true).GetEnumerator())
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				while (enumerator.MoveNext())
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					DataBase.Data data = enumerator.Current;
 | 
	
		
			
				|  |  | +					if (!this.bgList.Exists((DataBase.BG bgElm) => bgElm.uniqueName == data.bgData.uniqueName))
 | 
	
		
			
				|  |  | +					{
 | 
	
		
			
				|  |  | +						this.bgList.Add(data.bgData);
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			this.enabledBGList = new List<DataBase.BG>();
 | 
	
		
			
				|  |  | +			for (int i = 0; i < this.bgList.Count; i++)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				GameObject f_goParent = Utility.CreatePrefab(parentPanel, "ScenePrivate/SelectButton", true);
 | 
	
		
			
				|  |  | +				uGUITabButton component = UTY.GetChildObject(f_goParent, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +				component.onSelectEvent.Add(new EventDelegate(new EventDelegate.Callback(this.OnSelectBG)));
 | 
	
		
			
				|  |  | +				if (!this.bgList[i].enabled)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					component.interactable = false;
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +				else
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					this.enabledBGList.Add(this.bgList[i]);
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +				Text component2 = UTY.GetChildObject(f_goParent, "Text", false).GetComponent<Text>();
 | 
	
		
			
				|  |  | +				component2.text = this.bgList[i].drawName;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			GameObject f_goParent2 = Utility.CreatePrefab(parentPanel, "ScenePrivate/RandomButton", true);
 | 
	
		
			
				|  |  | +			uGUITabButton component3 = UTY.GetChildObject(f_goParent2, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +			this.CreateRandomButton(component3, PrivateCharaSelectMain.SelectType.BG);
 | 
	
		
			
				|  |  | +			parentPanel.GetComponent<uGUITabPanel>().UpdateChildren();
 | 
	
		
			
				|  |  | +			if (PrivateModeMgr.Instance.isRandomBG)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				parentPanel.GetComponent<uGUITabPanel>().Select(component3);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			else
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				DataBase.BG bgdata = DataBase.GetBGData("執務室");
 | 
	
		
			
				|  |  | +				int index = this.bgList.IndexOf(bgdata);
 | 
	
		
			
				|  |  | +				uGUITabButton component4 = UTY.GetChildObject(parentPanel.transform.GetChild(index).gameObject, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +				parentPanel.GetComponent<uGUITabPanel>().Select(component4);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void CreateBGPosPanel()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			GameObject parentPanel = this.GetParentPanel(PrivateCharaSelectMain.SelectType.BGPos);
 | 
	
		
			
				|  |  | +			this.ResetChildren(parentPanel.transform);
 | 
	
		
			
				|  |  | +			for (int i = 0; i < this.m_selectBG.locations.Length; i++)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				GameObject f_goParent = Utility.CreatePrefab(parentPanel, "ScenePrivate/SelectButton", true);
 | 
	
		
			
				|  |  | +				uGUITabButton component = UTY.GetChildObject(f_goParent, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +				component.onSelectEvent.Add(new EventDelegate(new EventDelegate.Callback(this.OnSelectBGPos)));
 | 
	
		
			
				|  |  | +				Text component2 = UTY.GetChildObject(f_goParent, "Text", false).GetComponent<Text>();
 | 
	
		
			
				|  |  | +				component2.text = this.m_selectBG.locations[i].drawName;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			GameObject f_goParent2 = Utility.CreatePrefab(parentPanel, "ScenePrivate/RandomButton", true);
 | 
	
		
			
				|  |  | +			uGUITabButton component3 = UTY.GetChildObject(f_goParent2, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +			this.CreateRandomButton(component3, PrivateCharaSelectMain.SelectType.BGPos);
 | 
	
		
			
				|  |  | +			parentPanel.GetComponent<uGUITabPanel>().UpdateChildren();
 | 
	
		
			
				|  |  | +			bool flag = false;
 | 
	
		
			
				|  |  | +			if (PrivateModeMgr.Instance.isRandomBG)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				parentPanel.GetComponent<uGUITabPanel>().Select(component3);
 | 
	
		
			
				|  |  | +				this.SetCanSelectButton(parentPanel.GetComponent<uGUITabPanel>(), false);
 | 
	
		
			
				|  |  | +				flag = true;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			else if (PrivateModeMgr.Instance.isRandomLocation)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				parentPanel.GetComponent<uGUITabPanel>().Select(component3);
 | 
	
		
			
				|  |  | +				flag = true;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			else if (this.m_selectLocation != null)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				foreach (DataBase.BG.Location location in this.m_selectBG.locations)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					if (location == this.m_selectLocation)
 | 
	
		
			
				|  |  | +					{
 | 
	
		
			
				|  |  | +						this.SetSelect(PrivateCharaSelectMain.SelectType.BGPos);
 | 
	
		
			
				|  |  | +						flag = true;
 | 
	
		
			
				|  |  | +						break;
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			if (!flag)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				uGUITabButton component4 = UTY.GetChildObject(parentPanel.transform.GetChild(0).gameObject, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +				parentPanel.GetComponent<uGUITabPanel>().Select(component4);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void CreateRandomButton(uGUITabButton button, PrivateCharaSelectMain.SelectType type)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			EventDelegate eventDelegate = new EventDelegate(this, "OnSelectRandom");
 | 
	
		
			
				|  |  | +			if (type != PrivateCharaSelectMain.SelectType.BG)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				if (type != PrivateCharaSelectMain.SelectType.BGPos)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					if (type == PrivateCharaSelectMain.SelectType.Maid)
 | 
	
		
			
				|  |  | +					{
 | 
	
		
			
				|  |  | +						eventDelegate.parameters[0].value = PrivateCharaSelectMain.SelectType.Maid;
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +				else
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					eventDelegate.parameters[0].value = PrivateCharaSelectMain.SelectType.BGPos;
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			else
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				eventDelegate.parameters[0].value = PrivateCharaSelectMain.SelectType.BG;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			button.onSelectEvent.Add(eventDelegate);
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void ResetChildren(Transform parentTrans)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			for (int i = 0; i < parentTrans.childCount; i++)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				UnityEngine.Object.Destroy(parentTrans.GetChild(i).gameObject);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			parentTrans.DetachChildren();
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void ResetSetting()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			GameObject parentPanel = this.GetParentPanel(PrivateCharaSelectMain.SelectType.BG);
 | 
	
		
			
				|  |  | +			DataBase.BG bgdata = DataBase.GetBGData("執務室");
 | 
	
		
			
				|  |  | +			int index = this.bgList.IndexOf(bgdata);
 | 
	
		
			
				|  |  | +			uGUITabButton component = UTY.GetChildObject(parentPanel.transform.GetChild(index).gameObject, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +			parentPanel.GetComponent<uGUITabPanel>().Select(component);
 | 
	
		
			
				|  |  | +			parentPanel = this.GetParentPanel(PrivateCharaSelectMain.SelectType.BGPos);
 | 
	
		
			
				|  |  | +			uGUITabButton component2 = UTY.GetChildObject(parentPanel.transform.GetChild(0).gameObject, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +			parentPanel.GetComponent<uGUITabPanel>().Select(component2);
 | 
	
		
			
				|  |  | +			this.ResetCamera();
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void OnSelectNoSelect()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			this.charaMgr.DeactivateMaidAll();
 | 
	
		
			
				|  |  | +			this.m_selectMaid = null;
 | 
	
		
			
				|  |  | +			PrivateModeMgr.Instance.isRandomMaid = false;
 | 
	
		
			
				|  |  | +			this.bgPanel.SetActive(false);
 | 
	
		
			
				|  |  | +			this.bgPositionPanel.SetActive(false);
 | 
	
		
			
				|  |  | +			this.ResetSetting();
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void OnClickSelectChara()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			PrivateModeMgr.Instance.isRandomMaid = false;
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void SelectCharacter(Maid select_maid)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			this.bgPanel.SetActive(true);
 | 
	
		
			
				|  |  | +			this.bgPositionPanel.SetActive(true);
 | 
	
		
			
				|  |  | +			if (select_maid != null && this.m_selectMaid != select_maid)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				GameMain.Instance.MainCamera.FadeOut(0f, false, null, true, default(Color));
 | 
	
		
			
				|  |  | +				this.m_selectMaid = select_maid;
 | 
	
		
			
				|  |  | +				this.charaMgr.SetActiveMaid(this.m_selectMaid, 0);
 | 
	
		
			
				|  |  | +				this.m_selectMaid.Visible = true;
 | 
	
		
			
				|  |  | +				base.StartCoroutine(this.WaitCharaLoad());
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private IEnumerator WaitCharaLoad()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			while (this.charaMgr.IsBusy())
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				yield return null;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			yield return null;
 | 
	
		
			
				|  |  | +			yield return null;
 | 
	
		
			
				|  |  | +			GameMain.Instance.ScriptMgr.is_motion_blend = false;
 | 
	
		
			
				|  |  | +			this.m_selectLocation.LoadScript();
 | 
	
		
			
				|  |  | +			GameMain.Instance.ScriptMgr.is_motion_blend = true;
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.FadeIn(0.5f, false, null, true, true, default(Color));
 | 
	
		
			
				|  |  | +			yield break;
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void OnSelectBG()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			uGUITabButton selectButton = this.GetParentPanel(PrivateCharaSelectMain.SelectType.BG).GetComponent<uGUITabPanel>().GetSelectButton();
 | 
	
		
			
				|  |  | +			DataBase.BG bg = this.bgList[selectButton.transform.parent.GetSiblingIndex()];
 | 
	
		
			
				|  |  | +			if (bg != null && this.m_selectBG != bg)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				this.SelectBG(bg);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			PrivateModeMgr.Instance.isRandomBG = false;
 | 
	
		
			
				|  |  | +			GameObject parentPanel = this.GetParentPanel(PrivateCharaSelectMain.SelectType.BGPos);
 | 
	
		
			
				|  |  | +			this.SetCanSelectButton(parentPanel.GetComponent<uGUITabPanel>(), true);
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void SelectBG(DataBase.BG bg)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			if (bg == null)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				return;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.FadeOut(0.5f, false, null, true, default(Color));
 | 
	
		
			
				|  |  | +			this.m_selectBG = bg;
 | 
	
		
			
				|  |  | +			this.m_selectBG.Apply(this.isDaily);
 | 
	
		
			
				|  |  | +			this.CreateBGPosPanel();
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.FadeIn(0.5f, false, null, true, true, default(Color));
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void OnSelectBGPos()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			uGUITabButton selectButton = this.GetParentPanel(PrivateCharaSelectMain.SelectType.BGPos).GetComponent<uGUITabPanel>().GetSelectButton();
 | 
	
		
			
				|  |  | +			DataBase.BG.Location location = this.m_selectBG.locations[selectButton.transform.parent.GetSiblingIndex()];
 | 
	
		
			
				|  |  | +			if (location != null)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				this.SelectBGPos(location);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			PrivateModeMgr.Instance.isRandomLocation = false;
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void SelectBGPos(DataBase.BG.Location select_location)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.FadeOut(0.5f, false, null, true, default(Color));
 | 
	
		
			
				|  |  | +			this.m_selectLocation = select_location;
 | 
	
		
			
				|  |  | +			if (this.m_selectMaid != null)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				GameMain.Instance.ScriptMgr.is_motion_blend = false;
 | 
	
		
			
				|  |  | +				this.m_selectLocation.LoadScript();
 | 
	
		
			
				|  |  | +				GameMain.Instance.ScriptMgr.is_motion_blend = true;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.FadeIn(0.5f, false, null, true, true, default(Color));
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void SetSelectAll()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			this.SetSelect(PrivateCharaSelectMain.SelectType.Maid);
 | 
	
		
			
				|  |  | +			this.SetSelect(PrivateCharaSelectMain.SelectType.BG);
 | 
	
		
			
				|  |  | +			this.SetSelect(PrivateCharaSelectMain.SelectType.BGPos);
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void SetSelect(PrivateCharaSelectMain.SelectType type)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			if (type != PrivateCharaSelectMain.SelectType.Maid)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				if (type != PrivateCharaSelectMain.SelectType.BG)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					if (type == PrivateCharaSelectMain.SelectType.BGPos)
 | 
	
		
			
				|  |  | +					{
 | 
	
		
			
				|  |  | +						if (this.m_selectLocation == null)
 | 
	
		
			
				|  |  | +						{
 | 
	
		
			
				|  |  | +							return;
 | 
	
		
			
				|  |  | +						}
 | 
	
		
			
				|  |  | +						if (PrivateModeMgr.Instance.isRandomLocation)
 | 
	
		
			
				|  |  | +						{
 | 
	
		
			
				|  |  | +							return;
 | 
	
		
			
				|  |  | +						}
 | 
	
		
			
				|  |  | +						GameObject parentPanel = this.GetParentPanel(PrivateCharaSelectMain.SelectType.BGPos);
 | 
	
		
			
				|  |  | +						this.Select(type, parentPanel);
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +				else
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					if (this.m_selectBG == null)
 | 
	
		
			
				|  |  | +					{
 | 
	
		
			
				|  |  | +						return;
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +					if (PrivateModeMgr.Instance.isRandomBG)
 | 
	
		
			
				|  |  | +					{
 | 
	
		
			
				|  |  | +						this.CreateBGPosPanel();
 | 
	
		
			
				|  |  | +						return;
 | 
	
		
			
				|  |  | +					}
 | 
	
		
			
				|  |  | +					GameObject parentPanel = this.GetParentPanel(PrivateCharaSelectMain.SelectType.BG);
 | 
	
		
			
				|  |  | +					this.Select(type, parentPanel);
 | 
	
		
			
				|  |  | +					this.CreateBGPosPanel();
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			else
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				if (PrivateModeMgr.Instance.isRandomMaid)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					return;
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +				this.charaSelectMgr.SelectMaid(this.m_selectMaid);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void Select(PrivateCharaSelectMain.SelectType type, GameObject parentObj)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			string a = null;
 | 
	
		
			
				|  |  | +			if (type != PrivateCharaSelectMain.SelectType.BG)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				if (type == PrivateCharaSelectMain.SelectType.BGPos)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					a = this.m_selectLocation.drawName;
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			else
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				a = this.m_selectBG.drawName;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			uGUITabPanel component = parentObj.GetComponent<uGUITabPanel>();
 | 
	
		
			
				|  |  | +			Transform transform = parentObj.transform;
 | 
	
		
			
				|  |  | +			for (int i = 0; i < transform.childCount; i++)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				string text = UTY.GetChildObject(transform.GetChild(i).gameObject, "Text", false).GetComponent<Text>().text;
 | 
	
		
			
				|  |  | +				if (a == text)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					uGUITabButton component2 = UTY.GetChildObject(transform.GetChild(i).gameObject, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +					component.Select(component2);
 | 
	
		
			
				|  |  | +					return;
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void OnSelectRandom(PrivateCharaSelectMain.SelectType type)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			if (type == PrivateCharaSelectMain.SelectType.Maid && this.maidList != null)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				int index = UnityEngine.Random.Range(0, this.maidList.Count);
 | 
	
		
			
				|  |  | +				this.SelectCharacter(this.maidList[index]);
 | 
	
		
			
				|  |  | +				PrivateModeMgr.Instance.isRandomMaid = true;
 | 
	
		
			
				|  |  | +				this.SetButtonTouch(this.GetParentPanel(PrivateCharaSelectMain.SelectType.Maid).GetComponent<uGUITabPanel>().GetSelectButton(), true);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			if (type == PrivateCharaSelectMain.SelectType.BG && this.enabledBGList != null)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				int index2 = UnityEngine.Random.Range(0, this.enabledBGList.Count);
 | 
	
		
			
				|  |  | +				this.SelectBG(this.enabledBGList[index2]);
 | 
	
		
			
				|  |  | +				PrivateModeMgr.Instance.isRandomBG = true;
 | 
	
		
			
				|  |  | +				PrivateModeMgr.Instance.isRandomLocation = true;
 | 
	
		
			
				|  |  | +				this.SetButtonTouch(this.GetParentPanel(PrivateCharaSelectMain.SelectType.BG).GetComponent<uGUITabPanel>().GetSelectButton(), true);
 | 
	
		
			
				|  |  | +				GameObject parentPanel = this.GetParentPanel(PrivateCharaSelectMain.SelectType.BGPos);
 | 
	
		
			
				|  |  | +				uGUITabButton component = UTY.GetChildObject(parentPanel.transform.GetChild(parentPanel.transform.childCount - 1).gameObject, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +				parentPanel.GetComponent<uGUITabPanel>().Select(component);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			if (type == PrivateCharaSelectMain.SelectType.BGPos && this.m_selectBG != null)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				int num = UnityEngine.Random.Range(0, this.m_selectBG.locations.Length);
 | 
	
		
			
				|  |  | +				this.SelectBGPos(this.m_selectBG.locations[num]);
 | 
	
		
			
				|  |  | +				PrivateModeMgr.Instance.isRandomLocation = true;
 | 
	
		
			
				|  |  | +				if (PrivateModeMgr.Instance.isRandomBG)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					this.SetCanSelectButton(this.GetParentPanel(PrivateCharaSelectMain.SelectType.BGPos).GetComponent<uGUITabPanel>(), false);
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +				this.SetButtonTouch(this.GetParentPanel(PrivateCharaSelectMain.SelectType.BGPos).GetComponent<uGUITabPanel>().GetSelectButton(), true);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void ResetCamera()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.Reset(CameraMain.CameraType.Target, true);
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.SetTargetPos(new Vector3(0.5609447f, 1.380762f, -1.382336f), true);
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.SetDistance(1.6f, true);
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.SetAroundAngle(new Vector2(245.5691f, 6.273283f), true);
 | 
	
		
			
				|  |  | +			GameMain.Instance.MainCamera.SetTargetOffset(Vector3.zero, false);
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private GameObject GetParentPanel(PrivateCharaSelectMain.SelectType type)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			if (type == PrivateCharaSelectMain.SelectType.Maid)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				if (this.charaContent != null)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					this.charaContent = UTY.GetChildObject(base.root_obj, "CharacterSelect/uGUI Scroll View/Viewport/Content", false);
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +				return this.charaContent;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			if (type == PrivateCharaSelectMain.SelectType.BG)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				return UTY.GetChildObject(this.bgPanel, "uGUI Scroll View/Viewport/Content", false);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			if (type != PrivateCharaSelectMain.SelectType.BGPos)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				return null;
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			return UTY.GetChildObject(this.bgPositionPanel, "uGUI Scroll View/Viewport/Content", false);
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void SetButtonTouch(uGUITabButton button, bool isActive)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			button.GetComponent<uGUISelectableAnimation>().enabled = isActive;
 | 
	
		
			
				|  |  | +			button.maskObj.SetActive(!isActive);
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private void SetCanSelectButton(uGUITabPanel parent, bool select)
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			for (int i = 0; i < parent.transform.childCount; i++)
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				uGUITabButton component = UTY.GetChildObject(parent.transform.GetChild(i).gameObject, "Plate", false).GetComponent<uGUITabButton>();
 | 
	
		
			
				|  |  | +				if (component.maskObj != null)
 | 
	
		
			
				|  |  | +				{
 | 
	
		
			
				|  |  | +					component.maskObj.SetActive(!select);
 | 
	
		
			
				|  |  | +				}
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		public void OnClickOKButton()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			PrivateModeMgr.Instance.SetPrivateMaid(this.m_selectMaid);
 | 
	
		
			
				|  |  | +			PrivateModeMgr.Instance.SetPrivateBG(this.m_selectBG);
 | 
	
		
			
				|  |  | +			PrivateModeMgr.Instance.SetPrivateLocation(this.m_selectLocation);
 | 
	
		
			
				|  |  | +			this.Finish();
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		protected override void OnFinish()
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			if (this.privateManager.MoveScreen.IsExistNextFile())
 | 
	
		
			
				|  |  | +			{
 | 
	
		
			
				|  |  | +				this.privateManager.CallScreen("Move");
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private Maid m_selectMaid;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private DataBase.BG m_selectBG;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private DataBase.BG.Location m_selectLocation;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private PrivateSettingManager privateManager;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private CharacterMgr charaMgr;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private uGUICharacterSelectManager charaSelectMgr;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private List<uGUITabButton> buttonList;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private List<Maid> maidList;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private List<DataBase.BG> bgList;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private List<DataBase.BG> enabledBGList;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private bool isDaily;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		private GameObject charaContent;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		[SerializeField]
 | 
	
		
			
				|  |  | +		private GameObject bgPanel;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		[SerializeField]
 | 
	
		
			
				|  |  | +		private GameObject bgPositionPanel;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		[CompilerGenerated]
 | 
	
		
			
				|  |  | +		private static uGUICharacterSelectManager.CallBackMaidList <>f__mg$cache0;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +		public enum SelectType
 | 
	
		
			
				|  |  | +		{
 | 
	
		
			
				|  |  | +			Maid,
 | 
	
		
			
				|  |  | +			BG,
 | 
	
		
			
				|  |  | +			BGPos
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  | +}
 |