- 締切済み
paraflaを使用して、
paraflaを使用して、 縦スクロールする携帯サイトを作成したいのですが、 十字キー上下の動きに合わせて 画面全体が連動してスクロールする動き… のやり方がまったくわかりません。 どなたかお助けくださいっ。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- BlurFiltan
- ベストアンサー率91% (1611/1754)
以下は普通のパソコン用Flash(SWF6~8)の話です。 携帯用Flash(SWF4)の話ではありません。 また私はSWF4が大変苦手なので, もし携帯に関しての質問であれば私はよくわかりませんが。 たとえば「あ」と記入したテキストをイベントリストに追加し, さらに新規でスプライトをイベントリストに追加し, スプライト内のイベントに「あ」を追加し, メインの編集に戻り メインのイベントのフレーム1に上記のスプライトを追加し, そのスプライトに例えば「my_sprite」というインスタンス名を付けます。 そして 同じフレーム1にアクションを挿入し 次のスクリプトを書けば, 「あ」がパソコンの方向キーに従って動くものができます。 ------------------------------ //インスタンス「my_sprite」をステージ中央付近に配置 my_sprite._x = Stage.width/2-my_sprite._width/2; my_sprite._y = Stage.height/2-my_sprite._height/2; //「my_sprite」を動かす関数を定義(引数:x座標,y座標) function moveSprite(move_x, move_y) { //毎フレーム時間で随時実行するイベントハンドラメソッドを定義 my_sprite.onEnterFrame = function() { //「my_sprite」の x座標を move_x だけ加算 my_sprite._x += move_x; //「my_sprite」の y座標を move_y だけ加算 my_sprite._y += move_y; }; } //キーを監視するためのオブジェクト「key_obj」を作成 key_obj = new Object(); //何かのキーが押されたときに実行するイベントハンドラメソッドを定義 key_obj.onKeyDown = function() { //押されたキーが「↑」であれば if (Key.isDown(Key.UP)) { //関数moveSpriteを実行(引数:x座標,y座標) moveSprite(0, -2); //押されたキーが「↓」であれば } else if (Key.isDown(Key.DOWN)) { //関数moveSpriteを実行(引数:x座標,y座標) moveSprite(0, 2); //押されたキーが「←」であれば } else if (Key.isDown(Key.LEFT)) { //関数moveSpriteを実行(引数:x座標,y座標) moveSprite(-2, 0); //押されたキーが「→」であれば } else if (Key.isDown(Key.RIGHT)) { //関数moveSpriteを実行(引数:x座標,y座標) moveSprite(2, 0); } }; //何かのキーが放されたときに実行するイベントハンドラメソッドを定義 key_obj.onKeyUp = function() { //my_sprite.onEnterFrame を削除 delete my_sprite.onEnterFrame; }; //Keyクラスのリスナーとしてkey_objを登録 Key.addListener(key_obj); ------------------------------ 「あ」ではなく,「画面全体が動くもの」をスプライトに入れれば, 「画面全体が動くもの」がスクロールします。
お礼
早速にありがとうございます! なんとかチャレンジしてみたいと思います。 ものすごく助かりました。感謝感激です!