using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using ChivaXR.Op; using System.Text.RegularExpressions; using ChivaXR; using I2.Loc; public class ScoreInfoItem : MonoBehaviour { /// /// 底图 /// public GameObject m_BaseMap; /// /// 步骤id /// public Text stepIdText; /// /// 步骤描述 /// public Text stepDescriptText; /// /// 得分情况 /// public Text scoreSituationText; public ExamProcessElement examProcessElement; public void Awake() { if (m_BaseMap == null) { m_BaseMap = transform.Find("LowestLayer").gameObject; } if (stepIdText == null) stepIdText = transform.Find("StepID").GetComponent(); if (stepDescriptText == null) stepDescriptText = transform.Find("StepDesctript").GetComponent(); if (scoreSituationText == null) scoreSituationText = transform.Find("ScoreSituation").GetComponent(); } public void InitData(ExamProcessElement _examProcessElement) { examProcessElement = _examProcessElement; SetBasicMapEffect(_examProcessElement.id); stepIdText.text = _examProcessElement.id.ToString("000"); stepDescriptText.text = GetSimpleStepDescript(_examProcessElement.elementDescript.ToString()); if (_examProcessElement.finish == true && _examProcessElement.result == true) { scoreSituationText.text = "+" + _examProcessElement.scores + ""; } else { scoreSituationText.text = "-" + _examProcessElement.scores + ""; } } /// /// 设置底图效果,奇偶变换 /// /// private void SetBasicMapEffect(int _id) { if (_id % 2 == 1) { m_BaseMap.SetActive(true); } else { m_BaseMap.SetActive(false); } } /// /// 获取操作步骤信息 /// /// /// private string GetSimpleStepDescript(string descript) { int tmpCurrentId = ProcessManagement.Instance.currentStepID; StepListProxy tmpStepListProxy = DAL.Instance.Get(); OperationStepDataInfo tmpOperationStepDataInfo = tmpStepListProxy.GetOperationStepDataInfoById(examProcessElement.id); if (tmpOperationStepDataInfo != null) { #region 多语言 if(LocalizationConfig.localization) { LocalizedString SubTitle = examProcessElement.id + "stepName"; return SubTitle; } #endregion return tmpOperationStepDataInfo.stepName; } // string tmpStr = LengthOfJudgment(descript); //string tmpStr1 = Regex.Split(tmpStr, @"^\d+").Length > 1 ? Regex.Split(tmpStr, @"^\d+")[1] : tmpStr; return string.Empty; //return tmpStr1.Split('-')[1]; } /// /// 长度判断 /// /// /// private string LengthOfJudgment(string _data) { if (string.IsNullOrEmpty(_data)) { return ""; } string result = _data.Split('_').Length <= 2 ? (_data.Split('_').Length > 1 ? _data.Split('_')[1] : _data) : _data.Split('_')[_data.Split('_').Length - 1]; return result; } }