Эх сурвалжийг харах

[修改考试模式工器具选择提示文字问题。考核配置表无标题默认加载]

CHIVA\bj 1 сар өмнө
parent
commit
30a8500176

+ 11 - 3
Framework/Scripts/UI/PCController/ExamManagerForPC.cs

@@ -352,7 +352,14 @@ public class ExamManagerForPC : MonoBehaviour
                 break;
         }
 
-        UIKit.GetPanel<PC_OperatePanel>().ExamInfo.ShowWrongInfo("<color=#FF9F00>" + stepName + "</color>  :  " + wrongErrson);
+        if (UIKit.GetPanel<ToolLibraryForm>() != null && UIKit.GetPanel<ToolLibraryForm>().isActiveAndEnabled)
+        {
+            UIKit.GetPanel<ToolLibraryForm>().ShowWrongInfo("<color=#FF9F00>" + stepName + "</color>  :  " + wrongErrson);
+        }
+        else
+        {
+            UIKit.GetPanel<PC_OperatePanel>().ExamInfo.ShowWrongInfo("<color=#FF9F00>" + stepName + "</color>  :  " + wrongErrson);
+        }
     }
 
     /// <summary>
@@ -391,7 +398,7 @@ public class ExamManagerForPC : MonoBehaviour
     public void ExamFinish()
     {
         m_EndTime = DateTime.Now;
-      
+
         ExamProxy examProxy = DAL.Instance.Get<ExamProxy>();
 
         examProxy.examTime = CountExamDuration();
@@ -408,7 +415,8 @@ public class ExamManagerForPC : MonoBehaviour
             if (item.finish && item.result)
             {
                 examScoreInfo.score = item.scores;
-            }else
+            }
+            else
             {
                 examScoreInfo.score = -item.scores;
             }

+ 12 - 6
Framework/Scripts/UI/PCController/OperateSetting.cs

@@ -196,9 +196,7 @@ public class OperateSetting : MonoSingleton<OperateSetting>
         {
             LoadCourse(m_CourseName);
 
-        }
-        
-            
+        }      
 
         InitQuestionInfo();
         InitOperationMode();
@@ -323,12 +321,20 @@ public class OperateSetting : MonoSingleton<OperateSetting>
 
             ExamSetInfo tmpExamInfo = tmpProxy.GetExamSetInfoByCourseName(name);
 
-            maxErrorCount = int.Parse(tmpExamInfo.maxErrorCount);
-            examTime = int.Parse(tmpExamInfo.examTime);
+            if (tmpExamInfo != null)
+            {
+                maxErrorCount = int.Parse(tmpExamInfo.maxErrorCount);
+                examTime = int.Parse(tmpExamInfo.examTime);
+            }
+            else
+            {
+                Debug.LogError("未加载到考试配置信息,加载默认配置");
+            }
         }
 
+
         UIKit.OpenPanel<ToolDisplayForm>();
