public void Init(CUIFormScript formScript, GameObject minimapGameObject, GameObject signalSrcHeroNameContainer, bool useSignalButton) { if (formScript == null) { return; } this.m_formScript = formScript; this.m_miniMap = minimapGameObject; if (this.m_miniMap != null) { this.m_miniMapScreenPosition = CUIUtility.WorldToScreenPoint(formScript.GetCamera(), this.m_miniMap.transform.position); } this.m_signalSrcHeroNameContainer = ((signalSrcHeroNameContainer == null) ? null : signalSrcHeroNameContainer.GetComponent <CUIContainerScript>()); this.m_signalTipsList = SignalPanel.GetSignalTipsListScript(); if (this.m_signalTipsList != null) { this.m_signalTipsListCanvasGroup = this.m_signalTipsList.gameObject.GetComponent <CanvasGroup>(); if (this.m_signalTipsListCanvasGroup == null) { this.m_signalTipsListCanvasGroup = this.m_signalTipsList.gameObject.AddComponent <CanvasGroup>(); } this.m_signalTipsListCanvasGroup.alpha = 0f; this.m_signalTipsListCanvasGroup.blocksRaycasts = false; } this.m_useSignalButton = useSignalButton; this.m_signalButtons = new CSignalButton[SignalPanel.s_signalButtonInfos.Length]; for (int i = 0; i < this.m_signalButtons.Length; i++) { this.m_signalButtons[i] = new CSignalButton(this.m_formScript.GetWidget(SignalPanel.s_signalButtonInfos[i][1]), SignalPanel.s_signalButtonInfos[i][0]); this.m_signalButtons[i].Initialize(this.m_formScript); if (!useSignalButton) { this.m_signalButtons[i].Disable(); } } if (this.m_useSignalButton) { Singleton <CUIEventManager> .GetInstance().AddUIEventListener(enUIEventID.Battle_ClickMiniMap, new CUIEventManager.OnUIEventHandler(this.OnClickMiniMap)); Singleton <CUIEventManager> .GetInstance().AddUIEventListener(enUIEventID.Battle_Click_Scene, new CUIEventManager.OnUIEventHandler(this.OnClickBattleScene)); Singleton <CUIEventManager> .GetInstance().AddUIEventListener(enUIEventID.Battle_OnSignalButtonClicked, new CUIEventManager.OnUIEventHandler(this.OnSignalButtonClicked)); Singleton <CUIEventManager> .GetInstance().AddUIEventListener(enUIEventID.Battle_OnSignalTipsListElementEnable, new CUIEventManager.OnUIEventHandler(this.OnSignalListElementEnabled)); this.m_battleSceneGroundPlane = new Plane(new Vector3(0f, 1f, 0f), 0.15f); this.m_signals = new ListView <CSignal>(); this.m_playerSignalCooldowns = new Dictionary <uint, SignalPanel.CPlayerSignalCooldown>(); this.m_signalTipses = new ListView <CSignalTipsElement>(); } Singleton <GameEventSys> .instance.AddEventHandler <SpawnSoldierParam>(GameEventDef.Event_SpawnSoldier, new RefAction <SpawnSoldierParam>(this.OnSpawnSoldier)); }