いつもお世話になっています。
画像をマップ上に固定するプラグイン、「TDDP_BindPicturesToMap」についての質問です。
このプラグインは導入してプラグインコマンドで「BindPictureToMap 1 top」など入力するだけで、
画像をマップ上に固定できる公式プラグインです。
が、画像の表示位置が変数で取得した座標「このイベントの画面X」「画面Y」に設定していると、
表示位置が大きくずれてしまいます。
http://mvplugins.tordamian.com/plugins/ ... es-to-map/
ダウンロードページの説明を見ると、機械翻訳ですが
When you bind pictures to the map movement, the picture’s X and Y coordinates are relative to the top-left corner of the map, not the screen.
「画像をマップの動きにバインドすると、画像のX座標とY座標は、画面ではなくマップの左上隅からの相対座標になります。」
と、あるのが原因であると思われるのですが・・・・・・
このプラグインを使用して、移動するイベントの位置にピクチャを表示する方法はあるのか?
「画面ではなくマップの左上隅からの相対座標」を変数として取得する方法はあるのか、どなたかご存知ではありませんか?
【解決済み】画像固定プラグイン「TDDP_BindPicturesToMap」についての質問
Re: 画像固定プラグイン「TDDP_BindPicturesToMap」についての質問
変数の操作のスクリプトで、
■「このイベント」の「マップ基準のX座標(ピクセル単位)」
this.character(0)._x * $gameMap.tileWidth()
■「このイベント」の「マップ基準のY座標(ピクセル単位)」
this.character(0)._y * $gameMap.tileHeight()
「このイベント」ではなく「プレイヤー」にしたい場合は character(-1)
イベント番号を指定したい、例えばイベント1番の場合は、 character(1)
に置き換えてください。
■「このイベント」の「マップ基準のX座標(ピクセル単位)」
this.character(0)._x * $gameMap.tileWidth()
■「このイベント」の「マップ基準のY座標(ピクセル単位)」
this.character(0)._y * $gameMap.tileHeight()
「このイベント」ではなく「プレイヤー」にしたい場合は character(-1)
イベント番号を指定したい、例えばイベント1番の場合は、 character(1)
に置き換えてください。
Re: 画像固定プラグイン「TDDP_BindPicturesToMap」についての質問
>奏ねこま様
素早い回答ありがとうございます!
教えて頂いたスクリプトを使い、想定通りに画像を表示する事ができました。
ですが、スクリプトそのままだと、画像がやや表示したい場所の左上にずれてしまいました。
これは画像の原点を「中央」に設定しても、その「中央の点」がイベントタイルの左上に合わせられる為だと思われます。
そこでタイルは一枚48ピクセルなので、その半分の数値「+24」を教えて頂いたスクリプトの末尾に付け加える事で、
画像とイベントの中央点を一致させて表示できた事を合わせて報告いたします。
Xの変数「this.character(0)._x * $gameMap.tileWidth()+24」
Yの変数「this.character(0)._y * $gameMap.tileHeight()+24」(こんな感じです)
差し出がましいと思いますが、同じ疑問を抱いた人がこのページにたどり着いた際の参考になればと、記載いたします。
主人公や他のイベントの座標の取得方法までありがとうございました、
おかげでこのプラグインを使ったパズルやミニゲーム、演出など様々な応用が思いつきました。
本当に感謝いたします。
素早い回答ありがとうございます!
教えて頂いたスクリプトを使い、想定通りに画像を表示する事ができました。
ですが、スクリプトそのままだと、画像がやや表示したい場所の左上にずれてしまいました。
これは画像の原点を「中央」に設定しても、その「中央の点」がイベントタイルの左上に合わせられる為だと思われます。
そこでタイルは一枚48ピクセルなので、その半分の数値「+24」を教えて頂いたスクリプトの末尾に付け加える事で、
画像とイベントの中央点を一致させて表示できた事を合わせて報告いたします。
Xの変数「this.character(0)._x * $gameMap.tileWidth()+24」
Yの変数「this.character(0)._y * $gameMap.tileHeight()+24」(こんな感じです)
差し出がましいと思いますが、同じ疑問を抱いた人がこのページにたどり着いた際の参考になればと、記載いたします。
主人公や他のイベントの座標の取得方法までありがとうございました、
おかげでこのプラグインを使ったパズルやミニゲーム、演出など様々な応用が思いつきました。
本当に感謝いたします。