[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 02/28 14:03 / Filesize : 351 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

ActionScript 誰かが物凄い勢いで解答するスレ 17



1 名前:Now_loading...774KB [2007/08/18(土) 08:48:49 ID:g0sVH2IC]
AcitonScriptのことなら
初歩的な質問でもなんでもおk

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

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

直前スレ
ActionScript 誰かが物凄い勢いで解答するスレ 16
pc11.2ch.net/test/read.cgi/swf/1178021352/l50
関連スレ
Flashの超基本的な質問はここでしろ! part35
pc11.2ch.net/test/read.cgi/swf/1184667056/l50
Flash製作初心者の質問スレッド レイヤー36
pc11.2ch.net/test/read.cgi/swf/1173006099/l50

サイト、参考書籍、関連情報は>>2-10あたり

72 名前:Now_loading...774KB mailto:sage [2007/08/24(金) 16:41:32 ID:7hCp+LC2]
>>70
ありがとうございます。
trace()を繰り返してみると、2行目以降に値が表示されました。
同じフレームでの実行だったので、どうやらmyMCの方が先に実行されてたようです・・・。

他のプログラミング言語でいう、Sleep()とかwait()みたいな関数って用意されてないのでしょうか?

73 名前:Now_loading...774KB mailto:sage [2007/08/24(金) 17:37:31 ID:4NYpyoJF]
>>69
depthが1以上なら消えるはず。attachしてもdepthが1以下なら消えないはず。

74 名前:69 mailto:sage [2007/08/24(金) 18:28:02 ID:MJ2AZXwL]
>>73
有り難うございます。消えました。

75 名前:Now_loading...774KB mailto:sage [2007/08/24(金) 22:05:24 ID:bFIOJMpP]
サウンド(ボタンアクション)について質問です。

ボタンアクション(再生ボタン)

on(release){
SoundA.stop();
SoundA = new Sound(_root);
SoundA.attachSound("AAA");
SoundA.start();
}

//ライブラリ内のサウンド(識別子"AAA")

このScriptの書き方ですと、再生ボタンを押すとサウンドの重複は回避できますが
再生ボタンを押すたびにサウンドの頭からスタートしてしまいます。
出来れば、再生中は再生ボタンを押しても反応しない(無効)書き方にしたいんですが。
停止ボタンを押すことによって再び再生ボタンのアクションを有効にするやり方を教えてください。

76 名前:Now_loading...774KB mailto:sage [2007/08/24(金) 23:42:50 ID:JML/IxYr]
>>75
Sound.onSoundComplete = function(){
再生するフラグ = true;
}

77 名前:Now_loading...774KB mailto:sage [2007/08/24(金) 23:53:36 ID:gMg4Xk8A]
>>75
いちいちattachしないでstopとplayだけしてればいいんじゃないの。

78 名前:Now_loading...774KB mailto:sage [2007/08/24(金) 23:56:30 ID:S+yTP2Up]
>>76
さっそくの回答ありがとうございました。
これをどこに記述すればいいのですか?あとフラグとはなんですか?
すみません素人で。

79 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 00:08:33 ID:hE6Fefjg]
>>78
真面目かつ良識的にに書くと、flagとはif文などで
勃起(準備OK) = true 
萎縮(今はダメなの) = false

80 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 00:15:52 ID:fQZyWmzZ]
>>78
どこに書くかはプログラム全体を見ないとわからない。



81 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 00:23:11 ID:WMOJ/8D9]
>>77
ご回答ありがとうございます。
もしよろしければ、一時停止ボタンの作成を教えていただたけませんか?

82 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 02:32:03 ID:fQZyWmzZ]
>>81
//再生再開
on(release){
SoundA.start(SoundA.position/1000, 0)
}

//停止
on(release){
SoundA.stop()
}

83 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 09:27:48 ID:jah+z/np]
JavaからActionScriptに移ってきてJavaに似てるって喜んでたんですが、
もしかしてActionScriptでは画面の部分更新(領域を指定して画面に転送)は
できないんでしょうか?
addChildの処理は重いみたいなので画面サイズのスプライトの中で処理して
部分更新なんて考えてたんですが無理なのかな・・・。

84 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 09:30:08 ID:dAihp5hQ]
スプライトって何?

85 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 09:52:50 ID:Me+/y7tq]
paraflaかも

86 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 09:55:58 ID:aSG+OSFh]
>>83
画面サイズのBitmapData用意してそれを直接書き変えれば?
というか、addChildで重いって、どんな物を作りたいの?

87 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 09:59:03 ID:5jsZChmw]
>>83
ムービープレビューで右クリ、再描画領域を表示をしてみそ

88 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 10:58:46 ID:yP6Bwp/a]
>>84
Sprite AS3.0で使うクラス

>>83
毎回グラフィック用のSpriteを作ってaddChildしてるとか?
うろ覚えだがENTER_FRAMEのイベントで
Spriteの中のオブジェクト(RectとかCircle)を操作したら勝手に部分再描画になったような。

