# layeremes

layerbuttonを利用したlayeremesオブジェクトを作成

layeremes p1,p2,p3,p4,"string",p5,p6,p7,p8 {}

p1,p2 : layeremesオブジェクトのXYサイズ（ドット単位）
p3=0〜(0) : オプション値
p4=0〜(0) : グループID
"strings" : 表示するメッセージ、または変数
p5=0〜(0) : オプション[mes命令と同様]
p6=(0) : 1文字表示するのに掛けるフレーム数
p7, p8 : アラインメント モード (0, 0)

(プラグイン / モジュール : mod_layerbutton-emes)

## 解説

    layerbuttonを利用した1文字ずつ文字を表示するlayeremesオブジェクトを配置します。
    layerbutton命令と同様、命令末尾に {} を記述してサブルーチンを指定する少し特殊な構文を用います。
    サブルーチンの最後には必ず return を記述してください。

    p1〜p4 は layerbutton と同様のものです。

    "string" には表示するメッセージを指定します。
    文中に以下の制御記号を挿入できます。
    ・"~"(チルダ) : 文字送り待機
    ・"^"(ハット) ： ページ送り待機 (行末のみ指定可能)
    また、行頭に「;」、文中に「/＊＊/」を書くことで、文字の色やフォントを変更するコマンドコメントを記述できます。
    使用可能なコマンドは以下の通りです。

コマンド | 効果
font "フォント名",p1,p2,p3 | 標準のfont命令に準拠。 引数を省略した場合は、前回の設定が引き継がれます。
rgbcolor p1 | $RRGGBB(または0xRRGGBB)形式での文字色の指定。
color p1,p2,p3 | R,G,B輝度形式での文字色の指定。
objcolor p1,p2,p3 | layeremesのp5オプションで影付き文字、縁取り文字を指定したときの装飾色をR,G,B輝度形式で指定。
mes p1,p2 | p1は必ず無視されます。p2で影付き文字、縁取り文字を指定するためのコマンドです。
text p1 | 「1文字表示フレーム数」を変更。 「-1」を指定したときは無視します。(「-1」は、objprmを利用してください。)

    コマンドコメントは内部で自力解析を行っているため、単純な値指定のみ対応しています。
    計算式や変数の使用はできません。

    p6 に 0 以上を指定すると、そのフレーム数ごとに文字が1つずつ表示されます。
    負数を指定すると、「1フレームあたりに表示する文字数」を指定できます。
    ・例： p6 = -3 → 1フレームに3文字ずつ表示
    ・特殊値 -1 → "^"(ハット)ページ区切りまでを一気に表示。このとき "~"(チルダ) の待機は無視されます。

    引数 p7, p8 で、横方向, 縦方向のアラインメントを指定できます。
    p7 : 0 = 左寄せ, 1 = 中央寄せ, 2 = 右寄せ
    p8 : 0 = 上寄せ, 1 = 中央寄せ, 2 = 下寄せ

    サブルーチンは文字が表示される直前に呼び出されます。
    背景装飾や、メッセージ表示完了の検知などに利用できます。
    ・現在の状態はシステム変数 layemes_stat で確認可能です。
    ・ステータスが変化してからのフレーム数は layemes_cnt に格納されます。
    ・サブルーチン呼出時には、stat に「表示済み文字数」が代入され、カレントポジションは文末位置になります。
    　（ただし カレントポジションの x, y が -1 のときは使用しないでください。）
    layerbutton 命令のサブルーチン内で動作しているため、laybtn_ezbox や layerbtn_stat などの命令・変数も利用可能です。

    通常、layeremesオブジェクトはメッセージ表示完了後に自動削除されます。
    layemes_settings で、メッセージ表示完了後も削除されないようにできます。

    layeremesオブジェクトは objprm でパラメータを変更することができます。
    ・objprm id,"string" : 新たなメッセージ表示を開始
    ・objprm id,int : 「1文字表示するのに掛けるフレーム数」を変更

## 関連項目

layemes_font | layeremesオブジェクトのフォント設定 | (mod_layerbutton-emes)
layemes_settings | layeremesオブジェクトの動作を設定 | (mod_layerbutton-emes)
layemes_frames | layeremesオブジェクトにSHOW_IN等のフレーム数を設定 | (mod_layerbutton-emes)
layemes_stat | layeremesオブジェクトの処理状態が代入される | (mod_layerbutton-emes)
layemes_cnt | layeremesオブジェクトの処理状態が変更されてからの経過フレーム数 | (mod_layerbutton-emes)

## サンプル逆引き (3)

13 sample_emesmod.hsp | title "mod_layerbutton-emes サンプル" HSP3Dish.js用データフォルダ設定..
14 sample_ezfrm.hsp | #include "mod_layerbutton.hsp" #include "mod_layerbutto..
15 sample_RPG.hsp | title "RPGサンプル" -- 必要モジュール読み込み -- #include "mod_layerbu..

## 情報

プラグイン / モジュール | mod_layerbutton-emes
バージョン | 1.1
作成日 | 2026/1/7
著作者 | MIZUSHIKI
URL | https://suwa.pupu.jp/HSP/index.html
備考 | layerbutton命令を利用した1文字ずつ表示するlayeremesオブジェクトを作成
タイプ | 拡張命令
グループ | オブジェクト制御命令
対応環境 | ・Windows 版 HSP