查看: 5186|回复: 12

[有事请教] 怎么制作一个只有破防才能造成高伤害的技能

[复制链接]
梦石
0
星屑
67
在线时间
9 小时
注册时间
2020-5-3
回帖
9
发表于 2020-5-5 19:08:08 | 显示全部楼层 |阅读模式

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

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

×
想要制作一个专门用来破防的技能,如果使用后对方没有防御,那么伤害就很低(明显低于普攻),如果对方处在防御中,那么伤害就很高(明显高于普攻)。单纯在计算公式中引入自己的攻击力和对方的防御力似乎难以达成这样的伤害差距,我尝试使用变量,但是有很多问题。1,即使我在计算公式里使用了$gameVariables.value(n),伤害依然是0,应该是我没有正确地建立这个变量,我是在公共事件里简单地写了个比如变量1为100这种,然后在技能里引入这个公共事件,可能不太对。2,我不知道如何检测目标的防御状态,虽然公共事件里可以检测防御状态,但是只能检测几号敌人,不能检测技能的目标对象。其实说白了还是不太懂公共事件怎么用,望大佬解答。
梦石
0
星屑
22879
在线时间
8598 小时
注册时间
2011-12-31
回帖
3270
发表于 2020-5-5 19:29:14 | 显示全部楼层
例:給予防御中的人敵通常2倍傷害、以外的敵通常傷害
a.atk * (b.isGuard() ? 4 * b.grd : 1)

点评

谢谢啦,式子里的?和:是什么含义呢  发表于 2020-5-5 19:45

评分

参与人数 1赞 +1 收起 理由
白嫩白嫩的 + 1 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
22879
在线时间
8598 小时
注册时间
2011-12-31
回帖
3270
发表于 2020-5-5 19:50:53 | 显示全部楼层
●防御貫通
b.isGuard() ? m * b.grd : n
您可以創建一種可以忽略防御狀態的所謂技能。
在m和n中輸入數值和公式。
例:給予防御中的人敵通常2倍傷害、以外的敵通常傷害
a.atk * (b.isGuard() ? 4 * b.grd : 1)
順便說一句,您可以使用x.grd計算目標的防禦效率。

点评

66666666666666  发表于 2020-5-5 20:08
回复

使用道具 举报

梦石
0
星屑
3130
在线时间
419 小时
注册时间
2015-8-8
回帖
371

R考场第七期纪念奖

发表于 2020-5-5 20:01:33 | 显示全部楼层
本帖最后由 冷俊逸 于 2020-5-5 20:02 编辑

a?b:c 是一种常见的语法结构,叫做三目运算符。等价于:

  1. if (a == true){
  2.    b
  3. }
  4. else{
  5.    c
  6. }
复制代码


另外这种技能在摩尔勇士中有,叫做崩牙哈哈

评分

参与人数 1赞 +1 收起 理由
白嫩白嫩的 + 1 我很赞同

查看全部评分

旧作《邵彦朝的大冒险》下载

默默无闻的论坛观察者
回复

使用道具 举报

梦石
0
星屑
67
在线时间
9 小时
注册时间
2020-5-3
回帖
9
 楼主| 发表于 2020-5-5 20:12:30 | 显示全部楼层
tseyik 发表于 2020-5-5 19:50
●防御貫通
b.isGuard() ? m * b.grd : n
您可以創建一種可以忽略防御狀態的所謂技能。

谢谢啦,都不知道有这个功能。刚才测试了一下,m/2才是给与防御中敌人伤害的倍数,而n直接就是给与正常敌人伤害的倍数,还真是奇怪啊。
回复

使用道具 举报

梦石
0
星屑
67
在线时间
9 小时
注册时间
2020-5-3
回帖
9
 楼主| 发表于 2020-5-5 20:14:09 | 显示全部楼层
冷俊逸 发表于 2020-5-5 20:01
a?b:c 是一种常见的语法结构,叫做三目运算符。等价于:

你怎么知道我在模仿摩尔勇士啊!!!我这个技能就叫崩牙呀!

评分

参与人数 1赞 +1 收起 理由
冷俊逸 + 1

查看全部评分

回复

使用道具 举报

梦石
0
星屑
22879
在线时间
8598 小时
注册时间
2011-12-31
回帖
3270
发表于 2020-5-5 20:23:59 | 显示全部楼层

点评

感谢大佬!这些判定式找了好久,终于在您这里看到了!  发表于 2020-5-7 08:24

评分

参与人数 1赞 +1 收起 理由
hanyilun + 1 塞糖

查看全部评分

回复 1 0

使用道具 举报

梦石
0
星屑
1964
在线时间
217 小时
注册时间
2009-11-10
回帖
202
发表于 2020-7-27 11:54:26 | 显示全部楼层
tseyik 发表于 2020-5-5 19:50
●防御貫通
b.isGuard() ? m * b.grd : n
您可以創建一種可以忽略防御狀態的所謂技能。

大佬 根据装备的武器类型 给技能伤害加成的公式怎么写啊 ? 找不到相关的公式和教程啊 。 只好来求教了。
回复

使用道具 举报

梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2020-7-27 15:30:52 | 显示全部楼层
本帖最后由 soulsaga 于 2020-7-27 15:33 编辑
zwlele1980 发表于 2020-7-27 11:54
大佬 根据装备的武器类型 给技能伤害加成的公式怎么写啊 ? 找不到相关的公式和教程啊 。 只好来求教了。 ...


[pre lang="javascript"]var wtype = $dataWeapons[$gameActors._data[a.actorId()]._equips[0]._itemId].wtypeId;wtype == 2 ? a.atk * 10 - b.def * 2 : wtype == 3 ? a.atk * 8 - b.def * 2 : a.atk * 4 - b.def * 2  [/pre]
回复

使用道具 举报

梦石
0
星屑
1964
在线时间
217 小时
注册时间
2009-11-10
回帖
202
发表于 2020-7-27 18:04:34 | 显示全部楼层
soulsaga 发表于 2020-7-27 15:30
var wtype = $dataWeapons[$gameActors._data[a.actorId()]._equips[0]._itemId].wtypeId;wtype == 2 ? a ...

谢谢。 真长啊。
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部