08/09/10 10:54:42 qB/ZNCv0
489、495,497,です。
>>499
>>503
_btnSet["btn0"+i].buttonMode = true;では駄目でした。
配列アクセスを使用したときのプロパティとして当たらないということでしょうか。
TypeError: Error #1010: 条件は未定義であり、プロパティがありません。
となってしまいます。
何故でしょうか・・・・??もう一度整理すると、
_btnSetというインタンス名のMCの中に、
6つのボタンMC(btn00~btn05※インスタンス名です)が入っています。
それら6つをまとめて、forループですべてbuttonMode=trueにしたいのです。
そこで、
for(var i:uint=0; i < 6; i++){
var _btnName:String = ("btn0" + i) as String ;
_btnSet._btnName.buttonMode = true;
}
が駄目で、、、
for(var i:uint=0; i < 6; i++){
var _btnName:String = ("btn0" + i) as String ;
_btnSet["btn0"+i].buttonMode = true;
}
も駄目でした・・・。いずれも同様のエラー、「条件は未定義であり、プロパティがありません」お助けください
509:Now_loading...774KB
08/09/10 11:08:09 KqdSTiA8
>>508
とりあえずこうしたらダメでしたが延々続くだろw
AS3.0の本一冊読むか、ヘルプ一通り見るかしてから来い
オブジェクト指向なAS3.0は付け焼き刃じゃ何も出来ないよ
510:Now_loading...774KB
08/09/10 11:15:06 6r2RrxdQ
AS3.0なの?
_btnSet.btn00.buttonMode = true;
だったら意図したように動くの?
511:Now_loading...774KB
08/09/10 11:47:46 qB/ZNCv0
>>509
すみません、いけました!
指摘の内容、仰るとおりです。本は読んでいますが、理解がまだ追いついていません。
>>510
勘違いでした。エラーは次の行で起きていたようで、
ここのループはばっちり配列アクセスで設定できました。
大変失礼しました。ありがとうございます。
512:Now_loading...774KB
08/09/10 14:29:08 raTDs9XY
AS3.0にて外部から読み込んだテキストを使ってリンクを貼りたいのですが、どうしたらいいでしょうか?
513:Now_loading...774KB
08/09/10 14:37:16 raTDs9XY
補足
読み込むテキストは下記のようにテキストファイルにひとつにまとめるようにして。。。
date.txt
url0=URLリンク(www.google.co.jp)
514:Now_loading...774KB
08/09/10 17:19:27 lqrF0YFV
>>513
private function loadCompleteHandler(e:Event):void
{
var loader:URLLoader = URLLoader(e.target);
var vars:URLVariables = new URLVariables(loader.data);
var tf:TextField = new TextField();
tf.htmlText = "<a href=\"" + vars.url0 + "\" target=\"_blank\">link</a>";
this.addChild(tf);
}
515:Now_loading...774KB
08/09/10 17:47:03 raTDs9XY
>>514
ありがとうございます。
すみません補足不足でした。
画像にリンクを貼りたいです。
申し訳ございません。
516:Now_loading...774KB
08/09/10 18:42:44 f39TfBvC
>>514を見てふと思い出したけど、波カッコ“{”を改行するコーディングスタイルを
よく見かけるようになったんだけど、何か理由があるのかな?
AS3のIDEであるFlashDevelopも途中のバージョンから改行するスタイルに変わってて、
違和感を感じたんだけど、元々あるものか、最近どこかで提唱されたとか、知ってる人
いたら教えてほすぃ
517:516
08/09/10 18:55:25 f39TfBvC
> AS3のIDEであるFlashDevelopも途中のバージョンから改行するスタイルに変わってて
これだとちょっと誤解を与えちゃうか。波カッコを改行するかしないかは設定で変えられるんだけど、
デフォルトの設定が改行しないスタイルから改行するスタイルに途中で変わった、ということです。
518:Now_loading...774KB
08/09/10 19:06:36 McByLcsR
Flexのコーディング規約がそうなっているから。
URLリンク(blog.dclick.com.br)
519:Now_loading...774KB
08/09/10 19:14:22 f39TfBvC
>>518
あーそうなんだ、情報ありがとう。もっと大きな流れか何かかと思ったけど、AS内だけの決まり事なんだね
520:Now_loading...774KB
08/09/10 19:20:50 DYCDIn9X
言語の開発元が提唱した規約は十分大きな流れだと思うが
521:Now_loading...774KB
08/09/10 19:29:35 Li8Y4T1n
スコープでブレースを使う多くの言語の中で、改行を推奨する言語なんてAS以外にあるっけ?
522:223.4.100.220.dy.bbexcite.jp
08/09/10 19:48:16 uNHkqmF5
最近の Microsoft の規約は大体そうでしょ
何故そこだけ Sun Java 的にならなかったのか謎だけど
523:Now_loading...774KB
08/09/10 19:51:14 f39TfBvC
>>520
あーそんな深い意味で言った訳じゃ無いんだけど、>>521が言うようなプログラミング業界(?)全体的な意味でw
この改行すんごい違和感あるんだけど、改行するメリットって見やすさかしら
524:Now_loading...774KB
08/09/10 20:03:15 AJTMLu9R
なんだろね?ブロックを把握しやすくするとかかね?
525:Now_loading...774KB
08/09/10 20:09:56 e6nacen+
慣れなんだろうけど、昔からこの書き方違和感あって読み辛いし馴染めなかったなあ
526:Now_loading...774KB
08/09/10 20:48:37 McByLcsR
改行を好む人と好まない人がいるよね。
for (var i = 0; i < 10; i++) {
// comments
trace(i);
}
こう書く人と
for (var i = 0; i < 10; i++) {
// comments
trace(i);
}
こう書く人がいるのね。規約に従うと万人がこうなって、
コミット時に精神衛生上よろしくなりました。
for (var i = 0; i < 10; i++)
{
// comments
trace(i);
}
527:Now_loading...774KB
08/09/10 21:02:16 f39TfBvC
>>526
おぉ~かなり納得できる理由だっ! ちょっと規約に従う気になれました。
528:Now_loading...774KB
08/09/10 22:23:28 lqrF0YFV
>>515
TextFieldの画像表示でハマッてました・・・
解決したけど、画像なら素直にnavigateToURLの方がいいかな?
private var url:String;
private function imageClickHandler(e:MouseEvent):void
{
if (url != null)
{
var request:URLRequest = new URLRequest(url);
navigateToURL(request, "_blank");
}
}
private function urlLoadCompleteHandler(e:Event):void
{
FlashConnect.trace("urlLoadComp");
var loader:URLLoader = URLLoader(e.target);
var vars:URLVariables = new URLVariables(loader.data);
url = vars.url0;
}
529:Now_loading...774KB
08/09/11 01:03:47 r5skrcaQ
AS3で、MovieClipやSpriteのオブジェクトの「中心点」を操作できるプロパティってありますか?
Livedocで調べたりしてみたんですがそれっぽいのが見つかりませんでした
今は以下のように中心を計算して操作してるんですが、書いてたらそれ用のプロパティがあるような気がしてきて・・・
var xx:Number = stage.stageWidth / 2;
var yy:Number = stage.stageHeight / 2;
var mm:MovieClip = new MovieClip();
mm.x = xx - (mm.width / 2);
mm.y = yy - (mm.height / 2);
addChild(mm);
530:Now_loading...774KB
08/09/11 06:29:16 13AYJM+Q
画像を外部から読み込んでいるフラッシュがあるのですが、
特定の日付以降になると、その日付のファイル名の画像ととりかえたいのです。
531:530
08/09/11 06:39:58 13AYJM+Q
途中送信してしまった…
たとえば、8月12日までは main.loadMovie(image/0711.png)
8月13日になったら main.loadMovie(image/0813.png)にきりかわるようにしたいのです。
月と日付を取得してそれを以下ので4桁にして、
today = ("0"+mm).substr(0, 2)+("0"+dd).substr(0, 2);
0123,0222,0309 …と、必要な分の日付を,で区切ったテキストファイルを読み込み,で分割、
todayよりその数字が大きくなったら、その部分を取り替えて新しい日付の画像を読み込ませたいのですが、if文がよくわからなくなってしまいました。
お手数おかけしますが、よろしければご教授ください。
532:Now_loading...774KB
08/09/11 07:21:27 tcBQ2exE
>>531
日付の比較はDate自体ですればいんじゃないかな
var targetDate:Date = new Date(2008,9-1,12);
var today:Date = new Date();
trace(targetDate < today);
533:Now_loading...774KB
08/09/11 07:24:23 tcBQ2exE
あ、こっちだなw
trace(targetDate.getTime( )<today.getTime());
534:Now_loading...774KB
08/09/11 15:26:55 eKrSoIzd
>>531
あなたの書いた文だとよくわからんところがあるが
>0123,0222,0309 …と、必要な分の日付を,で区切ったテキストファイルを読み込み,で分割、
この0123とか0222は、それぞれ1月23日、2月22日ってことかな?
で、今日が1月30日だとすると、0123.pngを表示したいってことだよね?
ま、そうだと仮定すると、こんな感じかなぁ
var dtArr:Array = [ "0123", "0222", "0309", ...];
var today:Date = new Date;
var result:String = "";
for each( var dtStr:String in dtArr ) {
var showDate:Date = DateField.stringToDate( dtStr, "MMDD" );
if ( showDate.getTime() < today.getTime() ) {
result = dtStr;
} else {
break;
}
}
trace ( "result:" + result );
535:Now_loading...774KB
08/09/11 15:46:35 eKrSoIzd
ちゃんと実行してみたら、まちがってた・・・・。
正しくは
var today:Date = new Date;
var result:String = "";
var fm:DateFormatter = new DateFormatter();
fm.formatString = "YY";
for each( var dtStr:String in dtArr ) {
var showDate:Date = DateField.stringToDate( fm.format(today)+dtStr, "YYMMDD" );
trace( fm.format( showDate ) + " " + fm.format( today ) );
if ( showDate.getTime() < today.getTime() ) {
result = dtStr;
} else {
break;
}
}
536:Now_loading...774KB
08/09/11 18:23:58 vCS/oIpm
初歩的な質問ですが、下のような記述はやってもいいのでしょうか
if(A && B || C)
{
~
}
これだと、条件が「AかつB、または、C」なのか「A、かつ、BまたはC」なのか定まらない気がします…。説明が下手ですいません。
ちなみにAS1.0です。
537:Now_loading...774KB
08/09/11 18:40:15 Bo2l1Y+f
>>536
定まらないってことはないです。
それだけの事をなぜ試してみないのでしょうか。
また、なんでそれをやりたいのか理解に苦しみます。
538:Now_loading...774KB
08/09/11 19:08:32 5JiCGQfN
>>536
普通のプログラミング言語なら,演算子には
優先順位と(同一順位での)実行順序が決められています。
必ず結果は一意に定まります。
539:Now_loading...774KB
08/09/11 19:09:05 ucNAtdoc
>>536
演算子には優先順位や結合性といった規則があります。
これは、異なる演算子が同時に表記されたときに、どのような順番で実行されるのかを決めるものです。
例えば 5 + 3 * 6 という式ではまず 3 * 6 を実行しますよね?
これは+よりも*の方が優先順位が高いからなのです。
この優先順位は全ての演算子に決められていて、&&と||の場合は&&の方が優先順位が高いことになっています。
(詳しくはリファレンスを読めば載ってる・・・・はず)
よって A && B || C と書いた場合は必ずA&&Bが先に評価され、
> AかつB、または、C
となります。
というわけでそのような記述はして構いません。
ただ、慣れないうちは括弧をつけた方がわかりやすいかもしれませんね。
Ex. if( (A && B) || C )
540:Now_loading...774KB
08/09/11 20:37:29 Xp0IiQNA
AS3の質問です。
ドキュメントクラスので宣言したオブジェクトに
メインのタイムラインからならアクセスできると思うんですけど
メインタイムラインにインスタンス名をつけて設置したムービークリップからは
どうやってアクセスするんですか?
そのムービークリップの1フレーム目にキーフレームをセットして
アクションにroot.hoge.func();ってやってもアクセスできないです。
rootってドキュメントクラスとは違うんですか?
541:Now_loading...774KB
08/09/11 22:10:18 DWF+Q7IN
AS3で質問です。
あるswfファイルから他所のswfファイルを呼び出すとき
test.swf?param=abc
みたいに、GETパラメータみたいにデータを渡す事って可能ですか?
それとも もっと良い方があるのでしょうか?
542:536
08/09/11 22:38:08 vCS/oIpm
>>537
確かに、試せば済む事でした。すいませんでした。
>>538 >>539
なるほど、優先順位という物があるんですね。分かりやすく説明していただきありがとうございます。
543:540
08/09/12 00:27:12 K/AgP6Fb
すみませんスルーしてください。
rootはドキュメントクラスでした。
544:Now_loading...774KB
08/09/12 01:30:03 Gp7WZnSK
>>541
可能です。
LoaderInfo.parameters
あたりでググってみてください。
545:Now_loading...774KB
08/09/12 06:22:50 44hRgaAX
環境)OS:WinXP-Pro,Mem=3GB,ソフト:Flash8-Pro(Player8,AS2.0)
Matrixクラスで質問です。
インスタンスを傾斜を加えながら回転させるため、Matrixクラスの変換機能を使う
ことにしました。
ここで参考にしたサイトは、URLリンク(www.flashiroha.com)
なのですが、Flash8-Proのヘルプと照らし合わせたところ不明な点が浮かんだの
で質問することにしました。
サイト中に var myMatrix:Matrix = new Matrix(a, b, 0, 1, 200, 200); という記述
があります。一方ヘルプでは、傾斜用のマトリックスの要素と、コンストラクタが
0 SKy 0
SKx 0 0
0 0 1
Matrix([a:Number], [b:Number], [c:Number], [d:Number], [tx:Number], [ty:Number])
になっており、a → 0, b → SKy, c → SKx, d → 0 (平行移動は省略)になる筈で
すが、サイトのMatrix(~)定義と異なっています(例:0になるべきaの値がサイトでは
「var a」で定義されている)。
※SKx,yはx,y軸方向にスライドする量です
自作のMCでもサイトのASで目的の動作は出来ましたが、何故この記述で可能なの
でしょうか?
546:Now_loading...774KB
08/09/12 08:26:21 3Moz3j0n
Flashデザインラボ -プロに学ぶ、一生枯れない永久不滅テクニック
URLリンク(www.sbcr.jp)
この本買ってただいまAS3を勉強中なんですが
AS2と3のサンプルが混在してます。AS3に作り直したいんですが
AS2→3変換するのに参考になるようなサイトありますか?
3をマスターしてからやればいいんだけど、ちょっと急いでまして・・・
547:Now_loading...774KB
08/09/12 11:36:01 A7U1lIF/
>>546
急いでるならプロに頼めばいんじゃね
548:Now_loading...774KB
08/09/12 14:37:55 tSCrohbh
それ捨ててAS3の本を買えばいい
549:Now_loading...774KB
08/09/12 15:00:28 QUgAVx+L
>>545
ASの話じゃなくて行列計算の話じゃん
数学板でも行くか数学の入門書でも買って読めばいいよ
550:Now_loading...774KB
08/09/12 17:29:24 eTsVjFLg
ボタンアクションで全く同じ処理で押すボタンだけを複数したいのですが良い方法が思いつきません。
例えば上キーか下キーを押したとき同じ処理をする場合
on(keyPress"<Up>") {
//長ーい記述
}
on(keyPress"<Down>") {
//上と同じ記述
}
上のやり方しか思いつきません。記述が長いのでできれば一つにまとめたいのですが……。分かる方がいましたらお願いします。SWF7です。
551:Now_loading...774KB
08/09/12 18:24:43 MhCs3KCg
>>550
一言で言うと
functionを使うべし
552:545
08/09/12 21:37:48 Pm1dpESb
>>549
すみません、紙上で演算しても、本(行列・ベクトルの本)
を読んでも分かりません。
解説をお願いします。
553:Now_loading...774KB
08/09/12 22:18:10 jBiyDvgh
>>545
いまちょっと確認できないけど、ヘルプはバージョンによって行列の記述が間違ってるから、
結果から正しい定義を見出したほうが良いよ。
554:Now_loading...774KB
08/09/12 22:31:46 QUgAVx+L
>>552
サイトに書いてあるのは回転と傾斜をするためのパラメータ
あなたが引っ張ってきたのは傾斜だけのパラメータ
違ってて当たり前なんだけど、紙上で演算しても気づかなかったの?
本当に計算できるなら気付いて当たり前だから、入門書読んだら?と勧めたんだけど
Matrixクラスの使い方ならともかく、その動作原理なんてスレ違いもいいとこだし
555:Now_loading...774KB
08/09/13 02:08:58 vGrTszC3
>>550
function
ルートのフレーム1にでも書いておく↓
function botandetukau() {
//長ーい記述
}
これで botandetukau() というアクションがセットされたことになるので、使いたい場合は
on(keyPress"<Up>") {
botandetukau();
}
とか
on(keyPress"<Down>") {
_root.botandetukau();
}
などで最初に定義したのと全く同じ処理をたった一行の命令でさせられます。
functionの使い方の詳細はググれ。
556:545
08/09/13 06:36:47 qsfxqZIr
>>553-554
さんきゅうです。
「回転と傾斜をするためのパラメータ 」
ああそうか、回転作用を見落としていた。
557:Now_loading...774KB
08/09/13 06:50:33 89RRUaTA
理系の大学入れば1年の最初で線形代数習うよ
558:Now_loading...774KB
08/09/13 11:29:05 8H2ps9gO
>>523
1行目をコメントアウトするだけでスコープになるからデバッグしやすい。
559:Now_loading...774KB
08/09/13 11:41:08 8H2ps9gO
>>556
行列の3*3それぞれのパラメータの意味分かってる?
とりあえず、aとbだけマウスの座標にあわせてグリグリ動かしてみな。
560:Now_loading...774KB
08/09/13 14:10:43 RB9oiSHO
すみません教えてください!
tmpArrayという配列に、10個のMovieClipを格納しました。
その中でvisible=trueのものを1つだけx=100にしたいのですが、
for each (var m:MovieClip in tmpArray) {
if (m.visible) {
m.x = 100;
break;
}
}
と書いたのですが、一件も処理されません。
ちなみにbreakを外すと、全部のMovieClipがx=0になります。
どこがおかしいのでしょうか!?
561:Now_loading...774KB
08/09/13 16:58:06 FYlNsvuR
>>551
>>555
遅レスになりましたが初心者級の質問に答えてもらいありがとうございました!そんな便利な関数?(関数を作る関数ってことですかね)があったんですね。おかげさまでできました!
562:Now_loading...774KB
08/09/13 18:42:24 Awdzv9Mo
>>560
どこにもxに0を代入する文がないのに
全部0になるの?
563:Now_loading...774KB
08/09/13 18:48:06 yuty1s/G
>>560
>ちなみにbreakを外すと、全部のMovieClipがx=0になります
デフォが0じゃないのに0になるってこと?
俺のエスパー能力は他の場所に問題があるってよ
564:Now_loading...774KB
08/09/13 19:24:07 RB9oiSHO
>>562
>>563
すいません、「全部x=100になる」の間違いです!!!!
565:Now_loading...774KB
08/09/13 19:43:33 yuty1s/G
>>560
書き方に問題はないっぽい。
tmpArrayの一つ目が処理されてることに>>560が気づいてないんじゃないかな。
breakの前にtrace入れるとかして確かめてみたら?
566:Now_loading...774KB
08/09/13 20:16:47 p6C70/Cx
URLリンク(livedocs.adobe.com)
↑の検索ボックスからの検索って正常に行えます?
567:Now_loading...774KB
08/09/14 01:17:49 SmmHzNmF
稀に検索できることがある
568:Now_loading...774KB
08/09/14 13:37:20 bkvVbWVJ
AS3のコンポーネント ComboBoxのリスト部分の文字をでかくしたい!
選択されているところは、
var tf:TextFormat = new TextFormat();
tf.size = 50;
InstanceName.labelField.textField.setStyle("textFormat", tf);
でいけるのに。。。
ComboBox内のListがReadOnlyだから?
どうにかならん????
569:Now_loading...774KB
08/09/14 16:17:58 pqCIPrSB
リスト項目全部に設定すりゃいんじゃね
570:Now_loading...774KB
08/09/14 21:00:12 kUfVg168
>>560
”一件も処理されません。 ”ってのは、m.x=100 にならないってこと?
どうやって確かめた?
571:Now_loading...774KB
08/09/15 02:41:16 5uJPuCG3
指定座標を中心に地図を拡大縮小するにはどうしたらいい?
地図をクリックする場所はユーザーが自由に決めれたらいいんだが。
matrixで画像を動かしたりはできるけど、、
もう一つまだ掴めてないっす。
572:Now_loading...774KB
08/09/15 02:54:24 28GbVigF
>>571
予め元の地図の下にに(深度を下に)もう一枚おく。
→ 下の地図はマウス座標に追従するようにして、クリックしたら上下が入れ替わる。
→ このとき下の画像の拡大縮小もする。
ではどう?
573:Now_loading...774KB
08/09/15 02:56:35 UyWqr5ne
入れ子MCの消去で質問です。
ソフトはFlash8-ProのAS2.0で、OSはWinXP-Proです。
親MC(mcA)の入れ子MCとしてmc1, mc2, ab1, ab2・・・ があったとき、これらを
一括して消去する方法はありますでしょうか?
for文で指定すれば良いのですが、状況により入れ子MCが細かく変わるので、
インスタンス名に関わらずclear()の様に消したく思っています。
574:Now_loading...774KB
08/09/15 03:29:49 N6tdtdpv
>>573
・親MCを消す
・for in で消す
575:Now_loading...774KB
08/09/15 03:34:25 5uJPuCG3
571っす
>>572
マウスに追従してきてたら、指定の箇所をクリックして、
拡大にはなんないよ。
中心座標を毎回計算しないとダメだと思うので、
マトリックスを使わないとダメみたいで、
その正しい使い方がいまひとつわからないです
576:Now_loading...774KB
08/09/15 04:25:56 yAUknH1/
AS2のswfからAS3のswfをloadMovieした場合、
子のAS3swfから親のAS2swfの関数を呼ぶのは
どうしたらよい?displayObject.rootとかやってみたけど
だめなんだ。
577:573
08/09/15 04:39:54 UyWqr5ne
>>574
あんがと。
578:Now_loading...774KB
08/09/15 04:55:39 DFR6R1mV
>>576
AS2とAS3は互いにアクセスできなかったような気がするけど
579:Now_loading...774KB
08/09/15 07:45:53 2QoVj6ou
>>532-535
ありがとうございます!
説明わかりづらくて申し訳ない。
580:Now_loading...774KB
08/09/15 12:50:10 eOmUEHkg
test
581:Now_loading...774KB
08/09/15 15:41:00 cwMsq1Cf
flash8、AS2に関する質問です。
フレームでmenuとmainに分けたサイトのmenu部分にflashを置いて、flash内のボタンを押すと
main部分が切り替わるようなものが作りたいのですが、
getURL("top.html", "main");
のように自サイト内のページを開くときは問題ないんですが
getURL("URLリンク(blog.xxxx.com)<)", "_blank");で外部ウィンドウで表示させれば問題なく読み込まれました。
allowscriptaccess="always"とかも関係ないっぽいですし、解決策が分からないです。
ご指導お願いします。
582:Now_loading...774KB
08/09/15 18:48:30 nQYCYh1u
わざわざフルパスにする必要ないからいいんじゃないの?
583:Now_loading...774KB
08/09/15 20:47:33 mbaHHWXi
As2.0 WIN XPです。
マウスが近づくとMCが拡大するというスクリプトをMCに書いて
実行させています。
これをrootのタイムラインにfunctionとして定義して、
MCにはfunctin();にて実行させる場合、
rootにはどのように書けばいいのでしょうか?
多分、xm、ymあたりの変数あたりに工夫をしなければならない
と思うのですが、迷路に入り込んでいます。
よろしくお願いいたします。
//
onClipEvent (enterFrame) {
xm = _xmouse;
ym = _ymouse;
span = Math.sqrt(xm*xm+ym*ym);
if (span>100) {
mcScale = 80;
} else {
mcScale = 80+(span-100)*-20/100;
}
this._alpha = this._xscale=this._yscale=mcScale;
}
584:Now_loading...774KB
08/09/16 00:11:38 GSu0om6T
>>583
//onEnterFrame
onClipEvent (enterFrame) {
_root.HOGE(this)
}
//_root
function HOGE(mc:MovieClip) {
xm = mc._xmouse;
ym = mc._ymouse;
span = Math.sqrt(xm*xm+ym*ym);
if (span>100) {
mcScale = 80;
} else {
mcScale = 80+(span-100)*-20/100;
}
mc._alpha = mc._xscale=mc._yscale=mcScale;
}
585:Now_loading...774KB
08/09/16 00:39:42 6xqxL9rV
>>582
サイトの構造的に、どうしても新規ウインドウを開かずに表示したい
586:Now_loading...774KB
08/09/16 02:27:25 K06s6cYa
AS3でSpriteやMovieClipオブジェクトの基準点を指定(変更)する方法ってありますか?
FlashCS3でシンボル変換時に出るウィンドウの9つの点で指定出来るやつです
587:Now_loading...774KB
08/09/16 10:59:51 Wsjd8HP6
>>584
お陰様で無事実装できました。
ありがとうございました m(_)m
588:Now_loading...774KB
08/09/16 19:41:29 bK4IUF1/
>>581
問題の絞込みはどこまでやってる?
ちょこっと試して見たけど問題ないみたいだった。
ASの問題じゃないだろ?
その他の環境によるもんじゃないのかな?
つか>>582は解決策暗示してんじゃないの?
>フルパスにする
まぁ、パクリサイトだったらいじれないから無理だろうけど、
589:Now_loading...774KB
08/09/16 20:39:18 s2/Veykc
環境)OS:WinXP-Pro,Mem=3GB,ソフト:Flash8-Pro(Player8,AS2.0)
入れ子MC内のテキストフィールドのハイパーリンクで質問です。
URLが指定されたテキストをクリックすると当該HPにジャンプするようなムービーを作るため、
あらかじめ空のテキストフィールドを含んだMCをfor文とattachMovie()で10個生成しました。
確認のため、TextFormat()で太字になるように設定したところ、テキストフィールドの文字列
は狙い通りに10個全て太字になりましたが、生成されたテキストフィールドにマウスポインタを
重ねてもリンク動作をしません(下はASの抜粋です)。
fmt_name.url = "URLリンク(www.yahoo.co.jp)"; //URL設定
fmt_name.html = true;
fmt_name.bold= true;
//
this["textM"+id].txt = id; //idは0~9で、縦に0~9が表示
this["textM"+id].txt_ins.setTextFormat(fmt_name); //太字にはできる
どうしたら良いでしょうか?
590:Now_loading...774KB
08/09/16 21:04:53 ujAwUn32
Flash8です。
loadMovieで外部のフラッシュを
完全に読み込んでから次のフレームに進みたいです。
完全に読み込んでから次のフレームに進むスクリプトを
教えてください。
591:Now_loading...774KB
08/09/16 22:15:54 SavpeRG8
>581
自分が言ってるように、
フレームの場合のCSSの定義をもう一度確認した方がいいんじゃないかな。
スタイルシートは外部ファイルだよね?
592:Now_loading...774KB
08/09/16 23:31:56 N0mY7K2a
なんだかクソスレ化してきたなw
593:Now_loading...774KB
08/09/17 00:43:50 JKJE719G
今までどんだけ良スレだったんだよw
594:589
08/09/17 00:49:09 MlH37Gk0
すいません。目標とは若干違いますが、TextFormat()をMCの
フレームアクションとして指定し、getURL()で表示出来るように
なりました。
つまり、MCで
this.onPress = function() {
フォーマット指定
getURL("http://~");
}
という感じです。
これでクリックすると目標のHPが表示され、数字の太さや色も
指定できました。
595:Now_loading...774KB
08/09/17 04:39:56 FCyk1IHm
WinXP-ProでFlash8を使用。
指定したディレクトリ(パス)にあるファイル名の一覧を得るにはどうしたら良いでしょうか?
よくソフトなどで、フォルダを階層毎に開いて、目的のフォルダの中身を表示する感じです。
出来ればAS2.0以下で願います。
先ずは、trace()表示をしたく思います。
596:Now_loading...774KB
08/09/17 10:02:09 tnMIb4Rw
>>595
import flash.net.FileReferenceList;
import flash.net.FileReference;
var listener:Object = new Object();
listener.onSelect = function(fileRefList:FileReferenceList) {
trace("onSelect");
var list:Array = fileRefList.fileList;
var item:FileReference;
for (var i:Number = 0; i<list.length; i++) {
item = list[i];
trace("name: "+item.name);
}
};
var fileRef:FileReferenceList = new FileReferenceList();
fileRef.addListener(listener);
fileRef.browse();
597:Now_loading...774KB
08/09/17 12:17:51 MRmnZX1b
>>592
クソが言うなら間違いないでしょww
598:Now_loading...774KB
08/09/17 13:57:51 p+3YDTsR
質問です
ボタンで外部swfを空mcに読み込み、表示されるコンテンツを切り替えたいのですが
初期でロードするムービークリップにリンケージで識別子を設定して読み込んでいる
モノがあり、ボタンで他のに切り替えても、残ってしまいます。
完全に他のswfに切り替えたいのですが、どなたかよろしくお願いします。
599:Now_loading...774KB
08/09/17 13:58:26 MTrr1q0f
mcBoxを、シフトキーを押しながらクリックした場合は
onShiftClickというファンクションを呼び出したいんだけど、
それはどのようにaddEventLisntenerしたらいい?
mcBox.addEventListener(ここがわからない);
600:Now_loading...774KB
08/09/17 14:54:16 a0YqYiNg
>>599
試してないけど、多分こう。
mcBox.addEventListener( MouseEvent.MOUSE_CLICK, onClick );
public function onClick( e:MouseEvent ):void{
if( e.shiftKey == true ) trace( "shiftキーを押しながらクリックされました。" );
}
601:Now_loading...774KB
08/09/17 14:58:16 QPxJsoy0
>>596
レス有難うございます。
早速、試してみます。
602:595
08/09/17 17:43:56 QPxJsoy0
(ファイル名一覧の取得)
>>596さんの方法を元に、browse()のヘルプを参照し、JPGのみを選択するように
fileRef.browse(); → fileRef.browse([{description:"Images", extension:"*.jpg"}]);
と加工しました。
しかし出来れば、任意のパスを指定して、そこにある全てのJPG名を自動的に取得
したく思っています。一応、考えられる箇所を細工しましたが駄目でした。
どうすれば良いでしょうか? 再度アドバイス願います。
603:Now_loading...774KB
08/09/17 18:00:10 MNJurFNW
そんなんできたらローカル環境のファイルリストを勝手にどっかに送られんだろ
ユーザーが手で選択するしかできないようになってんだよ
604:Now_loading...774KB
08/09/17 19:23:22 MTrr1q0f
>>600
ありがとうございます。
バッチリできました~!!
605:595&602
08/09/17 23:41:44 xbqfJnCv
>>603
有難うございます。
確かにそうですね。
606:Now_loading...774KB
08/09/18 03:14:55 VObT4N/z
煮詰まってしまったので質問させて下さい。
ボタンなんですが、上レイヤーのボタンを押すと下レイヤーの
ボタン(…といっても、わけあってhitTestで作ってます、しかも大量)まで反応します。
#タイムラインを使えばいいんですが、再ロードさせたくないので、単に無効になってくれるのが理想です。
一般的なenabledや空ボタン程度だとダメっぽいのです。
何とか簡単に下レイヤーのhitTestを無効化出来ないでしょうか。
607:Now_loading...774KB
08/09/18 05:19:51 MnhKerfn
>>606
要は、100個位あるMC型のボタンの1個を押すと、その1個のみを
Onの状態にしたいということ?
attachMovie()でインスタンス生成(ボタンMC生成)すれば、レイヤーを考慮せずに
好きな数だけ好きな位置に配置できるが・・・
(ただし、この場合には、各深度に注意)
タイムラインも、gotoAndStop()で制御すれば、各ボタン単位で有効/無効が設定
できるよ。これじゃ駄目?
608:606
08/09/18 09:46:19 av1fhiPK
>>607
いえ、その方法が使えません…
具体的には塗り絵Flashで、100個くらいあるシンボルにhitTestで色付けする方法を採っています。
で、その上に「○○しますか?はい いいえ」的なダイアログを出したいんですが、下の
シンボルが反応してしまうので困っている次第ですw
609:Now_loading...774KB
08/09/18 10:15:01 O4g/dmhW
どう作ってるのか知らないけど、
それならダイアログだしたらhitTestの処理なくせばいいんじゃない?
610:Now_loading...774KB
08/09/18 13:54:46 kq5/cFrH
ドキュメントクラスの中で
public宣言して作成した関数hoge()を、
ムービー内の一つのmcBtnがクリックされたときに呼び出したいけど
うまくいかないです。
普通に
mcBtn.addEventListener(MouseEvent.CLICK, hoge);
と書くだけじゃ駄目ですか?
611:606
08/09/18 15:53:14 Rh63+pHt
>>609
有り難うございます。
結局for++iで100個のMC全部指定するか各MCにひたすらhitTestオフ条件を書き込む
ベタな方法でしか回避できないんですかね…
612:Now_loading...774KB
08/09/18 17:33:52 gWGFd90t
>>610
引数の型をMouseEventにした?
613:Now_loading...774KB
08/09/18 17:36:25 1tHlJm9w
>608
シンボルクリックしたら全体を覆うMCを表示させる
614:Now_loading...774KB
08/09/18 17:57:41 kq5/cFrH
>>612
610です。
すみません、省略し過ぎました。
もう少し詳しく書きます。
ドキュメントクラスmain.as内で、
public function hoge():void{
trace("きてます");
}
としておいて、
ムービークリップの、mcBtnのフレームアクション上で、
mcBtn.addEventListener(MouseEvent.CLICK, onJump);
function onJump(e:MouseEvent):void{
hoge();
}
としています。これを実行すると、
「1180:未定義である可能性が高いメソッドhogeの呼び出しです」
となってしまいます。root.hoge()でも駄目でした。
何が駄目なんでしょう?
※ドキュメントクラス内からの命令でhoge()は普通に呼び出せます。
615:Now_loading...774KB
08/09/18 18:13:19 gWGFd90t
>>614
MovieClip(root).hoge();
616:Now_loading...774KB
08/09/18 18:27:53 O4g/dmhW
>>611
AS2だけど、こんな感じでフラグたてればいいだけじゃない?
URLリンク(www.uploda.org)
Pass : swf
617:Now_loading...774KB
08/09/18 18:38:50 qqfvG/t6
教えてください
タイムラインのMcPageの1フレーム目にTOPページ、
2フレーム目に2ページと置いて、各ページの中に
mc001、その中に入れ子にしてBtn001というボタンが
いくつかあり、ボタンをロールオーバーするとswapDepthsにて
最上層に出てくるような感じにしています。
(ロールオーバすると吹き出しが出るようになっていて、重なり防止のため)
rootには
var depth:Number = 0;
と書き
外部Asには
Mcpage.mc001.Btn001.onRollOver = function() {
this._parent.swapDepths(_root.depth++);
と書いて、TOPページ内ではSwapDepthsが効いているのですが
2ページ目になるとSwapされていません。
ご教授よろしくお願いいたします。
フラッシュ8使用です
618:Now_loading...774KB
08/09/18 21:44:49 kq5/cFrH
>>615
610です。
ありがとうございます。
無事できました!!思いつきませんでした・・・!
感謝いたします。
619:Now_loading...774KB
08/09/19 17:44:00 fb6qmjPM
AS3で、TextFieldの文字の色を赤→緑→青と変えたいのですが
上手くいきません。以下コードです。
var f = new TextFormat("Arial", 12, 0xFFFFFF, false, false, false);
var t = new TextField();
t.defaultTextFormat = f;
addChild(t);
Tweener.addTween(f, {color:0xff0000, time:0, delay:0.0});
Tweener.addTween(f, {color:0x00ff00, time:0, delay:1.0});
Tweener.addTween(f, {color:0x0000ff, time:0, delay:2.0});
...
なんとなく書き方自体ダサい気がするんですが何か方法はないでしょうか。
620:619
08/09/19 18:35:13 fb6qmjPM
自己レスです、MovieClipでフレームアクションさせたらうまくできました。
お騒がせしました。
621:Now_loading...774KB
08/09/19 19:56:23 a7Md/rG7
突然ながら質問が。
AS2.0の_url(絶対パスをとるやつ)から最後のファイル名を除いたフォルダパスだけとるにはどうしたらいいんですか?
できるだけRegExpとかは使いたくないです。
622:sage
08/09/19 23:32:49 O0Pn9FxL
>>621
trace( str.lastIndexOf( "/" ) );出力10
trace( str.substr( 0, 10 ) );
623:Now_loading...774KB
08/09/19 23:57:13 Q1m+63Rt
>>622
最後のファイル名の長さを調べてそれ以外を抜き出すのですね。
回答ありがとうございます。
624:Now_loading...774KB
08/09/19 23:58:27 Q1m+63Rt
最後の/の位置ですね。
625:Now_loading...774KB
08/09/20 10:02:27 3vGib9u4
>>617
全ての深度をしっかり紙に書いて把握してみれ
いい加減に作るとわけわかんなくなるよ
626:Now_loading...774KB
08/09/20 11:33:40 4Os7R83x
現在パー速クリエイタースレで人員募集中です。
現行スレ&テンプレ
URLリンク(ex14.vip2ch.com)
・html、CSS、SNSを作れる言語が書ける人(一番大変な部分です。数人必要かも。)
・Flashができる人(お絵かき、通信等)
・aiやpsdをいじれる人
・宣伝活動に長けている人
・ちょっとしたスキルがある方(動画作成等)
他にもどしどし募集中。
勉強中の方からプロの方まで、気軽にお願いします。
627:Now_loading...774KB
08/09/20 22:22:26 TTTyQOrz
Flashのゲームが作りたくて、本を読んで勉強しています
ある本のサンプルにジグソーパズルの作り方が載っていて
その本ではjpegをライブラリに入れて、ジグソーパズル全体の大きさの四角
を「塗りのカラー」をビットマップとしてjpeg画像を塗り込み、それを線で切って
ピースとしています。
この方式は理解出来たのですが、Jpeg画像の枚数を増やすとSWF自体が
大きくなってしまうので、画像を外部から読み込めないか考えています。
外部Jpegの読み込みに関しては理解していますので、どなたかヒントを
よろしくお願いします
628:Now_loading...774KB
08/09/20 23:01:56 7XsEm7lK
>>627
バージョンは?
何がわからないの?
629:Now_loading...774KB
08/09/21 00:39:54 O2iVbcSU
ローカルの画像を取り込んで、それを変形させるものを作りたいのですが、
ローカルの画像を読み込ませる方法についてヒントをください。
おおざっぱな流れとして、
1.ボタンとかでダイアログを開いて、画像を選択。
2.読み込み開始
3.BitmapDataとかに入れる
を考えているのですがどのように出来るでしょうか?
とりあえず、埋め込みで画像を変形できるところはできているので、
とにかくBitmapDataに入れられればこっちのものと考えているのですが…。
開発はFlashDevelopで、AS3書いています。
630:Now_loading...774KB
08/09/21 00:44:59 NRPdhyww
それはプレーヤー10から実装される機能だから無理
URLリンク(weblogs.macromedia.com)
個人でテストしてみる分にゃ問題ないんじゃね?
普通は画像DBサーバー用意してそこにアップロードしてもらったのをムービーに読み込む
631:Now_loading...774KB
08/09/21 00:55:11 O2iVbcSU
なるほど…。9までは一旦サーバ側に保存して、そこから読み出すのが定石なんですね。
あくまで趣味程度なんで fileReference に手を出してもいいかもしれません。
ありがとうございます。
632:Now_loading...774KB
08/09/21 08:06:50 Op68wWqx
基本的な質問になるかもしれないですがどなたか教えていただければ。。。
シーン1の1フレーム目にAというムービークリップがあり
Aの中にplayというフレーム名を設定しているとします、
同じくシーン1の2フレーム目にBというムービークリップ
があり(この時同じ2フレームにAはありません。)、
Bの中にあるボタンをon(release)でAのplayというフレーム
には飛ばせないのでしょうか?
同じフレーム内になければ_root.A.gotoAndPlay("play");
では動かないことまではわかったのですが、その場合の
動かし方がわかりませんでした。
ちなみに、playから動かしたいので、シーン1のフレーム1
に飛ばす方法は取れない状態です。
FlashCS3のAS2で記述しています。
633:Now_loading...774KB
08/09/21 09:33:51 ExkPAyGw
・1フレームにA(タイムラインを持ちフレーム名"play"がある)、2フレームにB
・Bを押して1フレに戻ると、Aが"play"へ飛んでいる
ってことに置き換えていいなら、フラグを用意するといい
//1フレームアクション
this.stop();
this.A.stop();
if (flg == undefined) {//flgが定義されていなければ初再生
flg = 0;
}
this.A.onRelease = function() {
this._parent.gotoAndStop(2);
};
if (flg) {
this.A.gotoAndStop("play");
} else {
this.A.gotoAndStop(1);
}
//2フレームアクション
this.B.onRelease = function() {
flg = 1;
this._parent.gotoAndStop(1);
};
634:Now_loading...774KB
08/09/21 10:01:27 Op68wWqx
>>633
632です、
ありがとうございます!
早速設置してみます!
635:Now_loading...774KB
08/09/21 12:29:52 w4Dwe9YB
最近「FLASH CS3&AS3.0」を勉強しはじめた初心者です。
「タイトル画面」→「ゲーム画面」→「ゲームオーバー画面」→「タイトル画面」・・・
という流れの、簡単なシューティングゲーム作りを通してAS3.0を覚えようとしています。
スクリプトは全てasファイルに書きたいと思っているのですが、「addFrameScript」を使うのが一般的なのか、
「addFrameScript」を使わないで書くのが一般的なのか、いまいちよくわかりません。
「addFrameScript」を使ったほうが簡単のような気もするのですが・・。
どちらが一般的なのでしょうか?
ちなみに、手元にあるAS3.0の本には載っていませんでした。。
以上、よろしくお願いします。
636:Now_loading...774KB
08/09/21 12:35:58 eAUhmQ4X
>>635
ASオンリーでいくなら使わないのが一般的
addFrameScriptはリファレンスに載ってない隠しAPIだから
これを使うと流れがわかりにくくなってしょうがない
637:Now_loading...774KB
08/09/21 14:26:07 w4Dwe9YB
>>636
あ、かえってわかりにくくなるんですね。
ではaddFrameScriptを使わずに作ってみます。
ありがとうございました!
638:Now_loading...774KB
08/09/21 17:11:44 P37WDfX1
質問です。
スペースで区切られた文字列を分解する方法を教えてください
"abc def ghi" -> ["abc","def","ghi"]
639:Now_loading...774KB
08/09/21 17:14:48 P37WDfX1
自己解決しました。
split関数を使えば良いですね
640:Now_loading...774KB
08/09/21 20:43:59 tEegqrXh
教えてください!
A_mcのフレームに
onClipEvent (load) {
var imgFlder:String = "mein/sub/img/BtnImage";
//
loadMovie(imgFlder+"1.jpg", this.sum_01_mc.board);
loadMovie(imgFlder+"2.jpg", this.sum_02_mc.board);
loadMovie(imgFlder+"3.jpg", this.sum_03_mc.board);
と書いて外部から画像を読み込ませています。
これを外部テキスト、もしくは外部XMLに書いて読み込ませ、
実行させる場合にはどのようにしたらよいのでしょうか???
今日、朝からやってて疲れました・・・・
641:Now_loading...774KB
08/09/21 21:30:57 f4CJrqyl
>>640
LoadVarsクラスでテキスト内容を読み込む
642:Now_loading...774KB
08/09/21 21:34:55 P37WDfX1
actionscriptの質問なのですが、ブラウザでflashを実行したとき、
そのswfファイルが置かれていたサーバのIPを取得するにはどうすればいいですか?
643:Now_loading...774KB
08/09/21 21:46:07 /2CLYRzH
>>642マルチ
644:Now_loading...774KB
08/09/21 21:49:36 P37WDfX1
>>643
質問は放置する癖にそういうことだけは素早いですね。
645:Now_loading...774KB
08/09/21 22:02:29 /2CLYRzH
>>644
テンプレ読んでな
掲示板のルール理解してな
ルール理解する気がないならromってるかどっか行ってな
646:Now_loading...774KB
08/09/22 01:04:46 MeHJvrfG
>>644
逆切れw
647:Now_loading...774KB
08/09/22 12:40:57 BkvG6UuJ
var my_lv: LoadVars = new LoadVars();
my_lv.onLoad = function(success: Boolean) {
if (success) {
trace(this.toString());
} else {
trace("Error loading/parsing LoadVars.");
}
};
my_lv.load("http: //www.helpexamples.com/flash/passvars.php");
648:Now_loading...774KB
08/09/22 15:17:08 Em2KzTUV
flash上で書き込んだデータを同じflashに保存するには(ニコ動みたいな感じ)
どうすればいいかわかる人、教えてくださいませんか?
649:Now_loading...774KB
08/09/22 15:29:56 dTXx/bN6
>>648
> flash上で書き込んだデータを同じflashに保存する
こういう事はできません。
データを保存するためには別途サーバーサイドのプログラムを用意して、それにデータを渡すしかありません。
ニコ動のコメントは外部のデータベースにアクセスしてます。
ただし、保存場所がローカルで良ければSharedObjectで実現可能です。
(この場合保存したデータに他の人からはアクセスできません。)
650:Now_loading...774KB
08/09/22 17:13:31 8HHf2bZX
526 名前:Now_loading...774KB[sage] 投稿日:2008/09/22(月) 14:06:59 ID:Em2KzTUV
ニコニコ動画みたいに、動画とコメントを同期させて表示させるにはどうするんでしょうか?
だれかわかる人います?
651:Now_loading...774KB
08/09/22 19:36:36 dTXx/bN6
>>648
マルチポストって知ってます?
複数の場所で同じ質問をする事です。
これってインターネット上で共通のマナー違反なんです。次からやめましょうね。
652:Now_loading...774KB
08/09/22 19:44:44 lApgHlK/
すぐに知りたいことだからここに書き込むんです。
すぐに情報が引き出せないなら別のところに移ります。
マルチポストかどうか判定されるまでに情報が引き出せなければあきらめるだけです。
そして次の新しい質問は別のIDでポストすればいいですからね。
653:Now_loading...774KB
08/09/22 19:45:27 lApgHlK/
マナー違反?知ったこっちゃない。
すぐにレスポンスが返せないやつが悪いんだよw
654:Now_loading...774KB
08/09/22 20:01:13 96vD5jSN
まぁ結果を急ぐあまり解答が貰えなくなる君が一番損をするからどうでもいいんだけど
655:Now_loading...774KB
08/09/22 20:03:27 WVP9KMKi
>>653
他力本願の人間が言う言葉ではないなw
頭悪過ぎてまともな質問文も書けないみたいだから
どこいったって駄目だと思うよ
自分で解決しなさい。
656:Now_loading...774KB
08/09/22 20:24:17 lApgHlK/
俺がここに書くことは20分以内に解決しろ。
20分あれば大抵解決するからな。
657:Now_loading...774KB
08/09/22 20:27:05 P8JVubbf
>>656
自分で解決しろ。
658:Now_loading...774KB
08/09/22 20:28:44 lApgHlK/
お前らに解決させて、その時間で俺は別の問題を解決する。
いわば並列処理
659:Now_loading...774KB
08/09/22 20:55:26 8Z1q56Lc
NGID登録:ID:lApgHlK/
これですべて解決
660:Now_loading...774KB
08/09/22 20:58:37 lApgHlK/
別のIDを使って、もっとおしとやかに質問するので無問題
661:Now_loading...774KB
08/09/22 21:20:17 FL13m+We
(´・ω・`)おっぱい
662:Now_loading...774KB
08/09/23 03:34:42 gHzMX3Uq
あれ?夏休みってもう終わったんじゃ・・・
663:Now_loading...774KB
08/09/23 05:50:57 0qFcPSYw
なんか無能な奴がまた湧いてるなw
単位落としたぐらいでやけになるなw
664:Now_loading...774KB
08/09/23 12:35:40 pJ+lVFAH
お決まりのセリフ 「何の役にも立たないクソスレだな」
665:Now_loading...774KB
08/09/23 17:35:35 2Q9R5tXZ
ここみると自信がつく
666:Now_loading...774KB
08/09/24 09:01:47 TCcpr8Vv
下を見るな上を見ろ
667:Now_loading...774KB
08/09/24 10:36:26 tv0R1bAh
665<>666
教えてください。
obj = _root.attachMovie("side_obj","str" + i,i,~
深度が10以上は、visibleプロパティを変更したいです。
668:Now_loading...774KB
08/09/24 10:58:58 HjFrBIgV
obj = _root.attachMovie("side_obj","str" + i,i,{visible:i < 10});
669:Now_loading...774KB
08/09/24 11:25:27 tv0R1bAh
>>668
,{visible:i < 10}
iが10より小さければvisible = true
という意味でしょうか?
670:Now_loading...774KB
08/09/24 13:02:52 E+4wGvaE
648です。マルチポストっていうんですね。マナー違反とは知らず、失礼いたしました。以後気をつけます。
また、ご回答ありがとうございました。また困ったときに助けていただければ幸いです。それでは失礼します。
671:Now_loading...774KB
08/09/24 22:13:54 Iv49WfgF
環境)OS:WinXP-Pro,Mem=3GB,ソフト:Flash8-Pro(Player8,AS2.0)
ピクセル単位の色の取得
白黒の10*10ピクセル程のBMPをMC化し(bmp_mc)、このピクセル単位の白黒の
位置をBitmapDataクラスを使って把握しようとしていますが、うまく出来ません。
目的の動作の前段階としてBMPサイズを取得しようと思っています。動作を書いた
bmpPixcelFunc() をボタンアクションで呼び出すことはできるのですが、肝心の高さ
と幅が undefined になります。
フレームアクションに書いたASは以下の通りです。
import flash.display.BitmapData; //BitmapDataクラスをインポート
var bmpData:BitmapData = new BitmapData(bmp_mc._width, bmp_mc._height, true); //新規ビットマップデータのインスタンス
//
function bmpPixcelFunc(bmd:BitmapData) { //ビットマップデータを解析
trace("bmpPixcelFunc"); // bmpPixcelFuncは表示される
trace("高さ= "+bmd.height);
trace("幅= "+bmd.width); // bmp_mc._heightなら、10などと出ますが・・・
//
var pixelColor:String = bmd.getPixel(0, 0).toString(16); //試しに位置(0, 0)の色を取得
}
ボタンの方は、on (release) で bmpPixcelFunc(bmd); です。
すいませんが、アドバイス願います。
672:Now_loading...774KB
08/09/25 01:23:48 IOgy4g0T
bmdって渡してるけど、それどこにもなくね?
673:Now_loading...774KB
08/09/25 10:14:33 HQvuZ209
>>671
ボタン押下時
bmpPixcelFunc(bmd);
↓
bmpPixcelFunc(bmpData);
では?
674:Now_loading...774KB
08/09/25 21:34:32 qvFstGVn
CS3のAC2で書いています。
attachMovieで増やしたmcをステージ上のmcに追わせ、
ヒットしたら、当たったmcが変化するというのをやりたいです。
_root.mca = "mc_a"+_root.adep;
this.attachMovie("mc_a",_root.mca,_root.adep);
_root.adep++;
こうやって増やしているのですが、hitTestで当たった先のmc名をどうするかで困っています。
相手は連番で無限に増えて行くので、どう指定したらいいのか解りません。
どなたか宜しく御願いします。
675:671
08/09/25 21:41:00 nS8BIz8Q
>>672-673
レス有難うございます。
bmpPixcelFunc(bmpData); を試しましたが、駄目でした。
あと、「bmdを渡す」とはどういう意味でしょうか?
676:Now_loading...774KB
08/09/25 21:53:24 iRc54cLX
>>674
逆に考える。
増加するMCのフレームアクションに、追跡するMCに当たったら変化を生じるようにする。
つまり、100匹のネズミを追う猫の場合、ネズミMCをダブルクリックして上のようなASを書く。
677:Now_loading...774KB
08/09/25 22:21:43 qvFstGVn
>>676
有り難う御座います!そうですね…気づきませんでした。なんという馬鹿…。
とりあえず試してみます!
678:Now_loading...774KB
08/09/26 15:28:26 THIGXRlX
as3です
Loaderオブジェクトで外部からサムネイル画像を100枚ぐらい読み込むとします。
そのために、forループ文で、
・Loaderオブジェクトを梱包するスプライト(Wrapper)
と、
・写真を読み込むLoaderオブジェクトそのもの
を作り、100枚の写真がずらりと横に並ぶまではうまくいきました。
※一つのスプライトの中に一つのLoaderオブジェクト(写真)が入っているということです
ですが、traceで、Loaderオブジェクトの横幅を調べると、
ゼロになっています。
さらにLoaderオブジェクトを梱包するスプライトの横幅も、
traceするとゼロになっています。
Loaderオブジェクトの横幅は読み込んだ写真の横幅に関係なく、ゼロになるんでしょうか?
スプライトのWrapperのwidthを仮に100pxとすると、
写真がすべて見えなくなってしまいました。
横幅はどうやって設定したらいいでしょうか。
679:Now_loading...774KB
08/09/26 16:36:50 F8YDLd+O
いや普通に読み込んでからwidthでいいだろ
Spriteでラップする意味もわからん
var l:Loader = addChild(new Loader()) as Loader
l.contentLoaderInfo.addEventListener(Event.COMPLETE,function(){trace(l.width)})
l.load(new URLRequest("hoge.jpg"))
680:Now_loading...774KB
08/09/26 23:04:59 eDty70e3
sendAndLoadのことで現在悩んでおります。お助け下さい。
name1というテキスト入力とresultというダイナミックテキストがあり、ボタンに次のようなスクリプトを書きました。
on (release) {
System.useCodepage = true;
var send_lv:LoadVars = new LoadVars();
var load_lv:LoadVars = new LoadVars();
send_lv.name1 = name1.text;
load_lv.onLoad = function(success) {
if(success==true){
result.text=this.name2;
}else{
result.text="通信失敗";
}
};
send_lv.sendAndLoad("PHP絶対パス", load_lv, "POST");
}
そして、PHPは次のようにしました。
<?php
print('name2='.$_POST['name1']);
?>
このswfを直接動かしても、HTMLの中に埋め込んでもうまく動作しますが、そのHTMLファイルをホームページにアップすると
「通信失敗」となってしまいます。
この原因がわかりません。どなたかお知恵をお貸し下さい。
681:Now_loading...774KB
08/09/27 00:43:44 EZpr8eQE
"PHP絶対パス"って何を指定してるの
682:680
08/09/27 00:50:32 FzKvB/W5
眠れないので、一応開いてみたら、レスがあったのでびっくりしました。
ありがとうございます。
PHP絶対パスとは、URLリンク(cgi.movie.geocities.jp)というような
PHPファイルのホームページ上の絶対パスです。
683:Now_loading...774KB
08/09/27 01:07:31 6SdSMo/P
>>682
crossdomain.xmlはあるの?
684:680
08/09/27 07:53:36 FzKvB/W5
>>683さん、「crossdomain.xml」というのは初めて聞きました。
私は、URLリンク(www.1art.jp)を参考に勉強しているのですが、FLASHからPHPにデータを送ったり、
データを保存したり、データを読み込んだりすることは問題なかったのですが、このsendAndLoadが
どうしてもうまくいかないのです。
crossdomain.xmlはおそらく無いと思いますが、今から調べてみたいと思います。
ありがとうございました。
685:Now_loading...774KB
08/09/27 08:00:27 Vaav7MB0
Airでキーロガーみたいなのって作れますか?
アプリケーションのウィンドウがアクティブじゃなくても
キー取得できるみたいなのです。
686:Now_loading...774KB
08/09/27 08:40:57 6u5xdhJN
できない。
一時期それでユーザー名とパスワード抜き取るクラックが流行って、
できないように修正された。
687:Now_loading...774KB
08/09/27 09:56:11 +pZF67nb
ランタイム共有用に書き出しの際に入力する URL って
どんな意味があるの?
読み込む側が必要なのは判るんだけど…
688:Now_loading...774KB
08/09/27 11:34:04 DkWrR+XD
Away3Dなどのライブラリを試そうと思って、サンプルを漁っていたのですが
ほとんどがflaファイルで提供されていました。
フリーでflaファイルを扱えるソフトはないのでしょうか?
開発にはflexSDKとエディタのみでちまちま作るつもりなので、サンプルの中味さえ見れればいいんですが
689:Now_loading...774KB
08/09/27 11:52:50 0ok+QN84
super()でスーパークラスのコンストラクタの引数をサブクラスのコンストラクタ引数で書き換える方法はやった事があるのですが
スーパークラス内のメゾットの引数をサブクラスから書き換えるという事はできるのでしょうか?
スーパークラス側で
protected function goMove(x:Number, y:Number, w:Number, h:Number):void {
このx,y,w,hをサブクラス側で指定するという事は可能なのでしょうか
actionscript3です、よろしくお願いします
690:680
08/09/27 12:27:21 rd6K8L3s
crossdomain.xmlを試してみましたが、どうもうまくいきません。
そもそも、swfとPHPは同じフォルダにアップされているので、crossdomain.xmlは要らないのでは?
>>682に書いたことには少し誤りがあって、PHPファイルの絶対パスはURLリンク(movie.geocities.jp)なのですが、
Yahooジオプラスでは、cgiをリクエストする際にURLリンク(cgi.movie.geocities.jp)とcgiを付ける必要があるのです。
こういう場合でも、crossdomain.xmlが必要なのでしょうか?
691:Now_loading...774KB
08/09/27 17:14:03 Kr6MFw+j
>>689
super.goMove(1,2,3,4);
692:Now_loading...774KB
08/09/27 21:31:24 s4wheZgr
>>690
ホスト名がぴったり一致しない限り必要だよ。
IPアドレスなんかが同じだったとしても。
693:689
08/09/27 23:09:13 dT4DedqN
>>691
super.メゾットで試した所値を渡す事ができました
ありがとうございました!
694:690
08/09/28 04:37:36 Y0qa1f5w
>>692さん、ありがとうございます。
もう一度やってみます。
695:Now_loading...774KB
08/09/28 10:05:04 2gqkkW7m
WinXP-ProでFlash8-Pro(AS2.0)を使っています。
ヘルプを参照し、Matrixクラスを使ってMCを歪ませたいのですが、うまく出来ません。
下のASでは、root上にあるmc1というMCを、ボタンで関数disorting()を呼び出すことに
よって、元の正方形の上辺を移動させて(スライドさせて)ひし形を作ることを目的に書
きました。(MCの基準点は左下の角です)
import flash.geom.Matrix;
//
Tx = this.mc1._x;
Tx = this.mc1._y; //位置はそのまま
//
function disorting() {
var skX = 1; //仮に1を入れています
var skY = 1;
//
var myMatrix:Matrix = new Matrix(0, skY, skX, 0, Tx, Ty);
//
_root.mc1.transform.matrix = myMatrix;
//
}
skXの値を色々変えましたが、MCが回転してしまいます。
どうしたら良いでしょうか?
696:Now_loading...774KB
08/09/29 10:52:37 aC09E/Gj
CS3 AC2.0を使っています。
先頭のMCを頭にして、後ろに小さいMCがしっぽのように付いてくるようにしたいです。
配列に記憶した先頭MCのx,y座標に移動してくるようにはできたのですが、
思っていたような動きになりませんでした。
こちらのFlashにある、マウスを追尾する生物のような動きにしたいです。
URLリンク(intihuatani.usc.edu)
どうすれば良いでしょうか、お願いします。
697:Now_loading...774KB
08/09/29 11:57:32 ejpryKDp
>>695
URLリンク(www.fumiononaka.com)
698:Now_loading...774KB
08/09/29 19:31:41 DstKV62m
SEFファイルからサーバにデータを送る方法を探してます。SWFで書き込んでファイルとしてサーバに飛ばしたいのですが、
(その逆も)わかる人いたら教えてください。
699:695
08/09/29 19:40:01 szGcbCaQ
>>697
Thx。出来ました(座標値変数の間違いを併せて修正)。
紹介のサイトの行列要素はFlash8のヘルプの並びと違っていますね。
(b⇔c)
そのせいか、歪の方向がXYで入れ替わっています。
700:Now_loading...774KB
08/09/30 00:04:02 JnRCOEdp
インポート文でワイルドカード使わずに個々にインポートする事が推奨される理由って、
厳格さ的な意味合いでですか?
import flash.events.*;
ってした方が楽ですし、FlashDevelopなんかではコード補完も効いて使いやすいんですが、
こういう指定(使わないものも読み込む)すると何かデメリットありますか?
701:Now_loading...774KB
08/09/30 04:12:12 +mrElHkH
AS3.0で
if文の条件に「MovieCripが特定のフレームになったとき」
というのを使いたいのですが、どういった記述になるのでしょうか?
702:Now_loading...774KB
08/09/30 05:38:14 T4EzoT/y
>>700
コンパイルするときにコンパイラがライブラリを検索する時間が短縮できる
あとは、ソースとして明示的にとかだけど、大量にある場合は*でもいんじゃね
>>701
一番簡単なのはそのフレームにAS書く
あとはEnterFrameイベントでcurrentFrameをチェックする
703:Now_loading...774KB
08/09/30 08:53:02 +mrElHkH
>>702
currentFrameがまさにそれでした。
ありがとう
704:Now_loading...774KB
08/09/30 12:52:52 5LAmHauj
FlexBuilder3.0, Flex3.1 AS3です。
FlexBuilderのヘルプから、リファレンスを見ると、
flash.ui.Keyboardの静的定数に、AとかBとかのキーコードの定数があるのですが、
FlexBuilder上でKeyboard.Aと記述すると、
「1119: 未定義である可能性が高いプロパティ A に静的型 Class の参照を使用してアクセスしています。」
というコンパイルエラーになってしまいます。
でも、Keyboard.DELETEという定数は、普通に使用可能です。
なぜ、この定数が使えないんでしょうか?
少し調べてみるとWeb上の記述だと、その定数はないのですが、
URLリンク(livedocs.adobe.com)
私のFlexBuilderのヘルプから見ると、その定数は存在します。
こっちにはありますね。
URLリンク(help.adobe.com)
どうすれば、この定数が使用できるのでしょうか?
試したコードはこんな感じです。
private function myKeyDown(eventObj:KeyboardEvent):void
{
if (eventObj.keyCode == Keyboard.A)
{
//
}
}
705:704
08/09/30 12:57:06 5LAmHauj
書いてから、読み返してみて気づきました。
ランタイムバージョン: AIR 1.0
と書いてあるから、AIRじゃないと使えないんですね。
Flashでも使えてもよい定数だと思うんですが、
仕様みたいなんであきらめます。
#リファレンスのランタイムバージョンも注意して読まなきゃいけなんだな。
706:Now_loading...774KB
08/09/30 13:27:51 FqpjVlmo
actionscript2です。ご教授お願いします。
インスタンスを複数生成してそれらのインスタンスを一まとめに
して大きさや座標を変更したいのですが、お願いします。
707:Now_loading...774KB
08/09/30 13:31:15 BXj7572w
>706
attachMovie()
インスタンス名._x
インスタンス名._y
インスタンス名._xscale
インスタンス名._yscale
708:Now_loading...774KB
08/09/30 13:56:16 FqpjVlmo
>>707
個々に設定するのではなく、別の方法はありますか?
709:Now_loading...774KB
08/09/30 14:15:48 YMCRFJr0
ひとつのMCに全部入れてMCのサイズ、座標変更
710:Now_loading...774KB
08/09/30 14:16:25 BXj7572w
>708
for()
while()
711:Now_loading...774KB
08/09/30 14:25:31 FqpjVlmo
>>709
スクリプトで実装させる方法を教えてください。
ひとつにしてマスクを設定しようと思っております。
712:Now_loading...774KB
08/09/30 15:16:42 YMCRFJr0
>>711
this.createEmptyMovieClip("MC", this.getNextHighestDepth());
for (i=0; i<10; i++) {
MC.attachMovie("instance", "instance"+i, MC.getNextHighestDepth(), {_x:Math.random()*100, _y:Math.random()*100});
}
MC._xscale = 50;
713:Now_loading...774KB
08/09/30 15:18:02 FqpjVlmo
>711ご意見を参考にいろいろ試すことによりうまく実装できました。
ありがとうございます。
714:Now_loading...774KB
08/09/30 15:20:02 FqpjVlmo
>>712
ありがとうございます。
まさに思い描いた感じです。
参考にしてみます。
715:Now_loading...774KB
08/09/30 16:30:03 BXj7572w
とことん無視されたわ
くるんじゃなかった
716:Now_loading...774KB
08/09/30 17:52:43 ChXMi9Da
flahs版はコピペして動く物しか受け付けない
礼儀知らずばかりだよ
717:Now_loading...774KB
08/09/30 17:57:01 JnRCOEdp
>>702 返事遅れました それほど違いは無さそうなんですね ありがとう
718:Now_loading...774KB
08/09/30 19:07:03 J/cIXyN9
コミュニケーションスキルがゼロの奴が何やっても何も動かんさw
プログラムと同じでルールってもんがあるわな
719:Now_loading...774KB
08/10/01 00:18:06 gA2ThXqQ
質問の本音は完成品クレクレ
720:687
08/10/01 07:18:28 rL4gLnc1
回答無しか…
721:706
08/10/01 09:39:01 MpIpYHyP
>>715
すいませんでした。
またよろしくお願いします。
722:Now_loading...774KB
08/10/01 13:53:20 t7kKbmo9
ActionScriptでTweenerを使って色を赤→白とトゥイーンさせたい場合、
0xff0000 を 0xffffff までTweenerで変化させると
その間にある赤以外の色も表示されてしまいます。
うまく他の色を表示させずに変化させることはできませんでしょうか?
723:Now_loading...774KB
08/10/01 14:42:08 wEJ1qrZw
>>722
背景に白いオブジェクト用意して
Tweener.addTween(myMovieClip, {_alpha:0});
で、出来る予感。
724:Now_loading...774KB
08/10/01 15:29:10 KPLLzcxS
>>688
flaのASはヌル文字を取れば(あるいはUTF-16として読めば)大体は読めますし
swfからASを抽出するツールもいくつか存在するようです。
が、Away3Dに関していえばここでソースが見られます。
URLリンク(away3d.com)
725:Now_loading...774KB
08/10/02 23:41:38 2uQUyDG+
質問です。
getChildren() や getChildAt(x) などで取得したオブジェクト(配列)が,
どんな種類のコンポーネントかを判別する手段はありますでしょうか?
ご教示願います。よろしくお願いします。
726:Now_loading...774KB
08/10/03 03:43:43 5RCjUr5y
AS3.0で、
画面全体を揺らすエフェクトが必要になり
画面上にある各mc名.y
の変化で、画面を揺らしているように見せているのですが
画面に出るmcが増えるたびにどんどん行が増えてしまいます。
もっと効率的な指定の方法などありませんでしょうか?
727:Now_loading...774KB
08/10/03 04:29:52 ycAKmgpt
>726
入れ物としてのmcをつくって全部中に入れる
このmcを揺らすだけで済む
728:Now_loading...774KB
08/10/03 08:11:37 7PfOZSpT
>>725
どういう目的か解らんがisとかasとかtypeof使えばいんじゃね
729:704
08/10/03 16:55:25 0HNTJGKW
Flash CS3でグラフィカルなコンポーネントを作って、Flexから使いたいと思っていますが、
やりたい事は、プロパティの変更によって見た目が変わるといったことです。
どのようにしてFlash CS3で作成したコンポーネントに、プロパティやメソッドを定義すべきか分かりません。
自分で確認できたのは、
・Flex Component Kit for Flash CS3を使うのは分かりました。
・Flash CS3で書いたMovieClipを、swc化して、Flexで貼り付けられたところは確認しました。
この段階では、操作できないただの絵です。
Flash CS3でメソッドやプロパティを用意してあげるべきだと思うのですが、
どこにクラス定義を書いたらよいのでしょうか?
730:Now_loading...774KB
08/10/04 00:41:09 1d+hAd5v
>>728
isを使ったら思い通りのことができました。
ありがとうございました!
731:Now_loading...774KB
08/10/04 14:08:03 9sn63Vep
FlashCS3&AS3での質問です。
メインタイムラインの1フレーム目にMCを設置したとします(インスタンス名:testmc)
そしてtestmcはaddEventListener(Event.ENTER_FRAME,hoge);
のようなイベントを実行していたとします。
そこで、メインタイムラインの100フレーム目とかでそのMC(testmc)を削除したとします。
(この場合メインタイムラインからtestmcがremoveChildされたという解釈でいいのかな?)
この場合removeEventListener(Event.ENTER_FRAME,hoge);を実行してないので
testmcが裏でそのイベントを永遠と処理し続けることになりますよね?
メインタイムラインからMCを削除したと同時にremoveEventListenerが呼ばれるようなプログラムを組みたいのですが
testmcがremoveChildされた瞬間に呼ばれるイベントとかは存在するのでしょうか?
今のところ、そのMCを消す直前にキーフレームを作ってremoveEventListenerを呼んで対策しています。
何かいい方法がございまいたら教えてもらえると有り難いです。
よろしくお願いします!
732:Now_loading...774KB
08/10/04 19:13:31 ZsmLtQ5t
removed
URLリンク(livedocs.adobe.com)
733:Now_loading...774KB
08/10/05 07:33:14 f1pVXO/p
>>731
removeChild(表示リストから外す)時に呼ばれるとかは無いと思う
nullする時点でリスナー消去やタイムラインstopなどの終了処理を自分で記述する
734:Now_loading...774KB
08/10/05 08:11:48 Sdwe38Mg
なにこの展開w
mc.addEventListener(Event.REMOVED,func);
function func(event:Event):void{trace("ステージ上から消去されました");}
removeChild(mc);
揃いも揃ってまあwいろんな所が不自由な奴ばっかだなw
735:Now_loading...774KB
08/10/05 08:16:25 f1pVXO/p
>>734
リスナー登録すりゃできるしw
736:Now_loading...774KB
08/10/05 08:52:36 2KEA/Arr
AS3のLoaderでswfをload後に、PROGRESSイベントでは全バイト読み込まれているのに、
INITやCOMPLETEにならない特定のswfがあるんですが、原因を追跡する方法はありますか?
IO_ERRORイベントや
try {
loader.load(target);
} catch (error:Error) {
}
にも引っかからないんですが
737:Now_loading...774KB
08/10/05 09:09:19 UbHgfeDX
>>727
今ある中ではそれが効率的ですね
遅くなりましたがありがとうございました
738:Now_loading...774KB
08/10/05 14:12:03 yjRMqgXh
質問です。
ホームページに動画データの入ったflashを載せたいのですが、flash自体は載るのに
動画が表示されません。
<!--flashを表示-->
<embed src="flash.swf"
width="550" height="400" bgcolor="#ffffff"
で記述したんですが・・・
動画データは同じファイルに入ってます。
困ってます・・・たすけてください。
あ、AS3を使ってます。
739:Now_loading...774KB
08/10/05 21:12:10 Es6KxZrQ
アダルトビデオか?
俺にも見せろ。
740:Now_loading...774KB
08/10/05 21:58:40 usVPpYR2
教えてください。
あるmcをクリックすると、そのたびに「vacant」「occupied」という2つが入れ替わるものを
作りたいと思っています。
最初は、swapDepthを使っていたのですが、attachMovieの方がいいのではないかと思い、
いろいろ試行錯誤しているところです。
mc = _root.attachMovie( "occ", "mc1", 1 ) ;
mc._x = 10 ; mc._y = 20 ;
mc1.onRelease = function() {
mc = _root.attachMovie( "vac", "mc2" , 1) ;
mc._x = 10 ; mc2._y = 20 ;}
このようなスクリプトにおいて、新しくロードされたvacに対するボタンアクションはできるのでしょうか?
最初は、透明のボタンを重ねておいて、その押された回数によって「vacant」「occupied」が入れ替わるようにしていたのですが、
このようなボタンが50個もあるので、なんとかまとめる必要があるのです。よろしくお願いします。
741:Now_loading...774KB
08/10/05 22:42:40 Y40PAbvO
>>738
ローカルでは再生されるの?
Flash自体読み込まれてないって事はないの?
>>740
mc2.onRelease = function(){ }
表示を切り替えたいだけなら_visibleでいいんじゃない?
742:Now_loading...774KB
08/10/05 22:51:52 h4p7romc
>>740
表示を切り替えさえできればいいのかな?
だったら、MCの_currentframeに応じてそのMCのなかのvacantフレームとoccupiedフレームを移動とかもありでは?
スクリプトも状態に応じて対応を変える関数をひとつつくっておいて
forかなんかですべてに割り当てるとか。
目的を明確にしたほうがより適切な方法が見つかるかもよ。
743:740
08/10/05 22:54:27 usVPpYR2
>>741さん、ありがとうございます。
mc2.onRelease = function(){ }
は、入れ子にするんでしょうか? 入れ子にしても1回しか反応しません。
並列に置くとまったく反応しません。
並列に置くのは、
mc = _root.attachMovie( "occ", "mc1", 1 ) ;
mc._x = 10 ; mc._y = 20 ;
mc1.onRelease = function() {
mc = _root.attachMovie( "vac", "mc2" , 1) ;
mc._x = 10 ; mc._y = 20 ;}
mc2.onRelease = function() {
mc = _root.attachMovie( "occ", "mc1" , 1) ;
mc._x = 10 ; mc._y = 20 ;}
としてみたのですが、どこかに致命的なミスがあるんでしょうか?
744:740
08/10/05 23:01:31 usVPpYR2
>>742さんも、ありがとうございます。
最終的には、FLASHからPHPに送ってSQLiteでデータベース化し、それをPC上のswfファイルで
読み込むというのが目標です。ほとんどすべて初心者なので、果てしなく遠い道ですが・・・
したがって、表示だけではなくて、そのデータを記録する必要があります。
745:Now_loading...774KB
08/10/05 23:13:21 h4p7romc
>>744
いや、訊きたいのはつねにoccとvacふたつのMCを表示する必要があるのか?
それとも、同じ場所に、状況に応じてどちらか一方が表示されていればいいのか?ということ。
状態の表示と記録等の作業とは分けて考える。一緒にしない。
初心者ならなおさら一度にすべてをやろうとせず、問題を細切れにして
ひとつひとつ解決していくほうがいいと思うよん。
ただその前に、最終的にどういう流れで何をしたいかの説明があるといいけど。
746:Now_loading...774KB
08/10/05 23:21:01 Y40PAbvO
>>743
入れ子にする。1回しか反応しないのは新たにattachMovieしてるから。
新たにattachMovieしたMCにもボタンアクションを記述しないとだめ。
それだと永遠入れ子が続くからこんなかんじでどう?
occ_mc = _root.attachMovie("occ", "mc1", 1);
occ_mc._x = 10;
occ_mc._y = 20;
//
vac_mc = _root.attachMovie("vac", "mc2", 2);
vac_mc._x = 10;
vac_mc._y = 20;
//
occ_mc.onRelease = function() {
this._visible = false;
vac_mc._visible = true;
};
vac_mc.onRelease = function() {
this._visible = false;
occ_mc._visible = true;
};
747:740
08/10/05 23:30:16 usVPpYR2
>>745さん、ありがとうございます。
実は、forを使ってこのボタンをいくつでも配置することはできています。
そして、それらのインスタンス名を2次元の配列に格納し、 _root[arr[j][i]]で参照して、
普遍的な関数を作ろうと考えてみました。
for( i = 0; i < 2 ; i++) {
for( j = 0; j < 3 ; j++) {
btnName= _root[arr[j][i]];
btnName.onRelease = function() { }
}
}
しかし、肝心の関数部分で止まってしまったのです。そこで単純化しようと思ってやってみたのですが、
どうにもうまくいきません。あなたの言われる「状態に応じて対応を変える関数をひとつつくっておいて 」
というのができないのです。そもそも、最初から無理なことをやろうとしているのではないかと心配になって、
質問させていただきました。
748:740
08/10/05 23:35:33 usVPpYR2
>>746さん、ありがとうございます!!!
素晴らしい!
「1回しか反応しないのは新たにattachMovieしてるから。」そうは感じておりました。
しかし、初心者の悲しさでデッドロックから抜けられませんでした。
どうして動くのか、今からじっくり考えてみたいと思います。感謝、感謝。
749:Now_loading...774KB
08/10/06 02:53:53 ATmo4CTQ
>>736
うろ覚えで申し訳ないけど、それ関係で何かバグがあるって見た覚えがあります。
なんだったかなぁ、、、COMPLETEを発行せずに終わっちゃうんだったかな?なんかそんなの
750:738
08/10/06 13:11:28 j7I+Fyra
<<741
いえ、ローカルのHTMLファイルでも表示はされてません。まだアップはしてないので・・・
flash自体は読み込まれてます、flashにflvplaybackで入れ込んでいるのですが、肝心の動画だけが
表示されないのです・・・swfファイルには動画は表示されているのですが・・・
751:Now_loading...774KB
08/10/06 14:34:50 71akw7qm
ドキュメントクラス内で設定した変数があるのですが、
それをムービークリップの、mcTestのフレームアクション上から
アクセスするにはどうすればいいでしょうか。
ドキュメントクラス内
public var _direction:String = "right";
ムービークリップmcTest
if(MovieClip(root)._direction == "right"){
trace("hoge");
}
これをすると、
TypeError: Error #1034: 強制型変換に失敗しました。flash.display::Stage@1e485f99 を flash.display.MovieClip に変換できません。
となってしまいます。
ドキュメントクラス内の関数等からは、
問題なく_directionの値を取り出すことができます。
752:Now_loading...774KB
08/10/06 15:15:27 JWWr9U6v
ニコニコにアクションスクリプト入りのswfをアップしようとするとニコニコムービーメーカーに怒られるんですが
URLリンク(www.nicovideo.jp)では
アクションスクリプト入りのまま上げられてるみたいです
こういうのどうやるんでしょうか
753:Now_loading...774KB
08/10/06 22:19:11 v0Gc+cNm
MXMLを使わずにActionScriptのみでFLVプレイヤーを作っています。
flash.media.VideoでFLVを表示させると動画の周りに余白が表示されてしまいます。
MXMLだとlayout="absolute"に設定すれば余白がなくなるようですが
asのみの場合はどう書けば余白をなくすことが出来ますか?
754:741
08/10/07 01:40:42 vSCGf/4x
>>750
・flash自体(=swf)は読み込まれてるのに動画が表示されてない
・swfファイルには動画は表示されている
swfを直接再生すると動画は表示されるが、
htmlにswfを埋め込むとflvplaybackの枠とかは表示されるが動画が表示されてないって事?
もしそうならすみませんが私にはわかりません
755:Now_loading...774KB
08/10/07 10:10:21 /tF2IwiT
>>750
読み込む動画がH264/AACエンコードとかで、
ブラウザのFlashPlayerのバージョンが9.0.115.0以前とか?
756:750
08/10/07 13:24:41 WI3Iuoc5
いえ、flvplaybackの枠も表示されません。
読み込む動画はyoutubeから落としたflvファイルでブラウザのバージョンは9.0.124.0です。
あ、Apacheを使って、PHPで書いてます。
757:Now_loading...774KB
08/10/07 13:35:39 Yrky8F5E
そりゃmimeの設定できてねーんじゃねーの?
758:756
08/10/07 14:37:35 WI3Iuoc5
ありがとうございました!おかげで解決しました。757さんの言うとおり、mimeの設定が出来ていなかったようです。
759:736
08/10/08 00:13:46 gi3Jp8Qo
>>749
レスthxです
バグですかorz
760:Now_loading...774KB
08/10/08 12:59:28 igoSSjzu
質問させてください。開発環境はAS3を使ってます。
actionscriptを使ってチャットシステムを作りたいのですが、ちょっと変わった仕様にしたくて、
チャットのログを残して、それをもう一度再生でき、その上から新たに書き込みが出来る。という風にしたいのですが
どうすればそれが、もしくはそれに近い形のものが出来るか、力を貸してください。
761:Now_loading...774KB
08/10/08 14:03:55 xljkzCkT
>>760
漠然としすぎてて何が聞きたいのかよくわからない。動画のないニコニコ動画みたいなもんなのか?
サーバープログラムとFlashクライアント組み合わせればできるんじゃないの。比較的難しいと思うけど。
762:Now_loading...774KB
08/10/08 14:12:42 igoSSjzu
>>761
あ、そんな感じです。サーバプログラムとflashクライアントですか……ちょっとわかりません。
申し訳ありませんがもう少し詳しく説明してもらえないでしょうか?
763:Now_loading...774KB
08/10/08 14:36:25 xljkzCkT
>>762
逆に現時点で何がわかりますか?ASは?PHPは?DBは?FMS/FCSは?
やりたいことは別として、基本的なことから理解していかないと、このレベルのFlashを作るのは難しいと思う。
それくらい広い範囲の知識がないと実現できない構想です。
764:Now_loading...774KB
08/10/08 14:43:15 VeBvuOje
mime知らんでニコニコみたいなの作りたいとか言ってた奴じゃねーのどーせ?
そいつもうほっとけ。キリないわ
765:Now_loading...774KB
08/10/08 14:45:57 VeBvuOje
ボクちゃんは1冊本買って読んでね
ニコニコのクライアントの作り方みたいなの、AIRの紹介本かなんかでのってたような気がするから、それ丸写ししてくれ
766:Now_loading...774KB
08/10/08 14:49:58 igoSSjzu
>>763
使える物はASとPHPです。データベースもある程度は出来ます。PHPは掲示板を作る事くらいは出来ます。
足りない知識は補っていくつもりです。何とかして作りたいのです…
767:Now_loading...774KB
08/10/08 15:11:44 gmvy7wkk
つか、広範囲な知識が必要っていわれてるように、ここで全部を詳しく説明なんて無理。
いわれたキーワードや本なんかを参考にすすめていって、もっと問題点が絞り込まれた段階で
質問したほうがいい。
768:Now_loading...774KB
08/10/08 15:14:37 jk5368hO
AS2.0でゲームを作っています
点数をとると画面下に並べているMCの色が変わり、点数を表示するようにしています。
■■■■□□□□←こんな感じです。
各四角のMCにインスタンス名mark1~30までを付け、
四角をまとめたscoreGroupe_mcに
onClipEvent (enterFrame) {
if (_root.seikaiNum == 1) {
this.mark1.gotoAndStop("on");
}
}
と書き、四角の色を変えて表示させています。
今のところ、上のスクリプトを
1~30まで書き連ねることで表示としては出来ているのですが
これを、簡潔にする場合はどのようにしたらいいのでしょうか?
よろしくお願いします
769:Now_loading...774KB
08/10/08 15:46:12 gmvy7wkk
>>768
markに連番ついてるならforループで処理すればいいと思うが、
seikaiNumの値とonにするmarkの数が対応しているなら、
seikaiNumの値が増減する時に、
this.scoreGroupe_mc["mark"+String(_root.seikaiNum)].gotoAndStop("on");
みたいにして表示を増やしていけば、enterFrameいらないと思う。
770:Now_loading...774KB
08/10/08 16:18:02 iD7k9kcY
24時間耐久10分でフラッシュを作れ!
┏━┓ ┏━┓ ┏━┓ ┏━┓
┏┛┏┛ ┏┛ ┃ ┏┛ ┗┓ ┏┛┏┛
┏┛┏┛ ┗┓ ┃┏┛┏━┓┗┓ ┏┛┏┛
┏━┛ ┗━┳┓ ┃ ┃┃ ┃ ┃ ┃┏━┛ ┗━┳┓
┗━┓ ┏┳┛┃ ┃ ┃┃ ┃ ┃ ┃┗━┓ ┏┳┛┃
┃ ┃┗┳┻┓ ┏━┳━┓ ┃ ┃┃ ┃ ┃ ┃ ┃ ┃┗┳┻┓ ┏━┳━┓
┃ ┃┏┻┓┗┓┏┛┏┛┏┓┗┓┃ ┃┃ ┃ ┃ ┃ ┃ ┃┏┻┓┗┓┏┛┏┛┏┓┗┓
┃ ┃┃ ┃ ┗┛ ┃ ┗┛ ┃┃ ┃┃ ┃ ┃ ┃ ┃ ┃┃ ┃ ┗┛ ┃ ┗┛ ┃
┃ ┃┃ ┣┓ ┏┫ ┏━┛┃ ┃┃ ┃ ┃ ┃ ┃ ┃┃ ┣┓ ┏┫ ┏━┛
┏┛┏┛┃ ┃ ┃ ┃ ┃ ┃┏━┓┃ ┃┗┓┗━┛┏┛ ┏┛┏┛┃ ┃ ┃ ┃ ┃ ┃┏━┓
┏┛┏┛ ┃ ┃ ┃ ┃ ┗┓┗┛┏╋┛ ┗┓┗┓ ┏┛ ┏┛┏┛ ┃ ┃ ┃ ┃ ┗┓┗┛┏┛
┗━┛ ┗━┛ ┗┛ ┗━┛┗━━┛ ┗━┛ ┗━┛ ┗━┛ ┗┛ ┗━┛
┓┏┓ ┓ ━┓ ┏┓┏┓ ┏┓┏┓ ━┓ ━┓ ┏━ ┏━┓
┃┃┃ ┃ ┏┛ ┃┃┃┃ ・ ┃┃┃┃ ┏┛ ━┫ ・ ┃ ┃ ┃
┃┃┃ ┃ ┃ ┃┃┃┃ ・ ┃┃┃┃ ┃ . ┃ ・ ┗┓ ┗━┫
┻┗┛ 月 ┻┗━ 日 ┗┛┗┛ ┗┛┗┛ ヨリ ┗━ ━┛ .━┛ .━┛ マデ
参加者(Flash制作者・お題投下者・観覧者)募集
現行:スレリンク(swf板)
771:Now_loading...774KB
08/10/08 16:18:20 jk5368hO
>>769
今ちょうど、上に書かれている事をやってみている最中でした!
変数_root.seikaiNumをMc名にくっつけるところで悩んでいたので
とても助かりました
ありがとうございます!
772:Now_loading...774KB
08/10/09 03:23:29 aP0WSrHE
as3です。
クラスメソッドが、呼び出し元のオブジェクト(外部クラスから生成されたオブジェクトです)
を参照する方法ってありますか?
※引数を渡す方法ではなく、無名関数のときのarguments.calleeみたいなものがあるかなと
773:Now_loading...774KB
08/10/09 05:31:20 j0D+PJKY
>>772
call()使えば?
774:Now_loading...774KB
08/10/09 16:07:37 TmP9ojJa
ActionScript3.0のイベント一覧&解説ページとか無いですか?
Event.ENTER_FRAME は フレーム毎によばれます。とか書いてあるページ
775:Now_loading...774KB
08/10/09 16:18:14 sPljUQk0
質問です。
FLASH8 professionalを使用しています。
マウスの動きに合わせて画面を動かしたいのですが、どうしたらいいですか?
URLリンク(www.okayama-ichibangai.co.jp)
こんな感じです。
776:Now_loading...774KB
08/10/09 16:20:33 8zCQcoK/
>>774
イベント関連の定数の使われ方って実は
EventDispatcher派生クラスによって微妙に違うよ
さすがにEvent.ENTER_FRAMEとかはどのクラスでも一緒だけど
なのでまずEventDispatcher派生クラス側のリファレンスから調べた方がいい
777:Now_loading...774KB
08/10/09 16:25:47 Kp/E7F/l
>>774
URLリンク(livedocs.adobe.com)
URLリンク(d.hatena.ne.jp)
ぐぐってみたらこんなんでてきた。上は関連項目のリンクまでたどると吉。
778:Now_loading...774KB
08/10/09 16:29:46 DCHKzhYs
AAAというmcを配置して外部swf(BBB.swf)を読み込ませているのですが
外部swfの特定のフレーム(ラベル:CCC)に飛ぶ、というアクションを実現させたいです。
現在は、フレームに
AAA.loadMovie("BBB.swf");
と書いています。
前述のアクションを実現させるには、どのようにすれば良いでしょうか?
779:Now_loading...774KB
08/10/09 16:35:39 jZliTI6n
>>778
ロードするとAAAの内容がBBBになるから、AAAに対してCCCへ飛べって命令する。
ただしロード完了(少なくともBBBフレームの読み込み完了)まで待つ必要がある。
MovieClipLoaderが使えるバージョンならそっちを使うことをすすめる。
780:Now_loading...774KB
08/10/09 16:36:27 ewoo5v+p
そもそもBBB.swf読み込めてる?
781:Now_loading...774KB
08/10/09 16:58:02 DCHKzhYs
回答ありがとうございます。
>>779
AAA.loadMovie("BBB.swf");
AAA.gotoAndPlay(CCC);
としてみましたが、動作しませんでした。
>>780
読み込み自体は問題ないです。
782:Now_loading...774KB
08/10/09 17:06:22 jZliTI6n
>>781
本当に読み込み完了を待ってから実行してるのか?
まさか続けてその二行を書いたんじゃないよな?
783:Now_loading...774KB
08/10/09 17:19:00 ewoo5v+p
// SWF7以上? AS1.0以上 AS2.0以下
var listenerObject = {
onLoadInit:function( mc ){
mc.gotoAndPlay("CCC");
}
};
var movieClipLoader = new MovieClipLoader();
movieClipLoader.addListener( listenerObject );
movieClipLoader.loadClip( "BBB.swf" );
// SWF6 AS1.0
AAA.loadMovie( "BBB.swf" );
AAA.onLoad = function(){
this.gotoAndPlay( "CCC" );
};
作業中なので構文チェックすらしないけど、何かしらエラー出たり動作しなかったら自分で解決してね。ヒントにはなると思う
784:Now_loading...774KB
08/10/09 18:13:46 DCHKzhYs
>>783
どうにか動作させることができました。
ありがとうございます。
785:Now_loading...774KB
08/10/09 21:11:58 eWUWIMFi
>>775
_xmouse、_ymouseでマウスの位置を取得する
786:Now_loading...774KB
08/10/09 21:15:05 HOE20Wv+
loadClipでAAA指すのわすれてるや
787:Now_loading...774KB
08/10/10 11:40:13 jEdfFmam
actionscript3で、配列array1[0~4までbitmapが入っている]という状態で
A:
var array2:Array = new Array();
array2 = array1;
というのと
B:
var array2:Array = new Array();
for(var i:int=0; i<array1.length; i++) {
array2[i] = array1[i];
}
というのがありますが、この二つは結果は違うのでしょうか?
やりたい処理はbitmap含めた配列array1のコピーでは無く
配列array2を使ってarray1の中にあるbitmapを参照したいのですが
for(var i:int=0; i<array2.length; i++) {
array2[i].alpha = 0;
}
上のAとB、どちらの方法が正しいのでしょうか?
788:Now_loading...774KB
08/10/10 12:08:27 Hiz0rQXM
>>787
おそらく適切なのはこうです。
var array2:Array = array1;
これでarray2はarray1を指すようになります。
Aの場合、newした領域は使われません。
array2 と array1 は全く同じArrayオブジェクトを指すようになります。
つまり、最初に書いた記述と等価です。
Bの場合array1[i]はarray2[i]と同じ物を指すようになりますが、
Arrayオブジェクトそのものは別物です。
例えば、後でarray[0].alpha = 0.5としたときは、A,Bいずれの場合もarray2[0].alpha は0.5となります。
しかし、array1[0] = hoge; としたとき, array2[0] は Aの例ではhogeを指しますが、
Bの例では元のbitmapを指したままになります。
789:Now_loading...774KB
08/10/10 13:13:32 jEdfFmam
>>788
丁寧な解説ありがとうございます
結構複雑な事だったんですね・・・
AとB双方の違いは
A:array2がarray1そのものになる(array2のメモリ消費無し)
B:array1と別物のarray2(中身はarray1の中身の参照)が作られる
といった感じでしょうか
また調べてみたいと思います
790:Now_loading...774KB
08/10/10 13:20:11 386dzPr4
脱出ゲームでただ画面を切り替えるだけではつまらないので、切り替える際に部屋が回転するアニメーションをつけたいのですがどうすればできるでしょうか?
xscaleとか使ってみましたがうまくいきませんでした
swf6ですよろしくお願いします
791:Now_loading...774KB
08/10/10 15:43:18 +XhY3/+g
>>790
回転するアニメーションを自力で描くか、3Dソフトでレンダリング
ただ、プレイする側からすると回転とかのエフェクトはそれほどいらん。
その努力を内容に向けるほうが評価はあがると思われる。
792:Now_loading...774KB
08/10/10 15:44:03 Lg+DE3dz
>>790
意味不明でございます
そもそも部屋って何?
大体何がやりたいか想像できるけど、そんなんじゃ説明のしようもない
793:Now_loading...774KB
08/10/10 15:46:58 386dzPr4
>>790
なるほど大変そうですね…
参考になりました!内容を重視したいと思います
ありがとうございました
794:Now_loading...774KB
08/10/10 15:47:38 386dzPr4
すみません>>791でした
795:Now_loading...774KB
08/10/10 19:53:20 h+heZ6CA
AS2で初めてスクリプトを作ってます。
MovieClipを配置して、トゥイーンを使ってアルファ値を0から100に
あげていき、フェードインするようにしています。
このMovieClipのattachBitmapを使用してビットマップを読み込んで
フェードインさせたいのですが、attachBitmapを使用するとフェードイン
してくれません。
やりかたが間違っているのでしょうか。
よろしくお願いします。
import flash.display.BitmapData;
var bmp:BitmapData = BitmapData.loadBitmap("image");
map.attachBitmap(bmp,2);
map._width = bmp.width;
map._height = bmp.height;
map._x = 0;
map._y = 0;
796:Now_loading...774KB
08/10/10 20:10:56 +XhY3/+g
>>795
いまいち構成を理解してないが、その場合はattachMovieを使うんじゃないのか?
797:Now_loading...774KB
08/10/10 20:19:26 h+heZ6CA
回答ありがとうございます。
早速、試そうとしましたが、
attachMovieを使うと、別のインスタンスとしてMovieClipができるので
シーンに割り当てたトゥーイーンがうまく動いてくれないみたいです。
よろしくお願いします。
798:Now_loading...774KB
08/10/10 20:49:23 +XhY3/+g
>>797
すまんが、何がどこにいくつあり、どういう順番で、どういうことを目指しているのかわからん。
モーショントゥイーンでアルファ値を変更させたMCがあるとして、それをどうしたい?
そこに別のMCをクロスフェードしたいのか、トゥイーンするMCのほうを別のMCに重ねたいのか
そのへんもっと詳しく。
799:Now_loading...774KB
08/10/10 20:58:47 h+heZ6CA
>>798
説明が下手でごめんなさい。MCは1つだけです。
まず、ASを使用せずにMCを1つ配置して、30フレームくらいかけてアルファ値を0から100にしています。
これだけで動作させると意図したように動いてくれます。
このMCにスクリプトを使用して、動的にビットマップを変えて、再生できればと考えました。
そこで、1フレーム目に、このMCにattachBitmapを使用してビットマップを取り込むように
したのですが、再生すると最初からビットマップが表示された状態(アルファ値が100?)で
フェードインしてくれません。このようなことはできないのでしょうか。
よろしくお願いします。
800:Now_loading...774KB
08/10/10 22:30:39 Lg+DE3dz
>>799
attachする場所が間違ってる予感・・・
map ←ムービークリップ
└sym1 ←トゥウィーンさせるムービークリップのインスタンス
で、bmpをsym1にattachすればトゥイーンが動くはず
mapにattachしたらそれは当然最初から100%で表示される
801:Now_loading...774KB
08/10/11 15:35:16 2PVL4LOp
>>800
ご指摘の通り、mapにattachしていました。
mapの下に、ムービークリップを作成していなかったので、新たに作り、そのムービークリップに
attachするようにすると動作しました!ありがとうございました。
802:Now_loading...774KB
08/10/12 01:42:00 x/5YdeJh
AS3でステージサイズが変わったときにhogeMCの大きさを合わせるという処理なんですが、
コンストラクタで初期表示時にもhogeMCの大きさを変えたいんです。
でもstageResize(e:Event)の引数に何を渡して良いのか分かりません。
よろしくお願いします。
//コンストラクタ
public function Main():void
{
stage.addEventListener(Event.RESIZE, stageResize, false, 0, true);
stageResize(ココが分からない);
}
//hogeMCリサイズ
private function stageResize(e:Event)
{
hogeMC.width = stage.stageWidth;
hogeMC.height = stage.stageHeight;
}
803:Now_loading...774KB
08/10/12 09:45:00 igvFLrbe
>>802
初期処理とリサイズ時を同じ処理でやりたいなら、リサイズイベントを発行するとかじゃね
804:Now_loading...774KB
08/10/12 10:08:25 wWTa/+9f
stageResize(new Event("dummy"));
って事でしょ
805:Now_loading...774KB
08/10/13 23:44:57 ByP/fX7b
配列について質問です。
配列A、配列Bを宣言して
Aに要素aを入れます。
そしてそれをBに入れてBの要素aに変更を加えると
元の配列Aの要素aにも影響が出るものなんですか?
つまり、
A[0]=a
B[0]=A[0]
B[0]+=b
→A[0]=ab B[0]=ab となってしまうのですか?
806:Now_loading...774KB
08/10/14 04:47:51 DhQ1dHTE
ちょっとActionScriptの範囲から外れてしまうのですが、ゲームの
スコアなどをクッキーで保存しようと思っています。
大学などでログインしてパソコンを使う場合、クッキーはそのユーザーの
環境ごとに保存されると考えていいのでしょうか?
同じパソコンを何人かで使用した場合、前に使用した人の
クッキーの内容になってしまうのかと気になってしまったので。
807:Now_loading...774KB
08/10/14 06:39:04 O9YM+h8s
>>805
元の配列というか、プリミティブかリファレンスかを理解した方が良いと思うぞ
>>806
winとかなら当然ログインユーザー別に保存されるでしょ
808:Now_loading...774KB
08/10/14 12:00:45 6opIN5hS
>>805
わかりやすく答えると、数値や文字列ならA[0]には影響しません。
A[0]="a"
B[0]=A[0]
B[0]+="b"
trace( A[0], B[0] ) // a ab
>>806
URLリンク(oshiete1.goo.ne.jp)
809:Now_loading...774KB
08/10/14 16:46:43 DhQ1dHTE
>>807
ありがとうございます!
安心しました