DLSiteDMMで夏の作品割引キャンペーンが始まりました!興味が作品がある方はこの機会に。当ブログでレビューした割引作品もこちらから見れるのでもしよければ…。

【ツクールMV】メニューにエッチステータス画面を表示するプラグイン作ってみた

レビューブログで書くのおかしくない?という感じが強いけど、現状公開する場所がないのでとりあえず、このブログで書いてみるテスト。アダルト用に作ったプラグインだしねー。いつもレビュー記事見に来てくれている人は、変なの作ってるなーぐらいの感覚で見るか、スルーで。

内容はタイトル通り。

ツクールMVのメニュー画面にエッチステータスが表示できるプラグインを作ったよーというお話。現状はステータスで表示するキャラ1人を想定。一度設定したデータはセーブした時に保存されるので、ロード時に再設定する必要はありません。

できる限りプログラムわからない人も使えるように作った…つもり

前置きはこれぐらいにして使い方とか色々書いていくよー。

使い方

他のプラグイン同様、下記にjsファイルをプラグインコマンドダウンロードしてフォルダに置いて、プラグイン管理でonにしてください。分からない方はツクールMVガイドを参考に。

※サーバーの関係上文字コードが怪しいのでファイルを2つ用意しました。shiftファイルを利用する場合は、ダウンロード後ファイル名を「OriginMenuStatus.js」に変更してください。

ファイル

Shitfファイル

 

onにするとメニュー画面にメニュー項目が追加されます。

プラグイン管理では下記の画面が表示されます。

param_name_数字の部分にデータを入力することで画面に表示されます。
入力の仕方はカンマ(,)区切りで左から
 
「パラメーター名,パラメーター初期値,パラメーター値の後に続く名前,文字列無視のフラグ」
 
の4つを指定できます。
必須なのはパラメーター名のみ。残りは必要な時に設定してください。4つ目の文字列無視のフラグはどんなときに使うかはこちらで説明。
 
例1:param_name_1に入力値「経験値:,0,回」と入力した場合の画面の表示
 
 
例2:例1に加えparam_name_2に入力値「テストデータだよ!」と入力した場合の画面の表示

パラメーターについて

param_name_数字以外のパラメーター項目についての説明
 

command_name

メニュー画面に表示されるコマンド名を設定します。
 
command_nameに「女の娘の状態」を設定した場合
 
 

paramName_pos_x

パラメーター名の位置を設定します。設定しない場合は画面横幅の半分の位置を全項目に設定します。
 
paramName_pos_xに100を設定した場合
 

paramName_align

パラメーター名を文字列の長さに応じて左揃え、真ん中整列、右揃えのいずれかに設定します。left,center,rightのいずれかの値を設定してください
 
paramName_alignに「left」 「center」「right」を設定した場合
 
 
 

parameter_pos_x

パラメーター値の位置を設定します。設定しない場合は一番長いパラメーター名 + 20の値を全項目に設定します。
 
parameter_pos_xに100を設定した場合
 
 

param_pos_y

 
一番上に表示されるparam1の位置を設定します。設定しない場合は50を自動設定します。
 
parameter_pos_yに300を設定した場合
 

line_interval

パラメーターの縦の間隔幅を設定します。設定しない場合は50を自動設定します。
 
line_intervalに200を設定した場合
 

image_x

画像位置を設定します。設定しない場合は10で自動設定します。ちなみに立ち絵画像はきまぐれアフター様が出している著作権フリー立ちキャラクター素材集vol.9を使用し作成。
 
image_xに-100を設定した場合。左が元で右が値変更後
 
 
※画像の設定方法はパラメーター設定方法にて記載します。
 

image_y

画像位置を設定します。設定しない場合は10で自動設定します。

image_yに-200を設定した場合。左が元で右が値変更後

※画像の設定方法はパラメーター設定方法にて記載します。

 

パラメーター設定方法

使い方で説明したのはいわゆる初期設定。エッチなステータスは道中で当然増減するし、場合によっては画像も変わるはず!

ということで、ステータスの値の設定2つと画像を設定する方法を3つ用意しました。使い方はイベントにあるプラグインコマンドに入力していくことを想定しております。

SetParamVariable

指定した変数の値を指定したパラメーター値に設定します。代入の形式をとっているので、2回目以降呼び出すと前の値が上書きされます。加算や減算はしないので注意。

例:パラメーター名1に変数1の値を設定したい場合
  「OriginMenuStatus SetParamVariable param1 1」
 
 
 

