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

このエントリーをはてなブックマークに追加
1Now_loading...774KB
AcitonScriptのことなら
初歩的な質問でもなんでもおk

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

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

前スレ
ActionScript 誰かが物凄い勢いで解答するスレ 18
http://pc11.2ch.net/test/read.cgi/swf/1194838207/l50
関連スレ
Flashの超基本的な質問はここでしろ! part37
http://pc11.2ch.net/test/read.cgi/swf/1202144062/l50
Flash製作初心者の質問スレッド レイヤー38
http://pc11.2ch.net/test/read.cgi/swf/1202151748/l50
2Now_loading...774KB:2008/03/13(木) 19:06:18 ID:wRwe6t9z
1さん乙でつ! さっそくですが教えて下さい 

【やりたい事】
ひし形のエリア内にランダムに点を打つ方法

現状はヒットエリアを用意しランダム座標で判定 do〜whileで一定以上打つまで回す という
方法ですがこれだと色々都合が悪いのです 計算でエリアを算出方法はないでしょうか??
3Now_loading...774KB:2008/03/13(木) 19:07:11 ID:lhW46qj3
WinXP-HEでFlash8-Proを使っています。

SWF上でマウスの動きを制限するにはどうしたら良いでしょうか?
試しに、ある条件(pencilF が true)で一定のY座標に固定し、X軸方向
のみに動かせる目的で

this.onEnterFrame = function() {
if (pencilF == true) {
this._ymouse = 50;
}
}

としましたが駄目でした。
4Now_loading...774KB:2008/03/13(木) 19:18:58 ID:yfSL2wOS
>>2
だから数学はちゃんとやっておけと、って、ところでキミ何歳?
さすがに小学生に計算方法を教える自信はない。

>>3
SWFでマウスの座標は変えられないんじゃない?
5Now_loading...774KB:2008/03/13(木) 19:29:26 ID:1L6RLllN
>>3
>SWF上でマウスの動きを制限
って質問内容よく考えたほうがいい。
支離滅裂すぎ。
MCをマウスに追随させたいんだろうけど
MCの位置座標は_x,_yだよ
Y軸固定するなら_ymouse = 50じゃなくて_y=50見たいになる。
_xmouseを参照して_xを決めればいいんじゃないかな。
6Now_loading...774KB:2008/03/13(木) 20:00:09 ID:lhW46qj3
>>4,5
どうも。
そうですね、目的はMCとマウスが一体となって水平に動くことですので、
(厳密に「_xmouseを参照して_xを決めれば」ではありませんが)

 マウスの位置をMCの位置にする → MCのY座標を固定

これで、結果としてMCをマウスの動きに合わせて水平に動かすことが出来ました。


>>2
ヒント: 一次関数 領域
7:2008/03/13(木) 21:19:05 ID:wRwe6t9z
1次関数でできたのね… 何とかやってみましたが点が左右に集中してしまいまつ
もうちょっと平均的にちりばめたいんですが… このやり方だとヘタクソなんでしょうか?
//左右対称のひし形 横480 縦240(AS3)
var dot :Array = new Array();//ドットインスタンス用
for( var i:int=0; i<=1000; i++ ){//千個打つ
var dx:int = Math.random()*480;
var r:int = Math.random()*2;
var yLength:Number, dy:Number;
if ( dx < 240 ){
yLength = 0.5 * dx;
if ( r==0 ){//左上
dy = Math.random()* yLength +( 120-yLength );
}else{//左下
dy = Math.random()* yLength +120 ;
}
}else{
yLength = -0.5 * ( dx-240 ) + 120;
if ( r==0 ){//右上
dy = 120 - Math.random()* yLength;
}else{//右下
dy = Math.random()* yLength+120;
}
}
dot[ i ] = new Dot();//点MC
addChild( dot[ i ] );//点表示
dot[ i ].x = dx;//位置
dot[ i ].y = dy;
}
8Now_loading...774KB:2008/03/13(木) 22:11:47 ID:yfSL2wOS
左右寄りに集中しているわけではないと思う。そう見えるだけ。なぜか?
このプログラムだと、まず最初にX方向の位置を決めて、その位置のYを
決めているんだけど、Yの範囲は左端は1なのに対して、中央部分は240
だから、左右の隅っこの方は密度が高くなるから。

ではどうすればいいか?

あ、彼女からTELきた、ごめんよ、またn
9Now_loading...774KB:2008/03/14(金) 00:54:28 ID:hy+eYAqG
TEST
10Now_loading...774KB:2008/03/14(金) 00:58:05 ID:hy+eYAqG
>>7
単純に考えるんだ
正方形の中に点を作るなら
高さ分のランダム値X
横幅分のランダム値Y
この二つを正方形の基準点に足すだろ?

なら正方形を45度回転させると
左から上の点の座標間の点と
左から下の点の座標間の点、
それぞれ逆の線と並行に伸ばした二辺の交点がひし形範囲内の座標だ
ベクトルでイメージすると分かりやすいが
右上に矢印伸ばして、右下に矢印が伸びた先が交点

LEN1 = 一辺の長さ分のランダム
LEN2 = 一辺の長さ分のランダム
X1 = Math.cos( Math.PI * -0.25 ) * LEN1
Y1 = Math.sin( Math.PI * -0.25 ) * LEN1
X2 = Math.cos( Math.PI * +0.25 ) * LEN2
Y2 = Math.sin( Math.PI * +0.25 ) * LEN2
X = BaseX + X1 + X2
Y = BaseY + Y1 + Y2
11Now_loading...774KB:2008/03/14(金) 01:37:38 ID:gyOA95mA
まぁ単純に正方形内で点を打ってからsin,cosの回転行列かけた方が
行数は減るかな、Mathとmatrixは処理重いけど。

もっと簡単に、一次方程式だけで処理できるよね。
12Now_loading...774KB:2008/03/14(金) 01:52:55 ID:5PMuvNIe
正方形回転させても正方形じゃねーの?
13Now_loading...774KB:2008/03/14(金) 02:00:58 ID:gyOA95mA
おっと、潰れた菱形なんだっけ?じゃあmatrixで傾斜も。
14Now_loading...774KB:2008/03/14(金) 08:21:49 ID:je6gwa2K
中学生レベルの数学は学校で教えてもらってくださいマジで。
15Now_loading...774KB:2008/03/14(金) 12:33:04 ID:hy+eYAqG
>>11-13
主観だがいきなり一次関数云々のレベルでmatrixは理解できるとは思えないんだぜ
行数多くてもイメージしやすい方が良いと思って書いた。

>>14はテンプレ熟読して半年ROMれ
ここのテンプレに「数学基礎知識前提で質問」なんてものはない
上級な質問だけみたいなら他スレ行ってこい
16Now_loading...774KB:2008/03/14(金) 12:37:16 ID:je6gwa2K
>>15
だが断る。
長文書く前に質問に答えてあげたらいいんじゃねww
17Now_loading...774KB:2008/03/14(金) 12:45:29 ID:dhRB8T6H
>>7
線分使った領域判定便利だよ。とりあえず点で。

var b:BitmapData=new BitmapData(480,240);

for (var i:int=0; i<3000; i++) {
var xx:int = Math.random()*240;
var yy:int = Math.random()*240;

//(x1-x2)*(y-y1)+(y1-y2)*(x1-x)=0 の時、(x,y)は(x1,y1)(x2,y2)を結ぶ線分上の点
if ((0-240)*(yy-120)+(120-0)*(0-xx)>0) {
//(0,120) (240,0)を結ぶ線分の上側の場合、ひし形の右下部分に移動
xx+=240;
yy+=120;
} else if ((0-240)*(yy-120)+(120-240)*(0-xx)<0) {
//(0,120) (240,240)を結ぶ線分の下側の場合、ひし形の右上部分に移動
xx+=240;
yy-=120;
}
b.setPixel(xx,yy,0xFF0000);
}
addChild(new Bitmap(b));
18Now_loading...774KB:2008/03/14(金) 12:46:51 ID:dhRB8T6H
ああっと、考え方としては、まず長方形の領域に点打って、それをひし形になるように切り貼りする感じね。
19Now_loading...774KB:2008/03/14(金) 12:53:49 ID:hy+eYAqG
>>16
なんで4分でレス返ってくるんだよw吹いたww
後、IDくらいは見てくれw
なんか面白かったんでもうどうでもいいや
20:2008/03/14(金) 13:40:59 ID:rpPwXlWR
>>17
おおーこんなコンパクトにまとまるとは! 散りばめ具合も完璧っす!
ありがとうございました やっぱこのスレはすばらしいですお 
21Now_loading...774KB:2008/03/14(金) 13:41:50 ID:7PREsl9m
>>16
これは恥ずかしいな
22Now_loading...774KB:2008/03/14(金) 14:33:39 ID:ItRumkAn
>>16
釣れたってことにして逃げそうだ
23Now_loading...774KB:2008/03/14(金) 20:31:06 ID:PNAwXFJQ
winのXPで、2004MXで作成しています。

季節ごとに表示が変わる動画を作りたいです。
見よう見まねで作ってみて表示されることはされるんですが、
フレームに、ちょっと重いシンボルを追加するとと表示されなかったりと、動作が不安定です。

スクリプトは下記です。
mytime=new Date()
mymonth=mytime.getMonth()
if(mymonth>=0 && mymonth<2) {
this.gotoAndStop("yuki");
} else if (mymonth>=2 && mymonth<5) {
this.gotoAndStop("sakura");
} else if (mymonth>=5 && mymonth<8) {
this.gotoAndStop("suika");
} else if (mymonth>=8 && mymonth<11) {
this.gotoAndStop("aki");
} else if (mymonth>=11 && mymonth<=11) {
this.gotoAndStop("yuki");
}
24Now_loading...774KB:2008/03/14(金) 21:28:49 ID:f+qcPOHP
>>23
読み込み完了してないフレームに移動しようとしてると思われる。
プリローダーつけろ。
25Now_loading...774KB:2008/03/15(土) 03:01:14 ID:+nTk1JO2
質問っす
Flash Plofessional 8使ってます。
モーショントゥイーンで回転している最中のムービークリップの角度を
アクションスクリプトで一旦変更すると、
(その後モーショントゥイーンによる回転がいくつも予定されているにもかかわらず、)
アクションスクリプトで指定した角度のまま進んでしまいます。
何とかモーショントゥイーンによる回転角度に復帰させる手立てはありませんでしょうか。
26Now_loading...774KB:2008/03/15(土) 03:31:08 ID:rOcRrZ3a
ステージ上に配置した、インスタンスではないシェイプの座標や高さ・幅を取得することはできますか?
27Now_loading...774KB:2008/03/15(土) 09:01:46 ID:pcNHZRmR
>>25
たぶん無理
3.0だとそれをAnimatorクラスで制御できるようになったから、2.0だとまだなんだと思う
自分で地味にフレームごとのMatrixの値をコード化するとかしないと駄目なんじゃね?

>>26
2.0ではインスタンスを一旦全部どけて、BitmapDataに_rootをdrawしてその領域を測るとかじゃないと無理だと思う。
3.0だったら、getChildAtでループまわして、Shapeクラスのインスタンスを捕まえればおk

for(var i:int=0; i<numChildren;i++){
var d:DisplayObject = getChildAt(i);
trace("type:" +getQualifiedClassName(d) ,
"width:" + d.width ,
"height:" + d.height);
}
2825:2008/03/15(土) 12:41:10 ID:+nTk1JO2
なるほど
動きもコード再現してみます
ありがとうございます
29Now_loading...774KB:2008/03/15(土) 13:07:55 ID:xqcAF5Vu
>>24さん

上記スクリプトの前のフレームにプリローダー付けたら、どの季節もちゃんと表示されました!

ありがとうございます!
3026:2008/03/15(土) 15:17:34 ID:NimecFPP
>>27
ありがとうございます
地道にインスタンス化することにします
31Now_loading...774KB:2008/03/15(土) 20:30:29 ID:OEV/bgzJ
http://www.nseries.com/index.html
このサイトのように、ブラウザの戻る・進むボタンとURL(#l=***形式ですが)を有効化するのってどうやっているのでしょうか?
順番を見るとボタンをクリックしてページが切り替わってからURLが書き換えられているので、
ActionScript->JavaScriptにURL表示変更命令が渡っているようにも見えます。
しかし、URL指定アクセスしてもきちんとFLASH内の該当ページが表示されるので、一筋縄ではいかなそうです。

それと、このサイトはは全面SWFになっていますが、画面解像度の影響を受けていません。この仕組みも理解できません。

これをマスター出来れば、FLASHサイトも理想的に作れそうなのですが、どうすればいいのか数か月調べましたが理解できませんでした。
どうかよろしくお願い致します。
32Now_loading...774KB:2008/03/15(土) 20:49:07 ID:mze5qmxM
33Now_loading...774KB:2008/03/15(土) 20:57:26 ID:OEV/bgzJ
>>32
おお!!ありがとうございます。
しかし、NOKIAのサイトのはMacでもWindowsでもFirefoxで動作してましたが、
御紹介いただいたサイトはIEじゃなきゃ動作しませんね…。なぜだろう…。
34Now_loading...774KB:2008/03/16(日) 04:43:07 ID:fkANk87W
いつか使おうと思ってどっかで見かけたなあ。ブックマークしとけば良かった
とりあえず検索したらこんなのがあったよ。前に見かけたのとは違うものだけどこれでも良さそう。AS2と3に対応
http://d.hatena.ne.jp/hororiholy/20070216/p1
35Now_loading...774KB:2008/03/16(日) 05:13:42 ID:dhOnwVhe
Flexなら標準でその機能組み込まれているんだけどね。
便利だよ。
36Now_loading...774KB:2008/03/16(日) 12:26:36 ID:cNma96K3
質問させて頂きます。
下記のサイトの「8-03 スクロールテキスト3」のサンプルを編集していたのですが、
テキストファイル内の文章を少し長くすると、
中盤あたりからスクロールの速度が速くなってしまいます。
スクリプト内の ++ の計算速度が一定ではないのが原因だと思ったのですが、
具体的にはどのように記述すると速度を一定にすることができるのでしょうか?

参考URL:http://book.mycom.co.jp/support/e5/actionscript10/
37Now_loading...774KB:2008/03/16(日) 17:25:59 ID:cP+O6OY4
>>36
そのソースだと、
全文+スペースの羅列をどの部分から表示するかを指定して擬似的に移動しているようにみせてる。
なので文字の幅は半角と全角では違うだろうし、スピードが変わったように見えてしまうんだろうと思う。

スピードが変わらないようにするならテキストフィールドを動かしたほうが手っ取り早い。
38Now_loading...774KB:2008/03/16(日) 23:31:19 ID:wXEeOgA7
静止テキストならマスクできるが、動的テキストはマスクできんだろ
動かすだけじゃないぞw
39Now_loading...774KB:2008/03/16(日) 23:35:38 ID:gp0Gn2Dn
じゃcacheAsBitmapだな
40Now_loading...774KB:2008/03/17(月) 12:43:20 ID:a/wGfu/e
>>38
マスクさせる必要は特にないだろ。
フレームがあるんだから隠すだけでいい。
41Now_loading...774KB:2008/03/17(月) 22:04:53 ID:cGq/Ttjt
var url:URLRequest = new URLRequest("test.mp3")
var bgm:Sound = new Sound(url);

で、外部から読み込んだ音楽ファイルの音質がめちゃ悪いんですけど
これを良くするor音質を保ったまま読み込む方法ってありますか?
42Now_loading...774KB:2008/03/17(月) 22:53:08 ID:sU4603HS
>>41
もともと劣化しない。
キャッシュにゴミが残ってるかフォーマットが正しいか確認してみろ
43Now_loading...774KB:2008/03/17(月) 23:01:45 ID:cGq/Ttjt
>>42
やってみるおy、愛してる
44Now_loading...774KB:2008/03/18(火) 15:04:56 ID:97PGlncs
>>41
Flash Playerが扱えるMP3のフォーマットは、固定ビットレート(CBR)で128kbps以下
だった気がする。ABRだと音がグズグズになったり、音飛びしたりヒスが乗ったりする
ので、注意されたし。
45Now_loading...774KB:2008/03/18(火) 20:23:20 ID:abXejaMO
AS3なんですけど
イベントリスナー登録するときに
addEventListener(MouseEvent.CLICK, clickHandler);
function clickHandler(event:MouseEvent):void{
 //内容
}

みたいに書きますよね

このときにイベント以外のものを引数で渡す方法ってありますかね?
46Now_loading...774KB:2008/03/18(火) 21:11:06 ID:77HE5tdG
環境:Flash8 Pro  AS2
自分で開発するにはまだ全然初心者です。

クラスをMCシンボルにリンケージさせています。
そのクラスの function onPressで、リンケージさせてあるMCを内包しているMCのインスタンス名を
取り出したいんですけど、
function onPress(){
trace(_parent._name);
}
だとundefinedになりました。(もちろんインスタンス名は設定済み)
どうすればうまくいくでしょうか?お願いします。
47うんこランボ:2008/03/18(火) 22:45:37 ID:z/iET98e
おちんちーんブランブランふぁいたーで
48Now_loading...774KB:2008/03/19(水) 02:33:10 ID:HaZFCkPd
>>45
イベントハンドラの受け口が
private function hdlHoge(evt:Event):void{};
だったとしたら、evt.currentTargetがイベント発行元の
オブジェクト参照になるので、イベントをdispatchしてるオブジェクトに
存在するpublicなプロトタイプオブジェクトなら、次のようにして参照できる。
class Foo extends EventDispatcher{
public bar:Boolean;
}
が元クラスっぽいものだとした場合にハンドラ内で
var target:Foo = evt.currentTarget as Foo;
ってすれば、
trace(target.bar);
みたいなことは普通にできる。あらかじめイベントオブジェクトとして
渡されることが想定されてないインスタンス内のプロパティについては、
継承クラスを作ってガンバレ、としか言えないなぁ。ごめん。
49Now_loading...774KB:2008/03/19(水) 02:48:21 ID:E1r6mWf+
>>48
レスありがとうございますー

EventDispatcher継承したクラスを作ってその中に渡したいものを置いとくのかー
それなら確かにできそうですね  
しかしめんどくさい汗

もっと単純にできる方法がどっかのサイトにあった気がするんですけど思い出せない・・・w
50Now_loading...774KB:2008/03/19(水) 03:03:34 ID:CbQOAgqA
>>46
どの段階でどこからどう呼び出してるのかよくわからんので、
もっと構成と流れを具体的に。
51Now_loading...774KB:2008/03/19(水) 07:36:50 ID:GO5YWl1l
Eventを継承したクラスを作って、渡す方法もある
52Now_loading...774KB:2008/03/19(水) 10:03:23 ID:SwOs8Ksd
as2.0です、現在下の様な状態で、function cからfunction aの中にあるfunction b等にアクセスする方法はあるのでしょうか?
arrayの中身はムービークリップです。
class Test8 {
var targetArray:Array;
function Test8(array:Array) {
targetArray = array;
a();
}
function a() {
for(var i=0; i<targetArray.length; i++) {
targetArray[i].onEnterFrame = b;
}
function b() {
this._y += 1;
}
}
function c() {
???
}
}

また、function aの部分を
function a() {
for(var i=0; i<targetArray.length; i++) {
targetArray[i].onEnterFrame = b;
}
}
function b() {
this._y += 1;
}
こんな風に無名関数で処理先指定した関数を、元functionの外に書いてアクセスさせる方法などありませんでしょうか?
53Now_loading...774KB:2008/03/19(水) 10:34:14 ID:ZOBoxCmw
>>52
最終的に自分がどういう事をやりたいのかを書くと良いと思うぞ
たいていの問題にはすでにベストな回答があるんだよ
5452:2008/03/19(水) 10:59:26 ID:SwOs8Ksd
>>53
返信ありがとうございます。
やりたい事というか、function aとfunction bの処理までを最初考えていたのですが
後に追加したタイムライン側から呼ぶfunction cの処理で、function a内に書いた関数と全く同じ処理が必要になり、同じソースをまた追加するのもどうかと思い
function c側からどうにかfunction bにアクセスできないものか…と考えているのですが詰まってしまいました。

後の質問はそれを考えていた中で、そもそも無名関数の指定先関数を元functionの外に書いても動かせるのか?と疑問に思い
質問させてもらいました。
55Now_loading...774KB:2008/03/19(水) 12:50:22 ID:W4Oj//Nh
良く分からんけどonEnterFrameの内容呼びたいなら、
function c() {
targetArray[0].onEnterFrame();
}
にでもすりゃいーんじゃね?
単純にネストした関数呼びたいなら無理。ただ、AS2.0のfunctionなら
function a(){
}
a.b = function(){
trace("hoge")
}
a.b()
こんなでも行けない事は無いけどウンコみたいな書き方
56Now_loading...774KB:2008/03/19(水) 16:22:38 ID:t1KdvwKI
AS3.0の質問なんですけども。
addChild(mc1);
で置いたムービークリップが終わったら、removeChild(mc1)かmc1.visible = false; ;と見えなくしたいんですが
ムービークリップの終了ってどうやればわかるんですか?
57Now_loading...774KB:2008/03/19(水) 16:53:02 ID:E1r6mWf+
ムービークリップの終了というのはどういうことですか?
58Now_loading...774KB:2008/03/19(水) 17:08:36 ID:t1KdvwKI
たとえば25フレのムービーがあったら25フレ後に消したい。
59Now_loading...774KB:2008/03/19(水) 18:02:22 ID:E1r6mWf+
25フレームに

stop();
parent.removeChild(this);

で消えると思う

多分w
60Now_loading...774KB:2008/03/19(水) 21:22:01 ID:foG4wZNY
ラベル名をフレーム番号に変換できないのでしょうか?
というか、ラベル名をif文とかで使えるのでしょうか?

if (_currentframe > "labelname") ...

みたいなことをしたいのですが。
61Now_loading...774KB:2008/03/19(水) 23:37:08 ID:vlJ9gLpE
ttp://babarageo.net/blog/2007/04/post_43.html
これで「海の上等は移動不能」ってのを実装したいんですが・・・
62Now_loading...774KB:2008/03/20(木) 02:25:37 ID:zQu+N3V/
>>49
クロージャ
でぐぐれ
63Now_loading...774KB:2008/03/20(木) 04:02:54 ID:8ib4aita
>>62
クロージャが万能とは限らない。呼ばれるタイミングによってデタラメな値が渡ってきたり、
インスタンスの参照カウンタが減らないためにGC効かなくてリソース漏れてたり、
もうね、ゲンナリすること多いよ。クラスできっちり閉包できる範囲だと
クロージャって特効薬みたいなテクニックなんだけどねぇ。
64Now_loading...774KB:2008/03/20(木) 04:34:15 ID:VVrhKawG
せめてゲンナリするのは理解してからにしようぜ、そこは
65Now_loading...774KB:2008/03/20(木) 07:55:31 ID:jKVhem+P
クロージャでどうやってイベントハンドラに値渡すの?
66Now_loading...774KB:2008/03/20(木) 10:44:39 ID:jKVhem+P
>>62-64
クロージャでどうやってイベントハンドラに値渡すの?
67Now_loading...774KB:2008/03/20(木) 11:34:46 ID:euS5DvDH
>>60
AS3ならできる
>>61
どうぞ実装してください
>>66
ウザイ。自分で考える能力ねーなら黙ってろ
68Now_loading...774KB:2008/03/20(木) 12:06:32 ID:jKVhem+P
じゃあこのスレ必要ねーなw
69Now_loading...774KB:2008/03/20(木) 12:07:30 ID:jKVhem+P
だれかクロージャでどうやってイベントハンドラに値渡すかおしえて。
>>67には聞いていない。
70Now_loading...774KB:2008/03/20(木) 12:27:30 ID:jKVhem+P
あったった。これか。
クロージャで別の関数呼ぶのか。なるほどね。
ttp://d.hatena.ne.jp/nitoyon/20071226/as_event_extra_arg
71Now_loading...774KB:2008/03/20(木) 16:55:43 ID:uj4yq56P
URLLoaderでLANケーブルを引っこ抜いたり、ローカルの接続を無効にしたときに、
エラーを取得できずに困っています。
ioErrorやsecurityErrorのイベントも出さないし、例外をスローするわけでもなく、
ただ何もしないという挙動を示します。
この挙動は正しいのでしょうか?また、エラーを判断する方法はあるのでしょうか?
だれか助けてください。
72Now_loading...774KB:2008/03/20(木) 17:39:51 ID:oxPNhAH+
>>71
読み込める状況で、読み込むファイルが存在しない場合はioErrorは出てる?



ところで、IPアドレスを取得したいんだがASで出来る?
使ってるのはAS3です
73Now_loading...774KB:2008/03/20(木) 18:12:21 ID:uj4yq56P
>>72
その場合は、ioErrorが出ます。
接続先のLANケーブルを抜くとエラーが出て、LocalのLANケーブルを抜くと、
エラーが出ない状況です。
74Now_loading...774KB:2008/03/20(木) 18:27:41 ID:W1KEPo/Z
てかクロージャってremoveできないよね?
removeしなくてもいい場合しか使えないんじゃない?
75Now_loading...774KB:2008/03/20(木) 18:28:56 ID:euS5DvDH
CGI(php等)かjavaスクリプトかな
Timerでタイムアウト検出汁
76Now_loading...774KB:2008/03/20(木) 20:25:40 ID:VVrhKawG
removeとクロージャの関係性の説明求む
77Now_loading...774KB:2008/03/20(木) 20:40:52 ID:jKVhem+P
>>74
クロージャでなくても成立する処理だから、普通の関数で書いておけばいいんじゃね?
面倒かどうかとのトレードオフで。

function a(e:Event){
b(e,"hoge")
}
function b(e:Event,v:String){
trace(e.target.name,v)
}
button.addEventListener(MouseEvent.CLICK,a)
'button.removeEventListener(MouseEvent.CLICK,a)

あとは、callee使えば外せない事もない。1回だけのイベント処理とかでしか使わんと思うけど。
button.addEventListener(MouseEvent.CLICK,function(e){
trace("hoge");
e.target.removeEventListener(e.type,arguments.callee);
});
78Now_loading...774KB:2008/03/20(木) 23:15:29 ID:W1KEPo/Z
何が面倒なのか良くわからん。ターゲットに変数持たせるなりカスタムイベント
作るなりすれば大抵問題ないと思うんだが。
79Now_loading...774KB:2008/03/21(金) 15:36:56 ID:GrkR9A04
エラーがでて困っています。
原因は「Variables」だと思いますが、どうも解決できません。
ご教示願います。

var variables:URLVariables = new URLVariables();
variables.filename = "ID001";

var filepass = "delete.php"
var delRequest:URLRequest = new URLRequest( filepass );
delRequest.method = URLRequestMethod.POST;
delRequest.data = variables;

var deleteLoder:URLLoader = new URLLoader( delRequest );
deleteLoder.dataFormat = URLLoaderDataFormat.VARIABLES;
deleteLoder.load( delRequest );

Error: Error #2101: URLVariables.decode() に渡される文字列は、名前/値のペアを含む、URL エンコーディングされたクエリー文字列でなければなりません。
80Now_loading...774KB:2008/03/21(金) 16:55:22 ID:zG6IB9N/
>>79
まず環境はしっかり書いておきましょうね。
ということで、AS3の話として分かる範囲で答えてみます。

まず、ソース中の最後のブロックで
>var deleteLoder:URLLoader = new URLLoader( delRequest );
としていますが、この場合、URLLoaderのコンストラクタにURLRequestの
インスタンスを食わせる必要がありません。

で、肝心のURLVariablesですが、decode()メソッドはURLLoaderで
呼ばれています(おそらく)。ということから類推すると、delete.phpからの
戻りが
&[変数名]=[URLエンコード済文字列]
の形になっていないのではないでしょうか。delete.phpが正しく戻り値を返して
いるかをチェックするために、deleteLoder.dataFormatの指定をコメントアウトし、
deleteLoderのCOMPLETEイベントをハンドルする関数で以下のようにして
調べてみるとよいかと思います。
private function hdlComplete(evt:Event):void{
var target:URLLoader = evt.currentTarget as URLLoader;
trace(target.data);
}

もう少し状況が分かればいろいろ分かるのですが。。。
81Now_loading...774KB:2008/03/21(金) 17:56:09 ID:Ft/VTy5e
未だにVariabェsなんて使わないで、PHPからはXMLで戻せよ
82Now_loading...774KB:2008/03/22(土) 00:06:45 ID:0oS5P6ey
Canvasを継承した自作コンポーネントにて、mxmlでwidth="100%"と設定した状態で、
スクロールさせない最大の横幅を得ることはできますか?

explicitWidthはNaN。
何も描画してないと、measuredWidth=0となってしまいます。(当たり前ですが)
83Now_loading...774KB:2008/03/22(土) 01:58:19 ID:0oS5P6ey
unscaledWidthで取得できました
84Now_loading...774KB:2008/03/22(土) 07:52:35 ID:KU678e+k
>>79
エラーの日本語も読めないのかよw
85Now_loading...774KB:2008/03/22(土) 13:21:51 ID:wsg+51VH
>>80
ありがとうございます!!
解決できました、PHPが悪かったみたいです。

>>84
完全にAS側が悪いんだと思い、PHPに目もくれませんでした。
申し訳ない
86Now_loading...774KB:2008/03/22(土) 14:27:31 ID:W8cnC/HY
Actionscript3.0でフレームをボタンクリックでジャンプさせたく、

stop();
menu_btn.addEventListener(MouseEvent.CLICK, goMenu);
top_btn.addEventListener(MouseEvent.CLICK, goFtop);
news_btn.addEventListener(MouseEvent.CLICK, goNews);
movie_btn.addEventListener(MouseEvent.CLICK, goMovie);
//フレームナビゲーション
function goMenu(event:MouseEvent):void{
gotoAndPlay("menu");
}
function goFtop(event:MouseEvent):void{
gotoAndPlay("ftop");
}
function goNews(event:MouseEvent):void{
gotoAndPlay("news");
}
function goMovie(event:MouseEvent):void{
gotoAndPlay("movie");
}

だと、エラーになってしまいます・・・(泣)
三行では大丈夫で四行ではエラー・・・・どなたかご指導お願いしますm(_ _)m初心者ですいません。。
87Now_loading...774KB:2008/03/22(土) 14:33:40 ID:KU678e+k
>>86
エラーメッセージは?
88Now_loading...774KB:2008/03/22(土) 14:38:35 ID:W8cnC/HY
あ、ありがとうございますm(_ _)mエラーメッセージは

TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。
at index_fla::MainTimeline/frame135()

です・・・
89Now_loading...774KB:2008/03/22(土) 14:41:20 ID:KU678e+k
じゃオブジェクトがまだ無い時点でアクセスしようとしたとかだろw
90Now_loading...774KB:2008/03/22(土) 17:25:20 ID:W8cnC/HY
AS3でボタンMOUSE_OUTで
ムービーを逆送させたいのですが、
スクリプトの書き方で行き詰まってしましました。。

もしよければ教えて下さい;;
91Now_loading...774KB:2008/03/22(土) 18:02:43 ID:PwaT5YX4
>>90
とりあえず連投するなら>>86が解決したのかとお礼くらいは言おうぜ
mc.gotoAndStop( mc.currentFrame - 1 )
92Now_loading...774KB:2008/03/22(土) 18:50:05 ID:W8cnC/HY
すいません!まだ解決はしていないのですが、
ありがとうございますm(_ _)m

続けて次の質問もありがとうございます^^;
mc.gotoAndStop( mc.currentFrame - 1 )は・・・

まだ始めたばかりで・・・
もちろんこれだけではだめですよね・・・

始めたばかりでかなりショート気味です。。
93Now_loading...774KB:2008/03/22(土) 22:03:28 ID:bpLltLh4
環境)OS:WinXP-Pro,Mem=1GB,ソフト:Flash8-Pro(Player7,AS2.0)

コンボボックスについて質問です。

root上に、3択のコンボボックス(インスタンス名:sigBox)を、リンケージされた
MCをattachMovie()で複数出現させるように任意の数だけ縦方向に出現させる
にはどうしたらよいでしょうか? つまり、

sigBox0
sigBox1
sigBox2

の感じです。
94Now_loading...774KB:2008/03/22(土) 22:33:57 ID:/IXmXeQt
>>93
言ってることがよくわからないけど、
MCを任意の数だけattachMovieしたいならforで回す。
95Now_loading...774KB:2008/03/23(日) 00:49:12 ID:ijARKf3N
hittestは重いからあまり多用しすぎないほうが良いとのことですが
どなたかhittestを軽くした代替クラスを公開している人などいますかね・・・?
阿呆な質問ですみません
96Now_loading...774KB:2008/03/23(日) 00:55:08 ID:rNxECSjn
範囲指定でいいよ
9793:2008/03/23(日) 01:08:34 ID:f208NOmj
>>93
それはそーなんですけれども、コンボボックスでは識別子が指定できないので
MCのようにattachMovie()が適用できないです。
今のところ、(暫定処置として)ステージ外に元となるsigBoxを1個置いて、これを
forとduplicateMovieClip()で

sigBox0
sigBox1
  ・
  ・

というようにroot上の目的の位置に出現させています。
9893:2008/03/23(日) 01:09:33 ID:f208NOmj
あー、間違えた。
上は>>94へのレスです。
99Now_loading...774KB:2008/03/23(日) 01:44:38 ID:/KupF/3K
>>98
なんかよう分らんけどMC作ってそこにコンボボックス置いて
そのMCをattachMovieするんじゃいかんの?
10093:2008/03/23(日) 02:55:22 ID:f208NOmj
>>99
要は、コンボボックスを縦に並べるたく思っています。
MCの入れ子にする案、有り難うございます。
101Now_loading...774KB:2008/03/23(日) 07:27:55 ID:U4F/9AnL
>>86
Flash製作初心者の質問スレッド レイヤー38
http://pc11.2ch.net/test/read.cgi/swf/1202151748/276
マルチ
102Now_loading...774KB:2008/03/25(火) 16:11:33 ID:XsgSjR7E
一つの表示用ムービークリップに、幾つかの押したボタンに対応した画像をMovieClipLoaderで読み込ませて表示させています
ボタンを押した瞬間に一度unloadClipで表示用ムービークリップの中身を削除した後MovieClipLoaderをしています
これでダウンロードのシミュレートをすると、一度画像が全部読み込まれて表示されても、別のボタンを押してもう一度そのボタンを押すと
また0%からダウンロードになりますが、これをネット上でswfを表示させた場合も0からスタートの動作は同じなのでしょうか?
winXP、FLASH8です
103Now_loading...774KB:2008/03/25(火) 16:44:19 ID:bjBViFda
>>102
なんでダウンロードのシミュレートなんていう無駄なことするの?
実際の環境で試せばいいじゃん
104Now_loading...774KB:2008/03/25(火) 17:00:04 ID:eZ58rXsN
Flash CS3 / ActionScript3.0 を使用しているのですが、
URLVariables クラスで CGI スクリプトに変数を渡す際、

変数名に _ (アンダーバー) が含まれている場合、正常に変数を受け渡せなくて困っています。
( %5F に置き換わってしまう )

どなたかこのまま渡す方法をご存じないですか?
よろしくお願いします。
105102:2008/03/25(火) 17:29:24 ID:XsgSjR7E
>>103
すみません、今事情がありネットにあげられないもので、ソフトのムービープレビューが頼りです
ネットにあげた場合は一時的にデータがキャッシュに溜まって、読み込んだ分はunloadClipしても保持されたりもするのか?と疑問なんです
106Now_loading...774KB:2008/03/25(火) 18:13:58 ID:iwn5ZKJ8
>>104
URLVariablesを使うな論議はあるとは思うけど、そこは置いておいて。

変数のやりとりは、すべてURLエンコード(UTF-8の)になってしまうのは仕様。
CGI側でdecodeURIComponentのようなデコードするルーチンを通さないとダメ。
逆に、CGIからSWFに値を返す場合にもURLエンコードする必要がある。
どうしてもダメなら、POSTでパラメータをCGIに送って、UTF-8エンコードの
XMLでSWFがデータを受け取る形が素直だと思う。
※ちなみに、「_」だけじゃなくて「.」などの特殊文字はエンコードされる。

とりあえず、現状のまま実装を進める方法はなさそう。
107Now_loading...774KB:2008/03/25(火) 18:50:50 ID:AuMWC5dN
なんか無茶苦茶だなw
108Now_loading...774KB:2008/03/25(火) 20:34:16 ID:FLsOjbFC
as3でのプリローダーの作り方教えてください
109Now_loading...774KB:2008/03/25(火) 21:42:54 ID:EYE337xt
root のプロパティ loaderInfo から必要な情報が取れるよ
110Now_loading...774KB:2008/03/25(火) 23:21:32 ID:p9+xa9HZ
Frameメタデータタグをつかう
111Now_loading...774KB:2008/03/26(水) 02:11:30 ID:eaH0O1Az
thank you
112Now_loading...774KB:2008/03/26(水) 21:27:32 ID:KEdlei43
今気づいたんですが
自分のASのなかに大量にあるint()ってmath.floor()にしといたほうがいいですかね?
なにか不具合とかあるんでしょうか
113Now_loading...774KB:2008/03/26(水) 22:06:53 ID:H+kqQoIc
FP5以降のint関数はサポートされていない。後方互換のために残してあるけど将来消される可能性があるため使用してはならない。
114Now_loading...774KB:2008/03/26(水) 22:16:24 ID:KEdlei43
わかりました
115Now_loading...774KB:2008/03/26(水) 22:31:49 ID:ea+sDbUo
毎日AS3書いてると、ハイペースでAS2の事忘れてくな。
116Now_loading...774KB:2008/03/27(木) 00:07:04 ID:isFVBGsP
>>115
でも仕事とかでもなきゃもうAS2.0使う事ない、とか思わね?

余談だがMath.floorの代わりにシフト演算の「 >> 0 」で書いてる人居るかな
こっちの方が高速だよって言われてずっと使ってるんだが
117Now_loading...774KB:2008/03/27(木) 01:05:45 ID:l/uIbToh
妙なこだわりで可読性を悪くする
キモグラマの悪い癖だ。
キモグラマの早い遅い談義も
ほとんどが第三者にとって実感できないレベル。
生涯てめーしか触らないソースなら
そっち使ってろ
118Now_loading...774KB:2008/03/27(木) 05:04:47 ID:10y60uxp
4月にFlashPlayerのセキュリティバージョンアップがあるね。
http://www.adobe.com/jp/devnet/flashplayer/articles/flash_player9_security_update.html
事前に入手して動作確認したいんだけど、ベータ版が入手できないって本当??

Flash7の時代は予め開発者向けに提供されていたのに…。
安定して運用できているシステムだからこういうのは困るんだよぉぉぉ。
119Now_loading...774KB:2008/03/27(木) 12:22:40 ID:isFVBGsP
>>117
概ね同意だが流石に深読みしすぎ
シフト演算での小数削除なんて手法の一つだろ?
珍しいかもしれんが
それを可読性や第三者への実感まで考慮して答えるのは考えすぎ

そういえばMath.floor使ってないな〜って気分で書いて
「高速」なんて単語を使った俺も悪かったが
120Now_loading...774KB:2008/03/27(木) 13:16:48 ID:C2sM/lPo
>>118
本当だよな。
もう自殺用に縄を買った。
121Now_loading...774KB:2008/03/27(木) 18:03:40 ID:FtcfcO7Z
loadMovieで外部の画像ファイルを読み込んだMCを、
他の複数のMC内にattachMovie等でコピーして利用したいのですが、
普通にするとコピーの度にloadMovieが発生してしまいます。

loadMovieした状態のものをコピーするような何かよいやり方はありますでしょうか?
122Now_loading...774KB:2008/03/27(木) 18:18:00 ID:C2sM/lPo
BitmapDataに焼いちまえ?
123121:2008/03/27(木) 19:21:02 ID:FtcfcO7Z
>>122
あざーす!!
BitmapDataというものを知らなかったが、
調べたらできました。
助かりました。
124Now_loading...774KB:2008/03/27(木) 21:08:22 ID:yenthieh
以前4の倍数かどうか調べる方法(hensuu % 4 == 0)を教えてもらった者ですが、4の倍数+1(4n+1)(1,5,9,13)かどうか調べるにはどうすれば良いでしょうか?
125Now_loading...774KB:2008/03/27(木) 21:24:12 ID:BBmvS/Na
3の倍数と3の付く数字の時だけアホになるにはどうすればいいでしょうか?
126Now_loading...774KB:2008/03/27(木) 22:28:54 ID:owi9257d
>>124
(hensuu % 4 == 0)
これが何してるか理解してないのか?
127Now_loading...774KB:2008/03/27(木) 22:38:57 ID:bQl27qtY
>>124
いくらなんでも酷すぎる 釣りだと言ってくれ
128Now_loading...774KB:2008/03/27(木) 22:51:05 ID:4/Fs4HKT
1+1=2だそうですが、1+2はいくつですか?みたいな感じだな。
129Now_loading...774KB:2008/03/27(木) 23:49:53 ID:gebYD7Tt
>>124
4の倍数+1の数を4で割った時の「余り」はいくつでしょうか
130Now_loading...774KB:2008/03/28(金) 00:06:19 ID:eCImUld/
数学なんて社会に出たら役に立たない → まちがい
数学ができないと社会の役に立たない → せいかい
131Now_loading...774KB:2008/03/28(金) 00:10:45 ID:G32XCHYD
>>130
知識を実生活で役に立てれなければ学歴なんて無意味→せいかい
132Now_loading...774KB:2008/03/28(金) 00:13:56 ID:4h5I8bHt
>124
((hensuu - 1) % 4 == 0)

そんなことよりswitch文のcaseで以上・以下の条件はどう書くのか
教えてちょ
133Now_loading...774KB:2008/03/28(金) 00:18:30 ID:4UhBmbAv
>>132
不等号じゃね?書けないんだっけ?
134Now_loading...774KB:2008/03/28(金) 00:34:15 ID:4UhBmbAv
a = 100;
switch (true) {
case a<200 :
trace("in");
break;
}
135Now_loading...774KB:2008/03/28(金) 09:02:50 ID:4h5I8bHt
switch (a) { 〜
で書けないかな
136Now_loading...774KB:2008/03/28(金) 09:21:01 ID:6zd7NbyG
可読性や修正時の簡単さを考えれば、キモイswitch文よりガード節を使ったヘルパメソッド(関数)や
普通にif文の方が100倍良いw
137Now_loading...774KB:2008/03/28(金) 11:49:11 ID:4h5I8bHt
if (a <= 100) {
 b = 1;
} else if (a <=150) {
 b = 2;
} else if (a <=200) {
 b = 3;
} else {
 b = 4;
}

こんな感じ?
138Now_loading...774KB:2008/03/28(金) 12:29:26 ID:yKq+EFm5
>>136
> ...ガード節を使ったヘルパメソッド(関数)

詳しく教えていただけないでしょうか?
139Now_loading...774KB:2008/03/28(金) 14:53:04 ID:I5X/CprP
actionscript2.0でロールオーバーすると文字したに罫線をつける記述はないでしょうか?
ボタンでの処理以外で、もしあれば教えてください。宜しくお願いします。
140Now_loading...774KB:2008/03/28(金) 15:16:26 ID:0eW7oXd6
>>139
どこにロールオーバーすると、どこの文字に罫線がつくのか?

文字にロールオーバーなら、文字をボタン化して_overのフレームに罫線つけとく
って手もあるが。
あとはテキストフィールドをMCにして、そのMCのロールオーバー時に
テキストフィールドに、下線付きTextformatを適用すればいいと思う。
141Now_loading...774KB:2008/03/28(金) 17:31:56 ID:6zd7NbyG
>>138
複雑なif条件等を関数(メソッド)にしてしまって、メインルーチンを見やすくするという感じかな。
条件に合致した時点でreturnする。つまり上から順番にガードして、最後までガードを抜けたら、
デフォルト値が返る。
今作った例なんであってるかどうか解らんが、なんとなくニュアンスは解るとおも。
for(var i:int = 0; i<20;i++){
trace(getLabel(Math.floor(Math.random()*500)));
}

function getLabel(vx:int):String{
if(vx < 100) return "LABEL100";
if(vx < 200) return "LABEL200";
if(vx < 300) return "LABEL300";
if(vx < 400) return "LABEL400";
return "LABEL500";
}
142Now_loading...774KB:2008/03/28(金) 21:34:47 ID:bc+a2mB1
FlexBuilder3(2でも)から実行したプログラムが、
ブラウザのサイズに合わせて伸縮するのを防ぐ方法
(固定サイズで表示する方法)はありますでしょうか?
143Now_loading...774KB:2008/03/28(金) 22:48:08 ID:8XT0WbiY
>>125
function sekaino_nabeatu(num:Number):Boolean {
  var buf:Number = num;
  if (num % 3 == 0) return true;
  while (true) {
    if (buf % 10 == 3) return true;
    if (buf == 0) break;
    buf = Math.floor(buf / 10);
  }
  return false;
}
144Now_loading...774KB:2008/03/28(金) 22:55:55 ID:8XT0WbiY
>>143
これだと0がtrueになるので修正・・・orz

function sekaino_nabeatu(num:Number):Boolean {
  var buf:Number = num;
  if (num <= 0) return false; //0とマイナスは問答無用でfalse
  if (num % 3 == 0) return true;
  while (true) {
    if (buf % 10 == 3) return true;
    if (buf == 0) break;
    buf = Math.floor(buf / 10);
  }
  return false;
}
145Now_loading...774KB:2008/03/29(土) 03:14:50 ID:rn2dwWTS
String操作しちゃだめってルール?
146Now_loading...774KB:2008/03/29(土) 13:40:22 ID:AQqseyx0
>>145
//3が混じってる文字列もtrueにしちゃうけどこれでいいのか?
function sekaino_nabeatu(num):Boolean {
  if (num <= 0) return false;
  if (num % 3 == 0) return true;
  if (num.indexOf("3", 0) != -1) return true;
  return false;
}
147Now_loading...774KB:2008/03/29(土) 16:06:07 ID:jU/WfyZa
>>146
右端の1文字だけとればいいしょ
num.substr(-1,1)
148Now_loading...774KB:2008/03/29(土) 20:14:43 ID:BGOcEA6O
>>146
オートキャスト使うのはちとまずいだろ
>>147
31とか32の時はどうすんだよw
149Now_loading...774KB:2008/03/30(日) 09:51:59 ID:D3yUMoPx
さらに5の付く数字で気持ちよくなってくれ。
150Now_loading...774KB:2008/03/30(日) 16:08:39 ID:8AXTxcWx
通常、アホ、気持ちよくとなるとBoolじゃむりだなw
151Now_loading...774KB:2008/03/30(日) 16:33:15 ID:orr+Bbi5
>>119
遅レスだけど簡単なスクリプトで実験してみた

for( var i = 0; i < 10; i++){//平均をとるため10回繰り返す
var s_time = getTimer();

for( var j = 0; j < 1000000; j++){//←AS2の時は1000000の桁を1つ減らす
var tmp = Math.random()*100;

//tmp = Math.floor(tmp);//↓どちらか先頭コメント外す
//tmp = tmp >> 0;//↑どちらか先頭コメント外す
}

trace(getTimer() - s_time);
}

自分の環境では
AS2ではシフト演算がfloorと比べ約90%の時間で済み、
AS3ではシフト演算がfloorと比べ約78%の時間で済んだ。
シフト演算の方が早いね。為になったよ。

しっかしAS3いじったことなかったんだけど、
AS2と比べてホント約10倍早いな。
ぼちぼち書き始めるか・・・
152Now_loading...774KB:2008/03/30(日) 17:18:50 ID:QjJjPF91
>>151ちなみにMath.floorとシフトのところを

tmp = Math.abs(tmp);
tmp = tmp < 0 ? -tmp : tmp;

の二つに変えて実行してもかなりの違いが出るよ。

>>117の言う様に高速化のためのスクリプトはやりすぎると分かりにくい。
ただこのレベルならコメントで「小数の切捨て」とでも入れておけば別の人が見ても分かるでしょう。
(シフト演算知らないとかそういうレベルでは別として)
というか知っておいて損する知識は無いと思うよ。
153Now_loading...774KB:2008/03/30(日) 23:10:34 ID:zQk+Ykhy
この手の処理速度比較はよく見かけるけど、「90%高速化された」って、
何に対してという部分が不明確だし、
そもそも1000000回もループさせるような処理をするか
どうかを論じないと意味がない。

CPU負荷が高いSWFをどうしても高速化したいのなら>>0を使うとか
ローカル変数宣言をやめるとかっていう手法を用いればいいし、
単純なSWFなら可読性を取ればいい。
そういう柔軟性がプログラマに求められる資質。
小難しいこと抜きにプログラミングできるのがASのいいとこなんだけど。

責任転嫁するなら、Adobeがプリプロセッサを提供してくれれば
いいんだよ、こんな話は。
154Now_loading...774KB:2008/03/30(日) 23:22:18 ID:JHP4kDxs
>ローカル変数宣言をやめる

これが理解できん。10行で説明してくれ。
155Now_loading...774KB:2008/03/30(日) 23:48:55 ID:zQk+Ykhy
>>154
スマン、スコープ内宣言をやめる の間違い
156Now_loading...774KB:2008/03/31(月) 10:15:08 ID:kgLNYFPg
createTextFieldでテキストフィールドを作って、文字の表示切れを無くす為とautoSizeでcenterを指定しましたが
TextFormatでフォントサイズを変えた所、テキストが中央添えされたような形で表示されてしまいます
これを左添え指定のように見せるにはどうすれば良いのでしょうか?as2.0です
157Now_loading...774KB:2008/03/31(月) 10:28:47 ID:upJPcVN0
autoSizeにleftはないの?
158Now_loading...774KB:2008/03/31(月) 10:30:28 ID:p8NcAziE
>>156
TextField.autoSize = "left";
もしくは
TextField.autoSize = true;
159Now_loading...774KB:2008/03/31(月) 10:56:12 ID:kgLNYFPg
>>157
>>158
TextFormatのalignばかり弄ってました;left指定でちゃんと左添えになりました
ありがとうございました!
160138:2008/03/31(月) 12:50:35 ID:sg/u2jnm
>> 141

レス遅くなりましてすみません。
ガード節の意味よく判りました。
ありがとうございました。
161Now_loading...774KB:2008/03/31(月) 16:44:16 ID:G/y7dINt
Flash 8以降で出来るらしい
MovieClip.beginBitmapFill ( BitmapData , Matrix , テクスチャの繰り返し , スムージング );
を、Flash MX でなんとか実装する方法ないですか
162Now_loading...774KB:2008/03/31(月) 18:08:58 ID:1DdAH08c
>>161
サーバに描いてもらって読み込む
163161:2008/03/31(月) 18:13:14 ID:G/y7dINt
>>162
すみません、もう少し検索ワードなりのヒントを教えていただけますか
164Now_loading...774KB:2008/03/31(月) 18:45:45 ID:PapPILu+
>>163
無理
あきらめてCS3買え
165Now_loading...774KB:2008/03/31(月) 20:16:25 ID:aLxTfjpQ
まぁパップピルには無理だろうな。
166Now_loading...774KB:2008/03/31(月) 20:23:17 ID:PapPILu+
うは、マクロメディア技術陣(当時)の実装を1人で出来る165には
到底かないません。参りましたw
167Now_loading...774KB:2008/03/31(月) 22:00:40 ID:dEuI0LM8
>>149
var NABEATU_NORMAL:Number = 0;
var NABEATU_FOOL:Number = 1;
var NABEATU_COOL:Number = 2;
var NABEATU_FOOL_AND_COOL:Number = 3;

function sekaino_nabeatu3(num):Boolean {
  if (num <= 0) return false;
  if (num % 3 == 0) return true;
  if ((num+"").indexOf("3", 0) >= 0) return true;
  return false;
}
function sekaino_nabeatu5(num):Boolean {
  if (num <= 0) return false;
  if (num % 5 == 0) return true;
  return false;
}
function sekaino_nabeatu(num):Number {
  var buf:Number = 0;
  if(sekaino_nabeatu3(num)) buf += NABEATU_FOOL;
  if(sekaino_nabeatu5(num)) buf += NABEATU_COOL;
  return buf;
}
function sekaino_nabeatu_str(num):String {
  var buf:Number = sekaino_nabeatu(num);
  switch(buf){
    case NABEATU_NORMAL: return "普通";
    case NABEATU_FOOL: return "アホになります";
    case NABEATU_COOL: return "気持ちよくなります";
    case NABEATU_FOOL_AND_COOL: return "気持ちよくアホになります";
  }
}
168Now_loading...774KB:2008/04/01(火) 09:05:02 ID:8Aqps05c
for(var i:int = 0;i < 100; i++) {
trace(sekaino_nabeatu(i));
}
169Now_loading...774KB:2008/04/01(火) 09:05:47 ID:8Aqps05c
for(var i:int = 0;i < 100; i++) {
trace(sekaino_nabeatu_str(i));
}
170Now_loading...774KB:2008/04/01(火) 10:10:15 ID:rTu/2uGH
>>167
sekaino_nabeatu_strの
switch文にdefaltが無いので戻り値が不定になる場合がある
つまり、関数では戻り値があると指定されているがreturnなしで関数が終わってしまう
switchには必ずdefaltを作りそれをエラー出力にすると良い
171Now_loading...774KB:2008/04/02(水) 22:10:40 ID:5YBAPwZk
>>167
エラー処理をちゃんと入れるなら、こんな方法はいかが。
function hoge(num:Number):String{
var result:String = "";
switch(num){
case "":result = "";break;
......
default:result = "";throw new ArgumentError("not supported argument.");
}
return result;
}

case部分なんかは上のでいいと思う。
デフォルトに回った時には例外がスローされる。
正常に回ったら結果セットに文字列が入る。
いずれの場合でも関数の最後にあるreturn文を通る。
AS3の文法チェックは、こう書かないとコンパイラが警告を
出すよ。caseの中でreturnしても、条件によっては関数の戻りの型が
保証されない場合があるからだけど。
172Now_loading...774KB:2008/04/03(木) 00:08:04 ID:MX22Kdd+
このキモい流れで質問者が途絶えたな
173Now_loading...774KB:2008/04/03(木) 00:10:02 ID:9A0Jp+Ft
17さんっ!!
174Now_loading...774KB:2008/04/03(木) 00:20:22 ID:X2EzHp3J
>>170
>switch文にdefaltが無いので戻り値が不定になる場合がある
コードを見ればわかりますが、指摘の部分は理論上絶対にcase文で定義した4つ以外の値になることはありません。
175Now_loading...774KB:2008/04/03(木) 06:57:17 ID:EubZNFi5
>>174
たとえばsekaino_nabeatuに
 if(sekaino_nabeatu7(num)) buf += NABEATU_FOO;
なんてのを追加してsekaino_nabeatu_strの修正を忘れたらどうなる?
ありがちなミスだけどdefaultでエラー出力しておけばミスの場所を
すぐ特定できて5分で修正できる
エラー出力がないとバグ位置特定に結構悩むことになるよ
176Now_loading...774KB:2008/04/03(木) 22:48:25 ID:szSo/f3/
WSSE認証をしたいんだ
誰かサンプルをつくってくれ
177Now_loading...774KB:2008/04/04(金) 00:33:09 ID:/bZPTdhs
>>176
サンプルは出せないけどこんな記事ならあったぞ
http://blog.ozacc.com/archives/001749.html
178Now_loading...774KB:2008/04/04(金) 02:16:08 ID:VRR7zitq
>>177
ありがとう,みてみるよ
179Now_loading...774KB:2008/04/04(金) 16:04:56 ID:h9YVYa5n
超基本的スレに質問したのですがスレ違いのようでしたのでこちらでお尋ねします
flash8(AS1&2)を使用し、バナーを作成しています。
1.swf・2.swf〜という感じで4つのバナーのswfファイルがあり、
それぞれのバナーをランダムで表示するようにしたいのです。
ransuu = Math.floor(Math.random()*4)+1;
this.loadMovie(ransuu+".swf");
空白のドキュメントに上のアクションスプリクトを書きそれぞれのswfファイルを単体で
ランダムに表示させることはできました。
これを、1.swf+3.swf+4.swf+2.swfというように
4つのswfファイルを続けてランダムに表示させるにはどうしたらよいですか?
超基本的スレでsetInteralというASか、
onClipEvent(enterFrame){
if(this._currentframe==this.totalframes){
読み込む関数
}
というASを書くよう教えてもらいましたが申し訳ないんですがよく分かりませんでした。
どのようなASを入力すれば宜しいのでしょうか。
180Now_loading...774KB:2008/04/04(金) 16:16:17 ID:QsMMfONc
>>179
異なるswfを続けて表示させるのが解らないのか?
それともシャッフルが解らないのか?
181Now_loading...774KB:2008/04/04(金) 16:17:38 ID:18hkn/wf
>>179
そこまで書いてもらって何がわからんのだ?
調べた結果、どこまでわかったの?

ただ、仕様について確認したいのだが
ランダムに、ということは重複なく4つのswfをランダムに
読み込みたいということなのかな?

まず、その処理はできるのか?
182超基本的スレの479:2008/04/04(金) 18:10:13 ID:xyrvQvFn
>>179
おーい、俺はほったらかしかい?!
まあいいけどな〜、
俺の書いたヤツ2ヶ所ほど間違えてるんでコピペじゃ動かんぞ〜w
つかバナー作るのだけが目的でスクリプト勉強しようとか思わないんなら
このスレこそスレ違いだ。
ランダムが使えるんだからもっと原始的な方法でも充分できるしな。
183179:2008/04/04(金) 18:48:36 ID:h9YVYa5n
>182さん
超基本スレの方ですねすみません。スレ違いだと言われたので、
こちらのスレで質問後、もし解決(私が未熟で解決できてませんが…)したら
お礼のレスだけしようと思ってました。気分を悪くされたら申し訳ありません。
onClipEvent(enterFrame){
if(this._currentframe==this.totalframes){
ransuu = Math.floor(Math.random()*4)+1;
this.loadMovie(ransuu+".swf");
}
}
というASを書いたところ、Error opening URLというエラーが出ました。
パスが間違っているのでしょうか。
>つかバナー作るのだけが目的でスクリプト勉強しようとか思わないんなら
>このスレこそスレ違いだ。
はい、バナーを作るのだけが目的なのですが、もしや私の質問はスレ違いでしょうか…。すいません。
>181さんのおっしゃるように重複なく4つのswfをランダムに表示させたいと思っています。
184Now_loading...774KB:2008/04/04(金) 20:08:50 ID:w2sIE7/n
>>183
作ってくださいスレじゃないんだから少しは考えようね。
numberArray = new Array(1, 2, 3, 4);
function shuffle(arr) {
setArr = new Array();
whilecnt = 0;
while (0<arr.length) {
setArr[whilecnt] = arr.splice(Math.floor(Math.random()*arr.length-1), 1);
whilecnt++;
}
return setArr;
}
newArray = shuffle(numberArray);
num = 0;
this.createEmptyMovieClip("swfLoadMc", this.getNextHighestDepth());
var mclListener:Object = new Object();
mclListener.onLoadInit = function(target_mc:MovieClip) {
target_mc.onEnterFrame = function() {
if (target_mc._currentframe == target_mc._totalframes) {
num++;
if (num<newArray.length) {
swfMcl.loadClip(newArray[num]+".swf", swfLoadMc);
}else{
delete target_mc.onEnterFrame;
}
}
};
};
var swfMcl:MovieClipLoader = new MovieClipLoader();
swfMcl.addListener(mclListener);
swfMcl.loadClip(newArray[num]+".swf", swfLoadMc);
185超基本的スレの479:2008/04/04(金) 22:36:43 ID:xyrvQvFn
>183
ところで読み込むswfは複数フレームの動画なんだよね?
1フレームしかない静止画だと_currentframe==_totalframesじゃうまくいかない。
Error opening URLって大概パス間違いだけど、1フレームのswfだったら
ransuuがunderfindになってるのかもしれない。
186Now_loading...774KB:2008/04/04(金) 22:50:46 ID:OfDSa2dY
AS3でFLVPlaybackでフルスクリーンにするとき、どうやったらsmoothingとdeblockingをオンにできますか?
そのままだとVideoクラスで読み込んでsmoothingとdeblockingをオンにするのと比べて、画質が悪すぎる。
詳しい人、助けてください!!
187Now_loading...774KB:2008/04/04(金) 23:30:27 ID:QsMMfONc
>>182
>俺の書いたヤツ2ヶ所ほど間違えてるんでコピペじゃ動かんぞ〜w
そんなレスしてるからこっちに流れてくんだろw
まず、自分がダメだと思えよw
188Now_loading...774KB:2008/04/05(土) 05:29:54 ID:h/hVAOOe
btn1.addEventListener(MouseEvent.CLICK,mc1Handler);
btn2.addEventListener(MouseEvent.CLICK,mc2Handler);




function mc1Handler(event:MouseEvent):void {
//処理
}
function mc2Handler(event:MouseEvent):void {
//処理
}




こんな風に手動で書かずに動的生成してやりたいんですが、
どういうやり方があるでしょうか。
189Now_loading...774KB:2008/04/05(土) 06:22:11 ID:3U0BnIiH
>>188
動的って意味取り違えてないか?
btnを配列にするとか、ハンドラは1つでtargetで処理対象を変えるとか考えたのか?
190Now_loading...774KB:2008/04/05(土) 08:00:12 ID:3U0BnIiH
>>184
spliceだと元配列破壊してるから、2回以上実行できんぞそのshaffle関数
191Now_loading...774KB:2008/04/05(土) 10:42:47 ID:iRASVCjb
>>184
それ179にわかると思うかい?w
if文だけで書いてやんなよ。
192Now_loading...774KB:2008/04/05(土) 22:20:20 ID:uernDcjA
>>190
すまん。その場で適当にノリで書いたからそこまで気にしなかった。
193Now_loading...774KB:2008/04/06(日) 10:39:03 ID:EERiQhhN
Flex2についての質問なんですが、TileListクラスのインスタンスにselectedIndicesをセットして
複数選択されている状態にしようとしているのですが、どうも挙動がおかしいのです。
たとえば
function hoge():void{
var indices:Array = new Array();
indices = [1, 2];
tileList.selectedIndices = indices; //A
}//B
のようなコードでBuilderでデバッグすると、Aの処理が終わったところでは確かにtileList.selectedIndicesと
indicesは[1, 2]なんですが、どうもBのところに行ったところでどちらの配列も空になっているみたいなんです。
#もしかしたらそれぞれAの前、Bの前だったかもしれませんが、空になったのは確かです。(手元に環境が無くて…)
これは正しい挙動なんでしょうか?
194Now_loading...774KB:2008/04/06(日) 11:24:47 ID:Dh/nYWSc
>>193
確か、とか、かもしれませんで正しい挙動かと聞かれても答えようがない
195Now_loading...774KB:2008/04/07(月) 20:16:13 ID:C2DTfll4
>>194
今日改めて確認しました。
Aを実行した時点で、indicesの中身が空になります。
tileList.selectedIndicesはきちんと[1,2]になっていました。

tileList.selectedIndices = indices.slice();
にすれば回避はできますが、どうして配列の中身が
なくなってしまうのかが解りません。
196Now_loading...774KB:2008/04/07(月) 20:36:30 ID:nYlm2VWl
>>195
indicesの中身が空なのではなく、hoge()関数を抜けたのでindicesでは参照できないのでは?
どうやって空だと確認したのかわからんが。
197Now_loading...774KB:2008/04/08(火) 09:05:20 ID:oncJezlQ
関数抜けたら関数内で確保した変数は消されるからselectedIndicesはundefinedになると思うが
selectedIndicesに配列コピーしたいならindices.concat()として複製しないとダメかと
198Now_loading...774KB:2008/04/08(火) 09:22:31 ID:NMF6qwxD
>>197
tileList.selectedIndicesにはhoge()で作った配列の参照が渡されてるから
undefinedにはならないでしょ。
199Now_loading...774KB:2008/04/08(火) 09:47:04 ID:5Vr8AWm0
>Aを実行した時点で、indicesの中身が空になります。
>tileList.selectedIndicesはきちんと[1,2]になっていました

196で結論が出てるじゃん。

スコープを抜けたから、indicesは空になる。
tileList.selectedIndicesには、indicesの参照が残ってる。
200Now_loading...774KB:2008/04/08(火) 13:24:10 ID:AcRE2L0v
ActionScript2では
Math.sin( Math.PI )は0にはならないようですが
皆さんはこれに対してなにか対策はとっていますか?
Math.sin( Math.PI )==0などを避けるしかないのでしょうか
201Now_loading...774KB:2008/04/08(火) 21:01:51 ID:sGQ1Zn5u
>>196-199
念のためスコープからはずしてみました。
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
  <mx:Script>
    <![CDATA[
      import mx.controls.Alert;
      private var indices:Array = new Array();
      private function hoge():void {
        indices.push(1);
        indices.push(3);
        tileList.selectedIndices = indices;
        Alert.show(">" + tileList.selectedIndices + "\n>" + indices.toString());
      }
    ]]>
  </mx:Script>
(略)
</mx:Application>

結果(Alertの中身)
>3,1
>

関数のスコープ関係なしに、indicesの中身がなくなっているように思えます。

202Now_loading...774KB:2008/04/08(火) 21:57:24 ID:5Vr8AWm0
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
<mx:TileList id="tileList" />
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.IndexChangedEvent;
private var indices:Array = new Array();
private function init() : void {
indices.push(1);
indices.push(3);
tileList.selectedIndices = indices;
Alert.show("tileList.selectedIndices = " + tileList.selectedIndices + ", indices = " + indices);
}
]]>
</mx:Script>
</mx:Application>

結果 tileList.selectedIndices = 1,3 indices = 1,3

別に異常ないよ。
203Now_loading...774KB:2008/04/08(火) 22:38:01 ID:sGQ1Zn5u
>>202
えぇぇ??
と思ってそのソースで試すと確かにtileList.selectedIndicesもindicesも1,3になりますね。
自分のソースと比較して、どうやら私の書いたTileListのdataProvider指定↓
<mx:TileList id="tileList" x="10" y="10" width="300" height="200" dataProvider="{dat}" />

<mx:TileList id="tileList" x="10" y="10" width="300" height="200" />
にすると202さんと同じ結果になりました。

つまり、dataProviderが指定されているTileListのselectedIndexに代入した側の配列の中身は
空になってしまう。というわけなんですが…ますます何でこうなるか解らなくなりました。
204Now_loading...774KB:2008/04/08(火) 22:54:07 ID:5Vr8AWm0
>>203
SDKのソースを追っていくと、途中で引数の配列をぶっ壊しながら、selectedIndicesを指定してる。

while (indices.length) {
//中略
indices.shift();
//中略
}

なんでこんな処理してるのか、めんどくさいから読まないけど、
参照元の配列はぶっ壊れると思えばOK。

新しい選択を得たい場合は、tileList.selectedIndicesからgetしろ。
205Now_loading...774KB:2008/04/09(水) 00:04:17 ID:e4NuXFAw
>>200
俺は基本的にDegree(度)で扱ってるけど角度求める関数には
大体「0,90,180,270」はチェックしてるよ。

厳密には0,180度をradian値に戻す時の誤差でMath.PIの近似値になってるんだけど
たまに0や180に近い値が「1.2246063538223773e-16」みたいな結果になるから
if( Math.abs( Deg - 0 ) < 0.01 || Math.abs( Deg - 180 ) ) return 0;
という感じで誤差許容範囲に当てはまる時はMath.sinを使わないようにしてる
206Now_loading...774KB:2008/04/09(水) 00:05:54 ID:e4NuXFAw
if文の条件2個目「Math.abs( Deg - 180 ) < 0.01」ね
207Now_loading...774KB:2008/04/09(水) 00:18:04 ID:glStM87V
>>203,204
ListBaseあたりに記述があるというウロ覚えの記憶によると、
Array型をデータプロバイダにすると壊れます。なんでかっていうと、
表示リストを生成するために、表示範囲や順番がソートされる
ことが頻繁に起きるため。Arrayではなくて、LiveDocsなんかの
サンプルでは、sort()などのメソッドを持つArrayCollection型やら
XMLListCollection型を使うのが正当なようですよ。
TileListのスクロールバーをユーザーが操作するとTypeError例外が
発生することがあるのも、Collection型のデータプロバイダが使われていない
のが原因であることがあります。あと、Bindableなデータプロバイダの
場合にも、Collection型に参照を入れる必要があったり・・・
208Now_loading...774KB:2008/04/09(水) 07:50:35 ID:+TZDKI38
>>204
SDK追って頂いてありがとうございます。
元配列壊す原因がわかってすっきりしました!
なんでこんな処理しているかは気になりますが
時間が出来たときに自分でソース見てみます。

>>207
Array型をDataProviderにすると壊すのは初耳でした。
Bindableにしておけば大丈夫と思い込んでいました。
確かにArrayCollectionにしてからのほうが良い
という記述は見たことがあったんですが…気をつけます。

しかしまぁ、Adobeはどうしてこんな仕様にしたのか…
こうするしかないならマニュアルに明記してよ〜と思いました(^^;)
209Now_loading...774KB:2008/04/09(水) 15:05:24 ID:LnrF/hd9
CS3のActionScript3で質問です。
Flash内にyoutube動画を埋め込む方法を教えてください。
TextFieldにhtmlTextで埋め込みtagを入れても表示されなかったです。
210Now_loading...774KB:2008/04/09(水) 19:37:42 ID:fERedLVw
「ActionScript 3.0 コンポーネントリファレンスガイド」
http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/

これってローカル版というかファイルでHDDに保存できるバージョンありませんかね??

http://www.adobe.com/support/documentation/jp/flash/
ここ見ると
http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3.zip
英語版はあるみたいだけど日本語版が見つからない…
211Now_loading...774KB:2008/04/09(水) 20:53:28 ID:glStM87V
>>209
TextFieldにJavaScriptやらSWFを読み込めたらエラいこと。
TextAreaとTextFieldで使えるHTMLの仕様と、Webで一般に
公開されてるHTMLとは別ものと考えた方がいい。
ちょっとバージョンは古いけど、
ttp://livedocs.adobe.com/flex/2_jp/docs/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000561.html#903282
に使えるタグ一覧なんかが載ってる。HTMLではあるけれど
DOM構造がまったくない感じだと思えばいい。

読み込んでhtmlTextに放り込んでるテキストからSWFを
ほぐしていくしかないかな。または、ほぐしたSWFを
SWFLoaderで読み込んで、その中でflvを読んでるとおぼしき
オブジェクトだけAS3で抜いてくるとか。
AIRアプリなら、WebKitでブラウザと同じように扱える
クラスがあるから、そのコンポーネントにyoutubeのURLを
食わせればいいんだが、たぶんAIRアプリじゃないんだろうなぁ。

とりあえず。。。。LiveDocsくらいはちゃんと調べておこうぜ。
212Now_loading...774KB:2008/04/09(水) 23:20:39 ID:cIa7espc
ひどいなこりゃ
213Now_loading...774KB:2008/04/10(木) 13:43:24 ID:nm7k11z7
>>211
ども、ありがとう。
youtubeが見れるFlashを作ろうと思ったけど、予想以上に面倒そうです。
ttp://www.fanboy.jp/fanboybeta.html
こういうのとかってどうやってるんだろうなぁ。
214Now_loading...774KB:2008/04/10(木) 14:18:43 ID:IeC+K6/S
215Now_loading...774KB:2008/04/10(木) 14:39:42 ID:o+KmseN8
中国の婦警の丁虹と言う人の画像はどこにありますか?
探しても見つからないのでお願いします。
216Now_loading...774KB:2008/04/10(木) 16:23:57 ID:GV5SD3R0
>>214
勉強になった!Thx!!

APIのドキュメント見てみたんだけど、リクエストヘッダに
ID放り込んでRESTでパラメータにAPIの通りに入れれば、
レスポンスがXML形式のフィードになってる、っつう寸法ですね。

これなら思ったより楽チンかも。
217Now_loading...774KB:2008/04/10(木) 22:48:08 ID:cjha0shw
1.swfの>ボタンを押すと2.swfに
2.swfの>ボタンを押すと3.swfに、<ボタンを押すと1.swfに
というような自分自身を別swfに切り替える方法を
FlashMXまでのやり方で教えていただけないでしょうか

this.LoadMovie("./3.swf",this);
を2.swfの>ボタンのリリースに仕込んでみましたがうまく行かず…
218Now_loading...774KB:2008/04/10(木) 23:00:54 ID:mNoPS7ne
とりあえずthisにしたらボタンの中に読んじゃうから
_rootに読まないといけないんじゃないかな
219Now_loading...774KB:2008/04/11(金) 00:11:02 ID:CWsUR1I6
お返事ありがとうございます

ごめんなさい、thisでもswfからswfを読み出すだけなら出来たみたいです
プロジェクタ形式のexeで実験してたせいでうまく行かなかったようです
改めて質問として、プロジェクタ形式のexeから< >のボタンなどで
swfを切り替えて読み出すにはどうしたら良いでしょうか…

最初に実行するプロジェクタファイルから紙芝居的にswfをめくっていくアプリを想定しています
220Now_loading...774KB:2008/04/11(金) 01:12:41 ID:CWsUR1I6
すみません、自己解決しそうです

プロジェクタでのLoadMovieはにバイト文字を含んだパスを読み込めないようですね
解決方法として体験版FlashCS3からFlashPlayerだけ貰ってきて
それでプロジェクタを作ると大丈夫、と発見しまして
現在ダウンロード中です、試して結果報告します
221Now_loading...774KB:2008/04/11(金) 01:25:03 ID:ONWq0gct
>>220
記憶があやふやだから、当てにせず聞いて貰いたいんだけど、
プロジェクタの場合、
"./3.swf"じゃなく"/3.swf"で読み込めない?>2バイト文字含んでても。
見えにくいけど、頭の「.」ドット削りね。
222Now_loading...774KB:2008/04/12(土) 20:00:58 ID:7aEdf2ka
初歩的なな質問ですみません。AS3.0です。

load(request)で読み込んだswfが最後まで再生された時にstopしておいた親swfの再生を開始したいと思い、
子swfの最後のフレームにアクションを設定しようとしているのですがどのようなアクションを設定すればいいのか分かりません。
_rootを使うのかと思ったのですがAS3では無くなったようですし分からなくなってしまいました。どなたかヒントをください。。
223Now_loading...774KB:2008/04/12(土) 21:17:55 ID:tQ8Ka2e+
>>222

読み込んだswfのrootはLoader.contentプロパティに入ってるよ

AS3は_rootではなくroot
224Now_loading...774KB:2008/04/13(日) 15:47:33 ID:DJn4DHFu
>>223
回答ありがとうございます!
親(読み込み元)SWFから、子(読み込んだ)SWFはLoader.contentで指定できるようですね。
逆の指定はできないのでしょうか?
子SWFから親のフレームに対してnextFrameというようなことをしたいのですが・・・もっと一般的でスマートなやり方があるんでしょうか
225Now_loading...774KB:2008/04/13(日) 16:51:27 ID:AMxdi+lW
AS3とphp5で単純なデータ送受信を試しています。
flashからphpに文字列を渡し、php側整形後echoし文字列をFlashで受け取るスクリプトなのですが
結果はphpファイル内容全てをurlエンコードされた状態でFlashが受け取っています。
phpがechoした文字列ではなくファイル内容の文字列全てを受け取る結果になってしまっているのは
どのようなミスが考えられるでしょうか?

ネット上のサンプルプログラムを使ってためさせてもらっているので
スクリプトの詳細はここで公開できず申し訳ないのですがよろしくお願いします。
226Now_loading...774KB:2008/04/13(日) 17:59:47 ID:XqHmv7IO
>>225
ネット上のサンプルだとなぜここで公開できないんだい?
仕事のソースコードだから公開できないというならまだわかるけど
227Now_loading...774KB:2008/04/13(日) 18:06:01 ID:AMxdi+lW
>>226
スクリプトを書いた方に公開の許可を得たわけでもなく
他人様が書いたものを勝手に二次配布をしたことにあたらないか心配してのことです。
ここでサンプルが公開されている閲覧先のアドレスを貼り付けるのも妥当かどうか悩みました…
考え無しに軽率な行動を取ってはいけないと固まってしまいましたが公開しても問題がなさそうでしょうか?
スクリプトを全く提示していないので大雑把な状況説明と、それを元に考えられる可能性をお聞きできればと思いあのような形になりました。
228Now_loading...774KB:2008/04/13(日) 18:14:42 ID:XqHmv7IO
>>227
そんな事で文句を言う人間がサンプルなんて作るわけないと思うが
ていうか、そのサイトの中の人に聞くのが(r
229Now_loading...774KB:2008/04/13(日) 18:20:43 ID:AMxdi+lW
>>228
サンプルサイトをいろいろ回って「二次配布厳禁」等の他所での公開を禁止する
但し書きを見たことがある経験上、過敏になっているのかもしれません。
製作者に聞けと言われたうえで再度聞くのも失礼かもしれませんが
スクリプトの貼り付けか、アドレス提示をしても問題なさそうでしょうか?
230Now_loading...774KB:2008/04/13(日) 19:35:51 ID:F6XNJ2Vk
>>224
子から親は
子の root.parent.parent で親のstageにアクセスできるよ
231Now_loading...774KB:2008/04/13(日) 20:14:01 ID:2V2Ch/J1
>>229
アドレス貼り付ければ回答早いと思います。
232Now_loading...774KB:2008/04/13(日) 20:36:42 ID:AMxdi+lW
>>231
不必要に慎重になりすぎましたね…
下記のサイトのサンプルを試したところ期待した結果が得られませんでした。
症状は>>225のとおりです。
ttp://www.at-sonic.com/blog/archives/2008/02/as3php.php
233Now_loading...774KB:2008/04/13(日) 21:11:38 ID:2V2Ch/J1
>>232
そもそも、comってなんぞや?
っていうPHPのErrorが吐き出されていますよ。

そのままのソースでは再現できていない状況ですね。。。
234Now_loading...774KB:2008/04/13(日) 21:25:17 ID:AMxdi+lW
>>232
>variables.com = "こんにちは";

この定義づけで後にFlashからPOST送信されているというわけではないということですか?
235Now_loading...774KB:2008/04/13(日) 21:25:47 ID:AMxdi+lW
レス番号を間違えました
236Now_loading...774KB:2008/04/13(日) 21:31:21 ID:2V2Ch/J1
>>235
trace( vars.comp );すると、
undefined.

trace( request.data );すると
com=%82%B1%82%F1%82%C9%82%BF%82%CD

ここがポイントかもしれませんね。

PHP側で
//↓変数を受け取る
$comment = $_POST['com'];
変数が受け取ることが出来ていないようです。
237Now_loading...774KB:2008/04/13(日) 21:45:39 ID:AMxdi+lW
>>236
phpの送信及びFlashの受信のところばかりを疑っていましたが
その一歩手前のデータ送信からダメだったのですね。
flash送信からphp受信の部分を努力しなおします。
ありがとうございました。
238Now_loading...774KB:2008/04/13(日) 21:55:59 ID:yKNfiiwx
すみません。AS2を勉強していて、そろそろクラスの勉強をしたいんですが、なにかいい本はないでしょうか。
Action Script スーパーサンプル集と言うのを読んでいるんですが、
初歩的なスクリプトはみっちり説明しているくせに肝心のクラスや、コンストラクタでの変数の動きをまるっとスルーするんだ…
NaviFrameクラスってなんだよ…
239Now_loading...774KB:2008/04/13(日) 22:05:45 ID:iRYWwn6j
>>238
AS3じゃなくて?
普通にクラスとかOOPならJava系の入門書が腐るほどある
240Now_loading...774KB:2008/04/14(月) 03:40:27 ID:Zyg4+d9D
>>230
ありがとうございます!
無事動かせました!本当に助かりました
241Now_loading...774KB:2008/04/14(月) 12:31:43 ID:xkpYHClP
すいません、ちょっと上の方で話題になってたyoutubeの埋め込みなんですけど。
apiの説明が英語で、FlashはJavaを参考にしろみたいな事でよくわからない…

たとえばhttp://jp.youtube.com/watch?v=YxBg55WYqEIの動画をFlash上から表示させる場合とかって
結局はどうすればいいんですか?
日本語で参考になるサイトを教えていただければ助かります。
242238:2008/04/14(月) 12:33:09 ID:LNI4Vn49
>>239
なんせhtmlもちょっと聞きかじったくらいで、フラッシュだけ勉強しているもんで
OOPとかJAVAとかなにがなんだかさっぱり…
243Now_loading...774KB:2008/04/14(月) 13:20:02 ID:gTceVOsL
質問お願いします。
cs3 ビスタ AS2でフラッシュを作成しています。
頭にロードのバーのムービークリップを作ったのですが、
下のようなプログラムだと止まってしまいました。
どこかおかしいところをご指摘いただけますでしょうか・・

onClipEvent (load) {
total = _root.getBytesTotal();
}
onClipEvent (enterFrame) {
loaded = _root.getBytesLoaded();
percent = int(loaded/total*100);
text = percent+"%";
gotoAndStop(percent);
if (loaded == total) {
_root.gotoAndPlay(2);
}
}
244243:2008/04/14(月) 14:11:02 ID:gTceVOsL
あーすいません、ケアレスミスでしたw
自己解決しました
245Now_loading...774KB:2008/04/15(火) 17:03:15 ID:BRvhKVk0
AS3に慣れてくると、いかにAS2のソースが汚いか分かってくるね
246241:2008/04/15(火) 17:58:01 ID:InwtgvVn
ダメだマジでわからん。
xml引っ張ってきても、タグとか再生回数がわかるくらいで。
肝心のFlashでYoutubeを再生する方法がまったくわからん。

誰か本でもサイトでもいいから教えてください。
出来ればサンプルがあるとすごい嬉しいんだけど。
247Now_loading...774KB:2008/04/15(火) 18:52:24 ID:i6Z7l5EY
248Now_loading...774KB:2008/04/15(火) 22:24:13 ID:16aEUiFd
プロシージャ型プログラムの基本をちょっとかじっただけの知識で、
OOPはこれからなのですが、ActionScript3.0で

var i:int = 10;
var i:int = new int(10);

上記二つってまったく同じですか?
(上は値渡し、下は参照渡しに見えなくもない)

int や uint がクラスなら Int Uint(頭文字) って表記しないといけないんでね?
偉い人アドバイスよろしく頼みます。
249Now_loading...774KB:2008/04/15(火) 22:41:40 ID:rI9HyDNt
>>248
int,uint,Number,Boolean,Stringは、プリミティブ型といって、クラスではない。
プリミティブ型は全て値渡し。
250Now_loading...774KB:2008/04/15(火) 23:05:22 ID:PmJX+G2E
>>248

同じ

intはクラスだけどほかの言語に合わせるために小文字にしたんじゃないかな?

でもプリミティブのように振舞うから意識しなくていいと思う
251248:2008/04/15(火) 23:48:42 ID:16aEUiFd
>>249-250
ご丁寧にレスあり〜。

>プリミティブ型は全て値渡し
わかりました。

>intはクラスだけどほかの言語に合わせるために小文字にしたんじゃないかな?

調べると今までNumber型だったのに int型が加わったみたいですね。
確かに他の言語にあわせたような気もします。
(Int なんて気持ち悪いしw)

ttp://f-site.org/articles/2006/11/13162720.html
↑見るとASのバージョンによってプリミティブ型に違いがあるみたいですね。

とりあえず、しばらくはあまり深く考えずいきたいと思います。
252まい:2008/04/16(水) 00:19:19 ID:VlSJ57Mz
ウェブカメラで、身体の動作を検知して
画面上のキャラクターを動かすみたいなことをしたいのですが、
(右手をあげると、キャラクターの右手もあがる。というような。)
サンプルコードなどあれば教えていただけますでしょうか。
253Now_loading...774KB:2008/04/16(水) 06:59:52 ID:yMVNfwZs
アクションスクリプト3を本気で勉強したいのですが、
おすすめの本はありますでしょうか。
254Now_loading...774KB:2008/04/16(水) 10:09:47 ID:9GjoC7au
よろしくお願いいたします
winXP flash8 As2.0

親_mc内の異なるレイヤーにmcを2つ置き、下のレイヤーに置いたmcを
ドラッグ&ドロップできるようにしてあります。
そこで、上のレイヤーに置いたmcをドラッグ&ドロップさせたmcの上に
追従させたいのですがどうも上手くいかなくて悩んでいます。
あと、下になるmcのサイズを拡大縮小させた場合にも、
上になるmcも同じように拡大縮小させたいので、
そちらの方もお教え頂ければ幸いです。

ぜひよろしくお願いいたします。
255Now_loading...774KB:2008/04/16(水) 10:28:05 ID:MhbaoWXC
>>252
まず画像認識がどういうものかを勉強しましょう
>>253
Essential ActionScript3.0
あとはヘルプのサンプル読むのが良いと思う
>>254
どういうASを書いてるのかが解らないのでなんとも言えない
256Now_loading...774KB:2008/04/16(水) 10:35:58 ID:TLIUkPmn
>>252
opencv のソースを読んで理解したあと移植すればいいと思うよ。
サンプルコードもいっぱいです。
257Now_loading...774KB:2008/04/16(水) 12:40:49 ID:8APnBI3g
>>253

雑誌だけど『WEB+DB PRESS Vol.41』がいいよ
バックナンバーになるけどアマゾンで買えそうだ

ttp://www.amazon.co.jp/WEB%2BDB-PRESS-Vol-41-PRESS編集部/dp/477413256X/ref=pd_bbs_sr_2?ie=UTF8&s=books&qid=1208317103&sr=8-2

258Now_loading...774KB:2008/04/16(水) 13:27:12 ID:TWbBEt2z
ウェブカメラで画像認識して、
そのカメラで投影されている映像自体は非表示にすることは
できないのでしょうか。
259254:2008/04/16(水) 15:50:50 ID:9GjoC7au
先ほど質問したものですが
_x _y _xscale _yscale で事故解決できました。
ありがとうございました。

また質問なのですが
As内で同じようなパスを記述することが多いので簡単にできないか
試行錯誤中です。

_root.Game_mc.TipsCnt_mc.tips_group_mc.tips_01_mc._visible = false;
_root.Game_mc.TipsCnt_mc.tips_group_mc.tips_02_mc._visible = false;
_root.Game_mc.TipsCnt_mc.tips_group_mc.tips_03_mc._visible = false;
・・・・
var Pass:String = "_root.Game_mc.TipsCnt_mc.tips_group_mc.";
いろいろ調べてここまではやってみたのですが、この変数を
パスにつなげる方法が上手くいきません・・・

ご教授よろしくお願いいたします。
260Now_loading...774KB:2008/04/16(水) 15:54:05 ID:D4s2uLiL
>>259
forループと配列アクセス演算子で検索。
261Now_loading...774KB:2008/04/16(水) 17:31:49 ID:bXJp4cB3
誤解してるかもしれないけど、長々としたパスがどうにかしたいってだけなら
var path:MovieClip = _root.Game_mc.TipsCnt_mc.tips_group_mc;
path.tips_01_mc._visible = false;
path.tips_02_mc._visible = false;
path.tips_03_mc._visible = false;

with( _root.Game_mc.TipsCnt_mc.tips_group_mc ){
tips_01_mc._visible = false;
tips_02_mc._visible = false;
tips_03_mc._visible = false;
};
とか。連番で非表示にしたいのなら
var length:Number = 3;
for( var i:Number=0;i<=length;i++ ){
var n:String = i.toString();
if( n.length<1 )n="0"+n;
_root.Game_mc.TipsCnt_mc.tips_group_mc["tips_"+ n +"_mc"]._visible = false;
};
で、インスタンス名に規則性がないなら
var ref:MovieClip = _root.Game_mc.TipsCnt_mc.tips_group_mc;
for( var i in ref ){
ref[i]._visible = false;
};
でも、こうすりゃいい事でないかしら?
_root.Game_mc.TipsCnt_mc.tips_group_mc._visible = false;
262254:2008/04/16(水) 23:08:09 ID:9GjoC7au
>>260
検索してたらなぜか肌色サイトに行きついた・・・

>261
思わず、速攻でプリントアウトしてしまいました。
とても為になる情報をありがとうございました
263Now_loading...774KB:2008/04/16(水) 23:55:19 ID:hEJvNY77
すみません、質問です。
現在、本で勉強している者ですが、
flaファイルに
var target_mc:MovieClip = illust_mc;
target_mc.stop();
var loop:Boolean = true;
var naviObj:NaviFrame = new NaviFrame(target_mc, loop);
〜〜
と記述して、
asファイルに
class NaviFrame {
var mc:MovieClip;
var loop:Boolean;
function NaviFrame(target_mc:MovieClip, loopMode:Boolean) {
mc = target_mc;
loop = loopMode;
}
〜〜
と記述している場合、
フラグ用変数loopModeの真偽設定はこのスクリプト内のどこでやっているんでしょうか。
もしかしたら、もの凄く見当外れな事を聞いているのかもしれないのですが…
264Now_loading...774KB:2008/04/17(木) 00:01:42 ID:BJm42hB3
>>263
NaviFrameのコンストラクタ
コンストラクタとはクラス名と同名の関数の事で
new ClassA( A, B )と生成した場合
ClassAというクラスのClassAという関数が実行される。

つまり
var naviObj:NaviFrame = new NaviFrame(target_mc, loop);
この時の「loop」がfunction NaviFrameの第二引数になる
265263:2008/04/17(木) 00:54:44 ID:ekMq5WBA
>>264
ご回答ありがとうございます。

つまり、flaファイルの方で
var naviObj:NaviFrame = new NaviFrame(A,B);
と記述して、asファイルの方で
function NaviFrame(C, D)
と記述すると、
CにAが代入され、
DにBが代入される。(名称がなんであろうが。)
ということでしょうか。
変数の名称が中途半端に被っているので意味が分かりませんでした…
266Now_loading...774KB:2008/04/17(木) 08:33:54 ID:iuujEk7h
すいません質問なのですが
同じ階層内にMovieClip●とMovieClip▲を並べて置き
MovieClip●をドラッグさせると、MovieClip▲が同じように動くという
ものを作っています。
一応、MovieClip●に
onClipEvent (enterFrame)
if(press){
・・・・

と書いてドラッグ可にして、MovieClip▲に
onClipEvent (enterFrame) {
this._x = _root.●_mc._x;
this._y = _root.●_mc._y;

と書いて同じ動きをさせいるというのはできたのですが、
できるだけCPU的に低負荷でレスポンスの良いものを
作りたいと思っています。
なにか良い方法があればお教え願いたいです。

ActionScript 2.0 です。
267Now_loading...774KB:2008/04/17(木) 09:49:41 ID:ekMq5WBA
>>266
mousedownしている時だけ判定するというifとか、フラグをつかったらいいんじゃないかな。
268Now_loading...774KB:2008/04/17(木) 10:36:56 ID:vF7FFOAo
>>266
パッと見だけでいうと、
・267の言うように、常時じゃなくマウスボタン押されている時だけ処理にする。
モノによってはenterFrameじゃなくてマウスのイベントとかでもいい場合もある。
・処理は各MCに個別に書くのではなくできれば一ヶ所にまとめて書く
というところですか。


質問
MCにコンストラクタって作れない?
リンケージ名と同じfunctionを1フレーム目に作ると
「定義が重複しています」とか出てくるんだけど。
269Now_loading...774KB:2008/04/17(木) 11:15:04 ID:MfAFyLr5
>>247
ありがとう。
なんとかなりそうです。
270Now_loading...774KB:2008/04/17(木) 12:26:02 ID:Wjrs7iot
>>268

onClipEvent(load){
}
でコンストラクタのかわりになるかな?
271Now_loading...774KB:2008/04/17(木) 20:43:11 ID:B9hkZTKP
>>270
ならないというか、結構、あぶない経験がある。Macで。
272Now_loading...774KB:2008/04/17(木) 21:18:35 ID:wM5Y/qZ4
初歩的な質問ですみません、プログラムの効率化の話なのですが
複数あるメニュー項目MCをActionscript3.0でマウスオーバー、クリック時に処理させたい(要するにASでボタンを作りたい)

m01,m02,m03…という項目があるとします。そこで
m01.buttonMode=true;
m02.buttonMode=true;


m01.addEventListener(MouseEvent.MOUSE_OVER,menuOver01);
m02.addEventListener(MouseEvent.MOUSE_OVER,menuOver02);


function menuOver01(event:MouseEvent):void { m01.gotoAndPlay("over") ;}
function menuOver02(event:MouseEvent):void { m02.gotoAndPlay("over") ;}


という風に大量のコードを用意すれば再現できるのですが、これをそれぞれ1行にするにはどうしたらいいのでしょうか
functionに飛ばす時にMCのインスタンス名を渡してくれば良いいのかなと思うのですが。。
273Now_loading...774KB:2008/04/17(木) 21:43:11 ID:ufL6Sv/j
>>272
stage.addEventListener(MouseEvent.MOUSE_OVER, menuOver);
function menuOver(event:MouseEvent):void { event.target.gotoAndPlay("over") ;}

こんな感じでどうだろう
buttonMode=true; はクラス作ってコンストラクタに書くとかかね
274Now_loading...774KB:2008/04/17(木) 22:34:11 ID:wM5Y/qZ4
>>273
レスありがとうございます!参考になります。
m01,m02をまとめてMC(buttons)に入れて、
buttons.addEventListener(MouseEvent.MOUSE_OVER, menuOver);
とすると他のMCのMOUSE_OVER時に呼び出さなくて済むのでより目的に近いものができそうです!ありがとうございます
275Now_loading...774KB:2008/04/17(木) 23:33:44 ID:uS+3XpNP
特定のMCだけFPS値を弄るのってできないの?
全体書き換えるのは知ってるんだが
276Now_loading...774KB:2008/04/17(木) 23:46:12 ID:RTpaWxnx
できないよ
277Now_loading...774KB:2008/04/18(金) 00:05:45 ID:aN/+SnMU
なんと
278Now_loading...774KB:2008/04/18(金) 08:25:19 ID:3nVkFxgZ
>>274
コンテナとしてだけ使うならMCよりもSpriteのほうが軽くてよいぞ
279Now_loading...774KB:2008/04/18(金) 13:33:00 ID:0wKOeqZ8
http://www.inter-bee.com/2007/ja/#/

ここの文字が中に向かって消えていくようなやつを作りたいのだが、
actionscriptの書き方を教えて下さい
280Now_loading...774KB:2008/04/18(金) 23:03:33 ID:UxJIAoGy
Aが移動したときBもAにくっついて一緒に移動するAS教えてください
281Now_loading...774KB:2008/04/18(金) 23:30:25 ID:IAYmE2yk
>>279
文字を配置したMCの基準点を調整して
enterFrame処理の中でscaleとalphaを減らしていけばそれっぽくなるのでは?
(例えば、文字の右下あたりを基準点にして縮小していけば、左上から中心に向かっていくような感じにできる)

>>280
Aが移動した分と同じだけBを移動させていくのじゃダメなのか?
282Now_loading...774KB:2008/04/18(金) 23:52:08 ID:+HIWF5Rk
Actionscript3.0入門ノートで勉強しているのですがソートした場合の
インデックス番号を調べるというのがどう考えてもわかりません。

var colorlist:Array = new Array("blue","red","black");
trace(colorlist.sort(1|8));
//出力→ 2,0,1

何故2,0,1に???
値を並び替えたら"black","blue","red"の順になり、出力は1,2,0になるのでは?
もしかしたらものすごい勘違いしていて馬鹿な質問しているかもしれませんが
誰かわかる方いたら教えてください。
283Now_loading...774KB:2008/04/18(金) 23:53:54 ID:UxJIAoGy
>>281
それでも構いません
教えてください
284Now_loading...774KB:2008/04/19(土) 00:35:28 ID:nf8BwW/u
>>283
Aが移動する前にAの座標とBの座標の差を取得して
Aが動いてる時はその差をBの座標に足せばいいんでない?
285Now_loading...774KB:2008/04/19(土) 00:36:23 ID:3YGKpzOR
>>282
0 1 2
blue red black


2 0 1
black blue red
286Now_loading...774KB:2008/04/19(土) 00:38:41 ID:ATckkJz8
>>282
元の配列のインデックス番号の
2(black), 0(blue), 1(red)
という結果になるっつー意味だからそれでいいんじゃね?
287Now_loading...774KB:2008/04/19(土) 08:03:56 ID:Q/OYQb7J
ビットマップ画像を奥行きのある台形に変形(3D風に回転)するのって無理なんですかね?
288Now_loading...774KB:2008/04/19(土) 11:15:53 ID:WvFPcbLQ
ちょっとアドバイスが欲しい
かなりの数のボタンを表示させたり非表示にさせるフラを作っているんだが
_visible=false,trueを使えばいいのか、タイムラインで1フレを空にして2フレに
ボタンを入れ子にして、gotoで表示、非表示させるかで悩んでる
なにせ数が多いので、わずかでもいいから軽量化したいのだが
どっちがいいんだろうか・・

attachmovieがベストなんだろうけど、ちょい理由があって使えない.。
289Now_loading...774KB:2008/04/19(土) 11:33:55 ID:BCRSLtDX
>>287
奥行きのある台形で3Dってわからんぞそれw
jpgでもうp汁
>>288
かなりの数ではわからん。具体的に100個とか書く。
attachmovieの使えない理由も書く。
290Now_loading...774KB:2008/04/19(土) 12:05:33 ID:4XrQdBzJ
291Now_loading...774KB:2008/04/19(土) 15:09:13 ID:WvFPcbLQ
>>289
まだ製作途中なので最終的な数はわからんが
今のところ120個ほど、たぶん300個ほどになるかも。

attachmovieを使えない理由は
最終的にレイアウトが決まったらattachmovieにしてもいいんだけど
まだまだボタン位置等が変わる可能性が高いので
オンステージ上で作業できる方がいいかなと・・・

こんな感じでどでしょうか。
292Now_loading...774KB:2008/04/19(土) 15:29:17 ID:4t0AvsJC
>>291
軽量化したいならvisible使う方が良いよ。
空キーフレーム作るって事はMC1個あたりのフレーム数が増えるって事だから当然容量は増える。

ちょっと面倒な方法だけど可視的なattachMovieの使い方は
attachMovieで最終的に作成する完成型のMC「McDisplay1」を作っておいてリンケージ
その中のボタンに名前を付けてMcDisplay1をattachMoviesして座標取る
// 座標呼び出し用
attachMovie("McDisplay1", "McDisplay1", 深度 );
// ボタン生成
attachMovie("Button1", "Button1", 深度 );
Button1.x = McDisplay1.Button1.x;
Button1.y = McDisplay1.Button1.y;
// 元になったMCを消す
McDisplay1.removeMovie()

こうしておくとステージでMcDisplay1を調整すれば
attachMovieで作る方も変わるから調整が多い時は楽だよ。
重いのがダメだったら最終的にMcDisplay1から座標取得している部分を
数値の決め打ちに置き換えればいいかと
293Now_loading...774KB:2008/04/19(土) 16:58:59 ID:+fpGFP6l
Aが移動した分と同じだけBを移動させていくAS教えてくだしあ><
294Now_loading...774KB:2008/04/19(土) 17:30:03 ID:oJnusnfV
同じムービークリップに入れるだけじゃないか?
295Now_loading...774KB:2008/04/19(土) 20:59:05 ID:WvFPcbLQ
>>293
Aをドラッグさせて移動させるのか、キーを押して移動させるのか
そのへんから方法が変わるぜよ

参考例は
ttp://www.condo.fromc.jp/flash/memo/index.html
の「3D空間的表現のサンプル1」
あたりかな
296Now_loading...774KB:2008/04/19(土) 22:25:27 ID:Q/OYQb7J
>>290
神すぎる!!!
そんなやり方があったとは
297Now_loading...774KB:2008/04/20(日) 21:57:37 ID:cS4enp/7
●Flash MX
●ウィンドウをリサイズした時にcontainer_mc(980×600)を
 左右方向の中央に移動するようにできました
●最初(ウィンドウをリサイズしないとき)からcontainer_mcを
 左右方向の中央に置きたい

よろしくおねがいします。

Stage.align = "TL";
Stage.scaleMode = "noScale";

sizeListener = new Object();
sizeListener.onResize = function() {
_root.container_mc._x = Stage.width / 2;
_root.container_mc._y = 300;
};
Stage.addListener(sizeListener);
298Now_loading...774KB:2008/04/20(日) 23:09:56 ID:Sw5IqqOc
Stage.align = "TL";
Stage.scaleMode = "noScale";

sizeListener = new Object();
sizeListener.onResize = function() {
_root.container_mc._x = Stage.width / 2;
_root.container_mc._y = 300;
};
sizeListener.onResize();
Stage.addListener(sizeListener);
299Now_loading...774KB:2008/04/21(月) 00:01:02 ID:vGUywb0L
>>298
ありがとうございます!

ウィンドウ幅がcontainer_mcの980px以下の場合には
container_mcの左端がウィンドウの左端で止まるようにしたい
(container_mcは全幅を表示したい)ので、以下のように
ステージサイズで分けましたが、これでいいでしょうか?
期待した動作にはなっているのですが、心配なので

Stage.align = "TL";
Stage.scaleMode = "noScale";

sizeListener = new Object();
sizeListener.onResize = function() {
if (Stage.width > 980) {
_root.container_mc._x = Stage.width / 2;
} else {
_root.container_mc._x = 490;
}
_root.container_mc._y = 300;
};
sizeListener.onResize();
Stage.addListener(sizeListener);
300Now_loading...774KB:2008/04/21(月) 00:40:33 ID:qi3d7gGI
>>299

いいと思うけどマジックナンバー(具体的な数字)はなるべく使わないほうが後々変更したとき楽になるよ


Stage.align = "TL";
Stage.scaleMode = "noScale";

sizeListener = new Object();
sizeListener.onResize = function() {
if (Stage.width > _root.container_mc.width) {
_root.container_mc._x = Stage.width / 2;
} else {
_root.container_mc._x = _root.container_mc.width / 2;
}
_root.container_mc._y = _root.container_mc.height / 2;
};
sizeListener.onResize();
Stage.addListener(sizeListener);
301Now_loading...774KB:2008/04/21(月) 03:30:16 ID:vGUywb0L
>>300

ありがとうございます。

例示していただいたようにMCの数値を使うようにします。
302Now_loading...774KB:2008/04/21(月) 06:01:27 ID:vGUywb0L
●Flash MX
●以下をフェードイン版にしたい

img1_mc.onEnterFrame = function() {
img1_mc._alpha -= 5;
if (img1_mc._alpha <= 0) {
img1_mc._visible = false;
delete img1_mc.onEnterFrame;
}
};
303Now_loading...774KB:2008/04/21(月) 08:09:16 ID:qi3d7gGI
>>302

img1_mc._alpha = 0;
img1_mc.onEnterFrame = function() {
img1_mc._alpha += 5;
if (img1_mc._alpha >= 100) {
delete img1_mc.onEnterFrame;
}
};
304Now_loading...774KB:2008/04/21(月) 13:50:00 ID:vGUywb0L
>>303

ありがとうございます
フェードインもフェードアウトもできるようになりました
305Now_loading...774KB:2008/04/21(月) 13:50:04 ID:fKVSB64g
swapDepths(0);
て何のアクションスクリプトですか?
306Now_loading...774KB:2008/04/21(月) 14:12:58 ID:sZRkN9W7
ヘルプ調べろハゲ
さもなきゃ黙ってハゲ続けてろ
307Now_loading...774KB:2008/04/21(月) 19:01:28 ID:qi3d7gGI
>>305
リファレンスガイドより

swapDepths (MovieClip.swapDepths メソッド)
public swapDepths(target: Object ) : Void
ムービークリップのスタッキング順序、つまり深度 (z 順序) を、target パラメータに指定したムービーと入れ替えます。
または、target パラメータに指定した深度に現在置かれているムービーと入れ替えます。両方のムービークリップは、同じ親ムービークリップに属している必要があります。
ムービークリップの深度を入れ替えると、あるムービークリップを他のムービークリップの前面または背面に移動させるという効果が得られます。
このメソッドを呼び出すときにムービークリップがトゥイーンしている場合、トゥイーンは停止します。
サブクラスを作成することにより、MovieClip クラスのメソッドおよびイベントハンドラを拡張できます。
対応バージョン : ActionScript 1.0、Flash Player 5

パラメータ
target:Object - このパラメータは、次のいずれかの形式で指定できます。

ムービークリップを配置する深度を指定する数値。
別のムービークリップインスタンスを指定するインスタンス名。指定したムービークリップインスタンスとこのメソッドの適用先ムービークリップの深度が入れ替わります。両方のムービークリップは、同じ親ムービークリップに属している必要があります。


myMC1_mc.onRelease = function() {
this.swapDepths(myMC2_mc);
};
myMC2_mc.onRelease = function() {
this.swapDepths(myMC1_mc);
};

自分でAPIリファレンスを調べる癖をつけたほうがいいよ
308Now_loading...774KB:2008/04/21(月) 19:30:27 ID:NQ4KNxDr
As2.0にて製作しています。
ボタンに書いたコードを_rootのキーフレームに書いて
まとめたいと思っています。
_root.01_btn に on (press) イベントを行わせている場合には
キーフレームにどのように書けばいいのでしょうか?
キーフレームにまとめているのをどこかのサンプルで見たのですが
忘れてしまって・・・><

あと、_visible=falseで不可視としているMcに onClipEvent (load)
で何かさせる際、loadされるのは_visible=trueになってからなのでしょうか?

ぜひお知恵をお貸しくださいです
309Now_loading...774KB:2008/04/21(月) 20:18:53 ID:Es1tBRci
>>308
ヘルプでMovieClipのonReleaseまたはonPressのページを読む。

下の質問は意図がよくわからないが、やってみれば結果はわかるんじゃないか?
つか、どこに_visible=falseを書いているかにもよるわけだが。
たしかonClipEvent(load)はMCの描画の前に処理されたと思うんで
最初から_visible=falseにしたいなら、onClipEvent(load)内に書いておけばいいのでは?
310Now_loading...774KB:2008/04/22(火) 20:20:55 ID:+bGcijUx
ObjectAがObjectBの参照を持っていて、ObjectBはObjectCの参照を持っています。
ObjectAからObjectBの参照を消したら、ObjectCはGCの対象になりますか?

また、BとCが相互参照していた場合は永久的にGCされないのでしょうか?
311Now_loading...774KB:2008/04/22(火) 21:58:22 ID:TSi1qgJn
Adobe AIRでOS標準のメニューバーを使う方法がわかりません!!!
出来るのかどうかもわかりません!!!
教えてください!!!

OS標準のスクロールバーを使う方法も教えてください!!!

よろしくお願いします!!!
312Now_loading...774KB:2008/04/22(火) 22:01:45 ID:2tLmcwzc
>>311
お断りします!!!
313Now_loading...774KB:2008/04/22(火) 22:09:10 ID:gFgBktxd
>>310
ObjectBがGCされるからObjectCへの参照が無くなってObjectCがGC対象になる

二個目は分からんが多分されない。
そもそもの仕組みに問題があると思うよそれ
314Now_loading...774KB:2008/04/22(火) 22:33:24 ID:TciOw0vp
>>310
>>313
今までは rc 使ってたから循環参照されてると回収できなかったけど、
Flash9からはmark-sweep gcになったから問題無いんじゃね?
vmの仕様でgcの方法まで指定されてるかどうかは調べてないが。
315246:2008/04/23(水) 18:05:27 ID:CHb6yJ8x
たびたび、すいません。
FlaCS3のAS3でYoutubeのFLVが再生できません。
ビジュアルリファレンスや、ネット上のサンプルスクリプトを探してもローカルFLVの再生ばっかりで…

var ytv:Video = new Video(320,240);
var nc:NetConnection = new NetConnection;
nc.connect(null);
var ns:NetStream = new NetStream(nc);

ytv.attachNetStream(ns);
addChild(ytv);
//ns.play("http://www.youtube.com/v/1upk1wOem0Q");
//ローカルのflvなら再生できるけど、上記のURLを突っ込んでもダメだった。
ns.play("test1.flv");
var meta:Object = new Object();
ns.client = meta;

申し訳ないけど、ぜひ教えてくれると助かります。
316Now_loading...774KB:2008/04/23(水) 18:44:22 ID:ttY14iDm
>>313-314
ありがとう。ケツにキスしていいか?
317Now_loading...774KB:2008/04/23(水) 19:18:29 ID:Ek713llR
318Now_loading...774KB:2008/04/23(水) 20:52:46 ID:/S+Q7OS5
●Flex builder3
●外部テキストファイルを読み込んでテキストエリアに表示
●1行ずつ読み込んで配列に格納したい

必要かわかりませんが、ただ読み込むだけのコード
private function initApp():void {
var url:String = "dejiko.dxf";
var request:URLRequest = new URLRequest(url);
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, onLoadComplete);
loader.load(request);
}

private function onLoadComplete(event:Event):void {
var s:String = event.target.data as String;
a_txt.text = s;
}

1行ずつ読み込む方法、よろしくおねがいします。
319318:2008/04/23(水) 20:57:41 ID:/S+Q7OS5
コードに誤りがw
"dejiko.dxf";→"name.txt";
連投スマソ
320Now_loading...774KB:2008/04/23(水) 23:30:18 ID:n1iRmBhb
>>318
1行というのが、読み込むテキストファイルがすでに
バンバン改行されているのなら、次のような配列化が可能かなぁ。
private function onLoadComplete(event:Event):void{
var s:String = event.currentTarget.data as String;
var s_arr:Array = s.split("\0x0d\0x0a");
}
ただし、これは改行がCR+LFの場合なので、適当に変えてみてくれろ。

指定文字数で改行したいってのは、UTF-16使って全角と半角を
判別しながら分割していく感じになるかも。まぁ、ぶっちゃけ面倒。
ボタンのlabelに収まるように分割、とかだったら、renderWidth使って
人間の目に見えないうちにlabelを書き換えちゃうというのもアリか。
321Now_loading...774KB:2008/04/24(木) 00:00:51 ID:LHohYRCS
_rootにsampleというムービークリップインスタンスを置き、フレームに以下のスクリプトを書きました。

_root.sample.onRollOver = function(){
  timerObj = new Object();
  timerObj.timeout = function(){
    root.sample._y++;
  };
  var timerID = setInterval(timerObj, "timeout", 1000);
}
_root.sample.onRollOut = function(){
  clearInterval(_root.timerID);
};
stop();

オンマウスで、一定時間間隔の処理の繰り返しを開始し、マウスアウトでその繰り返し処理を停止したいのです。
オンマウスの処理の方は動きましたが、インターバルのクリアがうまく動きません。
正しくはどう書けばいいのでしょうか?
322Now_loading...774KB:2008/04/24(木) 06:35:38 ID:QFGgsqJX
>>321
>var timerID = setInterval(timerObj, "timeout", 1000);
なんでここだけvarつけてローカル変数にしてんだ?
323Now_loading...774KB:2008/04/24(木) 08:38:31 ID:8RipdvSq
理解しました・・・
ありがとうございます
324Now_loading...774KB:2008/04/24(木) 10:14:50 ID:SEwDm3QJ
画面に既に描画されている数字、アルファベット、文字列を
一定の時間(タイムランで指定した所で)ランダムで回転しながら右方向に散る感じに飛ばすにはどう記述すればいいのでしょうか。
こういった処理はモーショントウィーンでやったほうがいいのでしょうか。


製作環境はFlashCS3、AS3です
325Now_loading...774KB:2008/04/24(木) 12:41:25 ID:Tk6+QWr7
>>324
描画されているのはMCとかSpriteなのか?それによって扱いが変わる
とりあえずランダムって要素がある以上ASの方が良いと思うけど
ステージ上でタイムラインを手動で動かして動作確認したいというならASは不向き
326315:2008/04/24(木) 14:02:37 ID:OSDKlZX2
>>317
ありがとう。
でも、AS2で英語って、自分にはレベル高すぎてよくわからない…
VideoDisplayってクラスを使えば簡単らしいのだが、FlashCS3には無いっぽい。
他の人はFlashでyoutubeプレイヤーをどうやって作ってるんでしょうか?
327315:2008/04/24(木) 18:16:25 ID:OSDKlZX2
ttp://theflashblog.com/?p=369
っていうのを見つけたけども、
これもAIRでflash.filesystem.*を使ってるからFlashじゃないし。
328Now_loading...774KB:2008/04/24(木) 18:54:46 ID:QFGgsqJX
>>326
質問)AS2わかりません、英語わかりません、みなさんどうやってますか?
答え)みんな勉強してAS2わかるし、リンク先程度の英語も勉強して理解出来るようになってます
レベルが高すぎと思うなら諦めるか必死で勉強してください
329Now_loading...774KB:2008/04/24(木) 22:41:04 ID:ma4Ril87
おまいら全員日本語しゃべれよw
330Now_loading...774KB:2008/04/24(木) 23:43:20 ID:fauQbR8Z
英語分からないならソース見ればいいじゃんって思うんだけどなあ
331Now_loading...774KB:2008/04/25(金) 00:03:23 ID:1IdNAOxe
>>326
どうしても分からなかったらほったらかしにして、
他の勉強をしているうちに気がついたら出来ていることもあるからのんびりやればー?
332Now_loading...774KB:2008/04/25(金) 03:36:29 ID:6Ope2/A2
>>320
Thanks
333326:2008/04/25(金) 09:36:55 ID:4XYaLnJl
>>328
言いたいことはわかるけど、AS3が判らなくてAS3の質問をしてるのに
サンプルがAS2でAS2を勉強してくださいって言われても。
必死で勉強して下さいで終わらすなら質問スレの意味ないよね?
334Now_loading...774KB:2008/04/25(金) 10:08:59 ID:rp6Dyy0e
>>333
では、詳しく教えてあげてくださいね。文句はそれからだろw
335Now_loading...774KB:2008/04/25(金) 10:57:32 ID:3r0tbxk4
>> 326
ttp://www.youtube.com/crossdomain.xml
これで許可されてるドメインからしかアクセス出来ないと思うけど
そういう話ではなくて?

>>333
>>334
確かに AS3.0 と明記してるのにいきなり 2.0 のサンプル投げるのも
どうかと思う
336Now_loading...774KB:2008/04/25(金) 11:17:14 ID:rp6Dyy0e
>>335
3.0のサンプルあれば最初から投げてるよw無いから言ってるんだって解ってくれ。
337Now_loading...774KB:2008/04/25(金) 11:36:47 ID:3r0tbxk4
>>336
無いなら無理にレスしなくてもいいんでないかね
338Now_loading...774KB:2008/04/25(金) 12:00:54 ID:zqyvzX4l
それが参考になったり役立つ場合も、人によってはあるだろうし
何にもレスがないとそれはそれで騒ぐ人もいるし。
339Now_loading...774KB:2008/04/25(金) 12:05:26 ID:p5dPcecl
初歩的なこと聞いてるんじゃないんだし
2.0わからんって言うだけじゃ甘えすぎだろ
340Now_loading...774KB:2008/04/25(金) 12:21:38 ID:St0SI86L
2.0
341Now_loading...774KB:2008/04/25(金) 12:33:12 ID:HQrDdmkr
ソース見りゃわかるだろ
(addChild(new Loader())asLoader).load(new URLRequest("http://www.youtube.com/v/1upk1wOem0Q"))
みたとこvm1だから操作はできなそうだなこれ。2.0でやった方が無難なんじゃねーの?
342Now_loading...774KB:2008/04/25(金) 13:21:23 ID:kR8YpTaD
actionscript初心者でスマソなんですが質問させてください。

シンボルがボタンでオーバーで色が青に変わる物があるとします。(btn_A)
これをムービークリップ(mc_A)をrollOverしたら
「btn_A」も青色に変わるというのは可能でしょうか?

いくつか検索はしてみましたが
検索ワードが悪いのかうまく検索にかかりません。
343Now_loading...774KB:2008/04/25(金) 14:16:44 ID:vJaJd2Xp
>>342
少し内容が古いような気もするけど、この辺?
ムービークリップのボタン化
ttp://homepage3.nifty.com/ginga-b/MX/btnmc.html


344Now_loading...774KB:2008/04/25(金) 20:35:31 ID:MtPGLtui
flashしょしんしゃです

脱出ゲーム作ってみたいのですが
どこか参考になるサイトありませんか?
345Now_loading...774KB:2008/04/26(土) 00:56:43 ID:QnZypr8w
AS2で、_nameがhogeのとき、

newName = _name + "_hoge";
_parent.newName.gotoAndPlay(1);

として_parent.hoge_hoge.gotoAndPlay(1)として動かしたいのですがうまくいきません。。。
346Now_loading...774KB:2008/04/26(土) 02:50:18 ID:+wPhPzsA
ドットアクセス演算子じゃダメでしょ
347Now_loading...774KB:2008/04/26(土) 03:13:48 ID:pg09egka
>>345
配列アクセス演算子つかう
348Now_loading...774KB:2008/04/26(土) 09:42:19 ID:QSQmTkaU
>>345
newNameはStringだよね。つまりは変数名で参照ではない。使うんなら

_parent[newName].gotoAndPlay(1);
_parent["hoge"+"_hoge"].gotoAndPlay(1);

のように連想配列で参照自体を指定する
349Now_loading...774KB:2008/04/26(土) 13:10:23 ID:cUhRo2tx
すません初心者です
as3です。

リンゲージしたMCをfor で10個つくったものをaddChildで別の1つのMCの中に。それをマウスのクリックで e.target.nameをトレース
すると instance20 みたいな名前しかとれないんですけど、ちゃんとした名前を取るにはどうしたらいいのでしょうか?



for (var i:Number = 0; i<10;i++) {

var myMc:MovieClip = new MC();


myMc.x += i*20;


MC2.addChild(myMc);
addEventListener(MouseEvent.CLICK,myfun);

}


function myfun(e:Event) : void {
trace(e.target.name);
}
350Now_loading...774KB:2008/04/26(土) 13:34:39 ID:QSQmTkaU
>>349
newした時にnameプロパティを設定してあげればいんじゃね
351Now_loading...774KB:2008/04/26(土) 19:16:19 ID:hnck43Gh
>>350

なるほど!
できました どうもです。
352Now_loading...774KB:2008/04/27(日) 11:02:29 ID:D4plSMY2
_rootの1フレーム目で外部ファイルのswfやjpgファイルを読み込んで変数に入れておき、
_rootの2フレーム目以降でこの変数からswfやjpgを取り出してMCにアタッチして使えたらいいなと思うんだけど
こういうことは可能ですか? 可能なら外部ファイルの読み込みが_rootの1フレーム目で全部出来るので
ディスクアクセスが減って軽快になるんですが・・。 よかったヒント下さい!><
353Now_loading...774KB:2008/04/27(日) 11:05:39 ID:6g3k53G9
ヒント:ローディング画面
354Now_loading...774KB:2008/04/27(日) 11:17:40 ID:D4plSMY2
>>353
ありがとうございます!、それでググってきます!><
355352:2008/04/27(日) 13:12:27 ID:D4plSMY2
1フレーム目で読み込むとこまでは出来た。
でもそれを2フレーム目で表示させる方法が分からない><

誰か1フレーム目で変数に読み込んだjpgファイルを2フレーム目でその変数から取り出して表示するサンプルくれ><
356352:2008/04/27(日) 14:08:42 ID:D4plSMY2
もういいや、諦める。 スレ汚しすまんかった。
357Now_loading...774KB:2008/04/27(日) 18:26:03 ID:ZXRMSMf2
テキストボックスに入力した値の数for文で繰り返すってのを作ったんだけど
入力された値が20以下でないと動作しないようにしたいんだけどどうすればいい?
イフ文使うのは分かってるんだけど、どう書けばいいのか分からない
358Now_loading...774KB:2008/04/27(日) 18:33:08 ID:7ULKFtLi
if(textBox.length>20)return;
359Now_loading...774KB:2008/04/27(日) 18:40:23 ID:EReUxWVc
CS3のas3.0です、書いているのはタイムライン1フレーム目です
シェイプを10×10に貼り付けて、そのシェイプを押したら消えるというのを考えていたのですが
表示されたシェイプをクリックしてもvisibleやtraceは無反応です、特にエラーも出てはいないのですが・・・
シェイプをクリックすると消えるという処理を動作させるにはどう訂正すればよいのでしょうか、お願いします

var container:Sprite = new Sprite();
addChild(container);
var pieceArr:Array = new Array();
for(var i:int = 0; i<10; i++) {
pieceArr[i] = new Array();
for(var n:int = 0; n<10; n++) {
var piece:Shape = new Shape();
pieceArr[i][n] = piece;
pieceArr[i][n].graphics.beginFill(0x333333);
pieceArr[i][n].graphics.drawRect(n*15, i*10, 12, 7);
pieceArr[i][n].graphics.endFill();
pieceArr[i][n].addEventListener(MouseEvent.CLICK, pieceClick);
container.addChild(pieceArr[i][n]);
}
}
function pieceClick(event:MouseEvent):void {
trace("OK");
event.target.visible = false;
}
360Now_loading...774KB:2008/04/27(日) 18:57:22 ID:ZXRMSMf2
>>358
出来ました サンクスです
361Now_loading...774KB:2008/04/27(日) 18:57:33 ID:74MeCCnN
>>359

Shapeはマウスクリックとかのイベントはサポートされてないから単純な絵を描画するだけのときにしか使えない

マウスクリックイベントを使うならSpriteにしたほうがいい
362359:2008/04/27(日) 19:17:24 ID:EReUxWVc
>>361
spriteに訂正ですんなり動きました。ありがとうございます!
363Now_loading...774KB:2008/04/27(日) 20:08:40 ID:49ikItgX
Flexでつくってあるサイトってどこかにある?
見かけない。
364352:2008/04/27(日) 23:15:42 ID:D4plSMY2
解決・・してないけどFAがあった。 Flashの仕様のせいでうまくいかなかったらしい。
ttp://blawat2015.no-ip.com/~mieki256/diary/200511243.html

これだけで一日終わってしまった・・・。
365Now_loading...774KB:2008/04/28(月) 08:24:03 ID:vE6Yazdi
よくある事
366Now_loading...774KB:2008/04/28(月) 10:04:42 ID:u0f5PwFK
俺も5年くらい前にはまったな。1時間くらい。
367Now_loading...774KB:2008/04/28(月) 13:14:01 ID:xG0jb+6V
>>364
新しい言語触る時はその言語の仕様でよくある事だよ。
「FLASH 仕様」とかでぐぐって今回みたいなものを事前に知っておくと良いかと
368Now_loading...774KB:2008/04/28(月) 18:07:38 ID:k4wECExW
なるほど、サンクス。
369Now_loading...774KB:2008/04/29(火) 00:36:57 ID:yFruWpp8
AS3でNetStreamで受け取った映像をBitmapとしてキャプチャすることは不可能ですか?
370Now_loading...774KB:2008/04/29(火) 12:28:06 ID:dWKQG8Qb
俺はloadClipではまったな
なぜ素直に渡したMCをロードしたMCに置き換えてくれないのか…
371Now_loading...774KB:2008/04/29(火) 13:20:18 ID:8diqtJKl
質問させてください。
AS3.0で、MovieClipのタイムラインに_up、_over、_down、とラベルをつけて
ボタンアクションをつけると、自動的にそこへ移動するという、
いわゆる「MovieClipボタン」を実装したいのですが、
その「MovieClipボタン」の中にMovieClipを入れ子にするとうまくいきません。

やりたいことは、mcにロールオーバーすると、そのmcのフレームが"_over"に移動し、
そこに配置されている子mcのタイムラインが再生されてトゥイーンで色が変わるというものなのですが、
子mcの中にタイムラインがあると、下記のscriptを書いても
クリックしてもrelFuncが実行されません。どのようにすればうまくいきますでしょうか?

mcのbuttonModeはtrue。
子mcにはmouseEnabled=falseを記述しています。

// MovieClipボタン名:_mc

_mc.buttonMode=true;
_mc.addEventListener(MouseEvent.CLICK,relFunc);


function relFunc(event:MouseEvent):void {
trace("ok");
}
372Now_loading...774KB:2008/04/29(火) 13:38:11 ID:ix10JnBG
>>371
試しに作ってみたけど問題無く動くよ?
MC名とか簡易だけどどこか同じ変数名重複してたりしてない?
373Now_loading...774KB:2008/04/29(火) 13:44:02 ID:8diqtJKl
ありがとうございます。
変数名などの重複はありません。
ロールオーバーでトゥイーンで色は変わりますが
trace("ok")がされません。
374fla:2008/04/30(水) 20:20:20 ID:nVII3Kas
初心者ですがよろしくお願いします。

flashからjavascriptの関数を呼び出したときにflashに持っている変数の値を
javascriptへ送信したいのですがflashではどう記述していいのかわかりません
どなたか教えていただけませんか?
flashでjavascriptを呼び出すには以下でできたのですが。。。

flash側----------------------------------------

on (release) {
getURL("set()");
}


javascript関数----------------------------------

function set(set1,set2) {
document.forms[0].elements[0].value = set1;
document.forms[0].elements[1].value = set2;
}
375Now_loading...774KB:2008/05/01(木) 00:57:15 ID:BC3CSmlL
>>374
getURL("set('abc','def')");
376Now_loading...774KB:2008/05/01(木) 16:06:26 ID:i3WuXav7
AS3 FlashCS3で開発してるんだけど
Lorderを使って読み込んだswfの再生が終わったというのを判断したいんだが
読み込まれるswfのrootに適当な変数作って再生が終わったらフラグ立てて
それを読み込む側のswfが常に監視しててって方法くらいしか思いつかないんだけど
もっといい方法ある?
377Now_loading...774KB:2008/05/01(木) 16:16:55 ID:4epn+WRT
日本語って難しいのな
378Now_loading...774KB:2008/05/01(木) 16:29:14 ID:i3WuXav7
framesLoadedなんて便利なプロパティがあったのね
THX!!解決したよん
379Now_loading...774KB:2008/05/01(木) 17:01:47 ID:LCdqIMsR
>>378
それってロードされたかどうかの判別の事で、再生が終わったということじゃないんじゃないかな
380Now_loading...774KB:2008/05/01(木) 17:33:36 ID:i3WuXav7
>>379
ごめんtotalFramesだった…。

もう一つ聞きたいんだけど、指定したディレクトリ内のファイル一覧を取得するのに
便利な関数ってある?
Perlでいうとこのglob();みたいな
381Now_loading...774KB:2008/05/01(木) 18:07:34 ID:xhkkNoo3
ASでは、ディレクトリ一覧なんか取得できないんじゃ...

※AIRならべつかも
382Now_loading...774KB:2008/05/01(木) 18:16:22 ID:uT0785H7
AIRもアウト
383Now_loading...774KB:2008/05/01(木) 18:22:43 ID:i3WuXav7
>>381
>>382
な、なんだってー!!!!
384Now_loading...774KB:2008/05/01(木) 18:26:15 ID:i3WuXav7
んじゃあPerlでディレクトリ一覧取得して
Flashに渡すような仕組みにしてみるわー
一生を無駄にして調べるとこだったよ!さんくす!
385Now_loading...774KB:2008/05/02(金) 00:36:44 ID:PPQBOPF7
swfに埋め込んだ動画をLoaderを使って読んで再生して
再生が終わったらloader_obj.unload();して読み込んだswfを破棄しようとしたんだが
再生したswfの音がずっと鳴り続けちゃうんだけど、これは破棄できてないの?

お手上げだっちゃ。
みんなの意見を聞かせてちょ
386Now_loading...774KB:2008/05/02(金) 02:58:10 ID:9RdPDN8K
再生の最後(unloadする前)にstop(); て書いてみれば?
387Now_loading...774KB:2008/05/02(金) 03:16:48 ID:PPQBOPF7
stopで音とまったけど開放されてるのかな?
音は別なのかね?
388Now_loading...774KB:2008/05/02(金) 12:30:45 ID:wdBitTnA
メモリは解放されていないと思う
389Now_loading...774KB:2008/05/02(金) 14:06:28 ID:1N2a4mRb
解放するならunloadじゃなくremoveじゃね?
390Now_loading...774KB:2008/05/02(金) 14:11:08 ID:0JIjua9i
null
391Now_loading...774KB:2008/05/02(金) 14:12:17 ID:Kq+9Ndd+
392Now_loading...774KB:2008/05/02(金) 17:51:03 ID:XV7pYeJ2
がっ!
393Now_loading...774KB:2008/05/02(金) 18:25:46 ID:0JIjua9i
textfiledのTYPEがHTMLになってるとsetTextFormat使えないのか・・。
ボタン押したら文章全体のフォントサイズを変える(大きくする、または小さくする)というのをやりたかったんだが
TYPEがHTMLのときはどうすりゃいいんだこれ。

textfiled.htmltext プロパ使ってHTMLソース覗いてみたら勝手に 「size="10"」 がフォントタグに入れられてた。
これを置換してから再度textfiledにぶちこまなきゃならんのだろうか、描画が2回発生するから重くなりそう・・。

なんかうまい方法ないっすか? ないっすね、すんません。
394Now_loading...774KB:2008/05/02(金) 18:57:14 ID:BY45zXzt
>>393
StyleSheetじゃダメか?
395Now_loading...774KB:2008/05/02(金) 19:06:50 ID:zet3BGhV
Flex3+ActionScript3で開発をしています。
外部ファイルをimportして使用するには、どういう記述をすればよいのでしょうか?
または、どこでパス?を設定すればよいのでしょうか?
(papervision1.5をダウンロードして使おうとしてます)
396Now_loading...774KB:2008/05/03(土) 00:39:05 ID:eb1bfb/1
>>394
試してみます、ども^^
397Now_loading...774KB:2008/05/03(土) 14:27:27 ID:tIZtA8VM
importの記述はpackageのすぐ下
その程度は自力で調べられる位じゃないと、PV3Dは扱えないよ
398Now_loading...774KB:2008/05/03(土) 18:54:14 ID:+nrqqNp1
http://58.13.216.134/humanbench/index.html

↑これって3DだけどPapervision3Dをimportしてるわけではないよね?
AS3で使える3DライブラリってPapervision3D以外に何があるの?
399Now_loading...774KB:2008/05/03(土) 19:27:07 ID:alLh8AR6
>>398
その程度なら自分で0から作ってるんだろ
400Now_loading...774KB:2008/05/04(日) 02:03:27 ID:GwP1zpzI
>>398
非ポリゴン系の3Dが今となっては逆に新鮮ですな。
401Now_loading...774KB:2008/05/04(日) 02:22:58 ID:mwlIewId
ふーん、新鮮なんだw
402Now_loading...774KB:2008/05/04(日) 15:43:26 ID:MbyLW/sz
ttp://flashenabledblog.com/2007/06/20/creating-a-simple-mp3-player-using-actionscript-30-and-flex-2/
ここにあるコードをそのまま写して実行したところ、
[ArgumentError: Error #2068: サウンドが無効です。] って言われる

開発環境はFlex3 AS3.0

なんでだろー?
403Now_loading...774KB:2008/05/04(日) 20:18:38 ID:mwlIewId
>>402
[ArgumentError: Error #2068: サウンドが無効です。] だからじゃね
404Now_loading...774KB:2008/05/05(月) 02:07:00 ID:zrK1/GOK
>>402
ソース見てみたら、MP3ファイルの実体が入ってない。

存在しないMP3ファイルのダウンロードを試みて、おそらく
nullのdataProviderに対するid3プロパティ(getter関数)へのアクセスと
play()メソッドの実行の段階で、Soundクラスが内部的にArgumentError
例外をthrowしていると思われ。SWFと同じ階層にsongURLsとして
宣言されてる配列の中身と同名ファイルで128kbps/CBRのMP3ファイルを
置けば、そのまま動くんじゃないかなぁ。
405402:2008/05/05(月) 12:27:24 ID:FlNUhDlx
>>403
ですよねー

>>404
ちょっと試してみる
kwsk説明d

Thanks
406Now_loading...774KB:2008/05/05(月) 15:18:43 ID:qFiQ+orq
重なる2つのムービークリップへマウスベント(例えば、クリック)を
2つともに伝える方法はありますか?

[例]
|---------------|
| A          |
|     |---------------|
|     |B   ●       |
|------|            |
     |            |
     |---------------|

上のように、2つ重なるムービークリップの"●"部分をクリックした際、
ムービークリップA及び、ムービークリップBの2つへクリックイベントを
通知したいです。
407Now_loading...774KB:2008/05/05(月) 16:52:51 ID:/ySdxIXW
AS3.0です。webで拾った以下のサンプルをコンパイルすると
「パッケージをネストすることはできません」とメッセージがでるのですが
対処法を教えていただけませんでしょうか

よろしくお願いします

package {
import flash.display.*;
import flash.text.*;

//HelloWorld
public class HelloWorld extends Sprite {
//コンストラクタ
public function HelloWorld() {
//テキストフィールドの生成
var textField:TextField=new TextField();
textField.text="Hello World!";
addChild(textField);
}
}
}
408Now_loading...774KB:2008/05/05(月) 17:12:34 ID:Xw/7u90R
パッケージをネストするようにすればいいんじゃないかな
409Now_loading...774KB:2008/05/05(月) 17:43:05 ID:/ySdxIXW
すいません、ネストを教えてもらえませんでしょうか  orz
410Now_loading...774KB:2008/05/05(月) 18:26:05 ID:xCMkREQJ
>>407
flaファイルのフレーム1にコピペでもしてんだろw
411Now_loading...774KB:2008/05/05(月) 18:53:55 ID:/ySdxIXW
それです orz
include で.asファイルを読んでるんですが、include はそこに記述されるのと同義らしいので同じことですね・・

となると・・ Flex 2 SDK とかを利用することになるんでしょうか?
412Now_loading...774KB:2008/05/05(月) 19:18:21 ID:QdGevFcQ
AS3の質問はこっちの方がいい 先生がたくさんいる
ttp://pc11.2ch.net/test/read.cgi/swf/1151840424/l50
413Now_loading...774KB:2008/05/05(月) 19:20:22 ID:xCMkREQJ
>>411
1)上記コードをHelloWorld.asとして保存
2)flaファイルのプロパティのドキュメントクラスにHelloWorldと書く
3)両方が同じフォルダにあることを確認してムービープレビュー
414Now_loading...774KB:2008/05/05(月) 20:03:16 ID:/ySdxIXW
やっとできました 答えてくださった方本当にありがとうございました m(_ _)m

これで、休みの2日つかってもうた・・・
415402:2008/05/05(月) 20:19:10 ID:FlNUhDlx
>>404を試したが変化なし
ビットレートとかも確認してためしたが、原因はなんなのかなあOTL

一応エラー画面
ttp://www.uploda.net/cgi/uploader2/index.php?file_id=0000055795.jpg

助けてエロイ人!
416Now_loading...774KB:2008/05/05(月) 20:21:30 ID:FlNUhDlx
417Now_loading...774KB:2008/05/05(月) 22:43:31 ID:3dN8Z8R7
さいきんEventDispatcherとかのお勉強してイベント投げて遊んだりしてるけど
そもそももともと用意されてるイベントってどれくらいあるんだ???
一覧ページとかちょっと探してみたけど、全一覧がのってるようなサイトが
ナッスィン
みなさんはどうやって調べてますかいてぴー
418Now_loading...774KB:2008/05/05(月) 23:56:16 ID:St5WAhR3
>>416
これ見て自力で直せないのなら、ゼロから勉強しなおせ。
419Now_loading...774KB:2008/05/06(火) 00:16:38 ID:9D01v1Eg
420Now_loading...774KB:2008/05/06(火) 00:51:19 ID:qBPjR2IH
>>419
とんくす。
いちから出直してくる!
421Now_loading...774KB:2008/05/07(水) 14:32:36 ID:ZsRL7hcN
ctrl+Enterを押すると先のフレームが覗かれてしまうんですがctrlキーを無効にするとか出来ませんか?
keyのリスナーでキーイベントを受け取ることは出来るんですが、キー入力を無効にする(無かったことにする)
方法が分からなくて・・(flash6, as2.0)
422Now_loading...774KB:2008/05/07(水) 15:00:04 ID:+RRDaHGe
>>421
構成がよくないんだ。
コンテンツはMCにまとめて、メインタイムラインの
1フレームに配置すれば、前後のフレームに飛ばれても問題なし。
あるいは、見せたくないフレームの手前にひとつ挿入して
prevFrame()をかます手もあるが。
423Now_loading...774KB:2008/05/07(水) 15:11:28 ID:ZsRL7hcN
>>422
もう完成してしまってるから今更構成の変更は無理ぽorz
prevFrame使うとなるとgotoの番号がズレてくるし修正作業がすごいことにorz
424Now_loading...774KB:2008/05/07(水) 17:21:54 ID:Qt6mCUEJ
行き詰ってます。。

フィールド上に書かれたスプライン曲線を移動させながら、端っこに吸い込ませるという表現をしたいのですが、行き詰っています。
ファイルはアップしたので、誰かご教授お願いします。
http://iroiro.zapto.org/cmn/jb/jb.cgi?mode=dlkey&id=1884
パスは12345

よろしくお願いします。
425Now_loading...774KB:2008/05/07(水) 19:03:06 ID:P2N07t8o
AC3について何か初心者のためのサイトは無いですか?
426Now_loading...774KB:2008/05/07(水) 19:18:10 ID:RcS8kNqB
AC3って何だっけ
427Now_loading...774KB:2008/05/07(水) 19:55:40 ID:P2N07t8o
AS3でした汗汗
まじすんません
428Now_loading...774KB:2008/05/07(水) 21:44:21 ID:RcS8kNqB
初心者未満のためのサイトは心当たり無い
初心者でも前提知識ゼロからのAS3.0は厳しいと思うよ・・・WEB土方的な意味で
429Now_loading...774KB:2008/05/07(水) 22:58:03 ID:P2N07t8o
CとJAVAのスキルがあってもAS3はキツいですかね?
全く違うのですか?
430Now_loading...774KB:2008/05/07(水) 23:04:59 ID:RcS8kNqB
それなら初心者サイトなんか受講しなくても、公式リファレンス片手に開発できるんじゃないかな?
431Now_loading...774KB:2008/05/07(水) 23:12:14 ID:ljIgSdUr
プログラム言語なんて1つ覚えれば
他は様式は違えど条件式や繰り返しなどやることは一緒で
後は言語毎に実現できる方法を調べ上げることだけなんだが
JAVAとAS3の違いを調べ上げずに
こんなとこで聞いている時点で論外。
432Now_loading...774KB:2008/05/07(水) 23:42:52 ID:IlH+UcwJ
C++のスキルがあれば、AS3なんてオモチャ。
433Now_loading...774KB:2008/05/07(水) 23:48:26 ID:ZsRL7hcN
本とかでしっかり勉強したほうがいいよね。 俺はサイトで済ませちゃったけど、jsの知識ならあったし。
434Now_loading...774KB:2008/05/08(木) 08:35:49 ID:fvelcJ49
>>431
> プログラム言語なんて1つ覚えれば
> 他は様式は違えど条件式や繰り返しなどやることは一緒で
マイナーな言語に触れるまでそう思っていた時期が私にもありました。
435Now_loading...774KB:2008/05/08(木) 10:48:06 ID:ExzUoqa0
LISPやるまでは俺もそう思っていました。
436Now_loading...774KB:2008/05/08(木) 11:14:41 ID:fvelcJ49
>>435
おお、同志よ。
437Now_loading...774KB:2008/05/08(木) 17:32:44 ID:fpTa+7QK
    |┃―--.、
    |┃,ノノ,,;;;;;;;;ヽ
    |┃  "ミ;;;;:}           ジィィー‥
    |┃ _,,,..、  |;;;:|
    |┃ヒ''tュ_  i;;;;|   >>436
    |┃ -     ト'{    こんなところにも同志が‥
    |┃>、     }〉}     
    | |||llii;;,>、 .!-'   
    |┃'"     |    
    |┃゙,,,  ,, ' {      
    |┃ ̄  _,,-"ヽ     
    |┃;;,..-" _ ,i`ー-    
    |┃ \ /★/  |
438385:2008/05/08(木) 20:34:47 ID:e4ODQzgL
http://d.hatena.ne.jp/tai2/20080222/p1

うーん。
いまだ解決できず…。
誰か解決法をしってる神様はいないのか!!
439385:2008/05/08(木) 20:57:01 ID:e4ODQzgL
440Now_loading...774KB:2008/05/08(木) 22:38:17 ID:e4ODQzgL
>>434-437
おれもはやくその領域に達したいぜ!
441Now_loading...774KB:2008/05/09(金) 10:39:32 ID:M1nbtjgT
そもそもアニメーション製作ツールでプログラムとかオブジェクト指向とか迷走しているにも程がある。

とレイヤーとmcの入れ子だらけのフラッシュを眺めながらぼやいてみる。
442Now_loading...774KB:2008/05/09(金) 11:39:53 ID:uP+Vucqf
>>441
全俺が憤慨
443Now_loading...774KB:2008/05/10(土) 01:59:19 ID:XMn7Y+2L
てかオブジェクト指向って良くわかんないけど、
困らねぇ?なんかいちいちクラス作んなきゃならなかったり
メンバ変数ってクラス内でのグローバル変数みたいな感じになっちゃってるじゃん
あれ使うと関数に引数渡す必要なくなったりでこんがらがるのはオレだけか。
オレだけだね。 うん。
444Now_loading...774KB:2008/05/10(土) 02:17:04 ID:ZgksQNOu
クラスの概念が無くても正直困らない。
自作クラス使わなきゃいいだけだし。
445Now_loading...774KB:2008/05/10(土) 02:51:57 ID:h0HvXF9u
よく言われるけど、作ってる内容、作ってるメンバーなんかで
何が最善かって変わるしな。
446Now_loading...774KB:2008/05/10(土) 04:08:37 ID:FW4FhXF5
>>443
>あれ使うと関数に引数渡す必要なくなったり
その関数がprivateなら別にいいんじゃね
でもメンバ変数で受渡しするとその関数でどの値を必要としているかわかりにくくね?
447Now_loading...774KB:2008/05/10(土) 10:10:18 ID:aKkQznJ4
>>443
小さいもの作ってる間は全く困らない。
大きいもの作っててもちゃんと管理できてれば困らない。

ただよく使う処理を共通関数に作っておいたり
基本構造が一緒のものはクラスにしておいたり
ちゃんと扱えば段々便利になっていく感じはするね。
AS2.0時代は新しいもの作るたびに必要な関数だけコピペしてくるのが面倒だった・・・
448Now_loading...774KB:2008/05/10(土) 10:26:02 ID:975XmA0N
実のところ、スクリプトを徹底的に合理化するより
無駄を承知で一定の法則を決めて作った方があとあと管理が楽。
449Now_loading...774KB:2008/05/10(土) 12:49:22 ID:Fv3IcHTK
AS3.0で作られたらしい
http://jp.youtube.com/watch?v=bwYX0-2GoKc
450Now_loading...774KB:2008/05/10(土) 13:07:01 ID:cXFVxr4Y
>>449
てめーのブログの裏にでも書いてろ
451Now_loading...774KB:2008/05/12(月) 15:01:56 ID:zKbRGbfq
>>437
ファンファン大佐乙
452Now_loading...774KB:2008/05/12(月) 23:53:10 ID:3SVnLct8
As2.0を最近はじめたんですが
_root.01_mc.02_mc.03_mc.04_mc._visible=false;(実際はとても長いです)
このようなパスを何度も使う事が多くて、パス表記を短くする方法を探しています。
ぜひ、お教えくださいお願いします
453Now_loading...774KB:2008/05/13(火) 00:11:11 ID:h/NMuULc
>>452
var mc4:MovieClip = _root.01_mc.02_mc.03_mc.04_mc;
mc4.visilbe = false;

よく使うMCを一度定義した変数に格納して使い回すといいよ
454Now_loading...774KB:2008/05/13(火) 01:13:34 ID:d51DpaPF
>>453
上手くいきました!
どうもありがとう m( _ )m
455Now_loading...774KB:2008/05/13(火) 13:53:26 ID:6sWUXTyJ
AS3.0で
SWF内にJavaScriptを読み込むのはどうすればいいんですか?
というか、Flash内にブログパーツを貼り付けたい。

var myText:String = "<a href ='http://www.konami.jp/gs/kojima_pro/mgs4bp/blogparts.js'></a>";
myTextBox.htmlText = myText;
これじゃダメみたい。
456Now_loading...774KB:2008/05/13(火) 16:41:27 ID:m+2/xNFj
swfを読み込むだけじゃだめなのか・・・・?

flashの中でjsは読み込めない
457Now_loading...774KB:2008/05/13(火) 17:20:21 ID:6sWUXTyJ
>>456
なんとかjs読ませるいい方法ないですかね?
458Now_loading...774KB:2008/05/13(火) 17:23:10 ID:m+2/xNFj
外部のjsなら呼べる
459Now_loading...774KB:2008/05/13(火) 18:13:19 ID:6sWUXTyJ
>>458
じゃあ、このメタルギアのパーツを呼ぶことも可能?
http://www.konami.jp/gs/kojima_pro/mgs4bp/blogparts.js
460Now_loading...774KB:2008/05/13(火) 18:25:48 ID:m+2/xNFj
flash内からそのjsを操作してhtmlのどこかにそのブログパーツを表示させることは可能
中身あんまり見てないけどw

ていうかコナミじゃん・・・・著作権とかは大丈夫なの?
461Now_loading...774KB:2008/05/13(火) 18:35:33 ID:llYpiwzY
コナミはネズミーの次にヤバイ
著作権的にね
462Now_loading...774KB:2008/05/13(火) 21:02:02 ID:76VpDCLL
□□□□□□□□
□□□□□□□□
□□□□□□□□
□□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□□

flashでテキストボックスをこのような形にしたいです。
が、無理ですよね…。

□□□□□□□□
□□□□□□□□
□□□□□□□□

□□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□□
□□□□□□□□□□□□□□□□

なので、こんな二つのテキストボックスにしようと思ってます。
で、文字が三列きたら下のテキストボックスに入っていくという方法にしたいです。
色々考えたのですが問題が。

・macとwindowでleadingの間隔が違う。
・フォントの幅によって入る文字数が違ってくるので文字数では無理。

htmlだと文字の回りこみが簡単にできるんですがflashだとどうすればいいのでしょうか?
すいませんがお願いします。
463Now_loading...774KB:2008/05/13(火) 21:23:38 ID:zme4hpRh
>>462
htmlTextじゃ駄目なの?
464Now_loading...774KB:2008/05/13(火) 21:45:53 ID:76VpDCLL
htmlTextでスタイルシート使ってfloatとか使っても反映されないのですが
どう使用すればいいのでしょうか?
いくつか試してみましたがどうにも上手くいきません。
465Now_loading...774KB:2008/05/13(火) 22:31:51 ID:wf7Y2QLQ
>>443
クラスを使うことがオブジェクト指向ではない。
ムービークリップを作って使いまわすのもオブジェクト指向。
466Now_loading...774KB:2008/05/13(火) 23:49:37 ID:aI45FXsl
>>465
ムービークリップってクラスじゃね?
467Now_loading...774KB:2008/05/14(水) 08:42:26 ID:0vTUlMyd
>>465
OOPの真髄はメッセージパッシングですよねわかります!
468Now_loading...774KB:2008/05/14(水) 15:23:48 ID:vjXByruq
flash8を使ってるんですが、マクロ機能はあるのでしょうか?
469Now_loading...774KB:2008/05/14(水) 17:03:12 ID:N2Nq2A2i
ありますよ
470Now_loading...774KB:2008/05/14(水) 17:25:57 ID:vjXByruq
>>469
ありがとうございます。
どうするとマクロ機能を使えるようになるのでしょうか?
471Now_loading...774KB:2008/05/15(木) 11:11:21 ID:WbgF5EAI
As2.0 flash8です

300*300のステージに1500*1500の画像を配置して
D&D、拡大縮小出来るようになっています
完成したのは良いのですが、D&D時、ズーム時の動きが重いので
改良しようと思っています
そこで、画像を16分割ぐらいにし、photo_imgの中に
タイル状に読み込み用MCを16枚並べて
レイヤーの最下層に配置したhittest用のMCにヒットした
読み込み用MCだけがloadMovieにて画像を読み込み、
外れるとunloadMovieにて画像を消去できれば
少しは軽くなるかな?とか思っています。

attach、Removeも考えてみたんですが、ズーム時の座標計算で
挫折しました・・・・orz

サクサク動かす良い考えがあればお教えください
よろしくお願いいたします
472Now_loading...774KB:2008/05/15(木) 12:23:59 ID:fKbJi6uB
>>471
今は_rootの座標とスケールを操作して上手く動いているという認識でいいのかな。

その処理をそのまま活かしたいならポンと置いてる画像をまずMC(ImageMcとする)にして
ImageMCの中に16分割した画像を設置、その時画像を更にMCに内包するかMCにLoadさせる。
(まぁさらにMC16個置くということ)
_root上の表示座標と合うようにImageMcの中のMCを表示・非表示切り替えすれば
今の処理のままいけるんじゃないかな。
473Now_loading...774KB:2008/05/15(木) 13:43:15 ID:0bsMruNf
AS3で正規表現の変換はどうやればよいのだすか?
例えば全角英数を半角英数に変換する場合、Perlだと

$str =~ tr/A-Za-z0-9/A-Za-z0-9/;

なかんじの雰囲気の。
replaceだと出来そうにないんすけど。
474Now_loading...774KB:2008/05/15(木) 14:00:34 ID:/OwAatu0
RegExpクラス
475Now_loading...774KB:2008/05/15(木) 14:20:41 ID:0bsMruNf
       ヽ|/
     / ̄ ̄ ̄`ヽ、
    /         ヽ
   /  \,, ,,/    |
   | (●) (●)|||  |
   |  / ̄⌒ ̄ヽ U.|   ・・・・・・・・ゴクリ。
   |  | .l~ ̄~ヽ |   |
   |U ヽ  ̄~ ̄ ノ   |
   |    ̄ ̄ ̄    |
476Now_loading...774KB:2008/05/15(木) 21:03:07 ID:qepksnGM
FlashPlayer10すごいね。もうPV3Dライブラリも要らなくなるのかな。
デバイスフォントの仕様変更も実にうれしい。

http://weblogs.macromedia.com/akamijo/archives/2008/05/flash_player_10.html
477Now_loading...774KB:2008/05/15(木) 21:14:57 ID:6NgJ7Y/R
>デバイスフォントを埋め込みフォントのように扱う

ようやくって感じだね。
478Now_loading...774KB:2008/05/15(木) 22:03:52 ID:ekMkxAkS
クラスの概念がなかなかしっくりこない…
具体的にどういうときに使うんですかクラスって。
479Now_loading...774KB:2008/05/15(木) 22:38:06 ID:7ltYfhP3
>>478
MovieClipクラスやObjectクラスやStringクラスやArrayクラスやら、
クラスって何?って人でも振る舞いを知っていれば使える。それがクラス
480Now_loading...774KB:2008/05/16(金) 00:27:53 ID:dX8mPgiv
質問させてください。

以下のpackageを作成し、

package {
import flash.display.*;

//図形を表示する
public class ShapeEx extends Sprite {
//コンストラクタ
public function ShapeEx() {
//ラインの追加
var line:Shape=makeLine(0,0,0,40,0xff3333);
line.x=25;
line.y=5;
addChild(line);
 }



そして、同フォルダのflaファイルのタイムラインに以下のように記述したところ、
画面には何も表示されませんでした。。。


var test:ShapeEx = new ShapeEx();


何がいけないのでしょうか??
flash職人3日目で挫折しそうです。。

481Now_loading...774KB:2008/05/16(金) 00:34:18 ID:MPACjWP7
>>480
var test:ShapeEx = new ShapeEx();
addChild(test);

その記述だとtestを作った後「testがどこに表示されるか」を指定していないことになるよ
482Now_loading...774KB:2008/05/16(金) 01:43:14 ID:dX8mPgiv
>>481さん

できました!
ありがとうございました!!感謝



483Now_loading...774KB:2008/05/16(金) 12:22:41 ID:owzYt6Ud
as3.0で、クラス中のLoaderインスタンスを作り、Event.COMPLETE等のイベントを設定しているfunctionで
for(var i:int=0; i<10; i++) {
var loaderSprite:Sprite = new Sprite();
var loader:Loader = new Loader();
loaderSprite.addChild(loader);
loaderSpriteArray[i] = loaderSprite;
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaded);
こんな風に設定していて、別のfunctionの所でloaderSpriteArrayからloader.loadを設定する方法はあるのでしょうか?

loaderSpriteArr[i].loader.load(url);
試しにこう呼び出してみると
「TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。」
というエラーが出てしまいます

loaderArray[i] = loader;みたくloader用の配列を新しく作って
loaderArray[i].load(url); と直接設定するしか方法は無いでしょうか
484Now_loading...774KB:2008/05/16(金) 14:01:31 ID:8mlcF6b3
>>483
表示リストとして保持してるのだから
getChildAt(0)かname設定してgetChildByNameで
参照するんじゃね
485Now_loading...774KB:2008/05/16(金) 14:10:42 ID:JNP26AdV
loaderをわざわざSpriteの中に入れてるのは、何か意味があるの?
486Now_loading...774KB:2008/05/16(金) 16:38:09 ID:owzYt6Ud
>>484
ありがとうございます、今までこういった処理は大量に配列作ってやってました
勉強になりました

>>485
papervision3Dで処理していて、Cube等にロードした画像を貼り付ける場合にspriteとかが必要らしいのでこうしてます
487Now_loading...774KB:2008/05/16(金) 16:59:34 ID:NmnkRkbW
誰かぼすけてください
フラッシュ8なんですけど、FLVPlaybackはじめて使ってみたんですが
ローカル環境ではうまく動くのですが、サーバーにアップすると
なにも表示されなくなってしまいます
多分スキンが・・・と思い、カスタムスキンURLから。として
アドレスを入れてみましたがそれでも表示されません。

どうしたらいいのか・・困ってます
よろしくお願いします
488Now_loading...774KB:2008/05/17(土) 11:13:47 ID:j4jwu+ox
flvへのパスがちがうとか、うpして無いとか
489Now_loading...774KB:2008/05/17(土) 11:30:55 ID:jmQlxg65
どうせ違うドメインのflvパクろうとしてこけてんだろ
490487:2008/05/17(土) 15:31:09 ID:losFwAb5
>>488
ローカル環境のフォルダ構造を鯖と同じ状態にしてあり
SWFplayerとかだと正常にコンポーネントが表示されます
また、外部jpgやswfも正常にで、コンポーネント使用前に
使っていたハクヒン氏のページにあるFLVプレイヤー(改
だと鯖からでもFLVも正常に表示できるんですよね
上ではスキンを読み込まれていない?と書きましたが
FLVの1フレ目も表示されないので
コンポーネントのFLVPlayBack自体が表示されていないようです
ローカルだとFLVPlayBackも表示されて、FLVも走るんですけど。。。

>>489
そんなスキルはないっス!
491Now_loading...774KB:2008/05/17(土) 17:40:21 ID:a36AaHJA
教えてくださいませ。

画面をClickしたらインスタンスが生成され、
さらにその生成されたインスタンスをクリックすると、
移動するような処理をしたいのですが、
エラーになってしまいます。

//クリック場所にインスタンスを生成
stage.addEventListener(MouseEvent.MOUSE_DOWN,enCreate);

function enCreate(event:MouseEvent):void{
var en1:en = new en();
en1.x=event.stageX;
en1.y=event.stageY;
addChild(en1);
}
//ここまでのスクリプトはOK

//生成したインスタンスをクリックした時の処理をくわえたい。。
en1.addEventListener(MouseEvent.MOUSE_DOWN,onclick);

function onclick(event:MouseEvent):void{

en1.x += 40;

}

クリックして生み出されるインスタンス en1 が
次のクリック処理で使えないようです。。

訂正お願いできますでしょうか?
492Now_loading...774KB:2008/05/17(土) 18:46:20 ID:jCpzTJTu
君は魔空空間に引きずり込まれていると思う。
493Now_loading...774KB:2008/05/17(土) 20:01:24 ID:a36AaHJA
>>492san

なるほど!魔空空間には気づきませんでした。


494Now_loading...774KB:2008/05/17(土) 21:08:10 ID:MK6S5LPa
>>491
en1というオブジェクトに直接触れるのはenCreate中だけだから
addChild(en1)の前にen1.addEventListenerすれば良いんじゃないかな?
# 私はFlexメインなんでFlashでどうなのかあんまり自信ないんだけど

Flexの世界とFlashの世界がどうつながっているのかわからんよな〜と思う今日この頃
495Now_loading...774KB:2008/05/18(日) 10:03:08 ID:aUobhyKV
>>494
Flaxとfleshではライブラリが違うんじゃなかったっけ?
496Now_loading...774KB:2008/05/18(日) 13:44:44 ID:mqbRlZic
>>491
単にローカル変数にアクセスできてないだけじゃねーのけ?
function onclick(event:MouseEvent):void{
event.currentTarget..x += 40;
}
497Now_loading...774KB:2008/05/18(日) 18:08:29 ID:RDpE1soz
テキストの表示に必要な幅を取得したいです。どのようなこーどになるのでしょうか?
498Now_loading...774KB:2008/05/18(日) 18:10:19 ID:RDpE1soz
497です。環境を書き忘れました。
AS3 Flex3で書いてます
499Now_loading...774KB:2008/05/18(日) 18:13:23 ID:zab4HkEL
例えば1〜9までのランダムに動くMovieClipがあるとして
中央の四角いMovieClipにHitするとアクションを起こさせようとする場合
Howto本とかでは動く方にHitTestを仕込むように
書かれている事が多いですが、これだとonenterflameの回数が
多い気がするので、四角いMovieClipにHitTestを
仕込みたいと思っています
複数のMovieClipとの衝突を判定する場合を考えてみたのですが
なかなか上手くいかないでいます。
どなたかお知恵をお貸しください

ActionScript2.0 Flash8 うぃn です
500Now_loading...774KB:2008/05/18(日) 18:31:26 ID:t6YofLcL
四角いMovieClipで
動くMovieClipの数だけHitTestするだけでいいんじゃ?
501Now_loading...774KB:2008/05/18(日) 19:27:15 ID:cKl5YSpz
for(i = 1; i <= 9; i++){
center_mc.hitTest(mc[i]);
}

こんな感じじゃないかな?
hitTestの使い方は確認してないんで使い方間違ってたらごめんw
502Now_loading...774KB:2008/05/18(日) 19:31:47 ID:+r+r3b+I
まだ始めたばかりなのですっごい初歩的な質問なのかもしれせんが
24時間以上いろいろ試してみましたがわかりません。
どうかよろしくお願いします。

http://www.flashvillage.com/
の最上段中央にあるCUBEのflashで

例えばabout usを開いて画像をクリックしてリンクを
新しいウィンドウで開くにはそのイメージのボタン(ImageButton)に
on (release) {
getURL("http://www.yahoo.co.jp", _blank);
}
を追加すればできるのですがそのとき同時にサウンドをオフにする、
つまり音をボリュームをゼロにして右上のSoundのOnをOffへと表示を
かえるにはどうすればいいのでしょうか。

自分でいろいろ試してみて
on (release) {
getURL("http://www.yahoo.co.jp", _blank);
_root.snd = 0;
_root.Sound_Button.Sound_B_Holder.gotoAndStop(4);
}
と変え音を消すことができましたが
_root.Sound_Button.Sound_B_Holder.gotoAndStop(4);
が間違っているのか右上の表示が変わりません。

ちなみにflash8です。お手数がかかる質問かもしれませんが
どなたかお願いします。
503Now_loading...774KB:2008/05/18(日) 20:20:52 ID:fDsF1S5f
>>502
Sound_B_Holderってのはon/offスイッチのことだよな?
Sound_B_Holderのフレームにtrace(this)でパス確認。
504Now_loading...774KB:2008/05/18(日) 21:04:15 ID:+r+r3b+I
>>503
はいon/offスイッチだと思います。

パス確認をやりましたが
_root.Sound_Button.Sound_B_Holder.gotoAndStop(4);
のパスがやはり間違っているのかリンクを開いても
何も変わりません。

(もしかしたら自分の確認方法が間違ってるかもしれないです。)

505Now_loading...774KB:2008/05/18(日) 21:58:35 ID:bM+mLcxt
>>504
いや、パスってURLの話じゃなくてムービークリップのパス。
Sound_B_Holderがムービークリップならダブルクリックして
フレーム選択してアクションパネルにtrace(this)と記述
プレビュー→出力パネルにlevel0.Sound_Button.Sound_B_Holderと出たら
パスはあってる。違ってたらパスの記述を修正する。

つか>on/offスイッチだと思います。って。。。自分で作ったんじゃないの?

ん?ムービークリップじゃなくてボタンになってるって可能性もある?

>>499
動くMCを連番にして
onClipEvent (enterFrame) {
for (i=1; i<=動くMCの数; i++) {
if (this.hitTest(_root["mc"+i])) {
trace("hit");
}
}
}
506505:2008/05/18(日) 22:39:29 ID:bM+mLcxt
>>504
ごめんそこテンプレサイトか?
ダウンロードして見たけどうちのMX2004じゃ開かんかったわw
507Now_loading...774KB:2008/05/18(日) 22:50:47 ID:AHr+1mGs
>>497
フォントによって変わる。
プロポーショナルフォント(Pゴシックとか)だと
一文字一文字が可変長なのでそのへんまで考慮しなきゃならない。

単に「最低これくらい」程度ならフォントごとに対応した横幅を設定して
MinWidth * StrText.length + LRSpace
明朝一文字の横幅 * 字数 + 左右幅(あってもなくても良い)
高さの考慮もあるからTextFormat.Heightと別の設定値が必要かもね
508Now_loading...774KB:2008/05/19(月) 00:26:56 ID:05fdxyMX
FLASH CS3 PROです。

AS3では
CSVファイルを「●行目の○番目」という形で文字を読み込んで
ダイナミックテキストに表示させたり、
変数として読み込む、といったことは可能でしょうか?

可能か不可能かだけ、教えていただければおKです。
509Now_loading...774KB:2008/05/19(月) 01:18:53 ID:Gt4sEgzV
>>505
説明ありがとうございます。

プレビューでリンクを開いたときに
level0.Sound_Button.Sound_B_Holder
ってでればいいってことまでは
わかっているんですがやはり
_root.Sound_Button.Sound_B_Holder.gotoAndStop(4);
↑のパス以外考えられないのです。

505さん(開けなくて残念ですが)わざわざダウンロードして
調べていただきありがとうございました。

テンプレが古いflashで作られたせいのエラーかもしれないって
自分では思ってます。
どなたか確認お願いします。
510Now_loading...774KB:2008/05/19(月) 01:24:24 ID:ZDVI1gYf
>>491,494,495
>>491のコードでaddEventListenerに失敗するのは、addChildしている
(つまりen1の名前が有効な)スコープの外でaddEventListenerしているため。
おそらく参照エラーで実行されていない。

でも、スコープの中身にaddEventListenerが成功するには、
enクラス(そもそもクラス名の頭が小文字ってのはよろしくないが)が
IEventDispatcherインターフェイスを実装している必要がある。
Spriteのベースインターフェイスにもなっているから、表示されることを
前提としたクラスを継承してenクラスを作っているのなら、addEventListener
を利用できるはず。もしそういう実装になっていないなら、自前で
addEventListenerを実装したりしないで、素直にUIObjectあたりを継承するのが
いいと思う。

Flexに限らずAS3で書いていれば、この部分についてはフレームワークの
違いは出ない。ただし、AS2でイベントの実装方法が異なるMovieClipのようなクラスを
継承させてenクラスを実装しているなら、違いは出る(ハズ)。
511Now_loading...774KB:2008/05/19(月) 02:34:41 ID:0Ps/qI4w
>>509
で、traceしたの?
512Now_loading...774KB:2008/05/19(月) 04:17:30 ID:Gt4sEgzV
509です。

自分がアクセスしようとしていたのはインスタンス名ではなく
シンボル名だいうことがわかり、またtraceで正しいパスが
わかってやっと解決することができました。

503さん、505さん、511さん
皆様ほんとうにありがとうございました!!

513Now_loading...774KB:2008/05/19(月) 17:43:48 ID:wOA25bOs
ちょっと不思議に思ったことがあるので質問しにきました

Stringクラスのメソッドの
slice と substr と substring の違いって何なんでしょうか?
514Now_loading...774KB:2008/05/19(月) 18:44:37 ID:QkIojwmx
>>513
livedocs.adobe.com/flash/9.0_jp/main/00000084.html
に詳しく書いてあるよ
515Now_loading...774KB:2008/05/19(月) 20:15:13 ID:qxPnXWW8
質問なのですが、
btnをonReleaseしたら、enterframeでmcが動き出す。
というのはどうすれば良いのでしょうか。(ルー語みたいだな…)
軽くする為にできればonReleaseする前はenterframeで読ませたくないのですが。
516Now_loading...774KB:2008/05/19(月) 20:32:27 ID:UIGEWmPV
>>515
btnをonReleaseしたら、mcにアクションを起こさせることはできますか?
たとえば、onReleaseで、mcがフレーム5に移動する場合はどう書く?
まずはここから。
517Now_loading...774KB:2008/05/19(月) 20:52:49 ID:qxPnXWW8
>>516
済みません。説明不足でした。
大きな絵を矢印をクリックしたら滑らかに移動する動きを1フレームで収めたいのです。
(フレームを使ってトゥイーンさせるのではなく。)
でもenterframeでずっとボタンを押した押さないを判定していると重くなりそうなので、
右ボタンを押したら、初めてenterframeで計算開始みたいなのを作りたいのです。
518Now_loading...774KB:2008/05/19(月) 21:12:31 ID:UIGEWmPV
>>517
いや、わかるけど、ボタンを押したらMCにアクションを起こさせるってこと自体が
まずできるのかできないのかってこと。
それができるなら、ヘルプでMovieClipのとこ読むと
onEnterFrameについて解説してあるんで応用できると思うよ。
519Now_loading...774KB:2008/05/19(月) 21:36:42 ID:qxPnXWW8
>>518
>ボタンを押したらMCにアクションを起こさせるってこと自体が まずできるのかできないのか

一応初歩的なアクションはできます。
ありがとうございます。調べてみます。
520Now_loading...774KB:2008/05/19(月) 22:43:30 ID:qxPnXWW8
~~_btn.onRelease = function() {
~~_mc.onEnterFrame = function() {~~
}
}
みたいに入れ子にしたけど駄目でした…
521Now_loading...774KB:2008/05/19(月) 22:58:15 ID:qxPnXWW8
いじり倒しているうちになんとか動きはじめました。
お騒がせ致しました。
522521:2008/05/20(火) 00:14:46 ID:z8W/4dT6
すみません。何度もしつこいようですが、やっぱり駄目でした。

ボタンを押したら指定のmcがエンターフレームで動き出す、のを1フレームでやるにはどうすれば…
523Now_loading...774KB:2008/05/20(火) 00:54:02 ID:XyZtsPZs
>>522
>>520のどこがダメだったの?
524Now_loading...774KB:2008/05/20(火) 12:42:38 ID:8nXm1XQP
>>522
発想が違うと思うけど、よく使う手として、シンボルのキーフレームを使ってMCの状態(動き)を
分けるというのが簡単で良いよ。
まず、動かしたいMCのシンボル編集画面から
1フレーム目のは、MCが止まった状態
2フレーム目には、this.onEnterFrame = funtion(){ .. }とやって、動いた状態。
上には必ず、this.stop();の一文を各キーフレーム入れて勝手にキーフレームが動かないようにしておく

外部のボタンから上で設定したMCのインスタンスに指定キーフレームへ飛べとやってやる

EX) ボタンのスクリプト 
btn.onRelease = function(){
_root.hoge_mc.gotoAndPlay(2); //hoge_mcが動く
}
525521:2008/05/20(火) 20:11:37 ID:z8W/4dT6
日をまたいで騒いでしまってすみません。

>>523
その後、そのフレームが再生されると
ボタンを押していないにもかかわらず、mcがエンターフレームで動き続ける
ようになっていました。フラグ等で制御しないといけないんだと思います。

>>524
ありがとうございます。
スクリプトをいじってみます。
526Now_loading...774KB:2008/05/21(水) 14:27:51 ID:I5xG8ZIg
失礼します。

リンクの関係なのですが
HTML上に配置したFlashからインラインフレームの中身が入れ替わるように
HTMLデータを呼び出したいのですが、どうしてもblankしてしまします。
記述しているASは
on (release) {
getURL("01.html", "iframe");
}
で、HTMLのインラインの部分にはname="iframe"としています。
参考にしているのはver5用に作成されたflaデータなのですが
ver8でも問題なく動作するでしょうか?
現在どうしてもインライン内部でなくblankしてしまい悩んでいます。
可否で結構ですので、ご回答宜しくお願いいたします。
527Now_loading...774KB:2008/05/21(水) 15:10:49 ID:QokfyGTq
AS3です。
そのswfが親ムービーに読み込まれて再生されているのか
読み込まれずに単体で再生されているのかを判別するにはどうしたらよいでしょうか?
528Now_loading...774KB:2008/05/21(水) 16:02:08 ID:ukrI9FgE
>>526
動作が良く分からんけど、
その処理がJavaScriptで可能ならASからExternalInterface経由でJavaScript呼び出せばいいんじゃね?

>>527
rootがthisと等しいかどうかを判定すればいんじゃね?
529Now_loading...774KB:2008/05/21(水) 19:38:42 ID:/aAbRnnl
ローディング画面をAS2で作ろうと思います。
1, 2, 3,...9までの数字を自分で作った画像に置き換えたいのですがどうやればいいでしょう??
530Now_loading...774KB:2008/05/21(水) 20:27:18 ID:XjrZHll+
>>529
置き換えたい、ってもともとはどう作ったんだよ!
数字を画像で表現することはできるの?
たとえば、5の時は画像の5を表示する。10の時は、1と0を表示する。
タイムライン派なら数字のMCつくってgotoAndStop()
そうじゃないなら数字のMCをattachMovie()かね。

それ以上はもっと具体的につまってるとこ書いてくれんと答えづらいです。
531Now_loading...774KB:2008/05/21(水) 21:01:04 ID:osqph117
>>528
ありがとうございます。
そちらでチャレンジしてみます。
532Now_loading...774KB:2008/05/21(水) 21:34:38 ID:/aAbRnnl
>>526

すいません^^;

ベースは下記のスクリプトで行こうと思ってます。

//For Loading
sw = Stage.width;
onEnterFrame = function() {
loaded = _root.getBytesLoaded();
total = _root.getBytesTotal();
percentage = Math.round(loaded / total * 100);
process = Math.round(loaded / total * sw);
this.statusTex.text = percentage + "%";
this.progressBar._width += (process - this.progressBar._width)/5;
if (this.progressBar._width >= sw - 1){
this.circle.stop();
this.loadTex.stop();
gotoAndStop(2);
}
}

現状%はテキスト表示でやっていました。
自分のイメージでは1の時は1の数字のMCを表示、みたいな感じです。

ちなみにローディングバーってどんなに重いファイルにしても、鯖にあげないと挙動が確認できないものですか?
上記のコードでローカルでパブリッシュして確認しようとするといつも100%なんです。。。
533Now_loading...774KB:2008/05/21(水) 21:35:44 ID:/aAbRnnl
532です。

上のカキコは530に向けてのレスです。。
534Now_loading...774KB:2008/05/22(木) 01:47:26 ID:6ideHepN
>>526
<Flash側>
on (release) {
getURL("http://www.google.ne.jp", "iframe");
}

<HTML側>
<object classid=" … swfを貼るタグ略 … </object>
<iframe name="iframe" src="http://www.yahoo.co.jp" height=300 width=300>
</iframe>

Flash7ではこれできる。8でも同じだと思うけど。
535Now_loading...774KB:2008/05/22(木) 01:47:53 ID:6ideHepN
>>532
>鯖にあげないと挙動が確認できないものですか?
ローカルではダウンロードする必要がないから確認できない
ダウンロードのシミュレートってのをやれば確認できる

>自分で作った画像に置き換えたい
MCにしてgotoAndStopとかattachMovieとか色々方法はある
536Now_loading...774KB:2008/05/22(木) 18:48:02 ID:bkoQLUeD
Flash 8 proで制作しているのですが質問させてください。

HTMLで言う参照ボタン
<input type="file">

これはflashでどうすれば起動できるのでしょうか?
検索してみるも検索ワードが悪いのかかかりません。
537Now_loading...774KB:2008/05/22(木) 19:49:44 ID:Bfq+XfuE
AS3でmidiを扱う方法ありませんか?
特定の音(ドレミ)を鳴らすような処理をしたいのですが・・。
538Now_loading...774KB:2008/05/22(木) 21:18:01 ID:Om9gpi96
>>536
起動?
539Now_loading...774KB:2008/05/22(木) 22:47:08 ID:SFAqFA3o
糞スレになってきたなw
540Now_loading...774KB:2008/05/23(金) 10:09:05 ID:JFXG+k3e
サーセン
541Now_loading...774KB:2008/05/23(金) 12:28:17 ID:hFkng13U
542Now_loading...774KB:2008/05/23(金) 12:40:13 ID:n0bQ6s+C
>>541
おおおおおおおおお!
いくら探しても見つからなかったので本当に嬉しいです。ありがとうございます。
543Now_loading...774KB:2008/05/23(金) 19:43:20 ID:ZroffGxN
FlashCS3上でFlashPlayer8向けのムービーを作っています。

クラス内でボタンイベントを記述する場合、
どのボタンが押されたのかはどのように取得したらいいでしょうか。

== フレームスクリプトとして書く場合
hoe_mc.onRelease = press;
function press(){
 trace(this._name); // 呼び出したボタンがわかる
}

== クラス内に書く場合1
hoe_mc.onRelease = press;
function press(){
 trace(this._name); // ボタンはわかるが、クラスインスタンス内のメンバにはアクセスできない
}

== クラス内に書く場合2
hoe_mc.onRelease = Delegate.create( this, press ); // クラス内の変数にアクセスするため Delegateを使用
function press(){
 trace(this._name); // this はクラスインスタンスを示すのでエラーになる
}
544Now_loading...774KB:2008/05/23(金) 21:56:44 ID:qCt9C6lB
FlashRC5で、フライトシミュレータを作ります。
迅速にコントロールするにはイベントを効率よく動かしました。
しかし不幸にも動作できません。
お願いします
545Now_loading...774KB:2008/05/23(金) 22:02:49 ID:qQU0CiWy
なんだ?中国人でも来てるのか?
二度と来ないようおまじない貼っとくか。

天安門事件(四五天安門事件、六四天安門事件) 、法輪功、反共産主義
民主政治、台湾問題 (台湾独立、中華民国総統選挙)、Taiwan
Tibet、チベット独立(チベット動乱、ダライ・ラマ)、密輸(走私)
多党制、専制、激流中国、中国共産党、文化大革命、毛沢東、
ポルノグラフィ(色情) 六合彩、ギャンブル(賭博)
546Now_loading...774KB:2008/05/23(金) 23:09:20 ID:tlmuxu0I
気持ち悪い
547Now_loading...774KB:2008/05/24(土) 04:06:47 ID:Yg4rAIP6
wwwwwwwwwwwwwwwwwww
548Now_loading...774KB:2008/05/24(土) 16:18:58 ID:EfO3NfFL
Flashdevelop+CS3でAIRの開発を行っているのですが
FlashdevelopでCtrl+ENTERするとCS3でパブリッシュ+プレビューになります。
で質問ですが
このプレビューをデバッグモードで起動したいのですがFlashdevelopのどこをいじれば
よいのでしょうか?

よろしくお願いします。
549Now_loading...774KB:2008/05/24(土) 18:46:01 ID:rwVwXgX/
>>548

プロジェクトをIDEプロジェクトにしてるんじゃない?
550Now_loading...774KB:2008/05/25(日) 02:53:59 ID:kZYb2ARV
win9x、AS1です。
ボタンの作成の仕方を教えてください。
以下はぐぐって見つけたものですが、何も起こりません。

b = new Button();
b.label = "hoge";
addChild(b);

似たようなので、普通の文字の表示はうまくできました。

createTextField("test", 0, 50, 0, 200, 20);
test.text = "aiueo!";
551Now_loading...774KB:2008/05/25(日) 12:44:17 ID:eTP35ilJ
>>550
b = new Button();
b.label = "hoge";
addChild(b);

これはAS3用だからAS1じゃ動かないよ


すまんがAS1はわからん
552550:2008/05/25(日) 14:04:56 ID:kZYb2ARV
>>551
了解しました。ありがとうございました。

似たので、onMouseDown = function(){};というのを見つけ、
マウスのボタン押しと位置をチェックできるので、
これで代用したいと思います。
553Now_loading...774KB:2008/05/26(月) 12:29:51 ID:JhL3C77W
http://www.flashiroha.com/script/as8.html
ここの「文字(テキスト)のマウストレイル」の所なのですが、
flameにスクリプトを書くので、書いたっきりムービーが終わるまでずっと表示されてしまいます。
これを指定した部分で止めたい(例えば100〜400フレーム内だけでこのスクリプトを使いたい)場合は、
どのようなスクリプトを使ってストップさせればいいのでしょうか?
無知で申し訳ありませんがよろしくお願いします。
554Now_loading...774KB:2008/05/26(月) 20:20:47 ID:YKX8P2hr
>>553
まず二行目で配列を用意する
var arrMc = new Array($str.length);
mc = _root.createEmptyMovieClip("tf_mc"+i, i);
三行目のこの処理でMCを作成しているのでその下に
arrMc[i] = mc;
という処理を作成して配列に登録しておく。

そして消したいタイミング(400かな)にキーフレームを挿入して
for( i = 0; i < arrMc.length; i++ )
{
removeMovieClip( arrMc[i] );
}
と、記述する。
ちなみにサイトの処理は100フレーム目にキーフレームを作成してそこに書く
こうすればやりたい事になるんじゃないかと
555Now_loading...774KB:2008/05/27(火) 12:23:57 ID:V4zvOHEX
as3です。ボタンを押したときに_root(AS2でいうとこの)にあるmcAとmcBをvisibleに
したいのですが教えてください。このボタンをクラスにしたいです。
package{
//インポート省略
class Visiblebtn{
function Visiblebtn(
this.addEventListener(Event.MouseEvent.CLICK,clickfunc){}

function clickfunc(e:MouseEvent):void{
_root.mcA.visible=false
_root.mcB.visible=false ←この辺が分からないです。
//MovieClip(root).mcA.visible=falseと書いたときはmcAをこのクラスが知ってることになり
書き方がダメっぽいと思うのです
}
}
}
556Now_loading...774KB:2008/05/27(火) 13:00:41 ID:cEwcN3n8
>>555
2.0みたいに処理したいならこんなかな?

function clickfunc(e:MouseEvent):void{
var _root:DisplayObjectContainer = root as DisplayObjectContainer;
_root.getChildByName("mcA").visible=false;
_root.getChildByName("mcB").visible=false;
}

でもroot上の何かをどうにかする処理だったら、rootに書く(ドキュメントクラス作って、それに書く)
方が分かりやすいかもしらんね。
557Now_loading...774KB:2008/05/27(火) 14:11:10 ID:jMEWR1cq
package{
  //インポート省略
  class Visiblebtn{
    function Visiblebtn(btn:Array){
      addEventListener(Event.MouseEvent.CLICK,clickfunc);

      function clickfunc(e:MouseEvent):void{
      

    }
  }
}
558Now_loading...774KB:2008/05/27(火) 14:16:37 ID:jMEWR1cq
ごめん途中送信してしまったw

package{
  //インポート省略
  class Visiblebtn{
    function Visiblebtn(btn:Array){
      addEventListener(Event.MouseEvent.CLICK,clickfunc);

      function clickfunc(e:MouseEvent):void{
        for(var i:int; i < btn.length; i++){
          btn[i].visible = !btn[i].visible;
        }
      }
    }
  }
}

操作したいボタンを配列にして引数に渡すってのはどうかな
これならstage以外でもどんなボタンでもいいから応用利くんじゃないかな

余計だけどクリックするたびに可視、不可視と切り替わるようにしてみたw
559Now_loading...774KB:2008/05/27(火) 14:30:02 ID:dpw/ASsV
レベルの低い質問ですみません……。現在鳴らしているmp3が最後まで鳴り終わったらgotoAndPlayなどの処理がしたいのですが、音楽が鳴り終わったかどうか調べる関数や記述方法はありますか?ちなみにSWF7です。分かる方がいたらお願いします。
560Now_loading...774KB:2008/05/27(火) 14:34:53 ID:0K0B9Y+G
yourfilehost.comのflvをflashで読み込むことって可能なんでしょうか?
セキュリティーサンドボックス侵害になってしまうのでしょうか。
561Now_loading...774KB:2008/05/27(火) 14:44:41 ID:ZkD0Zqoq
>>559
あるよ
ヘルプでSoundクラスのイベントのとこ見ると載ってる
562Now_loading...774KB:2008/05/27(火) 14:57:44 ID:SFI5YfZS
JW FLV Media Player 3.16
http://www.jeroenwijering.com/?item=JW_FLV_Player

これを使ってRSSでプレイリストを作ってFLVを読み込んでるんですが
読み込むURLをFLVではなくニコニコ動画などのように「file=〜」
のようなテキストファイルを読み込んで
そこからFLVを読み込みたいと思っております

具体的にはvideo.phpというの作って「video.php?no=○○」で
動画NoのFLVファイルのURLが「video=http%3A%2F%2Fexample.com%2Ftest.flv」
というURLEncodeされた形で出るようにしましたのでそれを読み込み
videoのURLを読み込みたいのです

色々調べてみてLoadVarsというのを使うことは分かったのですが、
使い方と挿入場所が分かりません。
563Now_loading...774KB:2008/05/27(火) 15:00:06 ID:SFI5YfZS
プレイリストを読み込むタイミングで読み込むと一度に多くのテキストファイルを
読み込んでしまうと思い、再生するタイミングでLoadVarsを使おうと思ってます

試してみたのは「FLVModel.as」の107行目の
currentURL = feeder.feed[currentItem]["file"];


if (feeder.feed[currentItem]["file"].indexOf('video.php') > -1) {
var flvVars = new LoadVars();
flvVars.load("http://example.com/"+ feeder.feed[currentItem]["file"]);
flvVars.onLoad = function() {
currentURL = flvVars.video;
};
} else {
currentURL = feeder.feed[currentItem]["file"];
}

に置き換えたのですが上手く行きません
どなたかご教示願います。
564Now_loading...774KB:2008/05/27(火) 15:11:01 ID:dpw/ASsV
>>561
ありがとうございます。早速調べてみたいと思います。
565Now_loading...774KB:2008/05/27(火) 15:22:25 ID:0K0B9Y+G
>>563
便乗ですいません。
JW FLV Media Player 3.16 で、外部ドメインのflvを読むことってできるのですか?
クロスドメインなので無理っぽいことがわかったのですが、できているサイトもあります。
できれば読み込む方法を教えてくださいませんか?
よろしくお願いします。
566Now_loading...774KB:2008/05/27(火) 15:34:50 ID:SFI5YfZS
embedタグで貼る場合はflashvarsの属性を
「file=http〜」と普通に絶対パスを指定すれば出来るはずです

Setup Wizardを参考にしてみてください
http://www.jeroenwijering.com/?page=wizard
567Now_loading...774KB:2008/05/27(火) 15:46:34 ID:0K0B9Y+G
yourfilehostのflvのように引数付きでも可能でしょうか?
http〜***.flv?a=000&b=0000みたいな感じなのです。
568Now_loading...774KB:2008/05/27(火) 16:22:53 ID:SFI5YfZS
urlencodeすれば見れるんじゃないですか?
VID-DLでFLVのアドレス調べてプレイリストにそのまま記述したら見れましたよ

でもアドレスにあるグリニッジ時間が過ぎたら見れなくなるのでは?
アドレスから推測するに最長で1時間1分で有効期限が切れると思うのですが
まー方法は色々あると思いますが、そもそもYourfilehostはembedタグを公開してないし
外部からファイルの読み込みを許可してないのでは?
しょっちゅう仕様変更してそういうのの対策もとってるし

それより>>562-563の私の質問のお答えを誰かお願いします
569Now_loading...774KB:2008/05/27(火) 20:27:48 ID:jYq1nEFT
URLエンコードなしで、http://www.jeroenwijering.com/?page=wizard
のsingleFLVのfileに貼り付けてみましたが、ずっとロードしたままの状態から動きません。

http://cdnl3.yourfilehost.com/unit1/flash8/49/49674c3630c1d709040209f3f044485b.flv?vf=20080527105900&vu=20080527120000&h=0de0f34d5a7b2c88471a7

貼り付けたURLは上です。
何が間違っているのか教えてください。
URLエンコードもしてみましたがなぜかうまくいきませんでした。
.flv以下だけurlエンコードも試してみました…。
スペルミスだったんでしょうか?
お願いします。
570Now_loading...774KB:2008/05/27(火) 23:52:20 ID:IkqywILu
>>558
ありがとうございます!
571Now_loading...774KB:2008/05/28(水) 01:12:59 ID:78tht+5w
as3で作ったswfに
as2で作ったswfをloadした場合、
問題なく動くのでしょうか?
572Now_loading...774KB:2008/05/28(水) 09:06:35 ID:h2imcz0r
下記ソースで画像を横方向に動かしているのですが、
動かしている画像がぶれるというか。。少しギクシャクします。
滑らかに横スクロールさせるにはどうすれば良いでしょうか?

mc.onEnterFrame = function ( ) {
this._x -= 1;
if ( this._x <= -1000 ) this._x += 1000;
}
573Now_loading...774KB:2008/05/29(木) 00:12:43 ID:GfvM29ya
>>572
mcの移動する前の元の座標xは整数値なのか
・最終的に画面に描画する際はピクセル単位なので
 座標に小数点を含む(0.5,etc..)と小数部分は描画時に補完されるが
 一定ではないので移動ごとに描画補完の塗りが変わる可能性がある

mcに大きいビットマップを使用して無いか
・描画処理にパワーがいるので処理落ち

そのmc以外に負荷のかかる描画処理をさせてないか
・単に処理落ちの可能性

フレームレートが低いだけではないか
・まあそれだとギクシャクとは言わんな。
574Now_loading...774KB:2008/05/29(木) 09:34:40 ID:uWQQ+FWh
>>571
動かない
575Now_loading...774KB:2008/05/29(木) 16:08:26 ID:O9kAzP9q
winXP As2.0で作っています
_root上に置いたアニメーションするmcの再生ヘッドのフレーム数を
表示させたいのですが今のところ、_rootのフレームで
var FrameCnt:Number = 0;で変数宣言して、mcの各タイムラインフレーム
でFrameCnt = 1; 〜 FrameCnt = 30; と変数を取得させて
TextBoxにて表示させています。
mcの逆再生、任意での飛び越し再生もあり、計算的に難しいので
各フレームにて代入させるようにしているのですが、
mcの再生ヘッドのフレーム数を取得できる良い方法はありますでしょうか?

よろしくお願いします
576Now_loading...774KB:2008/05/29(木) 17:07:48 ID:a7RfxTsU
>>575
mc._currentframe
577Now_loading...774KB:2008/05/29(木) 17:15:15 ID:O9kAzP9q
>>576
ありがとうございます!
自分でも調べてみて
mcに
onClipEvent (enterFrame) {
_root.FrameCnt = mc._currentframe;
}
と書く事で取得できる事がわかりました。
ひたすらコピペでナンバを入れていた自分がバカみたいです orz
578Now_loading...774KB:2008/05/30(金) 11:32:40 ID:85jjMrMg
AS3です。
ベーシック認証のかかったサーバーにあるjpgをloadして表示したいのですが、
どのようにしてFlashから認証をすればよいでしょうか?
579Now_loading...774KB:2008/05/30(金) 17:16:33 ID:TsTWdufV
Flash CS3 OSX 10.5.3 AS2.0

■コンポーネントのプロパティがスクリプトから変更できません…

swfと同一フォルダにflvをMediaDisplayクラス、MediaControllerクラスを使用して表示したい。
読み込むflvはflashVarsでswfに渡して読み込ませようとしました。

下記のページを参考にというか、丸々コピって練習してみてます。
ttp://www.project-nya.jp/modules/weblog/details.php?blog_id=805

コンポーネント配置の部分で、
>MediaDisplayコンポーネント(インスタンス名: flvDisplay)
>MediaControllerコンポーネント(インスタンス名: MediaController) を配置。
という部分は
MediaControllerコンポーネントのインスタンス名がスクリプトに書かれている名前と異なるようなので、スクリプトに合わせて
flvControllerとしました。

参考ページのスクリプトでは
flvController.controllerPolicy = "on";
flvController.backgroundStyle = "none";
flvController.activePlayControl = "play";
とスクリプトでコンポーネントのプロパティを設定しているようですが、
実際作ってみるとコンポーネントインスペクタで設定されている値が優先されてしまいます…

スクリプトからコンポーネントのプロパティを変更するにはほかに何かしないとダメでしょうか?
580Now_loading...774KB:2008/05/30(金) 19:28:29 ID:OX7MRh55
function Hoge():Array {
var ret:Array = new Array("A", "B", "C");

return ret;
}

のように関数内でインスタンスを生成して返値として返すのに問題はありますか?
ありそうなんだけどドキュメント読んでてもそれらしい記述見つからなくて不安です
581Now_loading...774KB:2008/05/30(金) 19:40:16 ID:vs2I30uo
>>580
当たり前すぎてて誰も記述しないと予想
582Now_loading...774KB:2008/05/30(金) 22:32:30 ID:7oA1Tr7g
>>580
C++とかの出身の人なのかな?
ASなら参照持ってるならGC対象にはならないから大丈夫だよ
グローバルメモリ確保した上で参照ポインタを返すようなイメージ
583Now_loading...774KB:2008/05/31(土) 19:16:20 ID:16L9V9Rk
C++だってnewすりゃ基本的にはヒープ上に作られるんだから問題ない
まずいのはローカル変数自体のポインタや参照を返す事
584Now_loading...774KB:2008/05/31(土) 23:46:37 ID:euyaZn9f
>>583
ASのArrayは参照配列だからまさに
<まずいのはローカル変数自体のポインタや参照を返す事
が配列の要素に該当するんじゃね

var ret:Array = new Array(1);
var a:uint = 0;
ret[0] = a;
return ret;

int ret* = new int[1];
int a = 0;
ret[0] = &a;
return ret;

C++うろ覚えなんで間違ってたらすまそ
585580:2008/06/01(日) 02:12:51 ID:B7Ymg3vA
>>581-584
ありがとうございます

インスタンスは参照元が何処にもなくなったときに勝手に削除されるという解釈で良いんでしょうか
586Now_loading...774KB:2008/06/01(日) 02:14:57 ID:z5qBDzWo
>>585
その通り。参照があるうちは勝手に消えないし、参照が無くなれば(そのうち)消える。
587Now_loading...774KB:2008/06/01(日) 09:17:29 ID:EdopscLl
attachMovieで、生成したmc01〜mc10をボタンを押すと
一括してremoveするためにはどう書いたらいいんでしょうか?

As2.0 winです
588Now_loading...774KB:2008/06/01(日) 10:52:54 ID:3VpS6bsu
>>587
空のMC作ってその中にattachで作ってそのMCをremoveするとか
配列に登録しておいてforで回して消すとか
589Now_loading...774KB:2008/06/01(日) 13:58:18 ID:hlKBunjK
誰か教えて下さい。
最近始めたばかりで超初心者です。
基礎すら仕組みがわかってません。

HP制作で、HTMLいじくりまわして作ろうかと思いましたが、FLASHの方が綺麗かと思いまして

モーションなどを入れながら、ムービークリップでシンボルをいくつか作りました。
indexからtopへ移るため、
ムービークリップとアクションスプリプトを利用してロールオーバーボタンを表示させてみました。

それで、ブラウザに合わせ、全画面表示(フィット)させようと思いました。

しかし、パブリッシュした時に
全画面表示をする場合はアクションスプリクト3.0じゃないといけないらしく
ロールオーバーボタン機能を利用したい場合は、アクションスプリクト1.0か2.0でしか動作しないと表示されました。

ボタンも表示したいし、全画面表示もしたいんですが、不可能なのでしょうか?
590sage:2008/06/01(日) 14:00:06 ID:zzkX0+4f
>>587
this.removeMovieClip();とだけ書いた空のMovieClipを
消したいMovieClipと同じ深度にぶつけて消すとか
AS2の頃はよくやってた。
591Now_loading...774KB:2008/06/01(日) 14:00:13 ID:hlKBunjK
on (rollOver) {
gotoAndStop("over");
}
on (press) {
getURL("top.html","_self");
}
on (rollOut) {
gotoAndStop("up");
}


こんな感じです
592Now_loading...774KB:2008/06/01(日) 14:08:31 ID:0XGBriJq
>>589
まあ、なんだ。
> 基礎すら仕組みがわかってません
という人は、Flashサイトなんか作らんほうがいい。まして全画面なんてウザイだけだぞ。
ユーザビリティを考える余裕がないうちは、やめとけ。

AS2.0以下でも3.0でも、同等のことはできるが、それぞれの書き方が違う。
どっちかに統一すればいいだけ。
おまえさんのFlashでは、ボタンに関してはAS1.0の記述、フルスクリーン部分は3.0の
記述なんだろう。
593Now_loading...774KB:2008/06/01(日) 14:35:53 ID:kl0S+Z+S
if (sw==1) {
play();
} else {
prevFrame();
}

こういうスクリプトで
「進む」、「戻る」を再現しているのですが
これを1フレーム進む、戻るではなく、
現在地の前後にあるフレームラベルのところまで進む、戻る、とできないでしょうか?
イメージとしては「nextframeラベル」みたいなスクリプトです。
Directorからの移行で、Directorにはそんな感じのがあったのですが
594Now_loading...774KB:2008/06/01(日) 14:39:21 ID:kl0S+Z+S
書き忘れてましたが、携帯用の2.0です!
595Now_loading...774KB:2008/06/01(日) 15:45:22 ID:0XGBriJq
>>594
フレームラベルを取得することはできんから、
配列にラベル名をいれといて、それぞれフレームと関連づけるとかして
現在フレームから前後のラベルを割り出せる仕組みを自分で作るしかないと思う。
596Now_loading...774KB:2008/06/02(月) 19:16:25 ID:qZsvqY9m
現在、FlashPlayer9.0.115以前の脆弱性を用いるウイルスが猛威を振るっています。
ttp://blogs.adobe.com/psirt/2008/05/more_information_on_recent_fla.html
この脆弱性はFlashPlayer9.0.124では修正されており、影響を受けません。
しかし能動的にバージョンを確認し更新をする閲覧者は少ないのが現状です。

そこでFlashをWebサイトで提供する方へのお願いがあります。
HTMLのobjectタグのcodebase要素をversion=9,0,124,0にしてください。

IEのActiveXコントロールはその仕様としてobjectタグのcodebase要素でバージョンを表記した場合は
バージョンチェックが行われ、閲覧者に対して更新を促すことができます。
ttp://support.adobe.co.jp/faq/faq/qadoc.sv?228711+002

なおembedタグを用いるNetscapeプラグイン(Fx、Safari、Operaなど)にはこのような機構はありません。
597Now_loading...774KB:2008/06/03(火) 21:35:46 ID:30hE4cEl
以下のAS2をAS3で実現するには、どうしたらよいのでしょうか?

for (var i:Number = 0; i<10; i++) {
 var mc:MovieClip = attachMovie("mc", "mc"+i, i);
}

宜しくお願いします。
598Now_loading...774KB:2008/06/03(火) 23:07:39 ID:lrP8J49+
>>597
あ〜、AS3に移る前にAS3の初心者本を買ったら解決します。
たぶん、挫折すると思うけど
599Now_loading...774KB:2008/06/04(水) 09:24:39 ID:FCwzo+Bb
>>597
for( var i:uint = 0; i < 10; i++ ){
var mc1:MovieClip = new mc();
addChild(mc1);
}
「どこに追加するのか」が必要となるので場合に応じて
stage.addChild, pmc.addChildというように追加する親を前に指定する必要がある。
600Now_loading...774KB:2008/06/04(水) 20:36:19 ID:tK0D9Lnn
AS3についての質問です。

大量のオブジェクト(MC)を管理する時に
(a_mc、b_mc、1_mc、2_mcなどアルファベットや数字が混在する場面などで)
オブジェクト名の一部を配列に格納して使用する場面で
forループなどで配列を呼び出してオブジェクト名として使用したいのですが、
どうにもいい方法が思いつきません。

何かいい方法があったら教えていただけたらと思います。
よろしくお願いします。
601Now_loading...774KB:2008/06/04(水) 21:43:00 ID:JjpjqbF/
超初心者です。

actionが作れません。
文字を入れて、それをボタンシンボルにしました。
そのボタンシンボルにアクションを設定しようとしましたが
選択しても
「現在の選択範囲にアクションを割り当てることはできません。」と表示されます。
602597:2008/06/04(水) 23:33:56 ID:Jpm6PBDH
>>599
回答いただき、ありがとうございます。

教えていただきたいのですが、ご提示いただいたスクリプトですと、
インスタンス名はどこで設定するのでしょうか?
603Now_loading...774KB:2008/06/04(水) 23:58:05 ID:K8LBdUk5
>>601
うーむ・・・何か一冊本を立ち読みしてみるといいよ。
とりあえず、ボタンシンボルにせず、
思い切ってムービークリップにするんだ。
604Now_loading...774KB:2008/06/05(木) 00:36:41 ID:UQ+tVO8b
>>601
ターゲットがAS3になってるとかかな。ボタンにスクリプトが書けるのはAS2以前のみ。

>>602
mc1.name="hoge";
とかでできると思うけど、次は「名前でインスタンスにアクセスする方法はどうすればいいですか?」
という質問が来そうだな。MovieClipのリファレンスをちゃんと読んでみて下さい。
605Now_loading...774KB:2008/06/05(木) 08:20:17 ID:ewQ2cA+t
>>603
うーん…考えてみます!

>>604
なってた…、AS3になってた!!
AS2にパブリッシュしたら、アクションできました!

ありがとうございました!!
606Now_loading...774KB:2008/06/05(木) 11:32:05 ID:MLpesAZr
また質問申し訳ないんですが

読み込み率の事です。
100%まで読み込みができることはできるんですが
棒グラフが、中心から読み込まれていくので、バランスが変になります。
右とか左から、棒グラフが上がって行ってくれれば良いんですが
どうして中心から棒グラフが大きくなっていくんでしょうか?
607Now_loading...774KB:2008/06/05(木) 12:00:44 ID:0G52EIAN
>>606
そうなるようにコーディングしてるから
608Now_loading...774KB:2008/06/05(木) 12:14:14 ID:kq7ITap2
おいおいおい、人に聞く前に最低限のことは本とかで勉強しろよ。 今ならネットでも勉強出来るだろ?
609Now_loading...774KB:2008/06/05(木) 12:22:43 ID:UKSekelK
>>606

棒グラフのMCをシンボル化する時に、中心点を図形の真ん中にしていないか?
610Now_loading...774KB:2008/06/05(木) 12:33:48 ID:qUtZgN76
>>606
ローディングバーに使ってるMCを編集したらバーの中心が座標(0,0)になってるでしょ?
中の物を左端によせるか右端に寄せる。そうすればやりたい事になると思うよ。

>>608
気持は分かるけど
>>1
AcitonScriptのことなら
初歩的な質問でもなんでもおk
ってあるのでこのスレじゃこれがルールだと思うよ。

まぁ>>606も初歩的な事なら少し検索すれば
レスより分かりやすい図解付きのサイトはいくらでも出てくるから
ちょっと自分で探してみるのも良いと思うよ。
611Now_loading...774KB:2008/06/05(木) 12:47:26 ID:cPh77x2v
>>609
>>610
すいません…できました。
ど真ん中でした。
612Now_loading...774KB:2008/06/05(木) 12:52:31 ID:NQPSdnqK
そもそも>>606はASの質問じゃないだろ。
613Now_loading...774KB:2008/06/05(木) 13:04:12 ID:GBlcw6zi
教えてチャンか…
スルーに限る。
614Now_loading...774KB:2008/06/05(木) 23:07:21 ID:EgY2lsx0
AS2 + SharedObject 使ってるんだが、なぜか
「SecurityDomain 'ローカルパス/XX.swf' が
Player の UI コンテキストにアクセスを試みました。」
とかいうアラートが出て、SOを書き込む、もしくは呼び出す所で
ハングアップ状態。
止む無くScript実行停止ボタンをポチ・・。
何だよコレ・・・。

外部ソースはSOしかロードしてねーのに
何でSecurityDomainが出てくるんだよ。
ちょっとお手上げ状態。

ちなみにCS3 + OSX10.5.3

OSXのセキュリティが上がったか?

615Now_loading...774KB:2008/06/05(木) 23:39:41 ID:gJy7aYpW
>>600
こういうことかな。。

var a_1:String;
var b_2:String;
var b_b:String;
var hogeArray:Array = [ "a_1" , "b_2" , "b_b" ];
this[ hogeArray[0] ] = "hoge";
this[ hogeArray[1] ] = "hage";
this[ hogeArray[2] ] = "hogehage";
trace("hogeArray[2] : "+ this[ hogeArray[2] ] );
trace("b_b : "+ b_b );

結果
hogeArray[2] : hogehage
b_b : hogehage

ちなみに「2_mc」とかはじめに数字を入れるのはタブーです。
616Now_loading...774KB:2008/06/05(木) 23:44:03 ID:gJy7aYpW
>>614
それって、windowsとかだったらどうなるの?
617Now_loading...774KB:2008/06/06(金) 00:31:07 ID:OMlXinvK
しらん

解決法が見当たらん。
こんな所で半日つぶれた。
そろそろ発狂しそうだぜw
618Now_loading...774KB:2008/06/06(金) 01:15:50 ID:VhiSfCv5
>>614
試してる状況をkwsk。
SOの場所が特殊なことになってるとか。
同じくOSX10.5.3だが、以前2004で作ったものについては問題は起きてない。
CS3でパブリッシュはまだ試してないが、SOを使うだけなら問題ないはず。
619Now_loading...774KB:2008/06/06(金) 01:50:57 ID:OMlXinvK
>>618
サンクス

スクリーン上の設定画面にテキスト入力フィールドが20個あり、
自分の入力したテキストが順番に画面に表示される。
SOの要素は、これらの20個のテキスト(日本語・文字数MAX50)と、
各テキストフィールドの表示する・しないのチェックボタンを設け、
切り換える度に出す値(ブーリアン)を突っ込んでるだけ。

コンテンツ起動時にSOを読みにいく、
また設定画面を閉じる時にSOに書き込み。

SOの場所は SO.getLocal("mySO","/"); というごく普通の場所。
(SO.getLocal("mySO");でもバグ出る)

ローカルで使用するコンテンツなので
allowDomainも糞もありませんw

現象というと、
設定画面を数回いじって閉じる(SOにflush)時にハングアップ。
30秒くらい放っておくと、例のSandbox警告が出る。
その後swf再起動でSOを読みにいくときもハングアップwww
仕方なくSOをクリア。

このループにハマってますw 長文失礼・・。






620Now_loading...774KB:2008/06/06(金) 02:19:41 ID:KPutSlsJ
まぁ林檎だからな
Adobeに連絡しとけよ
621Now_loading...774KB:2008/06/06(金) 02:52:30 ID:VhiSfCv5
>>619
今CS3で作ってるものからプロジェクタ作ってみたが、こっちでは問題ない。
もしかしてアクセス権がおかしくなってるとかいうことはないか?
そもそもそれほど深刻な問題ならもっとあちこちで話題になると思う。
622Now_loading...774KB:2008/06/06(金) 03:34:15 ID:OMlXinvK
>>620
明日もうちょっと調べて構築に問題が無ければadobeにグチるw

>>621
サンクスです。
よくあるアクセス権、直してもダメだった。
明日もう少し中身整理してみる。。


不可解なのが、数日おきに
flaと同層のクラスファイルを
importしなくなるんだよな・・。
そのflaとasが入っているフォルダごと
別のディレクトリに移動すると直るが、
また数日後に・・・w

OSが不調なのかもな・・。
クリーンインスコロールした方が良さげかなww
623Now_loading...774KB:2008/06/06(金) 03:40:38 ID:VhiSfCv5
>>622
クラスファイルの件も、うちでは全く問題ない。
CS3も10.5.3もいたって好調だ。
いろいろと奇妙な話だし、たしかにOSかFlashの初期設定かなにかが調子悪いのかもな。
SOについては、最小構成のFla、たとえば"test"って書き込むだけのもの作ってみてもアウトか?
とにかく解決の糸口が見つかることを祈る。
624Now_loading...774KB:2008/06/06(金) 06:29:41 ID:knbYbbja
ローカルファイルを変更するコードがある場合はセキュリティ的に問題があるから警告が出るようになっても不思議じゃないよな。
もしネット上のswf開いただけでローカルファイルに書き込み出来たら怖いだろ。
625Now_loading...774KB:2008/06/06(金) 06:35:10 ID:knbYbbja
て、全然違うこと書いてたな俺。 とりあえず例外キャッチしてみれば。
626Now_loading...774KB:2008/06/06(金) 12:44:06 ID:JsaJIeQo
swfに外部ファイルを読み込む場合、swfObjectのタグに
so.addParam('base', '.'); と記述することで
SWFファイルの場所をパスの基点として認識させられるはずですが、
AS3でドキュメントクラスを使っていると、それが利きません。
どのような原因が考えられますでしょうか?
627Now_loading...774KB:2008/06/06(金) 12:51:02 ID:EPZQzNWq
そもそもAS3.0のスクリプトに対応してねーんじゃね?
628Now_loading...774KB:2008/06/06(金) 13:11:21 ID:JsaJIeQo
いえ、ドキュメントクラスを使わずに
タイムラインに書いた場合は大丈夫なようです。
629Now_loading...774KB:2008/06/06(金) 14:38:54 ID:LMAPbhsf
そのドキュメントクラスは何を継承してるの?
630Now_loading...774KB:2008/06/06(金) 14:55:11 ID:JsaJIeQo
Sprite ですが、MovieClip にしても同じでした。
631Now_loading...774KB:2008/06/06(金) 14:57:56 ID:LMAPbhsf
よくわからんのだが、swfObjectって何?
addParamってメソッドあるのか?
632Now_loading...774KB:2008/06/06(金) 15:06:27 ID:LMAPbhsf
ああ、JavaScriptのかw
タイムラインに書いた場合に大丈夫とは、どのように書いて大丈夫と
判断したのか?
633Now_loading...774KB:2008/06/06(金) 15:23:02 ID:JsaJIeQo
どのようにと言いますと?
634Now_loading...774KB:2008/06/06(金) 15:52:17 ID:EPZQzNWq
swfObjectを使わないで、普通にパブリッシュしてムービー表示させた場合はどうなのよ?
それでOKなら、swfObject側の問題で、NGなら、ドキュメントクラスの問題だべな。
635Now_loading...774KB:2008/06/08(日) 04:54:49 ID:BRuPo39P
配列やオブジェクト内のデータ一覧を取得方法がみつかりません。
perlならuse Data::Dumper;print Dumper(%hash);
phpならprint nl2br(print_r($arr,1));
な感じのやつです。
636Now_loading...774KB:2008/06/08(日) 07:56:43 ID:jLV7pN9g
配列データならtraceでtoStringよばれるからそのまま見れるし
オブジェクトのプロパティ?一覧ならfor in使うとか
637Now_loading...774KB:2008/06/08(日) 11:30:52 ID:Cmu5sdRb
俺ならlengthとforでがんばる。
638Now_loading...774KB:2008/06/08(日) 11:48:13 ID:zIhedJpv
配列の中身が完璧に同じかチェックする方法はないですか?
例えば
hairetu = [0,1,0,1,0];
なら
if(hairetu == [0,1,0,1,0])で出来るかと思いましたが無理でした。低レベルな質問ですみません……。
639Now_loading...774KB:2008/06/08(日) 12:12:29 ID:E9YEaS2f
>>638
バージョン分からんけど、1次元のそんな配列なら、
toStringメソッドかjoinメソッドで文字列にして比較すればいいんじゃない?

var hairetu = [0,1,0,1,0];
trace(hairetu.toString() == [0,1,0,1,0].toString());
trace(hairetu.join() == [0,1,0,1,0].join());
640Now_loading...774KB:2008/06/08(日) 12:20:20 ID:zIhedJpv
>>639
ありがとうございます。おかげさまでできました。
toStringやjoinなんて知りませんでした……。
641Now_loading...774KB:2008/06/08(日) 14:40:46 ID:8BBq/Oss
AS2です。
flash内のボタンを押すとjavascriptを呼び出し、
現在表示中のページに新たに別のflashを重ねて表示する
(いわゆるフローティング)というのをやりたいのですが、
その別flashでは開かれたと同時にマウスポインタの位置に
mcを表示させたい場合、どのようにしたら良いでしょうか?
どうもマウスを動かすまでは、_xmouse、_ymouse の値が取れないようなのですが…。
642Now_loading...774KB:2008/06/08(日) 19:12:37 ID:01Z2Fs9E
アクションスクリプトでマウスポインタを操作することは出来ますか?
643Now_loading...774KB:2008/06/08(日) 20:51:37 ID:zBgaOOTc
>>641
>flash内のボタンを押すとjavascriptを呼び出し、
このときに座標を取得すればいいんじゃないの?

>どうもマウスを動かすまでは、_xmouse、_ymouse の値が取れないようなのですが
そんなことはないでしょう。
onMouseMoveならそうなるだろうけど、それで問題があるんならonLoadを使うとか
それ以前に取得する方法を取る。
どちらにせよボタンを押したタイミングのマウス座標が欲しいなら
ボタンを押したときに取得する、或いは取得を開始すればいいんじゃないの。

>>642
マウスポインタを消したり、ムービークリップに置き換えたりするのはできるよ。
644641:2008/06/08(日) 22:22:45 ID:iv+KjS5L
>>643
いえ、例えばフローティングflashの1フレーム目に
mc._x = _xmouse;
mc._y = _ymouse; 
と書いたとしても、
mcの位置はマウス座標の位置に来ず、[0,0]の位置に表示されてしまうんです。

また、
this.onEnterFrame=function(){
mc._x = _xmouse; 
mc._y = _ymouse;
}
と書いたとしても、マウスを動かすまではmcは[0,0]の位置のままなんです。
マウス座標はボタンのあるflashでなく、フローティングflashの方で取りたいのですが、
方法はありますでしょうか?
645Now_loading...774KB:2008/06/08(日) 22:49:00 ID:ToQz/tHD
ちがうよ。
mcに書くんだよ
646641:2008/06/08(日) 23:24:58 ID:iv+KjS5L
> mcに書くんだよ

ありがとうございます。
試してみます。
647643:2008/06/09(月) 01:04:18 ID:so9No9ZB
643だけどちょっと勘違いした、フローティングっていうのは別のフラッシュなのか、
見当違いスマソ

>>644
普通にフローティングflashのフレームに
onEnterFrame=function(){
mc._x = _xmouse; 
mc._y = _ymouse;
}
じゃだめなのか?
いわゆるフローティングていうのがピンとこないな
javascriptのストーカーみたいのか?
ごめんわからん俺パス。
648Now_loading...774KB:2008/06/09(月) 02:09:59 ID:lIz4N9TX
外部画像をフラッシュ内にロードはできたのですが、(loadmoveで)
画像を直接ライブラリに入れるやりかたがみつかりませんでした。

画像は各所に表示する感じなので、
ライブラリに格納後、attachで各所に表示したいと考えています。
これをloadmoveで毎回やると処理のたびにチカチカしてユーザビリティが悪いので、
どうか上記の方法教えてほしいです。
649Now_loading...774KB:2008/06/09(月) 08:50:51 ID:nzWyWqNS
>>648
loadしたMCを画面外においといて、使うときにxy移動
複数ならduplicateMovieClipで作るとか
650Now_loading...774KB:2008/06/09(月) 10:11:59 ID:9CVb9gMI
>>644
たぶんそれはLocalConnection使って、フローティング側のムービーから、
呼び出し元の座標を取得しないと無理じゃないかな?
でも、フローティング関係のムービーは、ブラウザによっていろいろイベント関係の処理が
コケるから止めた方がいいと思うよ。趣味ならいいけど。

651Now_loading...774KB:2008/06/09(月) 10:15:53 ID:9CVb9gMI
>>648
バージョンがわからんけど、Flash8以上でかつ、同一ドメインの画像を読み込んで
使い回したいんだったら、一度BitmapDataに読み込んだ画像をdrawして、それをattachBitmapで使い回せばいいよ。
attach(Movie?)というとAS2.0かな?duplicateだと読み込んだ画像まではコピーされないんじゃなかったかな。
652614:2008/06/09(月) 16:22:07 ID:geOoFPHW
>>614,619,622です。亀レス失礼しやす。
週末、OSからクリンインスコロールし、アプリの動作
(同階層のクラスを読まない等)そのものは問題なくなったっぽいが、
今思えばサードパーティのクラスファイル自体にも問題ありかも・・。

コンテンツ本体については、細かく修正・デバッギングしたところ、
for(20回繰り返し){}でSOにflushさせるメソッドが
あちらこちらのMCから一度に実行されてたのがわかった。
(同時タイミングでおそらく数百回・・)
なるほど、Sandbox違反ってのはこの事に関連していたのne。

なんとか解決に至りました。
お相手してくれた方々サンクス。

653Now_loading...774KB:2008/06/09(月) 17:38:58 ID:F0HMkWaH
>>652
SO自体は普通に使えたんだね。
解決オメ&報告乙。
654Now_loading...774KB:2008/06/09(月) 17:57:14 ID:7+kD42rV
環境 WindowsXP Flash8 Basic

(変数 linkno の中身は 0〜7 の間で変化)
スクリプトに
System.useCodepage = true;
this.loadVariables("urls.txt");

var jampurl = "url" + (linkno)

on (release) {
getURL(jampurl);
}

読み込んでいるurls.txtの中身は
&url0=a.html& &url1=b.html& &url2=c.html& &url3=d.html&
&url4=e.html& &url5=f.html& &url6=g.html& &url7=h.html&

linknoが0の場合jampurlがurl0となり、のurls.txtのa.htmlが
代入されると思ったのですが転送先のURLがurl0になってしまう。

linknoの中身によってurls.txtの中から転送先が選択されるように
したいのだが、間違えがあれば教えていただきたい。

655Now_loading...774KB:2008/06/09(月) 18:22:09 ID:SpSXoe9B
jampじゃなくてjumpです
656Now_loading...774KB:2008/06/09(月) 18:23:14 ID:F0HMkWaH
>>654
まず、外部からデータ読み込む場合、読み込み待ちをしてないなら正常に動作しない。
読み込みにはLoadVarsとかXMLとかもっと便利なものがあるのでそっち使う方がいい。
"url" + (linkno)は()いらないし、文字列連結してるだけで、変数参照してない。
文字列でアクセスしたいなら配列アクセス演算子。
なんでもうまくいかない時はtrace()。
657Now_loading...774KB:2008/06/09(月) 19:54:43 ID:7+kD42rV
>>654
配列アクセス演算子とやらを使ってみたが。
var jampurl = [url + linkno]
url0の変数を参照できない・・・
urls.txtはちゃんと読み込んでいるもよう
658Now_loading...774KB:2008/06/09(月) 20:11:40 ID:7+kD42rV
var jampurl = "url" + linkno は文字列に数値を足してるけど
結果は文字列連結しただけなんだよね?
連結させた文字列でアクセスさせるには[]をつければいいのか?

まだ配列アクセス演算子のことがよくわからんので例をだしてくれると
助かるんだが・・・
659Now_loading...774KB:2008/06/09(月) 20:27:27 ID:jr0wkxwY
色々出てるキーワードで検索しないのか?
660Now_loading...774KB:2008/06/09(月) 20:33:57 ID:7+kD42rV
さっきから調べては試してはなんだけど、配列アクセス演算子が理解できない。
661Now_loading...774KB:2008/06/09(月) 21:46:35 ID:WHXcHp7E
>>660
var url0 = "a.html";
trace(this["url"+0]);
662Now_loading...774KB:2008/06/09(月) 22:10:44 ID:SpSXoe9B
態度でかいわりに馬鹿だな。。
663Now_loading...774KB:2008/06/09(月) 22:21:29 ID:LnLfKABD
ActionScript 3.0でスクリプトだけで画面の幅・高さを取得するにはどうすればいいのでしょうか?
664Now_loading...774KB:2008/06/09(月) 22:34:22 ID:7+kD42rV
うーん・・・
var url0 = "a.html";
trace(this["url"+0]);
で a.html が出力されるが。
geturl(this["url"+0]);
だとurl0にジャンプしようとする・・・・
665Now_loading...774KB:2008/06/09(月) 22:37:06 ID:LnLfKABD
すいません、自己解決しました
666648:2008/06/10(火) 03:30:56 ID:Tl/yK7+E
どうもありがとうございました。
flash8です。
今は試せないので、後で試してみます。
667Now_loading...774KB:2008/06/10(火) 22:22:08 ID:sIPfrFD0
天才様達お力添え下さい

FlashとPHPのデータ送受信時にデータ改竄の危険性があるようですが
実際どんな感じで改竄されるのかピンとこないので教えてください。

DBからFlashに読み込んだ値が改竄されて、そのままDBに記録したらえらい事になるので;

ちなみにactionscript3.0では「POST」「Variables」で送受信してます。

■URLVariables
request.method = URLRequestMethod.POST;
request.data = variables;

■URLLoader
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
668Now_loading...774KB:2008/06/10(火) 22:50:00 ID:EgI3EKLR
>>667
flashはオープンソースと同じようにユーザー側がソースをいじれるからflashのActionScriptを自由に書き換えられてしまうよ。
669Now_loading...774KB:2008/06/11(水) 00:35:41 ID:L1EGmnRn
>>668
返答ありがとうございます

他人のサーバー上のフラッシュソースを書き換えるということですか?
それとも他人のサーバー上のフラッシュを落としてソースの書き換えですか?
670Now_loading...774KB:2008/06/11(水) 01:08:07 ID:GDFyhg7o
後者ね。
671Now_loading...774KB:2008/06/12(木) 02:27:49 ID:YlDXLJLA
最近、Flash MXでタイピングゲームを作っている者です。
さっそく質問です。

keyListenerオブジェクトの中で、テキストファイルから文字を読み込んで
問題として使いたいのですが、keyListenerオブジェクト内で
ファイルの読み込みは可能でしょうか?

また、LoadVarsオブジェクトでテキストファイルを読み込んで、その値を
keyListenerオブジェクトの中で使用する事は可能でしょうか?

ご教授お願いします!!
672Now_loading...774KB:2008/06/12(木) 08:41:25 ID:qyA7tGRa
どちらも可能
673Now_loading...774KB:2008/06/12(木) 10:58:40 ID:YlDXLJLA
>>672返答ありがとうございます。

LoadVarsオブジェクトでテキストファイルを読み込んで、その値を
keyListenerオブジェクトの中で使用するためには、
何か特殊な値の受け渡し方法があると思うのですが、
どのようにコーディングすればいいのか分からず、四苦八苦しております。
-----------------------------------------------------
System.useCodepage = true;
var lv_obj = new LoadVars();
lv_obj.onData = function(src) {
//ここで得たsrcの値をキーリスナーで使いたい。
}
lv_obj.load("mondai.txt");
------------------------------------------------------
上記のようにファイルを読み込む事はできるのですが、
オブジェクトの外にsrcのデータを出してあげたいのです。
いい方法はないでしょうか?

お願いします。
674669:2008/06/12(木) 15:14:13 ID:xhnReCfd
>>670

ご返答ありがとうございます
サーバー上の情報を書き換えられないのであれば
phpでDBに格納するさい、パーミッションで書き換えられないと思うのですが浅はかでしょうか?
675Now_loading...774KB:2008/06/12(木) 15:17:38 ID:d1Z4GMNh
CS3でFla7出力AS2.0です

FlashLite1.xでMC内から_rootを全体的に操作する場合に
tellTarget("/"){数十行}って使っていたんだけど、
同じものをPC用に作りたいなと思って調べてたら
まさか同じ挙動をするスクリプトって無かったりしますか?

with(オブジェクト名){}はムービークリップ限定みたいですし…
全部_parentとか_rootつけるしかないんですかね
676Now_loading...774KB:2008/06/12(木) 15:48:09 ID:tX7t25+n
>>674
俺の言いたいことがまったく通じてない様子。

俺が言いたいのはね、Flash上で扱ったDBのデータをPHPで格納するときにね、
悪意のあるコードを含むFlashを使うことでね、改ざん済みのDBデータをPHPに送ることが可能だという意味ね。

Flashに悪意のあるコードを入れることはFlash初心者にでも出来るくらい簡単なのでFlashから受け取ったデータを
ノーチェックでDBに格納するのは危険。 つまりPHP側でデータが改ざんされていないか等のチェックをしたほうがいいよ。

これでも理解出来なかったら君子危うきに近寄らず。
677Now_loading...774KB:2008/06/12(木) 17:18:47 ID:XauDxlZQ
Flash CS3を使用しております。
Flash内でブログのRSS1.0を取得するRSSリーダーを作りたいのですが、
参考書にもあまり乗ってなくつまりました。
件名と更新日だけ表示されるシンプルなやつでいいのですが、
やり方が載ってるようなサイトは無いでしょうか?
678Now_loading...774KB:2008/06/12(木) 17:34:19 ID:pYtuuuaz
RSS仕様にそってXMLればいいんじゃないかな?
679Now_loading...774KB:2008/06/12(木) 17:38:49 ID:rXdG3do6
>>673
onData内で適当に区切って変数に代入すればいんじゃね?
スコープがわかってないってことか?

>>675
変数にパス格納するとか。

そもそも4時代の作法だからなあ。
7用の2.0なら、設計そのものを変えて_rootや_parentを参照することを
避ければいいんと思うんだけど、そんなん面倒だろうし。
680Now_loading...774KB:2008/06/12(木) 18:20:25 ID:d1Z4GMNh
675です

>>679さんの
> _rootや_parentを参照することを避ければいい
という文でピンと来たのが
「MC内の_rootに対するASをfunctionの中に入れて_root上に置いてしまえ」
ということです。traceで調べる限り今の所ちゃんと動いています。
レス頂けなかったらそれすら思いつかなかったです。ありがとうございます

#ほぼLite1.xしかやっていないので5以降はわけわかめすぐる…
681Now_loading...774KB:2008/06/12(木) 19:10:02 ID:xPDhHlnf
環境)OS:WinXP-Pro,Mem=3GB,ソフト:Flash8-Pro(Player7,AS2.0)

attachMovie()の深度について質問です。

_root上に正方形のMC(mc1)があり、この各辺に半分隠れる形で10個の棒型の
MC(bou0〜bou9)を配置したく思っています。

つまり右のような感じです。  ー + ■  →  -■

この場合、正方形MCの深度を0とし、棒型MCの深度をマイナスになるように

for (id=0; id<10; id++) {
newName="bou"+id; //新しいインスタンス名
this.mc1.attachMovie("bou", newName, -id-1); //5番目の深度は-5
}

としましたが、半分隠すことが出来ず、正方形MCの上に現れます。しかし、trace()
では深度は確かにマイナスの値になっています。

どうしたら良いでしょうか? アドバイスを願います。
682Now_loading...774KB:2008/06/12(木) 19:15:11 ID:tX7t25+n
-id っておかしくね。 -1 * id じゃね。
683Now_loading...774KB:2008/06/12(木) 19:54:11 ID:pYtuuuaz
trace( mc1.getDepth() );

そういうことだ
684Now_loading...774KB:2008/06/12(木) 19:56:58 ID:d1Z4GMNh
this.mc1.attachMovie
↑これってmc1の中にbouを入れてる事になりますよね
mc1自体の深度が0でもその中に入れてしまうと
後から作った方が上に来る気がしないでもない…
685Now_loading...774KB:2008/06/12(木) 20:00:41 ID:pYtuuuaz
あぁそっちか。
686Now_loading...774KB:2008/06/12(木) 21:23:50 ID:d1Z4GMNh
自分も深度に関する物を作っているので練習がてら試してみた。

root上に置いたmc1の中にmc2っていう同じく正方形のmcを作成。
mc1の深度を0に指定、mc1.mc2は未設定で深度を測定
mc1は当たり前のように0、そしてmc1.mc2はなんと-16383
こりゃmc1の中に-10程度のattachMovieしても下に行かないわけだ
というわけでmc1.mc2の深度を変更させたら
bouの上だけでなくmc1より上に行ったりして笑ってしまった

でも楽なのはmc1の中じゃなくてroot直のthis.attachMovieの方
自分的にはいい収穫でした。>681も頑張ってくだされ

>>686 暇人乙
687Now_loading...774KB:2008/06/12(木) 21:25:10 ID:VGjBeYvJ
1から5の中からランダムな整数をひとつ取得したい。
ただし、3、4が出る確率は、1、2、5が出る確率の半分にしたい。
この場合、どのようなアルゴリズムが考えられますでしょうか?
688Now_loading...774KB:2008/06/12(木) 21:27:14 ID:tX7t25+n
レイヤーでなんとかなりそうならそっちに逃げたほうが初心者的には分かりやすいかも。
689Now_loading...774KB:2008/06/12(木) 21:37:53 ID:RussBv5+
>>687
var arr = new Array( 1, 2, 3, 4, 5, 1, 2, 5 );
var ran = arr[Math.floor(Math.random() * arr.length)];
690Now_loading...774KB:2008/06/12(木) 22:51:25 ID:VGjBeYvJ
>>689
ありがとうございます。
こんな簡単な方法が思いつかなかったなんて…。
691Now_loading...774KB:2008/06/13(金) 00:58:21 ID:4E2VZ87h
>>681-686
さんきゅうです。
確かにroot上に配置すれば確実ですが、mc1に対するbouの位置には細かい計算
設定が必要で、またグローバル→ローカル座標変換が必要なので別の方法をとる
ことにしました。
(平たく言うと小細工ですw)

まず、空のMCのmc1(ここでは深度0)を用意し、bouを計算によりプラスの深度に配置
します。その上に本来の正方形MCと同じ形のMC(mcCover)をmc1と同じ座標になる
ように配置します(深度は+100)。つまりbouに覆いを被せるということです。

これで見た目はmc1から半分bouが出ている形になり、またmc1.bouとmcCoverが
独立していますので、その後の扱いが楽になる予感!w
692Now_loading...774KB:2008/06/13(金) 01:22:51 ID:FxWSXus4
>>682
-id でもOKじゃね。
693Now_loading...774KB:2008/06/13(金) 08:24:30 ID:ZrUIshpe
>>691
少なくともremoveできないマイナスの深度にattachすること自体変だぞw
深度はMCごとに存在するから、設計段階でどれがコンテナになるかを
明確にしておかないとバグの元になるよ
694Now_loading...774KB:2008/06/13(金) 10:33:39 ID:FxWSXus4
>>693
あ、ごめん、文法の話だった
695Now_loading...774KB:2008/06/13(金) 11:42:39 ID:U+GmPwgO
>>679さんへ
お返事ありがとうございます。スコープの概念がよくわかってなかったみたいです。

>>onData内で適当に区切って変数に代入すればいんじゃね?
一旦、テキストなどの外部変数に移動してから等も試したのですが、ダメでした。
可能とのお返事もいただいたのですが、よくわかりませんでした。
何かいい方法ございませんか?
696Now_loading...774KB:2008/06/15(日) 07:18:56 ID:hlFm7HOK
>>695
ダメでしたはどう判断したの?traceがでないとか、こういうソースでうまくいかないとか書く
697Now_loading...774KB:2008/06/16(月) 14:07:56 ID:YkPGWBT6
すみません。質問です。 win xp as3です。

描画APIでdrawlineやらで線を描いていくflashをつくったんですが、

大量に描画すると重くなるんですが、graphicsオブジェクトで描画

すると、1つの図形がスプライト(ベクタ)になるんですか?
698Now_loading...774KB:2008/06/16(月) 14:16:44 ID:9+sUVgXx
>>697
そう。1つの図形と言うよりも、ひとつのgraphics分の描画を
毎フレームごとにゼロから書き直してる処理になる。

線の修正なんかを考えないなら、描画終わった後にBitmapdataにdrawして
ビットマップ画像として扱うようにすると、キャッシュが利くようになるからそこそこ
軽くはなるんじゃないかな。
699Now_loading...774KB:2008/06/16(月) 14:20:12 ID:cstQKdXn
cacheAsBitmapでいいんじゃない
700Now_loading...774KB:2008/06/16(月) 18:32:20 ID:YkPGWBT6
なんとすべていちからの描画してるんですか。やっぱビットマップ化
しかないですか・・・

やり直しとかできるようにはしたかったんですが・・・

ひとつひとつの図形を別々のスプライトにしても重そうだし。
701Now_loading...774KB:2008/06/17(火) 17:18:22 ID:tclc13nW
CS3 のAS3で質問します。

値がtrueだったらflaseに、falseだったらにtrueに反転させたいんですけど。
簡単に反転させる方法はありますか?

いちいちif文などで書くものなんでしょうか?
702Now_loading...774KB:2008/06/17(火) 17:34:42 ID:8xY+dXSE
var flag : Boolean = true;
flag = !flag;

trace(flag);
//false
703Now_loading...774KB:2008/06/17(火) 17:37:09 ID:tclc13nW
!か!!
助かりました。
thx!!
704Now_loading...774KB:2008/06/17(火) 17:40:28 ID:E9NhjkiN
今までプログラミングをかじったこともない人が
ActionScriptに手を出すというのは、やはり無謀なのでしょうか?
解説サイトを回っても、関数、変数、演算子とか訳わからない言葉が並んでる、
という風な状況なのですが・・・。
705Now_loading...774KB:2008/06/17(火) 17:54:12 ID:xEidFKeK
いや、できる。
何でもいいから作るんだ。
706Now_loading...774KB:2008/06/17(火) 17:59:48 ID:SUTNtXhO
おれAS3が初めてだったけど余裕だったよ
むしろ初めてプログラミングする人に向いてるかもしれない
純粋なオブジェクト指向だし(タイムライン使うならちょっとややこしくなるけど)
Javaみたいに仕様が膨大ってわけでもないし
他の言語はGUI作るのは結構大変だけどASはGUI前提なので
たった数行で画面に反映させることができる
プログラミング結果が即座に画面に反映されるのはやってて楽しいもんだよ
707Now_loading...774KB:2008/06/17(火) 18:23:02 ID:E9NhjkiN
>>705,706
即レスサンクス。
ASについていろいろ調べて挑戦してみます。
708Now_loading...774KB:2008/06/17(火) 19:24:27 ID:9vh5UzT/
CS3のAS3で質問します。

配置したムービークリップの移動方法について、
ブラウザのテキストのスクロールのように、
スクロールバーを使ってマウスで表示領域を変更できないものかと考えてます。

キーボードやマウスでのイベントではうまく動かせたのですが、
ヒントをいただければありがたいです。

マスクを作成して、ドラッグアンドドロップで動かすことも考えたのですが、
どうもうまくいかないようです、、、
709Now_loading...774KB:2008/06/17(火) 22:53:19 ID:N4nzVsYx
環境:Flash8,AS2

イベントモデルを勉強中なのですが、ある本にあるサンプルで
どうしてもわからないので教えてください

ステージにComboBoxを配置し、インスタンス名をmyComboBoxとする
ComboBoxのlabelに項目1と設定する
期待している動作は、実行時に"_level0.myComboBoxからchangeイベントが実行されました"
項目1選択時に"項目1が選択されました"と出力されることです
class Test{
function init(cb:mx.controls.ComboBox):Void{
cb.addEventListener("change",this);
}
function change(eventObj:Object):Void{
trace(eventObj.target+"から"+eventObj.type+"イベントが通知されました");
if(eventObj.target.selectedItem.label == "項目1"){
trace("項目1が選択されました");
}
}
}
本にはclassファイルだけしかなくて、flaファイルに書くスクリプトが載っていません。
とりあえず自分で思いつくままに、メインタイムラインに

var obj:Test = new Test();
obj.init(myComboBox);
obj.change();

と書いてみたのですが、イベントターゲットとイベントタイプがundefinedになります
どうすれば良いのでしょうか?
710Now_loading...774KB:2008/06/18(水) 00:50:23 ID:R9skzdH6
>>708
主語をハッキリと・・・
よく分からないけどstage.addChild(ScrollStage)みたいにステージ一枚かませて
ScrollStage.x = ScrollBar.x;みたいな連動させればいいんじゃないかな

>>709
書く場所はそこでもいいんだけど
イベントってのはコンポーネントの操作によって起こるからchangeを自分で書いても
実行主(コンボボックス)が分からないからundefinedになる。
ステージにあるコンボを触ればtraceが実行されるはずだよ。
711Now_loading...774KB:2008/06/18(水) 01:14:22 ID:LMe9tAAh
Flash CS3、ActionScript 3.0

var request:URLRequest = new URLRequest("aaa.swf");
var loader:Loader = new Loader();
loader.load(request);
var mc : MovieClip = new BBB();
this.addChild( mc );
mc.addChild(loader)

でステージ上のmcにaaa.swfを読み込みました
aaa.swfのフレームには「frame1」「frame2」「frame3」・・・とラベルをつけてあります
mc.gotoAndStop("frame1")では動かないのですが、どこにgotoAndStop("frame1")と書けばよいのでしょうか?
712Now_loading...774KB:2008/06/18(水) 01:24:36 ID:PiYoMPQa
>>711

読み込んだswfはLoaderオブジェの子として読み込まれる
Loader.contentで読み込んだswfのルートにアクセスできるよ

mc.gotoAndStop("frame1")ではmcのフレームにアクセスするだけだけだよ
713Now_loading...774KB:2008/06/18(水) 01:50:41 ID:ljnBJIde
>>710
ありがとうございます。
おっしゃる通りステージのComboBoxを触ったのですが
項目1を選択した時に、"項目1が選択されました"とtraceされるはずがされないんです。

714Now_loading...774KB:2008/06/18(水) 01:57:19 ID:LMe9tAAh
>>712
パブリッシュのPlayerのバージョンが違ってうまく動かなかったので
合わせてみたら無事動きました
ありがとうございます
715Now_loading...774KB:2008/06/18(水) 17:56:18 ID:QCPtSwnw
FlashCS3 Actionscript2.0

ドラッグ可能なムービークリップ
そのムービークリップ内のボタンを動作させることは出来ますか?
716Now_loading...774KB:2008/06/18(水) 19:15:21 ID:0u6aRrnC
Flash8、MacintoshOSX

FlashファイルをMacintosh用プロジェクターで書き出し後
fscommandフォルダ内に置いている●●●.movをクイックタイムで起動させたいのですが

on (release) {
fscommand("exec", "●●●.mov");
}
717Now_loading...774KB:2008/06/18(水) 19:19:09 ID:1LaQBaiJ
デバイスフォントの周りに縁をつけるにはどうすれば良いでしょうか?
718716:2008/06/18(水) 19:32:00 ID:0u6aRrnC
716です。すいません、途中でとぎれてしまいました。

on (release) {
fscommand("exec", "●●●.mov");
}

と書いても起動できませんでした。
ムービーをflvやフラッシュ内に読み込めば楽なのですが
クイックタイム起動〜再生したいのです。
ご存じの方がいらっしゃいましたらご教授願えませんでしょうか
よろしくお願いいたします。
719Now_loading...774KB:2008/06/18(水) 19:43:03 ID:mYkN5Hf0
>>718
そもそもプロジェクタでexecできたっけな?
普通のswfではそれで動くの?
720716:2008/06/18(水) 19:47:17 ID:0u6aRrnC
>>719
今のスクリプトでは動きませんでした。
Windows用プロジェクタに書き出した際は、
一度●●●.wmvを開く命令を書いたexeを起動させるというので出来たので
Macintoshならもう少し簡単かと思ってたんですが難しいんでしょうか?
721Now_loading...774KB:2008/06/18(水) 19:48:17 ID:mYkN5Hf0
>>717
テキストフィールドにグロウフィルタ適用すればいいんじゃね?

import flash.filters.GlowFilter
var grow:GlowFilter = new GlowFilter(0xFF006600,1,2,2,255)
textField.filters=[grow]
722Now_loading...774KB:2008/06/18(水) 19:49:21 ID:mYkN5Hf0
>>720
Winじゃ動くの?Macはよくわからん。すまん。
723Now_loading...774KB:2008/06/18(水) 19:58:14 ID:mYkN5Hf0
>>715
できるけど結構面倒。一例を挙げるとこんな。_root上のparentMCの中にbuttonMCってボタンがある場合。

function checkHitArea(){
trace(this)
if(this.buttonMC.hitTest(_xmouse,_ymouse)){
trace("ボタンをクリック");
}else{
trace("ボタン以外の箇所をクリック");
}
}
parentMC.onPress = checkHitArea;

ムービーの階層構造によって変わるかも。
ボタンの位置が固定なら、ボタンのある位置をくりぬいたMC作って、それをhitAreaに指定した方が
分かりやすいかも。
724Now_loading...774KB:2008/06/18(水) 20:13:35 ID:QCPtSwnw
>>723
あ!!!ありがとう御座います!!
多分出来ないだろなとあきらめていました!
試してみます。ありがとう御座います。
725Now_loading...774KB:2008/06/18(水) 20:30:24 ID:XBgYHJZz
Flash CS3 Actionscript3.0で
import fl.controls.DataGrid;
ってやると
定義fl.controls.DataGridは見つかりませんってエラーが出るのはなんでだろう?

ヘルプのDataGridに書かれてるサンプルコードすら動かなくてヘルプミー!
726Now_loading...774KB:2008/06/18(水) 20:41:12 ID:mYkN5Hf0
>>725
[ウィンドウ]-[コンポーネント]からDataGridをステージに一回ドラッグしてライブラリに登録するんだぜ
727Now_loading...774KB:2008/06/18(水) 21:19:22 ID:XBgYHJZz
>>726
DataGrid使えるようになりました!
ありがとございます!!
728716:2008/06/18(水) 21:50:16 ID:0u6aRrnC
>>722
いえいえ、考えていただきありがとうございました。
もう少し調べてみます。
729708:2008/06/18(水) 22:04:05 ID:tye2+4WM
>>710

お礼が遅くなりましてすいません。

質問が不明瞭で失礼いたしました。
意図を汲んでいただいた回答でありがとうございます。

stageをかますというのが今ひとつ理解できておりませんが、
まずは試してみようと思います。
730716:2008/06/18(水) 22:20:05 ID:0u6aRrnC
少し目線を変えて再度質問させてください。

使用パソコンがWindowsかMacintoshかを判定し、

Windowsなら → フレーム10へジャンプ
Macintoshなら → フレーム20へジャンプ

というようなことはできますでしょうか?
よろしくお願いいたします。
731Now_loading...774KB:2008/06/18(水) 23:04:50 ID:uZo2geLF
732716:2008/06/18(水) 23:28:29 ID:0u6aRrnC
>>731
キーワードありがとうございました。ここから調べてみます。
733Now_loading...774KB:2008/06/19(木) 00:35:01 ID:5lz3BoBN
スクリプトはAS2です。
画面内にあるムービークリップ、もしくは特定フレームにあるムービークリップを
最初から再生し直すスクリプトってないでしょうか?

マンガみたいなものをつくっていて、
ボタンで各ページ(ムービークリップ)に自由に飛べるようにしているんですが、
「現在のページに飛ぶ」をクリックしたときだけは、移動しないため、
静止したままムービークリップの変化なし……という状況です。
734Now_loading...774KB:2008/06/19(木) 00:37:46 ID:v3Wkj7nm
gotoAndPlay(1);
735Now_loading...774KB:2008/06/19(木) 01:57:00 ID:5lz3BoBN
現在地を変えずに画面内にあるムービークリップのみを、最初から再生させたいんです。
736Now_loading...774KB:2008/06/19(木) 02:04:53 ID:6++41rRQ
ムービークリップ.gotoAndPlay(1);
737Now_loading...774KB:2008/06/19(木) 02:14:48 ID:5lz3BoBN
ひとつのムービークリップではなく、
画面内にあるムービークリップ全部、もしくは特定フレームにあるもの全部を最初から動かせないでしょうか?
738Now_loading...774KB:2008/06/19(木) 02:20:35 ID:REJk+W+6
>>737
条件後出しすんなや。
その条件にあうものを全部gotoAndPlay(1)でいいだろ。
全部ならfor...inでも使ってくれ。
739Now_loading...774KB:2008/06/19(木) 02:30:08 ID:6++41rRQ
ムービークリップなんて高度なものを使いこなすのは君にはまだ無理。
グラフィックシンボルでやりなさい。
740Now_loading...774KB:2008/06/19(木) 02:44:17 ID:5lz3BoBN
「画像」という名前のレイヤーにあるムービークリップを全部(1)から動かす、とかはできるんでしょうか?
(ムービークリップの名前は何がくるのかまったく不明)
for...inのつかいかたは自分には理解できなかったです。
741Now_loading...774KB:2008/06/19(木) 02:56:26 ID:v3Wkj7nm
まったく不明ってなに?
なんの理由があって不明なの?
自分で名前つけれないの?
まとめて動かしたいmcを配列に入れてforでまわせばいいでしょ

ActionScriptの基礎からちゃんと勉強したほうがいいよ
742Now_loading...774KB:2008/06/19(木) 05:32:31 ID:gGPFt86f
AS以前の問題だな
743Now_loading...774KB:2008/06/19(木) 08:03:05 ID:BW0WVa+/
とりあえずプログラムを勉強しましょう
ASスレだしなw
744Now_loading...774KB:2008/06/19(木) 09:51:55 ID:pUTpar2i
子ムービー クリップを複数作成する時に、引数で渡すインスタンス名を
同じにしてるんですけどなんか問題ありますかね?
745Now_loading...774KB:2008/06/19(木) 10:00:55 ID:pUTpar2i
自己レス
createEmptyMovieClip メソッドの戻り値を持っていれば、個別に参照できるし
問題ないみたいですね。

引数で指定したインスタンス名で参照すると、最初にその名前に
該当するインスタンスを返すみたいなんで、 for..in とかは使えないですね。
746Now_loading...774KB:2008/06/19(木) 12:18:58 ID:BW0WVa+/
複数じゃないしw
747Now_loading...774KB:2008/06/19(木) 12:28:10 ID:aVbFkFSb
最近AS3に移行しようと悪戦苦闘してるものです。
手始めにいっちゃん基本なボタン用のクラスを作ってみました。
まずMovieClipクラスを継承させてマウスの状況でそのMCの任意のフレームラベルの所を再生するようにしてパッケージ化しました。
でボタン用に作ったMovieClipのタイムラインにクラスと呼応するラベルを付けて各ステートごとのキーフレームアニメーションを設定し書き出したのですが
何故かマウスがオーバーな状態でボタンがオーバーとアウトのステートを繰り返すのです。
おかしいなと思い、
原因を探ったらアニメーション用にそのボタンmc内に入れ子にしている別のmcでした。これを外すと正常に動作します。
一つのカスタムクラス内に別にmcが入っちゃいけないのでしょうか?
それとも何か回避させる方法があるのでしょうか?
御教授下さい。
748Now_loading...774KB:2008/06/19(木) 12:31:46 ID:BW0WVa+/
MCはコンテナになりますからいくつでも子を持てます
設計がわるいのでしょう
749Now_loading...774KB:2008/06/19(木) 12:44:31 ID:97gAiQUi
>>747
たぶん、入れ子のmcのアニメーションしてる部分が、マウスポインタの下で
透過してたりしてなかったりしてるんじゃないのかな?

AS3.0だとイベントフローの仕組みがあるから、入れ子のイベントも親に伝達
されてそんな動きになるような気がする。
回避方法は、イベントオブジェクトのtargetとcurrentTargetを使って判定すれば
いいんじゃない?

function check(e:MouseEvent){
trace(e.target.name,e.currentTarget.name)
}
mc.addEventListener(MouseEvent.MOUSE_OVER,check)
750Now_loading...774KB:2008/06/19(木) 13:21:35 ID:3mh3lh3a
最近AS3に移行しようと悪戦苦闘してるものです。
手始めにいっちゃん基本なボタン用のクラスを作ってみました。
まずMovieClipクラスを継承させてマウスの状況でそのMCの任意のフレームラベルの所を再生するようにしてパッケージ化しました。
でボタン用に作ったMovieClipのタイムラインにクラスと呼応するラベルを付けて各ステートごとのキーフレームアニメーションを設定し書き出したのですが
何故かマウスがオーバーな状態でボタンがオーバーとアウトのステートを繰り返すのです。
おかしいなと思い、
原因を探ったらアニメーション用にそのボタンmc内に入れ子にしている別のmcでした。これを外すと正常に動作します。
一つのカスタムクラス内に別にmcが入っちゃいけないのでしょうか?
それとも何か回避させる方法があるのでしょうか?
御教授下さい。
751750:2008/06/19(木) 13:41:50 ID:pUySr9S+
連投してしまった
スマソ
752747:2008/06/19(木) 14:35:29 ID:G13K3k5u
>>749
アドバイスありがとうございます!
早速そのコードをカスタムクラスに書き込んで確認して見ました。
やはり入れ子のmcもマウスイベントで判定してしまっていました。
ということはイベントオブジェクトのtargetとcurrentTargetが同じになるときだけマウスイベントの関数を実行するようにすれば良いでしょうか?
それとも入れ子のmcにクラスが継承されない様な方法或はリスナーをとってしまう方法などあるのでしょうか?
753Now_loading...774KB:2008/06/19(木) 15:13:19 ID:97gAiQUi
>>752
その構成だと
mc.mouseChildren=false
でイベントフローを止めればいいんじゃないかな

あと根本的なところ分かってないっぽいから調べた方がいいんじゃない?
http://livedocs.adobe.com/flash/9.0_jp/main/00000134.html
754752:2008/06/19(木) 15:28:55 ID:pEAO81eI
>>753
そのコードをカスタムクラスのコンストクタの所に入れたら直りました!
そうですね、最初書いた様にAS3初心者なもんでイベント処理もうちょっとチャンと勉強します。
755Now_loading...774KB:2008/06/19(木) 17:11:44 ID:Clkft1DQ
CS3 AS3で質問します。

package {
public class clTest extends MovieClip {
省略
public function clTest(url:String,cName:String):void {
省略
}
public function off():void {
removeChild(mc1);
}
}

みたいなパッケージで他のパッケージから offメソッドを呼び出したいんですけども
var cT:clTest;
cT.off();
で呼び出そうとするとdispOff() の引数の数が一致していません。0 が必要ですが、1 が指定されました。
となって呼び出せません。

呼び出す方法を教えてください。
756755:2008/06/19(木) 17:19:04 ID:Clkft1DQ
自己レス
呼び出す時にイベントが入ってないせいっぽい。
757Now_loading...774KB:2008/06/19(木) 17:20:03 ID:25983nAH
>>755
public function off(mc:MovieClip){
removeChild(mc);
}
呼び出し
var cT:clTest;
cT.off(mc名);

これでいけませんか?
AS2までしかやったことないけど
758755:2008/06/19(木) 17:37:12 ID:Clkft1DQ
>>757
タイマーイベントだったのに引数がなかったせいだったっぽいです。

しかし、AS3にはいまだ慣れない…
759730:2008/06/19(木) 17:44:39 ID:Zsky62Jo
>>731
教えていただいたキーワードから何とかやりたいことができました。
どうもありがとうございました。
760Now_loading...774KB:2008/06/19(木) 20:43:18 ID:UjACjNFR
Arrayクラスの変数に、Classクラスの変数入れること出来ますか??
761Now_loading...774KB:2008/06/19(木) 21:13:08 ID:919r3M46
メニュー用のXMLList定義を、ソースの内部に置いてたのですが、定義が大きくなっちゃったんで、
データ定義部分をソースの外に出したいです。

データをXMLファイルにして、プログラムから読み込む事も考えたんですが、どうせメニューが
実行中に変更されたりする訳でもないですし、コンパイル時に読み込まれるだけで構わないかな?
とも思っています。

そういう時、どういう風に処理するのがスマートでしょうか?

参考になるサイトなど紹介して頂けると助かります。
762Now_loading...774KB:2008/06/19(木) 22:04:34 ID:uArf7qcf
>>761
#includeとか?
763Now_loading...774KB:2008/06/19(木) 22:45:59 ID:919r3M46
>>762
試してみたら、それでいけました。マクロ展開みたいなのがあるんですね。ビックリです。

ありがとうございました。

なんか、#無くても動くっぽいです。
764Now_loading...774KB:2008/06/20(金) 15:40:46 ID:L27LZbuV
cryptoっていうas3用のフレームワークがあるんだけど、

ドキュメントがないでつ。誰かしりませんか。
765Now_loading...774KB:2008/06/20(金) 18:26:37 ID:8rkQ5lLI
>>764
ぐぐったらあったよ
http://crypto.hurlant.com/
766Now_loading...774KB:2008/06/20(金) 20:52:30 ID:F18Mr99m
クラスと同じ名前のメソッドに引数ってダメですかね??
エラー#1010が出てきました
767Now_loading...774KB:2008/06/20(金) 20:58:37 ID:F18Mr99m
FlashDevelopを使ってるのですがエラー文章が文字化けしてます↓↓
768Now_loading...774KB:2008/06/20(金) 21:16:10 ID:VglJz52+
>>767
Javaのバージョンを最新にしても駄目?
769Now_loading...774KB:2008/06/20(金) 23:44:15 ID:F18Mr99m
クラス全体で一つの配列共有すること出来ますか??
方法をお願いします
770Now_loading...774KB:2008/06/21(土) 00:19:00 ID:L6ACRwit
static宣言すればいいよ
771Now_loading...774KB:2008/06/21(土) 07:12:27 ID:2EE9lRmf
>>765のコードを使ってSWFを公開した場合は何か問題がありますか?ライセンス的に
772Now_loading...774KB:2008/06/21(土) 08:52:04 ID:MSI2qnsw
>>766
>エラー#1010が出てきました
それって何エラーだよwコンストラクタに引数付けるのはよくあるしw
>>769
クラス全体って意味がよくわからんが、
その配列を使うクラスに参照を渡せばいいんでね
>>771
LICENSE.txtを和訳しろって言ってるのか?
773Now_loading...774KB:2008/06/21(土) 09:10:05 ID:ZuRxhRLi
ムービークリップを移動させるとき、
MC._y += (MC.newY - MC._y)/2
だと最初は速く、徐々にスピードを落としてnewYに近づいていく感じになりますよね

逆に最初はゆっくり、徐々に速く移動させるにはどのようなスクリプトを書けばいいんでしょうか
774Now_loading...774KB:2008/06/21(土) 09:12:02 ID:MSI2qnsw
>>773
割る2を1以下にすりゃいんじゃね
775Now_loading...774KB:2008/06/21(土) 09:27:33 ID:ZuRxhRLi
>>774
2を1以下にすると、たとえば
MC._y += (MC.newY - MC._y)/0.8
だと最初の移動でnewYを飛び越えてしまうのですが・・・
776Now_loading...774KB:2008/06/21(土) 09:31:39 ID:MSI2qnsw
あのう、少し考えてくださいw
777Now_loading...774KB:2008/06/21(土) 09:47:36 ID:ZuRxhRLi
すみません考えてもよくわからなかったので
初期の速さを設定して係数をかけて増やすことにしました
778Now_loading...774KB:2008/06/21(土) 14:56:44 ID:A3YsZ5nw
var p:AIU = new AIU(i,j);


AIUと言うクラスとメソッドは作ってるのですが(i,j)にエラーが出ます。

書き方間違えてますか?
779Now_loading...774KB:2008/06/21(土) 14:59:33 ID:MSI2qnsw
>>778
どういうエラーが出たのか書け
780Now_loading...774KB:2008/06/21(土) 17:22:13 ID:+P386VTT
ID:MSI2qnswは頭冷やせ
781781:2008/06/21(土) 17:50:59 ID:r6ZZ63C+
CS3 AS3で質問いたします。

#!/usr/bin/perl

#----- ランキングデータファイル
$logfile = "./hisc.dat";

省略

#----- データをFlashへ送る
print "Content-type: text/plain\n\n";
for ($i = 0; $i < 10; $i++) {
($sc, $pname) = split(/,/,$sortdata[$i]);
print("score$i=$sc&name$i=$pname&");
}

#----- データの書き換え
if ($getdata{'score'} ne "") {
open(OUT, ">$logfile");
for ($i = 0; $i < 10; $i++) {
print OUT "$sortdata[$i]\n";
}
close(OUT);
}
exit;

このperlの出力結果をAS3でscoreとnameの値を受け取るにはどのようなScriptにすればよいでしょうか?
ゲームのハイスコアランキングを作りたいのですが送信はできたのですが受信の仕方がわかりません。
どなたかお解りの方がいらっしゃいましたら教えていただけませんでしょうか?
782Now_loading...774KB:2008/06/21(土) 17:57:12 ID:MSI2qnsw
>>780
スレタイを100回読んでからレスしましょう
>>781
URLLoader使う。サンプルはヘルプ等でさがしましょう
783781:2008/06/21(土) 18:16:15 ID:r6ZZ63C+
>>782
ご回答ありがとうございます。URLLoader使っています。
サンプルやヘルプ等も探しました。
受け取る値が1つの時は受け取り方がわかるのですが
上記のような場合はどうしたら良いのか解りません。
お解りの方がいらっしゃいましたらアドバイスいただきたいです。
784Now_loading...774KB:2008/06/21(土) 18:28:00 ID:MSI2qnsw
>>783
csvなテキストとして受信してFlash側で配列にでも分解するとかがいんじゃね
785781:2008/06/21(土) 18:54:42 ID:r6ZZ63C+
>>784
ご回答ありがとうございます。
そのような方法があるのですね。
調べてみます。
786Now_loading...774KB:2008/06/21(土) 19:37:58 ID:m60skRZ+
mouseChildrenについての質問です。
newやステージにおいてあるmcにmc.mouseChildren = falseとすると
期待通りの挙動になるのですが、
loaderでmcを読込み mc.mouseChildren = falseとするとマウスが
反応しなくなります。これどこがおかしいのでしょうか?
ソースは以下のとおりです。

var l:Loader = new Loader();
l.contentLoaderInfo.addEventListener(Event.COMPLETE,loadComplete);
l.load(new URLRequest("btn.swf"));
// 読込み完了イベント
function loadComplete(evt:Event){
// 読込まれたMovieClipを変数mcとする
var mc:MovieClip = evt.target.loader.content as MovieClip;
// mcをボタンモードにする
mc.buttonMode =true;
// mcの子はマウスに反応させない
mc.mouseChildren = false;
// mcにクリックイベントを追加する
mc.addEventListener(MouseEvent.CLICK,clickHandler);
// mcをステージに配置
addChild(mc);
}
// マウスクリックハンドラ
function clickHandler(e:MouseEvent){
trace(e.target)
}

環境は winXP FLASHCS3 妹とパソコン共有してます。
787Now_loading...774KB:2008/06/21(土) 20:44:26 ID:A3YsZ5nw
Flex2 Builderでフォントを指定するファイルわかりますか?

FlashDevelopで見るとエラー文章だけが日本語が文字化けになってます。エラー文章を英語にしても良いので教えてください
788Now_loading...774KB:2008/06/21(土) 21:19:40 ID:A3YsZ5nw
>>787ちなみにプログラムを書くときは日本語でも文字化けは無いです。コンパイルしたときのoutputでのエラー表示が文字化けしてます
789Now_loading...774KB:2008/06/21(土) 21:53:31 ID:78JIwBEF
フォントじゃなくて文字コードだろ・・。
790Now_loading...774KB:2008/06/21(土) 22:48:10 ID:eZWKqJhL
配列に入れてグリッド上に配列した複数の Sprite に対して、
クリックすると周りの Sprite にも影響を与える、というものを作っているのですが、
クリックされたのは event:Mouseevent で取得し、 event.target で調べられるのは分かったんですが、
周りのオブジェクトに対しての参照をするのに、boxArray[X]の形でアクセスしたいのですが、
よいアイディアを教えてください。
event.target の参照された配列の番号を取得する方法ってありますか?
791Now_loading...774KB:2008/06/22(日) 00:41:39 ID:1kbDoDYA
>>790
Spriteに配列の番号を保持させとけば?
792Now_loading...774KB:2008/06/22(日) 01:27:37 ID:enZHuLyw
map[i][j](型はクラスB)はクラスBが継承したクラスAのフィールドで、Del()がクラスBのメソッドであるとします。
するとクラスBでmap[i][j].Del()って出来ますか?出来ない場合別の方法で表現できますかね?
793Now_loading...774KB:2008/06/22(日) 01:34:26 ID:enZHuLyw
>>792やっぱ別の方法の表現はいらないです。可能か不可能でお願いします
794Now_loading...774KB:2008/06/22(日) 01:38:27 ID:1kbDoDYA
ごめんなさい・・・俺の国語力が足りないみたい・・・・orz
795Now_loading...774KB:2008/06/22(日) 09:03:27 ID:enZHuLyw
>>794プログラム事情で複雑すぎてごめんなさい
796Now_loading...774KB:2008/06/22(日) 09:29:47 ID:F1uD9ihi
>>790
Dictionary使って関連付けとけばいいんじゃないかな?
例えばrootにsprite1,sprite2,sprite3があるとして、

var boxArray:Dictionary = new Dictionary();
boxArray[sprite1] = "sprite1に関連付けられた情報";
boxArray[sprite2] = "sprite2に関連付けられた情報";
boxArray[sprite3] = "sprite3に関連付けられた情報";

function onClickSprite(e:MouseEvent) { trace(boxArray[e.target]);}

sprite1.addEventListener(MouseEvent.CLICK,onClickSprite);
sprite2.addEventListener(MouseEvent.CLICK,onClickSprite);
sprite3.addEventListener(MouseEvent.CLICK,onClickSprite);

こんな。配列の番号でもなんでも突っ込んどけばいいんじゃない?
797Now_loading...774KB:2008/06/22(日) 09:42:56 ID:F1uD9ihi
>>792
AがBを継承してんなら普通に実行できるんじゃないかな?

public class B {
public function del() { trace("Bのdel");}
}
public class A extends B{

}
な関係で
var array=[[new A(),new A()],[new A(),new A()]];
array[0][0].del();
array[1][1].del();
798Now_loading...774KB:2008/06/22(日) 10:17:31 ID:enZHuLyw
>>792この文章をプログラムで表すと設定はこんな状態です

public class B extends A{

 DEL(){処理}
  
 map[1][1].DEL()//このクラス内でこれができるか

}

public class A{
 クラスB型の配列map[i][j]定義(初期値も代入)
}
799Now_loading...774KB:2008/06/22(日) 10:46:44 ID:bXoNWhOt
>>790
Spriteのnameプロパティを設定しておいてそれから取得するとか(Stringだけどね)
>>798
それって、循環参照なんじゃねーのw継承の設計を見直した方が良いと思うぞ
800Now_loading...774KB:2008/06/22(日) 10:58:31 ID:enZHuLyw
>>788について意見お願いします!
801Now_loading...774KB:2008/06/22(日) 12:28:17 ID:1kbDoDYA
>>800

できない
staticにすればいけると思うけどどういう流れでそうしなきゃいけないのか分からないから
ロジック的に正しいかは分からないw
802Now_loading...774KB:2008/06/22(日) 15:11:13 ID:neW8Jgtu
>796 >799
ありがとうございます。
わざわざナンバーの変数を作ってプロパティに加えてみたのですが、
799さんのようにnameに入れて利用するほうがスマートでした。
dictonaryというのが初耳だったのでこちらを選びましたがお二人に感謝です。
803Now_loading...774KB:2008/06/22(日) 15:38:46 ID:nns2Eju4
フラッシュプレイヤーで実行中の画像を保存する方法ありますでしょうか?
オブジェクトの位置を保存・再生するなどの方法ではなく、JPGやPNGでの保存です。
ninjaの絵日記についている静止画保存機能のようなものです。
804Now_loading...774KB:2008/06/22(日) 15:49:17 ID:enZHuLyw
Spriteのnameってどんな機能があるんだ?
805Now_loading...774KB:2008/06/22(日) 16:00:37 ID:Cu595abL
CS3+AS3.0で質問です。
btn.addEventListener(MouseEvent.CLICK, btnClick);
function btnClick(event:Event):void{
 var MC:MovieClip = new sample();
 MC.x = 0;
 MC.y = 0;
 MC.name = 'sampleA';
 MC.hensu = 0;
 stage.addChild(MC);
}
でbtnをクリックしてインスタンスsampleAを生成できました。

次に別ボタンに以下の関数を記述
btn2.addEventListener(MouseEvent.CLICK, btn2Click);
function btn2Click(event:Event):void{
 sampleA.hensu = 100;
}

これでパブリッシュすると
「1120: 未定義のプロパティ sampleA へのアクセスです。」のエラーが出ます。
インスタンスsampleAのhensuに値を代入するにはどうしたらいいんでしょうか?
806Now_loading...774KB:2008/06/22(日) 16:16:13 ID:enZHuLyw
i=0〜N-1
 j=0〜N-1
  addEventListener.a[i][j](マウスクリック)


こんなこと出来ますか?ボード上に配置されたコマの1つが押されたときにイベント発生。その押された配列a[i][j]のiとjの取得は可能ですか?
807805:2008/06/22(日) 16:41:53 ID:Cu595abL
解決しました。
var target_mc:MovieClip = MovieClip(stage.getChildByName("sampleA"));
target_mc.hensu = 100;
とすればよいみたいです。

インスタンスへのアクセスがなんだか面倒ですね・・・
808Now_loading...774KB:2008/06/22(日) 21:04:07 ID:ASNTLqkQ
yahoo videocastからFLVを抽出して
再生するaction scriptを教えてください。
809Now_loading...774KB:2008/06/23(月) 01:29:24 ID:7BsaYCum
>>806
クロージャ
810Now_loading...774KB:2008/06/23(月) 01:34:40 ID:0QUXe/be
クロージャにしても、ループ時点のi,jは取れないんじゃね?
811Now_loading...774KB:2008/06/23(月) 01:38:36 ID:oCszmoWd
>>806
これをしたい理由は、配列a[i][j]が押されたとすると、例えばa[i-1][j-1]も処理をするみたいな、押された配列の周りにも影響を与えることをしたいからです。
812Now_loading...774KB:2008/06/23(月) 02:15:36 ID:0QUXe/be
>>811
Spriteのnameを"i,j"とでもしといて、event.target.name.split(",")とかしてみれば
813Now_loading...774KB:2008/06/23(月) 03:25:01 ID:3jvFeIz1
いやSpriteのインスタンス変数に保持させればいいだろ
814Now_loading...774KB:2008/06/23(月) 06:51:08 ID:oCszmoWd
>>813
詳しくお願いします
815Now_loading...774KB:2008/06/23(月) 08:32:35 ID:lH2Eqce1
>>807
MCをbtnClickの外側で宣言しとけばいんじゃね
スコープを勉強汁
>>814
Spriteは確かDynamicじゃないので動的にプロパティを付け加えられないから、
継承したクラスのインスタンス変数にi,j(ちゃんとした名前に汁w)を
持ってそれを設定するような感じかな
816Now_loading...774KB:2008/06/23(月) 15:47:55 ID:qaG9oL8X
すみません初心者中の初心者なのですが、質問です。。。

今Fusekitにてtweenをコントロールしているのですが、
このTweenを特定の座標に来たときにポーズさせ、
ボタンを押すと再開させたいと思っています。(Resume?)

ここで、Fuse kitをメソッドを使わなくても良いので
座標を取得して特定の処理をする方法を
教えて頂けたら嬉しいです。

使用環境はCS3+AS2.0+FuseKit2.1.4です。

どうぞよろしくお願いします。
817Now_loading...774KB:2008/06/23(月) 21:24:28 ID:oCszmoWd
FlashDevelopで実行したときに別ウィンドウでAdobeのflash-playerを起動させたいのですが、プログラムと同じ位置で実行結果がでます↓↓

設定できますかね?
818Now_loading...774KB:2008/06/23(月) 21:55:50 ID:3jvFeIz1
できるよ
819Now_loading...774KB:2008/06/23(月) 22:07:03 ID:oCszmoWd
>>818教えて頂きたい
820Now_loading...774KB.:2008/06/23(月) 22:32:21 ID:iGJ74iWR
swf4でボタン(キーボード)を押したときに物体を動かすって事出来ますか?
821Now_loading...774KB:2008/06/23(月) 22:35:49 ID:3jvFeIz1
822Now_loading...774KB:2008/06/24(火) 01:29:27 ID:i7KLFIYI
actionscript3です

function moveMC(event:Event):void{ ←ここ
var targetMC:MovieClip = event.target as MovieClip;
targetMC.x += speed;
}
movieClip.addEventListener(Event.ENTER_FRAME, moveMC); ←ここ

で、moveMCに引数speedを渡したいのですが、
←の行の関数の定義と、イベントハンドラの追加のところはどのように書き足せばいいんでしょうか?
823Now_loading...774KB:2008/06/24(火) 01:41:43 ID:i7KLFIYI
調べてみたら引数渡せないみたい
targetMCの変数で渡すしかないのか
824Now_loading...774KB:2008/06/24(火) 01:53:18 ID:P3k5YggE
渡せるよ
825Now_loading...774KB:2008/06/24(火) 01:56:00 ID:KI+6vNcu
>>823
function makeMoveMC(speed:Integer):Function {
return function(event:Event):void {
var targetMC:MovieClip = event.target as MovieClip;
targetMC.x += speed;
}
}
で、できたらいいのにな。
826Now_loading...774KB:2008/06/24(火) 02:05:52 ID:P3k5YggE
>>825
AS3にIntegerはないよw
Java使いの方ですか?w

ところで
var targetMC:MovieClip = event.target as MovieClip;
targetMC.x += speed;
これはevent.target.x += speed;
じゃだめなの?
827803:2008/06/24(火) 03:45:31 ID:3WvjHoJW
誰か回答お願いします。
flash内にそういった機能があるかだけでも教えてほしいです。

828Now_loading...774KB:2008/06/24(火) 06:13:27 ID:71t0sv9M
>803
できると思います。
FLASH単体だと無理、私はPHPでデータを保存してます。
AS3でやってますがAS2でできるかどうかは知りません。
JPEGやPNGにエンコードするクラスも出回ってます。
829Now_loading...774KB:2008/06/24(火) 08:32:41 ID:KI+6vNcu
>>826
言語はC++, Pythonがメインで色々使ってる。
AS3はあんまり触って無いからNumberだったかintだったかIntegerだったかなんていちいち覚えてない。
関数の中のコードは>>822のコピペ。event.targetの型なんていちいち覚えてない。
>>825のコードでできるよ!」と言いたい訳ではなくて、「closure使えば?」と言いたかっただけ。
830Now_loading...774KB:2008/06/24(火) 08:44:02 ID:PNqaLRkc
いちいち覚えてらんないですよね、わかります
831Now_loading...774KB.:2008/06/24(火) 15:50:35 ID:krRnedsi
829です。
出来ないのでしょうか?
832Now_loading...774KB:2008/06/24(火) 19:59:23 ID:P3k5YggE
>>831

・・・?
833Now_loading...774KB:2008/06/24(火) 21:58:05 ID:vLw+VC6J
AS3で作ったものは携帯に入れれますか?
834Now_loading...774KB:2008/06/24(火) 22:36:37 ID:zBBwtGlm
入れれれれれません
835Now_loading...774KB:2008/06/24(火) 23:45:51 ID:fNaHI2Op
フラッシュでゲームを作ろうと奮闘中なのですが、よくサンプルなどにある
フレームレート60だと動きが少しカクカクするような感じになってしまいました。
そこでコンパイルオプションでフレームレートを1000にしてみたところ
すごいスムーズになったんですが、これはやはりマズイのでしょうか?
836Now_loading...774KB:2008/06/25(水) 00:06:04 ID:p7r2mHXc
>>835
自分しかプレイしないならそれでいいよ。
公開するならよほど画面が小さい等処理が軽いのでなければ
現状30フレームが限界だ。
1000フレームは普通に異常。

しかしフレームレート60とかどこのアホが作ったサンプルだよ。
そりゃ見栄えは良くなるけど。
837Now_loading...774KB:2008/06/25(水) 00:17:10 ID:Zx87RbFB
1000なんてできた?
838Now_loading...774KB:2008/06/25(水) 00:28:10 ID:tkb7mmFT
>>836
CPU使用率も特に上がらなかったのでいけるかとも思ったんですが、
やはりデバックの状態でスムーズに見えてるだけで、公開先では
フレームレートが抑えられるってことなんでしょうか?

>>837
コンパイルオプションで
-default-frame-rate 1000
に指定しました。
Flex Builder3を使ってます。
839Now_loading...774KB:2008/06/25(水) 00:52:44 ID:DaYDZD/r
フレームレート1000って
健康に悪そうだな。
840Now_loading...774KB:2008/06/25(水) 00:54:41 ID:3++H22+P
1000fps出せる環境てどんなんだww
非Flashのアクションゲームでも30から90だな
それ以上は人間の眼が追いつけない
1000 はまず無効な数値だからデフォルトの
フレームレートが設定されただけだろ
841Now_loading...774KB:2008/06/25(水) 01:13:37 ID:6PhiiMRy
多分、FlashがVSyncしてるんじゃない?
1000fpsにすると、VSyncに合わないフレームはスキップされる。
画面のリフレッシュのたびに確実にフレームが進むから綺麗。
Flash自体が60fpsだと、画面のリフレッシュレートが60Hzから少しでもずれていると、
時々1フレーム分のズレがおきてカクってなるけど、1000fpsなら問題にならない。

でも、1000fpsにすると、低スペックマシンだと負荷がかかりすぎて逆に重くなる。
120fpsとか、24fpsとか、画面のリフレッシュレートと近くなくて、なおかついろんな素数で
割り切れるフレームレートが良いと思う。
842803:2008/06/25(水) 01:31:16 ID:rIYfzeC/
画像の作成の仕方なんですけど、サーバ内で送信されたデータを元に
描画したフラッシュを再現してphp+url2bmでキャプチャする方法しか思いつかなかったんですが、

>JPEGやPNGにエンコードするクラスも出回ってます
はフラッシュから吐かれたデータを元に画像を作るとかいう方法でしょうか?
詳しく理解したいのでできればクラス名を教えてほしいです。
よろしくお願いします。
843Now_loading...774KB:2008/06/25(水) 01:33:43 ID:tkb7mmFT
>>841
勉強になります
色々やって試してみます
844Now_loading...774KB:2008/06/25(水) 02:32:14 ID:Ra8rIVyh
FLASHのオーサリング上で、ダイナミックテキストに、
入る可能性のある文字分だけ、フォントを「埋め込む」事ができ、
フォント全部を入れるよりはファイルサイズがかなり少なくできたと思うんですが、

ActionScriptから、そう言った特定の文字部分だけを埋め込むことは出来ないのでしょうか?
(Flex(AS3)ですが、http://livedocs.adobe.com/flex/2_jp/docs/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000787.html
を見る限り、そう言ったことに触れられていない・・)
845Now_loading...774KB:2008/06/25(水) 02:39:27 ID:Ra8rIVyh
>>842
ttp://zapanet.info/blog/item/969
ttp://www.matzmtok.com/blog/?p=12
ttp://www.flash-jp.com/modules/newbb/viewtopic.php?topic_id=7436&forum=8&post_id=37332#forumpost37332
の辺りでしょうか。

FLASHのBMPデータを上記のクラスを使いJPGバイナリデータに変換、
それをPHPに送信し、データとして置いてもらう、という感じだと思います。
846Now_loading...774KB.:2008/06/25(水) 16:50:38 ID:RP4gqqMg
831ですw
間違えましたorz
正しくは820ですのでよろしくお願いします。
847名探偵コナン ◆OkhT76nerU :2008/06/25(水) 17:04:20 ID:gqQ02kuK
848名探偵コナン ◆OkhT76nerU :2008/06/25(水) 17:08:43 ID:gqQ02kuK
849名探偵コナン ◆OkhT76nerU :2008/06/25(水) 17:12:52 ID:gqQ02kuK
850名探偵コナン ◆OkhT76nerU :2008/06/25(水) 17:15:32 ID:gqQ02kuK
851名探偵コナン ◆OkhT76nerU :2008/06/25(水) 17:31:17 ID:gqQ02kuK
852名探偵コナン ◆OkhT76nerU :2008/06/25(水) 17:34:20 ID:gqQ02kuK
853名探偵コナン ◆OkhT76nerU :2008/06/25(水) 17:36:41 ID:gqQ02kuK
854名探偵コナン ◆OkhT76nerU :2008/06/25(水) 17:38:54 ID:gqQ02kuK
855名探偵コナン ◆OkhT76nerU :2008/06/25(水) 17:41:55 ID:gqQ02kuK
落ち
また来ます。
856Now_loading...774KB:2008/06/25(水) 17:52:25 ID:+TpBpD4m
オブジェクトにカーソルが触れたらアクションするイベントありますか?
マウスクリックはありますが、
857Now_loading...774KB:2008/06/25(水) 18:12:22 ID:6pctRKTy
マウスオーバー?
858Now_loading...774KB:2008/06/25(水) 18:16:31 ID:d3CdFBbP
>>856

rolloverイベントがあると思う。

as2
buttonName.onRollOver = function(){
//命令
}

as3
buttonName.addEventListener(MouseEvent.MOUSE_OVER , overEvent);
function overEvent(e){
//命令
}
859Now_loading...774KB:2008/06/25(水) 20:08:41 ID:+TpBpD4m
>>858ありがとうございます
860Now_loading...774KB:2008/06/25(水) 20:37:26 ID:+KxShLAh
CS3+AS3.0+AIR1.1の環境なのですが、
DataGridのeditableをtrueに設定し、実際にDataGridを編集しようとしたら
セキュリティサンドボックス侵害エラーが発生します。
editableがfalseなら問題はないようです。
また、パブリッシュ設定をAIRからFlash Player 9に変更してもこのエラーは出ません。

DataGridのデータの取得は可能なのですが、気持ちが悪いので原因分かる方はおられませんか?

-----------------------------------------------------------------
セキュリティサンドボックス違反
security domain 'app:ファイル名'が互換性のないコンテキスト
'http://adobe.com/apollo'にアクセスを試みました
-----------------------------------------------------------------
861Now_loading...774KB:2008/06/26(木) 21:25:13 ID:Wr24mdS1
FlashDevelop + Flex2
でやってたのですがそれで作ったASファイルをFlashLiteでも使用出来ますか?

携帯に入れたいのですが
862803:2008/06/26(木) 23:34:07 ID:62Qxrw1g
>>828
flashでそんなことできたんですね。
初めて知りました。ありがとうございました。
863Now_loading...774KB:2008/06/27(金) 03:20:12 ID:JRIjzPZU
VISTA、AS2、FLASH MX2004の環境です。
シューティングゲームを作っていて、ミサイルのMCと敵のMCがぶつかった時に
敵を消したいんですがうまくいかずに困ってます。
どなたかアドバイスくださいm(--)m

やりたい事
・ミサイルに当たったら、消えるmcを作りたい。(複製しても同じ挙動をする)

・敵が消えたら、score_txt.textの数字に1を加算

配置
・_rootにmc_enemyZoneを配置、
mc_enemyZone内にランダムにmc_enemyを生成させています。

・カーソル(_xmouse、_ymouse)についてくるbtn_Mを押すと、ミサイルが発射します。
ミサイルは、btn内にあります。

↓以下の方法をためしましたが、うまくいきませんでした。

//mc_enemyにコードを記載1(インスタンとしてmc_enemyを複数生成したいので、できればこの方法で実現させたいです)
if(this.hitTest(_root.btn_M){
this.removeMovieClip();
score_txt.text ++;
}
//反応なし
864Now_loading...774KB:2008/06/27(金) 06:19:59 ID:53Esn6uB
>>863
深度がマイナスとか?
865Now_loading...774KB:2008/06/27(金) 12:39:50 ID:9QS6shuc
AS3(CS3)

bt1.addEventListener(MouseEvent.CLICK,pageJump1);
function pageJump1(evt:MouseEvent):void{
var url1:URLRequest=new URLRequest("http://www.google.co.jp/");
navigateToURL(url1)};

現状では新規ブラウザが開いてしまうのですが、
そのままのブラウザで指定URLを開くにはどうすれば良いでしょう。
初心者な質問で申し訳ないです。
866Now_loading...774KB:2008/06/27(金) 12:49:33 ID:PezPYcTI
>>863
hitTestの部分をenterFrameに入れてないとかじゃねーだろなw
>>865
navigateToURLの第2引数でなんかなかったっけ
867Now_loading...774KB:2008/06/27(金) 13:06:20 ID:JRIjzPZU
>884
震度は、300です。
今作ってるのが成功したら、enemyを配列で管理して
震度は300+iにするとです。

>866
enterFrameには入れてるんです。
868Now_loading...774KB:2008/06/27(金) 13:13:33 ID:PezPYcTI
>>867
hitTestの部分にtrace入れて確実にそのルーチンに入ってるか確認
出来てたら、あとはパスの確認かな
869Now_loading...774KB:2008/06/27(金) 13:42:08 ID:9QS6shuc
>>866
>>865です。
ありがとうございます。無事完成しました。
ほんと初歩的な質問で申し訳ない。感謝です。
870Now_loading...774KB:2008/06/27(金) 14:11:30 ID:rUNmnuel
オブジェクトの生成と削除について質問です
new で生成した Embedクラスのオブジェクトを
削除もしくは破棄するにはどうすればよいのでしょうか?

*********************************
[Embed(source='res/enemy/0.gif')]
private var Enemy0:Class;
private var enemy:Sprite;

enemy=new Enemy0();
*********************************

動的に生成したものではないので
× delete enemy;
表示から外すだけで残ってるので
× removeChild(enemy);
871Now_loading...774KB:2008/06/27(金) 14:19:36 ID:cQI/UxGJ
>>870
enemy = null;
他からの参照残ってなきゃガベージコレクトで消えるよ
872870:2008/06/27(金) 17:16:23 ID:rUNmnuel
>>871

thx!!! 帰宅したら試してみます!!!
873Now_loading...774KB:2008/06/27(金) 17:38:07 ID:TTA1+dsk
似たような亜種スレに間違えて書き込んでいたのを今になって気づきました。。
とても困っているのでお助けください…。


使用ソフト FlashCS3pro
スクリプト AS2.0

rootの1フレーム目に置いたAというムービークリップをボタンにして
rootの5フレーム目に置いたBの画面に移るという処理を扱いたいので、
rootのAというMCに
on(release){
gotoAndPlay(5);
}
と入力し、
AというMCの中に入って _up _overを作り、オンマウスで色が変わるように設定しました。
そしてhit領域のためにflash_movie_hitというMCをつくり、そのMCに

onClipEvent(load){
this._visible=falce;
this.hitArea = flash_movie_hit;
}
そしてAというMCの中の1フレーム目に

this.hitArea=flash_movie_hit;
flash_movie_hit._visible =false;
this.stop();
というASを入力しました。

その後パブリッシュしてみると、_overとhit領域は指示通りきいていて
ボタンの証拠である指カーソルに変化はするのですが、
そのボタンをクリックした時に、5フレーム目にジャンプしないのです。
上記のスクリプト以外に何か入力しなくてはいけないのでしょうか…?
874Now_loading...774KB:2008/06/27(金) 17:47:43 ID:s0jZ70sx
マルチ。 向こうのスレに質問の取り下げレスなし。 モラルの無いやつは氏ね。
875Now_loading...774KB:2008/06/27(金) 17:49:03 ID:TTA1+dsk
これもマルチになるんですか。ではあのスレの意味は何なんですか?
876Now_loading...774KB:2008/06/27(金) 18:01:27 ID:TTA1+dsk
取り下げて来ました。
先に質問取り下げなかったのは確かにモラルの無い行動でした。
申し訳ございません。
877Now_loading...774KB:2008/06/27(金) 19:11:10 ID:xn6zNec9
>>873
ボタンはMCで作っているんだよね?
まず、単独関数gotoAndPlay()は過去のもので非推奨となっており使用しないほうがいい。
まぎらわしいが、MovieClip.gotAndPlay()というべつのメソッドを使うほうが
理解も正しくなる。
で、MC「A」からみて、移動したいターゲットは何かを考える。
ただし、サーバにあげて実行した場合など、フレーム5が読み込まれていないのに
そのボタンを押してしまうと、何も起こらなくなってしまうが、そのへんは
大丈夫か?

それとfalceは写し間違いか?
なんでonClipEvent(load)とフレームアクションの双方で同じ処理をしているのか?
できればもうすこし基本部分を勉強して理解することをすすめる。
878Now_loading...774KB:2008/06/27(金) 21:07:31 ID:TTA1+dsk
>>877
返答ありがとうございます。
ボタンの作りは
「シェイプをシンボル変換でMC化して、それにon()ハンドラを当てている」状況です。
これだけでエラー無く、またパブリッシュ後マウスを乗せたときにも
反応(指カーソル)したので、そうしていました。

MovieClip.gotoAndPlayを推奨ですね、それに直そうと思います。
ちなみにAS2でも対応していますでしょうか?

「A」から移動したいターゲットは5フレーム目なので、
on(release){
gotoAndPlay(5);
}
と入力しました。安直すぎるかなとは思いましたが、ここも悪い点でしたでしょうか?

falceについては
http://homepage3.nifty.com/ginga-b/MX/btnmc.html
ここを参考にさせていただいていたのですが、flash_movie_hitに当てる部分には特別何か書いているような記述は無いですね。
自分の勘違いでした。flash_movie_hitの方のASは削除します。
879Now_loading...774KB:2008/06/27(金) 21:20:24 ID:xn6zNec9
>>878
>MovieClip.gotoAndPlayを推奨ですね、それに直そうと思います。
>ちなみにAS2でも対応していますでしょうか?
対応している、というかAS2.0ならこうすべき。

>「A」から移動したいターゲットは5フレーム目なので、
この解釈が違う。
ターゲットというのは、MovieClip.gotoAndPlay()のMovieClipにあたる部分。
this.gotoAndClip(5)だと、Aの再生ヘッドががフレーム5に移動することになる。
thisは自分、つまり「A」を指すから、Aに対して命令してるってこと。
Aからみたら移動したいMovieClipのターゲットパスは何になるかが理解できなくちゃいけない。
この場合はthis._parentもしくは_rootのはず。

参考にしてるサイトに、ターゲットパスについても詳しく書いてあるはずなので、読むといいよ。
それ以外は間違ってない。

>falceについては
falseの綴りミスを実際のflaファイルでもやっていないか訊いただけっす。
880Now_loading...774KB:2008/06/27(金) 21:21:25 ID:xn6zNec9
>>879
gotoAndClip(5)ってなんだw
すまん、gotoAndPlay(5)の間違いです。
881Now_loading...774KB:2008/06/27(金) 21:30:23 ID:TTA1+dsk
>>879
「MovieClip.gotoAndPlay」というのが
「MC名.gotoAndPlay」だという事を理解出来ていませんでした。ダメですね…。

仰るとおり、this._parentにしたらすんなりと動作しました。
今まではターゲット指定しなくても動くような簡単なASしかやったことがなかったので、
これからは常にターゲット指定するように心がけます。

falseについても見落としていました。英語もダメダメですね…。

ともあれ、無事解決することが出来ました。
別スレに誤爆するなど迷惑をかけた事もありますが、本当にありがとうございました。
882Now_loading...774KB:2008/06/27(金) 22:20:56 ID:fvCcI2HF
2次元配列で管理されているオブジェクトがあるのですが。

例えばa[0][0]のオブジェクトが空のa[1][0]にゆっくり落ちるようにするにはどのような処理が良いのでしょうか?
883Now_loading...774KB:2008/06/27(金) 22:59:34 ID:EKWyxNlN
>>882
その配列に何が入っていて「ゆっくり落ちる」ってどういう意味?
もう少し詳しく書かないと分からないよ。
884Now_loading...774KB:2008/06/27(金) 23:04:04 ID:s0jZ70sx
>>882
これがゆっくりした結果だな、さすがゆとり。
885Now_loading...774KB:2008/06/27(金) 23:19:50 ID:PIO6T1if
>>884
何か嫌なことでもあったのか?
そういうときは風呂入ってすぐ寝るのコンボがオススメ。
886Now_loading...774KB:2008/06/28(土) 00:07:34 ID:P16TBCb1
>空のa[1][0]にゆっくり落ちる

難しすぎる。想像することすら許されないのか。
887Now_loading...774KB:2008/06/28(土) 00:24:09 ID:12z6bYD+
a[0][0]→a[0.1][0]→a[0.2][0]・・・・→a[1][0]みたいになってほしいんですね。わかります
888Now_loading...774KB:2008/06/28(土) 01:03:30 ID:OfdePscW
テトリス的なことじゃないのか
889Now_loading...774KB:2008/06/28(土) 06:33:12 ID:4/qCm3EI
flexで自作コントロールを作ってます。
2つの子コントロールをもつ親コントロールがサイズ変更された場合、
子コントロールの1つが、変更後の親コントロールのサイズに合うように、
自動的にリサイズされてほしいんですが、簡単にできる方法はありますか?

.NetでいうところのDock=Fillの場合の挙動になってほしいです。

親コントロールのサイズ変更を検出して、
自前で子コントロールのサイズを変更するしかないでしょうか?
890Now_loading...774KB:2008/06/28(土) 08:41:37 ID:7ix4fBHK
>>889
普通に子コントロールのサイズ指定を%指定にすればいいだけでしょ。
891Now_loading...774KB:2008/06/28(土) 10:36:34 ID:4/qCm3EI
>>890
なるほど! ありがとうございました。
892Now_loading...774KB:2008/06/28(土) 11:28:36 ID:8eCbmNjs
落ちモノ作ろうとしてる奴バカなうえにウザいな
893Now_loading...774KB:2008/06/28(土) 14:56:52 ID:+sEJ/+7g
配列はテトリス的なものです
894Now_loading...774KB:2008/06/28(土) 16:23:29 ID:fvAdI9zP
ASに初めて触るので、このスレを覗きに来たんですが>>2-17見て俺には無理だとわかりました。
本当にありがとうございました。
895Now_loading...774KB:2008/06/28(土) 17:59:35 ID:Ysq3LGab
あれはたまたまだ
やっかいな質問で論議してた時 いいタイミングでフラッシュ先生が答えてくれただけ
そもそもここは初心者用スレではないしな
あきらめんなw
896Now_loading...774KB:2008/06/28(土) 18:43:33 ID:fvAdI9zP
>>895
たまたまでしたか・・w
本買って勉強します。
897Now_loading...774KB:2008/06/29(日) 06:35:00 ID:32PuPjYP
http://www.hybridworks.jp/

ここにみたいにゆっくり中央によってくるスクリプトってどうやるんですか?

みなみにAS3.0です。

898Now_loading...774KB:2008/06/29(日) 09:55:22 ID:dPyKuUwx
座標です
899Now_loading...774KB:2008/06/29(日) 10:03:52 ID:32PuPjYP
897です。
色々調べたのですがまだ解決できません。

AS2.0ではこの様に書き込めば中央にゆっくりよってきました。

-----タイムライン-----------------
Stage.scaleMode = "noScale";
Stage.align = "LT";

-----ムービークリップ--------------
root.bb01.onClipEvent (load) {
spd = 5;
}
root.bb01.onClipEvent (enterFrame) {
this._x += (Stage.width/2-this._x)/spd;
this._y += (Stage.height/2-this._y)/spd;
}


3.0での書き方がいまいちよく分からないのでどなたかお教えくださいませ。
900Now_loading...774KB:2008/06/29(日) 10:07:38 ID:z0UVr9uO
AS3じゃクリップアクションは使えないんだお…
メインタイムラインでまとめて管理するか
もしくはOOPでやるしかない
901Now_loading...774KB:2008/06/29(日) 10:14:30 ID:+Xu2OTBQ
>>899
いまいちってどこがいまいちわからんのだ?
as3の基本は分かってるの?
902Now_loading...774KB:2008/06/29(日) 10:28:26 ID:32PuPjYP
2.0は一応最低限はわかっているつもりです。

3.0での書き方はさっぱりで…
クリップアクションが使えないのは理解しているのですが、
どうもググってもこれといったものにヒットせず質問しました。







903Now_loading...774KB:2008/06/29(日) 10:43:01 ID:+Xu2OTBQ
>>902
では、基本を勉強して解らないところを質問しましょう
904Now_loading...774KB:2008/06/29(日) 10:50:10 ID:32PuPjYP
>>903
なので分かる方に質問しているんです。
905Now_loading...774KB:2008/06/29(日) 11:16:02 ID:+Xu2OTBQ
アルファベットも解らない人に英文読解を教えるのは無理ですw
906Now_loading...774KB:2008/06/29(日) 12:09:22 ID:x52vecKq
テメーはその程度の能力しか持ってねーって事だろ。
わかる人だけ答えればいいじゃん。
能力のねー無能のドカスは揚げ足取りしてんじゃねーよバーカ死んでろカス。
907Now_loading...774KB:2008/06/29(日) 13:12:25 ID:+Xu2OTBQ
AS2ちょっと解りますだけではAS3は無理です
OOPの基礎、class、継承など解りますか?
それをここで教えるのは無理です
ASのスレなのでコピペ先教えろとか作ってくれは勘弁してくれ
908Now_loading...774KB:2008/06/29(日) 13:26:02 ID:fZRNfifj
ま、もうちょっと勉強してからだね。
909Now_loading...774KB:2008/06/29(日) 13:41:48 ID:rfI9mr7J
すでに>900さんが物凄い勢いで答えてるしなあ
910Now_loading...774KB:2008/06/29(日) 14:20:21 ID:z0UVr9uO
ほらよ もっと努力する姿勢を見せないと相手にしてくれないお
//フレーム2 初期設定
var spd:int = 5;
stage.addEventListener( Event.ENTER_FRAME, main );//エンターフレーム登録
//フレーム3
this.stop();
function main( event :Event ):void{//メイン処理関数
bb01.x += (stage.stageWidth /2-bb01.x)/spd;
bb01.y += (stage.stageHeight/2-bb01.y)/spd;
}
911Now_loading...774KB:2008/06/29(日) 17:12:49 ID:wLGmGGzI
AS3の質問です
Object から Object に浅いコピーを行い内容を複製したいのですが
obj[key] の key の部分を別の配列に保持しておく以外の方法が思いつきません
もっといい方法はないですか?
912648:2008/06/29(日) 17:52:36 ID:Z/dyDSA1
>>651
>バージョンがわからんけど、Flash8以上でかつ、同一ドメインの画像を読み込んで
>使い回したいんだったら、一度BitmapDataに読み込んだ画像をdrawして、それをattachBitmapで使い回せばいいよ。
>attach(Movie?)というとAS2.0かな?duplicateだと読み込んだ画像まではコピーされないんじゃなかったかな。

as2です。duplicateだと確かにコピーはできませんでした。
BitmapDataでdrawするところはわかったんですが、
外部画像をBitmapDataに格納する方法がわかりませんでした。
loadBitmapでいけるかと思ったのですがライブラリに格納されていなければならないようです。

913Now_loading...774KB:2008/06/29(日) 17:55:05 ID:VTONOeuO
>>911
from copy import copy
o2 = copy(o1)
914Now_loading...774KB:2008/06/29(日) 18:26:58 ID:zmdprvVT
as3です。
ライブラリ内にある適当なインスタンスhoge(クラスもhoge)の中にボタンbtnがあるとします。
このインスタンスをvar hoge1:hoge = new hoge();で動的に生成した場合、中のbtnを参照するには
どうすればいいのでしょうか?お願いします。
915Now_loading...774KB:2008/06/29(日) 19:56:44 ID:wLGmGGzI
>>913
レスありがとうございます。
Python でのコピーは上手くいきました。
でも今困っているのは FlashCS3 + AS3 です。
916Now_loading...774KB:2008/06/29(日) 22:12:24 ID:32PuPjYP
>>910

ありがとうございました。もっと勉強します。ご迷惑お掛けしました。
917Now_loading...774KB:2008/06/30(月) 10:54:38 ID:8/y3Bzq+
FlashCS3+AS3の環境です。
ActionScriptのコードオンリーで
埋め込みフォントを設定するにはどうするのでしょうか?
918Now_loading...774KB:2008/06/30(月) 11:31:03 ID:qtHoHoOq
>>911
もちっと具体的に例とか書いてくれるとわかるんだけど、
自作でclone()メソッド書いて実装するんじゃダメかな
>>914
btnにインスタンス名つけといて、普通にhoge.インスタンス名でいいのではないかな
>>917
CS3だとライブラリに新しいフォントで埋め込むんじゃないかな
flexだとEmbedとか使うけど
919Now_loading...774KB:2008/06/30(月) 12:17:25 ID:IV0ttgSD
>>912
いったんムービークリップに読み込んで、そのムービークリップをBitmapDataにdrawすればいいよ。
読み込んだムービークリップは、消しても構わないんじゃないかな(タイミングによってはプレーヤーごと落ちるけど)。

import flash.display.BitmapData;

//ローダーと、読み込み用のムービークリップ
var loader:MovieClipLoader = new MovieClipLoader();
var container:MovieClip = _root.createEmptyMovieClip("container", 0);
//読み込んだ画像を書き込むビットマップ
var bitmap:BitmapData;

//画像セット
var listener:Object = new Object();
listener.onLoadInit = function() {
bitmap = new BitmapData(container._width, container._height);
bitmap.draw(container); //あとはこれをテクスチャ感覚で使いまわせばおk
_root.attachBitmap(bitmap,1);
container.removeMovieClip();
};
loader.addListener(listener);
loader.loadClip("test.jpg",container);
920Now_loading...774KB:2008/06/30(月) 14:23:56 ID:HUro+0wS
基本的なことで申し訳ないです。すActionScript3で出来ることって例えば何があるのでしょうか?
もちろん、全部挙げればキリがないと思うのですが、ActionScriptを覚えなければ出来ないことを知りたいです。

馬鹿過ぎる質問かもしれませんがオブジェクト指向や何やらという言葉が書いてあるサイトを見ても
それが具体的にどんなことが出来るようになるのかがわかりませんでした。
AS3もFlashも1つのツールでしかないということはわかりますが、そのAS3というツールでどんなことが可能になるか教えていただけないでしょうか?
921Now_loading...774KB:2008/06/30(月) 14:36:05 ID:vkQh8GX8
>>920
俺が感じたのは

速くなります。
普通の小さなASなら全然気にならない程度だけど、大きいプログラムなら、すっごい速くなります。
(3D系はめちゃめちゃ早くなる)

XMLが使いやすい。
_xって書かなく、xでok
構造がAS2の時よりしっかりしているので、原因究明がはやくなったかな?

これぐらいかな。
922Now_loading...774KB:2008/06/30(月) 15:03:41 ID:IV0ttgSD
>>920
FlashでActionScriptを使うとできるようになる事は何?という意味なら、

・計算を使って、ムービーの進行や、画面上の物をアニメーションさせる事ができるようになる
 ⇒複雑な動きの場合、手作業より楽

・ユーザーの操作に反応するムービーを作成できる
 ⇒アクションに対していろんなリアクションが取れる。音ならしたり、動かしたり、読み込んだり、etc...

というのが2本柱かな。そういうのが特に必要と感じなければ、使わなくても構わないと思うよ。

具体的にどこまでできるか、と言われると、それこそキリがないんだけどw
処理速度やセキュリティ的にアウトな事じゃなければ、大概はできちゃうんじゃないかな?
923Now_loading...774KB:2008/06/30(月) 15:12:08 ID:0kadtExB
すごい本格的なゲームが作れるんだおっお!
924Now_loading...774KB:2008/06/30(月) 15:27:59 ID:E4udNg+G
>>918
> 自作でclone()メソッド書いて実装するんじゃダメかな

そのclone()メソッドを作りたいのですが
外部の複数のクラスから操作されるオブジェクトなので
プロパティの名前がわからないのです

public class ObjectContainer {
public var object:Object = new Object(); // 辞書的な使い方
public function clone():ObjectContainer {
}
}
やっぱりプロパティの名前を配列に保持するべきですか?
925Now_loading...774KB:2008/06/30(月) 15:29:15 ID:q7QK99Nu
AS3は、バイナリーデータの加工ができる。
MIDIほか、バイナリーデータの加工に便利なライブラリも登場してきている。

また、ECMA Script文法法規に則ったプログラミングができるから、
メソッドやコンストラクタの引数に初期値を持たせたりできる。

かなり立派なプログラム言語になってきました!
926Now_loading...774KB:2008/06/30(月) 15:54:30 ID:fKYlSbZX
OSやブラウザが違ってもFlash Playerのバージョンさえあってれば移植作業などなしに同じスクリプトが動作する。
Javaが目指したクロスプラットフォームを実現した。
同じECMAScriptでも、Javascriptではこうはいかない。
しかもJavascriptで実現されたAJAXと同じことをさせた場合、中間コード化したAS3.0のほうが動作が軽い
927Now_loading...774KB:2008/06/30(月) 16:04:55 ID:hcggT8QL
>>926
> しかもJavascriptで実現されたAJAXと同じことをさせた場合、中間コード化したAS3.0のほうが動作が軽い

これってIE限定だろ。最近のブラウザならajaxの方がずっと速いぞ。
例えば、240x240の画像を300枚表示してスクロールさせた時のCPU負荷と体感速度比べてみ。
ajaxの方がずっとずっと軽快だぞ。

Flashもajaxも両方でかなり大きなサービスを作ってきたが、今はFlashは部分的にだけしか使
わなくなった。
928Now_loading...774KB:2008/06/30(月) 16:11:35 ID:mSiOwfts
なんでスクロールすんだよ馬鹿
中間コード関係ないじゃん
929Now_loading...774KB:2008/06/30(月) 16:15:13 ID:hcggT8QL
じゃ、中間コード化した具体例あげてみて。

Flashの高速化にめちゃくちゃ苦労した経験からいうと、JSよりもFlashの方が
速いと言われると「マジかよー」と思う。
930Now_loading...774KB:2008/06/30(月) 16:30:22 ID:mSiOwfts
だめだコイツ
馬鹿でもWEB業界はやっているのか安心しました
931Now_loading...774KB:2008/06/30(月) 16:34:50 ID:hcggT8QL
うん、君もういいよ。

Flashのスクロールに中間コード関係ないんだってさ。FlashPlayerに
なったつもりでよく実装方式考えてみろよ。
932Now_loading...774KB:2008/06/30(月) 16:45:16 ID:gBJBW3PY
FlashPlayer9になったつもりで考えてみました。

82 b1 82 cc 83 58 83 8c 83 6f 83 4a 82 ce 82 c1 82 a9
933Now_loading...774KB:2008/06/30(月) 16:46:46 ID:mSiOwfts
バイトコードよりインタープリタのが早いんだってさ。OSに
なったつもりでよく実装方式考えてみろよ馬鹿。
レンダリングエンジン引き合いに出してくんなよ馬鹿
934Now_loading...774KB:2008/06/30(月) 16:54:16 ID:hcggT8QL
はいはい。
935Now_loading...774KB:2008/06/30(月) 17:00:01 ID:qtHoHoOq
>>924
ObjectContainerのコピーを外部から作りたいのかな
public function clone():ObjectContainer {
var tmp:ObjectContainer = new ObjectContainer();
tmp.obj = this.obj;
return tmp;
}
これはシャローコピー。ディープコピーならObjectもnewするとかでどうかな。
外部で作ったObjectContainerのclone()呼べばいいかと
意味違ってたらすまん
936Now_loading...774KB:2008/06/30(月) 17:32:07 ID:E4udNg+G
>>935
詳細を書いたつもりが混乱させたようですいません。
内容をコピーしたいのはObjectの方のプロパティです

var o1:Object = {foo:"bar"};
var o2:Object = copyObject(o1);
o2.foo = "BAZ";
trace(o1.foo); // bar を表示
trace(o2.foo); // BAZ を表示

この場合 copyObject() がfooというプロパティの存在を知らないと
o1.foo をコピーできません。
というか無理な気がしてきたので自前で HashMap クラスを作りたいと思います。
お返事ありがとうございました。
937Now_loading...774KB:2008/06/30(月) 17:43:31 ID:IV0ttgSD
>>936
単純なコピーだったら、こんなで行ける時もあるよ

var obj1:Object = {prop1:[1,2,3],prop2:"あいうえお",prop3:123};
//for in方式で列挙して代入 privateな仕組みがあるとアウト
function clone1(source:Object):* {
var newObj:Object = new Object();//sourceのクラス
for (var prop in source) {
newObj[prop] = source[prop];
}
return newObj;
}
//byteArray方式でバイト情報としてコピー いろいろとアウトになるけど、単純なオブジェクトならいける場合も
function clone2(source:Object):* {
var myBA:ByteArray = new ByteArray();
myBA.writeObject(source);
myBA.position = 0;
return (myBA.readObject());
}

var obj2:Object = clone1(obj1);
trace(obj2.prop1,obj2.prop2,obj2.prop3);

obj2 = clone2(obj1);
trace(obj2.prop1,obj2.prop2,obj2.prop3);

ただ、確実でない。理想は>>935さんの言うように、コピーするクラス側にcloneメソッドが用意してくれてあると、
スマートなんだけどね。外部クラスだったらそうもいかないかな。
938Now_loading...774KB:2008/06/30(月) 18:27:58 ID:E4udNg+G
>> 937
for ... in でプロパティのキーをループ処理できたのですね
for each ... in でプロパティの値をループ処理する方法しか知りませんでした
上の方法で完璧です☆ありがとうございました
939Now_loading...774KB:2008/06/30(月) 21:57:57 ID:6JAbozR6
お世話になります。Flash歴 2ヶ月レベルのものです。

Flash8でボタンのクリックイベントで InputText のカーソル位置に文字を挿入したいのですが、
カーソル位置に文字を挿入できません。お助けください。

InputText 内に'ABCD'と入力されているときで
カーソルがBとCの間にあるものとします。( こんな感じ-> AB|CD )
この状態でボタンの on (click) 内で次のコードを実行すると

on (click){
Selection.setFocus(_root.txt1); // InputTextのtext1にフォーカス移動

pos_cur = Selection.getCaretIndex(); // カーソルの位置取得
pos_start = Selection.getBeginIndex(); // 選択開始位置取得
pos_end = Selection.getEndIndex(); // 選択終了位置取得

trace(pos_cur); // 4が出力されます
trace(pos_start); // 0が出力されます
trace(pos_end); // 4が出力されます
}

pos_cur, pos_start, pos_end 全ての値が2となってほしいのですが、
上記のような間違った値が出力されます。

ちなみに、同様のコードをtext1のイベント内で実行すると
pos_cur, pos_start, pos_end とも正しい値が取得できます。

Selection.setFocus(_root.txt1); した後に
何かを実行しないとSelection.get三兄弟の正しい値が取得できないような感じがしますが
ご存じの方、ご教授お願い致します。
940Now_loading...774KB:2008/06/30(月) 22:12:05 ID:2Uk3Ko6s BE:1701162296-2BP(0)
フラッシュう材のでとめる方法おしえてくれ

http://www.rpromotion.jp/
941Now_loading...774KB:2008/07/01(火) 00:18:57 ID:NBl5n5ey
939は日本語でoK?

942Now_loading...774KB:2008/07/01(火) 00:24:21 ID:r6cLRlq0
>>940

右クリック→再生のチェックをはずす



ところで
>>926>>927
蒸し返すようで悪いんだけども、画像スクロールってas3まったく関係なくね?w
943Now_loading...774KB:2008/07/01(火) 00:41:33 ID:wqUYjSHJ
>>942
>画像スクロールってas3まったく関係なくね?w

どうしてそう思うのだ?例えばFlexのスクロールバーコンポーネントのコード読んめば一目瞭然だろう?
944Now_loading...774KB:2008/07/01(火) 00:47:54 ID:wqUYjSHJ
>>927
ここはASのスレだ。ここでflashを使わないなどと書けば、>>933のようなflashマンセーの
キチガイが沸いてくるのはいつものことだろうよ。学習しろよ。

しかし、初心者にajaxよりもflashの方が速いと説明しておいて「レンダリングエンジンの速度
は別の話」というのは悲しすぎるな。flashにレンダリングさせないで何の速度を自慢するんだ?
物理エンジンの計算速度が速いぜとでも言いたかったのだろうか。
945Now_loading...774KB:2008/07/01(火) 00:52:10 ID:r6cLRlq0
>>943
いや240*240の画像300枚のスクロールとかas3の処理よりレンダリングエンジンによる処理の負荷のほうが圧倒的に高いわけで、
as3がいくら速かろうがレンダリングエンジンはas2のときと変わってないんだしレンダリングエンジンの処理以上のスピードはでないわけで。
なので>>927さんが言ってるのはas3との比較にはならいから関係なくね??ってこと

俺の言ってることがおかしかったらスマソ
946Now_loading...774KB:2008/07/01(火) 00:56:59 ID:r6cLRlq0
>>944
あれ?今flash自体のことじゃなくてas3にすることによる恩恵云々の話だよね?
この場合レンダリングエンジンはas2と変わってないから考慮しないってのはもっともな話だと思ったのだけど・・・
あれ、おれなんか勘違いしてる?w
>>944さんの言うとおりas3は物理エンジンの計算速度が速いぜと言いたいのだけど・・・w
947Now_loading...774KB:2008/07/01(火) 01:32:00 ID:Q6hPM0QB
どこでもキチガイ原理主義者はいるな
ボクの使ってる言語がサイコーでボクは正しいです
ごめんなさいが言えないんだな
948Now_loading...774KB:2008/07/01(火) 01:48:30 ID:I+43kTv8
AS3をやり続けるとこうなってしまう──

そう危惧した>>920はAS3は諦め、別の言語を習得した。

それは、HSP。
949Now_loading...774KB:2008/07/01(火) 01:50:12 ID:tXYc1rfd
// JavaScript
var time = new Date().getTime();
var count = 0;
for ( var i = 0; i < 100000; i++ ) {
count++;
}
alert( new Date().getTime() - time );

// ActionScript 3.0
var time:int = getTimer();
var count:int = 0;
for ( var i:int = 0; i < 18000000; i++ ) {
count++;
}
trace( getTimer() - time );

これでだいたい同じスコア。
ということで、AS3.0はJS(Fx2)の約180倍は速いってことだね。
950Now_loading...774KB:2008/07/01(火) 01:54:55 ID:1sTs94XS
で、それを何百回ぐらい試行して誤差とか計測したのかなw
951Now_loading...774KB:2008/07/01(火) 02:31:35 ID:r6cLRlq0
俺も実際にどのくらいの差がでるのか興味あったから試してみた AS2,AS3,javascriptの3つを比較
100万までの数の素数を求めるプログラム(意味はないw)
プログラムで10回まわした平均を出してるのでこのプログラムをさらに10回動かして、計100回の平均を求めた
AS3
var N:int = 10;
var sum:int = 0;
for (var i:int = 0; i < N; i++) {
sum += primesTest();
}
trace(sum/N);

function primesTest():int {
var time:int = getTimer();
var n:int = 1000000;
var i:int;
var primes:Array = new Array(n);
primes[0] = false;
primes[1] = false;
for (i = 2; i < n; i ++) {
primes[i] = true;
}
for (i = 2; i * i < n; i ++) {
if (primes[i]) {
for (var j:int = i*2; j < n; j += i) {
primes[j] = false;
}
}
}

return getTimer() - time;
}
AS2はこれのint型をNumber型に置き換えただけ
952Now_loading...774KB:2008/07/01(火) 02:33:00 ID:r6cLRlq0
jsもほぼ変わらない
function primesTest(){
var time = (new Date()).getTime();
var n = 1000000;
var i, j;
var primes = new Array(n);
primes[0] = false;
primes[1] = false;
for(i = 2; i < n; i++){
primes[i] = true;
}
for(i = 2; i*i < n; i++){
if(primes[i]){
for(j = i*2; j < n; j += i){
primes[j] = false;
}
}
}
return (new Date()).getTime()-time;
}
var N = 10;
var sum = 0;
for(var i = 0; i < N; i++){
sum += primesTest();
}
document.write(sum/N);
953Now_loading...774KB:2008/07/01(火) 02:37:11 ID:r6cLRlq0
テスト結果

AS2 6773.6 毎回警告が出てくるので10回で断念w
AS3 427.7 357.3 355.5 365.8 365.4 357.7 354.9 356.7 361.1 361.2
100回平均 約366.33
javascript
FF3 805.1 776.3 793.6 754.4 739.4 804.8 783.9 841.8 796.2 798.9 
100回平均 約714
IE7 4862 こちらも毎回警告が出てくるので10回で断念

結果はIE7おせえええ FF3はええええ  
でしたw
FF3とくらべてもまだAS3のほうが倍近くはやいけど、FF3.1が出てきたらもうちょっと差が縮まるかもね
ちなみにJavaだと100回平均約12でしたw
954Now_loading...774KB:2008/07/01(火) 03:04:03 ID:9V0MpWAy
Cきぼんぬ
955Now_loading...774KB:2008/07/01(火) 03:10:04 ID:r6cLRlq0
Cは10でした
JavaとCにとってはこのくらいの負荷は誤差の範囲なのでまた違うテストする必要があるね

っとそろそろスレチもいいとこなんでこれくらいで失礼
956Now_loading...774KB:2008/07/01(火) 09:39:35 ID:2nZ3zT+e
>>941
ごめんなさい。長々と書いちゃいました。
短く表現すると次の通りです。

setFocusでTextInputにフォーカスを移動した直後、
Selection.getCaretIndexやgetBeginIndexで正しい値が取得できないのはなぜ?

と言う、質問なのですが...
ご存じの方、いらっしゃいませんか。
957Now_loading...774KB:2008/07/01(火) 09:57:01 ID:1sTs94XS
>>956
ボタンクリックでなく、マウスクリックでテキストフィールドの値を取得してみるとか
958Now_loading...774KB:2008/07/01(火) 09:57:39 ID:Z/j37bcY
>>955
CとJavaの場合、実行時間よりも、プロセスの起動時間やメモリ消費量が違う。
959Now_loading...774KB:2008/07/01(火) 11:49:27 ID:Svh81VPA
FlashにURL文字列を外部xmlから読み込みこんで使いたいですが、
"&"という文字を他の文字列で置き換えるなどせずに、そのまま扱うことは可能でしょうか?
960Now_loading...774KB:2008/07/01(火) 13:48:35 ID:UmCcgZ02
>>959
属性にしなければ、OK。
属性の場合は、&
961Now_loading...774KB:2008/07/01(火) 14:01:26 ID:Svh81VPA
%26amp%3b ですか?
962Now_loading...774KB:2008/07/01(火) 14:02:10 ID:Svh81VPA
間違えた
&
963Now_loading...774KB:2008/07/01(火) 14:12:19 ID:Svh81VPA
& a m p ;
964Now_loading...774KB:2008/07/01(火) 15:29:46 ID:UmCcgZ02
>>963
そうw

2chだと、自動的に変換されるのな
965Now_loading...774KB:2008/07/01(火) 16:13:20 ID:vk++qjmz
1フレームから25フレームまで設置してあるSoundMCに
attachSoundで長めの曲を設定し、繰り返し回数999回で曲を流します。

5〜20フレームに色々設置してあるボタンのgotoAndStopやgotoAndPlayを使って
ページを行ったりきたりするようになっているのですが
サウンドの.stop()は全く設定していないのに
現在のフレームより前に戻ると曲が止まってしまいます。
(18フレーム目から6フレーム目に戻るなど)

PlayでもStopでもカレントフレームから進む分には曲が止まりません。
ずっと曲を流しっぱなしにしたいのですが これは仕様なのでしょうか?
回避方法はあるのでしょうか

flashはCS3でAS2.0使ってます。宜しくお願いします
966Now_loading...774KB:2008/07/01(火) 16:38:38 ID:hG2M5Wwa
毎日新聞への抗議活動の一環として、海外への誤解を解くべく動画を作成しようと考えています。
現在訴える文章の英訳まで出来ています。
動画職人、音職人の方、手伝っていただけないでしょうか?
こちらのスレでやっていますので、一度ご覧になってください
http://yutori.2ch.net/test/read.cgi/news4vip/1214828349/
967Now_loading...774KB:2008/07/01(火) 17:37:19 ID:K4yLDGws
>>965
仕様というか、965自身がそういう作り方してるんだと思う。
ASやflaの構成を詳しく書かないと、これ以上具体的な助言はできない。
968Now_loading...774KB:2008/07/01(火) 18:05:28 ID:6StmygB6
お願いします。
AS3.0です。

イラレからパスデータを読み込み、パスデータ上のポイントの座標を取得する事って可能でしょうか?
969965:2008/07/01(火) 19:05:21 ID:vk++qjmz
>>967  すみません。先ほどと少し違います。
また改行多いと言われて縮めたので見づらいのはご了承下さい

1フレーム目:ローディングバー
2フレーム目:attachするためのサウンドファイル全部置いてある
3フレーム目から25フレームまで空のMC(sound1とse1〜4)の5個が置いてある
また3フレーム目でASで曲の設定
 //BGM1
 var sobj1 = new Sound(sound1); sobj1.attachSound("bgm1"); sobj1.start(0,999);
 //クリック音
 var sose1 = new Sound(se1); sose1.attachSound("SE1"); sose1.stop();

4フレーム目はstop()しただけのタイトル画面。ボタンを押すと
on(release){
 sose1.start(0,1); gotoAndPlay("anime1");
}クリック音を鳴らして5フレーム目に飛んで8フレームまでアニメ。
同じく"anime2"として8フレーム目のボタンを押すと
9フレーム目に飛んで11フレームまでアニメ

ここまではいいのですが

8フレーム目や11フレーム目でタイトルに戻るのボタンを押す
on(release){
 sose1.start(0,1); gotoAndStop("title");
}
もしくは11フレーム目の別ボタンで
on(release){
 sose1.start(0,1); gotoAndPlay("anime1");
}
5フレーム目からのアニメを再度再生すると、なぜかsobj1の音が止まってしまいます。
sobj1.stop();があるのかと検索かけたのですがありませんでした。
現状flaはおいといて新規で上記のサウンドだけの部分を再作成しても同じ状況です。
970Now_loading...774KB:2008/07/01(火) 20:30:38 ID:Mfd3h5sm
>>969
よくわからんけどsoundとMCの関連付けがどっかでおかしくなってるんだと思うよ。
soundと関連付けしたMcが存在してない瞬間があるとか、MCネーム"se*"が大文字になってるとか、名前付け忘れてるのがあるとか確認してみ。
とりあえず"se*"リネームしてみれば?
971Now_loading...774KB:2008/07/02(水) 01:30:08 ID:8IeiwW2c
>>969
同じものをつくってみたが、こちらでは再現しない。
>>970がいうように、大文字小文字の間違いとか、同じ変数使ってるとか
ターゲットの名前間違ってるとか、何かそこには書かれていない問題がある。
972939:2008/07/02(水) 21:25:03 ID:elpyTVaq
>>957
ありがとございました。

>マウスクリックでテキストフィールドの値を取得してみるとか
やっと意味がわかりましたw

↓今回参考にしたページです。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1514074

なんとか、7月7日のオープンに間に合いそうです。お世話になりますた。
973Now_loading...774KB:2008/07/03(木) 02:20:07 ID:2COruDUz
AS2でFusekitを試していて、ボタンを押したらモーションを逆再生させたいのですがどうすればいいのでしょうか?
Tweenクラスでいうyoyo()のようなメソッドがないようなのですが
974Now_loading...774KB:2008/07/03(木) 22:58:57 ID:2COruDUz
973ですがコールバックでトゥイーンさせることで解決しました
975Now_loading...774KB:2008/07/04(金) 15:47:38 ID:3zeGHTJG

作成したFlash(AS2)のすぐ上にプルダウンメニュー(adobe spryのmenubar)を配置しているのですが、
Mac OSX 10.4.11のSafari3/player9.0.124だけFlashの下に一部のメニューが下に隠れてしまう現象が発生しています。

メニューがFlashの下に隠れるのは、FlashでsetIntervalが動いている間(なのでほとんどずっと)ですが
同じ現象がおこった方いませんか?また、これの回避策は、setIntervalを使用しない以外にないでしょうか。

safari3以外はどのOS・ブラウザでも何も問題ないので、
safari3のためだけに仕様を変えるのは出来れば避けたいのですが・・・
976Now_loading...774KB:2008/07/04(金) 16:49:15 ID:k8p50eYs
初歩的な質問だと思いますがお願いします。

//ActionScript2.0
var clip :MovieClip;
clip.onRelease = function() {
//this
};

この場合、onRelease 内では this は clip を指すと思うんですが、
外のクラス変数等にアクセスする場合、
_parent,_root等を駆使するしかないんでしょうか?
もっと簡単な方法があったらご教示ください。
977Now_loading...774KB:2008/07/05(土) 08:59:38 ID:PoOGattW
>>976
簡単というかそれが普通だし
スコープを勉強するといろいろよくわかるよ
978Now_loading...774KB:2008/07/05(土) 21:59:46 ID:c/kXg/1r
ActionScript3からJavaScriptの命令を使用したのですが、コンテナが対応していないとエラーが出ました。IE6.0のブラウザで表示させてるのですが原因がわかりません
979Now_loading...774KB:2008/07/05(土) 22:02:58 ID:c/kXg/1r
ちなみにActionScript3で
Externalinterfaceクラスではこのコンテナは対応してませんと出ます。
980Now_loading...774KB:2008/07/05(土) 23:08:38 ID:UblZ/Pr2
>>976
つい最近同じ質問がどっかで出たばかり。 姉妹スレとかこのスレのログとか探せばあるよ。
981Now_loading...774KB:2008/07/07(月) 12:42:14 ID:PfHukY//
>>975
wmodeをtransparentにしてみた?
982Now_loading...774KB:2008/07/07(月) 18:08:27 ID:iXq93FWH
>>978
http://livedocs.adobe.com/flex/2_jp/langref/flash/external/ExternalInterface.html

一番下にある例を動かしてみると分かるよ。
983Now_loading...774KB:2008/07/07(月) 22:15:06 ID:4VB/lboM
リファレンスでComboBoxクラスのプログラム例(画面一番下)があったのですが、そのままコピーしてもエラーが出てきます。
ComboBoxコンポーネントがポイントだと思うのですが何ですか?
984Now_loading...774KB:2008/07/07(月) 22:28:37 ID:EckuziI/
>>983
できたよ

コンポーネントをステージにドラッグしてcbっていう名前をつけないと無理だよ
985Now_loading...774KB:2008/07/07(月) 23:11:31 ID:vjEINlhq
as3で質問があります。

var loader_obj = new Loader();
loader_obj.load(new URLRequest("test.png"));
として、ローダーにtest.pngを読み込ませたものを

var bmp_data:BitmapData = new BitmapData(500,500,true,0xFF000000);
bmp_data.draw(loader_obj.content);
stage.addChild(new Bitmap(bmp_data));

のようにステージに表示した場合をパターン1


次にあらかじめ、test.pngをライブラリに読み込ませておいてそれをリンケージで
"test"としてビットマップにし、
var bmp_dataCheck:BitmapData = new test(0,0);

var bmp_data:BitmapData = new BitmapData(500,500,true,0xFF000000);
bmp_data.draw(bmp_dataCheck);
stage.addChild(new Bitmap(bmp_data));

それをパターン1と同様にステージに表示した場合をパターン2


このパターン1と2の画像出力を見比べてみると極々微妙に違ってしまうのですが何故でしょうか?
ローダーを介すると色が変化するのでしょうか。よく分かりません。
986Now_loading...774KB:2008/07/07(月) 23:19:31 ID:EckuziI/
>>985
Flashに埋め込む場合は軽くするために圧縮してたと思う

ローダーから読み込む場合はどうなるか知らないから参考にならないかもしれないけどw
987Now_loading...774KB:2008/07/07(月) 23:42:28 ID:vjEINlhq
>>986
getPixelsで色を取得してみると、ローダーから読み込んだ方だけ色が位相してしまってる感じなんで
圧縮とはちょっと違う感じなんですが。
988Now_loading...774KB:2008/07/07(月) 23:42:49 ID:mcONPgjr
>>985
Flashに読み込んでる場合は、画像のプロパティに圧縮に関する設定がある。
その設定がどうなっているかをまず確認するんだ。
989Now_loading...774KB:2008/07/07(月) 23:51:29 ID:vjEINlhq
>>988
予めライブラリに読み込んでる方は何の問題もないので
ローダーで読み込んだ場合の画像の圧縮プロパティがある…んでしょうね、ちょっと調べてみます。
990Now_loading...774KB:2008/07/08(火) 00:01:06 ID:Wcpcl/z9
500ピクセル四方の画像じゃないんじゃね?
991985:2008/07/08(火) 02:10:02 ID:37ODdv7N
失礼しました。photoshopのpng出力が狂ってただけでした。
jpgやgifでは問題なかったのでもしかして…と思いきや。
お騒がせ致しました。
992Now_loading...774KB:2008/07/08(火) 02:14:44 ID:aYKCcW0Q
win9x、AS1です。
phpのerror_reporting();みたいなのが
ASにもありましたら教えてください。
993Now_loading...774KB:2008/07/08(火) 02:37:43 ID:KqxOtnve
>>992
その前にphpのerror_reporting();が何かを教えてください
994992:2008/07/08(火) 05:26:34 ID:aYKCcW0Q
>>993
警告やエラーのチェックレベルを上げる関数です。
例えば、存在しない関数を呼び出したり、
宣言していない定数を使ったりすると、
エラーとして教えてくれます。
995Now_loading...774KB:2008/07/08(火) 10:31:35 ID:+aOOfDGP
>>991
ww
996Now_loading...774KB:2008/07/08(火) 10:34:10 ID:TUNdD+xK
>>994
AS3ならstrictモードとかあるけどAS1だど何でも通りそうな気がする
997Now_loading...774KB:2008/07/08(火) 12:25:22 ID:A7qBMJSw
>>994

とりあえず、FlashDevelopというフリーのコードエディタを使いなさい
998985:2008/07/08(火) 13:17:31 ID:37ODdv7N
同じ状況でひっかかる人がいるかもしれないので、補足。
最新のphotoshopだと分かりませんが、ちょっと古いPhotoshop(7,cs1)でpngを出力する時、
[Web用に保存]を選ぶとガンマ値を勝手に変更してしまうので、そのpngファイルを
flashでローダーを通して扱うと色が沈んでしまいます。
もしflashで扱う場合は、[別名で保存]でpngを選択しておいた方が安全と思われます。
999Now_loading...774KB:2008/07/08(火) 13:19:27 ID:eIbs9Y3v
なんでこう信者は痛いかな
1000Now_loading...774KB:2008/07/08(火) 13:58:28 ID:zuyuiRst
>>998
昔のPhotoshopのガンマ値変更の話は以前読んだが、
それなら、オーサリング時にFlashに読み込んだ時点で
pngの色がおかしいって気づかないか?
Flashに配置すればガンマ値がまた変更されるんか?
そこが不思議なんだが。
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。