[前へ] [目次へ] [次へ]

MessageWindow_Base (script/fgs/system.fges)


このクラスはメッセージウィンドウ用の基底クラスです。
このクラスを継承することにより、メッセージウィンドウを簡単に作成できます。

●継承/注入

   extends DRFrameWindow
   inject JMessageLib


●インターフェイスとインターフェイスメソッド

   extends INativeWindow
   implements IWaitSignal
          IsActive


●クラスメソッド

   このクラスはクラスメソッドを持っていません。

●クラスメンバメソッド

名前概要
public比較・判定メソッドconst IsActiveメッセージ処理が実行中か判定します
public比較・判定メソッドconst IsAsyncActive非同期処理が実行中か判定します
public操作メソッド FinishAsyncTask非同期処理を即座に完了させます
public操作メソッド WaitAsyncTask非同期処理の完了まで待機します
public取得メソッド GetAsyncMode非同期処理モードを取得します
public設定メソッド SetAsyncMode非同期処理モードを設定します
internal操作メソッド MessageCallBackネイティブコールバック用メソッド
public設定メソッド SetBaseLocation基本ウィンドウ配置タイプを設定します
public設定メソッド SetLocationウィンドウ配置タイプを設定します
public取得メソッドconst GetAutoLocationType「自動」配置タイプで使用する実際の配置タイプを取得します
public操作メソッド ApplyLocationウィンドウ配置タイプに合わせてウィンドウを配置します
public設定メソッド SetBaseAlphaウィンドウ背景の基本透過度を設定します
public操作メソッド ResetSettingsウィンドウの基本設定を初期化します
public操作メソッド RestoreBaseSettingsウィンドウの状態を基本設定に戻します
public操作メソッドoverride NewWindowウィンドウを作成します
public操作メソッドoverride SetVisibleウィンドウの可視状態を設定します
public操作メソッド SetSimpleMessage簡易フォーマットなしのメッセージを設定します
public操作メソッド SetMessage簡易フォーマットありのメッセージを設定します
public操作メソッド ShowMessage簡易フォーマットありのメッセージを表示します
public操作メソッド WaitMessage簡易フォーマットありのメッセージを表示し、決定待ちをします
public操作メソッド WaitLastMessage簡易フォーマットありのメッセージを表示し、決定待ち後ウィンドウを消します
public操作メソッド AllDrawメッセージを直ちに全て描画します
public操作メソッド AllClear描画中のメッセージを消去します
public比較・判定メソッドconst IsDrawCompletedメッセージの描画が完了しているか取得します
public比較・判定メソッドconst IsMarkerVisibleメッセージ送りマーカーが表示中か判定します
public設定メソッド SetMarkerVisibleメッセージ送りマーカーの表示状態を設定します
public操作メソッド InputUpdateメッセージの入力応答を行います
public操作メソッド WaitEnterメッセージの決定待ちを行います

●クラス共有変数

名前概要
readableconst LOC_AUTO「自動」ウィンドウ配置タイプ
readableconst LOC_TOP「上」ウィンドウ配置タイプ
readableconst LOC_CENTER「中央」ウィンドウ配置タイプ
readableconst LOC_BOTTOM「下」ウィンドウ配置タイプ
readableconst LOC_MANUAL「手動」ウィンドウ配置タイプ

●インスタンス変数

名前概要
public message_drメッセージ描画用のドローリソース
public message_fontメッセージ描画用のフォントオブジェクト
public char_delayメッセージ描画時の一文字あたり待機時間
public char_drawspeedメッセージ描画時の描画完了までの速度
public marker_windowメッセージ描画完了後表示するマーカーウィンドウオブジェクト
public disable_skipメッセージスキップ無効化フラグ
public freezing_fadeskip画面凍結中フェードをスキップするフラグ
public ex_callback拡張メッセージコールバックオブジェクト
internal async_mode非同期モードフラグ
internal async_thread非同期処理用スレッドハンドル
internal callback_methodメッセージコールバックオブジェクト
internal skiplock_stateメッセージスキップロック状態
readable base_locationtype基本ウィンドウ配置タイプ
readable locationtype現在のウィンドウ配置タイプ
readable base_alvウィンドウ枠の基本透過度




