ActionScript 物凄い勢いで誰かが質問に答えるスレ

このエントリーをはてなブックマークに追加
918ムズカイイ:04/03/10 13:54 ID:e4eCkgCX
919ムズカイイ:04/03/10 14:01 ID:e4eCkgCX
教えてください。A,B,Cとボタンがあって、ボタンを押すとダウンイメージのままで
ほかのボタンが押されたらアップイメージに切り替わるようにしたいのですが
どうするのかわかりません。
フレーム移動で移動先のシンボルを変えればいいのかもしれませんが
スクリプトでできないのでしょうか?
初心者でスクリプトのこともあまりよくわかっていませんが
よかったら教えてください。お願いします。
920Now_loading...774KB:04/03/10 14:05 ID:???
[A][B][C]とボタンがあって
Aを押すと(Aを放しても)
[a][B][C]になって
さらにBを押すと(Bを放しても)
[A][b][C]になるってことか

いろいろ必要なので
ちょっと勉強してから作ってください

921Now_loading...774KB:04/03/10 14:34 ID:???
>>919
マルチ氏ね
922Now_loading...774KB:04/03/10 19:18 ID:eKpuCRTR
質問です。
オブジェクトを回転させるボタンを作りたいのですが
本に出ているのはたいてい
ひとつのボタンにひとつのオブジェクトを対応させていますよね。

私はボタンひとつ、オブジェクト数個で
クリックしたオブジェクトが回転するようにしたいんです。
クリックしたオブジェクトをメインターゲットにするにはどうすればいいですか?

また
そういう場合ボタンおよびオブジェクトには
どのようなスクリプトをつければいいのでしょうか?
よろしくお願いします。
923Now_loading...774KB:04/03/10 19:19 ID:eKpuCRTR

わかりにくい文章ですいません。
924Now_loading...774KB:04/03/10 19:25 ID:???
>>922
一度オブジェクトをクリックし、その後ボタンを押したらそいつが回るってこと?
なら空のMCを常にマウス追尾させて、オブジェクトクリックした時に
特定のMC(回すためのボタン)じゃなければ_droptargetを空のMCに記憶。
特定のMC(回すためのボタン)であれば記憶されたtargetを回転させればよろし
925Now_loading...774KB:04/03/10 19:25 ID:???
>>922
う〜む、よくわからんなぁ。つまりこういうこと?
@Objectをいくつか配置する
A回転させたいObjectをクリックする(回転させるものを選ぶ)
Bその後にボタンを押すと、選択したObjectのみが回転する
926Now_loading...774KB:04/03/10 19:26 ID:???

わかりにくい回答ですいません。
927Now_loading...774KB:04/03/10 19:26 ID:???
お、かぶった。
928Now_loading...774KB:04/03/10 19:26 ID:???
>>925氏、ごめん。
929Now_loading...774KB:04/03/10 19:44 ID:???
クリックでフラグ立ててボタンはifで場合分けとかは?
俺はこんな力業しか思いつかんかった
930Now_loading...774KB:04/03/10 20:01 ID:???
922はクリックしたら回転するMCを
複数配置したいって言ってるだけじゃ?
931Now_loading...774KB:04/03/10 20:09 ID:???
>>922
わかりにくいから書き直して。
特にやりたい動作の順序。>>922の書き方だと
ボタンはいらなくなる。(オブジェクトをクリックとかいってるから)
932Now_loading...774KB:04/03/10 20:36 ID:???
[_rootかどこか]
state = new Object();
state.turn = new Array[] //配列番号:オブジェクトのid , セット内容 true|false

state.turnの値をチェンジする関数を用意する。turnSwitch()とか。

[各オブジェクト]
this.state = new Object();
this.state = _root.state; //本当はゲッター、セッターでやった方がいいでしょうね。

これでthis.state.turn[this.id]が回転状態

this.onPress = function() { _root.turnSwitch(this.id);とか }
回転状態をチェックして回るスクリプトを用意する。

はしょりましたけど、こんな感じじゃないですか。
933Now_loading...774KB:04/03/10 20:38 ID:???
あ、new Array()でした。
934春厨:04/03/10 20:40 ID:???
自由落下を行うスプリクトを教えてください。
935Now_loading...774KB:04/03/10 20:44 ID:???
>>934
擬似なら
this._y += (m-this._y)/k;
系かな。漸化式なのであくまで擬似
ちゃんとやるなら加速度使って絶対的に代入

