查看: 9054|回复: 18

[有事请教] 如何禁止主角行动呢

[复制链接]
梦石
0
星屑
1720
在线时间
160 小时
注册时间
2019-10-17
回帖
43

RM创作大赛01参赛者

发表于 2021-4-4 11:05:06 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
我的目标是两个NPC(A和B)同时出现,然后沿着各自的路线到达各自的目的地。这期间主角得看着他们不能动。等他们到了以后,主角才能自由移动。

在论坛里搜过类似的问题,发现有种解答是使用“自动执行”。但如果我使用自动执行,这俩NPC事件就会逐一运行——A移动完,B才开始移动。

所以各位大佬能指点一下小白吗?

比较健康
梦石
0
星屑
29901
在线时间
5734 小时
注册时间
2016-3-8
回帖
1653
发表于 2021-4-4 11:24:35 | 显示全部楼层
本帖最后由 alexncf125 于 2021-4-4 14:25 编辑

(function(){
    var _20210404_Game_Player_canMove = Game_Player.prototype.canMove;
    Game_Player.prototype.canMove = function() {
        //1号开关开启时, 玩家不能移动
        return !$gameSwitches.value(1) &&  _20210404_Game_Player_canMove.call(this);
    };
})();

1.js/plugin目录新建"PlayerCannotMoveWhenSwitchOn.txt"文本
2.贴上以上代码后, 保存並把文本后缀改成"PlayerCannotMoveWhenSwitchOn.js"
3.打开插件管理器並启用"PlayerCannotMoveWhenSwitchOn"
4.在那两个並行事件移动前打开1号开关, 移动完后关闭开关
5.如想在事件移动时禁示止打开菜单, 则需修改Scene_Map的updateCallMenu

评分

参与人数 2赞 +2 收起 理由
ws6tbz + 1 厉害
白嫩白嫩的 + 1 认可答案

查看全部评分

回复 1 0

使用道具 举报

梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2021-4-4 11:25:38 | 显示全部楼层
本帖最后由 soulsaga 于 2021-4-4 11:46 编辑

用並行+文章显示...................
回复

使用道具 举报

梦石
0
星屑
11809
在线时间
623 小时
注册时间
2016-8-25
回帖
1340

R考场第七期纪念奖

发表于 2021-4-4 12:01:45 | 显示全部楼层
设置移动路线为无并且无限循环
回复 1 0

使用道具 举报

梦石
0
星屑
1720
在线时间
160 小时
注册时间
2019-10-17
回帖
43

RM创作大赛01参赛者

 楼主| 发表于 2021-4-4 13:39:53 | 显示全部楼层
soulsaga 发表于 2021-4-4 11:25
用並行+文章显示...................

并行处理我理解,这个文章显示是为了干什么呢
比较健康
回复

使用道具 举报

梦石
0
星屑
1720
在线时间
160 小时
注册时间
2019-10-17
回帖
43

RM创作大赛01参赛者

 楼主| 发表于 2021-4-4 13:50:43 | 显示全部楼层
alexncf125 发表于 2021-4-4 11:24
(function() {
    var _Game_Player_cannotMove_switchOn = Game_Player.prototype.canMove;
    Game_Pla ...

非常感谢。但我尝试了一下,遇到点问题。安装好并且激活以后,我刚打开游戏主角就没法移动。是我哪里没设置好吗

点评

不好意思...是我写错了...2L已修正  发表于 2021-4-4 14:13
比较健康
回复

使用道具 举报

梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2021-4-4 13:51:09 | 显示全部楼层
ws6tbz 发表于 2021-4-4 13:39
并行处理我理解,这个文章显示是为了干什么呢

显示文章中主角不能动好像..
回复

使用道具 举报

梦石
0
星屑
16261
在线时间
4014 小时
注册时间
2015-9-14
回帖
1322

开拓者

发表于 2021-4-4 17:29:39 | 显示全部楼层
只要有事件開自動,限制角色移動.
事件1,開自動.
事件2,開並行.

评分

参与人数 3赞 +3 收起 理由
ws6tbz + 1 我很赞同
白嫩白嫩的 + 1 666666
alexncf125 + 1 精品文章

查看全部评分

https://rpg.blue/data/attachment/album/202003/28/021323lltgrsvfytfwuya5.gif
回复 1 0

使用道具 举报

梦石
0
星屑
1720
在线时间
160 小时
注册时间
2019-10-17
回帖
43

RM创作大赛01参赛者

 楼主| 发表于 2021-4-4 23:54:01 | 显示全部楼层
alexncf125 发表于 2021-4-4 11:24
(function(){
    var _20210404_Game_Player_canMove = Game_Player.prototype.canMove;
    Game_Player. ...

再次感谢!这次可以了,不过途中还是可以打开菜单。如果用代码的方式可以阻止玩家玩家打开菜单吗
比较健康
回复

使用道具 举报

梦石
0
星屑
1720
在线时间
160 小时
注册时间
2019-10-17
回帖
43

RM创作大赛01参赛者

 楼主| 发表于 2021-4-4 23:56:35 | 显示全部楼层
wabcmcc 发表于 2021-4-4 17:29
只要有事件開自動,限制角色移動.
事件1,開自動.
事件2,開並行.

嗯嗯,我刚开始确实是用这个办法。结果发现自动执行的NPC(A)到了终点,并行处理的那个NPC(B)还在走。导致A刚走完,玩家就可以操作了。

……

最后我把俩NPC的执行方式调换过来就解决了。
比较健康
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部