89 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 11:28:41 ID:hM6+qsn1]
>>83
ビットマップの話なのかベクターなのかはっきりしてから質問した方がいい。

90 名前:Now_loading...774KB [2007/08/25(土) 14:08:12 ID:LbNq99D/]
MCが、0〜30フレームまでの間でrollout時に、逆再生させたいのですがわかりません。




91 名前:83 mailto:sage [2007/08/25(土) 14:31:11 ID:jah+z/np]
すみません、明らかに勉強不足のようなので出直します。
addChildでかなり時間がかかるという記事を見たので、部分更新が出来る
か気になって質問してしまいました。

>>86さんの書き込みを見て希望が出てきたので、まずはしっかり勉強します。


92 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 14:35:43 ID:dAihp5hQ]
>90
mc.onRollOver = function() {
this.onEnterFrame = function() {
this.prevFrame();
}}
これを基本にいじってみる

93 名前:Now_loading...774KB mailto:sage [2007/08/25(土) 21:38:51 ID:LRHJXgIf]
>>91
希望が出てきたというか、>>87>>88の言ってることが全てだとオモ
レイヤー構造と、全てのオブジェクトが固有のタイムラインを持てることを知ればいい

94 名前:Now_loading...774KB mailto:sage [2007/08/26(日) 00:11:54 ID:J2+eBKoQ]
>>93
でも>>91の言うこともなんとなく分かる。
AS3.0始めた頃は
「SpriteにDrawして書く」
「MovieClipをClassにしてattachMovieみたいに使う」
「JCanvas使ってJavaみたく描画メソッド作る」
くらいの3パターン、どれがいいのか・・・と迷ったもんだ。
今でも処理効率で言えばどれが一番なのか分からんしね。
再描画領域指定できそうな3つ目かなと思ってたりするけど・・・
一度テストしてみようかと思った。雑談すまそ。

95 名前:Now_loading...774KB mailto:sage [2007/08/26(日) 01:00:34 ID:y5uVf7Gu]
その3つの選択肢なら使い分け用途がかなりはっきりしてるから迷うまでもない。
ビットマップなんていつでもコンバートできるんだから処理によって変換すりゃいいし。

96 名前:Now_loading...774KB mailto:sage [2007/08/26(日) 10:59:10 ID:1nX11mtB]
>>95
速度は?

97 名前:Now_loading...774KB mailto:sage [2007/08/26(日) 16:47:37 ID:DMgdoKD0]
AS3.0で導入された可変長引数を別の関数に渡すにはどうしたらいいんでしょうか?
Cのように sprintf("%d: %s", 1, "リンゴ") で「1: リンゴ」を返すsprintfに可変長引数を
渡したいのですがどう渡していいのか分かりません。
現在は10個までとして以下のようにしてしまっています。

public function Trace(format:String, ... args):void
{
trace(sprintf(format, args[0], args[1], args[2], args[3], args[4], args[5], args[6], args[7], args[8], args[9]));
}

98 名前:Now_loading...774KB mailto:sage [2007/08/26(日) 17:55:04 ID:E9ow17w7]
>>97
他の関数に渡すとかいう時点で、可変長引数使う意味ないだろw

99 名前:Now_loading...774KB [2007/08/26(日) 18:56:54 ID:VDOPw4zH]
Fla6 AS1.0書き出しです。
ムービークリップをドラッグして投げられ、マウスを放すとだんだん減速して止まるようなスクリプトを書いています。

そこで問題です:
ものすごい速さでマウスをドラッグしてリリースするとstopDragが効かず、MCがマウスに張り付いたままになってしまう。
かといってreleaseのほかにonDragOutも付けるとものすごい速さでマウスを動かすとdragOutが反応してしまい
マウスを離さなくても飛んでいってしまう。

MCに書いているスクリプトは下記です。

100 名前:Now_loading...774KB mailto:sage [2007/08/26(日) 18:57:41 ID:VDOPw4zH]
onClipEvent (load) {
stat = 0;
}
onClipEvent (mouseMove) {
updateAfterEvent();
}
on (press) {
stat = 0;
this.startDrag(false);
}
on (release) {
this.stopDrag();
stat = 1;
x2 = _x;
y2 = _y;
speedx = (x2-x1);
speedy = (y2-y1);
}
onClipEvent (enterFrame) {
x1 = _x;
y1 = _y;
if (stat) {
_x += speedx*2;
_y += speedy*2;
speedx = speedx*0.9;
speedy = speedy*0.9;
}
}



101 名前:Now_loading...774KB mailto:sage [2007/08/26(日) 18:59:13 ID:VDOPw4zH]
改行が多くてERRORになるので分割しつれいします。
statは現在の状態を示す変数で、0のときは何もしていないかドラッグ中、
1の時は惰性で飛んでいる状態を示しています。

