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

Project1

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

[有事请教] 【零脚本基础】mz伤害计算如何设置反伤?

[复制链接]

Lv2.观梦者

梦石
0
星屑
936
在线时间
191 小时
注册时间
2023-7-14
帖子
86
1
发表于 2023-12-19 19:44:52 | 显示全部楼层
本帖最后由 catxiaolang 于 2023-12-19 20:13 编辑

使用Visu Battle Core可以实现,方法如下:

// 可用范围:角色,职业,武器,防具,状态,敌人,的备注栏

<JS Post-Damage As Target>
  // 当目标受到的伤害大于0且是物理攻击时
  if (value > 0 && this.isPhysical()) {
    const rate = 0.1; // 反伤率,当前为原始伤害的10%
    const recoil = value * rate; // 计算基础反伤值

    const defRate = 0.25; // 防御系数,当前为目标防御值的25%
    const bonus = target.def * defRate; // 计算基于防御的额外反伤

    const damage = Math.ceil(bonus + recoil); // 总反伤值
    user.gainHp(-damage); // 对攻击者应用反伤

    // 如果攻击者因反伤死亡,则执行倒下动作
    if (user.isDead()) {
      user.performCollapse();
    }
  }
</JS Post-Damage As Target>

方法出处:
https://forums.rpgmakerweb.com/i ... lla-plugins.143816/
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
936
在线时间
191 小时
注册时间
2023-7-14
帖子
86
2
发表于 2023-12-19 19:52:05 | 显示全部楼层
本帖最后由 catxiaolang 于 2023-12-19 19:56 编辑
dabaxhei 发表于 2023-12-7 19:00
用这个不知道能不能实现http://www.yanfly.moe/wiki/Auto_Skill_Triggers_VisuStella_MZ
就是设置成自动触 ...


这个方法的问题在于需要用额外的手段判断目标,否则反伤目标是随机的

判断目标的方法详见这个帖子(原帖是介绍如何实现反击,原理相同)
https://forums.rpgmakerweb.com/i ... ttack-state.142623/

然而我按着这个方法做出的反击技能给敌人用没有效果,由于不懂代码还没研究明白
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-12 16:55

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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