查看: 2786|回复: 2

[有事请教] 有办法让开关控制技能吗

[复制链接]
梦石
0
星屑
445
在线时间
102 小时
注册时间
2020-3-22
回帖
16
发表于 2020-5-29 14:03:10 | 显示全部楼层 |阅读模式

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

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

×
如题,请问如何做到开关控制技能,当开关开启时技能才能使用,
因为想做一个技能,所有角色都拥有此技能,但是一场战斗中只能有一个角色使用此技能一次
梦石
0
星屑
7801
在线时间
683 小时
注册时间
2012-7-29
回帖
172
发表于 2020-5-29 16:29:00 | 显示全部楼层
本帖最后由 开关关 于 2020-5-29 17:07 编辑

下面这段代码在测试中没发现问题。
点击展开/收起
[pre lang="javascript"]Window_SkillList.prototype.isEnabledOriginal = Window_SkillList.prototype.isEnabled;
Window_SkillList.prototype.isEnabled = function(item) {
    var flag = this.isEnabledOriginal(item);
    // Kgg:在下面的数组中按示例格式设置要限制条件的技能和限制的条件。
    var needLimit = [
        {"id":10,"eval":"$gameSwitches.value(1)"},// Kgg:10号技能的限制是开关1号开启
        {"id": 8,"eval":"$gameVariables.value(2)"},// Kgg:8号技能的限制是变量2号不为零
        {"id": 6,"eval":"$gameMap.mapId()==3"},// Kgg:6号技能的限制是地图id为3
    ];
    if(!!item && !!item.id){
        for(var i = 0; i < needLimit.length; i++){
            if(item.id == needLimit.id){
                console.log(item.id);
                try{
                    flag = flag && eval(needLimit["eval"]);
                }catch(e){
                    console.error(e);
                }
                break;
            }
        }
    }
    return flag;
};
[/pre]

评分

参与人数 1赞 +1 收起 理由
寂静的夜里 + 1 我很赞同

查看全部评分

回复

使用道具 举报

梦石
0
星屑
445
在线时间
102 小时
注册时间
2020-3-22
回帖
16
 楼主| 发表于 2020-5-30 22:19:47 | 显示全部楼层
开关关 发表于 2020-5-29 16:29
下面这段代码在测试中没发现问题。
[fold]
Window_SkillList.prototype.isEnabledOriginal = Window_SkillL ...

感谢,可用
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部