MessageWindow_Base::IWaitSignal@@IsActive

Bool IWaitSignal@@IsActive()const

   現在の待機用アクティブ状態を取得します。
   このメソッドが真を返す間、このオブジェクトを待機している処理はブロックされます。
   
   このクラスではメッセージの表示処理中、真を返します。

戻り値:完了を待機すべき状態の場合は真を返します。

先頭へ


MessageWindow_Base::IsActive

public Bool IsActive()const

   メッセージの表示処理中、真を返します。

戻り値:メッセージの表示処理中は真を返します。

先頭へ


MessageWindow_Base::IsAsyncActive

public Bool IsAsyncActive()const

   非同期処理の実行中、真を返します。
   このメソッドは非同期処理用スレッドで呼び出した場合は無条件に偽を返します。

戻り値:非同期処理の実行中、真を返します。

先頭へ


MessageWindow_Base::FinishAsyncTask

public void FinishAsyncTask()

   非同期処理が実行中の場合、即座に完了させます。
   このメソッドは非同期処理の完了を確認するまで戻りません。

先頭へ


MessageWindow_Base::WaitAsyncTask

public Bool WaitAsyncTask()

   非同期処理が実行中の場合、完了までウェイトします。
   この待機処理は @@HALT_WAIT 中断識別子で中断することができます。

戻り値:非同期処理が完了した場合は真を返します。
      待機を中断した場合は偽を返します。

先頭へ


MessageWindow_Base::GetAsyncMode

public Bool GetAsyncMode()const

   メッセージ関連処理の非同期モードを取得します。
   非同期モードの場合はメッセージ関連処理は別スレッドで実行されます。
   非同期モードではない場合はメッセージ関連処理は完了まで戻りません。
   デフォルトでは偽に設定されています。

戻り値:現在非同期モードであれば真を返します。

先頭へ


MessageWindow_Base::SetAsyncMode

public Bool SetAsyncMode( Bool new_mode)

   メッセージ関連処理の非同期モードを設定します。
   非同期モードの場合はメッセージ関連処理は別スレッドで実行されます。
   非同期モードではない場合はメッセージ関連処理は完了まで戻りません。
   デフォルトでは偽に設定されています。

戻り値:設定に成功すると真を返します。

Bool new_mode :真を指定すると非同期モードに設定します。
         偽を指定すると非同期モードを解除します。

先頭へ


MessageWindow_Base::MessageCallBack

internal Integer MessageCallBack( String param)

   メッセージ内の %k/%K 特殊文字処理時のコールバックメソッドです。
   機能を拡張する場合はこのメソッドをオーバーライドしてください。
   
   このメソッドはネイティブコールバックスレッドで制限時間付きで呼び出されます。
   
   現在、以下のパラメータを処理します。
パラメータ効果
waitenter決定キーを押すまで次の文字表示を停止します。
   
戻り値:負値を返した場合、その絶対値のフレーム経過後にコールバックを再実行します。
      この際、特殊文字は完了せず、次の文字の評価も行いません。
      0以上の値を返した場合、返した値のフレーム経過後に次の文字以降の評価を行います。

String param :特殊文字の[]内の文字列。

先頭へ


MessageWindow_Base::SetBaseLocation

public Bool SetBaseLocation( Integer pos_type)

   メッセージウィンドウの基本配置タイプを設定します。

   配置タイプはメッセージウィンドウを不可視状態にする度に基本値に戻り、
   メッセージウィンドウを可視状態にする時に配置タイプに応じた位置にウィンドウを移動します。
   
戻り値:設定に成功すると真を返します。

Integer pos_type :設定する配置タイプ。以下のいずれか。
識別子内容
MessageWindow_Base::LOC_AUTO状況に応じて自動的に位置を決定します。
MessageWindow_Base::LOC_TOP画面の上端に配置します。
MessageWindow_Base::LOC_CENTER画面の中央に配置します。
MessageWindow_Base::LOC_BOTTOM画面の下端に配置します。
MessageWindow_Base::LOC_MANUAL自動的な位置制御をしません。

