godot-psd-training/UI/psl/key_right_rotate.gd
joylink_zhaoerwei e26fa7b94f psl面板备用
2024-04-19 17:48:20 +08:00

29 lines
937 B
GDScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

extends Sprite2D
@onready var open_light: Sprite2D = $"../../Light/openLight"
func test_enter():
var mouse_position = get_global_mouse_position()
return self.get_rect().has_point(to_local(mouse_position))
func _input(event):
if event is InputEventMouseMotion:
var flag1 = test_enter()
if flag1:
self.modulate = Color(0, 1, 1, 1)
else:
self.modulate = Color(1, 1, 1, 1)
# 鼠标在移动,可以在这里检查鼠标是否进入了当前节点的区域
if event is InputEventMouseButton and event.button_index == MOUSE_BUTTON_LEFT and event.pressed:
# 如果鼠标在Sprite2D上点击则处理事件
var flag2 = test_enter()
if flag2:
if $"../Key".rotation+PI/6<0.001:
$"../Key".rotation=PI/6
$"../Keyhole".rotation=PI/6
else:
$"../Key".rotation=-PI/6
$"../Keyhole".rotation=-PI/6
open_light.visible = !open_light.visible
$"../..".clickKeySwitchSignal.emit(open_light.visible)