じ☆ve冰风 发表于 2024-4-19 18:26:31

【默】在开始后出现选项如跳过序幕之类的(脚本)

第一次讲解,希望大家多多支持,本讲解为我原创,脚本为我改写(改写title),版权属于默之(额 我的大号)。
额,很高行为大将讲解如何在开始后用脚本添加选项。

首先打开工程的脚本编辑,   找到 #--------------------------------------------------------------------------# ● 命令 : 新游戏#--------------------------------------------------------------------------def command_new_game    # 演奏确定 SE    $game_system.se_play($data_system.decision_se)    # 停止 BGM    Audio.bgm_stop    # 重置测量游戏时间用的画面计数器    Graphics.frame_count = 0    # 生成各种游戏对像    $game_temp          = Game_Temp.new    $game_system      = Game_System.new    $game_switches      = Game_Switches.new    $game_variables   = Game_Variables.new    $game_self_switches = Game_SelfSwitches.new    $game_screen      = Game_Screen.new    $game_actors      = Game_Actors.new    $game_party         = Game_Party.new    $game_troop         = Game_Troop.new    $game_map         = Game_Map.new    $game_player      = Game_Player.new    # 设置初期同伴位置    $game_party.setup_starting_members    # 设置初期位置的地图    $game_map.setup($data_system.start_map_id)    # 主角向初期位置移动    $game_player.moveto($data_system.start_x, $data_system.start_y)    # 刷新主角    $game_player.refresh    # 执行地图设置的 BGM 与 BGS 的自动切换    $game_map.autoplay    # 刷新地图 (执行并行事件)    $game_map.update    # 切换地图画面    $scene = Scene_Map.newend复制代码将其全部改为#--------------------------------------------------------------------------# ● 命令 : 新游戏   #默之   #--------------------------------------------------------------------------def command_new_game    $game_system.se_play($data_system.decision_se)    $scene = Scene_xuanxiang.new #场景可自定义end复制代码并在 Scene_Title底下新建一个 Scene_xuanxiang

Scene_xuanxiang 的编写 其实与 Scene_Title有很多异曲同工之处