先頭へ


MessageWindow_Base::SetLocation

public Bool SetLocation( Integer pos_type)

   メッセージウィンドウの現在の配置タイプを設定します。
   このメソッドで行った設定は次にメッセージウィンドウを不可視状態にするまで有効です。

   配置タイプはメッセージウィンドウを不可視状態にする度に基本値に戻り、
   メッセージウィンドウを可視状態にする時に配置タイプに応じた位置にウィンドウを移動します。
   
戻り値:設定に成功すると真を返します。

Integer pos_type :設定する配置タイプ。以下のいずれか。
識別子内容
MessageWindow_Base::LOC_AUTO状況に応じて自動的に位置を決定します。
MessageWindow_Base::LOC_TOP画面の上端に配置します。
MessageWindow_Base::LOC_CENTER画面の中央に配置します。
MessageWindow_Base::LOC_BOTTOM画面の下端に配置します。
MessageWindow_Base::LOC_MANUAL自動的な位置制御をしません。

先頭へ


MessageWindow_Base::GetAutoLocationType

public Integer GetAutoLocationType()const

   メッセージウィンドウの「自動」配置タイプで実際に使用する配置タイプを取得します。
   デフォルトでは常に LOC_BOTTOM を返します。
   このメソッドはオーバーライドすることが想定されています。
   
戻り値:実際に使用する配置タイプ。以下のいずれか。
識別子内容
MessageWindow_Base::LOC_TOP画面の上端に配置します。
MessageWindow_Base::LOC_CENTER画面の中央に配置します。
MessageWindow_Base::LOC_BOTTOM画面の下端に配置します。
MessageWindow_Base::LOC_MANUAL自動的な位置制御をしません。

先頭へ


MessageWindow_Base::ApplyLocation

public Bool ApplyLocation(values Integer pos_type)

   メッセージウィンドウの位置を指定した配置タイプに合わせて設定します。
   通常、このメソッドはメッセージウィンドウを可視状態にする時に自動的に呼び出されます。
   
   メッセージウィンドウを表示したまま位置を変更する場合以外、明示的に呼び出す必要はありません。
   
戻り値:配置に成功すると真を返します。

values Integer pos_type :適用する配置タイプ。以下のいずれか。
識別子内容
MessageWindow_Base::LOC_AUTO状況に応じて自動的に位置を決定します。
MessageWindow_Base::LOC_TOP画面の上端に配置します。
MessageWindow_Base::LOC_CENTER画面の中央に配置します。
MessageWindow_Base::LOC_BOTTOM画面の下端に配置します。
MessageWindow_Base::LOC_MANUAL自動的な位置制御をしません。

先頭へ


MessageWindow_Base::SetBaseAlpha

public Bool SetBaseAlpha( Integer alv)

   メッセージウィンドウ背景の基本透過度を設定します。

   背景の透過度はメッセージウィンドウを不可視状態にする度に基本値に戻ります。
   
戻り値:設定に成功すると真を返します。

Integer alv :設定する透過度(0〜255)。

先頭へ


MessageWindow_Base::ResetSettings

public void ResetSettings()

   メッセージウィンドウの基本値をデフォルトに戻します。
   このメソッドでリセットする項目と値は以下の通りです。
項目
配置タイプ自動(@LOC_AUTO)
ウィンドウ背景の透過度255

先頭へ


MessageWindow_Base::RestoreBaseSettings

public void RestoreBaseSettings()

   メッセージウィンドウの設定を基本値に復元します。
   通常、このメソッドはメッセージウィンドウを不可視状態にする時に自動的に呼び出されます。
   
   メッセージウィンドウを表示したまま設定を復元する場合以外、明示的に呼び出す必要はありません。

先頭へ


MessageWindow_Base::NewWindow

public override Bool NewWindow( Integer x, Integer y, Integer width, Integer height,
             INativeWindow? addwnd, INativeInteger wndtype,
             INativeInteger? drawmode=NULL, INativeInteger? focus=NULL,
             INativeBool? visible=NULL, INativeInteger? alv=NULL)


   このオブジェクトでウィンドウを作成します。
   座標系は作成するウィンドウタイプによって決定されます。
   ウィンドウタイプがトップレベルウィンドウである場合、仮想ビュー座標系が使用されます。
   ウィンドウタイプが子ウィンドウかサブウィンドウである場合、所属させるウィンドウのローカル座標系が使用されます。
   それ以外のウィンドウタイプである場合、所属させるウィンドウと同じ座標系が使用されます。
   
   作成するウィンドウは現在のシーンに関連付けられます。
   シーンが起動していない状態ではこのメソッドは使用できません。
   
   このメソッドは枠となるウィンドウを作成すると同時に、
   メッセージ描画用DRウィンドウを四隅に5ピクセルづつのマージンをとった上で作成します。

戻り値:作成に成功すると真を返します。
   
Integer x :ウィンドウを作成するX座標。座標系はウィンドウタイプに依存します。
Integer y :ウィンドウを作成するY座標。座標系はウィンドウタイプに依存します。
Integer width :ウィンドウの横幅。
Integer height :ウィンドウの縦幅。
INativeWindow? addwnd :作成するウィンドウの所属を決定するウィンドウ。意味はウィンドウタイプに依存します。
ウィンドウタイプごとの意味:
ウィンドウタイプ意味
トップレベルウィンドウこの引数は無視されます。
子ウィンドウ所属させる親ウィンドウ。
サブウィンドウ所属させるウィンドウ。
スタックウィンドウ所属させるウィンドウ。
挿入ウィンドウ直前の序列のウィンドウ。所属は指定したウィンドウと同じになります。
INativeInteger wndtype :ウィンドウタイプ。以下のいずれか。
識別子意味
Window::WND_TOPLEVELトップレベルウィンドウ。
独立して扱われるウィンドウです。仮想ビュー座標系を使用します。
Window::WND_CHILD子ウィンドウ。
親ウィンドウの中に配置されるウィンドウで、親ウィンドウの領域外に出ると正常に描画されません。
座標系は親ウィンドウのローカル座標となり、親ウィンドウが移動すると連動して移動します。
また、親ウィンドウに対して行われた操作の一部は連動して影響します。
Window::WND_SUBサブウィンドウ。
所属するウィンドウの補足情報を提示するためのウィンドウです。
座標系は所属するウィンドウのローカル座標となり、所属するウィンドウが移動すると連動して移動します。
原則として所属するウィンドウとは独立して扱われますが、削除や更新は連動します。
Window::WND_STACKスタックウィンドウ。
所属するウィンドウの追加処理を行うウィンドウで、ダイアログに近い扱いをします。
座標系は所属するウィンドウと同じになります。
原則として所属するウィンドウとは独立して扱われますが、削除は連動します。
また、サブウィンドウよりも上に描画されます。
Window::WND_PREV挿入ウィンドウ。
指定したウィンドウの次の序列に作成するウィンドウを挿入します。
ウィンドウタイプや座標系は指定したウィンドウと同じになります。
INativeInteger? drawmode=NULL :描画方法。以下のいずれか。
識別名内容
Window::COPY色と透過度を上書き
Window::COPYC色のみを上書き
Window::ALPHA透過描画(デフォルト)
Window::BLEND半透明描画
Window::LAYERレイヤー描画
Window::BACK背後に描画
Window::ALPHABLEND透過半透明描画
Window::LAYERBLENDレイヤー半透明描画
Window::BACKBLEND背後に半透明
Window::MIXALPHA透過合成
Window::MIXBLEND半透明合成
Window::MIXLAYERレイヤー合成
Window::MIXBACK背後に合成
Window::MIXALPHABLEND透過半透明合成
Window::MIXLAYERBLENDレイヤー半透明合成
Window::MIXBACKBLEND背後に半透明合成
Window::COPYAアルファのみ上書き
Window::MULAアルファのみ乗算
Window::REVMULAアルファのみ逆乗算
Window::ADDAアルファのみ加算
Window::SUBAアルファのみ減算
Window::FILLAアルファ設定
Window::BLENDALPHAアルファのみブレンド
Window::COPYTONE色変換して上書き
Window::TONE色変換して色のみに描画
Window::ALPHATONE色変換して透過描画
Window::LAYERTONE色変換してレイヤー描画
Window::BACKTONE色変換して背後に描画
Window::MIXTONE色変換して合成
Window::MIXALPHATONE色変換して透過合成
Window::MIXLAYERTONE色変換してレイヤー合成
Window::MIXBACKTONE色変換して背後に合成
Window::MULC乗算
Window::REVMULC逆乗算
Window::ADDC加算
Window::SUBC減算
Window::SCREENスクリーン
Window::OVERLAYオーバーレイ
Window::HARDLIGHTハードライト
Window::MULBLENDC半透明乗算
Window::ADDBLENDC半透明加算
Window::SUBBLENDC半透明減算
Window::SCREENBLEND半透明スクリーン
Window::OVERLAYBLEND半透明オーバーレイ
Window::HARDLIGHTBLEND半透明ハードライト
Window::MUL乗算合成
Window::REVMUL逆乗算合成
Window::ADD加算合成
Window::SUB減算合成
Window::MIXSCREENスクリーン合成
Window::MIXOVERLAYオーバーレイ合成
Window::MIXHARDLIGHTハードライト合成
Window::MULBLEND半透明乗算合成
Window::ADDBLEND半透明加算合成
Window::SUBBLEND半透明減算合成
Window::MIXSCREENBLEND半透明スクリーン合成
Window::MIXOVERLAYBLEND半透明オーバーレイ合成
Window::MIXHARDLIGHTBLEND半透明ハードライト合成
INativeInteger? focus=NULL :フォーカス制御。
以下の一斉指定識別子か、各グループのOR結合。
一斉指定識別子:全グループで同じ意味を設定したOR結合済み識別子。
識別名内容
Window::FOCUS_OK所属ウィンドウへのフォーカス制御に干渉しません(デフォルト)
Window::FOCUS_REDIRECT所属ウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_BLOCK所属ウィンドウへのフォーカス制御を拒否します
スタックウィンドウ用:
識別名内容
Window::FOCUS_STACK_OKスタックウィンドウへのフォーカス制御に干渉しません
Window::FOCUS_STACK_REDIRECTスタックウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_STACK_BLOCKスタックウィンドウへのフォーカス制御を拒否します
サブウィンドウ用:
識別名内容
Window::FOCUS_SUB_OKサブウィンドウへのフォーカス制御に干渉しません
Window::FOCUS_SUB_REDIRECTサブウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_SUB_BLOCKサブウィンドウへのフォーカス制御を拒否します
子ウィンドウ用:
識別名内容
Window::FOCUS_CHILD_OK子ウィンドウへのフォーカス制御に干渉しません
Window::FOCUS_CHILD_REDIRECT子ウィンドウへのフォーカスはこのウィンドウが奪います
Window::FOCUS_CHILD_BLOCK子ウィンドウへのフォーカス制御を拒否します
INativeBool? visible=NULL :ウィンドウを可視にする場合は真を指定します。
         空参照を指定した場合は真として扱います。
INativeInteger? alv=NULL :ウィンドウを半透明描画する場合の透過度。

先頭へ


MessageWindow_Base::SetVisible

public override Bool SetVisible( INativeBool new_state)

   このウィンドウの可視状態を変更します。
   ウィンドウを不可視状態にした場合、このウィンドウとその子ウィンドウ、
   さらに子ウィンドウに所属するウィンドウは見えなくなり、操作もできなくなります。
   
   このメソッドは可視状態を切り替える時、フェード処理を行います。
   非同期モードの場合、フェード処理は非同期に行います。
   
   非同期モードではない場合、フェードの完了まで戻りません。
   このフェード処理は @@HALT_WAIT 中断識別子で中断することができます。
   さらに、不可視状態から可視状態に変更する時、配置タイプに基づいてウィンドウの位置を調整します。
   また、可視状態から不可視状態に変更する時、基本値を持つウィンドウ設定を基本値に復元します。
   
   このメソッドはウィンドウが作られている状態でのみ意味があります。

戻り値:処理に成功すると真を返します。

INativeBool new_state :設定する状態。真にすると可視、偽にすると不可視になります。

先頭へ


MessageWindow_Base::SetSimpleMessage

public void SetSimpleMessage( String text)

   メッセージとして描画する内容を設定します。
   メッセージ文字列は一文字ごとに設定時間分待機し、
   フェードイン処理しつつ描画されます。
   
   描画する文字列は DRMessage::SetMessage と同じ特殊文字を解釈します。