102 名前:Now_loading...774KB mailto:sage [2007/08/26(日) 19:06:29 ID:V6E00enf]
一定間隔でマウスボタンが押されているかどうかを判定すればいいんじゃね?

103 名前:99 mailto:sage [2007/08/26(日) 20:04:06 ID:VDOPw4zH]
>>102
なるほど。。。

マウスに追随する透明のMCをつくってそれがhitしてるか
enterFrameで判定してやってみます。

104 名前:99 mailto:sage [2007/08/26(日) 20:28:56 ID:VDOPw4zH]
むー。うまくいきません。
領域外に出たとき「マウスが押されていない」というのをどう判定すればいいものか。。。

105 名前:99 mailto:sage [2007/08/26(日) 20:59:14 ID:VDOPw4zH]
ttp://www.mother.co.jp/04_recruiting/diary/

このサイトなんですが、なんでブラウザ枠からカーソルが出ているのに
ドラッグが継続されるんでしょうか?
startDragでMCをドラッグした場合、ブラウザからはみ出たらMCが固まっちゃいますよね?
そもそもstartDragを使わない方法なんでしょうか・・・

106 名前:Now_loading...774KB mailto:sage [2007/08/26(日) 21:03:54 ID:1nX11mtB]
>>98
printf()系に渡すんなら意味があるんじゃないか?
C言語ならva_listを使うんだけど。AS3でどうやるかは知らん、すまん。

107 名前:Now_loading...774KB mailto:sage [2007/08/26(日) 21:17:30 ID:YaiKwi7D]
>>99
話もどしてしまうけど。。。
>releaseのほかにonDragOutも付けると
releaseOutsideは試した?どちらかというとこっちじゃないか?

108 名前:99 mailto:sage [2007/08/27(月) 00:01:42 ID:/tJVCQPd]
>>107
releaseOutsideなんてあったんですね・・・
超基本的なことでしたね。解決しました!ありがとうございます!

109 名前:Now_loading...774KB mailto:sage [2007/08/27(月) 19:52:03 ID:+KoBV6ub]
AS3.0について質問です
class A {
public staic function test1(){
trace("test1");
}
}
class B extends A{
static function test2(){
trace("test2");
}
}

こんな感じにAを継承したBというクラスがあります
このtest1とtest2を実行した所
test2は問題ないのですがtest1に関して以下のようなエラーが出ます。

未定義である可能性のあるメソッド test1 を、静的型 Class の参照を使用して呼び出しました。

エラー内容がいまいちピン来ず、ヘルプを呼んでも直せませんでした。
間違いのある箇所を指摘していただきたいです。

110 名前:Now_loading...774KB mailto:sage [2007/08/27(月) 19:52:53 ID:+KoBV6ub]
追記

実行方法は
B.test1() B.test2()を実行しました。



111 名前:Now_loading...774KB [2007/08/27(月) 20:35:46 ID:/CIW+tvt]
環境)OS:WinXP-Pro,Mem=1GB,ソフト:Flash8-Pro(Player7,AS2.0)

loadMovieで読み込んだ画像のサイズを取得するにはどうすれば良いでしょうか?
ASとして以下をボタンアクションon (press) 内に書いています。

this.stageM.loadMovie(name1+".jpg");//MC:stageM(300*300)に読み込む
trace("wide="+this.stageM[name1+".jpg"]._width);

目的JPGは200*200のサイズですが、これだと wide= undefined が返ってきます。

112 名前:Now_loading...774KB mailto:sage [2007/08/27(月) 20:37:10 ID:pACmOEd0]
classBに
static function test1(){
 A.test1()
}
がないとエラーになんじゃないかなそれは。

113 名前:Now_loading...774KB mailto:sage [2007/08/27(月) 20:41:29 ID:pACmOEd0]
>>111
moviecliploaderのonloadinitをヘルプで調べるんだ
読み込み開始後すぐにはそ見込み後のサイズは取得できないはず

114 名前:Now_loading...774KB mailto:sage [2007/08/27(月) 21:03:03 ID:+KoBV6ub]
>>112
継承してもBからはAの静的関数は実行できない仕様、と捉えて良いのでしょうか

AS2.0と同じように扱えると思っていました、解答ありがとうございます。

115 名前:111 mailto:sage [2007/08/27(月) 21:13:41 ID:/CIW+tvt]
>>113
早速のレス有り難うございます。ヘルプを読み、ましたが
「ロード対象クリップの先頭フレーム上のアクションが
実行されたときに呼び出されます。」

の意味が分かりません。別の表現だとどうなるのでしょうか?

116 名前:Now_loading...774KB mailto:sage [2007/08/27(月) 21:21:13 ID:pACmOEd0]
>>115
「完全に外部ムービーが読み込まれ、画面に表示され、幅や高さなどをスクリプトから取得できる
準備ができたら、このイベントハンドラに指定しておいた処理が実行されます。」ってこと。
つまり、このイベントが起きる前に幅や高さを取得しようとしても、まだ読込中なのでundefinedになるってこと。
イベントハンドラって何?ってのはがんばって勉強してくれ、としか言えない。

