You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
111 lines
4.0 KiB
111 lines
4.0 KiB
using AX.MessageSystem; |
|
using UnityEngine; |
|
using UnityEngine.UI; |
|
|
|
/// <summary> |
|
/// 火场信息面板 |
|
/// </summary> |
|
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<Toggle>().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<SuggestPanel>().OnHide = (v) => |
|
{ |
|
GetComponent<Toggle>().isOn = false; |
|
}; |
|
UIManager.GetView<SuggestPanel>().ShowNoInput(); |
|
} |
|
else |
|
{ |
|
UIManager.HideView<SuggestPanel>(); |
|
} |
|
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 |
|
} |