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

Project1

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

[已经解决] 请问能否实现在战斗胜利后一名参加战斗的角色死亡?

[复制链接]

Lv2.观梦者

梦石
0
星屑
673
在线时间
90 小时
注册时间
2020-6-3
帖子
27
跳转到指定楼层
1
发表于 2020-10-6 20:38:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
如题,我想无论是随机遇敌还是主线遇敌的胜利后,一名参加战斗的角色死亡,但如果其只在队伍中但没参加战斗则不会死亡。
战斗胜利后实现某些事件我已知晓,请问该如何进行下面的步骤?
人均大佬

Lv5.捕梦者

梦石
0
星屑
24247
在线时间
5036 小时
注册时间
2016-3-8
帖子
1618
2
发表于 2020-10-6 20:57:49 | 只看该作者
本帖最后由 alexncf125 于 2020-10-6 20:58 编辑

参加战斗的定义是??
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
673
在线时间
90 小时
注册时间
2020-6-3
帖子
27
3
 楼主| 发表于 2020-10-6 21:18:34 | 只看该作者
alexncf125 发表于 2020-10-6 20:57
参加战斗的定义是??

就是这个人在队内成员超过4个时在队伍前4个位置
人均大佬
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
24247
在线时间
5036 小时
注册时间
2016-3-8
帖子
1618
4
发表于 2020-10-7 02:26:32 | 只看该作者
本帖最后由 alexncf125 于 2020-10-7 03:08 编辑

1.主线遇敌是指"明雷"吗?
2.一名是那一名?
3.是当胜利时,在队伍前4个位置的角色算是"参加战斗"
   抑或只要曾经在队伍前4个位置待过,算是"参加战斗"
4.是在胜利结算画面出现前就死,还是回到地图后才死?

说明不足, 只能给出以下脚本
  1. class << BattleManager
  2.   #--------------------------------------------------------------------------
  3.   # ● 胜利时的処理
  4.   #--------------------------------------------------------------------------
  5.   alias die_if_join_after_process_victory process_victory
  6.   def process_victory
  7.     $game_party.battle_members.each {|actor|
  8.       actor.add_state(death_state_id)
  9.     }
  10.     die_if_join_after_process_victory
  11.   end
  12. end
复制代码
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
673
在线时间
90 小时
注册时间
2020-6-3
帖子
27
5
 楼主| 发表于 2020-10-8 13:23:41 | 只看该作者
alexncf125 发表于 2020-10-7 02:26
1.主线遇敌是指"明雷"吗?
2.一名是那一名?
3.是当胜利时,在队伍前4个位置的角色算是"参加战斗"

1.是
2.???
3.前者
4.胜利结算画面出现前死亡

点评

是的  发表于 2020-10-8 16:11
你问:一名参加战斗的角色死亡, "一名"是指:只会有一名角色死亡吗?  发表于 2020-10-8 14:49
人均大佬
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
673
在线时间
90 小时
注册时间
2020-6-3
帖子
27
6
 楼主| 发表于 2020-10-8 16:24:03 | 只看该作者
clt2002 发表于 2020-10-8 13:23
1.是
2.???
3.前者

2.是一名指定角色死亡

点评

其实我5L点评问错了..谢谢soulsaga帮忙修正~~  发表于 2020-10-8 17:08
一名指定角色死亡?那么你指定了哪一名..  发表于 2020-10-8 17:01
人均大佬
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
24247
在线时间
5036 小时
注册时间
2016-3-8
帖子
1618
7
发表于 2020-10-8 17:00:59 | 只看该作者
本帖最后由 alexncf125 于 2020-10-8 17:30 编辑

「无论是随机遇敌还是主线遇敌 (明雷) 的战斗, 当胜利时, 在队伍前4个位置的 10号角色, 会在胜利结算画面出现前死亡」的脚本 :
  1. module WHOWILLDIE
  2.   ACTORID = [10]
  3. end
  4. class << BattleManager
  5.   #--------------------------------------------------------------------------
  6.   # ● 胜利时的処理
  7.   #--------------------------------------------------------------------------
  8.   alias die_if_join_after_process_victory process_victory
  9.   def process_victory
  10.     $game_party.battle_members.each {|actor|
  11.       actor.add_state(death_state_id) if WHOWILLDIE::ACTORID.include?(actor.id)
  12.     }
  13.     die_if_join_after_process_victory
  14.   end
  15. end
复制代码
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
673
在线时间
90 小时
注册时间
2020-6-3
帖子
27
8
 楼主| 发表于 2020-10-8 17:25:50 | 只看该作者
alexncf125 发表于 2020-10-8 17:00
「无论是随机遇敌还是主线遇敌 (明雷) 的战斗, 当胜利时, 在队伍前4个位置的 10号角色, 会在胜利结算画面出 ...

求教,报错了。
说是第11行发生了NameError。
undefined local variable or method 'death_state_id' for BattleManager:Module
人均大佬
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
24247
在线时间
5036 小时
注册时间
2016-3-8
帖子
1618
9
发表于 2020-10-8 17:30:53 | 只看该作者
clt2002 发表于 2020-10-8 17:25
求教,报错了。
说是第11行发生了NameError。
undefined local variable or method 'death_state_id' for ...


actor.add_state(death_state_id)
改成
actor.add_state(actor.death_state_id)
如果还报错就
actor.add_state(1)
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
673
在线时间
90 小时
注册时间
2020-6-3
帖子
27
10
 楼主| 发表于 2020-10-8 17:33:12 | 只看该作者
alexncf125 发表于 2020-10-8 17:30
actor.add_state(death_state_id)
改成
actor.add_state(actor.death_state_id)

成功了,辛苦了,万分感谢!!
人均大佬
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-19 14:53

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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