117 名前:111&115 mailto:sage [2007/08/27(月) 21:22:57 ID:/CIW+tvt]
>>116
さんきゅうです。引き続き、やってみます。
とりあえず、画像は表示されます。

118 名前:111&115 mailto:sage [2007/08/27(月) 22:11:29 ID:/CIW+tvt]
(連投すいません)
MC:stageMのイベントハンドラとして
this.onLoadInit = function() {
trace("-OK-");
};

を書きました。JPGの読み込みが終了したら出る筈なのですが、
5秒位待っても -OK- が出ません。

119 名前:Now_loading...774KB mailto:sage [2007/08/27(月) 22:23:15 ID:AajI9Cl/]
>>118
onLoadInitはMovieClipLoaderクラスのリスナーだから
そのASでは何秒待っても-OK-はでません。
ヘルプでMovieClipLoaderを調べるんだ。そしたら例が載ってるから。

120 名前:Now_loading...774KB mailto:sage [2007/08/28(火) 00:10:30 ID:LKGdZc2X]
>>114
ttp://www.fumiononaka.com/TechNotes/Flash/FN0612002.html



121 名前:111&115 mailto:sage [2007/08/28(火) 01:16:14 ID:erJeZUhX]
>>119
度々ありがとうございます。
ヘルプと本を見てrootのイベントハンドラとして下の様に書きました。

myJpg = new MovieClipLoader();
mcListner = new Object();
mcListner.onLoadInit = function(stageM) {
trace("-OK-");
};
myJpg.addListener(mcListner);

相変わらず画像は出ますが、まだOKが出ません。
重ね重ね申し訳ありません。間違いをご指摘願います。

122 名前:Now_loading...774KB mailto:sage [2007/08/28(火) 01:35:20 ID:hlBUaXHU]
>>121
画像を読み込みたかったんじゃないの?そのASは何を読み込んでるの?
ヘルプに載ってる例をまるまるコピーすればいいと思うんだけど。
あと試すときはローカルじゃなくてweb上でね。

123 名前:Now_loading...774KB mailto:sage [2007/08/28(火) 01:38:13 ID:hlBUaXHU]
>>121
あ、ごめん画像は出んだ。
web上で試すときはtrace()使えないからテキストフィールドとかに出力。

124 名前:111&115 mailto:sage [2007/08/28(火) 02:48:43 ID:erJeZUhX]
>>122-123
一旦話をまとめたいと思います。

目標: MC(stageM)にロードしたJPGの大きさを取得したい(最初は横幅のみでOK)

流れ:
this.stageM.loadMovie(name1+".jpg");//MC:stageM(300*300)に読み込む
※これは可能

  ↓
MovieClipLoader.onLoadInitイベントリスナーを使って画像情報を取得したい
rootのイベントハンドラとして:

myJpg = new MovieClipLoader();
mcListner = new Object();
mcListner.onLoadInit = function(stageM) {
trace("-OK-"); //動作確認でOKを出す
};
myJpg.addListener(mcListner);

  ↓
しかし、このOKが出ない。

改めて、問題点のご指摘を願います。

125 名前:Now_loading...774KB mailto:sage [2007/08/28(火) 03:08:18 ID:hlBUaXHU]
>>124
myJpg.loadClipが無いんじゃない?
試すときはローカルじゃなくてweb上で。

126 名前:111&115&124 mailto:sage [2007/08/28(火) 04:01:21 ID:erJeZUhX]
>>125
有り難うございます。幅が取得できました。
関連ASは以下の通りです。

myJpg = new MovieClipLoader();
mcListner = new Object();
mcListner.onLoadInit = function(stageM) {
trace("-OK-");
trace("wide= "+stageM);
//
ok = "-OK-";//テキストフィールドokに出力
wide = stageM._width;//テキストフィールドwideに出力
};
myJpg.addListener(mcListner);

on (press) {
myJpg.loadClip(name1+".jpg", stageM);//MovieClipLoaderクラス用にloadClip()
}

Web上の動作を推奨されていますが、ローカルでも wide= 200 と、JPG
の横幅が得られました。

重ねて御礼申し上げます。

127 名前:Now_loading...774KB mailto:sage [2007/08/28(火) 14:24:19 ID:QxMZY+P1]
よろしくお願いします。
winXP/FlashCS3/AS2.0です。

mainMCがクリックされた際、
mainMCの中にsubMCを複製したいです。
MCの中にMCを複製する事は可能ですか?

mainMCに下記を記述してみましたがMCは複製されませんでした。

on (release) {
_root.mainMC.duplicateMovieClip(_root.subMC,"subMC_d",dep);
}
※depは複製されたMCの通し番号が入ります

どのように記述すればMCの中にMCを複製できるのでしょうか。


