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

Project1

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

[已经过期] 怎样做出让特定敌人撤退的技能?

[复制链接]

Lv5.捕梦者

梦石
10
星屑
39587
在线时间
1920 小时
注册时间
2010-11-14
帖子
3320

R考场第七期纪念奖

跳转到指定楼层
1
发表于 2015-5-29 22:35:01 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 KB.Driver 于 2015-5-29 23:06 编辑

自己也正在制作中,但是出现了BUG:
技能是这样的:

然后对应的公共事件是这样的:


然而在战斗中,还有最后一个敌人的时候圣光命中了,敌人撤退了,但是战斗并没有结束!



之后再使用攻击技能时,就因为没有敌人而报误了!
这种情况要怎样避免?

点评

……魔理沙的口癖DAZE其实是0级奥术眩晕术Daze……好吧解决方案我没有,对不起……  发表于 2015-5-31 09:22
用头画头像,用脚写脚本

Lv1.梦旅人

梦石
0
星屑
135
在线时间
450 小时
注册时间
2015-2-25
帖子
365
2
发表于 2015-5-30 10:56:51 | 只看该作者
本帖最后由 howhow1314 于 2015-5-30 11:00 编辑

試不出有問題...

你找到def self.judge_win_loss,裡面p $game_troop.all_dead?看看

点评

这是什么意思呢?  发表于 2015-5-30 20:39
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2920
在线时间
713 小时
注册时间
2010-7-25
帖子
813

开拓者

3
发表于 2015-6-3 10:00:30 | 只看该作者
本帖最后由 jianyulei 于 2015-6-3 10:05 编辑

敌人全部撤退时战斗应该自动结束的,有可能是你的什么脚本影响了才导致
另外,你的公共事件与技能设定上存在问题。你这样虽然技能是单体的,但如果复数敌人存在惊吓状态,他们会一起撤退。解决方法是在技能的伤害公式里面添加b.add_state(X);命令,让其在不受一切干扰的情况下中一个异常状态,这个异常状态内容随意,目的是为了在每个对应位置而定敌人判定里面加上个这个状态的分歧判定,让电脑明白你的技能的目标是谁。当然事件的最后要解除敌人的这个判定用异常状态
如果你找不到哪里出了问题,或者发现出问题的脚本太重要,你可以尝试在技能最后再加个分歧判定,判定1-8号位置的敌人是否存在,如果都不存在就用事件命令里面的脱离战斗。如果这样都脱离不了战斗就没辙了。

仔细看了下你的技能与事件,如果只是单纯的这个技能才有惊吓效果,而且目的只是为了让敌人50%几率撤退的话到没什么问题。

点评

对了,我想到个办法,这815行哪里添加公共事件的判断命令,需要的都可以写在公共事件里面,还可以作为其他判断使用  发表于 2015-6-3 23:05
脚本方面的东西我就不懂了,原理上是在Game_Battler的815行添加判断命令  发表于 2015-6-3 23:03
我想在脚本中每回合结束时判断一次敌人是否都存在,如果都不存在就中止战斗,该怎么写呢?  发表于 2015-6-3 22:11
分歧的第三页,有个敌人-已经存在 这个是判定敌人是不是存在于场上  发表于 2015-6-3 21:57
怎样添加“分歧判定,判定1-8号位置的敌人是否存在”?  发表于 2015-6-3 21:54
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2920
在线时间
713 小时
注册时间
2010-7-25
帖子
813

开拓者

4
发表于 2015-6-3 23:10:53 | 只看该作者
jianyulei 发表于 2015-6-3 10:00
敌人全部撤退时战斗应该自动结束的,有可能是你的什么脚本影响了才导致
另外,你的公共事件与技能设定上存 ...
  1.   #--------------------------------------------------------------------------
  2.   # ● 回合结束处理
  3.   #--------------------------------------------------------------------------
  4.   def on_turn_end
  5.     @result.clear
  6.     regenerate_all
  7.     update_state_turns
  8.     update_buff_turns
  9.     remove_states_auto(2)
  10.     $game_temp.reserve_common_event(33)
  11.   end
复制代码
替换Game_Battler 805-814
每回合判定一次公共事件33,事件里面你随便写

点评

原来是这样啊。还是十分感谢!  发表于 2015-6-4 19:06
对,正是如此,是没办法里挤出来的办法。或许应该问问大神直接调出战斗结算画面的脚本命令,理论上是有的。  发表于 2015-6-4 07:30
现在战斗是可以结束了,但问题是如果战斗中杀死了一个敌人,吓跑了另一个敌人,使用中止战斗指令时得不到杀死的那个敌人的金钱和经验值啊……  发表于 2015-6-4 01:24

评分

参与人数 1星屑 +200 收起 理由
taroxd + 200 我很赞同

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-6 00:45

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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