楼上的解决方式是整个画面正中显示,可以用特殊角色定义。
如果只是要求在对话框内文本居中,则需要自定义样式。大致方法如下:
1. 文档的角色定义部分提到过“样式化文本和窗口 以 who_ 、 what_ 和 window_ 开头的关键词参数,会去掉前缀后分别用于样式化角色名、对话文本和窗口内容。”根据楼主需求,应该定义一个 what_ 开头的样式,比如 octopus_say_dialogue 。2. 在 say 界面定义新的样式。打开screen.rpy, screen say(who, what) 部分找到 style say_dialogue is default ,添加一句:
[RenPy] 纯文本查看 复制代码 style octopus_say_dialogue is say_dialogue
同时在 style say_dialogue 的后面添加 octopus_say_dialogue 的定义:
[RenPy] 纯文本查看 复制代码 style altoria_say_dialogue:
# 这句好像可有可无
properties gui.text_properties("dialogue")
xpos 0.5
xsize gui.dialogue_width
ypos 0.5
3. 定义角色时使用对应样式:
[RenPy] 纯文本查看 复制代码 define s = Character('希尔维亚', what_style='octopus_say_dialogue', color="#ff6600")
修改个别角色对话文本样式的思路还是要自定义样式。不过上面那个效果有点问题,文本有时候会跑到右边去。具体的调试就请楼主自己动手了……
|