128 名前:Now_loading...774KB mailto:sage [2007/08/28(火) 18:08:07 ID:Dv9/WtcH]
>>127
_rootにsubMCがない
MCにsubMCという名前がついていない(プロパティ)
生成するMCの名前が同じ

気になるのはこんなところ。

129 名前:Now_loading...774KB [2007/08/28(火) 23:10:41 ID:NsBwdnrq]
FLVを再生時に、再生している途中で、
また頭から再生したいという場合は、どのような記述を
すれば実現できるのでしょうか?

現在、ボタンに以下のようなスクリプトを記述しているんですが
反映されません。 ムービーの再生が終了すると反映されます。
宜しくお願いします。

ボタン//
on (press) {
my_FLVPlybk.play();
}

//FLV再生命令(フレームアクション)
import mx.video.*;
my_FLVPlybk.autoPlay = false;
my_FLVPlybk.contentPath = "test.flv";
var listenerObject:Object = new Object();
listenerObject.ready = function(eventObject:Object) {
my_FLVPlybk.seekSeconds(0);
my_FLVPlybk.play();
};
my_FLVPlybk.addEventListener("ready", listenerObject);

130 名前:Now_loading...774KB mailto:sage [2007/08/29(水) 12:16:15 ID:UEebW6WD]
AS初心者ですが質問させてください
WinXP,FlashMX2004使ってます

ゲームを作っていて、LANで繋がれたパソコン同士でハイスコアを表示させたいと思っています。
loadVariablesでテキストファイルから変数を読み込んで、(hscore=1000のように)
それをhiscore=parseFloat(hscore); で変換するとhiscore=NaNになってしまいます。
変数のリストアップをするとhscore="1000"は読み込めています。
恐らく面倒なことをやっているような気がするのですが、
何かいい方法は無いでしょうか?
お願いします。



131 名前:130 mailto:sage [2007/08/29(水) 12:19:35 ID:UEebW6WD]
連投すいません。訂正でパソコン同士ではなくてローカルサーバーに繋がっています

132 名前:Now_loading...774KB mailto:sage [2007/08/29(水) 12:32:39 ID:si3eNAOb]
>>130
Flash単体では書き出しが出来ないので、CGI(PHPとか)をLoadVarsで使って、
サーバーのテキストファイルに書き出し、読み込みをする。

133 名前:Now_loading...774KB mailto:sage [2007/08/29(水) 13:07:53 ID:Vvfpu2qg]
>>130
スコアが整数のみなら、
hiscore=Number(hscore);
でもいいと思うけど。
ただ、parseFloat関数でも
hscoreに"1000"が入ってれば数値に変換されるはずだから、
関数呼び出し位置に問題があるような気がする。

試しにテキストの内容に関わらず、parseFloat関数呼び出す直前で
hscore="1234";
hiscore=parseFloat(hscore);
とhscoreに直接文字列突っ込んだ後parseFloatするなりして、その結果を見てみたら?

134 名前:Now_loading...774KB mailto:sage [2007/08/29(水) 18:59:09 ID:ryuPbw4d]
厨房みたいな質問で悪いんだが、ホンキで気になったので質問させてほしい

ニコニコ動画のコメントのID割り出しツールがあるけど、あれって一体どういう仕組み・・・?
コメントCSVやチャットサーバからのレスポンスに、実はIDも記述されてて、
それを取得するような改造版FLVPlayerを、標準Playerとすり替えてUIにしてるのかな?

予想で構わないので何かレスポンス希望

135 名前:Now_loading...774KB mailto:sage [2007/08/29(水) 19:05:28 ID:2eY6RUaR]
超能力に米俵一票

136 名前:Now_loading...774KB mailto:sage [2007/08/29(水) 19:45:13 ID:I2MUZift]
>134
IDも送ってくんだよ。ツールに解説あるんじゃね?

137 名前:Now_loading...774KB mailto:sage [2007/08/29(水) 20:15:57 ID:lfB2oEQ3]
すいません、ひとつ質問させてください。

AS3.0で、Javaサーバーとソケット通信するFlashを作成していて、確立するためのポリシーファイルについて質問です。

function start_connect(address,port) {
Security.loadPolicyFile("xmlsocket://" + address + ":" + port);
socket.connect(address,port);
}

上記の様なコードの時、loadPolicyFileでポリシーファイルを受け取る前に.connectメソッドが動いてしまいそうなのですが、大丈夫なのでしょうか?
loadPolicyFileの戻り値も無いみたいですし・・・。



138 名前:130 mailto:sage [2007/08/29(水) 20:35:09 ID:UEebW6WD]
>>132 >>133
レス遅れてしまいましたが答えて下さりありがとうございます!
まず133の方法で試してみたのですがNumberでもだめでした。NaN
直前に hscore="1234"; を入れてみると1234になったのですが
同じ位置に試しにparseFloat入れてもダメでした…