String text :設定する文字列

先頭へ


MessageWindow_Base::SetMessage

public void SetMessage( String text,...)

   メッセージとして描画する内容を設定します。
   メッセージ文字列は一文字ごとに設定時間分待機し、
   フェードイン処理しつつ描画されます。
   
   描画する文字列は DRMessage::SetMessage と同じ特殊文字を解釈し、
   さらに以下の文字列を書式化文字列として変換します。
表記効果
@@@文字を表示します
@d可変長引数列から一個をInteger型として読み取り、文字列化します。
@f可変長引数列から一個をFloat型として読み取り、文字列化します。
@s可変長引数列から一個をString型として読み取ります。
@gi[???]ゲームグローバル整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@gs[???]ゲームグローバル文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。
@ri[???]ゲームグループ整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@rs[???]ゲームグループ文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。
@mi[???]ゲームマップ整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@ms[???]ゲームマップ文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。

String text :設定する文字列
可変長引数:書式化する際の引数を必要なだけ指定します。

先頭へ


MessageWindow_Base::ShowMessage

public void ShowMessage( String text,...)

   メッセージとして描画する内容を設定します。
   メッセージ文字列は一文字ごとに設定時間分待機し、
   フェードイン処理しつつ描画されます。
   
   このメソッドはウィンドウが非表示であった場合、表示処理を行ってからメッセージを描画します。
   
   描画する文字列は DRMessage::SetMessage と同じ特殊文字を解釈し、
   さらに以下の文字列を書式化文字列として変換します。
表記効果
@@@文字を表示します
@d可変長引数列から一個をInteger型として読み取り、文字列化します。
@f可変長引数列から一個をFloat型として読み取り、文字列化します。
@s可変長引数列から一個をString型として読み取ります。
@gi[???]ゲームグローバル整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@gs[???]ゲームグローバル文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。
@ri[???]ゲームグループ整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@rs[???]ゲームグループ文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。
@mi[???]ゲームマップ整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@ms[???]ゲームマップ文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。

String text :設定する文字列
可変長引数:書式化する際の引数を必要なだけ指定します。

先頭へ


MessageWindow_Base::WaitMessage

public void WaitMessage( String text,...)

   メッセージとして描画する内容を設定します。
   メッセージ文字列は一文字ごとに設定時間分待機し、
   フェードイン処理しつつ描画されます。
   
   このメソッドはウィンドウが非表示であった場合、表示処理を行ってからメッセージを描画します。
   さらに、メッセージ表示中の入力待ちを処理し、プレイヤーが決定するまで戻りません。
   この入力待ちは @@HALT_MESSAGE 中断識別子で中断することができます。
   
   描画する文字列は DRMessage::SetMessage と同じ特殊文字を解釈し、
   さらに以下の文字列を書式化文字列として変換します。
表記効果
@@@文字を表示します
@d可変長引数列から一個をInteger型として読み取り、文字列化します。
@f可変長引数列から一個をFloat型として読み取り、文字列化します。
@s可変長引数列から一個をString型として読み取ります。
@gi[???]ゲームグローバル整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@gs[???]ゲームグローバル文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。
@ri[???]ゲームグループ整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@rs[???]ゲームグループ文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。
@mi[???]ゲームマップ整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@ms[???]ゲームマップ文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。

String text :設定する文字列
可変長引数:書式化する際の引数を必要なだけ指定します。