-        UIKit.OpenPanel<LogSystemForm>();
+        UIKit.OpenPanel<LogSystemForm>(UILevel.PopUI);
 
         m_OperatePanel = UIKit.OpenPanel<PC_OperatePanel>(
             new PC_OperatePanelData

+ 2 - 2
Framework/SimulationToolDev/CVR_Interactable/Example/Scripts/OperationData-Example/OPTrigger_SelectToolElemet.cs

@@ -146,7 +146,7 @@ public class OPTrigger_SelectToolElemet : OperationData_TriggerMode
             if (tmpToolConfigInfos.Count != choseToolNames.Count)
             {
                 OperateSetting.Instance.ToolPackUILogic.SetHint(true);
-                ExamManagerForPC.instance.RecordFault(ProcessManagement.Instance.currentStepID, ErrorReason.SelectWrongTarget);
+                ExamManagerForPC.instance.RecordFault(ProcessManagement.Instance.currentStepID, ErrorReason.SelectWrongTool);
                 return;
             }
             else
@@ -156,7 +156,7 @@ public class OPTrigger_SelectToolElemet : OperationData_TriggerMode
                     if (tmpToolConfigInfos.Find(t => t.toolName == toolName) == null)
                     {
                         OperateSetting.Instance.ToolPackUILogic.SetHint(true);
-                        ExamManagerForPC.instance.RecordFault(ProcessManagement.Instance.currentStepID, ErrorReason.SelectWrongTarget);
+                        ExamManagerForPC.instance.RecordFault(ProcessManagement.Instance.currentStepID, ErrorReason.SelectWrongTool);
                         isFinish = false;
                         return;
                     }

+ 1 - 1
OperationUIFrame/OperationUIFrameV2/Scripts/UI/MattersNeedingAttentionFrom.cs

@@ -53,7 +53,7 @@ namespace QFramework
 
                 if (tmpLogSystemForm == null)
                 {
-                    tmpLogSystemForm = UIKit.OpenPanel<LogSystemForm>();
+                    tmpLogSystemForm = UIKit.OpenPanel<LogSystemForm>(UILevel.PopUI);
                 }
 
                 tmpLogSystemForm.AddCurrentStepLog("×¢ÒâÊÂÏî");

+ 1 - 1
OperationUIFrame/OperationUIFrameV2/Scripts/UI/PC_OperatePanel/OperateStep.cs

@@ -448,7 +448,7 @@ namespace QFramework
 
             if (logSystemForm == null)
             {
-                logSystemForm = UIKit.OpenPanel<LogSystemForm>();
+                logSystemForm = UIKit.OpenPanel<LogSystemForm>(UILevel.PopUI);
             }
 
             if (logSystemForm.ScrollView.gameObject.activeSelf)

+ 7 - 1
OperationUIFrame/OperationUIFrameV2/Scripts/UI/ToolLibraryForm.Designer.cs

@@ -5,7 +5,7 @@ using QFramework;
 
 namespace QFramework
 {
-	// Generate Id:a9ea04ef-fde2-4a5d-b28d-e155ab15967f
+	// Generate Id:b0d09fb1-c178-4724-9a00-421cc70d14b4
 	public partial class ToolLibraryForm
 	{
 		public const string Name = "ToolLibraryForm";
@@ -18,6 +18,10 @@ namespace QFramework
 		public ToolTypeElement ToolTypeElement;
 		[SerializeField]
 		public UnityEngine.UI.Button CloseBtn;
+		[SerializeField]
+		public UnityEngine.UI.Image ToolLibraryErrorInfoTitle;
+		[SerializeField]
+		public UnityEngine.UI.Text WrongInfo;
 		
 		private ToolLibraryFormData mPrivateData = null;
 		
@@ -27,6 +31,8 @@ namespace QFramework
 			ToolMessageElement = null;
 			ToolTypeElement = null;
 			CloseBtn = null;
+			ToolLibraryErrorInfoTitle = null;
+			WrongInfo = null;
 			
 			mData = null;
 		}

+ 18 - 0
OperationUIFrame/OperationUIFrameV2/Scripts/UI/ToolLibraryForm.cs

@@ -4,6 +4,7 @@ using QFramework;
 using System.Collections.Generic;
 using I2.Loc;
 using System;
+using System.Collections;
 
 namespace QFramework
 {
@@ -91,6 +92,7 @@ namespace QFramework
 
             ToolTypeElement.RefrushTypeBtn();
             transform.transform.SetAsLastSibling();
+            ToolLibraryErrorInfoTitle.gameObject.SetActive(false);
         }
 
         protected override void OnShow()
@@ -109,6 +111,22 @@ namespace QFramework
             }
         }
 
+        public void ShowWrongInfo(string info)
+        {
+            StopAllCoroutines();
+            WrongInfo.text = "";
+            StartCoroutine(WaitShowWrongInfo(info));
+        }
+
+        IEnumerator WaitShowWrongInfo(string info)
+        {
+            ToolLibraryErrorInfoTitle.gameObject.SetActive(true);
+            WrongInfo.text = info;
+            ToolLibraryErrorInfoTitle.rectTransform.sizeDelta = new Vector2(WrongInfo.rectTransform.sizeDelta.x + 100, ToolLibraryErrorInfoTitle.rectTransform.sizeDelta.y);
+            yield return new WaitForSeconds(2);
+            ToolLibraryErrorInfoTitle.gameObject.SetActive(false);
+        }
+
         protected override void OnHide()
         {
         }

+ 1 - 1
OperationUIFrame/OperationUIFrameV2/Scripts/UI/ToolLibraryForm/ToolLibrarySelectElement.Designer.cs

