本帖最后由 Password 于 2013-11-6 21:48 编辑
改好了,按照楼主的要求,某个角色的战斗中行动只保留了防守和待机
以下为图文步骤:
1,Window_ActorCommand 下,建议用下面贴出的脚本全部替换掉:
#============================================================================== # ■ Window_ActorCommand #------------------------------------------------------------------------------ # 选择角色命令(如「攻击」或「技能」)的窗口。 #============================================================================== class Window_ActorCommand < Window_Command #-------------------------------------------------------------------------- # ● 初始化对像 #-------------------------------------------------------------------------- def initialize super(128, [], 1, 4) self.active = false end #-------------------------------------------------------------------------- # ● 设置 # actor : 角色 #-------------------------------------------------------------------------- def setup(actor) if actor.id == 2 # 小小的角色的ID s1 = "防守" s2 = "待机" @commands = [s1, s2] @item_max = 2 else s1 = Vocab::attack s2 = Vocab::skill s3 = Vocab::guard s4 = Vocab::item if actor.class.skill_name_valid # 是否指定职业技能文字 s2 = actor.class.skill_name # 替换「技能」命令文字 end @commands = [s1, s2, s3, s4] @item_max = 4 end refresh self.index = 0 end end
#==============================================================================
# ■ Window_ActorCommand
#------------------------------------------------------------------------------
# 选择角色命令(如「攻击」或「技能」)的窗口。
#==============================================================================
class Window_ActorCommand < Window_Command
#--------------------------------------------------------------------------
# ● 初始化对像
#--------------------------------------------------------------------------
def initialize
super(128, [], 1, 4)
self.active = false
end
#--------------------------------------------------------------------------
# ● 设置
# actor : 角色
#--------------------------------------------------------------------------
def setup(actor)
if actor.id == 2 # 小小的角色的ID
s1 = "防守"
s2 = "待机"
@commands = [s1, s2]
@item_max = 2
else
s1 = Vocab::attack
s2 = Vocab::skill
s3 = Vocab::guard
s4 = Vocab::item
if actor.class.skill_name_valid # 是否指定职业技能文字
s2 = actor.class.skill_name # 替换「技能」命令文字
end
@commands = [s1, s2, s3, s4]
@item_max = 4
end
refresh
self.index = 0
end
end
2,Scene_Battle 下,按照如图所示区域用下面脚本替换掉。
#======================修改段开始======================== when 0 # 攻击/防守 Sound.play_decision if @active_battler.id == 2 # 小小的角色的ID @active_battler.action.set_guard next_actor else @active_battler.action.set_attack start_target_enemy_selection end when 1 # 技能/待机 Sound.play_decision if @active_battler.id == 2 # 小小的角色的ID next_actor else start_skill_selection end #======================修改段结束========================
#======================修改段开始========================
when 0 # 攻击/防守
Sound.play_decision
if @active_battler.id == 2 # 小小的角色的ID
@active_battler.action.set_guard
next_actor
else
@active_battler.action.set_attack
start_target_enemy_selection
end
when 1 # 技能/待机
Sound.play_decision
if @active_battler.id == 2 # 小小的角色的ID
next_actor
else
start_skill_selection
end
#======================修改段结束========================
另外,如果还有问题,可以参见下面的范例:
Project1.rar
(238 KB, 下载次数: 64)
修改的脚本已经在脚本编辑器中的脚本名前用“★”标出,或者全局搜索“修改”也可以发现。
其实不是太难,至于闪避和哭的选项其实也能做,只不过改的东西就会更多了。
如果楼主非要要的话也可以考虑继续做……三天以后……
于是是否是这样的效果呢?经过简单测试,未出现明显BUG,如有BUG请点评本楼或者回复我。
最后附上默认工程的效果图:
|