先頭へ


MessageWindow_Base::WaitLastMessage

public void WaitLastMessage( String text,...)

   メッセージとして描画する内容を設定します。
   メッセージ文字列は一文字ごとに設定時間分待機し、
   フェードイン処理しつつ描画されます。
   
   このメソッドはウィンドウが非表示であった場合、表示処理を行ってからメッセージを描画します。
   さらに、メッセージ表示中の入力待ちを処理し、プレイヤーが決定するまで戻りません。
   この入力待ちは @@HALT_MESSAGE 中断識別子で中断することができます。
   入力待ちが完了した後、このメソッドはこのウィンドウを非表示にする処理を行います。
   
   描画する文字列は DRMessage::SetMessage と同じ特殊文字を解釈し、
   さらに以下の文字列を書式化文字列として変換します。
表記効果
@@@文字を表示します
@d可変長引数列から一個をInteger型として読み取り、文字列化します。
@f可変長引数列から一個をFloat型として読み取り、文字列化します。
@s可変長引数列から一個をString型として読み取ります。
@gi[???]ゲームグローバル整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@gs[???]ゲームグローバル文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。
@ri[???]ゲームグループ整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@rs[???]ゲームグループ文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。
@mi[???]ゲームマップ整数変数を文字列化して表示します。
???の部分はゲーム変数名として解釈されます。
@ms[???]ゲームマップ文字列変数を表示します。
???の部分はゲーム変数名として解釈されます。

String text :設定する文字列
可変長引数:書式化する際の引数を必要なだけ指定します。

先頭へ


MessageWindow_Base::AllDraw

public Bool AllDraw()

   描画途中のメッセージがある場合、直ちに全て描画します。

戻り値:メッセージを最後まで描画したか、描画途中のメッセージがない場合は真を返します。

先頭へ


MessageWindow_Base::AllClear

public void AllClear()

   描画しているメッセージを消去し、メッセージ領域を透明にします。

先頭へ


MessageWindow_Base::IsDrawCompleted

public Bool IsDrawCompleted()const

   メッセージの描画処理が完了しているか取得します。

戻り値:描画が完了していれば真を返します。

先頭へ


MessageWindow_Base::IsMarkerVisible

public Bool IsMarkerVisible()const

   メッセージの送りマーカーを表示しているか判定します。

戻り値:メッセージの送りマーカーを表示中の場合、真を返します。

先頭へ


MessageWindow_Base::SetMarkerVisible

public Bool SetMarkerVisible( Bool new_state)

   メッセージの送りマーカーの表示状態を設定します。

Bool new_state :設定する送りマーカーの表示状態を指定します。

先頭へ


MessageWindow_Base::InputUpdate

public Bool InputUpdate( InputBuffer? input=NULL)

   メッセージ表示中の入力応答を行います。
   メッセージの描画中に決定キーが入力された場合、直ちにメッセージを描画します。
   メッセージの描画完了後に決定キーが入力された場合、処理を戻します。
   
   このメソッドはメッセージ表示と他の処理を同期しつつ同時に行うためのものです。
   通常は WaitEnter を使用するほうが簡単です。

InputBuffer? input=NULL :入力を読み取る入力バッファ。
      空参照を指定した場合は現在の仮想コントローラ状態を使用します。

先頭へ


MessageWindow_Base::WaitEnter

public Bool WaitEnter()

   メッセージ表示中の入力待ちを行います。
   メッセージの描画中に決定キーが入力された場合、直ちにメッセージを描画します。
   メッセージの描画完了後に決定キーが入力された場合、処理を戻します。
   
   このメソッドは @@HALT_MESSAGE 中断識別子で中断することができます。

戻り値:入力待ちを完了した場合は真を返します。
   メソッドが中断された場合は偽を返します。

先頭へ


MessageWindow_Base::LOC_AUTO

readable readonly Integer LOC_AUTO

   「自動」配置タイプを示す定数。

先頭へ


MessageWindow_Base::LOC_TOP

readable readonly Integer LOC_TOP

   「上端」配置タイプを示す定数。

