快捷导航
查看: 448|回复: 0

[技巧] 战斗伤害为0时,强制结算的战斗伤害为1

[复制链接]
会员等级

积分信息
金币:740
金钱:0
元宝:20
活跃:187
发电:0

荣誉勋章
热心会员优秀版主首批会员最佳新人

TA的角色
UID: 6 发表于 2023-6-18 19:40:19 | 显示全部楼层 |阅读模式
以RMMZ为例,在object.js中,找到下面这一部分:
[JavaScript] 纯文本查看 复制代码
Game_Action.prototype.executeDamage = function(target, value) {
    const result = target.result();
    if (value === 0) {
        result.critical = false;
    }
    if (this.isHpEffect()) {
        this.executeHpDamage(target, value);
    }
    if (this.isMpEffect()) {
        this.executeMpDamage(target, value);
    }
};

其中的value就是结算值,只需要增加一小段代码即可:
[JavaScript] 纯文本查看 复制代码
if (value === 0) {
value = 1
}

但这样的书写方式其实是有问题的,比如一些无伤害的技能、也会出现伤害为1的情况。所以需要再优化一下,留个空子:
[JavaScript] 纯文本查看 复制代码
        if (this.isPhysical() && value === 0) {
                value = 1;
        }
		if (this.isMagical() && value === 0) {
		        value = 1;
		}

这样就将物理攻击、魔法攻击的伤害进行了修正。对于治疗、BUFF之类的”必中类技能“,就不受强制1点伤害的影响了。





最近访客

  • suzukitenka
    2024-11-22
回复 论坛版权

使用道具 举报

文明发言,和谐互动
文明发言,和谐互动
您需要登录后才可以回帖 登录 | 加入民族

本版积分规则

论坛用工具

蓝凑云 hello图床 聚合图床 TinyPNG remove 代码测试 颜色代码 颜色代码2

Powered by Discuz!

© 2001-2013 Comsenz Inc.

实用工具

AI人工智能图片放大 图片无损放大 Deepl翻译器 百宝箱 孟坤工具箱 在线压缩图片 图片切圆角

您一共访问了本站 加载中...

Archiver|小黑屋|RPG民族

GMT+8, 2024-11-23 19:45 , Processed in 0.197510 second(s), 40 queries .

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