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

Project1

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

[有事请教] 求助两个YEP的技能脚本的问题

[复制链接]

Lv2.观梦者

梦石
0
星屑
852
在线时间
231 小时
注册时间
2013-10-30
帖子
159
跳转到指定楼层
1
发表于 2022-7-15 04:35:17 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
1.怎么实现这个技能效果?
      对所有目标造成基础伤害A
      如果击中判定目标身上是否有状态X
      如果有在造成一次伤害B
      清除目标状态X
      如果击中判定目标身上是否有状态Y
      如果有在造成一次伤害C
      清除目标状态Y
      如果击中判定目标身上是否有状态Z
      如果有在造成一次伤害D
      清除目标状态Z
(有几个状态额外伤害几次)


还有一个问题顺本请教一下
一个状态怎么用代码控制属性
比如攻击力提升300点
<atl Plus: +300>
这个加的300怎么能用变量代替呢
还有原本游戏自带的一些状态效果怎么用脚本指定呢?
比如状态-追加能力值-攻击力百分比
(这么做是想让一个状态根据情况可以变得更强或者更弱)


辛苦大佬了





Lv3.寻梦者

梦石
0
星屑
2283
在线时间
364 小时
注册时间
2020-5-30
帖子
42
2
发表于 2022-7-15 12:04:23 | 只看该作者
在伤害计算之后的效果:<Post-Damage Eval>

  1. <Post-Damage Eval>
  2. if (target.isStateAffected(47)) {
  3.   var dmg = Math.ceil(user.atk * 5 - target.def * 1.5)
  4.   target.gainHp(-dmg)
  5.   target.startAnimation(301)//显示动画301,可去掉
  6.   target.removeState(47)
  7. }
  8. if (target.isStateAffected(48)) {
  9.   var dmg = Math.ceil(user.atk * 5 - target.def * 1.5)
  10.   target.gainHp(-dmg)
  11.   target.startAnimation(302)//显示动画302,可去掉
  12.   target.removeState(48)
  13. }
  14. //随便复制多少遍,都是执行的
  15. </Post-Damage Eval>
复制代码


用技能备注里面的代码控制属性的永久成长:
var wt = 4(这时候就可以用变量把这个4换成你的变量)
target._paramPlus[2] += wt
//目标的基础属性2(攻击力)永久成长4点。(削弱就是把+变成-)属性0是生命上限,1是魔力上限,2是攻击力依次推


状态效果怎么用脚本指定我还没研究到,等别的大佬解答吧。或许你可以就用脚本附加一个没有图标显示的状态实现效果。
或者可以使用:
user.addBuff(2, 2)
这个是能力值-强化-攻击力(第一个2代表攻击力,如上)-持续2回合(第二个2)
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
852
在线时间
231 小时
注册时间
2013-10-30
帖子
159
3
 楼主| 发表于 2022-7-15 14:08:53 | 只看该作者
347136773 发表于 2022-7-15 12:04
在伤害计算之后的效果:

额 。哈哈
看了以后豁然开朗
你才告诉我的eval
我还是得认真看看
思路没打开
我一直以为得去分别对每个目标循环
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2283
在线时间
364 小时
注册时间
2020-5-30
帖子
42
4
发表于 2022-7-15 19:04:42 | 只看该作者
m328759997 发表于 2022-7-15 14:08
额 。哈哈
看了以后豁然开朗
你才告诉我的eval

我写的这种是:技能本身的伤害阶段之后,依次判断有无某状态并执行指令,这些状态之间并没有关系,
如果你要执行有状态1的情况下,还有状态2的话会有特殊效果就把第二个if判断语句放第一个的执行里面。

然后这些状态和公式和动画之类的id都可以自己调。

同时如果加有别的插件,一般也都会在插件说明底下列出脚本可调用的指令,都可以插入这些eval里面,实现一个较为复杂的技能。

YEP进阶教程有一些小视频,https://www.bilibili.com/video/BV16s411y7Mm/
也有文件,但我不确定版权归属的问题就不分享了。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
852
在线时间
231 小时
注册时间
2013-10-30
帖子
159
5
 楼主| 发表于 2022-7-15 19:53:10 | 只看该作者
347136773 发表于 2022-7-15 19:04
我写的这种是:技能本身的伤害阶段之后,依次判断有无某状态并执行指令,这些状态之间并没有关系,
如果 ...

我私信你了  
目前这条代码还是有点问题
变成总共触发一次伤害 如果有状态 这下伤害的公式变成重新定义的
做不到先第一下伤害然后在判定目标身上有没有状态 有状态的目标触发伤害没有就跳过

后来我试着把带状态的怪放到不同的list里面 但是target不认。。。
YEP的代码我翻了半天越看越懵逼。。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-18 06:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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