using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using AX.MessageSystem;
using AX.TrackRecord;
using System.Collections.Generic;
public class StairUIChild : MonoBehaviour {
///
/// 点击楼层按钮
///
private Button ChildBtn;
void Start()
{
ChildBtn = this.gameObject.GetComponent();
ChildBtn.onClick.AddListener(LetsGo);
}
float Y;
GameObject Floor;
string CubeCengName = "";
public int triggerMode;
public void LetsGo() //点击给选中的消防员置位置
{
bool Has = false;
if (InputManager.Instance_.GetSelectedCharacters().Count==0)
{
MessageDispatcher.SendMessage("Operatinghints", (object)"请选择人员");
return;
}
if (InputManager.Instance_.GetSelectedCharacters().Count != 0)
{
for (int i = 0; i < StairCanGo.Instance.CanGoFloor.Count; i++)
{
string Name = StairCanGo.Instance.CanGoFloor[i].name;
if (this.name.Equals(Name))
{
foreach (Transform child in StairCanGo.Instance.CanGoFloor[i].transform)
{
if (child.name.Contains("TriggerEvent"))
{
Y = child.transform.position.y;
CubeCengName = child.GetComponent().TheName;
Floor = child.gameObject;
Debug.Log(StairCanGo.Instance.CanGoFloor[i].name + "--" + child.transform.position.y);
}
}
}
}
var neededRemoveList = new List();
for (int j = InputManager.Instance_.GetSelectedCharacters().Count - 1; j >= 0; j--)
{
if (InputManager.Instance_.GetSelectedCharacters()[j].name.Contains("xiaofangyuan") && InputManager.Instance_.GetSelectedCharacters()[j].GetComponent().cengID != 0)
{
if (InputManager.Instance_.GetSelectedCharacters()[j].GetComponent().cengID
!= Floor.GetComponent().cengID)
{
if (!InputManager.Instance_.GetSelectedCharacters()[j].GetComponent().SQ.gameObject.activeInHierarchy)
{
float x = InputManager.Instance_.GetSelectedCharacters()[j].transform.position.x;
float z = InputManager.Instance_.GetSelectedCharacters()[j].transform.position.z;
InputManager.Instance_.GetSelectedCharacters()[j].GetComponent().enabled = false;
InputManager.Instance_.GetSelectedCharacters()[j].GetComponent().DonotRecordFlag = true;
if (InputManager.Instance_.GetSelectedCharacters()[j].GetComponent().cengID
< Floor.GetComponent().cengID)
{
InputManager.Instance_.GetSelectedCharacters()[j].gameObject.SetActive(false);
}
else
{
InputManager.Instance_.GetSelectedCharacters()[j].gameObject.SetActive(true);
}
if (Floor.gameObject.activeInHierarchy)
{
InputManager.Instance_.GetSelectedCharacters()[j].gameObject.SetActive(true);
}
int k = Floor.GetComponent().cengID;
InputManager.Instance_.GetSelectedCharacters()[j].GetComponent().cengID = k;
if (MySceneManager.GetActiveScene().name.Equals("1"))//处理城市综合体
{
InputManager.Instance_.GetSelectedCharacters()[j].transform.position = new Vector3(x, Y, z);
}
else if (MySceneManager.GetActiveScene().name.Equals("3"))//超高层
{
if (triggerMode == 1) //消防电梯
{
InputManager.Instance_.GetSelectedCharacters()[j].transform.position = new Vector3(0.64f, Y, 15f);
}
else if (triggerMode == 2)//楼梯
{
InputManager.Instance_.GetSelectedCharacters()[j].transform.position = new Vector3(0.64f, Y, 15f);
}
}
else if (MySceneManager.GetActiveScene().name.Equals("7"))//土坯房
{
InputManager.Instance_.GetSelectedCharacters()[j].transform.position = new Vector3(x, Y, z);
}
else
{
InputManager.Instance_.GetSelectedCharacters()[j].transform.position = new Vector3(x, Y, z);
}
InputManager.Instance_.GetSelectedCharacters()[j].GetComponent().LineList_GameObject.Clear();
InputManager.Instance_.GetSelectedCharacters()[j].GetComponent().DonotRecordFlag = false;
}
else
{
Has = true;
neededRemoveList.Add(InputManager.Instance_.GetSelectedCharacters()[j]);
}
}
}
}
foreach(var obj in neededRemoveList)
{
InputManager.Instance_.GetSelectedCharacters()[0].GetComponent().xfyList.Remove(obj);
InputManager.Instance_.removeItem(obj);
}
if (RecordManager.Instance.IsRecording)
{
string str1 = this.name.Substring(0, this.name.Length- 1);
string Intro = this.transform.Find("intro").GetComponent().text;
TrackRecordHelpClass.RecordGoStairEvent(this.name, Intro);
//MessageDispatcher.SendMessage(InputManager.Instance_.GetSelectedCharacters()[0].name, "RecordPathFindingEvent",
//new PathFindingAttri { Navto = InputManager.Instance_.GetSelectedCharacters()[0].transform.position, timer = RecordManager.Instance.RecordTimer },Time.deltaTime*2);
}
if (Has)
{
MessageDispatcher.SendMessage("Operatinghints", (object)"有人员连接管线");
}
//Time.timeScale = 1;
StairUI.Instance.gameObject.SetActive(false);
MessageDispatcher.SendMessage("GoStairMess", (object)CubeCengName);
}
}
}