查看: 1242|回复: 1

[有事请教] 这段场景代码为什么无法发挥作用?

[复制链接]
梦石
0
星屑
10345
在线时间
1117 小时
注册时间
2015-2-10
回帖
164
发表于 2024-4-5 11:24:01 | 显示全部楼层 |阅读模式
悬赏10星屑已解决
本帖最后由 fbeds 于 2024-4-5 12:26 编辑

如题,我用一段代码来创建一个场景,进入该场景时自动执行73号公共事件(包含显示图片以及利用插件的指令给图片添加按钮效果,点击按钮后会继续调用别的公共事件),在74号公共事件执行完毕后会退出该场景。然而,虽然场景可以进入,但73号公共事件没有执行,没有看到我在事件里设置好的显示的图片,这是怎么回事?
[pre lang="ruby"]function Scene_Custom() {
    this.initialize(...arguments);
}

Scene_Custom.prototype = Object.create(Scene_MenuBase.prototype);
Scene_Custom.prototype.constructor = Scene_Custom;

Scene_Custom.prototype.initialize = function() {
    Scene_MenuBase.prototype.initialize.call(this);
};

Scene_Custom.prototype.start = function() {
    Scene_MenuBase.prototype.start.call(this);
};

Scene_Custom.prototype.update = function() {
    Scene_MenuBase.prototype.update.call(this);
    if ($gameTemp.isCommonEventReserved() && $gameTemp.reservedCommonEvent().eventId() === 74) {
        this.exitScene(); //74号公共事件执行完后退出场景
    }
};

Scene_Custom.prototype.exitScene = function() {
    SceneManager.pop();
};

// 在场景创建时执行73号公共事件
SceneManager.onSceneCreate = function(scene) {
    if (scene instanceof Scene_Custom) {
        $gameTemp.reserveCommonEvent(73);
    }
};[/pre]

最佳答案

查看完整内容

并非所有场景都能执行公共事件,你这场景执行不了公共事件,只有存在事件解释器的场景才能执行公共事件,比如Scene_Map等。你的代码写的也不是执行公共事件,只是把事件先存到着,等你退回到地图,73号事件才会执行。 参考Andar给的回答:https://forums.rpgmakerweb.com/index.php?threads/mz-call-a-common-event-before-acessing-menu.147873/post-1276007 所以我的建议是直接改成运行脚本而不是用公共事件,这样能实现相同的 ...
梦石
0
星屑
3264
在线时间
777 小时
注册时间
2023-5-18
回帖
154
发表于 2024-4-5 11:24:02 | 显示全部楼层
本帖最后由 Arrose 于 2024-4-6 14:22 编辑

并非所有场景都能执行公共事件,你这场景执行不了公共事件,只有存在事件解释器的场景才能执行公共事件,比如Scene_Map等。你的代码写的也不是执行公共事件,只是把事件先存到着,等你退回到地图,73号事件才会执行。
参考Andar给的回答:https://forums.rpgmakerweb.com/i ... 147873/post-1276007

所以我的建议是直接改成运行脚本而不是用公共事件,这样能实现相同的效果而且简单得多。
B站:传送门
-----------------------------------------------------------------------
“与其为做不到的事耿耿于怀,不如为自己做到的事而喜悦
吧!”

-----------------------------------------------------------------------
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部