Project1

标题: 队伍角色位置整理 [打印本页]

作者: ahoucbvtw    时间: 2017-2-14 23:16
标题: 队伍角色位置整理
由于我在游戏上会设定原先角色离队然后再次将他加入
但是目前遇到一个问题就是每次我这样离队又入队就会换一个角色行走
我想要随时指定那位离开的角色为队伍的第一人(也就是行走时都是使用他)

能否给个方向?脚本也行?
拜托
作者: yang1zhi    时间: 2017-2-15 13:01
https://rpg.blue/forum.php?mod=viewthread&tid=80913
作者: 1095884734    时间: 2017-3-5 09:49
本帖最后由 1095884734 于 2017-3-5 09:50 编辑
  1. def 队伍还原
  2.   if $game_switches[20] == true
  3.   if $game_variables[2] == 0
  4.     $game_party.remove_actor(2)
  5.     $game_party.add_actor(2)
  6.   else
  7.     $game_party.remove_actor(9+$game_variables[2])
  8.     $game_party.add_actor(9+$game_variables[2])
  9.   end
  10. end
  11.   if $game_switches[21] == true
  12.   if $game_variables[3] == 0
  13.     $game_party.remove_actor(3)
  14.     $game_party.add_actor(3)
  15.   else
  16.     $game_party.remove_actor(9+$game_variables[3])
  17.     $game_party.add_actor(9+$game_variables[3])
  18.   end
  19. end
  20.   if $game_switches[22] == true
  21.   if $game_variables[50] == 0
  22.     $game_party.remove_actor(4)
  23.     $game_party.add_actor(4)
  24.   else
  25.     $game_party.remove_actor(9+$game_variables[50])
  26.     $game_party.add_actor(9+$game_variables[50])
  27.   end
  28.   end
  29.   if $game_variables[4] == 0
  30.     else
  31.     $game_party.remove_actor(9+$game_variables[4])
  32.     $game_party.add_actor(9+$game_variables[4])
  33.   end
  34. end
  35. def 队伍还原二
  36.   if $game_switches[21] == true
  37.   if $game_variables[3] == 0
  38.     $game_party.remove_actor(3)
  39.     $game_party.add_actor(3)
  40.   else
  41.     $game_party.remove_actor(9+$game_variables[3])
  42.     $game_party.add_actor(9+$game_variables[3])
  43.   end
  44. end
  45.   if $game_switches[22] == true
  46.   if $game_variables[50] == 0
  47.     $game_party.remove_actor(4)
  48.     $game_party.add_actor(4)
  49.   else
  50.     $game_party.remove_actor(9+$game_variables[50])
  51.     $game_party.add_actor(9+$game_variables[50])
  52.   end
  53.   end
  54.   if $game_variables[4] == 0
  55.     else
  56.     $game_party.remove_actor(9+$game_variables[4])
  57.     $game_party.add_actor(9+$game_variables[4])
  58.   end
  59. end
  60. def 队伍还原三
  61.   if $game_switches[22] == true
  62.   if $game_variables[50] == 0
  63.     $game_party.remove_actor(4)
  64.     $game_party.add_actor(4)
  65.   else
  66.     $game_party.remove_actor(9+$game_variables[50])
  67.     $game_party.add_actor(9+$game_variables[50])
  68.   end
  69.   end
  70.   if $game_variables[4] == 0
  71.     else
  72.     $game_party.remove_actor(9+$game_variables[4])
  73.     $game_party.add_actor(9+$game_variables[4])
  74.   end
  75. end
  76. def 队伍还原四
  77. =begin
  78.     unless $game_variables[4] == 0
  79.     $game_party.remove_actor(4+$game_variables[4])
  80.     $game_party.add_actor(4+$game_variables[4])
  81.   end
  82. =end
  83. end
复制代码

或者说用公共事件
用开关判定队友的人数
然后队友加入、离开来调整顺序
作者: guoxiaomi    时间: 2017-3-5 12:34
单纯的让队伍里的角色按照ID来排序的方法:
  1. $game_party.actors.sort!{|a| a.id}
  2. $game_player.refresh
复制代码

把这个用事件脚本插在“加入队伍”指令的后面。这样只要保证新加入的角色的ID比较小,就会显示这个角色的行走图。
作者: cinderelmini    时间: 2017-3-5 15:10
如果队伍成员排序一直是固定的话,其实用事件就可以了,
比如一开始队伍成员:【1,2,3,4】,
1离队了,队伍剩下【2,3,4】,
然后1回来了,队伍变成【2,3,4,1】,
这时候,让队伍里的2,3,4逐一离队,队伍就变成了【1】了,
然后再把2,3,4加入队伍,那么队伍就变回原来的样子了。




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