extends Node3D ##是否允许操作 var allowHandle :bool = true ##所有ShortTool点击操作汇总 signal AllClickShortcutToolModel(equipmentName:String, equipmentInfo: Variant) func _on_mouse_entered() -> void: Input.set_default_cursor_shape(Input.CursorShape.CURSOR_POINTING_HAND) func _on_mouse_exited() -> void: Input.set_default_cursor_shape(Input.CursorShape.CURSOR_ARROW) func _on_handheld_radio_area_3d_input_event(camera: Node, event: InputEvent, position: Vector3, normal: Vector3, shape_idx: int) -> void: if event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT: AllClickShortcutToolModel.emit('handheldRadioModel',self) if !allowHandle : return $handheldRadioModel.visible = false func _on_escalator_key_area_3d_input_event(camera: Node, event: InputEvent, position: Vector3, normal: Vector3, shape_idx: int) -> void: if event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT: AllClickShortcutToolModel.emit('escalatorKeyModel',self) if !allowHandle : return $escalatorKeyModel.visible = false func _on_metal_barrier_area_3d_input_event(camera: Node, event: InputEvent, position: Vector3, normal: Vector3, shape_idx: int) -> void: if event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT: AllClickShortcutToolModel.emit('metalBarrierModel',self) if !allowHandle : return $metalBarrierModel.visible = false $metalBarrier2.visible = false $metalBarrier3.visible = false func _on_notice_signs_area_3d_input_event(camera: Node, event: InputEvent, position: Vector3, normal: Vector3, shape_idx: int) -> void: if event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT: AllClickShortcutToolModel.emit('noticeSignsModel',self) if !allowHandle : return $noticeSignsModel.visible = false func _on_picketline_area_3d_input_event(camera: Node, event: InputEvent, position: Vector3, normal: Vector3, shape_idx: int) -> void: if event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT: AllClickShortcutToolModel.emit('picketlineModel',self) if !allowHandle : return $picketlineModel.visible = false func _on_hoarding_area_3d_input_event(camera: Node, event: InputEvent, position: Vector3, normal: Vector3, shape_idx: int) -> void: if event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT: AllClickShortcutToolModel.emit('hoardingModel',self) if !allowHandle : return $hoardingModel.visible = false