1 :Now_loading...774KB2011/04/15(金) 10:46:11.63 ID:q4Uw1coA
AcitonScriptのことなら
初歩的な質問でもなんでもおk

見れない、保存したい、flashを作りたいはスレ違い
下記の関連スレ、超基本的な質問へ。

●質問する時は自分の環境を書く(AS2,AS3の別も)
●質問はものすごい勢いじゃなくて結構
●できるだけコードも示す
●まず自分がやりたいことを明確に書く。そのために試してみた処理を書く

前スレ
ActionScript 誰かが物凄い勢いで解答するスレ27
http://hibari.2ch.net/test/read.cgi/swf/1287891645/

関連スレ
Flashの超基本的な質問はここでしろ! part41
http://hibari.2ch.net/test/read.cgi/swf/1274977716/
※初心者は↑こちら推奨
226 :Now_loading...774KB2011/04/30(土) 19:43:44.72 ID:Mi2I53aQ
>>225
>>1
227 :2252011/04/30(土) 20:52:16.20 ID:pR9UWjx/
>>226
おお・・・すいません。
環境はAS3、FlashCS5を使用しています。
コンポーネントから引っ張って画面に貼り付けているので、
コード内に記述されていません。
全てのフレームに貼り付けているのでなく、stop();があるフレーム数箇所のみに設置しており、
いずれかのstop();フレームで停止するとそのtextArea.textの中身がすっからかんの状態です。
2 :Now_loading...774KB2011/04/15(金) 11:05:55.28 ID:NAErBKnz
誘導できなくなんだろ

前スレ>>997
当然できるよ
Eventクラス(自分でEventクラス継承して作った場合はそのクラス)の変数として宣言してnewしとけは使い回せる

というか試してみようぜ…
3 :前スレ9992011/04/15(金) 11:17:22.52 ID:/T0t7RHk
>>2
ごめんなさい。
4 :Now_loading...774KB2011/04/15(金) 11:56:53.58 ID:NAErBKnz
前スレ>>998

1.0って2.0と結構違うんだっけ
2.0じゃダメな理由ある?(携帯とかPSPとか?)

パネルには1.0&2.0しかなかったからそれにしたから再現できてないかも
パブリッシュ設定は1.0

1.0よく覚えないんだけど
このbgmってSoundオブジェクト(1.0にあったっけ)であってる?
1.0でもvar bgm=new Sound()
の書き方でいい?

onSoundCompleteはflag_bgmが真の時に該当コードを通ると『bgmオブジェクトが再生し終わるたびに実行される関数』が登録されるからその後flag_bgmが変わろうがbgmオブジェクトが再生が終わるたびによびだされる
14 :前スレ9982011/04/18(月) 00:11:27.80 ID:MfNczaPK
>>4-5
遅れてすみません
仰る通りにしたらうまくできました!ありがとうございます
5 :Now_loading...774KB2011/04/15(金) 11:57:13.07 ID:NAErBKnz
このイベントハンドラはまんま
delete _root.bgm.onSoundComplete;
で削除できたよ
けど
_root.bgm.onSoundComplete = function(){
if (flag_loop == true){
_root.bgm.start();
}
};
にしたらflag切り替わるだけでループするかの設定はできるんじゃない?

bgmたくさんあるなら配列(あったっけ)にいれたら制御しやすいんじゃない?

flag=true;
bgm[0].start;//ループする
flag=false//bgm[0]があと一度再生し終わったら止まる
bgm[1].start;//一回だけ再生

関数の書き方は

function 関数名(bgm_title,flag_loop){
// ここにソースコピペ
};
だね
6 :Now_loading...774KB2011/04/16(土) 16:03:38.61 ID:J+djHQ6s
ActionScriptで自動であらかじめ決めた絵を描きたいです。
イメージで言うと、グリコCMの最後のサウンドロゴが出てくる時の映像みたいな感じで、
絵を描きたいです。そういうのってどうすればいいんでしょうか?
1年くらい前からやりたいのですが、実装方法が全然わからず・・・
line関数でサインカーブを描いてみるところまではやったのですが、
人の似顔絵とか描こうとすると実装方法がわかりません;;
7 :Now_loading...774KB2011/04/16(土) 16:22:50.46 ID:KQ8+ySie
>>6
やったことないがヒントとしては、
ActionScript 3.0 SVG パス 描画
でググれば吉かも。

参考図書:
「ActionScript3.0ライブラリ入門」(新藤 愛大 ほか)翔泳社 
pp076「描画リプレイ」
ここで人物像の鉛筆描画の再現が紹介されている。
665 :Now_loading...774KB2011/05/29(日) 18:09:00.60 ID:xAev+qCb
>>7
返信が遅くなりましたが、ありがとうございます。
街の方の書店で見つけたので買いました。
まさにやりたいことが解説されていたので助かりました。
666 :Now_loading...774KB2011/05/29(日) 18:24:19.15 ID:fR0n+RRg
>>665
その本立ち読みしようとしたら寸前に他の人に取られて
30分待ってたらそのまま買ってきやがった・・・・

サンプルは確か普通に落とせるんだよね。
SiONなんか一本解説付きのがあったからそれだけでも勉強になったり。にひひ
669 :Now_loading...774KB2011/05/29(日) 23:08:32.39 ID:xAev+qCb
>>666
それ、堂島だったら俺ですね。。。
サンプルは普通に落とせるっぽいです。
結構嬉しいけど、それっていいのかな〜とか思ったり。。。
8 :Now_loading...774KB2011/04/17(日) 00:45:26.61 ID:V+v79e+y
どっかの記事で一度見たのですが
簡単に右上にメモリ使用量とfpsを表示してくれるライブラリって
なんでしたっけ?
いくら探しても見つからない・・・・
9 :Now_loading...774KB2011/04/17(日) 01:13:45.76 ID:qBe4zfrd
>>8
SwfProfiler
Stats
10 :Now_loading...774KB2011/04/17(日) 02:40:10.71 ID:V+v79e+y
>>9
Statsでした。ありがとうございます。

使ってみてメモリがどんどん増えていってびっくりしたけど
これ仕様なんですね
11 :Now_loading...774KB2011/04/17(日) 21:53:12.21 ID:9BYqx84b
AS2→AS3移行に際してColorクラス代替としてColorTransformクラスを使いたいの
ですが記述方法が分かりません。

題材はttp://d.hatena.ne.jp/flashrod/20061108にある円グラフ描画で、この
public class Chart extends Shape の下の部分にある graphics.beginFill(Color.darker(c));
をこのまま使うと
 Warning: 1058: 移行の問題 : プロパティ Color はサポートされないようになりました。Color クラスは
 削除されました。同等の機能の flash.geom.ColorTransform クラスを使用してください。

という警告が出ます。
このColor.darkerは陰の部分を担当していると思われます。どう変えたら良いでしょうか?
ヒントを願います。
12 :Now_loading...774KB2011/04/17(日) 22:34:30.87 ID:/vktIlnj
適当な関数を作ってcを少し暗い色に変えた値を返せば良いよ。

色は16進数で赤緑青2桁ずつなんだけど
それぞれ同じ割合で下げれば暗くなるよ。
13 :112011/04/17(日) 23:32:13.57 ID:9BYqx84b
>>12
ありがとう。出来ました。
15 :Now_loading...774KB2011/04/18(月) 02:24:22.60 ID:tLHYLEcK
質問があります。
aaaaa
bbbbb
cccc
という改行を含んだ文字列を変数に代入したいと思っています。
PHPの場合は
$str=<<<END
aaaaa
bbbbb
cccc
END;
と言うふうに書けば実現できます。
これをactionscript3.0ではどう書いていいのか分かりませんでした。
何方かご存知でしたら教えてください
よろしくおねがいします

16 :Now_loading...774KB2011/04/18(月) 08:52:26.34 ID:MfMtJ+bE
>>15
テキストからひっぱってくるならそのまま代入できるだろう
コード内で代入したいんなら\nなり\rなり\nなり\rなりいれりゃいんじゃね?
17 :Now_loading...774KB2011/04/18(月) 14:07:18.75 ID:tLHYLEcK
>>16
テキストファイルに書いておいてURLLoaderで読み込むということですよね?
それだと読み込むたびにHTTP通信のオーバーヘッドが発生するのが気になるんです
パッケージにテキストファイルを埋め込む事も調べた限りでは出来ないみたいだし
やっぱり改行を\nにするしかないのかな
18 :Now_loading...774KB2011/04/19(火) 02:13:34.94 ID:ECClfKLq
AS3,WinXP,FlashCS4

オーサリング環境で予め線描画で書いた閉じた図形(例えば、□とか☆)の
内部の色の塗りつぶしはどうしたら良いでしょうか?
例としては
(MC:rect)□ →(赤)→ ■
(MC:star)☆ →(黒)→ ★

な感じです。
19 :Now_loading...774KB2011/04/19(火) 13:40:21.54 ID:Mi3k2rce
Adobe Flash5 pro AS3.0
外部swfを読み込み
var loader_obj : Loader = new Loader();
中略
stage.addChild(loader_obj); にて画面に表示するところまで出来てます

Flashのサイズを300x300で書き出します、外部から読み込んだswfのサイズが400x300の場合
画面からはみだしてしまいます
画面ピッタリのサイズで表示したいのですが、どのようにしたらよいですか?
20 :Now_loading...774KB2011/04/19(火) 13:50:18.45 ID:w6bRfjKe
>>19
ずいぶん古いのつかってんだな
読み込んだswfのscaleXとかをごにょごにょすりゃいんじゃん?
22 :192011/04/19(火) 14:04:29.49 ID:Mi3k2rce
>>20
×Adobe Flash5 pro AS3.0
○Adobe Flash Pro CS5 AS3.0
間違いました、すみません

ありがとうございました
21 :Now_loading...774KB2011/04/19(火) 13:51:13.01 ID:7KQaaaxc
AS3、FlexSDK3です。
マウスカーソルを動かす関数がありましたら教えてください。
初期カーソル位置をボタンの上に持ってきたりするのに使いたいです。
23 :Now_loading...774KB2011/04/19(火) 14:13:48.47 ID:w6bRfjKe
>>21
mouseXって読み取り専用だっけ?
26 :212011/04/19(火) 16:41:27.82 ID:7KQaaaxc
>>23
はい、読み取り専用っぽいです。
SetCursorPos(100, 200)とか指定して動かせるといいのですが。
24 :192011/04/19(火) 15:54:29.44 ID:Mi3k2rce
Adobe Flash Pro CS5 AS3.0

先ほどの続きです
scaleX、scaleYで設定出来るようになったのですが、
ステージにぴったりフィットするように元の大きさを取得後縮小率を計算して割り当てました
その大きさをscaleXとscaleYに指定して表示させてみたところ、どうやら本当は表示されない画面外の部分が
縦幅、横幅のスタート地点と認識しているようで、縮尺は合っていますが余分な部分が見えています
そのおかげで画面からはみだしています

これの回避方法はありますか?
25 :242011/04/19(火) 16:06:14.84 ID:Mi3k2rce
自己解決しました
自分が間違ってました、すみませんでした
27 :Now_loading...774KB2011/04/19(火) 17:50:28.63 ID:i002MKvI
すいません。どなたか前スレ999分かりますか?
XMLで任意の深さの要素の抜粋です。
28 :Now_loading...774KB2011/04/20(水) 01:53:36.66 ID:Wr3M1yCz
hoge[-1]で配列の最後の要素にアクセスするように仕様変更することって可能ですか?
31 :Now_loading...774KB2011/04/20(水) 08:35:07.22 ID:t/eh4LVs
>>28
言語は
33 :Now_loading...774KB2011/04/20(水) 13:31:02.55 ID:Wr3M1yCz
>>31
as3.0です
29 :Now_loading...774KB2011/04/20(水) 05:09:31.59 ID:/aWGm8qC
桁数非固定の数値がゾロ目かどうか判定するにはどうすればいいですか?
zorome = false;
if (hensu >= 10 && hensu <= 99 && hensu % 11 == 0){ zorome = true; } // 変数が2桁のとき(10〜99)
if (hensu >= 100 && hensu <= 999 && hensu % 111 == 0){ zorome = true; } // 変数が3桁のとき(100〜999)
if (hensu >= 1000 && hensu <= 9999 && hensu % 1111 == 0){ zorome = true; } // 変数が4桁のとき(1000〜9999)
このようなものしか思いつきません
できればAS1でも動くものでお願いします
30 :Now_loading...774KB2011/04/20(水) 08:32:05.45 ID:t/eh4LVs
>>29
それでいんじゃん?

文字列に変換して一文字ずつに分解して配列に入れてfor文で配列の長さ分全要素が最初の要素と等しかったら、とか
for文で10,100,1000で割った余りが一致するかとかあるだろうけど
39 :Now_loading...774KB2011/04/20(水) 15:54:28.39 ID:lGNTmRbT
>>29
var zorome_max = 1111111111;//int 型が約21億までのため、10億の桁まで入力。

for(i = 1; i > zorome_max; i = i * 10 + i) if( hensu % i == 0 ) break;
if(i <= zorome_max) zorome = true;
49 :39-412011/04/21(木) 06:23:13.53 ID:SSDaZ26P
>>29
どんな桁でも、ゾロ目を検知できる関数を作ってみた。
マイナスや、小数点以下にも対応。AS3の文法だが、手を加えればAS1系でも動くと思う。

function zorome(num:Number):Boolean{
if(num == 0)return false;
var _num:Number = (num > 0) ? num : -num;
while((_num % 1) != 0) _num = _num * 10;
var val:Number = _num / 10;
var i:Number = 0;
for(i = 11; i < val; i = i * 10 + 1);
return ((_num % i) == 0);
}
32 :Now_loading...774KB2011/04/20(水) 09:43:03.99 ID:Qd7uEW7C
ベースとなるキャンバスのサイズってどうやって取得するんですか?
this.width, this.heightでは異なった値がはいってきました・・・
34 :Now_loading...774KB2011/04/20(水) 14:22:50.43 ID:INzP6UxU
>>32
stageじゃね?
35 :Now_loading...774KB2011/04/20(水) 15:22:41.46 ID:nVXrMEHW
Adobe Flash Pro CS5 AS3.0
multipart/form-dataを送信する方法教えてください

ぐぐってみていい感じのページを見つけたのですが、使い方がわかりませんでした(質問者と同じところで躓いた)
http://www.flash-jp.com/modules/newbb/viewtopic.php?topic_id=7436&forum=8&post_id=37326#forumpost37326
http://www.matzmtok.com/blog/2007/07/flash%E3%81%8B%E3%82%89php%E3%81%B8%E3%83%90%E3%82%A4%E3%83%8A%E3%83%AA%E3%83%BC%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E9%80%81%E4%BF%A1%E3%81%99%E3%82%8B/

これの使い方、もしくは他に良い方法があれば教えてください
37 :Now_loading...774KB2011/04/20(水) 15:40:22.83 ID:lGNTmRbT
>>35
普通に1番目にヒットするココじゃだめなのか?
http://www.kuma-de.com/blog/2010-10-07/2352
38 :352011/04/20(水) 15:51:33.70 ID:nVXrMEHW
>>37
ありがとうございます、ちょっとやってみます
45 :352011/04/20(水) 19:32:45.69 ID:nVXrMEHW
>>37
ダメでした
・そのまま動かしてもエラーでダメ
・エラーの内容からして、そのままコピペしてゴミとって動かしたところでダメな感じ、つまりは修正前提
・どうもphpに投げてない、phpでとにかくアクセスがあったらデータが有る無し関わらずサーバーでファイルを作るように修正したけど、そもそも投げてない

multipartじゃなく、データだけ投げる→サーバーphpで受ける→ファイル作るまでは出来てます
もっと簡単にmultipart/form-data送信出来るものがいいです
46 :Now_loading...774KB2011/04/20(水) 19:49:56.66 ID:35U0M/DQ
47 :Now_loading...774KB2011/04/20(水) 19:51:34.05 ID:35U0M/DQ
ってごめん、>>35で出てたんだな
62 :352011/04/22(金) 13:48:41.66 ID:pw/IH+gY
とりあえずmultipart/form-dataを送信する事が出来ました
アドバイスくれた方々、ありがとうございました

やりたいことは完全にクリア出来たので必要ないと思うのですが、>>35の後者のリンク先の件
自分の理解不足かもしれないので、もう少し試してみようと思ってます
40 :Now_loading...774KB2011/04/20(水) 15:58:41.76 ID:lGNTmRbT
訂正
var zorome_max:int = 1111111111;//int 型が約21億までのため、10億の桁まで入力。

for(i = 11; i > zorome_max; i = i * 10 + 1) if( hensu % i == 0 ) break;
if(i <= zorome_max) zorome = true;
41 :Now_loading...774KB2011/04/20(水) 16:03:42.37 ID:lGNTmRbT
さらに訂正
var zorome_max:int = 1111111111;//int 型が約21億までのため、10億の桁まで入力。

for(i = 11; i > zorome_max; i = i * 10 + 1) if( hensu / 10 < i && hensu % i == 0 ) break;
if(i <= zorome_max) zorome = true;
43 :Now_loading...774KB2011/04/20(水) 18:52:54.92 ID:qz+HpYlF
文字列操作でJavaの
String.format("xxxx") みたいなことできる?
String.format("%05d",hoge)で0揃えをしたいです。
44 :Now_loading...774KB2011/04/20(水) 19:11:30.13 ID:35U0M/DQ
>>43
replaceに目的に合った正規表現渡す…とかかな
48 :Now_loading...774KB2011/04/21(木) 00:14:02.57 ID:Lv75Mh5+
>>43
俺は自分で関数作った
50 :Now_loading...774KB2011/04/21(木) 13:26:22.68 ID:MYoX4foQ
Base64Encoderってどこにあるの?
51 :Now_loading...774KB2011/04/21(木) 13:34:29.58 ID:eUvCqZz5
>>50
俺が前つかったときはこうした気がする
http://hfm-kenchan.com/Lesson/log_qa/D0805231.htm
55 :Now_loading...774KB2011/04/21(木) 18:41:32.43 ID:MYoX4foQ
>>51
できた!ありがとう
53 :Now_loading...774KB2011/04/21(木) 18:13:03.92 ID:r8rIxlhK
ムービークリップの画像合成について質問があります。長文ですいません。
(2回に分けて投稿します)
Flashでキャンバスに描いた円をムービークリップのシンボルに変換しました。
これをムービークリップを継承した自作クラスと関連付けしています。
このクラスで画像データを読み込んでいます。

やりたいのは、最初にシンボルに変更した円の内部にだけに画像を表示する必要があります。
円より画像の方が大きいので、クッキーの型抜きのような感じになると思います。
画像表示までは出来るのですが、円内のみに表示する方法がわかりません。
お手数ですがご教授ください。
ActionScript3.0
59 :Now_loading...774KB2011/04/22(金) 01:39:27.25 ID:UVDvRvDE
>>53
後半読んでないけど、そういう用途ならDisplayObject.mask使えばいんじゃないの?
61 :532011/04/22(金) 12:34:54.03 ID:dAJtcPQl
>>59,60
ありがとうございます。 マスクで簡単に実装ができました♪
54 :Now_loading...774KB2011/04/21(木) 18:14:30.73 ID:r8rIxlhK
コードの一部
public class McImg extends MovieClip{
//コンストラクタ
public function McImg(cUser:UserData) {
  m_loader.load(new URLRequest(m_cUserData.strImgUrl));
  m_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, coHabdler);
}

//画像をロード後に呼ばれる
public function coHabdler(evt:Event){
  var bmd : BitmapData = new BitmapData(m_loader.width,m_loader.height);
  bmd.draw(m_loader);

  var bmd1 : BitmapData = imageSizeCompressor(bmd,100,70);
  var bm:Bitmap = new Bitmap(bmd1);
  this.addChild(bm);
}
}
56 :Now_loading...774KB2011/04/21(木) 20:20:16.71 ID:MHdS+Pvi
Web用途ではないのですが質問させて下さい。
今までDirecterでスタンドアロンのコンテンツを作っていたのですが、
お客さんの要望によりFlashで制作することになりました。

フルスクリーン表示をさせたいのですが、
普通にフルスクリーン表示にすると、中のコンテンツの解像度が変わるので
中のコンテンツのサイズを変えることなく、
背景だけを全画面表示させたいのですが、可能でしょうか?

例えばコンテンツのサイズが800×600pxの場合、どのサイズのモニターで見ても
背景は全画面表示(黒のベタ)で中央に800×600pxのコンテンツを表示させるこということをやりたいです。


どなたか、ご回答をよろしくお願いします。
57 :Now_loading...774KB2011/04/21(木) 21:36:22.21 ID:YrzotWkf
>>56
出来るよ
フルフラッシュサイト、リキッドレイアウト、swffitなどで検索してみそ
58 :Now_loading...774KB2011/04/21(木) 22:01:13.71 ID:MHdS+Pvi
>>57
説明が足りませんでしたが、デスクトップのスタンドアロン(プロジェクター出力)で
使いたかったのです。どうやらfscommandというプロジェクタ専用命令で
何とかできそうです。ありがとうございました。
63 :Now_loading...774KB2011/04/22(金) 17:53:19.02 ID:pw/IH+gY
Adobe Flash Professional CS5 AS3.0

下記をタイムラインに記述している時はエラーは出なかったのですが、.asファイルに書いたら
「1046:型が見つからないか、コンパイル時定数ではありません:IOErrorEvent」って出るようになりました。
info.addEventListener(IOErrorEvent.IO_ERROR,LoaderInfoIOErrorFunc);
 function LoaderInfoIOErrorFunc (event:IOErrorEvent):void {
 trace ("ファイル入出力のエラー");
}

これ以外の処理は正常に動いています、何がいけないんでしょうか?
65 :Now_loading...774KB2011/04/22(金) 22:23:38.57 ID:BB8sXnDJ
AS2.0で教えてください。
テキストフィールドの書式を変えようと思い、以下のように書くと
そのとおりになるのですが
var mainText_fmt: TextFormat = new TextFormat();
mainText_fmt.color = 0x0000ff;
mainText_fmt.size = 50;
myArticlie.v_articlie_txt.setNewTextFormat(mainText_fmt);
tmpText = "たらこはとてもおいしいです";
myArticlie.v_articlie_txt = tmpText;

書式を変えるのを最初の三文字だけに限定しようと以下のように
範囲を指定するとなぜか何もおきません。

myArticlie.v_articlie_txt.setNewTextFormat(0,3,mainText_fmt);

ちなみにCSではなく、フリモ3というので作っています。
ノイローゼ気味です。よろしくお願いします。
66 :Now_loading...774KB2011/04/22(金) 22:24:35.53 ID:vBNnf20h
究極まで削ってみた、依然エラー出る
これのどこが悪いですか?
package {
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.utils.ByteArray;
import flash.net.FileReference;
import flash.events.Event;
import flash.net.URLRequest;
import flash.net.URLRequestMethod;
import flash.net.URLLoader;
import flash.net.URLVariables;
import flash.utils.ByteArray;
import flash.net.navigateToURL;
public class Main extends Sprite {
public var LoadFileName:String = "fuga.swf";
public var url:URLRequest = new URLRequest(LoadFileName);
public var loader_obj:Loader = new Loader();
public var info:LoaderInfo = loader_obj.contentLoaderInfo;
public function Main() {
loader_obj.load(url);
info.addEventListener(Event.OPEN,LoaderInfoOpenFunc);
}
public function LoaderInfoOpenFunc(event:Event):void {
trace ("読み込みを開始した");
}
}
}
67 :Now_loading...774KB2011/04/22(金) 22:31:56.98 ID:iL9tgxZH
>>65
tmpText = "たらこはとてもおいしいです";
myArticlie.v_articlie_txt = tmpText;
myArticlie.v_articlie_txt.setNewTextFormat(0,3,mainText_fmt);

こうするとか?

>>66
エラーも書いてくれた方が答えやすいと思う
推測してみるに、

>public var info:LoaderInfo = loader_obj.contentLoaderInfo;

これをコンストラクタの中で
info = loader_obj.contentLoaderInfo;
てやってみるとか
68 :Now_loading...774KB2011/04/22(金) 22:34:03.59 ID:BB8sXnDJ
>>67
ありがとうございます。さっそくやってみます。
69 :652011/04/22(金) 22:41:07.46 ID:BB8sXnDJ
>>67さま

やってみましたが、だめでした…
アドビのAS2.0のレファレンスでもこの書き方なのですが、
だめだということは、きっとフリモ3がだめなんでしょうね…
安物買いの銭失いでしょうか…
70 :Now_loading...774KB2011/04/22(金) 22:53:03.34 ID:iL9tgxZH
>>67
てかsetNewTextFormatってFlashLiteの関数か
フリモのサイト見たらLiteのエクスポートは最新アップデータに更新する必要があるとか
書いてあるけど
73 :652011/04/22(金) 23:01:14.00 ID:BB8sXnDJ
>>70さま
FlashLiteのつもりではないのですが、
念のためアップデータに逝ってみます。
ありがとうございます。
76 :662011/04/23(土) 00:07:30.16 ID:BcZMIMd0
>>67
ありがとうございます

いろいろやってみて、ありえないぐらい何やってもダメになったので
以前に自分で作ったクラスで、正常に動くもののasをコピーしてパブリッシュしてみたところ
同じLoaderでエラーが出てます、どうも自分の環境に問題あるようです
79 :Now_loading...774KB2011/04/23(土) 00:28:45.42 ID:MDpbqqmg
>>77
>>66のimportにLoaderないじゃん
71 :Now_loading...774KB2011/04/22(金) 22:55:45.49 ID:/CYSnWfC
そもそも2.0でimportとかいう概念あったっけ?
つかプロトタイプベースが基本でクラスの概念ねーんじゃなかった?
72 :Now_loading...774KB2011/04/22(金) 22:58:39.00 ID:/CYSnWfC
クラス使いたいならなんで2.0でやってるかわからん。
ガラケーやりたいならなんでクラス使おうとしてるかわからん。
75 :Now_loading...774KB2011/04/22(金) 23:53:48.66 ID:GZM713IS
CS3, AS3で質問です。 bのボタンにaddEventListenerして
その後removeしてるんですがremove出来ていません。
この場合はどうしたらremoveできるんでしょうか?

b.addEventListener( MouseEvent.CLICK, test("Click") );
b.removeEventListener( MouseEvent.CLICK,arguments.callee );

function test(a:* ){ return function(e:MouseEvent):void {
trace (a);
}}
77 :662011/04/23(土) 00:26:05.21 ID:BcZMIMd0
勘違いしてました
Loaderは.asで使うのはこれが初めてです
他の正常にパブリッシュ出来るのはURLLoaderでした

var loader_obj:Loader = new Loader();
タイムラインにこれを記述してパブリッシュしてもエラーは出ませんが、
.asに記述するとスクリプトチェックでは異常なし、パブリッシュ時に
「型が見つからないか、コンパイル時定数ではありません」「未定義である可能性が高いメソッド Loader の呼び出しです。」となります

なんででしょう?
82 :662011/04/23(土) 01:11:54.38 ID:BcZMIMd0
さらにimport flash.display.LoaderInfo;も追加して見たところエラーが消えました
みなさんありがとうございました

タイムラインに書いたら問題ないのに、asに書いたらきっちりimportしないとダメなんですね
ネットでぐぐって独学でやってるので基本の所が抜けてるようです、お騒がせしました
84 :Now_loading...774KB2011/04/23(土) 01:14:23.65 ID:26H7+Rx4
おっと入れ違いか
>>82
Flash Developeつかってみ
ハイパー便利だから
83 :Now_loading...774KB2011/04/23(土) 01:12:52.92 ID:26H7+Rx4
それで解決はしたの?

タイムラインに書く場合においては
ttp://fumiononaka.com/TechNotes/Flash/FN0607003.html
の1番下の画像に書いてあるパッケージのクラスは自動的にインポートされるから書く必要がなかったというわけだ
85 :662011/04/23(土) 07:50:34.13 ID:BcZMIMd0
クラス宣言の後、コンストラクタの前の変数の宣言のところで、htmlからデータを受けとりたくて
public var flashVars:Object = this.loaderInfo.parameters;
って書きました
おなじみの「未定義である可能性が高いプロパティ LoderInfoに静的型Classの参照を使用してアクセスしています。」って出ました

import flash.display.LoaderInfo;
これでダメだったので下記に変えたのですが、依然エラーが出ます、import するものが足りないですか?
import adobe.utils.*;
import flash.accessibility.*;
import flash.display.*;
import flash.errors.*;
import flash.events.*;
import flash.external.*;
import flash.filters.*;
import flash.geom.*;
import flash.media.*;
import flash.net.*;
import flash.printing.*;
import flash.system.*;
import flash.text.*;
import flash.ui.*;
import flash.utils.*;
import flash.xml.*;


>>83-84
ありがとうございます、勉強になります
86 :Now_loading...774KB2011/04/23(土) 08:13:56.66 ID:26H7+Rx4
>>85
デフォルトぜんぶimportしたんかい…

そのエラーメッセージそのままコピペした?
だったら
LoderInfo.なんたらかんたら()
ってスタティックメソッドつかってない?
綴りが違うから勝手に変なクラス使うなっていわれてんじゃね?
87 :662011/04/23(土) 09:10:44.63 ID:VlcUjZJB
>>86
そのままコピペじゃなく手で書きました、打ち間違いです
とりあえず解決しました
ありがとうございました
88 :Now_loading...774KB2011/04/23(土) 12:29:34.61 ID:QGGqFAbX
メソッドにイメージファイルのURLとint値を渡して、
予め用意した配列のint番目に空であれば新しいloaderを用意して
イメージファイルを代入して、画面に表示しようとしているのですが、
下記の通り書いたのですが、画像が画面に表示されません。
トレースしたところ、下部でメソッドを呼び出していますが2回目に入ったときに
重複しているはずの配列要素が、undefinedになっていました。
おそらく配列の使用方法が間違っているかと思われるのですが、一体どこが悪いのでしょうか、、、?

