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

Project1

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

[有事请教] 请教如何实现原有的伤害附加元素伤害【已解决】

[复制链接]

Lv2.观梦者

梦石
0
星屑
561
在线时间
54 小时
注册时间
2023-3-4
帖子
22
跳转到指定楼层
1
发表于 2023-3-5 01:00:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 rmmzxs 于 2023-3-7 20:14 编辑

求大佬们给点思路和方向,大概效果是类似暗黑类游戏,一个装备或者技能可以给与攻击附加一定的元素伤害,在原有的伤害基础上能附加一定的元素伤害
例如原本一个普通攻击可以打出10点物理伤害,技能或者装备可以附加2点火焰伤害,最终打出来的伤害就是10点物理+2点火焰伤害,一共12点伤害

Lv1.梦旅人

梦石
0
星屑
83
在线时间
14 小时
注册时间
2023-2-27
帖子
12
2
发表于 2023-3-5 12:15:46 | 只看该作者
我也想要这种效果,帮顶
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3121
在线时间
238 小时
注册时间
2021-4-22
帖子
217
3
发表于 2023-3-5 22:37:14 | 只看该作者
插件没见过类似的。
有想到一个方式没实践过,你可以试试
就是给每个角色预留一个变量,把这个变量加进技能伤害公式里。或者用VisuStella动作序列给每个技能都额外写一段变量+伤害
如果这个做的话,你的每个角色技能都要是独立不共用的
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
561
在线时间
54 小时
注册时间
2023-3-4
帖子
22
4
 楼主| 发表于 2023-3-5 22:52:39 | 只看该作者
dabaxhei 发表于 2023-3-5 22:37
插件没见过类似的。
有想到一个方式没实践过,你可以试试
就是给每个角色预留一个变量,把这个变量加进技能 ...

给角色预留一个变量,把附加伤害全部加进去,调用公式的时候用上,确实是个思路,感谢大佬指点。不过好像要处理多元素伤害还是有点难

动作序列插件没用过,RMMZ刚开始摸没几天,很多经典插件和现在主流插件都不了解,有空我去看看这个插件的功能

顺便再请教一下,测试游戏时想看控制台,是F12那个类似浏览器开发者界面的窗口吗,然后如果我要在控制台输出内容,应该调用哪个函数
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
561
在线时间
54 小时
注册时间
2023-3-4
帖子
22
5
 楼主| 发表于 2023-3-6 14:43:30 | 只看该作者
摸索了一天脚本,实际效果已经可以实现了,但是视觉效果没能解决,请教一下伤害数字结算飞出来调用的是哪个函数,想做成分开的结果显示,先跳出10的物理伤害再跳出2的火焰伤害,一个action好像只能绘制一次伤害,自动调用最后一次伤害
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
83
在线时间
14 小时
注册时间
2023-2-27
帖子
12
6
发表于 2023-3-6 18:33:32 | 只看该作者
可以分享下你现在是怎么设置的吗?
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5262
在线时间
424 小时
注册时间
2012-2-19
帖子
51
7
发表于 2023-3-7 11:19:18 | 只看该作者
使用vs战斗核心插件Battle Core VisuStella MZ
装备状态备注使用:
  1. <JS Post-Damage as User>
  2. //结算原本伤害弹窗
  3. target.startDamagePopup();
  4. target.clearResult();
  5. //计算额外附加伤害
  6. var dam = 伤害公式;
  7. //取得目标属性有效度
  8. var ele = target.elementRate(id);
  9. //计算伤害
  10. dam = Math.floor(dam * ele);
  11. //执行伤害
  12. target.gainHp(-dam);
  13. //播放动画
  14. $gameTemp.requestAnimation([target],动画id);
  15. <JS Post-Damage as User>
复制代码

技能使用:
  1. <JS Post-Damage>
  2. //结算原本伤害弹窗
  3. target.startDamagePopup();
  4. target.clearResult();
  5. //计算额外附加伤害
  6. var dam = 伤害公式;
  7. //取得目标属性有效度
  8. var ele = target.elementRate(id);
  9. //计算伤害
  10. dam = Math.floor(dam * ele);
  11. //执行伤害
  12. target.gainHp(-dam);
  13. //播放动画
  14. $gameTemp.requestAnimation([target],动画id);
  15. </JS Post-Damage>
复制代码

没测试过,但是应该可以
回复 支持 1 反对 0

使用道具 举报

Lv2.观梦者

梦石
0
星屑
561
在线时间
54 小时
注册时间
2023-3-4
帖子
22
8
 楼主| 发表于 2023-3-7 20:12:36 | 只看该作者
Tdow 发表于 2023-3-6 18:33
可以分享下你现在是怎么设置的吗?

7L大佬的方法可行
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
561
在线时间
54 小时
注册时间
2023-3-4
帖子
22
9
 楼主| 发表于 2023-3-7 20:13:40 | 只看该作者
sundeshuo 发表于 2023-3-7 11:19
使用vs战斗核心插件Battle Core VisuStella MZ
装备状态备注使用:

太强了,这个插件确实可以,方便好多,谢谢大佬提供思路,代码稍微改一点就能达到效果,万分感谢
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-23 03:50

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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