@@ -1,5 +1,5 @@
 /****************************************************************************
- * 2024.9 CHIVA
+ * 2025.11 CHIVA
  ****************************************************************************/
 
 using UnityEngine;

+ 3 - 1
OperationUIFrame/OperationUIFrameV2/Scripts/UI/ToolLibraryForm/ToolLibrarySelectElement/ToolItemPrefab.Designer.cs

@@ -1,5 +1,5 @@
 /****************************************************************************
- * 2024.9 CHIVA
+ * 2025.11 CHIVA
  ****************************************************************************/
 
 using UnityEngine;
@@ -15,6 +15,7 @@ namespace QFramework
 		[SerializeField] public UnityEngine.UI.Image HighterState;
 		[SerializeField] public UnityEngine.UI.Image HighterIcon;
 		[SerializeField] public UnityEngine.UI.Image SelectState;
+		[SerializeField] public UnityEngine.UI.Image HighterIconSelect;
 		[SerializeField] public UnityEngine.UI.Image ToolIcon;
 		[SerializeField] public UnityEngine.UI.Text ToolName;
 
@@ -25,6 +26,7 @@ namespace QFramework
 			HighterState = null;
 			HighterIcon = null;
 			SelectState = null;
+			HighterIconSelect = null;
 			ToolIcon = null;
 			ToolName = null;
 		}

+ 1 - 1
OperationUIFrame/OperationUIFrameV2/Scripts/UI/ToolLibraryForm/ToolMessageElement.Designer.cs

@@ -1,5 +1,5 @@
 /****************************************************************************
- * 2024.9 CHIVA
+ * 2025.11 CHIVA
  ****************************************************************************/
 
 using UnityEngine;

+ 1 - 1
OperationUIFrame/OperationUIFrameV2/Scripts/UI/ToolLibraryForm/ToolTypeElement.Designer.cs

@@ -1,5 +1,5 @@
 /****************************************************************************
- * 2024.9 CHIVA
+ * 2025.11 CHIVA
  ****************************************************************************/
 
 using UnityEngine;

+ 228 - 3
OperationUIFrame/OperationUIFrameV2/UIPrefabs/ToolLibraryForm.prefab

@@ -4627,7 +4627,7 @@ MonoBehaviour:
     m_HorizontalOverflow: 0
     m_VerticalOverflow: 0
     m_LineSpacing: 1
-  m_Text: OK
+  m_Text: "\u786E\u5B9A"
 --- !u!114 &8552677411444096398
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -5060,7 +5060,7 @@ MonoBehaviour:
     m_HorizontalOverflow: 0
     m_VerticalOverflow: 0
     m_LineSpacing: 1
-  m_Text: Clear
+  m_Text: "\u6E05\u7A7A"
 --- !u!114 &630583058271998411
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -6061,6 +6061,133 @@ MonoBehaviour:
             m_StringArgument: 
             m_BoolArgument: 0
           m_CallState: 2
+--- !u!1 &5544490584582528807
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1464240512458469800}
+  - component: {fileID: 4109039578620325529}
+  - component: {fileID: 7480182072271586134}
+  - component: {fileID: 8246359091978553}
+  - component: {fileID: 616749632660251697}
+  - component: {fileID: 1731109668894838466}
+  m_Layer: 5
+  m_Name: WrongInfo
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &1464240512458469800
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5544490584582528807}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children: []
+  m_Father: {fileID: 3501927342002420632}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 192, y: 33}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &4109039578620325529
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5544490584582528807}
+  m_CullTransparentMesh: 0
+--- !u!114 &7480182072271586134
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5544490584582528807}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 0.9254902, g: 0.14117648, b: 0.08235294, a: 1}
+  m_RaycastTarget: 1
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 12800000, guid: ce15224a36613034880c4038a2d1bf37, type: 3}
+    m_FontSize: 24
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 2
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u64CD\u4F5C\u5BF9\u8C61\u9009\u62E9\u9519\u8BEF"
+--- !u!114 &8246359091978553
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5544490584582528807}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: cfabb0440166ab443bba8876756fdfa9, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_EffectColor: {r: 0, g: 0, b: 0, a: 0.5}
+  m_EffectDistance: {x: 1, y: 1}
+  m_UseGraphicAlpha: 1
+--- !u!114 &616749632660251697
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5544490584582528807}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 0d51f3a7c41ab0346b49ae50d456bece, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  MarkType: 0
+  CustomComponentName: SubtitleText
+  ComponentGeneratePath: 
+  CustomComment: 
+  mComponentName: UnityEngine.UI.Text
+--- !u!114 &1731109668894838466
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 5544490584582528807}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_HorizontalFit: 2
+  m_VerticalFit: 2
 --- !u!1 &5697973793415087120
 GameObject:
   m_ObjectHideFlags: 0
