クラス _Main

アプリの雛型を提供します。アプリは必ずこのクラスを継承して作成しなければなりません。

メンバ関数

| writeLog

void writeLog(LPCTSTR str)

logFile() 関数で指定されたログファイルに文字列を書き出します。

パラメータ：

str | 書き出す文字列

補足説明：
改行が自動付加されます。

| terminate

void terminate()

アプリケーションを終了します。

補足説明：
アプリケーションを終了するための唯一の関数です。

| setBackColor

void setBackColor(D3DCOLOR col)

背景色を設定します。

パラメータ：

col | 背景色を指定します。

| setKeyAssign

void setKeyAssign(int key, UINT key_type)

キーアサインを変更します。

パラメータ：

key | キーコード。'A'〜'Z' が指定できます。
key_type | 割り当てるキーの種類。キーの種類とは、「_Global.h」で定義されている _KEY_〜 です。

| setKey

void setKey(UINT key_z, UINT key_x, UINT key_c, UINT key_v)

キーアサインを変更します。

パラメータ：

key_z | 「Z」キーに割り当てるキーの種類。キーの種類とは、「_Global.h」で定義されている _KEY_〜 です。
key_x | 「X」キーに割り当てるキーの種類。キーの種類とは、「_Global.h」で定義されている _KEY_〜 です。
key_c | 「C」キーに割り当てるキーの種類。キーの種類とは、「_Global.h」で定義されている _KEY_〜 です。
key_v | 「V」キーに割り当てるキーの種類。キーの種類とは、「_Global.h」で定義されている _KEY_〜 です。

| checkKey

BOOL checkKey(int key)

指定された仮想キーの状態を取得します。

パラメータ：

key | 仮想キーコード

戻り値：
キーが押されている場合 TRUE、押されていない場合 FALSE

補足説明：
仮想キーコードとは、文字キーまたは数字キーの場合はASCIIコード、それ以外のキーの場合は VK_〜 です。

| getKeypadState

UINT getKeypadState()

キーパッド状態を取得します。

戻り値：
キーパッド状態を返します。

補足説明：
本関数の戻り値と、「_Global.h」で定義されている _KEY_〜 とでAND（"&"）をとることで、キーが押されているか判定できます。

| getMouseX

int getMouseX()

マウスX座標を取得します。

戻り値：
マウスX座標を返します。

| getMouseY

int getMouseY()

マウスY座標を取得します。

戻り値：
マウスY座標を返します。

| getGraphics

_Graphics* getGraphics()

_Graphics オブジェクトを取得します。

戻り値：
_Graphics オブジェクト・ポインタを返します。

| createSound

BOOL createSound(_SoundData* sound, _Memory* data, int type)
BOOL createSound(_SoundData* sound, char* file, int type)

サウンドデータを構築します。

パラメータ：

sound | _SoundData オブジェクト・ポインタ
data | 構築元の _Memory オブジェクトのポインタを指定します。
file | 構築元のファイル名を指定します。
type | 構築元データのサウンドフォーマットを指定します。次のいずれかを指定します。
_SOUND_MIDI | MIDIフォーマット
_SOUND_WAV | WAVフォーマット
_SOUND_MP3 | MP3フォーマット
_SOUND_OGGVORBIS | OggVorbisフォーマット

戻り値：
正常に構築された場合 TRUE、そうでない場合 FALSE

補足説明：
_SOUND_MIDI はDirectMusicのみで使用可能です。DirectSoundでは無効です。DirectMusicについての詳細は『DirectMusicについて』の項を参照ください。

| disposeSound

void disposeSound(_SoundData* sound)

サウンドデータを破棄します。

パラメータ：

sound | _SoundData オブジェクト・ポインタ

| playMusic

void playMusic(_Memory* data, int type, BOOL loop)
void playMusic(char* file, int type, BOOL loop)
void playMusic(_SoundData* sound, BOOL loop)

BGMを再生します。

パラメータ：

data | _Memory オブジェクト・ポインタ
file | ファイル名
type | サウンドフォーマットを指定します。次のいずれかを指定します。
_SOUND_MIDI | MIDIフォーマット
_SOUND_WAV | WAVフォーマット
_SOUND_MP3 | MP3フォーマット
_SOUND_OGGVORBIS | OggVorbisフォーマット
sound | _SoundData オブジェクト・ポインタ
loop | BGMをループさせる場合 TRUE、そうでない場合 FALSE

補足説明：
_SOUND_MIDI はDirectMusicのみで使用可能です。DirectSoundでは無効です。DirectMusicについての詳細は『DirectMusicについて』の項を参照ください。

| stopMusic

void stopMusic()

BGMを停止します。

| setVolumeMusic

void setVolumeMusic(int volume)

BGMの音量を変更します。