そこで132さんのCGIについて調べてみた所、それっぽい記述があったので
CGI全く触ったことありませんが、ちょっとがんばってみます。
どこかにサンプルがあればそれを参考にしようと思います。

ありがとうございました

139 名前:Now_loading...774KB mailto:sage [2007/08/29(水) 22:06:31 ID:ryuPbw4d]
>>137
ポリシーファイル系の処理はLoader系と違って完了するまで優先的に処理されるから大丈夫

140 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 00:00:23 ID:obah/Nnl]
>>139

なるほど、安心しました。
どうもありがとう!

ネット対戦ゲーム作ってる人って自分以外にこのスレでいますかな。



141 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 01:38:51 ID:F5vZDKIg]
>>140
むしろ、ゲー製板があるがな。
pc11.2ch.net/gamedev/

142 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 01:45:37 ID:g1hvaqqN]
>>141
その板のFLASH系もう過疎ってだめぽ

143 名前:Now_loading...774KB [2007/08/30(木) 13:22:29 ID:ljrzh0lg]
FlashCS3 AS3

クラスから
stage.addEventListener(KeyboardEvent.KEY_UP, keyCheck);
とかするとstageがnullとかエラーが出てしまいます。

stageなしだとフォーカスが必要とのことですが、
"マウスクリックしてフォーカス"とかなしで
キー入力対応させるにはどうしたらよいですか?

144 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 14:06:05 ID:fxDqXm13]
意味がよくわからんけど、stageプロパティ使いたいならそのクラスに
DisplayObject含むクラス継承させときゃいいんじゃね?

145 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 14:07:55 ID:fxDqXm13]
あと、ムービーにフォーカスが無い時のキーボードイベント拾う事は不可能。
それできたらパスワードの入力の時とかにキーのログ拾われるから禁止になった。

146 名前:Now_loading...774KB [2007/08/30(木) 14:35:40 ID:ljrzh0lg]
>>144
レスありがとうございます。
public function Stopwatch(initTime:Number=3) {
timetotal = initTime*60;
outputText = new TextField();
outputText.text = timetotal;
addChild(outputText);
myTimer = new Timer(1000,timetotal);
myTimer.addEventListener("timer", counter);
stage.addEventListener(KeyboardEvent.KEY_UP, keyCheck);
}
public function keyCheck(event:KeyboardEvent) {
trace(event.keyCode);
myTimer.start();
}

なにかキーを押したらTimerのカウント数を表示するだけのクラスなんですが、
stage.addEventListener(KeyboardEvent.KEY_UP, keyCheck);

addEventListener(KeyboardEvent.KEY_UP, keyCheck);
とすればカウントが表示されるのですが、
テキストフィールドにフォーカスしないとキー入力を受け付けてくれませんでした。
調べたらstage.を書かないとフォーカスなしでは動かないとのことなので
書いたのですが今度はエラーが出てしまいました。
DisplayObjectを入れろとのことで、
import flash.display.DisplayObject;
としたらエラーは出ないのですがテキストが表示されなくなりました。
stage.addChild(outputText);とかにしても同じでした。

147 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 15:06:42 ID:udV3bP6I]
そもそもそのクラスは何を継承してるの?

148 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 15:32:11 ID:fxDqXm13]
こんなで、
package {
import flash.display.Sprite;import flash.utils.Timer;import flash.events.*; import flash.text.TextField;
public class TimePanel extends Sprite {
var myTimer:Timer,_t:TextField;
public function TimePanel() {
_t = new TextField();_t.text = "100";addChild(_t);
myTimer= new Timer(1000);
myTimer.addEventListener(flash.events.TimerEvent.TIMER , counter);
setEvent();
}
public function setEvent() {
if (stage) {
trace("画面に追加されてます");
stage.addEventListener(KeyboardEvent.KEY_UP, keyCheck);
} else {
trace("画面に追加されてません");
}
}
public function counter(e) {
_t.text = String(Number(_t.text)-1);
}
public function keyCheck(e) {
trace(e.keyCode);myTimer.start();
}
}
}

149 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 15:33:20 ID:fxDqXm13]
うごかすにはこんなじゃね?

var t=new TimePanel()
addChild(t)
t.setEvent()
ようするに、stageまで辿りたいなら表示リストに乗っけないと駄目なんでない?

150 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 15:36:42 ID:fxDqXm13]
あとは、FlashCS3だったらドキュメントクラスにしときゃ、stageで確実にStage拾えるんじゃね?



151 名前:Now_loading...774KB [2007/08/30(木) 16:09:44 ID:ljrzh0lg]
>>148-150
これの追加でいけました!ありがとうございます。

stopwatch.setEvent();

public function setEvent() {
if (stage) {
trace("画面に追加されてます");
stage.addEventListener(KeyboardEvent.KEY_UP, keyCheck);
} else {
trace("画面に追加されてません");
}
}

