using AX.MessageSystem;
using UnityEngine;
using UnityEngine.UI;
///
/// 火场信息面板
///
public class FireInfoToggle : BaseToggle
{
public override void OnEnable()
{
base.OnEnable();
MessageDispatcher.AddListener("CloseFireInfoPanel", CancelToggle);
}
public override void OnDisable()
{
base.OnDisable();
MessageDispatcher.RemoveListener("CloseFireInfoPanel", CancelToggle);
}
public override void OnDestroy()
{
base.OnDestroy();
MessageDispatcher.RemoveListener("CloseFireInfoPanel", CancelToggle);
}
public void CancelToggle(IMessage obj)
{
if(gameObject)
{
var num = (int)obj.Data;
int myNum = int.Parse(gameObject.name);
if (num == myNum)
{
GetComponent().isOn = false;
}
}
}
public override void RespondFun(bool value)
{
int num = int.Parse(gameObject.name);
switch ((FireInfoToggleButton)num)
{
case FireInfoToggleButton.报警信息:
//显示报警信息界面
MessageDispatcher.SendMessage(FireInfoMessage.AlarmMessage.ToString(), value);
break;
case FireInfoToggleButton.侦察报告:
MessageDispatcher.SendMessage(FireInfoMessage.InvestigationReport.ToString(), value);
break;
case FireInfoToggleButton.供水报告:
MessageDispatcher.SendMessage(FireInfoMessage.WaterSupplyReport.ToString(), value);
break;
case FireInfoToggleButton.疏散救生:
MessageDispatcher.SendMessage(FireInfoMessage.EvacuationAndRescue.ToString(), value);
break;
case FireInfoToggleButton.到场力量:
//显示到场力量界面
MessageDispatcher.SendMessage(FireInfoMessage.ArrivedForce.ToString(), value);
break;
case FireInfoToggleButton.外部力量:
MessageDispatcher.SendMessage(FireInfoMessage.ExternalForce.ToString(), value);
break;
case FireInfoToggleButton.内部力量:
MessageDispatcher.SendMessage(FireInfoMessage.TheInternalForce.ToString(), value);
break;
case FireInfoToggleButton.在途力量:
MessageDispatcher.SendMessage(FireInfoMessage.OnWayForce.ToString(), value);
break;
case FireInfoToggleButton.周边物资:
MessageDispatcher.SendMessage(FireInfoMessage.TheSurroundingMaterial.ToString(), value);
break;
case FireInfoToggleButton.联动力量:
MessageDispatcher.SendMessage(FireInfoMessage.LinkageForces.ToString(), value);
break;
case FireInfoToggleButton.参谋建议:
//显示参谋建议界面
if (value)
{
//UIView-OnHide
UIManager.GetView().OnHide = (v) =>
{
GetComponent().isOn = false;
};
UIManager.GetView().ShowNoInput();
}
else
{
UIManager.HideView();
}
break;
case FireInfoToggleButton.知情人反馈:
MessageDispatcher.SendMessage(FireInfoMessage.InsiderFeedback.ToString(), value);
break;
}
Debug.Log(string.Format("{0}按钮触发{1}", (FireInfoToggleButton)num, value));
}
}
public enum FireInfoToggleButton
{
报警信息 = 0,
侦察报告 = 1,
供水报告 = 2,
疏散救生 = 3,
到场力量 = 4,
外部力量 = 5,
内部力量 = 6,
在途力量 = 7,
周边物资 = 8,
联动力量 = 9,
参谋建议 = 10,
知情人反馈 =11
}