You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RenPy自定义主角名称后角色文本颜色不生效问题求助

RenPy自定义主角名称后角色文本颜色不生效的解决办法

你的问题核心是变量名冲突:

  • 你先通过define sn = Character(...)定义了一个角色对象,但之后在askname标签里,用$ sn = renpy.input(...)把sn重新赋值成了用户输入的字符串,原来的Character对象被直接覆盖了。
  • 当你写sn "Hi, Luca!"时,RenPy识别到sn是字符串,会把它当成临时角色名,自动使用gui.accent_color的默认样式,而非你定义的白色。

解决办法

给角色对象换个不冲突的变量名,同时保留sn作为存储用户名的变量即可:

python:
    sn = ""  # 专门存储用户名的变量

define luca = Character("     Luca Kaneshiro", color="#ffffff")
define mc = Character("%(sn)s", color="#ffffff")  # 角色对象用新变量名(比如mc代表主角)

label start:
    call askname

    luca "Hey %(sn)s."
    mc "Hi, Luca!"  # 用新的角色变量名调用台词

label askname:
    $ sn = renpy.input("What's my name?", length=32)

修改后,主角的台词就会按照你设定的#ffffff白色正常显示了。

内容的提问来源于stack exchange,提问作者Yumi Tkh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 02:00:34