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

Project1

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

[有事请教] 谁还有这个工程的备份?

[复制链接]

Lv2.观梦者

梦石
0
星屑
615
在线时间
84 小时
注册时间
2012-8-12
帖子
178
跳转到指定楼层
1
发表于 2018-7-14 18:37:07 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
https://rpg.blue/thread-242875-1-1.html
已经失效了
谁还有收藏的
麻烦分享一下,多谢

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
39670
在线时间
7485 小时
注册时间
2009-7-6
帖子
13483

开拓者贵宾

2
发表于 2018-7-14 20:59:39 | 只看该作者
这年代实在太久远了,而且还是115资源……
可以试试@精灵使者
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
34870
在线时间
4148 小时
注册时间
2007-12-15
帖子
9981
3
发表于 2018-7-15 07:28:58 | 只看该作者
高概率我有和这个类似脚本的早期版本,大概08~10年左右的因为开始时间比较早有可能是这个的原型。
虽然有好心人帮我改了两次,依然有问题
但是我这个bgm数量过多的话读不出来,会造成停止工作。
具体功能 播放无法顺序播放 自己按,可实现RM内置功能,乐曲的加减速
界面是这样的,这里的测试工程截图是15年删版权素材以前的,后面的bgm买的太多都读不出来了。



代码如下

  1. #==============================================================================
  2. # ■ Scene_Title音乐播放脚本,来自日本网站http://chronicle.onmitsu.jp
  3. #    由isul和link006007帮助修改
  4. #==============================================================================

  5. class Scene_music
  6. #--------------------------------------------------------------------------
  7. # ● メイン処理
  8. #--------------------------------------------------------------------------
  9. def main
  10.   # データベースをロード
  11.   $data_system = load_data("Data/System.rxdata")
  12.   # システムオブジェクトを作成
  13.   $game_system = Game_System.new
  14.   # ファイルリストを作成
  15.   @filelist = Dir::entries("./Audio/BGM/")
  16.   @filelist.delete(".")
  17.   @filelist.delete("..")
  18.   if @filelist == []
  19.     # ウィンドウを作成
  20.     @filelist_window = Window_Base.new(0,0,360,480)
  21.     @filelist_window.contents = Bitmap.new(328,448)
  22.     @filelist_window.contents.font.color = Color.new(192, 224, 255, 255)
  23.     @filelist_window.contents.draw_text(0,100,328,32,"ファイルが見つかりません",1)
  24.     @filelist_window.contents.font.size = 16
  25.     @filelist_window.contents.font.color = Color.new(255, 255, 255, 255)
  26.     @filelist_window.contents.draw_text(0,150,328,32,"「Audio/BGM」フォルダに",1)
  27.     @filelist_window.contents.draw_text(0,182,328,32,"オーディオファイルを入れてください",1)
  28.   else
  29.     # ウィンドウを作成
  30.     @filelist_window = Window_Command.new(360, @filelist)
  31.     @filelist_window.height = 480
  32.     @filelist_window.x = 0
  33.     @filelist_window.y = 0
  34.   end
  35.   @s_status_window = Window_Sound_State.new(360,0,280,200)
  36.   @s_status_window.active = false
  37.   @key_help_window = Window_Key_Help.new(360,200,280,280)
  38.   @bgm = RPG::AudioFile.new
  39.   @bgm.volume = 100
  40.   @bgm.pitch = 100
  41.   # トランジション実行
  42.   Graphics.transition
  43.   # メインループ
  44.   loop do
  45.     # ゲーム画面を更新
  46.     Graphics.update
  47.     # 入力情報を更新
  48.     Input.update
  49.     # フレーム更新
  50.     update
  51.     # 画面が切り替わったらループを中断
  52.     if $scene != self
  53.       break
  54.     end
  55.   end
  56.   # トランジション準備
  57.   Graphics.freeze
  58.   # ウィンドウを解放
  59.   @filelist_window.dispose
  60.   @s_status_window.dispose
  61.   @key_help_window.dispose
  62. end
  63. #--------------------------------------------------------------------------
  64. # ● フレーム更新
  65. #--------------------------------------------------------------------------
  66. def update
  67.   if @filelist != []
  68.     @filelist_window.update
  69.     @s_status_window.update
  70.     # C ボタンが押された場合
  71.       if Input.trigger?(Input::C)
  72.       @bgm.name = @filelist[@filelist_window.index]
  73.       @s_status_window.set_data(@bgm)
  74.       $game_system.bgm_play(@bgm)
  75.     end

  76.     # B ボタンが押された場合
  77.     if Input.trigger?(Input::B)
  78.       $game_system.bgm_stop
  79.        @filelist_window.dispose
  80.        @s_status_window.dispose
  81.        @key_help_window.dispose
  82.        $scene = Scene_Map.new
  83.        $game_map.autoplay
  84.       # $scene 为有效的情况下调用 main 过程
  85.        while $scene != nil
  86.            $scene.main
  87.         end

  88.      end
  89.     # A ボタンが押された場合
  90.     if Input.trigger?(Input::A)
  91.       if @filelist_window.active
  92.         @filelist_window.active = false
  93.         @s_status_window.active = true
  94.         @key_help_window.refresh_vol
  95.       else
  96.         @s_status_window.active = false
  97.         @filelist_window.active = true
  98.         @key_help_window.refresh
  99.       end
  100.       @bgm.name = @filelist[@filelist_window.index]
  101.       @s_status_window.set_data(@bgm)
  102.     end
  103.   end
  104. end
  105. end

  106. #==============================================================================
  107. # □ Window_Sound_State
  108. #==============================================================================

  109. class Window_Sound_State < Window_Base
  110. #--------------------------------------------------------------------------
  111. # ○ オブジェクト初期化
  112. #     x      : ウィンドウの X 座標
  113. #     y      : ウィンドウの Y 座標
  114. #     width  : ウィンドウの幅
  115. #     height : ウィンドウの高さ
  116. #--------------------------------------------------------------------------
  117. def initialize(x, y, width, height)
  118.   super(x, y, width, height)
  119.   @bgm = RPG::AudioFile.new
  120.   self.contents = Bitmap.new(width - 32, height - 32)
  121. end

  122. #--------------------------------------------------------------------------
  123. # ○ リフレッシュ
  124. #--------------------------------------------------------------------------
  125. def refresh
  126.   self.contents.clear
  127.   self.contents.font.size = 22
  128.   if self.active
  129.     self.contents.font.color = normal_color
  130.   else
  131.     self.contents.font.color = Color.new(255, 255, 64, 255)
  132.   end
  133.   rect = Rect.new(4, 16, self.contents.width - 8, 32)
  134.   self.contents.draw_text(rect, @bgm.name)
  135.   self.contents.font.color = normal_color
  136.   rect = Rect.new(4, 64, self.contents.width - 96, 32)
  137.   self.contents.draw_text(rect, "volume", 2)
  138.   rect = Rect.new(4, 96, self.contents.width - 96, 32)
  139.   self.contents.draw_text(rect, "pitch", 2)
  140.   if self.active
  141.     self.contents.font.size = 18
  142.     self.contents.font.color = system_color
  143.     rect = Rect.new(4, 64, self.contents.width - 12, 32)
  144.     self.contents.draw_text(rect, "↓    ↑", 2)
  145.     rect = Rect.new(4, 96, self.contents.width - 12, 32)
  146.     self.contents.draw_text(rect, "←    →", 2)
  147.     self.contents.font.color = Color.new(255, 255, 64, 255)
  148.   end
  149.   self.contents.font.size = 22
  150.   rect = Rect.new(4, 64, self.contents.width - 32, 32)
  151.   self.contents.draw_text(rect, @bgm.volume.to_s, 2)
  152.   rect = Rect.new(4, 96, self.contents.width - 32, 32)
  153.   self.contents.draw_text(rect, @bgm.pitch.to_s, 2)
  154. end
  155. #--------------------------------------------------------------------------
  156. # ○ サウンドデータをセット
  157. #--------------------------------------------------------------------------
  158. def set_data(bgm)
  159.   @bgm = bgm
  160.   refresh
  161. end
  162. #--------------------------------------------------------------------------
  163. # ○ フレーム更新
  164. #--------------------------------------------------------------------------
  165. def update
  166.   super
  167.   # カーソルの移動が可能な状態の場合
  168.   if self.active
  169.     # 方向ボタンの下が押された場合
  170.      if Input.repeat?(Input::DOWN)
  171.       if @bgm.volume > 0
  172.         @bgm.volume -= 5
  173.         set_data(@bgm)
  174.       end
  175.     end
  176.     # 方向ボタンの上が押された場合
  177.     if Input.repeat?(Input::UP)
  178.       if @bgm.volume < 100
  179.         @bgm.volume += 5
  180.         set_data(@bgm)
  181.       end
  182.     end
  183.     # 方向ボタンの右が押された場合
  184.     if Input.repeat?(Input::RIGHT)
  185.       if @bgm.pitch < 150
  186.         @bgm.pitch += 5
  187.         set_data(@bgm)
  188.       end
  189.     end
  190.     # 方向ボタンの左が押された場合
  191.     if Input.repeat?(Input::LEFT)
  192.       if @bgm.pitch > 50
  193.         @bgm.pitch -= 5
  194.         set_data(@bgm)
  195.       end
  196.     end
  197.   end
  198. end
  199. end

  200. #==============================================================================
  201. # □ Window_Key_Help
  202. #==============================================================================

  203. class Window_Key_Help < Window_Base
  204. #--------------------------------------------------------------------------
  205. # ○ オブジェクト初期化
  206. #--------------------------------------------------------------------------
  207. def initialize(x, y, width, height)
  208.   super(x, y, width, height)
  209.   self.contents = Bitmap.new(width - 32, height - 32)
  210.   self.opacity = 0
  211.   refresh
  212. end
  213. #--------------------------------------------------------------------------
  214. # ○ リフレッシュ(ファイルリスト)
  215. #--------------------------------------------------------------------------
  216. def refresh
  217.   self.contents.clear
  218.   self.contents.font.size = 20
  219.   rect = Rect.new(4, 0, self.contents.width - 8, 22)
  220.   self.contents.draw_text(rect, "- 说明 -",1)
  221.   self.contents.font.color = system_color
  222.   self.contents.font.size = 18
  223.   rect = Rect.new(100, 32, 180, 32)
  224.   self.contents.draw_text(rect, "Enter , Space , C")
  225.   rect = Rect.new(100, 64, 180, 32)
  226.   self.contents.draw_text(rect, "Esc , X , 0")
  227.   rect = Rect.new(100, 96, 180, 32)
  228.   self.contents.draw_text(rect, "Shift , Z")
  229.   rect = Rect.new(100, 128, 180, 32)
  230.   self.contents.draw_text(rect, "↑ , ↓")
  231.   self.contents.font.color = normal_color
  232.   self.contents.font.size = 22
  233.   rect = Rect.new(4, 32, 90, 32)
  234.   self.contents.draw_text(rect, "播放")
  235.   rect = Rect.new(4, 64, 90, 32)
  236.   self.contents.draw_text(rect, "停止")
  237.   rect = Rect.new(4, 96, 90, 32)
  238.   self.contents.draw_text(rect, "音乐选项")
  239.   rect = Rect.new(4, 128, 90, 32)
  240.   self.contents.draw_text(rect, "选曲")
  241. end
  242. #--------------------------------------------------------------------------
  243. # ○ リフレッシュ(ボリュームコントロール)
  244. #--------------------------------------------------------------------------
  245. def refresh_vol
  246.   self.contents.clear
  247.   self.contents.font.size = 20
  248.   rect = Rect.new(4, 0, self.contents.width - 8, 22)
  249.   self.contents.draw_text(rect, "- 说明 -",1)
  250.   self.contents.font.color = system_color
  251.   self.contents.font.size = 18
  252.   rect = Rect.new(100, 32, 180, 32)
  253.   self.contents.draw_text(rect, "↑ , ↓")
  254.   rect = Rect.new(100, 64, 180, 32)
  255.   self.contents.draw_text(rect, "← , →")
  256.   rect = Rect.new(100, 96, 180, 32)
  257.   self.contents.draw_text(rect, "Enter , Space , C")
  258.   rect = Rect.new(100, 128, 180, 32)
  259.   self.contents.draw_text(rect, "Esc , X , 0")
  260.   rect = Rect.new(100, 160, 180, 32)
  261.   self.contents.draw_text(rect, "Shift , Z")
  262.   self.contents.font.color = normal_color
  263.   self.contents.font.size = 22
  264.   rect = Rect.new(4, 32, 90, 32)
  265.   self.contents.draw_text(rect, "音量")
  266.   rect = Rect.new(4, 64, 90, 32)
  267.   self.contents.draw_text(rect, "速度")
  268.   rect = Rect.new(4, 96, 90, 32)
  269.   self.contents.draw_text(rect, "播放")
  270.   rect = Rect.new(4, 128, 90, 32)
  271.   self.contents.draw_text(rect, "停止")
  272.   rect = Rect.new(4, 160, 90, 32)
  273.   self.contents.draw_text(rect, "回主菜单")
  274. end
  275. end
复制代码

评分

参与人数 2+2 收起 理由
火焰卷轴 + 1
文雅夕露 + 1 好东西

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-27 13:22

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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