Flash lite 1.1で、指定範囲内をランダムに動き回る待ち受け画面を作成したいです。
動作イメージは以下の様な感じなのですが・・・
・ステージサイズは『240×320』
・ムービークリップを動かしたい範囲は上下中央の『220×220』
・220×220の範囲内を、
雲の形のムービークリップがフワフワ浮かびながらランダムに移動する
・雲は、220×220の範囲からはみ出ない
for文を使用し、
指定した数値内を移動させるという形になるのかなぁ・・・と思うのですが、
スクリプトの記述方法が分からず、途方に暮れております・・・。
知識のある方がいらっしゃいましたら、お力添え頂けますと大変嬉しいです。
宜しくお願い致します。
No.1ベストアンサー
- 回答日時:
> フワフワ浮かびながらランダムに移動する
「フワフワ」はFlashの問題ではありませんよね。
また そもそも雲は
「ほぼ一定の速度でほぼ同じ方向に動き続けるもの」です。
ランダムで同じ範囲内をフワフワ動くという物理法則に反したイメージをお持ちでしたら
その法則に従った動きをご自身で作ってみてください。
=== 以下はFlash の話 ======
> for文を使用し
> 指定した数値内を移動させるという形になるのか
PC用のFlash では ActionScript で物を移動させる場合
ENTER_FRAME系 [onClipEvent(enterFrame) など] や
setInterval などで一定時間ごとに随時座標を指定して物を動かします。
その場合は for文 なども入ると思います。
しかし Flash lite 1.1では
ENTER_FRAME系 のスクリプトは存在しないため
例えば フレーム1 と 2 をループ再生させて
そのループ再生で 「一定時間ごとに随時座標を指定」 する必要があります。
ここでもし メインのタイムラインで フレーム1 と 2 のループ再生をさせた場合
他のアニメーションなどが作成できなくなります。
したがって フレーム1 と 2 のループ再生は
ムービークリップ内のタイムラインを使ってするべきということになります。
そして
どうせムービークリップ内のタイムラインを使うのでしたら
雲をムービークリップにして雲内タイムラインを使うのが近道ということになります。
その雲をコピペで増やせば良いだけです。
ですから普通 for文は使わないでしょう。
***以下は作成方法例***
ステージ上に「雲の絵」を描きます。
その絵を選択してムービークリップに変換しますが
このとき基準点を中央にしておくとします。
その雲ムービークリップ内のタイムラインの編集に入ります。
雲ムービークリップ内の雲の絵のレイヤーを 2フレーム に伸ばし
その雲レイヤーとは別にActionScript用レイヤーを作って
フレーム1 と 2 を空白キーフレームにします。
そのフレーム1のスクリプト例
------------------
if (_x <= 10+_width/2) {
my_x = random(11)/5;
} else if (_x >= 230-_width/2) {
my_x = -random(11)/5;
} else {
my_x = (random(21)-10)/5;
}
_x += my_x;
if (_y <= 50+_height/2) {
my_y = random(11)/5;
} else if (_y >= 270-_height/2) {
my_y = -random(11)/5;
} else {
my_y = (random(21)-10)/5;
}
_y += my_y;
------------------
フレーム2のスクリプト
-------------
gotoAndPlay(1);
-------------
※注釈
my_x,my_y:変数
_x:x座標 _y:y座標
_width:横幅 _height:高さ
random():random関数
(Mathクラスのrandomメソッドではない)
これで雲ムービークリップ内がループ再生されるため
1フレーム進む時間毎に毎回,フレーム1 のスクリプトが実行されます。
自作版 ENTER_FRAME です。
Flash Lite 1.x は簡単な関数しか無く 制約が厳しい分
普通の Flash よりはるかに手間と頭と気を使いますよ。
お忙しい中、ご丁寧に回答して頂き、
どうもありがとうございます。
今日1日、スクリプトを試行錯誤しまして、
なんとか想定の動作を実現する事が出来ました。
(全く美しい記述ではないのですが・・・)
回答者様のスクリプトは
自分では思いつかない書き方でしたので、
非常に参考になりました。
わざわざ画像も付けて下さって、
本当にありがとうございます。
自力で的確な記述が出来る様に、
もっともっと勉強していかなければと痛感しております。
大変お手数をお掛け致しました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの数式について教えてください。 2 2023/03/04 09:54
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Excel(エクセル) Excel VBAについて 2 2022/08/02 06:19
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- 画像編集・動画編集・音楽編集 WIN10で「切り取り&スケッチ」が上手く使えません。 1 2022/09/01 22:56
- Excel(エクセル) Excelシフト表 固定シフトの自動変換化 1 2022/04/14 16:10
- Illustrator(イラストレーター) ワードに貼った画像のキャンバスと画像本体のサイズの調整 2 2022/05/19 18:31
- Excel(エクセル) エクセルVBA 複数行にまたがっている選択を判定するには 2 2023/05/21 21:54
- 日本語 「に」について 9 2022/10/25 16:32
- Excel(エクセル) エクセルで指定範囲にある名前と重複した場合に入力できないようにしたい 1 2023/07/13 09:58
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Flashで一部レイヤーだけループ...
-
Flash lite 1.1で、指定範囲内...
-
ニュースティッカーの作り方
-
flashでスライド式メニューを作...
-
円を描くように動くアニメーシ...
-
プルダウンメニューを作ろうと...
-
WEBブラウザの重複起動の禁止
-
メモリに読み込んだ音源のPlayS...
-
キーフレームとはなんですか?
-
手書き風FLASH(?)の作り方
-
Flashゲームのセーブ機能の作り方
-
PCでのツイッター閲覧について
-
MacBook Airで作成するトレス動...
-
#1009: null のオブジェクト参...
-
SDHCカードのデータをPCに取り...
-
連番画像を読み込み、フレーム...
-
フレーム内に移動したい
-
絞り込み条件検索について
-
WebBrowserでgoogle検索するには?
-
めくれるカードの作成方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
円を描くように動くアニメーシ...
-
フラッシュでカレンダーの作り...
-
【ActionScript】クラス化のメ...
-
スライドプレゼンテーション機...
-
長方形がランダムに消えるやつ
-
Flash lite 1.1で、指定範囲内...
-
フレーム内に移動したい
-
phpで音を鳴らす
-
Flashで右クリックメニューにつ...
-
C言語 バッファについて。
-
【C#】wavファイルの複数同時再生
-
Access2010でサブフォームのフ...
-
#1009: null のオブジェクト参...
-
車の運転時のメガネ 縁なし(...
-
VBで動的に作成したパネルの上...
-
WEBブラウザの重複起動の禁止
-
GetPrivateProfileString変値
-
キーフレームとはなんですか?
-
カメラ画像 その他のエラー(0...
-
【C++】IDirect3DSurfaceのディ...
おすすめ情報