From bf094d5d1ae496157dc923dba5a1b9150b89d465 Mon Sep 17 00:00:00 2001 From: joylink_zhaoerwei Date: Tue, 28 May 2024 15:40:46 +0800 Subject: [PATCH] =?UTF-8?q?=E7=8E=BB=E7=92=83=E7=A0=B4=E7=A2=8E=EF=BC=88?= =?UTF-8?q?=E8=B5=9E=E6=8F=90=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/training_speech/pinchPeople.mp3.import | 19 -- .../pinchPeople.mp3 | Bin .../pinchPeople.mp3.import | 19 ++ Assets/training_speech/xt_pslgbztmwx.mp3 | Bin 15840 -> 0 bytes .../training_speech/xt_pslgbztmwx.mp3.import | 19 -- Assets/training_speech/xt_pslibpkmwx.mp3 | Bin 18576 -> 0 bytes .../training_speech/xt_pslibpkmwx.mp3.import | 19 -- Assets/training_speech/zby_ztmjczc.mp3 | Bin 29952 -> 0 bytes Assets/training_speech/zby_ztmjczc.mp3.import | 19 -- Assets/training_speech/zbzz_ckcjwb.mp3 | Bin 10944 -> 0 bytes Assets/training_speech/zbzz_ckcjwb.mp3.import | 19 -- Assets/training_speech/zlgzmhfzc.mp3 | Bin 13536 -> 0 bytes Assets/training_speech/zlgzmhfzc.mp3.import | 19 -- UI/screenDoorOperate/screen_door_operate.tscn | 6 +- sceen/platform/screenDoor.gd | 2 +- sceen/platform/screenDoor.tscn | 58 ++-- sceen/total.gd | 32 +- sceen/train/trainDoor.gd | 29 +- .../trainingGlassBreakageFault.gd | 283 +++++++++++++++++- .../trainingGlassBreakageFault.tscn | 39 ++- .../trainingOpenDoorFault.gd | 7 +- .../trainingPinchPeopleFault.gd | 13 +- 22 files changed, 431 insertions(+), 171 deletions(-) delete mode 100644 Assets/training_speech/pinchPeople.mp3.import rename Assets/training_speech/{ => trainingPinchPeopleFault}/pinchPeople.mp3 (100%) create mode 100644 Assets/training_speech/trainingPinchPeopleFault/pinchPeople.mp3.import delete mode 100644 Assets/training_speech/xt_pslgbztmwx.mp3 delete mode 100644 Assets/training_speech/xt_pslgbztmwx.mp3.import delete mode 100644 Assets/training_speech/xt_pslibpkmwx.mp3 delete mode 100644 Assets/training_speech/xt_pslibpkmwx.mp3.import delete mode 100644 Assets/training_speech/zby_ztmjczc.mp3 delete mode 100644 Assets/training_speech/zby_ztmjczc.mp3.import delete mode 100644 Assets/training_speech/zbzz_ckcjwb.mp3 delete mode 100644 Assets/training_speech/zbzz_ckcjwb.mp3.import delete mode 100644 Assets/training_speech/zlgzmhfzc.mp3 delete mode 100644 Assets/training_speech/zlgzmhfzc.mp3.import diff --git a/Assets/training_speech/pinchPeople.mp3.import b/Assets/training_speech/pinchPeople.mp3.import deleted file mode 100644 index 6804d80..0000000 --- a/Assets/training_speech/pinchPeople.mp3.import +++ /dev/null @@ -1,19 +0,0 @@ -[remap] - -importer="mp3" -type="AudioStreamMP3" -uid="uid://ca2cflgmlx5cp" -path="res://.godot/imported/pinchPeople.mp3-434bd408a9f297641ae3f3de785ab54f.mp3str" - -[deps] - -source_file="res://Assets/training_speech/pinchPeople.mp3" -dest_files=["res://.godot/imported/pinchPeople.mp3-434bd408a9f297641ae3f3de785ab54f.mp3str"] - -[params] - -loop=false -loop_offset=0 -bpm=0 -beat_count=0 -bar_beats=4 diff --git a/Assets/training_speech/pinchPeople.mp3 b/Assets/training_speech/trainingPinchPeopleFault/pinchPeople.mp3 similarity index 100% rename from Assets/training_speech/pinchPeople.mp3 rename to Assets/training_speech/trainingPinchPeopleFault/pinchPeople.mp3 diff --git a/Assets/training_speech/trainingPinchPeopleFault/pinchPeople.mp3.import b/Assets/training_speech/trainingPinchPeopleFault/pinchPeople.mp3.import new file mode 100644 index 0000000..483332a --- /dev/null +++ b/Assets/training_speech/trainingPinchPeopleFault/pinchPeople.mp3.import @@ -0,0 +1,19 @@ +[remap] + +importer="mp3" +type="AudioStreamMP3" +uid="uid://ca2cflgmlx5cp" +path="res://.godot/imported/pinchPeople.mp3-134682895ed1755bfb4228e5cc0c315e.mp3str" + +[deps] + +source_file="res://Assets/training_speech/trainingPinchPeopleFault/pinchPeople.mp3" +dest_files=["res://.godot/imported/pinchPeople.mp3-134682895ed1755bfb4228e5cc0c315e.mp3str"] + +[params] + +loop=false +loop_offset=0 +bpm=0 +beat_count=0 +bar_beats=4 diff --git a/Assets/training_speech/xt_pslgbztmwx.mp3 b/Assets/training_speech/xt_pslgbztmwx.mp3 deleted file mode 100644 index fc9b2cad3d612298decacc5df8c295af179ace97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15840 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 Wzw`O8iTvyF{}1{6tN6e7=zjrHJ5R;{ diff --git a/Assets/training_speech/xt_pslgbztmwx.mp3.import b/Assets/training_speech/xt_pslgbztmwx.mp3.import deleted file mode 100644 index 93ea755..0000000 --- a/Assets/training_speech/xt_pslgbztmwx.mp3.import +++ /dev/null @@ -1,19 +0,0 @@ -[remap] - -importer="mp3" -type="AudioStreamMP3" -uid="uid://iqr672ekex01" -path="res://.godot/imported/xt_pslgbztmwx.mp3-c340c6f2fdc9b84c839f54346780b458.mp3str" - -[deps] - -source_file="res://Assets/training_speech/xt_pslgbztmwx.mp3" -dest_files=["res://.godot/imported/xt_pslgbztmwx.mp3-c340c6f2fdc9b84c839f54346780b458.mp3str"] - -[params] - -loop=false -loop_offset=0 -bpm=0 -beat_count=0 -bar_beats=4 diff --git a/Assets/training_speech/xt_pslibpkmwx.mp3 b/Assets/training_speech/xt_pslibpkmwx.mp3 deleted file mode 100644 index 362e62954270f6e3feac692a1577610654fd8b44..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18576 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 diff --git a/Assets/training_speech/zbzz_ckcjwb.mp3.import b/Assets/training_speech/zbzz_ckcjwb.mp3.import deleted file mode 100644 index 24bf5b9..0000000 --- a/Assets/training_speech/zbzz_ckcjwb.mp3.import +++ /dev/null @@ -1,19 +0,0 @@ -[remap] - -importer="mp3" -type="AudioStreamMP3" -uid="uid://b5wej2w00ttnj" -path="res://.godot/imported/zbzz_ckcjwb.mp3-3c85dcaed29528587c7e0c8e32ccee6b.mp3str" - -[deps] - -source_file="res://Assets/training_speech/zbzz_ckcjwb.mp3" -dest_files=["res://.godot/imported/zbzz_ckcjwb.mp3-3c85dcaed29528587c7e0c8e32ccee6b.mp3str"] - -[params] - -loop=false -loop_offset=0 -bpm=0 -beat_count=0 -bar_beats=4 diff --git a/Assets/training_speech/zlgzmhfzc.mp3 b/Assets/training_speech/zlgzmhfzc.mp3 deleted file mode 100644 index a73e483f93d6248b094eb4cb72bcf1e78a35a0fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13536 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 O|64x)IO%`z!2bdv(mD void: - if screenDoorState == ScreenDoor_State.close and ((screenDoorFaultState != ScreenDoor_Fault_State.openFault and lcbKey.keyState ==LcbWindow.KNOB_STATE.AUTO ) or isUseLCBKey): + if screenDoorState == ScreenDoor_State.close and ((screenDoorFaultState != ScreenDoor_Fault_State.openFault and screenDoorFaultState != ScreenDoor_Fault_State.glassBreakage and lcbKey.keyState ==LcbWindow.KNOB_STATE.AUTO ) or isUseLCBKey): screenDoorState=ScreenDoor_State.opening $Timer.start(0.3) diff --git a/sceen/platform/screenDoor.tscn b/sceen/platform/screenDoor.tscn index e632fa3..f02c555 100644 --- a/sceen/platform/screenDoor.tscn +++ b/sceen/platform/screenDoor.tscn @@ -16,7 +16,7 @@ [ext_resource type="AudioStream" uid="uid://k0e2shfdjyrq" path="res://Assets/music/glass-breaking.mp3" id="9_kpf37"] [ext_resource type="PackedScene" uid="uid://yvkjjjm5lmeo" path="res://Model/ScreenDoorPinchPeople.blend" id="15_wm4hy"] [ext_resource type="Script" path="res://sceen/platform/PinchPeoplePathFollow3D.gd" id="16_ml4r8"] -[ext_resource type="AudioStream" uid="uid://ca2cflgmlx5cp" path="res://Assets/training_speech/pinchPeople.mp3" id="17_4438x"] +[ext_resource type="AudioStream" uid="uid://ca2cflgmlx5cp" path="res://Assets/training_speech/trainingPinchPeopleFault/pinchPeople.mp3" id="17_4438x"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_4f4ck"] render_priority = 0 @@ -462,6 +462,33 @@ _data = { } point_count = 5 +[sub_resource type="Animation" id="Animation_g8x2q"] +length = 0.001 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("ScreenDoorPinchPeople:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(-6.471, 0, 1.849)] +} +tracks/1/type = "value" +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/path = NodePath("ScreenDoorPinchPeople:rotation") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/keys = { +"times": PackedFloat32Array(0), +"transitions": PackedFloat32Array(1), +"update": 0, +"values": [Vector3(0, 1.77037, 0)] +} + [sub_resource type="Animation" id="Animation_nqqq3"] resource_name = "walkToPlatform" length = 3.0 @@ -490,33 +517,6 @@ tracks/1/keys = { "values": [Vector3(0, 1.77037, 0), Vector3(0, 2.77333, 0)] } -[sub_resource type="Animation" id="Animation_g8x2q"] -length = 0.001 -tracks/0/type = "value" -tracks/0/imported = false -tracks/0/enabled = true -tracks/0/path = NodePath("ScreenDoorPinchPeople:position") -tracks/0/interp = 1 -tracks/0/loop_wrap = true -tracks/0/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(-6.471, 0, 1.849)] -} -tracks/1/type = "value" -tracks/1/imported = false -tracks/1/enabled = true -tracks/1/path = NodePath("ScreenDoorPinchPeople:rotation") -tracks/1/interp = 1 -tracks/1/loop_wrap = true -tracks/1/keys = { -"times": PackedFloat32Array(0), -"transitions": PackedFloat32Array(1), -"update": 0, -"values": [Vector3(0, 1.77037, 0)] -} - [sub_resource type="AnimationLibrary" id="AnimationLibrary_8pf2j"] _data = { "RESET": SubResource("Animation_g8x2q"), @@ -619,7 +619,7 @@ skeleton = NodePath("") visible = false [node name="ScreenDoorPinchPeople" parent="PinchPeople" instance=ExtResource("15_wm4hy")] -transform = Transform3D(-0.198254, 0, 0.980138, 0, 1, 0, -0.980138, 0, -0.198254, -6.471, 0, 1.849) +transform = Transform3D(-0.198249, 0, 0.980139, 0, 1, 0, -0.980139, 0, -0.198249, -6.471, 0, 1.849) [node name="Path3D" type="Path3D" parent="PinchPeople"] curve = SubResource("Curve3D_1img4") diff --git a/sceen/total.gd b/sceen/total.gd index c1d3e29..47a4927 100644 --- a/sceen/total.gd +++ b/sceen/total.gd @@ -42,6 +42,22 @@ func trainLeave(ActionGestureCommandDeparture = false) -> bool: func _on_train_leave_delay_timeout() -> void: $train.trainLeave() +## 车门名字的枚举 +enum TrainDoor_name{ + trainDoor1=1, + trainDoor2, + trainDoor3, + trainDoor4, +} + +##设置指定车门不开门 +func setAssignTrainDoorsOpenFault (trainDoorNames:Array)-> void: + for child in $train.leftTrainDoorALL: + var trainDoorName=String(child.name) + var trainDoorIndex=int(trainDoorName[trainDoorName.length() - 1]) + if trainDoorIndex in trainDoorNames: + child.setTrainFault(TrainDoor.TrainDoor_Fault_State.openFault) + ## 屏蔽门名字的枚举 enum ScreenDoor_name{ screenDoor1=1, @@ -197,23 +213,27 @@ func allClickEquipmentPostion(equipmentName: String) -> Vector2: var Close_Click_Area_pos=NodeUtils.find_child_by_name(jjtcWindow,'Close_Click_Area').get_global_position() return Vector2(jjtcWindowPos.x+Close_Click_Area_pos.x+30,jjtcWindowPos.y+Close_Click_Area_pos.y+100) elif equipmentName == 'screenDoor1RightClick' : ##屏蔽门右键以及屏蔽门右键面板 - return getScreenPosition($platform.get_node('screenDoor1').get_node('left')) + var pos = getScreenPosition($platform.get_node('screenDoor1').get_node('dimiantishi')) + return Vector2(pos.x-50,pos.y-200) elif equipmentName == 'screenDoor2RightClick' : - return getScreenPosition($platform.get_node('screenDoor2').get_node('left')) + var pos = getScreenPosition($platform.get_node('screenDoor2').get_node('dimiantishi')) + return Vector2(pos.x-50,pos.y-200) elif equipmentName == 'screenDoor3RightClick' : - return getScreenPosition($platform.get_node('screenDoor3').get_node('left')) + var pos = getScreenPosition($platform.get_node('screenDoor3').get_node('dimiantishi')) + return Vector2(pos.x-200,pos.y-200) elif equipmentName == 'screenDoor4RightClick' : - return getScreenPosition($platform.get_node('screenDoor4').get_node('left')) + var pos = getScreenPosition($platform.get_node('screenDoor4').get_node('dimiantishi')) + return Vector2(pos.x-50,pos.y-200) elif equipmentName in ['clickAdhesiveTapeOfscreenDoor1','clickAdhesiveTapeOfscreenDoor2','clickAdhesiveTapeOfscreenDoor3','clickAdhesiveTapeOfscreenDoor4'] : var ScreenDoorOperateWindow = $platform.get_node('ScreenDoorOperate') var ScreenDoorOperateWindowPos = ScreenDoorOperateWindow.position var AdhesiveTapePos = NodeUtils.find_child_by_name(ScreenDoorOperateWindow,'AdhesiveTape').get_global_position() - return Vector2(ScreenDoorOperateWindowPos.x+AdhesiveTapePos.x,ScreenDoorOperateWindowPos.y+AdhesiveTapePos.y) + return Vector2(ScreenDoorOperateWindowPos.x+AdhesiveTapePos.x+50,ScreenDoorOperateWindowPos.y+AdhesiveTapePos.y) else: var ScreenDoorOperateWindow = $platform.get_node('ScreenDoorOperate') var ScreenDoorOperateWindowPos = ScreenDoorOperateWindow.position var IsolationStripPos=NodeUtils.find_child_by_name(ScreenDoorOperateWindow,'IsolationStrip').get_global_position() - return Vector2(ScreenDoorOperateWindowPos.x+IsolationStripPos.x,ScreenDoorOperateWindowPos.y+IsolationStripPos.y) + return Vector2(ScreenDoorOperateWindowPos.x+IsolationStripPos.x+50,ScreenDoorOperateWindowPos.y+IsolationStripPos.y) func getScreenPosition(node): var screenPostion = $Camera3D.unproject_position(node.global_transform.origin) diff --git a/sceen/train/trainDoor.gd b/sceen/train/trainDoor.gd index de190a6..51d6b07 100644 --- a/sceen/train/trainDoor.gd +++ b/sceen/train/trainDoor.gd @@ -8,8 +8,10 @@ class_name TrainDoor ## 车门的状态枚举 enum Train_Door_STATE{ - open,# 开门 - close,# 关门 + opening,# 正在开门 + open,#开到位 + closeing,#正在关门 + close,# 关到位 } ##车门的状态 @@ -27,9 +29,30 @@ enum Train_Door_STATE{ ##打开车门 func openTrainDoor ()-> void: - trainDoorState=Train_Door_STATE.open + if trainDoorState == Train_Door_STATE.close and trainDoorFaultState != TrainDoor_Fault_State.openFault : + trainDoorState=Train_Door_STATE.open ##关闭车门 func closeTrainDoor ()-> void: trainDoorState=Train_Door_STATE.close + +## 车门的故障枚举 +enum TrainDoor_Fault_State{ + noFault,#无故障 + openFault,# 开门故障 +} + +##车门的故障状态 +@onready var trainDoorFaultState : TrainDoor_Fault_State = TrainDoor_Fault_State.noFault : + set(value): + if trainDoorFaultState != value: + trainDoorFaultState = value + +##设置故障 +func setTrainFault (faultType:TrainDoor_Fault_State)-> void: + trainDoorFaultState = faultType + +##恢复故障 +func removeTrainDoorFault ()-> void: + trainDoorFaultState = TrainDoor_Fault_State.noFault diff --git a/trainings/trainingGlassBreakageFault/trainingGlassBreakageFault.gd b/trainings/trainingGlassBreakageFault/trainingGlassBreakageFault.gd index a21022b..5efb428 100644 --- a/trainings/trainingGlassBreakageFault/trainingGlassBreakageFault.gd +++ b/trainings/trainingGlassBreakageFault/trainingGlassBreakageFault.gd @@ -5,14 +5,289 @@ extends Node ## 场景描述 @export var trainingDesc: String = "场景描述" +var stepOperation = [] + +var handleStep = [ + { + "stepName": "发现故障 步骤一:站务员手指:上行2号站台门。步骤二:站务员口呼:上行2号滑动门玻璃破碎。", + "stepOperation": [], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "上行2号滑动门玻璃破碎。" + }, + { + "stepName": "步骤三:站务员按下上行站台紧急停车按钮(阻止列车进站)。", + "stepOperation": ["JJTC","JJTC_Key","confirmUseKey","JJTCRightRotate","JJTCButton","JJTCCloseBox","JJTCLeftRotate"], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "" + }, + { + "stepName": "步骤四:站务员用对讲机汇报值班员:值班员,上行2号滑动门玻璃破碎,已按下上行紧急停车按钮。", + "stepOperation": [], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "值班员,上行2号滑动门玻璃破碎,已按下上行紧急停车按钮。" + }, + { + "stepName": "步骤五:值班员回复站务员:收到。", + "stepOperation": [], + "next": false, + "checkVoice": "", + "play": true, + "playPath": "res://Assets/training_speech/sd.mp3", + "stepTip": false, + }, + { + "stepName": "步骤六:站务员发现有玻璃掉落轨行区影响行车,汇报现场情况:值班员、值班站长,上行2号滑动门玻璃破碎,玻璃掉落轨行区影响行车,请派人处置。", + "stepOperation": [], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "值班员、值班站长,上行2号滑动门玻璃破碎,玻璃掉落轨行区影响行车,请派人处置。" + }, + { + "stepName": "步骤七:值班站长(机器人)自动回复:收到。步骤八:值班员回复站务员:收到。", + "stepOperation": [], + "next": false, + "checkVoice": "", + "play": true, + "playPath": "res://Assets/training_speech/sd.mp3", + "stepTip": false, + }, + { + "stepName": "现场处置 步骤一:站务员旁路相邻门:将3号门LCB打至“开门”位,泄除隧道风压。", + "stepOperation": ["LCB3","LCB_Key1","confirmUseKey","LCB3RightRotate","LCB3RightRotate"], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "" + }, + { + "stepName": "步骤二:站务员隔离故障门:将2号门LCB打至“隔离”位。", + "stepOperation": ["LCB2","LCB_Key2","confirmUseKey","LCB2LeftRotate"], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "" + }, + { + "stepName": "步骤三:站务员口呼:设置安全防护栏。", + "stepOperation": [], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "设置安全防护栏。" + }, + { + "stepName": "步骤四:站务员设置3号门安全护栏:在3号滑动门处设置安全防护栏。", + "stepOperation": ["screenDoor3RightClick","clickIsolationStripOfscreenDoor3"], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "" + }, + { + "stepName": "步骤五:站务员设置2号门安全护栏:在2号滑动门处设置安全防护栏。", + "stepOperation": ["screenDoor2RightClick","clickIsolationStripOfscreenDoor2"], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "" + }, + { + "stepName": "步骤六:站务员口呼:粘贴2号滑动门。", + "stepOperation": [], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "设置安全防护栏。" + }, + { + "stepName": "步骤七:站务员粘贴破碎站台门:用胶带手动粘贴2号滑动门。", + "stepOperation": ["screenDoor2RightClick","clickAdhesiveTapeOfscreenDoor2"], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "" + }, + { + "stepName": "步骤八:站务员用LCB钥匙(1号)将3号门的LCB转至“关门”位置。", + "stepOperation": ["LCB3","LCB3LeftRotate"], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "" + }, + { + "stepName": "步骤九:3号门关闭后站务员用LCB钥匙(1号)将3号门的LCB转至“自动”位置,取出钥匙。", + "stepOperation": ["LCB3LeftRotate","removeKeyOfWindowLCB3"], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "" + }, + { + "stepName": "步骤十:站务员撤出3号门安全护栏:撤除3号滑动门处安全防护栏。", + "stepOperation": ["screenDoor3RightClick","clickIsolationStripOfscreenDoor3"], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "" + }, + { + "stepName": "步骤十一:值班站长(机器人)对讲机联系行值:上行轨行区玻璃已清理完毕,人员已出清。", + "stepOperation": [], + "next": false, + "checkVoice": "", + "play": true, + "playPath": "res://Assets/training_speech/sd.mp3", + "stepTip": false, + }, + { + "stepName": "步骤十二:行值对讲机回复:上行轨行区玻璃已清理完毕,人员已出清,收到。", + "stepOperation": [], + "next": false, + "checkVoice": "", + "play": true, + "playPath": "res://Assets/training_speech/sd.mp3", + "stepTip": false, + }, + { + "stepName": "联系并恢复 步骤一:站务员用对讲机联系值班员:值班员,上行2号门已粘贴完毕,处于隔离位,现场处置完毕,请恢复上行紧急停车。", + "stepOperation": [], + "next": false, + "play": false, + "playPath": "", + "stepTip": true, + "checkVoice": "值班员,上行2号门已粘贴完毕,处于隔离位,现场处置完毕,请恢复上行紧急停车。" + }, + { + "stepName": "步骤二:值班员用对讲机回复站务员:收到,恢复上行紧急停车。", + "stepOperation": [], + "next": false, + "checkVoice": "", + "play": true, + "playPath": "res://Assets/training_speech/sd.mp3", + "stepTip": false, + }, + { + "stepName": "值班员的一系列操作后,实训完成!", + "stepOperation": [], + "next": false, + "checkVoice": "", + "play": false, + "playPath": "", + "stepTip": true, + }, + +] + +## 步骤操作执行index +var stepOperationIndex = 0 + +## 步骤执行index +var handleStepIndex = 0 + func _ready(): $TrainingDescDialog.title = trainingName $TrainingDescDialog.updateSceneDesc(trainingDesc) - + $TrainingDescDialog.grab_focus() + stepOperationIndex = 0 + handleStepIndex = 0 func _on_training_desc_dialog_start_training(): - $Timer.start() + $glassBreakageTimer.start() - -func _on_timer_timeout() -> void: +func _on_glass_breakage_timer_timeout() -> void: $total.setAssignScreenDoorsGlassBreakageFault([TotalScene.ScreenDoor_name.screenDoor2]) + $total.setAssignTrainDoorsOpenFault([TotalScene.ScreenDoor_name.screenDoor2]) + handleStepIndex = 0 + nextStep() + + +func nextStep(): + if handleStepIndex < handleStep.size(): + var step = handleStep[handleStepIndex] + handleStepIndex = handleStepIndex + 1 + if step.stepTip == true and $total.trainingMode != TotalScene.Training_Mode.Exam: + $StepTip.updateOperationTip(step.stepName) + if step.stepOperation.size() > 0: + initStepOperation() + if step.next == true: + $StepTimer.connect("timeout", nextStep) + $StepTimer.start() + if step.checkVoice: + await $VoiceCommunication.speech_record_check(step.checkVoice) + nextStep() + if step.play: + var sound = load(step.playPath) + await $VoiceCommunication.play_reply(sound) + nextStep() + if step.stepName == "值班员的一系列操作后,实训完成!": + $total.trainComeAndOpenScreenDoor () + +func setOperationNodeAndTip(): + $total.currenNeedClickNode = stepOperation[stepOperationIndex] + if $total.trainingMode == TotalScene.Training_Mode.Teach: + $TrainTip.setTrainingTip($total.allClickEquipmentInfo[stepOperation[stepOperationIndex]]) + +func initStepOperation(): + stepOperation = handleStep[handleStepIndex-1].stepOperation + stepOperationIndex = 0 + setOperationNodeAndTip() + +##与站台交互点击信号 +func _on_total_current_click_check_signal(isCorrect): + if isCorrect: + stepOperationIndex = stepOperationIndex + 1 + $StepJudgment.hideError() + if stepOperationIndex < stepOperation.size(): + if stepOperation[stepOperationIndex-1] in ['screenDoor2RightClick','screenDoor3RightClick'] : + $ScreenDoorRightClickTimer.connect("timeout", setOperationNodeAndTip) + $ScreenDoorRightClickTimer.start() + else : + setOperationNodeAndTip() + else: + $TrainTip.setTrainingTip('') + if handleStepIndex != 7 and handleStepIndex != 14: + nextStep() + else: + if $total.trainingMode != TotalScene.Training_Mode.Exam: + $StepJudgment.showError() + +##开门信号 +func _on_total_screen_door_open_confirm_signal(screenDoor): + if screenDoor.name == "screenDoor3" : + nextStep() + +##关门信号 +func _on_total_screen_door_close_confirm_signal(screenDoor): + if screenDoor.name == "screenDoor3" : + nextStep() + + +func _on_confirm_dialog_two_cancel(): + get_tree().paused = false + + +func _on_confirm_dialog_two_confirm(): + get_tree().paused = false + get_tree().reload_current_scene() diff --git a/trainings/trainingGlassBreakageFault/trainingGlassBreakageFault.tscn b/trainings/trainingGlassBreakageFault/trainingGlassBreakageFault.tscn index ed625fc..cc8a3f5 100644 --- a/trainings/trainingGlassBreakageFault/trainingGlassBreakageFault.tscn +++ b/trainings/trainingGlassBreakageFault/trainingGlassBreakageFault.tscn @@ -1,22 +1,51 @@ -[gd_scene load_steps=4 format=3 uid="uid://2p2vu21jtbtp"] +[gd_scene load_steps=9 format=3 uid="uid://2p2vu21jtbtp"] [ext_resource type="Script" path="res://trainings/trainingGlassBreakageFault/trainingGlassBreakageFault.gd" id="1_gyskf"] [ext_resource type="PackedScene" uid="uid://qh8b3g6n3k2u" path="res://trainings/training_desc_dialog.tscn" id="2_qfrwf"] [ext_resource type="PackedScene" uid="uid://btcksdsburk7t" path="res://sceen/total.tscn" id="3_28hir"] +[ext_resource type="PackedScene" uid="uid://6lortgihx5jy" path="res://Communication/voice_communication.tscn" id="4_oh56t"] +[ext_resource type="PackedScene" uid="uid://ckoxw6kgpjyhd" path="res://trainings/trainTip.tscn" id="5_rx4mw"] +[ext_resource type="PackedScene" uid="uid://b41vwoibfy5c6" path="res://trainings/stepJudgment.tscn" id="6_do0gx"] +[ext_resource type="PackedScene" uid="uid://b3whbe3mau53w" path="res://trainings/confirmDialog/confirmDialog.tscn" id="7_jtwv3"] +[ext_resource type="PackedScene" uid="uid://yhr1n6e2m2b6" path="res://trainings/stepTip/stepTip.tscn" id="8_o2duk"] [node name="trainingGlassBreakageFault" type="Node"] script = ExtResource("1_gyskf") -trainingName = "全自动运行线路站台门滑动门玻璃破碎应急处置" -trainingDesc = "全自动运行线路站台门滑动门玻璃破碎应急处置" +trainingName = "全自动运行线路站台门滑动门破碎(下轨行区)应急处置置" +trainingDesc = "列车即将驶入会展中心站上行站台时,站务员发现会展中心站上行2号站台门玻璃突然破裂,立即按下紧急停车按钮阻止列车进站。需现场处置完毕,经值班员确认情况,沟通行调后恢复紧急停车按钮。" [node name="TrainingDescDialog" parent="." instance=ExtResource("2_qfrwf")] [node name="total" parent="." instance=ExtResource("3_28hir")] -[node name="Timer" type="Timer" parent="."] +[node name="glassBreakageTimer" type="Timer" parent="."] wait_time = 2.0 one_shot = true +[node name="VoiceCommunication" parent="." instance=ExtResource("4_oh56t")] + +[node name="TrainTip" parent="." instance=ExtResource("5_rx4mw")] + +[node name="StepJudgment" parent="." instance=ExtResource("6_do0gx")] + +[node name="ConfirmDialog" parent="." instance=ExtResource("7_jtwv3")] +visible = false + +[node name="StepTip" parent="." instance=ExtResource("8_o2duk")] + +[node name="StepTimer" type="Timer" parent="."] +wait_time = 3.0 +one_shot = true + +[node name="ScreenDoorRightClickTimer" type="Timer" parent="."] +wait_time = 0.2 +one_shot = true + [connection signal="StartTraining" from="TrainingDescDialog" to="." method="_on_training_desc_dialog_start_training"] [connection signal="close_requested" from="TrainingDescDialog" to="TrainingDescDialog" method="_on_close_requested"] -[connection signal="timeout" from="Timer" to="." method="_on_timer_timeout"] +[connection signal="currentClickCheckSignal" from="total" to="." method="_on_total_current_click_check_signal"] +[connection signal="screenDoorCloseConfirmSignal" from="total" to="." method="_on_total_screen_door_close_confirm_signal"] +[connection signal="screenDoorOpenConfirmSignal" from="total" to="." method="_on_total_screen_door_open_confirm_signal"] +[connection signal="timeout" from="glassBreakageTimer" to="." method="_on_glass_breakage_timer_timeout"] +[connection signal="two_cancel" from="ConfirmDialog" to="." method="_on_confirm_dialog_two_cancel"] +[connection signal="two_confirm" from="ConfirmDialog" to="." method="_on_confirm_dialog_two_confirm"] diff --git a/trainings/trainingOpenDoorFault/trainingOpenDoorFault.gd b/trainings/trainingOpenDoorFault/trainingOpenDoorFault.gd index ce57ce1..7bfa012 100644 --- a/trainings/trainingOpenDoorFault/trainingOpenDoorFault.gd +++ b/trainings/trainingOpenDoorFault/trainingOpenDoorFault.gd @@ -93,8 +93,7 @@ var handleStep = [ { "stepName": "步骤九:值班员回复:收到。", "stepOperation": [], - "next": true, - "waitTime": 2, + "next": false, "checkVoice": "", "play": true, "playPath": "res://Assets/training_speech/sd.mp3", @@ -168,9 +167,7 @@ func _on_total_current_click_check_signal(isCorrect): stepOperationIndex = stepOperationIndex + 1 $StepJudgment.hideError() if stepOperationIndex < stepOperation.size(): - $total.currenNeedClickNode = stepOperation[stepOperationIndex] - if $total.trainingMode == TotalScene.Training_Mode.Teach: - $TrainTip.setTrainingTip($total.allClickEquipmentInfo[stepOperation[stepOperationIndex]]) + setOperationNodeAndTip() else: $TrainTip.setTrainingTip('') else: diff --git a/trainings/trainingPinchPeopleFault/trainingPinchPeopleFault.gd b/trainings/trainingPinchPeopleFault/trainingPinchPeopleFault.gd index d24d3fc..b84143e 100644 --- a/trainings/trainingPinchPeopleFault/trainingPinchPeopleFault.gd +++ b/trainings/trainingPinchPeopleFault/trainingPinchPeopleFault.gd @@ -107,6 +107,15 @@ var handleStep = [ "stepTip": true, "checkVoice": "收到" }, + { + "stepName": "实训已完成!", + "stepOperation": [], + "next": false, + "checkVoice": "", + "play": false, + "playPath": "", + "stepTip": true, + }, ] ## 步骤操作执行index @@ -176,9 +185,7 @@ func _on_total_current_click_check_signal(isCorrect): stepOperationIndex = stepOperationIndex + 1 $StepJudgment.hideError() if stepOperationIndex < stepOperation.size(): - $total.currenNeedClickNode = stepOperation[stepOperationIndex] - if $total.trainingMode == TotalScene.Training_Mode.Teach: - $TrainTip.setTrainingTip($total.allClickEquipmentInfo[stepOperation[stepOperationIndex]]) + setOperationNodeAndTip() else: $TrainTip.setTrainingTip('') else: