ここではサウンドを再生するためのスクリプトの記述方法を解説しています。
マウスのクリック音を設定する
config.iniファイルでマウスの左右のクリック音を設定していきます。左クリックはキャラクターをドラッグした時のサウンド、右クリックはポップアップメニューが表示される時のサウンドを設定します。サウンドファイルを用意して、Soundsフォルダに入れてください。ここでは下記のサウンドを使用しています。
config.ini
CharaName = タンポポ
AppName = "きゃらポッドF タンポポ"
Version = 1.00
Copyright = "Copyright (C) 2023 Qbell All Rights Reserved."
Url = https://www.qbell.jp
## DlgImageName =
## DlgImagePosX =
## DlgImagePosY =
## LineHeight =
SoundNameLButton = l_click.wav
SoundNameRButton = r_click.wav
NormalCursor = normal.cur
DragCursor = drag.cur
DisabledCursor = disabled.cur
SoundNameLButtonはキャラクター上で左クリックした時のサウンドを設定しています。
SoundNameRButtonはキャラクター上で右クリックした時のサウンドを設定しています。
以上で変更は終わりです。config.iniファイルを保存してきゃらポッドFを起動してみると、キャラクターをクリック時に、左右それぞれ設定したサウンドが再生されます。
下記ファイルはここまで作成したサンプルのキャラクターデータです。
以下はサウンド設定の補足となっています。上記サンプルデータのスクリプトファイルには記載されていませんがデスクトップマスコット等を作成する際に役立つ情報となっております。
オーダー関数のサウンド設定を確認してみる
ここからはオーダー関数でサウンドを設定する方法を簡単に説明していきます。下記にスクリプト例を記述しています。わかりやすくするために必要最小限のスクリプト内容にしています。
<サウンド設定例 オーダー関数>
## ============================================
## オーダー関数設定
## ============================================
<FUNC_ORDER_REG>
<SET_CONFIG>
FuncName = OR_Move_L
FuncType = LEFT_EVENT
FuncNameMotion = MO_Move_L
SoundNameBgm = bgm.wav
SoundLoop = -1
SoundNameLButton = l_click_02.wav
SoundNameRButton = r_click_02.wav
PosX = X
PosY = Y
FuncListEvent = OR_Move_R
</SET_CONFIG>
</FUNC_ORDER_REG>
SoundNameBgmはこのオーダー関数(OR_Move_L)が実行された時に再生されます。モーションやフレーム数に関係なく鳴らしたい音声やBGM等を設定すると良いでしょう。
SoundLoopはSoundNameBgmで設定したサウンドがループする回数を設定します。ここでは-1となっているので、このオーダー関数が実行されている間は無限に繰り返されます。ここで重要なのは0でも一回は再生されます。1だと2回再生されます。-1以外は、この項目で入力した数値+1回が再生されます。
SoundNameLButtonとSoundNameRButtonは先ほどのconfig.iniで設定した内容と同じくクリック音の設定です。config.iniとの違いは、現在のオーダー関数限定でサウンドが設定されることと、こちらで設定されたサウンドがconfig.iniの設定より優先して再生されると言うことです(つまりこちらでサウンドが設定されている場合、config.iniで設定されたサウンドは再生されません)。この項目を使うことでキャラクターのモーション(状態)等によって、クリックした時に再生されるサウンドを使い分けることが可能になります。詳細はドキュメントページの「オーダー関数」をご確認ください。
モーション関数でフレーム数に応じてサウンドを再生する
ここではモーション関数で直接サウンドを設定し、一定のフレーム数でサウンドが繰り返し再生されるように設定する方法を説明しています。
<サウンド設定例 モーション関数>
## ============================================
## モーション関数設定
## ============================================
<FUNC_MOTION_REG>
<SET_CONFIG>
FuncName = MO_Move_L
ImageName = sample.png
Width = 130
Height = 280
</SET_CONFIG>
<SET_PARAM>
0, 0, 0, 0, 8, sample.wav
0, 0, 0, 0, 8
0, 0, 0, 0, 8, sample.wav
0, 0, 0, 0, 8
</SET_PARAM>
</FUNC_MOTION_REG>
<SET_PARAM>でハイライト表示されている部分でサウンドファイルが設定されています。
この部分のフレーム処理が実行される時にサウンドが再生されます。フレーム数が8となっていますが再生される回数はフレーム処理が開始される最初の1回です。そしてフレームがすべて実行されて、ループして最初に戻ると、またサウンドが再生されます。これは足音など一定のリズムで繰り返しサウンドを再生したい場合などに有効な設定です。
また、この設定方法はイメージレイヤー関数でもほぼ同じように設定できます。イメージレイヤー関数で設定されたサウンドは、モーション関数で設定されたサウンドより優先されます(モーション関数とイメージレイヤー関数で、設定されたサウンドの再生されるフレームのタイミングが同じになった場合、モーション関数のサウンドは再生されず、イメージレイヤー関数のサウンドだけが再生されます)。
詳細はドキュメントページの「モーション関数」と「イメージレイヤー関数」をご確認ください。
以上で「サウンドを再生する」のチュートリアルを終了します。