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

Project1

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

[已经解决] 如何制作战斗中一个敌人死了再出现一个?

 关闭 [复制链接]

Lv3.寻梦者

梦石
0
星屑
3176
在线时间
1442 小时
注册时间
2009-7-27
帖子
1454
跳转到指定楼层
1
发表于 2011-8-30 20:43:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  就是说,第一个死了,第二个才出现。什么中途出现,敌人增援脚本我都试过了,就是不行,杀了一个就直接结束战斗了,
请问有什么好办法?

点评

以上的脚本就是。但还不完善。还得加上 if enemy.all_dead? for……end end 应该是这样子。第一次改这样的脚本,有错也不奇怪哦。。。  发表于 2011-8-30 23:16

博客:我的博客

Lv1.梦旅人

梦石
0
星屑
55
在线时间
295 小时
注册时间
2008-5-24
帖子
523
2
发表于 2011-8-30 21:36:27 | 只看该作者
这个可以不用脚本。
事件:在队伍里弄成这样

再在事件中找到


当然,不要忘记了加上中途出现。。(记住,一定要对号入座)


你要选什么出现,在右边里可以选。

点评

先自己试一下吧~  发表于 2011-8-30 21:45
这个试过了,第一个敌人一死就直接结束战斗了,设置的那个根本不会出现了  发表于 2011-8-30 21:42
前方
迷茫
后方
已不在
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

3
发表于 2011-8-30 21:47:03 | 只看该作者
本帖最后由 亿万星辰 于 2011-8-30 22:47 编辑

哎呀,点评错人了……
请“龙腾天下”同学自己去实验一下看看,那个中途加入的幽灵是否会出现呢……
以及在什么情况下就可以实现呢?

点评

改正了,没问题、  发表于 2011-8-30 23:08
试过了,直接结束战斗了!  发表于 2011-8-30 22:24
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
255
在线时间
227 小时
注册时间
2009-7-26
帖子
216
4
发表于 2011-8-30 22:52:56 | 只看该作者
这个⋯⋯可能要改胜利条件的判定⋯⋯具体是什么来着⋯⋯交给楼下了⋯⋯
不要吐槽我⋯⋯
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
295 小时
注册时间
2008-5-24
帖子
523
5
发表于 2011-8-30 22:56:35 | 只看该作者
本帖最后由 龙腾天下 于 2011-8-30 23:12 编辑

试试我的附件吧。
在数据库中队伍战斗。
另外,亿万大人没有点评错,我也的确没有测试过,这一点,我先道歉,

还有我漏做一步(就是战斗敌人不能少于3个,连中途出现那个也算进去。)

令LZ误解,我再道歉。

但以下这个附件完全可行,

但是,如果你想突破“战斗敌人不能少于3个”,

需要再定义一个东西(脚本应该不难,但再无法帮助LZ,因为上学,星期六吧。。),(以下均为思路)

在Scene_Battle 1 中的 100行 找到
  1. #--------------------------------------------------------------------------
  2.   # ● 胜负判定
  3. #--------------------------------------------------------------------------
  4.   def judge
  5.     # 全灭判定是真、并且同伴人数为 0 的情况下
  6.     if $game_party.all_dead? or $game_party.actors.size == 0
  7.       # 允许失败的情况下
  8.       if $game_temp.battle_can_lose
  9.         # 还原为战斗开始前的 BGM
  10.         $game_system.bgm_play($game_temp.map_bgm)
  11.         [color=Red]# 战斗结束
  12.         battle_end(2)[/color]        
  13.       # 返回 true
  14.         return true
  15.       end
  16.       # 设置游戏结束标志
  17.       $game_temp.gameover = true
  18.       # 返回 true
  19.       return true
  20.     end

复制代码
在红色字下改(应该是这样吧。。脚本不过关啊。)

加上
  1. for enemy in $game_troop.enemies

  2.           enemy.hidden  == false

  3.           end
  4.    
  5.           make_action_orders   

  6.          start_phase3
复制代码
理想中应该是这样子吧。。先测试。。

附件: Project8.rar (190.68 KB, 下载次数: 30) (注:附件不包含脚本。)


龙腾天下于2011-8-30 23:19补充以下内容:
还有,还有一种更简单的方法,用事件

只要把变量叠加就好了,

当变量到了一定的数

然后条件分歧,

出现敌人……
出现敌人……
(至多一起出现7个,当然,你也要在队伍中设“中途出现”)

点评

明天再讨论下。要下了。  发表于 2011-8-30 23:20
难道没有办法让全部敌人死了之后再出现吗?  发表于 2011-8-30 23:12
脚本未完。。慎下。。  发表于 2011-8-30 23:07
前方
迷茫
后方
已不在
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

6
发表于 2011-8-31 07:11:59 | 只看该作者
  1.   #--------------------------------------------------------------------------
  2.   # ● 胜负判定
  3.   #--------------------------------------------------------------------------
  4.   def judge
  5.     # 全灭判定是真、并且同伴人数为 0 的情况下
  6.     if $game_party.all_dead? or $game_party.actors.size == 0
  7.       # 允许失败的情况下
  8.       if $game_temp.battle_can_lose
  9.         # 还原为战斗开始前的 BGM
  10.         $game_system.bgm_play($game_temp.map_bgm)
  11.         # 战斗结束
  12.         battle_end(2)
  13.         # 返回 true
  14.         return true
  15.       end
  16.       # 设置游戏结束标志
  17.       $game_temp.gameover = true
  18.       # 返回 true
  19.       return true
  20.     end
  21.     # 如果存在任意 1 个敌人就返回 false
  22.     for enemy in $game_troop.enemies
  23.       if enemy.exist?
  24.         return false
  25.       end
  26.     end
  27.     result = true
  28.     # 若队伍中存在还未中途加入的怪物且活着,则全部现身
  29.     for enemy in $game_troop.enemies
  30.       if enemy.hidden and enemy.hp > 0
  31.         enemy.hidden = false
  32.         result = false
  33.       end
  34.     end
  35.     unless result
  36.       return false
  37.     end
  38.     # 开始结束战斗回合 (胜利)
  39.     start_phase5
  40.     # 返回 true
  41.     return true
  42.   end
复制代码
试着重新定义了一下judge的的方法,在全胜的情况下再检查一边是否存在活着的还未出现的中途加入的怪物,如果存在,统统现身~不知道和队伍中的战斗事件是否会冲突~待考证~

点评

慕拜~学到东西了。  发表于 2011-8-31 09:40
推测没反应是你没有插入到Scene_Battle类下,请自己加上类名  发表于 2011-8-31 07:37
没反应  发表于 2011-8-31 07:24
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-23 05:58

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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