皆様
大変お世話になっております。
質問をさせてください。
タイトルの通り、サイドビューのバトル時に、エネミースプライトを逆さまに表示したいと思っております。
できれば、コモンイベントでやりたいので、
1 var sprite = ターゲットのスプライト
2 sprite.rotation = 180*(Math.PI / 180); //逆さまにする
のようなスクリプトで実現したいのですが、なかなかうまくいきません。
プラグイン等は使わず、あくまでスクリプト(コモンイベント内)で解決できればと思っております・・・
スクリプトでバトラー(エネミーのみでOK)を逆さまにしたい
Re: スクリプトでバトラー(エネミーのみでOK)を逆さまにしたい
「ターゲットのスプライト」は
SceneManager._scene._spriteset._enemySprites[n]
で取得できます。nは何番目の敵かを示すインデックスです。
もし何らかのプラグインによって_enemySpritesに想定外のスプライトを入れられている場合は
もう一手間加える必要があります。
SceneManager._scene._spriteset._enemySprites[n]
で取得できます。nは何番目の敵かを示すインデックスです。
もし何らかのプラグインによって_enemySpritesに想定外のスプライトを入れられている場合は
もう一手間加える必要があります。
Re: スクリプトでバトラー(エネミーのみでOK)を逆さまにしたい
奏ねこま 様
早速のご回答ありがとうございます!
ご指定いただきたコードでうまく行かなかったので、コンソールログを見てみると・・・
.rotation 部分が薄いいろになっており、カーソルをちかづけると
invoke property getter と表示されてしまいました。
どうやら、ご指摘の通り、プラグインでrotation部分がカスタマイズされているようです。
どこがROTATIONなのか調べてみます!
ありがとうございます!
取り急ぎお礼まで
早速のご回答ありがとうございます!
コード: 全て選択
var sprite = SceneManager._scene._spriteset._enemySprites[1];
console.log(sprite);
ご指定いただきたコードでうまく行かなかったので、コンソールログを見てみると・・・
.rotation 部分が薄いいろになっており、カーソルをちかづけると
invoke property getter と表示されてしまいました。
どうやら、ご指摘の通り、プラグインでrotation部分がカスタマイズされているようです。
どこがROTATIONなのか調べてみます!
ありがとうございます!
取り急ぎお礼まで
- 添付ファイル
-
- cap1.png (15.31 KiB) 閲覧数: 3065 回
Re: スクリプトでバトラー(エネミーのみでOK)を逆さまにしたい
rotationがカスタマイズされているというか、
_enemySpritesにウインドウが突っ込まれてますね…。
↓のスクリプトでどうでしょうか?
SceneManager._scene._spriteset._enemySprites.filter(s => s._enemy === $gameTroop._enemies[n])[0]
nが敵の番号、末尾の[0]はそのまま[0]としてください。
1.6.0以降用のスクリプトなので1.5.2以前では使えません。
_enemySpritesにウインドウが突っ込まれてますね…。
↓のスクリプトでどうでしょうか?
SceneManager._scene._spriteset._enemySprites.filter(s => s._enemy === $gameTroop._enemies[n])[0]
nが敵の番号、末尾の[0]はそのまま[0]としてください。
1.6.0以降用のスクリプトなので1.5.2以前では使えません。
Re: スクリプトでバトラー(エネミーのみでOK)を逆さまにしたい
奏ねこま 様
回答ありがとうございます!
残念ながらご教示頂いたものは再現しませんでした・・・
調べてみましたら、当方コアのバージョンがver1.5.2でした・・・
改めて、targetをconsoleでじっくり見てみました。
このどこかに、rotationできそうな項目があると思っているのですが、
実は、プラグインを大量に入れていて、スプライトがどう加工されてるのかイマイチわかっていません・・・
影響が大きそうなプラグインだと
yep core
yep battle engine core
yep target core
yep actseq 1-3
yep buffstatescore
yep X_visualstatefx
mog battle motion
ぐらいでしょうか。
なかなか難しいですね・・・・
回答ありがとうございます!
残念ながらご教示頂いたものは再現しませんでした・・・
調べてみましたら、当方コアのバージョンがver1.5.2でした・・・
改めて、targetをconsoleでじっくり見てみました。
このどこかに、rotationできそうな項目があると思っているのですが、
実は、プラグインを大量に入れていて、スプライトがどう加工されてるのかイマイチわかっていません・・・
影響が大きそうなプラグインだと
yep core
yep battle engine core
yep target core
yep actseq 1-3
yep buffstatescore
yep X_visualstatefx
mog battle motion
ぐらいでしょうか。
なかなか難しいですね・・・・
Re: スクリプトでバトラー(エネミーのみでOK)を逆さまにしたい
SceneManager._scene._spriteset._enemySprites.filter(function(s){ return s._enemy === $gameTroop._enemies[n]; })[0]
1.5.2用
1.5.2用
解決 Re: スクリプトでバトラー(エネミーのみでOK)を逆さまにしたい
奏ねこま 様
お世話になっております。
ご指示頂いた方法では解決に至りませんでしたが、頂いた情報が有益過ぎて助かりました!
具体的に
rotaionの指定位置は
スプライト._enemy._bmotion.idle.rotation
という位置だと思われます。
moghunter様のプラグインで、バトルモーションが大幅にカスタムされており、当初のrotationは使えなく
なっている感じでした。
上記を指定して、180度を指定すると、とりあえずエネミーがひっくり返りました。
親身に対応いただき感謝いたします!
同じ場所でひっくり返った後は、座標もひっくり返るのか、エネミーの位置が大幅にずれてしまうという
新たな課題が発生してしまいましたが、それはこのスレとは違う課題になるので、じっくり考えてみます。
ありがとうございました!
お世話になっております。
ご指示頂いた方法では解決に至りませんでしたが、頂いた情報が有益過ぎて助かりました!
具体的に
rotaionの指定位置は
スプライト._enemy._bmotion.idle.rotation
という位置だと思われます。
moghunter様のプラグインで、バトルモーションが大幅にカスタムされており、当初のrotationは使えなく
なっている感じでした。
上記を指定して、180度を指定すると、とりあえずエネミーがひっくり返りました。
親身に対応いただき感謝いたします!
同じ場所でひっくり返った後は、座標もひっくり返るのか、エネミーの位置が大幅にずれてしまうという
新たな課題が発生してしまいましたが、それはこのスレとは違う課題になるので、じっくり考えてみます。
ありがとうございました!