2025-07-08 16:13:06 +00:00
|
|
|
extends Sprite2D
|
|
|
|
|
|
|
|
@export var display_sprite := true
|
|
|
|
|
|
|
|
@onready var ghost_sprite = $"鬼差" as AnimatedSprite2D
|
|
|
|
|
|
|
|
|
|
|
|
# Called when the node enters the scene tree for the first time.
|
|
|
|
func _ready() -> void:
|
|
|
|
if not display_sprite:
|
|
|
|
ghost_sprite.hide()
|
|
|
|
else:
|
2025-07-11 08:04:35 +00:00
|
|
|
ghost_sprite.self_modulate.a = 0.3
|
2025-07-08 16:13:06 +00:00
|
|
|
tween_modulate()
|
|
|
|
|
|
|
|
|
|
|
|
var hiding = false
|
|
|
|
|
|
|
|
|
|
|
|
func tween_modulate() -> void:
|
|
|
|
if hiding:
|
|
|
|
return
|
|
|
|
var tween = create_tween()
|
2025-07-11 08:04:35 +00:00
|
|
|
var rand_mod = randf_range(0.25, 0.45)
|
|
|
|
tween.tween_property(ghost_sprite, "self_modulate:a", rand_mod, 0.5)
|
2025-07-08 16:13:06 +00:00
|
|
|
tween.tween_callback(tween_modulate)
|
|
|
|
|
|
|
|
|
|
|
|
func esae_hide_ghost() -> void:
|
|
|
|
hiding = true
|
|
|
|
var tween = create_tween()
|
2025-07-11 08:04:35 +00:00
|
|
|
tween.tween_property(ghost_sprite, "self_modulate:a", 0.0, 1.0)
|