赞 | 5 |
VIP | 0 |
好人卡 | 8 |
积分 | 3 |
经验 | 43263 |
最后登录 | 2018-9-19 |
在线时间 | 204 小时 |
Lv2.观梦者
- 梦石
- 0
- 星屑
- 311
- 在线时间
- 204 小时
- 注册时间
- 2007-2-4
- 帖子
- 1817
|
4楼
楼主 |
发表于 2017-10-25 17:23:42
|
只看该作者
本帖最后由 玄天 于 2017-10-25 17:29 编辑
我白痴了,战斗胜利的话直接给个全体敌人战斗不能不就行了吗。
顺便说一下我这个功能的做法:
首先做一个技能(比如叫『聊天流』),效果范围是『敌人单体』,然后效果是呼叫公用事件。
然后再做一个技能(比如叫『劝退』),效果范围是『使用者』,其他同『逃跑』
『聊天流』的公用事件里用代码获取到敌人在数据库的编号:
- $gameTroop.members()[BattleManager._subject._lastTargetIndex].enemyId();
复制代码
以及选中敌人在这场战斗中的index:
- BattleManager._subject._lastTargetIndex;
复制代码
聊天过程略
然后执行『劝退』
- this.iterateBattler(0, 敌人index, function(battler) {
- if (!battler.isDeathStateAffected()) {
- battler.forceAction(劝退技能编号, -2)
- BattleManager.forceAction(battler)
- this.setWaitMode('action')
- }
- }.bind(this))
复制代码
另外刚试了一下,事件指令本身给全体敌人加『战斗不能』的话会有个消失效果,如果不想有消失效果的话得用代码:
- $gameTroop.members().forEach(function(enemy){
- enemy.addState(1)
- });
复制代码
蹦字是我自己的插件问题(有个蹦字加强的会把无效技能效果判断为MISS然后蹦出来,关掉就没事了) |
|