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

Project1

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

[已经解决] 怎么实现当角色死亡时自动离队

[复制链接]

Lv4.逐梦者

梦石
0
星屑
5479
在线时间
1668 小时
注册时间
2016-8-1
帖子
413
跳转到指定楼层
1
发表于 2018-2-9 18:22:57 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 穿越时空之剑 于 2018-2-9 19:08 编辑

我倒是找到了一个角色死亡后执行公共事件的脚本,但是只在战斗画面有效…求教怎么实现在地图画面上角色死亡时也能自动离队。(就是当角色被附加无法战斗状态时,角色自动离队)
阳光下的真实

Lv4.逐梦者

梦石
0
星屑
5479
在线时间
1668 小时
注册时间
2016-8-1
帖子
413
2
 楼主| 发表于 2018-2-9 18:40:51 | 只看该作者
这是脚本
死亡公共事件脚本

或者是我数据库设置的有问题?
图片

阳光下的真实
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

3
发表于 2018-2-9 23:36:11 | 只看该作者
本帖最后由 chd114 于 2018-2-9 23:47 编辑

可以從Game_BattlerBase入手

  1.   #--------------------------------------------------------------------------
  2.   # ● 更改 HP
  3.   #--------------------------------------------------------------------------
  4.   def hp=(hp)
  5.     @hp = hp
  6.     refresh
  7.   end
复制代码

在這裡面判定hp是否扣光並且是角色
如果是角色就可以$game_party.remove_actor(self.id)

這樣的話改成

  1.   #--------------------------------------------------------------------------
  2.   # ● 更改 HP
  3.   #--------------------------------------------------------------------------
  4.   def hp=(hp)
  5.     @hp = hp
  6.     $game_party.remove_actor(id) if actor? and hp<=0
  7.     refresh
  8.   end
复制代码

就可以了


注意,在地图上通过事件指令减少生命时,需要把【允许导致无法战斗】勾选

评分

参与人数 1+1 收起 理由
穿越时空之剑 + 1 谢谢

查看全部评分

[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5479
在线时间
1668 小时
注册时间
2016-8-1
帖子
413
4
 楼主| 发表于 2018-2-10 00:48:13 | 只看该作者
感谢chd114的帮助,最终我照猫画虎从Game_Battler中附加新的状态入手,如果被附加的状态是无法战斗状态并且被附加状态的是角色时,角色离队。这样结合脚本死亡公共事件的话无论是战斗中还是地图中角色死亡都可以自动离队了。
  1.   #--------------------------------------------------------------------------
  2.   # ● 附加新的状态
  3.   #--------------------------------------------------------------------------
  4.   def add_new_state(state_id)
  5.     $game_party.remove_actor(id) if actor? and state_id == death_state_id
  6.     @states.push(state_id)
  7.     on_restrict if restriction > 0
  8.     sort_states
  9.     refresh
  10.   end
复制代码

点评

刚才发现全灭时会有bug,不会出现GAMEOVER画面,游戏也无法进行。也许应该使用unless限制一下主角不能离队…  发表于 2018-2-10 00:59
阳光下的真实
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 12:50

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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