1

我想更改使用 Character 类回显的文本以使用上下文。

假设我的主要角色名称存储在一个变量中,每个其他角色都使用这个变量在对话中调用他,但我希望这个变量被替换是一定的条件。我想在元上下文中检查这些条件(不想更改每个对话文本,只需在函数中捕获一些对话以更新文本)

我搜索了 Character 类和 Character 回调,即使使用了翻译方法,但我找不到任何合适的东西。

4

1 回答 1

0

我不知道我是否理解得很好,但我会添加一个我理解的例子,你会告诉我:

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 函数,而您将作为名称存储的字符串变量仅用于将其写入文本块。任何其他字符串变量都可以用于任何事情。希望这是您的问题,并且我已解决,如果没有,我很乐意再次为您提供帮助:)

于 2019-03-06T14:03:34.047 回答