はじめに: 本プラグインというか寄生虫は、吉里吉里のMessageLayerクラスを拡張して、 @positionタグでframe=とopacity=を同時に指定した場合にフレーム画像 透明度を設定可能にするものである。 使い方: 0. system/config.tjs の layerType を ltAlpha にする ;layerType = ltAlpha;   ※デフォルトではltAddAlphaになっていることが多い 1. フレーム画像を ltAlpha形式で用意する。ltAddAlpha形式で既に用意して   いる場合は、画像フォーマットコンバータ(krkrtpc.exe)で変換が必要。   でもフツーにpngとかで半透明画像用意したらltAlpha形式だけどね。 2. scenario(またはsystem)/override.tjsファイルで、以下のように   プラグインファイルを読み込む Scripts.execStorage("MessageLayerGraphicOpacity.tjs"); これで、あとは@positionタグでframe=とopacity=を同時に指定する と、フレーム画像がopacityに従って半透明に表示される。それ以外は 普通のKAGと全く同じ。 [position frame=フレーム画像 opacity=128] →フレーム画像が半透明に表示される 制限: ・system/config.tjsのlayerTypeがltAlpha以外ではうまく動かない ・@positionタグでopacityを設定すると、表示されていたテキストは  クリアされる…これは@positionタグのデフォルト動作なので回避不能 開発背景: 吉里吉里/KAGで、メッセージレイヤのフレーム画像は@positionタグの frame=で指定できるけれど、最近流行りの「フレーム画像の透明度を コンフィグで設定可能」というのができなかった。これは、KAGの メッセージレイヤの背景画像がメッセージレイヤ貼りつきで、 MessageLayer.clearLayer()の時には「画像を読み込んでクリアした ことにする」というアツい実装になっていたから。 前景レイヤを一枚フレーム画像表示用に使って、メッセージレイヤと 一緒くたに扱うという解決策はあったが、ソレだとちょいめんどくさい。 (追記:↑を行うGraphicFramePluginも書いたので、そっち使いたい人は そっち使ってもいいと思う。コレと合わせて使用することも可能) というわけで、もうちょっと簡単に(かつ高速に)半透明のフレーム 画像を設定できんもんかな、とKAGのコード見てたら、 MessageLayer.clearLayer()をちょっとだけイジればなんとか なりそうな気がした。ので書いたのがこちら。30行たらずで欲しい 機能が実現できた気がする。めでたしめでたし。 おまけ: なぜConfig.tjsのlayerTypeのデフォルトを、わざわざ使いづらい ltAddAlpha形式に変更したのか、理由知ってる人は教えてください。 「高速だから」っていったって、三倍も四倍も高速なワケじゃないから、 それ以外の理由がきっとあるはず…だろうと思うんだ…。