Project1

标题: 如何让队伍中的人简单退队 [打印本页]

作者: qknight    时间: 2014-1-29 14:44
标题: 如何让队伍中的人简单退队
本帖最后由 qknight 于 2014-2-4 13:28 编辑

一般见到的事件中都是列出一长串名单,几乎让所有游戏中可以操控的人都退队一遍。如何简化他们,比如说只让4人队伍中第2、3、4名队员退队这样设定?
作者: taroxd    时间: 2014-1-29 15:04
本帖最后由 taroxd 于 2014-1-29 15:45 编辑

事件中执行以下脚本

RUBY 代码复制
  1. [2, 3, 4].each {|actor_id| $game_party.remove_actor(actor_id) }


功能:使ID为2、3、4的角色离队
把2、3、4改为其他数字也可,意思应该不用解释了吧。


RUBY 代码复制
  1. gp = $game_party
  2. actors = [2, 3, 4].collect {|i| gp.members[i - 1] }.compact
  3. actors.each {|actor| gp.remove_actor(actor.id) }


功能:队伍中第2, 3, 4名角色离队。2, 3, 4可改为其他数字。
(但是,这个在事件脚本框里的写法并不推荐,这是仅限给脚本盲使用的懒人做法
会点脚本的话,请在 $game_party 里定义一些方法,这里不再详述了
会弄脚本的话,楼下的方式是比较好的)

为防止事件框太小,下面是分行版
RUBY 代码复制
  1. gp = $game_party
  2. actors = [2, 3, 4].collect {|i|
  3. gp.members[i - 1] }.compact
  4. actors.each {|actor|
  5. gp.remove_actor(actor.id) }


作者: 喵呜喵5    时间: 2014-1-29 15:34
  1. class Game_Interpreter
  2.   def 离队(n = 1)
  3.     actor = $game_party.members[n - 1]
  4.     $game_party.remove_actor(actor.id) if actor
  5.   end
  6. end
复制代码
插入脚本,之后在事件中使用脚本命令
  1. 离队(X)
复制代码
就可以让队伍中的第X名成员离开队伍了
作者: taroxd    时间: 2014-1-29 15:49
喵呜喵5 发表于 2014-1-29 15:34
插入脚本,之后在事件中使用脚本命令就可以让队伍中的第X名成员离开队伍了 ...

RUBY 代码复制
  1. class Game_Interpreter
  2.   def 离队(*indexes)
  3.     actors = indexes.collect {|i| $game_party.members[i - 1] }.compact
  4.     actors.each {|actor| $game_party.remove_actor(actor.id) }
  5.   end
  6. end


嗯,我是一个无聊的人
作者: qknight    时间: 2014-2-4 13:45
喵呜喵5 发表于 2014-1-29 15:34
插入脚本,之后在事件中使用脚本命令就可以让队伍中的第X名成员离开队伍了 ...

按照4、3、2、1让所有人离队再单独把主角加回来,这下子不管4人火车换成什么顺序都能好聚好散了
作者: @npc    时间: 2014-4-25 20:55
数学teacher说,保留3个=除去一个,所以,移走三个=全移走后加入1个




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1