A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
ご質問では
>ドラッグ&ドロップした時、指定のフレーム…
と書かれていらっしゃいますが
その『「ドロップ」とはどういう状態を指すのか?』が問題です。
その『「ドロップ」という状態』を作者が定義しなければ
PC はその状態を判断できません。
(その前にスクリプトも書けません。)
先ず第一に
「maru の(基準点の)座標を shikaku の(基準点の)座標に
ピッタリ一致させるように maru を「ドロップ」する。」
ということなど閲覧者(ユーザー)にはほぼ不可能ですよね?
したがって少なくとも
『「ドロップ」と判定する範囲』を決める必要があります。
例えば,
『maru の座標が shikaku の座標の ±10px 以内に来る場所でマウスが放されることを「ドロップ」とする。』
とか,
『maru を放すときにマウスの座標が shikaku 内にある場合を「ドロップ」とする。』
とか,
『maru の矩形エリアと shikaku の矩形エリアが少しでも重なった状態でマウスが放されることを「ドロップ」とする。』
などなど… たくさんの場合(状態)が考えられます。
.
【以下に書く例の共通条件】
・maru も shikaku もMC(ムービークリップ)インスタンスであり
どちらの MC とも,基準点は中央付近にあるものとする。
・スクリプトは maru や shikaku が存在するタイムラインの
フレームに書くものとする。
また,回答文字数制限により,
例2以降は 例1の「★関数 dropMaru を定義★」以下の部分のみを
書き換えるかたちで回答します。
◎ 例1
//------------------------------
//再生停止
stop();
//maru 押下時に関数 dragMaru を実行
maru.addEventListener(MouseEvent.MOUSE_DOWN,dragMaru);
//関数 dragMaru を定義
function dragMaru(e:MouseEvent):void {
//maru をドラッグ開始
maru.startDrag();
//マウスアップ時に dropMaru を実行
stage.addEventListener(MouseEvent.MOUSE_UP,dropMaru);
}
//★関数 dropMaru を定義★
function dropMaru(e:MouseEvent):void {
//maru をドラッグ終了
maru.stopDrag();
//マウスアップ時に実行する dropMaru を解除
stage.removeEventListener(MouseEvent.MOUSE_UP,dropMaru);
//
//もし maru の(基準点の)座標が sikaku の座標の ±10 以内であれば
if (maru.x <= sikaku.x + 10 && maru.x >= sikaku.x - 10) {
if (maru.y <= sikaku.y + 10 && maru.y >= sikaku.y - 10) {
//maru 押下時に実行する関数 dragMaru を解除
maru.removeEventListener(MouseEvent.MOUSE_DOWN,dragMaru);
//フレーム29 で再生停止
gotoAndStop(29);
}
}
}
//------------------------------
◎ 例2
//------------------------------
//~以上は 例1 と同じ~
//★関数 dropMaru を定義★
function dropMaru(e:MouseEvent):void {
//maru をドラッグ終了
maru.stopDrag();
//マウスアップ時に実行する dropMaru を解除
stage.removeEventListener(MouseEvent.MOUSE_UP,dropMaru);
//
//もし maru をドロップしたときのマウスの直下に sikaku があれば
if (maru.dropTarget != null && maru.dropTarget.parent == sikaku) {
//maru 押下時に実行する関数 dragMaru を解除
maru.removeEventListener(MouseEvent.MOUSE_DOWN,dragMaru);
//フレーム29 で再生停止
gotoAndStop(29);
}
}
//------------------------------
◎ 例3
//------------------------------
//~以上は 例1 と同じ~
//★関数 dropMaru を定義★
function dropMaru(e:MouseEvent):void {
//maru をドラッグ終了
maru.stopDrag();
//マウスアップ時に実行する dropMaru を解除
stage.removeEventListener(MouseEvent.MOUSE_UP,dropMaru);
//
//もし maru の矩形エリアと sikaku の矩形エリアがヒットしていれば
if (maru.hitTestObject(sikaku)) {
//maru 押下時に実行する関数 dragMaru を解除
maru.removeEventListener(MouseEvent.MOUSE_DOWN,dragMaru);
//フレーム29 で再生停止
gotoAndStop(29);
}
}
//------------------------------
◎ 例4
//------------------------------
//~以上は 例1 と同じ~
//★関数 dropMaru を定義★
function dropMaru(e:MouseEvent):void {
//maru をドラッグ終了
maru.stopDrag();
//マウスアップ時に実行する dropMaru を解除
stage.removeEventListener(MouseEvent.MOUSE_UP,dropMaru);
//
//もし sikaku が maru の(基準点の)座標とヒットしていれば
if (sikaku.hitTestPoint(maru.x,maru.y,true)) {
//maru 押下時に実行する関数 dragMaru を解除
maru.removeEventListener(MouseEvent.MOUSE_DOWN,dragMaru);
//フレーム29 で再生停止
gotoAndStop(29);
}
}
//------------------------------
まだまだ『「ドロップ」が指す状態』は考えられますが,
字数制限もあるためこの辺で。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 動画をディスク作成すると画像が乱れる。 4 2022/06/24 07:49
- Illustrator(イラストレーター) 添付画像の帽子マーク~Tは、既成のフォントに類似フォントがありますでしょうか 1 2022/08/17 20:51
- LANケーブル・USBケーブル リンクケーブルが機能してない? 2 2022/06/24 11:38
- Excel(エクセル) Excel ヘルプの[ロック解除]、<c0>、</c0> の意味は何ですか? 1 2023/02/20 16:58
- Photoshop(フォトショップ) 【Photoshop】画像拡大時に急激に画面外まで拡大してしまうのを制御したい 1 2023/08/25 03:04
- JavaScript スマホ上で、左右スワイプで次のページに移動させたいです 2 2022/11/11 17:04
- Excel(エクセル) エクセルのワークシートを簡単に別ファイルにする方法は? 5 2023/01/11 14:50
- WordPress(ワードプレス) Wordpress 複数プラグインの不具合? 1 2022/10/09 21:52
- C言語・C++・C# 【C++】IDirect3DSurfaceのディープコピーは可能ですか? 1 2022/07/06 02:47
- その他(SNS・コミュニケーションサービス) 大至急お助け下さい。マストドンの或るインスタンスに登録したいのですが、ユーザー名で半角英数とアンダー 1 2023/08/25 10:33
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
illustratorの効果の取り消し方法
-
Illustratorで効果を解除するに...
-
イラストレーターでドロップシ...
-
イラストレータでドロップシャ...
-
Power Directorを使った動画編...
-
illustratorで、グループを解除...
-
モンストのメンテが始まったと...
-
炎の魔剣士
-
皆さんが考える初心者卒業ライ...
-
闘技場
-
写真にある通りに進化させたい...
-
入手ダンジョン
-
魔法石配布がない理由。
-
これはなぜ進化できないのです...
-
クエストについて
-
マヘラとマウス
-
後1ヶ月!!
-
闘技場3のレーダードラゴン
-
パズドラについての質問です! ...
-
覚醒バステトの究極進化素材
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
illustratorの効果の取り消し方法
-
イラストレーターでドロップシ...
-
Illustratorで効果を解除するに...
-
illustratorで、グループを解除...
-
Power Directorを使った動画編...
-
イラストレータでドロップシャ...
-
InDesignのドロップシャドウに...
-
Photshop Elementsへのドラッグ...
-
ドロップキャップ
-
indesign のドロップシャドウっ...
-
CDを焼く時に、曲順が変わって...
-
Aviutlの編集中に途中画像の長...
-
B's Recorder GOLD7でISOファイ...
-
illustrator CS3でドロップシャ...
-
FFFTPを使ってサーバーのファイ...
-
ドロップシャドーの影の変更(P...
-
PHOTOSHOP7のドロップシャドウ...
-
ウォークマン、x-アプリに動画...
-
バドミントン シングルスについて
-
イラレCS3でのドロップシャドウ...
おすすめ情報