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

Project1

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

[有事请教] 请问有没有在伤害公式里代替b.addState(1)赋予目标死亡的状态

[复制链接]

Lv2.观梦者

梦石
0
星屑
897
在线时间
212 小时
注册时间
2012-7-3
帖子
21
跳转到指定楼层
1
发表于 2024-9-4 15:26:26 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
目前在做一个即死效果的技能,我想通过在伤害公式写入“b.addState(1)”的函数来赋予目标死亡(1号)状态。
但大概是我加入了太多插件的原因,这条函数在实测中失去效果了——唯独1号状态无法赋予目标,从2号状态开始的其他状态都能生效。
因为这个技能在伤害公式栏里有判定条件,所以我没法在“技能—效果”栏里直接赋予对面状态。
所以我想请教各位大佬有没有代替“b.addState()”同样能够赋予目标1号状态的函数
p.s. 我试过用“b.die()”来代替,虽然有效果,但是这一条函数太无敌了,能够无视目标的属性有效度和状态有效度强制击杀...

Lv3.寻梦者

梦石
0
星屑
1164
在线时间
142 小时
注册时间
2021-5-3
帖子
20
2
发表于 2024-9-8 22:15:29 | 只看该作者
HIME_CustomDeathStates
附加死亡状态插件
给其他效果加上相当于死亡的效果

点评

谢谢回复,用HIME的脚本做了石化状态  发表于 2024-9-9 22:10
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7208
在线时间
473 小时
注册时间
2021-12-4
帖子
511
3
发表于 2024-9-9 15:57:29 | 只看该作者
Game_Battler.prototype.refresh = function() {
    Game_BattlerBase.prototype.refresh.call(this);
    if (this.hp === 0) {
        this.addState(this.deathStateId());
    } else {
        this.removeState(this.deathStateId());
    }
};

Game_Battler.prototype.addState = function(stateId) { // 感觉应该从 rpg_objects.js 的第 3000 行左右修改这几个函数,话说唯独 1 号状态不能添加也是够奇怪的,要是能断点调试一下就好了
    if (this.isStateAddable(stateId)) {
        if (!this.isStateAffected(stateId)) {
            this.addNewState(stateId);
            this.refresh();
        }
        this.resetStateCounts(stateId);
        this._result.pushAddedState(stateId);
    }
};

Game_Battler.prototype.isStateAddable = function(stateId) {
    return (this.isAlive() && $dataStates[stateId] &&
            !this.isStateResist(stateId) &&
            !this._result.isStateRemoved(stateId) &&
            !this.isStateRestrict(stateId));
};

点评

谢谢回复,学习了  发表于 2024-9-9 22:11
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-10 17:01

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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