123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- using System;
- using System.Collections.Generic;
- using com.workman.cm3d2.scene.dailyEtc;
- using UnityEngine;
- namespace SceneNPCEdit
- {
- public class NPCEditMain : WfScreenChildren
- {
- public override void Awake()
- {
- base.Awake();
- this.mainUIFade = base.root_obj.GetComponent<WfFadeBehaviour>();
- NDebug.AssertNull(this.mainUIFade);
- this.parent_grid_ = UTY.GetChildObject(base.root_obj, "ButtonParent/Tower/Grid", false).GetComponent<UIGrid>();
- this.button_dic_.Add("エディット", UTY.GetChildObject(this.parent_grid_.gameObject, "エディット", false).GetComponent<UIButton>());
- this.button_dic_.Add("リセット", UTY.GetChildObject(this.parent_grid_.gameObject, "リセット", false).GetComponent<UIButton>());
- this.button_dic_.Add("Cancel", UTY.GetChildObject(base.root_obj, "ButtonParent/Cancel", false).GetComponent<UIButton>());
- foreach (KeyValuePair<string, UIButton> keyValuePair in this.button_dic_)
- {
- EventDelegate.Add(keyValuePair.Value.onClick, new EventDelegate.Callback(this.OnClickButton));
- }
- }
- protected override void OnCall()
- {
- base.SetCallInFadeWaitFrame(2);
- GameMain.Instance.MainLight.Reset();
- GameMain.Instance.CharacterMgr.ResetCharaPosAll();
- GameMain.Instance.MainCamera.Reset(CameraMain.CameraType.Target, true);
- GameMain.Instance.SoundMgr.VoiceStopAll();
- GameMain.Instance.CharacterMgr.DeactivateCharaAll();
- GameMain.Instance.CharacterMgr.DeactivateMaid(0);
- if (this.charaMgr.status.isDaytime)
- {
- GameMain.Instance.SoundMgr.PlayBGM(DailyAPI.dayBgm, 0.5f, true);
- GameMain.Instance.BgMgr.ChangeBg(DailyAPI.dayBg);
- }
- else
- {
- GameMain.Instance.SoundMgr.PlayBGM(DailyAPI.nightBgm, 0.5f, true);
- GameMain.Instance.BgMgr.ChangeBg(DailyAPI.nightBg);
- }
- this.parent_grid_.repositionNow = true;
- this.select_maid_ = null;
- for (int i = 0; i < this.charaMgr.GetStockMaidCount(); i++)
- {
- if (this.charaMgr.GetStockMaid(i).status.leader)
- {
- this.cur_maid_leader_ = this.charaMgr.GetStockMaid(i);
- break;
- }
- }
- for (int j = 0; j < this.charaMgr.GetMaidCount(); j++)
- {
- if (this.charaMgr.GetMaid(j) != null)
- {
- this.charaMgr.GetMaid(j).Visible = false;
- }
- }
- }
- public void SetScreenManager(NPCEdit maid_management, string edit_label, string new_edit_label, string transfer_label)
- {
- this.screenManager = maid_management;
- this.edit_label_ = edit_label;
- this.new_edit_label_ = new_edit_label;
- this.transfer_label_ = transfer_label;
- }
- private void OnSelectChara(Maid select_maid)
- {
- this.select_maid_ = select_maid;
- }
- private void OnClickButton()
- {
- if (!PluginData.IsEnabled("GP001"))
- {
- return;
- }
- string a = string.Empty;
- foreach (KeyValuePair<string, UIButton> keyValuePair in this.button_dic_)
- {
- if (keyValuePair.Value == UIButton.current)
- {
- a = keyValuePair.Key;
- break;
- }
- }
- if (a == "エディット" && this.npcEditCharaSelect.selectNPC != null)
- {
- if (string.IsNullOrEmpty(this.edit_label_))
- {
- return;
- }
- Maid maid = this.charaMgr.ActivateNpc(0);
- this.npcEditCharaSelect.selectNPC.npcData.Apply(maid, true);
- NPCCharaSelect.editTargetNPCData = this.npcEditCharaSelect.selectNPC;
- this.screenManager.move_screen.SetNextLabel(this.edit_label_);
- this.Finish();
- }
- if (a == "リセット" && this.npcEditCharaSelect.selectNPC != null)
- {
- SaveData.RemovePreset(this.npcEditCharaSelect.selectNPC.id);
- this.npcEditCharaSelect.UpdateSelectData();
- }
- else if (a == "Cancel")
- {
- this.Finish();
- }
- }
- protected override void OnFinish()
- {
- if ((this.screenManager.move_screen.next_label == this.edit_label_ || this.screenManager.move_screen.next_label == this.new_edit_label_ || this.screenManager.move_screen.next_label == this.transfer_label_) && this.charaMgr.GetMaid(0) != null)
- {
- this.charaMgr.GetMaid(0).Visible = true;
- }
- if (!string.IsNullOrEmpty(this.screenManager.move_screen.next_label))
- {
- this.screenManager.CallScreen("Move");
- }
- }
- private CharacterMgr charaMgr
- {
- get
- {
- return GameMain.Instance.CharacterMgr;
- }
- }
- [SerializeField]
- private NPCCharaSelect npcEditCharaSelect;
- private WfFadeBehaviour mainUIFade;
- private NPCEdit screenManager;
- private Maid cur_maid_leader_;
- private Maid select_maid_;
- private UIGrid parent_grid_;
- private Dictionary<string, UIButton> button_dic_ = new Dictionary<string, UIButton>();
- private string edit_label_;
- private string new_edit_label_;
- private string transfer_label_;
- }
- }
|