首先插入class Scene_xuanxiang #此处可更改#--------------------------------------------------------------------------# ● 新建游戏#--------------------------------------------------------------------------def main    #把一个背景放入(需自定义图片)    @sprite = Sprite.new    @sprite.bitmap = RPG::Cache.panorama("mozhi", 0)    #描绘窗口    s1 = "   播放序幕"                      s2 = "   跳过序幕"                      #下面与title差不多了    @command_window = Window_Command.new(150, )    @command_window.opacity = 0    @command_window.x = 320 - @command_window.width / 2    @command_window.y = 200    # 演奏标题 BGM(可自定义播放其他音乐)    $game_system.bgm_play($data_system.title_bgm)    # 停止演奏 ME、BGS    Audio.me_stop    Audio.bgs_stop    # 执行过渡    Graphics.transition    # 主循环    loop do      # 刷新游戏画面      Graphics.update      # 刷新输入信息      Input.update      # 刷新画面      update      # 如果画面被切换就中断循环      if $scene != self      break      end    end    # 装备过渡    Graphics.freeze    # 释放命令窗口    @command_window.dispose    # 释放标题图形    @sprite.bitmap.dispose    @sprite.disposeend复制代码s1 s2后面的文字可以根据自己需要更改(这个跟title一样)
然后大段大段的复制底下 ,那么我将复制的脚本复制上来#--------------------------------------------------------------------------# ● 刷新画面#--------------------------------------------------------------------------def update    # 刷新命令窗口    @command_window.update    # 按下 C 键的情况下    if Input.trigger?(Input::C)      # 命令窗口的光标位置的分支      case @command_window.index      when 0# 播放序幕      command_bofang      when 1# 跳过序幕      command_tiaoguo    endend复制代码底下 播放序幕 与 跳过序幕 就用到了柳柳所讲解的如何在标题画面传送到不同地图了(在黑剑中有用到)#--------------------------------------------------------------------------# ● 命令 : 播放序幕#--------------------------------------------------------------------------def command_bofang    # 演奏确定 SE    $game_system.se_play($data_system.decision_se)    # 停止 BGM    Audio.bgm_stop    # 重置测量游戏时间用的画面计数器    Graphics.frame_count = 0    # 生成各种游戏对像    $game_temp          = Game_Temp.new    $game_system      = Game_System.new    $game_switches      = Game_Switches.new    $game_variables   = Game_Variables.new    $game_self_switches = Game_SelfSwitches.new    $game_screen      = Game_Screen.new    $game_actors      = Game_Actors.new    $game_party         = Game_Party.new    $game_troop         = Game_Troop.new    $game_map         = Game_Map.new    $game_player      = Game_Player.new    # 设置初期同伴位置    $game_party.setup_starting_members    # 设置初期位置的地图    $game_map.setup($data_system.start_map_id)#设置地图    # 主角向初期位置移动    $game_player.moveto($data_system.start_x, $data_system.start_y)#设置移动位置    # 刷新主角    $game_player.refresh    # 执行地图设置的 BGM 与 BGS 的自动切换    $game_map.autoplay    # 刷新地图 (执行并行事件)    $game_map.update    # 切换地图画面    $scene = Scene_Map.newend#--------------------------------------------------------------------------# ● 命令 : 跳过序幕#--------------------------------------------------------------------------def command_tiaoguo    # 演奏确定 SE    $game_system.se_play($data_system.decision_se)    # 停止 BGM    Audio.bgm_stop    # 重置测量游戏时间用的画面计数器    Graphics.frame_count = 0    # 生成各种游戏对像    $game_temp          = Game_Temp.new    $game_system      = Game_System.new    $game_switches      = Game_Switches.new    $game_variables   = Game_Variables.new    $game_self_switches = Game_SelfSwitches.new    $game_screen      = Game_Screen.new    $game_actors      = Game_Actors.new    $game_party         = Game_Party.new    $game_troop         = Game_Troop.new    $game_map         = Game_Map.new    $game_player      = Game_Player.new    # 设置初期同伴位置    $game_party.setup_starting_members    # 设置初期位置的地图    $game_map.setup($data_system.start_map_id)#同上    # 主角向初期位置移动    $game_player.moveto($data_system.start_x, $data_system.start_y)#同上    # 刷新主角    $game_player.refresh    # 执行地图设置的 BGM 与 BGS 的自动切换    $game_map.autoplay    # 刷新地图 (执行并行事件)    $game_map.update    # 切换地图画面    $scene = Scene_Map.newend复制代码当然结束了还得放一个 endend复制代码在最底面    # 设置初期位置的地图    $game_map.setup设置地图    # 主角向初期位置移动    $game_player.moveto($data_system.start_x, $data_system.start_y)#设置移动位置复制代码($data_system.start_map_id)这个需改为所在的地图id
什么你不知道地图id?!
右击你想让人物移动到的地图   第一行有一个 地图设置   地图设置的最上面便是了

因为是 序幕的播放 所以可任意设置位置 ($data_system.start_x, $data_system.start_y)但不要超过所用的地图大小

但如果要是想明确的放在某位置   可新建一个事件   选择 场所移动    打开直接指定   场所便可以看见了






额如果还不会弄可以联系我QQ群 4693661欢迎大家加入 ,也可以下载范例(不过要经验的也不贵才10经验回复两次就赚回来了)


开始候选项.rar(745.27 KB, 下载次数: 234, 售价: 1 星屑)2010-8-18 14:35 上传
点击文件名下载附件
售价: 1 星屑       [记录]   [购买]







             本帖来自P1论坛作者不是马甲,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=153659若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
页: [1]
查看完整版本: 【默】在开始后出现选项如跳过序幕之类的(脚本)