>>932
this.onPressは一つのMCのみに存在するって質問じゃないのかな?
936Now_loading...774KB:04/03/10 20:46 ID:???
間違った。
this._y += k/(m-this._y);
初速度無しの自由落下ならこっちか。
937934:04/03/10 20:59 ID:???
>934-935
即レスありがとうございます。
938Now_loading...774KB:04/03/10 21:04 ID:???
>>935
・・そうでした

[スイッチになるオジェクト]
this.onPress = function() { _root.turnSwitch();とか }
回転状態をチェックして回るスクリプトを用意する。

て感じでしょうか。
939Now_loading...774KB:04/03/10 21:06 ID:???
ギャー、また違ってる。
すみません

[スイッチになるオジェクト]
this.onPress = function() { _root.turnSwitch();とか }

[ 回るオブジェクト ]
回転状態をチェックして回るスクリプトを用意する。

940Now_loading...774KB:04/03/10 21:16 ID:???
>>938
質問者がどこまでしたいのかわからないけど(っていうか話題が先行してる気がするけどw)
例えば何かしら(mc_A)回転させてて他のMC(mc_b)クリックしたとき

1:mc_Aを停止させてスイッチのスタンバイ状態
2:mc_Aは回転したままスイッチのスタンバイ状態(スイッチ押せばmc_A回転したままmc_Bも回転)
3:mc_Aは回転したままスイッチのスタンバイ状態(スイッチ押せばmc_Aは停止し、mc_Bは回転)
4:mc_Aは回転したまま。mc_B回転しだす
etc..
場合によりけり効率いい&&見やすいコードは変わってくると思うよ
1ならMCごとにトリガー用意になるだろうし
2ならスイッチにトリガー用意、など。

