46 lines
1.0 KiB
GDScript3
46 lines
1.0 KiB
GDScript3
|
@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
|