xiandie/scene/ground/script/c04/除晦游戏label.gd

46 lines
1.0 KiB
GDScript3
Raw Normal View History

2025-09-17 14:41:06 +00:00
@tool
extends RichTextLabel
@export var id := 1:
set(val):
id = val
if is_node_ready():
refresh()
@warning_ignore("unused_private_class_variable")
@export_tool_button("刷新") var _refresh = refresh
const self_mod = Color.GRAY
func _ready() -> void:
refresh()
self_modulate = self_mod
meta_hover_started.connect(_on_meta_hover_started)
meta_hover_ended.connect(_on_meta_hover_ended)
# res://asset/dialogue/inspect_content.zh_CN.translation
var items_translation = preload("uid://eu5aw5htt74r") as Translation
func refresh():
var translation_key = "c04_除晦游戏" + str(id)
var msg = tr(translation_key)
if Engine.is_editor_hint():
msg = items_translation.get_message(translation_key)
msg = msg.replace("{br}", "\n")
text = '[url=' + str(id) + '][wave amp=8.0 freq=2.0]' + msg + "[/wave][/url]"
func _notification(what: int) -> void:
if what == NOTIFICATION_TRANSLATION_CHANGED:
refresh()
func _on_meta_hover_started(_m) -> void:
self_modulate = Color.WHITE
func _on_meta_hover_ended(_m) -> void:
self_modulate = self_mod