>>932だとは外部にトリガーになるもの用意し、MC自身がトリガーになってるでしょ。
質問者の意図がつかめない限り最適と思われるものは(ry

メモリ云々まで言い出すようなら>>929あたりが最適だろうけどw
941Now_loading...774KB:04/03/10 21:18 ID:???

わかりにくい文章ですいません。
942Now_loading...774KB:04/03/10 21:20 ID:iv0bV7k0
改めて読み直すと本当にわかりにくいですよね・・・すいません。
ボタンは1回押したら15度回転するボタンです。
オブジェクトが複数あって、
回転させたいオブジェクトをクリックして選び
その後ボタンを押すと15度まわるような。

う〜ん
部屋の模様替えをイメージしています。
上から部屋を見て、外側においてある家具をドラッグして入れて
好きな角度(例:15度単位)に回転できるような感じなんです。
一個一個家具にボタンつけて回転させるやりかたはわかりますが
ボタンが大量になるのでそれは避けたいんです・・・
943Now_loading...774KB:04/03/10 21:26 ID:???
>>942
/* アクティブに見せるために */
オブジェクトのMCを2フレームにし、stop()かけとく
2フレーム目にはちょっと色を変えた家具
リリースされたら2フレーム目で止めるようにする。
この場合MC自身に判定(リリースの監視)&&動作させちゃだめ
できれば外部で監視、自身に動作させるか外部に自身を動作させる

またアクティブになると同時にそのターゲットを取得しておけばいい
944Now_loading...774KB:04/03/10 21:26 ID:nB8819R5
それでもいきていこうのスレってどこにあんの?
945Now_loading...774KB:04/03/10 21:31 ID:???
946Now_loading...774KB:04/03/10 21:36 ID:???
>>943
ターゲットが1つなら、それがいいでしょうな。
947Now_loading...774KB:04/03/10 21:41 ID:???
>>946
複数でもいけますよ
948Now_loading...774KB:04/03/10 22:08 ID:???
_rootとかにクリックした家具の名前を管理する変数などを用意。
taisyo="";

家具にはクリックされたときに、名前を変数「taisyo」に渡す。
on(release){
_root.taisyo=this._name;
}

回転させるボタンは、変数「taisyo」を参照して、特定の家具を回転させる。

on(release){
_root[_root.taisyo]._rotation=+15;
}

一案。
949Now_loading...774KB:04/03/10 22:23 ID:???
>>963が次スレ立ててください
950Now_loading...774KB:04/03/10 22:24 ID:???
三平方の定理を使って、マウスの位置に対応して、MCを拡大したり縮小したりしようと思って
this.onEnterFrame = function() {
_yscale = _xscale = Math.sqrt(Math.pow(_xmouse,2)+Math.pow(_ymouse,2))
}
って書いてみたら、なんと言うか、分身するというか。
大きい数値と小さい数値が交互に出るというか。
何故でしょうか?
951Now_loading...774KB:04/03/10 22:32 ID:???
>>942
>>924氏の案が数が増えたときの管理が楽かな
エディタに貼り付けて整形して

//tmp_mc  :判定用MC
//tmp_mc._b :登録したいボタン。下の例では_root.b1
//tmp_mc._t :回転させるMC
tmp_mc = createEmptyMovieClip("tmp_mc", 100);
tmp_mc._b = _root.b1;
tmp_mc.onMouseDown = function() {this.startDrag(true);};
tmp_mc.onMouseUp = function() {
var z = eval(this._droptarget);var _t = this._t;var _b = this._b;
if (_t && z == _b) {
_t._rotation += 15;trace(_t+"を回転しました");
} else if (z && z != _b) {
this._t = z;trace(z+"を登録しました");
//ここに目印用のmcを移動させる処理
}
stopDrag();
};

通常のボタンではターゲットパスを判断するのが面倒なので
ボタンはムービークリップにonハンドラを書いたものを使用

どのMCが選択状態かを視覚的に表すには、矢印のMCを別に用意して
指し示すのが楽かな。選択変更時のアニメーションも付けやすいし
952Now_loading...774KB:04/03/10 22:36 ID:???
>>943の案での再現
ttp://namihei.zone.ne.jp/upup/up/8232.lzh
赤い半透明のMCを完全にアルファ0にすれば( ゚д゚)ウマーかな
953Now_loading...774KB:04/03/10 22:48 ID:???
なんか難しいことやってないか?
>>948
が一番楽かと。
954Now_loading...774KB:04/03/10 23:10 ID:???
>>953
クリックした時選択したように見えるようにするのが厄介かと
955Now_loading...774KB:04/03/10 23:11 ID:iv0bV7k0
943さん、948さん、951さん
その他、最初のわかりにくい質問に対して答えてくれた皆さん
明日さっそくやってみます。
どうもありがとうございました。
956Now_loading...774KB:04/03/10 23:19 ID:???
とうとう、このスレも950を越えたか…
957Now_loading...774KB:04/03/10 23:42 ID:???
次スレ立てるの?
958Now_loading...774KB:04/03/10 23:51 ID:???
949 :Now_loading...774KB :04/03/10 22:23 ID:???
>>963が次スレ立ててください
959Now_loading...774KB:04/03/11 00:02 ID:???
>>960あたりでインジャネ?
↓よろしく
960Now_loading...774KB:04/03/11 00:52 ID:???
>>1 だけだとなんだから、次スレたてて続けるなら
ちょっとテンプレ考えませんか。

まず最低限ヘルプ読んでググってから質問しろ、とか。
961Now_loading...774KB:04/03/11 01:13 ID:???
このスレの反省点ってなんだろう。
それがつかめればテンプレはおのずと、ですね。
最低限さえ調べない質問は物質へ誘導、だとすれば
やっぱ最低限調べろ、のスタンスがいいですね。
962Now_loading...774KB:04/03/11 02:07 ID:???
AS関連の学習サイトのリンクがほすぃ
あとググる以前のプログラムに関する質問も
うまく2-10で捌けるといいんだがー。
963Now_loading...774KB:04/03/11 04:21 ID:???
どなたか、リヴリーコマンダーを作ってくれる方、いませんか?
本体とデコンパイルしたASはあります。が、当方無知な為、何度か
頑張ったんですが、全く作れませんでした。有料でも構いません。
(5千円〜1万程度で)flaが手に入りさえすれば、その後の改造は
自分でしたいと思っております。相談に乗ってくれる方がいまし
たら、[email protected]までご連絡ください。
964Now_loading...774KB:04/03/11 11:27 ID:mUYjNpLY
優良参考図書なんかどうでしょうか。
965Now_loading...774KB:04/03/11 15:20 ID:jFjAyqDo
load movieで読み込んだswfの中にまた、load movieでswfを読み込ませてるんですけど
なぜか読み込んだswfの動作が非常に遅くなります。
これはなぜでしょうか?
966Now_loading...774KB:04/03/11 15:27 ID:???
>>965
フレームレートは全部同じ?
967Now_loading...774KB
同じです。
41で作りました。