メッセージ枠調整プラグイン

[position] の margin 各種の数値を、見た目通りに指定できるようにするプラグイン。

追加機能

  • 自動改行、改ページ時にメッセージが枠からはみ出ないようにする。
  • 行間を px から単位なしに変更する。→指定できるように変更
  • message_inner p に自動指定される margin-top を 縦書き時は margin-right へ変更、または無効にできます。v3.00から追加
  • ルビサイズ指定と、ルビ使用時の表示ズレ防止を追加。*
     *「メイリオ」や「游」シリーズなど、空白の多いFontには対応できません。
    v3.00で削除

詳しくは、「[position]のmarginbは指定しても意味がなかった件」記事も参照ください。

…とはいえ、あくまでも、指定した枠内に収まるというだけです。

[position]のサイズ設定をなんとなくな数値で設定していて、message_outer(メッセージの背景部分)自体が画面を飛び出している場合の保証はできません。
ゲーム画面サイズとメッセージサイズを把握して、適切に配置しましょう。

使い方

  1. data/others/plugin に 「message_frame」を入れてください。
  2. first.ks からプラグインを呼び出してください。
    [plugin name=”message_frameg”]

パラメーター

(※デフォルトの場合は省略可)

行間の単位
nounit “true” 単位なし。
※defaultLineSpacing の指定は通常通りpx単位で指定してください。
(例:defaultFontSize = 24 で行間 1.5 にしたい場合は、defaultLineSpacing = 12 )
“false” px(デフォルト)
message_inner p の padding 指定
nopadding “true” padding:0px
“false” defaultLineSpacing px(デフォルト)
数値 defaultLineSpacing とは別の値を指定したい場合。)

記述例

例1:行間、message_inner p 共にデフォルト。
  [plugin name=”message_frameg”]

例2:行間は単位無しに、message_inner p はデフォルトのまま。
  [plugin name=”message_frameg” nounit=”true”]

例3:行間は単位無しに、message_inner p は padding 0px に。
  [plugin name=”message_frameg” nounit=”true” nopadding=”true”]

例4:行間は単位無しに、message_inner p は padding 10px に。
  [plugin name=”message_frameg” nounit=”true” nopadding=10]

動作確認

ティラノスクリプトv454c

注意点

スクリプトのエンジン本体を改造しています。
他verのティラノスクリプトでは動作しない可能性があります。
(改造項目:kag.tag.js/text.start、kag.tag.js/position)

表示例

[position left=20 top=400 width=920 height=200 margint=”45″ marginl=”50″ marginr=”10″ marginb=”10″]
と設定した場合。

黒い部分が message_outer(メッセージ枠)。半透明の緑色+水色部分が message_inner(テキスト表示部分)。緑色が margin、水色が実際にテキストが表示される範囲です。
message_inner の top、left に自動追加される+10px分も計算していますので、単純に外側から *px という指定でOKです。
せっかくなので、各パラメーターがどう使われるのか書き入れてみました。
position_1

ちなみに、同じ記述でプラグインを使わない場合。はこうなります。
position_2
ティラノスクリプトが更新される度に毎回改造してたのですが、ぶっちゃけ面倒くさいのでプラグイン化してみました(‘_’)

ルビ表示について※v2.03のみ

ルビ表示時に、文字のベースラインがズレてしまうのを防ぐ記述を追加してみました。
SOrowさんのサイトの、「rubyタグでのルビ振り時の表示を改善する」の記事を参考にさせて頂きました。
Fontの種類によっても変わってくると思うので数値は多めに設定しています。細かく設定したい場合は、このプラグインは使わないようお願いします。

ダウンロード

更新履歴

2017/06/04
Ver.3.00 ティラノ454対応。ルビ表示関係機能を削除。message_innerのpadding調整を追加。
2016/08/08
Ver.2.03 ロード後にエラーで止まってしまう不具合を修正しました。
2016/08/06
Ver.2.02 Config.tjs defaultRubyOffset 値を使用してのルビの表示位置変更に対応。非対応Font表記。
2016/08/01
Ver.2.01 フォルダ名間違い修正しました。
2016/07/22
ファイル名変更。inner_message → message_frame
2016/07/10
Ver.2.00 line-heightの単位ありなし選択可能に、ルビ表示関係を追加。
ルビ表示関係は微妙だったかな・・・・私が欲しかったのでまぁいいか。
2016/07/01
Ver.1.00公開。

参照サイト

Pocket
LINEで送る
[`evernote` not found]

メッセージ枠調整プラグイン” への2件のフィードバック

  1. おおー!!すごいですね!!! 指定した数値通りにメッセージウィンドウが表示されると、それだけで突っかからずに済みますねえ。行間も単位指定なしにするのはできないものとばかり思っていました!おおおーすごい!!(語彙不足)
    セーブデータの保護削除機能も、ゲーム上で個別に操作できるなんていいですねえ。プラグインを使うためにティラノスクリプトで何かを作りたくなってきます!w

    • SOrowさんこんにちは。
      お褒めにあずかり光栄です(*’ω’*)
      メッセージ枠の設置は自分が最初に躓いた所だったので、どうにかプラグイン化できないものかとずっと悩んでおりました。行間もサイズ固定なのは気になりますよね!これで毎回改造しなくて済みます~(*´▽`*)
      セーブデータの保護削除ってフリーゲームでは時々見るので作ってみました。削除はともかく、保護は欲しいですね!
      セーブの成功失敗判断もしたいなぁーと思ってますが今のところうまくいっておりません(*ノωノ)
      ウディタでの制作が落ち着いたら是非是非使ってくださいませ!
      ウディタの新作も楽しみにしております~!!!(*´▽`*)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です