Project1

标题: 将队伍整个替换为临时队员,之后再换回来 [打印本页]

作者: sezhiyang    时间: 2018-6-27 17:06
标题: 将队伍整个替换为临时队员,之后再换回来
想设计一个类似回忆早年间被英雄所救的场景,主角带着招募的队员进入场景,进入回忆地图队员变成设置好的英雄小队,等打完出来再换回原来队友,其实储存一下队员id等到时候再读取就是了,但是没有找到相关设置,只能一个一个入队离队,关键我带的还不是固定的队友,这怎么弄。。。
作者: KB.Driver    时间: 2018-6-27 17:06
标题: RE: 将队伍整个替换为临时队员,之后再换回来
本帖最后由 KB.Driver 于 2018-6-30 12:52 编辑

想到一个骚操作,就是再弄一个全局变量$game_party2
然后所有队员的编辑都对应在那里进行
再弄一个决定当前队伍是$game_party还是$game_party2的开关/变量就好

已经做了一个范例工程,你可以看看:
Project1.zip (1.43 MB, 下载次数: 160)

效果gif:

作者: 阿薩男爵    时间: 2018-6-28 05:59
其实如果只是想要表现特定剧情的话,我认为英雄小队在回忆中的剧情连战斗部分都可以不做。
为什么呢,如果是可操作的战斗,那么避免不了有玩家用一些极端打法,比如故意让回忆中的
英雄们战死等等来尝试改动时间线(虽说制作者不可能做那么多内容)
反而言之,如果只是相单纯显示英雄们强大的战斗力,那么就没必要特定的去做战斗环节,只
要有英雄们的行走图和立绘,在台词和演出上下点功夫(因为也不是玩家所要操作的角色,所
以一带而过也无妨)
当然这只是省事的方法,可以节约游戏制作的时间,换队伍脚本我记得以前是看过的,建议你
也可以尝试论坛搜索一下。
作者: 灯笼菜刀王    时间: 2018-6-28 11:49
本帖最后由 灯笼菜刀王 于 2018-6-28 11:54 编辑

RUBY 代码复制
  1. for i in 0..4
  2.   if $game_party.battle_members[i] != nil
  3.   $game_variables[1+i]= \
  4.       $game_party.battle_members[i].id
  5.   else
  6.   $game_variables[1+i] = 0
  7.   end
  8. end


用事件脚本执行上面那段就可以把现有队员ID 保存到 全局变量 1-4号里.(如果队伍不到4个人就用0补足)

要换变量,把上面 $game_variables[1+i] 中括号里的1换成别的数就好了, 比如换成[100+i] 那就是100-103 这4个变量.

注意要准备4个连续编号的变量来储存(如果你只需要记录一次, 那这个剧情过后老队员归队后, 这4个变量就可以随意使用=.=)

PS,如果你队伍不是4个人就改第一行的4, 并准备好对应数量的连续编号的变量

赠品: 队员加入的脚本写法  $game_party.add_actor(角色编号)
作者: sezhiyang    时间: 2018-6-30 23:38
KB.Driver 发表于 2018-6-30 10:55
想到一个骚操作,就是再弄一个全局变量$game_party2
然后所有队员的编辑都对应在那里进行
再弄一个决定当前 ...

感谢大神




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