123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238 |
- using System;
- using UnityEngine;
- public class OnaholeNodeMenuManager : OnaholeBaseNodeMenuManager
- {
- public bool isOpen
- {
- get
- {
- return base.gameObject.activeSelf;
- }
- }
- private void Awake()
- {
- GameObject gameObject = this.menuButtonGrid.gameObject;
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "ステージ選択", OnaholeNodeMenuChildSecondRow.Mode.StageSelect.ToString(), true, true), new Action(this.CallSubMenu)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "夜伽スキル", OnaholeNodeMenuChildSecondRow.Mode.SkillCategorySelect.ToString(), true, true), new Action(this.CallSubMenu)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "コスチューム", OnaholeNodeMenuChildSecondRow.Mode.Costume.ToString(), true, true), new Action(this.CallSubMenu)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "Chu-B Lip S2設定", OnaholeNodeMenuChildSecondRow.Mode.DeviceSetting.ToString(), true, true), new Action(this.CallSubMenu)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "メイド感度", OnaholeNodeMenuChildSecondRow.Mode.MaidSensitivity.ToString(), true, true), new Action(this.CallSubMenu)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "ピストン設定", OnaholeNodeMenuChildSecondRow.Mode.PistonSetting.ToString(), true, true), new Action(this.CallSubMenu)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "男の透明度", OnaholeNodeMenuChildSecondRow.Mode.ManAlpha.ToString(), true, true), new Action(this.CallSubMenu)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "オートモード", OnaholeNodeMenuChildSecondRow.Mode.AutoMode.ToString(), true, true), new Action(this.CallSubMenu)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "オートフィニッシュ", OnaholeNodeMenuChildSecondRow.Mode.AutoFinish.ToString(), true, true), new Action(this.CallSubMenu)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "オートリアクション", OnaholeNodeMenuChildSecondRow.Mode.AutoReaction.ToString(), true, true), new Action(this.CallSubMenu)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "リアクションLevelUp", "reactionlevelup", true, false), new Action(this.ClickEmulate)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "エディット", "edit", true, false), new Action(this.ClickEmulate)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "液体を拭く", "releaseseieki", true, false), new Action(this.ClickEmulate)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "カメラリセット", "camerareset", true, false), new Action(this.ClickEmulate)));
- this.menuButtons.Add(new NodeButtonData(OnaholeBaseNodeMenuManager.CreateBasicNodeButton(gameObject, "夜伽終了", OnaholeNodeMenuChildSecondRow.Mode.YotogiEnd.ToString(), true, true), new Action(this.CallSubMenu)));
- this.reactionLevelUpButtonData = base.GetNodeButtonData("reactionlevelup");
- this.menuButtonGrid.Reposition();
- base.SetFocusButton(this.menuButtons[0]);
- this.isInputEnabled = false;
- this.changeInput = -1;
- }
- public void Open()
- {
- this.Close();
- this.changeInput = 1;
- if (!this.editButton.isEnabled)
- {
- base.GetNodeButtonData("edit").selectType = OnaholeNodeButton.SelectType.Disable;
- }
- base.SetFocusButton(this.menuButtons[0]);
- base.gameObject.SetActive(true);
- GameMain.Instance.SoundMgr.PlaySystem(SoundMgr.SeType.Click);
- }
- public void Close()
- {
- this.isInputEnabled = false;
- this.changeInput = -1;
- this.secondRow.Clear();
- this.thirdRow.Clear();
- base.gameObject.SetActive(false);
- }
- private void CallSubMenu()
- {
- if (base.selectedNodeButton == null)
- {
- return;
- }
- base.SetSelectedButton(base.selectedNodeButton);
- this.secondRow.CallMenu((OnaholeNodeMenuChildSecondRow.Mode)Enum.Parse(typeof(OnaholeNodeMenuChildSecondRow.Mode), base.selectedNodeButton.button.uniqueName));
- this.isInputEnabled = false;
- }
- private void ClickEmulate()
- {
- if (base.selectedNodeButton == null)
- {
- return;
- }
- UIButton uibutton = null;
- if (base.selectedNodeButton.button.uniqueName == "edit")
- {
- uibutton = this.editButton;
- }
- else if (base.selectedNodeButton.button.uniqueName == "releaseseieki")
- {
- uibutton = this.releaseSeiekiButton;
- }
- else if (base.selectedNodeButton.button.uniqueName == "camerareset")
- {
- uibutton = this.cameraResetButton;
- }
- else if (base.selectedNodeButton.button.uniqueName == "reactionlevelup")
- {
- uibutton = this.reactionLevelUpButton;
- }
- if (uibutton != null)
- {
- EventDelegate.Execute(uibutton.onClick);
- }
- }
- public void ReturnMenu()
- {
- if (base.selectedNodeButton != null)
- {
- base.selectedNodeButton.button.selectType = OnaholeNodeButton.SelectType.Focus;
- }
- this.changeInput = 1;
- }
- public void EndYotogi()
- {
- EventDelegate.Execute(this.yotogiEndButton.onClick);
- }
- protected override void OnEnterMenu()
- {
- base.OnEnterMenu();
- if (base.selectedNodeButton != null)
- {
- base.selectedNodeButton.enterEvent();
- }
- }
- protected override void OnCancelMenu()
- {
- }
- private void UpdateUIText()
- {
- NodeButtonData nodeButtonData = base.GetNodeButtonData(OnaholeNodeMenuChildSecondRow.Mode.AutoMode.ToString());
- OnaholeNodeButton onaholeNodeButton = nodeButtonData.button as OnaholeNodeButton;
- onaholeNodeButton.text = "オートモード:" + ((!this.autoPistonEnabled) ? "OFF" : "ON");
- nodeButtonData = base.GetNodeButtonData(OnaholeNodeMenuChildSecondRow.Mode.AutoFinish.ToString());
- onaholeNodeButton = (nodeButtonData.button as OnaholeNodeButton);
- onaholeNodeButton.text = "オートフィニッシュ:" + ((!this.autoFinishEnabled) ? "OFF" : "ON");
- nodeButtonData = base.GetNodeButtonData(OnaholeNodeMenuChildSecondRow.Mode.AutoReaction.ToString());
- onaholeNodeButton = (nodeButtonData.button as OnaholeNodeButton);
- onaholeNodeButton.text = "オートリアクション:" + ((!this.autoReaction) ? "OFF" : "ON");
- bool flag = false;
- if ((this.autoReaction && this.reactionLevelUpButtonData.button.selectType != OnaholeNodeButton.SelectType.Disable) || (this.reactionLevel == 2 && this.reactionLevelUpButtonData.button.selectType != OnaholeNodeButton.SelectType.Disable))
- {
- flag = true;
- }
- if (flag)
- {
- if (base.selectedNodeButton.button.uniqueName == this.reactionLevelUpButtonData.button.uniqueName)
- {
- for (int i = 0; i < this.menuButtons.Count; i++)
- {
- if (this.menuButtons[i].button.uniqueName == base.selectedNodeButton.button.uniqueName)
- {
- int num = i + 1;
- if (this.menuButtons.Count <= num)
- {
- num = 0;
- }
- base.SetFocusButton(this.menuButtons[num]);
- break;
- }
- }
- }
- this.reactionLevelUpButtonData.button.selectType = OnaholeNodeButton.SelectType.Disable;
- }
- else if (!this.autoReaction && this.reactionLevel != 2 && this.reactionLevelUpButtonData.button.selectType == OnaholeNodeButton.SelectType.Disable)
- {
- this.reactionLevelUpButtonData.button.selectType = OnaholeNodeButton.SelectType.None;
- }
- }
- protected override void Update()
- {
- if (base.inputDownKey)
- {
- base.NextItem();
- }
- else if (base.inputUpKey)
- {
- base.PrevItem();
- }
- else if (base.inputEnterKey || base.inputRightKye)
- {
- this.OnEnterMenu();
- }
- else if (base.inputCancelKey || base.inputLeftKey)
- {
- this.OnCancelMenu();
- }
- if (this.changeInput != -1)
- {
- this.isInputEnabled = (this.changeInput == 1);
- }
- this.changeInput = -1;
- this.UpdateUIText();
- }
- [SerializeField]
- private OnaholeNodeMenuChildSecondRow secondRow;
- [SerializeField]
- private OnaholeNodeMenuChildThirdRow thirdRow;
- [SerializeField]
- [Header("夜伽から貰ってくるコンポーネント群")]
- public YotogiPlayManagerWithChubLip playManager;
- [SerializeField]
- public YotogiAppearanceWithChubLip appearanceData;
- [SerializeField]
- public UndressingManager undressingManager;
- [SerializeField]
- private UIButton reactionLevelUpButton;
- [SerializeField]
- private UIButton editButton;
- [SerializeField]
- private UIButton releaseSeiekiButton;
- [SerializeField]
- private UIButton cameraResetButton;
- [SerializeField]
- private UIButton yotogiEndButton;
- private int changeInput;
- private NodeButtonData reactionLevelUpButtonData;
- public bool autoPistonEnabled;
- public bool autoFinishEnabled;
- public bool autoReaction;
- public int reactionLevel;
- }
|