| 
 
| 赞 | 6 |  
| 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然后蹦出来,关掉就没事了)
 | 
 |