111 Input Form

更新日:

日本語名称:111 Input Form

ふりがな:111にゅうりょくふぉーむ

機能概要:ゲーム画面上にHTMLの入力フォームを表示

使用条件(ライセンス):パブリックドメイン

作者:神無月サスケ (原案:111、くらむぼん)

作者サイト:https://twitter.com/ktakaki00

ダウンロードページ:http://www.moonwhistle.org/tkoolMV/111_InputForm.zip

解説ページ:https://twitter.com/ktakaki00/status/861929557321854977

ファイル名:111_InputForm.js

プラグインのヘルプ:

/*:ja
 * @plugindesc ゲーム画面上にHTMLの入力フォームを表示します
 * @author 神無月サスケ(原案:111、くらむぼん)
 *
 * @param OK Button Text
 * @desc 「決定」ボタンに表示する文字列
 * @default 決定
 *
 * @param Display Cancel Button
 * @desc 「キャンセル」ボタンを表示するか。(0=しない, 1=する)
 * @default 1
 *
 * @param Cancel Button Text
 * @desc 「キャンセル」ボタンに表示する文字列
 * @default キャンセル
 *
 * @param Judge Switch Interval
 * @desc 強制終了スイッチの判定ミリ秒間隔です(推奨値100)。
 * 値を減らすと精度が良くなりますが重くなります。
 * @default 100
 *
 * @param Switch ID Selected OK
 * @desc フォームの決定でON、キャンセルでOFFになるスイッチID。
 * 0の時は何も行いません。
 * @default 0
 *
 * @param Force OK Switch ID
 * @desc このIDのスイッチがONになるとフォームを強制決定します。
 * (つまりif_sのデフォルト値)0の時は作動しません。
 * @default 0
 *
 * @param Force Cancel Switch ID
 * @desc このIDのスイッチがONになるとフォームを強制キャンセルします。
 * 0の時は作動しません。
 * @default 0
 *
 * @help
 * HTML5とCSSの機能を使用して画面上に文字入力フォームを表示します。
 * 
 * [最初にすべきこと]
 * このプラグインの実行には、同梱されている「111_InputForm.css」が必要です。
 * index.html のあるフォルダに css フォルダを作成し、そこにこのファイルを
 * 置いてください。
 * このCSSファイルでは入力フォームやボタンのフォームが設定されており、
 * これを書きかえることで自由にスタイルが変更できます。
 * CSSに詳しくない方は「css 書き方」などで検索すればよいでしょう。
 * 
 * [プラグインコマンドと実例]
 * 実行はプラグインコマンド呼び出しで行います。
 * その際パラメータは「パラメータ名=値」の設定をセミコロン(;)で区切った形式で
 * 指定します。間にスペースを挟んではいけません。
 *
 * 例:
 * InputForm x=350;y=200;n=1;max=5;
 *
 * この場合、フォームは座標(350,200)の位置に表示され、
 * 結果はアクター1番の名前に保存されます。
 * 最大文字数は5です。パラメータmaxを省略した時は文字数に制限はなくなります。
 *
 * なお、最大文字数を設定した場合でも、それ以上の文字数が入力可能ですが、
 * フォームが閉じられた時に、最大文字数を超える部分はカットされます。
 * これは下記の追加機能によって強制終了した場合でも同じです。
 *
 * x=350; や y=200; を省略した時は、画面サイズに合わせてセンタリングされます。
 * 例外として、メッセージウィンドウが中央に表示されている場合は、
 * y座標はメッセージウィンドウの下になります。
 *
 * 結果の文字列は、ゲーム変数に格納することも可能ですが、推奨されません。
 * v=11;
 * 上記のオプションを付加すると11番の変数に文字列が格納されますが、
 * ゲーム変数への文字列の格納は本来想定されていないため、結果は確証されません。
 * 
 * なお、変数はIDのみならず変数名での指定も有効です。
 * v=卓郎生存;
 * この場合、「卓郎生存」という名の変数名のうち一番若い変数IDになります。
 * (注意:半角スペースを含んだ変数名はこの方法では指定できません)
 *
 * [追加機能1 : スイッチONによる強制入力終了]
 * 入力にタイムリミットを設定することも可能です。
 * オプションに if_s=3; を追加した場合、スイッチ3番がONになった時に
 * 入力フォームが強制的に閉じます。
 * (これを実装するには、並列イベントを別に作成しスイッチを操作する必要あり)
 * force_ok_sw=3; と表記しても同様の効果があります。
 * なお、入力フォームが強制的に閉じた際には、その時入力されていた文字列が
 * 指定した変数に入ります。
 *
 * [注意事項(特に並列イベントを使う場合)]
 * - フォーム入力が終了するまで、次のイベントコマンドには進みません。
 * - もし、フォーム入力変数を並列イベントで参照する場合、
 * 入力と実際に変数に反映されるまでの間に若干のタイムラグがあることに注意。
 * (サスケ注:プラグインコマンド実行直後に変数を参照したい場合、
 * 間に「ウェイト:1フレーム」を入れると確実です。)
 *
 * [追加機能2 : 決定ボタンの位置設定]
 * 例えば、プラグインコマンドのオプションに以下を追加します。
 * btn_x=100;btn_y=100;
 * これで決定ボタンの座標が(100,100)になります。
 * この座標は、テキストボックスからの相対座標で、
 * 指定のない場合(0, 72)になります。
 *
 * [追加機能3 : キャンセルボタンの表示]
 * デフォルトでは「決定」ボタンのみの表示ですが、オプションによって
 * 「キャンセル」を表示することが可能です。
 * 「キャンセル」が選択された際には、変数などにいかなる変更も行いません。
 * なお、キャンセルボタンの位置は、以下のようなオプションで変更可能です。
 * btn_xc=300;btn_yc=50;
 * これはテキストボックスからの相対座標で、
 * 指定のない場合(120, 72)になります。
 *
 * また、決定ボタンと同様、スイッチONによる強制キャンセルも可能です。
 * force_no_sw=6;
 * このオプションを追加すると、6番のスイッチがONになった際に
 * 強制キャンセルされます。
 * 
 * [パラメータに関する追記事項]
 * 'Force OK Switch ID' と 'Force Cancel Switch ID' は、フォームを閉じた際、
 * 自動的にOFFになります。(プラグインオプションのスイッチはそうなりません)
 *
 * [追加機能4 : 入力フォームの初期文字列の変更]
 * デフォルトでは、n=5;などが指定された場合、そのアクターの名前が、
 * v=11;などが指定され、その変数に文字列が格納されている場合その値が、
 * それ以外の場合は空文字が初期文字列になります。
 * 以下のオプションで、代入対象に関係なく初期文字列を設定可能です。
 * init=ひろし; とすると、初期文字列は「ひろし」になります。
 * init=; のように、空文字の設定も可能です。
 * init_n=3; とすると、3番のアクターの名前が初期文字列になります。
 * init_v=10; とすると、変数10番の値が初期文字列になります。
 *
 * [追加機能5 : 入力可能文字数の位置設定]
 * max=8; のように最大文字数を設定した場合、入力可能文字数が表示されますが、
 * この位置を以下のオプションで変更可能です。
 * rest_x=300;rest_y=100;
 * これで(300,100)に入力可能文字数が表示されるようになります。
 * この座標は、テキストボックスからの相対座標で、
 * 指定のない場合(288, 72)になります。
 *
 * [追加機能6 : 入力フォームの幅の設定]
 * 入力フォームの幅は、CSSファイルにて設定されています(初期値:15em)。
 * このサイズを以下のオプションによって変更可能です。
 * w=8;
 * この場合、入力フォームの幅は8emになります。
 * なお、1emは1文字の高さに相当し、プロポーショナルフォントを使用する限りは、
 * wで指定した値が、表示可能な日本語文字数の長さと等しくなります。
 *
 * [著作権表記]
 * このプラグインは、111様、くらむぼん様の 111_InputForm.js をベースに、
 * 神無月サスケが大規模な加筆修正を行ったものです。お二方に感謝します。
 * 
 * このプラグインはパブリックドメインです。利用にいかなる制限もありません。
 */
1+

Copyright© #ツクプラ , 2019 All Rights Reserved.