Project1

标题: 如何在战斗中实现更换队员队列的更换。 [打印本页]

作者: alianlord    时间: 2021-4-8 15:08
标题: 如何在战斗中实现更换队员队列的更换。
想在战斗中,个人指令中 增加一个更换队员在队伍中位置或者和某某队员交换位置的 指令。

不是立时就更换位置,而是全员战斗指令选择完毕后。进入敌我双方战斗执行互殴时,像其它攻击、防御、技能、道具使用一样,
当轮到该队员行动时,才进行队伍顺序更换的动作。

先在这里谢过各位了。
作者: leungzero    时间: 2021-4-8 20:49
本帖最后由 leungzero 于 2021-4-8 20:51 编辑

设定一个物品,只能战斗中使用,这个物品挂钩一个公共事件。公共事件写上选择某个队友,这个队友退队然后另外的队友进队。界面都不需要改。记住,如果是临时的,记得加上战后情况。
作者: alianlord    时间: 2021-4-8 21:45
leungzero 发表于 2021-4-8 20:49
设定一个物品,只能战斗中使用,这个物品挂钩一个公共事件。公共事件写上选择某个队友,这个队友退队然后另 ...

感谢。方法不错,只是适应的范围小了点。(也就是交换的成员和位置是固定的)。
作者: leungzero    时间: 2021-4-8 22:05
alianlord 发表于 2021-4-8 21:45
感谢。方法不错,只是适应的范围小了点。(也就是交换的成员和位置是固定的)。 ...

想要队友换站位,要额外搞个脚本编码的。
作者: leungzero    时间: 2021-4-8 22:11
  class Game_Party
      #--------------------------------------------------------------------------
      # ● 角色入队到指定位置
      #--------------------------------------------------------------------------
      #  使用方法:
      #    事件脚本 $game_party.cld99_add_actor(id,pos)
      #       id:角色的数据库id
      #      pos:角色入队的位置 队首为0 其他依次递增 缺省值为队尾
      #       例: $game_party.cld99_add_actor(1,0) #让数据库id为1的艾里克加入队首
      #--------------------------------------------------------------------------
      def cld99_add_actor(actor_id, position = @actors.length)
        @actors.insert(position,actor_id) unless @actors.include?(actor_id)
        $game_player.refresh
        $game_map.need_refresh = true
      end
    end

大概是这个脚本,用来整队友位置。。
作者: leungzero    时间: 2021-4-8 22:13
如果你看不懂怎么用,你将就吧。总不会有角色位置相关的游戏内容吧?
作者: alianlord    时间: 2021-4-8 22:32
leungzero 发表于 2021-4-8 22:13
如果你看不懂怎么用,你将就吧。总不会有角色位置相关的游戏内容吧?

战斗小队有前后两列。有些队员就像宠物小精灵在战斗中召唤,召唤出现时是默认在队伍最后(大机率就在后排),然而是近战职业打不到敌人,那就必需有个指令使之往前(或交换前祭的位置)
作者: leungzero    时间: 2021-4-8 23:12
alianlord 发表于 2021-4-8 22:32
战斗小队有前后两列。有些队员就像宠物小精灵在战斗中召唤,召唤出现时是默认在队伍最后(大机率就在后排) ...

自己在楼顶把游戏内容,稍微写一下,必要截图。等别人帮你吧。我只能帮到这。
作者: alianlord    时间: 2021-4-8 23:22
leungzero 发表于 2021-4-8 23:12
自己在楼顶把游戏内容,稍微写一下,必要截图。等别人帮你吧。我只能帮到这。 ...

好。也有劳你的关照了。




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