var thumbs:Array = new Array();
function setThumbnail(imgUrl:String, num:int) {
if(num>=0) {
trace(thumbs[num]);
if(thumbs[num]) {
thumbs[num] = new Loader();
var url:URLRequest = new URLRequest(imgUrl);
thumbs[num].load(url);
addChild(thumbs[num]);
}
}
setThumbnail("http://.xxx.jpg",0);
setThumbnail("http://.xxx.jpg",0);
91 :Now_loading...774KB2011/04/23(土) 13:16:13.79 ID:QGGqFAbX
thumbs[num]の中身が入っているかの条件のつもりです。
!を付けるのを忘れてました・・・
92 :Now_loading...774KB2011/04/23(土) 15:44:12.75 ID:33yOFtpi
Arrayって初期の要素数ゼロじゃなかったっけ
なんで1回目はundefinedじゃないんだろう
93 :Now_loading...774KB2011/04/23(土) 15:53:12.12 ID:WixSdGpM
length使えばいいんじゃないの?
てかまず中括弧の数があってないからよくわからん
95 :Now_loading...774KB2011/04/23(土) 23:23:49.29 ID:zX9voi5K
例えば以下のような都内の白地図があったとします。

ttp://www.freemap.jp/japan/city_tokyo.html

テキストファイル(data.txtなど)に、

shinjuku=1,shibuya=0

とあったとすると、新宿区のところだけに色を付けたいと考えています。
この場合、どのような手順で実装すれば良いでしょうか?

(考えられる手順としては、区の領域をオブジェクト化して、AS側で背景色を指定するのかなぁ、と思うのですが……)

ご教示よろしくお願いします!
96 :Now_loading...774KB2011/04/23(土) 23:28:38.29 ID:26H7+Rx4
矩形以外はなぁ…
それぞれオブジェクト化するしかないんじゃん?
他の人の意見も聞きたいが
97 :952011/04/24(日) 02:13:25.95 ID:2BFOGJQg
>>96
鉛筆ツールでエリアをなぞってオブジェクトにして頑張りました><
先ほど初めてActionScript3.0をさわったので手探りの状態でしたが、いろいろググッてみて解決しました。
ご回答ありがとうございます!
98 :Now_loading...774KB2011/04/24(日) 02:17:17.08 ID:RcouaV1m
AS3の初心者です。
1個のボタンを押すごとに動作を変え、3回押したら元に戻るという処理をしたいのですが、
以下のような処理で問題はないでしょうか?別のやり方や、もっとスマートな書き方があったら
教えてください。

sw:int = 0; //切り替え処理用の変数

push_btn..addEventListener(MouseEvent.CLICK,doClick);

function doClick(e:MouseEvent):void {

switch(sw) {

case 0:
1回目のボタン処理();
sw++;
break;

case 1:
2回目のボタン処理();
sw++;
break;

case 2:
3回目のボタン処理();
sw=0;
break;
}
}

99 :Now_loading...774KB2011/04/24(日) 02:19:35.77 ID:RcouaV1m
変数の宣言で文字が抜けてました。以下に訂正します。

var sw:int = 0; //切り替え処理用の変数
100 :Now_loading...774KB2011/04/24(日) 08:18:28.43 ID:0+DI1ThH
いいとおもうよ
switch(sw%3){}
にしたらsw++はswitch文の外に出せるけどどうでもいいね
101 :Now_loading...774KB2011/04/24(日) 10:44:13.81 ID:vck1UHqk
0・1の時同じ動作ならそれを「default :」に書いたりするとか
あと>>100の書き方にすればsw=0;は不要になるね
102 :Now_loading...774KB2011/04/24(日) 11:12:05.23 ID:RcouaV1m
>>100-101
ありがとうございます。
調べてみます。
103 :Now_loading...774KB2011/04/24(日) 17:35:15.33 ID:AA0IVUDs
敵のモンスターが徘徊するような行動をプログラムしたいのですが、どのようなアルゴリズムにしたら良いのでしょうか
参考になるサイトがあれば教えて下さい。よろしくお願いします
111 :Now_loading...774KB2011/04/24(日) 22:48:27.01 ID:cCHogyoo
>>103
スレ違い。
112 :Now_loading...774KB2011/04/25(月) 01:22:07.88 ID:FpB30UuA
131 :Now_loading...774KB2011/04/25(月) 22:15:54.27 ID:VvavBfau
>>111-112
ありがとうございます。失礼しました
そちらできいてみます
104 :Now_loading...774KB2011/04/24(日) 19:26:48.33 ID:E+oAJuGF
flashCS5、AS3です。
年月日の情報が2つあって、
古い方が、"2011-03-10"というString型で保存されているとします。
そのとき、今日の日付を取得して、古い日付との差の日数を取得したいのですが、年によって月の日数が異なったりするのでうまくできません。
どう考えればいいんでしょうか?
詳しい方教えてください。
105 :Now_loading...774KB2011/04/24(日) 19:36:57.43 ID:vck1UHqk
>>104
Dateのインスタンスを今日の日付と古い日付の2つ作って、ミリ秒で差を取って日数に変換するとか?
106 :Now_loading...774KB2011/04/24(日) 20:54:43.92 ID:E+oAJuGF
>>105
ありがとうございます。差についてはなんとなくできそうです。

そしてまたいきづまったんですが、
ミリ秒から日付を特定するにはどうしたらいいんでしょうか。
古い日にちと新しい日にちの間にある、特定の一日の日付の出し方ができそうでできません。
107 :Now_loading...774KB2011/04/24(日) 21:45:02.60 ID:fvEIN9pz
>>106
一般的には、差分のミリ秒÷(1000ミリ秒×3600秒×24時間)で、
日単位の数値が出てくる。
変な端数が出てくる場合は、今日の日付取得する際、時や分や秒まで
Dateから導いていないかを確認すること。
108 :Now_loading...774KB2011/04/24(日) 21:57:46.80 ID:E+oAJuGF
>>107
ありがとうございます。
何度もすいませんが、
古い年月日と今日の間のある日にちを、
YYYY年MM月DD日に変換することは可能ですか?
ミリ秒/1000/60/60/24で1970年1月1日からの日数を算出することができますが、
年になると、
上を365一律で割ると正確な西暦にならないので、悩み中です。
109 :Now_loading...774KB2011/04/24(日) 22:23:44.39 ID:vck1UHqk
ミリ秒からDate作れるからそこから日付取ればいいんじゃないか

こんなのリファレンス見りゃ分かる程度のことだけど
113 :Now_loading...774KB2011/04/25(月) 02:50:32.87 ID:2ba3osOR
最近ようやく、「addEventListener(Event.ENTER_FRAME,doFunction)」を暗記で入力できるようになったよ。
記憶力が弱いと何をやるにしても辛いね。
114 :Now_loading...774KB2011/04/25(月) 03:33:40.50 ID:Oaf+SnZ5
cakephpというphpフレームワークで
出力されているurlにswfでリンクさせる
方法ってgetURLとかで簡単にリンクできますか?

ヘッダー、フッター、サイドメニューをphpのテンプレートで出力し、
コンテンツ部分をiframe(ファイル名を十進数にして出力)で
表示させてるらしいのです。
テンプレートでのphpは以下のような記述です。
-------------------------------------------
<?php global $directory;
$url = $this->Html->url(array('controller' => 'common',
'action' => 'ヘッダー、フッター、サイドバー出力.ctp'),
array('escape' => false));
?>
<a href="<?php echo $url;?>/iframeurl:<?php echo bin2hex($directory.'aaaa/bbbb.html');?>">リンク</a>
----------------------------------------------------
上記で出力されるページを、
swf内のボタンでactionscriptでリンクさせたい場合、
以下のように単純な指定でリンクすることはできますか?

on (release) {
getURL("http://ドメイン/ctp格納ディレクトリ/ヘッダー、フッター、サイドバー出力.ctp/iframeurl:<十進数で出力されたaaaa/bbbb.html>");
}
117 :Now_loading...774KB2011/04/25(月) 13:47:46.90 ID:2qo57wYw
>>114
それはcakePHP+HTMLのお作法の話だからここで聞いてもしゃーない。
しかるべきスレに移動すべし。
http://hibari.2ch.net/test/read.cgi/php/1297860755/
115 :Now_loading...774KB2011/04/25(月) 10:55:20.56 ID:n2h5Etl0
as3.0標準の乱数に初期値ってありますか?
常に同じ乱数列を出したい場合はどうすればよいでしょうか
116 :Now_loading...774KB2011/04/25(月) 11:14:54.90 ID:kDIFslil
>>115
無いから自分でそういう乱数のプログラムを作るしかないと思う
以前俺もそれやりたくなって、「ActionScript 乱数」とかでググったら色々あったよ
118 :Now_loading...774KB2011/04/25(月) 15:48:10.03 ID:SEqNlBV+
AIRでアプリを作っているのですが、
重たい処理を行っている最中にUIの描画が止まってしまいます。
FlexでないのでcallLaterも使えず悩んでいます。
並列処理を行えば解決できそうなのですが、どうしたらいいでしょうか?
127 :Now_loading...774KB2011/04/25(月) 20:14:30.24 ID:2qo57wYw
>>118
並列処理ならこれが超おすすめ
ttp://www.libspark.org/htdocs/as3/thread-files/document/

あるいは、ゲーム制作のお作法を見習って、「ゲームループ」で設計しなおすとか。
(1フレームを演算フェーズ、描画フェーズに分け、処理が重たくなったなら
 描画フェーズを据え置き)
128 :Now_loading...774KB2011/04/25(月) 20:54:17.36 ID:IKVfX3fy
>>118
そうめんが実際そうだけど、並列処理は不可能なので擬似並列するしかない。
やり方としては処理分散させて、setInterval、EnterFrameで回すとか。
140 :1182011/04/26(火) 11:16:42.44 ID:3SpCmN04
>>127-128
ありがとうございます
119 :Now_loading...774KB2011/04/25(月) 15:56:59.36 ID:RG5xQa4v
Flash始めたばかりの者です。
こちらでお助けいただけませんでしょうか?
環境は CS4 AS3.0 です。

ttp://www.kanebo-cosmetics.jp/lavshuca/
↑このようなリンクの動作をさせたいのですが

↓マウスを当てるとロールオーバーの動作をし続けてしまいます…
ttp://2sen.dip.jp/cgi-bin/upgun/up1/source/up57273.zip

ヒントだけでもお願いできませんでしょうか…
120 :Now_loading...774KB2011/04/25(月) 16:29:02.89 ID:chuF1x+T
DataGridのItemEditorに
カスタムコンポーネントを使用し、
カスタムコンポーネントからは
カスタムイベントをdispatchするようにし、
そのイベントをDataGridで
キャッチするようなものを作ろうとした場合、
FlexでXMLを使って記述していくのは難しいのでしょうか?
ASでガリガリ書いていくほうがよいのでしょうか?

説明がヘタクソでホントに申し訳ないのですが、
やりたい事は、DataGridの、あるカラムの
ItemEditorにTextInputを使用します。
そして、TextInputをダブルクリックしたら
小画面を表示して、小画面で入力(もしくは選択)したデータを
親画面の(DataGridに表示している)TextInputに
表示してあげたいのです。
DataGridではTextInputに入力されたデータを元に
別カラムの情報を更新するといったような形を取りたいと思います。

参考になりそうなサイトを見つけることができなかったので、
もしサイトもご存知であれば教えて頂けないでしょうか。

よろしくお願いします。
121 :Now_loading...774KB2011/04/25(月) 17:20:46.05 ID:cQlpbIHC
すみません。
Flash9でAS3を使ってます。
mc内に、b_1、b_2、b_3というMCが横に並んで配置してあり、
これをswfを読み込むたびに位置をランダムに替えたいと思っています。
下記のスクリプトを書いたのですが、Arrayに暗黙の型変換していると言われて
動かないです…。
どなたかご教授ねがいます!

本文長過ぎだそうなので下記にスクリプトかきます
124 :Now_loading...774KB2011/04/25(月) 18:31:51.96 ID:kDIFslil
>>120
どっちでもできるとは思う
MXMLで書くにしても<mx:Script>とかでAS書くしかなさそうだけど

>>121
>var intrnd:Array = Math.floor(Math.random()*List.length);
ここじゃね?
NumberなのにArrayにしようとしてるし

>>124
とりあえずtrace(dataList[1][0])ってやって中身確かめてみたら?
125 :1232011/04/25(月) 19:22:12.84 ID:IMkUg9vw
>>124
traceは自分がテキストに書いた文字列です

タイトル\tmail@hoge.jp\t1
をタブで分割した最初の要素「タイトル」が表示されます
123 :Now_loading...774KB2011/04/25(月) 17:52:23.07 ID:Xa01BtW9
Adobe Flash Professional CS5

↓このページ見て文字列を分割して配列に格納するとこまで出来ました
http://itpro.nikkeibp.co.jp/article/COLUMN/20080423/299854/?ST=develop&P=3

var moji:String = dataList[1][0];
しかし↑のように変数に格納しようとすると
「Main.as、行 71 1188: クラス String への代入が無効です。」とエラーが出ます。
何がいけないんでしょうか?
126 :Now_loading...774KB2011/04/25(月) 19:39:56.30 ID:kDIFslil
>>125
>>123のリンク先が会員用で見れないからアレだけど
String(dataList[1][0])とかdataList[1][0].toString()みたいにして
String型に変換してみるとかかな〜
129 :Now_loading...774KB2011/04/25(月) 21:34:22.48 ID:IMkUg9vw
>>126
//分割したデータを扱う配列を準備
var dataList:Array;
//読み込み完了後の処理を作成
loader.addEventListener(Event.COMPLETE,traceData);
function traceData(event:Event){
//改行記号で分割
dataList = loader.data.split("\r\n");
//分割されて作成された配列の個々のメンバーをタブ記号で分割
var tabSplitClosure = function(item,index,arr){
arr[index] = item.split("\t");
}
dataList.forEach(tabSplitClosure);
//結果を確認
trace("配列の長さは," + dataList.length);
trace("1行目,0列目のデータは," + dataList[1][0]);
trace("2行目,2列目のデータは," + dataList[3][2]);
}

こんな感じです。traceではちゃんと見れます。変数に代入できません。
130 :Now_loading...774KB2011/04/25(月) 22:09:58.33 ID:e6KSBub0
>>129

>>126の後半はためしてみたの?
132 :Now_loading...774KB2011/04/25(月) 22:19:38.29 ID:IMkUg9vw
>>130
前者のエラー
1067: 型 String の値が、関連しない型 Class に暗黙で型変換されています。
1188: クラス String への代入が無効です。

後者のエラーです
1188: クラス String への代入が無効です。

いろいろとググってみてるのですが、普通に代入出来る前提でとほほです
133 :Now_loading...774KB2011/04/25(月) 22:20:43.43 ID:kDIFslil
>>129
今ちょっと>>129をコピペしてプログラム作って、traceDataの中で代入してみたけどエラー出なかったぞ
何かクラスの名前とかタイプミスしてんじゃね?
134 :Now_loading...774KB2011/04/25(月) 22:35:37.56 ID:IMkUg9vw
>>133
・・・
//結果を確認
trace("配列の長さは," + dataList.length);
trace("1行目,0列目のデータは," + dataList[1][0]);
trace("2行目,2列目のデータは," + dataList[3][2]);

var TitleName:String = dataList[1][0];
↑これを入れると自分のとこではエラーになります
}

自分の凡ミスですかね、もう一回最初からやってみます
135 :Now_loading...774KB2011/04/25(月) 23:07:51.06 ID:IMkUg9vw
自分のミスだったようで、最初からやったら普通に代入できました、お騒がせしました
137 :Now_loading...774KB2011/04/26(火) 01:53:59.92 ID:QStY0UH2
>>138
hoge + "."→hoge + "\\."
やってみたらこれでいけた
138 :Now_loading...774KB2011/04/26(火) 02:18:52.86 ID:HVwZps6d
hogeってどこで宣言してるの
139 :Now_loading...774KB2011/04/26(火) 08:11:26.16 ID:qi6RyZeR
>>137
ありがとうございます!!
エスケープ2つ必要なんですね・・・
1個しか試してませんでした・・・・

>>138
申し訳ありません、誤植でした。気をつけますorz
141 :Now_loading...774KB2011/04/26(火) 18:12:39.06 ID:aHGflNKp
Flexのプリローダーについて質問!

公式リファレンスにある、
Flex の標準コンポーネントは一切使用しないでください
っていうのは、具体的にどれを使っちゃだめなんですか?

import mx.*のやつ?
import mx.controls.*のやつ?
142 :Now_loading...774KB2011/04/26(火) 18:46:13.96 ID:1JNgoQCa
mx.preloadersがあるから、mx.*はあり得んとおもう。
あと、mx.eventsは使える。
spriteとかでシンプルにやるやつじゃないと
プリローダの意味が無いと思うんだが。
145 :Now_loading...774KB2011/04/27(水) 01:37:40.01 ID:YQ7IJJA8
>>142
mx.effectとかは?
フェードとかグローなんかを使いたいなと思ってるんだけど・・・
150 :Now_loading...774KB2011/04/27(水) 11:48:47.50 ID:dRvN9004
>>145
ごめん、そこまで確認してない。
とりあえず、やってみたらいいと思うよ。30分もあれば確認出来るでしょ。
143 :Now_loading...774KB2011/04/26(火) 20:20:31.52 ID:iwnx8Hkw
WinXP Home + CS4です。
音声ファイルを読み込んで、クリック時に鳴らす、ということをしたいのですが
Sound.loadで読み込めるのはMP3のみ、とのことです。
しかしMP3ではSound.play()してから実際に音が鳴り始めるまでの
時間(レイテンシ)が長すぎます。
どうにかしてWAVをSound.loadで読み込ませるか、あるいはMP3でも
レイテンシを短くする方法があったら教えてください。
144 :Now_loading...774KB2011/04/26(火) 21:45:18.89 ID:kgsSXPI+
すぺのpublic変数はprivateにしてsetter/getterを設定したほうがいいのでしょうか?
オブジェクト志向的に外から直接いじれちゃうってよろしくないの?
146 :Now_loading...774KB2011/04/27(水) 03:31:27.49 ID:OgL7x2iE
共有オブジェクト(solファイル)が保存される場所について質問です
自分で作ったswfをマイドキュメントに保存して実行すると
C:\Documents and Settings\ユーザー名\Application Data\Macromedia\Flash Player\
#SharedObjects\localhost\Documents and Settings\ユーザー名\My Documents\
というとんでもなく深い階層にsolファイルが保存されていました。
localhostフォルダに直接solファイルが保存されるようにするには
SharedObject.getLocal();の第2引数をどう指定すればいいんですか?
環境はWindowsXP+FLASH8です
148 :Now_loading...774KB2011/04/27(水) 09:49:49.54 ID:es9o0vv1
>>146
ttp://bit.ly/eTmht4
をよーく読んでみよう。
ファイルの指定は「/」からになってるよね?
ドライブ名がないのはなぜだと思う?

それは、[SOL_PATH]/ の意味だたら。
[SOL_PATH]はFlashが決めた場所で、ユーザーには手出しできない。

どうしてもというなら、ByteArray.readObject()を調べてみて。
162 :Now_loading...774KB2011/04/27(水) 21:00:44.70 ID:OgL7x2iE
>>148
"/"にしたらいけました!ありがとうございます
147 :Now_loading...774KB2011/04/27(水) 03:38:52.99 ID:uOM3nlXH
ActionScript3.0の物理エンジンって色々あるようですが今どれが一番いいのでしょう?
シェアウエアの方が良いのかな
149 :Now_loading...774KB2011/04/27(水) 09:53:10.94 ID:y2Rrdqac
>>147
描画機能もついてるしふつうにBox2dにしたら?
2.1はあんま資料ないけど
158 :Now_loading...774KB2011/04/27(水) 18:38:08.30 ID:uOM3nlXH
>>149
ありがとうございます!
152 :Now_loading...774KB2011/04/27(水) 14:59:51.19 ID:Fx3+Ss1t
Flash Pro CS5 AS3.0
ライブラリに登録した画像をステージに配置したい

ライブラリに「キャラクター」名でムービークリップを作成しました
AS3.0でステージに表示したい場合は何て書いたらいいですか?
153 :Now_loading...774KB2011/04/27(水) 15:29:17.55 ID:ILkLri+x
>151
initイベントだとロード完了してないから
completeイベントに変えた方が良いかも

>152
var 変数名:MovieClip = new キャラクター();
addChild(変数名);
154 :Now_loading...774KB2011/04/27(水) 15:46:29.59 ID:Fx3+Ss1t
>>153
変数名だけ半角英字に変えて、あとはそのまま貼りつけたのですが
「1180: 未定義である可能性が高いメソッド キャラクター の呼び出しです。」って出ます。
155 :Now_loading...774KB2011/04/27(水) 15:54:59.55 ID:WAUPDyWT
>>154
キャラクターってクラス名なの?
156 :1542011/04/27(水) 15:59:45.54 ID:Fx3+Ss1t
>>153>>155
ぐぐってみたらリンケージ設定しろって書かれてたので、設定したら>>153でいけました
ありがとうございました
157 :Now_loading...774KB2011/04/27(水) 18:28:59.46 ID:Fx3+Ss1t
HTMLのobjectタグにallowFullScreenパラメーター追加して、AS3.0に↓のように書きました
PlayControlPanel.BtnScreen.addEventListener(MouseEvent.CLICK, BtnScreenClick);
function BtnScreenClick(event:MouseEvent):void {
stage.displayState = StageDisplayState.FULL_SCREEN;
}

同じように他のボタンは機能してるんですが、フルスクリーンだけ機能してないです
どこに間違いがあるんでしょうか?
159 :Now_loading...774KB2011/04/27(水) 19:52:16.77 ID:pTxwDSnR
AS3,XP,CS4です。TextInput内の文字の属性設定方法が分かりません。
txtTというTextInputを用意し、
import fl.controls.TextInput; txtT.text = "あいうえお"; としました

これで試しに文字の大きさを変えるために、txtT.setStyle("fontSize", "15"); と
してもエラーも出ず変化ありません。

またTextFormatは使えませんでした。目標は色とサイズとフォント種類を変えること
です。

ググっても分かりません。アドバイス願います。
161 :Now_loading...774KB2011/04/27(水) 20:58:43.65 ID:WAUPDyWT
>>159
とりあえず、こことか読んでその通りにやっても出来なかったら質問して
ttp://hakuhin.jp/as3/text_field.html
166 :1592011/04/27(水) 22:47:32.79 ID:pTxwDSnR
>>161
レスどうも。まずフォントとサイズを指定するため
txtT.text = "あいうえお";
var format = new TextFormat();
format.font = "MS ゴシック";
format.size = 14;
txtT.setTextFormat(format,0,4);//設定

としたところ、下のエラーが出ました。
 1061: 未定義である可能性のあるメソッド setTextFormat を、静的型 fl.controls:TextInput の
 参照を使用して呼び出しました。

そこでsetTextFormatを使用可能にするため、最後の行を下記の様にしたところエラーには
なりませんが何も変化しません。
txtT.textField.setTextFormat(format,0,4);

どうしたら良いでしょうか?
163 :Now_loading...774KB2011/04/27(水) 21:21:29.21 ID:uOM3nlXH
147です。
Box2dをダウンロードして展開し、サンプルのPhysTest.flaファイルをクリックすると

〜\Box2DFlashAS3 2.1a\Source\Box2D\Dynamics\b2World.as、行 871 1046: 型が見つからないか、コンパイル時定数ではありません : b2Fixture。
 
というエラーが出てしまいます
FLASHのCS4でもCS5でもエラーになります
CS4ではb2Fixtureの部分がVectorになります
サンプルファイルなので自分は手を加えていませんし、動作するはずなのですが…
何か間違っているのでしょうか?
164 :Now_loading...774KB2011/04/27(水) 22:11:18.80 ID:vvEnSv8L
クリックってのはコンパいるのことかな?
ライブラリのパスはもちろん通ってるよね?
168 :Now_loading...774KB2011/04/27(水) 23:11:53.25 ID:uOM3nlXH
>>164
http://www.ymori.com/fps2008/resume.pdf
ここを見るとflaファイルとライブラリが同じフォルダにあればいいとあり
またBOX2dのREADMEでも
//
To compile the demo:
//
Flash: extract Box2DFlashAS3 and open PhysTest.fla in Flash CS3 (9) and hit Ctrl+Enter.

と書いてあるので、そのままでいいのかと思ったのですが…
167 :Now_loading...774KB2011/04/27(水) 22:52:47.17 ID:y2Rrdqac
もうTextFieldつかったら…?
173 :159&1662011/04/28(木) 00:04:15.27 ID:7a0Gdnuc
>>167
setFocusさせたいのでTextInputを希望しています。
どうしてもダメな場合にTextFieldを使いたいです。

引き続きお願いします。
169 :Now_loading...774KB2011/04/27(水) 23:14:59.54 ID:uOM3nlXH
今、パブリッシュ設定を見直したところフラッシュプレイヤーがVer9になっており、
これを10にしたところ解決しました!
お騒がせして申し訳ありませんでした
170 :Now_loading...774KB2011/04/27(水) 23:24:34.80 ID:a37z10FM
>>169
あーなるほど
でも自分で何か作るようになる時にいちいちコピーするのあれだしパスは通したほうがいいよ
ライブラリ置き場作ってさ


2.1はb2AABBとかいうクラスはなくなったみたいだから注意
194 :1692011/04/28(木) 20:09:56.00 ID:BuDOALxf
>>170
一日遅れになりましたがありがとうございました
b2AABBクラスがなくなったというのを読んで別のエラーの原因もわかりました
171 :Now_loading...774KB2011/04/27(水) 23:25:35.88 ID:E7kSEOsh
AS3です。
var tempDate:Date=new Date(tempDate.time+1000*60*60*24);
という文を繰り返して、
都度、getDateとかすると
たとえば、4月30日、4月31日、5月1日、・・・と、4月31日というありえない日にちを出すんですが、
本来のカレンダーに存在するかどうかを判定するにはどうすればいいですか?



172 :Now_loading...774KB2011/04/27(水) 23:35:17.70 ID:ILkLri+x
monthは1月の場合0になるから
5月31日を4月31日だと思っているだけかと
174 :Now_loading...774KB2011/04/28(木) 00:17:20.08 ID:4HeLGX4q
>>172
その辺は注意してたつもりですが、もう一回確かめてみたところ、
下のような結果になります。
var kari_date:Date = new Date(2011,4,30);
var kari_month:int = kari_date.getMonth();

trace(kari_month);//4

var tugi_date:Date = new Date (kari_date.time+1000*60*60*24) ;
var tugi_month:int=tugi_date.getMonth();

trace(tugi_month);//4

var tugi_day:int=tugi_date.getDate();

trace(tugi_day);//31

どうなってるんでしょう。
175 :Now_loading...774KB2011/04/28(木) 00:18:22.44 ID:XgJqPvfP
AS3で相対パスに関する質問
new URLRequest("data.txt");等、相対パスでデータの取得をする際
ダウンロード実行前に絶対パスを求めることはできないのでしょうか。
ようはベースパスがわかればいいのですが、swfとhtmlのディレクトリが違ったり
html側のbaseタグやparamタグでベースが変更されていることがあるため
loaderInfo.urlを削るといった手法では対処できませんでした。
JavaScriptとの連携も取らないことが前提となっていて、どこに手を付けていいかわかりません。

取得するデータが画像ファイルだった場合は、取得が成功したときのみ
画像のloaderInfo.urlに絶対パスが入っていたので、Flashプラグイン側が
持っている情報だけでも絶対パスが求まるのかなと思い質問しました。
358 :Now_loading...774KB2011/05/05(木) 20:56:02.77 ID:e3134Z8X
>>356
回答ありがとうございます
> /image/ というディレクトリの名称はどこから得るのだろうか。
どこからも得られそうに無いので困っていますが、>>175の通り
ロードが成功するとloaderInfo.urlにフルパスが入っています
WindowsAPIで言うところのGetCurrentDirectoryが返すような値が
プラグイン側になければ不可能なはずですが、何とか取得できないでしょうか
359 :Now_loading...774KB2011/05/05(木) 22:01:26.24 ID:FpvSym1R
>>358
なんかと連携させることは考えた?
360 :Now_loading...774KB2011/05/05(木) 22:07:00.87 ID:e3134Z8X
>>358
HTMLにどんなコードが書かれていても関係なくアクセス先を求めたいので
HTML側との通信はあまり視野に入れていません
サイト構成を自分で構築できるのなら全部固定にしておく方が早いです
Flashプラグインが相対パスから絶対パスを求めるための基準にしているベースパスが取得したいのです
361 :Now_loading...774KB2011/05/05(木) 22:49:14.77 ID:yAd/r1yg
>>360
このあたりから探ってみて。お望みの情報があるかどうかはわからないけど。
ttp://bit.ly/jDkOo0
176 :Now_loading...774KB2011/04/28(木) 00:20:05.65 ID:4HeLGX4q
ん?もしかして一行目の4って数字が本来の5月を意味してますか??
178 :Now_loading...774KB2011/04/28(木) 04:24:02.19 ID:cOU9hzQW
CS4使ってますが、
import flash.sensors.Accelerometer;
import flash.events.AccelerometerEvent;
しても、コンパイル時にイベントハンドラの引数のところで、
e:AccelerometerEvent
を使うと1046(型が見つからないかコンパイル時定数ではない)エラーがでてしまう。

