# ボリュームコントロールの作り方について

**URL:** https://guild.rpgmakerofficial.com/t/topic/1038
**Category:** 質問
**Created:** [2025 年 12 月 10 日午前 4:58 UTC](https://guild.rpgmakerofficial.com/t/topic/1038 "2025-12-10T04:58:00Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![katsuo25](https://avatars.discourse-cdn.com/v4/letter/k/9e8a1a/32.png) [@katsuo25](https://guild.rpgmakerofficial.com/u/katsuo25)
#### Post date: [2025 年 12 月 10 日午前 4:58 UTC](https://guild.rpgmakerofficial.com/t/topic/1038/1 "2025-12-10T04:58:00Z")

</div>

BGMとSEのボリュームコントロールを作ってみたのですが、思ったような動作をしなかったため質問をさせていただきます。  
スクリプトに関してはChatGPTに書いてもらい、少しだけ自分の方で手直ししています。

HSliderを用意して、以下のスクリプトを用意しました。

（BGM版）  
extends HSlider

func \_on\_ready() → void:  
var config := ConfigFile.new()  
config.load(“user://settings.cfg”)

```auto
var bgm_v: float = config.get_value("audio", "bgm_volume", 1.0)

self.value = bgm_v

var bus := AudioServer.get_bus_index("BGM")
AudioServer.set_bus_volume_db(bus, linear_to_db(bgm_v))

```

func \_on\_value\_changed(new\_value: float) → void:  
var bus := AudioServer.get\_bus\_index(“BGM”)  
AudioServer.set\_bus\_volume\_db(bus, linear\_to\_db(new\_value))

```auto
var config := ConfigFile.new()
config.load("user://settings.cfg")
config.set_value("audio", "bgm_volume", new_value)
config.save("user://settings.cfg")

```

動作はしたのですが、ゲームを新しく起動した際に前回のボリュームコントロールの内容が反映されてしまいます。ゲームを続きからはじめた場合はこれで問題はないのかもしれませんが、新規で始める際に反映されないようにするにはどうしたらいいでしょうか？

---

<div class="post-metadata">

### Author: ![katsuo25](https://avatars.discourse-cdn.com/v4/letter/k/9e8a1a/32.png) [@katsuo25](https://guild.rpgmakerofficial.com/u/katsuo25)
#### Post date: [2025 年 12 月 10 日午後 3:07 UTC](https://guild.rpgmakerofficial.com/t/topic/1038/2 "2025-12-10T15:07:35Z")

</div>

すみません。自己解決しました。
