| 赞 | 46  | 
 
| VIP | 0 | 
 
| 好人卡 | 0 | 
 
| 积分 | 323 | 
 
| 经验 | 0 | 
 
| 最后登录 | 2025-4-5 | 
 
| 在线时间 | 247 小时 | 
 
 
 
 
 
Lv5.捕梦者 
	- 梦石
 - 24 
 
        - 星屑
 - 8302 
 
        - 在线时间
 - 247 小时
 
        - 注册时间
 - 2020-12-4
 
        - 帖子
 - 305
 
 
    
 
 | 
	
3楼
 
 
 楼主 |
发表于 2022-7-30 14:59:44
|
只看该作者
 
 
 
 
 
XP内置的记忆和还原BGM脚本如下 
 
记忆BGM 
    $game_system.bgm_memorize 
 
还原BGM 
    $game_system.bgm_restore 
 
 
class Game_System 中 
 
#记忆BGM定义在这 
def bgm_memorize 
        @memorized_bgm = @playing_bgm 
end 
 
#@playing_bgm出现在以下 
def bgm_play(bgm) 
    @playing_bgm = bgm 
    if bgm != nil and bgm.name != "" 
      Audio.bgm_play("Audio/BGM/" + bgm.name, bgm.volume, bgm.pitch) 
    else 
      Audio.bgm_stop 
    end 
    Graphics.frame_reset 
end 
 
#还原BGM定义在这 
def bgm_restore 
    bgm_play(@memorized_bgm) 
end 
 
可见,@memorized_bgm和@playing_bgm 的变量本质上只是一行记录BGM名字的字符串,而还原BGM本质就是重新播放一个BGM    
 
所以,内置记忆还原无法满足我所提出的要求 
 
 |   
 
 
 
 |