先頭へ


MessageWindow_Base::LOC_CENTER

readable readonly Integer LOC_CENTER

   「中央」配置タイプを示す定数。

先頭へ


MessageWindow_Base::LOC_BOTTOM

readable readonly Integer LOC_BOTTOM

   「下端」配置タイプを示す定数。

先頭へ


MessageWindow_Base::LOC_MANUAL

readable readonly Integer LOC_MANUAL

   「手動」配置タイプを示す定数。

先頭へ


MessageWindow_Base::message_dr

public DRMessage message_dr

   メッセージ描画用のドローリソース。

先頭へ


MessageWindow_Base::message_font

public Pointer<FGESFont> message_font

   メッセージ描画を行うフォントオブジェクト。
   NULL である場合、デフォルトフォントを使用します。

先頭へ


MessageWindow_Base::char_delay

public Integer char_delay

   1文字描画する度に待機する時間(1/512フレーム単位)。
   デフォルトでは1205(およそ秒間25文字)に設定されています。

先頭へ


MessageWindow_Base::char_drawspeed

public Integer char_drawspeed

   描画開始から毎フレーム増加させる透過度(1/512単位)。
   デフォルトでは4370(およそ0.5秒)に設定されています。

先頭へ


MessageWindow_Base::marker_window

public DRWindow marker_window

   メッセージの描画完了後に表示するマーカーウィンドウオブジェクト。
   このウィンドウの設定は派生クラスで行うこと。

先頭へ


MessageWindow_Base::disable_skip

public Bool disable_skip

   メッセージ描画中に決定キーやCtrlキーによる即時描画の無効化状態。
   このオブジェクトが真である場合、決定キーやCtrlキーによる描画スキップは無効化されます。
   この値はデフォルトで偽に設定されています。

先頭へ


MessageWindow_Base::freezing_fadeskip

public Bool freezing_fadeskip

   画面凍結中ウィンドウフェード処理をスキップするフラグ。
   このオブジェクトが真である場合、画面凍結中はウィンドウフェードをせず、即座に表示状態を切り替えます。
   この値はデフォルトで真に設定されています。

先頭へ


MessageWindow_Base::ex_callback

public ExClosureCaller ex_callback

   メッセージ内の %k によるコールバックを拡張するコールバックオブジェクト。
   このオブジェクトに有効なコールバックが設定されている場合、
   このクラス標準のコールバックメソッドが処理しなかった呼び出しがリダイレクトされます。
   
   このコールバックは制限時間付きで呼び出されます。

先頭へ


MessageWindow_Base::async_mode

internal Bool async_mode

   メッセージ関連処理を非同期に行うフラグ。

先頭へ


MessageWindow_Base::async_thread

internal HThread async_thread

   非同期処理用のスレッドハンドル。

先頭へ


MessageWindow_Base::callback_method

internal BoundMethod callback_method

   メッセージ内の %k によるコールバックを設定するためのコールバックオブジェクト。
   通常このオブジェクトについて特別な操作は必要ありません。

先頭へ


MessageWindow_Base::skiplock_state

internal Integer skiplock_state

   メッセージ内の %k の処理による入力待ちと決定キーなどによるスキップ処理を調整するための状態。
   0の場合はロックなし、1の場合は1フレームスキップ無効、2の場合は完全にロックしています。

先頭へ


MessageWindow_Base::base_locationtype

readable Integer base_locationtype

   メッセージウィンドウを可視状態にする時の位置調整で使用する配置タイプの基本値。

先頭へ


MessageWindow_Base::locationtype

readable Integer locationtype

   メッセージウィンドウを可視状態にする時の位置調整で使用する配置タイプ。
   この値はメッセージウィンドウを不可視状態にすると基本値に戻ります。

先頭へ


MessageWindow_Base::base_alv

readable Integer base_alv

   メッセージウィンドウ背景の透過度の基本値。
   この値はメッセージウィンドウを不可視状態にする時にメッセージウィンドウ背景の透過度として適用されます。

先頭へ


[前へ] [目次へ] [次へ]

最終更新 2023/02/04