152 名前:Now_loading...774KB [2007/08/30(木) 16:19:13 ID:zj2bgIKw]
FLASHでflvファイルを消音状態で表示したいと思い、ググッてみたらこの情報を見つけたのですが
ttp://www.flash-jp.com/modules/newbb/viewtopic.php?viewmode=flat&topic_id=1195&forum=8

>MovieClip.attachAudio()メソッドを使って、音源のNetStreamインスタンスを、コントロール対象のMovieClipに接続する必要があります。
> // サウンドコントロールの対象にするMovieClipをmy_mcとした場合
> var my_sound:Sound = new Sound(my_mc);

の辺りがよく分かりません、new Soundのカッコ指定用にストリーミングビデオをMCシンボルに変換が必要?
と思い、ビデオをmy_mcにシンボル変換してみましたが、やはり音は消えませんでした
現状ではムービーは普通に再生されますが、消音できてない状態です
因みにrootの階層にストリーミング形式のmy_videoを配置しています
どなたらアドバイスをお願いします・・・

153 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 16:19:16 ID:upfWoDgo]
ずっとhtml+JSは書いていて、
最近フラッシュを始めました。
質問ですが、ASでは、

(function(){ trace("asdf") })()

と書いても動かないものなのでしょうか?
環境は、Flash8Pro + MacOSX です。
よろしくお願いします。

154 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 16:50:12 ID:udV3bP6I]
>>152
変換じゃなくて適当なMCが必要なだけだから空のMC作って指定してあげれば
いいだけ。

155 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 16:58:02 ID:zj2bgIKw]
>>154
消音されるようになりました!どうもありがとうございます!

156 名前:Now_loading...774KB mailto:sage [2007/08/30(木) 17:09:12 ID:fxDqXm13]
>>153
8(AS2.0)だとそれは動かなかった気がする。
いまCS3(AS3.0)で試したら動いた。

157 名前:153 mailto:sage [2007/08/30(木) 17:44:40 ID:upfWoDgo]
>>156
ありがとうございました。
うpでーたん買いに行ってきます!
(((;;;:: ;: ;;          ;; ;:;::)) ::)
   ( ::: (;;   ∧_,∧   );:;;;)) )::: :; :))
    ((:: :;;  (´・ω・)っ;;;; ; :))
     ((;;;  (っ ,r どどどど
ど・・・・・
          i_ノ┘

158 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 00:27:00 ID:zmW3hsvO]
こんばんは。CS3のAS3.0でFLASHを作成しています。
キーボードの操作を作成していてこう記述しました。

stage.addEventListener(KeyboardEvent.KEY_DOWN, KeyDownEvent);
function KeyDownEvent(event:KeyboardEvent) {
 trace(event.keyCode)
}

この処理でひとまずキーの押下を試していたのですが、
CTRL+ENTERでパブリッシュするとZキーが反応しません。
おそらく「90」が表示されると思うのですが・・・何故か無反応です。
他にもAキー等も利かず。

試しにキーコードをテキストに表示する処理を作り
パブリッシュ後のswfファイルを開くとZキーも反応しました。
このイベントリスナーはCS3でパブリッシュ中に不具合でもあるのでしょうか。

159 名前:158 mailto:sage [2007/08/31(金) 00:44:58 ID:zmW3hsvO]
すいません、Zキーを押すと拡大ツールになるみたいでした。

キーボードのショートカットをオフにしたら反応しました。
しかし、キー全部使うような場合はどうするんでしょう・・・全部オフにするのかな。

160 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 01:23:20 ID:3OIPOoFY]
>159
糞仕様です。プレビューでショートカットの無効を試してください
この回答で問題は解決しましたか?



161 名前:158 mailto:sage [2007/08/31(金) 07:59:21 ID:zmW3hsvO]
>>160
回答ありがとうございます
ツールのキーショートカットを全部削除したものを作りました。

その質問に「はい、解決しました」を選べた試しがないです(笑)

162 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 15:08:43 ID:bEb8PNaZ]
ウィンドウズXPでFLASH8を使っています。

createTextFieldでテキストフィールドを作った後に、setTextFormatでテキストフォーマットを指定しています。
その後中のテキストを変えるとフォーマットが勝手に変更(デフォルトへ?)されてしまうのですが何か良い回避方法は無いでしょうか?
今はテキストが変更されるたびに同じテキストフォーマットをぶちこんでるのですが処理の重さの方が気になります

こんな感じです
_root.createTextField("test", 0, 0, 0, 300, 300)
fmt = new TextFormat();
fmt.size = 24;
test.setTextFormat(fmt);
test.text = "1行目\n";
test.text += "2行目";
test.setTextFormat(fmt);//これが無いとテキストフォーマットが解除されてしまう

質問の仕方が下手で申し訳ない・・・

163 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 15:12:45 ID:xAIasgsE]
setNewTextFormat

164 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 15:17:26 ID:bEb8PNaZ]
素早い回答ありがとうございます!
試してみましたがこれでかなり処理が軽くなりそうです

