トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   迷える子羊の部屋【初心者専用】
     浮遊するカードをドラッグ&ドロップで吸着
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
chip_mama
Åê¹ÆNo.40599
投稿日時: 2008-10-23 21:59
新米
居住地: 大阪
投稿: 3
使用環境:
flash 8 Professional
浮遊するカードをドラッグ&ドロップで吸着
いつもお世話になっております。
初投稿です。よろしくお願いします。

http://www003.upp.so-net.ne.jp/tossnaga/roomajijukugo/roomajijukugo1.htm

上記のような
浮遊する文字カードをドラッグ&ドロップで
規定の場所に吸着するFLASHを作成したいのです。

上記のサイトも素晴らしいのですが
子ども達にクイズが難しく時間制限以内に終わらないので
地域や身近な名前で教材を作成したいのです。

吸着はうまくいくのですが、
浮遊がわからず
「おしえて FLASH ActionScript」
第5章 ムービークリップのプロパティ
「跳ね返るボール」を参考に

onClipEvent (load) {
vx = 10;
vy = 5;
}
onClipEvent (enterFrame) {
this._x += vx;
this._y += vy;
if (500 < this._x) {
vx = -10;
}
if (370 < this._y) {
vy = -8;
}
if (this._x < 0) {
vx = 10;
}
if (this._y < 40) {
vy = 5;
}
}



on(press){
this.startDrag();
}
on(release){
this.stopDrag();
}

を組み合わせた所
マウスから逃げるmcになってしまいました。

跳ね返らせて
if文で作ってみたのですが
うまくいかず悩んでいます。

上手に質問出来たかわかりませんが
よろしくお願いします。

環境はflash 8 です。


----------------
チップママ
flash 8 Professional

森 巧尚
Åê¹ÆNo.40600
投稿日時: 2008-10-23 22:56
モデレータ
居住地: 宝塚
投稿: 650
使用環境:
.5/CS4/Safari3
XP+2000//IE6
Re: 浮遊するカードをドラッグ&ドロップで吸着
「startDrag」でムービークリップをつかんだときにも、同時にenterFrameで動き続けるプログラムも実行しているので、「つかんでいながら、動き続ける」ことが起こっているため、逃げるように見えています。

フラグを使って「つかんでいるときは、動かす処理をやめる」ように変えてやる必要があります。

onClipEvent (load) {
vx = 10;
vy = 5;
dragflag = false;
}
onClipEvent (enterFrame) {
if (dragflag) {
return;
}
this._x += vx;
this._y += vy;
以下略


on (press) {
dragflag = true;
this.startDrag();
}
on (release) {
dragflag = false;
this.stopDrag();
}


----------------
森 巧尚
http://www.ymori.com

chip_mama
Åê¹ÆNo.40602
投稿日時: 2008-10-24 8:32
新米
居住地: 大阪
投稿: 3
使用環境:
flash 8 Professional
Re: 浮遊するカードをドラッグ&ドロップで吸着
森様
返信ありがとうございます。
「おしえて FLASH ActionScript」を
片手に勉強していますので
返信頂いた時は感激しました。
ありがとうございます。

http://earth.endless.ne.jp/users/yoshi216/DD-text.htm

上記のサイトを参考にして
吸着を設定していました。
(吸着元オブジェクトをボタン→
ムービーオブジェクトに設定して
ボタンアクションで設定して吸着させています。)

onClipEvent (enterFrame)で移動させ続けて
flagでドラッグ中は動きを止める事が出来ました。
ありがとうございます。

でも吸着先のオブジェクト近くで
on (release) {
dragflag = false;
this.stopDrag();
を実行すると
onClipEvent (enterFrame)が有効になって
また動き続けます。

ここでいい考え方が浮かばないのです(;_;)

すみません
勉強不足で。

透明ボタンを作成し
on(release,releseOutside)を設定したり
吸着先オブジェクトを大きくして範囲を広げてみたり
したのですが、うまくいきません。

ドラッグ&ドロップ後に
吸着先オブジェクトに近い場合は吸着。

ドラッグをやめたり
吸着先オブジェクトから遠い場合は
また跳ね返り続けるには
どんなASを使用したらいいのでしょうか?

お手数ですが
いい考えを教えて下さい。
よろしくお願い致します


----------------
チップママ
flash 8 Professional

森 巧尚
Åê¹ÆNo.40610
投稿日時: 2008-10-26 9:30
モデレータ
居住地: 宝塚
投稿: 650
使用環境:
.5/CS4/Safari3
XP+2000//IE6
Re: 浮遊するカードをドラッグ&ドロップで吸着
「浮遊しないカード」での、ドラッグ&ドロップで吸着はできますか?
しようとされていることは、
1)カードをドラッグ&ドロップしたとき、吸着先だと吸着させる
2)カードを浮遊させる
の2つの組み合わせです。わからないときは、まず別々に作ってから合わせて考えることをおすすめします。

参考先のサイトをうまく使えばいけると思います。
_droptargetは、eval(_droptarget) にしたほうがいいですし、このしくみだとdropflagではちょっと名前の意味が違っていますから、stopflagなどにしたほうがいいかもしれません。

on (release) {
if (eval(_droptarget) == _parent.インスタンス名) {
_x = _parent.インスタンス名._x;
_y = _parent.インスタンス名._y;
} else {
dragflag = false;
}
this.stopDrag();
}


----------------
森 巧尚
http://www.ymori.com

chip_mama
Åê¹ÆNo.40614
投稿日時: 2008-10-26 21:43
新米
居住地: 大阪
投稿: 3
使用環境:
flash 8 Professional
Re: 浮遊するカードをドラッグ&ドロップで吸着
お忙しい中、
何度もありがとうございます。

1)カードをドラッグ&ドロップしたとき、吸着先だと吸着させる
2)カードを浮遊させる

なんとかそれぞれは出来ているのですが・・・・。
昨日&今日と
頂いたアドバイスを参考に
何度も挑戦しているのですが
まだうまくいきません。

・・・・自分にはまだ無理なレベルだったとかと
思っていますが、
もう少し挑戦してみます。

うまく出来ましたら報告させて頂きます。
ありがとうございました。





----------------
チップママ
flash 8 Professional

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops