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

Project1

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

[已经解决] 求教!如何把反击改成:受到伤害后再反击?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
130 小时
注册时间
2015-8-7
帖子
31
跳转到指定楼层
1
发表于 2015-11-29 00:28:16 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
MV的反击属性跟VA的一样,都是免伤然后给于敌人反击伤害。
如果设置了一个反击率很高的角色的话,那就变成了一个无敌的BUG了!
因此,想把反击属性改成是正常的受到伤害,然后再给于敌人反击伤害。
请问要怎么修改脚本!?

Lv3.寻梦者

梦石
0
星屑
1211
在线时间
561 小时
注册时间
2014-11-30
帖子
155
10
发表于 2015-12-3 17:44:12 | 只看该作者
语义噪音 发表于 2015-12-3 08:54
(function() {
  BattleManager.invokeAction = function(subject, target) {
    this._logWindow.push( ...

我测试了一下,受到物理攻击,没有伤害直接反击,受到魔法攻击,有伤害,但是没有魔法反射,测试的时候,角色,反击100%,魔法反射100%
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
13 小时
注册时间
2015-11-30
帖子
16
9
发表于 2015-12-3 08:54:53 | 只看该作者
309988769 发表于 2015-12-2 12:03
可以把物理反击和魔法发射一起写出来吗?做一个插件,插进去即可使用,谢谢,我是脚本盲,我也想要这样的 ...


JAVASCRIPT 代码复制
  1. (function() {
  2.   BattleManager.invokeAction = function(subject, target) {
  3.     this._logWindow.push('pushBaseLine');
  4.     this.invokeNormalAction(subject, target);
  5.     if (Math.random() < this._action.itemCnt(target)) {
  6.       this.invokeCounterAttack(subject, target);
  7.     } else if (Math.random() < this._action.itemMrf(target)) {
  8.       this.invokeMagicReflection(subject, target);
  9.     }
  10.     subject.setLastTarget(target);
  11.     this._logWindow.push('popBaseLine');
  12.     this.refreshStatus();
  13.   };
  14. }).call(this);

收到物理反击或魔法反射之前先进行伤害计算的全文,没有测试过,不过想必是可以运行的。
保存为js文件,放置于js/plugins目录中,在RMVV的插件管理器中启用。

评分

参与人数 1星屑 +10 收起 理由
309988769 + 10 谢谢

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1211
在线时间
561 小时
注册时间
2014-11-30
帖子
155
8
发表于 2015-12-2 12:03:13 | 只看该作者
语义噪音 发表于 2015-12-1 11:33
重写BattleManager.invokeAction(subject, target)。

如果只是在收到物理攻击时反击,这样做

可以把物理反击和魔法发射一起写出来吗?做一个插件,插进去即可使用,谢谢,我是脚本盲,我也想要这样的效果
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
130 小时
注册时间
2015-8-7
帖子
31
7
 楼主| 发表于 2015-12-1 22:28:21 | 只看该作者
本帖最后由 id400200 于 2015-12-1 22:47 编辑
语义噪音 发表于 2015-12-1 11:33
重写BattleManager.invokeAction(subject, target)。

如果只是在收到物理攻击时反击,这样做


- -刚才试了一下,出现了错误:ReferenceError subiect is not defined
具体是这样的:战斗的时候,当没有出现反击的时候是正常的;角色反击就触发错误了。

-----------------错误的分割线-----------------

啊啊啊啊啊啊啊……不好意思!原来是我在改代码的时候出现错误!!现在可以正使用了,非常感谢哈!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
13 小时
注册时间
2015-11-30
帖子
16
6
发表于 2015-12-1 11:33:30 | 只看该作者
重写BattleManager.invokeAction(subject, target)。

如果只是在收到物理攻击时反击,这样做
JAVASCRIPT 代码复制
  1. BattleManager.invokeAction = function(subject, target) {
  2.     this._logWindow.push('pushBaseLine');
  3.     if (Math.random() < this._action.itemCnt(target)) {
  4.         this.invokeNormalAction(subject, target);
  5.         this.invokeCounterAttack(subject, target);
  6.     } else if (Math.random() < this._action.itemMrf(target)) {
  7.         this.invokeMagicReflection(subject, target);
  8.     } else {
  9.         this.invokeNormalAction(subject, target);
  10.     }
  11.     subject.setLastTarget(target);
  12.     this._logWindow.push('popBaseLine');
  13.     this.refreshStatus();
  14. };

话说,反射魔法攻击不会先被击中之后再反射吧?如果你真的要被魔法击中之后反击,可以把this.invokeNormalAction(subject, target)抽离出来,放到if判断外面,然后去掉最后的else块。

点评

- -啊.....可以了!!原来是我写代码的时候出现了错误!!现在可以了,非常感谢!!  发表于 2015-12-1 22:44

评分

参与人数 1梦石 +1 收起 理由
余烬之中 + 1 非常感谢!!

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
130 小时
注册时间
2015-8-7
帖子
31
5
 楼主| 发表于 2015-12-1 09:17:14 | 只看该作者
苍刃君 发表于 2015-11-30 18:27
把普通攻击改成魔法伤害即可

然后用额外参数里的魔法闪避率代替闪避率

- -可是这样设置的话,使战斗相关的设定变得复杂化,会很混乱的吧....
还是想从代码那入手,在根本上解决这个问题。。。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
75
在线时间
75 小时
注册时间
2011-3-17
帖子
133
4
发表于 2015-11-30 18:27:09 | 只看该作者
id400200 发表于 2015-11-29 14:19
可是把所有的武力命中伤害都无伤的反击过去- -...不好吧,这样子对魔物来说很不公平啊!
还是希望有人可 ...

把普通攻击改成魔法伤害即可

然后用额外参数里的魔法闪避率代替闪避率
而魔法改成必中,把你想让它被反击的技能改成物理伤害
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
130 小时
注册时间
2015-8-7
帖子
31
3
 楼主| 发表于 2015-11-29 14:19:57 | 只看该作者
苍刃君 发表于 2015-11-29 10:22
不知道,不过也不是无敌,魔法依然有效,必中技能依然有效

可是把所有的武力命中伤害都无伤的反击过去- -...不好吧,这样子对魔物来说很不公平啊!
还是希望有人可以帮忙解决一下这个问题!!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
75
在线时间
75 小时
注册时间
2011-3-17
帖子
133
2
发表于 2015-11-29 10:22:12 | 只看该作者
不知道,不过也不是无敌,魔法依然有效,必中技能依然有效
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-23 01:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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