SetParam

指定した値を指定したパラメーター値に設定します。代入の形式をとっているので、2回目以降呼び出すと前の値が上書きされます。

例:パラメーター名1に「テストテスト」を設定したい場合
  「OriginMenuStatus SetParamVariable param1 テストテスト」

SetPicture

画像を設定します。代入の形式をとっているので、2回目以降呼び出すと前の値が上書きされます。

例1:「立ち絵01c_笑.png」を設定して呼び出す場合

「OriginMenuStatus SetPicture 立ち絵01c_笑」
 
 
 
※画像はあらかじめ「プロジェクト名/img/pictures」フォルダに「立ち絵01c_笑.png」を格納しておく必要があります。
 
※例ではファイル名を日本語で記載しましたが、日本語文字はプログラム上問題が発生する可能性があるため(ツクール以外のプログラム含め共通の仕様になります)ファイル名は英数字での管理を推奨します。
 
 

その他

上記以外に使用する説明やその他のプラグインと組み合わせるともっといいよー的なもの。

param_name_数字にある文字列無視のフラグについて

「パラメーター名,パラメーター初期値,パラメーター値の後に続く名前,文字列無視のフラグ」で記載した4つ目の値「文字列無視のフラグ」

これは長い文章をパラメーター値に設定する場合にtrueを設定することを想定しています。

例えば処女喪失時のセリフを入れたくてparameterに下記の設定を行った場合。

  • 淫乱度:,10,%
  • 初めての相手: 触手
  • 女の娘のコメント:テストテストテスト

これを設定すると

不自然なほど間が空きます。

これは私が考えたアルゴリズムやプログラムの問題です。てへぺろ。

なので、興味ある人は下記をクリックしてみてね!興味ない人は飛ばして先に進んでください。とりあえずtrueを設定するとどうなるか画像を見てくだせー。

 

アルゴリズムについて。クリックすると開きます

今回文字を描画する部分の仕様は、

  1. 設定されているパラメーター値の中で1番長い文章を探し出す
  2. 1番長い文章に合わせてパラメータ値を描画するキャンバスのサイズを統一しパラメーター値描画
  3. パラメーター値の後ろにパラメーター名(上記では%)をくっつける

という流れで作成しております。

そのため「テストテストテスト」などの長い文章書くと、空パラメーター値であっても「テストテストテスト」の横幅と同等のキャンバスが作られ、その後ろに%がくっつきます。なので上記の場合は右側の画面外に%が描画されているイメージ…。

この問題を解決するのが最後に設定するtrueの値です。trueを指定すると「全パラメーターの中で1番長い文章を探す」処理の時文章の長さを取得しません。

「テストテストテスト」を無視すると、10や触手などの文字が一番長い文字列になるため、%が正しく表示されるようになります。

parameterに下記の設定を行った場合:

  • 淫乱度:,10,%
  • 初めての相手: 触手
  • 女の娘のコメント:,テストテストテスト,,true

間が消えて表示されるようになりました。

たぶん上記の文章見ても???が大半だと思うので、最後のパラメーター名の位置が気に入らなかったら、一番長いパラメーター値をtrueにしようぐらいの考えで大丈夫なはず…。

 

位置を好きに変更したい!色々デザイン変更したい!って人へ

 
トリアコンタン様というプラグイン製作者の「GraphicalDesignMode」というプラグインがあります。これを使用することで、自由に画面配置を行うことが出来ます。
やろうと思えば下記の画面配置を
 
 
 
下記のように配置ができます。
 
このプラグインは背景の追加もできるし上手く使えば簡単にそれなりの画面ができるんじゃないかと。
杏ちゃんのアイコン通り中の人化け物…!
 
ただ私が試したのは項目の移動だけで、Window追加の処理とかその他の機能は試してないので不具合が出る可能性はあります。
 
もし不具合があった場合はまず私に連絡いただければ…(プラグイン間同士の問題だと、場合によっては私じゃ対応できないかもだけど)
 

まとめ

というわけでプラグイン作ってみたというお話。
これで完成したから公開!というよりはベータ版的な位置づけなのでもし使った人がいてその上で不具合とか要望とかあったらコメントやらメールやらどこでもいいので書いてもらえると…!
 
追記8/9
 
自分より高性能なプラグイン出てきたので紹介しときます
 
 
ということで
 
\今回作ったのはゴミ!/
 

コメント