0

快速信息:这是基于 Python 构建的 Renpy 视觉小说游戏引擎(可在 Github 上获得)。

我想要做的是在['dismiss']播放一系列转换时将键盘映射的变量更改为 null,这样读者就不能跳过场景。场景结束后,我想重新启用默认值['dismiss'],以便用户可以继续阅读 VN。

到目前为止,我的脚本中的内容是:

$ enter_off()
##################
# Animated Intro #
##################
scene bg_sky_winter_sunny with dissolve300s
$ enter_on()

在另一段代码中定义的是:

python early:
    # turns enter off
    # Also tried # config.keymap['dismiss'] = [] # Same result as below.
    def enter_off():
        config.keymap['dismiss'].remove('mouseup_1')
        config.keymap['dismiss'].remove('K_RETURN')
        config.keymap['dismiss'].remove('K_SPACE')
        config.keymap['dismiss'].remove('K_KP_ENTER')
        config.keymap['dismiss'].remove('joy_dismiss')
        return

    # turns enter on
    def enter_on():
        config.keymap['dismiss'].append('mouseup_1')
        config.keymap['dismiss'].append('K_RETURN')
        config.keymap['dismiss'].append('K_SPACE')
        config.keymap['dismiss'].append('K_KP_ENTER')
        config.keymap['dismiss'].append('joy_dismiss')
        return

    # copy of the default keymap in renpy-6.16.5-sdk\renpy\common\00keymap.rpy
    def full_kb():
        # the rest of the code is long and unnecessary for the question.

现在,我遇到的问题是,当我使用第一个代码块进行介绍时,dismiss变量按预期设置为 null,但是在介绍结束并且场景更改后,enter_on()不能按预期工作,也不能更新引擎以将值包含在dismiss或不将值添加到dismiss. 我基本上看过我能想到的所有地方,但由于缺乏适当的文档,我真的不知道如何让它工作。

以下是一些指向有一些信息的地方的链接:

Renpy 键盘映射文档:http ://www.renpy.org/wiki/renpy/doc/reference/Keymap

Renpy源码:https ://github.com/renpy/renpy

任何指针都会很棒!

4

1 回答 1

0

在 lemmasoft 论坛上询问并收到答案。链接在这里: http://lemmasoft.renai.us/forums/viewtopic.php?f=8&t= 25588

于 2014-03-22T17:10:20.637 回答