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

Project1

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

[有事请教] 一个技能 对的人造成两次不同类型的伤害

[复制链接]

Lv1.梦旅人

梦石
0
星屑
237
在线时间
41 小时
注册时间
2022-8-28
帖子
12
跳转到指定楼层
1
发表于 2022-9-16 08:15:16 手机端发表。 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
如题,希望这个技能对敌人造成生命伤害的同事也造成法力伤害 ,而且这两个伤害都和双方属性相关,分别使用不同的计算公式 而不是百分比或固定数值
有yep的一套核心插件
尝试过公共事件,但暂时没有找到技能发动者确认的方法
请大神解答,谢谢

Lv1.梦旅人

梦石
0
星屑
237
在线时间
41 小时
注册时间
2022-8-28
帖子
12
16
 楼主| 发表于 2022-9-19 19:56:34 手机端发表。 | 只看该作者
apple5740 发表于 2022-9-17 23:08
也有对角色MP造成伤害的方法,Game_Action.prototype.executeMpDamage,将那个hp伤害改成这个方法就可以拉 ...

研究了一整天  意思是懂了
但还是不太会写,尝试了几次都没有效果
暂时用自带变量条件那些实现了,只是将来角色至少会有100多个,始终不是最终方案
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
237
在线时间
41 小时
注册时间
2022-8-28
帖子
12
15
 楼主| 发表于 2022-9-19 19:53:29 手机端发表。 | 只看该作者
橙光 发表于 2022-9-19 13:42
针对良好结构而言,建议在Game_Action额外添加一个额外效果的方法,然后在这个方法里面组合之前的方法自己 ...

可以给个 范例脚本学习一下吗
逻辑上是懂了,具体怎么写,还是不太清楚,这方面基础太差
例如在公共事件中实现,当前角色对当前目标造成 当前角色与当前目标 MP差值(公式) 的 MP伤害 不需要什么动作和动画
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
702
在线时间
326 小时
注册时间
2013-5-31
帖子
74
14
发表于 2022-9-19 13:42:02 | 只看该作者
针对良好结构而言,建议在Game_Action额外添加一个额外效果的方法,然后在这个方法里面组合之前的方法自己写逻辑会比较好。触发时机可以在apply的末端,然后记得updateLastTarget()接上就OK。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1606
在线时间
220 小时
注册时间
2022-2-3
帖子
160
13
发表于 2022-9-17 23:08:37 | 只看该作者
本帖最后由 apple5740 于 2022-9-17 23:11 编辑
捕食者 发表于 2022-9-17 18:21
非常感谢详细的回复哈,我会尝试去学习,对于法力伤害,要表达的是MP的损失;
也就是这个技能  对目标 造 ...


也有对角色MP造成伤害的方法,Game_Action.prototype.executeMpDamage,将那个hp伤害改成这个方法就可以拉。或者直接这样 target.gainMp(-value);
至于都用公式的话,可以改成再次使用一个MP伤害的技能
我的联系方式Q: 1127808900
欢迎一起讨论任何问题
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
237
在线时间
41 小时
注册时间
2022-8-28
帖子
12
12
 楼主| 发表于 2022-9-17 18:21:25 | 只看该作者
橙光 发表于 2022-9-16 14:28
楼主的问题对于法力等一个词没有描述清楚,所以无法给出详细方案,你可以参考一下以上思路进行修改。

你 ...

非常感谢详细的回复哈,我会尝试去学习,对于法力伤害,要表达的是MP的损失;
也就是这个技能  对目标 造成 HP的伤害  同时 也造成 MP的伤害   两个伤害都需要使用公式计算
这两个伤害  可以在一个技能完成  或者  也可以一个技能发生后 启动后续的技能发生   
不知道这样是否表达清楚了哈
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1606
在线时间
220 小时
注册时间
2022-2-3
帖子
160
11
发表于 2022-9-16 15:13:15 | 只看该作者
橙光 发表于 2022-9-16 15:08
可以那么理解,他会遍历这个数组直到没有行动可以执行了,就进行下一阶段。原来rgss也是这流程。 ...

感谢您的解答!这个过程越来越清晰真是太棒了!
我的联系方式Q: 1127808900
欢迎一起讨论任何问题
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
702
在线时间
326 小时
注册时间
2013-5-31
帖子
74
10
发表于 2022-9-16 15:08:34 | 只看该作者
apple5740 发表于 2022-9-16 14:55
$gameVariables.setValue(10,$gameParty.index(action.subject()));
//action代表Game_Action实例对象
这 ...


可以那么理解,他会遍历这个数组直到没有行动可以执行了,就进行下一阶段。原来rgss也是这流程。
回复 支持 1 反对 0

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1606
在线时间
220 小时
注册时间
2022-2-3
帖子
160
9
发表于 2022-9-16 14:55:44 | 只看该作者
橙光 发表于 2022-9-16 14:28
楼主的问题对于法力等一个词没有描述清楚,所以无法给出详细方案,你可以参考一下以上思路进行修改。

你 ...

$gameVariables.setValue(10,$gameParty.index(action.subject()));
//action代表Game_Action实例对象
这个实例对象是存在于角色中的_actions[]那个数组里面的吗?

点评

会在某个时点清空 ,形成一种传统的回合制的流程。  发表于 2022-9-16 15:07
在不在里面都会生效,默认流程下是在那个_actions[]里面的 用来判断角色是否还有其他行动,比如强制行动啊 连续行动啊。  发表于 2022-9-16 15:06
我的联系方式Q: 1127808900
欢迎一起讨论任何问题
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1606
在线时间
220 小时
注册时间
2022-2-3
帖子
160
8
发表于 2022-9-16 14:31:14 | 只看该作者
橙光 发表于 2022-9-16 14:28
楼主的问题对于法力等一个词没有描述清楚,所以无法给出详细方案,你可以参考一下以上思路进行修改。 ...

感谢,我也一起学习了!

点评

因为setSkill技能的时候 实际上数据库-技能里面就指定好了动画编号还有作用范围那些东西。只不过单体需要给个指定序号 就是我们选择敌人的那一步。  发表于 2022-9-16 14:40
其实不讲究sprite画面效果 直接随便New一个action就是,const a = new Game_Actiron($gameParty.mebbers()[0]) //发动者为括号内,然后set好那些,a.apply()就完事了。  发表于 2022-9-16 14:39
我的联系方式Q: 1127808900
欢迎一起讨论任何问题
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-3 08:22

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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