设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2612|回复: 2
打印 上一主题 下一主题

[有事请教] 脚本方面 command执行方法

[复制链接]

Lv1.梦旅人

梦石
0
星屑
26
在线时间
701 小时
注册时间
2021-3-24
帖子
549
跳转到指定楼层
1
发表于 2021-5-22 10:50:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
setHandler('xxxx',   this.commandyyy.bind(this));
后面bind的方法必须跳到带有Window_Command激活状态的窗口里么,不然就卡住。
有什么方法让他不跳出来么- -

全家活光光~

Lv5.捕梦者

梦石
16
星屑
12329
在线时间
1439 小时
注册时间
2020-3-21
帖子
367

极短23获奖

2
发表于 2021-5-22 20:22:46 | 只看该作者
是能按下,但是按下以后不激活别的窗口吗?
比如你在这里写了一句:
this._aaaaaWindow.setHandler('xxxx',   this.commandyyy.bind(this));
那么你就在同场景的commandyyy函数里写上:
this._aaaaaWindow.activate();
这样就不会让原来的选择窗口取消激活。


完整的:
Scene_AAAAAe.prototype.createaaaaWindow = function() {
    this._aaaaaWindow=new Window_aaaaa();
    this._aaaaaWindow.setHandler('xxxx',   this.commandyyy.bind(this));
    this.addWindow(this._aaaaaWindow);
};
Scene_AAAAAe.prototype.commandyyy= function() {
    this._aaaaaWindow.activate();
};


解释:自带的功能是你按下对应键/按钮后,自动将原来的窗口取消激活(deactivate),然后执行commandyyy。
这个时候你直接在commandyyy里再激活就对了。


如果你说的是直接“按下后没有反应”,那么就得改/覆写Window_Selectable.prototype.processHandling或Window_Selectable.prototype.processOk了。
如果你说的是直接让按钮一直不能按,那么就改addCommand,要是一会儿能一会儿不能,建议直接用Window_Selectable而不是Window_Command。
不过我觉得你想的不是后两种情况,所以也就不详说了。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
26
在线时间
701 小时
注册时间
2021-3-24
帖子
549
3
 楼主| 发表于 2021-5-22 23:41:46 | 只看该作者
谢谢大佬答疑
全家活光光~
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-13 17:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表