月光石

[url]http://www.likenote.com/listener/article/928[/url]

[img]http://www.likenote.com/images/dj/2006/12/1166538064_89.jpg[/img]

今天和老莫瞎扯几句动画,顺手推荐一部画面效果极棒的都市英雄题材动作猛片《鸦karas》。这首歌是片尾曲,难得的安静。

Rurutia来自塔希提语,意为“恩惠之雨/甘露”。她是位蛮神秘兮兮的创作歌手,嗓音沙哑缥缈,深得治疗系音乐fans推崇。其实我也不觉得她的歌很“治疗”,有几首还是很“吵闹”的呼呼。。。不管了,有一首好听的算一首拉,祝大家心理健康,没事偷着乐~
extends CanvasLayer # 合并原有文本和新增文本(包含换行符) var lines = [ "欢迎来到我的游戏!", "点击空格或鼠标继续...", "游戏正式开始!", "第一章:晦夜长明", "羲和驭日,沐乎汤谷,爰止爰息,是为昼明。", "然‘万古之晦’至,金乌泣血,光耀蒙尘。", "今汝为‘无归之魂’,凭依万类,行于晦夜……唯愿‘长明’。", "传说,日御羲和,生十日,轮值天穹。", "九日陨,余一子。", "其名,金乌。", "", "【画面微亮,映入眼帘的是一片狼藉】", "你“醒”了过来。", "或者说,你“存在”的意识,第一次感受到了自身。", "", "没有身体,没有重量,只有一片虚无的感知,如同一缕被遗弃的青烟。", "", "你正漂浮在一座残破不堪的殿宇中。借着从破损穹顶漏下的、清冷如水的月白色光芒,你能看清这是一座祭祀场所——望舒祠。神台上,那位驭月女神望舒的玉像已然倾颓,半张脸庞破碎,只余下一只清冷的眸子,无声地凝视着这片死寂。", "", "空气中弥漫着浓重的血腥味、木头焦糊味,以及一种……更为深邃的、仿佛源自灵魂腐朽的“晦涩”气息。", "", "你的“目光”扫过地面,三具尸体以一种绝望的姿态陈列其间,显然刚经历了一场如同野兽撕扯般的残酷袭击。", "", "【系统提示:发现可凭依的“躯壳”)】", "", "第一具,倒在神台旁。", "一位身着月白流云袍的年轻女子,心口处是一片触目惊心的撕裂伤。她手中紧紧攥着一枚散发着微弱温润光芒的玉佩,脸上凝固着施法时的专注与惊愕。她的袍角绣着药草与银针的纹样——一位 【沐月医者】。她似乎试图用最后的力量守护着什么,但失败了。", "", "第二具,匍匐在通往大门的路径上。", "这是一个身材魁梧的男性,穿着镶嵌了月光的残破铁甲,背后的甲胄完全被利爪撕开,深可见骨。他手中紧握着一面几乎断裂的藤盾,盾面上满是深刻的爪痕,至死都保持着护卫的姿态——一位 【守夜人】。他用自己的脊背,为身后的人争取了最后几秒。", "", "第三具,蜷缩在倒塌的书架旁。", "一位戴着单边眼镜、身着青色文士长衫的少年,身体扭曲,脖颈处有诡异的紫黑色瘀痕。他身边散落着几张焦黑的符纸和一个空空如也的符袋——一位 【初阶符师】。他似乎没能成功释放出任何一个像样的攻击法术。", "", "袭击者……不像人类。地面上残留着焦躁的、带有腐蚀性的爪印,以及几缕沾染着不祥暗红色光泽的野兽毛发。", "", "【环境互动提示:感知到躯壳内未散的“执念”)】", "", "当你将意识靠近这三具尸体时,微弱的记忆碎片如同冰针,刺入你的感知:", "", "来自医者:“……光……变了……快启动……‘太阴敛息阵’……”", "", "来自骑士:“……挡住……不能让它们……亵渎神祠……”", "", "来自法师:“……符法……为什么失效了……那红色的光……”", "", "清冷的月光,透过破洞,在你虚无的“身体”上流淌,带来一丝奇异的安宁感。而祠外,透过门缝与墙隙,你能“听”到一种低沉、混乱、充满渴望的嘶吼,以及……那令人心悸的、仿佛能直接灼烧灵魂的暗红色微光。", "", "你,无归的旅魂,于此晦夜苏醒。", "前方,是三具通往现世的钥匙,与一个在疯狂边缘燃烧的世界。", "", "选择,你的第一具“躯壳”。" ] var current_line_index = 0 var char_index = 0 var is_printing = false var timer = Timer.new() var rich_label # 新增:用于存储已完成的文本内容 var accumulated_text = "" # 新增:切换显示模式的阈值(第7行开始) const APPEND_MODE_START = 7 func _ready(): # 创建RichTextLabel rich_label = RichTextLabel.new() rich_label.name = "DialogueLabel" rich_label.bbcode_enabled = true rich_label.scroll_active = false rich_label.autowrap_mode = TextServer.AUTOWRAP_WORD # 启用自动换行 rich_label.fit_content = true rich_label.custom_minimum_size = Vector2(800, 80) # 样式设置 rich_label.add_theme_font_size_override("normal_font_size", 32) # 稍小字号适应多行 rich_label.add_theme_color_override("default_color", Color.WHITE) rich_label.add_theme_constant_override("line_separation", 2) # 增加行间距 # 使用VBoxContainer替代CenterContainer var container = VBoxContainer.new() container.anchor_right = Control.ANCHOR_END container.anchor_bottom = Control.ANCHOR_END container.size_flags_vertical = Control.SIZE_EXPAND_FILL container.add_child(rich_label) add_child(container) # 定时器设置 timer.wait_time = 0.05 # 更快的打印速度适应多行 timer.one_shot = false add_child(timer) timer.timeout.connect(_on_Timer_timeout) # 窗口大小变化处理 get_viewport().size_changed.connect(_on_viewport_size_changed) _on_viewport_size_changed() # 开始打印第一行 start_printing_line() func _on_viewport_size_changed(): var viewport_size = get_viewport().size rich_label.custom_minimum_size = Vector2(viewport_size.x * 0.9, viewport_size.y * 0.65) # 更大的显示区域 rich_label.position.y = viewport_size.y * 0.65 # 固定在屏幕底部65%位置 func start_printing_line(): if current_line_index >= lines.size(): return is_printing = true char_index = 0 # 新增:前6行覆盖显示,第7行开始追加显示 if current_line_index < APPEND_MODE_START: rich_label.text = "" accumulated_text = "" timer.start() func _on_Timer_timeout(): if char_index < lines[current_line_index].length(): # 新增:区分显示模式 if current_line_index < APPEND_MODE_START: # 覆盖模式:单行居中显示 var current_text = lines[current_line_index].substr(0, char_index + 1) rich_label.text = "[center]" + current_text + "[/center]" else: # 追加模式:多行连续显示 accumulated_text += lines[current_line_index].substr(char_index, 1) rich_label.text = accumulated_text char_index += 1 else: # 行结束时处理 timer.stop() is_printing = false # 新增:追加模式时添加换行符 if current_line_index >= APPEND_MODE_START - 1: # 第6行结束时开始准备追加 accumulated_text += "\n" # 添加换行符 func _input(event): var should_advance = ( (event is InputEventKey and event.pressed and event.keycode == KEY_SPACE) or (event is InputEventMouseButton and event.pressed and event.button_index == MOUSE_BUTTON_LEFT) ) if should_advance: if is_printing: # 立即完成当前行 if current_line_index < APPEND_MODE_START: rich_label.text = "[center]" + lines[current_line_index] + "[/center]" else: # 追加模式下完成整行 accumulated_text += lines[current_line_index].substr(char_index) rich_label.text = accumulated_text accumulated_text += "\n" # 添加换行符 timer.stop() is_printing = false elif current_line_index + 1 < lines.size(): # 准备下一行 current_line_index += 1 start_printing_line() 我修改了一些东西,但是我运行时发现有个问题,就是我无法向下滑动滚轮看到下面的文字,下面的文字都被挡住了,请解决一下
11-03
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值