我想更改使用 Character 类回显的文本以使用上下文。
假设我的主要角色名称存储在一个变量中,每个其他角色都使用这个变量在对话中调用他,但我希望这个变量被替换是一定的条件。我想在元上下文中检查这些条件(不想更改每个对话文本,只需在函数中捕获一些对话以更新文本)
我搜索了 Character 类和 Character 回调,即使使用了翻译方法,但我找不到任何合适的东西。
我不知道我是否理解得很好,但我会添加一个我理解的例子,你会告诉我:
define hero = Character("[player_name]")
define sis = Character("Lola")
define mom = Character("Ariel")
define friend = Character("Elsa")
label start:
hero "My name is :"
$ player_name = ("What is your name ?")
$ player_name = povname.strip()
friend "Hey [player_name] !"
sis "Hey bro !"
mom "Hey son !"
希望这看起来像你打算得到的。现在,如果您想考虑自定义名称,例如“Brother”而不是“Bro”,您可以:
default from_sis = ""
default from_mom = ""
label custom_names:
$ from_sis = ("How does your sister call you ?")
$ from_sis = povname.strip()
$ from_mom = ("Same for your mother")
$ from_mom = povname.strip()
sis "Hey [from_sis]"
mom "Hey [from_mom]"
请记住,Character 类仅用于 renpy.say 函数,而您将作为名称存储的字符串变量仅用于将其写入文本块。任何其他字符串变量都可以用于任何事情。希望这是您的问题,并且我已解决,如果没有,我很乐意再次为您提供帮助:)