どうしてでっしゃろ偉い方
182 :Now_loading...774KB2011/04/28(木) 10:08:23.06 ID:U7R1ojf9
>>178
iPhoneアプリ用のやつ?
とりあえずクラスパスにAccelerometerEventのクラスファイルあるか検索してみたら
195 :Now_loading...774KB2011/04/28(木) 20:28:46.15 ID:cOU9hzQW
>>182
レスどうもでした。
どうやらCS5.5の発売を待って購入した方が良いのかもしれないという結論に。

ちなみにAIR for Androidで離着陸だけのフライトシミュ作ってる。
昔のタイトーみたいなやつ。
ポリゴン数増やすと動かない、Papervision3Dポリゴン欠けまくりと、
問題は山積み。
196 :Now_loading...774KB2011/04/28(木) 21:43:10.54 ID:rIkCN+ql
>>195
ポリゴンかけってFrustumClippimgとかQuadrantRenderEngineでなんとかなんないの?
激重だけど
197 :Now_loading...774KB2011/04/29(金) 02:04:49.79 ID:NpW0zPDZ
>>196
FrustumClipping.NEARとBOTTOMが効けばとりあえずは最適っぽいんだが、
+で両方指定やALLするとダメになるという。

あと、QuadrantRenderEngineは全くだめで、
ランウェイが微細に靄がかかったように欠けるような感じかつ重くて諦めたところでした。
ちなみにFogMaterialはBasicRenderEngineでしか使えないよね?
179 :Now_loading...774KB2011/04/28(木) 04:43:40.21 ID:cOU9hzQW
検索しても見つけられないけど、
もしかするとCS5使えって話なんだろうか。
180 :Now_loading...774KB2011/04/28(木) 07:03:38.72 ID:XCH5K+yf
ブラウザの仕様なんだろうが、細かなバージョンアップをしてファイルサイズも若干変換しているのに
キャッシュされたswfしか表示せず、最新のswfで実行結果が見れない
単体で完結するものではなくphpと通信しながらやるだけに、php側の問題なのかswf側の問題なのか
原因の切り分けに苦労する
みんなはどうやってる?
181 :Now_loading...774KB2011/04/28(木) 09:38:43.69 ID:Q1dZ7svq
〜.swf?hoge みたいに、後ろにランダムにURL足せば別URLとしてあつかわれてキャッシュ使用なしじゃなかったっけ?
自分の場合Webアプリ作ってないんでうろ覚えだけど。
183 :Now_loading...774KB2011/04/28(木) 10:23:33.72 ID:6jEo0NZh
あるtextfieldをAS3で宣言して、シェイプやシンボルの上に配置して、あるボタンを押すと
100フレームほど先まで飛ぶように設定しているのですが、
100フレーム先に行くとそのtextfieldがシェイプやシンボルの裏に隠れてしまいます。
最初は消えてしまったのかなと思ったのですが、シンボル等をどけると出てきます。
右クリックで最前面に移動をしても、フレームのasにsetChildIndex(instance, 0)を書いても直りません。
一体なにがわるいのでしょうか・・・。
184 :Now_loading...774KB2011/04/28(木) 11:22:05.29 ID:G6iWZwrZ
>>183
textfieldをシェイプを配置するのと同じコンテナ(A)に配置しているのが原因ではないでしょうか。
その1つ上のコンテナ(P)に、コンテナ(A)の1つ上に配置してしまえば
コンテナ(A)にどんなシェイプが追加されても隠れることはなくなると思います。
186 :Now_loading...774KB2011/04/28(木) 11:58:40.75 ID:6jEo0NZh
>>184
ありがとうございます。正直よく理解できていませんが、
消えてしまうフレームの開始でthis.addChild(instance);したところ直りました。

textFieldはフレーム1で、DisplayObjectを指定せずにaddChild(instance);しているので
親コンテナはおそらくthisになっているかと思っているのですが・・・
上記の通りthisにaddChildが成功したってことは、thisの子じゃなくなっていたってことですよね。

フレーム1のaddChildをthisにしても、現状は変わらなかったので、
何かが原因でthisの子じゃなくなっているみたいです。
コンテナについて勉強してきます。ありがとうございました!
187 :Now_loading...774KB2011/04/28(木) 12:36:11.59 ID:Ln/GxDEJ
AS3.0
ある変数に数字で800が格納されているとする
それを○分○秒みたいにする関数ってありますか?
189 :Now_loading...774KB2011/04/28(木) 15:13:41.04 ID:Ln/GxDEJ
おk、今作った
ところで、ユーザー定義関数内で使う変数は宣言の必要ないの?
190 :Now_loading...774KB2011/04/28(木) 15:15:45.94 ID:Ln/GxDEJ
簡単に聞いてごめんなさい
ちゃんと宣言しないとダメでした
191 :Now_loading...774KB2011/04/28(木) 15:31:51.30 ID:rIkCN+ql
カスタムのHOGEクラスのインスタンスhogeを
trace(hoge)
した時出力に表示される情報って設定できる?
192 :Now_loading...774KB2011/04/28(木) 15:37:27.62 ID:KM8zvQeZ
toStringをオーバーライドしたらいいはず
193 :Now_loading...774KB2011/04/28(木) 15:55:23.28 ID:rIkCN+ql
>>192
できました
overrideキーワードは使ってはいけないようなのでふつうに
public function toString():String{}
でいけました

ありがとうございます
198 :Now_loading...774KB2011/04/29(金) 02:41:37.45 ID:j4OqrM7n
FrustumClippingの問題はわからん

QuadrantRenderEngineはBasicRenderEngine継承してるからfilterプロパティもってるしFogFilterいけんじゃね?やってないからなんともいえんえど
199 :Now_loading...774KB2011/04/29(金) 02:57:43.01 ID:NpW0zPDZ
>>198
記述が100%正確であった自信はないんだけど、
QuadrantRenderEnginでのFogMaterialは一昨日試したらコンパイルエラーだったんだよね…

あーBOTTOM指定だとピッチやロール動作時に地面が欠けるし、
NEARだと着陸したらランウェイが欠けるwもうどうしようもない
200 :Now_loading...774KB2011/04/29(金) 10:50:05.52 ID:68yxDELO
AS3.0
↓ここ参考に
http://kozy.heteml.jp/pukiwiki/index.php?ActionScript3.0%20%A5%D5%A5%EB%A5%B9%A5%AF%A5%EA%A1%BC%A5%F3

↓フルスクリーンやってみたんですが、traceは出るものの、まったくフルスクリーンになりません
BtnFullScreen.addEventListener(MouseEvent.CLICK, MouseDownFunc);
function MouseDownFunc(event:MouseEvent):void {
trace("マウスイベント発生");
stage.displayState = StageDisplayState.FULL_SCREEN;
trace("チェック");
}

シーンプレビューでもダメ
<param name="allowFullScreen" value="true" />入れてるけどブラウザでもダメ
数日悩んでます、いったいどこがいけないですか?
201 :Now_loading...774KB2011/04/29(金) 11:14:02.59 ID:N8Aw2U/s
>>200
とりあえずネットに落ちてるサンプル拾ってきて実行してみたら?
それでダメならここでは分からんだろうな
202 :Now_loading...774KB2011/04/29(金) 13:56:53.76 ID:OB2pSum/
>>200
ttp://hakuhin.jp/as3/stage.html#STAGE_05
を試して、うまくいくようなら、ソースをダウンロードすればいい。
203 :Now_loading...774KB2011/04/29(金) 14:38:00.85 ID:68yxDELO
>>201-202
いろいろサンプル拾ってやってうまく行かなかったけど、なんとか出来た
ありがとう

原因はAS3.0のソースじゃなくて、htmlのobjectに<param name="allowFullScreen" value="true" />だけ書いても駄目だった
204 :Now_loading...774KB2011/04/29(金) 17:07:07.73 ID:L1iE5h+W
インスタンスa内にインスタンスbとインスタンスcがある場合に

bの状態に応じてcを操作したいことかままあります
bから直接操作するにはcのパスが必要です
bの状態が変わったらbからイベント送信するにもcへのパスが必要です
みなさんはこのような場合にはcへのパスを保持していますか?
根本的に間違っているかもしれないので他にいい方法があれば教えてください
205 :Now_loading...774KB2011/04/29(金) 18:22:56.07 ID:w+iOH9CC
>>204
参照必要なときは引数でわたすかなあ
もっとも今回の場合なら、
aに、bとcを操作するメソッドを用意するとか、構成を変えるかも
206 :Now_loading...774KB2011/04/29(金) 19:10:39.79 ID:q2FuYA9C
>>204
bとcが親しいクラスで1対1の関係だったらそうするのが手っ取り早い

逆に別パッケージや別開発者だったりたn対nの関係なら、その管理はaに任せるべき
イベントB'を定義し、bの状態が変わったらイベントB'を発行してaが受け取り、
必要に応じてaがcを操作する
207 :Now_loading...774KB2011/04/29(金) 19:16:32.43 ID:L1iE5h+W
>>206
イベントB'を発行するのはbですか?
その場合bにaの参照を持たせる感じでしょうか
208 :Now_loading...774KB2011/04/29(金) 19:56:15.47 ID:a7KPSOWt
>>207
そうなります
bにaの実装を認識させたくないような場合は、EventDispatcherなどの
標準ライブラリの仕組みを利用します
209 :Now_loading...774KB2011/04/29(金) 20:03:00.08 ID:L1iE5h+W
>>208
申し訳ありません
標準ライブラリの仕組み、とはどのように利用するのでしょうか
210 :Now_loading...774KB2011/04/29(金) 20:27:34.80 ID:a7KPSOWt
ごめんなさい、EventDispatcherの仕組みはちょっと説明しづらいですので
もっとシンプルな方法で

例えばインスタンスbのクラス定義に
public var funcNotify:Function;// 通知のコールバック
のように書かれていて、何か更新があれば
funcNotify();
でインスタンスaの関数を呼び出します

インスタンスaのクラス定義には
public var function onNotifyB():void
{
// cを操作する処理
}
と定義しておき、初期化時に
b.funcNotify = onNotifyB;
と自分の関数を設定します

aの参照をbに丸ごと渡すのではなく、aの1つの関数だけを渡すことで結合度を弱めます
標準ライブラリを使用するとさらにお互いの実装を意識しなくてすみますが、
>>206の通り1人で短期間での開発なら必要ないと思います
211 :Now_loading...774KB2011/04/29(金) 22:30:39.38 ID:j4OqrM7n
>>210
なるほど
b内のfuncNotify();でaのprivate変数にはアクセスできるのでしょうか
213 :Now_loading...774KB2011/04/30(土) 02:13:57.50 ID:nbL+UHMT
>>211
できるよ、bのfuncNotifyはaのonNotifyBへの参照であって、
onNotifyB自体はaに書いてあるんだからさ
ちなみにonNotifyBがprivateであっても渡せる
214 :Now_loading...774KB2011/04/30(土) 02:16:00.49 ID:xLBZ6Nj5
>>213
なるほど。
a.onNotifyB()と同じ動作ができるんですね
明日やってみます
212 :Now_loading...774KB2011/04/30(土) 01:25:25.01 ID:2MPROBzj
As3です。
ラジオボタンのグループ名をgroup_hogeとした複数のラジオボタンを配置。
スクリプトで、どのボタンが選択されたかを調べたく、
group_hoge.selectedData
を書きましたが、
A term is undefined and has no properties.
というエラーが出ました。
どう解決したらいいのでしょうか。
215 :Now_loading...774KB2011/04/30(土) 16:20:12.78 ID:fLSGPx6A
インターフェースで変数って定義できないの?
216 :Now_loading...774KB2011/04/30(土) 16:47:14.09 ID:8+WbbO2W
>>215
そこでgetter・setterですよ
217 :Now_loading...774KB2011/04/30(土) 16:55:46.99 ID:fLSGPx6A
>>216
なるほど!できました!
ありがとうございます

追記で
ある変数hogeがあるクラスAのサブクラスかつインターフェースIを実装していることを保証するにはどうしたらいいですか?

具体的には変数hogeがI実装メソッドを実行し、その後addChild(hoge)したいのですが、addChildの引数になれるのはDisplayObjectを継承してなくてはなりませんよね
var hoge:IだとaddChild(hoge)で怒られてしまいました
218 :Now_loading...774KB2011/04/30(土) 17:00:43.69 ID:8+WbbO2W
>>217
クラスAがDisplayObjectを継承しといたらいいんじゃね?
219 :Now_loading...774KB2011/04/30(土) 17:06:11.92 ID:fLSGPx6A
>>218
もちろんしているのですが、

var hoge:I
I.peropero()
addChild(hoge)

ではhogeにDisplayObjectを継承している情報がない?のでできませんでした
220 :Now_loading...774KB2011/04/30(土) 17:26:24.08 ID:8+WbbO2W
>>219
var hoge:I→var hoge:Aじゃダメなのか?
DisplayObjectを直接、じゃなくてDisplayObjectを継承してるクラス(Shapeとか)を継承しとかないと
インスタンス作る時に例外が出るようだけど
223 :Now_loading...774KB2011/04/30(土) 17:39:39.12 ID:fLSGPx6A
>>220
A(I)→Sprite
B(I)→Sprite

のような構造なのですが、
変数hogeを使って
hoge.Iメソッド()
addChild(hoge)
をやりたいのですが、
hoge:Iでも
hoge:Spriteでもうまくいかないのです
271 :Now_loading...774KB2011/05/03(火) 16:32:04.79 ID:hUAtJllJ
>>223
ですが
Iに
addSelf(container:DisplayObject):void
removeSelf(container:DisplayObject):void
を設定し、
AとBに
public function addSelf(container:DisplayObject):void{
container.addChild(this);
}

public function removeSelf(container:DisplayObject):void{
container.removeChild(this);
}

とすることで
var hoge:I //AクラスかBクラス
hoge.Iメソッド();
hoge.addSelf();
と一応実現することができましたが、

>>217の
ある変数hogeがあるクラスAのサブクラスかつインターフェースIを実装していることを保証するにはどうしたらいいか

が分かる方いらっしいましたら引き続きお願いします
272 :Now_loading...774KB2011/05/03(火) 17:00:11.65 ID:HHqyNWyD
>>271
保証するって言い回しが良く分からんが、「class B extends A implements I」って形のクラスなら
普通に「var hoge:B」でAとしても扱えるしIとしても扱えると思うけど…
273 :Now_loading...774KB2011/05/03(火) 17:10:45.20 ID:hUAtJllJ
>>272
「class A extends S implements I」
「class B extends S implements I」
の二つのクラスが入る変数を
「var hoge:なんとか」で
SしてもIとしても扱いたい感じです
274 :Now_loading...774KB2011/05/03(火) 17:28:34.30 ID:HHqyNWyD
>>273
今ちょっとやってみたけど、「var hoge:S = new A()」ってやって
iにキャストしたらiのメソッド呼べたよ
221 :Now_loading...774KB2011/04/30(土) 17:28:44.86 ID:fLSGPx6A
もうひとつ
クラスAとそのサブクラスBがあって
var hoge:Vector.<Vector.<A>>=new Vector.<Vector.<B>>()
が暗黙の型変換しとると怒られます
hoge[2][4].Amethod()とかやりたいのですが、なにがいけないのでしょうか
222 :Now_loading...774KB2011/04/30(土) 17:34:16.55 ID:8+WbbO2W
224 :Now_loading...774KB2011/04/30(土) 17:43:28.15 ID:fLSGPx6A
もっと言うと
二次元Vectorのhogeを使って
hoge[1][3].Iメソッド();
addChild(hoge[1][3]);
をやりたいのですかVectorの定義と両方の特徴を持つ方法を探しています
225 :Now_loading...774KB2011/04/30(土) 19:07:18.58 ID:pR9UWjx/
textAreaのtextが動作をするたびにクリアされてしまうんですが、なにが原因だと考えられるでしょうか。
textAreaはasでなくflashのコンポーネントメニューから選択して設置しています。
フレームのうちstop();の制御があるフレームにのみ設置されていて、インスタンス名は同じ名前を入力しています。
233 :Now_loading...774KB2011/04/30(土) 23:26:43.18 ID:XSwYlOYA
>>225
普段コンポーネントとか一切使わんからよくわからんが、
フレーム毎に置かれてるんならそりゃ別インスタンス扱いじゃないか?
レイヤ分けて、全フレーム通しのレイヤにテキストエリアを設置、
あとはフレームで切ったレイヤにスクリプト書いて位置やvisible変更したらどうかね
228 :Now_loading...774KB2011/04/30(土) 22:43:06.17 ID:GXnSdaTY
AS2.0です。
複数の音源を同時にスタートさせるためにはどうすればいいですか?
例えばA、B、Cという3つの音声ファイルを同時にスタートさせてAだけOFFしてもBとCは流れ続けて、
途中でAをONにするとまたBとCと一緒に音楽が続くという感じのをつくろうとしてます。
235 :Now_loading...774KB2011/05/01(日) 00:46:56.48 ID:MY+9L/L0
>>228
OFFにするときに停止させるんじゃなくsetVolumeで音量を0にすれば
無音状態の裏でも流れ続けてるので復帰したときに元通りになると思う

・ムービークリップ製のボタンを3つ配置する
// ボタンA (ムービークリップ "MC_A")
on(Press){vol = 100 - vol ; _root.snd_A.setVolume(100 - vol);}
// ボタンB (ムービークリップ "MC_B")
on(Press){vol = 100 - vol ; _root.snd_B.setVolume(100 - vol);}
// ボタンC (ムービークリップ "MC_C")
on(Press){vol = 100 - vol ; _root.snd_C.setVolume(100 - vol);}

・音楽再生させたいところに書く
snd_A = new Sound(MC_A); snd_A.attachSound("bgmA"); // "bgmA"の部分は使いたい音源のリンケージ識別名に変える
snd_B = new Sound(MC_B); snd_B.attachSound("bgmB"); // new Sound();の括弧内(ムービークリップのインスタンス名)は
snd_C = new Sound(MC_C); snd_C.attachSound("bgmC"); // 省略したり同じインスタンス名にすると一括で音量操作されてしまう
snd_A.start(); snd_B.start(); snd_C.start();

間違ってたらごめん
236 :Now_loading...774KB2011/05/01(日) 02:52:43.18 ID:DZOs7cvf
>>235
丁寧にありがとうございます!
new Sound();の括弧内をそれぞれ上記の通りにMC_A,MC_B,MC_Cとしてるんですが
ミュートが一括でされてしまいます。何か設定が足りないのでしょうか。
260 :Now_loading...774KB2011/05/02(月) 04:26:30.31 ID:I8m4migw
>>257
>>235のを流用するけど↓でできないか?
on(Press){
_root.snd_A.stop(); _root.snd_B.stop(); _root.snd_C.stop(); // 止めたい音楽を全部止める
_root.snd_A.start(); // snd_Aの部分はボタンごとにsnd_Bなりsnd_Cなりに変える
}

上手くいかないのはたぶんパスの指定が違うか記述を間違えてるかだと思うんだけど_rootとかわかる?
_root┬MC製の再生ボタン(MC_A)
   ├MC製の再生ボタン(MC_B)
   ├MC製の再生ボタン(MC_C)
例えばこういう階層になっててsnd_A = new Sound();〜の部分を_rootに書いたなら
MC_Aにスクリプトを書くときはsnd_A.stop();の頭に_parent.とか_root.つけてsnd_Aがある正しいパスを指定しないと
MC_Aの中からsnd_Aを探す→なかった→停止できません ってなるぞ
見当はずれだったらごめん
229 :Now_loading...774KB2011/04/30(土) 22:57:47.26 ID:YESkymu6
外部XMLデータを取り込んでテキストフィールドに代入しようとしています。
ところが、traceで正しく表示されている筈の文字列が、
歯抜けの様に抜けて表示されてしまいます…

CS4 AS3.0使用です。

XMLデータを取り込むのは成功しています。
<j_name>山田 花子</j_name>
<e_name>Hanako Yamada</e_name>

var e_nameList:XMLList = theXml..e_name;
var en_name:String = e_nameList.toString();
en_name に文字列を代入し、
traceで値に正常に入ってるところまでは確認しました。

Hanako Yamada

ところが、

en_name_txt.text = en_name;

してFlashのステージに表示される
と、

Hanako aada

になってしまいます。なぜか、Yとmが抜けてしまう…
日本語名は半角スペースが入っていても、そのまま表示されました。
ちなみに、"Hanakoyamada"とyamadaの前に半角スペースを空けず、
大文字も最初の一文字だけにしたらすべて表示されました。
230 :2292011/04/30(土) 23:03:17.61 ID:YESkymu6
長文失礼しました。何か突破口があれば有難いのですが
現状原因が思いつかなくて八方塞です。
ここおかしい!!という部分を指摘頂けるだけでもありがたいです。
よろしくお願いいたします。
231 :Now_loading...774KB2011/04/30(土) 23:13:12.32 ID:xLBZ6Nj5
en_name_txt.text = "Hanako Yamada"
したらどうなるのっと
232 :2292011/04/30(土) 23:22:56.63 ID:YESkymu6
>>231
ありがとうございます!
やってみてやっと気がつきました。
そもそもXMLとかASの問題じゃないんじゃないかと…

ほんっっっとうに申し訳ありません。
昨日徹夜で一日悩んでいたのに、原因はテキストフィールドに設置している
フォントでした。

デザインの良いフォントを選んで、埋め込みにすれば大丈夫か?
と使っていたのが良くなかったようで
試しに普通のMS P ゴシックにしたら表示できました。
ASスレ汚しで本当に申し訳ありませんでした。
249 :Now_loading...774KB2011/05/02(月) 01:12:29.67 ID:rVODmdT6
>>231
お前の花子で地球がヤバイ。
234 :159&1662011/05/01(日) 00:32:39.16 ID:x5gDOeri
(自己解決:TextInputの色とサイズとフォント種類を変更)

ComboBoxのフォント変更を参考に出来ました。
※TextFormatとsetStyle()の使い方が悪かったようです。

例えば文字サイズを15にするには
var tf:TextFormat = new TextFormat();
tf.size = 15;
txtT.setStyle("textFormat", tf); でOKでした。

しかし、txtT.textField.setStyle("textFormat", tf); は不可でした。
237 :Now_loading...774KB2011/05/01(日) 03:29:35.97 ID:DZOs7cvf
自己解決しました!スレ汚してすみません。
ただし何が原因だったのかわかりませんでした。
238 :Ninja2011/05/01(日) 14:14:03.84 ID:KWMttTbQ
画像を入れてトゥイーンなどで先にアニメーションをつくっておいて
ActionScriptで画像を外部ファイルから読み込んだ別の画像に置き換えることは可能でしょうか?
239 :Now_loading...774KB2011/05/01(日) 14:29:00.20 ID:hj/jt/Pd
>>238
つまり、仕組み(ストーリー)を先に作っておいて、画像を差し替えて
汎用的に使いまわしたいってこと?

とりあえず、自作のコードを示すと吉
244 :Now_loading...774KB2011/05/01(日) 16:39:57.47 ID:KWMttTbQ
>>239
LoadMovieで画像を読み込んでActionScriptで座標と大きさを設定して動かすところまではできたけど
そこから先がよくわからんのです。
247 :Now_loading...774KB2011/05/02(月) 00:10:34.18 ID:XzieA/lg
>>244
AS2.0?
BitmapクラスやTweenクラス使って書けば、やりたいことは実現可能だろうけど
オーサリング環境で配置したタイムラインの画像を入れ替えるのは
無理じゃないかなあ
240 :Now_loading...774KB2011/05/01(日) 14:49:38.07 ID:ZJoJpBzf
トゥイーンってCS4あたりからコード化できなかったっけ
243 :Now_loading...774KB2011/05/01(日) 15:48:41.74 ID:hj/jt/Pd
>>240
Animatorクラス(モーションXML)のこと?
241 :Now_loading...774KB2011/05/01(日) 15:28:33.83 ID:ocAHzKr/
xmlの読み込みに関する質問です

<?xml version="1.0" encoding="UTF-8"?>
<data>
<x id="2"/>
</data>

みたいなxmlのx要素のid属性の値を読み取ろうと思うのですが、

loadした後に
dot=xml.firstChild.childNodes;
trace(dot);
で <x id="2"/> と表示されたのですが、同じ条件で
trace(dot.id.value);
trace(dot.attributes["id"].value);
trace(dot.attributes.item(0).value);
trace(dot.getAttribute("id").value);
とやっても値をとれません・・。

正しい属性値のとり方を教えてください!
ちなみにParaFla!でやっているので
Flash8(AS2)相当のスクリプトなら動作すると思います。
あとOSはWin7(JP)です。
242 :Now_loading...774KB2011/05/01(日) 15:39:38.85 ID:CUpFgMEA
>>241
dot.@idでいけんじゃね?
245 :Now_loading...774KB2011/05/01(日) 21:27:59.35 ID:ocAHzKr/
>>242
うーんできませんでした。

ただ、そのあと、dotの型を調べてみてオブジェクト型がだったので
文字型に変換してsplitで無理やりとることはできました。
正しい方法を教えていただければそっちに切り替えますが
とりあえずはこれで行ってみようと思います。

ありがとうございました。
(なにか情報があればお願いします)
246 :Now_loading...774KB2011/05/01(日) 22:57:06.44 ID:t7gzPWDI
paraflaのライブラリならE4X記法使えんよ。soreAS3.0からだから。
flexSDKにxPathかなんか入ってんじゃなかったかな?
なきゃどっかの野良xpathクラス落として使えばいいんやね?
258 :Now_loading...774KB2011/05/02(月) 03:12:29.30 ID:D3ZVzFkt
>>246
遅くなりましたが情報サンクスです!
248 :Now_loading...774KB2011/05/02(月) 00:26:53.55 ID:ztpYLKg3
AS3.0です。
CS5の標準のNumericStepperコンポーネントについて質問です。
使用したくないときがあるので、enabledをfalseにしました。
そして入力できないようにはなったんですが、
コンポーネントをクリックすると、周りに枠?が表示されてしまいます。
これをなくすためにはどうしたらいいですか?
ちなみに、tabEnabledをfalseにしてもダメでした。
250 :Now_loading...774KB2011/05/02(月) 01:35:40.14 ID:V/ZOmMbv
>>248
NumericStepperについては知らんが、黄色い枠線が出るなら
focusRectにfalseを入れとくとか
251 :Now_loading...774KB2011/05/02(月) 01:51:13.62 ID:ztpYLKg3
>>250
focusRect=falseを試しましたが変わりありませんでした。
252 :Now_loading...774KB2011/05/02(月) 01:54:23.61 ID:usHy4gbt
>>251
mouseEnabledをfalseにするとか
253 :Now_loading...774KB2011/05/02(月) 02:09:48.44 ID:ztpYLKg3
>>252
変わらないです。
ちなみに枠は水色です。
255 :Now_loading...774KB2011/05/02(月) 02:41:04.90 ID:pQULR5Pr
当方NumericStepperが使えないためちょっといい加減なことを言いますが……

focusRectは配置されるコンテナではなく配置するコントロールの方に指定します
で、ドキュメントを読んでみるとNumericStepperはDisplayObjectContainerから派生されています
ひょっとして水色の枠はコントロール全体ではなくテキストフィールドの方に表示されていますか?
256 :Now_loading...774KB2011/05/02(月) 02:44:39.72 ID:pQULR5Pr
送信した後にこんなのがあるのに気付いた
これでだめかな

ttp://help.adobe.com/ja_JP/AS3LCR/Flash_10.0/fl/controls/NumericStepper.html#drawFocus()
> override public function drawFocus(focused:Boolean):void
> このコンポーネントのフォーカスインジケータを表示または非表示にします。
261 :Now_loading...774KB2011/05/02(月) 04:40:40.70 ID:ztpYLKg3
>>256
drawFocus(false)としましたが、変化ありません。
コンポーネントを分解すると、表示されている枠があり、focusRectSkinという名前のムービークリップがあります。
でもそれを消しても何も変わらないです。
265 :Now_loading...774KB2011/05/02(月) 12:14:48.61 ID:usHy4gbt
>>261
NumericStepperを継承したクラスを作って、drawFocusをオーバーライドして関数の中で何もしないようにして
ライブラリのNumericStepperにリンケージしたら一応できたよ
267 :Now_loading...774KB2011/05/02(月) 12:36:37.36 ID:ztpYLKg3
>>265
ありがとうございます。
なんかめんどくさそうですね。
再現できるようトライしてみます。
268 :Now_loading...774KB2011/05/02(月) 12:51:41.71 ID:pP6wXBXU
>>267
継承したクラスファイルつくって関数オーバライドして中になにも書かなきゃいいだけじゃない?
257 :Now_loading...774KB2011/05/02(月) 03:11:52.01 ID:v0fZw4gw
音声開始ボタンαを押すと、αだけ再生して現在流れてるその他βγの音楽全て停止させたいんですが
stop();だけじゃまったく止まりません。これだけじゃ何故ダメなのでしょうか?
262 :Now_loading...774KB2011/05/02(月) 10:11:58.48 ID:F/V7XMV8
ローカルにある画像ファイルを画面に画面に表示させたい場合、
FileReferenceを使用して、画像をサーバにアップ後にそれをダウンロード
して表示させるしかないでしょうか? 初心者です。
269 :Now_loading...774KB2011/05/02(月) 15:09:10.31 ID:MFGAuR/Y
>>262
FileReferenceで取得したByteArrayをLoader.loadBytesに放り込めば
Flash内部だけでBitmapに展開してくれるよ
263 :Now_loading...774KB2011/05/02(月) 11:55:01.69 ID:xIuEBJ7p
FLVPlayback使って↓のソースで動いたのですが
import fl.video.*;
my_FLVPlybk.stopButton = my_stopbttn;
my_FLVPlybk.playPauseButton = my_plypausbttn;
my_FLVPlybk.muteButton = my_mutebttn;

これをフレームのタイムラインに書くのではなく、外部asに書きたい場合
どこを直せば動くようになりますか?
このまま書いても動かず、変数にstage.付けても動かずでした
264 :Now_loading...774KB2011/05/02(月) 12:00:40.34 ID:pP6wXBXU
>>263
まずエラーメッセージ出ないの?
266 :Now_loading...774KB2011/05/02(月) 12:29:12.51 ID:xIuEBJ7p
>>264
エラーメッセージが出ないんです
再生されずにずーっと読み込み中になります
270 :Now_loading...774KB2011/05/02(月) 19:10:31.62 ID:usHy4gbt
>>263
外部ってもどこからアクセスしたいかで書き方変わるから何とも言えないだろうけど
そのクラスからmy_FLVPlybkまでの親子関係などに応じて「this.my_FLVPlybk」なんて感じで
指定すればいいんじゃないか?
275 :Now_loading...774KB2011/05/03(火) 21:53:16.94 ID:fi7v5cq0
class SS extends S implements I
class A extends SS
class B extends SS
var hoge:SS;
とか
278 :Now_loading...774KB2011/05/03(火) 22:56:03.99 ID:xQpMcTKN
>>274
ありがとうございます
ちょっとやってみます
でもキャストかぁ

>>275
後だしで申し訳ないのですが、
A→S1→S2→…→S
B→SA→SB→…→S
のように別ルートを通ったすでに用意されているS1とSAをそれぞれ継承しています

S1=Bitmap
SA=MovieClip
S=DisplayObject
のような感じです
AとBはそれぞれIを実装することで共通のメソッドが保証されるのですが、
DisplayObjectContaimer.addChild(child:DisplayObject)
の引数にとるためにはDisplayObjectを継承してるよ、ってことも保証しなくてはならないので、どんなクラス(インターフェイス)の変数を使えばいいのか考えているところです
283 :Now_loading...774KB2011/05/04(水) 00:18:54.48 ID:wDkDCtE3
>>278
どのA〜SとDisplayObjectContaimer相当の内、どのクラスを自分で書いていて
どのクラスが編集不可なのかの情報をお願いします
287 :Now_loading...774KB2011/05/04(水) 00:38:28.75 ID:F5zp0Fij
>>283
Papervision3Dライブラリを使っています
MyClassA→MyClassAA(→ParticleField→Particles→Vertices3D→DisplayObject3D→DisplayObjectContainer3D→flash.events.EventDispatcher)
MyClassB(→Plane→TriangleMesh3D→Vertices3D→DisplayObject3D→DisplayObjectContainer3D→flash.events.EventDispatcher)
Papervision3Dには
DisplayObjectContainer3D.addChild(child:DisplayObject3D)
というDisplayObjectContaimer.addChild(child:DisplayObject)のようなものがあり、
このメソッドでレンダリングするシーンに追加します

MyClassAとMyClassBは派生は違うものの同じ種類の働きのクラスとして作り、
メソッドiMethod()を合わせるためにインターフェイス(IMine)を実装しました

これにより
var hoge:IMineで
hoge.iMethod()を実行できるようなったのですが
このhogeを使って
scene.addChild(hoge)
もしたいと考えております
288 :Now_loading...774KB2011/05/04(水) 00:49:58.99 ID:DcHQ8wBD
>>287
scene.addChild(hoge as DisplayObject3D)とかではダメなの?
289 :Now_loading...774KB2011/05/04(水) 00:56:27.66 ID:wDkDCtE3
>>287
sceneというのが自分で書いたクラスだと仮定しますが、
IMineとDisplayObject3Dの両方のメンバにアクセスするのなら
両方(2つのパラメータで)渡すしかないでしょう
290 :Now_loading...774KB2011/05/04(水) 01:20:52.02 ID:wDkDCtE3
失礼しました、sceneはライブラリ側っぽいですね

IMineからほとんどの主要機能が呼び出せるようになっていて
MyClassAとMyClassBをブラックボックスとして扱うクラスに実装するなら
IMine型の参照だけを保持し、IMineにgetDisplayObject3Dメソッドを登録して
MyClassAとMyClassBが自分を返せるようにしてはどうでしょうか

>>288で十分なような気もしますが
276 :Now_loading...774KB2011/05/03(火) 22:23:37.81 ID:S6RMvRJY
AS2.0です。
あるMCをpressすると特定の音楽が流れ、且つその他の音楽が強制的に停止するようにしました。
ところが、テストをしたときの一回目のみその他の音楽が強制的に停止してくれません。
ダブルクリックしたり全停止ボタンを押したり等他の動作をしたら、きちんと特定の音楽だけ流れてくれます。
あるMCのASは
on(press) {
snd_A.stop();
snd_B.stop();
snd_C.stop();
snd_B = new Sound(MC_B); snd_B.attachSound("D");
snd_B.start();
}
こんな感じです。一回目に動作が不安定なのはどうしてなのでしょうか。
277 :Now_loading...774KB2011/05/03(火) 22:40:05.60 ID:x9kt1K4b
>>276
snd_A〜Cまでが、定義されてないとか、参照が渡ってないとか?
他の部分まで見ないと、そこだけじゃ原因はわからんなー

とりあえずtrace()で、サウンドオブジェクトがあるのか
参照が正しいのかなどをチェックしてみては?
300 :Now_loading...774KB2011/05/04(水) 05:32:46.76 ID:l6CMdu/B
>>276
それ他のボタンも同じソースなのか?
snd_○○の頭に全部_root.つけてみたら
279 :Now_loading...774KB2011/05/03(火) 23:56:41.71 ID:kCRtwKm+
すいませんAS2.0で質問です。
よく文字列やハイスコアをTwitterに送信できるボタンがありますが、
それをAS2.0で実装するにはどうすればいいのでしょうか?
調べてもAS3.0ばっかりヒットするのでどうにもなりません。
280 :Now_loading...774KB2011/05/04(水) 00:14:22.92 ID:cGLk4JaC
AS3です。
1つのムービークリップXに対してaddChildとremoveChildを繰り返すような実装をしているのですが、
すでにaddChildされたかどうかを判定する方法がわかりません。
どうすればわかるでしょうか。
282 :Now_loading...774KB2011/05/04(水) 00:16:16.83 ID:F5zp0Fij
>>280
XにYをaddChildするとして
Yがaddされたか知りたいの?
Xがすでになにかをaddしているか知りたいの?
284 :Now_loading...774KB2011/05/04(水) 00:23:04.89 ID:cGLk4JaC
>>282
どのムービークリップに対してというか、
ステージ上に作る感じです。
addChild(X)
とします。
addChildする前に、Xがすでにあれば、
removeChild(X)
をするイメージです。
286 :Now_loading...774KB2011/05/04(水) 00:36:01.95 ID:bwkuMxYM
>>284
DisplayObjectContainer.contains()とか?
291 :Now_loading...774KB2011/05/04(水) 01:28:58.24 ID:cGLk4JaC
>>286
var h:TextField=new TextField();
trace(contains(h));
layer.addChild(h);
とすると、contains(h)は常にfalseで、
contains(layer.h)とした場合、
layer.hはnullではいけませんというエラーが出ます。
どうしたらいいんでしょうか。
293 :Now_loading...774KB2011/05/04(水) 01:49:36.67 ID:cGLk4JaC
>>292
それが正しいですね。
ただ、traceの手前でaddChildした場合はtrueが確認できましたが、
>>291の処理(ボタン処理です)を繰り返すと、falseのままでした。
294 :Now_loading...774KB2011/05/04(水) 01:57:03.35 ID:DcHQ8wBD
>>293
>>291を読む限り、TextFieldのインスタンスが毎回新しく作られてて
前回実行した時のhの中身とは別物なんだからfalseで当然
295 :Now_loading...774KB2011/05/04(水) 02:07:34.83 ID:z3OqM8Vw
>>294
もういっそのことh.parentがnullかどうかで確認するとか
296 :Now_loading...774KB2011/05/04(水) 02:20:54.42 ID:cGLk4JaC
うーん、できないorz
>>294
前回実行したときのhを指定したいときはどうするんでしょうか。
>>295
containsと同様に常にnullになります。
297 :Now_loading...774KB2011/05/04(水) 02:28:12.09 ID:bwkuMxYM
>>296
newした時に必ずaddChildして、
removeChildした時に必ずnull代入するんじゃ
ダメなの?
298 :Now_loading...774KB2011/05/04(水) 02:37:14.31 ID:cGLk4JaC
>>291のコードから
var h:TextField=new TextField();
を取り除いて、
この処理は一度だけ前段で実行してやると、
traceの結果は、
最初だけfalseで
あとはすべてtrueとなってくれました。

>>297
すいません。
ちょっと理解が追いつかないので、
わかりませんでした。
308 :Now_loading...774KB2011/05/04(水) 12:49:51.25 ID:DcHQ8wBD
>>296
クラス内に変数用意して、そこに入れておくしかないんじゃない?
複数あるなら配列に入れて、containsで調べる時はループ回すとか
281 :Now_loading...774KB2011/05/04(水) 00:14:37.19 ID:fmcRVFtc
質問です。

ttp://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/
こちらのページの「ActionScript 3.0 コンポーネントリファレンスガイド」をダウンロードして
オフライン環境で読みたいのですが、ダウンロードできるページはありませんか?

ttp://www.adobe.com/support/documentation/jp/flash/
こちらのページからダウンロードできるZIPファイルの中身は英語版だったので日本語版のものを探しています。
285 :Now_loading...774KB2011/05/04(水) 00:32:31.16 ID:wDkDCtE3
>>281
ちょっとバージョンが違うかもしれんけど
ttp://www.adobe.com/support/documentation/jp/flex/
> Flex 3ドキュメンテーション完全版
あたりが日本語のアーカイブではある
292 :Now_loading...774KB2011/05/04(水) 01:35:44.17 ID:wDkDCtE3
layer.addChild(h);
なら
layer.contains(h)
だろう
299 :Now_loading...774KB2011/05/04(水) 03:51:47.60 ID:n72V56OX
http://nashiko.net/index.php?s=%E3%83%9C%E3%83%AA%E3%83%A5%E3%83%BC%E3%83%A0&x=0&y=0
このサイトのボリュームコントローラーの説明で「?」と文字化けいるところが1〜4どれなのか知りたいです。
全部で6つ「?」があります。上から順に123442でよろしいのでしょうか。
301 :Now_loading...774KB2011/05/04(水) 09:40:37.75 ID:rijfo2PY
TextBlockを使用して、入力した文字を画面に表示させることをしています。
英語を入力したときは問題ないのですが、日本語を入力した場合、
各行の文字間隔が行の幅に自動的に調整されておかしくなります。
どのように変更すればよいでしょうか?ソースは以下になります。

※なぜかこうなる?
あああああああ
あ     あ
あ  あ  あ


※こうしたい
あああああああ
ああ
あああ



304 :Now_loading...774KB2011/05/04(水) 10:06:42.82 ID:oI2tIZrj
>>301
アラインみたいなプロパティなかった?
302 :Now_loading...774KB2011/05/04(水) 09:43:29.01 ID:rijfo2PY
var str1:String = m_cDlgMenuText.m_strMsg;//表示メッセージ
//フォント書式
var fontDescription:FontDescription=new FontDescription();
fontDescription.fontName = m_cDlgMenuText.m_strFont;
//エレメントのフォーマット
var format:ElementFormat = new ElementFormat();
format.locale="ja";
format.fontSize=m_cDlgMenuText.m_nStrSize;
format.fontDescription=fontDescription;
305 :Now_loading...774KB2011/05/04(水) 12:11:09.15 ID:1jt+hIIr
タイムラインを使わずに音楽の現在の再生時間を表示させる事はできますか?
306 :Now_loading...774KB2011/05/04(水) 12:29:24.11 ID:bu8/uoZ/
>>305
ぜんぜんいみわからんけどたぶんできる
307 :Now_loading...774KB2011/05/04(水) 12:29:53.63 ID:F5zp0Fij
>>305
ぜんぜんいみわからんけどたぶんできる
309 :Now_loading...774KB2011/05/04(水) 15:55:19.89 ID:QcHqFCir
クラス内でpublicやprivateのメソッドの記述する順番って決めてる?
イベントハンドラは最初、とか
310 :Now_loading...774KB2011/05/04(水) 16:56:45.27 ID:2tqYcQGk
50音順にしてる。
331 :Now_loading...774KB2011/05/05(木) 10:16:42.23 ID:a7Tr1P3K
>>310
まじめにこたえてください><
なんか決まりというか定番ないのかな
自分の中でルール決めるにしても一般的な指標がほしいな
ゲッセッター
イベントハンドラ
private
public
312 :Now_loading...774KB2011/05/04(水) 20:19:15.67 ID:ZfGnraPg
WIN XP 、FLASH CS5、Papervision3D_2.1.932で3DFLASHに挑戦しています
外部からColladaとテクスチャを読み込んで動かすムービーが作れるようにはなりました
http://freett.com/c4dbeginner/DaeSample.fla
http://freett.com/c4dbeginner/DaeSample.as
http://freett.com/c4dbeginner/sample.dae
http://freett.com/c4dbeginner/Mat_Color.jpg
↑これをソースに出来たムービーが↓です
http://freett.com/c4dbeginner/DaeSample.swf

しかし今のままではswfファイルだけではなくColladaとテクスチャを常に同じフォルダに置く必要があるため、
swfファイルの中にColladaとテクスチャを埋め込むスクリプトを書きたいと思っています
調べた結果どうもEmbedという命令を使うようなのですが、FLASH AS3の解説本にはあまり書いてありません
サイトもあちこち見て回って
たとえばこのサイトを頼りに
http://rakuda-factory.sakura.ne.jp/tips_pv3d_1.html
こういうスクリプトを書いて見たのですが
http://freett.com/c4dbeginner/DaeSample.as
行 13 1013: private 属性はクラスプロパティの定義でのみ使用できます。

といったエラーがでて動作しませんでした

FLASHでColladaファイルをswfに埋め込むにはどういった形でスクリプトを書けばいいのでしょうか?

上に自分のファイルをアップしましたのでお手本を書いてもらえないでしょうか
317 :Now_loading...774KB2011/05/04(水) 21:55:59.51 ID:ZfGnraPg
画面の指示に従いFlexSDKパスを追加したところ、エラーは出なくなり
swfファイルも出力されました
http://freett.com/c4dbeginner/DaeSample2.swf

>>312のファイルは113kb、今回のは154kbなので
Colladaが読み込まれたのかな?と期待したのですが
Mat_Color.jpgとsample.daeのないフォルダでDaeSample2.swfを再生すると真っ白になってしまい読み込まれていません
Mat_Color.jpgとsample.daeのあるフォルダでDaeSample2.swfを再生すると数字の書かれた赤いさいころが出るのですが…

何が間違っているのでしょう?
318 :Now_loading...774KB2011/05/04(水) 22:33:14.93 ID:DcHQ8wBD
>>317
埋め込んだの使って無いじゃん
「Flash embed mp3」とかでググってみるといいかも
mp3の埋め込みでも基本は同じだから
313 :3122011/05/04(水) 20:20:54.82 ID:ZfGnraPg
失礼しました
自分が試しに書いてみた(機能しない)埋め込みスクリプトはこちらです
http://freett.com/c4dbeginner/DaeSample2.as
314 :Now_loading...774KB2011/05/04(水) 20:35:54.24 ID:DcHQ8wBD
>>313
コンストラクタの中にあるEmbedを外に出せばいいと思う
315 :Now_loading...774KB2011/05/04(水) 20:50:05.81 ID:ZfGnraPg
>>314
ありがとうございます
コンストラクタの外に出し、
Mat_Color.jpgのアンダーバーも抜けていたので直しました

しかし「FlexSDKが必要となります」というメッセージと

DaeSample_dae_image.as、行 10 1017: 基本クラス BitmapAsset の定義が見つかりませんでした。
E:\flash\collada読み込み\新しいフォルダ\DaeSample.as、行 1 5000: クラス 'DaeSample' は 'flash.display.MovieClip' をサブクラスとする必要があります。同じ型のライブラリシンボルにリンクしているためです。

というメッセージが出てしまいました
FlexSDKとはなんでしょう?FLASH CS5だけではだめなのでしょうか
316 :Now_loading...774KB2011/05/04(水) 20:51:50.40 ID:ZfGnraPg
直したasはこちらです
ここがだめというのがあれば添削お願いします
http://freett.com/c4dbeginner/DaeSample3.as
319 :Now_loading...774KB2011/05/04(水) 23:22:40.87 ID:ZfGnraPg
http://www.yukun.info/blog/2008/10/actionscript-embed-mp3-sound-swf-flash.html
このmp3用のページを見て最初から作り直してみましたがどうもうまく行きません
http://freett.com/c4dbeginner/DaeSample5.as

行 18 1151: 定義 dae (名前空間 internal) にコンフリクトが存在します。
というエラーが出てしまいます
326 :3122011/05/05(木) 08:39:49.46 ID:AZr/wVp2
昨晩の>>312です
>>318さんのアドバイス通りmp3の埋め込みページ>>319を参考にして
どうにかCOLLADAの埋め込みに成功しました
http://freett.com/c4dbeginner/DaeSample.fla
http://freett.com/c4dbeginner/DaeSample.as
http://freett.com/c4dbeginner/sample.dae

しかしマテリアルがついて来ません
http://rakuda-factory.sakura.ne.jp/tips_pv3d_1.html
このページを参考にして
http://freett.com/c4dbeginner/DaeSample3.as
このようにしてみたのですが
行 23 1046: 型が見つからないか、コンパイル時定数ではありません : Bitmap。
行 23 1180: 未定義である可能性が高いメソッド Bitmap の呼び出しです。

と言われてしまいます
何度も質問して申し訳ありませんが
どこが悪いのかアドバイスいただければと思います
327 :3122011/05/05(木) 08:43:16.58 ID:AZr/wVp2
>>326のリンクは間違っていました
オブジェクトを読み込めるようになったのは
http://freett.com/c4dbeginner/Daetest.fla
http://freett.com/c4dbeginner/Daetest.as
http://freett.com/c4dbeginner/Daetest.swf

http://rakuda-factory.sakura.ne.jp/tips_pv3d_1.html
を参考にマテリアルを追加してみたのは
http://freett.com/c4dbeginner/Daetest3.as
です
よろしくお願いします
320 :Now_loading...774KB2011/05/05(木) 01:38:33.15 ID:otq5z3k5
videoクラス(FLVPlayBack使わない)でビデオプレイヤー作ってるんだけど
.bytesTotalがどうしても取得できない、bytesLoadedは取得できてて、合計時間や現在の再生フレームなんかも取れるのに
どうしてもbytesTotalだけが取れない
ぐぐってサンプル見つけてもエラーで動かなかったり、取得できなかったりしてます

bytesTotal取れるお手本教えてください(FLVPlayBack使わない方法で)
本当に簡単なやつでいいですので、それだけ教えてください、もう4日も悩んでます、お願いします
325 :Now_loading...774KB2011/05/05(木) 07:02:44.00 ID:eOI2Cyew
>>320
対象の動画をもう一度作り直す事をオススメするかな。
動画エンコ時にメタデータミスって値がおかしくなるのはよくある。
381 :3202011/05/08(日) 02:19:50.93 ID:0v5J1vC5
>>325
ありがとうございました、遅くなりましたが解決しました
以前レスいれたと思ったのに入ってなかった、申し訳ない
322 :Now_loading...774KB2011/05/05(木) 04:33:29.46 ID:FpJ4uNN6
AS2.0ですが、BGMが最後まで行くと停止して最初に戻りたいのです。
ただしBGMはMCをクリックして鳴らすためタイムライン上でthis.stop();とかは出来ません。
330 :Now_loading...774KB2011/05/05(木) 10:07:59.84 ID:ERj/4a3I
>>322
>BGMが最後まで行くと停止して最初に戻りたいのです。
何を停止して何を最初に戻らせたいの?
BGM?タイムライン?

BGMをループさせたいだけだったら再生時に指定できるけど
まあとりあえずttp://hakuhin.jp/as/sound.html#SOUND_03

335 :Now_loading...774KB2011/05/05(木) 11:33:09.35 ID:cJnZg0DT
>>322
bgm = new Sound();
bgm.attachSound();
bgm.start();
bgm.onSoundComplete = function(){
bgm.start();
};

パスの指定は自分で変えてね
346 :Now_loading...774KB2011/05/05(木) 15:30:27.95 ID:FpJ4uNN6
>>330,335
ありがとうございました!
更に質問なんですが、一時停止と再生のボタンをつくていてうまくいきません。
音楽のインスタンス名はsoundです。

一時停止ボタン:A
on (release){
pause_point1 = root.sound.Sound.position;
_root.sound.stop();

再生ボタン:B
on (release) {
_root.sound.start(pause_point1 /1000);
pause_point1=0;
}
一時停止はするんですが、再生ボタンを押したら最初から再生してしまいます。
どこが間違っているのでしょうか。
347 :Now_loading...774KB2011/05/05(木) 15:37:47.97 ID:yAd/r1yg
>>346
「as2なら」一時停止はpause()だったはず。再開もpause()なので注意
348 :Now_loading...774KB2011/05/05(木) 15:52:05.61 ID:FpJ4uNN6
>>347
ありがとうございます。
pause();は初耳で使い方がよく分からなかったので、stopの代わりに入れたりon(release){pause();}
にしてみたりしたんですが止まらないのは、何か書き忘れでしょうか。
349 :Now_loading...774KB2011/05/05(木) 17:02:52.35 ID:cJnZg0DT
>>346
ボタンAの2行目は
pause_point1 = _root.sound.position;
あとボタンがMCならpause_point1にパス入れないとダメ
351 :Now_loading...774KB2011/05/05(木) 17:24:40.75 ID:yAd/r1yg
>>348
ああ、他にもいくつか間違ってるな。一応こうすれば動くことを確認した。

フレームアクション
var pause_point1= 0;
var sound = new Sound();
sound.attachSound(サウンドのリンケージ名);

停止ボタン
on (release) {
_root.pause_point1 = _root.sound.position;
_root.sound.stop();
trace(_root.pause_point1);
}

再生ボタン
on (release) {
_root.sound.start(_root.pause_point1 / 1000);
_root.pause_point1=0;
}
323 :Now_loading...774KB2011/05/05(木) 06:23:03.24 ID:TIb/sfcK
バナーゼストというソフトで作ったswfファイルを複数用意し、メインswfのボタンで呼び出して読み込ませたいのですが、どういう訳かインスタンスを指定すると呼び出せません。
とりあえず以下のサイトの手順でやってみたのですが、やはりインスタンスが指定出来ません。
329 :Now_loading...774KB2011/05/05(木) 09:53:27.19 ID:ERj/4a3I
>>323
全然いみわからん

 言語は2.0?
>やはりインスタンスが指定出来ません
インスタンスを指定するとはどういう意味か swfを読み込む先?
指定できないとはどういう意味か エラーメッセージが出るのか思ったように動かないのか

外の方法?フレーム表示のように?

とりあえずurlとまったく同じように作ってみたら?
swfもサンプル使って
んで次にバナ−ゼストのswfと差し替えてみる
324 :つづき2011/05/05(木) 06:25:05.33 ID:TIb/sfcK
インスタンスを指定しないでボタンで読み込むとボタン部分が消え、読み込んだswfファイルだけが表示されます。
外の方法でボタンを使い、フレーム表示のように外部swfを呼び出す方法はありますでしょうか?
http://orange.2-d.jp/flash/action/15_swf_load.html
http://flashrave.org/as/loadmovie/
328 :Now_loading...774KB2011/05/05(木) 09:41:09.13 ID:ERj/4a3I
行 xx 1046: 型が見つからないか、コンパイル時定数ではありません : Hoge。
行 xx 1180: 未定義である可能性が高いメソッド Hoge の呼び出しです。

Hogeクラスをインポートせずに使おうとすると出る
332 :312 2011/05/05(木) 10:41:38.83 ID:AZr/wVp2
>>328
312です
アドバイスありがとうございます
ということはこの場合は「Bitmapクラスをインポートする必要がある」ということでしょうか
http://rakuda-factory.sakura.ne.jp/tips_pv3d_1.html
このページでは特にそれについての記述はないようですが
import org.papervision3d.materials.*;
import org.papervision3d.materials.utils.MaterialsList;
以外に何をインポートすればいいのでしょうか
もう少しヒントをください
お願いします
334 :Now_loading...774KB2011/05/05(木) 11:13:08.99 ID:ERj/4a3I
>>332
だってそのページにはpapervisionのクラスのimportだって書いてないじゃん
そこまでわかってるなら「Bitmap」クラスの「完全修飾クラス名」調べてimportするだけなんだが

クラスファイル内で同ディレクトリにない他のクラスを使うには全部インポートしなくちゃいけないんだよ
ActionScript3.0の基本をもうちょいしっかりやったほうがいいかも

CS5使ってんならflashdevelope使うとかなり便利になるよ
336 :Now_loading...774KB2011/05/05(木) 11:41:29.06 ID:AZr/wVp2
>>333
>>334
確かにおっしゃるとおりまだ始めたばかりで基礎がわかっていないところがあると思います
ActionScriptやPeprevison3Dの本もいくつか買ったのですが載っていなかったりわかりにくいところが多く
周りに詳しい人もいないので・・
FlashDevelopのことも今初めて知りました
これから導入してみたいと思います

調べたところBitmapクラスの上位クラスらしいdisplayクラスをインポートしたところ
import flash.display.*;
エラーは出なくなりました
しかし出力されたswfにはやはりマテリアルがついて来ません
http://freett.com/c4dbeginner/Daetest8.as
http://freett.com/c4dbeginner/Daetest6.swf
あとは何が足りないのでしょう・・・?

333 :Now_loading...774KB2011/05/05(木) 10:50:40.68 ID:eOI2Cyew
型が見つからないって言ってんだから、とりあえずそれっぽいの一通りインポートしてみたらどうだい。
337 :Now_loading...774KB2011/05/05(木) 11:59:34.01 ID:ERj/4a3I
とりあえずそれはdisplayクラスをインポートしているわけじゃないんだぜ

Mat_Color.jpgは消しちゃった?
見れない
338 :Now_loading...774KB2011/05/05(木) 12:02:45.69 ID:AZr/wVp2
>>337
えっそうなんですか・・
http://freett.com/c4dbeginner/Mat_Color.jpg
消えていました失礼しました
上げ直しました
340 :Now_loading...774KB2011/05/05(木) 12:10:50.17 ID:AZr/wVp2
>>338のMat_Color.jpgがふりちけの同じフォルダにあるので今
http://freett.com/c4dbeginner/Daetest6.swf
にはテクスチャがついていますが
Daetest6.swfだけをダウンロードするとポリゴンだけになってしまいます
埋め込みは出来ているはずですがマテリアルの適用が出来ていないということでしょうか
339 :Now_loading...774KB2011/05/05(木) 12:07:23.43 ID:AZr/wVp2
http://www.rcc.ritsumei.ac.jp/~romer30/seminar/actionscript30/class.html
このページで
たとえばflash.displayパッケージ以下のクラスを扱いたい場合は。
import flash.display.*;
のように書きます。

と書いてあったのでやってみたのですが
displayクラスのインポートとは違っていたのでしょうか
341 :Now_loading...774KB2011/05/05(木) 12:36:59.65 ID:ERj/4a3I
>>339
displayパッケージのクラスを全部インポートするよって意味
まあそれでBitmapクラスは使えるようになるから大丈夫

たしかに埋め込みはできているけどポリゴンには適用されていないね
ためしにMat_Color.jpg→Mat_Color1.jpg
にしてasファイルのEmbedもそれに直してコンパイルすると
同じフォルダにあってもワイヤーフレームになる

dae開くと
<library_images>
<image id="ID5">
<init_from>tex/Mat_Color.jpg</init_from>
</image>
</library_images>
ってあるから、つまりdae側でマテリアルのjpgを指定している状態だから
埋め込み画像を使っていたわけじゃないんだね。

もうちょい調べてみる
343 :Now_loading...774KB2011/05/05(木) 13:17:17.37 ID:ERj/4a3I
http://rakuda-factory.sakura.ne.jp/tips_pv3d_1.html
>myMaterials.addMaterialメソッドで設定している「Material_1」は
><COLLADA>−<library_effects>−<effect>のname属性を指定しています。
これだよなあ
ttp://aaharu.blogspot.com/2009/07/pv3dflexcolladadae.html
このへんみてsample.daeのマテリアル割り当てのname探したけどよくわからんかった


とりあえず
myMaterials.addMaterial(new BitmapMaterial(material0.bitmapData),"Material_1");

myMaterials.addMaterial(new BitmapMaterial(material0.bitmapData),"all");
にしたら望みの動作はしたよ


あと
var dae:DAE = new DAE( XML(new ndae));
こいつのせいで警告でてるよ。引数はいらない
344 :Now_loading...774KB2011/05/05(木) 14:40:59.32 ID:AZr/wVp2
>>343
ありがとうございます!
何度も質問してすみませんでした
他のアドバイスいただいた方もありがとうございました
もう一度基本から勉強して今後はご迷惑かけないよう頑張ります
345 :Now_loading...774KB2011/05/05(木) 14:50:09.57 ID:AZr/wVp2
var dae:DAE = new DAE( XML(new ndae));

これを
こう直したところ警告も出なくなりました

var dae:DAE = null;
dae = new DAE(false,"",false);

ありがとうございました!
352 :Now_loading...774KB2011/05/05(木) 18:50:23.27 ID:WGdQl6ma
ActionScriptって何のツールで開発してますか?
お金ないからFlashDevelopで勉強してますが、実際の開発現場では
何のツールが主流なんでしょうか。
やっぱりFlashProfessional買わないとダメですか?
354 :Now_loading...774KB2011/05/05(木) 20:00:33.48 ID:4IppW0KE
>>352
まぁ開発要件に拠るわね
どんな仕事とるかも会社によって違うだろうし
357 :Now_loading...774KB2011/05/05(木) 20:52:40.03 ID:yAd/r1yg
>>352
自分の場合、スクリプト書きだけなら、FlashDevelop一択。
コンパイル(パブリッシュ)はFlashの製品を使う。

ただ、Adobeの提供しているSDKにコマンドラインのコンパイラが
含まれてなかっただろうか? それを使えば無料のはず。
俺自身は、そんな不便なものを使うなら、何万円か払ってでも
製品を買う方を選ぶが。
353 :Now_loading...774KB2011/05/05(木) 19:09:24.74 ID:ma+fyu3t
絵がかけることとコンポーネント以外にメリットないんじゃね
WebサイトつくるならadobeCSだろうな
355 :1752011/05/05(木) 20:26:57.28 ID:e3134Z8X
ちょっと情報を整理しました、相対パスに関する質問です

HTMLの一部(http://www.testsite.com/html/index.html)
<base href="http://www.testsite.com/" />
<object data="./swf/sample.swf" width="640" height="320" type="application/x-shockwave-flash">
<param name="movie" value="./swf/sample.swf" />
<param name="base" value="./image/" />
</object>

ActionScript3.0コードの一部(http://www.testsite.com/swf/sample.swf)
var loader:Loader = new Loader();
loader.load(new URLRequest("background.png"), null);

このとき、画像ファイルの取得先のURLは
http://www.testsite.com/image/background.png
となりましが、これをloadを実行する前に求める方法はありますでしょうか
356 :Now_loading...774KB2011/05/05(木) 20:43:48.86 ID:yAd/r1yg
>>355
この例において、画像のURLに含まれる
/image/
というディレクトリの名称はどこから得るのだろうか。
「それを得る方法を知りたい」のであれば、答えは「出来ない」。
通常、サイトのディレクトリ設計を行い、読み込む画像のディレクトリを
固定し、そのパスをスクリプト内に定数として設定しておくと良いだろう。

蛇足ながら、特にベースをいじらなければ、相対パスは
「htmlのある位置」を起点に昇り降りする。swfの位置ではない事に注意。
362 :Now_loading...774KB2011/05/06(金) 09:48:39.44 ID:fLowWZwS
AS3でhogeフォルダのhageクラスとhigeクラスを参照するとき
import hoge.hage;
import hoge.hige;
と書いていたのを
import hoge.*;
と書くようにした場合、(hogeフォルダに他にいくらかのasファイルが存在するとして)
処理速度や実行ファイルのサイズなどに違いは出るでしょうか?
それともコンパイル速度に影響を与える程度でしょうか?
364 :Now_loading...774KB2011/05/06(金) 10:28:40.06 ID:nNlw0fFW
>>362
必要なクラスだけコンパイル時にimportされるから実行時には問題ないらしいよ


ENTER_FRAMEイベントってどこに割り当てても一緒だよね
クラスのオブジェクトにdispatchする必要なくない?
ぜんぶstageとかでいいじゃん
365 :Now_loading...774KB2011/05/06(金) 12:33:41.11 ID:HZk9S2L7
>>364
レスありがとう
そうするとワイルドカード(*)を使用した方がコードも短くなるし面倒も無い感じですよね
ネットのソース色々見ててわざわざクラス一個毎にインポートしているコードが多かったので
なんでかなーと思って…明示的にして分かり易くするためなのかな
367 :Now_loading...774KB2011/05/06(金) 13:58:53.36 ID:N6eFRpNa
と思ったけど、上で書いてたけど仕分けしてくれるのか。
ただ書き方悪いのか*だとダメな時もあるなぁ。
368 :Now_loading...774KB2011/05/06(金) 16:59:06.99 ID:qUOBN8YR
>>367
俺もある

余談だけど、今直面してるのは、テストでうまく行ったソースを組み込んだら
エラー吐かずに動作はするけど、期待した通りの動きにならず、
traceしたらその直前で止まってる
前にもあったけど、別のPCでやると問題なくうまく行く時とかもある、なんだこれ?
372 :Now_loading...774KB2011/05/06(金) 21:49:13.01 ID:hQormDu+
>>368
Flashはシングルスレッドだけど、ファイルの取得やら展開やらを任意のタイミングで行えないから
実行するたびにイベントが発生する順番が前後になったりする。
ある端末では展開の方が速く、別の端末ではタイマー系イベントが早いとか、
そもそも展開自体が順不同で完了したりするんで、そういうのを確認できるテストコードを埋め込んでみたら?

あとはFlashのバージョンが違うとかメモリ不足とか
369 :sage2011/05/06(金) 17:39:51.28 ID:ula54H3j
すいません!fl.controls.DataGridについて教えてください。
IDという名前のカラムを上から順番になめて、IDが同じだったら
その行の値を更新する、という処理が記述したいです。
特定の行の値を修正するメソッドはeditFieldでできる事が分かったのですが・・・

getItemAt(0)とか、toArrayとか試してみましたが、どれも中身が空っぽで
値が取得できません・・・

370 :Now_loading...774KB2011/05/06(金) 18:58:07.73 ID:1Cpb2HVx
>>368
今日直面したんだけど
パッケージ名と変数名がかぶると変な動作になることが・・

>>369
具体的にどの操作が現状できてないのか知らんが
http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/fl/controls/DataGrid.html#editField()
ここ読みゃできるっしょ
371 :Now_loading...774KB2011/05/06(金) 20:44:39.08 ID:8DNmHXfr
FLASHcs5なんですが、
AIRの終了からの起動の動作のテストをするためには、
実際にAIRアプリにしてインストールしないとダメなんですか。
373 :Now_loading...774KB2011/05/06(金) 23:51:06.97 ID:Z9kFvpCe
すみませんどこに質問したら良いか分からなくてflashゲームのスレで質問してみたらここに誘導されたものです

こんな感じのパズルゲームなんですけど
http://homepage2.nifty.com/GIZMo/jigsaw/puzzle1/puzzle1.html
自分の好きな画像を読み込ませて使いたいです(こんな感じで)
http://homepage2.nifty.com/GIZMo/jigsaw/haifu/puzzle0/index.htm
こういうflashのプログラムを販売してる所って無いですか?

用途としてはホームページに発行元のリンクなしで埋め込み?リンク?したいです。
宜しくお願いします。
374 :Now_loading...774KB2011/05/06(金) 23:53:57.55 ID:LMdbGElJ
auのFlashLite2.0携帯からloadVariables関数を実行して外部通信できずに困っています。

auのFlashLite3.0やDocomoのFlashLite3.0携帯では同ソースで外部通信が成功しているのですが
auのFlashLite2.0の環境から通信するとHTTPサーバーへのリクエストも飛ばずにエラーとなります。
auFlashLite2.0機種でも、外部通信以外のプログラムは正常に動作しておりloadVariables関数のみが動きません。
数機種試して貰ってるのですがFlashLite2.0対応の全てのau機種でloadVariables関数が動きません
Device Centralのエミュレーター環境では「FTPA003 loadVariables は無視されます。」というエラーが表示されます。
実機で試して貰ってもauの2.0機種では通信できずにアプリが止まります。
375 :Now_loading...774KB2011/05/06(金) 23:54:41.71 ID:LMdbGElJ
>>374続き

http://emor.in/dev/?p=706」を参照して次の対応をしているのですがloadVariables関数が動きません。

・FlashLite3.0までは勝手にパケット代が加算されないように、ユーザーがボタン操作した時じゃないと
Flashから外部サイトにアクセスできない制限がある。なのでonKeyDownイベントの中に1度だけloadVariables関数を実行しています。

・loadVariable関数のターゲットは「_root」にしGETで投げる。

・PHPでは「header("Content-type: text/plain");」でデータを返してますが、HTTPサーバの
ログにloadVariablesのリクエストが来てる形跡がありません。

auで外部通信する場合の留意点やサンプルソースがありましたら教えてください。
376 :Now_loading...774KB2011/05/06(金) 23:55:19.08 ID:LMdbGElJ
>>374続き

環境:FlashLite2.0(ActionScript2.0)、FlashDevelop+FlexCDK
ソース部分
var myListener:Object = new Object();
myListener.onKeyDown = function() {
_root.onData = function() {
trace(_root.sgf); //通信が成功した場合の処理部分
}
loadVariables(sgfurl, _root, "GET"); //sgfurlは外部アクセス先
}
Key.addListener(myListener);
404 :Now_loading...774KB2011/05/09(月) 15:27:34.58 ID:6GBZRSoS
>>403
>>376のloadvarsがau端末で動かない原因が、ボタンインスタンスのイベントに記述していないから
ではないかと予想しているのですが、asファイル中からのボタンインスタンスの作成方法が分りません。
現在はMovieClipに画像を読み込んでボタンライクに利用していますが、FlashProfessionalで言うところの
「シンボルに変換→種類:ボタン」にあたるActionScriptの書き方及び、インスタンスへのイベントの挿入方法
はどのように行えば良いのでしょうか?
実際に使いたいのは「on (release)」イベントですが、まずは「onClipEvent」イベントが動作するかを
試しています。
410 :Now_loading...774KB2011/05/10(火) 22:49:38.43 ID:OV1GcIKV
>>409
原因が分りました。Device CentralのメニューからURL開くでWeb上のSWFを開く場合と、
ファイル開くで直接SWF開いた場合は同じSWFでも動作が異なるようです。
>>376の外部通信も直接SWF開く方法で上手くいきました。
それぞれの違いが不明ですがこれで1週間以上はまりました・・・
377 :Now_loading...774KB2011/05/07(土) 18:34:52.97 ID:LiQcYL4Y
バナーゼストで書き出したswfファイルが、親swf上で呼び出す場合にインスタンスのオプションがつけられないと書いたものです。
何度やってもだめで、アップしましたので教えて頂けると助かります。
",1"",2"などの階層オプション もだめでした
http://www1.axfc.net/uploader/Flash/so/1833
バナーゼストで作ったファイルです
379 :Now_loading...774KB2011/05/07(土) 21:39:57.97 ID:E/7QTvb3
>>376
AUの2.0は無理

>>377
バーカ
385 :Now_loading...774KB2011/05/08(日) 19:02:00.63 ID:9nKCAD+u
>>379
AUのFlashLite2.0でloadVariablesが無理というのはどこかに情報載ってますでしょうか?
自力検証した結果ですか?
387 :Now_loading...774KB2011/05/08(日) 19:18:12.03 ID:WqDi26xn
>>385
今公式見てみたら、loadMovie()/loadVariables()で読み込みできるのはswfのみってなことが書いてあったけど
そこら辺の問題じゃないのか?
380 :3202011/05/08(日) 02:17:34.50 ID:0v5J1vC5
AS3.0
cgiとかのURL(.php?file=hoge.m4vとか)でアクセスしたら.m4vとか.flvとかのデータが飛んでくるんだけど、
これをFLVPlaybackやvideoクラスで再生するにはどうしたら出来ますか?
現在はファイルそのもののURLなら再生する事が可能な状態です。
ちなみにファイル直リンクURLはわかりません。

また仮にこれを再生出来たとして、どこから飛んできてるかURLを取得する事ができますか?
382 :3772011/05/08(日) 04:53:43.78 ID:fgUvCI6M
なんどもすみません。
該当ファイルと、flaファイルなどをまとめてあげてみました。
内容は、メインのswfと、cs4,バナーゼストそれぞれで書き出したファイルとなっています。
http://www1.axfc.net/uploader/Sc/so/231906.zip
わかる方いましたら、よろしくお願いします。
383 :Now_loading...774KB2011/05/08(日) 17:59:03.36 ID:KVw4LRtD
actionscript3.0で、XMLについてなのですが
<root>
 <aaaa>
  <title>title1</title>
  <bbbb>
   <c1>111</c1>
   <c2>222</c2>
  </bbbb>
 </aaaa>
 <aaaa>
  <title>title2</title>
  <bbbb>
   <c1>333</c1>
   <c2>444</c2>
  </bbbb>
 </aaaa>
</root>

このXMLの111の値を取りたくて trace( xml.aaaa[0].bbbb.c1 ) とやってみたのですが、結果が <c1>111</c1> となってしまいます
このc1タグを取り外して中身の111を扱いたいのですが、どのようにすればタグを外せるのでしょうか?
また trace( xml.aaaa[0].title ) とすると title1 と中身だけが出てきたのですが、このタグが付く・付かないの違いはなぜ起こるのでしょうか?
384 :Now_loading...774KB2011/05/08(日) 18:40:03.83 ID:rnW6SjPC
>>383
普通に111だけとりだすはずだけどなあ?
XMLノードの表現出力する場合は、trace( xml.aaaa[0].bbbb.c1.toXMLString())だけど。
その辺ちゃんと階層構造になってないんじゃね?
他のXMLパーサに読み込ませてXML的に合ってるか確認してみたら?
401 :Now_loading...774KB2011/05/09(月) 00:31:36.87 ID:gMY0hjUY
>>383
同じアプリの開発中にもタグがついたりつかなかったり変わる。
原因は今のところ不明。
xml.aaaa[0].bbbb.c1.toString() で目的の表示になると思う
386 :Now_loading...774KB2011/05/08(日) 19:15:37.42 ID:r8zymY7s
FLEX4で、for文で1000回ループする処理があるんですけど、
処理に時間がかかるんで処理中は画面が音沙汰なしになります。
そこで、Labelに何回目のループかを表示させようとしたら、
ループを抜けたときにだけ表示されてしまいます。
ループ中にも画面反映するには、どうやればいいんでしょうか?
388 :Now_loading...774KB2011/05/08(日) 19:18:15.08 ID:YQxTMOEH
>>386
ループ抜けるまでは、描画処理は更新されないから無理じゃね?
ループを分割するとか、別の方法で
390 :3862011/05/08(日) 19:24:30.49 ID:r8zymY7s
>>388
ありがとうございます。
やはりループ内の再描画なしですか。別の方法を考えます。
394 :Now_loading...774KB2011/05/08(日) 20:49:04.86 ID:vHUxChio
>>388
これ地味に辛いよね、プログレスバーやローディングアイコンも更新できなくて
ループで回してるならまだ「時間経過を見て長すぎたらタイマー予約して一旦処理を返す」
とかできるけど、Loader.loadBytesで巨大なテクスチャを不特定多数展開しようとなると
一度に何枚まで実行していいか判断に困る
389 :3802011/05/08(日) 19:20:38.45 ID:0v5J1vC5
再度videoクラスで確認したところ、videoクラスで組んだものは正常に再生でき、
FLVPlaybackで組んだものは再生されずに止まってしまう事を確認しました
FLVPlaybackで再生する方法ありませんか?
391 :Now_loading...774KB2011/05/08(日) 20:13:40.95 ID:VUxpUUzc
flashのステージ上に配置されている全てのインスタンスを
AcrtionScriptで取得する方法はありますでしょうか?

box2Dでステージ上のインスタンスのサイズや座標を元に
box2Dのワールドに物体を配置することを考えています。

この考え方自体非効率的なのでしょうか?
393 :Now_loading...774KB2011/05/08(日) 20:34:36.57 ID:VUxpUUzc
現在インスタンス名を直打ちで指定し座標とサイズをスケーリングしbox2Dのワールドに配置しています。
この方法では今後いささか冗長と思われるので、代替する方法を模索しているというのが本来の趣旨です。
395 :Now_loading...774KB2011/05/08(日) 21:31:57.96 ID:CFFCjETR
cs5のair2なんですけど、
インストーラで発行者IDという項目が不明となるんですが、
どうすればIDをつけられるんですか?
ヘルプを見ましたが設定すべき項目がどこかわかりませんでした。
396 :Now_loading...774KB2011/05/08(日) 23:18:00.97 ID:s/A28QQF
javaのfinalのように、constは参照の変更を禁止するだけですか?
自分で試したいんですが、まだどんなクラスがあるのか全くわからないので...
397 :Now_loading...774KB2011/05/08(日) 23:38:47.40 ID:WqDi26xn
398 :Now_loading...774KB2011/05/08(日) 23:47:12.82 ID:hgd9vlWw
変数の指してるメモリアドレスって実行中取得できる?
399 :Now_loading...774KB2011/05/08(日) 23:51:27.67 ID:WqDi26xn
>>398
できない
400 :Now_loading...774KB2011/05/08(日) 23:56:36.65 ID:hgd9vlWw
>>399
そっかthx
ほんとにちゃんと同じもの指してるのかとかtraceしたかったんだが
===とか使うしかないのか
402 :Now_loading...774KB2011/05/09(月) 06:22:29.06 ID:6GBZRSoS
onClipEventイベントハンドラを使いたいのですが、記述場所がわかりません。
main関数の中に記述すれば良いのでしょうか?下記記述ではコンパイルエラーになってしまいます。

class test {
static function main() {
onClipEvent(keyDown) {
trace("test");
}
}
}

環境:FlashLite2.0(ActionScript2.0)、FlashDevelop+FlexCDK
403 :Now_loading...774KB2011/05/09(月) 12:57:34.83 ID:azIxOCqS
>>402
onClipEventハンドラは、インスタンスに書くんだよ
AS2.0なら敢えて使う必要はないと思うが、何か理由があるの?
AS2.0なら、かわりにonMouseDownとかなんかそんなのがあったはず
405 :Now_loading...774KB2011/05/09(月) 21:15:57.97 ID:OOuC18df
as3からsoapを呼び出したいのですが、どのようにすれば良いのでしょうか?
webserviceというクラスがありますが、情報が少なく使い方がわかりません
406 :Now_loading...774KB2011/05/09(月) 21:49:45.67 ID:lLIlGksU
MovieClipがアニメーションしなくて困ってます。以下の手順で再現
1. 新規flashドキュメントを作成。
2. 画面左上に100x100ドット程度の四角を描画。それをシンポルに変換し、名前を Symbol1、インスタンス名を obj1とする
3. タイムラインの2フレーム目を右クリックし、「キーフレームの挿入」を実行。obj1 を右下に移動
4. 保存して実行。obj1が 左上<=>右下 と交互に高速に移動し続けている事を確認
407 :Now_loading...774KB2011/05/09(月) 21:50:09.83 ID:lLIlGksU
(つづき)
5. 実行を終了し、タイムラインの1フレームを右クリックし、アクションをクリック
6. 1フレーム目のコードとして "obj1.width = 1;" を記述する
7. 保存して実行。obj1は縦長の線になり、左上で停止している。

期待する動作は、手順7において、obj1が縦長の線のまま、左上<=>右下 と移動する事です。
環境は Windows版 Cs5です。よろしくお願いします。
409 :Now_loading...774KB2011/05/10(火) 16:06:36.10 ID:OV1GcIKV
Device CentralのエミュレートでSWFのURLを直接開いたのに、インタラクティブモードで開くことができません。
コンテンツタイプはブラウザになっています。

ステージにボタンを作り「Selection.setFocus」でボタンにフォーカスをあてています。
FlashProfessionalCS5から「制御→ムービープレビュー→Device Central」からSWFを開くと
ボタンにフォーカスがあたっているので、そのまま決定キーでボタンが動作します。

このプロジェクトからSWFを作成して、Device CentralからSWFのURLを直接開くと
ボタンにフォーカスはあたっているのに決定キーが利きません。
画面を一度クリックしてからボタンにフォーカスを合わせ直すとボタンが有効になります。

FlashProfessionalCS5からの制御で開いた場合と同じ状態でSWFファイルを開けないでしょうか?
411 :Now_loading...774KB2011/05/11(水) 00:08:28.48 ID:exUxY3SC

Flash Builder 4.5の試用版を
ダウンロードしたのですが、
Subversionのクライアントの機能は
追加で入れる必要があるようです。

Flash Builder 4 の時には、Subclipseをインストールしましたが、
Flash Builder 4.5でも同じやり方でいくでしょうか。
既に試されたかたがいたら教えてください。

よろしくお願いします。
412 :Now_loading...774KB2011/05/11(水) 00:18:20.90 ID:ONK+GUND
AIRのデスクトップアプリを作っているんですが、
アルゴリズム?的なところでわからないところがあるので
助言ください。

ユーザが1日に1回実行できる処理があります。
この処理を、最後に実行してから2日以上経過した後に、実行した場合、
最後に実行してから前日までの年月日を記録します。
例:処理を2011/3/21に実行。その後、2011/3/25に実行。
間の3/22〜24を記録する。
日付はOSからとっています。

ここでOSの日付を未来に変更することによる処理の実行を区別するにはどうしたらいいでしょう。
上の例で言えば、3/21に処理を実行し、
直後にOSの日付を3/25に変更し実行する処理を、本来の場合と区別したい。

ローカルデータベースは持っています。

よろしくお願いします。
413 :Now_loading...774KB2011/05/11(水) 00:20:52.42 ID:jHQ0dL8P
ネットワークから日付とってきたら?
415 :Now_loading...774KB2011/05/11(水) 00:27:15.56 ID:ONK+GUND
>>413
すみません。
ネットに接続せずローカルで対処する方法はないでしょうか?
416 :Now_loading...774KB2011/05/11(水) 00:32:45.68 ID:sOq5VyN1
>>415
こういうのは目的によって実装が異なるかも

テスト目的ならいくらでもやりようがあるだろうけど、
タイムカードの不正防止みたいな物を堅牢に作ろうとするのなら
ローカルだけでは難しいかもね。
417 :Now_loading...774KB2011/05/11(水) 01:31:09.92 ID:ONK+GUND
>>416
フリーのアプリなんで堅牢である必要はないです。
414 :4122011/05/11(水) 00:24:06.51 ID:ONK+GUND
補足です。
アプリは常に起動しているわけではなく、
自由に終了したり起動したりできます。
当然ですが、終了したら時間を監視したりということはできません。
また、ネットへの接続なしでも動作する仕様ですが、ネットに接続する仕組みは持っています。
418 :Now_loading...774KB2011/05/11(水) 04:23:35.96 ID:jKheHA7g
3/21に処理を実行して、アプリを終了せずにOSの日付を変更した場合の処理を区別したいってこと?
それならTimer使えばいいと思うけど。

アプリを終了したあとも区別したいっていうならネットワークから取ってくるしかない。
419 :Now_loading...774KB2011/05/11(水) 18:20:51.19 ID:v2LBBkF1
AS3で、ご質問です。
どのクラスからも参照できるGlobalクラスについてです。

-------------------------------
フォルダ構造は以下のとおりです。

Global.as
viewフォルダ
uiフォルダ

となっており,

uiフォルダの中に、
NextBtn.as というクラスを入れてあります。
-------------------------------

NextBtn.asから、Global.asがもつpublic関数(例えばhoge()とします)を実行したいとき、
Global.hoge();としても、実行できません。

それは、Global.asとNextBtn.asが同じ階層に無いから、
なのはわかっているのですが、

では、このように階層が違う場合、
どのようにして書けばよいのでしょうか。。

ご存知の方いらっしゃいましたら、
何とぞよろしくお願いいたします。
420 :Now_loading...774KB2011/05/11(水) 19:20:58.40 ID:3FNIkHhp
import Global;

そもそもNextBtn.asにパッケージ名つけてなさそうだけど
421 :Now_loading...774KB2011/05/11(水) 19:40:58.60 ID:v2LBBkF1
>>420さん
ありがとうございます!動きました!
教えてくださったことプラス
Global.asがもつ
staticな関数の中で使っている変数を
staticにしていなかったのが原因のようでした。

本当にありがとうございます!
422 :Now_loading...774KB2011/05/11(水) 21:56:04.53 ID:ZLLYexbA
var Vec:Vector.<Object>= new Vector.<Object>[
{ a:new Vector.<Object>[
{x:0,y:0},
{x:0,y:0}
],
b:{x:0,y:0},
c:{x:0,y:0}},

{ a:new Vector.<Object>[
{x:0,y:0},
{x:0,y:0}
],
b:{x:0,y:0},
c:{x:0,y:0}},
];

質問です。上のコードを新しいドキュメントの1フレーム目に記述しプレビューすると
「VerifyError: Error #1058: 無効なオペランド型 :* は String でなければなりません」
というエラーが出てしまうのですがどこが間違っているのでしょうか?
424 :Now_loading...774KB2011/05/12(木) 00:19:40.43 ID:Imstnvvf
>>422

var Vec:Vector.<Object>= new Vector.<Object>([
{ a:new Vector.<Object>([
{x:0,y:0},
{x:0,y:0}
]),
b:{x:0,y:0},
c:{x:0,y:0}},

{ a:new Vector.<Object>([
{x:0,y:0},
{x:0,y:0}
]),
b:{x:0,y:0},
c:{x:0,y:0}}
]);
425 :Now_loading...774KB2011/05/12(木) 15:44:41.51 ID:AFe0U7WZ
airアプリケーションを作ってます
起動時にアプリケーションのアイコンをクリックしても複数起動はできないようでした。
複数起動可能なアプリケーションを作るにはどうしたらいいでしょうか。
ググってみるとapplication.xml を書き換える事で対応できるらしいけど、その場合、
起動したい数の分だけインストールする必要があると思います。そうではなく、1回だけ
インストールして、リソースが許す限り10個でも20個でも起動できるようにしたいです。
426 :Now_loading...774KB2011/05/13(金) 01:35:08.30 ID:ly9l5k3D
質問です。
AIRアプリで、起動するとシステムトレイにアイコンを表示するようにコードを書いているのですが、
Flash上でデバッグする場合、きちんと動作しますが、
airアプリにパブリッシュした後にインストールすると、
システムトレイにアイコンが表示されません。
何度か試していて、
最初は正常に動いていたんですが、
気づいたらアイコンが表示されなくなっていました。
PCを再起動しても変化ありません。
原因がお分かりの方がいたら教えてください。
446 :4262011/05/13(金) 22:25:29.74 ID:ly9l5k3D
>>426
どなたかよろしくです。
448 :Now_loading...774KB2011/05/14(土) 01:35:55.80 ID:0QeVy/qk
>>446
Airの事が全然分からないまま知ってる事だけ答えると、システムトレイのアイコンってのは
登録に時間がかかる場合、失敗する事がある。特に起動時なんかは色々な重いソフトの
起動と重なる事もあるので、環境によっては失敗する事も結構多いみたい。
これを回避するためには失敗時のリトライ処理が必要で、詳細は以下のページに書いて
ある通り。

http://support.microsoft.com/kb/418138/ja

ただ、これは一般論であって、最初に言った通り、Airの場合に当てはまるかどうかまったく
分からないので参考になるかなー
451 :Now_loading...774KB2011/05/14(土) 09:13:18.40 ID:rshOWMJO
>>426
参考になるだろうか?
ttp://rx8.cocolog-nifty.com/blog/2008/09/air-fccb.html
427 :Now_loading...774KB2011/05/13(金) 04:22:07.16 ID:eYv2nSmD
例えばAというメインクラスがあり、メソッドが1000個記述されています。
この中で頻繁に使うメソッドは1つだけなので999メソッドを別のクラスBに分けたとします。
メインクラスAから必要に応じてBのインスタンスを作って利用した場合、
Aに全てのメソッドが存在する場合よりメモリの節約になりますか?
999メソッドはAの初期化時にコンストラクタでしか利用せず、その後は一切利用しません。
メモリがシビアな状況になってるので上記手法でメモリの節約ができるかを知りたいです。
428 :Now_loading...774KB2011/05/13(金) 11:55:53.28 ID:Zh1NuPlC
win7、cs5を使用しています。配列アクセス演算子がうまく使用できず悩んでいます。

例)
var Sansyou:Object=_Mainins;//参照を受け取る
var hoge:Object;
hoge="Skill_Flg[1][0]";
trace(Sansyou.Skill_Flg[1][0]);//→Skill_Flg[1][0]の中身0が表示される
trace(Sansyou[hoge]);//→undefinedになる

Sansyou[hoge]のように、配列名をhogeに入れて配列の中身にアクセスしたいのですがうまくいきません。
ドット演算子だとアクセス可能なのですが、配列アクセス演算子だと失敗してしまいます。
なにか根本的に間違いがあるのでしょうか?
429 :Now_loading...774KB2011/05/13(金) 12:50:39.60 ID:g3kH1T0N
>>427
一回でも使う以上ロードされるんじゃん

メインクラスのコンストラクタで999のBを作って実行→もう使わないのでBを破棄することで999メソッドをメモリから外せるかってこと?


>>428
hoge="Skill_Flg[1][0]";
は配列名じゃなくね
hoge="Skill_Flg";
trace(Sansyou[hoge][1][0]);
ではどう?
430 :Now_loading...774KB2011/05/13(金) 12:57:24.09 ID:Zh1NuPlC
>>429
できました!配列アクセスってそういうことだったんですね、手間かけさせてすみません、ありがとうございます。
436 :Now_loading...774KB2011/05/13(金) 15:27:58.53 ID:eYv2nSmD
>>429
そうです。
インスタンスを破棄しておけばソース分のメモリが節約できるのかなと思ったのですが
Flashの場合はどうなんでしょうか?
SWFが実行されている間はSWFのどこにメソッドが入っていてもメモリの使用量は変わらないのでしょうか?
437 :Now_loading...774KB2011/05/13(金) 15:41:53.81 ID:neKeb+tf
>>436
インスタンスの変数にnull入れておいて、そいつを参照してる変数とかが無ければ
ガベージコレクタが動作した時にメモリが解放されるんじゃないかな
438 :Now_loading...774KB2011/05/13(金) 17:02:32.57 ID:aHtLubF+
>>434の発狂にワラタ


>>436
うーん。もともとクラスAのインスタンスa1,a2があったとして
Aのメソッド、a1のメンバ変数、a2のメンバ変数
がメモリにロードされるんだよね

プロパティはインスタンス分、メソッドは1つなわけだ
a2がGCに削除されたらa2のメンバ変数はもちろん解放されるよね
んでa1が削除されたときにa1のメンバ変数は解放されるけどAのメソッドはどうなんだろうね
もう使わないからって消されるんだろうか
ってことだよね。俺はわからんけど
431 :Now_loading...774KB2011/05/13(金) 13:43:41.97 ID:/C0m4WLm
イベントリスナーでエンターが押された時を取得したいんだけど
addEventListener(ここに何て書けばいいですか?

先日ぐぐって見つけて、うまく動いてたんだけど、間違って同名の他のasを上書きしちゃったんです
GACがご臨終になってて、おそらくそこで見つけたんだろうと思うんですが
それ以来2度と見つけられなくて困ってます
432 :Now_loading...774KB2011/05/13(金) 14:12:02.49 ID:g3kH1T0N
>>431
ttp://www40.atwiki.jp/spellbound/pages/611.html
このサイト一回全部読めよ
433 :Now_loading...774KB2011/05/13(金) 14:25:50.85 ID:/C0m4WLm
>>432
キーコード取得してって感じじゃなくて、エンターキーのみでいいの
それまでキーコードでうんたらかんたらしか出来ないと思ってたんだけど
その時見つけたコードでやったら簡単にエンターで実行できたんだよね
だからやりたいのはこれじゃないです
434 :Now_loading...774KB2011/05/13(金) 14:34:07.23 ID:g3kH1T0N
知るかヴォケエエエ!
んなもんねーよ!

>>431でお前の望む情報が得られると思うか?
435 :Now_loading...774KB2011/05/13(金) 14:40:55.91 ID:/C0m4WLm
>>434
それがあるんだなぁ
ほんとにスグレモなコマンドなんだけどなぁ、知らない?

もう少し詳しく書くとaddEventListener(ここに書くコマンドが知りたい
テキストインプットなんかにフォーカスがある時にエンターを押すと
イベントリスナーに指定したファンクションに飛ぶ
439 :Now_loading...774KB2011/05/13(金) 18:04:51.94 ID:eYv2nSmD
メソッドを一つのクラスにまとめた場合と2つのクラスに分けた場合で
実際にメモリ使用量が変わるか実験してみました。
クラスAのメインメソッドが終了した時点でクラスBのインスタンスを次のように削除しました。

delete obj_b;
obj_b=null;

これをやってもクラスを一つにまとめた場合と変動はありませんでした。
ただしクラスインスタンスではなく、グローバル変数に持っていた値をnullした場合は
メモリ使用量が減り、マニュアル通りにメモリが開放された動きをしています。

_root.test=null;

インスタンスは削除してもメモリ使用量減らないのかなぁ。
ちなみにガベージコレクションのインターバルである60秒を経過しても
クラスインスタンスのメモリ領域は開放された気配がありませんでした。

440 :Now_loading...774KB2011/05/13(金) 18:40:59.68 ID:sEVDcRJF
>>439
Flash Player はメモリをある程度の塊でもらってきて
足りなくなったら GC 対象のオブジェクトが使っていた領域を使える状態にするから、
メモリを酷使するような処理をしないとなかなか解放されない。

あと、GC のインターバルが 60 秒って情報はどこからか詳しく。
441 :Now_loading...774KB2011/05/13(金) 18:55:59.90 ID:eYv2nSmD
>>440
ここですが自分がやってるのはFlash7ベースのFlashLiteですので
新しいFlashバージョンのは異なるかもしれません。

http://livedocs.adobe.com/flash/9.0_jp/UsingFlash/help.html?content=WS4BC3BE1E-4574-4f96-BB90-23BFC3108D34.html
442 :Now_loading...774KB2011/05/13(金) 21:31:12.58 ID:aHtLubF+
三重ループをbreakで一気に抜けるにはどうしたらいいのん?
443 :Now_loading...774KB2011/05/13(金) 21:36:55.09 ID:nMJe4ktX
>>442
ループラベル。

manko: for (var i:int = 0; i < 2; i++) {
chinpo: for (var j:int = 0; j < 2; j++) {
break manko;
}
}
444 :Now_loading...774KB2011/05/13(金) 21:40:31.44 ID:aHtLubF+
>>442
breakステートメントの説明に普通にあったわ
よく調べず質問してごめんなさい
ありがとう!
break chinpoじゃなくてよかった
445 :Now_loading...774KB2011/05/13(金) 22:19:24.51 ID:aMf43Xo+
connect(); // NetConnectionでサーバに接続する関数
initStream(); // NetConnectionのNetStreamを作成する関数

みたいなコード書くと、
NetConnectionが、RTMPサーバに接続完了する前に
initStream()が呼ばれてしまうんだが、どうしたらいいんだろう。


447 :Now_loading...774KB2011/05/13(金) 22:33:27.75 ID:g3kH1T0N
>>445
NetStatusEventクラスは?
449 :Now_loading...774KB2011/05/14(土) 06:29:31.49 ID:Fl1lu4sD
ドキュメントクラスのみでスライドショーを作ったのですが、完成した後にプログレスバーを設置しなくてはいけなくなりました。
フレームに記載するタイプのプログレスバーは結構みかけたのですが…
フレームに記載するとエラーが出てしまいます。何か方法はあるでしょうか…
環境は Windows版 Cs4です。よろしくお願いします。
450 :Now_loading...774KB2011/05/14(土) 08:08:53.43 ID:DTfP1O+M
読み込み用のswfつくったら?
453 :Now_loading...774KB2011/05/14(土) 11:33:01.24 ID:Fl1lu4sD
>>450
ありがとう!なんとか解決しました
452 :Now_loading...774KB2011/05/14(土) 11:07:57.53 ID:sBPIu/ts
AIRってなんなの
FLASHなの?
AIRインストールしてあるパソコンならインストールなしで使えるソフトウェアみたいなもん?
web上にあるFLASHと比べて利点は?
454 :Now_loading...774KB2011/05/14(土) 12:57:09.39 ID:rshOWMJO
>>452
>AIRってなんなの
>FLASHなの?

そーだよ

>AIRインストールしてあるパソコンならインストールなしで使えるソフトウェアみたいなもん?

そーだよ

>web上にあるFLASHと比べて利点は?

ソースだよ

ではなく、スタンドアロン環境がVMにひと通り入っていることで、SQL動かしたり
JavaScript動かしたり、いろいろおもろいことができる。
またファイルストリームと言って、他言語のFile.open()的なファイルアクセス方法も
提供されてるから、イベントリスナーを書かなくても良い。
ASでデスクトップアプリ組めるってのは、ASerにはメリットかと。
455 :Now_loading...774KB2011/05/14(土) 13:06:15.77 ID:sBPIu/ts
>>454
なるほどthx
いまいち普及していない感があるんだよなぁ

有名なアプリケーションとかあるの?
456 :Now_loading...774KB2011/05/14(土) 13:35:27.48 ID:x4McDKXt
>いまいち普及していない感があるんだよなぁ

別途インストールが必要、ってのがねぇ。
457 :Now_loading...774KB2011/05/14(土) 14:36:36.49 ID:sBPIu/ts
>>456
FlashPlayerも一応そうなんだけどなぜかそれは許されるよね
460 :Now_loading...774KB2011/05/14(土) 16:21:19.81 ID:21o95NN/
forループでリンゲージしたmcにXMLからイメージを複数ロードしてfor関数内でmc.alpha=0.5
とし、RollOverしたときe.target.alpha=1になるようにしたいのですが、mcをnewした時に設定した
mc.alpha=0.5が最大値になってしまいRollOverしてもalpha=1になってくれません。なにか回避策を
ご教指願います。
461 :Now_loading...774KB2011/05/14(土) 16:49:28.73 ID:Y2Bypa3b
>>460
回避策っつか、単にやり方が正しくないんだろうと推測されるが
forループ内の処理を具体的に書くとかしないと、
第三者にはどこが間違ってるか指摘できないと思う

そもそもXMLからイメージをロード云々は関係あるの?
それがなければうまくいく、とか
そうではなくて、この問題に関係ない要素なら、省いて検証したほうがいいよ
462 :Now_loading...774KB2011/05/14(土) 17:21:28.61 ID:21o95NN/
function xcreateMenu(iconXML:XML){
var iconlist:XMLList = iconXML.img;
var numOfItems:Number = iconXML.img.length();
for(var i:uint=0; i<numOfItems; i++){
var url:String = iconlist[i].s_photolink.toString();
var url2:URLRequest = new URLRequest(url);
var loader1:Loader = new Loader();
loader1.load(url2);
var mc:MovieClip = new Mc();
var t:MovieClip = box.addChild(mc) as MovieClip;
//ここでalpha=0.5としてるのですが、マウスオーバーしても1ではなく0.5のままです。
mc.alpha =0.5;
mc.addChild(loader1);
mc_Array.push(mc);
mc.x=75+185*i;
mc.y=45;
463 :Now_loading...774KB2011/05/14(土) 17:22:35.22 ID:21o95NN/
t.addEventListener(MouseEvent.MOUSE_OVER, xMouseOver);
t.addEventListener(MouseEvent.MOUSE_OUT, xMouseOut);
t.addEventListener(MouseEvent.CLICK, xMcClick);
mc.buttonMode = true;
}
}
function xMouseOver(evt:Event):void{
evt.target.alpha = 1;
}
function xMouseOut(evt:Event):void{
evt.target.alpha = 0.5;
}
//問題の部分を抜き取ったんですが、どうかご教指ねがいます。いらない部分が多いと思いますがよろしくお願いします。
464 :Now_loading...774KB2011/05/14(土) 17:31:25.01 ID:Rt57FE+o
なんか色々ツッコミどころ満載な気がするが…
とりあえず、tにaddEventListenerしてるからevt.targetはmcじゃなくてtになってんじゃね?
465 :Now_loading...774KB2011/05/14(土) 17:40:07.59 ID:21o95NN/
>>464
ご指摘ありがとうございます。
evt.targetがloaderになっていました。
evt.target.parent.alphaにしたらOKでした。
ありがとうございました助かりました。
466 :Now_loading...774KB2011/05/14(土) 21:44:26.01 ID:cxGXo/W8

FlushBuilder4でAIRのアプリケーションを書いています。
OSはWindowsです。
クロームに終了ボタン([×]ボタン)を出さない方法はありますか。
ヘルプで調べたのですが見当たりません。

よろしくお願いします。

467 :Now_loading...774KB2011/05/15(日) 00:35:25.94 ID:EpIicrAV
質問よろおねです。
いまムービーを描画するクラスDrawMov コンストラクタ→public function DrawMov(Parent:Sprite) というのを使用しています
このDrawMovクラスをつかってドキュメントプロパティ(extends Sprite)に描画させるのに
var drawmov = new DrawMov(this)というふうにしています。こっから質問です。
ほかのクラスOtherClassなどからこのDrawMovクラスを使用してドキュメントプロパティに描画させるにはどのように記述すればよろしいでしょうか
DrawMov(xxx)といった書き方はないでしょうか。他の方法などなにとぞ解決策をおねがいします。
469 :Now_loading...774KB2011/05/15(日) 00:50:35.95 ID:bGH0QeIY
>>467
>質問よろおねです。
ビギビキ

>このDrawMovクラスをつかってドキュメントプロパティ(extends Sprite)に描画させるのに
ドキュメントクラス?

>ほかのクラスOtherClassなどからこのDrawMovクラスを使用してドキュメントプロパティに描画させるにはどのように記述すればよろしいでしょうか

他のクラス内でドキュメントクラスのインスタンスをSpriteで保持しておいて
DrawMov(xxx)でいいんじゃないの

ちょっと他のクラスの具体的な構造がわからないけど
470 :Now_loading...774KB2011/05/15(日) 01:09:07.72 ID:EpIicrAV
>>469
ヒントありがとうございます。がんばってみます。
471 :Now_loading...774KB2011/05/15(日) 01:13:56.49 ID:bGH0QeIY
>>470
いや、もうちょっと詳しく書いてみようよ
DrawMovの具体的な中身とか
472 :Now_loading...774KB2011/05/15(日) 01:25:01.18 ID:EpIicrAV
うーんとですね
DrawMovはコンストラクタ引数がspriteなのでextends Spriteのクラスしか使えません
使う側でthisを指定する以外の方法があれば回避できそうなんですが。

475 :Now_loading...774KB2011/05/15(日) 01:28:56.09 ID:bGH0QeIY
>>472
>DrawMovはコンストラクタ引数がspriteなのでextends Spriteのクラスしか使えません

そんなことはないよ。普通に使える


>使う側でthisを指定する以外の方法があれば回避できそうなんですが。
引数のSpriteを具体的にどう使ってるの?
473 :Now_loading...774KB2011/05/15(日) 01:28:26.11 ID:EpIicrAV
よく似た構成のソース
package {
//使用するクラスのパッケージ
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.Event;

public class Ball1 {
var r:int=30;
//コンストラクタ
public function Ball1(myParent:MovieClip,cx:int,cy:int) {
var ballSp:Sprite=newBall();
ballSp.x=cx;
ballSp.y=cy;
myParent.addChild(ballSp);
}
474 :Now_loading...774KB2011/05/15(日) 01:28:43.63 ID:EpIicrAV
//円を描いたスプライトを作る
function newBall():Sprite {
var sp:Sprite=new Sprite();
//円を描く
sp.graphics.lineStyle(3,0x000000);
sp.graphics.beginFill(0xDDDDDD);
sp.graphics.drawCircle(0,0,r);
sp.graphics.endFill();
//縦線を引く
sp.graphics.moveTo(0,0);
sp.graphics.lineTo(0,-r);
//再生イベントにリスナーを登録する
sp.addEventListener(Event.ENTER_FRAME, rotaBall1);
return sp;
}
//回転させる
function rotaBall1(eventObj:Event):void {
var ballSp:Sprite=eventObj.target as Sprite;
ballSp.rotation+=5;
}
}
}
477 :Now_loading...774KB2011/05/15(日) 01:30:54.94 ID:EpIicrAV
>そんなことはないよ。普通に使える
なぜだろうエラーが出てしまいます
478 :Now_loading...774KB2011/05/15(日) 01:32:25.51 ID:UN4DjKP7
thisってどういう意味よ
479 :Now_loading...774KB2011/05/15(日) 01:34:35.55 ID:bGH0QeIY
>>477
使う側がちゃんとSpriteインポートしてあってコンストラクタにSprite渡せばあけるはず

>>478
ドキュメントクラスのインスタンスをSpriteとして渡して
そこにaddChildさせようとしてるんじゃないかな
480 :Now_loading...774KB2011/05/15(日) 01:36:09.34 ID:EpIicrAV
>>479
トンクス!やってみます。
481 :Now_loading...774KB2011/05/15(日) 01:38:33.74 ID:bGH0QeIY
あ、いや、thisを与えるならSprite継承してなきゃだめだよ
他のSpeiteを与えるならってこと
483 :Now_loading...774KB2011/05/15(日) 01:43:26.70 ID:bGH0QeIY
だからthisを与えなきゃいいんだよ

ドキュメントクラスで描画用のSpriteを作っといてそいつを下に下に送ればいいんじゃない?
484 :Now_loading...774KB2011/05/15(日) 01:47:25.27 ID:EpIicrAV
なるほどthisにこだわったのがいけなかったんですね。
その方法でやらせていただきます。
ありがとうございました。そしてまたくるかもしれません
486 :Now_loading...774KB2011/05/15(日) 19:57:25.00 ID:XSlisYs6
AS3.0で
staticプロパティのオーバーライドのようなものはどうやれば実現できるでしょうか
クラスによってstaticプロパティの値を変えたいのですが
487 :Now_loading...774KB2011/05/15(日) 22:55:12.97 ID:Q5+wbEhu
>>486
同じ型にキャストができる2つのインスタンスでstaticの値が変わるってのは
もうすでにstaticじゃないような……
パフォーマンスはやや落ちるけど、static var じゃなくて static function get で
値を返すようにするとか?
488 :Now_loading...774KB2011/05/15(日) 23:03:31.52 ID:bGH0QeIY
>>487
>同じ型にキャストができる2つのインスタンスでstaticの値が変わるってのは
>もうすでにstaticじゃないような……

確かにそう考えるとおかしいですね
インスタンス変数にしてもいいんだけどクラス内では絶対同じ値だからstaticにしたいんですよね


getter/setterってやっぱれらパフォーマンス落ちるんですか?
631 :Now_loading...774KB2011/05/25(水) 20:02:52.49 ID:aAgmNeu4
>>629
そんでいいんじゃないかな、>>486-492でも同じ流れだし
489 :Now_loading...774KB2011/05/15(日) 23:15:55.91 ID:2g68rsWs
ファンクションコールのオーバーヘッドだけじゃない?
1フレームに何百回も参照するようなことがなければ気にすることはないかと
490 :Now_loading...774KB2011/05/15(日) 23:21:05.15 ID:bGH0QeIY
>>489
getterで20*20のBoolean読んでるわ…
見直そうかな
491 :Now_loading...774KB2011/05/15(日) 23:47:08.00 ID:s7Qx4E8f
>>490
実装によってはビット演算でサクっと行けるかもしれんねw
492 :Now_loading...774KB2011/05/16(月) 00:23:21.96 ID:vWXrK/DT
getTimer()で処理部分を挟んで計測してみたら?
俺の環境では1万ループくらいでようやく1ミリ秒差が出るくらいだった
493 :Now_loading...774KB2011/05/16(月) 16:42:20.13 ID:AWbK+uBu
actionscript3で、htmlタグ付き文章をhtmlTextで表示しているのですが
リストの左側の余白とか、最初から定義されているスタイルをリセットする方法はあるのでしょうか?
html+リセットcssのように、初期スタイルを消してからstylesheetクラスで成形したいのですが・・・
494 :Now_loading...774KB2011/05/16(月) 22:12:59.64 ID:pOA+b7z+
入れるものが同じクラスなら(圧倒的にそのほうが多いよね?)ArrayよりVectorを使った方が100パーセントいいのかな?
498 :Now_loading...774KB2011/05/17(火) 14:29:06.71 ID:LRA8Gulj
>>494
より速いのが望みならVectorが正解
499 :Now_loading...774KB2011/05/17(火) 14:31:21.42 ID:P+z/2U7j
>>498
さんくす
じゃあArrayのメリットって複数クラスいれられることだけじゃん
やっぱみんなVector使ってるの?
495 :Now_loading...774KB2011/05/16(月) 22:34:31.79 ID:41BcleO9
AS2.0を使っています。
hensu = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];
↑のような0か1の二通りのパターンしかない変数が16個入った配列を
4桁の16進数に変換したり戻したりしたいんですがどうすればいいですか?
496 :Now_loading...774KB2011/05/16(月) 23:39:28.05 ID:pOA+b7z+
>>495
文字列でよければ

var hensu:Array = [0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1, 0];
var num = 0;
for (var i:Number = 0; i < 16; i++) {
num += hensu[i] << (15 - i);
}
trace( "0x" + num.toString(16));
//
var num2:Number=num;
var hensu2:Array = new Array(16);
for (var i:Number = 0; i < 16; i++) {
hensu2[15 - i] = num2%2;
num2=Math.floor(num2/2);
}
trace(hensu2);
497 :Now_loading...774KB2011/05/17(火) 00:16:36.07 ID:1H6ErBx3
>>496
ありがとうございます!
500 :Now_loading...774KB2011/05/17(火) 14:53:21.64 ID:ntIRM3lr
自分は基本Vectorだけど、DataGridとかのdataProviderに
直接Vector入れられないのがちょっと不便なんだよなぁ
501 :Now_loading...774KB2011/05/17(火) 16:17:11.75 ID:LRA8Gulj
俺は基本Arrayだなぁ。
FlexだとVectorの威力を発揮するような処理する事あまり無いし。
504 :Now_loading...774KB2011/05/18(水) 11:02:00.86 ID:tMiFRLE6
Java書いてると違和感ない書き方だな。
Flexで使うことあまり無いけど。
505 :Now_loading...774KB2011/05/18(水) 12:50:49.15 ID:XwQ0F/Cq
読み込んだwmvムービーをタイムラインで再生していて
サウンドのオンオフを行いたいのですが

on(release) {
stopAllSounds();
}

でストップした音をまたプレイしたい場合
なんて書けばいいのでしょうか?
ムービー外部読み込みだとオンオフはできるのですが、
それをやってはいけない仕様でして。。
506 :Now_loading...774KB2011/05/18(水) 12:56:12.85 ID:XwQ0F/Cq
505ですが、解決しました。。
on (release) {
stop();
play();
}
という無茶苦茶な感じで出来ました。。
507 :Now_loading...774KB2011/05/18(水) 14:36:25.70 ID:st4y2XQS
2chで書き込みするのは初めてです。よろしくお願いします。
私は今adobe CS5の AS3でビリヤードゲームを作ろうと思ってます。 
http://hakuhin.jp/as/block.html
今こちらのサイトを参考に作っています。
これを参考にしようと思ったのはボールが壁に当たったら返ってくるからです。
ここのサイトの内容はAS2っぽいので自分なりにAS3に変えて作り始めました。
if (ball.x < 0 + 5) {
ball.x = 0 + 5;
dx = dx * -1;
}
if (ball.x > 200 - 5) {
ball.x = 200 - 5;
dx = dx * -1;
}
if (ball.y < 0 + 5) {
ball.y = 0 + 5;
dy = dy * -1;

}
if (ball.y > 250 + 5) {
ball.y = 250 + 5;
dy = by * -1;
このif文のところが移動方向を反対にさせる文なんですがなぜか反転しません。
traceで中身を見たところ 値自体は反転しているのですが・・・
どこかおかしいところはありませんか?
全体を見なければ分からないのであれば他の部分も乗せたいと思います。

よくネチケットとかわかりませんがこんな感じでよかったでしょうか?
508 :Now_loading...774KB2011/05/18(水) 15:31:59.02 ID:mDH17fnn
余計なこと書かなきゃそれでいいんだよ


全体を見ないとわからん
どこにtraceかいたのかもわからんし
やっぱり全体見ないとわからん
509 :Now_loading...774KB2011/05/18(水) 15:43:13.62 ID:st4y2XQS
>>508
bar.y = 230;var dx = 1;var dy = -3;
if (bar.x < 0+20){bar.x = 0+20;
}if (bar.x > 200 - 20)
{bar.x = 200 - 20;}
if (ball.x < 0 + 5)
{ball.x = 0 + 5;dx = dx * -1;}
if (ball.x > 200 - 5)
{ball.x = 200 - 5;dx = dx * -1;}
if (ball.y < 0 + 5)
{ball.y = 0 + 5;dy = dy * -1;}
if (ball.y > 250 + 5)
{ball.y = 250 + 5;dy = dy * -1;}
stage.addEventListener(KeyboardEvent.KEY_DOWN, fl_KeyboardDownHandler);
function fl_KeyboardDownHandler(event:KeyboardEvent):void
{if (event.keyCode == 37)
{bar.x = bar.x - 3;
}if (event.keyCode == 39)
{bar.x = bar.x + 3;
}}
addEventListener(Event.ENTER_FRAME, ugoki);
function ugoki(event:Event):void {
ball.x = ball.x + dx;ball.y = ball.y + dy;trace(dx);trace(dy);}
全体はこちらになります。
改行が多いとこちらでエラーになったので修正してます。見辛くてすいません。
510 :Now_loading...774KB2011/05/18(水) 15:48:15.77 ID:mDH17fnn
>>509
最初のif文らへんはどこに書いてあるの?
512 :Now_loading...774KB2011/05/18(水) 15:55:11.72 ID:st4y2XQS
>>510
最初のif文は私が最初に質問したとif文のことでしょうか?
それでしたらそのif文の始まりはさっき上げた全文の5行目になります。
513 :Now_loading...774KB2011/05/18(水) 15:56:10.97 ID:mDH17fnn
>>512
や、そのif文はイベントリスナ内にないの?
511 :Now_loading...774KB2011/05/18(水) 15:53:26.41 ID:st4y2XQS
ちなみにball.xが無いのはこちらを例えば
ball.x = 100;
としてしまうと 挙動が変になるからです。
バー自体の位置はこれでも十分なのでこれでいこうと思っています。
ball.x又は.yのif文の場所をずらしたり値を変えたりとしたのですが駄目でした。
画面のサイズは 200px×250pxです。
yの反射の位置を250じゃない場所にずらしたりもしてみました。
514 :Now_loading...774KB2011/05/18(水) 15:59:40.26 ID:st4y2XQS
すいません 最近作れと言われたばかりでロクな勉強をしてないので
イベントリスナと言われてもよくわかりません
おそらくevent:KeyboardEventやEvent.ENTER_FRAMEの中のことを指してると
考えて回答します。
最初にEvent.ENTER_FRAMEの中にif文を入れていたのですが今なってる結果と
同じだったのでif文の位置を変えてみた結果が今の全文です。
516 :Now_loading...774KB2011/05/18(水) 16:02:58.94 ID:mDH17fnn
そのif文はballのx座標とy座標に応じて座標をずらしたりdx,dyを反転させるわけじゃん
ということはballの座標が更新されるたびに呼び出して判定しなくちゃならないということ

function ugoki(event:Event):void {
ball.x = ball.x + dx;ball.y = ball.y + dy;trace(dx);trace(dy);
//ここにif文をいれるべき
}
517 :Now_loading...774KB2011/05/18(水) 16:06:27.87 ID:st4y2XQS
>>516
traceの下にballのif文を入れたのですがやはり挙動は同じでした。
動き的には壁に当たったら反射したいのですがずっとマゴマゴとはまったまま
帰ってきません。
519 :Now_loading...774KB2011/05/18(水) 16:15:02.54 ID:st4y2XQS
1
-3
と最初に動き
壁に当たると
1
-3
1
3
1
-3
-1
-3
という動きを永遠に繰り返します。
520 :Now_loading...774KB2011/05/18(水) 16:15:29.25 ID:jM5/5p2h
もしかしてメインのタイムラインが1フレーム以上ある?
1フレームでif分をENTER_FRAME内に入れたら普通に動いたけど、フレーム増やしたら言ってるような挙動になった
522 :Now_loading...774KB2011/05/18(水) 16:16:58.91 ID:st4y2XQS
>>520
ありがとうございます!まさにフレームが一個多い状態でありました。
早速こちらを削除したところ成功しましたありがとうございます
523 :Now_loading...774KB2011/05/18(水) 16:18:21.84 ID:mDH17fnn
ついでに
if (bar.x < 0+20){bar.x = 0+20;
}if (bar.x > 200 - 20)
{bar.x = 200 - 20;}
はbarの座標に応じて判定するからbarを動かすfl_KeyboardDownHandlerの中がベター
毎フレームやるべき判定じゃないからね

hakuhinさんのほうでもその位置にあるでしょ
526 :Now_loading...774KB2011/05/18(水) 16:27:52.61 ID:st4y2XQS
>>523
まさにその通りでした。
フレームを削除したら無限に移動するようになってしまいました。
そこでfl_KeyboardDownHandlerにifを入れたら直りました。
本当に皆さんありがとうございました。
524 :Now_loading...774KB2011/05/18(水) 16:23:49.42 ID:jM5/5p2h
1フレーム以上じゃなくて2フレーム以上だったな

あと個人的な意見だけど、0+20とかは無駄なんじゃねとか*=や-=使えばいいのにとか思った
525 :Now_loading...774KB2011/05/18(水) 16:24:40.89 ID:mDH17fnn
タイムラインのフレームが複数あるとなにもしないでいると最終フレームにいったら1フレーム目に勝手に戻る仕様
なので今回1フレーム目のdx,dyの初期化が行われたのが原因かな

ちなみにaddEventListener(Event.ENTER_FRAME, ugoki);は何度行われても
二重にイベント登録されることはないらしい
527 :Now_loading...774KB2011/05/18(水) 16:30:05.75 ID:mDH17fnn
ところでFLASH超基本的な質問はここでしろ!スレは落ちたのかね
もう需要ないのかな
528 :Now_loading...774KB2011/05/18(水) 16:31:59.07 ID:st4y2XQS
すみません さらに質問なのですがこの後これを応用してビリヤードゲームを
作っていこうと思ってます。
デザインはもうできているので流れ的にはボール一個ごとの処理と反射の計算
をして穴のピクセルの部分に触れたらそのボールを消滅させてカウントを1増やし
カウントがゲームクリアの個数になったらクリア画面に飛ばすという流れで間違いは
ないでしょうか? 先輩に聞くと流れは最初にキチンと作らないと修正した時に
苦労をすると聞いたので少し不安です。
529 :Now_loading...774KB2011/05/18(水) 16:40:30.85 ID:VLkU8/Bj
球をつく部分がいるんじゃね

Box2Dを推したいところだがさすがにきついか
531 :Now_loading...774KB2011/05/18(水) 16:48:09.22 ID:NIMlGGhl
>>529
あれって英語ないとやっぱりきつい?
日本語の解説サイトだけじゃどうも俺の頭脳では理解できないw
534 :Now_loading...774KB2011/05/18(水) 16:53:57.39 ID:VLkU8/Bj
>>531
ウェブで日本語の探すとなんか一個前のバージョンのやつばっかりばっかりでちょっと苦労したけど普通にいけるよ

まずはこのへん
http://gihyo.jp/dev/feature/01/box2d/0001

あとはラッパーライブラリがいくつかあったはず
538 :Now_loading...774KB2011/05/18(水) 17:13:09.21 ID:NIMlGGhl
>>534
ちょっと挑戦してみますわ
530 :Now_loading...774KB2011/05/18(水) 16:44:10.19 ID:st4y2XQS
玉を突くのは難しいと思いまして自分で妥協し
方向をマウスの方向で点線を出して指定する。
下の画面にパワー目盛を出してどのくらいの力で発射するかを決めてとやっていこうと思ってます。
とこっちでいろいろ調べてたらASファイルというのを作らなければむりっぽいので
もう一回勉強しなおします。
ちなみにASファイルとか無しでもいけますか?
532 :Now_loading...774KB2011/05/18(水) 16:49:23.50 ID:VLkU8/Bj
ASファイルってただ単にコードを外に書いただけのテキストファイルだけどね
OOPどころかプログラミング言語的も始めてっぽいしいきなりいろいろやるのは大変そうだ

外部ASなしでもできないことなんてほとんどないよ
533 :Now_loading...774KB2011/05/18(水) 16:52:58.98 ID:st4y2XQS
>>532
わかりましたーいきなりrootで躓いたので質問してたのですがどうやら
MovieClip(root)
でいけるみたいですね。こうやってだましだましやっていきます。
535 :Now_loading...774KB2011/05/18(水) 16:57:29.63 ID:VLkU8/Bj
>>533
なんのはなしか全然わからんけど
またわかんないことがあったら具体的に質問すればみんな答えてくれるからがんばれ
536 :Now_loading...774KB2011/05/18(水) 17:02:26.80 ID:st4y2XQS
いきなり躓きました
if (_root.ball.hitTest(_root.bar)) {
_root.ball._y = _root.bar._y - 10;
rad = Math.atan2(_root.ball._y-_root.bar._y,_root.ball._x-_root.bar._x);
dx = Math.cos(rad)*3;
dy = Math.sin(rad)*3;
}
rootはMovieClip(root)でなんとかできましたがMathがどう検索してもAS以外でやる方法を見つけ出せません・・・
540 :Now_loading...774KB2011/05/18(水) 17:22:01.43 ID:OIh1FocY
>>536
なににつまずいたの?
Math使えばいいじゃん
541 :Now_loading...774KB2011/05/18(水) 17:32:00.00 ID:st4y2XQS
>>540
Mathが使えないみたいな表示が出てきます。
542 :Now_loading...774KB2011/05/18(水) 17:35:53.75 ID:sNSw6ixr
>>541
具体的にはなんて言われる?
545 :Now_loading...774KB2011/05/18(水) 18:08:16.44 ID:st4y2XQS
>>542,543
すいません解決しました。 varが入っていなかっただけでした。
こんなくだらない間違えで騒いで申し訳ありませんでした。
537 :Now_loading...774KB2011/05/18(水) 17:03:08.61 ID:st4y2XQS
ちなみにactionscript3.0の話です。自分の状況を伝えずに申し訳ない。
539 :Now_loading...774KB2011/05/18(水) 17:17:02.91 ID:zYWqCMdK
AS3,XP-ProのFlashCS4です。

内部にTextFieldを持つMCをStageにaddChildして、先ずはTextFieldを参照
しようとしましたができません。

MC(TxtM0というクラス)内部では
var tfd:TextField = new TextField();
tfd.text = "あいうえお";
tfd.name = "tfd";
addChild(tfd);

Stageのタイムラインでは
var mc0:MovieClip = new TxtM0();
addChild(mc0);//Stageに追加

として下記のようにしました。
trace("tfd= "+mc0.getChildByName("tfd")+", "+mc0.tfd);

これだと両方nullになり、参照できません。
どうしたら良いでしょうか?
543 :Now_loading...774KB2011/05/18(水) 17:39:21.58 ID:sNSw6ixr
>>539
おなじようにやったけど拾えてるよ
mc0.tfdだけど、ちゃんとクラスのpublicメンバになってる?
544 :5392011/05/18(水) 17:48:31.89 ID:zYWqCMdK
>>543
すいません。CS4のMCライブラリのクラスでやっていました。
ASでやってみます。
546 :Now_loading...774KB2011/05/18(水) 18:08:29.54 ID:sNSw6ixr
>>544
あーほんとだ。ライブラリのMCの1フレーム目に書いて
メインタイムラインの1フレーム目にかいたらどっちもnullった

でもnullってことはアクセスできてんだよなーって思って
メインタイムラインの2フレーム目にstop()とtrace文かいたらどっちも拾えたよ

つまり同じフレームでは拾えないかんじなのかな
まだ描写されてないから取れない、みたいな
547 :5392011/05/18(水) 18:18:40.88 ID:zYWqCMdK
>>546
ASでしてみたらOKでした。
ただし、文字列の参照は TextField(mc0.getChildByName("tfd")).text になりました。

mc0.tfdの場合は「TxtM0 にプロパティ tfd が見つからず、デフォルト値もありません。」
とエラーがでます。



> つまり同じフレームでは拾えないかんじなのかな
> まだ描写されてないから取れない、みたいな

なるほど、タイムラインはやっぱりクセがありますね。
548 :Now_loading...774KB2011/05/18(水) 18:26:08.82 ID:st4y2XQS
またまたすいません
var flg = new Array();
for (i=0; i<5; i++) {
if(flg[i] == 1) continue;
if (MovieClip(root).ball.hitTestObject(this.("MovieClip(root).brock"+i))) {
flg[i] = 1;
this.("MovieClip(root).brock"+i).visible = false;
if (MovieClip(root).ball.x+5 < this.("MovieClip(root).brock"+i).x-20+4 && MovieClip(root).ball.y+5 < this.("MovieClip(root).brock"+i).y-7.5+4) {
dx = -3;
dy = -3;
}}}
なんですが、TypeError: Error #1123: Filter 演算子は型 _fla.MainTimeline でサポートされていません。
とでてうまくいきません。
検索をかけてみたんですがうまく引っかからずに困ってます。
550 :Now_loading...774KB2011/05/18(水) 18:28:00.34 ID:st4y2XQS
>>548はAS3.0です。
551 :Now_loading...774KB2011/05/18(水) 18:38:46.73 ID:sdX/f1bS
>>550
this.("MovieClip(root).brock"+i))
のせいでエラー食らってるね
this[MovieClip(root)]["brock"+i]

こんなかんじかな

あとbrock...?
553 :Now_loading...774KB2011/05/18(水) 18:50:00.53 ID:st4y2XQS
>>551
ありがとうございます。
brockには突っ込まないで下さい・・・
549 :5462011/05/18(水) 18:26:58.70 ID:sdX/f1bS
>ただし、文字列の参照は TextField(mc0.getChildByName("tfd")).text になりました。
そだね。DisplayObjectContainer.getChildByName(name:String)の返り値はDisplayObjectになるから
ダウンキャストしてやんなきゃならない


>mc0.tfdの場合は「TxtM0 にプロパティ tfd が見つからず、デフォルト値もありません。」
とエラーがでます。

そうそう。クラスの場合はちゃんとpublic varにしないとそうなる

ASでやるなら2.0の考えは捨ててnameを使わないようにしたほうがいいかも
552 :Now_loading...774KB2011/05/18(水) 18:42:56.54 ID:sdX/f1bS
ついでにどなたかスレたててもらえないでしょうか

タイトル:
Flashの超基本的な質問はここでしろ! part42
内容:
どの質問スレでもスルーされるような超基本的な質問はここでしろ!
調べるのがめんどくさい初心者はなんでもかいとけ!知ってたら即、答えるし、
知らんかったら知らんと書く。検索なんかクソでも喰っとけ!教えて君以外は逝ってヨシ!

質問テンプレ(書いてあると回答者がレスしやすい)
(1)使用ソフト/バージョン:FLASH 5/ MX / MX2004 / Pro / 8Pro / 8Basic など
(2)OSのVer:Win2K/ WinME /WinXP /MacOS 10 など
(3)作品の具体例がある場合はリンク必須
(「このサイトのように○○したいhttp://〜」とか)

前スレ
Flashの超基本的な質問はここでしろ! part41 (DAT落ち)
ttp://hibari.2ch.net/test/read.cgi/swf/1274977716/

関連スレ
ActionScript 誰かが物凄い勢いで解答するスレ 28
http://hibari.2ch.net/test/read.cgi/swf/1302831971/
554 :Now_loading...774KB2011/05/19(木) 14:33:27.31 ID:lDRNUm0d
>>552
ほいよ
保守テンプレ等よろしく

Flashの超基本的な質問はここでしろ! part42
http://hibari.2ch.net/test/read.cgi/swf/1305783143/
555 :Now_loading...774KB2011/05/20(金) 10:34:52.44 ID:ZYO+Ho+7
AS3,XP-Pro,FlashCS4です。
Stage上の他の部品(ボタンとかMCとか)からコンボボックス(myComboBox)を
初期表示状態に戻すにはどうしたら良いでしょうか?

myComboBoxをプルダウンで(例えば)1号機→3号機→4号機 といった感じで
変更後、戻るボタンを押すと初期状態の「福島Site1」と表示したいです。

newするときにpromptプロパティを使っていたので同じ様に
myComboBox.prompt = "福島Site1";//trace(myComboBox.prompt)で参照できます

としましたが変りません。アドバイス願います。
556 :Now_loading...774KB2011/05/20(金) 12:02:26.79 ID:ZBSd7I2k
>>555
コンポーネントは初めて触るので違ったらごめん

private function onClick(e:MouseEvent):void {
//combo.selectedIndex = 0;//0番目のアイテムを強制選択
combo.selectedIndex = -1;//プロンプトを強制選択
}
564 :5552011/05/21(土) 00:41:35.72 ID:p/1+FWJ5
>>556
ありがとうございます。
combo.selectedIndex = -1; でOKでした。
557 :Now_loading...774KB2011/05/20(金) 12:27:27.44 ID:ZBSd7I2k
いまさらだけどiPhoneの人はアプリにクラスリファレンスがあるよ
英語だけどローカルだから速いのでそこそこ便利でオススメ
ttp://www.inazumatv.com/contents/archives/2029
558 :Now_loading...774KB2011/05/20(金) 14:31:06.27 ID:pkwb7//k
今、AS3でスコア表示をさせようと思っています。
ピクセルを指定して加算した情報(例えばkoをx=120、y=300に表示)を表示する方法がわかりません。
ムービークリップ、グラフィック、ボタンのシンボルにして
MovieClip(root).kosu = ko;
にしてもうまくいきませんでした。
559 :Now_loading...774KB2011/05/20(金) 14:36:24.33 ID:ZBSd7I2k
>>558
>今、AS3でスコア表示をさせようと思っています。
>ピクセルを指定して加算した情報(例えばkoをx=120、y=300に表示)を表示する方法がわかりません。
>ムービークリップ、グラフィック、ボタンのシンボルにして
>MovieClip(root).kosu = ko;
>にしてもうまくいきませんでした。

koとはなにか(MovieClip,intなど)
kosuとはなにか
情報を表示とはどういうことか
ぜんぜんわかんないから詳しく

koというMovieClipをx=120に動かしたいってこと?
560 :Now_loading...774KB2011/05/20(金) 14:42:18.89 ID:pkwb7//k
>>559
情報が少なくてすいませんフレーム1で
var ko = 9;
と作りました。それをフレーム2でスコア表示として使いたいのです。
それで
MovieClip(root).kosu = ko;とかしたら表示できるかなーと思ってやってみただけです。
私がやりたいのはフレーム1で作った koをフレーム2でスコア表示として使いたいだけです。
そして表示したい位置がx=120,y=300辺りだということです。
561 :Now_loading...774KB2011/05/20(金) 14:58:26.32 ID:ZBSd7I2k
あいかわらずkosuがわからんけどMovieClipかな

koはintかNumberね
文字を簡単に表示とさせたいときはTextFieldクラスを使おう

具体的な流れは
TextFieldインスタンスを作成
(テキストのフォーマットを定義)
TextFieldのtextプロパティに表示させたい文字列を代入
TextFieldインスタンスを表示リストにaddChild
くわしくは
ttp://hakuhin.jp/as3/text_field.html
562 :Now_loading...774KB2011/05/20(金) 16:25:07.25 ID:pkwb7//k
>>561
ありがとうございます!おかげでできました!
しかしリトライなどをすると数値がそのまま残ってしまいます。
グーグルなどで テキストフィールド AS3 非表示
などで調べたのですが思ったような結果が帰ってきません
どうしたらいいでしょうか?
563 :Now_loading...774KB2011/05/20(金) 16:36:44.63 ID:kmVJ7yoC
>>562
tf:TextField
表示リストから消す(見えなくする)ならremoveChild(tf)
値を更新したいのならその都度tf.text=String(ko)


表示リストについて詳しくは
ttp://hakuhin.jp/as3/container.html
566 :Now_loading...774KB2011/05/21(土) 12:40:21.57 ID:OJdNcASb
ttp://sketch.txt-nifty.com/blog/2007/09/actionscript_1198.html
ttp://www.oro.co.jp/cd/column/flash/actionscript/if-in-switch.html
ttp://wonderfl.net/c/cEUv
適当にswitch拾ってきたけど関係ないのばっかだわ

やっぱgetTimer()で計るのが一番じゃないかな
568 :Now_loading...774KB2011/05/22(日) 02:42:23.15 ID:W96+bCjq
質問です。
ActionScript3.0でXMLを読み込むまではいけるのですが、
trace(xml);
だと、ファイル全文が表示されるのに
trace(xml.line);
のように、要素を表示させようとすると、何も表示されません。
何故でしょうか?
XMLクラスではありますが、読み込ませているのはsvgファイルです(中身はXMLの構造)。


length():int
XML オブジェクトの場合、このメソッドは常に整数 1 を返します。

lengthメソッドを実行しても、1が返されます。
570 :Now_loading...774KB2011/05/22(日) 11:24:09.21 ID:PTHmaFz1
lineの中身はないですね。
<line fill="no" />
みたいなタグがたくさんあります。・・・そのせいですか!?
571 :Now_loading...774KB2011/05/22(日) 11:37:27.06 ID:2eMPDf+3
知らんけどとにかく最小構成にしろよ
でちょっとづつ増やしてってどこが原因か特定しろ
原因わかったらその部分の何がいけないか考えてわかんなかったらググれ
それでもわかんなかったら書き込めよ・・
579 :Now_loading...774KB2011/05/22(日) 19:36:33.40 ID:3UTR/EuY
>>573
初心者か。
arr.lengthが空なら、pname2は入ってるのか調べたりして原因突き止めろっての。
>>571の言うとおり。

for (var line:XML in xml)
{
arr.push(line);
}
trace("arr:"+arr.length);

これでどう?
ってかなんで配列に分ける必要があるんだ?
xml.line[0]とかでアクセスできるけど・・・
572 :Now_loading...774KB2011/05/22(日) 11:38:01.47 ID:2eMPDf+3
知らんけどとにかく最小構成にしろよ
でちょっとづつ増やしてってどこが原因か特定しろ
原因わかったらその部分の何がいけないか考えてわかんなかったらググれ
それでもわかんなかったら書き込めよ・・
573 :Now_loading...774KB2011/05/22(日) 11:53:35.28 ID:PTHmaFz1
う〜ん・・・。以下のようにしてみても、格納されません。出力結果は0です。

var arr:Array = new Array();
for (var pname2:String in xml.line)
{
arr.push(xml.line.@fill[pname2].toString());
}
trace("arr:"+arr.length);

やりたいことは、以下のようなXMLファイルをArray配列に要素ごとに分けることです。

<svg>
<line fill="none" stroke="#000000" stroke-width="5" x1="172.231" y1="144.444" x2="444.881" y2="447.863"/>
<line fill="none" stroke="#000000" x1="453.5" y1="151.5" x2="112.5" y2="492.5"/>
</svg>



Array[0] = <svg><line fill="none" stroke="#000000" stroke-width="5" x1="172.231" y1="144.444" x2="444.881" y2="447.863"/><svg>
Array[1] = <svg><line fill="none" stroke="#000000" x1="453.5" y1="151.5" x2="112.5" y2="492.5"/></svg>

何かいい方法があれば教えてくだれば幸いです。。。
574 :Now_loading...774KB2011/05/22(日) 16:37:47.12 ID:LQ+j3JNH
as3.0です
VectorにTextFieldを次々とpushしていきたいです
0番目には‘あ’、1番目には‘い’といった感じです
この場合、pushするには毎回新しいTextFieldを作らないといけないでしょうか?
素となるTextFieldを用意すれば、あとはそのtextを変えれば済むようにならないかと思っています
576 :Now_loading...774KB2011/05/22(日) 17:12:46.41 ID:V/b8GCRc
>>574
何に使う配列なのかによる
TextFieldは画面に文字列を表示するためのクラスだ
ソフトウェアキーボードのように全部の文字列を同時に表示するならその分のTextFieldは全部必要だし、
そうでないなら文字列だけをVectorに入れておいて随時TextFieldに入れればいい
577 :Now_loading...774KB2011/05/22(日) 17:25:22.04 ID:LQ+j3JNH
>>576
タイピングゲームを作ろうと思っています
これなら五行目の方法でできそうですね
文字列をTextFieldに入れるのは考え付きませんでした。目から鱗です
ありがとうございました
580 :Now_loading...774KB2011/05/22(日) 19:38:24.44 ID:JOjXjMQy
キーボードイベントで
e.keyCode==65とやるのと
e.keyCode=KeyBoard.Aとやるのだと速度的にまったく一緒でしょうか?

コンパイル時に勝手に65に書き換えてくれるんでしたっけ
581 :Now_loading...774KB2011/05/22(日) 19:57:53.76 ID:I9Lq+9Sr
>>580
数値指定のほうが速い、はず。

ただし、これで得られる速度差なんてたかが知れてる。
数値の直指定によるソースの読みにくさの方が問題。
宜しくクラス定数を使うべし。
582 :Now_loading...774KB2011/05/22(日) 20:09:28.68 ID:rn5rXCE9
>>581
ありがとうございます。そうします

もうひとつ
キーボードイベントでキャラクターを動かす際の話なのですが、

キーを押しっぱなしにした時にイベントを定期的に送りつけるか最初の一回だけ送られるかはキーボード(ハードウェア)によると聞きます

どちらにも対応できる方法として
キーダウンでそのキーのフラグを立てて
キーアップでそのキーのフラグを折る
ようにして実際に動かす部分はエンターフレームでフラグから判断する
という方法を考えたのですが

その場合キーボードイベントで実行するより判断回数が激しく増えて重くなることを危惧しています
一般的には私が今回考えたやり方でやっているものなのでしょうか?
583 :Now_loading...774KB2011/05/22(日) 20:35:10.68 ID:I9Lq+9Sr
>>582
それでおk。
キーボードのイベントはキーに設定するのではなく、Stageに設定する。
つまり、どう転んでも全キープレスごとにイベントは発生してしまうので
あまり心配しなくてもいい。
584 :Now_loading...774KB2011/05/22(日) 20:41:56.94 ID:J2xMVehE
>>583
ありがとうございます!
これでやってみます
585 :Now_loading...774KB2011/05/22(日) 21:27:01.32 ID:fh4o4eb1
すべてのクラスの定数をあるひとつのクラスにまとめてstatic constで記述しておいて。他のクラスからその静的定数にアクセスすると遅くなったりしますか?
586 :Now_loading...774KB2011/05/22(日) 22:36:51.70 ID:Qw9cJNWh
Flashでペイントソフトを作成しています。塗りつぶしの機能を付け加えたいのですが、その方法で悩んでいます。
現在undoを考え1つの描きこみに対して1つのSpriteを作成し、addChild()してレイヤーのように書き込みを行っています。
どのように実装すればよいでしょうか?
BitMapDataのfloodFill()が使用できそうですが、できれば塗りつぶしの箇所のみのBitMapDataを作成して追加したいです。
As3.0

587 :Now_loading...774KB2011/05/22(日) 22:54:05.98 ID:3uUrl4ah
>>586
現在のキャンバスをBitmapData.draw
floodFill
塗りつぶした場所以外を透明に
そのBitmapDataをいれたBitmapを上から重ねたら?ってのはだめ?
588 :Now_loading...774KB2011/05/23(月) 02:19:13.58 ID:esFS6p+c
>>587
レスありがとうございます。
塗りつぶした箇所だけのBitmapDataて作成することってできるのでしょうか?
floodFill()で出力されるのは元のデータの上に、塗りつぶしを行ったデータになると思います。
元画像と、元画像+塗りつぶしから差分を取得できればできそうですが・・・
589 :Now_loading...774KB2011/05/23(月) 02:23:12.14 ID:xjMlYrYJ
>>588
ピクセル走査して元のデータとuint比較して変わってなかったら透明に、変わってたらそのまま
でいけるんじゃない?
593 :5872011/05/23(月) 10:25:57.29 ID:XYnatABO
>>589,590
おお〜ありがとうございます。
そうですね、ピクセルの比較で差分を簡単に求めれそうですね。
今からためしてみます。。
590 :Now_loading...774KB2011/05/23(月) 02:39:57.10 ID:xjMlYrYJ
var soureBd:BitmapData=new BitmapData(サイズ、透過サポート);
source.draw(キャンバス);
var newBd:BitmapData=source.clone();
newBd.lock();
newBd.floodFill(場所、色);
for(x){
for(y){
if(newBd.getPixel32(x,y)==sourceBd.getPixel32(x,y)){
newBd.setPixel32(x,y,透明);
}
}
}
newBd.unlock();

超適当だけど
591 :Now_loading...774KB2011/05/23(月) 10:12:15.72 ID:MzdWYYNR
球同士の衝突の計算をしたいのですが、今ネットに転がってるソースのほとんどがAS1,2でAS3
の私にはできません。
AS1のソースを無理やり変えたのですが夥しいエラーが出てしまったのでやめました。
どなかかASファイルというのを無しで球同士の衝突が分かる方いませんか?
592 :Now_loading...774KB2011/05/23(月) 10:19:20.09 ID:DGXXnyJd
AS3で質問があります。

自分で作成したクラスのコンストラクタで
addEventListenerでイベントリスナを追加しています。

このクラスはUIクラスの拡張をしたものなのですが、
このクラスを表示している画面が閉じられるときに
追加したリスナをremoveEventListenerで削除したほうが良いと思うのですが、
どのように実装すればよろしいでしょうか?

よろしくお願い致します。

594 :Now_loading...774KB2011/05/23(月) 10:54:17.40 ID:xjMlYrYJ
>>591
ビリヤードの人かな
具体的にどういう計算がしたいのか
どこまでできてどこができないのかが分からないと答えられないけど

球同士ということなら中心からの距離が定石かね


>>592
画面が閉じられる時ってのがよくわからないけどremoveChildの時?
その時にremoveすればいいんじゃないかな
595 :Now_loading...774KB2011/05/23(月) 11:25:16.81 ID:MzdWYYNR
>>594
ありがとうございます。具体的となりますと私自身よくわかっていません・・・
私が衝突をする上で分からないのは打つボールが動いた後にどうやって落とすボールの位置を把握させるかが、
私にはよくわかっていません。
計算式はあたったら進入角度と反対のほうに全て運動量を半分にするような形をとりたいです。
597 :Now_loading...774KB2011/05/23(月) 11:33:37.75 ID:xjMlYrYJ
>>595
たぶん流れとしては
動かすボールのonEnterFrame(e:Event){
(1)動かす
[(2)他のボールの座標を取得
(3)座標から距離を計算
(4)距離から衝突を判定
(5)衝突してたら二つのボールに処理をする
]
}
(2)から(5)は他のボール分繰り返すんだろうけどとりあえず合計二個でやるのがいいと思う

(2)がもうわからない感じ?
599 :Now_loading...774KB2011/05/23(月) 11:36:55.83 ID:MzdWYYNR
>>597
先のif分みたいな感じで大丈夫でしょうか?
いまいち中身の座標を取得するのは分かっていません。
601 :Now_loading...774KB2011/05/23(月) 11:46:24.01 ID:xjMlYrYJ
>>599
どこに書いたのかわからないけど
enterframeイベントに登録された関数内?
とりあえずそこに
trace(ball1.x,ball1.y);
trace(mainballx,mainball.y);
と打ってみてきちんと値がとれてるか確認を


それからそのif文じゃ変な挙動になりそう
あと比較演算子が間違ってる

円同士の衝突はこんなかんじ
ttp://hakuhin.jp/as/hittest.html#HITTEST_02
スクリプトは2.0だけど考え方は一緒
603 :Now_loading...774KB2011/05/23(月) 11:56:34.81 ID:MzdWYYNR
>>601
そうですねww明らかに変な挙動ですw
こちらのページの円の衝突の方は見させていただいたんですが、
// 円A
var ca = {
px : 0, // x 座標
py : 0, // y 座標
dx : 2, // x 方向の速度
dy : 3, // y 方向の速度
r :10, // 半径
m : 1 // 質量
};

// 円B
var ca = {
px : 0, // x 座標
py : 0, // y 座標
dx : 2, // x 方向の速度
dy : 3, // y 方向の速度
r :10, // 半径
m : 1 // 質量
};
こちらの意味がいまいちわかりませんでした・・・
596 :Now_loading...774KB2011/05/23(月) 11:32:49.95 ID:6/L6Yp6I
var i:int = 0xEEEEEE;のように16進数を使うと、internal debugger exceptionというエラーが出ます
これはいったい何でしょうか?
環境は、
FlashDevelop3.3.4
flex_sdk_3.5.0.12683
です
598 :Now_loading...774KB2011/05/23(月) 11:35:29.54 ID:MzdWYYNR
追記です。
私がやったのは
if(mainball.x = ball1.x || mainball.y = ball1.y)
{
dx = dx / 2 * - 1;
dy = dy / 2 * -1;
1dx = dx / 2;
1dy = dy / 2;
}
となります。
まぁとりあえずあたったら見たいな感じにしたんですけど うまく角度をつけたいのですが
どのようにしたらいいかわかりません。
600 :5962011/05/23(月) 11:43:51.80 ID:6/L6Yp6I
自己解決しました。スレ汚しすいません
起動しっぱなしなのが原因だったようです
602 :Now_loading...774KB2011/05/23(月) 11:47:07.94 ID:xjMlYrYJ
>>600
ちょっと調べてみたけどFDのエラーだったの?
605 :Now_loading...774KB2011/05/23(月) 12:08:49.02 ID:6/L6Yp6I
>>602
FDのエラーか判断できるほどよく知らないです
ただデバッガが起動しているのにデバッグしたのが原因っぽいということしか分かりません
604 :Now_loading...774KB2011/05/23(月) 11:59:57.09 ID:MzdWYYNR
どのようなところが分からないかというと var caが二つあるのでどうしたものかと迷っています。
言い訳ですけど突然やれといわれて基本もままならないので文の意味を簡単に理解できません。
じっくり勉強したいんですが提出する期間が決まっているので・・・
606 :Now_loading...774KB2011/05/23(月) 12:09:37.23 ID:xjMlYrYJ
>>604
なんだろ。ミスだと思う。
caとcbかと

とりあえずは
dx,dy,dx1,dy1でやってごらん
trace()はちゃんと見れてて
mainballの値は動いてた?
607 :Now_loading...774KB2011/05/23(月) 12:39:19.43 ID:MzdWYYNR
自分の文の打ち方が間違っていました。。。
dx1,dx2が判定してくれません・・・
608 :Now_loading...774KB2011/05/23(月) 12:59:54.22 ID:MzdWYYNR
反応はしましたけどこれだとあたって無くてもY軸かX軸の条件一致したら移動してしまいますね・・・
609 :Now_loading...774KB2011/05/23(月) 13:00:57.51 ID:xjMlYrYJ
>>608
http://hibari.2ch.net/test/read.cgi/swf/1305783143/
とりあえずこっちで聞くわ
610 :Now_loading...774KB2011/05/24(火) 11:12:40.75 ID:39TJp6JL
AS3です。

クイズ問題を作っているのですが
制限時間のタイマーをセットしています。

クイズ全体の制限時間を
Timerイベントで管理しているのですが、
クイズの中でクリックする場面も多く、
このようなクリック処理が入ると
Timerイベントが遅くなってしまいます。

たとえば制限時間を30分に設定していても
回答者がクリックする頻度によっては
処理が遅れ、実質32分とか33分とかになってしまいます。

そもそも、制限時間を作るときは
どのようにつくるとうまくいくものなのでしょうか。。

ご存知の方いらっしゃいましたら、
何卒ご教授のほど、よろしくお願いいたします
611 :Now_loading...774KB2011/05/24(火) 11:36:23.95 ID:XCf9EE+v
>>610
まず自分のソース晒したほうがいい
612 :Now_loading...774KB2011/05/24(火) 11:47:22.40 ID:sHDWJ46k
>>610
そんなに使ったことないからどの程度の重さだと1ms→1.1msほど遅れるのかわからない
(>>610の処理の方法が悪いからなのかわからない)けど

最初と最後にDateでローカル時間持って来れば処理の重さにかかわらず
秒単位の経過時間は一応得られそうだけど
当然経過時間をリアルタイムに画面表示したいだろうからだめだよね・・・
enterFrameDate内で(%フレームレート==0)でDateを1秒ごとに更新するとか?
それなら更新周期1秒ごとというのは微妙に守られなくても
時間だけは正確かね


ttp://www.trick7.com/blog/2006/11/30-115701.php
ttp://www.bit-101.com/blog/?p=910

>一方、ものすごく正確な時間測定が必要な案件の場合は、
BIT-101さんが書いた「Making Things Move!」の最後の方に書かれている
「onEnterFrameベースのカウント処理」の方が良いですよと仰られてます。

はたして有益な情報が載っているのか
うーん。。
613 :Now_loading...774KB2011/05/24(火) 11:54:52.85 ID:sHDWJ46k
>enterFrameDate内で(%フレームレート==0)でDateを1秒ごとに更新するとか?

enterFrameDateってなんだ・・・Date消し忘れ
614 :Now_loading...774KB2011/05/24(火) 12:04:55.21 ID:39TJp6JL
>612さん

ありがとうございます!
試してみます、取り急ぎお礼です!!!
615 :sage2011/05/24(火) 13:11:35.61 ID:iMVHnBBb
教えてくださいっ!
自作の関数なんですが、オブジェクト.function名(
まで書くと、通常ですと
hogeFunction( _hoge1:String, _hoge2:String):void
とヒントが表示されるんですが、swcのfunctionだと
hogeFunction( arg0:String, arg1:String):void
ってなってしまいます!
どうしたら引数名を表示できますか??
617 :Now_loading...774KB2011/05/24(火) 16:10:59.69 ID:iMVHnBBb
>616
すいませんっ Flash CS5.5ですっ
618 :Now_loading...774KB2011/05/24(火) 16:49:10.30 ID:o7GeB5Rd
>>617
出ないならまだしも一応は出るんだよねえ

一応CS5ででなくなった時の情報だけどキャッシュを削除してみるとか
ttp://www.jagra.or.jp/schoolblog/2010/09/flash-professional-cs5.html

あとはこのへんをもう一度チェックしてみるくらしかわからないです
SWC ライブラリのコードヒント
ライブラリパスまたは外部ライブラリパスに SWC ライブラリを追加すると、その SWC ファイルに含まれているすべてのクラスについてコードヒントが有効になります。

ソフトウェアを再起動せずにコードヒントをリロード

アクションパネルの右上隅にあるオプションメニュー から「コードヒントのリロード」を選択します。
カスタムメソッドを記述してスクリプトアシストモードをカスタマイズする場合は、これを行う必要が生じることがあります。
619 :Now_loading...774KB2011/05/24(火) 20:40:21.40 ID:RgX2GZ/l
AS3.0で変数の型指定をするときに、「あるクラスを継承したクラスなら何でも入れられる」という指定の仕方をする方法はありませんか?
型の部分を*にすると継承関係にないクラスまで入れられてしまうので教えて欲しいです。
620 :Now_loading...774KB2011/05/24(火) 20:51:27.95 ID:o7GeB5Rd
>>619
var hoge:あるスーパークラス
632 :Now_loading...774KB2011/05/25(水) 20:43:17.25 ID:ex0OySbS
>>620
ありがとうございました。
621 :Now_loading...774KB2011/05/24(火) 20:59:47.76 ID:o7GeB5Rd
カスタムイベントの送信で質問です
private function _eventThrough(e:CustomEvent):void {
trace(e);
this.dispatchEvent(e);
}
としてイベントリスナ経由で_eventThroughが呼び出されると
TypeError: Error #1034: 強制型変換に失敗しました。flash.events::Event@329ace49 を CustomEvent に変換できません。
と出てしまいます
_eventThroughはCustomEventの送信によって呼び出されているし、_eventThroughの引数eもCustomEvent(Eventを継承しています)なんだから
当然dispatchEvent(e)できるはずだと思うのですが、何が原因でしょうか
thisはもちろんEventDispatcherを継承していて
dispatchEvent(new CutomEvent(省略))で送出もできています

this.dispatchEvent(e);をコメントアウトしたところ、エラーは出なかったので
引数としてもCustomEventで送られてきていると思うのですが
622 :Now_loading...774KB2011/05/24(火) 21:28:50.15 ID:+fZcWuVv
>>621
ttp://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/flash/events/EventDispatcher.html#dispatchEvent
>イベントが送出された後にそのイベントの target プロパティは変更できないため、
>再送出処理のためにはイベントの新しいコピーを作成する必要があります

ってあるから仕様じゃね?
623 :Now_loading...774KB2011/05/24(火) 22:14:11.66 ID:Ll/3UdQ0
>>622
ありがとうございます。そちらを読んで仕様なのかと思い

Flash CS3で四角をMC化し、それぞれaaaとbbbと名前を付けた二つのMCを1フレーム目に配置
1フレーム目のフレームアクションに

aaa.addEventListener(MouseEvent.CLICK,_onC);
function _onC(e:MouseEvent) {
trace(1);
bbb.dispatchEvent(e);
}
bbb.addEventListener(MouseEvent.CLICK,_onC2);
function _onC2(e:MouseEvent) {
trace(2);
trace(e.target.name);
}

と書いてパブリッシュ、aaaをクリックしたところ
1
2
bbb
と正常と思われる結果が返ってきました

カスタムイベントが悪いのかな・・・
630 :Now_loading...774KB2011/05/25(水) 12:54:37.32 ID:HQSDJ8Rh
>>629
>>623の感じから見る限り俺が悪い気がするの
624 :Now_loading...774KB2011/05/25(水) 10:22:11.07 ID:LbjeiT7x
>618
ライブラリパスにswcのASファイルの場所を追加したら、引数名が表示されました!
ありがとうございました!
625 :6212011/05/25(水) 11:36:56.17 ID:HQSDJ8Rh
trace(e is CutomEvent);
もtrueだったし

this.dispatchEvent(e.clone());
も同じこと言われた
値コピーして新しいCustomEvent返す
public function throughClone():CustomEventをCutomEventに追加して

this.dispatchEvent(e.throughClone());

で事なきは得たけどひと手間無駄してる感じ

なんでだろ
676 :6212011/05/30(月) 21:17:11.54 ID:DiBP383f
>>621
ですが解決しました
カスタムイベントクラス内でclone()をoverrideしていなかったのが原因のようです

ttp://livedocs.adobe.com/flex/3_jp/html/help.html?content=createevents_3.html
>この場合は、サブクラス内で Event.clone() メソッドをオーバーライドする必要があります。
clone() メソッドは、type プロパティとすべての新規プロパティをクローン内に設定して、イベントオブジェクトのクローンされたコピーを返します。
通常、clone() メソッドは、new 演算子によって作成されたイベントインスタンスを返すように定義されます。

ということはイベントハンドラ内でdispatchEvent(e)をするとeのcloneが送られてたわけか
overrideしていなかったからe.clone()の返り値がEventのままでCustomEventにダウンキャストできなかったのが原因かな

>>625の解決法と実はなんら変わらないっていう
結局コピーは必要なのね
まあ一応スッキリしたので報告
626 :Now_loading...774KB2011/05/25(水) 11:52:30.67 ID:uF151xwu
extendsしただけで、コンストラクタでsuperの呼び出ししてないとか?

もう、_eventThrough(e:Event):void

で宣言して、内部で

var ce:CustomEvent as e;
とかで処理するとか。
627 :Now_loading...774KB2011/05/25(水) 12:01:50.86 ID:HQSDJ8Rh
>>626
さすがにsuperしてました。
ふつうのイベント送受信はできるのです

その方法でもやはりdispatchの段階で同じエラーになるようです

子を監視して子が自身にイベント送信したら
そのイベントをそのまま自分に送信し
さらに自分を監視している親が反応する
ということをやりたいのですが
628 :Now_loading...774KB2011/05/25(水) 12:46:00.59 ID:HQSDJ8Rh
例によって車クラスがあったとします
サブクラスにカローラクラスがあります

インスタンスのカローラ1とカローラ2は残りガス量などの個々のインスタンス変数を持っていますが
マックススピードは一緒なので当然static変数にします

同様に車クラスのサブクラスであるフィットにもstaticにマックススピードがあり、カローラのそれとは違う値です

ここで、車クラスの定義でマックススピードを使いたい場合はどうしたらよいのでしょうか
車の protected function _go():void{
this.x+=maxSpeed;
}
のような感じです
_goはもっと長いのですがサブクラスでもまったく同じ動きをし、maxSpeedの値だけが違います
このmaxSpeedを指定するためだけにオーバーライドするのはおかしいですよね
maxSpeedがインスタンス変数ならそのまま車クラスでprotected varしておいてカローラのコンストラクタで指定して代入すれば済むのですが
明らかにカローラ共通の値をインスタンス変数として持たせたくありません

もちろん実際に使うのはカローラクラスなので車クラスは抽象クラスのようなものです
こういった場合はどのようにしたら良いのでしょうか
車でget maxSpeed():int{}
しておいて
カローラでget maxSpeed():int{return スタティックmaxSpeed}とオーバーライドするとか?
639 :Now_loading...774KB2011/05/26(木) 12:50:57.31 ID:5rEGBCtZ
>>628

車クラス(抽象クラス)にmaxスピードのプロパティ入れない。
車の例えで話を続けるならば、車クラスはフレーム(枠組)だけで良い。
車クラスが実際に走ると考えるから破綻する。
車クラスは鉄の枠だけで、ココにエンジンを載せて、ココにシートを配置してと
レイアウトだけでイイ。

実際に走るカローラクラスにmaxスピードのプロパティを持たせるべき。
640 :Now_loading...774KB2011/05/26(木) 13:22:56.65 ID:I7mvddyb
>>639
カローラクラスもフィットクラスも走る部分は
maxスピードの値以外まったく同じ式なのですが、まったく同じことを書くということでしょうか?
641 :6392011/05/26(木) 20:19:27.85 ID:5rEGBCtZ
>>640
少し車の喩えから離れます。

> maxスピードの値以外まったく同じ式なのですが...

ならば、maxスピードはサブクラスのプロパティとするべきでしょうね。

オブジェクト指向の考えを推し進めていくのならば、当然重複する部分はまとめるべきです。
しかし、意味的な部分で可読性が下がるならば、寧ろ冗長的表現も必要だと思います。

人は物忘れをする生き物です。
半年もすれば、自分のやったことの2割3割は忘れてしまうモノです。

そういう意味で、重複する部分も多少残した方が良いと思います。
642 :Now_loading...774KB2011/05/26(木) 20:50:25.33 ID:I7mvddyb
>>641
たしかに意味的にはサブクラスのstatic constが一番いいですからね
なんだかまとめられるものは全部上のクラスに持ってきたくなっちゃうんですよね

私は2日も空けば自分の書いたコードの理由に頭をひねらなきゃなんないです
629 :Now_loading...774KB2011/05/25(水) 12:48:29.58 ID:uF151xwu
結局dispatchEventの引数はnewされたクラスが必要ってことなんじゃなかろうか。

Javaならコンストラクタをオーバーロードして、
new CustomEvent(e)とかでわかりやすく書けるけど。

なんか、すっきりする回答が欲しいね。
633 :Now_loading...774KB2011/05/26(木) 00:14:59.93 ID:GxwznKTh
Flash CS4使ってるんですが、

外部で定義したクラスAと、その継承クラスBを定義して、

ひとつのflaファイルで、Aを基本クラスとするシンボルA'のインスタンスと
Bを基本クラスとするシンボルB'のインスタンスを作り、

A'とB'にそれぞれ追加した同名のインスタンス(たとえばbutton)とかあると名前のコンフリクトがおきたり
A'に書いたフレームアクションがB'で走ったりするのはCS5でも一緒ですか?
634 :Now_loading...774KB2011/05/26(木) 00:31:43.45 ID:+FECqIp/
外部で定義したクラスにフレームアクション??
635 :Now_loading...774KB2011/05/26(木) 00:38:29.30 ID:GxwznKTh
>>634
はい…。すいません言葉が足りてませんでした。
MovieClipの継承クラスを定義してます。
細かい追加のパーツとかはフレームアクションで済ませたりしてるのですが…
636 :Now_loading...774KB2011/05/26(木) 00:58:39.34 ID:+FECqIp/
MovieClipを継承したクラスAをasファイルで定義
同じようにAを継承してBをasファイルで定義

CS上でシンボルAAをライブラリに登録、基本クラスをAにする
AAのタイムラインアクションにvar b:Button

シンボルBBをライブラリに登録、基本クラスをBにする
BBのタイムラインアクションにvar b:Button

→怒られる

ってこと?
643 :Now_loading...774KB2011/05/26(木) 22:02:48.63 ID:GxwznKTh
>>636

すいませんフレームアクションはおいといてください。
CS4のステージ上でシンボルAAにbという名前付きのボタンシンボルのインスタンスをおくと、
var b:Button
はCS4が自動宣言すると思います。


で、おそらくですがこの自動宣言がシンボルAAのクラスではなく、基本クラスのAで行われるため、
シンボルBBのインスタンス上にもbという名前付きのボタンシンボルのインスタンスをおくと
名前重複で起こられる、ということです。
645 :Now_loading...774KB2011/05/27(金) 00:59:11.12 ID:ha9uS3Al
>>643
>自動宣言がシンボルAAのクラスではなく、基本クラスのAで行われるため

そんなはずはないけどなあ
Aを継承したAAとBBにオーサリング時それぞれButtonを配置しても、エラーは出ないぞ
もっとも、両方に配置するならAにButtonを定義しとけばいいと思うが
646 :Now_loading...774KB2011/05/27(金) 11:02:44.73 ID:XV/Yvf9U
>>645
Aを基本クラスとしたオーサリングAAと
Aを継承したBを基本クラスとしたオーサリングBBの話じゃね?
650 :Now_loading...774KB2011/05/27(金) 23:47:14.76 ID:mVp8zphY
>>645
>>646
わざわざ検証していただいたんですね、ありがとうございます。
すいません説明がヘタで…646さんのおっしゃる通りです。

デザイナーさんがCS4で配置して、自分が制御して…っていう流れで、
どうにか横着したいw

>>それが嫌ならAAクラス作ってそこで宣言すればいいんじゃね?
これは自動宣言を切る、という意味ですか?
637 :Now_loading...774KB2011/05/26(木) 12:19:48.96 ID:6bpCjMpV
ムービークリップを画面にランダムに配置するコードを作成しています
このときにできるだけ、重なって表示しないように配置しようとして、以下の処理をしてるのですが、
表示すると、かなりの確率で重なって表示されます。移動後直後に、hitTestObjectを呼んだら当たり判定できないのでしょうか?
デバックができない環境なので質問しますm(__)m
644 :Now_loading...774KB2011/05/26(木) 22:05:18.86 ID:GxwznKTh
つづき

で、別件として、フレームアクションについて、たとえば
シンボルAAにhogeというムービークリップシンボルをおいて、11フレーム目で

hoge.visible=false;

とか書いておくと、
シンボルBBのインスタンスにはhogeがないので、実行時に
シンボルBBの11フレーム目になると、nullのプロパティまたはメソッドにアクセスできませんとかで怒られます。
ただし、これはシンボルBBの11フレーム目にコメントとか;(セミコロン)とかスペース書いとくと回避できます。
648 :Now_loading...774KB2011/05/27(金) 18:20:12.76 ID:ha9uS3Al
>>646
なるほど、納得

それはCS5でも一緒、というより仕様だと思うんだが…
>>644にしても、それが嫌ならAAクラス作ってそこで宣言すればいいんじゃね?
単にクラス設計とかタイムラインとの併用そのものが、よろしくないように思えるな
647 :Now_loading...774KB2011/05/27(金) 18:00:52.13 ID:Co/LhbMI
「デバックができない環境」の意味がわからん
あと「デバック」て
649 :Now_loading...774KB2011/05/27(金) 19:26:35.81 ID:XV/Yvf9U
うむ
タイムラインが入るとややこしくていかん

タイムラインで宣言された変数ってdynamicに追加されるんだっけ
651 :Now_loading...774KB2011/05/27(金) 23:52:27.64 ID:mVp8zphY
あ、すいません違いますね。
自己完結しました。

今は外部で

クラスAを定義

クラスAを継承したクラスA'(コンストラクタだけ?実質ただのコピー)を定義
クラスAを解消したクラスBを定義

みたいにしてます。
652 :Now_loading...774KB2011/05/28(土) 00:07:53.21 ID:iVq8Jr7j
CSを買おうと思うのですが、値段が高いので、
どこか中古でCS4か3が買えるお店が無いでしょうか
関東がいいのですが、通販でも可です。
なにやら他のFlashスレが過疎っているのでここで
お聞きさせていただきます。

ちなみに4や3ってFlash Player10.1には対応しているでしょうか?
653 :Now_loading...774KB2011/05/28(土) 06:34:13.92 ID:a/97txvq
>>652
ttp://page13.auctions.yahoo.co.jp/jp/auction/r78011432
これは終了間近だが、探せば他にもあるんでない?

>ちなみに4や3ってFlash Player10.1には対応しているでしょうか?
ttp://www.adobe.com/jp/support/flash/downloads.html
によれば、CS4で、かつアップデートを万全にしたとしても
10.0.42.34 までとなっているな。
655 :Now_loading...774KB2011/05/28(土) 15:55:33.27 ID:iVq8Jr7j
>>653
亀お礼ですがありがとうございました。早速教えていただいたところに
連絡してみます。
しかし10.1にCS4でも対応しないというのは痛いですね
自分の周りのPCはFlash Playerがみな10.1で、ようするに
CS5を買えというありがたいアドビさまの考えなのでしょうか…
できればFlash playerのほうはバージョン上げないでほしいですね
こんなことをしていると、ますますFlashが廃れていくように思うのですが。
657 :Now_loading...774KB2011/05/28(土) 17:36:41.18 ID:0qxcWwn+
>>655
PCのFlash Playerが10.1なら
10.1以下のFlashは見られるわけだし、問題なくね?
なにか勘違いしてるのでは?
どうしても安くやりたいなら、FlexSDKはダメなのか?
658 :Now_loading...774KB2011/05/28(土) 23:46:03.71 ID:iVq8Jr7j
>>657
実はフリモ3というのでやっているんですが、作った物がFlash player 8とか
6とかだと正常に動くんですが、プレイヤーが10.1だと動かないんですよ><

10.1用の書き出しができる設定もあるんですが、それで書き出しても
プレイヤーが8や6でないと正常な動作をしません

三ヶ月徹夜でがんばったのにもう泣きたいです。あきらめてCS5を
アドビの思惑どおり買うことにします。

ありがとうございました。
659 :Now_loading...774KB2011/05/29(日) 07:28:18.10 ID:fRWdbdx+
>>658
Adobe純正でも似たようなことがあるから困る。
ためしに、「シーン」で区切ったムービーをCS3とCS4で作って、
バージョン9のswfで出力して、「ニコニコ動画」に上げてみると、
CS3のは問題なく動くが、CS4のは「シーン」ごとにシークバーが
先頭に戻り、まともな頭出しが出来ない。
656 :Now_loading...774KB2011/05/28(土) 15:58:03.05 ID:iVq8Jr7j
ああっと!ヤフオクだったんですね。領収書が出ないのか・・・
660 :Now_loading...774KB2011/05/29(日) 16:47:45.97 ID:WlHqJcHU
http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/
にはVectorの説明がないように思うのですがどこにあるのでしょうか?
ないとしたら何を参考にすれば良いでしょうか?
661 :Now_loading...774KB2011/05/29(日) 17:17:35.49 ID:fR0n+RRg
662 :Now_loading...774KB2011/05/29(日) 17:37:46.20 ID:WlHqJcHU
>>661
ありがとうございます
トップレベルのとこりにあったんですね
663 :Now_loading...774KB2011/05/29(日) 17:59:54.91 ID:fR0n+RRg
>>662
見てるバージョンが違ったんだよ・・・
664 :Now_loading...774KB2011/05/29(日) 18:04:26.86 ID:WlHqJcHU
>>663
なんだと・・・
グーグル先生にしてやられた感じです
盲点でした。本当にthx
667 :Now_loading...774KB2011/05/29(日) 21:34:55.87 ID:sEnSSIQN
ActionScriptで、というかFlashDevelopでコードから作ったswfファイルって、
EmbedやLoaderで読み込めないんでしょうか?
Flash CS5で作ったswfは再生できるんですけども
同じ拡張子でも別物なのか、それとも何かミスしてるのか知りたいっす。
670 :Now_loading...774KB2011/05/30(月) 06:41:51.28 ID:abxjUv38
>>667
読めてるな、俺は
・メインクラスをSpriteクラスから派生させている
・Loaderがある方のswfもFlashDevelopで作成している
んだけど、同様の方法でテストしてみて順番に自分の目的に近づけていって
どこが問題なのか調べてみたら?
681 :Now_loading...774KB2011/05/31(火) 13:46:10.65 ID:tPpsMpjL
>>667ですが、解決した、のかなーと。
ロードする方とされる方のswf、どっちも同じクラス名にしてたのがよくなかったようです。
↓でmainが無限に出力されてました。
理屈がいまいちよくわかんないんですが、ロードしたswfを作成するつもりで
自分自身を複製しちゃったりしてるんですかね?

ロードする方
public class Main extends Sprite
{
  public function Main():void
  {
    trace("main");

    var loader:Loader = new Loader();
    loader.load(new URLRequest("Hoge.swf"));
    addChild(loader);
  }
}

ロードされる方
public class Main extends Sprite
{
  public function Main():void
  {
    ...
  }
}
682 :Now_loading...774KB2011/05/31(火) 14:24:20.08 ID:R3qyYMy0
>>681
そんなことよりloader.load()の後のaddChildをイベントハンドラにいれてないの?
683 :Now_loading...774KB2011/05/31(火) 23:04:18.51 ID:hGYRTGzX
>>681
新たに読み込んだswfに同じパッケージの同じクラス名があると
無視されて既存のクラスが使われるよ
名前が衝突しそうならApplicationDomainを新しく作れば回避できる
loader.load( new URLRequest("Hoge.swf", new LoaderContext(false, new ApplicationDomain()) );

>>682
HTMLのimgタグみたいなもんだから読み込む前にaddChildしちゃってかまわないはず
読み込み完了までアクセスできるメンバは限られるから注意がいるけど
671 :Now_loading...774KB2011/05/30(月) 09:57:12.25 ID:DiBP383f
loaderならイベント全部拾ってどこまでいけてるのか見てみるとか
672 :Now_loading...774KB2011/05/30(月) 11:49:43.29 ID:D7SPFrRu
flex_sdk_4.5.0.20967に変更したら、Stringの変数にドットをつけてもメソッドが表示されなかったり、
import flash.events.Event;を手動で書かなければならなくなりました。
設定忘れやミスでしょうか
プロジェクトのテストをすることはできますが、この状態でコードを書くのが面倒くさいので解決方法を教えていただきたいです
690 :Now_loading...774KB2011/06/02(木) 14:31:38.71 ID:18SdkYgN
>>672,674
自己解決しました
674 :Now_loading...774KB2011/05/30(月) 14:26:23.34 ID:D7SPFrRu
クラスパスがおかしいことになっていそうだということしか分かりません
再インストールをすれば解決するかもしれませんが、できない環境で困っています
どうしたらいいのでしょうか
675 :Now_loading...774KB2011/05/30(月) 16:14:54.19 ID:d+aqQlEq
Flash CS5を使用しています
JPEGencoderだとかBase64encoderだとかいったものはそのままで使えるのでしょうか?
それともなにか入れたりしなくてはいけないのでしょうか?
677 :Now_loading...774KB2011/05/31(火) 00:27:25.32 ID:CFpe5gs0
ByteArrayってカスタムクラスのインスタンスを普通に保存して読み込んで復元することができるのでしょうか
それともプロパティを全部数字と文字列に直してObject作って保存するものなのでしょうか
680 :6772011/05/31(火) 11:46:45.05 ID:CFpe5gs0
>>677ですが
flash.net.registerClassAlias(aliasName:String, classObject:Class):void
で保存時と復元時にクラスにエイリアスを張ったらいけるようですね
コンストラクタの必須引数が0なのとprivateは復元できない制約があるみたいですが
678 :Now_loading...774KB2011/05/31(火) 11:05:24.80 ID:ZI+yODId
Tweenerで配置したビットマップが指定した領域に存在するか
を得たいんだけど、どうやったら出来る?
679 :Now_loading...774KB2011/05/31(火) 11:14:21.56 ID:CFpe5gs0
>>678
解決したいだけならビットマップの参照もっといてenterFrameで座標見ればいいんじゃない?
684 :Now_loading...774KB2011/06/01(水) 10:06:16.05 ID:Up8WIE7R
initするまでアクセスできないメンバもあるんだしイベントにいれるべきだろ
685 :Now_loading...774KB2011/06/02(木) 10:06:27.84 ID:q4rqnOsm
ttp://f-site.org/articles/2011/02/19164156.html
こちらでは配列、Vectorに与えるインデックス番号を計算するときは
uintにキャストしたほうが良いと書かれていますが

forループ内でイテレータをインデックス番号にする際は
もうイテレータ自信をuintで回したほうがよいのでしょうか
i++の時点でデータ型は確定しているのかな

forでイテレータにuintを使うと遅くなる、等の記事も見かけたことがありますし
正の値が保証されているときもイテレータの書き方として一番正しいのはintなのでしょうか
686 :Now_loading...774KB2011/06/02(木) 11:06:44.23 ID:l7qf9Bh5
その記事intとuintの比較じゃないから
式で渡すのとリテラルで渡すのだったらリテラルの方が良いっていうだけ
なんでuintにしてるかは知らんけど、普通にintでいいんじゃね?
687 :Now_loading...774KB2011/06/02(木) 11:08:14.58 ID:l7qf9Bh5
ああ、式とリテラルじゃなくて、*型と型が定まってる場合の比較か。
688 :Now_loading...774KB2011/06/02(木) 11:28:27.07 ID:q4rqnOsm
>>687

array[4]...型が決定している
array[4+1]...型が決定していない

var i:uint = 0;
array[i]...決定している
array[i+1]...決定していない

for(var i:int=0;i<length;i++){
array[i]...してる?してない?
}
してるんですかね
わからn
689 :Now_loading...774KB2011/06/02(木) 13:07:43.20 ID:l7qf9Bh5
uintでもintでもその型の変数使ってんなら型決定してるよ
わからんレベルなら気にしないでintにしとけばいいんじゃね?
691 :Now_loading...774KB2011/06/03(金) 15:57:25.17 ID:X6m3x8No
FMSでFileオブジェクトとwritelnメソッド使ってイベントログファイルに書き出してるんですが
排他制御って実装されてないのでしょうか。
692 :復習のコード2011/06/04(土) 02:14:48.02 ID:lkCIwHV1
教えてください。

ラベル10個をタイムラインに配置して、
各ラベルにはそれぞれ問題をテキストで付属してます。
1問目から10問目まで解いた後に、
間違えた問題をもう一度解答するようにして、
間違えた問題がゼロになるまで復習できるようにASを組みたいのですが、
どうやればいいのでしょうか?
お願いします。

環境:XP,CS5,AS3,

694 :Now_loading...774KB2011/06/04(土) 20:14:41.58 ID:qwZszFzZ
ボタンを押したときの挙動と
コンテキストから選択した時の挙動がまったくいっしょなんだけど(イベント引数を使わない)


addEventListenerのときはそれぞれ
ContextMenuEvent
MouseEvent
で同じメソッド登録して
そのメソッドの引数をEventにするのって(動いたけど)ダメ?
695 :Now_loading...774KB2011/06/04(土) 20:36:41.20 ID:Gogyo20w
import flash.display.Sprite;

function Test(){
var foo:Sprite=new MySprite();
addChild(foo);
}

Test();


質問です。適当な画像の入ったシンボルMySpriteを用意し、
上のコードを新しいプロジェクトのメインタイムラインに記述し実行するとMySpriteは表示されますが、
fooはローカル変数なので関数を抜ける際に削除されるはずなのにMySpriteの中身はステージ上には表示されたままになります。
この場合、fooはどこにどのような名前で存在していているのでしょうか?

696 :Now_loading...774KB2011/06/04(土) 20:51:47.60 ID:qwZszFzZ
new MySprite() の返り値はMySpriteクラスのインスタンスの参照
よってfooにはメモリ上のMySpriteインスタンスの場所を指すアドレスが入っている
fooは関数を抜ける時に破棄されてるけどMySpriteインスタンスが破棄されているわけではない

インスタンスのメモリ上の場所はわかんなくなるけど存在は残ったままってかんじかな
697 :Now_loading...774KB2011/06/05(日) 07:53:23.25 ID:prAv6tDD
画面に表示されてりゃ表示リストで掴んでるに決まってるだろうよ
698 :Now_loading...774KB2011/06/07(火) 07:40:56.25 ID:oAF2rLHb
AS3,Player10,WinXP,FlashProCS4

正規表現を使って同一フォルダ内にある任意名のTextファイルを読み込みたいのですが、
RegExpインスタンス(ここではregExp0)の扱いで困っています。コードは下です。
※フォルダにTextファイルは1個だけです。

var regExp0:RegExp = new RegExp(".txt$","g");//拡張子で後方一致
var loader:URLLoader = new URLLoader();

loader.addEventListener(Event.COMPLETE, completeHandler);
loader.load(new URLRequest(regExp0));// ←ここでエラー
function completeHandler(event:Event):void {
//読み込み後の処理
}

上の場合、URLRequestの引数の型が違うということで怒られます。
regExp0をStringにキャストすると、「ストリームエラー。 URL: file:///.txt$/g」と出ます。
どうすべきでしょうか?
699 :Now_loading...774KB2011/06/07(火) 11:04:34.56 ID:OyNROPQP
regExp0はRegExpクラスだからね
RegExp.exec(str:String):Object
でstrのパターンマッチされた配列が返されるけど
今回の場合元の検索対象strがないからなあ

フォルダ内の全ファイル名をAS3でどうやって取得するかってのはちょっと見当たらないからわからん
他の言語と組み合わせて取得するとかかねえ
700 :Now_loading...774KB2011/06/07(火) 11:45:54.12 ID:nX399glY
RegExpがどうのこうの以前の問題として、ファイル名検索っていう処理は
AIRならできるけど、webに乗っけるなら無理だね。
決まったファイル名にするか、loadVarsあたりで渡すしかないんじゃない。

マイクロソフト ワイヤレス ブルートラック マウス Arc Touch Mouse RVF-00006
マイクロソフト ワイヤレス ブルートラック マウス Arc Touch Mouse RVF-00006