• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:リキッドデザインのflashで困っています。)

Flashでリキッドデザインのキャラクターが横移動する方法

このQ&Aのポイント
  • Flashのリキッドデザインで作成したキャラクターが画面左から右に移動するのではなく、見る人のディスプレイサイズに合わせて画面右から左に消えるようにする方法を教えてください。
  • 作業環境はWindows 7で、アプリケーションはFlash 8(ActionScript 2.0)を使用しています。リキッドデザインのFlashを検討しており、幅2800pxで作成する予定です。
  • 現在の作製法ではキャラクターが画面左から右に移動してしまうため、表示に時間がかかってしまいます。Flash全体はリキッドデザインで作成し、見る人のディスプレイサイズに応じてキャラクターが画面右から左に消えるようにする方法を教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

結局,キャラクターを左から右に移動させるのか 右から左に移動させるのかがわからない文章ですね。 たまたまスクリプトも短く字数制限を超えないので どっちとも書いておきます。 ステージ上にキャラクターはMC(ムービークリップ)として作成してあり, 「chara_mc」というインスタンス名を付けてあるものとします。 またこのMCの基準点は「中央」に設定してあるものとします。 その場合「chara_mc」が存在するタイムライン(_rootなど)の フレームに書くスクリプト例です↓。 ===左から右に移動させる場合============= //Flash Player 内 ムービーの拡大/縮小なし Stage.scaleMode = "noScale"; //左上を基準に整列 Stage.align = "TL"; //キャラのx座標をステージの左端から //キャラの幅の半分だけ左に配置 chara_mc._x = 0 - chara_mc._width / 2; //キャラに毎フレーム時間で実行するメソッドを定義 chara_mc.onEnterFrame = function():Void { //このMC(キャラ)のx座標を右に例えば10pxずつ移動 this._x += 10; //このMCのx座標がステージの右端から //MCの幅の半分右になったら if (this._x > Stage.width + this._width / 2) { //このMCのx座標をキャラの幅の半分左に配置 chara_mc._x = 0 - chara_mc._width / 2; } }; ==================================== ===右から左に移動させる場合============= //Flash Player 内 ムービーの拡大/縮小なし Stage.scaleMode = "noScale"; //左上を基準に整列 Stage.align = "TL"; //キャラのx座標をステージの右端から //キャラの幅の半分だけ右に配置 chara_mc._x = Stage.width + chara_mc._width / 2; //キャラに毎フレーム時間で実行するメソッドを定義 chara_mc.onEnterFrame = function():Void { //このMC(キャラ)のx座標を左に例えば10pxずつ移動 this._x -= 10; //このMCのx座標がステージの左端から //MCの幅の半分左になったら if (this._x < 0 - this._width / 2) { //キャラのx座標をステージの右端から //キャラの幅の半分だけ右に配置 chara_mc._x = Stage.width + chara_mc._width / 2; } }; ==================================== 例えばコレ↓などがありますが //キャラのx座標をステージの左端から //キャラの幅の半分だけ左に配置 chara_mc._x = 0 - chara_mc._width / 2; これは説明上でそう書いているだけですから 当然 0 など取って 次のように書いてもかまいません(普通は次のように書きます)。 //キャラのx座標をキャラの幅の半分左に配置 chara_mc._x = -chara_mc._width / 2;

Kenta57
質問者

お礼

BlurFiltanさん毎度毎度ありがとうございます!! 早速やってみます。本当にありがとうございます。

関連するQ&A