@@ -6288,7 +6415,7 @@ MonoBehaviour:
     m_HorizontalOverflow: 0
     m_VerticalOverflow: 0
     m_LineSpacing: 1
-  m_Text: Please enter search content...
+  m_Text: "\u8BF7\u8F93\u5165\u641C\u7D22\u5185\u5BB9..."
 --- !u!114 &254602747913093679
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -6782,6 +6909,99 @@ MonoBehaviour:
   ComponentGeneratePath: 
   CustomComment: 
   mComponentName: UnityEngine.UI.Image
+--- !u!1 &6690216752363359981
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 3501927342002420632}
+  - component: {fileID: 1074786829508658427}
+  - component: {fileID: 3783066374205890337}
+  - component: {fileID: 4158210335988442005}
+  m_Layer: 5
+  m_Name: ToolLibraryErrorInfoTitle
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!224 &3501927342002420632
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6690216752363359981}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_Children:
+  - {fileID: 1464240512458469800}
+  m_Father: {fileID: 6987101520840549008}
+  m_RootOrder: 5
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 1}
+  m_AnchorMax: {x: 0.5, y: 1}
+  m_AnchoredPosition: {x: 0, y: -150}
+  m_SizeDelta: {x: 400, y: 40}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!222 &1074786829508658427
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6690216752363359981}
+  m_CullTransparentMesh: 0
+--- !u!114 &3783066374205890337
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6690216752363359981}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 21300000, guid: 24f2e10fef88b144e9fb3a131f2e8c1c, type: 3}
+  m_Type: 0
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+--- !u!114 &4158210335988442005
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 6690216752363359981}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 0d51f3a7c41ab0346b49ae50d456bece, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  MarkType: 0
+  CustomComponentName: SubtitleBg
+  ComponentGeneratePath: 
+  CustomComment: 
+  mComponentName: UnityEngine.UI.Image
 --- !u!1 &6746703630649309966
 GameObject:
   m_ObjectHideFlags: 0
@@ -8272,6 +8492,7 @@ MonoBehaviour:
   HighterState: {fileID: 5287586052929247727}
   HighterIcon: {fileID: 4718481262223188367}
   SelectState: {fileID: 8796803060138520368}
+  HighterIconSelect: {fileID: 7208460064617325816}
   ToolIcon: {fileID: 4520825441238522125}
   ToolName: {fileID: 11761881526068011}
   m_NormalState: {fileID: 5175584724099357380}
@@ -8399,6 +8620,7 @@ RectTransform:
   - {fileID: 6987101520592011474}
   - {fileID: 6987101521374444968}
   - {fileID: 5597522034775164581}
+  - {fileID: 3501927342002420632}
   m_Father: {fileID: 0}
   m_RootOrder: 0
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@@ -8460,8 +8682,11 @@ MonoBehaviour:
   ToolMessageElement: {fileID: 5953165557570186056}
   ToolTypeElement: {fileID: 5227453303369533384}
   CloseBtn: {fileID: 7618137055621730457}
+  ToolLibraryErrorInfoTitle: {fileID: 3783066374205890337}
+  WrongInfo: {fileID: 7480182072271586134}
   m_Sprites: []
   rightToolsForToolRoom: []
+  isLockESC: 0
 --- !u!1 &6987101521374444969
 GameObject:
   m_ObjectHideFlags: 0

+ 0 - 8
StreamingAssets/考试成绩.meta

@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: cc4244b7c2c137c438c10c9865a3234b
-folderAsset: yes
-DefaultImporter:
-  externalObjects: {}
-  userData: 
-  assetBundleName: 
-  assetBundleVariant: