using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Diagnostics.Contracts; using Unity.VisualScripting; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; using static UnityEditor.PlayerSettings; public class Submit : MonoBehaviour { /// <summary> /// 练习模式图片 /// </summary> private Sprite practicesprite; /// <summary> /// 考核模式图片 /// </summary> private Sprite examinesprite; /// <summary> /// 考核练习图片 /// </summary> public Image practicemode; /// <summary> /// 提交按钮 /// </summary> public Button submitbutton; /// <summary> /// 交卷按钮 /// </summary> public Button onvolumebutton; /// <summary> /// 练习的分页面 /// </summary> public GameObject practicepanl; /// <summary> /// 考试分数 /// </summary> public Text marktext; /// <summary> /// 返回按钮 /// </summary> public Button backbutton; /// <summary> /// 考核面板 /// </summary> public GameObject examinepanl; /// <summary> /// 技能冷却时间 /// </summary> public float examinetimer = 10f; /// <summary> /// 技能冷却时间 /// </summary> public float skilltimer = 0f; /// <summary> /// 技能冷却图片 /// </summary> public Image coolingimage; /// <summary> /// 技能冷却开关 /// </summary> private bool isCooldown = false; /// <summary> /// 系统提示 /// </summary> public Text warntext; /// <summary> /// 体统提示时间 /// </summary> public float timer = 10f; /// <summary> /// 倒计时 /// </summary> public Text timetext; /// <summary> /// 提示是否交卷页面 /// </summary> public GameObject submissionpromptpanl; /// <summary> /// 确定按钮 /// </summary> public Button submitbutton2; /// <summary> /// 取消按钮 /// </summary> public Button cancelbutton2; /// <summary> /// 三个菜单按钮 /// </summary> public Toggle electricitychargeaccounting, powersupplycontract, contract; /// <summary> /// 初始化用户名 /// </summary> public Text nametext; /// <summary> /// 初始化时间 /// </summary> public Text loginname; /// <summary> /// 覆约合同预设体 /// </summary> public GameObject retreatyobj; /// <summary> /// 覆约电费供电页面练习预制体生成位置 /// </summary> public RectTransform retreatypanl; public RectTransform powersupplypanl; public RectTransform electricchargepanl; /// <summary> /// 接收覆约合同的预设体 /// </summary> public GameObject retreatpreform; /// <summary> /// 初始化每个考试toggle显示按钮 /// </summary> public Vector3 pos; private void Awake() { Initialize();//初始化 switch (ScoreManager.Instance.Examinationpaper) { case Examinationpaper.practice: Practicesubject();//练习页面 break; case Examinationpaper.Reviewexamination: Reviewpaper();//覆约页面 break; case Examinationpaper.Powersupplytest: Powersupplytestpaper();//供电页面 break; case Examinationpaper.Electricityfeetest: Electricityexaminationpaper();//电费页面 break; default: break; } } private void Initialize() { pos = contract.transform.position; loginname.text = PlayerPrefs.GetString("time"); nametext.text = PlayerPrefs.GetString("Name"); Debug.LogError(ScoreManager.Instance.Examinationpaper); practicesprite = Resources.Load<Sprite>("UIpanel/练习模式"); examinesprite = Resources.Load<Sprite>("UIpanel/考试模式"); retreatyobj = Resources.Load<GameObject>("UIpanel/practice1"); } void Start() { submitbutton.onClick.AddListener(() => { retreatpreform = GameObject.Find("practice1(Clone)"); retreatpreform.SetActive(false); practicemode.gameObject.SetActive(false); marktext.text = ScoreManager.Instance.Score.ToString(); practicepanl.SetActive(true); }); backbutton.onClick.AddListener(() => { Destroy(retreatpreform); Instantiate(retreatyobj, retreatypanl); practicepanl.SetActive(false); practicemode.gameObject.SetActive(true); ScoreManager.Instance.SubtractScore(100); }); onvolumebutton.onClick.AddListener(() => { submissionpromptpanl.SetActive(true); }); cancelbutton2.onClick.AddListener(() => { submissionpromptpanl.SetActive(false); }); submitbutton2.onClick.AddListener(() => { retreatpreform = GameObject.Find("practice1(Clone)"); retreatpreform.SetActive(false); practicemode.gameObject.SetActive(false); submissionpromptpanl.SetActive(false); practicemode.gameObject.SetActive(false); onvolumebutton.gameObject.SetActive(false); isCooldown = true; examinepanl.SetActive(true); }); } /// <summary> /// 覆约合同考试页面初始化 /// </summary> public void Reviewpaper() { contract.isOn = true; practicemode.sprite = examinesprite; contract.gameObject.SetActive(true); electricitychargeaccounting.gameObject.SetActive(false); powersupplycontract.gameObject.SetActive(false); onvolumebutton.gameObject.SetActive(true); retreatypanl.gameObject.SetActive(true); powersupplypanl.gameObject.SetActive(false); electricchargepanl.gameObject.SetActive(false); Instantiate(retreatyobj, retreatypanl); } /// <summary> /// 所有练习科目页面初始化 /// </summary> public void Practicesubject() { contract.isOn = true; practicemode.sprite = practicesprite; submitbutton.gameObject.SetActive(true); retreatypanl.gameObject.SetActive(true); powersupplypanl.gameObject.SetActive(false); electricchargepanl.gameObject.SetActive(false); Instantiate(retreatyobj, retreatypanl); } /// <summary> /// 供电考试页面初始化 /// </summary> public void Powersupplytestpaper() { powersupplycontract.transform.position = pos; powersupplycontract.isOn = true; practicemode.sprite = examinesprite; contract.gameObject.SetActive(false); electricitychargeaccounting.gameObject.SetActive(false); powersupplycontract.gameObject.SetActive(true); retreatypanl.gameObject.SetActive(false); powersupplypanl.gameObject.SetActive(true); electricchargepanl.gameObject.SetActive(false); } /// <summary> /// 电费核算考试页面初始化 /// </summary> public void Electricityexaminationpaper() { electricitychargeaccounting.transform.position = pos; electricitychargeaccounting.isOn = true; practicemode.sprite = examinesprite; contract.gameObject.SetActive(false); electricitychargeaccounting.gameObject.SetActive(true); powersupplycontract.gameObject.SetActive(false); retreatypanl.gameObject.SetActive(false); powersupplypanl.gameObject.SetActive(false); electricchargepanl.gameObject.SetActive(true); } void Update() { //十秒后自动退出程序 if (isCooldown) { coolingimage.fillAmount = 1 - (skilltimer / examinetimer); skilltimer += Time.deltaTime; timer -= Time.deltaTime; warntext.text = timer.ToString("0") + "秒后自动退出系统"; timetext.text = timer.ToString("0"); if (coolingimage.fillAmount == 0) { // 退出应用程序 #if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = false; #else Application.Quit(); #endif } } } }