パラメータ：

volume | 音量の割合を指定します（0〜100）。

補足説明：
volumeMusic() で指定された音量が基準となります。例えば、指定する値が 50 の場合の音量は、volumeMusic() で指定された音量の半分になります。
なお、本関数は、BGM再生の前でも後でも有効です。

| setVolumeSound

void setVolumeSound(int volume)

SEの音量を変更します。

パラメータ：

volume | 音量の割合を指定します（0〜100）。

補足説明：
volumeSound() で指定された音量が基準となります。例えば、指定する値が 50 の場合の音量は、volumeSound() で指定された音量の半分になります。
なお、本関数は、SE再生の前でのみ有効です。

| playSound

void playSound(_SoundData* sound)

SEを再生します。

パラメータ：

sound | _SoundData オブジェクト・ポインタ

| stopSound

void stopSound(_SoundData* sound)

SEを停止します。

パラメータ：

sound | _SoundData オブジェクト・ポインタ

| width

int width()

本関数をオーバーライドして、画面の幅を返してください。

| height

int height()

本関数をオーバーライドして、画面の高さを返してください。

| frameTime

int frameTime()

本関数をオーバーライドして、1フレームの時間（ミリ秒）を返してください。

| logFile

LPCTSTR logFile()

本関数をオーバーライドして、ログファイル名を返してください。空文字列を返すことができます。

| isCheckActive

BOOL isCheckActive()

本関数をオーバーライドして、ウィンドウがアクティブかどうかをチェックする場合 TRUE、チェックしない場合 FALSE を返してください。

補足説明：
TRUE を返した場合、ウィンドウがアクティブでなくなった時に suspend() 関数が呼び出され、再びアクティブになったときに resume() 関数が呼び出されるようになります。

| isWindow

BOOL isWindow()

本関数をオーバーライドして、ウィンドウモードで起動する場合 TRUE、フルスクリーンモードで起動する場合 FALSE を返してください。

| showCursor

BOOL showCursor()

本関数をオーバーライドして、マウス座標が画面内のときにカーソル表示を残す場合 TRUE、カーソルを消す場合 FALSE を返してください。

| isFullFrame

BOOL isFullFrame()

本関数をオーバーライドして、全フレーム描画を行う場合 TRUE、描画を半分に抑える場合 FALSE を返してください。

補足説明：
FALSE を返しても、paint() 関数は全フレーム呼び出され、描画のみがスキップされるだけです。スキップ時も、_Graphics クラスの getImageInfo() 関数で取得できるパラメータ値には描画命令の内容が格納されます。

| volumeMusic

int volumeMusic()

本関数をオーバーライドして、BGMの音量を返してください（0〜100）。

| volumeSound

int volumeSound()

本関数をオーバーライドして、SEの音量を返してください（0〜100）。

| start

void start()

アプリケーションが起動したら呼ばれる関数です。

| destroy

void destroy()

アプリケーションが終了するときに呼ばれる関数です。

| suspend

BOOL suspend()

アプリケーションがサスペンド状態になった直後に呼ばれる関数です。

戻り値：
TRUE を返すと、サスペンド中もタイマーによる paint() 関数呼び出しが行われます。
FALSE を返すと、アプリケーションが停止状態になります。
デフォルトは FALSE です。

| resume

void resume()

アプリケーションがサスペンド状態から戻った直後に呼ばれる関数です。

| paint

void paint()

タイマーにより呼び出される関数です。

| processEvent

void processEvent(UINT type, UINT param)

各種イベントが通知されたときに呼ばれる関数です。

パラメータ：

type | イベントのタイプが渡されます。
param | イベントのパラメータが渡されます。パラメータの意味はイベントによって異なります。

補足説明：
イベントのタイプには、次のものがあります。

_KEY_PRESSED_EVENT | キーが押されると通知されます。パラメータには、キーの種類が渡されます。キーの種類とは、「_Global.h」で定義されている _KEY_〜 です。
_KEY_RELEASED_EVENT | キーが離されると通知されます。パラメータには、キーの種類が渡されます。キーの種類とは、「_Global.h」で定義されている _KEY_〜 です。
_MOUSE_LBUTTONDOWN_EVENT | マウス左ボタンが押されると通知されます。パラメータは常に 0 です。
_MOUSE_RBUTTONDOWN_EVENT | マウス右ボタンが押されると通知されます。パラメータは常に 0 です。
_MOUSE_MOVE_EVENT | マウスが移動すると通知されます。パラメータは常に 0 です。
_MOUSE_LBUTTONUP_EVENT | マウス左ボタンが離されると通知されます。パラメータは常に 0 です。
_MOUSE_RBUTTONUP_EVENT | マウス右ボタンが離されると通知されます。パラメータは常に 0 です。