165 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 16:00:46 ID:hscyW3hW]
CS3 AS3で作ってるんですが
Timerで3分のカウントダウンタイマーを作ってるんですが
OSの時計より5秒も遅れてしまいます。
これって普通なんでしょうか?

166 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 16:31:25 ID:hyV6m2mV]
>>165
タイマー開始は、ボタンのon(press)/on(release)で動作?
on(press)なら押した瞬間からだからね。
1分や10秒のタイマーも試した?

マシンのパワーによっては動作(反応)が遅くなることがあるけど。


167 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 17:28:05 ID:Zygq0bfq]
もしかして1秒たったら+1するイベントを実行していたりして。

168 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 17:39:16 ID:hscyW3hW]
>>166
キーアップです。1分で2秒遅れ、10秒なら問題がないくらいです。
ただ、時計とどんどんずれていってしまいますのでイベントのタイミングはないようです。
マシンパワーはPenM1.73GHzなんですがどうなんでしょうか。
スクリプト
public function Stopwatch(initTime:Number=3) {
outputText = new TextField();
outputText.autoSize = TextFieldAutoSize.LEFT;
timetotal = initTime*60;
outputText.text = String(timetotal);
addChild(outputText);
myTimer = new Timer(1000,timetotal);
myTimer.addEventListener("timer", counter);
}

169 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 17:40:00 ID:hscyW3hW]

public function setEvent() {
if (stage) {
trace("画面に追加されてます");
stage.addEventListener(KeyboardEvent.KEY_UP, keyCheck);
} else {
trace("画面に追加されてません");
}
}
public function keyCheck(event:KeyboardEvent) {
if(event.keyCode == 32 && !keyFlg){
keyFlg = true;
myTimer.start();
}else if(event.keyCode == 32 && keyFlg){
keyFlg = false;
myTimer.stop();
}
}
public function counter(event:TimerEvent):void {
outputText.text = String(timetotal - myTimer.currentCount);
}

です。

170 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 18:42:39 ID:xAIasgsE]
>>168
currentCountはハンドラが呼ばれた回数だから、それを時間計算につかうのはどうかと。
秒以下なりの端数の丸めが生じるから、表示が秒単位ならずれは1秒のずれは出る。
timerをストップするタイミングとスタートするタイミングでもずれは生じるよね。




171 名前:Now_loading...774KB mailto:sage [2007/08/31(金) 18:49:54 ID:VwDRt4nd]
ヘルプよりTimer オブジェクトについて
---------------------------------------------------------------------
SWF ファイルのフレームレートまたは Flash Player の環境
(使用可能なメモリやその他の要素) に応じて、
Flash Player ではややオフセットの間隔でイベントを送出できます。
           ~~~~
たとえば、SWF ファイルを 10 fps (1 秒あたりのフレーム数)、
つまり 100 ミリ秒間隔で実行するように設定し、
80 ミリ秒でイベントを発生するようにタイマーを設定すると、
Flash Player ではおよそ 100 ミリ秒間隔でイベントが実行されます。
また、メモリに負荷のかかるスクリプトでも、イベントがオフセットされる場合があります。
---------------------------------------------------------------------
ただし割り切れる数、仮に10fpsで1000ミリ秒間隔で実行するようにしてもずれてくる(と思う)。
Flashに限らずあらゆるプログラムのタイマーイベントは"約"○秒間隔で実行されるものと覚えておいた方が良い。

今回のタイマーイベントは経過時間描画更新用にでもしておいて、
実際何秒経ったかの計算は、タイマー開始時の時間をgetTimer()で取得して保持しておき
描画更新タイマーイベントの度にこの時の時間をこれまたgetTimer()で取得、
そんで保持しておいた開始時の時間との差分を計算して
結果を経過時間として表示がベターでありセオリーかな。

描画更新用タイマーの間隔を1000ミリ秒にすると最初の理由で時々秒数が2秒飛んで表示されたりするはずだから、
気になるなら描画更新イベントを呼ぶ間隔を100ミリ秒なりfpsが許すまで気にならないレベルに落とせば良いと思う。

172 名前:Now_loading...774KB [2007/08/31(金) 23:08:28 ID:agiUkJyo]
FlashMX2004です。クラスの利用についての質問です。

クラスを管理しやすくするために、FLAファイルと同階層に
MCControlフォルダと、Managementフォルダを作り、
MCControlフォルダにCursor.as、Managementフォルダに
Condition.asを配置しました。

ここで、Cursor.asで、Conditionを使おうとして

class Cursor {
var condition:Condition;
}

とすると、「クラス'Condition'がロードされませんでした」というエラーが出ます。
importしようとして、

import Management.*;
class Cursor {
var condition:Condition;
}

としても、解決できませんでした。
どうすれば、別フォルダにあるクラスを利用することができるのでしょうか?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<351KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef