设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2765|回复: 4
打印 上一主题 下一主题

[原创发布] 【默】在开始后出现选项如跳过序幕之类的(脚本)

[复制链接]

Lv1.梦旅人

梦石
0
星屑
89
在线时间
308 小时
注册时间
2010-8-10
帖子
794
跳转到指定楼层
1
发表于 2010-8-18 14:36:18 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

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

首先打开工程的脚本编辑,    找到
  1. #--------------------------------------------------------------------------
  2.   # ● 命令 : 新游戏
  3.   #--------------------------------------------------------------------------
  4.   def command_new_game
  5.     # 演奏确定 SE
  6.     $game_system.se_play($data_system.decision_se)
  7.     # 停止 BGM
  8.     Audio.bgm_stop
  9.     # 重置测量游戏时间用的画面计数器
  10.     Graphics.frame_count = 0
  11.     # 生成各种游戏对像
  12.     $game_temp          = Game_Temp.new
  13.     $game_system        = Game_System.new
  14.     $game_switches      = Game_Switches.new
  15.     $game_variables     = Game_Variables.new
  16.     $game_self_switches = Game_SelfSwitches.new
  17.     $game_screen        = Game_Screen.new
  18.     $game_actors        = Game_Actors.new
  19.     $game_party         = Game_Party.new
  20.     $game_troop         = Game_Troop.new
  21.     $game_map           = Game_Map.new
  22.     $game_player        = Game_Player.new
  23.     # 设置初期同伴位置
  24.     $game_party.setup_starting_members
  25.     # 设置初期位置的地图
  26.     $game_map.setup($data_system.start_map_id)
  27.     # 主角向初期位置移动
  28.     $game_player.moveto($data_system.start_x, $data_system.start_y)
  29.     # 刷新主角
  30.     $game_player.refresh
  31.     # 执行地图设置的 BGM 与 BGS 的自动切换
  32.     $game_map.autoplay
  33.     # 刷新地图 (执行并行事件)
  34.     $game_map.update
  35.     # 切换地图画面
  36.     $scene = Scene_Map.new
  37.   end
复制代码
将其全部改为
  1.   #--------------------------------------------------------------------------
  2.   # ● 命令 : 新游戏   #默之
  3.   #--------------------------------------------------------------------------
  4.   def command_new_game
  5.     $game_system.se_play($data_system.decision_se)
  6.     $scene = Scene_xuanxiang.new #场景可自定义
  7.   end
复制代码
并在 Scene_Title  底下新建一个 Scene_xuanxiang

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

首先插入
  1. class Scene_xuanxiang #此处可更改
  2.   #--------------------------------------------------------------------------
  3.   # ● 新建游戏
  4.   #--------------------------------------------------------------------------
  5.   def main
  6.     #把一个背景放入(需自定义图片)
  7.     @sprite = Sprite.new
  8.     @sprite.bitmap = RPG::Cache.panorama("mozhi", 0)
  9.     #描绘窗口
  10.     s1 = "   播放序幕"                  
  11.     s2 = "   跳过序幕"                  
  12.     #下面与title差不多了
  13.     @command_window = Window_Command.new(150, [s1, s2])
  14.     @command_window.opacity = 0
  15.     @command_window.x = 320 - @command_window.width / 2
  16.     @command_window.y = 200
  17.     # 演奏标题 BGM(可自定义播放其他音乐)
  18.     $game_system.bgm_play($data_system.title_bgm)
  19.     # 停止演奏 ME、BGS
  20.     Audio.me_stop
  21.     Audio.bgs_stop
  22.     # 执行过渡
  23.     Graphics.transition
  24.     # 主循环
  25.     loop do
  26.       # 刷新游戏画面
  27.       Graphics.update
  28.       # 刷新输入信息
  29.       Input.update
  30.       # 刷新画面
  31.       update
  32.       # 如果画面被切换就中断循环
  33.       if $scene != self
  34.         break
  35.       end
  36.     end
  37.     # 装备过渡
  38.     Graphics.freeze
  39.     # 释放命令窗口
  40.     @command_window.dispose
  41.     # 释放标题图形
  42.     @sprite.bitmap.dispose
  43.     @sprite.dispose
  44.   end
复制代码
s1 s2  后面的文字可以根据自己需要更改(这个跟title一样)
然后大段大段的复制底下 ,那么我将复制的脚本复制上来
  1.   #--------------------------------------------------------------------------
  2.   # ● 刷新画面
  3.   #--------------------------------------------------------------------------
  4.   def update
  5.     # 刷新命令窗口
  6.     @command_window.update
  7.     # 按下 C 键的情况下
  8.     if Input.trigger?(Input::C)
  9.       # 命令窗口的光标位置的分支
  10.       case @command_window.index
  11.       when 0  # 播放序幕
  12.         command_bofang
  13.       when 1  # 跳过序幕
  14.         command_tiaoguo
  15.     end
  16.   end
复制代码
底下 播放序幕 与 跳过序幕 就用到了柳柳所讲解的如何在标题画面传送到不同地图了(在黑剑中有用到)
  1.   #--------------------------------------------------------------------------
  2.   # ● 命令 : 播放序幕
  3.   #--------------------------------------------------------------------------
  4.   def command_bofang
  5.     # 演奏确定 SE
  6.     $game_system.se_play($data_system.decision_se)
  7.     # 停止 BGM
  8.     Audio.bgm_stop
  9.     # 重置测量游戏时间用的画面计数器
  10.     Graphics.frame_count = 0
  11.     # 生成各种游戏对像
  12.     $game_temp          = Game_Temp.new
  13.     $game_system        = Game_System.new
  14.     $game_switches      = Game_Switches.new
  15.     $game_variables     = Game_Variables.new
  16.     $game_self_switches = Game_SelfSwitches.new
  17.     $game_screen        = Game_Screen.new
  18.     $game_actors        = Game_Actors.new
  19.     $game_party         = Game_Party.new
  20.     $game_troop         = Game_Troop.new
  21.     $game_map           = Game_Map.new
  22.     $game_player        = Game_Player.new
  23.     # 设置初期同伴位置
  24.     $game_party.setup_starting_members
  25.     # 设置初期位置的地图
  26.     $game_map.setup($data_system.start_map_id)#设置地图
  27.     # 主角向初期位置移动
  28.     $game_player.moveto($data_system.start_x, $data_system.start_y)#设置移动位置
  29.     # 刷新主角
  30.     $game_player.refresh
  31.     # 执行地图设置的 BGM 与 BGS 的自动切换
  32.     $game_map.autoplay
  33.     # 刷新地图 (执行并行事件)
  34.     $game_map.update
  35.     # 切换地图画面
  36.     $scene = Scene_Map.new
  37.   end
  38.   #--------------------------------------------------------------------------
  39.   # ● 命令 : 跳过序幕
  40.   #--------------------------------------------------------------------------
  41.   def command_tiaoguo
  42.     # 演奏确定 SE
  43.     $game_system.se_play($data_system.decision_se)
  44.     # 停止 BGM
  45.     Audio.bgm_stop
  46.     # 重置测量游戏时间用的画面计数器
  47.     Graphics.frame_count = 0
  48.     # 生成各种游戏对像
  49.     $game_temp          = Game_Temp.new
  50.     $game_system        = Game_System.new
  51.     $game_switches      = Game_Switches.new
  52.     $game_variables     = Game_Variables.new
  53.     $game_self_switches = Game_SelfSwitches.new
  54.     $game_screen        = Game_Screen.new
  55.     $game_actors        = Game_Actors.new
  56.     $game_party         = Game_Party.new
  57.     $game_troop         = Game_Troop.new
  58.     $game_map           = Game_Map.new
  59.     $game_player        = Game_Player.new
  60.     # 设置初期同伴位置
  61.     $game_party.setup_starting_members
  62.     # 设置初期位置的地图
  63.     $game_map.setup($data_system.start_map_id)#同上
  64.     # 主角向初期位置移动
  65.     $game_player.moveto($data_system.start_x, $data_system.start_y)#同上
  66.     # 刷新主角
  67.     $game_player.refresh
  68.     # 执行地图设置的 BGM 与 BGS 的自动切换
  69.     $game_map.autoplay
  70.     # 刷新地图 (执行并行事件)
  71.     $game_map.update
  72.     # 切换地图画面
  73.     $scene = Scene_Map.new
  74.   end
复制代码
当然结束了还得放一个
  1. end
  2. end
复制代码
在最底面
  1.    
  2. # 设置初期位置的地图
  3.     $game_map.setup设置地图
  4.     # 主角向初期位置移动
  5.     $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 星屑)


1.jpg (23.37 KB, 下载次数: 0)

1.jpg
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2010-8-7
帖子
37
2
发表于 2010-8-18 14:37:23 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2010-8-7
帖子
37
3
发表于 2010-8-18 14:38:57 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
1 小时
注册时间
2010-8-3
帖子
18
4
发表于 2010-8-18 14:39:39 | 只看该作者
抢什么,  板凳。。。。赞啊
回复 支持 反对

使用道具 举报

Lv1.梦旅人

小小的百鬼夜行<

梦石
0
星屑
54
在线时间
579 小时
注册时间
2010-7-29
帖子
2682

贵宾

5
发表于 2010-8-18 16:52:34 | 只看该作者
还好,不过我知道用事件貌似.... = =b
能用脚本改的话,是对能力的一个提升,所以还是赞一个。

点评

谢啦  发表于 2010-8-18 16:59
某只PHP/HTML小白鼠→退屈の间


Cause I knew you were trouble when you walked in
So shame is on me now
I flow me to place i ve never been
till you put me down oh
Now Im lying on the cold hard ground
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-14 12:44

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表