ActionScript 誰かが物凄い勢いで解答するスレ 5
1 :
Now_loading...774KB :
04/12/16 20:25:58 ID:/RK3AcLp
3 :
前スレ993 :04/12/16 22:35:47 ID:enHoK2pB
1の方、乙かれさまでした。 早速で申し訳ないのですが、教えてください・・・ 前スレ993では、何だかワケのわからない書き方をしてしまってすいませんでした。 教えていただきたいことって言うのが、 CGI中のIFから出力される1、もしくは0の結果をFlashに渡して、 表示されるフレームを変えたいのですが、 Flash→CGI→HTMLなら上手く動くのですが、Flash→CGI→Flashだと、 どうしてもifで指定してるフレームではなく、elseで指定したフレームのみが表示されてしまいます。 教えて頂けないでしょうか、よろしくお願いします。 ・・・さりげに3get
おまえその文章で俺らが解決策ひらめいたら神か何かだって。 どう書いてるのかも環境も何もわかんないじゃないか。
5 :
d :04/12/16 22:52:54 ID:BV8d1Z/7
asdfa/asdfasdf
6 :
3 :04/12/17 10:42:27 ID:72b/Wytt
わけの分からない書き方で、失礼しました。 ボタンに下記のActionScriptを書いているんですが、どうしても elseに指示している、フレームしか表示されません。 環境はFlashMX WinXPです。 on(release){ System.usecodepage = true; //--送信用LoadVars mySendVars = new LoadVars(); mySendVars.id = id; mySendVars.pass = pass; //--受信用LoadVarsオブジェクトの作成 myLoadVars = new Loadvars(); myLoadVars.onLoad = function(success) { login = myLoadVars.logIN; if (login == "0") { gotoAndStop("in") }else{ gotoAndStop("out") } }; mySendVars.sendAndLoad("check.cgi",myLoadVars,"POST"); }
7 :
Now_loading...774KB :04/12/17 10:53:35 ID:e+OBSI6V
プリローダーを作っています。 1フレーム目に以下のASを記述しています。 _root.onEnterFrame = function() { if (_totalframes == _framesloaded) { play(); } total = _root.getBytesTotal(); loaded = _root.getBytesLoaded(); percent = Math.floor(loaded/total*100)+"%"; time = Math.floor(getTimer()/1000); _root.bar_mc.xscale = percent; updateAfterEvent(); } stop(); ステージに配置したbar_mcが、 読み込んだpercentを反映して伸びていくという 簡単なASなんですが、うまくbar_mcが伸びてくれません。 ちなみに数字の部分は変わっていくので percentの部分が動いていない訳ではないようです。 どなたか解決法分かる方お願いします。
8 :
Now_loading...774KB :04/12/17 11:46:37 ID:RUdkbNiU
ちょっと質問します^^; ifをつかったスクリプトで、条件式で外部テキストの変数を読み込んでだら gotoAndPlayでフレームに飛ばすことは可能でしょうか? よろしくおねがいしま〜す。
>3 前スレにほぼ同じスクリプトで 同内容の質問したものがいるのだが どういうこったね。 とりあえず trace( login ); せよ。
>7 ぱっと見た感じ percentの最後に"%"がいらないのと、 xscaleにアンダーバーがない
>8 >6を参照
12 :
11 :04/12/17 12:27:38 ID:APPgqHUa
アンカーミス >9 >6を参照
ありゃ、アンカー間違ってなかった... スレ汚し失礼。
15 :
7 :04/12/17 14:04:16 ID:e+OBSI6V
>10 ありがとうございます。 _xscaleに訂正していろいろ修正したら動くようになりました。 いろいろというのが実はインスタンス名がきちんと付いてなかったというのは内緒ですが。
16 :
Now_loading...774KB :04/12/17 18:15:40 ID:ju/79wYF
MXでコンポーネントを扱う時に使った、Change Handlerは2004になって何処へ行ってしまったのでしょうか。 もしくは何を代用とすればいいのでしょうか。
フレームレートを変更するにはどうすればいいんでしょうか。
>>17 フレームレートは変更できないけど…
setIntervalでnextFrameとか…
携帯からの書き込みなもんだから詳しくはムリポ('A`)
19 :
Now_loading...774KB :04/12/18 18:01:12 ID:tisuwqBu
duplicateMovieClipでマウスの後をつける残像カーソルを作っているのですが、 このカーソル部分を下の写真のマスクでできないものかと考えております。 (下絵が50%くらいの透明度でマウスをあてた部分だけ100%になるという感じ) カーソルの残像はできるのですが、マスクの画像が動きません。 マスクの部分の座標が取れていないためだとは思うのですが、アドバイス下されば幸いです。 onClipEvent (load) { if (_name == "musk") { maxNum = 5; for (num=0; num<maxNum; num++) { this.duplicateMovieClip("copy"+num, 100-num); _parent["copy"+num].myNum = num; _parent["copy"+num]._alpha = 100*(maxNum-num)/maxNum; } _visible = false; } } onClipEvent (enterFrame) { if (_name != "musk") { oldX = _x; oldY = _y; if (myNum == 0) { this._x = _parent._xmouse; this._y = _parent._ymouse; } else { this._x = _parent["copy"+(myNum-1)].oldX; this._y = _parent["copy"+(myNum-1)].oldY; } } }
20 :
Now_loading...774KB :04/12/18 20:29:59 ID:FSpdWwWf
外部テキストにリンクを貼りたいのですが どのようにすればいいのでしょうか
21 :
Now_loading...774KB :04/12/19 06:56:48 ID:4A6h9nsR
前スレで質問したものです。 ライブラリに別のswfを読み込んで再生する方法が分かりません。 読み込むとグラフィックに変換されてattatchやload等が使用できなくなります。 お願いします。
22 :
16 :04/12/19 09:30:07 ID:HnkfPVv7
>MXでコンポーネントを扱う時に使った、Change Handlerは2004になって何処へ行ってしまったのでしょうか。 >もしくは何を代用とすればいいのでしょうか。 という質問をした者です。どうやら答えていただけそうにないので質問を取り下げさせていただきます。 お手数おかけしました。
最近このスレ回答者が少ない希ガス
もともと回答者は2・3人。 それが一時的に0になることくらいありえる話しだよ
おれは相対的回答者だ。
26 :
Now_loading...774KB :04/12/20 18:49:31 ID:LFidaQ3V
解答してくれるような人は今の時期忙しいんだよ!
かわりにオレが、このオレ様が解凍してやる
>>19 ルート上に配置すればちゃんと動く MC(?)にしていて動かないのは
ターゲットの指定ミス
>>20 お前の言っている事はサパーリワカラン
>>21 お前もだ 説明がタリン
>>22 オレ様がFlashを始めた時にはすでにMXが売っていなかった
なのでワカラン これは申し訳ない
解凍終了! 満足したか? よーするにお前ら説明下手って事だ
Flaの前に日本語勉強汁!
>>20 ダイナミックテキストにHTMLのチェックを入れて、
外部テキスト側にHTMLでURLを入れる。
>>21 ライブラリに読み込む方法は無理だが、MCには可能だと思う。
もしくは俺の勘違いか、日本語読み違えかしらんが、
マクロメディアフラッシュではswfを読み込むことは不可能。
フラッシュメーカーもしくは、フラッシュクリエイターを参照しる。
なるほど、外部テキストにリンクを張るとは、そういう意味だったのか。 てっきりクリックすると外部テキストを表示するとかそういう意味かた思ってた。
Yamzbrowserの解析してる人っているかい?
30 :
Now_loading...774KB :04/12/21 01:45:12 ID:mG5+RAR8
>>27 ありがd
外部テキストHTMLでしてみます。
31 :
Now_loading...774KB :04/12/21 19:21:37 ID:TEDi60D/
すみません、教えてくださいm(_ _)m MX2004を使ってます。 たとえば、値”0.00000123456”を”1.23456E-06”と表示させるにはどのようにすればいいんでしょうか。 よろしくお願いします。
33 :
31 :04/12/21 20:22:07 ID:TEDi60D/
>32 「指数表示させたい」という事です。 たしか、小数点以下15桁を超えると指数表記されると聞いたことあるのですが。 小数点以下15桁以内でも指数表示させたいのです。 これで詳しい説明になってるかどうかわかりませんが、よろしくお願いします。
10倍づつしていき、回数をカウント。 1を超えたら、カウントした数をくっつけてはいかが? num = 0.000000123 while(true){ num *= 10; hoge ++; if(num >= 1){ if(hoge < 10){ hoge = "0"+hoge; } trace(num + "E-"+ hoge); break; } }
35 :
31 :04/12/21 21:05:27 ID:TEDi60D/
>34 ヘルプありがとうございます。 早速試してみます。
36 :
Now_loading...774KB :04/12/21 22:49:48 ID:Vevcz0+D
hugflashでhtmlファイルのmp3をてにいれることはできますか?
ムリ
38 :
Now_loading...774KB :04/12/21 22:55:53 ID:Vevcz0+D
ぉおっと、ショック。 諦めます・・・・
eval( "_root.clip1" ).getDepth(); と、 _root.clip1.getDepth(); の違いって何なんでしょうか? とあるサイトのサンプルで前者の方で記述されていたのですが、 後者でも動きとしては同じですね? 何故わざわざeval()を使っているのでしょうか?
>39 作った人のミスでしょう。 eval( "_root.clip" + num ).getDepth(); とかなら意味はありますけれどもね。
41 :
39 :04/12/21 23:55:34 ID:xmA5pvaV
>>40 自分もミスかな〜と思いつつもひょっとしたら
何か意図があるのかも、と色々と考えてしまいました。
ありがとう御座いました。
42 :
Now_loading...774KB :04/12/22 18:36:26 ID:oh35e2aA
複数のボタンのどれかを押した後に、ある一定のアニメ(ってかトゥイーン)が終わるまでの フレームを再生して、その後に、押したボタンに応じて別のフレームに飛ばしたいんですけど、 どういったASを書いたら良いかがイマイチわかりません。 どなたか、教えて頂けませんか?
まず、stop(); ボタン押したら、 on(press){ play(); hoge=100;//飛ばすフレーム } フェードなどの目的のアニメが終わったら gotoAndPlay(hoge);
44 :
Now_loading...774KB :04/12/22 18:53:44 ID:hCwivU5X
乱数を発生させて、その乱数に応じたボタンを表示する方法を教えてください。 ボタンはシンボルで作成済みで、50種類あるそのボタンから、ランダムで5つ表示したいんです。 そこで、0〜49の範囲で乱数を5つ発生させて、その乱数が1なら画像1を、乱数が2なら画像2を・・・ってかんじで表示したいんですが・・・ 乱数を作ることは出来るんですが、乱数とボタンとを結びつけて表示する方法が分かりません! 作り方が分かる方いらっしゃいませんか??
>>44 ヘルプのMovieClip.attachMovie()を読むよろし
>>43 ありがとうございました!!出来たみたいです。
47 :
Now_loading...774KB :04/12/22 21:50:55 ID:16vG4v3I
<pre> test test </pre>
48 :
pre厨 :04/12/22 22:08:10 ID:16vG4v3I
すみません…。 質問していいですか? あ、いいですか、ありがとうございます。 <質問> クラスにプロパティとして存在しているXMLオブジェクトの loadメソッドは使えないのでしょうか。 クラスの中でXMLオブジェクトをnewして、 ファイル名を引数にしてload()を実行後、 trace( <XMLオブジェクト>.toString() ); というコードを実行しても ”undefined” と表示されるだけなのです。 どなたかご教授よろしくお願いいたしますm(_ _)m ※FLASH MX 2004 Professionalを使用
「 ̄ `ヽ、 ______ L -‐ '´  ̄ `ヽ- 、 〉 / ヽ\ / // / / ヽヽ ヽ〈 ヽ、レ! { ム-t ハ li 、 i i }ト、 ハN | lヽ八l ヽjハVヽ、i j/ l ! /ハ. l ヽk== , r= 、ノルl lL」 ヽN、ハ l ┌‐┐ ゙l ノl l ヽトjヽ、 ヽ_ノ ノ//レ′ r777777777tノ` ー r ´フ/′ j´ニゝ l|ヽ _/`\ 〈 ‐ 知ってるが lト、 / 〃ゝ、 〈、ネ.. .lF V=="/ イl. ト |お前の態度が とニヽ二/ l ヽ.|l 〈ー- ! `ヽ. l |l気に入らない lトニ、_ノ ヾ、! |l__________l| \ ソ
50 :
pre厨 :04/12/22 23:09:19 ID:16vG4v3I
お願いしますよ…。
●できるだけコードも示す
>>48 > ”undefined”
> と表示されるだけなのです。
まぁそうなるだろうね。
ヘルプのXML.loadの項を読めば分かりそうなもんだけどね。
つーかXMLもろくすっぽ扱えないヤツが
Professionalなんぞ使って良いもんなのかね。
割れ物
通報しますた
55 :
Now_loading...774KB :04/12/23 02:55:13 ID:bdjhWYbc
絶対教えたくない、、
56 :
Now_loading...774KB :04/12/23 03:17:27 ID:yMJ67FiG
縁取り文字を簡単に作る方法ってないですかね?
レイヤー二枚用意する。 上のレイヤーに文字を書く。 下のレイヤーの同じ位置に文字をコピペ。 下のレイヤーの文字を分解(Ctrl+Bを二回)して上の縁取りと同じ色にする。 下の文字を塗りの拡張で大きくする。一度に拡張する範囲が大きいと失敗する。 うまくいかないときは投げ縄ツールで選択して拡張していく。 レイヤーをもう一つ用意して、拡張済みの文字をそっちにおくと便利。
×下のレイヤーの文字を分解(Ctrl+Bを二回)して上の縁取りと同じ色にする ○下のレイヤーの文字を分解(Ctrl+Bを二回)して縁取りにしたい色にする
59 :
Now_loading...774KB :04/12/24 03:55:06 ID:TNUWtL8o
評価が高いバイブルを読んで、勉強しているのですが、 プログレスバーの作成で、いまいちうまくいかず困っています。 _rootの第一フレームに以下のスクリプトを書き、 Loaded= _root.getBytesLoaded(); Total= _root.getBytesTotal(); if ( Loaded >= Total ) { _root.gotoAndPlay("main"); // 全て読み込んだら移動。 } else { parcent = Math.floor( Loaded / Total * 100 ); progressBar.setBar(parcent); //progressBar._xscale = parcent; // 直接、progressBarの_xscaleを操作 } MCであるprogressBarの第一フレームに以下のスクリプトを書きました。 function setBar(parcent) { this._xscale = parsent; } しかし、setBarメソッドが実行されません。 progressBarのsetBarメソッドを呼び出している行をコメントアウトし、 直接、progressBarの_xscaleを操作すると正常に動作します。 Flash MX/2004で試していますが両方とも同じです。 これは、MX以降で仕様が変わってのが原因でしょうか? それとも書き方がまずいのでしょうか?
function setBar(parcent) { this._xscale = parsent; parsent?
parsent ワラタ
62 :
59 :04/12/24 04:03:15 ID:TNUWtL8o
すいません。 parsentはtypoです。 実際のスクリプトでは、parcentとなっています。
>>62 まずは、setBarにtrace("setBar実行");とやってみて反応ないの?
p245の改造かな…
とりあえず、どこでループさせているの?
その書きかただと、一回しかifが実行されないよ。
64 :
59 :04/12/24 04:22:36 ID:TNUWtL8o
>>63 setBarメソッドに
trace("setBar実行");
をやってみましたが、何も出力されませんでした。
setBarメソッドが完全に無視されているのが、よく分かりません。
ループは、
_rootの第二フレームに、_root.gotoAndPlay(_currentframe-1);
第三フレーム(ラベル:main)に、メインの内容。
という感じです。
progressBarのタイプが グラフィックになっているとか? 漏れは寝るんで。詳しい人誰か助けてあげてください
66 :
59 :04/12/24 04:37:31 ID:TNUWtL8o
試しに、_rootの第一フレームに
progressBar.setBar = function(parcent) {
this._xscale = parcent;
trace("setBar実行");
}
とした場合も期待通りの動作をしました。(MXのスクリプトサンプル本を見よう見真似)
正直、さっぱり原因が分かりません…orz
>>63 書き忘れましたが、p245の改造です。
>>66 setBar関数をMCじゃなく_rootの第一フレームの
一番上(判定処理前)に記述してもダメ?
68 :
59 :04/12/24 10:15:58 ID:TNUWtL8o
>>67 _rootの第一フレームに、フレームアクションとして、
function setBar(parcent) {
progressBar._xscale = parcent;
}
を記述する。ということですよね。
そうすれば動作しますが、カプセル化が崩れてしまいます。
setBarメソッドを読み込んでない段階で、
setBarメソッドを呼び出していることが原因であることは間違いないと思いますが、
読み込みの順番が、バイブル(FLASH5)と微妙に違うようで混乱しています。
試しにMC(progressBar)を、さらにMCとし、
_rootのフレームに記述していたスクリプトを、
MC(progressBar)を含むMCに記述し直すことで、
MX 2004では、期待通りの動作をするようになりました。
(Playerは同じなのに、なぜかMXではダメ)
とりあえず、解決は解決なんですが、
解決した理由もいまいち分からず、気持ち悪いです。
明確なご指摘を頂けたら、とても嬉しいです。
合理的な理由は思いつかない。 バグだと思う。
71 :
Now_loading...774KB :04/12/24 12:01:47 ID:nBJ7eyvo
>>45 ヘルプ見たけどさっぱりです・・・
ライブラリにあるシンボル(ボタン)を指定した範囲に表示する命令ってどうするんですか?
リンケージの識別子も使うんでしょうか?
>59 traceを入れてバグチェックを行っていることもあることから ローカルでもテストを行っていることがわかる。 このことからローカルテスト時、 59のスクリプトではelseブロックでなく ifブロック内が実行されてしまって setBarメソッド自体が呼び出されていないのではと予想。 その他の原因は setBarメソッドが呼び出されない原因は、 第一フレームでMC(progressBar)がまだ読み込まれていないため。 これはduplicateMovieClipなどでMCを複製した後 同フレームでメソッドを呼び出すことができないことと同じ理由。 しかし複製直後でもMC内のプロパティを直に操作することは可能。 もちろん第一フレーム〜第二フレームでループすれば MC(progressBar)のメソッドは 二度目から呼び出し可能になる。 困ったときはバグじゃないかと思ってしまいがちですが 決め付けてはならねえですよ。
ライブラリのボタンのリンケージ識別子に1から連番を入れておく。 btn_num = 2;//ボタンの数 btn = Math.floor(Math.random() * btn_num) +1;//ボタンの数が最大値の乱数を生成 _root.attachMovie( btn, "rdm_button" ,1);//ステージにボタンを置く rdm_button._x = 300;//ボタンのX座標 rdm_button._y = 500;//ボタンのY座標
74 :
Now_loading...774KB :04/12/24 12:55:59 ID:qYUqgkvY
質問です。 SharedObjectを使ってgetLocalでローカルファイルに保存した 場合、どこの階層にsolファイルが作られるのでしょうか? ファイル検索しても該当するファイルを見つけきれません・・・ また、swfと同じディレクトリ内にsolファイルを作ることって できないでしょうか? FLASHで作ったコンテンツをプレイしたログを採取をしようとしているんで 同じディレクトリ内に合った方が何かと便利なんですが。 良ければ誰かご指導お願いします。OSはウィンドウズMEです。
>>74 隠しファイルを表示する設定にしてからシステムドライブを検索してください。
あ、.solファイルの場所の指定はできません。 サーバー上に吐くこともできません。 ログを取るならCGIに変数を送ってファイルを吐いてやりましょう。
77 :
59 :04/12/24 13:28:19 ID:TNUWtL8o
>>72 >このことからローカルテスト時、
ストリーミングでプレビューしてるので、elseブロックは実行されています。
traceでも確認済みです。
>もちろん第一フレーム〜第二フレームでループすれば
このようにループしていて、
MC(progressBar)のフレームアクション(function setBarが書かれているフレーム)も
呼び出されており(traceで確認)、つまりMC(progressBar)も読み込まれています。
しかし、なぜかsetBarだけ実行されないようです。
とりあえず、断言は出来ないもののバグの可能性が高そうなので、
Macromediaに直接確認してみることとします。
>>72 氏含む回答してくれた方、ありがとうございました。
>困ったときはバグじゃないかと思ってしまいがちですが 決め付けてはならねえですよ。 同意。 バグではなく知らないだけってことは多い。 フレームアクションはフレームが描画される前に実行されるんだったと思う。 配置したMC内の関数を呼び出せないのはそのせいでは?
>フレームアクションはフレームが描画される前に実行される その通りなんだけどさ、 >MC(progressBar)のフレームアクション(function setBarが書かれているフレーム)も >呼び出されており(traceで確認) フレームアクションは呼び出せて、同じフレームに定義した関数は呼び出せないってのも不思議だよな。
気になって実験してみたけど(MX2004)ちゃんとプログレスバーがのびるよ やはりどこかに間違いがあるのでは? 関数にした時に名前を間違ったとか、BarのMCが第1フレにしか置かれてないとか
>77 >MC(progressBar)のフレームアクション(function setBarが書かれているフレーム)も >呼び出されており(traceで確認)、つまりMC(progressBar)も読み込まれています。 >しかし、なぜかsetBarだけ実行されないようです。 72で書いたduplicateMovieClipの説明の通り フレームは呼び出されますが、メソッドは呼び出しできないのです。 一度目のsetBar()を実行する前に trace( setBar );を記述してみてくださいな。 Functionでなくundefinedが返ると思いますから。 バグちゃいますよ、仕様ですよ。
>BarのMCが第1フレにしか置かれてないとか この可能性高ですね。
83 :
59 :04/12/24 14:26:09 ID:TNUWtL8o
>>68 に記載した入れ子のMCにする方法ではなくても、
一度アンインストール→インストール後、
アップデータ(7.2)を適用したMX2004では動作しました。
色々やったので、アップデータを適用したのが原因か、単なる僕のミスかは分かりませんが、
入れ子のMCにしないと動作しないというのは訂正します。
>>80 正常にMX2004(アップデータ適用済)では動作するようになったファイルを
MXでプレビューすると失敗します。
これはバグではないかと思います。
会社MX、自宅MX2004なので、初心者にはちときつい状況です。(愚痴)
確かメイン以外に一台までならインストールしてもいいんですよね?
84 :
59 :04/12/24 14:29:05 ID:TNUWtL8o
しつこくてすいません。最後です。
>>81-82 今、MX2004で正常に動くようになったファイルを確認すると
BarのMCが第二フレにも置かれていましたので、
この可能性が高いのではないかと思います。
>>83 の通り、「入れ子のMCでないと動かない」というのは間違いでした。
すいませんです。
バグだバグだと言うなというのに… 一応つっこんでおくと このスクリプト以外に問題となる場合があると きちんど動作しないことがあるので。 59のスクリプトをマクロメディアに見せて MXでは動作しないが2004だと動作するのでバグです、 と言っても聞いてくれないですよ。
気を悪くしないでほしいんだが、初心者ほどすぐ「バグ」と言う傾向がある。 第一に、自分がどれほど知識がないのかということも知らない 第二に、責任を外部に転嫁する方が楽だから ではないかと思うが。 でもさ、Macromedia FLASHのような世界的にユーザーがいる製品なら 素人にもすぐ見つかるようなバグはとっくに見つかって報告されているか、 どこかで対処法が紹介されているか、さらにアップデータで解消されているだろ と考えるのが妥当じゃないのかなあ。 本を見ながらAS組んでるレベルなら、自分が知らない仕様やミスがあるかもしれない という可能性の方がはるかに大きいとは思わないのかな。
flaあぷしておけば速攻解決だった気が今更ながらした。
>>86 >素人にもすぐ見つかるようなバグはとっくに見つかって報告されているか、
>どこかで対処法が紹介されているか、さらにアップデータで解消されているだろ
> 83 名前:59 投稿日:04/12/24 14:26:09 ID:TNUWtL8o
>
>>68 に記載した入れ子のMCにする方法ではなくても、
> 一度アンインストール→インストール後、
> アップデータ(7.2)を適用したMX2004では動作しました。
アップデータで解消されているだろが。チラシの(ry
91 :
Now_loading...774KB :04/12/25 01:18:31 ID:VYvEd178
scriptでオブジェクトの深度を変更する方法はどうするんでしたっけ? クリックしたら、最前面にしたいのですが。
swapDepthsです。 でもちょっと扱いが難しいので その場合、2個のオブジェクトを作っておいて切り替えた方がいいかもしれない。 オブジェクトがいっぱいある場合とか動く場合はswapDepthsで。 あとはヘルプ見て。
93 :
Now_loading...774KB :04/12/25 16:29:51 ID:wWTrPhZk
質問です。 _rootに以下のコードを入力しても、trace("get"); してくれません。 外部ファイル ./foo.swf には、とくにスクリプトはありません。 this.createEmptyMovieClip("wall_mc", 1); this.wall_mc.onData = function(){ if (this.getBytesTotal()>0 && this.getBytesLoaded()>=this.getBytesTotal()) { trace("get"); } else { _root.stop(); } } this.wall_mc.loadMovie("./foo.swf"); 色々と試行錯誤してみたのですが、どうもcreateEmptyMovieClip で作ったmovieclipではイベントパンドラが効かないようなのですが、この辺に詳しい人がいたらご教授してくれたらと思います。 環境はFLASHMX WIN2Kです。
94 :
Now_loading...774KB :04/12/25 17:28:51 ID:XSv+nWlr
>>73 ボタンの配置を座標ではなく、ダイナミックテキストで範囲を指定していて、そこに表示したい場合はどうしたらいいんでしょうか?
そのテキストボックスのプロパティで指定する変数と、ボタンのリンケージ識別子との結び付け方が分かりません。
50枚の画像それぞれの識別子に順に0〜49までを指定して、”r”に乱数で0〜49までの値どれか一つを発生させた場合の、テキストボックスへの画像の表示の仕方を教えてもらえないでしょうか?
テキストボックスのプロパティ変数とかに入れる変数などは勝手に決めてもらっても結構ですので宜しくお願いします。
読み込み状況が何%と読込予想完了時間まで何秒 っていうかんじにはどうやったらできるんですか?
97 :
95 :04/12/26 16:59:54 ID:yKwKkdm7
>96 ありがとうございます。うまくいきました。
98 :
Now_loading...774KB :04/12/26 17:21:10 ID:6cT2F9RB
80M ほどの外部swfファイルを読み込むときに、 読み込み中のLoading表示をしたいのですが、 完全にロードし終わるまで、Flashが止まってしまいます。 MX2004で、下のようになっているます。 myListener.loadClip( "aaa.swf", myClip); // myClipは_level0 myListener.MovieSt.onLoadComplete = function (target_mc){ trace("load complete!! " +target_mc); }; myListener.MovieSt.onLoadProgress=function(target_mc,loadedBytes,totalBytes){ trace("loaded " +loadedBytes +"// total " +totalBytes); }; onLoadProgressで処理を入れたいのですが、ロードが終わってから 実行されるようです。 traceの出力を見ると、ロードし終わってから一斉に出力されます。 ちなみに、別の方法ですが、loadMovieでレベル1に読みこんでも、 やはり同じで、ロード中はFlashが停止してしまいます。 何か、根本的な間違いをしてるような気がするのですが、分かりません。 どなたか、教えてもらえないでしょうか。
80M....(゜д゜;)
何MBまでで停止すんの?
すいません。 onLoadProgressイベントは、ローカルでは発生しない問題がある ことを、今更ながら知りました。 onLoadProgressが発生しないので、traceが実行されなかったみたいです。 >99 はい。そうなんです… >100 load開始時に、すぐ停止していると思っていたのですが、 上のような理由で、トレースしてませんでした。 別の方法で試してみます。
102 :
Now_loading...774KB :04/12/26 20:02:10 ID:5+DGOuHZ
座標の指定以外に命令で画像の表示位置を変えることって出来ますか?
103 :
◆hb657T1piM :04/12/26 20:26:57 ID:30ufbB+u
104 :
pre厨 :04/12/26 20:47:50 ID:1o1NOf9a
こんなスレなくていいです
XMLのヘルプでも読んでろよ
106 :
Now_loading...774KB :04/12/26 21:09:44 ID:5+DGOuHZ
103>> 表示位置を変えるっていうより、画像を表示する場所を指定する命令ってないんでしょうか?
>106 表示する場所を指定する=座標で表示位置を指定する ですよ。 まず、自分の実際に行いたいことを書いてみて下さい。
画像をボタンにしたら下のscriptをコピペするとドラッグ出来るぞ on(press){ startDrag(this,false); } on(release){ stopDrag(); }
109 :
Now_loading...774KB :04/12/26 23:20:11 ID:5+DGOuHZ
107>> 分かりやすく言ってみればトランプのカードを配るようなかんじです。 50枚あるカード(ボタン)の中から5枚をランダムに選んで、ポーカーをする時のようにきれいに5枚並べたいんです。 で、単に並べるだけでなく、この位置にこのカードがきた時は○○をするっていうかんじにカードを置く位置にもそれぞれ命令がかけれるようにして、カードを配った後の動きも指定できるようにしたいんです。
小数の入った変数がありまふ。 小数をすべて切り捨てて、整数のみ取り出す方法を教えてくらはい。
111 :
110 :04/12/26 23:25:33 ID:bAIKSLir
FLASHMXです。
>>109 そんなの座標で指定しる。
その他にやりたいことはまた別の話。if文使いなさい。
>>110 Math.floor(変数名);
>>110 int(変数名);のほうが短い
>>109 ランダムに1から50までの数字を決めてもらうには int(Math.random()*50)+1 を変数に代入する
レスアンカーは 107>> ではなく
>>107 です
>>113 intは使用を避ける命令だから使うなよ。
短いって・・・
>>113 int() ハァ???
intのヘルプ見てみろよ。
int Player Flash Player 4。Flash 5 では、この関数の代わりに Math.round メソッドを使用してください。 シンタックス int(value) パラメータ value 整数に丸められる数値。 戻り値 なし。 説明 関数; 10 進数を最も近い整数値に変換します。 関連項目 Math.floor Math.floorと同じじゃん
616 名前:函館人 ◆hb657T1piM [] 投稿日:04/12/26 20:25:50 ID:30ufbB+u 切捨て int(a) 切上げ int(a+1) 四捨五入 int(a+.5) 初心者は無理してまで答えなくていい。
黙ってスルー汁
>>110 Math.floor() //小数点以下切り捨て
Math.round() //小数点以下を四捨五入
Math.ceil() //小数点以下を繰り上げ
()内に切り捨てたい数値入れてね。
//例 ==============
n = 2.6
trace( Math.floor(n) )
trace結果:2
//================
int()は古い型なので使用を避けるようにね。
120 :
110 :04/12/26 23:53:57 ID:bAIKSLir
Math.使いますありがとうございました。
ASに触れる前にもう少し古い言語 使ってた俺が間違ってました( ゚Д゚) ケッ!
616 名前:函館人 ◆hb657T1piM [] 投稿日:04/12/26(日) 20:25:50 ID:30ufbB+u 切捨て int(a) 切上げ int(a+1) 四捨五入 int(a+.5) ↑どんな言語か是非教えろ
>>121 煽ってる訳じゃないから怒らないで。
Mathで統一されたからこっちを使おうねってくらい。
昔からやってるとついそのまま使うのはわかるから。
自分もeval()をついつい使ってた時期あったし。。
俺もintがあんな動作する言語が何か知りたい。
evalはintとは違ってまだ使ってもいいんですよ。
NECの文豪JXに入ってる表計算の関数です
切捨て int(a) 切上げ int(a+1) 四捨五入 int(a+.5) その表計算の中では、int() はどういう定義なんだ? ただ整数化するわけじゃないよな?いや煽ってるわけじゃなくて、非常に興味深いんだ。
仮にaが1だっったら、 int(a) //1 int(a+1) //2 int(a+.5) //6 となるところが、 int(a) //1 int(a+1) //1 int(a+.5) //1 になるんだよね?くそ、文豪持ってないから確認できないぜ。
お? ひょっとして5ではなく.5に深い意味が・・・。
5でなく0.5ですね
いや、つーかね その言語それでなるとおもうよ、うんだけど なんであなたここにいるの? 技術スレにもさ、
↓質問ドゾー
●切捨て(INT) ・指定した桁で切り捨てた値を求める関数です。 ・指定するパラメータは2つで( )内にカンマ「,」で区切り、次のように指定します。 +INT(パラメータ1,パラメータ2) ・パラメータ1には、切り捨てたい数値、セル番号、計算式を指定し、 パラメータ2には、小数点位置を基点として整数部分を小数部分のどの桁数で切り捨てるのかの指定を行います。 ・小数部で切り捨てる場合は、「0」あるいは正の値を指定します。 例えば「1」と指定すると小数点以下第2位、「3」を指定すると、小数点以下第4位で切り捨てが行われます ・整数部で切り捨てる場合は、負の値を指定します。たとえば「-1」を指定すると1の位、 「-2」を指定すると、10の位で切り捨てが行われます ・パラメータ2を指定しない場合は、「0」を指定したことになり、小数点以下が切り捨てられます。 ■使用例 ・小数部で切り捨てる +INT(1234.5678,3)……小数点以下第4位で切り捨てが行われて、1234.567が求められます。 ・整数部で切り捨てる +INT(1234.5678,-2)……10の位で切り捨てが行われて、「1200」が求められます。
>>133 うーむ、その説明だと
int(a+1)
はどうやっても繰り上げにならんような気がする。
それとも整数の時は自動的に-1されるのか?
ところで、
↓質問ドゾー↓
flashMXでフレームを複数使わずに1フレームで10秒間待つ方法を教えてください。
>135 onEnterFrameで1フレーム内をループし getTimerで時間を測定
evalって使わないほうが良くなったの? 左辺に代入しちゃいけないだけだと思ったんだが。
138 :
Now_loading...774KB :04/12/27 01:13:40 ID:uF1ekw1V
>>73 >ライブラリのボタンのリンケージ識別子に1から連番を入れておく。
>btn_num = 2;//ボタンの数
>btn = Math.floor(Math.random() * btn_num) +1;//ボタンの数が最大値の乱数を生成
>_root.attachMovie( btn, "rdm_button" ,1);//ステージにボタンを置く
>rdm_button._x = 300;//ボタンのX座標
>rdm_button._y = 500;//ボタンのY座標
についてなんですが、これは乱数を発生させてその番号に対応する識別子のボタンを表示してるんですよね?
この命令の中で発生した乱数を入れてる変数はどれですか?
139 :
◆MMI5xmH9jw :04/12/27 01:22:37 ID:snx9TTyI
うん
>137 使わないほうがいいとは なってないですよ。 配列とごっちゃになり ソースが見難くなりそうな場合使用しています。 >138 btn
141 :
Now_loading...774KB :04/12/27 14:46:46 ID:Re0YXxf/
<環境> win2k、MX 質問よろしいでしょうか? フラッシュでメソッドを作るときに2通りのやり方がありますが その違いは何でしょうか?以下、そのやり方の違いです。 板違いならすいません。 /* メソッドA */ function testA( A ){ trace( A ); } /* メソッドB */ testB = function( B ){ trace( B ); }
俺も板違いかもなのですが・・ とりあえず環境はxpでMX2004使ってます。 最初のフレームでXML読み込んで、次に各ノードを変数に直してるのですが jumpURL = myXML.firstChild.firstChild.firstChild; color1 = myXML.firstChild.firstChild.nextSibling.firstChild.firstChild; url1 = myXML.firstChild.firstChild.nextSibling.firstChild.nextSibling.firstChild; stock1 = myXML.firstChild.firstChild.nextSibling.firstChild.nextSibling.nextSibling.firstChild; color2 = myXML.firstChild.firstChild.nextSibling.nextSibling.firstChild.firstChild; url2 = myXML.firstChild.firstChild.nextSibling.nextSibling.firstChild.nextSibling.firstChild; stock2 = myXML.firstChild.firstChild.nextSibling.nextSibling.firstChild.nextSibling.nextSibling.firstChild; ・・・みたいな感じで、いちいちfirstChildから追って書いているので凄い長くなっちゃってます。 たとえば相対的に参照するみたいなことってできないんですかね?
>141 どちらも変わらない。しかし、メソッドBで var testB = function(){} とした時は、この宣言が読み込まれるまで 呼び出すことができないので注意が必要。 >142 例えば path = myXML.firstChild.firstChild; jumpURL = path.firstChild; とかにすることが可能なので、 後はループやメソッド用いたりして工夫するとすっきりいくかも。
145 :
141 :04/12/27 16:12:10 ID:Re0YXxf/
>143 なるほど!ありがとうございました〜。
146 :
135 :04/12/27 16:21:59 ID:hGy/T3xn
>>136 ループはwhileとかfor文でですか?
>135 this.onEnterFrame = function(){ 行わせたい処理 } こうすると 1フレーム内で行わせたい処理がループして実行されます。 ここにgetTimer等を使用し10秒経過したかどうかを測る。
>>135 stop();
this.onEnterFrame = function() {
if (getTimer()>=10000) play();
};
>148 それだとswf実行から10秒経過しか計れないし 10秒経過後 次のフレームに移動するかどうかは 135は何も言っていないし、 10秒経過後 delete this.onEnterFrame も実行しないと。 最後のセミコロンもfunctionブロックなので不要ですね。
質問です テキスト入力で相手に書かせたいのですが on (release) { if (ans=="HANKAKU") { gotoAndPlay(20); } else{ gotoAndPlay(10); } } テキスト入力の場所を強制的に半角大文字で書きたいのですが 他の言語ではuppercaseというらしいでが・・・・・ どうすればよいのでしょうか
>>150 テキスト入力を半角大文字のみ打てるようにするには
テキストフィールドを選択したらプロパティのパネルを見る
右下の方に文字て書いてるボタンがあるのでクリック
文字オプションが出てくる
次の文字のみ をクリック 大文字にチェックを入れる
153 :
135 :04/12/27 18:38:02 ID:hGy/T3xn
>>147-149 うーん、むずかしいですね。がんばってみます。
どうもありがとうございました。
>152 あれれ、本来はあったほうがいいのですか?セミコロン。 省くのはまずい表現だったのかな。
>>154 わからない時はオートインデントしてみるんだ。
オートインデントではなく自動フォーマットです オートインデントはタブを入力して改行した後も タブによるインデントが行われる状態です
おまえはとりあえずそのトリップが目障りだから外しなさい。
そうか、ごめんな間違えたよ。 ちゃんと用語は正しく使わないとダメだよな。 文豪でも打ってろと。
>155 わ、普段自動フォーマット使わないので 使ってみたらこいつはびっくりです。 無名関数にもセミコロン付けるものなのですね。 どうもありがとうございました。 ということは 私は今までこういうことをしていたのですね。 this.onEnterFrame = testExe function testExe(){ trace( "test" ); } これでシンタックスエラー起きないところが気持ち悪いなあ。
◆hb657T1piM ってあれだろ、ASをexcelで書いて、メモ帳でタブ消して置き換えおせーとか言って、 あげくに恥ずかしい作業風景晒してた人だろ? というか、 604 名前:函館人 ◆hb657T1piM 投稿日:04/12/24 20:53:46 ID:ggy0x9p9 変数aが奇数なら1になる式 (a/2-int(a/2))*2 変数aが偶数なら1になる式 1-(a/2-int(a/2))*2 ↑こんな素敵なコードを書けるようになるにはどうすればいいですか? int最高
得意気なんかじゃないです・・
>>151 サンクスコ
今まで調べまくっても分からんかった
2時間なにやっていたんだおれは・・・・・ orz
>>160 ASをexcel?
なんかすごいな・・・・・・
重ね重ねすいません。MXでシーンの移動がしたいのですが、 stop()で止めたフレームに貼り付けたムービークリップが最後まで再生されたら、 gotoAndPlay()でほかのシーンに移動するようにするには、どうすればいいのでしょうか?
165 :
163 :04/12/27 22:23:01 ID:hGy/T3xn
よくわかりません。おバカにもわかるように説明をお願いします
>>165 ムービークリップの最後のフレームに
_root.gotoAndPlayを書けばいいけど
この場合シーンは使えないからラベルってのを自分で調べて使ってみるといいよ。
167 :
163 :04/12/27 22:29:51 ID:hGy/T3xn
ありがとうございます。
168 :
Now_loading...774KB :04/12/28 00:24:53 ID:H9wy9kZl
パスの質問なのですが _rootにムービークリップa_mcを置き _rootに function kannsu() { trace("hoge"); } a_mc.onPress = function() { this._parent.kannsu(); _parent.kannsu(); } で_rootに記述した関数を参照する場合 this._parent.kannsu()と_parent.kannsu() ではthis付きでないと参照できません。 どのようにちがうのですか?
thisを明記しないとスコープが変わる良い例ですね。 たぶんthisが無い場合は_rootが基準かと。
Flash MX 2004を使用しています。 FlashからVBへfscommandを使ってデータを送り、VB側でデータの処理を行いたいのですが、 一つ疑問が出来てしまいました。 以前実験した時には、Flashはfscommandを実行した後はVBが処理を終了するのを待たずに 次の処理を実行していたようなのですが、 今試してみたところ、どうやらVBの処理が終わるのを待っているようなのです。 一体どちらが正しいfscommandの仕様なんでしょうか?
171 :
168 :04/12/28 00:51:40 ID:H9wy9kZl
thisを明記しないと記述場所の_rootが基準に なるのですか? では a_mc.onPress = function() { this._parent.kannsu(); _parent.kannsu(); } をa_mcの第一フレームに記述して this.onPress = function() { this._parent.kannsu(); _parent.kannsu(); } とした場合はthis._parent.kannsu()と_parent.kannsu() のどちらでも参照可能ですよね?
駄目だった? じゃあ_globalなのかな。
173 :
168 :04/12/28 00:58:21 ID:H9wy9kZl
いやOKでした。
>>164 も前がネタ振りするおかげで、その後の解答で
こんな書き方もあるのかと勉強になる。
くじけずがんがれ。ネタ振りのほうで。
FlashMXです。 attachMovieで増やし続けたMCを 一気に消すボタンを作りたいんですけどどうすればいいんですか? removeMovieClipでいけるかと思ったんですが一個しか消えません。
>>175 attachMovie で増やしたときにつける名前を
movie1、movie2のように決めておく。
増やした数をmovieNo=2のように管理する。
消したくなったら、forでmovieNoの回数だけ、this["movie"+i]という名前のMCを消す。
aaa = function () {trace("tokumei");}; function aaa() {trace("namaetuki");} aaa(); と function aaa() {trace("namaetuki");} aaa = function () {trace("tokumei");}; aaa(); 。 それぞれ実行すると両方とも、tokumeiと表示されるのですが、 優先順位のようなものがあるのでしょうか?
functionで始まる行は たぶんパブリッシュの時に一番上へ移動されてる。
179 :
165 :04/12/28 09:28:25 ID:iDxzTO3j
180 :
Now_loading...774KB :04/12/28 16:04:54 ID:0ZVC6PeP
>>73 の
>ライブラリのボタンのリンケージ識別子に1から連番を入れておく。
>btn_num = 2;//ボタンの数
>btn = Math.floor(Math.random() * btn_num) +1;//ボタンの数が最大値の乱数を生成
>_root.attachMovie( btn, "rdm_button" ,1);//ステージにボタンを置く
>rdm_button._x = 300;//ボタンのX座標
>rdm_button._y = 500;//ボタンのY座標
についてなんですが、これを実行するとボタンが1つ表示されますよね?
で、2つボタンを表示しようと思って変数btnを別のに書き換えた命令をもう1つコピーして書いたんですがボタンは2つ目の命令で出た乱数のボタンが1つ表示されただけでした。
さらに別の変数で同じのをもう1つ(3つ目)書いてみたんですが、今度もこの3つ目の命令で出た乱数のボタンしか表示されませんでした。
この命令でボタンを複数個(乱数はバラバラ)表示するにはどうすればいいんでしょうか?
ageんな。
質問のときはageていいはず
>>180 _root.attachMovie( btn, "rdm_button" ,1);
この最後の1ってのを変えないと上書きされちゃうんだよ。
もうマスクがいやだから聞いたのよ…
ルパン風タイトルメーカーが同じことしてるから、そっちのソースを見たらどうか.。
ありがとう。ちょっくら盗み見てくるよ
ウボァー
>>183 手元にFlash無いが、こんな感じで動くはず。
ステージに変数名txt2と入れたテキストフィールドを置き、
フレームに以下のASを記述
var txt = "ここの徐々に表示される文章を作るにはどれを使えばよいのですか?"
var txt2 = ""
var n=0
this.onEnterFrame = function(){
if(n<txt.length){
txt2 += txt.substr(n,1)
}else{
delete n
delete onEnterFrame
}
n++
}
190 :
Now_loading...774KB :04/12/28 19:46:00 ID:JmI6nb69
>>182 じゃあ例えば変数をバラバラにして3つ表示したいときは
_root.attachMovie( aaa, "rdm_button" ,1);
_root.attachMovie( bbb, "rdm_button" ,2);
_root.attachMovie( ccc, "rdm_button" ,3);
でいいんですか?
質問です。 Flash5を使ってます。OSはMeです。 イベントサウンドを使って、ムービーにループBGMを流しています。 ボタンを押す事によって、そのBGMを止めたり流したりできるようにしたいのですが、 ボタンのどの部分にどのようなスクリプトを書けばよいのか見当がつきません。 どなたか教えていただけませんか?
>>189 動きました。ありがとうございます。
>>191 BGM用のムービークリップを作って、
BGMの曲を同期:イベント、ループのフレームと
同じBGMの曲で同期:ストップ、のフレームをいったりきたりしてみてはどうでしょうか
怪盗
>>192 なるほど・・・なんとなく言わんとしていることはわかります。
それは、gotoAndPlayを使えばいいんですよね。
うーん・・・まだちょっと自分でも勉強不足な点があるので、もうちょい勉強してからまた来ます。
>>190 そんな面倒なことを避けるために変数があります。
n = 0;
と先にで宣言して
_root.attachMovie( btn, "rdm_button" ,n);
n++;
最後の数字は深度っていって、重ね順だから後から呼び出したボタンが上に重なっていく。
FLASHMXで1から3000の乱数を作る方法を教えてください
random()ありましたすいません。
199 :
Now_loading...774KB :04/12/30 12:45:43 ID:4kF3yqF7
すみません、質問です。 1 2 3 ... 100 のような数値を 001 002 003 ... 100 とするにはどうしたらよいのでしょうか? そういった関数ってありますか?
200 :
Now_loading...774KB :04/12/30 12:51:36 ID:y6UeQaYT
>>199 数値じゃ無理かもストリング形式にしる
0以上10より下なら
"00" + 数値
10以上100より下なら
"0" + 数値
こんな? a = 1 trace(("000" + a).substr(String(a).length))
っ (a + 1000).toString().substr(1)
どちらも技あり一本!
205 :
Now_loading...774KB :04/12/30 17:22:32 ID:Szfzsgo/
シンボルのボタンについてなんですが、ダウンに作成した状態の画像がムービーのプレビューをしてボタンをクリックすると一瞬しか表示されず、すぐにアップの状態に戻ってしまいます。 クリックしたときにアップの状態にすぐ戻るのではなく、ダウンの状態を維持するにはどうすればいいんでしょうか? フレームはまだ1フレームしか使っておらず、ループ再生もしていないのでフレームの移り変わりによるアップへの戻りではないと思うんですが・・・
判定にundefinedを使用するのは、 文法的には避けた方が良いのしょうか? 例えば、 a_mc = this.attachMovie( a_id, a_mc, 1); if( a_mc != undefined ) { bbb(); } else { ccc(); } のように、attachMovieに成功した場合と失敗した場合で 処理を分岐させたいのですが、どうなのでしょうか?
>>205 左クリックを話せばオーバーに戻るけどそういう意味ではなくて?
>>206 個人的にはありだと思っています。
縦スクロールシューティングのようなものを作ろうとしているんですが キャラから弾を発射させるのが上手くできません。 キャラの移動は横移動のみで作ってます。 キャラの座標に弾を表示させて上に飛ばすのはどう記述すればいいのでしょうか?
209 :
Now_loading...774KB :04/12/30 19:29:48 ID:Szfzsgo/
207>> そういうことです。 左クリックを離すとオーバーの状態に戻るので、一旦左クリックを押すと後は離してもダウンの状態の画像を表示するっていうのはシンボルの編集だけでは無理なんでしょうか? ちなみに、もう一度クリックするとオーバーの状態の画像に戻したいんですが・・・
>>206 それは文法的に間違っているような・・・
書くなら↓こうじゃないかな?
if (typeof(a_mc) != "undefined")
>>209 その挙動はボタン単体では無理ですな。
押されていない状態と押された状態の2フレームのMCを作り、
さらに、そのMCの中に適当な大きさの透明ボタンを作って配置。
そのボタンのオブジェクトアクションに
↓これを記述。
on(release) {
gotoAndStop(2-_currentframe);
}
>>211 状態としてnullを返すようなものではないの?
おれも a_mc == undefined って判定に使ってた。
null == undefinedはtrue null === undefinedはfalse Macromediaは初期の変数未設定状態をundefinedで判定することを推奨しているので 判定文にundefinedが入るのはあり。
215 :
206 :04/12/30 21:02:33 ID:zvRPlBQE
>>207 ありがとう御座います。
これで安心して使えます。
>>211 実は自分も if( a_mc != undefined ) と書くのは
ちょっと違和感があったんですよね。
if (typeof(a_mc) != "undefined") の方が確かにしっくり来ます。
ですが、
>>213 さんのいうようにundefinedがnullのようなものだとすると、
if( a_mc != undefined ) でも問題無いような気もしてしまいますね…。
どっちが正しいのしょうか?それともどちらでも良いのでしょうか?
216 :
206 :04/12/30 21:08:17 ID:zvRPlBQE
>>214 推奨されてるとは知りませんでした。
ありがとう御座います、勉強になります。
正確に言うと、undefinedは未定義状態で、変数の最初に入ってるもの nullは空状態で、後から変数を初期化したいときに入れるもの。 上の例ではattachが多分nullを返すので判定式はnullでやるのが正解かもしれんな。 どっちにしろ動くが。
>>211 ですが。
>>214 おや、そうでしたか。知りませんでした・・・。
でも変数とも異なる何かむき出しの要素が現れることは
あんまりカコイイとは言いがたい感じがするので私としては
if( a_mc != undefined )
は、おすすめ出来ない気はしますな。。。
少なくとも他の言語を扱う人がみたら「?」と思う気がする故。
>>208 それが簡単に書けるようじゃないとシューティングの製作は
正直この先、ちょいと難しいのではないかと思うんですが・・・。
キャラのインスタンスが_root直下に配置してあるんであれば
キャラのオブジェクトアクションに
↓これを記述で一応それらしくは出来ます。
onClipEvent(mouseDown) {
strID = "bullet" + iBulletCount++;
_parent.createEmptyMovieClip(strID, iBulletCount);
_parent[strID].onEnterFrame = function() {this._y -= 20; if (this._y < 0) this.removeMovieClip();};
with(_parent[strID]) {
lineStyle(2, 0x0FFCC00, 100);
moveTo(0, 0);
lineTo(0, 4);
_x = this._x;
_y = this._y;
}
}
onClipEvent(mouseMove) {
this._x = _parent._xmouse;
this._y = _parent._ymouse;
}
220 :
Now_loading...774KB :04/12/30 21:49:55 ID:QW+It2NO
だれかおせーて下さい。 loadMovieで最初に読み込んだ画像は表示できるのですが、 画像名などがかわると表示できません。 また、画像名がかわっても、最初に表示した写真であれば表示できます。 なぜなのか教えてください 以下ソースです。 toi="nto.jpg"; loadMovie(toi,nto);
>>218 こっちとしてはストリングがむき出しなのが気になる・・・
これが言語文化の差か。
222 :
208 :04/12/30 21:54:59 ID:VGcgVISm
>>219 御返答有難う御座います。
折角書いて頂いた所、悪いのですが、マウスでなく、キーボードのカーソル←→でキャラを動かし
スペースキーで弾を撃つような単純(?)な物を作ろうとしているのです。
>>208 に細かく書いておくべきでしたね…
尚、弾を撃つ件に関しては自己解決致しました。
弾が飛んでいる最中にもう一度スペースを押すと、
弾が自キャラの位置にまた戻ってしまうということで苦戦してますが…
>>220 意味がよくわからん。
nto.jpg以外の名前にしたら読めないのは当たり前だと思うけど。
>>222 弾が出てるかどうかのフラグ使いなよ。
224 :
Now_loading...774KB :04/12/30 22:11:28 ID:QW+It2NO
flashMXでアクションスクリプトを打っていて、 // でコメントを入れていないのに、ねずみ色に文字が変化することがあるのですが、 これはどうしてでしょうか?
226 :
Now_loading...774KB :04/12/30 22:52:34 ID:QW+It2NO
<<223 少し付け加えました。 だれかおせーて下さい。 loadMovieで最初に読み込んだ画像は表示できるのですが、 画像名などがかわると表示できません。 また、画像名がかわっても、最初に表示した写真であれば表示できます。 なぜなのか教えてください 以下ソースです。 toi="nto.jpg"; loadMovie(toi,nto); と一度書いて、次に toi="nto1.jpg"; loadMovie(toi,nto); とかくとnto1.jpgはフォルダー内にあるのに、 表示されません。 といううことです。
227 :
Now_loading...774KB :04/12/30 23:06:44 ID:IEBVzeIg
>>226 追記するんじゃなくて、書き換えるんだよね?
だったらファイル名が間違ってなければ表示されるはずだけど。
228 :
Now_loading...774KB :04/12/30 23:09:51 ID:Dbxzl3Dc
227>> だめなんですわ。それが。 作ったときの最初に表示した画像は表示できるんですわ。 リネームしても表示されるんですよ。 別なファイルになったら、だめなんですよ。
ひょっとしてローカルじゃなくてアップして確認してるの? まさかキャッシュから読んだりしてないよね。
>>228 拡張子は同じjpgでも内部的に付加情報が記録された
EXIFというタイプと、それらがないJFIFという2種類が存在し、
確かloadMovieではJFIFの方じゃないと、
読み込めないんじゃなかったかな?(適当)
その読み込めないjpegファイルを一旦なんかの
画像処理ソフトに読み込んで再度保存しなおすと
読み込めるようになるかも。
ああ、そういえばプログレッシブ形式のjpgは読めないんだっけか。
>>231 おっと・・ちょっと調べたらそうみたいです。
プログレッシブがダメで、Exif/JFIFではどちらでも特に問題なく読み込める模様。
やっぱ、物凄い勢いでも、ちゃんと調べてから書かなくては・・・。
どちらにしても、解決方法は
>>230 の通りでOK。
gotoAndStopで変数の中に入れたフレーム数に飛ばすにはどうすればいいのでしょうか? MX2004です。
解決しました
WINXP MXです。 フレームのランダム再生はどうすればいいのでしょうか。
自キャラインスタンス名:jiki 敵キャラインスタンス名:teki 弾インスタンス名:tama でFlashMX2004を使い、シューティングを作ってます。 弾が敵に当たった時に敵が消えるように作りたくて下のようにtekiインスタンスに打ち込んだのですが 敵が自キャラに当たるとタイトル画面に戻るようにはできるのですが、敵に弾が当たったときに 敵が消滅するようにできません。どうすればいいんどえしょうか? onClipEvent(load) { speed = 10; } onClipEvent(enterFrame) { _y += speed; if (_y > 400) { _visible=true _y = 0 _x = Math.random() * Stage.width; speed++; } if (_visible==true) { if (hitTest(_parent.tama) && _parent.tama._visible) { _visible=false _parent.tama._visible = false; } else if (hitTest(_parent.jiki)) { _parent.gotoAndPlay(1); } } }
どうすればいいんどえしょうか?→どうすればいいのでしょうか?
loadに初期化用のfunction作る 画面外に出る、弾が当たったら初期化を実行。 敵とのhittestは敵の数だけ名前付けてforで回すなりする。 ぶつかってたらその名前の敵に死亡の動作させてうんぬん
winXPでFLASNMXを使っています。 三角関数を使ったFLASHを作りたくて色々と実験しています。 on (press) { cos = Math.cos(Math.PI/180*90); sin = Math.sin(Math.PI/180*90);} と書いたところ cos 6.12303176911189e-17 sin 1 となってしまいます。 cos90は0だと思うのですが、どうしたらいいでしょうか。
>>239 6.12303176911189e-17は6.12303176911189の-17乗という意味です
つまり限りなく0には近いのですが計算に誤差が生じているので
なるべく掛け算が先のほうが誤差が少ないよ。
mapインスタンスと同調して動かしたく、下のように記述したのですが上手く動きません。 何がいけないのでしょうか? onClipEvent (enterFrame) { _x = _parent.map._x+392.3; _y = _parent.map._y+23.5; }
>>240 >>241 ありがとうございます。
掛け算を先にしてみたのですが、同じでした。
Math.roundを使えば0になるのですが、それじゃ意味ないですよね…
ifで角度90の時、はcosは0のように指定しなくてはならないのでしょうか?
244 :
Now_loading...774KB :05/01/01 07:34:33 ID:zXLE656/
_rootの中にpanel_mcがあり、その、panel_mcの中にpanel2_mcがあります。 そこで、panel2_mcをそっくりそのまま、_rootにコピーしたいのですが、 そういうことは可能でしょうか? duplicateMovieClipを使えば出来る事なのでしょうか?
>242 うまく動かなかった動作内容と期待する結果を書く事 >244 無理です。 panel2_mcをそのまま_rootに配置するしかありません。
246 :
Now_loading...774KB :05/01/01 17:24:29 ID:7SxEZ1B/
winXP:FlashMX2004 シンボルを ランダムな異なる位置 で繰り返し再生させたいです。 インスタンスに onClipEvent (load) { this._x = Math.random()*550; this._y = Math.random()*200; } と書いて、ステージ上のランダムな座標を再生位置にしたのですが、 ランダムな同じ位置 で再生されてしまいます。 毎回(シンボル再生のたびに)異なる位置で再生させるにはどうしたらいいでしょうか?
247 :
Now_loading...774KB :05/01/01 19:44:44 ID:0J/2RsBY
226のものだが、 >>ああ、そういえばプログレッシブ形式のjpgは読めないんだっけか。 231の方の回答でわかりました。 プログレJPGでした。 ありがとうございました。解決しました。
MX2004を使用しています。 サウンドのことで質問があるのですが、 bgm = new Sound(this); bgm.attachSound("bgm"); bgm.start(0,100); bgm.stop("bgm"); としても指定したサウンドが止まりません。 また、ヘルプを見てみると[]でくくっていたので、 bgm.stop(["bgm"]); としてみても止まりませんでした。 いったいどうしたらいいんでしょうか?
("bgm"); がよけい
250 :
248 :05/01/02 02:00:00 ID:utDA9z97
すいません、stop()の記述書く場所が間違ってただけでした。
>>249 確かそれだと全ての音が止まってしまうと記憶していますが・・・
そんなことないぞ
同じサウンドオブジェクトに attachSound した音は全部止まる 複数attachSoundして鳴らしていて、個別に止めたい場合はidNameによる指定が必要
別のサウンドオブジェクトにしておけば問題なし。
255 :
Now_loading...774KB :05/01/02 12:59:47 ID:1QsC8L+F
5秒待ちつつ、MCのon(keyPress"x")で常時入力を受け付けるには どうすればいいのでしょうか?
WinXP FlashMX2004 60fps で作っています。 ゲームに時間制限(20秒経つと"miss"フレームに飛ぶ)を設けたく、60コマ目に _root.jikan-=1 と記述したムービークリップを作り、 そのムービークリップを配置し、 onClipEvent(load){ _root.jikan=20 } onClipEvent(enterFrame){ if(_root.jikan==0){ gotoAndPlay("miss") } } と記述した所、20から1秒毎に数字が減っていくのですが、0になっても減り続け、負の数になっても止まりません。 0になったら"miss"フレームに飛ばしたいのですが、どうすればいいのでしょうか?
_root.gotoAndPlay("miss")
if (_root.jikan <= 0) {
260 :
Now_loading...774KB :05/01/02 14:16:55 ID:1QsC8L+F
ムービークリップのインスタンスに貼り付けてある on(keyPress "x"){} を使うと、 my_music = new Sound(); my_music.attachSound("bgm1"); の音楽は止まりますか?なんか止まるんですが・・・タシケテ
261 :
Now_loading...774KB :05/01/02 14:52:19 ID:UDGbMsAw
FLASH初心者です FLASH MXで、ボタンイベント(press)が発生したら 現在表示されている画像の後に次の画像が最初はぼやけて 段々くっきりとした画像を表示させるにはどうすれば出来ますでしょうか 宜しくお願い
262 :
Now_loading...774KB :05/01/02 16:10:59 ID:F9ejFBGz
本棚にあったFlash4AS本からFlash4体験版のサンプル内の簡単なプリローダーを抜き取って使ってみたのですが、 どうしてもあらかじめ指定した区域(loderムービーを置いてシェイプで枠を作った区域)から延びてしまいます。 一応スクリプトです。 if (Number(_framesloaded)>=Number(_totalframes)) { gotoAndPlay("Main", "Ready"); } else { setProperty("/loader", _xscale, (_framesloaded/_totalframes)*100); } これは仕方がないのでしょうか?
>>260 音再生中にもう一回
↓これ実行しちゃうと
my_music = new Sound();
my_music.attachSound("bgm1");
当然止まりますよ?
264 :
フラッシュ全く知らない人 :05/01/02 16:40:44 ID:EHRUvmET
しゃあない
>>261 適当なフラグ変数を用意してボタンが押されたらそのフラグをセット。
で、各MCはenterFrameイベントハンドラにおいてフラグがセットされたら
適当なステップで_alphaを変える。
>>262 そのスクリプトには問題ない気がしますが。
MCのscaleを変えたときにMCの拡大縮小の中心となるオフセット点が
正しい位置になってなくてズレて伸びているとか。。。
もしくは、インスタンスを配置したあと拡大とか縮小してると、
元の大きさを基準にスケールが変わるので、それが合ってないとか。。。
もしバーを100%で表示しているのでないのなら、この最後の"*100"を適切に
setProperty("/loader", _xscale, (_framesloaded/_totalframes)*100);
変更しないとはみ出したりもしますよ?
267 :
Now_loading...774KB :05/01/02 17:31:11 ID:F9ejFBGz
>>266 とりあえず拡大、縮小せずにインスタンスを配置してやってみます。
ありがとうございました。
268 :
Now_loading...774KB :05/01/02 23:03:08 ID:7lYunDld
Now_loading...774KB氏
>>261 ですありがとうございますご意見参考にさせてもらい、只今格闘中です
インスタンス名をmaskとし
onClipEvent (enterFrame) {
mask.setMask(mask);
}
文法チェックでエラーもでないのでパブリッシュしてみましたが
思うような画面の変化が行えません
それから
適当なステップで_alphaを変える。
とありますが_alphaの設定は何処で行うのか教えてもらえませんでしょうか
宜しくお願いします。
269 :
Now_loading...774KB :05/01/02 23:08:46 ID:7lYunDld
↑
すんません
Now_loading...774KB氏でなく
>>265 氏でしたどうも板汚してしまいスマソ
>>268 だんだんぼやけてっていうのは、
うっすらと出てくるという意味?
それともボカシがかかってるのがシャープになって出てくるという意味?
前者と後者でやり方違うよ。
ちなみに_alphaは透明度のみの変化なので前者。
ぼかしはFlashでは設定出来ないので、
グラフィックソフトでぼかした画像を用意しないとダメ。
271 :
260 :05/01/03 01:39:13 ID:YiLn9Zby
>>263 そうじゃなくて、
my_music = new Sound();
my_music.attachSound("bgm1");
これが前のシーンでmy_music.start(0,0);と一緒に一回実行されて、
どこにもon(keyPress "x"){}の中にはmy_music.stop();もattachSound();も
入ってないんです。
>>271 情報を小出しにしない
ゼロからボタンとsoundだけの最小の条件で作ってみれ
で、うまくいかない状況を再現できるならば、質問しれ
最小条件で作ってうまくいったならば、
うまくいかなかったものと何が違うのか比較しれ
my_music.start(0,0); こんなあsみたことねえ
my_music.start(0,10000); 0秒目から、10000回再生。
どなたか
>>246 回答おながいします_| ̄|・:'.,.
276 :
Now_loading...774KB :05/01/03 16:42:03 ID:29M59G3X
1フレーム目に lso = SharedObject.getLocal("myData"); lso.data.x = 10; と記述したとします。 そして_rootに設置したMCのX座標にこの値を使うため、そのMCに onClipEvent(load) { function iti() { this.x = lso.data.x; } } onClipEvent(enterFrame) { this.iti(); } というソースを書きましたが、期待した結果は得られませんでした。 このMCのX座標にlso.data.xに代入した値を使うためには、どうすれば良いのでしょうか。 どなたかどうぞよろしくお願いいたします。
277 :
276 :05/01/03 17:02:44 ID:29M59G3X
すいません、書き忘れましたがWindowsXPでFLASH2004を使用しております。
>>246 言ってる事がいまいちわかりづらいんだが、
とりあえず再生してるMCの1フレーム目に
this._x = Math.random()*550;
this._y = Math.random()*200;
を書いてみれ
279 :
276 :05/01/03 17:42:16 ID:29M59G3X
申し訳ありません、出来たようです。
280 :
Now_loading...774KB :05/01/03 18:08:48 ID:WjrcTas0
>>275 onClipEvent (load)
がよくない。
それだと、ランダムに座標を求めるのは一回だけ。以降最初に出した座標に出る、
this.onEnterFrame=function(){} で処理を書いているのですが、 クリップアクションの実行タイミングの関係で、 1フレーム待機してから実行したいのですが、 _rootに置いた変数で、最初のonEnterFrameは何もしないと判定するのは あまりスマートではない気がします。何か良いやり方はないでしょうか?
283 :
Now_loading...774KB :05/01/03 20:32:26 ID:fz5I71bg
swf をHTMLに埋め込む時に object の IDまたは、embed のNAME に指定する moviename をactionscript で、知ることは出来ますか? 誰か教えてください。
>>278 ,281
ありがとうございました。
278の様にした後、シンボルのムービーと同じ長さのフレームをMCにも用意することで解決しました。
>282 onEnterFrameがフレームをループして実行する という意味だから フラグ変数を見て定処理を実行するorしない という判断は 別に変じゃないと思うけれどもね。 >283 用途は? FlashVarsじゃだめかな?
286 :
Now_loading...774KB :05/01/03 23:57:41 ID:MBZfuc9j
aaa0_mc 〜 aaa3_mc という複数のムービークリップの中身(グラフィック)を一つにまとめて bbb_mc という新しいムービークリップにしたいのですが、どう記述すればいいのでしょうか。
>>286 ライブラリから新しくムービークリップを作って
aaa0_mc 〜 aaa3_mcを貼り付ければいい
288 :
Now_loading...774KB :05/01/04 09:49:07 ID:kL3cVBhZ
初歩的なド忘れ質問をさせてください。 if (hoge == 1) { hoge = -1 } else { hoge = 1 } の条件分岐を、条件演算子で表記する場合の記述を教えてくださいませ。 hoge = ? : の形でお願いします。
>288 hoge=hoge==1?-1:1; 三項演算子は見難いな
質問させて下さい。
環境:Win2000,FLASH MX,ColdFusionMX6.1
sendAndLoadを用い、サーバー(CF)連携を行う処理を作っているのですが、
どうも値が返ってきません。
//FLASH側ソース
function up(){
//送信用のデータの生成
formData = new LoadVars();
formData.data_1 = txt_1.text ;
//受信用のデータの生成
recvData = new LoadVars();
//データの受信処理を設定
recvData.onLoad = function(){
txt_2.text = recvData.data_1;
}
//CGIへデータ転送
formData.sendAndLoad("
http://localhost:8500/upTest/test.cfm ", recvData, "get");
}
291 :
290 :05/01/05 13:23:32 ID:9SjL3JCo
//サーバー側(ColdFusionMX 6.1) <CFSET data = URL.data_1>> <CFOUTPUT>Content-type: text/html\n\n</CFOUTPUT>; <CFSET a = data & data> <CFOUTPUT>data_1=#a#</CFOUTPUT> サーバー側で、 変数aをアウトプットする直前にログを吐き出したところ、 値はキチンと取れていることを確認しています。 FLASH側でrecvData.onLoadが呼び出されていることも デバックで確認しています。 ですが、txt_2のテキストエリアに値が返ってきません。 どなたかご指導をお願い致します。
292 :
Now_loading...774KB :05/01/05 14:54:39 ID:x3qz+r41
ウェブサイトに埋め込むFLASHをいくつか用意しておいて、 アクセスのたびにランダムに切り替えたいのですが、 できればJava Scriptを利用するのではなく、 Action Scriptでスマートに実現したいと考えています。 どなたかご教授願いします。。
Math.Random() を使え。まずはそこからだ。
294 :
Now_loading...774KB :05/01/05 15:55:51 ID:7048ROzj
windowsXPでFlashMXです。 コマンドラインのようなものを作りたいのですが、 「テキスト入力」と「ダイナミックテキスト」を作り、それぞれ変数を[line][log]とし、 on (keyPress "<Enter>") { if (line = "command") { log = "result"; line = ""; } else { log = "invalid command"; line = ""; } } としたのですが、どう入力してもlogがresultとなってしまいます。 どうすればいいでしょうか?
フラッシュ実行時に毎回同じ乱数を発生させたいのですが・・・ アクションスクリプトに乱数の種を指定する方法はありますか?
読み込み中に転送率を取得することはできるのでしょうか。 できるというなら、やり方も教えてください。お願いします。
>>294 ×if (line = "command") {
○if (line == "command") {
>>295 同じ乱数ってどういうこと?
>>296 あしぷろのソースを見ましょう。
>290 onLoad内で trace( recvData.data_1 ); をまず実行してみて。どんな値になっているか。
299 :
294 :05/01/05 20:57:58 ID:7048ROzj
>>297 見落としてました。ありがとうございました。
300 :
290 :05/01/05 21:36:34 ID:9SjL3JCo
>>298 様
返信ありがとうございます。
onLoadの中での、
recvData.data_1の値は、
取れておらず、未定義となっています。
やはり、CF側の処理が悪いのでしょうか。
>>295 ASではシード値を指定する事はできないのですよ。
自前の簡易乱数表を作ってしまうのが手っ取り早いかも。
Math.PIから数字を順番に貰うとか。
>290 ちょっとわからないので更に recvData.onLoad = function(success){} として、successの中身がtrueになっているかどうかを traceで確認してみてください。
304 :
295 :05/01/06 00:54:21 ID:bff+RRm4
乱数の種について教えて頂いてありがとうございます。 なんとか自作します〜
外部テキストファイルをダイナミックテキストに読み込む場合、読み込めない文字はあるのでしょうか? %、+、&等が非表示となります。埋め込むフォントを変えてもシステムフォントにしても駄目。 予定語等で使えない場合代替策ってありますか? よろしくお願いします。
307 :
Now_loading...774KB :05/01/06 21:25:32 ID:a1Edgm2g
loadMovieなどで外部からSWFを読み込んだ場合に関する質問が2つあります。 一つ目 親MCの中にグローバル(_loadMovie.変数名)で宣言した変数があります、この親MCにloadMovie で子MC(外部SWF)を読みこんだ場合、子MCのほうで親MCで宣言されている グローバル変数は参照できるのでしょうか?
308 :
Now_loading...774KB :05/01/06 21:26:02 ID:a1Edgm2g
二つ目 親MCに外部SWFの子MCを読み込む 子MCは外部読み込みでJPGなどの画像を読み込みます。 this.onEnterFrame = function() { var loaded = imageTarget.getBytesLoaded(); var total = imageTarget.getBytesTotal(); if (loaded >= total && total > 4 && xmlLoaded) { this.play(); delete this.onEnterFrame; } }; imageTarget.loadMovie("./hoge.jpg"); 上記のスプリクトで外部画像が読み込まれてからムービープレイ。 この場合、親MCに子は外部画像がロード完了後の子MCが読みこまれる のでしょうか?それとも外部画像のサイズによっては画像がロード中の 子MCが読み込まれるのでしょうか?
309 :
307 :05/01/06 21:28:13 ID:a1Edgm2g
>親MCの中にグローバル(_loadMovie.変数名) (global.変数名)の間違えです・・・ すいません
>>307-308 できるよ。
子のMCにtrace(_global.hensu);してみれ
後者はよく分からないけど、
読み込み完了を知らせる変数なりで判定して
確認してから再生すればいいんでないの?
読み込みが終わってなければ
元のMCが表示されていると思うよ。
311 :
307 :05/01/06 21:39:28 ID:a1Edgm2g
即レスありがとうございます。 どうしても気になったので・・ いまソフトがないので明日会社で試してみます。
hogeってどういう意味?
プログラムで例文を出す時に、適当な変数名としてhogeになることが多いです。
エスケープ文字のこと。
>>314 ヘルプでescape,unescape調べてみそ
環境はMX2004でXPです。 ボタンにマウスカーソルがかさなったとき ムービークリップaのsという関数が0ならばムービークリップa内で 11マス目に飛ぶ といった内容のASを書いたつもりで if(a.s==0){on(rollOver){a.gotoAndPlay(11);}} にするとエラーでダメでした。 なので on(rollOver){if(a.s==0){a.gotoAndPlay(11);}} にするとエラーは無くなったのですがifが無視されます。 どうすれば上手く動きますかね?? 説明が下手ですいません。 よろしくお願いします。
無視されてない。 変数の方が変じゃないのか?
a.s() == 0
指定した位で四捨五入するにはどうすればいいのでしょうか。 お願いします。
321 :
290 :05/01/07 09:39:35 ID:740nwmY0
>> 303 様 たびたびご返信ありがとうございます。 ご指摘通り、 recvData.onLoad = function(success){} とし、successをtraceしたところ、 trueになっているのが確認出来ました。 返信が遅くなり、本当に申し訳ございません。
scriptでenumに変わる関数ってないの?
323 :
Now_loading...774KB :05/01/07 12:15:30 ID:9SJLthxR
>>316 ありがとうございます。さっそく調べてみます。
>>320 Math.round(a / 100)*100;
こんな感じ。意味は考えてみて。
>>322 自分が知っていることは他人も知っていると思わないこと。
C言語の列挙体のことかい?それで何をしたいかによるが
配列とかを使った別方法で十分実装できる。
>321 問題は解決したのかな? successにtrueが入っていて recvData.data_1に値が入っていないということは CF側に問題がありそうですね。 CF側で data_1=値 という形で表示されているかどうか確認してください。 後は、recvDataオブジェクト内のプロパティを for〜inとtraceを用いて中身を確認するという調査もするといいかも。
「_root」って何ですか? 悲しいほどに無知なもので(´Д`;) FLASHのヘルプ見ても意味が分かりませんorz 釣りとかじゃなくて本気で分からないんですorz 使用ソフト:FLASHMX2004 OS:WinXP
_rootとはタイムライン上ということ。 例えばaというMCにb.play();と書けばaの中にあるbを再生となり、 aというMCに_root.b.play();と書けばタイムライン上にあるbを再生するとなります。 初回答なので乱文なのはご勘弁・・・
330 :
320 :05/01/07 15:31:11 ID:qv4+fzb0
>>328 よく考えてみたら、
Math.round(a / 100)*100;ではなく、
Math.round(a * 100)/100;なのではないでしょうか。。。
でもあのヒントがなかったらきっとまだ混乱していましたよw
ありがとうございました。
>>330 いやいや、やってることは同じだから。
a = 3456.2341;
Math.round(a / 100)*100; // 3500
Math.round(a * 100)/100; // 3456.23
君の「指定した位」が何所か分からないからね。
_parent親階層
333 :
320 :05/01/07 16:14:05 ID:qv4+fzb0
>>331 そうでした。すいませんでした・・・orz
334 :
326 :05/01/07 18:22:00 ID:3T1D8Kxu
ありがとうございました。お陰様でわkりました。
rootはLINUXではエロイ人
336 :
Now_loading...774KB :05/01/07 22:23:32 ID:iOHZ1X4N
ムービークリップごとにいちいちonClipEventを書くのは本当に嫌いでした。 MX2004を買い、やっとタイムラインにイベントハンドラを書けると思っていたのですが、onLoadが動作しません。 これにあたるスクリプトはなにかありますか?1フレーム目に初期化命令を書いていく以外ないでしょうか。
小出しの情報から、いちいち推理して解答するのは嫌いです onLoadは、外部のCGIからデータを受け取るときに使う程度です。
予想になるけど、タイムラインに Hogehoge.onLoad = function(){ // } とか書いたんだと思われ。 Hogehogeがすでにロードされた後に設定することになるから動作せず、じゃね? でもコレで何がしたいか不明。 これが必要になる条件が思いつかない。 そこから先は説明しる。
すいません。 たとえば、 onClipEvent(load){ x = 12; } というものを、 onLoad = function(){ x = 12; }; というのに書き換えれば良いと思っていたのにonLoadだけ動かないのですが、 ムービークリップの1フレーム目にそのような初期化目的の命令を置く以外に方法は無いのでしょうか。 Actionscript2.0はむずかしすぎて分かりません。1.0での対処方法は他にありますか。
>>338 リロードしてなかった…。
そのとおりです。
いままでonClipEvent(load)をかなり頻繁に使っていたので、それの代替としてonLoadを考えていたもので…。
まず、それは2.0ではなく、Flash5時代かな?とにかく昔からあるやり方です。
次に3動作しない理由は
>>338 です。
そして
onLoad = function(){
x = 12;
};
という記述は変です。
MC.onLoad = function(){
x = 12;
};
こうですよね?で、もしこうなら。
MC.x = 12;
こういう記述じゃ駄目なんですか?
わざわざLoadに指定する必要が感じられません。
MC.onLoad = function(){ x = 12; }; のMC、のところはthisでもいいんですよね。(this省略してました)そこのところを前提とさせてもらって…。 onClipEvent(load)と、ムービークリップ内の1フレーム目に記述した x=12 というのは、ほとんど同じ意味なのでしょうか.。 …と、ここまで書きましたが、実際悩んでいた現物は会社にあるので詳しく説明できません。 明日、現物のスクリプトを違う形にしてどこかにアップしてからもう一遍聞きたいと思います。 ありがとうございました。
onLoad()がどういうものか、ちゃんとヘルプを読んだ方がいいよ。
初期化って言ってんだからたぶん function init(){ x=12; } init(); みたいなのがやりたいんじゃないかな。
締め切りまであと何時間を表示するものを作ろうとしているのですが、以下ソース function atoNannniti(mYear, mMonth, mDate) { var nowDate = new Date(); var year = nowDate.getFullYear(); var month = nowDate.getMonth()+1; var date = nowDate.getDate(); var ima = dateUtcHour(year, month, date); var kijitu = dateUtcHour(mYear, mMonth, mDate); var remainTime = (kijitu-ima); return remainTime; } function dateUtcHour(year, month, date) { var answer = Date.UTC(year, month, date); answer = answer/1000; trace(answer); return answer; } hyoujiKigen = "締め切りまで、あと "+atoNannniti(2005, 1, 15)+"時間"; trace(hyoujiKigen); Date.UTC()が、new Date()を使うと実行できなくなります。 new Date()を一切使わなければDate.UTC()は実行できるため、 function外に逃がしてみてもダメでした。 解決方法があればお願いします。
346 :
345 :05/01/08 02:56:40 ID:GZay7zR4
dateという変数名がいけなかったみたいです。 dayに変えたら無事うごきますた。
<<316 ダイナミックテキストへ英数字以外のString読み込みの件ですが、 escape,unescape使ってみてもダメでした。 escape(str)で16進変換すると%,+," "等は「%20」と変換され、unescape(str) すると「%」と次の文字を16進と認識し変換してしまいます。 なんとかこれらの英数字以外の文字列を出力する方法はないものでしょうか? ググりまくってきたけれど分かりません。 よろしくお願いします。
>>348 ハイ「ヘルプ」を見ても分からぬ低知能ゆえ「ダイナミックテキスト」「句読法」等の
キーワードでかたっぱしから調べていった次第ですが・・・^^;
んじゃ説明するか。 まず、外部読み込みテキストでは、 その利用の形態上、&、%、+は使えない。 (さっき試したら「=」使えるのはどうかと思ったが) とりわけ、&は、hoge=1&hoge=2というように区切りに使うわけで、 &が中に入ってしまうと、どこからが変数と値なのか区別できなくなるわけで、当然使えない。 んだから、普段使わない組み合わせの文字列で、 @37は、%にするのようなルールを自分で決めて、 読み込んだ後から、探し出して、置き換える必要がある。 ついでに、String.fromCharCode(37)とすれば、%が表示できる。 あるいは、XMLで読み込めば、なんとかなるかもしれない。
351 :
Now_loading...774KB :05/01/08 10:24:30 ID:6BxzzGnF
外部ファイル中の文字を、 % → %25 + → %2b & → %26 " → %22 と置き換えればうまくいく。
352 :
Now_loading...774KB :05/01/08 10:44:30 ID:ASefCM7l
ドラクエ風RPGを作りたいのですが どのように作るものなのでしょう 町ひとつできればいいのですが。。 参考になるサイトなどないでしょうか? また 3D風 というか 奥行きのある町などを作る場合は どうすればいいですか?
なんかとっても答えづらい質問ですな
>>353 簡単に言うとToon Boom Studio風の擬似3DをflashMXでやりたい
ってことなんですが・・・
いや、それだと質問と違うだろ 君がやりたいのは3Dがしたいの?RPGがしたいの? 夢を壊すようで悪いんだけど、質問の仕方から言って 君にすぐにそれらが作れるようになるとは言いがたい。 かなり慣れてる人間でも頓挫する道だ。 ドラクエに感動したのはわかるが、もう少し考え直した方がいい。
>>336 >>339 >>342 onClipEvent(load)
って事は初期値の設定をしたいって事だよね。
そういうのは1フレーム目に
if(init==undefined){
init=true
//以下初期値データ
}
とでも書いておけば最初の一回のみ実効されるよ。
358 :
336 :05/01/08 13:41:57 ID:0oSYM6Zj
おお!undefinedスゲーです。恥ずかしながら知りませんでした。目からウロコです。 ありがとうございました!
MacでMXを使っています。 メインページのみFlashで作成して残りは 全てDreamweaver4でhtmlで作成しました。 getURLで別ページを表示させたいのですが、 相対指定でのターゲットの書き方がよくわかりません。 INDEX-Aフォルダ─Bフォルダ─GIKO_top.html │ └GIKO_top.fla └Cフォルダ─MONA.html でGIKO_top.htmlからMONA.htmlにリンクさせたいのですが、 on (release) { this.getURL("Cフォルダ/MONA.html","_self"); } としています。色々調べたのですが全然わかりません。 煙出そうです……そもそも根本的に間違ってるのでしょうか。 どなたか救済お願いします。
本当は板違いでWeb制作で聞くべきなんだろうけど 頑張って細かく説明しているので 相対パスでは、1つ上のフォルダという指定を 「../」であらわします。 ですのでその場合、GIKO_top.htmlからMONA.htmlには ../Cフォルダ/MONA.html と指定しましょう。
361 :
359 :05/01/08 17:41:57 ID:cXqQmNso
! 根本的に間違っていたのですね。 ……あのちっこい点々には意味があったのですね。 単に何かを省略してるだけなのかと勘違いしていました。 丁寧に教えて頂いてありがとうございます。 大変勉強になりました。 板違いすみませんでした。
362 :
322 :05/01/09 03:28:52 ID:QZnvQ2YN
>>324 さんくす
>それで何をしたいかによるが
わかる人がいてよかった。C言語の列挙体のことだね。
変数名とナンバーを列記して管理しようかな、、くらいかな
loadVariablesでdatファイルは読み込めますか?CGIでhensu=で吐いたものを取り込みたいのですが。MXです。よろしくです。
if(this.hitTest(_root.gun) && mode == 1){//もし自分とPlayer機が当たってかつmodeが1なら Life -= 25 if(Life <= 0){ mode = 0//モードをやられた状態に変更 _root.char -= Cdmg this.play()//再生開始 } } とやったんだけどEnemy機とPlayer機がぶつかったときのHit判定ができない・・・
365 :
丸山 :05/01/09 18:51:50 ID:57i5KPDS
すみません、携帯用のFLASH Lite1.1バージョンの待ち受け画像を作っているのですが あるフレームに移ってから3秒経つとtopのフレームに戻るとしたいのですが 上手く行きません。 GetTimer を使うということまでは分かるのですが・・・ どうぞ宜しくお願いします。
366 :
Now_loading...774KB :05/01/09 19:19:33 ID:V8etYj0U
すみません。教えてください 携帯(DOCOMO)で時間取得、表示がわかりません。 お願いします
>>363 む?CGIが渡してくれるのか、それともurlでとりに行くのか?
とりあえずやって実験してみればいいと思うが。
>>364 ソースが謎。
_root.char -= Cdmg←何コレ。
それにEnemy機とPlayer機って何?
自分が知っていることは相手も知っていると思い込まないこと。
>>365 GetTimerをフレームに移動した時に使い、その時間を記録します。
次に、2つのフレームをループするようにし、(5・6フレームでループなら6フレームにGotoAndPlay(5)と書く)
毎回毎回GetTimerを実行して、記録した時間との差を判定します。
ただ、携帯待ち受け画面は仕様上数秒立つとフレームがストップするので長さに注意してください。
>>366 意味不明。
368 :
Now_loading...774KB :05/01/11 00:31:51 ID:UdG/kD8C
ドラクエ風のマップを作っていて行き詰りました。どうかアドバイスをお願いします。 まずフリーで公開されていたマップチップセットを1マス(16*16)ずつ切り刻み、一つずつビットマップ形式で保存しました。 そして出来た大量のマップチップを読み込ませて一つずつムービークリップにしようと思いました。 しかし、木の枝や宝箱など、本来背景と重なるチップには、透過する部分が背景色で塗られているのですが、これをどうにか出来ないでしょうか。 ビットマップを分解して背景色を取り除く方法は、分解した時点で何故か画像が一回り小さくなってしまってダメでした。 今まで独学でやってきたのですが、他の方は一体どうやっているのやら・・。
教えてください。 CGIやPHPを使わずに、ActionScriptとテキストファイルだけを使用して、 テキストファイルに書かれている値を取得し、Flashで表示することは可能でしょうか? 環境は、FlashMXです。
>>370 ヘルプ「Flash Player のセキュリティ機能について」
373 :
370 :05/01/11 13:14:28 ID:A9nqYBoG
わかりました! 調べて作ってみます。 ありがとうございました。
374 :
Now_loading...774KB :05/01/11 14:39:31 ID:xHr6umr/
いやさ・・・言ってる事は分かるんだけど。 FlashってDVDで再生させて家のTVで鑑賞する性質のもんじゃないでしょ。 題材からしてこの板にもやりたい人はいると思う。 実際私も設計段階まで入ってたから。 確かにMpegで吐き出すってのは手だと思うけど、フラッシュの最大の特性を捨ててまでフラッシュで作る必要は? って事になってしまわないかな。 実際、CGだし書き出しも出来るけど、PCでのみ再生出来るのはNGってのも古いかなぁ。とは思う。 アニメーションGIFがNGってのとは訳違うでしょ。 まぁいいや。締め切りまで10日も無いから今回はパスしておく。orz
なんの話しだヴォケ
いわゆる誤爆か
すま・・・誤爆
初めて書き込みします。 よろしくお願いします。 ある動いているムービークリップを 自分の指定の位置までモーショントゥイーンのような感じで、 動かすスクリプトはどのように書けばいいのでしょうか。 環境は WindowsXPで、FLASH MXです。 よろしくお願いします。
クリップアクションにそれなりのas書けばあ?
例えば onclipevent(enterframe){ this._rotation += 10; this._x += 10; } これをムービークリップアクションに書けばほら動いた
>>379 お返事ありがとうございます。
初心者でして、お恥ずかしいのですが、
asってアクションスクリプトのことですよね。
その、asをどう書けばいいのか、わからなくて、
書き込みさせていただきました。
on(release)
{
// ( 10 , 10 ) の位置に移動
this._x = 10;
this._y = 10;
}
というかんじで、クリックすると瞬時にその場所に
出すことはできるのですが、モーショントゥイーンの
ように移動させたくて行き詰まってしまいました。
お手数をおかけしますがよろしくお願いします。
>>380 入れ違いになってしまったようで、申し訳ありません。
試してみます。ありがとうございます。
>>383 様
先ほど試してみましたが、私の思っている
動きとは違いました。すいません。
似たようなサイトがありました。
ttp://www.nis.co.jp/ このサイトのトップページのFLASHで、
しばらくすると3角形がグルグルと動き出し、
その頂点をクリックすると●がモーショントゥイーンの
ように動き出し、メニューが表示されます。
このような動きをやってみたいと考えているのですが、
実はとても難しかったりするのでしょうか。
何度も本当に申し訳ありませんが、よろしくお願いいたします。
>>384 基本的なことがわかれば、結構簡単に作れるものだから
本を買ったり、flaファイル落とせるサイトで勉強したりしたら
たぶん、1週間あれば作れるようになると思うよ
頑張れ
ASは、スクリプトだから、様々な命令を用いてコントロールするってもの
動きひとつひとつに、キチンとした数式やら命令が存在するから
そこからジョジョに覚えていこう
>>385 丁寧にお返事いただきありがとうございました。
クライアントの要望に、スキルをわきまえずに
受諾してしまい、締め切りギリギリで、
テンパっております。
反省しております。
今後は精進して1からASを勉強したいと思います。
対応、本当にありがとうございました。
>>386 そういう仕事請けちゃまずいよ。
そのサイトのトップページに関しては、見た感じだとライン引きを使ってる。
A点、B点、C点の座標を毎フレーム取得して
lineStyle(1,0x00ffff,100);
beginFill(0x0000ff,25);
moveTo(Aの座標);
lineTo(Bの座標);
lineTo(Cの座標);
lineTo(Aの座標);
endFill();
で、多分ランダムに座標の移動幅を取得してる。これも当然スクリプト。
三角関数で移動幅を1つの変数から割り出してると見える。
ここらへんは数学的な話になってくる。で、チェイスオブジェクトを組んでるから、これもスクリプトだす。
とりあえず、1から初めてここまで1週間はきついかと・・・。
何かプログラムをやってたとしても数学的な論理思考とかが必要になってくるし、なんともな。
この位のスクリプト組むだけならそんなに難しく無いから、慣れてればすぐ出来るんだけどねぇ。
要はこれに似せた感じの動きをさせたいってだけでしょ? すべてASで組めば、当然三角関数やら、様々な数学的要素を必要してくるけど AS+それを補う機能を使えば、マスクもあるんだし 1週間あったら、この程度組めると思うよ 兎に角頑張れ
>>386 そ、それはきついね。
騙し騙しでよければASで動かすことを考えずに
予めトゥイーンで作ってしまって
マウスの動きに反応してgotoAndPlay命令で動かすくらいのほうがいいよ。
だいたい参考サイト見てこんな感じだろうなってのが イメージできない程度のレベルでそんな仕事うけんなよ 迷惑
まぁ、まったり行こう。 別に気分悪くさせられた訳じゃないし、まったく問題ないでしょ。
多分一週間では制作無理でしょう… 手遅れにならないうちに謝っておいたほうが。
漏れが替わりに引き受ける代わりに金くれ
>>393 あのサイトのフラ程度でいいなら、このスレに請け負う奴は多数いるかと・・・。
むしろみんな食指を伸ばしてるんじゃマイカ?
普通のas使いならあの程度のスクリプトは無問題だろうけど、 ASがアクションスクリプトの意味だって事を初めて知ったとか、 言っている奴が1週間でああいう物を作れるとは思えないね。 Flashいじくる事自体が初めてじゃねーの?
出来る出来ないは本人次第 flash弄れなくても、頭のいいやつは覚えもはやい それだけのこった
締め切りはいつなんだろね。
オレは、請け負ってるなんて話し真に受けてないから知らん
いや、多分ガチだろ。 グラフィックの事務所で、絵を扱うんだから出来るよね?って感じで言ってくる客はいる。 で、得意先とかだと無碍に断れないでズルズル来ちゃったんでないか? ぶっちゃけ、力量や出来る事出来ない事の見極めが出来てないのはご愁傷様としか言えませんが。 ASはその程度の認知度しかないぽ。
ま、相手もバカじゃねーんだから、そこまでのクオリティー求めるなら そんなわけわからんやつに頼んだりしないだろ? 頼んだとしても、当てにはされてないだろうし、自分のために 誠意見せれればいいんじゃねーかな?
値段が気になるな
すいません、本やネットで調べたのですが、 解らなかったので質問させて下さい。 FlashMX2004を使っているのですが、配列のコピーの仕方がわかりません。 普通に = を使って代入しても、代入元のアドレスが代入(?)されているのか、 代入元の値を変更すると、代入先の値も変更されてしまいます。 何か別に方法があるのでしょうか? よろしくお願いします。
>>396 >>381 を見ると、とてもじゃないが頭のいい奴には見えないワケで。
自分の技量を無視した仕事の請負方をしていると
最悪、契約不履行に陥って、信用問題に関わるんだな。
>402 Array.concat()でどうでしょう。 var list1 = [ 1, 2, 3 ]; var list2 = list1.concat(); list1[0] = 0; trace( list1.join( "," ) ); //出力 : 0,2,3 trace( list2.join( "," ) ); //出力 : 1,2,3
405 :
402 :05/01/11 22:53:26 ID:uTYiWLW8
>>404 回答ありがとうございます!
無事コピー出来ました。
自分でもあれから調べたのですが、
concat()の他にもslice()でも出来ました。
本当にありがとうございました。
みんなクライアントの話に凄い反応w 優しいんだな。
すいません。Sound クラスについて聞かせてください。 my_sound = new Sound(); my_sound.onLoad = function(success){ if(success){ this.start(); hoge = true; } } my_sound.loadSound("abc.mp3",true); としたとき、パブリッシュしてswfファイルから開いたときだけ、なぜか hoge が true になりません。 ムービープレビューのときはきちんと true に設定されるのですが・・・。 ムービープレビューとswfから開く場合とでは、何か違いがあるのですか?
408 :
407 :05/01/12 01:05:53 ID:eHoyQ65Q
ソフトは Flash MX 2004 OSは WinXP ps1 です・・。
>407 abc.mp3はswfと同じディレクトリにありますか? パブリッシュ後 swfだけ違うディレクトリに移動したとかはないですよね。
onLoadは、読み込みが終わったときだけ実行される。 既にキャッシュやHDに読み込まれているときは実行されない。
411 :
407 :05/01/12 01:43:34 ID:eHoyQ65Q
すみません、よく調べたら hoge = true はちゃんとなってました。
でもSoundが再生されたりされなかったり、hoge に対応したムー
ビークリップが動かなかったり動いたりして、ワケワカメ状態です・・。
(それで hoge が true になっていないんだと思い込んでました)
>>409 それはないです。
>>410 onLoad はちゃんと実行されているようです。
市販のテキストによると、loadSound の直後に start(); すると、誤作動
を起こすらしくて、onEnterFrame で一コマずらせと書いてありましたが、
onLoad を onEnterFrame の中に入れるのは間違ってますか?
やっぱりうまく行かないんですが・・。
412 :
407 :05/01/12 02:07:02 ID:eHoyQ65Q
自己解決しました! 複数のサウンドを扱っていたのですが、 ボタンを押したら再生中のサウンドを停止し、新しいサウンドを再生する スクリプトで、stop(); と start(); がゴチャゴチャになっていたようです。 stop(); の後一コマずらしてから start(); するようにしたら、swfでもうまく行きました。 ありがとうございました。 でも、今度は start(); の後に stop(); 命令が来てもなぜか再生し続ける、ムービー プレビューの方が気になってくる・・・。
Flashの外部XMLって、解説書のサンプル見ると、 要素の順番や数は、絶対に厳守しないと 正常に動作しない感じのものが多いのだけど。 例えば、写真のURLと解説がセットになっているとか。 実際に使うときは、webサイトのメニューのツリー構造を自由に指定したり、 そういう使い方するものなのだよね?
微妙な誤爆ですか?
お勧めのActionScriptエディタって何??
>>415 ずばり今のところ無い!
なんかどれも微妙に機能が欠けてる気がして・・・
今のところ思いつく対応エディタは
秀丸、Peggy、SEPYとかか。
SEPYが無料だったような気がするけど日本語対応できてたっけな?
いっそのことjava用のエディタでも結構何とかなるかも。
いろいろ探したのですが、私も無いという結論に達しました。 ver2.0に対応したコードヒントがあればとりあえずいいかなと思っていたんですが。
>>417 Peggy、SEPYは2.0に対応したヒントが出るようになっていたはずです。
ただしPeggyは最初の文字から検索する形ですけどね。
私はPeggy使ってます。フリーじゃないですけど。
そこでnotepadでつよ
もれもメモ帳
421 :
Now_loading...774KB :05/01/12 22:03:46 ID:7ON7ycHN
マルチすんな糞
402さんの質問に便乗させてください(ちと遅いけど 構造体データのコピーの場合はどうしたらよいのでしょうか? 下記のようなやり方でなんとかコピーしてましたが、 構造体の中の要素が構造体を持つ場合にコピーを失敗してしまいます;; for(var i in hoge){ this.localHoge[i] = hoge[i]; }
やべぇ・・・。
構造体の意味がわからない俺は吊るべきかな?
どうしても構造体って言葉を聞くとGetBoundが出てきてしまう。
>>424 の構造体ってのは多重配列って事とは違うのかな?
もう俺ダメだ。スクリプトが涙で滲んで見えなくなってきた。
勉強して出直してくる。ノシ
>424 無理やり作成するならこんな感じですかねえ。 一発でできるスマートな方法が何かあるのかもしれない。 //変数設定 var dataObj = { abc:1, def:2 }; var obj1 = { a:1, b:2, c:dataObj }; var obj2 = cloneObj( obj1 ); obj1.a = 0; //データ書き換え trace( obj1.a ); //出力 : 0 trace( obj2.a ); //出力 : 1 //オブジェクトコピー用メソッド function cloneObj( _obj ){ var obj = new Object(); for( var data in _obj ){ if( typeof _obj[data] == "object" ){ obj[data] = forRoop( _obj[data] ); }else{ obj[data] = _obj[data]; } } return obj; }
427 :
426 :05/01/13 00:43:52 ID:ZoXyIJWO
すみませんミス × obj[data] = forRoop( _obj[data] ); ○ obj[data] = cloneObj( _obj[data] );
>>424 補足。
コピー自体はそうなのですが(クローンって言います。)
何故構造体の複製が一筋縄でいかないのは
ツリーのような形をしていれば話は早いのですが、網の目のような構造の場合もあり
構造体の中に同じ構造体を含むループ構造が存在するからです。
クローンする場合は、その構造体の形に合わせて適切なコピー方法を作るしかないんですね。
>>423 あのさぁ関係ないんだけど首吊って死ぬとか言われると答える気なくすよ。
いいかげんにしろよ
>>いいかげんにしろよ がぁーん 首吊って死ぬ
431 :
424 :05/01/13 02:54:42 ID:GnB2eL7S
>>426 なるほど。typeof()関数で判断させるわけですね。
>>428 そうですか。やはり、構造体の複製は、
そのつどロジックを用意しなければなりませんか・・・
426さんのソースを参考にチャレンジしてみます。
ありがとうございました。
すいません、教えてください。 Flashは、外部からの指示で画面をダウンさせるか、 キャッシュを排除して、再度データを受け取らせてから、表示させることは可能なのでしょうか? もしくは、ある一定の時間で画面を落としてしまえたら、助かるのですが・・・。 無理でしょうか?
画面をダウンの意味がわからない。
すいません・・・ 一度、画面を落としてしまうということです。 キャッシュが残ってしまって、更新しても新しい情報が表示されないので、 新しい画面だと、大丈夫新しい情報のFlashが表示されるかなと思いまして・・・。
436 :
433 :05/01/13 12:02:38 ID:TXJR8pJg
何度もすいません × 新しい画面だと、大丈夫新しい情報の・・・ ○ 新しい画面だと、新しい情報のFlash・・・ です
>一度、画面を落としてしまうということです。 日本語にしただけじゃん。
438 :
433 :05/01/13 12:08:04 ID:TXJR8pJg
何度も何度もすいません・・・ Flashの表示されてる画面を自動で閉じれたらなとおもいまして・・・
ウインドウを消すだけならjavascriptだろうけど。 これはjavascriptで開いたウインドウ限定で。 でも上の質問文見てると何かを勘違いしているような気がする。 何がしたいの?
確認ダイアログ無しでブラウザをシャットダウンしたいって事か?? とりあえず、更新をしても情報が更新しないってのがピンと来ないんだな。 getURLからJavaScriptでreloadでも埋め込んでみてはどうだろ。 もしくは何がしたいか具体的に言えば、方法を模索する事も出来るとは思うけど。
せんせぇーしつもん。 XMLを解析していって、 その構造と、値を表示するものを組んでいるのですが、構造をうまく表示できません 以下ソースです myXML = new XML("<tukue><hikidasi><kureyon><iro>赤</iro><iro>青</iro></kureyon></hikidasi><ue>ノート</ue></tukue>"); kodomoWake(myXML,"") function kodomoWake(oya,kouzou) { var childNode = oya.childNodes; for (var i = 0; i<childNode.length; i++) { var theChildNode = childNode[i]; if (theChildNode.firstChild.nodeValue == null) { kouzou+=theChildNode.nodeName + "\t"; kodomoWake(theChildNode,kouzou); } else { childNodeName = theChildNode.nodeName; childNodeValue = theChildNode.firstChild.nodeValue; trace( kouzou + childNodeName+" \t "+childNodeValue); } } } tukue hikidasi kureyon iro 赤 tukue hikidasi kureyon iro 青 tukue ue ノート と表示したいのですが、 最後の行が、 tukue hikidasi ue ノート になってしまいます。 再起的に呼び出しで通ってきたルートを表示するにはどうすればいいのでしょうか?
442 :
433 :05/01/13 13:32:56 ID:TXJR8pJg
<<439さま、440さま、どうもありがとうございました。 Flashをネット上ではなく、ローカル環境においた上で、 リアルタイムに情報だけを変えたいんです。 swfファイルを、他のプログラミング言語で起動したり、 シャットダウンしたりできたら言うことないのですが。 それは不可能でしょうか?
何を使って情報を変えるのかによる。 別のプログラムがswfファイルをいじるの?
444 :
433 :05/01/13 13:41:00 ID:TXJR8pJg
別のプログラムは、xmlにリアルタイムにデータを送って、 swfファイルを起動したり閉じたりするだけです。
じゃあflashがxmlを読み込みなおせばいいだけじゃない。
446 :
433 :05/01/13 13:46:01 ID:TXJR8pJg
そんな方法があるんですか・・・ 調べてみます!
すいません、TextFieldについて質問させて下さい。 使用しているソフトはFlashMX2004です。 ステージにテキスト入力を配置し、 スクリプトで大きさを変更しようとしたのですが上手くいきません。 a_txt._width = 100; としても実際には、105が入ってたりします。 ボタンを押すたび1づつインクリメントすると、 実際とは違いかなり大きい数になってしまいます。 思い通りにTextFieldのサイズを変えるには、 どうすれば良いのでしょうか?
on (release) { txt._width = 100; trace(txt._width); } mxで確認したけど、普通に出来たよ
450 :
448 :05/01/13 20:51:54 ID:Yk1qKBzL
すいません、質問を訂正させて下さい。 ステージではなく、MCの中に配置したテキスト入力に対して、 サイズを変更しようとすると上手くいきません。 a_mc.a_txt._width = 100; と言う感じです。 ステージ上にテキスト入力を配置してのサイズ変更はできました。
>>449 レスありがとうございます。
そうなんです。
>>449 さんが書かれたようにすると上手くいくのですが、
MCを挟むと上手くいかないんです…
なぜなのでしょうか?
on (release) { mc.txt._width = 100; trace(mc.txt._width); } 結果は同じでしたよ。 出来ました。 なんででしょうかね。。
Flex Builderのデバッグで特定の変数の値を知りたい場合(Visual StadioならばWatchWindow) どのウィンドウを見れば良いのでしょうか?? 下ウィンドウにwatchタブがありますが、ここなのでしょうか?? 使い方がわかりません。
>>452 お手数をかけて本当にすいません。
自分なりに色々試した結果原因がわかりました。
テキスト入力を配置した際、
サイズをプロパティで直接入力したせいで、
実際に配置したサイズよりも拡大されて表示されていたようです。
そのせいで_widthに1を加えても正しく反映されず、
数値が大きくなっていたようです。
すいません、かなり初歩的なミスっぽいです…いままで気付かなかった…orz
>>452 さん、ありがとうございました。
>>441 スタック用の配列用意して解析中のノード名を積め。
そうすれば絶対パスは配列結合して得られる。
>>441 ソースもおまけ。
myXML = new XML("<tukue><hikidasi><kureyon><iro>赤</iro><iro>青</iro></kureyon></hikidasi><ue>ノート</ue></tukue>");
kodomoWake(myXML, new Array());
function kodomoWake(oya, kouzou) {
kouzou.push(oya.nodeName);
for (var i = 0; i < oya.childNodes.length; i++) {
var theChildNode = oya.childNodes[i];
if (theChildNode.nodeType != 3) {
kodomoWake(theChildNode, kouzou);
} else {
var childNodeValue = theChildNode.nodeValue;
trace(kouzou.join("\t") +" \t "+childNodeValue);
}
}
kouzou.pop();
}
>>455 ありがとうございます。
なるほど。言われてみると非常にシンプルで簡単ですね。
一日悩んでいたのですっきりしました。
ちょいとスレ違いかもしれないんだけど聞いてくれよも舞ら。 漏れ、最近自信無くなってしまってさ。 XMLとか分からんのだよな。CGIとの連動すら毛嫌いしてしまう。 FreeHand、FireWorks、フォトショ、イラレ、Flash。これは良いんだけど、DreamWeaverがどうにもわからん。 アニメーションを表現するスクリプトに関しては特化してるとは言われるし、自分でもそれは分かるんだ。 ここでも随分と回答してきたけど、最近出てくる質問が外部読み込みばっかりで悲しいのだ。 やぱーしDreamWeaver覚えると視野って広がるもんかな? 長くデザ畑なんだけど、素材作成に特化してるくらいじゃ今後きつくなってくるかなぁ。と思ってさ。 ちょっとアドバイスしておくれよ。
459 :
433 :05/01/14 10:07:37 ID:mEaWSAqZ
昨日、FlashでXMLを読みなおしのことを教えていただいたのですが、 調べてみたところ、Flash Remotingばかり出てきます。 XMLを読み込みなおしたりするには、これが無いと無理なのでしょうか? それともほかに、方法はありますでしょうか? ちなみに、Flashには、15分単位ぐらいで、XMLのデータを再読み込みしてもらいたいと思っています。
461 :
433 :05/01/14 10:19:46 ID:mEaWSAqZ
>>460 さま
すごい・・・これです。
ありがとうございます!
でも、むなしいことにどの位置に入れたらいいのかわからない・・・_| ̄|○
DreamWeaverてHP作成ソフトだと聞いたことがあるので 私は使ったことないけれども、 ソフトの使い方を覚えたところで視野は広がらないと思う。 手書きでHTMLやCSSの書き方覚えたほうがいいんじゃないですかね。
463 :
433 :05/01/14 10:26:22 ID:mEaWSAqZ
なんどもすいません・・・この教えていただいたものは、 ローカル環境だと、urlが存在しないので、使用できないでしょうか? とても理想的だったのですが・・・
>433,463 読み込み先XMLファイルをurlにすればよいのでは
465 :
433 :05/01/14 10:49:41 ID:mEaWSAqZ
>>463 さま
読込先XMLファイルをURLにすればいいというのは、
どのようにすればいいのでしょうか?
環境的には、ひとつのパソコンで、一切ネットワークには接続できません・・・。
頭が悪いにもほどがある いままでどうやって読み込んでたんだよ…
Mr.マルナゲだな
>465 test.xmlという名前のXMLファイルを読み込む場合 var url= "test.xml"; とすればいいのですよ。 swfとxmlファイルは同じディレクトリに配置してください。
469 :
433 :05/01/14 11:58:40 ID:mEaWSAqZ
>>468 さま
親切にどうもありがとうございました。
よくわかりました、試して動かしてみます。
>>466 さま、467さま
申し訳ありません・・・。
100ページ位のサイトを数個作っているがDWが重宝してるぞ
>>458 まあ、天下のMacromediaもFlex出して
今後はFlashをインターフェースにしたアプリケーションの方に
傾向するような雰囲気が少しあるので、
これからは単なる装飾としてのFlashではなくて
その他(サーバーとか)と連携するような機能的コンテンツ開発が
重宝されるようになるのかも知れない。
Flashに加え、必ずしもDreamWeaverである必要はないけど
PHPとか開発できると、中小顧客向けで意外と強いかも?
という希望的観測。
>>458 XMLの質問しておいてなんだけど、
漏れもプログラム言語としてはASはおもちゃに近いかなと思う。
動く絵日記とか、文字が動くとかそういうムービーを支援するのが
普通の使い方かなと。
こないだonClipEvent(load)についてぐだぐだ質問していた者ですが、またまた同じような質問です。 (例えば_level10に新しいswfを読み込んでいるとして、そのswfをアンロードしたときに発生するコマンドを作りたい場合) onClipEvent(unload)に代わるものは何でしょうか?onUnloadではダメなようです。
ちょっと教えてください Flashはローカル環境でもXMLを読み込むことは可能ですか? htmlファイルを開いたら、データを読み込んで表示されるんですが、 swfファイルだと、一切何も表示されないんです。 何かいい方法があれば教えてください
パスについて勉強してくるといいかもしれない。
スタンドアロンプレーヤーのバージョンが低いんじゃね?
>473 onClipEvent(unload)及びonUnloadはFlashのヘルプによると 指定MCがタイムラインから削除された後実行されるもの と書いてあります。 つまりonClipEvent(unload)に代わるものはonUnloadです。 >swfをアンロードしたときに発生するコマンドを作りたい場合 普通にアンロードした時に実行したいメソッドを呼び出せばよいのでは? >474 読み込めますよ。
478 :
Now_loading...774KB :05/01/15 10:31:37 ID:u6i+ky+N
createTextFieldについて質問です。 外部テキストを読み込んでcreateTextFieldで出力するFlashを作っているのですが、 縦幅横幅を指定する際に縦幅を文字数に応じて自動にするには どうしたらよろしいのでしょうか?
>>478 ルパン風タイトルメーカーのソースがわかりやすいと思う。
くだらんレスしてんなよ
>>481 返信ありがとうございます。いままで一人で悩んでいたので、ちょっと感動しました。
しかし、私の言葉たらずでうまく伝わらなかったようです…すいません。
先程の質問を詳しく書かさせていただきます。
ttp://www.sumnet.ne.jp/domp/jsbs/sample/window6.htm フラッシュのボタンクリックで↑のリンク先に飛ぶということではなくリンク先のウインドウサイズを固定or位置指定するジャバスクリプトを
フラッシュのボタンで有効にするには、HTMLとフラッシュ内のどこに下記のどのタグを貼ればいいのでしょうか?
<SCRIPT language="JavaScript">
<!--
function OpenWin(){
win=window.open("window.htm","new","width=100,height=100");
win.moveTo(0,0);
}
// -->
</SCRIPT>
<A href="javascript:OpenWin()">ウィンドウを開く</A><BR><BR>
<FORM>
<INPUT type="button" value="ウィンドウを開く" onClick="OpenWin()">
</FORM>
下記のURLは上記のジャバスクリプトのサンプルです
ttp://www.sumnet.ne.jp/domp/jsbs/sample/window6.htm 何度も申し訳ございません、よろしくお願いします。
なにこいつ
485 :
483 :05/01/15 15:45:16 ID:oHwcxXh6
すいません間違えました。 ×言葉たらず ○脳味噌たらず
getURL("javascript:OpenWin();")
>486 ありがとうございます。 >487 本当だ!ありがとうございます! >484 空気を濁してしまってすいません、出直してきます。
macromedia以外のソフトだと、 アクションスクリプトという言葉を使っていないのだけど、 何か使っちゃいけない事情でもあるのですか?
どっちでもいい気がするがアプションスクリプトじゃだめ?
確かに、ソフト名のなんたらスクリプトって書いておけば、 関連書物出せば、狙い撃ちできるし、検索にもアクションスクリプトで探さないし。 そんな狙いがあるのかも。
Action ScriptもそろそろScriptじゃなくなってきてる気がするけどね
>>494 EXEファイルにコンパイルするようになるって事?
exeの出力があっても面白そうだな swfのままいろいろ操作とか出来ても悪い事考えるヤシが出てきそうな悪寒するしな もれはデルファイとVB使ってるからイランが
497 :
Now_loading...774KB :05/01/16 18:07:13 ID:O4Lj6sJi
抜き取って欲しくないんじゃないかなぁ。 てかスレ違い。
作ったswfが重くて仕方がないので画質を落とそうと思い、 _highquality=0と2番目のフレームにフレームアクションとして記述してみたのですが 一向に画質が落ちてくれません。 ボタンアクションにして on (release) { _highquality=0 gotoAndPlay(3); } とかやってみたんですが画質が変わりません。 何か根本的に間違ってるんでしょうか?
vip = "LOW"; _quality = vip;
なんやvipって;
. ,ノ\___ノヽ
. /'''''' ''''''::::::`、 + +
. /(○), 、(○)、. / + + +
≡ ≡ ≡ / ,,ノ(、_, )ヽ、,,.:::::/ + + +
〃 ̄ヽ 三 ≡ ≡ / `-=ニ=- .::::/ + + + +
r'-'|.| O | 三 ≡ ≡ '、_ `ニニ´ .::::ノ + +
`'ーヾ、_ノ 二 ≡ ≡ / `, + +
| ,| ./ / ・ ・ l l
| ,| / / / /
| ,| \\=====/ノ
,-/ ̄|、 (m) (m) それがVIPクオリティ
ー---‐' (__)(__)
http://ex7.2ch.net/news4vip/
503 :
L :05/01/17 14:18:21 ID:ozn/16Rs
どなたか、プロテクトの掛けられたSWFを編集する方法を御存知ないでしょうか? 業者に作って頂いたメニューつきのSWFを使う事が出来なくて困ってます。 メニューの一つがレンタル掲示板でmetaタグをHTMlに仕込む事も出来ないので、 SWF内メニューのURLの書き換えをしたいのです。 (業者の方には連絡がとれません) 親切な方に教えて頂いて、LoadMovieのSWFを造り、 読み込もうともしてみましたが、それも出来ないようです。 (作り方が間違ってるのかもしれませんが・・・) FLASH MXを持っていますが、初心者です。 どなたか教えてください、よろしくお願いします。
教えたくはないがどうせ有名事実なので。 フラクリ あとは頑張れ。
業者と連絡が取れないって・・・。 お舞アホウだろ。夜逃げでもされたか?
506 :
L :05/01/17 14:46:31 ID:ozn/16Rs
そうです。見事に夜逃げされました(泣) 今、フラクリを調べて買いました。 これから、試してみます。本当に本当に有り難う。
描画メソッドで、 (100,100)を中心として(200,200)までを半径とした円を書くにはどうしたらいいですか? 相似円でもいいです。
カーブを使ってこんな感じに。 □ ■ □ ■ ■ □ ■ □
>>508 やってみます。
ありがとうございました。
510 :
Now_loading...774KB :05/01/17 19:09:29 ID:V74b2RxW
http://pc5.2ch.net/test/read.cgi/swf/1071929938/ 631さんより誘導されてこちらへやってまいりました。
下記について教えてください。
【やりたい事】
(1)タイトルバーの名前を
現状) 「Macromedia Flash Player 6」
変更) 「???????任意の文字(半角でOK)」
にしたいです。
(2)パブリッシュ設定で「Windowsプロジェクタ」を選びパブリッシュしました。
画面はフルスクリーンではなくVGAのウィンドウ表示をさせたい。
タイムラインの最初に、
fscommand("showmenu", false);
としてメニューバーを消そうとしました。メニューは消えたのですが、
exeファイルを実行すると画面の上下に黒い帯が表示されます。
メニューバーが消えた分の幅が上下にできてしまいました。
【 質問内容 】
(1)タイトルバーを変更する方法をどなたかご存知ありませんか?
(2)黒い帯の部分を消したいのですが、何か良い方法はないでしょうか?
【 使用環境 】FlashMXをWinXPProで使用しています。
Flash6で表示をしてます。
宜しくお願いします。
>>510 Flashである事を見せたくないのだと思うけど、他のアプリ使わないと無理だねえ。
WinならActiveXでもComでもプレーヤーが提供されてると思うよ。
意味が分らなかったら、自分で調べるか業者にでも頼んでみてね。
所詮FlashはFlashでできるところまでしかできないよ。
512 :
Now_loading...774KB :05/01/18 20:27:18 ID:Dv9e0vFW
ちゃんねるぼっくす TOPページの512kb氏のFLASHのように、 毎回ランダムにムービーが表示される方法を教えていただきたいです。 使用環境 FLASH MX 2004をWinXP Proで使っています。
Math.floor(Math.random()*100) ヒントはここまで
更にヒント上のをぐぐれ
それで解ったらこんなとこでそんな質問せんと思うが。。。 onLoad = function(){ i = math.floor(math.ramdom()*100); _root.loadMovie("movie" + i + ".swf", i + 100); } 大方この手のasで最初のフレームが読みこまれた時に ランダムな整数値を出して、movie整数値.swfって感じのムービークリップを読みこんでるんだろ? つか、初歩の初歩だわな
つか、イベントハンドラメソッドいらねーな
スクロールバーの作り方を教えてください。
>>515 むしろ、初歩の初歩として loadMovie が出てきてしまうのはどうかと思うが。
本当に初歩の初歩としてアドバイスさせてもらうとだ。
>>512 ランダムで発生させた変数から、その変数のフレームに飛ばす方法から覚えよう。
turu = Math.floor(Math.random()*9+1)
で1〜10までの変数が取得出来る。
gotoAndStop(turu) と指定してやれば取得されたフレーム数へ飛ぶ。
これを上手く発展させてランダムにムービーが表示されるようにするのが良い。
例えば、kame=turu*10 としてやって、 gotoAndPlay(kame) とすれば、
10、20,30・・・・90,100 の変数が取得出来る。
MCで10フレから19フレまでのアニメーション、20フレから29フレまでのアニメーション・・・のように作っておけば、
ランダムにムービーが表示される。これも立派にランダム表示だ。
もちろん、19フレ・・・にgotoAndPlay(10)と記述していく手間はあるが、理解しやすさとしてはここからが良かろうて。
色々な事に応用効くぞ。オヌヌメ。
(´-`).。oO( goto文はラベル指定にする癖つけたほうがいいですヨ
>>518 そか?まあ、別にいいんだけど
十分すぎるほど初歩だと思うけど
randomのスペルは間違っていたがw
FLASHをmpegかaviに変換できるソフトありませんか?
あります! Macromedia Flashというソフトです。 日本語版もあります。ちょっと値は張りますが…。
523 :
512 :05/01/19 18:50:53 ID:7eghkoEo
皆様、ご丁寧な解説ありがとうございました。 すべて参考にさせていただきます。 初歩の初歩ですか。理解するまで先は長いようですね。 これから、少しずつASについて勉強していこうと思います。 ありがとうございました。
524 :
Now_loading...774KB :05/01/19 19:57:21 ID:5RCP8fN9
ASってなんて呼べばいいんですか?
あす
えーえす
アンチセックス
jpgが、loadMovieで読みこめない時があるんだけど、なんかあんの? 大元タイムラインに、 _root.loadMovie("01.jpg")は読みこめない _root.loadMovie("01.swf")は読みこめる _root.createEmptyMovieClip("jpgloader",1); jpgloader.loadMovie("01.jpg")は読みこめる 誰か教えて
_rootにjpg読み込んだら 常識的にだめだろw
その心は?
もしかしてタイムラインがなくなるから? つまり、_rootに読みこむじゃなくて、_root自体をjpgに置き換えてしまうってことだ? なんとなくわかったぜい
532 :
Now_loading...774KB :05/01/20 00:44:58 ID:ixWhS+vk
解決おめでとう
アルファ情報入りのAVIを読み込むと アルファが無効になるのはフラッシュの仕様でつか?
>>533 仕様。時期FlashPlayerではFLVに8bitアルファが使えるらしい。
536 :
Now_loading...774KB :05/01/20 03:26:12 ID:y63O/xbE
537 :
536 :05/01/20 03:27:57 ID:y63O/xbE
539 :
536 :05/01/20 05:07:50 ID:y63O/xbE
>>538 さん
初心者には厳しそうですね
どうもありがとうございました
質問なんですが onClipEvent (enterFrame) { trace(this._alpha); if (this._alpha>=30) { alphaNum = this._alpha alphaNum -= 5; this._alpha = alphaNum; } } 上記スクリプトのtrace結果が 100 94.921875 89.84375 84.765625 (中略) 39.0625 33.984375 28.90625 と出て、-5ではなくなっているのですが何故でしょうか。 どうすれば-5で計算されるか教えてください。
541 :
Now_loading...774KB :05/01/20 12:01:26 ID:jBomKE3B
すいません。パブリッシュがLITE1.0で、KEYPRESSで他サイトに飛ばしたいのですが、たとえばどのように書いたらいいのでしょうか?ムービークリップにON(KEYPRESS "キー")で、かいても動作しませんでした
>>540 traceで実験してるのに好感が持てたのでマジレス長文。
はい、いわゆるこれは動作上の誤差ですね。
いろんな理由が考えられますが、おそらくアルファというものが
そもそも100段階ではないのが原因かと思います。
ってのは、PCの色は256段階で、その混ぜ合わせ比率であるアルファも256に関係する数字のはず。
ところがそれだと扱いにくいので、Flashではわざわざ100%で入力させ
その後正しい値に変換して処理してくれるのだと思います。親切です。
しかし、当然割り切れないのでこの時微妙な誤差が出て、そういう結果になるのでしょう。
対処法は
onClipEvent (load) {
alphaNum = 100;
}
onClipEvent (enterFrame) {
trace(this._alpha);
if (this._alpha>=30) {
alphaNum -= 5;
this._alpha = alphaNum;
}
}
このように、alphaNumを別の変数として扱い、
これを毎回5ずつ減らして反映させるという方法です。
これなら誤差が出ないと思います。頑張ってみてください。
>>541 携帯からの書き込み?
ドコモサイトによると取得できるキーは
数字とエンターキー、*と#のみのようです。
その手法で取得できるはずですよ。
>>542 ありがとうございます。すごい助かりました。
アルファが100段階じゃないってのは勉強になりました。
>>544 ちなみにtraceで出たやつが少し誤差でるのは同じ理由でかんべんなー。
ちょっとおしえてくれ 初心者な質問で恥ずかしいんだが、ループの設定時間とかは 外部ファイルで指定して、簡単に書き換えるってことはできんよな? 結局Flashファイルは、パブリッシュしないと動かないもん?
「ループの設定時間」の意味が不明です。
>>547 すまん、何秒かごとに同じ画像を繰り返して貼り付けたいんだが、
その秒数は、外部で指定することなんてできないよな
Flashのコードに外部から秒数を指定してそのまま使えたらいいんだが、
無理?
変数から勉強し直せ
550 :
541 :05/01/20 13:41:29 ID:MS8V0ZJA
さきほどは携帯からで失礼しました。さっきの問題はムービークリップからボタンにしたら直りました。
ただ申し訳ないのですがまた2つ質問があります。
今ルートの直下に2つのボタンクリップがありそれぞれ
on(keyPress "<Enter>"){getURL("
http://www.yahoo.co.jp ");}と
on(keyPress "<Enter>"){getURL("
http://www.google.co.jp/ ");}
と書いてあるのですが、どちらにカーソルを合わせてenterを押してもヤフーにしか行きません。
どうしたらdocomo公式メニューみたいにenterを押すボタンクリップによってurlを変えることが出来るのでしょうか?
もう一つの質問はflashlite1.0のパブリッシュ設定で、flash内で生成された変数を他の例えばPHPなどに送ることは可能でしょうか?
on(release){
Q = 3;
getURL("
http://www.yahoo.co.jp?id=Q ");
}
などとしてもid=Qのままになってしまいます。
長々失礼しました。
>550
2つのon( keyPress "<Enter>" )がバッティングしてしまってますよ。
キーをEnterと他のキーに振り分けるか、
判定文を作成して飛び先URLを変えられるようにしましょう。
後は、
getURL("
http://www.yahoo.co.jp?id= " + Q);
に修正
552 :
541 :05/01/20 14:07:17 ID:MS8V0ZJA
>>551 上のはキーでなくon(release)で動くことがわかり解決しました。
ありがとうございました。
下のは、同様に書いても正常に動きませんでした。
554 :
541 :05/01/20 14:47:50 ID:MS8V0ZJA
+ ではなくaddにしたら期待通り動きました。 丁寧にありがとうございました。
>>548 HTML内でムービー読み込みの際にクエリーとして渡すとか
<param name=movie value="hogehoge.swf?interval=1">
JavaScriptからSetVariableメソッド使ってFlashオブジェクトに
値を渡すとか、色々方法はありますよ。
ASからフレームレートの変更って可能ですか?
フレームレートは不可変。 ASでMCを制御する事で擬似的に遅く見せる事は可能。
560 :
Now_loading...774KB :05/01/21 01:02:51 ID:WdMw2fid
すみません質問なんですが onClipEvent (enterFrame) { trace(x); x +=_xmousex; } flashプレーヤー6では問題なく動いたんですが flashプレーヤー7になると動かなくなりました(変数を他で初期化すると動きました) staticを使うと一度だけ初期化と書いてあったんですが、使い方が分かりませんでした どなたか教えてください
static関係なし onClipEvent (load) { x = 0; } onClipEvent (enterFrame) { trace(x); x +=_xmousex; }
_xmousexってなによ?
ぶ。 気づかんかったw
もうSEX
565 :
Now_loading...774KB :05/01/21 13:47:04 ID:DBxR78VN
2ch既出Q&AのNOWLOADINGのスクリプトを改造してみたいのですが、 読み込み%数が空欄のままで全く表示されず、動きません。 ダイナミックテキストの変数欄にはv_Parcentと入れています。 ダイナミックテキストの中身は空欄です。文字を入れるとそのまま出ます。 %数表示以外は正常に動作していますが、%数表示をさせるにはどこを直せばよいのでしょうか。 loadedSize = getBytesLoaded (); totalSize = getBytesTotal (); if ( loadedSize >= totalSize ) { play (); } else { parcent = ( loadedSize / totalSize ) * 100; v_Parcent = Math.round ( parcent ); NLMCbar.gotoAndStop( Math.round ( parcent )); gotoAndPlay ("nl",1);}
Math.round が邪魔してると思う。ウザイね。 parcent = Math.round(( loadedSize / totalSize ) * 100); が適当。round より floor のが良いけどね。
567 :
560 :05/01/21 15:30:01 ID:WdMw2fid
568 :
565 :05/01/21 15:39:49 ID:XUpsDGfn
何度もすみません。566さんの書き込み通り、 parcent = ( loadedSize / totalSize ) * 100; を parcent = Math.round(( loadedSize / totalSize ) * 100); へ変えたのですが、やはり同じ状態になってしまいました。 round より floorのほうが良いとのことなのですが・・・調べて自分なりにやってみましたが、 やはりうまく行きませんでした、すいません。もう一度お願いできますでしょうか。
>>568 上で言われてるのはこういうことだろ?
parcent = Math.round (( loadedSize / totalSize ) * 100);
v_Parcent = parcent;
NLMCbar.gotoAndStop(parcent);
とりあえず、文字が表示されない場合は全てをコメントアウトして
v_Parcent = 123とか書いて表示されるかどうかやってみるべし。
ASが悪いのか、文字の表示指定が間違っているのか問題を分離しろ。
570 :
565 :05/01/21 15:56:37 ID:XUpsDGfn
そういう意味だったんですね、理解力がなくてすみません・・・ parcent = Math.round (( loadedSize / totalSize ) * 100); v_Parcent = parcent; NLMCbar.gotoAndStop(parcent); こちらに変更しましたが、やはり文字の表示はされませんでした。 v_Parcent = 123を書くと、きちんと123%と出ています。
571 :
565 :05/01/21 15:58:50 ID:XUpsDGfn
123はダイナミックテキストの所に表示されました。
parcent = Math.round (( loadedSize / totalSize ) * 100); v_Parcent = parcent; NLMCbar.gotoAndStop(parcent); trace(v_Parcent); trace(parcent); こうしたらどうなるよ?
気になるじゃん。 原因が分からん。
てか、よっぽど容量の大きなswfでない限りは 読み込みは一瞬で完了してしまうので 最初から↓この条件が成立し if ( loadedSize >= totalSize ) { %表示部には至らないとか、そういう問題では?
ああ、そうか、ストリーミング実験をしていないで ローカル再生というオチかorz
不可解なバグとは大抵AS以外の場所に隠されている。
制作者本人がバグってたりもする。
579 :
565 :05/01/21 16:17:50 ID:XUpsDGfn
>572 やってみました。何も変わらなかったです・・・ 出力の窓とかもみてたんですが、何も表示されなくて。 >読み込みは一瞬で完了してしまうので >%表示部には至らない %の所、数字が全く出ない場合でもそうなるんでしょうか? 全部ローカルでやっているので、これからアップロードして一応確認してみます。今は200kb程度です。
何も表示されないなら答えは簡単。
>>575 が正解。
そろそろ俺の気まぐれで付き合ってやるのも終わりだぜ。
解決策は自分で探せ。
>>567 わざわざアップロードしなくても良い。
CTRL+enterでプレビューしたら↑のデバッグから回線を選択できる。
何事も経験なので、それで出来ないようならアップするか
片眉剃って修行してきてください。
582 :
565 :05/01/21 16:28:36 ID:XUpsDGfn
アップロードして確かめてみましたが、やはり同じでした・・・ 文字は表示されず、ローディングが完了するまで徐々にのびるバーも 少しのびただけで、すぐに次のシーンに行ってしまいます・・。
どうでもいいけどロードが終わったあと即再生するローディングってどうかと思う。
そろそろあしぷろを教えてやれ
585 :
565 :05/01/21 16:33:52 ID:XUpsDGfn
書き込んでいる間にレスが、すみません。。 >CTRL+enterでプレビューしたら↑のデバッグから回線を選択できる。 一番低速の14.4の状態で確認していましたが、同じで、文字が出ませんでした。 >575が正解なのであれば、それはそれでありがたい話ですが・・・ やっぱり何かミスしているのかもしれないですよね。一から別なファイルで作り直ししてみます。 ありがとうございました。
「あしぷろ」でグーグル検索すればもうここへ来なくても良くなるかもしれない。
587 :
Now_loading...774KB :05/01/22 17:19:54 ID:UfaXmO8+
Flashをフルスクリーンで表示する際、 ウインドウサイズが変わってもメインコンテンツ部分の大きさが 変わらないサイトって良く見ますよね? ああいう場合、やはりXML辺りからサイズ指定のデータを持ってくるもの なんでしょうか? 質問させてください^^;
>>587 ステージサイズに関するプロパティがあるからそれを使うんだよ。
Stage.addListener()
Stage ファイルのサイズが変更されるタイミングを検出するリスナーオブジェクトを追加します。
Stage.removeListener()
Stage オブジェクトからリスナーオブジェクトを削除します。
Stage.align
Flash Player またはブラウザ内での SWF ファイルの整列設定。
Stage.height
ステージの高さ (ピクセル単位)。
Stage.scaleMode
SWF ファイルの現在の拡大/縮小率。
Stage.showMenu
Flash Player コンテキストメニューのデフォルト項目の表示/非表示。
Stage.width
ステージの幅 (ピクセル単位)。
Stage.onResize
Stage.scaleMode が "noScale" に設定されているときに SWF ファイルのサイズが変更されると呼び出されます。
MX使用者です、アクションパネルでのカーソルの点滅が遅くて カーソルを一瞬見失うのが嫌なんですが、点滅速度を速くすることは出来ませんか?
590 :
Now_loading...774KB :05/01/22 21:35:57 ID:+JAg5lAy
ちょっとFlashで作りたいものがあるんですが、 Flash製作ソフトがないので、ソフトを購入しなければなりません。 しかし、FlashのActionScriptでどこまでできるのかわからないので、 作りたいものがFlashで作れるのかわからず、購入するかどうか迷っています。 そこで質問なのですが、Flashでモノラルのサウンドファイルを スピーカーの左右の好きな位置で再生できますか? 例えば、同じサウンドファイルを使用して、右にいるキャラクターがしゃべるときは 右から聞こえるようにして、 左にいるキャラがしゃべるときには左からしゃべれるような処理をしたいのです。
でける
>>589 FlashじゃなくWindowsの設定だから。
>>590 できます。
なかなか細かい設定まで可能。
できることがわからないときは、ソフトよりも先に参考書を買うのも手。
あと体験版が無料だから使え。
593 :
sage :05/01/22 21:42:07 ID:+JAg5lAy
>592 thx. とりあえず体験版使ってみます。
>>592 それがWindowsより遅いんです、
FLASH内の他のテキストボックスでは普通なんですが、アクションパネルの中だけが何故か遅くて。
そもそもそれがActionScriptの質問だと言いたいのか?
>>596 ASに関係してればなんでもオッケみたいなスレだからいいんジャネーノ?
開発環境でストレスを感じないって大事よ
そういやオレも遅いな そういうときこそ、メモ帳でつよ
漏れもメモ帳か自作のエディタ(デルファイ6)
Flashとphpの連携を作りたいのですが、flashからphpに情報を送信することはできますか?
できます。 LoadVar関係のヘルプ参照。
>>601 素早い御返答有難う御座います。
ヘルプ等を見ながらやってみようと思います。
すいません質問です on (release) { //Goto Webpage Behavior getURL("アドレス","_self"); //End Behavior ではただのクリックでリンク先へ移動なんですが、 ダブルクリックでリンク先へ移動するのはどうしたらいいのでしょうか? 他スレでも質問してフラッグがどうとか言われたのですが、ヘルプでフラッグと検索しても出てこない OTZ
おそらくあなたには難しい上にインターフェース上、 ダブルクリックで移動するのは好ましくありません。 つまり簡単に出来ないし、見てる人間にストレスがたまります。 それでもやりますか?
たしかにストレス貯まるかも知れませんね(^^;) デスクトップのショートカット風に作ろうと思ったんですが、 リンクするアイテムをドラッグ出来るようにすると、 ただのクリックでリンク先に移動だと、ドラッグしただけで移動してしまうので、 ダブルクリックで移動すれば、いいのでは、と言う安直な考えでした 本当に初心者ですいません OTZ どれだけ難しいか、ストレスが貯まるかはやってみないと分からないのでなんとも言えないです(´`;)
一応やり方を教えておくと、 クリックするたびに時間を記録し、前回との時間差が一定量以下ならば ダブルクリックとして処理する。 以上。
>>606 ありがとうございます
ググったりHELP見たりしながらやってみます
on(press){ oldtime = newtime; newtime = getTimer(); if(newtime - oldtime <400){ getURLチョメチョメ } } こんな感じかね 色んなやり方あるから、あくまで一例として
FLASHでダブルクリックと聞くとひろゆきのFB作品思い出すけど あれってどうやってたんだろ・・・w
610 :
Now_loading...774KB :05/01/24 01:07:42 ID:gNKLUJ8y
新規にムービークリップ作った後にクリップ内のアクションスクリプトで this.lineStyle(1,0,100); this.moveTo(20,40); this.lineTo(20,200); というようなコードを書いたのですが、クリップの中央を基準とした位置から 線が引かれてしまいます。 左上を基準にしたいのですがどうすればいいんでしょうか? 中央を0ではなく左上を0としたいのです。 お願いします。
_root使え
説明がたりませんでした。 コンポーネントを作ろうとしていて、コンポーネント内の 左上から書きたいのです。 _rootを使って貼り付けられた位置から計算するという事でしょうか? コンポーネント内の左上の位置を基準にしたいと思っているんですが 無理ですか?
じゃあ、基準点変えろ
すみません。 基準点の変え方はコード内でどの様にかけばいいのでしょうか?
ダブルクリックの判定は ・2回のクリック間の時間差 ・その2回のクリックの移動距離 が、共に一定値以下であることを確認しよう。 ついでにボタンなどのオブジェクト上での判定は、 2回目が違うオブジェクトに乗っていないことも。 こんなもんかな?
617 :
Now_loading...774KB :05/01/24 02:36:23 ID:zMAc2qr2
これが動かないんですけども、誰かおしえてください。
stop();
System.useCodepage = true;
sheet_lv = new LoadVars();
sheet_lv.onLoad = function() {
_root.sheet_text = this.dat1;
trace( _root.sheet_text );
_root.testtest ="whiteball"+sheet_text;
trace( _root.testtest );
_root[testtest].gotoAndPlay(2);
//for(i=3;i<7;i++){
//_root.sheet_text[i] = this["dat"+i];
//trace( _root.sheet_text[i] );
//_root.testtest[i] ="whiteball"+sheet_text[i];
//_root["testtest"+i].gotoAndPlay(2);
//}
}
sheet_lv.load("
http://.php ");
618 :
Now_loading...774KB :05/01/24 02:38:31 ID:zMAc2qr2
こういうエラーが出るんです。
**エラー** シンボル = gotourl, レイヤー = レイヤー 1, フレーム = 1 :行 1:')' または ',' が必要です。
getURL(
http://wacky.sfc.keio.ac.jp/ 〜ryu/system/submit.php);
ActionScript エラー数 :1 報告済みエラー :1
1
whiteball1
あと、コメントアウトを外したヤツもしっぱいします。
ダブルクォーテーションで囲まんかい
リテラル
うぅ・・・ASスレのみんなオラに力を分けてくれ。 クロソイド曲線ぽいのを組もうと思ったんだけど、スマートな組み方のアドバイスを頼むです。 イメージとしては原点とA点を結ぶ 半径r が onEnterframeでデクリメントして行けば良いと思うんだけど、 Math.sinあたりの三角関数メソッドを使うと、位相反転の時に新たに変数制御をしなくてはならない・・・。 ラジアンから制御の方法も考えたんだけど、これもやっぱり4位相での制御が必要になるぽくて。 ・監査用のMCを原点に置いて、MC_Aとの距離(半径r)をデクリメントさせつつ _rotation 制御 ・2Πr/1回転あたりの時間で移動距離を出して、それから _x _y を求めていく。円周2Πrをデクリメント ・TUVW位相の監査を用意して、半径rをデクリメント、そこから算出した_xの移動距離から座標を算出。 どんな組み方が良いかアドバイスお願いします・・・。 組んだ事ある人、どんな風に組んだか教えてくれると有難いです。
622 :
621 :05/01/24 13:41:50 ID:oZPNkERO
http://uploader.zive.net/file/7933.lzh なんとか目的の物が作れました。
まだこれから計算して手直しをしないといけないのですが、とりあえずの方向として問題無さそうです。
_rotationでのインクリメント制御ではMCの座標が変わらない穴(?)を利用して、
MC入れ子を利用して作ってみました。
スレ汚し失礼しました〜。
では名無しに戻りまする。
2ch外の掲示板で、質問し、返答がきそうも無い為、 こちらで質問しても宜しいでしょうか?
>>623 閲覧者がいて、他の質問には答えているのに無視されているなら
こっちで質問しても煽られるだけだと思われ。
考え付く理由
1・あまりにもレベルが低くて、その上、やってくれ感が漂っている。
2・質問の文章が乱雑でまとまってなく、読む気にもならない
3・内容が掲示板のレベルを超えている
4・あまりにも特殊なことで、誰も興味がないので答えられない
3.4だったら、許されるんじゃないの?
いや・・3.4になることを見分ける能力がないのが問題か?
>>623 マルチをすると、せっかく答えたのに実はもう
他の掲示板で回答されてて答える必要がなかったという
回答者に失礼な事態になりうることがあります
なので先に質問した掲示板で質問を取り下げてきてください
>先に質問した掲示板で質問を取り下げてきてください その誘導は微妙。 マルチであれ、無かれ、回答を頂いた場合は礼を言うのは普通。 無理にアレコレやる必要は無いし、咎められたら誤れば済むこと。 それが出来ない香具師は尻から毛が生えていないと判断する。
他で聞いても駄目だった質問はここで聞いても駄目な可能性があるので その質問を練り直すことから始めたほうがいいよ。
>>623 いちいち了解取るなよ。仕切ってるヤツなんかいないんだから。
>>608 >>615 返信遅れてすいません 分かりやすい返答ありがとうございました m(__)m
>>609 自分そのときのFB行ってないので分かりませんが、そのFLASHって公開はされてませんよね〜? 少し気になりますw
すいません、先生方。教えて下さい。 超初心者なんですけど、ボールがバウンドする っていうAS本で、動きの勉強とかしてるんですけど、 onClipEvent(load) { speed = 0; kasoku = 1; downPoint = 400-25; } onClipEvent(enterFrame) { this._y += speed; if (this._y >=downPoint) { speed *= -1; }else{ speed +=kasoku; } } とすると、downPoint変数の座標まで加速しながら動くと そこで -1をかけて、反転して上に向かっていくのは 分かったのですが、今度はどうして、それがスタート地点 までくると、また、下に動き出して無限にバウンドしてくれるのか、 が分かりません。 どの時点で、ASは下に動き出すように判断しているのでしょうか。
traceしてみたんか?
説明に困る。 きっと自分で発見できた時に素晴らしい感動を得ると思うので頑張ってみてくれ。
なんか不親切な本だね それ以前に始めて聞く名前の本だけど・・・
教えてやるよ 0*-1=0 つまり、0の時点で値は+方向に転換されるんだよ
これでわからないなら、算数からやり直せ ブヒ
嘘教えるなw
じゃあ、ツッコミも入ったので本当の答えを スピードとは一般的にマイナス加速度はないが、 この場合の変数speedは、y座標が一定値を超えるとマイナスにシフトするようになってる つまり、-20 -19 -18…と変化していくわけだよ 当然0を超えればプラスにシフトする これでわかったか? 変数speedとはスピードじゃないわけさね OK?
つまり、speedはy座標をコントロールする値でしかないわけさ。 これでわからないならもうしらない ブヒ
641 :
Now_loading...774KB :05/01/25 00:11:10 ID:V8BgzBzg
>>632 traceしてみましたが、返り値を選び間違えたみたいで、
よくわかりませんでした。
みなさんのおかげで、少しだけ分かってきました。
もうちっとがんばってみます。
>>637 ヤヴァイ、算数からやり直さないと。かも‥
公文式再入会してきまつ。
アゲちまった。 逝ってきます。すいません。
>>639 すごいよく分かりました!
自分のカキコと入れ違いだったんで、
誤爆っぽいカキコしちゃった。
超納得です。ありがとうございました。
最初に配置される全てのMCインスタンスに対して拡張クラスを使いたいのですが、 組み込みのMovieClipクラスをswf動作前に拡張することはできますか? お願いします。
>>644 先頭フレームでMovieClip.prototypeに拡張分を追加するのがお手軽ですよん。
2004のヘルプなら「ActionScript 1 でのオブジェクト指向プログラミングの概要」を参照。
クラスファイルを使って拡張したいなら、ライブラリ内のシンボルにあらかじめ拡張クラスを
割り当てておけばよいのではないでしょか。
646 :
644 :05/01/25 17:19:24 ID:xl8UG8aQ
>>645 解答ありがとうございます!
無事拡張クラスが適用できました。
ttp://ofuda.cc/ これはどうやってるのでしょう?
チャーハンの回転してるカウンタ数字が
どうやっても再現できず。(MXpro2004 WinXP)
静止テキストならうまくいくが、
ダイナミックテキストでは回転させると消えてしまう。
すいませんがどなたか教えてください。
埋め込みすれば、デバイスフォントも回転できるのだが。
650 :
647 :05/01/26 02:17:08 ID:3MSmxnZS
651 :
Now_loading...774KB :05/01/26 16:44:42 ID:bSph/Q2N
MX2004を使っています。 SWFの中にHTMLファイルを表示させる事はできますか? getURLだと別のブラウザウィンドウが開いてしまいます。
過去ログであった気が汁
質問します。 環境 Flash MX 2004 Windows 2000 コンポーネントScrollPaneのcontentPathをTextInputに入力された値で指定しているのですが 例)ScrollPane.contentPath = TextInput.text+".swf"; 入力された値のファイルが無い場合にエラーメッセージを表示したいのです。 if を使用してやろうと思うのですがその場合どのように条件を指定したらいいのか教えてください。 宜しくお願い致します。
>>651 たぶん無理。
ダイナミックテキストを使って、タグを変換させることは可能。
>>651 Helpで「HTML 形式のテキスト」を調べよう。
使えるタグは少ないけどね
よくSWFの中にHTML表示ってよく出てくるがなにに使うの? と逆に聞きたい
>653
ファイルが存在するかどうかを調べたい場合は
まずMovieClipLoaderを使用する。
if文はそれからの話。
>656
おそらく例えばこんな感じですかね
ttp://blog.30k2.com/
なるほど・・・ これならコピペされないね
FLASH MX2004(WinXP) クリック→ウィンドウがスライドして出てくる 再度クリック→元に戻る …というのを、「おしえてFLASH MX2004」を参考に作ってみたんですが、 再度クリックする際に、2回クリックしなければ反応しません。 どなたかご教授お願いします。
660 :
659 :05/01/26 21:56:40 ID:Z1qD8Uxu
>660 丸投げはダメ。 が、暇だったから見て見た。 menu_topムービークリップ内で、 8フレーム目でクリックした時playが実行され 8フレームから9フレームへ移行しているが、 9フレームでstopがかかっているのが悪い
662 :
660 :05/01/26 22:53:26 ID:Z1qD8Uxu
>>661 ほあ〜、そんな単純なことだったなんて…
解決しました!ありがとうございました
charAt()をつかって文字列から取った文字を消すにはどうしたらよいですか? javaのようなdeleteCharAt()的なものはあるのしょうか?
664 :
2/1 :05/01/27 00:03:21 ID:OeGKoFqJ
だれか助けてください。 環境はFlash MX2004 (Mac)です。 自分自身に複製・追従するスクリプトを教えてください。 具体的に言うと、円を描く星の集まり(org1)に複製された (org1)が追従し、流れ星のような動きを作りたいのです。 よくあるマウスに残像が付いてくるスクリプトは、FLASH本より 拝借できたのですが、そのスクリプトを使って、対象を自身のオブジェクトに 変換することが出来そうでできません。。。
665 :
2/2 :05/01/27 00:04:15 ID:OeGKoFqJ
すいません、続きです。。 ちなみに以下がマウス追従型のスクリプトです。 ------------------------------------------------ onClipEvent (load) { if (_name == "org1") { maxNum = 10; for (num=0; num<maxNum; num++) { this.duplicateMovieClip("copy"+num, 100-num); _parent["copy"+num].myNum = num; _parent["copy"+num]._alpha = 100*(maxNum-num)/maxNum; } _visible = false; } } onClipEvent (enterFrame) { if (_name != "org1") { oldX = _x; oldY = _y; if (myNum == 0) { _x = _parent._xmouse; _y = _parent._ymouse; } else { _x = _parent["copy"+(myNum-1)].oldX; _y = _parent["copy"+(myNum-1)].oldY; } } } ------------------------------------------------ (org1)というのが、複製させたいインスタンスです。どなたか知恵を貸してくださいませ・・・ よろしくお願いいたします。
if (myNum == 0) { _x = _parent._xmouse; _y = _parent._ymouse; } が、マウスに追随している部分。 ここを円運動の座標入れてやればよか。 cosとsin使う。 あるいは中心軸ずらして、_rotationかえる。
667 :
665 :05/01/27 00:26:26 ID:S14rca7x
>>666 ありがとうございます!
マウスの追随箇所もよく分からなかったので
助かりました!
とりあえずその方法でやってみます。
助かりました。
>>663 charAt()で取得した文字を変数に割り当ててるんでしょ?
その変数をdeleteしてやればいいじゃん
669 :
651 :05/01/27 01:12:25 ID:n1xDM0Hh
無理なんですね。どこかでできるらしいという 書き込みを見たんでやれるかと思ってました。勉強になりました。 >656 htmlバージョン用のhtmlファイルを再利用したかったんです。 CSSとか色々使ってるから、htmlのタグだけじゃ間に合わないんで。
自分で関数設定して使う物だけ自作のタグでも作れば?
htmlのタグの量を知らないレベルの人間に そんな関数作れるわきゃーねーだろ アフォ
スレタイすら読めない奴がいるな。
flashで呼び出せるhtmlのタグの量な 普通読んでわかりそうなもんだけどな
質問質問 MXの環境で以下のASが普通に動いたのですが、始めてみる書式です。 何かこの、「:」を使った書き方の呼び方があるのでしょうか? dText.addListener({ onChanged:function () {trace(dText.text); }, onScroller:function () {trace(dText.scroll); } });
MX2004ならわかるけどMXで動くんだ、へぇ〜。 「:」は型指定だのう。
>>674 リスナーオブジェクトに名前のない構造体リテラルを使ってる。
呼び方は特にないと思う。構造体の初期化の構文のひとつ。
a = new Object()
a.foo = function(){trace("foo");}
a.bar = function(){trace("bar");}
と
a = {foo:function(){trace("foo")},bar:function(){trace("bar");}}
は同じ。
>>675 は勘違いしすぎ。へぇ〜じゃねえよwww
677 :
Now_loading...774KB :05/01/27 11:56:38 ID:NnnajSP4
質問です。MX2004です。 以下のようなコードで”変数が送信はされないがCGIからの読み込みはできる”という状況になっています。 ご教授願います。 on(click){ a = new LoadVars(); a.a = 0; b = new LoadVars(); b.onLoad = function(){ _root.aaa.text = b.b; } a.sendAndLoad("./a.php",b,"POST"); } です。
質問させてください。
FLASH5で、RSSの中のタイトル
<rdf><item><title></title></item><rdf>
のtitleだけを取得して表示しようと思い、
ttp://www.tonbi.jp/Flash/Diary/005.html を参照にやってみたのですが、
うまくできません。
というか、何がなにやらさっぱりわからないので、
どうやったら出来るか教えてください。
>677 そのスクリプトには問題なさそうだけど。 PHP側の変数受け取り部分が間違っている可能性がある。 >678 そのサイトを読んで理解できるようになったら 出来るようになりますよ。がんばってくださいね。
680 :
653 :05/01/27 15:32:31 ID:FardyNs5
>>657 MovieClipLoaderで解決できました。
if なんて使わなくてもできるんですね。
本当にありがとうございました。
自分のファイル名(main.swf等)を取得する方法 どなたかご存知ないでしょうか?
682 :
674 :05/01/27 16:09:01 ID:TYohyWD2
>>676 構造体ってこういう使い方もできるんですね。
ありがとうございます。勉強になりました
>>681 this._url
683 :
681 :05/01/27 16:46:24 ID:FardyNs5
>>682 ありがとうございます。
myString =this._url;
myFileName = myString.substring(myString.length -5, myString.length);
こんな感じで取り出せました。
本当に物凄い勢いで解答していただき、ありがとうございました。
684 :
Now_loading...774KB :05/01/27 21:20:23 ID:MnF7Xkk0
ボタンにjavascriptのウインドウオープンを使いたいのですが、 ActionScriptにどう書けば良いですか? 以下を元に色々と試したんですが、ダメでした。 <SCRIPT LANGUAGE="JavaScript"> <!-- function open_win(){ window.open("new.html","new","menubar=no,toolbar=no,location=no,status=no,scrollbars=no,resizable=no"); } //--> </SCRIPT> <FORM> <INPUT type="button" value="New" onClick="open_win()"> </FORM> 環境 Mac OS X 10.3.7 MX2004 よろしくお願いします。
>>684 on(press){
getURL("javascript:openWindow('new.html','new','toolbars=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0')");
}
686 :
684 :05/01/27 21:55:06 ID:MnF7Xkk0
>685さま ありがとう御座います。助かりました。o(_ _)o
超基本的な質問スレから誘導されて来ました。 FlashMaker2はアクションスクリプトをいじる事が出来るんでしょうか? 教えてください、お願いします。
>>688 どうも、毎度おなじみのオマイです、元気にしてますか?ヽ(`д`)ノ
質問させて下さい。 四角いボタンを横に4つおいて、そのボタン(ムービークリップ)に マウスオーバーするとその四角いボタンの下に、 小さいバーのようなモノがついてくる メニューを作りたいと考えています。 ■□□□ → □□□■ -- -- (黒の位置のムービークリップにマウスを置いたら、 下のバーも移動という感じ) バーをbarMCとして、一つのムービークリップには
---- onClipEvent (load) { ex = 3; } onClipEvent(enterFrame) { chic_x = this._x - _root.barMC._x; speed_x = chic_x / ex; if (this.hitTest(_root._xmouse,_root._ymouse,false)) { _root.barMC._x += speed_x; }else{ _root.barMC._x = 0; } } ---- とやったのですが、 のこり3つのムービークリップに同じASを記入したら 全く動かなくなってしまいました。 動いたとしても、ロールアウトすると0に戻すように今は 設定しているので0に戻ってしまうわけですが、 これを、その止まっているムービークリップにとどめておく 記入方法も分かりません。 どなたか教えて下さい。よろしくお願いします。
_root.barMC._x = ここにそのmcの座標を入れるのが一番手っ取り早いけど クロージャーつかって組む練習したほうがいいよ といいつつ質問 _root.createEmptyMovieClip("jpg",0) jpg.onLoad=function(){ trace("urya") } jpg.onData=function(){ trace("torya") } jpg.onEnterFrame=function(){ trace("arya") } jpg.loadMovie("hoge.jpg") 結果:arya どういうこと?
function A(){ onEnterFrame=function(){ //Aをする } function B(){ onEnterFrame=function(){ //Bをする } というものを、別のムービークリップからですね A(); とやったあと、 B(); とやったばあい、 onEnterFrameがB();しか動かないのですが、これを両方動かす方法はないでしょうか。
すいません。 別のムービークリップからですね は無視してください。 function A(){ onEnterFrame=function(){ //Aをする } function B(){ onEnterFrame=function(){ //Bをする } A(); B(); というスクリプトで、B();しか動きません。これを両方動かすことは出来るでしょうか。
>>690 なんで1functionで一括で処理しないんだよヽ(`Д´)ノ
>>692 ブレークポイント設定して確認してみろよヽ(`Д´)ノ
>>694 括弧閉じてないぞヽ(`Д´)ノウワァァン!!
_rootの第1フレームにcreatEmptyMovieClipで生成したMCに loadMovieで画像を呼び出して そのフレームをonEnterFrameで回しながら、hitTestをその生成したMCにしてあげると trueな状態でも1回目は必ずfalseを返す理由について教えてください。
ちなみにonEnterFrameの処理を第2フレームでしてあげると もちろんtrueを返します。 なんでだろ?ボケてんのかなloadMovie
なに!プロパティとクリップアクション以外すべて無効にするだと!!! ふざけんなあああああああ
>>694 this.onEnterFrameは一個だけ。
createEmptyMovieClipするか、あらかじめMC置いておいて
それぞれのMC.onEnterFrameしれ
>>690 プルダウンメニューに関しては、ASメインよりも透明ボタン使って制御のみASとかが楽だよ。
楽と言うか、向いてると言うべきかな。
イージング処理をASで魅せるとかは全く問題ないけど、ASで組んだパーツをボタンで管理が向いてるぽい。
領域設定とかがどうしても完全ASだと面倒だし、hitTest使うならどうせシンボル用意するんだし透明ボタンが良い。
MC入れ子と透明ボタン使って、on(rollOut) あたりを駆使すればかなり良い感じだと思われ。
AS一辺倒じゃなくて、特化してる部分への選択の余地がある事もフラッシュの魅力だと思うから、色々試してみるよろし。
701 :
694 :05/01/28 11:26:05 ID:AD+pmLLo
702 :
694 :05/01/28 11:30:12 ID:AD+pmLLo
途中で送ってしまいました。すいません
>>695 1functionでやれば、確かに一括処理で
できるっすね。あまりに単純なことに
気づかなかったです。ありがとうございました。
>>700 ASだけじゃなく、透明ボタンとかの
方法もあるんですね。ちょっと試してみたいと思います。
ありがとうございました!
突然、他所で作ったFLASHを直すことになりました。(仕事です) FLASH MX2004の基本的な質問ですが、 ・ActionScriptで、変数や関数が間違っていてもシンタックスエラーにならず パブリッシュできますが、エラーにする方法はありますか? ・ActionScriptエディタで、変数や関数の定義にジャンプする方法はありますか? ・ActionScriptエディタで、ActionScriptだけをまとめて表示する方法はありますか? なんかエディタ周りが使いづらいと思うのは私だけでしょうか?
>>703 上部メニューバー>制御>ムービーのデバッグでたぶんかなり幸せになれるはず。
traceとブレークポイント使ってがんがってけれ。
もっと詳しい人いたらよろしく。
マクロメディアのエディタ周りにはたまに殺意を覚える。
新規作成>ASファイルで作ると少し幸せ。
まとめて作るときはテキストエディタからコピペ>デバッグ。
他人のソース解析して作り直すより、 一から自分で作った方がはやい気がする。
確かに。 エディタ周りの文句を言うって事はASに関しては相当使えると判断せざるを得ないな。 作り直しちゃえ。
>>703 2.0で作れば大幅に改善されるんだが
そこまでやるべきことなのか微妙。
時間があって、これからもFlashに触るのなら2.0を調べてやってみてもいいかもしれない。
Javaに微妙に似ている。エラーも出してくれるし。
・関数、変数に関しては、普通に無視するからね ・関数、変数にブレイクポイント打つほうが、つうか、 探すほうがダルイAS組んでる人間もいるからね ・一応、限られた場所にしかASは書けないけど、 中には、とてつもなく変な場所に透明ボタン作って そこにASしまい込んでる人間もいるからね
質問です。MXでルートの1フレーム目に stop(); function func() { this.gotoAndPlay("frame"); } と書き、 onClipEvent (keyDown) { _root.func(); } と書いたMCを置いたのですがキーを押してもフレーム移動できません。 functionにthis.gotoAndPlayを書くにはどうすればよいのでしょうか?
>>709 フレームラベルはちゃんとはれているか?
スペルミスとか
それ以外だとそれとは関係無いところで変な動作してるか、
1フレーム目にMCが無いかくらいしか思いつかんなー
AS自体は問題無い
713 :
709 :05/01/30 16:20:23 ID:DQAnmKqb
>>710 確認しましたができません。
ためしにルートに"frame"フレームを作ったところ、
そっちに飛んでしまいました。
MCの"frame"フレームに飛ばしたいのですがその場合はどう書けばよいのでしょうか?
>>713 ルートの"frame"に飛ばしたかったんじゃなかったのかよw
なら、this.gotoAndPlay("frame");を
MC.gotoAndPlay("frame");
に汁
MCのパスを間違えるなよ
715 :
709 :05/01/30 17:37:00 ID:DQAnmKqb
>>714 ごめんなさい。書き忘れてましたorz
ルートにa、b二個のMCがあってそれぞれに"frame"という名のフレームがあるんです。
a.gotoAndPlay("frame");
だとbのほうに反応しなくなってしまうので
『func()しろ』と書いたMC(この場合a、b)から見てパスを相対的に指定したいのですが
どう書き直せばよいのですか?
質問です、 (macOSX,FlashMX) getTimer()でゲーム開始時間からの時間経過をカウントし始めたものの、 ゲーム終了時にカウントを止めた状態で表示したいんですが どうすればいいんでしょう?
>>715 変数使え。
変数にMC入れるんよ。
>>716 変数使え。
変数にgetTimer入れて終わったら入れるのやめるのよ。
>>711 見れないけどたぶんキミのやってるのは、onイベントハンドラの下層にonイベントハンドラを
持ってきてるんだよ。
onイベントハンドラってのは、排他的要素も含むから(例えばreleaseとかね)
下層に置くと無視されちゃうわけさ
あ間違えた(例えばRollOutだつた
質問です。2004 MX Pro 使ってます。 任意のフレームへ移動するのって、同じ swf 内であれば gotoAndPlay() でできるんですけど、 外部 swf の任意のフレームから再生する方法ってありますか?
createTextFieldでテキスト生成した場合、 テキストの禁則処理はどうやって変更するのでしょう? 禁則をもう少しゆるくしたいのですが。
722 :
97 :05/01/30 22:51:33 ID:U1G0UxbP
Q.Flashから任意のサイズの新規ウィンドウを開きたいのですが? A.ボタンの場合であれば、 on (release) { getURL ("javascript:hoge()"); } とActionScriptを記述し、 そのリンク元のswfが入っているhtmlに、 function hoge() { hoge = window.open("hoge.html","hoge","width=***,height=***,resizable=no,status=no,scrollbars=no"); } というJavaScriptを記述して下さい(リンク先のパス及び「***」は任意で、「no」は「yes」でも可)。 ...と、これを試してみたのですが、1回目は正常に新規ウィンドウが開くのですが、2回目以降はメインウィンドウのステイタスバーにエラーの表示が出て新規ウィンドウが開きません。 なぜでしょうか?ご教授お願いいたします。
>>711 Msgの中にあるYESボタンに直接
on(click){
_root.msg_txt.text = "メッセージ終了 OKボタン";
_root.myWindow.deletePopUp();
}
と書け。
>>715 ならこうだな
stop();
function func(hoge) {
hoge.gotoAndPlay("frame");
}
onClipEvent (keyDown) {
_root.func(this);
}
725 :
709 :05/01/31 00:53:50 ID:H1mDQJTF
>720 MCにswfを読み込んで、 MC.gotoAndStop( 〜 ); >721 これのことかな? TextField.restrict >722 勘で答える。 「 hoge = 」 これを削除する。
>>727 勘かw
>>722 javaSのリファレンス見たほうが早いよ。
存在しないwindowをopenするのはwindow.open
既に存在しているwindowにurlを読み込むのはlocation.href
全部hogeだとわからんのでちょっと書き直すと
on (release) {
getURL ("javascript:newWin()");
}
---
function newWin()
{
hogewin = window.open("hoge.html","hogename","width=***,height=***,resizable=no,status=no,scrollbars=no");
}
hogewinがnullもしくはundefined,closedならエラーは出ず、「hogename」というウィンドウにhoge.htmlが呼び出される。
そうでなければエラーが出るのが正しい。
排他処理のやりかたとかブラウザ別の動作状況はjavaSのサンプルとか探してね。
>728 あぁ、 722の式だと、メソッド名がhogeで 尚且つその内部で hogeにwindow.openの戻り値を代入しているでしょう。 なので、メソッドhogeが Functionではなくなってしまっていると思ったもので。
>>729 いや、「勘」にちょっとうけたので
煽る気とかはなかった。スマン
ホゲホゲうっさいんじゃホゲ
これより turu kame 式命名法になりますた。
よしわかった 次から漢で答えるぜ!
ヲトコで答えるのか?
>735 ウホッ いい質問… そのサンプルみたら、 逆方向にもめくれるみたいですよ?
>>736 レスありがとうございます。そうなんです、めくれるんですよね・・・。
その辺をうまくやって一番はじめに右開きにしたいのですが、ソースをいじってもさっぱりで・・・。
基本の形を変えないで一部だけ変えるのか、すべてを逆にしないとダメなのかがよく分かりません・・・。
>>737 page=16;
根本的な解決になってないけどね。
>>738 ありがとうございます。理想の形に出来ました。
すいません質問です サウンドについてですが 子のMC(aaa)で my_sound = new Sound(); my_sound.attachSound("hoge"); my_sound.start(0, 1) で親MCでこの音だけ止めようと思うのですが; on (press) { aaa.my_sound.stop(); } 等いろいろやってみても止まりません また別でBGMが流れているのでstopAllSounds();は使用したくないのですが 個別で止める事はできるでしょうか?
741 :
Now_loading...774KB :05/02/01 11:58:46 ID:swXPRCRH
http://equi.hp.infoseek.co.jp/flash/pzltest.fla むむ・・・FlashMX2004を使い始めまして、どうにも動かないので質問をさせてください。
以前にMXで同じような物を組んだ時には普通に動いたのですが、MX2004だと動きませんでした。
透明ボタンをon(Press)で、_root上に記述した関数を実行させる様に組んであります。
現段階ですと、9つある透明ボタンの内の左上のみに記述、_root上の関数もそれだけ書いてあります。
自分なりに見た範疇では、記述のミスが分かりませんでした。
もしかするとMX2004で変更になった部分があるのかと思い、質問させてもらいました。
作りかけのソースになりますが、現段階で動かない原因としてイクナイ部分を教えて頂けると幸いです。
よろしくお願いします。
丸投げするなと。
ルートにエンターフレーマとか謎の関数が書いてあった。 次から丸投げするなよ。 あとすぐ仕様のせいにしちゃうのはよくないぞ。 せめてtraceでデバッグくらいしろ。
そもそも2004のファイル投げられても見れない
自作関数なんだから、名前はそりゃ色々あると思うけど 結局答えになってないのが、2ちゃんらすぃ
あん? EnterFrama = function(){} って書いてあったんだぜ? そんくらいわかれ。
EnterFramaで呼び出せば、立派な関数だが??
うわ、小学生かよ。
でも答えになってるじゃないか。 関数になってるかどうかは関係ねぇよ。屁理屈こねるな。
あ〜それをルートに書いてるわけか それで呼び出してるのかと思った つか、ルートにEnterFrame = function()でも呼びさせんぞ
動くから。やってみてから言え。
ごめんなさい。 単純な記述ミスだったみたいですね・・・。お恥ずかしい。 どうも失礼しますた。
私がアホなのが原因なので、どうか皆様喧嘩はなさらずにお願いします。 どうもありがとうございました。
はじめまして。MacOSX、MX2004pro 使用です。 MacOSのGUIをFLASHで作ろうとしていますが ウィンドウのクローズボタンの動作を再現するのに ウィンドウの画像をスライスしてクローズボタンの画像をFLASHのボタン にすればいいのかもしれませんが、HTMLのホットスポットのように1枚の画像から 矩形でクリック範囲を複数選択してそこだけクリックできるようにはできないのでしょうか ? また、ウィンドウの複数表示( 単独でのクローズ含め )を擬似的に再現できたらと思うのですが そいういう事は可能でしょうか ?可能ならば、どのようにタイムラインにフレーム設定すれば よいか概要を教えて頂けないでしょうか ?
叶です。はい フレーム設定などはご自由にどうぞ
うわ、でたよ馬鹿回答。こういう奴って、面白いと思ってんのかな?
>755 概要と言っても、行うステップが多すぎて回答できない。 ●できるだけコードも示す ●自分が試してみた処理を書く これ書いてね。
>>740 まずパスがあってるか確認する
それでいくと、on(press)に
trace(aaa.my_sound);
と書く
undefinedならパス違い
my_sound定義してるところでtrace(this);なり、デバッグ使うなりしてパス調べる
なんか出たらパスはあってる。どっかの記述ミスの可能性が高い
>>757 どうやって答えんだ?バカはオマエだろ?
>>740 どうやらパスが違うようでもうちょっと調べてみます
ありがとうございました
あああ分かりました ターゲットパスの挿入で名前付けて無かったみたいでした ありがとうございましたこれで今日寝れますノシ
>>755 >矩形でクリック範囲を複数選択してそこだけクリック
MouseDownイベントで短径の座標チェックすればできるけど、素直にボタンの方が楽かな。
ウィンドウの絵を書いてある場合でも、透明ボタン使えばいいし。
>ウィンドウの複数表示
2004proなら「フォームアプリケーション」(うろ覚え)のサンプルに似たようなものがあった
気がする。たぶんやりたいことそのまんまのwindowコンポーネント使う奴。
スキン(見た目)の変更もできたかな。
自分で作るならウィンドウ上のシンボル作って、好きなだけattachMovieすれば良いかな。
タイムラインベースで何とかしようという考えとレベルではちときついかも。
そんなに難しい話でも無いから、いろんな本とかサイト見て勉強してみて。
764 :
763 :05/02/01 18:42:41 ID:aoFMZPQB
×ウィンドウ上のシンボル → ○ウィンドウ状のシンボル
765 :
755 :05/02/01 22:55:51 ID:Db0Us2C3
>763 FLASHの勉強し始めたばかりで具体的にスクリプトを書き込む 事もできなかったので、どうしようかと思っていました。 早速試してみます。ご親切にありがとうございました。
766 :
アクション :05/02/02 11:19:09 ID:zXzTh8XJ
Flashから別ウインドウ(ウィンドウサイズを決めれて、ツールバーはないの)を表示したい場合どういうアクションを入れればいいのか教えてください。
>>766 JavaScriptで同じ事できる?できるならそれをASから呼び出すだけ。
できなければJavaScript関係のとこで調べてみて。
FLASHから外部ファイルに出力ってできます?
外部ファイルによる。
770 :
768 :05/02/02 15:23:26 ID:HYkFkRm7
5 4 5 とか普通の数字だけでテキストファイルでもなんでもいいんで出力したいんですけど、 どうやったらよかですかね。いろいろ調べたんだけど外部ファイルから読み込む方法しか見つかりませんでした。 FLASH2004proです。
.solくらいやね。 SharedObject参照。
772 :
768 :05/02/02 15:39:03 ID:HYkFkRm7
やっぱそれしかないですかね。 実は携帯用のFLASHを作っていて、 FLASH Lite1.1はSharedObjectが対応してないみたいで怒られました。 スレ違いな質問で申し訳なかったです。 ありがとうございました。
どなたか教えてください。 環境は,winodws2000pro,FlashMXです。 現在、attachMovieを多用してMCの読み込みを行っています。 具体的には、 for(var i = 0 ; i < num ; i++){ tmpY = i*24; var initObj = { _x:tmpX , //横座標 _y:tmpY //縦座標 } var mc_Name = tgtObj + (i+1); //インスタンス名を設定 var mc_cnt = 1000 + (i+1); //インスタンスを表示するレイヤーLVを設定 this.attachMovie(tgtObj,mc_Name,mc_cnt,initObj); } のような記述で読み込ませています。 このとき、MCの読み込み終了を判断させるときどうしたらよいでしょうか?
774 :
773 :05/02/02 17:38:35 ID:WAyagAnj
ちなみ現在は、 配列を用意し、 MC_arr[i] = this.attachMovie(tgtObj,mc_Name,mc_cnt,initObj); のような記述で、 読み込んだMCを配列に格納し、そのlengthで判断させているのですが、 MCを大量に読み込ませるとどうにも旨く動作していません。
>773 読み込み終了とはなんでしょう? attachされた瞬間 MCは複製されていると思うのだけれども。 後 上手く動作しないって、何がどう上手く動作しないのですか?
776 :
Now_loading...774KB :05/02/02 18:46:56 ID:P0fcPaR8
当方MX2004です。 早速ですが、 loop_cnt = 0; num = 0.00000000000001 while(true){ trace("sadsadsasdsad="+ Math.abs(num)); if(Math.abs(num) > 1){ result_data = num; break; } num *= 10; loop_cnt ++; trace(num); } trace("result = " + result_data); trace("loop_cnt = " + loop_cnt); の、num が 0.00000000000001以上の場合と未満の場合でループの回数にズレが生じます。 これってなんなんでしょうか。。 0.00000000000001・・・loop_cntは14であるはずなのに15 0.000000000000001・・・loop_cntは15でオッケー なぜ0.00000000000001だとループを1度余分に回してしまうのでしょうか。
ビット→バイト変換の誤差
浮動小数点の演算誤差関係の問題じゃないの?ぐぐればいろいろでるよ。
779 :
773 :05/02/02 19:28:15 ID:WAyagAnj
>>775 様
失礼致しました。
読み込み終了というのは、
指定したMCが指定した個数ムービー上に配置される、
という意味で使用しています。
尚、現在やりたいことは、
読み込みが終了したMC内のテキスト等に値を挿入していくことなのですが、
終了を判断するロジックがうまく動作しておらず、
ムービー上に読み込まれる前に、値の挿入処理が動いていまい、
何も値が表示されない状態です。
・・・と書かせていただきましたが、
どうも原因は別の所にありそうです。
(終了を判断できない原因です。)
お忙しいなか失礼致しました。
*775様、返信ありがとうございました。
781 :
773 :05/02/02 19:34:40 ID:WAyagAnj
そして、連続で書き込み申し訳ないのですが、 質問させてください。 function hoge(){ trace(this); function foo(){ trace(this); } foo(); } というスクリプトを書いたとき、 関数foo内のtraceで表示されるのは、 [type Object] となりました。 つまり、この関数fooは関数hoge内に存在するもので、 フレームアクションではないため、 onEnterFrameのイベントを使用出来ないということでしょうか?
>>781 onEnterFrameはムービークリップクラスのイベントハンドラ
783 :
773 :05/02/02 21:15:24 ID:WAyagAnj
>> 782 様 返信ありがとうございます。 つまるところ、上記スクリプト上では、 関数hogeはMCオブジェクト上に存在するため、 そのイベントハンドラである、 onEnterFrameを使用出来るが、 関数fooはfunction上に位置し、 MCオブジェクトのメソッド及びプロパティは使用できない、 という解釈でいいんですよね。 本当にありがとうございました。
784 :
776 :05/02/02 21:34:46 ID:0JF/sBiU
FlashMX WinXP とても初歩的な質問です。 自分で調べたんですがわかりませんでした。 よろしくお願いします。 変数についての質問です。 var target = mc; _root.mc._x = 300; trace(_root.target._x); のような感じでtraceの引数のムービークリップを指定しているところで 変数を使用したいのです。この場合はどう書いたらよろしいのでしょうか? phpなどの場合 _root.$target.=X のようなことをしたいのです。 よろしくお願いします。
>>785 phpなどの場合
_root.$target._x
タイプミスです。
こうでした。
var target = _root.mc; _root.mc._x = 300; trace(target._x); かな?試してないスマソ
swfファイルを読み込んで、tabキーを押さずに 自動的に任意のリンクにフォーカス枠を当てて表示させるって可能ですか? 誰かやり方教えて下さい・・・
>>788 Selection.setFocus(tgtMc);
を1フレーム目に記述すればいけると思うよ。
試してないけど。
それと質問させてください。
配列の初期化(要素、長さ、を0にする)って、
もう一度、
tgtArr = new Array;
とか記述しなきゃ駄目なんでしょうか?
>789 new Array()使用するのになにか問題あるのかな、 インスタンス生成するのが嫌とか? Array.splice利用する手もありますけれども。 var list = [ "a", "b", "c" ]; trace( list.length ); //3 list.splice(0); trace( list.length ); //0
791 :
788 :05/02/04 13:34:58 ID:n7yhEBC/
>>789 レスありがとうございます。
Selection.setFocus(tgtMc);
1フレーム目に入れてもフォーカスは当たりませんでした。
(tgMcってのは任意のインスタンス名を入れるって事ですよね?)
まだいろいろ模索中なので、もしなに気付いたらまた教えて下さい。
focusEnabledをtrueにしないとmcはフォーカス受けられないよ
this.focusEnabled = true; Selection.setFocus(this)ね
794 :
788 :05/02/04 16:28:16 ID:n7yhEBC/
>>792 >>793 レスありがとうございます。
MCのonClipEvent内に
this.focusEnabled = true;
Selection.setFocus(this)
と記述したらバッチリフォーカスが当たってる(涙目)!
・・・でも矢印キーでリンク間移動せず、リターンにも反応せず。
ナゼなんでしょう?単純にTABキーを押した状態にしたいんですが・・・。
教えてクンで申し訳ないっす。初心者にはむずかしすぎる!?
>>794 onClipEventに書いてるから。
いいかげんリファレンスも嫁。
796 :
789 :05/02/04 20:09:38 ID:e4y2ZKCc
>> 790 返信ありがとうございます。 前に何かの本で、配列の作成、削除は パフォーマンスに大きく影響すると書いてあったもので、 出来る限り避けたいと思っていた為です。 例文の方法は、 何かスマートですね。 ちょっと試してみます。 返信ありがとうございました。
797 :
shiroutodesu :05/02/04 23:00:33 ID:2eWUMwQ6
外部テキストを読み込んで表示させる時に コンポーネントを使ってスクロールバーを表示 させたいのですが、どうしたらよいのか分かりません。 MXの2004を使っています。 いろいろ本を読んで独学でやっているのですが・・・ 初心者ですので、こんな質問で申しわけありませんが どなたか丁寧に教えていただけないでしょうか? スクリプトの書き方から教えていただけると有り難いのですが。 宜しくお願いいたします。
外部mp3ファイルをloadSoundで呼び出して swfにして、音楽を聴けるようにしようとおもっているのですが、 2つあるmp3ファイルのうち、一つだけなぜか 回転数が下がっています。 loadSoundでfalseにしているので、ストリーミング再生という ワケでもないので、原因が分かりません。 どなたか、ご存じの方、教えて下さい。 osはXPで、FLASH MXです。
自分語は勘弁 そもそもswfにするってどういう事よ? 単にロードすることではなく? 回転数??
>>799 漏れの日本語最悪で申し訳ないです。
外部読み込みでmp3をフラッシュ内で再生すると、
回転数が落ちたり、逆に回転数が上がったりして、
原曲と一致しないんです。
もしかしてwavからmp3にエンコードする時に
なにか法則があったりするのでしょうか。
回転数っていうか、 MP3外部読み込みすると音と画面が同期しないってことか。 漏れだったら外部読み込みせずに、 タイムライン上でストリーミングで鳴らす。
回転数…? 早送りに聞こえるということですかね。 エンコードのソフトによっては Flashに読み込んだとき早送りで聞こえてしまうことがありますよ。 他のソフトを試してみるか、 ビットレート上げたりして調整してみましょう。
>>801 サンプルレートは?
flashでは11の整数倍khzじゃないとリサンプリングされた希ガス
>>802 たびたびすいません。
画面と動機はしなくてもいいんですが、
音自体が、ある特定のmp3ファイルだけ
FLASH上で再生すると回転数が早くなってしまい
最初はASの問題かと思っていたんですが、
他のmp3ファイルで試した場合はちゃんと流れたりしたので、
どうやらそのmp3ファイルに問題があると言うことは
わかったのです。
そこで、FLASH用にwavからmp3にエンコードする時に
ビットレートや、PCM音源の kHzなどの決まり事のような
モノをご存じでしたらどなたか…と思っていたのですが、
問題がちょっとスレ違いになってしまったので、
申し訳ありません、他のところで質問してみますね。
失礼しました。ありがとうございました。
カキコの行き違いすいません。
>>803 ,804さん、アドバイスありがとうございます。
ビットレートあげてみたりしてみますね。
あと、サンプルレートは44100だったのですが、
だめでした。
11の倍数のKhzで取り込めるソフトを探して
みます。
807 :
Now_loading...774KB :05/02/05 10:57:51 ID:qMW+9R2f
ここはエロイ人がいるとのことなので、質問させてください。 WindowsXPのFlashMXです。 1.ムービークリップの「シンボル名」を取得 2.ムービークリップのリンケージ項の「識別子」を取得 3.Object.registerClass(識別子, HogeClass)後、HogeClassのインスタンスから「識別子」を取得 1〜3 の何れかをactionscriptで取得できないでしょうか? いちいち変数で管理するのがうっとおしいのでなんとかしたいです。
808 :
_name :05/02/05 12:44:46 ID:ADrYcBja
>807 識別子は例えばMCをattachMovieClipする場合、 「何」を複製するかをFlash側に伝えるためのもので その「何」を入力して教えてあげるのはこちら側。 Flash側はその「何」をこちら側に伝えるためのデータを 保持する必要はないのだと思う。 こちら側は「何」が何であるのかわかっていることなのだから。 というか識別子を変数で管理するのがうっとおしいて そんなことある? 識別子をリンケージの目的以外の処理に使用しないでしょう? 識別子をそのままMCのシンボル名に使用しているというならば 808の言うとおりですが。
識別子を何か勘違いしているのではないだろうか?
今変数でやってると言う処理を書いてみれ。
812 :
807 :05/02/05 17:20:28 ID:qMW+9R2f
>>808-811 回答ありがとうございます。
たとえば、「targetmc(this._parentとは限らない)ステージ上に自分と同じ識別子で
attachMovieする」メンバ関数をMovieClipクラスに拡張することを考えたとき、
MovieClip.prototype.ultra_super_special_greate_duplicate = function (targetmc, newname, depth, iniobj) {
targetmc.attachMovie(*this.attachされたときのidName*, newname, depth, iniobj);
以下、適当な初期化処理
:
}
と記述できると、コード量も減って単純ミスも減るし非常に都合がいいわけです。
(targetmcがthis._parentであれば、duplicateMovieClipで済むわけなんですけどね)
というわけで、
それぞれのムービークリップで識別子名を変数に代入しそれを利用するのもソースの可読性が落ちる。
また、たとえば"イカ"にIKaClass、"タコ"にTakoClassとそれぞれに一対一に対応させるように
派生クラスを作成するのも芸がないなと。
せっかくObject.registerClass(”識別子”, HogeClass)とかさせたりするんだし、
識別子を単なる「ラベル」扱いさせるのも切な過ぎるんじゃないのか?…と思ったわけでして。
もしかしてできるのかな?と質問したしだいです。
813 :
807 :05/02/05 18:03:04 ID:qMW+9R2f
あ、「親のムービークリップが削除されると、複製されたムービークリップも削除されます」 ってのもduplicateMovieClipが使えない理由のうちのひとつです。
>>812 自作のクラスに「className」プロパティでも付け足しゃいいだけと思うけどな。
クラスが増えようがプロパティ名同じにしときゃいいんだし。
コンポーネントの基本クラスであるUIObjectクラスも、classNameと
symbolNameプロパティを(とりあえず)持ってるし、それにならっておくのが無難でないかな。嫌みたいだけど。
それ以外ならattachMovieしてできたインスタンスの__proto__に指定MCの__proto__
から辿ってもとのprototype参照かな。深い継承してたらアウトだけど。
バスキュールさんかどっかのMX時代のドキュメント探してみると同じようなことやってたかな。
815 :
Now_loading...774KB :05/02/05 18:57:59 ID:qMW+9R2f
>>814 回答ありがとうございます。
どうも綺麗じゃないので困ってます。
今考えられる解決方法は2つあって、
全てのシンボルに対して派生クラスを作成する
IkaClass.prototype.className = "イカ";
か、タイムライン上でsymbolNameを設定してやって、
this.className = "イカ";
これが激しく嫌なので何か解決方法があるといいんですが。
あまり問題になってないのかな?
# Flashの内部ではduplicateMovieClipはどのように実装されているんだろうか?
# 単純に親に向かってリンクが張られているだけなのかな。
816 :
807 :05/02/05 19:01:57 ID:qMW+9R2f
>>815 あ、
> か、"イカ"のタイムライン上でclassNameを設定してやって、
> this.className = "イカ";
ですね。
817 :
807 :05/02/05 19:05:18 ID:qMW+9R2f
>>814 完全にスルーしていましたが、
こちらについて、もう少し詳しくご教示願えませんか?
> それ以外ならattachMovieしてできたインスタンスの__proto__に指定MCの__proto__
> から辿ってもとのprototype参照かな。深い継承してたらアウトだけど。
MovieClipの派生クラスからsuperを手繰っても、
thisのMovieClipに対する識別子やシンボル名("イカ"とか"タコ"とか)は、
取得できないと思うのですが?
読み込んだswfをswf自ら消去させる方法ってどうやるんですか?
819 :
807 :05/02/05 20:13:29 ID:qMW+9R2f
というわけで、お風呂に入っている間に、 システム側が管理に使っているシンボル名情報、シンボル名情報が見えないと仮定し、 とりあえずidNameを格納する方法で視認性があがる解決法について考えてみました。 Object.prototype.ultra_super_greate_registerClass = function(str, cls) { cls.prototype.idName = str; Object.registerClass(str, cls); }; // function SakanaMCClass() {// 初期化:super()とか } SakanaMCClass.prototype = new MovieClip(); Object.ultra_super_greate_registerClass("イカ識別子", SakanaMCClass); こんな感じでしょうか。 ただ、本来のregisterClassなら↓こうも書けるんですよね。んー、いまいち。 function SakanaMCClass() {// 初期化:super()とか } Object.registerClass("イカ識別子", SakanaMCClass); SakanaMCClass.prototype = new MovieClip(); しかも、 Object.registerClass("イカ識別子", SakanaMCClass); Object.registerClass("タコ識別子", SakanaMCClass); Object.registerClass("カイ識別子", SakanaMCClass); とやったときにthisの識別子は判別できないわけで…。 完全に解決はできなさそう。
インスタンス名にリンケージ識別子を復元可能な形で生め込んだら?
>>817 インスタンスfoo,barがあるとして、そのタイムライン上で、
var MyClass = function(){}
MyClass.prototype.className = "イカ"
foo.__proto__ = new MyClass
trace(foo.className) //たぶん「イカ」
bar.__protp__ = foo.__proto__
trace(bar.className) //おなじく「イカ」
__proto__で継承するわけ。そんなに推奨される書き方で無いよ。
識別子とは違うね。識別子を使わないで、後付で継承させる独特の
書き方(おおまかな内部的な仕組みは同じだけど)。
プロトタイプベースの言語のOOPの本読んでみて。JavaScriptとかかな。
822 :
807 :05/02/05 21:32:20 ID:qMW+9R2f
> インスタンスfoo,barがあるとして、そのタイムライン上で、 > var MyClass = function(){} > MyClass.prototype.className = "イカ" > foo.__proto__ = new MyClass > trace(foo.className) //たぶん「イカ」 > bar.__protp__ = foo.__proto__ > trace(bar.className) //おなじく「イカ」 ふむむ、ええと、結局、普通に継承しているだけで、結局 > それぞれのムービークリップで識別子名を変数に代入しそれを利用するのもソースの可読性が落ちる。 と実体があるかないかという違いだけで、ムービークリップのタイムラインにスクリプトを書く必要がある という点で可読性の問題を解決していないような気がするのですが。
解決するためのアイデアは出したつもりだけど。後はお好きなように。
824 :
807 :05/02/05 21:42:36 ID:qMW+9R2f
>>820 それもできなくはないのですが、インスタンス名の管理がめんどうですよ、
attachMovieだけじゃなくタイムラインに気軽に直接置きたいヤツもあるし。
というか、本当に行き詰ったらそういう時は普通にコンポーネントにするかもです。
好きなMCのステージにduplicateできる
MovieClip.ultra_super_special_greate_duplicate()
が汎用的に使えたらうれしくないですか?
今回は、できれば簡潔に解決したいとの趣旨で質問させていただきました。
わがまま言っているようで、すみません。
読む気もしない
826 :
807 :05/02/05 21:48:01 ID:qMW+9R2f
どっかの海外サイトで見かけたことあるよ 200行くらいからなるスクリプトだった記憶がある
>たとえば、「targetmc(this._parentとは限らない)ステージ上に自分と同じ識別子で >attachMovieする」メンバ関数をMovieClipクラスに拡張することを考えたとき、 ううむ、もっと適切に文節を区切ってくれないと 何言っているのかわからないですよ。 >好きなMCのステージにduplicateできる >MovieClip.ultra_super_special_greate_duplicate() >が汎用的に使えたらうれしくないですか? 結果であろう この三行の意味もよくわからない。 もっとわかりやすく。用例も。
OSはWinXPの、FLASH MXを使っています。 円形のムービークリップで、その円がピザのように5等分されており、 その1つ1つにメニュー項目が入っていまして、 そのメニューを押すと円が回転してその項目が一番上(時計で言うと12時)まで くるりと行くという仕組みを作りたいのですが、 スクリプトがどうしても思いつきません。 どなたか教えて下さい。よろしくお願いします。
メニューを押したら_rotationで回す。
ご返答ありがとうございます。
>>830 rotationで回した際に、「一番上に来たら止まる」という
設定をどのように行えばいいのか、分かりません。
しかも、円のメニューですので、その項目ごとに、
回転度数も変わるため、その算出方法も
わからないというお恥ずかしい状況です…。
角度くらい自分で考えろ。丸投げすんなボケ。 なんなら分度器使え。 言葉だけ丁寧でむかつくんだよ。
>>834 解答もしないで文句だけ言うヤシだな。和漢ねーナラダマッテロ
72の倍数が5個しかないんだから、rotationで十分事足りると思うけど あれだったら、配列で管理してあげれば? 一定の法則で値が変化するから、すぐ出来ると思うよ やってないけど。
やってみたけど、二次元配列使えば、現在12時にあるボタンから 今から12時にするボタンの角度がすぐ出るね。 もっと簡単な方法ありそうだけど、よくわかんね
真上にある状態、の角度値をそれぞれ持たせておいて、 現在の角度値と比較して回せばいいんじゃね
小数点第1までを返すにはどうしたらよいですか?
Math.round( hoge*10 )/10
>>833 よくある「マウスの方向を向くムービークリップ」とかのサンプルを見るといいよ。
向く方向をマウスの位置でなく、上の固定点にすればOK。汎用的なのできると思うよ。
842 :
sage :05/02/07 16:25:25 ID:kvDOFvUy
もし、ド素人な質問で機嫌を悪くなさらなければお答え下さい・・・ フレームアクションの「STOP」でムービーを止めたあと、 従来ならボタンインスタンスを設置して、 それにオブジェクトアクション「PLAY」を入れていました。 でもボタンを出すとデザイン的にかっこよく見えないところなので スペースキーを押したら再生するようにしたいのです。 スクリプトはどう記述すればよいのでしょうか。 バーションは5です。 ひょっとして物凄くバカな質問でしょうか・・・? どうぞよろしくお願いしますm(_ _)m
>>842 とりあえずKeyをキーワードにHelp見れ
>>842 を見て思い出したんですが、
なぜか家の糞Macでは Key.isDown(Key.SPACE) が
falseになってしまいます。
Key.getCode() == Key.SPACE だとtrue。
お心当たりのある人教えてください。
OS9でOSX用のキーボード使ってて、
入力が英語キーボードのような入力方法になってるからでしょうか。
>>844 とりあえず標準のキーボード使うとかドライバ周り疑ってみれ
2点質問があります。 MX2004でListコンポーネントを使ったものを作っているのですが 部分的にアイテムの文字の色を変える方法は無いのでしょうか。 バックの色や全部の文字色を変える方法はわかるのですが ある行だけ青くして他は黒い字とかいう形の物を実現が どうしてもできません。 それからもう一点ですが、iconFiledなのですがここに何の名前を入れると アイコンが表示されるのでしょうか。ライブラリにあるMovieClipの名前を 入れるのでは表示されませんでした。
>>845 やっぱりキーボード周辺がおかしそうですね。
いいOS9対応キーボードがないんで動作確認はWinでします。
ありがとう。
>>846 表示したいアイコン、書き出していないとか・・・
849 :
846 :05/02/07 20:49:00 ID:wX/FHB6O
>>848 ありがとうございました。アイコンの件は解決しました。
書き出しはしていたのですが最初のフレームに書き出しをチェックしてませんでした
あとaddItemのitemにiconを指定するだけでは表示されないんですね・・・
iconFunctionを書いたらきちんといけました。
ど素人なんですが教えてください。以前似たような質問をしたのですが、 タイマーの計測開始フレームで、 あるムービークリップ、インスタンス名 timeを配置しました。 onClipEvent(load){ starttime=getTimer(); } onClipEvent(Enterframe){ time=getTimer()-starttime; } とすると、タイマーが動きますよね。 計測終了フレームで、タイマーを止めたいんです。別のムービークリップに onClipEvent(load){ endtime=getTimer()-time.starttime; } として配置しましたが、endtimeはstarttimeをひいていない、 ムービー再生開始のトータルのタイムが出されてしまいました。 ムービー再生開始から計測開始までの時間を引きたいんですがどうすればいいですか? この方法だとできないでしょうか?
>>850 >time.starttime
のパスが違うんじゃね?
Flashの作成段階でイメージ画像をjpgなどに保存は簡単にできますが、 swfの時にも同じ事がしたいんですができますか? ユーザに画像をデジタル加工をして、その画像をjpegなどに 保存したいのですが、できますでしょうか? できるとすれば、やり方を教えていただけないですか? AS辞書をあさったのですが、見つからなかったので困っています。
853 :
852 :05/02/08 10:34:04 ID:AGB3BgzM
852です。ごめんなさい書き忘れてました。 ソフトはMacromdia Flash MXです。
できないです。
・環境 FlashMX WinXP ・質問 外部ファイル(jpg,mp3等)をアクションスクリプトによって 動的にライブラリに読み込みたいです。 どうやったらいいのか検討つきません。 よろしくおねがいします。
856 :
850 :05/02/08 11:04:30 ID:JrVjyGI+
>>851 ありがとうございます
パスが合っていればこの方法でなんとかできるでしょうか?
もしほかにいい方法があれば教えてください。
>855 LoadVars
>>856 パスの指定で普通に動く。
いい方法ではないかもしれないけど
//メインタイムラインに記入
function timeChk(flg) {
if (flg) {
cnt++;
if (cnt == 1) {
startTime = getTimer();
}
} else {
endTime = getTimer()-startTime;
cnt = 0;
trace(endTime);
}
this.onEnterFrame = function() {
if (flg) {
nowTime = getTimer()-startTime;
} else {
this.onEnterFrame = null;
}
};
}
//計測開始フレームに記入
_root.timeChk(true);
//計測終了フレームに記入
_root.timeChk(false);
delete this.onEnterFrameのほうがいいらすぃよ
>>857 LoadVars は変数を読み込むのに使うんですよね?
そうではなくてloadMovie」のようなものでライブラリに読み込むことはできないんでしょうか?
>>857 えーと、ライブラリに読み込んでリンケージ識別子を設定し、
識別子を書き出したいってことなのかな?
詳しくはしらないけどそういうことは無理だと思うが。
自分で言ってるようにloadMovieで普通に読み込むのはダメなの?
862 :
861 :05/02/08 14:07:59 ID:VSCFjXUE
>>861 やりたいことはその通りです。
無理そうですか。
一度読み込んだ外部jpg等を再読込せずに何度も再利用がしたかったんです。
(いろいろなムービークリップで)
loadmovieの場合はその都度読み込まないといけないので
ライブラリに読み込んでからattachMovieで書き出そうかと思っていたんです。
からのムービークリップに一度読み込んでからそれをduplicateMovieClip
で複製して再利用っていうの考えたんですが
duplicateMovieClipはloadMovieしたものまでは複製してくれなさそうなんで
直接ライブラリに読み込もうと思ったわけです。
864 :
857 :05/02/08 14:20:44 ID:8LBeITqD
失礼。LoadVarsではなくloadMovieでしたね。 ライブラリに読み込むというのは どんなものか想像つかないけれども 861さんの言うとおりならば 方法はないと思う。 用途を書いてもらえれば 別の解決法を挙げられるかもしれないけれども。
>863 今のFlashの仕様では 都度読み込むしか手はないですね。
866 :
850 :05/02/08 15:16:26 ID:JrVjyGI+
>>858 ありがとうございます。パスの指定でできなかったら、そのやり方で試してみます。
>>859 よろしければ、使い方の詳細を教えてもらえませんか?
質問させて頂きます 環境はFlash5のWinXPです。 目的としては、LoadVarsを用いてWeb上にあるcsvデータを読み込み その内容に応じたデータ処理を行なっていく予定なのですが csvデータを変数に格納する段階でつまづいてしまっております (loadVariablesを用いて、ダイナミックテキストエリアに表示することはできました) フレームスクリプトとして { myLoadVars = new LoadVars(); myLoadVars.load("test.log"); trace( myLoadVars ) ; } を記述したのですが プレビューを行なってみてもmyLoadVarsに値が表示されない状況です もし何か間違えがあれば指摘して頂けると幸いですm(__)m
>868 レスありがとうございます やはりloadVarsではダメなのでしょうか XML関連で検索してみたのですが、どうにも分からなくなってしまいました もう少し頑張って検索してみますm(__)m
onDataでいいことあるらすぃよ
871 :
867 :05/02/08 21:02:15 ID:vXqEMfab
>870 ありがとうございます いろいろ調べた結果、どうも読み込みが完了する前に表示してしまっていたせいだと分かり 新たに書き直してみたのですが、まだうまくいきませんでした 以下がソースなのですが //------------------------ objLoadVars = new LoadVars(); objLoadVars.onLoad = loadEnd; objLoadVars.load("test.log"); function loadEnd(){ trace("_root.text=" + _root.text); } //------------------------- これはまだどこか間違っているのでしょうか・・
まずヘルプのサンプルを読めよ
LoadVarsはFlash5では使えなかったような気が
>>871 一体どこへ行こうとしてるの?
cvsファイル読み込みたいんだべさ?
csvだつた
csv読み込みとかならphpとかも考慮すべき。 DB使えたら楽だけど。
877 :
867 :05/02/08 21:58:52 ID:vXqEMfab
すいません、本当に今日一日いろいろ検索していたのですがそれでも分からず こちらに書き込んでしまいました やりたかったことは <test.log>というファイルの中身が以下の形式の場合 ----------------------- text=name,country,place,tel\n taro,japan,iwate,000\n ... ... ... ----------------------- これまでcgiで読み込み、カンマ毎でパラメータを区切ってリスト表示を行なっていたのですが 以前より興味のあったASで置き換えてみようと思ったのです フラッシュで行なおうとした手順が ・test.logファイルからデータを読み込む ・カンマで区切られたデータを配列に入れる ・そのデータを表示してみる ダイナミックテキストエリアには表示されたのですが、そのデータをどのように扱っていいかが分からず いろいろ調べたのですが、検索の仕方が悪いのか、自分の思う情報を探すことができませんでした
878 :
yassun :05/02/08 22:25:29 ID:Q5PtMoZu
FLASH自体のバグなのかどうかわからず、お聞きしたいのですが、
attachmovieを使って深度−1以下で生成したムービークリップが
普通のタイムライン上では問題なく表示されるのですが、フレームアクションの
gotoAndPlayを実行した瞬間消えると言う症状です・・・。
ちなみに、深度0以上ではgotoAndPlayを実行しても問題なく表示されています。
flashmxver6をつかっております。
一応症状を抽出してサンプルを作ってみました。
http://www.ismusic.ne.jp/fyasuto/flash/attach.swf フレームの最後にフレームアクションでgotoAndPlayで最初のフレームに戻る瞬間
深度が負のクリップは消去するというものです。
それではよろしくお願いいたします。
負の深度ってサポートしてるのか。。。しらんかった。
880 :
yassun :05/02/08 22:45:32 ID:Q5PtMoZu
>879 解凍有難うございます・・・。 まぁ、ゲームを作ってて問題が起きて突き詰めると↑の問題だったようで・・・。 currentFrame -1 が使えなくなるので、策としては単純にフレームをめちゃ めちゃ延長させてやろうかと思ってます。 mx2004のトライアルで問題でなけりゃ購入検討しようかと思ってるところです。 敵キャラの配置をいっぱいしたいのですが、attachmovieより実はスマートな方法があるのでしょうか・・・。
>>878 似たような経験あるな。深度じゃないけど。
メインのタイムラインでループして、最初のフレームに戻ると何かがリセットされる。
初期化は一回だけ行うようにしてたが、MCが再配置されることでリセットされてた。
全部MC内で行うようにしたら解決したけど。
むしろリセットされない方が不思議な気もする。
883 :
yassun :05/02/08 23:16:19 ID:Q5PtMoZu
うお! >全部MC内で行うようにしたら解決したけど。 なんか、この言葉にピンときて アタッチムービーの配置場所_rootでなくて新しく作った1フレームのクリップ内に したらいけました! 聞いてみるもんだなぁ〜 マジ有難うございました!
>>878 負の深度と言うのは、スクリプトを使わないで普通にステージ上に配置した
インスタンス用の深度として確保されているものだから、使わない方法に
変更したほうが良いと思うよ。
たぶん内部的な管理の方法が違うんで無いのかな。1フレーム目まで
達すると、普通にステージに配置したインスタンスのみを再描画するとか。
885 :
yassun :05/02/09 00:24:19 ID:RqULwLnk
>884 なるほど・・・。 とりあえず、別クリップでの読み込みによる対策は大丈夫でしたが、 その直後、_root.gotoAndPlayで別のシーンに行って戻ってきたときに消えちゃって結局 駄目になっちゃいました・・・。 一フレーム目というか、恐らくgotoAndPlayを使った時点でアウトですね・・・。 まぁ、あんまりスマートじゃありませんが、正の深度でだましだましやってみます〜 ありがとうございました! 実はあの直後に
な、なに?
888 :
yassun :05/02/09 01:35:14 ID:RqULwLnk
889 :
yassun :05/02/09 01:36:04 ID:RqULwLnk
土星を殴ると二万円ゲットできます
890 :
yassun :05/02/09 01:36:47 ID:RqULwLnk
そりと、矢印キーの↑↓で移動できます〜
DOOM思い出した漏れは昭和世代 が、コレ以上はスレ違いですな
892 :
892 :05/02/09 04:35:55 ID:pENvXQLo
誰か教えて下さい。お願いします。 環境は『Flash MX 2004 / Mac OSX』です。 シーンが3つあって、名前がそれぞれ『コンテンツ』『テキスト』『イメージ』なんですが 『コンテンツ』に2つのボタン(AとB)があって、 クリックするとそれぞれ、Aなら『テキスト』・Bなら『イメージ』に移動するようにしたいんですが、 その時にクリックした後にすぐに指定シーンに移動するのではなくて 『コンテンツ』の時間をしばらく進ませてから移動させたいんです。 そのスクリプトの書き方がわかりません。 (多分説明下手っすよね。ごめんなさい。) シーン『コンテンツ』 レイヤー1 □□□□□□○□□□□● ○に2つボタンがある。ここで行き先を選択した後、 ●まで進みそれぞれのシーンに移動する。 自分なりに説明してみるとこれがやりたい事なんです。 ご教示お願いします
読み込んだ外部swfが終了したら、次のフレームに飛ぶようにするには どうしたらいいのでしょうか。 どなたかよろしくおねがいします。
894 :
893 :05/02/09 05:36:10 ID:uKBwdYJ7
すいません、書き忘れました。 OSはwindowsXP。FLASHMXです。
変数bunkiを用意 ○フレーム stop(); ボタンA押す>bunkiにA代入>次フレームへ ボタンB押す>bunkiにB代入>次フレームへ ●フレーム gotoAndPlay>bunkiに書いてあるフレームラベルAかBへごー 眠くてたまらんので適当に人間の言葉に翻訳して読んでくれ。 俺はもう寝る。
>>893 yomikoに読み込んだら。
onEnterFrame内で、
yomiko._totalframes <= yomiko._currentframe
で評価してnextFrame()すればいいんじゃね?
897 :
892 :05/02/09 05:54:27 ID:pENvXQLo
>895 ありがとうございました。できました。 変数を遣うんですね。 初歩質問に答えてもらってありがとうございますm(__)m
898 :
893 :05/02/09 06:07:27 ID:uKBwdYJ7
>>896 朝早くからすみません。
frameを数えるやり方があるんですね。
やってみます。ありがとうございました!
>>892 スクリプトを使うなら、各シーンをムービークリップ化して扱った方が良いです。
次のプログラムは、フラッシュではどのように書けばいいですか? // c++ class Test0 { public: int method(){ return 0; }; }; class Test1 :Test0 { public: int method(){ return Test0::method()+1; }; }; class Test2 :Test1 { public: Test1::method; }; main(){ Test1 a1; Test2 a2; printf("a1.method=%d\n",a1.method()); printf("a2.method=%d\n",a2.method()); } ----------- 実行した結果 a1.method=1 a2.method=1
ばっかじゃねーの
変に煽る奴が最近目立つな。 >900 1読んでね。
悪いね この板、イライラすんだよレベルが低すぎて 煽りでもいれなきゃやってらんね
他の言語わかんないからやりたいことを説明してくれたほうが答えやすいんだけど。 つーか C とかは知ってて当たり前なんだろうか。
すみません、フラッシュ初心者なもので。 一応、フラッシュでも書いてみたんですが どうしても****が2回実行されるみたいなんです。 Windows2000のFlashMXです。 もしかして私は重大な勘違いをしているんでしょうか? Test0 = function () {}; Test0.prototype = {}; Test0.prototype.method = function() { return 0; }; Test1 = function () {}; Test1.prototype.__proto__ = Test0.prototype; Test1.prototype.method = function() { return super.method()+1; //**** }; Test2 = function () {}; Test2.prototype.__proto__ = Test1.prototype; // a1 = new Test1(); a2 = new Test2(); trace("a1.method="+a1.method()); trace("a2.method="+a2.method()); ------ 実行結果 a1.method=1 a2.method=2
>>903 お詳しいようですので、よろしくお願いいたします。
質問です。XPでMX 2004 Proを使ってます。 XMLからノード拾ってせっせと変数に直してるんですが var hensu1 = flashXML.firstChild.childNodes[1].firstChild.nodeValue; var hensu2 = flashXML.firstChild.childNodes[2].firstChild.nodeValue; var hensu3 = flashXML.firstChild.childNodes[3].firstChild.nodeValue; var hensu4 = flashXML.firstChild.childNodes[4].firstChild.nodeValue; ・ ・ ・ ・ ・ ・ ・ ・ var hensu200 = basicRoot.childNodes[200].firstChild.nodeValue; というものを、forとか使って簡単に書くことはできますか? var n=1; for (i=0; i<200; i++) { var "comment"+n = basicRoot.childNodes[n].firstChild.nodeValue; n++; }; とかできればいいんですけど、var "comment"+nって書き方はダメですよね。 こういう場合はどうすればいいのでしょうか? ぜひともご教授ください。
エクセルで作るといいよ 嘘。 this["comment"+n] = 〜 で定義して、いらなくなったら delete this["comment"+n] とか。
>908 mycomment = new Array(); var n=1; for (i=0; i< basicRoot.childNodes.length; i++) { var mycomment[n]= basicRoot.childNodes[n].firstChild.nodeValue; n++; } ちゃんと確認してないから適当に直して。
>>906 結果は両方とも1になるね。それだと。
何をしたいか日本語にできる?どんな結果が欲しいのかがわかんない。
>>909 >>910 即レスサンクスです。ヒジョーに助かりました!!
つーか良く見ると俺の質問おかしかったですね・・。
前半と後半で変数名とかxmlのたどり方とか変わってるし・・orz
>>911 > 結果は両方とも1になるね。それだと。
> 何をしたいか日本語にできる?どんな結果が欲しいのかがわかんない。
両方とも1になるように書いたつもりなんです。でも、
>>900 に書いたC++だと、a1.method=1、a2.method=1になるんですが、
>>906 に書いたフラッシュだと、a1.method=1、a2.method=2になるんです。
まったく同じプログラムです。
何がいけないんでしょうか?
>>913 C++組めるならtraceぐらいできるだろ?それで追っていけばわかるはず。
ASとC++ごちゃまぜにしないようにしようね。
>>913 色々いじってみてみたが、このままの状態で直す方法はわからん
悪いところはメソッド名が同じな為に起こる重複呼び出し
C++組めるなら漏れより頭イイって事だからあとは自分でなんとかなるべ
>>913 MX2004環境だと両方1だけど。
見た感じどこも悪くないよ。
traceでなくて、テキストフィールドにでも書き出すようにして、
ブラウザ上で試してみて。それでOKなら、プレーヤーのバージョンの問題じゃないかな。
たぶん、6以下だとフレームのスコープがうまく処理できてないのかもね。
回避方法は、6環境で表示するムービーならば、継承を2階層以上の時はsuperを
使わないで他の手段にすることかな。
>MX2004環境だと両方1だけど。 マジっすか・・・orz
どうもプレーヤーの問題みたいね。 場当たり的な解決方法は、 Test1.prototype.method = function() { returnmethod()+1; //**** }; に変更することかな。
その昔oppというヒップホップをノーティーバイネイチャーというグループが歌ってた それを思い出した。
失礼します データを読み込んで、テーブル(のようなもの)をフラッシュで表示したいのですが こういった場合、どのような方法で表現するのがいいのでしょうか 簡単なお返事でも構いませんので、何かアドバイスを頂けると幸いです
>>921 csv形式のデータファイルを
myXML = new XML();
myXML.onData = function(yyyyy){
なんだかんだと配列処理
}
myXML.load("xxxxxx.csv");
とか使って読み込んで分解し、配列に入れて、
1行分のテーブルチックなMC用意しといて、
配列の長さを求めてその1行MCを複製し、
各項目に表示するとかかな。
列数、行数が決まってればほんの少しだけ楽
本当に自分で考えない奴だな。結局最後まで丸投げだよ。
なんの話しだ?
変なの居ついちゃったな。 答える気ねえなら黙ってろっつうの。
なんに答えりゃいいんだ?上の質問か? Xpathでもつかってろってことだな ゴミどもが低レベルな話ししてんじゃねーってんだよ
でたよ、知ったか厨が
bakaが釣れた
>>906 オレもMXのOOP実装が半端モノなんだって知らなかったな。
とりあえずこんな感じかな。
素直にMX2004使え。
Test1 = function () {};
Test1.prototype.__proto__ = Test0.prototype;
Test1.prototype.method = function(iniobj) {
if(!iniobj.Test1){
iniobj.Test1=true;
return super.method(iniobj)+1; //****
}
return super.method(iniobj);
};
a1 = new Test1();
trace("a1.method="+a1.method({}));
プ ダサっw 日本のflash関係のコミュニティーってなんでこうダサいんだろ? バカばっかっていうか、ちっとも盛り上がらんというか flashcordersのmlなんて1日200通だぜ、200通 ちっとも何言ってるのかは、わかんねーけんどもよ
>>929 俺もやはり、MXでやってみて906の結果になった。
たぶん、本格的にサポートできてるのはAS2.0から(つまりMX2004)からなんだろうね。
932 :
Now_loading...774KB :05/02/11 00:38:45 ID:fEN/f8uD
ボタンをクリックしたら、指定のURLに飛ぶようにしたいです。 できれば、同一ウインドウで MX2004(トライアル版) うぃnXP 教本とかなしに、適当に試みている状態です。 おねがいします。
933 :
921 :05/02/11 00:44:58 ID:JFB7ZxT4
>922さん なるほど! 複製を使えばよかったのですね データ表示用フラッシュを作ろうと いろいろ考えを巡らせてはいたのですが、なかなか手順が思い浮かばず困っていました。 誰も答えてくれないことを半分覚悟で質問したので 答えて頂いて心より感謝です 本当にありがとうございましたm(__)m
>HwQJLbN4 おいおい なんであなたが突然きれてるんだ。 海外のコミュニティーに詳しいの? 高度な話したかったら技術交換スレ行くといいよ。
936 :
Now_loading...774KB :05/02/11 01:24:46 ID:6U2Hk/vp
こういう、マリオタイプのゲームを作ろうとしているのですが、 ○ ■■■■■ 人 ■■■■■■■■■ 人 ■■■■■■■■■■ ■■■ ■■■■■■■■■■■■■■■■ いまのところ、 プレイヤーはonEnterFrameで少しずつ下に下がる ブロックひとつひとつはonEnterFrameでプレイヤーとhittest hittestがtrueなら、プレイヤーとブロックのhittestがfalseになるまでプレイヤーを上に上げる という感じで作っているのですが、プレイヤーが上下にプルプルしているのと、、明らかにブロックに埋まりつつ上にぬめぬめと上がっていくのがとてもみっともないです。 それ以前に、作り方が完全に間違っている気がします。 マリオタイプのゲームを作るにはどうしたらいいでしょうか? なにかヒントだけでもいただけるとすごい嬉しいです。
要はジャンプでY座標が上へ行って下へ行く訳だ。 下へ行く時にhitTestでtrueになった場合、Y座標の+を停止すれば良い。
938 :
Now_loading...774KB :05/02/11 01:51:32 ID:zvStjIMB
>>937 それだと、プレイヤーの足元より下のブロックしか対応できない気がしますが…。
あ、でもそうか。プレイヤーの右端左端上端下端の座標とブロックの右端左端上端下端とを照らし合わせればそれで対応できそうですね!ありがとうございます。
>>938 う、英語サイトですか。がんばってちょっと読んでみる…。これは、近そうです。すごく近そう!配列を使うなんてまったく想像の範囲外!ていうかhittest使ってねーじゃん!サンプルソースをダウンロードしまくって解析してみます。
もんのすごい参考になりました。ありがとうございます。
>>939 どうしてもリアリティを出したいとか、厳密な判定をしたいならば、
MCに入れ子でつま先とか足の平とかにhitTest用の判定MCを組み込めば良い。
キャラクターとブロックのヒット判定じゃなくて、接地用MCとブロックとの判定で制御すれば大部分の問題は解決する。
視覚的に理解できるから、分かりやすい方法だと思う。
それと配列を使うのはhitTestで勉強してからでも遅くない。
ソース詳しく読んでないから深い言及は避けるけど、hitTestを使ってないとしても、
概念としてはhitTestと非常に近いはず。
予め発生させたブロックに対して、計算上でのある種hitTestを行っていると言っても過言ではないかもな。
”そこにオブジェクトを発生させた” って前段階がある事は非常に大きなヒント。
とりあえず、まずは小さい画面でキャラクターの制御からやってみてはどうだろう。
そうですね…。確かに一度にいろんなことを覚えようとするのは僕の悪い癖です。
アドバイスのように、キャラクターMCの内部に、上下左右にあたり判定MCを配置してみようと思います。
こんな風な感じに。(↑←→↓がそれぞれ各辺のhittestを担う長細〜いMC)
□↑↑↑↑□
←□□□□→
←□□□□→
←□□□□→
←□□□□→
□↓↓↓↓□
なんかいけそうな感じです!明日やってみます。
>>938 のリンク先のサンプルソース中のコメント
// where are our edges?
というのにも通じるところがある感じです。
ありがとうございます!
まぁ、ちょっとズレてるよ。 hitTestのパラメータ、trueってどう言う判定だろ。falseってどう言う判定だろ。 って辺りから勉強すると、きっと自分で気づいて行く事もあると思う。 リファレンスなり、ネットで検索なりすると良い事があると思いますわー。
hitTestの真偽値って座標計算時でしょ マウスでの当たり判定ぐらいしか思いつかない。
環境はMX2004proで出力はFlashLite1.1です。 確認はAU携帯で行ってます 1フレーム目に hour = fscommand2("GetTimeHours"); min = fscommand2("GetTimeMinutes"); sec = fscommand2("GetTimeSeconds") ; hourHand._rotation = hour*30+(min/2); hourHandShadow._rotation = hour*30+(min/2); minuteHand._rotation = min*6+(sec/10); minuteHandShadow._rotation = min*6+(sec/10); secondHand._rotation = sec*6; と書いて2フレーム目で"gotoAndPlay(1);"で1フレに戻してます 動いてることは動いてるんですが、挙動がおかしいっつーか どこか詰めが甘い気がします。ご指摘お願いします
945 :
944 :05/02/11 13:42:22 ID:oPI/6btX
あ、↑はアナログ時計のスクリプトってことで。 hourHand、minuteHand、secondHand、のオブジェクトを 回転させてます
フレーム180に来たら、キャラの口パクをさせて、 フレーム200で、口パクを停止させるようなASを作ろうとしている初心者です。 メインのタイムラインと、「paku」という名のMCを使って、 下記のようなASを書いてみたのですが・・・口が動かないんです。(´・ω・`) メインタイムラインのフレーム180 paku.gotoAndPlay(2); メインタイムラインのフレーム200 paku.stop(); 「paku」のタイムラインのフレーム1に stop(); 「paku」のタイムラインのフレーム9(最後のフレーム)に paku.gotoAndStop(1); ↑メインタイムラインのフレーム180で、 「paku」のフレーム2から9までをループさせるようにして、 メインタイムラインのフレーム200で、 「paku」を停止させようとしてるつもりです。^^; どなたかご指摘お願いします。m(_ _)m
947 :
946 :05/02/11 18:59:02 ID:IsSLxiVT
使用ソフトはFlash MXです 書き忘れ・・・orz
>>940 メインは、
180にpaku.gotoAndStop(1);
200にpaku.gotoAndPlay(2);
pakuは、
1にstop();
最終フレームにgotoAndPlay(2); //ループ
949 :
Now_loading...774KB :05/02/11 19:18:37 ID:SWDBCbYF
まちごた、こっちが正解。 メインは、 180にpaku.gotoAndPlay(2); 200にpaku.gotoAndStop(1); pakuは、 1にstop(); 最終フレームにgotoAndPlay(2); //ループ
>>944 手元に環境ないのでわからないのですが
onEnterFerame使えませんか?
onEnterFrame =function(){
処理
}
stop();
// gotoAndPlay(1);
FLASH2004を使っています。 本屋でいいスクリプト本をみつけたのですが、MX対応とかいてあるのですが、 この本を買っても2004でスクリプトが動くのでしょうか? なんかうろ覚えで、5からMX、MXから2004はスクリプトが変わったとかなんとか、 聞いたことがあるもので、せっかく買っても動かなければと思いまして。
952 :
944 :05/02/11 21:08:26 ID:oPI/6btX
>>950 onEnterFrame =function(){
はFlash5用でだめそうでした。
>>952 じゃあ、
onClipEvent (enterFrame) {
処理
}
はどうですか?
>>951 FLASH2004ちゃんと買ってから質問しろ。
違法ダウンロードは通報するぞ。
>>954 ちゃんと買っているので心配ないです。
本を買っても2004で使えますでしょうか?
スプリクトに関しては無知なもので。
>>952 ところで、そもそも整数値のfpsじゃないってオチはないですよね?
具体的に何がどうへんなのですか?
957 :
944 :05/02/11 22:17:51 ID:oPI/6btX
>>953 それもエラーが帰ってきました
944が今のところ動きますね。
ソレよりコレがDocomoでは動かないのがアレです
1.0はどうやりゃいいのか・・・
>>955 漢ならActionScriptの1.0と2.0の違いなど、関係ない。
気合で頭脳変換しろ。
俺の動かない体感確立は5%〜10%だ。
誤爆したようだな。すまぬ。
959 :
946 :05/02/11 22:43:58 ID:IsSLxiVT
>>949 そのように書いてみても駄目でした・・・
「paku」は結構階層化してるんですが、その事は関係あるんでしょうか?
メイン
↓
MC1
↓
MC2
↓
paku
みたいな感じになっているのです。
あと、MC1があるレイヤーには、マスクもかかってます。
指摘お願いします。m(_ _)m
>>958 レスありがとうです。
その本明日買ってこようと思います。
>>951 5→MXはかなり変わったけど、MX→2004はそれほどでもないから大丈夫。
変わったところも、MXに「付け加えられた」だけだから、MXのが2004で動かない
なんてことはまずない。良いと思ったら買ってもいいと思うよ。
ただ、2004で付け加えられた部分に、結構便利な面もあるから、その本で
基本を勉強して、2004用のリファレンス本とかあるといいかもね。
失礼します スクリプトによる外部テキストの読み込みなのですが システムとして、cgiで作成したテキストデータを、swfファイルで表示するという構成になっています。 しかし、自分の鯖がcgiとhtmlを別の場所に設置するように別れていて htmlやswfの置き場からcgiの置き場所(にあるテキストデータ)を参照しようとするとセキュリティで弾かれてしまい また、cgiでhtmlサーバに書き込みを行なおうとしても弾かれてしまい、 cgiの鯖にswfファイルを直接置いても表示することができずに困っております。 こういった場合は、別の鯖を探す以外に対処方法はないでしょうか? ちなみに私が使っている鯖はniftyです。
っ System.security.allowDomain("hpcgi?.nifty.com");
>964 おお、こんな命令があったんですね・・・! 勉強不足で申し訳ありませんでした。 しかし本当に助かりました。 心より感謝致しますm(__)m
>>964 俺も知らなかったから試しにやってみたらエラーが出た。
XP、MX2004
System.useCodepage = true;
System.security.allowDomain("xxx.co.jp");
loadVariables("
http://www.xxx.co.jp/info.txt ","_root");
**エラー** シーン = シーン 1, レイヤー = レイヤー 1, フレーム = 1 :行 2:security' という名前のメソッドはありません。
System.security.allowDomain("xxx.co.jp");
ActionScript エラー数 :1 報告済みエラー :1
>>959 >>961 にも書かれているとおり。
厳密に書くと、
this.MC1.MC2.paku.gotoAndPlay(2);
this.MC1.MC2.paku.gotoAndStop(1);
とすべき。
969 :
963 :05/02/11 23:44:55 ID:JFB7ZxT4
むむ、なんでだろう。 自分はエラーは出ませんでしたが、相変わらずセキュリティで弾かれてしまいます。 環境はFlash5でWinXPです リファレンスを少し熟読してみます
970 :
946 :05/02/11 23:59:49 ID:IsSLxiVT
>>968 そのように書いてみたのですが、動きませんでした。。。
「paku」にはモーショントゥイーンを使ってるのですが、関係ありますか?
「paku」のフレーム1のstopを消してみたら、
メインのフレーム180以以前からずっと口パクした状態になってしまいした。
MC1自体はフレーム121からあります。
>>970 MC1とMC2のインスタンス名はMC1、MC2であってるの?
違うなら自分でつけたインスタンス名を
>>968 のMC1とMC2のところを書き換える。
というかマニュアルなり参考書なりお勉強サイトなり見て基本から学んだほうがいいよ。
972 :
963 :05/02/12 00:18:04 ID:UuJSYLYo
調べたら少し分かりました。どうやら使い方を勘違いしてたみたいでした。 swfファイルを二つ用意して、読み込まれるswfのほうにallowDomainを記述して もう片方の別ドメインのswfから、そのswfファイルを読み込むという形だったようです 早速試してみます。
973 :
963 :05/02/12 01:15:38 ID:UuJSYLYo
いろいろと試してloadMovieしても読み込めませんでした・・。 そろそろ報告のし過ぎな気がするので、書き込みを控えますが もし何かアドバイスがあれば指摘して頂けると幸いですm(__)m
AS技術交換スレでallowDomainの使用例あったよね
977 :
946 :05/02/12 14:26:25 ID:0bQFZU1i
>>949 >>961 >>968 >>970 ご指摘、アドバイスありがとうございましたm(_ _)m
メインのフレーム180に
_root.MC1.MC2.paku.play();
_root.MC1.MC2.paku.gotoAndPlay(2);
と、書いてみたらできました。(*´∀`)
978 :
946 :05/02/12 14:27:58 ID:0bQFZU1i
979 :
963 :05/02/12 14:29:55 ID:UuJSYLYo
情報を頂いて本当にありがとうございます 特に>974さんのリンク先は大変参考になりました しかし、どの方法を試してもうまくいかず、やはりFlash5ではいろいろと無理があるのかと思い始めました (もちろん解決策はあると思いますが) crossdomain.xmlを使っても、allowDomainを使っても 苦肉の策でcgiを使ってhtmlを書き出してflashを読み込んでも無理でした。 恐らく自分がどこかでミスをしてる可能性も十分あります。 今回は残念ではありますが、時間と気力が一時的に尽きてしまったので とりあえず一時断念してcgiとhtmlが一体型の鯖を探すことにします。 またいつか暇ができた時に必ずやリベンジします、情報を下さった片々本当にありがとうございましたm(__)m
質問です。 FLASH-MXでガンシューティングを作りたいのですが、 敵をボタン形式で配置し、敵をクリックしたらそのボタンをステージから消去、 すぐさま敵が倒れる動作のムービークリップに入れ替えて そのムービークリップを1回だけ再生して消去 という命令はどうすればよいでしょうか?
まず問題を切り分けるといいよ。
>>980 次すれよろしく
漏れだったら、敵をMCで作成。
フレーム1は立ち。でstop()させとく。
フレーム2以降は死亡の演出。
attachMovieClipでランダムな位置に敵出現。
死亡の演出終わったらremoveMovieClipで消す。
スレたてはあれだから俺がトライしてこようか?
986 :
980 :05/02/12 20:32:37 ID:PqpEL5pK
988 :
980 :
05/02/12 20:48:54 ID:PqpEL5pK >>987 いきなりやってしまった…orz
すまんです、追加してきます