天津23维预案
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.
 
 
 
 
 
 

262 lines
9.1 KiB

using AX.MessageSystem;
using AX.TrackRecord;
using System.Collections.Generic;
using System.IO;
using UnityEngine;
using UnityEngine.UI;
public class PrePareModeSet : MonoBehaviour
{
/// <summary>
/// 备课模式
/// </summary>
private bool Flag = true;
private Animator Ani;
private Button MyButton;
private Toggle TheSave;// 保存课件
private Toggle TheClear;// 一键清空
private Toggle TheHideName;// 隐藏名称
private Toggle TheTool;// 辅助工具
private Toggle TheExit;// 退出
private Button TheSend;
[HideInInspector]
public Text TheShowText;
private GameObject Template;//辅助工具的父物体
private CeJuScript CeJu;
public static PrePareModeSet instance;
void Awake()
{
if (instance == null)
{
instance = this;
}
}
void Start ()
{
Ani = this.gameObject.GetComponent<Animator>();
MyButton = this.gameObject.GetComponent<Button>();
MyButton.onClick.AddListener(PressBtn);
TheSave = this.gameObject.transform.Find("Grid").Find("保存课件").GetComponent<Toggle>();
TheClear = this.gameObject.transform.Find("Grid").Find("一键清空").GetComponent<Toggle>();
TheHideName = this.gameObject.transform.Find("Grid").Find("隐藏名称").GetComponent<Toggle>();
TheTool = this.gameObject.transform.Find("Grid").Find("辅助工具").GetComponent<Toggle>();
//TheTeam= this.gameObject.transform.Find("Grid").Find("队伍设置").GetComponent<Toggle>();
CeJu = TheTool.GetComponent<CeJuScript>();
TheExit = this.gameObject.transform.Find("Grid").Find("退出登录").GetComponent<Toggle>();
TheShowText = TheHideName.transform.Find("Background").Find("Text").GetComponent<Text>();
TheSend= this.gameObject.transform.Find("Grid").Find("发送消息").GetComponent<Button>();
Template = TheTool.transform.Find("Template").gameObject;
TheSave.onValueChanged.AddListener(TheSaveWay);
TheClear.onValueChanged.AddListener(TheClearWay);
TheHideName.onValueChanged.AddListener(TheHideNameWay);
TheTool.onValueChanged.AddListener(TheToolWay);
TheExit.onValueChanged.AddListener(TheExitWay);
TheSend.onClick.AddListener(SendSomeThing);
TheShowText.text = "显示名称";//默认名称是隐藏得,所以按钮初始改为显示名称
}
public void SendSomeThing()
{
SendOO.instance.gameObject.SetActive(true);
}
public void CloseAssitToggle()
{
TheTool.isOn = false;
}
public void PressBtn()
{
if (Flag)
{
Ani.CrossFade("TeachShow", 0);
Flag = false;
}
else
{
Ani.CrossFade("TeachHide", 0);
Flag = true;
}
Template.SetActive(false);
MessageDispatcher.SendMessage("CLOSE", (object)"PowerTeamNameWin", "CUBE");
MessageDispatcher.SendMessage("CLOSE", (object)"WeatherImage", "CUBE");
}
public void TheSaveWay(bool check)// 保存课件
{
//未创建课件时保存,提示首先创建课件
if (LoadManager.Instance.IsPlayBacking)
{
MessageDispatcher.SendMessage("Operatinghints", (object)"回放无法保存灾情");
return;
}
else if (RecordManager.Instance.IsRecording)
{
MessageDispatcher.SendMessage("Operatinghints", (object)"记录中无法保存灾情");
return;
}
string path = ExamInfoHelpClass.CurrentWorkPath;
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
var files = Directory.GetFiles(path);
var filelist = new List<string>(files);
int c = 0;
foreach(string file in filelist)
{
if (file.Contains(".xml"))
{
c++;
}
}
if (c > 0)
{
RecordManager.Instance.IsPause = true;
string Name = "备课保存课件";
MessageDispatcher.SendMessage("OPEN", (object)Name, "CUBE");
}
else
{
MessageDispatcher.SendMessage("Operatinghints", (object)"还未创建节点!");
}
MessageDispatcher.SendMessage("CLOSE", (object)"PowerTeamNameWin", "CUBE");
MessageDispatcher.SendMessage("CLOSE", (object)"WeatherImage", "CUBE");
}
public void TheClearWay(bool check)// 一键清空
{
if (LoadManager.Instance.IsPlayBacking)
{
MessageDispatcher.SendMessage("Operatinghints", (object)"回放无法清空");
return;
}
else if (RecordManager.Instance.IsRecording)
{
MessageDispatcher.SendMessage("Operatinghints", (object)"记录中无法清空");
return;
}
MessageDispatcher.SendMessage("DestroyObj", (object)"All");
MessageDispatcher.SendMessage("clearTrigger", (object)"");
//InstantiationTool.Instance.RSDToggle.isOn = false;
MessageDispatcher.SendMessage("ResetTheScene");
MessageDispatcher.SendMessage("ShuiPaoMessage");
MessageDispatcher.SendMessage("ResettingButton");
MessageDispatcher.SendMessage("Operatinghints", (object)"场景重置成功");
MessageDispatcher.SendMessage("RESET_OILTANKDISASTER_ATRRI", (object)"All");//重置所有罐体
EquipSubmit.costSelectedEquips.Clear();
EquipSubmit.unCostSelectedEquips.Clear();
MessageDispatcher.SendMessage("CLOSE", (object)"PowerTeamNameWin", "CUBE");
MessageDispatcher.SendMessage("CLOSE", (object)"WeatherImage", "CUBE");
Transform Trager = GameObject.Find("target").transform; Trager.transform.parent = null;
foreach (Transform child in GameObject.Find("Canvas/PolyVerticeFather").transform)
{
Destroy(child.gameObject);
}
}
public void TheHideNameWay(bool check)// 隐藏名称
{
if (TheShowText.text == "隐藏名称")
{
TheShowText.text = "显示名称";
UIController.instance.NameControl = false;
MessageDispatcher.SendMessage("NameControl", (object)false);
}
else
{
TheShowText.text = "隐藏名称";
UIController.instance.NameControl = true;
MessageDispatcher.SendMessage("NameControl", (object)true);
}
if (RecordManager.Instance.IsRecording)
{
TrackRecordHelpClass.RecordTriggerEvent("NameControl");
}
MessageDispatcher.SendMessage("CLOSE", (object)"PowerTeamNameWin", "CUBE");
MessageDispatcher.SendMessage("CLOSE", (object)"WeatherImage", "CUBE");
}
public void TheToolWay(bool check)// 辅助工具
{
if (check)
{
Template.SetActive(true);
//this.transform.Find("Grid/辅助工具/Template/透明主体").GetComponent<Toggle>().isOn = false;
//foreach (var item in TheTool.GetComponentsInChildren<Toggle>())
//{
// item.isOn = false;
//}
}
else
{
CeJu.Set();
//点击关闭,之前所有激活的toggle都关闭
Template.SetActive(false);
MessageDispatcher.SendMessage("ControlPolygonFalse", (object)"");
InputManager.Instance_.enabled = true;
if (UIController.instance.PolygonPlane != null)
{
UIController.instance.PolygonPlane.SetActive(false);
}
}
MessageDispatcher.SendMessage("CLOSE", (object)"PowerTeamNameWin", "CUBE");
MessageDispatcher.SendMessage("CLOSE", (object)"WeatherImage", "CUBE");
}
public void TeamSet(bool check)
{
EditForceName.Instance.gameObject.SetActive(check);
}
public void TheExitWay(bool check)// 退出
{
if (RecordManager.Instance.IsRecording)
{
MessageDispatcher.SendMessage("Operatinghints", (object)"记录中无法退出");
}
else
{
GameObject TipWindow = Instantiate(Resources.Load<GameObject>("UIPrefab/TipWindow"));
TipWindow.GetComponent<TipWindowManager>().SetWindow(
"退出前注意是否保存灾情?", new UnityEngine.Events.UnityAction(OKSubmit), new UnityEngine.Events.UnityAction(NOSubmit));
}
MessageDispatcher.SendMessage("CLOSE", (object)"PowerTeamNameWin", "CUBE");
MessageDispatcher.SendMessage("CLOSE", (object)"WeatherImage", "CUBE");
}
private void RecordNOSubmit()
{
Back();
}
//关于没有记录
private void OKSubmit()
{
Back();
}
private void NOSubmit()
{
}
public void Back()
{
MySceneManager.BackToLastScene();
}
/// <summary>
/// 判断是否需要显示名称
/// </summary>
/// <returns></returns>
public bool ShowName()
{
if (TheShowText.text.Equals("隐藏名称"))
{
return true;
}
else
{
return false;
}
}
}