こんにちは。
ツクシ さんが書きました:お世話になっております。
下記2つのプラグインを使用させていただいております。
▼ピクチャが画面シェイクしない(莞爾の草様作) - picturesWithoutShake.js
https://plugin.fungamemake.com/archives/27242
ウィンドウとして扱うピクチャは常にシェイクしない設定にしています。
▼▼画面シェイクを縦揺れに変更するよ(ゆわか様作) - ShakingChange.js
https://plugin-mz.fungamemake.com/archives/243
スイッチの切り替えで、任意のタイミングでシェイクを縦方向に変更したいと考えています。
ShakingChange.jsにてシェイクを縦方向へと変更した際、
picturesWithoutShake.jsにてシェイクしない設定にしているピクチャが、横方向にシェイクしてしまいます。
picturesWithoutShake.jsのヘルプにて
コード: 全て選択
* このプラグインではシェイクがかかったときに親要素が横に移動する移動分
* だけ反対方向にピクチャを動かすことで動いてないように見せます。
とあるためプラグインの動作としては正しいのですが、理想としては特定のピクチャは縦・横どちらのシェイクへの反応も防ぎたいです(添付画像①)
縦方向へのシェイクに対しても、ピクチャをシェイクさせない方法はございませんでしょうか。
思いついた案としては、縦方向へのシェイクを実施する際に、スイッチの切り替えによりピクチャが画面シェイクしない設定を一時的に解除する方法を考えました。
(ピクチャの縦方向へのシェイクを許容する)
が、下記コードを追加したのですがプラグイン自体が動作しないようになってしまいました。
考え方が間違っていますでしょうか。
picturesWithoutShake.js
コード: 全て選択
* @param Switch ID
var switchId = Number(parameters['Switch ID'] || 0);
お知恵をお貸しいただけますと幸いです。
よろしくお願いいたします。
シェイクの方向を縦に変更できる機能、
ピクチャに対して、シェイクに追従しないように設定できる機能、
の2つを提供するプラグインを試作してみました。
2つのプラグインをきちんと導入、動作を確認して作ったものではないので、
きちんと代替になっているかどうかわかりませんが、
お試しください。
ファイルを修正したためこちらは削除しました。
最新の記事からダウンロードしてください。
詳しくは、プラグインのヘルプをご参照ください。
また、変な挙動をしておりましたら、ご連絡をお願いします。
追記:
挙動確認用のイベント例を記載しておきます。
(ちなみに、ピクチャに表示している画像は、ツクールMZに標準で入っているピクチャから持ってきてます)
コード: 全て選択
◆ピクチャの表示:#1, People3_7, 左上 (130,250), (100%,100%), 255, 通常
◆ピクチャの表示:#2, People3_8, 左上 (480,250), (100%,100%), 255, 通常
◆プラグインコマンド:ShakeEx_Set_Vertical true
◆プラグインコマンド:ShakeEx_Set_NoShake 1 true
◆文章:なし, ウィンドウ, 下
: :縦方向シェイク
: :ピクチャ 1 のシェイクなし設定 ON
◆画面のシェイク:5, 5, 60フレーム (ウェイト)
◆プラグインコマンド:ShakeEx_Clear_NoShake
◆文章:なし, ウィンドウ, 下
: :縦方向シェイク
: :全てのピクチャのシェイクなし設定 OFF
◆画面のシェイク:5, 5, 60フレーム (ウェイト)
◆プラグインコマンド:ShakeEx_Set_Vertical false
◆文章:なし, ウィンドウ, 下
: :通常シェイク
: :全てのピクチャのシェイクなし設定 OFF
◆画面のシェイク:5, 5, 60フレーム (ウェイト)
◆プラグインコマンド:ShakeEx_Set_NoShake_All
◆文章:なし, ウィンドウ, 下
: :通常シェイク
: :全てのピクチャのシェイクしない設定 ON
◆画面のシェイク:5, 5, 60フレーム (ウェイト)
◆文章:なし, ウィンドウ, 下
: :ピクチャのシェイクしない設定は
: :ピクチャの消去時に解除される。
◆ピクチャの消去:#1
◆ピクチャの消去:#2
◆ウェイト:30フレーム
◆ピクチャの表示:#1, People3_7, 左上 (130,250), (100%,100%), 255, 通常
◆ピクチャの表示:#2, People3_8, 左上 (480,250), (100%,100%), 255, 通常
◆ウェイト:30フレーム
◆画面のシェイク:5, 5, 60フレーム (ウェイト)