【解決済】プラグインコマンドの作り方

返信する
アバター
栗下義孝
記事: 22
登録日時: 2017年2月28日(火) 17:48
連絡する:

【解決済】プラグインコマンドの作り方

投稿記事 by 栗下義孝 »

いつもお世話になっています。
長い間ツクールを触っていたおかげで自作プラグインを作れるまで成長しました。
思い切って素材として配布しようと思ったのですが、プラグインコマンドの作り方がわからずご質問させて頂きました。

Scene_MapにSprite図形を表示する簡単なプラグインなのですが、プラグインコマンドで「x,y,width,height,radius(またはangle)」を指定できるようにしたいです。
以下のコードで引数を取得するところまではできたのですが、この引数をScene_Mapに定義しているSprite内まで呼び出す?ことができず…

コード: 全て選択

var Game_Interpreter_pluginCommand = Game_Interpreter.prototype.pluginCommand;
Game_Interpreter.prototype.pluginCommand = function(command, args) {
Game_Interpreter_pluginCommand.call(this, command, args);
	if (command === 'OP') {
		switch (args[0]) {
		case 'Frame':
			var creatX = parseInt(args[1]);
			var creatY = parseInt(args[2]);
			var creatW = parseInt(args[3]);
			var creatH = parseInt(args[4]);
			if (args[5]) {
				var creatR = parseInt(args[5]);
			} else { var creatR = 0; }
			break;
		}
	}
};
また同じくプラグインコマンドで例えば「show」で表示、「hidden」で消去したいのですが、どこを更新すればこのような処理ができるかもわかりません…
もしかしたらプラグインコマンドの設定は初心者に毛の生えた程度の自分には早かったかもしれません。
その場合、別の方法(スクリプト?)でのやり方をご教示いただけますと幸いです。
よろしくお願いします。
最後に編集したユーザー 栗下義孝 [ 2018年12月30日(日) 22:59 ], 累計 4 回
------------------------------------------------------
気ままにアダルトゲーム製作中… :mrgreen:

栗下 義孝 (くりげ よしたか)
[ HP ] http://kurige.net/
[ Twitter ] http://twitter.com/kurige_y
------------------------------------------------------
奏ねこま
記事: 702
登録日時: 2016年1月20日(水) 20:04

Re: プラグインコマンドの作り方

投稿記事 by 奏ねこま »

>この引数をScene_Mapに定義しているSprite内まで呼び出す?ことができず…

Scene_Mapに存在する(追加済みの)Spriteをプラグインコマンドで操作したいのでしょうか?
それとも新しいSpriteをScene_Mapに追加したいのでしょうか?
アバター
栗下義孝
記事: 22
登録日時: 2017年2月28日(火) 17:48
連絡する:

Re: プラグインコマンドの作り方

投稿記事 by 栗下義孝 »

奏ねこま さま>

すでにScene_Mapに定義済みのものです(Scene_Map.prototype.createFrame)
ただ、あとからScene_Mapに追加する方法も気になるのであわせて教えていただけませんでしょうか?
------------------------------------------------------
気ままにアダルトゲーム製作中… :mrgreen:

栗下 義孝 (くりげ よしたか)
[ HP ] http://kurige.net/
[ Twitter ] http://twitter.com/kurige_y
------------------------------------------------------
奏ねこま
記事: 702
登録日時: 2016年1月20日(水) 20:04

Re: プラグインコマンドの作り方

投稿記事 by 奏ねこま »

追加済みのSpriteとなると、そのSpriteがどういう変数名でどのように実装されているかがわからないと説明できないですね…
とりあえず、Scene_Map自体をプラグインコマンドの処理内で取得するなら

SceneManager._scene

で取れます。
Scene_Mapの中でthis._abcdSpriteとかいう名前でSpriteを保持させたなら、

SceneManager._scene._abcdSprite

で参照できます。

>あとからScene_Mapに追加する方法
現状、Spriteについてどこまで理解されているのかわからないので説明はまた別の機会に…
アバター
栗下義孝
記事: 22
登録日時: 2017年2月28日(火) 17:48
連絡する:

Re: プラグインコマンドの作り方

投稿記事 by 栗下義孝 »

奏ねこま さま>

少ない情報の中でお答え頂きありがとうございました。
SceneManagerを通して情報の読み取りができるとは思いませんでした。
教えていただいたもので修正しましたら、無事プラグインコマンドが機能しました!
今回の件はこれで解決いたしましたので「あとからScene_Mapに追加する方法」についてはまたの機会に…

ありがとうございました :mrgreen:
------------------------------------------------------
気ままにアダルトゲーム製作中… :mrgreen:

栗下 義孝 (くりげ よしたか)
[ HP ] http://kurige.net/
[ Twitter ] http://twitter.com/kurige_y
------------------------------------------------------
返信する

“MV:質問”に戻る