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

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

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

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

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

関連スレ
Flashの超基本的な質問はここでしろ! part43
http://toro.2ch.net/test/read.cgi/swf/1327630120/
※初心者は↑こちら推奨
2Now_loading...774KB:2012/10/08(月) 10:02:59.26 ID:235zk/8x
>1乙
3Now_loading...774KB:2012/10/12(金) 05:20:06.93 ID:Pq/5ScKn
>>1乙カレー食え
4Now_loading...774KB:2012/10/14(日) 23:34:14.78 ID:3HNBTiL5
こんにちは。

ActionScript3.0のマスクについて質問させていただきます。
現在下記のようにマスクをかけようとしたところ、かかりませんでした。
ビットマップには既に画像が入っています。

var my_shape:Shape = new Shape( );

stage.addChildAt( this.my_shape, 0 ); // --- 矩形を左上で固定させる(実はここもよくわかってない)
this.my_bitmap.mask = this.my_shape; // --- マスクのセット
this.my_shape.graphics.lineStyle( 30, 0xFF0000, 1.0, false, "normal", CapsStyle.ROUND );

this.my_shape.graphics.moveTo( 0, 0 );
this.my_shape.graphics.lineTo( 1024, 768 );

moveToとlineToを次のようにしたらマスクがかかりました。

this.my_shape.graphics.beginFill( 0xFFFFFF );
this.my_shape.graphics.drawRect( 0, 0, STAGE_H, STAGE_V );
this.my_shape.graphics.endFill( );

なんとなくなのですがFLASHには線と面があるという事でしょうか?
また線でマスクをかけたいばあいはどのようにすればいいのでしょうか?

画像がスクラッチのように出てくる演出を考えております。

よろしくお願いします。
5Now_loading...774KB:2012/10/15(月) 00:24:25.87 ID:WPjrbl3F
>>4
マスクとは「塗り」で設定するものなので線ではできない

線のように細い塗りにするとか
6Now_loading...774KB:2012/10/15(月) 23:27:25.55 ID:mC20kcf7
4です。

なるほどマスクとは塗りで設定するものですか。
勉強になりますありがとうございます。

現在drawCircleを連続使用してボールペンのようなマスクを実現しました。
最初はシェイプクラスのグラフィックを使用して行ったのですが、見事に処理落ちしました。
それから as スクラッチ で検索したら、参考にすべきページが出てきました。
そのページではシェイプではなくムービークリップを使用していたので変更したところ処理落ちがなくなりました。

一応挙動には満足しているので解決とさせていただきます。

ただなぜ処理落ちが取れたのかがわからなくてちょっと後ろ髪を引いてますw

ありがとうございました。
7Now_loading...774KB:2012/10/15(月) 23:42:37.76 ID:WPjrbl3F
Graphicはdrawしまくるとめちゃくちゃ重くなる
enterFrameでdrawCircleしたんだったら大変なことになるかもね

MCでも塗りに対してマスクになってるよ
8Now_loading...774KB:2012/10/17(水) 13:58:23.91 ID:C62UWsgj
よくfunction内とかで

{
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,comp);
loader.load(...);
}

ってコードが有りますが、loadが終わる前にGCが発生して
loadが中断してしまう可能性はありませんか?
9Now_loading...774KB:2012/10/17(水) 14:25:58.90 ID:KS9flDzp
contentoLoaderInfoにイベントリスナー参照があってcontentoLoaderInfoからloaderがthisで参照されてるからなんとなく大丈夫のような気がするけどためしてはいない
10Now_loading...774KB:2012/10/17(水) 14:28:08.01 ID:KS9flDzp
あうcontentoってなんかダサい打ち間違い (w
11Now_loading...774KB:2012/10/17(水) 14:40:43.01 ID:KS9flDzp
訂正 thisじゃ自分自身になっちゃうので、LoaderInfo.loaderで関係するloaderを参照してるんだった
128:2012/10/17(水) 16:09:33.35 ID:C62UWsgj
ttp://www.flash-jp.com/modules/newbb/viewtopic.php?topic_id=9573&forum=6
ここ見ると可能性はあるっぽいです…

多分大丈夫的なノリで皆さんコーディングしてるんでしょうか… 恐ろしや
それとも実務ではloaderをちゃんとメンバ変数に保存してるんですか?
13Now_loading...774KB:2012/10/17(水) 17:26:01.40 ID:qZPZmWRg
>>12
そんなこと聞くよりGCについて勉強した方が早いと思うよ
148:2012/10/18(木) 11:37:23.65 ID:xhBrIZRy
ttp://www.moock.org/blog/archives/000279.html
こういう記事を見つけました

GCされる条件にClose any connected network objects とあるのでLoading中は大丈夫なのだと思いますが、
公式でこういった見解出てましたっけ?
15Now_loading...774KB:2012/10/18(木) 12:55:58.22 ID:Yotni8lM
FlashProとFlashBuilderで連携した開発でハマったので質問です。

■前提

FlashBuilder 4.6
Flash Pro CS6

playerglobalは11.3で統一
「-locale ja_JP -swf-version=16」付きでビルド

FlashProで複数のflaファイルからswc(flaファイル分だけ)を作成
  ↓
FlashBuilderで作成したActionScript3プロジェクトからswc内のクラスを参照して
Flashアプリケーションをビルドしています

■質問事項
Q1.FlashProでswc化したクラスをextendsしただけのFlashアプリケーションが真っ白になる場合がある(ならない場合もある)
 この場合、FlashPro側で設定したMovieClip等のインスタンス名はデバッガ上で確認できるものの値はnullになっている
だが、何故か単にnewしてaddChildした場合は正常に動作する

Q2.FlashProでswc化したクラスのインスタンスのフレームスクリプトが実行されない場合がある
複数あるswcのどれかをを再パブリッシュしてからプロジェクトをリビルドすると改善する場合がある

どなたか似たような現象に遭遇したとか、解決策ある方います?

よろしくお願いします。
16Now_loading...774KB:2012/10/19(金) 14:17:13.93 ID:HzKzbfV/
15です。

自己解決しました。

flaファイルの中で利用されているフォントが私のPCになかったことが
原因のようで、静止テキストをシェイプ化、ダイナミックテキストをデバイスフォントに
することで解決しました。

イマイチどういう内部処理でこのような現象になったのかは理解できていませんが。。。
17Now_loading...774KB:2012/10/19(金) 14:52:59.83 ID:OSM0G5Si
>>16

flash CS6ってフォント周りでなんかそういう変な現象起こるよ
TLFテキストで文字が一部欠ける、とか縦書きにすると
表示されない、とかなんだか分からない問題起こった。
ダイナミックテキストにしたりフォント変えると直るんだけど
表示されたりされなかったり、っていう事態があるとチェックが遅れるよね
18Now_loading...774KB:2012/10/19(金) 18:55:54.34 ID:HzKzbfV/
15です。

>>17
フォント周りはそうなんですね。。。


で、その後、直ったと思ったんですが、また同様の症状が発現してしまいました。
最悪継承じゃなく、内部でswc内のクラスをnew&addChildするようにして、更にaddFrameScriptで
flaに書いてたスクリプトを再現すればなんとかなるかと検討中です。

面倒なのでしたくないんだけど
なんか対応方法ないですかね?
19Now_loading...774KB:2012/10/19(金) 21:11:32.54 ID:SW6Y9VAS
こんにちは。

コンパイルされたクリップに変換について質問させていただきます。
使用ソフト:FLASH Pro CS5.5(AS3.0の編集はFlashBuilder4.51を使用)
プログラムは多少知識がありますがFlash&AS3.0は初心者です。

画像などが多くなったためかパブリッシュが遅くなってしまい、
パブリッシュの高速化をしようと思いました。
最初はpngの最適化などを行ってみたのですがflaファイルが小さくなるだけで特にパブリッシュ速度には影響がなさそうでした。
なので少し調べていたら、『フォントの埋め込みでのコンパイルされたクリップに変換』記事が多く見つかりました。
そこでフォントは埋め込んでいないのですが、ムービークリップをコンパイルされた状態にすれば早くなるのではと思い変換を行いました。
そして変換後、元のムービークリップはASに書き出しチェックをはずし(ライブラリには残っています)パブリッシュを行いました。
すると次のような警告が表示されました。

myMovieClip SWF (コンパイル済みクリップ)、行 1 Warning: 5002: シンボル 'myMovieClip2' のフレームスクリプトはコンパイルされたクリップに My_MovieClip2 の定義が含まれているため、無視されました。
My_MovieClip2 の定義をオーバーライドするには、カスタムクラスファイルをクラスパス内に配置します。

確かにmyMovieClip2の最終フレームにはstop();を記述しているのですがmyMovieClipには関係がないのではと思うのですがどういう意味なのでしょうか?
myMovieClip2のstop();を消すとこの警告は消えるのですが、ループしてしまい止めるのが面倒です。
ちなみにMy_MovieClip2はmyMovieClip2のクラス名です。
ステージにはインスタンスは一つも配置していなく、全てAS3.0からnewとaddChildで表示させています。

警告を消し、フレームスクリプトも使用できるようにはならないでしょうか?
よろしくお願いします。
20Now_loading...774KB:2012/10/19(金) 23:17:35.39 ID:YQ0ImvET
そのエラーは初めて見たなw
パブリッシュが遅いって何秒くらいよ?

MCをコンパイルした状態ってなんだっけ
21Now_loading...774KB:2012/10/19(金) 23:58:14.47 ID:SW6Y9VAS
19です。

パブリッシュはストップウォッチで測ったところ平均20秒ぐらいです。
ちょっと変更したらctrl+Enterで動作チェックしているので結構アレですw

実は上記のエラーはFLASHpro再起動したらでなくなりました。
ただ他のビットマップの基本クラスが空欄になってしまい(BitmapDataだった場所)
フレームスクリプトは無視されますという警告が出るようになったので、
コンパイル済みのクリップ(swf)を消して20秒我慢して作ってます。

初めてのFLASHでの大規模(っと言っても個人制作のゲーム)なので、
プロジェクト(?)のセオリーがわからなくて手さぐりです。

皆さんってどういう環境で作ってるんですかね?
よろしければ教えてください。

私は
Win7-64bit+i7-860+メモリ8GB+GT220
FlashProCS5.5+FlashBuilder4.51
基本的には連携とは言ってもFlashBuilder4.51はエディタとして、
っというかドキュメントクラスを編集しようとしたらFlashProに聞かれたので、
なんとなくFlashBuilder4.51を選択しそのままやってる感じです。

最近やっとSWC(前スレで教えてもらった)の存在を知って、
次はFlashBuilderとFlashは切り離して作ろうかなと思っているのですが…。

仕事でFLASHやってる人もこんなにパブリッシュ時間かかるんですかね?


22Now_loading...774KB:2012/10/20(土) 00:12:40.53 ID:wm8Oi1Ov
ウチも中規模以上のを過去にいくつか作ったけどパブリッシュが遅いって事はない
コツはメインSWFに外部サウンドや外部SWF、ラスター画像をロードさせる方式にしてるからだ
一つのSWFにすべて詰め込むとパブリッシュにたっぷり時間がかかるかもしれん

ちなみにメインSWFはフレーム毎に処理を分けてる為 実行(.exe)ファイルにした場合
ウィンドウ上部のコマンドから 制御→次に進む とか 戻る とかされると不具合が出てしまう
それを防ぐ為さらにメインをSWFを1フレームのみの本体SWFに読み込んでリリースしている
(ただしexeファイルで公開する場合)
…て 説明わかり辛いかもw
23Now_loading...774KB:2012/10/20(土) 09:10:28.69 ID:U0mC6qoi
ビデオとかサウンドは埋め込むとプレビューでも毎回エンコードされて時間かかるから外部ロードで、
あとflaファイルがでっかいとぶっ壊れやすくなる気がするから、必要な部分はFlashProでパーツごとにつくって
全体はFlashBuilderのプロジェクトで構築したほうがコンサバかなーという気がする
24Now_loading...774KB:2012/10/20(土) 16:30:02.65 ID:S5Ce8ylq
>>22
なるほど外部データですか。なるほど。
一つ疑問なのですが外部データの場合、人にあげるときに画像とかを直接見られてしまいませんか?
よく複数のswfを一つのswfにまとめて(つなげて)るのを見かけます。
たとえばそれがノベルゲームだった場合途中のswfを再生されたらネタバレになってしまいませんか?
Flashの素材を保護したいわけではなく、exe単品であげたほうがPC弱い人とかにはわかりやすいのかなと。
でもPCゲームとかのフォルダ見ても確かにテクスチャデータとか外部にありますよね。
ってことは内部データと外部データの分け方(バランス)が重要ってことですかね。

swf入れ子にしていくの素晴らしいですね。
シーンで開発分けれますし、進む戻るの解決方法もありがとうございます。(メモ

>>23
やっぱり外部ロードなんですね。ってことはコンプリート的なイベントを考慮して作るわけですね。
恥ずかしながらFlashProのライブラリに入れておけばそういうの覚えなくていいかなと思って作り始めてしまいましたw
なるほど。じゃあ読み込みクラス(Loaderクラス?)のラッパークラス的なものを作ってデータ読み込みを管理したほうがいいのか。
NowLoadingとか出したほうがいいですね。

flaファイルってでっかいとぶっ壊れるんですか!!おっ恐ろしい。速攻バックアップとりました。
現在flaは60Mぐらいなんですが…おっ大きいですかね?最終的には100Mぐらいになりそうですが…。
(ビットマップ500枚ぐらいライブラリに登録してます。そしてドキュメントクラスのコンストラクタで全部new…)

必要な部分をFlashProでってのはSWCってことですよね。次はFlashBuilderメインで作ろうと思います。
コンサバがわからなくて調べましたwなるほど今度人にそう言おう。

正直、失礼な話ですが「FlashってGIFが作れて少しプログラム使える」ぐらいの認識でした。
ですが作り始めて思うのが「こんな便利な物だったのか」と早くやらなかったことを日々後悔です。
私的な話で申し訳ない。

とりあえず外部データをうまく活用したほうがいいということですね。
ありがとうございます。
25Now_loading...774KB:2012/10/20(土) 16:53:04.21 ID:wm8Oi1Ov
画像を見られたくない場合はSWFにして外部読み込み用SWFにする
外部SWFのメインタイムラインは1フレームのみにして そこに制御用MCを配置
制御用MC内の1フレーム目は何も無しで2フレーム以降に画像等貼っとく
本体で呼び出した時は制御用MCの再生ヘッドを動かして(2フレーム以降)にして使う

普通のゲームではここまでやる必要は無いかも どうせ単体では動かないし絵を見られるだけだ
26Now_loading...774KB:2012/10/20(土) 17:19:12.71 ID:qVJiVgT/
>>25
2フレームもいらないだよ
埋め込みアセットにしておけばいいだけだと思う
フレームに配置するより、ライブラリにだけ埋め込んどいて
addChild等で配置するほうが軽いという話も聞いたでよ
27Now_loading...774KB:2012/10/20(土) 18:43:34.02 ID:wm8Oi1Ov
なるほど ラスター画像のみならトゥイーンする事ないもんな
28Now_loading...774KB:2012/10/20(土) 18:45:40.58 ID:N6xTWFm/
>正直、失礼な話ですが「FlashってGIFが作れて少しプログラム使える」ぐらいの認識でした。
>ですが作り始めて思うのが「こんな便利な物だったのか」と早くやらなかったことを日々後悔です。
>私的な話で申し訳ない。

ちょっと前にアニメーションとしてのFlashが流行ったからかこう思ってる人少なくないのかもねえ

今やブラウザという制限超えてモバイルアプリまで作れるものなんだけどね
29Now_loading...774KB:2012/10/20(土) 22:37:31.04 ID:S5Ce8ylq
>>25
なるほど。そういう使い方もできるんですねムービークリップ。
日が浅すぎて色々な使い方(アイディア)が乏しいですw
あ〜しかしなるほど〜そうか〜なるほど…なるほどな〜。

>>26
埋め込みアセットという新しい情報をもらったので検索しました。
アセットはデータを意味するんですね。それを埋め込むと。…これいいですね!!
ただClass as Bitmapというソースがあって「as…?」となりましたがw(キャストなんですね

>>28
確かにその時にイメージを埋め込まれた感があります。
マルチプラットフォームとして開発できるのは素晴らしいですね。
PCやスマートフォンのパワーが全体的に上がればFlashで3Dゲームとか出そうですね。
……あれ?じゃあもうFlashだけでいいんじゃ…。全PCで大体動くし…。
って思うぐらいActionScriptってスマートだと思います。いやほんとに。
ActionScriptとかはJIT系の言語っていうんですかねJavaとか、
なんか敷居が高くて入りずらかったんですけどこれはもう戻れなくなってしまうw
特にActionScriptはFlashProでプログラム付素材が作れる点がすごくいいです。まさに至れり尽くせり。
他のJIT系の言語もこんなに便利なんですかね。ちょっと興味が。
ただintが参照渡しできない事だけが…。っと書いてて思いましたがもしかしてオブジェクト型にすればいいのでは。
すごいぜAS3.0
30Now_loading...774KB:2012/10/21(日) 08:15:51.78 ID:KcyTGyuE
intの参照気にするなんて相当のツワモノらしいなw

最近のコンシューマゲームでもGUIの部分はFlashで作るのはめずらしくないようだ
Flashに慣れると他の言語でグラフィカルな絵の作品を作ろうとすると気が遠くなるだろう
31Now_loading...774KB:2012/10/21(日) 15:41:02.63 ID:QM+n8WlB
AS3で質問です。
--------------------------
main ();
function main ():void{
func1 ();
trace ("A");
func3 ();
trace ("B");
}

function func1 ():void{
trace (11);
var time:Timer = new Timer(1000,1);
time.start ();
time.addEventListener (TimerEvent.TIMER_COMPLETE, func2);
}
function func2(e:TimerEvent):void{
trace(21)
}
function func3 ():void{
trace (31);
}
-----------------
これの結果は、
11 A 31 B 21
となりますが、main()内をできるだけ変えずに、
11 21 A 31 B
とするためにはどうしたらいいでしょうか。
32Now_loading...774KB:2012/10/21(日) 20:31:34.53 ID:rvpxONwP
やり方はたくさんありそうですが多分Timerイベント消しちゃダメなんですよね?
じゃあwait関数とかで一秒ぐらいプログラム止めればどうかと思いましたが
ASにはwaitやsleepは無いようです。ですがこんなの見つけました。

ttp://d.hatena.ne.jp/kaityo/20090621/1245571132

ただループ中(sleep)でもイベントって呼び出されるんですかね?
ASってマルチスレッドなのかがわかりませんw

これは何を目的にしたプログラムなのでしょうか?



33Now_loading...774KB:2012/10/21(日) 21:39:22.21 ID:YZch8By7
目的がまったくわからんが何かの課題かねー? レガシーで非推奨だけどTimer以外ではsetInterval()とかもたしか一応は使えるはず
34Now_loading...774KB:2012/10/21(日) 21:51:13.46 ID:YZch8By7
>>32 非同期処理(?)のライブラリは色々あって便利なのかもしれないけど、
イベント駆動なAS3からプログラム始めた身としてはありゃりゃ?となることも多いです
35Now_loading...774KB:2012/10/21(日) 22:20:15.62 ID:QM+n8WlB
ゲームを作っている最中に疑問が出たので質問しました。
func1で1秒間フェードアウトして、それが終わったらfunc3で新たにメッセージ表示したいんですが、
今はfunc2関数内の最期にfunc3()を書いています。

main関数を見れば、関数内でやっている処理が一目でわかるようにできないかと思いまして。
36Now_loading...774KB:2012/10/21(日) 22:29:32.24 ID:YZch8By7
あれ? A → sleep○○ミリ秒 → B みたいに前が終わったら次を逐次実行するのは同期処理なんでしたっけ?

>>35
timelinemaxみたいな逐次処理が簡単に管理できるライブラリなどを使うのもいいかも
37Now_loading...774KB:2012/10/21(日) 22:53:36.82 ID:rvpxONwP
>>34 いや私もそんなに(むしろ全然)マルチスレッドに詳しいわけではないです。
しかしながら自分で書いてて気になったので追記します。

私が考えたのはTimerクラスをnewまたはスタートした時点で、
スレッドとして扱われるのだろうか、というものです。(ひどく勝手ですが)
ですがよくよく考えるとグローバル変数(ASでなんていうのか)等の同期やらクリティカルセクションがどうとか
という話になりそうなので、普通はそれをユーザー(プログラマ等)に知らせずやらないだろうと思いました。
そう考えるとwait関数などを作ってもmain関数を抜けるまでTimerイベント(今回はTIMER_COMPLETE)に登録された、
処理は実行されないと思います。(お前思ってばかりいないでテストしろよと言われそうですがw)
イベントはひたすらスタックにっぽく溜まっていくのかもしれません。

ちなみに>>35でやりたいことが分かったのであくまで私だったを少し書きます。

1・まずmain関数をタイマーで呼び出す
補足・一秒間に60回処理したいのなら16.6667ぐらいですかね正確ではありませんが。
これで一応main関数が60回呼ばれれば一秒という事になります。(精度は完ぺきではありませんが)
2・メイン関数の中でスイッチかイフで分岐処理でフェードやらを管理します。(っというか全部w)

っという極めて普通そうな案を提案してみますw(ASではどうなんですかねこれは)

ちなみに最新のFLASHはマルチスレッドが実装されているようです。
ttp://cuaoar.jp/2012/06/actionscript-1.html
38Now_loading...774KB:2012/10/21(日) 23:24:15.37 ID:YZch8By7
import flash.utils.*;

・・・ 省略 ・・・

//main内
func1();
setTimeout(func2, 1000)
setTimeout(trace, 1100, "A");
setTimeout(func3, 1200);
setTimeout(trace, 1300, "B");

ライブラリとか使わずに一番短く書くならこんな感じですかねー? Timerでちゃんと書いた方が良いだろうけど
39Now_loading...774KB:2012/10/21(日) 23:40:20.59 ID:YZch8By7
setTimeout()の戻り値を使ってclearTimeout()しないとGCされないみたいなことが書いてあった
40Now_loading...774KB:2012/10/22(月) 00:31:13.19 ID:Q3YiChra
>>38
func2やfunc3の処理がきちんと終了したのを確認してから以降の処理を実行したいんですよね。
さらに、main関数内のfunc1、func3の処理は戦闘開始時、戦闘中、戦闘後くらいの粒感で、func2は戦闘開始時のコマンドボタン表示みたいな少し細かい粒感にしたいので、
main関数内にfunc1 func2 func3を一緒くたに書くのも避けたいのです。
後だし要件すいません。
41Now_loading...774KB:2012/10/22(月) 00:56:46.71 ID:jTjSrpsX
うーんよくわかんないけど、それぞれaddEventListener()でコールバック関数を登録して、しかるべきタイミングで完了イベントをdispatchEvent()する正攻法でいいのでは
42Now_loading...774KB:2012/10/22(月) 01:08:31.33 ID:VmRGcpxx
非常に恐縮なのですが、粒感ってなんですか?(ASの専門用語?)
調べても食感的な事しか出てこなかったので。パーティクル?

43Now_loading...774KB:2012/10/22(月) 02:03:31.27 ID:q2tbNmmH
多分粒度のことだと思う
1つのメソッドをどのくらいの処理内容にするかとか
44Now_loading...774KB:2012/10/22(月) 13:43:46.20 ID:nzGPPTdB
投げられたコマンドを順に処理するエンジンを作ってmainで順番に投げるのが楽では?
45Now_loading...774KB:2012/10/22(月) 15:47:25.49 ID:VmRGcpxx
>>43 粒度ですか。一つ賢くなりました。ありがとうございます。

簡素なエンジンのはずが、
突き詰めていつの間にかFlash版RPGツクールの公開に至ることを願いますw
46Now_loading...774KB:2012/10/22(月) 20:05:53.84 ID:PiDGUXYe
mc1とmc2がステージ上にあり、zキーを押すと、mc1がmc2の近くに動くようにしたいです。
なので、mc1の中に

stage.addEventListener(KeyboardEvent.KEY_DOWN,move);
function move(e:KeyboardEvent)
{
if(e.keyCode == 90)
{
this.x=mc2.x+50;
this.y=mc2.y+50;
}
}

っと書きました。
すると「未定義のプロパティ mc2へのアクセスです」
と出てしまいました。 mc1の中からmc2にアクセスするにはどのようにすればよろしいでしょうか?
47Now_loading...774KB:2012/10/22(月) 20:44:14.45 ID:Q3YiChra
31です。dispatchEventのことは知らなかったのですが、
使ってみたらtrace結果はfunc1 func2 func3となり、希望通りの動きになりました。
こういう使い方は正攻法なのかわかりませんが、ひとまず疑問は解決しました。
ありがとうございます。
--------------------------------------------------------------------
main ();
function main ():void
{
func1 ();
addEventListener ("tofunc3",func3);
}
function func1 ():void
{
trace ("func1");
var time:Timer = new Timer(1000,1);
time.start ();
time.addEventListener (TimerEvent.TIMER_COMPLETE, func2);
}
function func2 (e:TimerEvent):void
{
trace ("func2");
dispatchEvent(new Event("tofunc3"));
}
function func3 (evt:Event):void
{
trace ("func3");
}
48Now_loading...774KB:2012/10/22(月) 21:22:19.39 ID:GNXglkt9
>>46
オススメしないけどその場合はparent.mc2.x
49Now_loading...774KB:2012/10/22(月) 23:00:01.09 ID:PiDGUXYe
>>48 ありがとうございます。 無事解決しました

追加で質問なんですが
シーン1で var a:Number=5 と定義した後 mc1の中で

 var a=MovieClip(parent).a;
trace(a);

と書いても undefined と出てしまい、数字の取得に失敗します。
アクセスするのと、数字を取得するのはまた別の方法になるのでしょうか?
度々申し訳ございません。
50Now_loading...774KB:2012/10/23(火) 00:13:01.81 ID:NhFskcEh
AS3.0で制作していて、ふと疑問っといいますか不安に襲われたので質問させていただきます。

public static const yaoya:Array =
[
  ["トマト", // --- 品名
   100,   // --- 原価
   200 ], // --- 売値
  ["きゅうり",
   50,
   100],
  ["大根",
   75,
   150,],
];
このような配列(二次元配列)があります。
文字列のトマトにアクセスしたいときは、(下記ではコピーか参照になると思います)
var str:String = yaoya[ 0 ][ 0 ]; ですよね。
次にトマトの全データ(品名、原価、売値)が処理上ほしくなりました。なので、
var tomatoData:Array = yaoya[ 0 ].slice( );
のようにしました。
コンパイルが通りデバッグでtomatoDataを見るときちんと
[0] = "トマト" [1] = 100 [2] = 200
と表示されます。
ですがコード補完機能(言葉あってるかな)では
yaoya[ 0 ].
まで入力するとObject型としてメンバを表示してきます。(つまりsliceは表示されない)
気になって調べると私の様なsliceの使い方は何処にも見当たりません。

ふっ不安です!!割と普通にやったつもりだったのですが…。
どなたか正しいのならその説明を!!
間違ってたまたま動いているのならそのご説明を!!
お願いします!!不安で胸が…。
51Now_loading...774KB:2012/10/23(火) 08:15:05.64 ID:IECnOYZF
>>49
var a:Number = ( parent as MovieClip ).a as Number;//こうだな

>>50
public static var yaoya:Array //中身変更したいならvarだろ
52Now_loading...774KB:2012/10/23(火) 08:28:39.96 ID:IECnOYZF
あー コードヒントでslice出ないって事か
継承したプロパティやメソッド全部表示となるととんでもない数になるからかな?
それとも型判定してなく書式だけで判断して最小限の該当プロパティやメソッドしか出さないのかも
どちらにしてもそんなもん気にすんな
53Now_loading...774KB:2012/10/23(火) 08:33:32.17 ID:IECnOYZF
>>49
ごめん これだけで取得出来る as演算子覚えとけ ついでにis演算子も
var a:Number = ( parent as MovieClip ).a;
54Now_loading...774KB:2012/10/23(火) 09:31:50.26 ID:Akw5d3eJ
MovieClip(parent).a 派とどっちが優勢なんだろ
5549:2012/10/23(火) 17:43:35.04 ID:TJp3A+9N
>>53
無事解決しました
回答ありがとうございました。
56Now_loading...774KB:2012/10/23(火) 17:54:32.81 ID:Tj0i0yr2
>>54
nullチェックを考えると、
as演算子のほうが良いと思うが。

var mc:MovieClip = parent as MovieClip;
if( mc ) {
 num = mc.a
;

}
57Now_loading...774KB:2012/10/23(火) 19:47:33.94 ID:NhFskcEh
>>52 コードヒントですね失礼しました。

発言後気になりすぎて英語サイトを漁っていたら割と多くのサンプルソースが
見つかったのでとりあえず安心しています。ありがとうございました。

58Now_loading...774KB:2012/10/23(火) 21:53:10.51 ID:Akw5d3eJ
>>56 MovieClip(parent) でparentがnullだとぬるぽ例外になっちゃうってことか
59Now_loading...774KB:2012/10/24(水) 00:17:28.49 ID:hXHsia3i
var c_no=1 //初期数値

var mc1 = new test;
addChild(mc1);
mc1.x=206.60;
mc1.y=-211.05;

var delete="mc"+c_no;
trace(delete_test) //出力の結果は、mc1

stage.addEventListener(KeyboardEvent.KEY_DOWN,SELECT);
function SELECT(e:KeyboardEvent)
{
if(e.keyCode == 39)
{
        cursor.x=cursor.x+71.6;
removeChild(delete_test); //※
}
}

結果:エラー 強制型変換に失敗しました


こんな風にプログラムを組んでいるのですが、結果が強制型変換に失敗しましたとか出てしまいます。
※のところの removeChild(delete); を removeChild(mc1);  に変えたらエラーが無くなりました。
delete_testの中身もmc1なのになぜエラーが出てしまうのでしょうか?
また、どうしても変数を使ってremoveChildを行わなければなりません。 解決方法はありますでしょうか?
60Now_loading...774KB:2012/10/24(水) 00:32:02.69 ID:6s96ICNi
deleteは単なる文字列変数なので無理
removeChildの引数はDisplayObject型で指定する必要

var mc1 = new test;
mc1.name = "mc1";
addChild(mc1);

・・・

removeChild(getChildByName(delete));


あと、

var delete:String = "mc" + c_no.toString();

みたいにいちいち型を明確にしたほうが作法的に良いとおもいます
61Now_loading...774KB:2012/10/24(水) 00:38:07.81 ID:6s96ICNi
肝心なこと忘れた 変数名のmc1とストリング(文字列)の"mc1"はまったく意味が異なる
6259:2012/10/24(水) 15:23:57.86 ID:hXHsia3i
>>60
ありがとうございます。 出来ました。
つまり、型が違ったために、エラーが出てしまったという事ですね。
それともうひとつ質問なんですが

var p_icon;
var c_no=1;

var m_wp1 = new test;
m_wp1.name="m_wp1"

trace(c_no); //出力結果は 1
p_icon="m_wp"+c_no;
trace("iconナンバー="+p_icon); //出力結果は m_wp1
addChild(getChildByName(p_icon))

結果:パラメーター child は null 以外でなければなりません。


先程の質問と似たような所で詰まっているのですが
これも型が違うために起こってしまったエラーなんでしょうか?
指摘通り、型を明確にしても起こってしまいます。 こういったエラーを出さないようにするには
なにに気を付ければよいでしょうか?
63Now_loading...774KB:2012/10/24(水) 15:37:21.58 ID:6s96ICNi
getChildByNameはその名のとおり、すでにaddChildされている子を表示コンテナから名前(変数名とは別)で取得してくるものなので、
まだaddChildされてないものは当然取得できない。
文字列データで操作対象を指定したい場合はObject型で連想配列みたいにするとか、
律儀にswitch文で処理を分けるとかいろいろ。
64Now_loading...774KB:2012/10/24(水) 16:00:00.51 ID:6s96ICNi
あとjavascriptとかに慣れてるのかもしれないけど、
as3で変数宣言時に型指定しないのはパンツをはかずに外出すること並の変態行為なので型指定はしたほうがいい。
6559:2012/10/24(水) 16:31:14.11 ID:hXHsia3i
>>63
度々回答ありがとうございます。
getChildByName は既に配置されたオブジェクトに対して使うものなんですね。
以上を踏まえて

addChild(getChildByName(p_icon)) の部分を  addChild(p_icon)

に変えてみましたが、結果は、 強制型変換に失敗しました。"m_wp1" を flash.display.DisplayObject に変換できません。
っと出てしまいました。
どうすれば直りますかね? おそらく、変数だったり、文字列だったりがぐちゃぐちゃになってると思うのですが…

変態行為については… 次回から気をつけます! 今回のコードは既にジャングル状態でどこで変数宣言したかあやふやなので…
66Now_loading...774KB:2012/10/24(水) 17:23:19.00 ID:rdO8kg5l
>>65
そういう場合は、
getDefinitionByName(p_icon) as Class
を使えばいいんじゃないかな?

>>64がいうように、型を曖昧にしているからエラーが起こるんだと思うよ
個々の変数の型が何かを把握してないから、無理矢理、文字列をMC等の別のクラスとして
扱わせようとしちゃうわけだしね
6759:2012/10/24(水) 18:26:59.91 ID:hXHsia3i
>>66回答ありがとうございます。

trace("iconナンバー="+p_icon); //出力結果は m_wp1
getDefinitionByName(p_icon) as Class;
addChild(p_icon);

と、やってみましたが、今度は 『変数 m_wp1 は定義されていません。』
と出てしまいました。
「getDefinitionByName 定義されていません」 っとGoogleで調べて、色々と試して見たのですが
どれもうまくいきませんでした…
68Now_loading...774KB:2012/10/24(水) 19:27:28.47 ID:rdO8kg5l
>>67
文法とか流れを無視したってダメ
getDefinitionByName()した結果が大事なのに、その結果はどこからも参照されていません
それじゃ無意味でしょ
流れとしては、以下のようになります

var p_icon:String = "m_wp" + c_no;//文字列ができる
var classRef:Class = getDefinitionByName(p_icon) as Class;//文字列をクラス参照に
var myObj = new classRef();//そのクラスのインスタンスを生成
addChild(myObj);//生成されたインスタンスを表示リストに追加

常に、変数の中身がなんなのか、書いているASがそれぞれ何をしているのかを把握するのが大事
69Now_loading...774KB:2012/10/24(水) 20:38:39.91 ID:RGLVpCTj
やさしいな
70Now_loading...774KB:2012/10/24(水) 22:00:23.09 ID:Hpcfjvbz
deleteは予約語だから使うなよ
71Now_loading...774KB:2012/10/24(水) 23:01:53.64 ID:6s96ICNi
そいうえばそうだった。 変数名deleteはシンタックスエラーになると思うんだけど何の環境でやってるんだろ。
7259:2012/10/25(木) 01:30:26.41 ID:LizcRcZ0
>>68
ありがとうございます。 出来ました。
完成してみて分かったのですが、どうやら私はクラスに関しての知識が全然足りないようでした。
何度も回答してくださり、本当にありがとうございました。

>>70 >>71
var delete="mc"+c_no;  の部分ですが 正しくは var delete_test="mc"+c_no; でした。
混乱させてしまい申し訳ございません。
73Now_loading...774KB:2012/10/25(木) 09:48:28.16 ID:oJeki3It
Vectorで固定長にして後述したいんだけど無理? 
aaa = new Vector.<int>[ -1, 270, 315, 0, 45, 90, 135, 180, 225 ];//エラー無しだが固定長にしたい

aaa = new Vector.<int>(9, true);//固定長にして
aaa = [ -1, 270, 315, 0, 45, 90, 135, 180, 225 ];//後述したいがエラー(Arrayならエラー無し)
74Now_loading...774KB:2012/10/25(木) 10:50:54.96 ID:XtE/pBNO
あとでfixedをtrueにすればいいんじゃね?

var aaa:Vector.<int> = new <int>[ -1, 270, 315, 0, 45, 90, 135, 180, 225 ];
aaa.fixed = true;
aaa.push(0); //長さ変えようとするとエラー
75Now_loading...774KB:2012/10/25(木) 11:24:56.49 ID:oJeki3It
おお そんな手がw ありがとー
76Now_loading...774KB:2012/10/25(木) 14:06:55.29 ID:cHKsgeAd
addChildについて質問があります。
下記のようにスプライトに一枚のビットマップを登録します。(余計なところは省略)

var spr:Sprite = new Sprite( );
var bmp:Bitmap = new Bitmap( new TestBitmapData( ) ); // --- ライブラリに登録してあるビットマップとします
spr.addChild( bmp );

ビットマップがスプライトに登録され描画されます。
その後bmpの参照先を変更します。(現在のTestBitmapDataが不要になったため)

bmp = new Bitmap( new TestBitmapData2( ) );

私はこれでスプライトに描画されるビットマップがTestBitmapData2になることを期待したのですが、そうはなりませんでした。
TestBitmapDataが描画され続け、TestBitmapData2はaddChildで登録しないと描画されませんでした。
そこで考えました。addChildは何を受け取っているのかという事をです。
引数ではDisplayObjectインスタンスとなっているので、bmpの参照を保持していると思いました。
しかしbmpの参照先をTestBitmapData2で初期化されたBitmapに変更してもaddChildで渡したと思っていた参照の示す場所はTestBitmapData2に変更されません。
これはなぜですか?参照は外部から変更したらそれが適応されるのではないのでしょうか?

わかりづらい文章かもしれませんが、どなたかご教授願えないでしょうか。
77Now_loading...774KB:2012/10/25(木) 14:54:02.75 ID:XtE/pBNO
bmp.bitmapData = new TestBitmapData2();
な。

元のコンテナとは別の新しい表示コンテナ突っ込んどいて、それ反映しろってのは無理な話だ。
78Now_loading...774KB:2012/10/25(木) 15:09:52.27 ID:MtB+Aakg
spr.addChild(bmp)ではsprの参照するSprite実体の子としてbmpが参照するBitmapの実体が登録され、
Spriteの実体とBitmapの実体が新たに親子としてお互いを参照するようになる。
ここで、bmp = new Bitmap( new TestBitmapData2( ) ); すると、bmpはnewされた新しいBitmap実体への参照に上書きされるが、
Spriteと最初のBitmap実体の親子参照は影響を受けない。
みたいな感じ?
79Now_loading...774KB:2012/10/25(木) 15:14:27.59 ID:XtE/pBNO
addChildがどうのこうのの話じゃなくて、

var a=[1,2,3];
var b=a;
a=[4,5,6];

としといて、
trace(b);
が1,2,3なのはなぜでしょうと言われても困るという話。
80Now_loading...774KB:2012/10/25(木) 15:40:32.20 ID:jM2y+GwL
それ誤解産むと思うんだが。
a=[4,5,6];
を、
a.push(4);
とかに置き換えたときにどうなるかがわかってればいいけど。
81Now_loading...774KB:2012/10/25(木) 19:12:39.69 ID:MtB+Aakg
蛇足ながら追加。質問者さんのやりたかったイメージに近いかなー?
画像切り替えとかはせっかくフラッシュなので別々のBitmapにしてフェードイン/フェードアウトくらいはしたいし、
あんまり使わないかも。

var spr:Sprite = new Sprite( );
addChild(spr)

var bmd1:BitmapData = new TestBitmapData1();
var bmd2:BitmapData = new TestBitmapData2();
var bmp:Bitmap = new Bitmap(bmd1);
spr.addChild( bmp );

var state:int = 1;
spr.addEventListener(MouseEvent.CLICK, function (event:MouseEvent):void {

if (state === 1) {

state = 2;
bmp.bitmapData = bmd2;

} else if (state === 2) {

state = 1;
bmp.bitmapData = bmd1;

} else {

trace("オイ!肉だ肉!!肉もってこい!!ψ(`∇´)ψ");

}

});
82Now_loading...774KB:2012/10/25(木) 19:17:49.39 ID:cHKsgeAd
多数の返答ありがとうございます。

>>77 しっくりきました(っといいますか横っ面引っ叩かれて目が覚めました)。ありがとうございます。

この質問は私が自分ルール的な勝手な思い込みが原因でした。
参照の概要は色々と読んだつもりだったのですが、
addChildをした時はなぜか「多重間接参照」が渡されると思い込んでいました。(Cからの流れ者です)
もう一度参照について勉強していきます。

いやはやお恥ずかしい限りです。皆様どうもありがとうございました。

    (⌒`:''"⌒)
  ε=) : : . ' :.(=3
    (、_,;メ-、、_.) 
83Now_loading...774KB:2012/10/25(木) 19:46:20.26 ID:MtB+Aakg
Cではポインタを間違えるとパソコンが爆発すると思っている()
84Now_loading...774KB:2012/10/28(日) 11:30:20.33 ID:jAO/qvq+
>「多重間接参照」が渡されると思い込んでいました。(Cからの流れ者です)

不可能ではないが、Cでもありえんだろその仕様は。
85Now_loading...774KB:2012/10/29(月) 11:14:21.46 ID:e9iNASkJ
ポインタのアドレス渡しだったらそうなるだろ。
86Now_loading...774KB:2012/10/29(月) 17:14:10.42 ID:PNYW/gxC
こんにちは。レスどうもです。
>>84
確かにそうですよね。ダブルポインタを渡すってまぁあまりないですよね。
ただ自分では結構作っちゃうんですよねそういう関数wそこで勝手に思い込んでしまいました。
またなぜ勘違いしていたのかの原因で一番大きいのは、
私の中での参照の認識って型としてメモリにとられると思っていたことなんですね。
なので参照の参照が存在するのかと思ってたわけです。
ですが参照は基本的に只の別名として処理される(ASではどうやって実現しているのかわかりませんが)
という事らしいので多重間接参照はできないんじゃないですかね。多分ですが。

う〜ん教科書を最後まで読むのいいですね。(眠くなりますが)
87Now_loading...774KB:2012/10/29(月) 18:15:17.74 ID:F75ZAkPO
ステージに最初から配置したMCにアクセスする時にこんな感じで…
var tg_body_mc:MovieClip = this.body_mc;
var tg_arm_mc:MovieClip = tg_body_mc.arm_mc;
var tg_head_mc:MovieClip = tg_body_mc.head_mc;
var tg_mouth_mc:MovieClip = tg_head_mc.mouth_mc;
tg_body_mc.gotoAndPlay(10 );//ポインタ代わりのターゲット変数にアクセス
tg_mouth_mc.gotoAndStop( 2 );
多重間接参照ってこういう事じゃない?w
88Now_loading...774KB:2012/10/29(月) 18:33:32.13 ID:PNYW/gxC
これはいい多重関節w
89Now_loading...774KB:2012/10/30(火) 00:42:30.04 ID:xhsUGx1G
http://www.artful.jp/blog/archives/2006/12/flashphp_1.html
上記のHPみたいにFlash→php→Flashでデータをやり取りする方法がわかるのですが、
phpの値をflash側に渡してHTML上で再生させたいのですが、どうやって調べればいいのでしょうか?
90Now_loading...774KB:2012/10/30(火) 13:41:25.93 ID:HD8sHFQQ
windows FlashCS5 です
関数から引数を渡して、テキストボックスを生成するところで詰まってます。
ReverName(2,100,100);
function ReverName(Nu:String,Xnum:Number,Ynum:Number) {
var RNa:String = "RName" + "Nu";
var RNa:TextField = new TextField();
RNa.htmlText = "Point";
addChild(RNa);
}
テキストボックスを生成する際の名前も引数で設定したいと思っています。
よろしくお願いいたします。
91Now_loading...774KB:2012/10/30(火) 13:51:18.36 ID:gT1gkA1p
> var RNa:String = "RName" + "Nu";
> var RNa:TextField = new TextField();
変数名が同じなんだけど?
9290:2012/10/30(火) 14:46:02.22 ID:HD8sHFQQ
すいません。試行錯誤してる最中のコードとコピー間違えてました

var RNa:TextField = new TextField();
変数のRnaに後に番号を付けていきたいのですが、引数から
変数名に引数の数字を追加するところでうまくいってないようです。
93Now_loading...774KB:2012/10/30(火) 14:58:02.69 ID:TKUEhd5S
じゃあそこ書けよ
9490:2012/10/30(火) 15:06:49.50 ID:HD8sHFQQ
失礼しました。
Aaa(1);
function Aaa(Nu:Number):void {
var RNa:TextField = new TextField();
addChild(RNa);
}
変数RNaの後に引数[1]を結合して、変数RNa1にして
テキストフィールドを生成したいのです。
95Now_loading...774KB:2012/10/30(火) 15:16:29.62 ID:gT1gkA1p
やりたい事がやっとわかったというw

連想配列で管理した方が楽で良いよ。

外側(グローバル)で
public var txtFldList:Object = new Object();
を宣言して、

function ReverName(Nu:String,Xnum:Number,Ynum:Number) {
 var RNa:TextField = new TextField();
 RNa.htmlText = "Point";
 var key:String = "RName" + Nu;
 txtFldList[key] = RNa;
 addChild(RNa);
 ...
}

テキストフィールドを名前で取り出したいときは、
txtFldLisk[名前];
で取り出せる。

こういうこと?
96Now_loading...774KB:2012/10/30(火) 18:17:46.04 ID:2E2WaKnn
CS5 AS3.0で質問です
組織図を作っていて
ステージ上に配置しているボタンをクリックすると
ライブラリにある、「A」というムービークリップがaddChildして
「A」のムービークリップの中にもボタンがあり
「A」内のボタンをクリックで「B」というムービークリップがaddChildして
「B」の中にもボタンがあり、それをクリックで「C」というムービークリップをaddChildしたいのですが

TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。
と出てしまいます
どのような原因が考えれるでしょうか、お願いします。
9790:2012/10/30(火) 18:35:05.52 ID:HD8sHFQQ
>>95
無事解決できました!!!!
今はどうしてちゃんと表示されるのかわかりませんが
これからわかるように勉強します!!

ありがとうございました 
98Now_loading...774KB:2012/10/30(火) 19:28:09.61 ID:gT1gkA1p
>>96
どの時点で出るの?
エスパー募集するしかないなw
99Now_loading...774KB:2012/10/30(火) 20:07:26.75 ID:HTJP2Lej
>>96
エラーメッセージが言う通りの状況なんでしょう
どこかで、まだ存在していないオブジェクトを参照しようとしている
例としては、MC「B」が存在する前に、「B」を参照しようとしてるとか
そんな感じ

でも、その情報だけじゃ第三者にはそれ以上何もわからない
trace()するなりして、どの時点でどっからエラーが出てるかを確定すべし
100Now_loading...774KB:2012/10/30(火) 23:16:01.96 ID:IEi2qdcf
1009ってお目にかかるランタイムエラーコードダントツトップなんだけど…
10196:2012/10/30(火) 23:29:16.69 ID:Ht1nveBb
ちょっと携帯からになります
色々調べたら、動的に配置したオブジェクトはなんたら(忘れました)出来ない
というのが見つかりましたが、自分の状況とは違いそうで、行き詰まって質問しました。
現状はBのMCまでは問題なくaddChildできます
B内のボタンをクリックしたらCがaddChildされる
という部分をASで書いたらさきほどのエラーがでました
MCのCは、変数に代入?携帯で書くので雑ですが
var Mc_C.MovieClip = new MCのCのリンゲージ名
と書いているので
エラーの存在しないというのは、おかしいかなと思っています。

1.階層の事でAの中のBの中にCをaddChildしようとしているのですが、なにか決まりごとでの問題はないか
2.上で書いた、変数に代入で、MCのCは存在する物になっている?
3.Aの中のボタンクリックでBが出て、その中のボタンをクリックでCがでるというASで
Bが出る前に、B内のボタンを〜、という記述があるせいで、先程のエラーが出る?
この辺が関係しているのかなと思うのですが、どうでしょうか、お願いします。
102Now_loading...774KB:2012/10/31(水) 02:58:12.35 ID:AyiJr/dz
とりあえず先に日本語の勉強してくれ
103Now_loading...774KB:2012/10/31(水) 03:04:08.28 ID:IWY1LHpw
>>101
どうでしょうか?といわれても、そうかもね。としか言えない
心当たりがあるなら、その部分を変更して検証してみてはどうか

原因がわからないなら、どの瞬間にエラーが生じるのか、どの関数内でエラーが
生じるのかを特定しよう
つか、それくらい出力に表示されるだろ?
10496:2012/10/31(水) 18:24:25.29 ID:4Mgh5d/N
複数のレイヤーにASを書いてたので
それが原因で、まだ存在しない物にアクセスしようとしていたみたいです
ASは一つのレイヤーに纏めていた方が良いってことですね
初歩的な事なんでしょうが、お騒がせしました。
105Now_loading...774KB:2012/11/02(金) 10:00:29.48 ID:+HQvCvu/
var po:Point = new Point( 10, 20 );
//色々な処理
po = { x:100, y:200 };//エラー
ポイント座標を1行で変更したい場合って? その都度newしろって話かな?
106Now_loading...774KB:2012/11/02(金) 10:33:55.60 ID:OJVb87kg
hoge = {};
まず、上記の右辺{}が何を表しているかを勉強してみよう
107Now_loading...774KB:2012/11/02(金) 10:54:52.39 ID:/+6jeIz1
昔はこんな書き方が出来たって事?
108Now_loading...774KB:2012/11/02(金) 13:09:52.44 ID:+HQvCvu/
Objectしかできないのかな?
109Now_loading...774KB:2012/11/02(金) 22:53:53.64 ID:ZslkrJYx
{}はそもそもオブジェクト型を示してるようなもん
11090:2012/11/03(土) 08:20:10.60 ID:rJ7X7Dpl
前出90です。
>>95さんにお教えいただいた方法でテキストを表示できたのですが
その表示しているテキストボックスを移動させる際の
テクストボックス名の取得で悩んでいます。

仮に、ルート上から生成したテキストボックスを移動をさせる場合
どのようにすれば良いかお教えいただければ幸いです。
スクリプトは>>95さんのものをそのまま使っています。
111Now_loading...774KB:2012/11/03(土) 10:30:53.18 ID:K7jOfojR
RNa.name = "tinko_tf";
trace( getChildByName( "tinko_tf" ));//名前付けてアクセス!
112Now_loading...774KB:2012/11/03(土) 13:23:50.80 ID:9NUwGGbQ
>>110
何のために名前が必要なのかがわからない。
名前を取得するにはそのテキストボックスのオブジェクトが無いと

>>111のやり方は>>95のやり方の別の方法なわけで、
RNaというオブジェクトがあるなら、名前は必要無いよね。
removeChild(でステージから削除して、
移動させたい先の他のコンテナにaddChildすれば良いわけだし。

>>111
名前を取得するのに、そのオブジェクトを知ってないといけないってのは
この場合回答にならないんじゃないの?
その名前を使ってオブジェクトを取得するのが目的だったら。
113Now_loading...774KB:2012/11/03(土) 13:42:40.06 ID:K7jOfojR
ややこしい構造のオブジェクト内を走査すると自動で付いた
記号みたいな名前(手書きのシェイプ含む)がズラーっと出るんだお
とりあえず名前つけとけばチェック時に困らない

>この場合回答にならないんじゃないの?
そもそも質問が曖昧だからな ヒントになるようなエスパー回答しただけw
11490:2012/11/03(土) 15:17:05.32 ID:rJ7X7Dpl
説明不足ですいません
私のやりたいことは>>95さんの方法でaddChildした
テキストボックスの文字内容をボタンを押すことで、
◯◯◯.ht,iText="新しい内容";
と文字内容を変えたいのですが、
生成したテキストボックスへのパスがわからなくて困っているところです。

よろしくお願いいたします

115Now_loading...774KB:2012/11/03(土) 18:10:38.49 ID:K7jOfojR
だから名前でアクセスだってば (参照インスタンスでアクセスしたいならRNaはメンバ変数にする)

//ボタン押された時に実行するメソッド内の処理 クラスファイルで書いてるなららthisの所はaddChild先のターゲット
var tf:TextField = this.getChildByName("tinko_tf") as TextField;//これがパス
tf.htmlText = "テキスト変更";//これで書き換わる
116Now_loading...774KB:2012/11/03(土) 18:25:18.98 ID:9NUwGGbQ
なんかかみ合ってない気がするな。

>>114
うーん、根本的なアルゴリズムというか、考え方の問題になるけど、
そのボタンとそのテキストボックスの対応はあなたしかわからんのだよね。

ボタンに対してテキストボックスが1対1の対応であるなら、
ボタンのnameにも>>95の関数の引数Nuを使って設定してやる。

あくまで例だけど
宣言では
var btn:Btn = new Button();
btn.name = "btn_"+ Nu;

ボタンのイベントリスナでは
function btnOnCkick(ev:MouseEvent):void {
 var btn:Button = ev.currentTarget as Button;
 var tmp:Array = btn.name.split("_"); // 宣言でbtn_"Nu"となってるはずなのでNu部分を取り出す
 var Nu:String = tmp[1];
 
 // >>95でのやり方にあわせてテキストフィールドを取り出す
 var txtFld = txtFldList["RName"+Nu];

117Now_loading...774KB:2012/11/03(土) 18:43:19.64 ID:K7jOfojR
わかった 要するに>>95のコードでどうやって書換えするのかがわからないって事だろ
var txtFldList:Object = new Object();
function ReverName(Nu:String,Xnum:Number,Ynum:Number) {
var RNa:TextField = new TextField();
RNa.htmlText = "Point";
var key:String = "RName" + Nu;
txtFldList[key] = RNa;
RNa.x = Xnum; RNa.y = Ynum;//表示位置用に追加 そもそもXnumってなんだ? 
addChild(RNa);
}
ReverName( "AAA", 10,10 );//RNameAAAという入れ物を作成
trace( "確認1:"+txtFldList.RNameAAA.text );//確認1
ReverName( "BBB", 100,20 );
for( var i in txtFldList ) trace( i+" : "+txtFldList[ i ] );//中身確認
txtFldList.RNameAAA.htmlText = "あいうえお";//書換え
trace( "確認2:"+txtFldList.RNameAAA.text );//確認2
trace( txtFldList.RNameAAA.htmlText );//html確認
これで理解できるだろ
118Now_loading...774KB:2012/11/03(土) 18:58:27.18 ID:9NUwGGbQ
丁寧すぎるww
119Now_loading...774KB:2012/11/03(土) 19:03:44.34 ID:yyFUy84T
2.0時代の「名前でアクセスする」という概念を捨てたほうがいいのに、IDEではいまだにシンボル名でアクセスさせるからこんがらがるんだよな
12090:2012/11/04(日) 17:51:09.18 ID:y1DAWxlF
>>115,>>116,>>117さん
無事解決できました!
ありがとうございます!!


12190:2012/11/05(月) 11:47:52.68 ID:jiJsKicq
何度もお手数をかけてすいません
変数が孫Mcで参照できない。という事でお教えいただきたいのですが
現在、rootで 変数 var AAA::Boolean=false; と設定しています。
ステージ上に"子MC"その中に"孫MC"をネストして表示しています。
"子MC"から"孫MC"のプロパティを設定する際に、使い回しを考えて
var Path:MovieClip=Object(root).子MC;として
Path.孫McName.x=; Path.孫McName.y=; と使っています。
ところが、rootで設定した変数を、"孫MC"から
trace("変数AAA:"+Object(root).AAA)を行うと、「undefined」となってしまいます。
"root"、"子MC"上で("変数AAA:"+Object(root).AAA)で確認してみまると、
ちゃんと変数を参照できているのですが"孫MC"からだけ参照できていません。
よろしくお願いいたします。
122Now_loading...774KB:2012/11/05(月) 12:25:13.64 ID:2iU+o9H2
まぁ、今言う事じゃないけど、
いちどActionScript3のコード規約を読んで、それに準拠するように今後していってよ。
ソースが読みにくくてかなわん。

ifの後の改行とかはどうでも良いから、
変数:先頭小文字 クラス:大文字で。

AS2の_rootとAS3のrootはちがうんだよね。
孫なんだから、祖父は親の親ってこと。
123Now_loading...774KB:2012/11/05(月) 12:38:47.69 ID:0P4GoFes
孫とやらが表示リスト上に追加されてないうちになんかやろうとしてrootがnullなんじゃない?
124Now_loading...774KB:2012/11/05(月) 13:20:32.29 ID:ZSNXAtyg
こっちの書式でダメならわからん タイミングの問題だな
trace( ( parent.parent.parent as MovieClip ).AAA );//孫MC内のフレームアクション
125Now_loading...774KB:2012/11/05(月) 16:08:02.64 ID:LDHChJrb
質問です。
TLFテキストフィールド・編集可能(a_txt)をステージに設置して、
a_txt.maxChars = 2;
a_txt.restrict = "0-9";
と記述したのですが、
文字数制限が出来ません。
0〜9までの入力制限は出来ます。

どうしたら文字数制限できるのでしょうか。
126125:2012/11/06(火) 16:32:22.97 ID:Ct2GqIRi
全然関係のない変数の置き場所を変えたら問題なく作動しはじめました。
なんでだ。

ご迷惑おかけしました。
127Now_loading...774KB:2012/11/06(火) 17:00:13.12 ID:khRSZ3M8
書いたようにしか動かない。
128Now_loading...774KB:2012/11/06(火) 23:00:09.64 ID:T2CX16jE
TLFは不可解な挙動するから普通のテキストフィールドで間に合うならそっち使った方が良いよ。
特にオーサリング時に置いておく奴はいろいろ危ない。正直怖くて使えん。
129Now_loading...774KB:2012/11/07(水) 13:11:04.88 ID:WpY894V3
>>127
フラッシャーが最初に覚える事は、
デバッグの際、「記述が間違っていない可能性」を覚える事ですぜ。
130Now_loading...774KB:2012/11/07(水) 13:34:47.53 ID:VJJCR7j0
AS3になってからは明らかにバグってのには遭遇してないな。
書いたように動いてたが。
特に>>126のような状況とか。
131Now_loading...774KB:2012/11/08(木) 18:03:47.03 ID:mmCZI2DS
質問なんですが、
イベントでスロットゲーム作ろうと思って発注の仕様を考えてるんですけど
例えば
ゲーム総回数 1000回
あたりの数(1等から6等くらい) 250個
2〜4回くらい外れた後に当たりが出る
一回出た当たりは除外される
といった事って可能ですか?
よろしくお願いします。
132Now_loading...774KB:2012/11/08(木) 18:18:12.77 ID:079+MDOP
出来るけど、
>2〜4回くらい外れた後に当たりが出る
ってすごく不自然感がでるぞ。
連続で当たらないってことなんだから。
133Now_loading...774KB:2012/11/08(木) 18:27:41.22 ID:bSff0gy6
確率変えるのって、モバゲーとかで問題になってましたよね
134Now_loading...774KB:2012/11/08(木) 18:32:01.10 ID:CMeK0uSl
addEventListener(MouseEvent.MOUSE_DOWN,Pay);
----
public function Pay(e:MouseEvent):void {
var myRequest:URLRequest = new URLRequest(url);
myRequest.method = URLRequestMethod.GET;
var myLoader:URLLoader = new URLLoader();
myLoader.addEventListener(Event.COMPLETE, onComplete);
myLoader.load(myRequest);
}

function onComplete (eventObject:Event):void{
var my_str:String = eventObject.target.data;
trace(my_str);//何回クリックしても同じ値
}}

ボタンを押すとサーバと通信してJavaサーブレットから
ランダムな値を受け取るというのをやりたいのですが同じ
数字が何回も出てしまいます
昨日から始めたばかりなのでよくわかりません
違う数字を受け取るようにするにはどうすればいいでしょうか
宜しくお願いします
135Now_loading...774KB:2012/11/08(木) 18:40:53.35 ID:079+MDOP
サーブレット側で違う数値がわたってるのは確認したの?
136Now_loading...774KB:2012/11/08(木) 18:47:40.12 ID:CMeK0uSl
ブラウザで直接サーブレットにアクセスは毎回違う数値が出てきました
137Now_loading...774KB:2012/11/08(木) 18:57:18.85 ID:bknSl65h
キャッシュは?
138Now_loading...774KB:2012/11/08(木) 19:00:39.43 ID:CMeK0uSl
毎回消してから実行しています
139Now_loading...774KB:2012/11/08(木) 19:07:03.89 ID:bknSl65h
ボタン押す毎にキャッシュが破棄されないとダメだから、何かの開発ツールで初めから無効にしないとだめだと思う。
実際はリクエストUR:Lに適当に変数を追加してキャッシュを回避するのが一般的かなー?
140Now_loading...774KB:2012/11/08(木) 19:08:54.06 ID:079+MDOP
url = url + "&hoge="+Math.random().toString()
でやったらどうなる?
141Now_loading...774KB:2012/11/08(木) 19:09:32.46 ID:079+MDOP
を。同じ事言ってる。
142Now_loading...774KB:2012/11/08(木) 19:14:15.86 ID:CMeK0uSl
実行できました!
サーブレットでキャッシュを回避するようにしたらできました。
皆さん本当にありがとうございました
143Now_loading...774KB:2012/11/08(木) 19:37:01.27 ID:bupJYrVO
paraflaでクリック位置に移動するにはどうしたらいいでしょうか。
下記のURLのようなフラッシュを作りたいのですが、paraflaでのスクリプトがわかりません;
教えていただけましたら幸いです。
ttp://d.hatena.ne.jp/habu024/20100222/1266847156
144Now_loading...774KB:2012/11/08(木) 20:05:38.62 ID:DHAZ/l6e
サンプルはAS3か paraflaもSUZAKAもAS2なんだっけ?
基本的な処理なら書式が違うだけなんだよな
比較サイトどっかになかったっけか

とりあえずハクヒンさんとこでやりたい項目なんかを一通り目を通してみるんだ
ttp://hakuhin.jp/
145Now_loading...774KB:2012/11/08(木) 20:19:32.15 ID:bupJYrVO
>>144
ありがとうございます!
比較サイトとかあったんですね><;
paraflaはAS1みたいです。
もうちょっと頑張ってみます。
146Now_loading...774KB:2012/11/08(木) 20:47:44.48 ID:bupJYrVO
解決しました!お手数おかけしました!
147Now_loading...774KB:2012/11/11(日) 11:12:31.59 ID:8L3g9NgE
質問なんですが、AS3は、一度コンパイルして実行するのに
なぜスクリプト言語なんでしょうか?
148Now_loading...774KB:2012/11/11(日) 11:32:43.52 ID:8BC4MSk7
いつからスクリプト言語だと錯覚していた
149Now_loading...774KB:2012/11/11(日) 11:35:41.61 ID:8L3g9NgE
今ググってもスクリプト言語となってましたが?
http://www.atmarkit.co.jp/fwcr/rensai2/as3_01/as3_01_1.html
150Now_loading...774KB:2012/11/11(日) 12:58:41.03 ID:LgH4P4Vp
ActionScript3.0がスクリプト言語かどうかは何がスクリプト言語なのかの定義によるんじゃないかねー
実際にはCのようなアセンブラのような微妙な感じのものがバイトコードの状態になってて実行時にもう一回変換される
151Now_loading...774KB:2012/11/11(日) 13:13:39.95 ID:8L3g9NgE
>>150
なるほど、その実行時にする変換のおかげで各ブラウザの差異を
吸収しているというわけですね。
でそのせいで、スクリプト言語とコンパイラ言語の中間ぐらいという中途半端な
実行速度になってしまうという理解でいいのかな?
152Now_loading...774KB:2012/11/11(日) 13:51:40.79 ID:/fDWr5Bh
んだ
153Now_loading...774KB:2012/11/11(日) 13:54:13.10 ID:LgH4P4Vp
実行方式の分類的にはjavascriptじゃないjavaに近い感じだと思う。
154Now_loading...774KB:2012/11/16(金) 13:58:40.28 ID:maLY8iBI
質問させていただきます、使用ソフトはParaflaです。
duplicateMovieClipでMC_A、MC_BをNum体分複製し、互いに衝突させる処理を考えています。

下記はMC_Aに記述する、Bとの衝突判定です、onClipEvent(EnterFrame)内に記述しています。

for(i=1; i<_root.Num; i++){
if(this.hitTest(eval("_root.MC_B"+i))){
〜衝突後の処理内容〜
}
}

複製したMC同士を衝突させる方法としてfor文を使用しているのですが、Numが40を越すと動作が遅くなります。
処理内容を抜いても変わらず、for文全体を抜くと動作が軽くなるのでfor文を毎回実行している事が原因だと思うのですが・・・
想定では3桁程複製したいと思っているので、動作を軽くする方法があれば教えて下さい。
155Now_loading...774KB:2012/11/16(金) 14:32:56.04 ID:psT01NE+
hitTestを使わず自前でやる
156Now_loading...774KB:2012/11/16(金) 20:47:24.95 ID:v+wUUNjw
ていうかそれevalが原因じゃねーの?
157Now_loading...774KB:2012/11/16(金) 22:00:02.45 ID:GVd3tVO0
>>154
MC_Aも複数あるの?

Num=10なら10*10⇒100回演算が必要。
Num=50なら50*50⇒2500回演算が必要。
Num=100なら100*100⇒10000回演算が必要。
Num=150なら150*150⇒22500回演算が必要。

当たり判定の高速化導入しないとまず無理だよ。
158Now_loading...774KB:2012/11/17(土) 13:51:01.27 ID:2W3BZgvp
>>155-157
ありがとうございます、おかげさまで動作安定しました
159tm:2012/11/17(土) 15:31:48.19 ID:Muoffy3+
はじめまして。
アクションスクリプト勉強中の初心者なのですが、どうしても作りたいものがありますので、お力お貸しください。

内容はキーボードのあるキー(1つ)を2秒以上押しっぱなしにすると音楽が流れ出してループ再生され、キーを離すと止まるというものです。スクリプトは2.0か3.0しか使用経験がないので、どちらかですと助かります。
PCのOSはwindows、Flashは5.5を使用しております。(参考までに・・・)

自分で調べたところ、個々でのスクリプトは見つかるのですが、どのように組み合わせればいいのかわかりませんでした。
超と言っていいほどの初心者ですので、サンプルやflaファイルのURL等載せて頂けるとものすごく助かります。

図々しいお願いだということは承知しておりますが、どうか助けてください。
宜しくお願いします。
160Now_loading...774KB:2012/11/17(土) 17:43:46.67 ID:q+paBzG+
その書き方だと何ができるのかわからん
普通に音楽を流すことはできてんの?
キーボードのイベントに反応して命令することは?
ある時点から2秒はかることは?
161Now_loading...774KB:2012/11/17(土) 22:04:02.72 ID:bo9PnVN9
まるごとflaよこせとか言ってる奴に聞いても無理だろ
162Now_loading...774KB:2012/11/17(土) 22:27:44.09 ID:6vwE5adQ
>>159
初心者はハクヒンさんとこで基礎を勉強するしかねえお
ttp://hakuhin.jp/
その上で具体的な問題をここで問うのだ 

ハクヒンさんをテンプレに入れといてくれ 次にスレ立てる人>>980
163tm:2012/11/18(日) 01:00:57.01 ID:R4VvOvKf
至らない点が多々ありまして申し訳ありません。
こういう質問を書き込むこと自体初めてで;;

スクリプトは2.0で、ムービークリップでシンボルを作り、
on (keyPress "1"){
_root.DO.gotoAndPlay(1);
}
を書き込みました。
これをシーン1の1フレーム目に置いて、キーボード1を押すとインスタンス名をDOにした音がながれるという状況までは作れています。

これのDOを1のキーを2秒以上押す再生され、またキーが押されている間はループ再生したいのですが他にどんなスクリプトをどの場所に書き加えればいいんでしょうか?
紹介されていたハクヒンさんのサイトも拝見したのですが、ぴったりのものはなく、どれを応用すればいいのかも分かりかねる状況です。

すみませんが、今一度お力お貸しくださいませんか?
164Now_loading...774KB:2012/11/18(日) 09:56:42.43 ID:yAgRewkZ
なかなか初心者にはやっかいな事やろうとしてるんだよな 手順としては

2秒タイマー作動してないなら キー押した時にキーフラグtrue
キーフラグtrueなら 2秒タイマー起動
キー離したらすぐキーフラグfalse
キーフラグfalseになって2秒タイマー作動中ならタイマーキャンセル
タイマー2秒経って正常終了したら音楽流す

音楽再生中に他の曲に変更したい場合は音楽再生フラグなんかも必要かもしれん
165Now_loading...774KB:2012/11/18(日) 10:20:30.73 ID:7/+RDm5x
いわゆるコピペプログラマーにはきびしい問題だ・・・
166tm:2012/11/19(月) 01:22:58.86 ID:npXCUsRU
ありがとうございます!
なるほど、タイマーってこのように使うんですね!
ゲームとかの経過時間のようにただ時間を計るだけのものかと思っていました;
trueとfalseはなんとなくわかる部分もあるんで、もう少し調べてやってみます。
ご丁寧にありがとうございました^^
167Now_loading...774KB:2012/11/19(月) 10:54:17.22 ID:nsp/erjp
素朴な質問
MC内のラベルのフレーム位置は再生ヘッドを実際に移動させなきゃ検出できないんだ?
移動前にあらかじめ知る方法ってある?

やりたい事はラベル位置から3つ目のフレームにgotoAndStopとか
168Now_loading...774KB:2012/11/19(月) 11:04:02.91 ID:SZIw2axW
currentLabels[0].frame+3
とか?
169Now_loading...774KB:2012/11/19(月) 11:31:28.74 ID:nsp/erjp
>>168
ありがとう FrameLabel クラスなんてのがあったなんて初めて気付いたw
さすがASスレだ

こりゃ気付かないな 定義元もMovieClipになってんだもの
なんでMovieClipはFrameLabelクラスを継承してないんだろ
170Now_loading...774KB:2012/11/19(月) 12:33:27.72 ID:UbZTN8Je
MovieClipはFrameLabelじゃないから
171Now_loading...774KB:2012/11/19(月) 20:03:42.10 ID:McGXG2IT
むしろ継承してたらビックリするわ
172Now_loading...774KB:2012/11/19(月) 20:11:50.22 ID:+YZhKVGo
実装っていいたかったんかな?
173Now_loading...774KB:2012/11/23(金) 00:13:09.04 ID:0gknAQB8
AdobeCS4,WinXP,Player10.1(時々AIR1.5)
Pixel Bender 置き換えによる擬似3D画像 http://wonderfl.net/c/50I3 について質問です。

コードをDLして手元のCS4で表示は可能だったのですが、各画像由来の(と思われる)SWF
右上の白黒画像( ttp://blog.yoz.sk/examples/pixelBenderDisplacement/mountainMap.jpg とか)
はどうすれば得られるのでしょうか?

オリジナルの適当な写真で試したいのですが、サイトのリンク先を見てもこの点が分からない
ので聞きました。宜しくお願い致します。
174Now_loading...774KB:2012/11/23(金) 01:49:05.05 ID:aY3zi5qA
PHOTOSHOPとかで描くんじゃなかろか
175173:2012/11/23(金) 04:55:05.22 ID:0gknAQB8
>>174
さんきゅう。当該wonderflのリンク先を良く見たらこう書いてあった。
ttp://blog.yoz.sk/2010/05/pixel-bender-displacement-map-fakes-3d-effect/
All you have to do, in order to make your 2D images become 3D, to create monochromatic
map (black & white image) with the same dimensions as the original image (use lighter colors
for closer objects, darker colors for distant ones)

白黒画像を作るには、近接した(似た?)物体同士は明るく(白く)、そこから離れる箇所は黒く・・・??
輝度を反映する画像作りが必要なのかも。
176Now_loading...774KB:2012/11/23(金) 07:24:21.93 ID:aY3zi5qA
たぶん擬似的な視点から見て(closer)手前ほど明るく(白く)、(distant)遠いほど暗く(黒く)ってことじゃないかな
車のサンプルだと屋根が一番近いから白く、ボンネットが中間の距離で、地面が一番遠いので黒

自動生成は難しそうだし、そんなに精密なものではないから元画像を背景に敷いてグラデーションやソフトなブラシで
上からなぞって塗れば良いんじゃないかなーと思った
177173:2012/11/23(金) 13:40:06.75 ID:0gknAQB8
>>176
なるへそう。 Thanks
178173&175:2012/11/23(金) 13:47:01.27 ID:0gknAQB8
(連投スマない)
逆に言えば凸を凹にすることも可能なのかもね。
例えば人の正面顔で鼻や口が凹んだ奇妙な絵が出来るかも。
179Now_loading...774KB:2012/11/24(土) 11:52:36.82 ID:5/uW5RnT
うーむ今更ながらだがバグっぽいのを報告(CS5.5)
とあるMCの中にマスクレイヤーがありマスク対象のA_mcがトゥイーン等している
メイン制御から A_mc.visible = false にして非表示にしてるんだけど
gotoAndStop()等で他の位置に飛ばすと勝手にA_mcが表示されてしまう(.visibleプロパティがtrueに戻る)という現象

・A_mc は全フレームで同一のシンボルで途中でインスタンス名が抜け落ちたりしていない
・マスクレイヤーの「マスク」はMCであったりグラフィックシンボルや塗りのシェイプだったりする
・マスク無しだと当然誤作動は無し

マスクが同一のモノでないとマスク対象MCの.visibleプロパティが勝手に変わるってのはバグだよね?
CS6の人はどうなんだろ?
180Now_loading...774KB:2012/11/24(土) 12:00:08.19 ID:5/uW5RnT
追伸
メイン制御部で毎フレームfalseにしていればいいって話かもしれないがそれでも一瞬映るw
バグといっても重大な部類じゃないのでCS6で直っていればAdobeへ報告するまでもないと思ってる
181Now_loading...774KB:2012/11/24(土) 14:56:41.93 ID:SfCJrBSD
>>179
>gotoAndStop()等で他の位置に飛ばす

ここを具体的に
何をどこに飛ばすの?
A_mcの再生ヘッドを任意のフレームに移動させるって意味?

バグかもしれんが、仕様という気もしなくもない…
タイムライン関連は、いろいろと面倒な仕様があるからなあ
そもそも、「gotoAndStop()等で他の位置に飛ば」さなければ
問題は起きないのかな?
182Now_loading...774KB:2012/11/24(土) 16:18:10.90 ID:5/uW5RnT
おー レスdです

>A_mcの再生ヘッドを任意のフレームに移動させるって意味?
A_mcの親の事ですな oya_mc.gotoAndPlay(30); 
これでoya_mc内のトゥイーンさせているA_mcの位置なり角度なり大きさが変化していく
しかし30フレームの位置からマスクの種類が変わったので A_mc.visibleプロパティが勝手にtrueに戻ったと

飛ばさずにplay()で流すだけだとたしかに問題は起きてないようです
183Now_loading...774KB:2012/11/24(土) 17:33:43.83 ID:SfCJrBSD
CS6で実験してみた
多少やってることと違ってそうだが、マスクレイヤーにキーフレーム打って
マスク内容を変更すると、マスク対象はキーフレームを越えた時点でvisibleがtrueになる

おそらく、マスクレイヤーにキーフレームが入って内容が変更されると
マスクレイヤーだけでなく、マスク対象レイヤーのオブジェクトもすべて
新規ロードされるかたちで再描画されるのではないかな
新規ロードされると、visibleとか一部のプロパティが初期化されるのは仕様なので
バグではなく、作り方が目的とあってないのかもしれない
たとえば、A_mcのクラスファイルで、コンストラクタ内にvisible=falseって書いておけば
A_mcは必ず非表示状態で配置されるようになる
184Now_loading...774KB:2012/11/24(土) 18:04:50.30 ID:5/uW5RnT
おーなるほど! 解説dです
MCクラスファイルで試してみます
185Now_loading...774KB:2012/11/29(木) 11:06:50.00 ID:EOSng8D7
質問です。
ローディングを作るとき、
.flaのメイン1フレーム目に下記を記入する方法は知っているですが、
これをasファイルで作るにはどうすれば良いんでしょうか。

var info:LoaderInfo = stage.loaderInfo;
stage.addEventListener(Event.ENTER_FRAME,EnterFrameFunc);

function EnterFrameFunc(evt) {
if (info.bytesLoaded == info.bytesTotal) {
stage.removeEventListener(Event.ENTER_FRAME,EnterFrameFunc);
play();
}
}
186Now_loading...774KB:2012/11/29(木) 11:36:29.23 ID:KIFOq1qR
187Now_loading...774KB:2012/11/29(木) 11:41:13.99 ID:KIFOq1qR
っていうかそのまんまか。 play()をコンテンツを初期化するメソッドに代えれば良いだけだとおもうけど、クラス定義の書き方がわからんということですか?
188Now_loading...774KB:2012/11/29(木) 13:37:21.37 ID:EOSng8D7
すみません解決しました。
importの指定をミスっていたことが原因でした。
あと、どこで聞いたのか、クラスからstageは直接指定できないと変に思い込んでいました。

具体的には、importをアスタリスクしたら動きました。
189Now_loading...774KB:2012/12/04(火) 01:01:58.81 ID:2z4dvSee
ソケットの受信のイベントリスナがremoveできなくて悩んでます。
socket.addEventListener(ProgressEvent.SOCKET_DATA, onReceiveResponseHandler);
socket.removeEventListerner(ProgressEvent.SOCKET_DATA, onReceiveResponseHandler);
みたいに普通(?)に呼んでいるつもりなのですが。。

イベントリスなごとに別々の処理をさせたくて
いくつかのイベントリスナをaddしたりremoveしたりしているのですが、それがいけないのでしょうか。
190Now_loading...774KB:2012/12/04(火) 01:43:41.93 ID:77kO1uAa
そういえばPICTAPS見て当時びっくりしたんだけどあれ何かのライブラリで3D描画してるの?OpenGLとか?
191Now_loading...774KB:2012/12/04(火) 01:58:06.87 ID:/yJRR4wV
あの人は全部自前のソフトウェアレンダリング
192Now_loading...774KB:2012/12/04(火) 21:06:39.56 ID:4OmogPFe
FlashCS5(AIR2.0),WinXP-Pro(3GB)

AIRでJPGEncoderを使って画像(BitmapData)をJPG保存しようとしていますが
保存ダイアログに設定したいファイル名が現れず困っています。
file0 = new File(); として

file0.nativePath = File.applicationDirectory.nativePath + "/" + "fig.jpg"; // ****
file0.addEventListener(Event.SELECT, onWriteSelect, false, 0, true);
file0.browseForSave("JPGを保存します");// ダイアログのタイトル

で http://uproda11.2ch-library.com/372561DxZ/11372561.png のようにしたい
のですが、これだとダイアログボックス自体が現れません。

対して、同じく file0 = new File(); として 「****」の行が file0 = File.applicationDirectory;
ならばダイアログボックスは現れるものの、設定したいファイル名(この場合、fig.jpg)が
無く空欄です。

つまり、ダイアログボックスが現われると予め"fig.jpg"が保存ファイル名として入った状態
にしたいです。

よろしく願い致します。
193Now_loading...774KB:2012/12/04(火) 21:12:48.39 ID:4OmogPFe
>>189
「removeできなくて」というのは、socket.close() して hasEventListenerで確認取ったの?
あと、弱参照は試した?
194Now_loading...774KB:2012/12/05(水) 00:16:17.01 ID:p2wstVeV
>>192
Win7でそのソースでも動いたけど。

var file0 = File.applicationDirectory.resolvePath("fig.jpg");
file0.browseForSave("JPGを保存します");// ダイアログのタイトル
195192:2012/12/05(水) 01:56:17.10 ID:OYLsrGLJ
>>194
有難うございます。 レスの記述で出来ました。

すいませんもう1つ。 resolvePathの引数は変数は不可なのでしょうか?
コンストラクタの前に var saveName:String = "fig.jpg"; と定義して(グローバル変数?)

file0 = File.applicationDirectory.resolvePath(saveName); とするとダイアログボックスが
出ないのですが、引数を 〜.resolvePath("fig.jpg"); とするとOKです。 

下記リファレンスでは引数は文字列で問題無いはずなのですが・・・
ttp://livedocs.adobe.com/flex/3_jp/langref/flash/filesystem/File.html#resolvePath%28%29

試しにCS4のAIR1.5でやっても同じでした。 どなたか分かりますか?
196Now_loading...774KB:2012/12/05(水) 07:44:48.14 ID:Si0sk8AS
その時点でsaveNameの値traceするとちゃんと入ってるの?
197195:2012/12/05(水) 09:19:24.28 ID:OYLsrGLJ
>>196
はい。 traceでは確認できました。
198Now_loading...774KB:2012/12/05(水) 10:37:11.87 ID:p2wstVeV
>>195
動く。

var saveName:String = "fig.jpg";
var file0 = File.applicationDirectory.resolvePath(saveName);
file0.browseForSave("JPGを保存します");// ダイアログのタイトル

この3行コピペで動かないなら環境がおかしいのかもね。

高いバージョンのFlashをインストールしてから低いバージョンのFlashをインストールすると
AIRが異常な動作をすることがある。

この場合、すべてアンインストールして
一番古いFlashをインストール→最新のアップデートを当てる
次のバージョンのFlashをインストール→最新のアップデートを当てる
を繰り返す。
199195:2012/12/05(水) 11:11:49.40 ID:OYLsrGLJ
>>198
度々すいません。 自己解決しました。
上では、はしょって書いてなかったのですが、var saveName:String = "fig.jpg"; の右辺は
あるテキストフィールド(TF)の文字列を参照していました。
参照自体はできていたのですが、どういう訳かTF文字列の末尾に改行が入っていてそれが
悪さをしていました。
200Now_loading...774KB:2012/12/06(木) 07:50:54.00 ID:asybV+f/
ゲームのリアルタイム時間表示について質問があります。
テキストフィールドをtextfieldautosizeをrightに指定して、数字が増えれば増えるほど
左に数字が伸びていくようにしたいんですが、更新していくと若干数字がぶれます。
leftは揺れないんですが、何かいい方法はありませんか?
一つの案として、leftに固定して、初めにスペースをいれて数字の位が上がるごとに
スペースを消す方法を思いついたんですが、これより簡単な設定方法がないのかな
と思いました。よろしくお願いします。
201Now_loading...774KB:2012/12/06(木) 11:31:27.19 ID:+5AU+8Iv
フォントがプロポーショナルとかそういう問題じゃなくて?
202Now_loading...774KB:2012/12/06(木) 13:02:49.60 ID:asybV+f/
>>201
まさに等幅指定でで解決しました。
助かりました。どうもです。
203Now_loading...774KB:2012/12/08(土) 09:51:17.30 ID:WTVbC9E8
カスタムクラス、スーパークラス、サブクラスなどを使う事が前提のFLASHの組み方
が勉強できる初心者〜中級者向けの本ってありませんでしょうか。

買った初心者向けの本はどれもflaファイルに直接記入する事が前提で、
asとの組み合わせについては最終章で軽く触れる程度なものばかりでしたので…
204Now_loading...774KB:2012/12/08(土) 13:49:20.24 ID:rg29Ag7D
205Now_loading...774KB:2012/12/08(土) 23:08:43.05 ID:j56rUp6t
気が付いたらFirefox とchromeでFlashのスライドショーが表示されなくなった
何故かIEでは表示される

Flashのバージョンは、IEだけ11.4xで古く、Firefox とCromeは最新版11.5xなのだが
サポートされなくなったスクリプトとか、何か原因のヒントあるかな?
206203:2012/12/10(月) 10:37:49.10 ID:yAlFlXjB
>>204
ありがとうございます。買ってみます!
207Now_loading...774KB:2012/12/11(火) 12:23:48.74 ID:HLsPX5Ig
教えてくれ 入力した1文字を小文字から大文字にしたい
private function tInputPro( evt:TextEvent ):void{//テキストフィールドにキーボードから1文字入力 
var st:String = evt.text;//ストリング変換
evt.currentTarget.text = "";//消してから(ただの意図)
evt.currentTarget.text = st.toUpperCase();//大文字にして表示
//しかし aA と表示されてしまう 最初のaを消すには?
}
208Now_loading...774KB:2012/12/11(火) 13:39:32.23 ID:ta0zc3mO
private function tInputPro( evt:TextEvent ):void{//テキストフィールドにキーボードから1文字入力 
var st:String = evt.text;//ストリング変換
evt.text = "";//消してから(ただの意図)
evt.text = st.toUpperCase();//大文字にして表示
じゃだめなん?
209Now_loading...774KB:2012/12/11(火) 16:32:53.98 ID:HLsPX5Ig
>>208
レスどうもです
それだと小文字が1文字のみ出ますね evt.textをトレースすると大文字になってますが…
大文字を表示したすぐ後に実際に入力したキー値によって書き変わってるぽいです
イベントリスナーの優先順位変えたり次フレーム時に強制的に書き換えてみます
210Now_loading...774KB:2012/12/11(火) 19:41:25.81 ID:ta0zc3mO
どういう風に実装したいかわからないけど参考にどうぞ
textbox1.addEventListener(Event.CHANGE,copy);
function copy(evt:Event):void{


var st:String = textbox1.text;//ストリング変換
textbox2.text = st.toUpperCase();//大文字にして表示
}

http://u8.getuploader.com/shouto/download/78/hoge.zip
pass:flash
211Now_loading...774KB:2012/12/11(火) 20:02:02.35 ID:HLsPX5Ig
>>210
できました 完璧です さんきゅうです!
なるほど Event.CHANGEが正解だったのか…
212Now_loading...774KB:2012/12/11(火) 20:04:50.89 ID:JjHwY6ZX
AS3、Flash9です
AS3でネット対戦オセロを作ることは可能でしょうか
ググった所、XMLHTTPRequestというのが必要で、それはJScriptの物らしいのですが、
AS3からJScriptを呼び出して使う感じなのでしょうか
213Now_loading...774KB:2012/12/11(火) 20:50:27.18 ID:V5YgTld0
>>212 Flash側は基本的にはURLLoaderとかでやればいいと思いますが、サーバーサイドのプログラムが必要になります
214Now_loading...774KB:2012/12/11(火) 23:25:46.91 ID:JjHwY6ZX
>>213
なるほど、ありがとうございます
215Now_loading...774KB:2012/12/14(金) 15:57:29.03 ID:OxYu6q1z
AS3,Plyer10.0

配列の全要素を足し算する記述ってどうなりますか?
一応for文でシコシコと足すのもありますが、もっと簡潔に書きたいです。

「配列 要素 for each 合計 ActionScript OR AS3」でググりましたが
適当なものが見つかりませんでした。
216Now_loading...774KB:2012/12/14(金) 16:05:20.15 ID:veoua7C7
シコシコ足すしかないんじゃないか? 1行で書けばおk
途中でnullの要素があるなら1行じゃ無理だが
217Now_loading...774KB:2012/12/14(金) 16:18:32.74 ID:EXYAHWJ1
配列の要素が数値とは限らないから、
システム側が簡単にsum計算するような物は準備しないし出来ないだろうな。

forで回すので十分簡潔だと思うんだがなぁ。
218215:2012/12/14(金) 16:45:06.19 ID:OxYu6q1z
>>216-217
すいません。 forで回しても簡潔に済みました。
余計なことをせず正道でOKでした。
219Now_loading...774KB:2012/12/14(金) 18:13:45.79 ID:EXYAHWJ1
決まった型の数値しか入れないと決まっているならVector使うとか、
for each使わず添字でアクセスするとか。
その程度の工夫は出来ると思うが。
220Now_loading...774KB:2012/12/17(月) 14:34:56.12 ID:DKXMyXNM
久しぶりにAS2をやって分からなくなりました。Player10.0のCS4です。

ttp://www.flashiroha.com/script/matrix/as68.htmlの下のサンプル(画像が切り替わる方)で
上手く実行されません。

最初、コードの通りCS4のタイムラインAS欄に貼り付けたのですが何も出ません。
次に適当なMC(黒い小さな正方形)をステージに設置してこれを mc にしたところステージの
左側(x=0)でクルクルとこの黒MCだけが舞っている状態です。

最後に mc.attachMovie("sp" + n, "sp" + n, 1); としたら今度は黒MCだけが(画像を持たずに)
回転しています。
これって何が原因でしょうか?
221220:2012/12/18(火) 02:55:14.25 ID:9c3HD5ar
(自己レス)
原因が分かりました。
attachMovie("sp" + n, "sp" + n, 1); の "sp" + n とかはライブラリの画像なのですが
MC化せずにそのまま適用しようとしていました。

正しい手順は、
 CS4に画像を取り込む → MC化(ライブラリ化) → リンケージ(識別子)をsp1とかで名前付ける
でした。 これでHPの挙動が再現されました。
222Now_loading...774KB:2012/12/19(水) 01:34:02.26 ID:8oMw4MzJ
コードの読み方で質問(確認)です。
にゃあプロジェクトさんのPerspective動作で、swapDepthsによる
深度調整の部分で

depthList.sortOn(["z", "id"], [Array.DESCENDING | Array.NUMERIC, Array.DESCENDING | Array.NUMERIC]);

があります。これは
「先ずZの数値の降順でソートして、同じZならidの数値の降順でソート」
の意味でOKでしょうか?
223Now_loading...774KB:2012/12/21(金) 06:48:51.65 ID:Xt34yb2n
ど素人な質問ですみませんが、漫画ビューアを製作したいんですが
ActionScriptで記述できますか?JavaScriptでないとダメでしょうか?
よろしくお願いします。
224Now_loading...774KB:2012/12/21(金) 07:24:32.64 ID:mFUR64Xx
できます
225Now_loading...774KB:2012/12/21(金) 08:15:49.43 ID:Xt34yb2n
>>224
ありがとうございます。
226Now_loading...774KB:2012/12/23(日) 20:58:23.55 ID:psUvqE1c
AS3、Flash9です

URLLoader.loadした時、「ローカルファイルシステムの SWF
および信頼されているローカル SWF ファイルのみがアクセスできます」
というエラーを、FlashPlayerTrustにcfgファイルを作って
そこにswfのあるパスを書き込んで回避できました。

ネットに上げたswfでこの方法を使う場合、
各ユーザーにswfのあるURLを書き込んでもらうという形になるのでしょうか
227Now_loading...774KB:2012/12/25(火) 07:14:03.55 ID:QcQwqqq3
FlashCS5,AIR2.0,WindowsXP
LocalConnectionを使ってSWF→AIRの通信をしてますが、SWFとAIRを閉じても接続が
維持されているっぽくて、再度SWFとAIRを立ち上げて通信しようとするとエラーになります。

これを回避する手段としてttp://d.hatena.ne.jp/s-ohira/20090121/1232536200の下部
 「(略)これを防ぐためには、アプリケーションを閉じる際に必ず明示的にConnectionを閉じれば
いいのですが、Flashではそれができない場合も多いので、・・・」

を見つけ、該当するコード部分は、同ページの
try{
connect(connectionName);
・・・
・・・
//接続確認用コールバックメソッド
this["ping"] = ping;
}

と察しました。ところが、HPの続きの文章「・・・LocalConnectionのコールバックメソッドが
あるかどうかで判定することになる」がどの様に上記コードに当てはめられているのかが
分かりません。

どなたか、[明示的にConnectionを閉じること] → [上のコード] → [コールバックメソッドが
あるかどうかで判定] の考え方の流れの解説願います。

※平たく書くと、思考過程が分からないということです。
228222:2012/12/27(木) 03:20:03.99 ID:0d9n/sPz
(自己解決しました)
実際にキー入り配列を作って試したところ、上記の通りの動きをしました。
229Now_loading...774KB:2012/12/27(木) 10:00:23.03 ID:pNsAPfKD
通信? おもしろそうだな どんなの作ってるの?
230Now_loading...774KB:2012/12/28(金) 22:25:52.51 ID:Puqxo+9M
あるクラスがあるクラスを継承してるかどうかをインスタンス化せずに確かめる方法ってない?
231Now_loading...774KB:2012/12/29(土) 01:20:20.27 ID:HSDqJP7M
Suzukaで、ボタンにスクリプト入力するところに、on(Press)の前にfunctionを定義しようとしたら、定義できなかったので、
フレームアクションを用いて定義しました。そして、on(Press)からその変数へ、例えば数字の'6'を渡したら、
渡した先で"6_level0.day”(ちなみにon(Press)の方の引数に書き込んだ文字はday)となってしまっており、6だけ渡せるようにしたいのですが、
どうすればいいでしょうか。初心者です。
232Now_loading...774KB:2012/12/29(土) 02:59:49.10 ID:HSDqJP7M
>>231です
インスタンス名を設定していたのが原因でした。
233Now_loading...774KB:2012/12/30(日) 15:20:49.78 ID:ia+HmD37
AS3のListコンポーネントを使ってるんだけど、
これのスクロール位置取得するメソッドとかってないの?
234Now_loading...774KB:2012/12/30(日) 16:53:01.62 ID:0joCQhaz
>>233
ttp://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/fl/controls/List.html
verticalScrollPosition : Number
horizontalScrollPosition : Number
好きな方を選べ。
235Now_loading...774KB:2012/12/30(日) 18:29:35.44 ID:ia+HmD37
>>234
助かりました。ありがとうございます
236Now_loading...774KB:2012/12/31(月) 06:05:49.59 ID:kXhWU04w
Hakuhinさんの3D用行列の使い方で質問です。
ttp://hakuhin.jp/as/matrix_33.html#MATRIX_01
環境はCS5(AS3)ですが、これは暫定です。 本当はAS2で3D操作を実現したいので。
※ AS2はここ3年くらい全くやってないので感覚的に忘れちゃってます。

先ずは試しに、ある3Dの点、例えば(100, 100, 0)を並行移動させたいでので
HPの「平行行列を作成する」を参考に書いてみました。 
※ 記述は見当が付かないのでかなり適当です。ゴメンなさい。

var vec:Object = {x:20, y:-7, z:3};// 並行移動量;
var myVector3D:Vector3D = new Vector3D(100, 100, 0);// 初期位置
var myMatrix:Matrix = Mtx44Translate(vec);// マトリックスの形成

myVector3D.transform.matrix = myMatrix;// ここでエラーになります
trace("XYZ= " + myVector3D.x + ", " + myVector3D.y + myVector3D.z);

function Mtx44Translate(vec){
// 中身は ttp://hakuhin.jp/as/matrix_33.html#MATRIX_01 と同じ
}

つまり、行列は作ったものの座標点にどう適用して良いものか悩んでいます。
Vector3DでなくPointオブジェクトがありますがこれは2次元なので・・・

ttp://tech.nitoyon.com/ja/blog/2008/06/16/as-3d-lessen1/には
カスタムのPoint3Dクラスがありますが先ずはこれ無しでやりたいです。

訳の分からない文章かと思いますが宜しくお願いします。
237Now_loading...774KB:2012/12/31(月) 15:30:05.55 ID:HlzuW/9p
Vector3Dにtransformなんてプロパティねえよ
Mtx44TranslateはObject型返してるのにMatrix変数に入れんなよ


アフィン変換なら普通に最初からMatrixクラス使えよ
http://help.adobe.com/ja_JP/FlashPlatform/reference/actionscript/3/flash/geom/Matrix.html


なんてエラー出てるのかも書けないレベルでは行列操作はムリ
238236:2012/12/31(月) 22:44:16.67 ID:kXhWU04w
>>237
有難うございます。
「Mtx44TranslateはObject型返してる」と多次元行列の勉強をし直して
みたところ使いこなすことが出来ました。
ついでにネットを眺めていたら、ラプラス展開とか基底ベクトルって単語久しぶりに見たw

ちなみにMATLAB では2次元よりも大きい配列は多次元配列と呼んでいるそうです。
239Now_loading...774KB:2012/12/31(月) 23:27:28.55 ID:0zOcK1hT
MATLABじゃなくてもよぶだろー
240Now_loading...774KB:2013/01/03(木) 22:41:22.50 ID:V0SJQTBK
Flash 8 のファイルを Flash CS6 に変換するのは現状無理でしょうか?
AS2.0 AS3.0 の違いもあるから厳しいのは承知の上でどこかに可能性があるのならと・・・
最悪スクリプト以外だけでも変換してくれればと思うのですが。
241Now_loading...774KB:2013/01/04(金) 01:09:29.64 ID:tX0TVAq6
>>240
Flash 8 のファイル → Flash CS6 って開けないの?
もしかしてFlash 8が最初の開発環境でUpを繰り返しCS6に到ったとか?

恒久的には無理だけど、本に付属の無料CS4辺りを30日限定で入れて一旦CS4で保存して
CS6で見るとかはどうかな。
242Now_loading...774KB:2013/01/04(金) 22:17:25.58 ID:1eB3y4lC
AS3の講座でようやく良いところ見つけた
結構つまずいてた部分があるから助かる
243Now_loading...774KB:2013/01/04(金) 23:29:38.35 ID:khI+6B1A
なぜそれを書かない
244Now_loading...774KB:2013/01/05(土) 02:32:06.60 ID:3kZMTuyY
初心者〜中級者用だからここの人たちには必要ないかなと思ったから
晒すのもまずいかなと思うが一応ヒントで検索ワードは「マイナビ おきらくFLASH講座」
知ってたらすまん
245Now_loading...774KB:2013/01/05(土) 06:42:25.63 ID:PcPHxPay
>>244
数学と同じで大事なのは基本の組み合わせだよ。
おきらくFLASH講座とHakuhinさんのとで大抵のことは出来そうだな。
246Now_loading...774KB:2013/01/05(土) 06:47:14.59 ID:PcPHxPay
(追記すまん)
強いて言えば、(もう連載は終わってるけど)「おきらく」の方はAIRの情報も盛り込んで欲しかった。
247Now_loading...774KB:2013/01/05(土) 11:10:01.68 ID:B0Z+gJJv
テクスチャ枚数とかリソース量に制限ってありますか?
248Now_loading...774KB:2013/01/05(土) 11:12:06.52 ID:O7FDgQFJ
ある
249Now_loading...774KB:2013/01/05(土) 11:16:07.85 ID:B0Z+gJJv
具体的にどれくらい?
250Now_loading...774KB:2013/01/05(土) 11:16:49.52 ID:O7FDgQFJ
まずなんの話してんのか書けよ
251Now_loading...774KB:2013/01/05(土) 18:14:13.74 ID:0sAL4yFV
アプリ起業 iPhone C#まとめ Ver 1.5
http://tinyurl. com/9w97424
252Now_loading...774KB:2013/01/05(土) 22:21:48.82 ID:Rf+9yj8W
>>241
なんとか Flash 8 のファイルを ActionScript 3.0 のファイルに変換したいのですが・・・
スクリプトも変換されれば一番うれしいんですが、できなければタイムラインの部分
だけでもいければ、スクリプトは手作業で変換してもかまわないと思っています。

いくつかこれをやりたいファイルがあって困っています。
253Now_loading...774KB:2013/01/06(日) 01:15:20.30 ID:jyjQTogW
勘違いしてるんじゃないか? そもそもスクリプトは変換されないおw
8ProならAS1,2だろ CS6で開いてもAS2設定でしか動かない AS2からAS3には変換されないんだお

ちなみにFlashPlayer5以上で作られてるならFlaファイルは開けると思うんだけど
8ProはもちろんMX2004、無印MXで作られたのでも開ける ただし保存時のPlayer設定が4以下だと無理かも
Flaファイル自体は開けてるんだよね?
254Now_loading...774KB:2013/01/06(日) 11:01:13.67 ID:y0wiffT6
ソケット通信なんだけど
socket = new Socket("アドレス", ポート);
したら自動的にポート843にポリシーファイル要求が来るんだよね??
255Now_loading...774KB:2013/01/06(日) 11:15:28.96 ID:62hoW4OG
>>253
書き方がわかりにくくて申し訳ありません。
Flash 8 のファイルを CS6 で開くことはできています。
「やりたいことは Android や iOS 用に AIR アプリとして書き出す」
ことなんですが、それは AS3.0 形式でないとできませんよね。

そこで AS2.0 -> AS3.0 の翻訳は無理だとしても、それ以外のタイムラインの
部分だけでもAS3.0 形式のファイルにもっていく方法はないのかと考えています。
もちろんこれだとスクリプトは動きませんが、そこは手作業で変えていくということ
で仕方がないと思っています。一からすべてを作り直すのはとても大変・・・

大量の 8形式のファイルを AIRアプリとして書き出すために何か裏技をご存じの方
はみえないでしょうか?
256Now_loading...774KB:2013/01/06(日) 11:53:09.77 ID:jyjQTogW
>>254
ソケット関連はやった事無いのでわからんな
「 new Socket(" ポリシーファイル 」でググればけっこう記事出るから見まくれ

>>255
一つ思ったのがAS3本体から外部ファイルとしてAS2を読込む事だがムズイらしいな
ここの記事参照
ttp://cakey2.blog65.fc2.com/blog-entry-72.html

>大量の 8形式のファイル
全部内容の異なるミニゲームみたいなのなら 手で個別に修正するしかない
絵やサウンドだけが違うほとんど似たようなのならコマンド(処理の自動化のアレ)駆使してやる
257Now_loading...774KB:2013/01/06(日) 13:01:41.82 ID:y0wiffT6
StageScaleMode.SHOW_ALLなどでstageを画面に固定したあとにウインドウの大きさを変えたら上下か横に余白ができますが、
この余白を含めたウインドウのサイズか縦横比を取得する方法はありますか?
258Now_loading...774KB:2013/01/06(日) 17:39:59.59 ID:2MA6S11R
>>255
同一フォルダ内にAS2の(Flash8の)SWFを置いておき、LocalConnectionで
通信させるってのは? (同一フォルダでなくても良いけど)

ttp://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/flash/net/LocalConnection.html
ActionScript 3.0 で作成された LocalConnection オブジェクトは、ActionScript 1.0 または 2.0 で作成された
LocalConnection オブジェクトと通信できます。また、その逆も可能です。ActionScript 1.0 または 2.0 で
作成された LocalConnection オブジェクトは、ActionScript 3.0 で作成された LocalConnection オブジェクト
と通信できます。
Flasn Player では、このようなバージョンの異なる LocalConnection オブジェクト間の通信が自動的に
処理されます。

AS2のSWFを読み込んで通信させるとか(やったこと無いけど)


>>257
Capabilities クラスを利用して実行環境の画面サイズを調べて調整するとか。
ttp://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/flash/system/Capabilities.html
259258:2013/01/06(日) 18:00:15.21 ID:2MA6S11R
>>255
ForcibleLoaderってのがある
ttp://www.libspark.org/wiki/yossy/ForcibleLoader
Version9未満のswfファイルを無理矢理Version9形式にコンバートして読み込みます。
ttp://fladdict.net/blog/2007/05/avm2avm1swf.html
260Now_loading...774KB:2013/01/06(日) 19:07:59.03 ID:jyjQTogW
吹いたw
さすがsparkさんだ
261Now_loading...774KB:2013/01/07(月) 21:46:50.59 ID:Q5OjHhhM
ByteArray.writeUTFBytes()って自動でUTF8でエンコードしてバイト列になるの?
262Now_loading...774KB:2013/01/07(月) 22:06:19.73 ID:RfREoggE
AIRやってるんだけど、
alwaysInFront=trueになってるtransparentのNativeWindowがあって、それがアクティブでないときに、
そこのステージに設置してあるMovieClipをクリックしてもウインドウをアクティブにしない方法ある?
mouseEnabledは試したけどだめだった
263Now_loading...774KB:2013/01/09(水) 19:30:39.53 ID:Hs6UHZ7Q
Adobe AIR Debug Launcherは動作を停止しましたってなるんやけど
よほどのことしない限りならんよな?
264Now_loading...774KB:2013/01/11(金) 20:54:30.93 ID:8Aqy1/C6
LoaderでSWFを読み込んだとき、loder.contextでメインタイムラインが取得できますが、ドキュメントクラス内に書いた関数は実行できるのですか?
265Now_loading...774KB:2013/01/11(金) 21:00:10.23 ID:8Aqy1/C6
正:loader.content
266Now_loading...774KB:2013/01/11(金) 22:30:48.98 ID:kdkI3zr4
できる
267Now_loading...774KB:2013/01/12(土) 21:09:40.04 ID:PYg6ORZF
どうやるん?
268Now_loading...774KB:2013/01/12(土) 21:22:23.68 ID:b2b+2X7v
簡単なテストプログラムでも書いてやってみればいいじゃん
269Now_loading...774KB:2013/01/12(土) 22:00:54.03 ID:PYg6ORZF
できなかった
loader.content.関数名();
じゃダメなん?
270Now_loading...774KB:2013/01/12(土) 22:06:52.19 ID:qPdsbUVF
completeしてるか
MovieClip(loader.content).関数名(); でどうか
読み込まれる側のdocumentclassが extends MovieClipかどうかあたりかなー?
271Now_loading...774KB:2013/01/12(土) 22:13:58.89 ID:qPdsbUVF
あと関数がpublic以外とか無いよね?
272Now_loading...774KB:2013/01/12(土) 23:10:40.49 ID:vqosbMen
できなかったんならなんて言われたのかかけよエラーでてんだろ
コピペしろや
273Now_loading...774KB:2013/01/13(日) 00:21:18.39 ID:S11Kjxqy
MovieClip(loader.content).関数名();
で、いけました。
どうもありがとうございます。
お騒がせして申し訳ありませんでした。
274Now_loading...774KB:2013/01/13(日) 01:47:28.08 ID:LMpGbFZi
>>273
それはキャストと言いますです
275Now_loading...774KB:2013/01/13(日) 02:15:10.68 ID:hte7FiVm
loder.contentにおまえの指定したメソッドがなくてコンパイルエラー吐いてたんだろ
ダイナミッククラスのMovieClipかObjectでキャストしないと勝手なメソッドは呼べないんだよ

エラーをみれば一発でわかる話
今度からはエラーを書け
ダメでしたじゃなくてとにかくエラーを書け
頼むからエラーを書け
276Now_loading...774KB:2013/01/13(日) 14:16:42.00 ID:97CTmv8s
エラー内容が分からなければググったり、あとはリファレンス読んだりで大抵は解決するからね
277Now_loading...774KB:2013/01/14(月) 09:20:14.38 ID:OsOHT0P5
半透明色が含まれているSpriteをBitmapDataに描画すると、半透明部分が完全不透明に変換されてしまいます。
半透明を維持したまま描画するにはどうやればいいですか?
278Now_loading...774KB:2013/01/14(月) 09:58:17.10 ID:n910S6j+
new BitmapData(width, height, true);
279Now_loading...774KB:2013/01/14(月) 18:49:16.93 ID:sPfxc4mn
Airを使ってサーバー側がjavaのアプリを作ってて、
RemoteObjectのtimeout時間は無制限にしてます。
にもかかわらず、サーバー側の処理が30秒を超える場合の
初回だけ、通信エラーが発生する現象が起きるんだけどなんでだろ?
280Now_loading...774KB:2013/01/14(月) 21:06:26.79 ID:OsOHT0P5
Spriteの一部分を切り抜いてSpriteを作るにはどうすればいいですか?
281Now_loading...774KB:2013/01/14(月) 21:13:54.30 ID:n910S6j+
>>280
無理
BitmapDataにするかマスク駆使するか
282Now_loading...774KB:2013/01/14(月) 21:14:13.44 ID:OsOHT0P5
マスク?
283Now_loading...774KB:2013/01/14(月) 21:17:17.05 ID:OsOHT0P5
何か色で塗りつぶすってことかな
284Now_loading...774KB:2013/01/14(月) 21:17:18.60 ID:n910S6j+
なにがしたいのかわからん
Sprite形式でないといけないのか
ものSpriteもとっておきたいのか
マスクを知らないのか
285Now_loading...774KB:2013/01/14(月) 21:18:42.67 ID:n910S6j+
単純にあるSpriteのある矩形領域だけ表示したいならscrollRect
286Now_loading...774KB:2013/01/14(月) 21:37:58.70 ID:OsOHT0P5
スプライトに独自のフォントで0から9までの数字を描いたテクスチャを読み込んでいます
その中から1つ数字を表示してそれ以外は透明にしたい
287Now_loading...774KB:2013/01/14(月) 23:01:32.66 ID:OsOHT0P5
>scrollRect
これでしたね
288Now_loading...774KB:2013/01/15(火) 06:04:04.43 ID:aHISUdU7
SparkProjectの ASMovieClip ttp://www.libspark.org/wiki/Hiiragi/ASMovieClip
で質問です。 環境:FlashCS4,WindowsXP,メモリ3GB (タイムラインの1フレ目に書いた)

 ライブラリをDLし、 import org.libspark.asmovieclip.*; で準備を整えて
ASを書いてコンパイルしたところ、エラーにはならなかったのですが希望する動作(本来の動作)が
得られませんでした。 ※以下ASの抜粋

var asmc:ASMovieClip = new ASMovieClip();// ASMovieClipのインスタンス
asmc.x = 100;
asmc.y = 100;
addChild(asmc);// ステージ上にASMovieClipのインスタンスasmcを置く

asmc.addChild(mcA);// asmc内にボタンモードを持つ子MC(円盤MC)を置く

 mcAをクリックしたときの挙動:
intA++;// int数でカウントしながら円盤MC(mcA)をクリックする度に右に移動
evt.target.x += 10;// 例:5回クリックするとX座標は+50
asmc.addFrame(mcA, intA, "ラベル " + intA.toString());// asmcにフレームとして記録させる

 最後にRunボタンをクリックして
mcA.x = 0;// 最初の位置に戻し
asmc.play();// フレームを再生
trace("Information= " + asmc.getFramesInformation());// 情報確認
 をしましたが、traceでは正しい情報が得られるものの再生が行われません。
 どうするべきでしょうか? 必要ならばライブラリと一緒にFlaファイルをUpするのも可能です。

 関連サイト:
ttp://melancholy.raindrop.jp/wordpress/?p=982 // 製作者が実際の使用
ttp://wonderfl.net/c/4cWf // 製作者の試作?
289288:2013/01/15(火) 06:09:59.67 ID:aHISUdU7
traceの内容: 一応、5回クリック移動で5フレーム分記録されている。

Frame:Label:DisplayObject:Name
========================================
1:ラベル 1:[object EnM]:instance7
2:ラベル 2:[object EnM]:instance7
3:ラベル 3:[object EnM]:instance7
4:ラベル 4:[object EnM]:instance7
5:ラベル 5:[object EnM]:instance7
========================================
totalFrames : 5
enterFrameDelayTime : 33
isLoop : false
isPlaying : false
290Now_loading...774KB:2013/01/15(火) 08:34:09.66 ID:kJGUgyvC
> asmc.addChild(mcA);
mcAってどっから出てきたんだお 定義したとこ見せてみ 話はそれからだ
291Now_loading...774KB:2013/01/15(火) 08:42:38.75 ID:kJGUgyvC
traceでフレーム毎にmcAの座標プロパティを確認だ
292288:2013/01/15(火) 10:49:18.38 ID:vXclpDak
レス有難うございます。

>>290
mcAはCS4のライブラリに登録した円盤MCで
var mcA:MovieClip = new EnM();
mcA.buttonMode = true;
asmc.addChild(mcA); により生成&DisplayObject追加しています。


>>291
円盤MCはそれ自体をクリックするとそれ自体が右に移動するので
mcA.addEventListener(MouseEvent.CLICK, mcA_click);
function mcA_click(evt:MouseEvent) {
intA++;// カウント用
evt.target.x += 10;
trace("mcA.x= " + mcA.x, evt.target.x);
asmc.addFrame(mcA, intA, "ラベル " + intA.toString());
}

でtraceすると 
mcA.x= 10 10
mcA.x= 20 20
mcA.x= 30 30
mcA.x= 40 40

と意図どおりに数値的にも画面上でも変位しています。
他に試しにRunボタンで asmc.prevFrame(); とか asmc.gotoAndPlay(1); を試しましたが
タイムライン的な挙動は得られませんでした。

もし他にヒントがありましたら宜しく願います。
293Now_loading...774KB:2013/01/15(火) 13:01:58.89 ID:kJGUgyvC
asmc.gotoAndStop( 3 );
とかにして
trace( asmc.getFrameAt( mcA ).x );
これじゃ確認できないか? メンドイから試してないが
294288&292:2013/01/15(火) 14:55:11.84 ID:vXclpDak
>>293
getFrameAtの引数はフレーム番号かラベル名なので
asmc.gotoAndStop(3);
trace("3回目の位置= " + asmc.getFrameAt(3).x);

としたら、5回クリックの5回移動で30になるところを50でした。
※つまり最後のしか反映されてない(下記)

mcA.x= 10 10
mcA.x= 20 20
mcA.x= 30 30
mcA.x= 40 40
mcA.x= 50 50
3回目の位置= 50

しかし、フレームを追加形成する addFrame() は 色・形がちがう En0,En1,En2 を
CSのライブラリに用意して
asmc.addFrame(new En0());
asmc.addFrame(new En1());
asmc.addFrame(new En3());

とすれば play() でフレーム移動が可能です。

どうやら、DisplayObjectContainerの中にある状態を写真のようにスナップショットして
フレーム追加するのは出来ないのかも・・・
う〜ん、答えに近づいているようで近づいていないようなw
295288&292:2013/01/15(火) 15:11:47.59 ID:vXclpDak
(ASMovieClipについて)
FlaファイルとライブラリをZipでUpしました。
http://uproda11.2ch-library.com/376144SVY/11376144.zip (401kB)
水色の円盤をクリック移動し、Runボタンを押して下さい。
宜しくお願います。
296Now_loading...774KB:2013/01/15(火) 16:52:02.95 ID:k7o1rPro
なにやってんだかわからんけどBitmapdataにdrawしてaddChildしたいって事?

//ムービークリップ
var mc:MovieClip = new MovieClip();
var g:Graphics = mc.graphics;
g.beginFill(0xFFCC00);
g.drawCircle(100,100,100);
addChild(mc);

//切り取って表示
var b:BitmapData = new BitmapData(100,100);
b.draw(mc,new Matrix(1,0,0,1,-100,-100));
var bmp:Bitmap = new Bitmap(b);
bmp.x=300;
addChild(bmp);
297288&292&294:2013/01/15(火) 20:30:23.21 ID:YHu+faLO
>>296
お手数かけます。
多数の子や孫を持つあるMCが操作でマウス操作で ○→●→△→▲→□
と変化したとき(あるいは子孫が位置を変えた時)各個をフレームに割り振り、

. 1フレ 2フレ 3フレ 4フレ 5フレ
[ ○ ][ ● ][ △ ][ ▲ ][ □ ]

と動的にFlashCSのようなタイムラインフレームを作成(伸長)し、
play(またはrun)ボタンを押せば

○→●→△→▲→□ と自動再生させたいです。

で、FlashCS(というか昔のマクロメディアFlash)のように任意の位置の
フレームを選択して(例えば3フレ目)編集で△を▼にしたり内部の子MCや
孫Spriteの位置を変えて、再生では

○→●→▼→▲→□ としたいです。

平たく書くと、フレームを動的追加&編集できるFlashCS(マクロメディアFlash)
みたいなものを作りたいです。

※ Bitmapdataにしちゃうと内部の子MCや孫Spriteの操作が出来ない
ので避けたいです。 あと、MCをコピーしてどっかに格納するという方法も
あるかと思いますがMCのコピーは
ttp://seedleafproject.seesaa.net/article/283299921.html
ttp://www.inazumatv.com/contents/archives/5454
色々問題があるようなので・・・
298288&292&294:2013/01/16(水) 17:41:02.59 ID:/wqqBhht
度々すいません。
どうやら意図した動作(MCの変化をスナップショット的に記録)は出来ないようです。

基本的に、addFrame() の引数は
A) DisplayObjectContainerに入った(実体化した)をMCを拾い集めて順次フレームに格納するか
B) new したオブジェクトを順次入れてフレームを伸長するか

のどちらかでした。
299Now_loading...774KB:2013/01/16(水) 20:46:44.34 ID:4JVHkK9W
マウス操作での変化を記録するオブジェクトなりクラスなり作って
再生は1つのMCを記録に応じてフレーム移動させるとかでいいんじゃないの
300Now_loading...774KB:2013/01/16(水) 20:48:58.49 ID:YJUyPR8M
flash.systemパッケージのCapabilitiesクラスで質問です。
FlashCS5,WinXP-Pro

英語版リファレンスのPublic Properties(パブリック プロパティ)を見ると
cpuArchitecture というプロパティがありますが日本語版には有りません。 
他、maxLevelIDC も日本語版にありません。
このような言語による差異って意図的なものでしょうか?

英語版 ttp://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/system/Capabilities.html
日本語版 ttp://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/flash/system/Capabilities.html#propertySummary
301Now_loading...774KB:2013/01/16(水) 20:54:24.23 ID:dBCMei6E
>>299
どうも。 やりたいことの本質は、アプリケーションでよくある undo redo (元に戻る,やり直し)です。
記録するにしてもプロパティ数がかなりになるので整理(管理)が面倒なので、いっそ
CSシリーズや旧マクロメディアのタイムライン的に管理した方が楽かなあと思っていました。

調べると、
ttp://www.adobe.com/jp/devnet/flex/articles/flexarchitecture2.html
Command を使うことで、Controller が肥大化したり、重複したコードが複数箇所にある、といった
状態を避けることが可能になります。また、Command には、操作の "取り消し" の様な複雑な機能や、
マクロ機能の実現がしやすいという利点もあります。ビジネス層との連携にも Command は使われます。

ということなので、
 Commandパターン undo redo 履歴 ActionScript OR AS3 OR Flash
でググって勉強中です。
302Now_loading...774KB:2013/01/16(水) 21:23:40.20 ID:JncVF9oR
>>300
こっちの日本語版にはあるぞ? その日本語ドキュメントのリビジョンが古いとかじゃないかな
ttp://help.adobe.com/ja_JP/FlashPlatform/reference/actionscript/3/flash/system/Capabilities.html
303Now_loading...774KB:2013/01/16(水) 21:52:36.81 ID:4JVHkK9W
>>301
Flex4ならUndoManagerがあるぞ
304301:2013/01/16(水) 23:13:27.87 ID:dBCMei6E
>>303
どうも。手元にあるのはCS4とCS5だけです。
あと調べると
ttp://www.be-interactive.org/?itemid=535
flashx.undo.UndoManager は、TextLayoutFramework に含まれているクラスのようです。
Flex SDK 4 であれば、"frameworks/projects/textLayout/src/flashx/undo/UndoManager.as"
に元のファイルを見つけることができます。たぶん、新しいテキストエンジンで色々やるために
自前で実装する必要があったんでしょうね。

ということなので、FlexのTLF専用っぽいです。
305Now_loading...774KB:2013/01/16(水) 23:35:24.87 ID:dBCMei6E
インターフェースについて調べていたらこんなの見つけました。

ttp://www40.atwiki.jp/spellbound/pages/985.html
※ 分かりやすいように日本語でクラスとメソッド名を定義しています。
※ 気になる方は適宜変更してください。一応、日本語を使用してもコンパイルは通ります。

クラスとメソッド名は日本語でもOKなんだw
306Now_loading...774KB:2013/01/16(水) 23:43:13.80 ID:4JVHkK9W
>>304
今ちょっとやってみたけど、別に専用じゃないようだぞ
newでインスタンス作成まではとりあえず確認できた
補完に出すためにはパス通さなきゃダメだったけど
307Now_loading...774KB:2013/01/16(水) 23:46:51.21 ID:+AMc0JIx
>>305
wonderflでもつかえるよ
308Now_loading...774KB:2013/01/17(木) 01:32:35.28 ID:2Aa0Q0Nk
>>307
NHKスレから帰還しますた。
へえ〜〜〜
309Now_loading...774KB:2013/01/17(木) 02:25:07.69 ID:UvaB0JlF
わりと日本語というか2バイト文字使える言語処理系って多いよね めったに使わないけど
310Now_loading...774KB:2013/01/17(木) 17:38:48.21 ID:VoF6ma+A
MP3(バイナリ)を文字列化するAS3ライブラリってありますか?
「Base64 Encorder」ってのは画像を文字列化するやつですけど、そのMP3版です。
音 文字列 バイナリ エンコード デコード でググりましたが見つかりませんでした。
311Now_loading...774KB:2013/01/17(木) 20:08:41.75 ID:drHT4lwa
Base64ってただのエンコード方式だから
別に画像専用ってわけじゃない
312Now_loading...774KB:2013/01/17(木) 22:40:46.47 ID:VoF6ma+A
>>311
さんきゅう。
http://wonderfl.net/c/sa0kでMP3エンコードが出来ました
デコードは未確認です。
313Now_loading...774KB:2013/01/17(木) 22:40:55.45 ID:LwPOxOJD
MP3をByteArray相互変換できればBase64で文字列相互変換できんじゃね
314310:2013/01/18(金) 02:08:36.16 ID:YqNwlCxg
CS4(AS3)で 音 → 文字列 → 画像 の実験をしています。
参考サイト:
http://www.kalium.net/image/2010/11/19/base64%E5%BD%A2%E5%BC%8F%E3%81%AEjpeg%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B/
http://d.hatena.ne.jp/shunsuk/20101225/1293263024

音 → 文字列 は Base64Encoder で出来たのですが、文字列 → 画像 で
コマってます。 記述を抜粋すると下記になります。

var decoder:Base64Decoder = new Base64Decoder();
decoder.decode(String(ff.data));
var ba:ByteArray = decoder.toByteArray();
//trace("ByteArray: " + ba);// 表示される
var loader:Loader = new Loader();
loader.loadBytes(ba);// ************************************** ここでエラー
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,
function(e:Event):void {
var bitmapData:BitmapData = new BitmapData(10, 10);// サイズは適当
bitmapData.draw(loader);
});

これだと
 Error #2044: ハンドルされていない IOErrorEvent : text=Error #2124: 読み込まれたファイルの形式が不明です。

というエラーが出ます。 loaderを使わない方法もあるかと思いますが、
調べた範囲ではこれしかなかったので。 どなたかご指摘願います。
315314:2013/01/18(金) 06:22:47.23 ID:YqNwlCxg
(自己解決しました)
BitmapData.setPixelsでOKでした。
参考: http://wonderfl.net/c/d2Ga

decoder.decode(文字列);
var ba:ByteArray = decoder.toByteArray();

var bmd:BitmapData = new BitmapData(50, 50, true);// 大きさは適当
bmd.setPixels(bmd.rect, ba);
var bitm:Bitmap = new Bitmap(bmd);
addChild(bitm);

JPGやPNGにはしていませんけど、これで良しとします。
316Now_loading...774KB:2013/01/18(金) 23:20:23.97 ID:32Tszdpw
コンポーネントのFlvPlaybackとSeekBarを設置しました
。flvファイルの再生状況を視覚的に見せる為にSeekBarを設置したのですが
スクラブ(ドラッグによる再生の移動)を禁止したいです。
よろしくお願いします。
317Now_loading...774KB:2013/01/19(土) 00:54:02.35 ID:3kGCkMZg
>>315
as3でPNGEncoderとかあるよ
318Now_loading...774KB:2013/01/19(土) 04:04:24.55 ID:lz5bpU+5
>>316
使用環境くらい書こうぜ
319Now_loading...774KB:2013/01/19(土) 12:25:13.90 ID:WFtWbECA
>>316
あまり拘らないなら透明シェイプとか被せてマウス操作が届かないようにするとかでもいいんじゃね
320Now_loading...774KB:2013/01/20(日) 16:02:49.54 ID:1xCjnNtO
長くなっちゃったんで次の投稿でコードだけ載せます。
現在の時間によって再生されるムービークリップを変える方法についての質問です。actionscript3.0で、Flash CS5 を使っています。
現在の時間を表す数字をダイナミックテキストではなくムービークリップの再生で表示したいとと思っています。
自分で作った文字で時計を作りたいからです。
今の時間を表す透明のダイナミックテキストを用意しておき、if文を使い再生されるムービークリップを操作ようと思ってます。

例)もしseconds_txtが01ならばmc_seconds_txtが1フレーム目に行くようにしたい。

ムービークリップ(mc_seconds_txtなど)の中は1フレーム毎に数字の絵が連続して入っています。
エラーは何も出ないのですが指定したフレームに行ってくれません。時間の表示自体は問題ないのですが
if文のフレーム移動の書き方が心配です。
具体的にどういった文にすれば上手く動くようになるか教えてくださると幸いです。
よろしくお願いします。
321Now_loading...774KB:2013/01/20(日) 16:04:43.98 ID:1xCjnNtO
>>320のコード
addEventListener(Event.ENTER_FRAME,updateDate);
function updateDate(evt:Event):void {
//Dateクラス設定
var dateObj = new Date();
//時を表示(1桁の場合は頭に0を足す)
if (dateObj.hours < 10) {
hours_txt.text = "0" + dateObj.hours;
} else {
hours_txt.text = dateObj.hours;
}
//分を表示(1桁の場合は頭に0を足す)
if (dateObj.minutes < 10) {
minutes_txt.text = "0" + dateObj.minutes;
} else {
minutes_txt.text = dateObj.minutes;
}
//秒を表示(1桁の場合は頭に0を足す)
if (dateObj.seconds < 10) {
seconds_txt.text = "0" + dateObj.seconds;
} else {
seconds_txt.text = dateObj.seconds;

//試しに秒をのみで、例)seconds_txtが"01"ならmc_seconds_txtは1フレーム目に
if(seconds_txt.text == "01")
{mc_seconds_txt.gotoAndStop(1);
}
else (seconds_txt.text == "02")
{mc_seconds_txt.gotoAndStop(2);
}
…長いので省略
322Now_loading...774KB:2013/01/20(日) 17:29:01.20 ID:6jlQCbuC
> seconds_txt.text = dateObj.seconds;
この後ろでカッコ閉じてないからじゃねーの?
323Now_loading...774KB:2013/01/20(日) 18:20:18.14 ID:1xCjnNtO
>>322
おおー!できました。ありがとうございます!
324Now_loading...774KB:2013/01/22(火) 20:43:50.43 ID:Vck8FMOc
サンプルコードでよくあるこの記述の意味がわからないです
public function Main():void {//コンストラクタ
if ( stage != null ) {//@
initialize(null);//initializeは初期設定
} else {//A
this.addEventListener(Event.ADDED_TO_STAGE, initialize);
}
}
ドキュメントクラスで実行すると最初からstageが有り@が実行されますが
Aが実行される場合ってのはどういう時なんですか?
タイムラインからクラスをnewしてもAは実行されません
325Now_loading...774KB:2013/01/22(火) 20:56:54.31 ID:y9nSWiDx
公式リファレンスのDisplayObjectのstageに

>表示オブジェクトが表示リストに追加されていない場合、stage プロパティは null に設定されます。

て書いてある
326Now_loading...774KB:2013/01/22(火) 23:28:07.59 ID:HzYb9efe
ドキュメントクラスには基本stageが即あるのでいらんはず
外部読み込みaddChildされる可能性を想定してるんじゃない?
327Now_loading...774KB:2013/01/23(水) 01:09:06.74 ID:/Zv4VSC2
CS5.5のボーンとQuickBox2Dを組み合わせて、重力付きのチェーンを再現したいのですが
何かよいサイトは無いでしょうか?

チェーンへのボーン適用はできたものの、ボーンへ重力をつけつつ両端を任意の
座標に固定する・・・ということが出来ていません。


縄跳びみたいに動くスプライトに両端を追従させつつ、縄部分が重力で垂れる動きができると
ハァハァな表現が出来るのですが(´・ω・`)
328Now_loading...774KB:2013/01/23(水) 19:49:44.02 ID:KCOs/7gC
>>327
wonderfl ttp://wonderfl.net/

検索は ttp://www5.pf-x.net/~uwi/wonderfl/index.php が便利。 
lines:1-300 とかでコード行数でも検索できる。
329Now_loading...774KB:2013/01/24(木) 00:00:19.61 ID:rQapaJjx
flashbuilder買ったのはいいが、難しいすぎ。
asでオブジェクト作ってaddchildしたほうがラクな気がしてならない。。

書籍もほとんどないし困ったもんだ
330Now_loading...774KB:2013/01/24(木) 00:14:35.93 ID:kVPIjhPP
mxmlのはなし?
331Now_loading...774KB:2013/01/24(木) 01:19:27.11 ID:rQapaJjx
>>330
そです。
flex4の入門書読んだけど、応用についての資料がネット上にも皆無で困ってます。

できるだけmxmlとasファイルは分離させたいのですが、
ネット解説見ても「なに言っちゃってんの?」って感じで四苦八苦です。

mxmlでは初期レイアウト(簡単なイベント用レイアウト含む)だけ作って、buttonとかにaddeventしてそこからはasでaddchild等の制御したいのです!
332Now_loading...774KB:2013/01/24(木) 01:38:04.27 ID:rQapaJjx
>>331
追記です。

<s:Button id="test" label="testtext" x="100" y="100" click="package1.class.func(event);"/>
<s:Button id="test" label="testtext" x="200" y="100" click="package2.class.func(event);"/>

こういう書き方しかないのでしょうか?

package2.class.func(event);でポップアップだしたときの制御は、
ポップアップタグをvisibleにして同タグ内のpopuppackage.class.func(event);
を叩く感じでしょうか?
333Now_loading...774KB:2013/01/24(木) 05:40:41.66 ID:Z3AW+zTC
>>331 できるだけmxmlとasファイルは分離させたい

includeを使うのは?
最小限のASはmxml側で必要だけど。
334Now_loading...774KB:2013/01/24(木) 11:51:49.46 ID:2MLsaaz8
ASとMXMLを分離させたいのなら検討するべきなのはIMXMLObject。

http://www.adobe.com/jp/devnet/flex/articles/imxmlobject_interface.html
335Now_loading...774KB:2013/01/24(木) 20:10:30.07 ID:msMQZSmN
FlexでAIRやってるけどIMXMLObjectは常に使ってるな
ビューとコントローラって感じで分離できるし
336Now_loading...774KB:2013/01/24(木) 21:33:45.47 ID:2MLsaaz8
同じく。

そのadobeのリンクと同じように、initialize時にid+アクション(click)とかでイベントを自動的に登録する
IMXMLObjectを実装したAbstractクラス(ASの機能としてabstractは無いけど)作ってて、
画面が必要な所はextendsしてる。
337Now_loading...774KB:2013/01/25(金) 00:17:43.86 ID:PaeB7J2w
>>333-336
求めていた記事ありがとうございます!
ネット上にある情報のほとんどがflex3のもので残念ですが一歩ずつやっていきます!

また困ったことがあれば遠慮なく戻ってまいります。

よろしくお願いしまーーーす!!ターーン!
338Now_loading...774KB:2013/01/25(金) 16:31:13.91 ID:XtZs6jhP
spark以外の部分は結構通用するよ >Flex3
339Now_loading...774KB:2013/01/25(金) 19:45:03.80 ID:b9l1FU4T
>>338
Flex3ちゃんはsparkライブラリ利用はダメなん?
340Now_loading...774KB:2013/01/26(土) 13:42:48.64 ID:lziAwhpc
>>337です。
adobeデベロパセンタの記事読んでます。
http://www.adobe.com/jp/devnet/flex/articles/imxmlobject_interface.html

オブジェクト指向不慣れなのでトンチンカンな質問かもしれませんがよろしくお願いします。

〜〜略〜〜
AbstractViewHelperは、自身がIMXMLObjectを実装したクラスです。
IMXMLObjectはinitalizedメソッドの第一引数”document”によって、
IMXMLObject実装クラスのインスタンスを生成したMXMLドキュメントのインスタンスが与えられます。

ふむふむ。。

〜〜略〜〜
メソッドリストはAbstractViewHelperのサブクラス自身のインスタンスを引数として与えます。
describeTypeXmlforLogic = describeType(this);


ん?this??

AbstractViewHelperをextendsしているimxmlsampleViewHelperがサブクラスですよね?

このthisってAbstractViewHelper自身のことじゃないのですか?

AbstractViewHelperを渡して継承?しているimxmlsampleViewHelperのメソッドリストが取得できているってことなら合点がいくのですが。。
341Now_loading...774KB:2013/01/26(土) 14:33:00.75 ID:xe9KDVhX
簡単に言ってしまうと
インスタンス=newしたクラス
だから、imxmlsampleViewHelperがインスタンスとなる。
342Now_loading...774KB:2013/01/26(土) 14:59:31.02 ID:lziAwhpc
imxmlsampleViewHelperがAbstractViewHelperを拡張。

AbstractViewHelperを呼び出したのはimxmlsampleViewHelperだから、

AbstractViewHelper内でのthisはimxmlsampleViewHelperとなる。

他のクラス(momoHelper)がAbstractViewHelperをextendsした時は、

AbstractViewHelper内での“this”はmomoHelperとなるてことですかね?
343Now_loading...774KB:2013/01/26(土) 15:03:32.99 ID:lziAwhpc
>>342追記です

describeTypeXmlforLogic = describeType(this);

でAbstractViewHelperのパブリックメソッドも取得しているのは、

サブクラスを渡しているので、継承元(AbstractViewHelper)のパブリックメソッドも取得できているてことでしょか?
344Now_loading...774KB:2013/01/26(土) 15:40:02.17 ID:xe9KDVhX
>>342
なんか難しく考えすぎ。

> AbstractViewHelperを呼び出したのはimxmlsampleViewHelperだから、
> AbstractViewHelper内でのthisはimxmlsampleViewHelperとなる。
「呼び出した」っていう表現自体が勘違いのもとかもしれない。

包含関係で考えてみたらいい。

AbstractViewHelperをextends したimxmlsampleViewHelperは
AbstractViewHelperのメソッド、定数を受け継いでいるんだが、
それは独立したAbstractViewHelperのインスタンスをサブクラスが持っている訳では無い。
あくまでimxmlsampleViewHelperのインスタンスはimxmlsampleViewHelperで
どこを継承しようと変わらない。受け継いだメソッドもimxmlsampleViewHelperのもの。
だってoverrideで上書き出来るでしょ?
345Now_loading...774KB:2013/01/26(土) 15:50:00.81 ID:A2tDOvvv
>他のクラス(momoHelper)がAbstractViewHelperをextendsした時は、
>AbstractViewHelper内での“this”はmomoHelperとなるてことですかね?

thisはインスタンスって事なんだお だから他クラスがAbstractViewHelperを継承しようが
別(imxmlsampleViewHelper)のには影響無し

ただしAbstractViewHelperクラスの中に
staticメソッドやメンバがあるならそれは(同アプリ内で使用してるなら)影響する
346Now_loading...774KB:2013/01/26(土) 16:02:01.23 ID:lziAwhpc
>>344,345

var mo = new MOMO();
function MOMO(){
this.text = "momomomo";
}
のthisはmoですよね?

ああーーなるほど

AbstractViewHelperもimxmlsampleViewHelperのものになるからthisでいいてことです?
347Now_loading...774KB:2013/01/26(土) 16:05:08.34 ID:lziAwhpc
describeTypeXmlforLogic = describeType(this);
で取得しているパブリックメソッド(initializeやaddedとか)は、
AbstractViewHelperのものではなくて、あくまでもimxmlsampleViewHelperのものってことですね!!
348Now_loading...774KB:2013/01/26(土) 16:39:48.61 ID:xe9KDVhX
そうやね。>>345が言うとおりstaticにでもなってない限り。
349Now_loading...774KB:2013/01/26(土) 17:25:40.70 ID:A2tDOvvv
staticと通常のインスタンスの違いを先に勉強しとくんだお 初心者はこれで混乱する
インスタンスを複数生成しない限り自作クラスはだいたいがstaticメインのクラスとなる
それにstaticの方が処理が速い(らしい)
350Now_loading...774KB:2013/01/26(土) 18:00:50.35 ID:AtS1XsGr
マウスイベントでボタンがあるMovieClipのインスタンス名を
引数で関数に渡す方法で悩んでいます
var mcname:MovieClip;
mcname = this;
Btn.addEventListener(MouseEvent.MOUSE_DOWN,fnc);
function fnc(e:MouseEvent):void {
trace("ムービークリップ名"+引数);
}

引数で関数にmcnameを渡して、関数でそれを受け取る場合はどのようにしたらいいのでしょうか?

よろしくお願いいたします
351Now_loading...774KB:2013/01/26(土) 18:31:26.15 ID:OzrfE7Ef
Btnがthisの子なら、e.targetがBtn自身だからそっからparentで参照するとか
352Now_loading...774KB:2013/01/26(土) 18:36:46.96 ID:lziAwhpc
>>348,349
ありがとうございました。event.targetでアクセスもできますた

外部asでcurrenttarget以外にアクセスしたい場合、
documentgetElementById("component id");みたいな感じでアクセスできないのでしょうか?

traceしてみたら、documentはmxml名ですが、戻りはnullてますです。
353Now_loading...774KB:2013/01/27(日) 01:06:20.57 ID:4UN6KHFn
うおっしゃああああ

>>352解決しました!

var btn:Object = document["component id"];

で取れました。

これでas無双ができるようになりますた!
354Now_loading...774KB:2013/01/27(日) 01:11:27.06 ID:WECbE1sj
おめ
document.idでも取れるはず
355Now_loading...774KB:2013/01/27(日) 01:33:23.42 ID:4UN6KHFn
>>354
おおお、取れました!!
ありがとうございましたー!
356Now_loading...774KB:2013/01/27(日) 21:57:05.98 ID:jSJvuZFI
Command パターン(コマンドパターン)の練習をAS3,FlashCS5でやってます。
参考サイト ttp://feb19.jp/blog/archives/000221.php
サイト中のコードを1つのASファイルにまとめて実行しようとしましたが出来ませんでした。

(手順)
全部package の所の jp.feb19.gof.command を消し(同一ファイルなので)、メインクラス
CommandTest以外は class クラス名 {・・・} の形にしました。
例えば:
class Command {
public function Command(){ }
public function execute():void{ }
public function unexecute():void{ }
}

※このCommandクラスは class CalculatorCommand extends Command で継承されてます。


(結果)
これでコンパイルすると「1181: 参照を基本クラス Command に送ります。」というエラーが
出て、このメッセージでググってもどう修正すべきか分かりません。

どうすべきでしょうか?
357sage:2013/01/28(月) 02:30:23.17 ID:NUoAtem7
AIRでアクションゲームを制作中なのですが、そのままAIRにパッケージ化すると
binフォルダにまとめてあるjpg、png、xmlファイルなどが、インストール先で見放題・編集し放題になってしまって困っています。

複数の画像やxmlファイルを、C++等で言うところのdatファイル等にまとめておいて
ゲーム実行時にデータを復元して使用する、ということは出来無いでしょうか…。
何か知恵を頂けたら幸いです。

開発は、FlashDevelopを使っています(AIRのバージョンは3.1です)
358356:2013/01/28(月) 03:00:33.24 ID:GwZk8VYG
(自己解決しました)でも原因が分からないです。

trace(levels + "回リドゥ"); とか trace(levels + "回アンドゥ"); といった所を
セコセコ弄っていただけだったのですが。。。。

取り合えず出来たASをText形式でUpしました。
http://uproda11.2ch-library.com/377492cdj/11377492.txt



>>357
Zip化してFlash上で展開するってのは?
ttp://www.tam-tam.co.jp/tipsnote/actionscript/post74.html

ほか Zip 解凍 OR 展開 ActionScript OR AS3 OR Flash でググると色々出てくる。
実際にファイルとして解凍せずに、データ的に存在するのも出来るかもしれない
という希望的観測。

あるいは最後の手段で、固有の拡張子を使い、基本そのAIRでしか見れなくするとか。
例) jpg → gazou
359Now_loading...774KB:2013/01/28(月) 11:20:12.20 ID:j920Td+/
>>357
FlashDevelopでどうやるかわからんが、Flex4のFlashBuilderだとswfひとつに出来たけどな。
もう結構前の話でいまのAIRに通用するかわからんけど。

Embed使うだけなんだが。
360357:2013/01/28(月) 13:51:38.90 ID:snxrMwMK
>>358
Zip化だと、ユーザーに解凍されて結局データを見られてしまいそうだったので、候補から外してまし
た。
でも、Zip化した上で、さらに固有の拡張子を付ければバレにくいかもしれませんね。(img.zip ⇒ img.dat)
それでも、そのファイルの拡張子を手動で書き換えられてしまえばバレてしまいそうですけども orz

>>359
Embed使うと外部データをわざわざ各画像をロードする手間も省けて良いんですが
使用素材数が多い&今後も増えていきそうな感じなので、その都度ソースを書き換えるのは手間かなぁと。
ソースを弄れるのが僕だけなので、絵描きさんが画像を追加した時など、即座に対応出来ないんですよねぇ。

画像等をバイナリデータ化して、固有拡張子をつけて保存とか、出来ないですかね……?
361Now_loading...774KB:2013/01/28(月) 14:26:50.58 ID:j920Td+/
>>360
> Embed使うと外部データをわざわざ各画像をロードする手間も省けて良いんですが
> 使用素材数が多い&今後も増えていきそうな感じなので、その都度ソースを書き換えるのは手間かなぁと。
新しい画像が増えたのにソース弄らず参照させるってどういう方法?

絵描き側でFlashでswfかswcにしてやれば?
特にswcだったら参照設定しておくだけで取り込んでくれるから楽だろ。

Flash持ってないとかいうならシラネ
362357:2013/01/28(月) 14:41:38.20 ID:snxrMwMK
>>361
画像の管理は、asファイルじゃなくてxmlファイルでやってまして、
as側でxmlファイルを読み込んで、そこに記載してあるパスを参照⇒画像をロードする、というやり方をやってます。
紛らわしい書き方をしてしまって申し訳ないです。

> 絵描き側でFlashでswfかswcにしてやれば?

確かにそれが出来れば楽そうなんですけども、あいにくFlash持ちが僕だけなのです orz
AIRアプリなりで、画像一括swc変換ツールでも作れれば良さそうなんですが
そこまでやるなら、諦めて僕がswc化した方が早いか…。
363Now_loading...774KB:2013/01/28(月) 15:04:22.69 ID:j920Td+/
>>363
まぁ、そんな事だろうとおもった。

XML書いていいなら、Flexコンパイラでswc作ったら良いんじゃないかな。
configファイル作ったらいけるよ。
364357:2013/01/28(月) 17:20:25.76 ID:snxrMwMK
>>363
なるほど、軽く調べて見て来ましたが
flexとxmlとasファイルがあれば、compcでswcファイルを作成出来るんですね。

事前にasファイル(さらに言えば、compc呼び出し用の.batファイルも)を用意しておけば
xmlファイルの書き換えだけで、割りと簡単にswcファイルを書き出しが出来そうですね。

極めたら、色々面白そうな事も出来そうですし
Flexコンパイラで出来そうな事をもっと調べて見ることにします。
ありがとうございました!
365Now_loading...774KB:2013/01/29(火) 14:50:11.93 ID:pyf/Zn5t
使用していますのは、AS3 の CS6 です。
教えて頂きたいのですが、
外部SWFの更に中に有るムビークリップのタイムラインの操作方法を
教えて頂けないでしょうか。

var Loader_obj:Loader=new Loader();
Loader_obj.load(url);
var target_mc = Loader_obj.content as MovieClip;
target_mc.gotoAndStop(2);

で外部SWFのルートのタイムラインは操作できるのですが、
その中に有るムービークリップのタイムラインの操作出来ません。

例えば、外部SWFの中に、『A』と言うムービークリップが有った時に

target_mc.『A』.gotoAndStop(2);

と言う感じに『A』の中のタイムラインを操作したいのですが上手く行きません。
誰かご存じの方は教えて頂けないでしょうか
366Now_loading...774KB:2013/01/29(火) 15:10:51.87 ID:YSippoL9
>>365
target_mc.A.gotoAndStop(2);
本来は、上記で上手くいくはず
出来ないのなら、別のところに問題があるのでは?
たとえば、Aがまだ存在していないのに参照しようとしているとか
367365:2013/01/29(火) 15:22:48.84 ID:pyf/Zn5t
>>366

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

本当、私バカですね…。
368Now_loading...774KB:2013/01/29(火) 21:14:54.17 ID:1IMjCpQt
マウスイベントについて質問です。

タッチパネルを触るとタッチイベントとマウスイベントが発生しますが
マウスイベントはマウス操作の時だけに限定して
タッチパネル操作ではマウスイベントを発生させないようにしたいのですが
可能でしょうか?
369Now_loading...774KB:2013/01/29(火) 23:26:00.24 ID:QyloaOIn
液晶ペンタブやタッチパネルが主流になる時代が来るんだろうか…

とりあえず切り替えボタンでも設置してイベントを使い分けてみては
370Now_loading...774KB:2013/01/30(水) 06:13:57.40 ID:vy2K0jlk
>>357
追い出したので貼る。こんなのも有りかな?

大重美幸の「これ見落としてませんか? ActionScript 3.0」
第2回 外部 swf ファイルのシンボルを利用する
ttp://www.adobe.com/jp/newsletters/edge/october2009/articles/article2/
371370:2013/01/30(水) 06:14:56.58 ID:vy2K0jlk
間違えた
追い出したので → 思い出したので

もう寝る。
372357:2013/01/30(水) 20:30:42.34 ID:dHIICMm5
>>370
参考URL、ありがとうございました!
理想が『Flash Professionalを持ってない人間でも、ユーザーに解析されない(されにくい)データ形式を生成出来るようにしたい』
だったので、今回は参考程度に見させて頂きます。
(どの道、フォントの埋め込みはいつかやりたいと思ったので、そちらの方で役立たせて頂きます)
373Now_loading...774KB:2013/02/02(土) 13:16:46.67 ID:445WOb1l
flex_sdk_4.6の使い方教えて
374Now_loading...774KB:2013/02/02(土) 14:09:35.09 ID:mM/cRdWK
まず解凍しろ
375Now_loading...774KB:2013/02/02(土) 21:32:29.75 ID:w5BVhgW2
突然だが、こんなの見つけた。

ttp://lab.klab.org/wiki/3to2
ActionScript Converter "3to2(サントゥニー)"
ActionScript3 で作成した Flash ムービーファイル(SWF) から ABC(ActionScript Byte Code) を
抽出し、これを ActionScript2 ソースコードに変換する、コンバータプログラムです。
"3to2(サントゥニー)" は、現在、開発の途中段階にあります。現在は、プログラム変換処理の精度向
上や一部の設計見直しなどをおこなっています。
376375:2013/02/02(土) 21:35:55.85 ID:w5BVhgW2
377Now_loading...774KB:2013/02/02(土) 22:08:58.79 ID:mM/cRdWK
3から2ってメリット皆無だな
378Now_loading...774KB:2013/02/03(日) 00:11:11.10 ID:y977rSly
以前viewhelperについて質問させてもらっていた者です。

簡単なお絵かきサンプル作っているのですが、線を描きまくると重くなってしまいます。

ビューヘルパーでmousedownとmousemoveのイベントくっつけて、
mousedown時にmouseupイベントをaddEventして、mouseup時に同イベントをremoveしています。

プロファイル機能使って見てみると、mousedownイベント時にAbstractViewHelperクラスの
累計インスタンス数が増加しているのが確認できました。

が、これがなぜなのか理解できないのです。

ソース貼るのでどなたか教えてくださいませ。
379Now_loading...774KB:2013/02/03(日) 00:20:20.87 ID:y977rSly
main.mxml
<!-- canvas -->
<s:Group id="canvasStage" x="50" y="50" width="500" height="500">
<comp:Canvas id="canvas" width="100%" height="100%" x="0" y="0"/>
</s:Group>

viewHelper.as

//初期読み込み時に呼ばれるviewhelperコンストラクタ extends AbstractViewHelper
public function EventController():void {
//プレビュー用ペン生成
shapePreview= new Shape();
shapePreview.graphics.lineStyle(5, 0x000000, 0.5);
}
public function canvasOnmouseDownHandler(e:MouseEvent):void {
isDownedOnCanvas = true;
var cvn:Object = document.canvas;
cvs.addChild(shapePreview);
cvs.addEventListener(MouseEvent.MOUSE_UP, mouseUpped);
downPreview(cvs.mouseX, cvs.mouseY);
}
380Now_loading...774KB:2013/02/03(日) 00:22:32.63 ID:y977rSly
public function canvasOnmouseMoveHandler(e:MouseEvent):void {
if(isDownedOnCanvas) {
var cvn:Object = document.canvas;
movePreview(cvs.mouseX, cvs.mouseY);
}
}
private function mouseUpped(e:MouseEvent):void {
isDownedOnCanvas = false;
var cvn:Object = document.canvas;
cvs.removeEventListener(MouseEvent.MOUSE_UP, mouseUpped);
}
private function downPreview(x:int, y:int):void{
shapePreview.graphics.moveTo(x, y);
}
private function movePreview(x:int, y:int):void{
shapePreview.graphics.lineTo(x, y);
}
381Now_loading...774KB:2013/02/03(日) 00:28:06.69 ID:y977rSly
>>379, 380
var cvn:Object = document.canvas;
cvs.addChild(shapePreview);
文字数制限回避のため手前で書き直したので変数名おかしくなってますが、キャンバスのことです。
382Now_loading...774KB:2013/02/03(日) 00:57:19.89 ID:p0jrWRYL
>>378です

原因はMethodclosureクラスの増加みたいです。

よくわからんので調べてみます
383Now_loading...774KB:2013/02/03(日) 02:13:14.36 ID:cJ2PyeET
毎回cvs.addChild(shapePreview);やってるからじゃないかなと思ったが
384Now_loading...774KB:2013/02/03(日) 03:03:28.07 ID:y977rSly
>>383
そう思い、初回のみaddするよう変えたのですが変化なしでした。
手詰まり感はんぱないっす。。

addchildって2回目以降は無視されるんじゃなかったでしたっけ?
385Now_loading...774KB:2013/02/03(日) 09:23:40.00 ID:J1H13oGz
cvs.addChildもそうだけど毎回cvs.addEventListenerやってるのが見た目で変
押しっぱなしだとものすごい数のリスナー登録をし続けてるわけだからな…
ローカルのcvnをメンバに変えてコードをすっきりさせてリトライゴー!
386Now_loading...774KB:2013/02/03(日) 22:26:00.37 ID:FGH739Q2
>>385
ベクターgraphicsの描画が重いようなので、mouseMoveしながらビットマップに描画することにしました。
absractViewhelper内でapplication.completeを受け、サブクラスでオーバーライドして初期設定することにしました。
387Now_loading...774KB:2013/02/05(火) 18:05:08.28 ID:ai5Qqpod
iphoneアプリ、Windowsアプリを売って生き残れ Ver 1.6
http://tinyurl. com/9w97424
388Now_loading...774KB:2013/02/05(火) 21:19:51.43 ID:xSkcNLKs
wonderflのサンプルでProgression4の練習をしています(FlashCS4とCS5,WinXP)

http://wonderfl.net/c/qoCM を試したところ何故かAIRの NativeMenu が要求され、
実際AIRにすると実行されました(AIRは1.5)。

Progression4は(当然ながら)クラススタイルで、ttp://progression.jp/ja/download/ より
SWCをライブラリパスとして組み込んでいます。
※ Progression4.swc と Progression4_ext_AIR.swc があったので両方にパスを通しました。

何故AIRの NativeMenu が要求されたのでしょうか?
389Now_loading...774KB:2013/02/07(木) 09:02:02.73 ID:Nv5poo0g
画像を外部ファイルとして読込むを正確な値を参照できないな 理由を知ってる人がいたらご教授よろです
//ライブラリ内から読込み
var mc:MovieClip = new PNG1();//ライブラリ内の画像(png) 青色
bufferMC.addChild( mc );//bufferMCはステージに配置した読込み先のムービークリップ
trace( PNGCheck() );//結果 ff 正常な値

var loader:Loader = new Loader();//外部ファイルから読込み
loader.load( new URLRequest( "blue.png" ) );
bufferMC.addChild( loader );//以下のtraceは数フレーム後に書いてる タイムラグは無し ※直後に実行だとエラー
trace( PNGCheck() );//結果 fd なぜか値が若干ずれる

function PNGCheck():String{//色チェック
var png:BitmapData = new BitmapData( bufferMC.width, bufferMC.height );
png.draw( bufferMC );
return png.getPixel( 0, 0 ).toString(16);//左上のドットの色を参照
}
390Now_loading...774KB:2013/02/07(木) 09:22:27.10 ID:Nv5poo0g
わー gifにしたらいけた! しかしなぜ他の形式だとダメなのだ…
gif    〇
png 8  値がずれる
png 24 値がずれる
jpg   劣化無しだがワケわからん値
bmp   エラー #2000: アクティブなセキュリティコンテキストがありません。#2015: BitmapData が無効です。
391Now_loading...774KB:2013/02/07(木) 16:16:19.16 ID:DaryfWxX
>>389
bufferMC では loader.content でアクセスしたら?
ttp://gihyo.jp/dev/serial/01/as3/0026
392Now_loading...774KB:2013/02/07(木) 17:44:41.07 ID:Nv5poo0g
contentから参照しても同じですな 青色のffがPNGだとfdとなる…

みんな青色画像( 0000ff )を用意して>>389のコードを試してもらいたい
変なのはウチの環境(CS5.5)だからなのか Loader周りに画像関係のプロパティでもあるのか
使っている画像ソフトが変なのか(一応カラー設定はAdobe RGB)
393Now_loading...774KB:2013/02/07(木) 18:46:23.01 ID:Wdq3qNjZ
pngだとチャンクが邪魔してたりとか?
394Now_loading...774KB:2013/02/07(木) 23:08:43.60 ID:hoCntW5W
チャンクってプログレッシブとかそういうのの関係?
395Now_loading...774KB:2013/02/07(木) 23:22:08.88 ID:hoCntW5W
ちがった、なんかメタデータみたいなやつか。
396Now_loading...774KB:2013/02/08(金) 00:02:16.55 ID:DLoYaCgg
お絵かきアプリ作っていて、線描いたらbitmapに変換してるのですが、
bitmapを約20個以降で、追加してきた順(古いdata)から消えていくのですが、
仕様なのでしょうか?

消えるというか、非表示になってるっぽいです。

環境はflashbuilder4.7ですが、flashproffesionalでもなっていました。

回避策などあればご教授いただきたいです。


ブラシ用bitmapをcanvas用bitmapにコピーしていて、canvas用bitmapを描くたびに追加していく感じです。
1枚のbitmapに描いていくと半透明にしても同じ色で塗りつぶされてしまうので、今の実装になりますた。

bitmapdataの合成みたいので調べたのですが、merge()はなんか違うような感じがしてるので困惑中でう。

よろしくお願いします。
397Now_loading...774KB:2013/02/08(金) 00:18:50.48 ID:DLoYaCgg
>>396desu

半透明ビットマップの合成についてはdrawのカラーマトリックスを使えばできそうなのでやってみます。
これで回避できればbitmapの重ねで古いのが非表示になるのも解決するのでなんとかなりそうです。
398Now_loading...774KB:2013/02/09(土) 20:19:17.60 ID:L4T24WpK
IMXMLObjectをimplementしたクラスを作って、initializedで割り当てたobject(view)でキーボードイベントが拾えない

他のアプリケーションに遷移してからctrl-TABで戻ってくると、
一度viewの中のfieldを何かクリックすれば拾えるけど、
逆にそうしないと拾えない
mousemoveを拾って、viewのstageにfocusをあてているんだが、やはり拾えない

なぜでしょうか・・・
399Now_loading...774KB:2013/02/09(土) 20:50:51.95 ID:6ZCXdUpD
えー?
他のアプリに移ったら画面内をクリックしないとフォーカスが戻らないのはFlashの仕様じゃなかったっけ?
インターフェースとか関係無いんじゃないかな 無実装の単純なクラスで試しても無理だろ?
400Now_loading...774KB:2013/02/10(日) 03:56:09.79 ID:GO/ufq0J
FlashbuilderのListcomponentに画像と文字をasで追加する方法を教えてください。
drawRectしたスプライトを突っ込んでもObjectという文字がでてしまうます
401Now_loading...774KB:2013/02/10(日) 08:55:13.74 ID:uU9id3K2
そんなもん拾えたらパスワード盗めるキーロガーできryじゃん。できっこねーだろ。
昔は出来ちゃったけど。
402Now_loading...774KB:2013/02/10(日) 09:30:54.43 ID:BLBhWP3s
そうなのか
IMXMLObjectをimplementしたのが問題で、Spliteなら出来るのかと思ってた・・・

そもそも、フォーカスが取れないのね
403Now_loading...774KB:2013/02/10(日) 18:36:38.42 ID:XWNZRFW3
AS1.0の質問です

(1):
変数a,b,cを配列としてまとめて宣言するのに
a = b = c = new Array;
for(i=0;i<10;i++) a[i] = b[i] = c[i] = 0;
とやったらcを弄るとaとbが同じ値になるようになってしまいました
一行ずつa = new Array; b = new Array; … a[i] = 0; b[i] = 0; … とやらないとダメなんでしょうか?

(2):
変数d,e,fにまとめて0を代入したいときにd=0;e=0;f=0;とやらずに
d = e = f = 0;
とやっているんですがこの方法は間違ってますか?
404Now_loading...774KB:2013/02/10(日) 18:46:11.46 ID:YpkHe0Tc
(1)… とやらないとダメなんでしょうか?
そう 手抜きはだめだお

(2)この方法は間違ってますか?
プリミティブ変数ならおk リファレンス変数は参照をコピーしてるだけ
例えばd,e,fがArrayで dの何かの要素を変更したら e,fにも反映されてる
405Now_loading...774KB:2013/02/10(日) 22:35:10.32 ID:XWNZRFW3
>>404
ありがとうございます
勉強になりました
406Now_loading...774KB:2013/02/11(月) 15:26:41.32 ID:2dF+TBQ2
どなたかbitmapdataに直で正円・楕円をsetPixelする方法知らんかね
407Now_loading...774KB:2013/02/11(月) 15:52:44.87 ID:CC5T+Uf+
drawでいいだろ
408Now_loading...774KB:2013/02/11(月) 15:59:41.42 ID:nJCiwkhW
sinとcosでやればよくね
409Now_loading...774KB:2013/02/11(月) 16:54:41.62 ID:2dF+TBQ2
>>408
丸shape用意して、くるっと1周回してみたけど円を大きくすると荒くなりますね。
5回転で及第点でした。

丸shapeをcopyPixelして最後に中を塗りつぶすか、
setpixelで1つずつやるか迷っとります。
410Now_loading...774KB:2013/02/12(火) 16:54:33.85 ID:uZMZDDCD
sin cosに一票
4分の1だけ描いてコピーでいける。
411Now_loading...774KB:2013/02/12(火) 22:42:27.67 ID:0wdg+z6C
>>410
あなるほど、cloneしてmatrix回転してコピーってことです?
412Now_loading...774KB:2013/02/12(火) 23:16:11.03 ID:0wdg+z6C
>>411desu

だめぽいですね。おとなしく3回drawしときます。
2回でいいのか

ありがとうございましたー
413Now_loading...774KB:2013/02/15(金) 13:12:47.21 ID:0a0RSfFA
AS3 CS6のFLASHからAIRを書き出しています。
初歩的な事で申し訳ございませんが・・・

下記では、メニューを別ウィンドウで開き、その中に
メニューのムービークリップを読んでいます。
その場合、ムービークリップから呼び出し元の変数などを
参照するパスはどのようなパスになるのでしょうか。

var menuWindow:NativeWindow;
menuWindow.stage.addChild(menu_obj);
var n="menu_obj内に記述のスクリプトからこの変数を参照するパスは・・・";

/////////////////////

MovieClip(root)でも
MovieClip(parent)でも
MovieClip(parent.parent)

でも読み込めなかったので、分かる方教えて頂けないでしょうか。
414Now_loading...774KB:2013/02/15(金) 15:11:30.01 ID:mu9VNhiN
AIRスレで質問しちゃったんですが、ASスレあったのでこっちで聞き直しです。

フレーム移動するときって、そのフレームに存在するムービークリップとか全部visible=falseで消してます?

なんか、フレーム移動するときに稀に1009エラーが出るんですよ。
ムービークリップ内で『this.x += 10;』とかしてムービークリップを移動させている処理とかでエラーが出ているみたい。
フレーム移動した先にはそのMCが無いので、移動前にMC内で移動処理をしようとするのと同時?にフレーム移動してそのMCが存在しないフレームに飛ぶから1009エラーがでるのかな?って思ってるのですが。

似たような事が起きたのが、クリックしたときにMCの操作とフレーム移動する関数があって、クリックしたときに同様に1009エラーが生じたことがありました。
これはフレーム移動するときにその関数自体をremoveで消すと起きなくなりました。

普段は特に問題ないのに、ごく稀に1009エラーが起きる・・・原因は自分が考えているようなものなのでしょうか?
415Now_loading...774KB:2013/02/15(金) 20:16:30.37 ID:R1CEWxIV
>>413
addChildしたのはstageに対してなんで、親を辿る形でアクセスするのは無理だろうな
MovieClipはDynamicなクラスだから、menu_obj.myN = 〜;とかで変数自体なりウィンドウなりを
持たせてあげればいいんじゃね
416Now_loading...774KB:2013/02/16(土) 08:13:25.88 ID:FZYdBjGn
>>414
>フレーム移動した先にはそのMCが無いので、
そういうAS1的設計はダメなんだお 空白キーフレームでも入っているのかい

>フレーム移動するときにその関数自体をremoveで消すと起きなくなりました。
自分で解ってんじゃん 動的に処理すれば問題なし

>>413
参照の溯り方がわからないってだけかな?
trace( ( this.parent as MovieClip ).name );
trace( ( this.parent.parent as MovieClip ).name );
trace( ( this.parent.parent.parent as MovieClip ).name );
417Now_loading...774KB:2013/02/16(土) 13:14:59.69 ID:Zdez4Zde
stageからgetChildByNameする手もある
418Now_loading...774KB:2013/02/16(土) 14:45:07.84 ID:+C7+wO7P
flashbuider・flex4でactionscriptによるcomponent操作がいまいちわかりません。

mxmlを以下のようにして、asで<s:List>を操作したいと思っていて、
<s:Panel>
<s:List />
</s:Panel>

Listの中にbitmapやテキストを一塊にして追加していきたいのですが、
リストをasで拡張させないといけないと思うのですが、突っ込むデータをどのようにすればいいのかわかりませぬ。

<local:tmpList />
きっとこんな感じにしないといけないとはわかってはいるのですが。。
419Now_loading...774KB:2013/02/16(土) 15:27:53.85 ID:sCAialPI
MXMLじゃだめなん?
dataProviderに設定するarrayはASで設定するにしても。
420Now_loading...774KB:2013/02/16(土) 16:21:05.41 ID:OXQS3S4z
AS1.0の質問です
var deck = [0,1,2,3,4,5,6,7,8,9];
var ransu = new Array;
var max = deck.length;
var i;
trace("シャッフル前:"+deck);
for(i=0;i<max;i++) ransu[i] = Math.floor(Math.random()*max); // 乱数表に乱数を格納
trace("乱数:"+ransu);
for(i=0;i<max;i++){
var r = ransu[i]; // ランダムな番地を取得
var t = deck[r]; // iとランダムな番地の中身を入れ替え
deck[r] = deck[i];
deck[i] = t;
}
trace("シャッフル後:"+deck);

乱数表ransuを元に配列deckの中身をシャッフルするスクリプトを作ってみたんですが
シャッフルした後にransuを元にシャッフルした配列をシャッフル前に戻すにはどうすればいいんでしょうか?
シャッフルのアルゴリズムは変えてもらって構いません
421Now_loading...774KB:2013/02/16(土) 17:18:15.14 ID:1CFHq+s5
シャッフル前にコピーじゃだめなん?
422420:2013/02/16(土) 19:40:55.83 ID:OXQS3S4z
すみません行数足りなくて書き切れないのではしょりました
実際はMath.random()でなく乱数の種が同じなら必ず同じ乱数を吐くタイプのものを使おうと思っています
乱数の種(たとえばdeckの中身の総和とか)とシャッフル後の配列の2つさえあれば元の配列に戻せるような感じで
423Now_loading...774KB:2013/02/16(土) 20:03:33.22 ID:Zdez4Zde
>>421が一番良いと思うけど、
またdeck[i]とdeck[ransu[i]]を入れ替えていけば良いんじゃない?おかしくなるかな?
424Now_loading...774KB:2013/02/16(土) 20:08:20.36 ID:Zdez4Zde
var temp = [];
for (i = 0; i < max; i++) {
temp.push(deck[ransu[i]]);
}
deck = temp;

もうこれでいいや
425Now_loading...774KB:2013/02/16(土) 21:08:44.49 ID:h2eaENmc
逆にやってけばいいんじゃないの?

for(i = max - 1; i >= 0; --i)
{
var r = ransu[i];
var t = deck[i];
deck[i] = deck[r];
deck[r] = t;
}
426Now_loading...774KB:2013/02/16(土) 21:58:47.87 ID:OXQS3S4z
>>425
できました!
ありがとうございます
427Now_loading...774KB:2013/02/17(日) 00:27:12.50 ID:Bnxu9bxn
>>419
なんとなくわかってきました。

独自のListコンポーネントをasで作成しアプリケーションmxmlで読み込む、
<local:myList>みたいな?

んで、同as内でnew ClassFactoryでアイテムレンダラーmxmlを読み込む。

viewhelperでmyListを読み込んで(document.myList)して、dataprovderに設定ってできるの?
できるならそれでdataproviderに突っ込んでいけばできそうな気がする

var a = document.myList;
a.dataProvider = {sprite: data, label:text},{...}

可能なのでしょうか?
428Now_loading...774KB:2013/02/17(日) 00:31:16.76 ID:JfKNuYJX
mxml内のコンポーネントにアクセスしたかったら、コンポーネントにid付けなきゃ
<mx:List id="myList" />
てな感じね
アクセスする時は(親).myList.dataProviderみたいにする
429Now_loading...774KB:2013/02/17(日) 00:36:20.30 ID:Bnxu9bxn
>>428
ありがとうございます。

<local:myList id ="mylist">
document.mylist;

ですね。

やりかたとしては>>427のような感じで問題ないでしょか?
430Now_loading...774KB:2013/02/17(日) 00:45:47.22 ID:Bnxu9bxn
あ、
mxmlは<mx:List id="myList" /> でよくて、

viewHelper側で
var a = document.myList
a.itemRenderer = new ClassFactory(itemRenderer.mxml);
a.dataPovider = {};

とすればよくて、独自のListコンポネントを作る必要もないのかな.

この場合、dataProviderの {}内のプロパティ名?を、
itemRenderer.mxmlの突っ込みたいcomponentに指定しておけばよい?
431Now_loading...774KB:2013/02/17(日) 00:47:32.53 ID:JfKNuYJX
dataProviderはIList型のオブジェクトじゃないとダメ
詳しくは"mxml dataProvider"とでもググって調べてね
432Now_loading...774KB:2013/02/17(日) 01:27:21.89 ID:w9VcCF9Z
mxmlはまったくわからん
asだけでできないの
433Now_loading...774KB:2013/02/17(日) 03:29:33.21 ID:Bnxu9bxn
>>430です

テキストについては無事表示できました。

dataproviderにarraycollectionを渡してitemrendererのlabelにてテキストを表示。

試しにSpriteをArrayCollectionに突っ込んでみたらObject Spriteと表示されてしまいました。
まあ当然なのですが

arraycollectionにSprite・bitmapオブジェクトを渡す場合は、ItemRendererの受け方はどのようにすればいいのでしょうか・
434Now_loading...774KB:2013/02/17(日) 14:53:31.92 ID:zvu/eu6p
>>430
説明するのも大変なので、コレ読んで。
http://shimoigi.net/archives/468
435Now_loading...774KB:2013/02/17(日) 15:41:42.21 ID:W0cyd0eM
>>434
ありがとうございます!

mx.control.ImageのsourceにbitmapImageを使うのですね。
こっちにはパブリックプロパティにsouceがあるのに、
spark.component.Imageには無いのです??

s:Imageの場合はdrawRoundRectで描画できちゃうのかな

fb敷居高杉泣いた、帰ったらやってみあす。
436Now_loading...774KB:2013/02/18(月) 00:09:48.12 ID:SzD8l9J2
>>434
arrayCollectionにbitmap突っ込んで、itemRenderer.mxmlでsource=データでアクセスしたら表示できました!
ありがとうございました!
437Now_loading...774KB:2013/02/19(火) 10:29:04.84 ID:o+oi6txP
プロジェクトで作成したシンボルなんかを共有設定にすると AuthortimeSharedAssets.flaが自動で作成されるよね?
(同じプロジェクト内の)他のFlaで似たようなシンボルを作る為に複製して改造しようとしたら自動セーブで
「共有シンボルを更新」が起こって作成中のシンボルが目の前で古いモノに変わりやがったw 

「複製」したものまで何で影響されるんだ おまけにリンケージ名まで古いモノに書き換わってやがる
複製元のシンボルのリンケージ名は「〜〜2」と勝手に2付けられてやがる ムチャクチャだなおいw

何でこんな事が起こるんだ 複製した直後にリンケージ名を変更しなかったからなのか
内部で同じグラフィックシンボルを使ってるからなのか… 共有シンボルに詳しい人がいたら解説きぼん
438Now_loading...774KB:2013/02/19(火) 12:33:08.36 ID:IlJzB8Ax
AS3でCtrlキーを押しながら他のキーの同時押しってどうやって検出します?
439Now_loading...774KB:2013/02/19(火) 13:02:51.74 ID:o+oi6txP
ゲームなんかでのカーソルキーの斜め移動2個押しはフラグ管理でいけてるから
フラグでおkなんじゃないか?
440Now_loading...774KB:2013/02/19(火) 13:07:04.85 ID:IlJzB8Ax
Ctrlが押された状態だと他のキーを押してもKeyboardEvent.KEY_DOWNが来ない
Ctrl以外は大丈夫
441Now_loading...774KB:2013/02/19(火) 13:20:59.78 ID:IlJzB8Ax
ブラウザだと大丈夫なのか
442Now_loading...774KB:2013/02/19(火) 15:35:40.83 ID:MgSSX+5T
イベントオブジェクトにそのまんまctrlKeyプロパティがあるだろうに
443Now_loading...774KB:2013/02/19(火) 21:56:34.68 ID:+a6MiTgW
オブジェクトをステージから隠す場合一番いい方法はオブジェクトを移動するのが一番ですかね?
処理速度的に言うと。
444437:2013/02/19(火) 22:30:38.40 ID:o+oi6txP
>>443
またすぐ使うならそうだね

プロジェクトでの意図しない自動シンボル変更は他の人は起こらないのか CS6では直ってんのかな
複製すると意図しない変更が起こるな 新規で作って中身だけコピペだと起こらない
あの現象に遭遇したら机から引っくり返るよw
445Now_loading...774KB:2013/02/19(火) 23:10:20.71 ID:yxWwbReI
FlashCSは色々やばい気がするので毎回別名保存してる
446Now_loading...774KB:2013/02/20(水) 03:11:03.96 ID:Qwz5oZn6
>>444
なるほど。位置移動にしときます。
あとスタートボタンを押したと同時に複数の音声トラックが入ったムービークリップを再生したいんですけどいい方法ないですかね?
しかもこのムービークリップの音量を別のボタンシンボルが入ったmcで調整する形になってるんですが。
今こんな感じに設定してるんですが記述がぐちゃぐちゃになって見づらくてもっとすっきりした方法がないかと思ってるんですが。

import flash.media.SoundMixer;
import flash.media.SoundTransform;

var soundVolume:SoundTransform = new SoundTransform();
var statecheck:Boolean = false;
sound_btn.visible = false;

start_btn.addEventListener(MouseEvent.CLICK,musicstart);
function musicstart(event:Event){
start_btn.visible = false;
sound_btn.visible = true;
var SoundA:MovieClip = new soundA;

sound_btn.addEventListener(MouseEvent.CLICK,mute);
function mute(event:Event){
if (statecheck){
statecheck = false;
soundVolume.volume = 1;
SoundMixer.soundTransform = soundVolume;
}else {
statecheck = true;
soundVolume.volume = 0;
SoundMixer.soundTransform = soundVolume;
}
}
}
447Now_loading...774KB:2013/02/20(水) 03:13:43.64 ID:Qwz5oZn6
こちらの環境いい忘れてました。
使用ソフトはAdobe Flash Pro CS6 でスクリプトはAS3です。
448Now_loading...774KB:2013/02/20(水) 08:49:11.47 ID:UNcwaT8i
ブラウザごとにTextFieldの文字が違うのはどうにかならんのかね?
Chromeだと文字が細くて微妙だ
449Now_loading...774KB:2013/02/20(水) 09:26:58.80 ID:L5Oy556f
ブラウザベンダーに言え
嫌ならフォント埋め込んでクソでかいswf作ってフォントメーカーに訴えられろ
450Now_loading...774KB:2013/02/20(水) 20:38:09.64 ID:BV3eAz32
サイズの問題は必要な文字だけ埋め込めばそこまでは増えないだろう
フォントのライセンスは埋め込み利用も可なフリーフォント使うとかかなぁ
451Now_loading...774KB:2013/02/26(火) 09:15:38.19 ID:YIZi1PEl
ActionScriptの勉強を始めたのですがいきなり躓きました。
下記のコードでクリックしたら青色のボックスを表示
したかったのですがクリックの反応がありません。
どこが間違っているかわかれば教えてください。
http://codepad.org/3zlixQCe
452Now_loading...774KB:2013/02/26(火) 09:35:42.67 ID:oVEcKRpc
そのコードはドキュメントクラス用だお?
フレームに「絵描きまくりでそれを制御したい派」ならインスタンス読込み用にした方が吉
453Now_loading...774KB:2013/02/26(火) 09:42:57.97 ID:YIZi1PEl
>>452
すみません。私へのレスでしょうか?
用語がわからないので外してたらすみません。

とりあえずhitTestStateに何もセットしてなかったのが
まずかったようでクリックできました。
失礼しました。
454Now_loading...774KB:2013/02/28(木) 08:23:20.56 ID:ahXoFCLt
ニコニコ動画のように動画の上に文字を流したいのですが
あれはTextFieldを生成して動かしているんでしょうか?
それとも何か直接描画するような方法があるものでしょうか?
455Now_loading...774KB:2013/03/02(土) 14:06:46.22 ID:vxCLXQ6W
As3です
関数に複数の引数を渡して、戻り値を得る場合で困っています。
Cal(X,Y,Z);
function Cal(X:Number,Y:Number,Z:Number):???{
X+=1;
Y+=1;
Z+=1;
return
}
このような場合、戻り値を得るためにはどのようにすればよいのでしょうか?
よろしくお願いいたします
456Now_loading...774KB:2013/03/02(土) 15:23:02.66 ID:aedOaqR/
質問です。AS3,FlashCS4

4グループの数値の組(それぞれN個,M個,K個,L個持つ)があって、
それぞれを総当りで組ませるアルゴリズムはどうなるでしょうか? 例えば

        5
N ○○○○●○○

     4
M ○○●○○

    8
K ○●○○○○○

           3
L ○○○○○○●○○○

で黒丸の所を結ぶと(例えば)該当する数字の組が5→4→8→3 = 5483 が得られる。
という感じです。


>>455
var obj:Object = new Object();
obj = {x:X, y:Y, z:Z};// 関数Cal内に書く
trace(obj.x);// 参照
は?
457Now_loading...774KB:2013/03/02(土) 17:39:00.15 ID:oXtNFbWX
一旦Stringにして substrなんかで任意の位置の数字の文字を取り出しくっつけて
最後にまたintもしくはNumberに型変換すればおk
458456:2013/03/02(土) 18:04:27.06 ID:zf9iekTw
>>457
なるほど
459Now_loading...774KB:2013/03/02(土) 19:04:22.48 ID:8iQG4pae
…いや普通に配列でいいだろ
460Now_loading...774KB:2013/03/03(日) 00:37:12.10 ID:4oVuBoYV
総当たりって普通にfor文しかないだろ
461456:2013/03/03(日) 02:16:23.24 ID:nlhUP363
>>459-460
そうなんですけどねえ。 それだと元々3重のfor文があってその中で更に
for文が4個必要になるので避けたかったです。

なお、元の質問は第三案が浮かんだのでそれで解決しました。
462Now_loading...774KB:2013/03/03(日) 14:47:39.22 ID:ahm0N9SF
as3です。マウスクリックの操作によってボールが上下に移動するスクリプトを組みたいです
クリック押しっぱなしの時はボールの絵が描かれたMC(ball_mc)が下に少しずつ移動
クリックをはなすとボールが元の位置に少しずつ移動 という挙動を表現したいです

var py:Number;
var click:Boolean = false;

ball_mc.addEventListener(MouseEvent.MOUSE_DOWN,mouseHandler1);
function mouseHandler1(evt:MouseEvent):void
{
click = true;
}
ball_mc.addEventListener(MouseEvent.MOUSE_UP,mouseHandler2);
function mouseHandler2(evt:MouseEvent):void
{
click = false;
}
stage.addEventListener(Event.ENTER_FRAME , function(e:Event):void{
if (click == true)
{
py += 1;
ball_mc.y = py;
}
if (click == false)
{
py -= 1;
ball_mc.y = py;
}
});
自分でここまで作ってみましたが、「少しずつ」という挙動が上手くいきません。あと、できれば減速しながら移動させたいです
クリックしっぱなしでも、一定の距離を移動したらゆっくり停止。クリックをはなしたら元の位置に減速しながら移動し、ゆっくり停止
というのが理想なのですが、どう記述すればいいでしょうか
463Now_loading...774KB:2013/03/03(日) 15:10:29.58 ID:IffQDbLd
>>462
速度パラメーターを設定したら良いんじゃね?
var ySpeed:Number = 0.5;// 速度初期値
var click:Boolean = false;
var frameC:uint;// フレームカウント用
ball_mc.addEventListener(MouseEvent.MOUSE_DOWN,mouseHandler1);
function mouseHandler1(evt:MouseEvent):void {
frameC= 0;// 一旦0に戻す
click = true;
}
ball_mc.addEventListener(MouseEvent.MOUSE_UP,mouseHandler2);
function mouseHandler2(evt:MouseEvent):void {
frameC= 0;// 一旦0に戻す
click = false;
}
stage.addEventListener(Event.ENTER_FRAME ,
function(e:Event):void{
frameC++
if (click == true){
ball_mc.y +=ySpeed/frameC;// フレームが進む毎に減速
}
if (click == false) {
ball_mc.y -=ySpeed/frameC;// フレームが進む毎に減速
}
}
);
因みに減速はイージングとかトゥイーン(Tween)と呼ばれている。
目的地が決まっていたらそこまでの距離を変数にして速度を調整するのも可能。
464Now_loading...774KB:2013/03/03(日) 15:27:06.92 ID:ahm0N9SF
>>463
ありがとうございます。一旦0に戻すという処理が目からウロコでした
なるほど、イージングやトゥイーンと呼ぶのですね。検索でも苦戦していたので助かります
なんとか思い通りのができたので助かりました。ありがとうございました
465Now_loading...774KB:2013/03/04(月) 15:21:01.23 ID:1cbt2oPa
AS1.0の質問です
if(hoge>=0){
trace("整数だよ");
}else{
trace("整数じゃないよ");
}
これだと変数の中身が文字列のときも「整数だよ」になってしまうんですが
変数の中身が文字列かどうかを判定することってできますか?
466Now_loading...774KB:2013/03/04(月) 15:50:58.77 ID:djCrysVd
>>465
AS1で出来るかわからんが、

 つ 文字コード判定
467Now_loading...774KB:2013/03/04(月) 16:03:49.21 ID:+6iAA//H
>>465
typeof演算子って、AS1.0で使えなかったっけ?
使えれば、戻り値が"number"かどうかで確認できる

ところでその式だと、小数点以下があっても整数と評価されそうだけど、
大丈夫なの?
468Now_loading...774KB:2013/03/04(月) 16:19:07.19 ID:1cbt2oPa
>>467
できました!ありがとうございます
小数点以下は盲点でした。
分岐前にMath.floor()させるようにします
469Now_loading...774KB:2013/03/05(火) 08:54:42.08 ID:0XkYJUMg
ここを参考にFLVの再生をしようとしているのですが
アスペクト比がおかしなことになってしまうのですが
動画の縦と横の長さを取得することはできないものでしょうか?
http://www40.atwiki.jp/spellbound/pages/271.html
470Now_loading...774KB:2013/03/05(火) 11:22:52.33 ID:VLYsjniW
Air for AndroidでActionScript Workersは使えますか?
471Now_loading...774KB:2013/03/05(火) 13:50:02.32 ID:Z/KHYPOy
対応してるSDK使う気なら使えるよ
472Now_loading...774KB:2013/03/05(火) 23:06:15.31 ID:0eQXiXsG
モバイルではまだ使えない
というかAIRではまだ使えない
473Now_loading...:2013/03/06(水) 16:39:04.94 ID:YdzFwsyB
>>465
負の整数って知ってる?
474Now_loading...774KB:2013/03/07(木) 11:17:43.47 ID:GMfbDeBC
Flashってflvとかは読み込めますが、そんな感じでPDFが読み込めたりは
しませんか?
475Now_loading...774KB:2013/03/08(金) 10:52:46.71 ID:PagT444w
これからもAndroidやiOSでflash/actionscriptを実行できるようにするにはどうすれば良いですか?
476Now_loading...774KB:2013/03/08(金) 22:27:51.25 ID:sYhCUfW7
作る側の話?
AndroidはFlashPlayerあんだろ
477Now_loading...774KB:2013/03/09(土) 01:34:26.78 ID:F47ja2x/
いままでブラウザで動いてたflashをnexus7やipadでも動かせるといいなと思って
プログラマ側でなにかできることは無いかと思った
478Now_loading...774KB:2013/03/09(土) 01:42:11.80 ID:iJeYclbH
>>477
モバイル機器でのPlayerのスタンドアローン動作(ブラウザから独立し、無関係に動く)
は不可なのでAIRにするしかないと思う。
479Now_loading...774KB:2013/03/11(月) 20:33:42.65 ID:QGwks7Kw
CS5、winです。

画像をバイナリ化したデータhoge.binをembedし、画像にして表示しているのですが、
ローカル環境では画像が表示されますが、ブラウザ上では何も再生されず、
右クリックで「ムービーが未ロードです。」と表示されます。
解決策を教えてください。なかなか情報がなく困っています。
宜しくお願いします。

ソースは以下、
1フレーム目に記述。

〜前略〜

[Embed(source = 'hoge.bin',mimeType = "application/octet-stream")]
var Data:Class;
var bytes:ByteArray = new Data();
var l:Loader = new Loader();
l.loadBytes (bytes);

l.contentLoaderInfo.addEventListener (Event.COMPLETE,
function(event:Event):void {
addChild(l);
}
480Now_loading...774KB:2013/03/11(月) 23:16:24.38 ID:0xxar1rG
単にswfのembedに失敗してるんじゃなくて?
481Now_loading...774KB:2013/03/12(火) 00:16:48.51 ID:o15q4Pr6
>>480
swfをブラウザにドラッグ&ドロップしているので関係ないかと思います。
ちなみに、以下の場合はちゃんと動きます。
バイナリあたりがダメなんでしょうかね。。。

[Embed(source = "test.txt", mimeType = "application/octet-stream")]
var TextClass:Class;
var text:String = new TextClass();
test.text=text
482Now_loading...774KB:2013/03/12(火) 00:54:10.49 ID:2qST+LEO
LoaderじゃなくてURLLoaderじゃねーのそこは
483Now_loading...774KB:2013/03/12(火) 01:17:32.37 ID:o15q4Pr6
>>482
外部から読み込まず、swfにすべて入れておきたいのです.
さっきURLLoaderを試してみましたが、
URLLoaderは外部ファイルのurlを指定しないといけないのではないでしょうか。
484Now_loading...774KB:2013/03/12(火) 11:14:45.94 ID:Uqzninnd
>>483
Yes というかサンプルやリファレンス見たの?
485Now_loading...774KB:2013/03/12(火) 11:36:02.33 ID:f9CcnTg8
初歩的な質問ですいません
function addNumber(num1:int, num2:int):int {
 var answer:int = num1 + num2;
 return answer;
}
の場合、戻り値の関数answerを関数外で使う場合は
どのようにつかうんでしょうか?
486Now_loading...774KB:2013/03/12(火) 11:49:07.45 ID:Uqzninnd
>>485
よく分からんが、 var hoge:int = addNumber(a, b); じゃいかんの?
あるいは、外で var hoge:int; として関数内で hoge = answer;
487Now_loading...774KB:2013/03/12(火) 20:21:58.84 ID:2qST+LEO
>>483
バイナリ化っていうのがどういう処理なのか分からんけど
そのバイナリから画像データに戻すとこは自前でやる必要があるんじゃねーのかな
その後でloadBytesするべきなんじゃないの
488Now_loading...774KB:2013/03/12(火) 20:26:03.24 ID:o15q4Pr6
>>484
webサイトを調べていたら画像をバイナリ化し、phpで表示するとかいうサイトはありました。
他にもbinファイルをembedして何かするというサンプルはありましたが、
質問内容そのままの例はないです。
別のところで質問します。ありがとうございました。
489Now_loading...774KB:2013/03/12(火) 23:06:40.47 ID:V57O/l02
そのまんまで動くけどなあ。
メッセージ見ると、埋め込みデータの読み込み以前の、swf読み込みが変なんじゃないの。
490Now_loading...774KB:2013/03/13(水) 10:59:51.97 ID:agt7F0JN
mimeType指定したわけじゃないけど、
cs5でつくったswfをFlashBuilderで同様にembedしたものは、ふつうにうごくね。
491Now_loading...774KB:2013/03/14(木) 14:16:35.96 ID:Q3X4vd8E
CS5.5。As3です。
タイマーイベントを作ったのですが
var fadeOutTimerObj:Timer= new Timer(10000,1);
dialogInit();
function dialogInit():void{
fadeOutTimerObj.start();
}
fadeOutTimerObj.addEventListener(TimerEvent.TIMER_COMPLETE,dofadeOut);
function dofadeOut(event:TimerEvent):void{
parent.removeChild(this);
}
デバックすると、
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at NaviDialogMc2/dofadeOut()[NaviDialogMc2::frame1:32]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.utils::Timer/tick()
と出てきます。タイマーイベントが生きているせいかと思うのですが
誰かお解りになる方はいらっしゃいますか?
492Now_loading...774KB:2013/03/14(木) 18:30:31.16 ID:lzeaaAra
>parent.removeChild(this);
これがおかしいんだろ? そのコードどこに書いたのかわかんないけど
親の階層でaddChildしたのかい してないならエラー出るお
493471:2013/03/15(金) 22:00:28.96 ID:8DDaBlmM
検証したら、Air for Androidだとworkerを作ってもnullが返るっぽいね。
デスクトップAIRやブラウザだと普通にworkerが得られるので、モバイルだけ使えないみたいだ。

まぁ、11.2以下の環境でも作動するように、代替クラスとtry{}catch(){}忘れなければ問題なし。
workerの生成部分をラップしてクラス化しておくと、よりスマートだな・・・。
494Now_loading...774KB:2013/03/16(土) 12:03:40.22 ID:6It/zYvg
リファレンスに書いてあるじゃん
495Now_loading...774KB:2013/03/16(土) 19:00:47.09 ID:+7Z7GtQ5
AS1.0というか算数の質問なんですが
剰余の結果ってマイナスになったり小数点がついたりすることはありますか?
496Now_loading...774KB:2013/03/16(土) 19:32:12.46 ID:SvT9Xpom
┛┛┛
現時点でProgressionの公式サイト http://progression.jp/  が見れません。
閉鎖されたのでしょうか?

リファレンスが見れず本当に困っているので、すいません、マルチポストしています。
497Now_loading...774KB:2013/03/17(日) 01:40:01.23 ID:62QNMRAH
>>495
実際にやってみたら良いじゃん。
498Now_loading...774KB:2013/03/19(火) 20:02:57.41 ID:Nwk/zlBn
>>491
parent.removeChild(this)という記載のあるfunction dofadeOutが
このクラスのメソッドではなく、他のfunctionの内部に書かれている場合は
this が このクラスのインスタンスを指さなくてエラーが出る
・・・・ような気がする。
499Now_loading...774KB:2013/03/20(水) 03:05:22.04 ID:pWLADXyH
基本的な質問スレが落ちてる

誰か立てて
500Now_loading...774KB:2013/03/20(水) 08:21:39.52 ID:KDCBErvx
BitmapってSpriteにaddChildeした後にnullにしてるんだけどメモリ節約になってるかな?
ちゃんと表示されるんだけどバグの原因になったりする?
501Now_loading...774KB:2013/03/20(水) 14:19:36.89 ID:sDUC49V+
なんの意味もないな
表示リストが保持してるんだからButmapはGC対象でもないし

もしかしたらvar bitmapとして確保されてた変数一個のメモリ(32bit)は開放されるのかもしれん

まあ無意味
502Now_loading...774KB:2013/03/20(水) 17:58:30.16 ID:T7FPoNhi
次のようにした時、★の部分は問題ないでしょうか。
環境 CS5.5 AS3 Win7

(1) ドキュメントクラスで、ステージにインスタンス page1 を配置
Main.as :
page1 = new Page1
stage.addChild(page1)
page1 = null ★

(2) ステージ上に表示されたインスタンスpage1において改ページボタンを押すとpage2を表示しpage1は消去
Page1.as :
page2 = new Page2
stage.addChild(page2)
parent.removeChild(this)
page2 = null ★

(3) 以下同様
Page2.as
page3 = new Page3
stage.addChild(page3)
parent.removeChild(this)
page3 = null ★

(実際は各ページから複数のページへ飛べる選択肢を用意)

----
★のコードを実行してもaddChildした次のページは(望み通り)消去されずに表示されていますが、
GCされて消去される心配はなぜ無いのでしょうか。
また、★のように =null としていかないと変数1個分とはいえメモリリークするのでしょうか。
503Now_loading...774KB:2013/03/20(水) 18:34:22.26 ID:C+Ls2E4n
その場合 = null は参照を切るって事だから表示されたままだお
参照用の変数がGCされるってだけ
メモリリークは扱ってるデータによる
大容量の画像や音楽ファイルへの参照ならnullしないと心配
504Now_loading...774KB:2013/03/20(水) 19:53:05.21 ID:sDUC49V+
pageをaddChildというのは表示リストがpageの参照を保持するからaddChildされたものが勝手に消えることはない
removeChildしたら親からのpageへの参照が消える
この時他のオブジェクトがpageへの参照を持っていなかったらpageがGC対象になるってだけ(GCのタイミングは基本はこちらから明示できない)
★のコードを実行することは★が書いてあるクラスからの参照を切ってるだけ
505Now_loading...774KB:2013/03/20(水) 20:12:07.71 ID:DwUoKiQs
>>504
でもAIRならGC制御できたような。
506Now_loading...774KB:2013/03/22(金) 04:52:15.85 ID:Q5y+6nmh
var sprite:Sprite = new Sprite();
sprite = new Sprite();

ってやると最初に作ったspriteはGCの対照になる?
507Now_loading...774KB:2013/03/22(金) 04:55:22.68 ID:Q5y+6nmh
まてよ

var parent_sprite:Sprite = new Sprite();

var sprite:Sprite = new Sprite();
parent_sprite.addChild(sprite);

sprite = new Sprite();

これで最初に作ったspriteはGCの対照になる?
508Now_loading...774KB:2013/03/22(金) 11:19:18.03 ID:rdv98L70
>>503-504
返信thanks

>>502のコードの場合、インスタンス page2 は

 ・ Page1.as内で、page1を指す変数にnullを代入している
 ・ Page2.as内で、page2自身がparent.removeChild(this)で画面上から消去している

この2つを行っているから、(3)が実行されステージにpage3が置かれた段階では
page2はメモリ上から跡形も無くなっている(メモリリークしない)ですね。
509Now_loading...774KB:2013/03/22(金) 13:03:26.78 ID:Iz8a3SYI
>page3が置かれた段階ではpage2はメモリ上から跡形も無くなっている
GCのタイミングはわからないんだお ちょっとづつメモリが増えていく感じなら20〜30秒に1回くらいかな
510Now_loading...774KB:2013/03/22(金) 16:33:29.55 ID:xN9cfE3X
すいません、Progressionのサイトはもう復活不可なんでしょうか?
http://progression.jp/ja/
511Now_loading...774KB:2013/03/22(金) 17:12:28.89 ID:XkWeJSx7
需要がほぼ無くなったからねぇ。

ちょっと画面遷移のフレームワークとは違うけど
いまからならStarling(Feathers)やったほうが良いだろうし。
Flex自体でやってもいいし。
512Now_loading...774KB:2013/03/22(金) 17:47:42.33 ID:xN9cfE3X
>>511
うーむ、そうなのか・・・ でもProgression4ってデビューしてから3年くらいなのに。
せめて開発環境(mxpファイルやら)とドキュメントはどっかからDLできるようにして欲しいと思う。
513Now_loading...774KB:2013/03/23(土) 09:13:44.58 ID:MAXph33J
progressionは死んだのですか?
あまり使っていなかったのですが、
なくなると寂しい気がします。
作者さんどうしてるんだろう...
514Now_loading...774KB:2013/03/26(火) 13:59:07.57 ID:7RbjRI0D
(横レスだがメモリについて)
ガーベージコレクション・GCでこんなの見つけた。

池田 泰延 ?@clockmaker
@whirlpower AIRならSystem.gc()で任意に呼び出せます。FPでは任意に呼び出せませんが、
FP11以上ならGCの頻度の調整ができます。
515Now_loading...774KB:2013/03/26(火) 17:09:21.82 ID:XZTx+S3u
Spriteの.alphaって重い?
60fpsでリアルタイムで1枚Spriteの透明度を変えるだけでCPU60%とか行くんだけどこんなもん?
516Now_loading...774KB:2013/03/26(火) 18:17:16.10 ID:l4xTR2hE
>>515
そーすぷりーず
517Now_loading...774KB:2013/03/26(火) 18:23:59.79 ID:XZTx+S3u
init()で作ってaddchildしたSpriteをEnterFrameで.alpha+=0.002してるだけだけど
518Now_loading...774KB:2013/03/26(火) 18:28:16.31 ID:l4xTR2hE
>>517
う〜ん何でだろう。 その程度なら携帯のLite2でも問題なく動くはずなのに。

(参考)
import flash.system.System;
trace(System.totalMemory); でチェック

つーか、環境を書きなはれ。
519Now_loading...774KB:2013/03/26(火) 18:48:02.18 ID:XZTx+S3u
異常は感じられないなあ
試行錯誤してみるか・・・
520Now_loading...774KB:2013/03/26(火) 20:09:25.28 ID:XZTx+S3u
stage.quality = StageQuality.BEST;
これだったわ
stage.quality = StageQuality.HIGH;
に設定したら途端にCPU1%になった
521Now_loading...774KB:2013/03/26(火) 20:28:09.62 ID:l4xTR2hE
>>520
デフォルトはHIGH; でしょ。 いじった?
522Now_loading...774KB:2013/03/26(火) 20:31:30.78 ID:XZTx+S3u
小さいプログラムだし画質あげようと思ってやったけどそれかなり重いのな
523Now_loading...774KB:2013/03/26(火) 20:48:53.44 ID:l4xTR2hE
>>522
どういう環境でやってんの?
524Now_loading...774KB:2013/03/26(火) 20:54:52.14 ID:XZTx+S3u
FlashDevelop Flex4.6 AIR3.5 FlashPlayer10.1
windowsXP
core2duo 2GHz
メモリ2G
525Now_loading...774KB:2013/03/26(火) 20:59:23.83 ID:l4xTR2hE
>>524
あんがと。
体調が良ければ色々と検証できるのだけど、今はここでのレスが精一杯。
526Now_loading...774KB:2013/03/30(土) 16:24:43.05 ID:X8IPbbja
CS4,WinXP
Threadライブラリ(そうめん)のSerialExecutorでの再実行(シリアル動作でのスレッドの再実行)
について質問です。

serial = new SerialExecutor(); として
serial.addThread(個別のスレッド); を10回したとして(計10個のスレッドが存在)
特定のスレッド実行は serial.getThreadAt(番号).start() で実行できます。

例えば
serial.getThreadAt(0).start();
serial.getThreadAt(2).start();
serial.getThreadAt(5).start();

ここで一旦実行したスレッドを再実行するにはどうしたら良いでしょうか?
serial.getThreadAt(0).start();
serial.getThreadAt(2).start();
serial.getThreadAt(5).start();
serial.getThreadAt(2).start();// **** 番号2を再度

しかしこれだと
 Error: Thread is already running.
 at org.libspark.thread::Thread/start()

と出ます。 ※各スレッドには実行関数 next() がありますが、この次の関数は無いので2の実行後
スレッドは終了されている筈ですが・・・ 
試しに 
serial.getThreadAt(2).start();
serial.getThreadAt(2).join(); としてもダメでした。

よろしく願います。
527Now_loading...774KB:2013/03/30(土) 17:38:14.96 ID:YG2FQGoB
わーい、Progressionのサイトが復活していた。
ttp://progression.jp/ja/
528Now_loading...774KB:2013/03/31(日) 10:09:35.52 ID:VcVkAWSM
アクションスクリプトでアンドロイドのアプリを作っています。

インスタンスにパラメータをもたせて、
アクションスクリプトで参照したいのですが、方法はありますでしょうか。

クラスを作ればええやんという回答はなしでお願いします。
手間がかかるので。

プロパティで速度設定して、
スクリプト内で ball.x += ball.param1;
のような記述をしたいのです。
529Now_loading...774KB:2013/03/31(日) 12:04:34.52 ID:ZONblkt3
ball mc内の1フレーム目に
if( param1==null ){
var param1:int = 5;
}
とかなんとかで って事かな
530Now_loading...774KB:2013/03/31(日) 12:35:49.40 ID:9NjHSPZG
クラス作る手間を惜しむ奴がAndroidアプリなんかつくんなよ…

MovieClip ダイナミッククラス
でくぐれ
531Now_loading...774KB:2013/03/31(日) 21:40:31.45 ID:VcVkAWSM
>>530
デザイナーが視覚的に設定できた方がいいと思ってね。
回転する方向を+1とか0.5とかインスタンスごとに設定できたら楽じゃん。

とりあえず、テーブルで対応しますた。

アンドロイドアプリの開発簡単すぎるわw
これで月給30万とかメシウマwww
532Now_loading...774KB:2013/04/01(月) 02:24:33.11 ID:2O6Y8TZM
スプライトってnewしてaddChild()したあとにremoveChild()したらGCに入る?
533Now_loading...774KB:2013/04/01(月) 03:16:11.62 ID:i92nGAY2
誰も参照してなきゃGC対象になる
534Now_loading...774KB:2013/04/01(月) 22:35:00.24 ID:kh3HQKdl
format = new TextFormat();  format.font = "Arial Black";
var tf=text;
  //tf.embedFonts = true;
tf.setNewTextFormat(format);
tf.text="0123456789";
suzukaで上のように書いてembedFonts=true;にすると表示が消えてしまいます
識別子"myfont"でこのシンボルを書き出す/最初のフレームへにチェックを入れて
format.font="myfont";にしても無理でした
どうすれば埋めこめるんでしょうか
535Now_loading...774KB:2013/04/01(月) 23:02:00.71 ID:lOvxUBY2
そもそもAS以前にsuzukaってフォントの埋め込みできんの?
536Now_loading...774KB:2013/04/01(月) 23:02:26.43 ID:NPf1H9Ez
>>534
はいどーぞ、FlexだけどASのことも書いてあるぞ
http://livedocs.adobe.com/flex/3_jp/html/help.html?content=fonts_04.html#360864
537Now_loading...774KB:2013/04/01(月) 23:03:26.65 ID:NPf1H9Ez
ってsuzukaかよ…メタデータ処理できんのかな
538Now_loading...774KB:2013/04/02(火) 13:31:19.58 ID:WLEIhJpL
スプライトとかのグラフィックで
beginFill();
drawCircle();
などの逆に一部分だけを消し潰したりする方法はありますか?
539Now_loading...774KB:2013/04/02(火) 15:40:29.58 ID:tT53N1J+
>>538
■■■■
■□■■
■■□■
■■■■

みたいな感じか?(上は格子状だが) Maskを使うという手もある。
それ以前に環境を書いてね。
540Now_loading...774KB:2013/04/02(火) 20:44:50.07 ID:Hl6dB/Gx
>>534
suzukaはしらんけどparaflaでフォント埋め込みにつまづいたのはこんなとこだった
・ダイナミックテキストをタイムラインのどっかに配置する必要がある
・配置したテキストには表示されうる文字(この場合は0-9)をあらかじめ入力しておく必要がある
・太字や斜体だとフォントの名前が変わる
541Now_loading...774KB:2013/04/03(水) 12:34:09.53 ID:35Hp9Rqx
CS6でアクションスクリプト編集してて、
変なところを押したのか知らんけど、
スペースを打つと「・」と表示されるようになった。
みにくいので元に戻したいのだが。
542Now_loading...774KB:2013/04/03(水) 12:52:31.41 ID:SjSywas3
フォント変えちゃったとか?
543Now_loading...774KB:2013/04/03(水) 13:12:16.40 ID:35Hp9Rqx
早めのレスありがとう。マジでびびったわ。

隠し文字でした。
Ctrl+Shift+8 で消えた。
544Now_loading...774KB:2013/04/03(水) 21:39:52.65 ID:35Hp9Rqx
フレームごとにアクションスクリプトを記述しているのですが、
コンフリクト(名前の競合)を起こしてしまいます。

そのフレームだけで使用したい静的な変数を宣言するにはどうすればよいですか?

前のフレームの処理が残っているのでしょうか・・・。
545Now_loading...774KB:2013/04/04(木) 01:03:47.26 ID:gsSza7sU
>>544
配列を使うのは? hennsu[currentFrame-1] で参照。
546Now_loading...774KB:2013/04/04(木) 10:58:40.55 ID:MLK9tpPp
>>544
なんか勘違いしているようだが、フレームがスコープ範囲の変数なんて無い。

>前のフレームの処理が残っているのでしょうか・・・。
処理じゃなく、宣言が残ってるって言う感じかな。
宣言したフレーム以降で参照可能になり、逆は参照出来ない。
例えば、10フレーム目に宣言した変数は5フレーム目では参照出来ないだけ。

で、そのフレームでしか使わない変数を宣言したいのであれば、
そこだけ関数にして、その中で使う変数を宣言してあげればよい。

ただ、その関数宣言も残るので関数名の工夫が要ることになる。
とはいえ変数よりは使いやすかろう。
547Now_loading...774KB:2013/04/04(木) 22:27:48.13 ID:Jxrjj6Qv
>>546
詳しい説明ありがとうございます。

フレームごとにクラス(ASファイル)をひとつずつ用意する方法で解決しました。
actionscriptでは、ローカル変数で静的な宣言ってできないですよね?
(C言語の関数内でstatic宣言できる)
548Now_loading...774KB:2013/04/04(木) 23:47:33.02 ID:LfO0KgXx
そろそろなんの言語か書いたら?
549Now_loading...774KB:2013/04/05(金) 02:31:23.95 ID:PU0wX9fo
開発環境 FlashCS5.5 + FlashDevelop 4.2.4 RTM
開発言語 AS2.0

Flash側でリンケージ用MC作成、FlashDevelopでクラス作成って感じでやってるのだけど、
外部AS2クラスファイルに2バイト文字が入るとコンパイルエラーするのは仕様?

ex)
//コメントで書いてもアウト
var msg:String = "文字列に含まれててもアウト";

↑こんな感じ。Flash側でやる分には問題がない。
上記の記述例な感じで2バイト文字がクラスファイルに入っていると
「シーン=シーン 1、レイヤー=func、フレーム=1 、行 3 クラスまたはインターフェイス 'src.Main' をロードできませんでした。」
と出てうまくいかず。

ASファイルはUTF8、Flash側の外部クラスファイルの形式もUTF8。
アドバイスいただけるとありがたし
550Now_loading...774KB:2013/04/05(金) 10:41:15.42 ID:RoRObccF
各フレームごとに1つのゲームを置いてるんですが、
一度目は正常に動いて2度目以降に、フレームを移動すると、
処理が重複されて実行されてしまいます。

Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
import JumpDeFume;

var flag:Boolean = false;

if (flag == false)
{
var jumpgame:JumpDeFume = new JumpDeFume();
jumpgame.Init(this,player,enemy,ground);
flag = true;
}

フレームでこのように記述しても、
Initが何度も実行されています。

FLASH CS6です。
これは仕様でしょうか。
551Now_loading...774KB:2013/04/05(金) 13:01:47.56 ID:SBkqqZbY
var flag:Boolean = false;が毎回実行されるからじゃないの?
552Now_loading...774KB:2013/04/05(金) 13:05:55.38 ID:G9CFe2tD
仕様。Flashの仕組みをわかってない。

Flashのムービークリップは、一つのタイムラインがひとつのインスタンスという括りだから、
どのフレームだろうが同じ名前の変数や関数宣言したとしたら、それは同一名のプロパティやメソッドを定義したとみなされてコンフリクトする。
つまりはエラーになる。

ゲームを各フレームに置くみたいな仕組みにするとして、個々を独立したコードで管理したいなら、
フレーム上にムービークリップを作って(別のタイムラインを持つものを作って≒別インスタンスを作って)、
その中にコード書かないと駄目。

つーか他言語経験者みたいだから、タイムライン使わないでloaderで読み込むとかの仕組みの方がわかりやすいんじゃない?

正直、AS的にみると質問の内容がアホすぎる。
553Now_loading...774KB:2013/04/05(金) 15:19:43.64 ID:RoRObccF
一応VC(DirectX)とVBの経験があります。

>>551
それでした。
Initの中でaddEventListener(Event.ENTER_FRAME, Main);
を呼んでて、このフレームを移動した回数分だけ同じ処理が実行されます。
(初回だけは正常に動く)

>>552
何分FLASHをはじめて1週間の℃素人なもので・・・
昨日クラスの使い方を覚えました。

スマホ向けに作っているので、apkに集約できないやり方はできないのです。
554Now_loading...774KB:2013/04/05(金) 15:36:47.21 ID:peBAuKwn
>>553
>>552の言い方は多少酷いが、それでも
>スマホ向けに作っているので、apkに集約できないやり方はできないのです。
はないわ。apk関係ないし。

>つーか他言語経験者みたいだから、タイムライン使わないでloaderで読み込むとかの仕組みの方がわかりやすいんじゃない?
ここでの一番大事なところは
「タイムライン使わないで」
ってところだろ。
画面遷移の手段としてタイムラインつかってるのなら、簡単にいけると思うんだがなぁ。
555Now_loading...774KB:2013/04/05(金) 15:43:48.84 ID:RoRObccF
原因が分かりました。
みなさん笑わないでください。
removeEventListenerをしていないせいでした。

addEventListenerを繰り返した結果、
同じ処理がどんどん積み重なっていくということでした。

ACではデストラクタがないんですね。
どういう仕様だよ。
556Now_loading...774KB:2013/04/05(金) 16:21:07.67 ID:ceCIaBlX
そもそもタイムラインを使うから、面倒なことになる…という
みんなの懸念が、伝わっているんだろうか
なにか根本的なところで誤解があるような気もする
557Now_loading...774KB:2013/04/05(金) 16:31:33.44 ID:3/PEBuKO
>>555
同一インスタンスにaddEventListenerで同じ関数は重複登録されない
自分の糞設計を言語仕様のせいにする前に勉強して来いよ低脳
558Now_loading...774KB:2013/04/05(金) 16:33:03.26 ID:G9CFe2tD
話聞かない新卒か。答えて損した。
559Now_loading...774KB:2013/04/05(金) 16:46:01.07 ID:RoRObccF
>>558
趣味でアプリを作っている小売店勤務の人間です。
昔プログラムをかじっていたことがあります。

>>556
タイムラインより便利なものがあると?
かなりシンプルにかけましたよ

// 針へ糸通すゲーム
Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
import JumpDeFume;

var jumpgame:JumpDeFume = new JumpDeFume();
jumpgame.Init(this,player,enemy,ground,debug);
560Now_loading...774KB:2013/04/05(金) 17:29:22.71 ID:peBAuKwn
いろいろと駄目だな。
もう少し調べろよ。
561Now_loading...774KB:2013/04/05(金) 19:06:09.35 ID:RoRObccF
プログラムは簡単だが、
仕様が分かりずらい。

やれる人が少ないわけだ。
プロでもおいそれと遊びでやれる領域じゃない。
562Now_loading...774KB:2013/04/05(金) 20:40:13.08 ID:RoRObccF
これでいけました
クマをサポートするゲーム
import SupportKuma;

var support:SupportKuma = new SupportKuma();
support.Init(this);

タイムラインの記述なら小学生でもできそうだ。
563Now_loading...774KB:2013/04/06(土) 00:21:30.76 ID:C6I3wJA3
などと供述しており(ry
続きは日記帳にかくといいよ
564Now_loading...774KB:2013/04/06(土) 04:36:52.41 ID:iT7CshBg
>>555
>addEventListenerを繰り返した結果、
>同じ処理がどんどん積み重なっていくということでした。

んなわけねーだろ
適当に推測して解決した気になってんじゃねーよ
>>557の言うとおり同じインスタンスに何回addしても一回分と同じだよ
565Now_loading...774KB:2013/04/06(土) 07:10:21.96 ID:1gk8+FXX
フレームに配置したインスタンスへの参照が残ってるんじゃないかな
一回何も無いフレームへ飛ばし戻す事で完全に参照を切れる
566Now_loading...774KB:2013/04/08(月) 17:40:57.16 ID:xMeKziPK
newしたオブジェクトをaddchildして
removeしなきゃ他のフレームに行っても残るよ。
試してみ。
567Now_loading...774KB:2013/04/10(水) 00:08:13.97 ID:IisAkdt9
>>564
ただし静的な関数に限る。
568Now_loading...774KB:2013/04/11(木) 20:45:09.90 ID:GM3bLpHg
相談にのってくれ。
アクションスクリプトで起伏のある地形の上にキャラクタを歩かせたいのだが、
ぷるぷるする。

補正の仕方が悪いのだろう。
例えば、地形と線分の交点が分かれば代入できる。
mc.hitTestObject(x,y,true)で当たったかは分かるが、どの座標に補正すればいいのか分からない。

trueのときy--したらぷるぷるするのは何となく分かるだろ。
y-=0.01 をあてっている間、whileしたら処理が重くなることも分かるだろ。

どうすればいい???
569Now_loading...774KB:2013/04/11(木) 20:47:54.26 ID:GM3bLpHg
具体的なプログラムです。

for (var i = 0; i < 10; i++)
{
if (ground.hitTestPoint(kuma.x,kuma.y,true))
{
kuma.y -= 0.1;

}
}

kumaがぷるぷるするのです。
570Now_loading...774KB:2013/04/11(木) 22:43:14.78 ID:WA4Y9SVU
>>569
forループ終了するまでは、描画更新されないはずだから
ぷるぷるするとしたら、ループ外の場所に原因あるんじゃね?
571Now_loading...774KB:2013/04/12(金) 01:35:57.98 ID:F1JJp3E+
座標に小数はいってるとたまにぷるぷるしたような気がする
572Now_loading...774KB:2013/04/12(金) 19:48:19.55 ID:FstnUrpE
話が通じる人間が居て助かった。

>>570
ぷるぷるする理由はわかっているんですよ。
例えば、線を縦に引いて、オブジェクトとの交点が得られればその座標を代入できますよね。
3D地形はこういうやりかたで実装しました。

代入であればぷるぷるはしないんです。
補正の仕方に問題があると思ってます。
同じ当たり判定を何回もチェックするのは、処理的にもダメダメです。

>>571
坂道で横に移動すると、小数は絶対に入る。
厳密に言うと、0.1以下の数値が入っているとぷるぷるする。

当たった箇所の座標を得たいのだが、いい方法はないものか。
ちょっと考えてみるわ。
573Now_loading...774KB:2013/04/12(金) 19:55:21.75 ID:/vchjMHj
この話の通じ無さは、ID: RoRObccFの再来か…
574Now_loading...774KB:2013/04/12(金) 21:21:13.71 ID:91mOPbXW
タッチイベントで
Multitouch.inputMode = MultitouchInputMode.NONE;
に設定すると画面タッチでMouseEvent.MOUSE_DOWNのイベントが来る?
575Now_loading...774KB:2013/04/12(金) 22:43:18.91 ID:F1JJp3E+
座標を記録しておく変数を少数を含ませない変わりに単位を10倍とか100倍にして
本当の座標に代入するときに_x = Math.floor(zahyou/10);とかにしたら
576Now_loading...774KB:2013/04/12(金) 23:08:51.16 ID:3Iw+Ez7d
マジでなに言ってるかわかんねえ

>>572
ぷるぷるする理由分かってるって言っといて書いてないんだけど、結局小数点だからプルプルに見えるってことでいいの?
577Now_loading...774KB:2013/04/13(土) 00:37:27.34 ID:Zuc/YuPx
ピクセル吸着か浮動小数点の誤差の話じゃない?
当たり判定があるときに地面の頂点に移動させる→ピクセル吸着か何らかのバグで1ドット下に戻される→次のフレームで当たり判定がヒットして1ドット上に移動する(以下無限ループ)
こんな感じでぷるぷるしてるんじゃないかな
こういうの怖いから座標関係は毎回切り捨てて整数にしてるわ
578Now_loading...774KB:2013/04/13(土) 13:25:02.21 ID:prEC4huv
>>575
固定小数点数ってやつか。

>>576
hitTestPointでY座標をマイナスするときの数値が
最小の単位じゃなければならないってことだよ。
0.01以下の数値が入った場合、-0.1だと余分に補正するでしょ。

かといって、0.01でループ組んだら処理がえらいことになる。

>>577
むりやり整数で処理するのがよさげですね。
ちょっとやってみます。
579Now_loading...774KB:2013/04/13(土) 15:10:10.69 ID:prEC4huv
Math.floorに答えがありました。

少数を切り捨てて表示すればOKでした。
:F1JJp3E+を神認定します。
580Now_loading...774KB:2013/04/13(土) 15:32:52.51 ID:prEC4huv
どうでもいいけどFLASH AIR で発表したオレのアプリが、
オレしかダウンロードしていない件。

数が多すぎて埋もれてしまうみたい。
PCの同人ソフトなら雑誌が取り上げてくれたのだけど、
アンドロイド市場ではそれも厳しいわ。

説明にマリオとかゼルダみたいなゲームとか書けばいいのだろうか。
581Now_loading...774KB:2013/04/13(土) 16:31:11.91 ID:Ju9WYX4g
どんないいアプリあろうが、誰も知らなきゃ落としようがないからな
582Now_loading...774KB:2013/04/13(土) 16:43:53.91 ID:prEC4huv
恥ずかしいからここでは書かないけどな。
画面のボタンを押すとムービークリップが再生するスクリプトを書いたのだが、
連打すると画面が止まっているのは気のせい?

メインのenterframeでキャラクタのムービークリップをkuma.gotoplay(1)した瞬間に止まる。
アクションゲームでこれはまずい。

60fpsなら分からない程度だが。
583Now_loading...774KB:2013/04/13(土) 17:16:05.75 ID:cApy8fYa
この意味のわからん断定はこないだのやつか……

説明下手なの分かってんだから簡略化したサンプルswfでもあげればいいのに
584Now_loading...774KB:2013/04/13(土) 20:01:53.79 ID:prEC4huv
>>583
要するにだ。
ムービークリップをgotoplayで再生した一瞬だけ、
ゲームプレイが止まる気がするのだよ。
一フレームだから、動いていれば気にするほどでもない。
585Now_loading...774KB:2013/04/14(日) 01:08:56.62 ID:qzwiwqGq
>>580
アプリ紹介サイトにでも売り込んで来い。
良い物なら宣伝してくれるだろうよ。
586Now_loading...774KB:2013/04/14(日) 18:36:39.25 ID:Aqg0MiVk
>>585
検索したら出てきたアンドロイダーね。
参考にさせてもらうわ。

一瞬止まるのは、インバースキネマティクスを使った多関節アニメーションだから、
処理が重かったのかもしれない。
587Now_loading...774KB:2013/04/14(日) 20:05:25.58 ID:snpZuNKY
iphoneアプリ. Windowsアプリを売って生き残れ Ver 1.7 リンク数61
Http://qr. net/kh4y
588Now_loading...774KB:2013/04/14(日) 20:25:04.28 ID:Aqg0MiVk
FLASH AIRでアンドロイド向けにパブリッシュして、
Google Playで配信って流れは理解できたけど、
iPhone向けが分からん。

配信するために、
マックを用意しなきゃいけないのは分かった。
パブリッシュはwinodowsでAPKファイルだけマックへ持っていけばいいの?

マック用のFLASHが必要なの?
winodwsにiphone向けのパブリッシュあるよね。
おしえてんご
589Now_loading...774KB:2013/04/15(月) 00:13:50.11 ID:mBgq+fGF
iPhoneはapkでなくipaファイル
パブリッシュはwinでFlash proで可能
実機確認はios devセンターに登録(年9000円ほど)が必要
app storeへのアップロードにもしかしたらMac必須だったかも
590Now_loading...774KB:2013/04/15(月) 16:11:25.33 ID:1l8FOBMr
ノートPCが古いから買い替えにmacを考えたけど、
ウイルスソフトやら、mac用に揃えると本体代だけじゃ済まないよな。

今はアンドロイド優勢だし、
ソフトをアップするだけで毎年更新料かかるのはネックだ。

スルーすることにするわ。
591Now_loading...774KB:2013/04/15(月) 16:20:23.47 ID:GxVAfFW4
>今はアンドロイド優勢だし、
それがノートのOS選択に関係あるん?

>ソフトをアップするだけで毎年更新料かかるのはネックだ。
これWindowsもおなじやん。
592Now_loading...774KB:2013/04/15(月) 20:33:06.44 ID:1l8FOBMr
>>591
ウイルスソフトのことだよ。
windowsのは3台まで使えるから。

FLASH CSもwindowsなら2つに入れられるでしょ。
macならFLASHも買いなおしになる。
そういうことを言ってる。

ただ、ネット用途として使うならありかもしれん。
おすすめあったら教えて。

あと、フラッシュのサンプル置いてるサイトないかな。
絵を描くのが面倒になってきたわ。
プログラムが組みたいのに絵で時間を取られる。
593Now_loading...774KB:2013/04/15(月) 21:12:11.98 ID:mBgq+fGF
creative cloudならwin/macどっちなもいれられるよ

フラッシュのサンプルと絵を描くのが面倒ってのが結びつかないんですが
594Now_loading...774KB:2013/04/15(月) 21:45:38.74 ID:1l8FOBMr
>>593
win版 CS6 proを8万で買ったばかり。

IKのサンプルの人をちょっと加工してキャラクタとして使ってる。
顔だけ付け替えれば別キャラになる。

これはおもしろいものになりそうだ。
595Now_loading...774KB:2013/04/15(月) 22:17:19.40 ID:40QEKKlu
スクロールペインに入れたテキストフィールドだけ文字ちっちゃくなってワロタ
普通にstageに配置したテキストフィールドと
スクロールペインにいれたテキストフィールドだと16ptと24ptが同じ大きさでワロタ
同じように定義してプロパティやテキストフォーマットも同じなのにワロタ
596Now_loading...774KB:2013/04/16(火) 15:37:05.59 ID:yTVsPf2J
スマコン対応のアンドロイドアプリが増えているようですが、
FLASH AIRでスマコンに対応することは可能でしょうか?

ウォークマンZをテレビに繋げば
OUYAいらん。
597Now_loading...774KB:2013/04/16(火) 17:15:42.38 ID:Q9MD48e1
スマコンってなんなん?
スマホをリモコンにするやつ?
598Now_loading...774KB:2013/04/16(火) 21:12:37.43 ID:yTVsPf2J
ブルトゥース対応のコントローラだよ。

wiiリモコンも使えるんやね。
テレビ出力つければwiiUいらんやんw
599Now_loading...774KB:2013/04/17(水) 14:07:28.62 ID:+wYAYwkb
そういう単語をみんな知ってる前提で使うのはどうなんだ。
さらにいえば全くこのスレに関係ねーし。
600Now_loading...774KB:2013/04/17(水) 16:42:20.01 ID:6cTayblO
>>599
関係あるよ。
FLASH CS6のFLASH AIRでゲームアプリを作ってる。
で、画面タッチだと操作しにくいからゲームコントローラを使いたいわけ。
方法はあるの?ないの?どっちよ!!!
601Now_loading...774KB:2013/04/17(水) 17:11:34.16 ID:+wYAYwkb
じゃぁ回答しよう
最悪、方法はある。
ネイティブエクステンションで対応すればいいからな。
602Now_loading...774KB:2013/04/17(水) 22:06:48.67 ID:S5PP/kZJ
全角使うなや
FLASH AIRってなんだよ
もうー
603Now_loading...774KB:2013/04/20(土) 14:31:13.21 ID:FgC0dtj+
うーん・・・FLASH CS6とFLASH AIRでFLASHがダブってしまった
604Now_loading...774KB:2013/04/20(土) 19:05:23.03 ID:tPzzz5+F
次のバージョンではゲームパッドに対応してくれると信じているが・・・
605Now_loading...774KB:2013/04/21(日) 02:57:36.02 ID:HK74yVvC
Windowsストアアプリはまだ開発環境弱いからはよAIRも対応して欲しいな
606Now_loading...774KB:2013/04/21(日) 15:47:05.30 ID:Yigx+fGX
>>604
11.7にAndroidのGamepadAPI対応が含まれているぞ
607Now_loading...774KB:2013/04/21(日) 17:19:34.15 ID:c5v7E0/H
2013 年 4 月 9 日ってタイムリーやな。
使い方は?
608Now_loading...774KB:2013/04/21(日) 20:41:52.85 ID:Yigx+fGX
609Now_loading...774KB:2013/04/22(月) 08:53:24.92 ID:pviRHRjF
>>608
同時にOUYAにも対応してるみたいだな。

同じ命令でいけるってことか。
アンドロイドとOUYAのマルチも可能ということですな。
610Now_loading...774KB:2013/04/22(月) 19:53:36.66 ID:DDNfqBA4
まぁOUYAってAndroidだし不思議なことじゃないな
611Now_loading...774KB:2013/04/22(月) 21:11:02.52 ID:pviRHRjF
OUYA用にパブリッシュできるようになるんだろうか。
FLASHの次のバージョン(CS7)で搭載してきそうだな。

スマフォ用のアプリと
完全に同じコードでパブリッシュできるならありがたいが。
612Now_loading...774KB:2013/04/22(月) 21:12:58.35 ID:pviRHRjF
ところで、あの高かったスマコンが4980円に値下げされているね。
wiiリモコンを繋ぐより遅延が少ないらしいから注文してみた。

OUYAのコントローラ価格に合わせたのかな。
いずれにせよOUYAは買うぜ。
おれのためのゲーム機をつくる。
613Now_loading...774KB:2013/04/24(水) 13:33:41.96 ID:BZBGJj6h
マリオ風のステージを作成しているのだが質問させてくれ。

マップを描いているのだが、
キャンパスが狭くて狭いステージしか作れない。
ある一定サイズ以上になると絵がはみでる。
解決策はあるのか?
614Now_loading...774KB:2013/04/24(水) 14:56:17.56 ID:KSjBbZzX
普通はマップチップ作って、それを動的に配置してスクロールするように作るが。
615Now_loading...774KB:2013/04/24(水) 19:13:39.43 ID:BZBGJj6h
>>614
知ってる。2次元配列でしょ。
ツール作るの面倒だから、絵で済まそうというわけですよ。

マップチップは古いよ。
616Now_loading...774KB:2013/04/24(水) 19:14:37.05 ID:BZBGJj6h
アンドロイドのレイマンやった?
あれはマップチップでは再現できないよ。

ソニックもマップチップじゃない。
ピクセル単位で球の判定でしょ。
617Now_loading...774KB:2013/04/24(水) 21:04:05.36 ID:BZBGJj6h
まる一日球とムービークリップの当たり判定に挑んだけど、
うまく動かない。

一応補正はできているけど、
ゲームには使えないレベルやった。

for (j = 0; j < 36; j++)
{
X = Math.cos(j*10 * 0.0174444) * 20 + kuma.x + this.x;
Y = Math.sin(j*10 * 0.0174444) * 20 + kuma.y + this.y;

// for (i = 0; i < 150; i++)
{
if (ground.hitTestPoint(X,Y,true))
{
kuma.x-=Math.cos(j*10 * 0.0174444);
kuma.y-=Math.sin(j*10 * 0.0174444);
}
else
{
break;
}
}
}

やりたいことはなんとなくでも分かってくれ。
そして、ソースがあれば頼むわ
618Now_loading...774KB:2013/04/24(水) 21:12:53.60 ID:BZBGJj6h
ここに、実現したいコードがあったけど、
坂道を歩けない時点でダメー。
ttp://flash.polig.daa.jp/?cid=21304

へっぽこプログラムですね。
ムービークリップ上をぬるぬると球が動きたいのですよ。
619Now_loading...774KB:2013/04/24(水) 21:43:25.09 ID:BZBGJj6h
とりあえず、坂道と頭上のコリジョンは完全に実現できた。

横だけコリジョンブロック置いて誤魔化すという方法もあるな。
横で斜めの判定が必要な状況ってほとんどないし。

マリオU見てると、
やつらの技術の蓄積はすごいと思うわ。
一人じゃ絶対にできない所業だね。
620Now_loading...774KB:2013/04/25(木) 02:09:50.32 ID:xrkDb1h2
bitmapdataにdrawして色々とか
621Now_loading...774KB:2013/04/25(木) 20:05:56.58 ID:/pLbFC0+
 

【 悲 報 】  元芸能人で俳優の“田代まさし”さん獄中で病死

http://nuvq.com/www_headlines_yahoco_co_jp_20130425_0087-jij-pol

 
622Now_loading...774KB:2013/04/25(木) 20:40:20.30 ID:p/c+fGtO
3Dの方がコリジョン簡単やよな。
623Now_loading...774KB:2013/04/26(金) 02:00:22.44 ID:UXpeOqJr
>>613
>キャンパスが狭くて狭いステージしか作れない。
>>615
>マップチップは古いよ。
とかいっている奴が出したコードが
>>617

すごい。
624Now_loading...774KB:2013/04/27(土) 00:34:03.92 ID:68DLsK0T
おまえスマホアプリつくってんだっけ
おまえが生み出すコードはスマホに向いてないからやめといたほうがいいよ
面倒という理由でクソ長いマップ作るとか…
625Now_loading...774KB:2013/04/27(土) 10:28:07.82 ID:IWixUxt8
>キャンパスが狭くて狭いステージしか作れない。
配置するトコは左上基準で0, 0 みたいにわかりやすい位置にする
実際の作成は作業フレーム、もしくは作業用Flaファイルでも作ってそこでMCずらしながらやる
ただしとんでもなく長いのは作れなかったはず…
626Now_loading...774KB:2013/04/27(土) 13:59:36.23 ID:yOednvSH
>>624
てめえに言われたくないですな。
それがしのコードよりマシ。

>>625
方法はあるよ。
はじめからスケールしておいて、
拡大した状態で作業すればいい。
座標管理が若干ややこしくなるけど。
627Now_loading...774KB:2013/04/27(土) 14:24:05.88 ID:IWixUxt8
>はじめからスケールしておいて、
10倍か100倍なら分かり易いな でも比率が違いすぎるとペンやブラシで描こうとするとカクカクして大変

作成途中のでいいからどっかにうpってみてお 動かしてみたいw
628Now_loading...774KB:2013/04/27(土) 16:46:52.39 ID:q5rIlv4v
>>626
俺のコードどこでみたんよw

人のコードにケチつけれるほど、
すばらしいコードだからいいのね?

プ
629Now_loading...774KB:2013/04/28(日) 12:20:50.27 ID:U+Elqrd/
AS3でstageのscaleModeを変えるとマウスボタンが効かなくなることがあるのは何かのバグですか?
マウスホイールだけは効きます
630Now_loading...774KB:2013/04/28(日) 13:10:01.81 ID:jjl2DE9M
再現するコードと、どうやって確認してんのかわからんとなんとも。
631Now_loading...774KB:2013/04/28(日) 13:27:42.76 ID:U+Elqrd/
初期化時に
stage.scaleMode = StageScaleMode.SHOW_ALL;

ENTER_FRAMEでグローバルのBooleanに変化があったとき
stage.scaleMode = StageScaleMode.NO_SCALE;
にしたらそうなるときがある
632Now_loading...774KB:2013/04/28(日) 14:07:11.83 ID:exbCFyxH
 

  捨 て ヌ コ 虐 待 画 像  (*^ω^)オッオ..w

   http://qir.cc/picture2013_image_001img_jpg

           ↑
        捨てヌコ虐待ちゅう☆


ウハハハハハwww猫虐待たのしぃ〜〜♪  
  /l、
 (゚、 。 7
  l、~ ヽ   ウギャー><
  じじと )ノ
633Now_loading...774KB:2013/04/28(日) 15:25:18.59 ID:jjl2DE9M
どうやって確認してんの。
stageに対してaddEventListener(MouseEvent.○○
しても駄目?それとも特定のインスタンス?

で、そうなるとき、って何って話になるわな。そうならない時と違うことやってんじゃないの?としか言えんよ。
634Now_loading...774KB:2013/04/28(日) 16:10:04.99 ID:ZqRWaiCf
stageじゃなくてthis(メインタイムライン)でaddEventListener(MouseEvent.○○ してもだめか?
635Now_loading...774KB:2013/04/29(月) 10:57:02.76 ID:f3NhJI3D
スマブラみたいなゲームつくる
636Now_loading...774KB:2013/04/29(月) 13:11:15.76 ID:f3NhJI3D
BOX2Dっていうプラグインつかえば、
簡単にコリジョンが取れそうだね。
iosのThe Incidentみたいなゲームが作れそう。
637Now_loading...774KB:2013/04/29(月) 20:46:57.23 ID:kZclUqeX
プラグインってのが何か知らんが
おまえには無理
638Now_loading...774KB:2013/04/29(月) 21:36:39.17 ID:ccBaYhk/
プラグインって呼んでる時点で無理
639Now_loading...774KB:2013/05/01(水) 16:38:57.50 ID:F2uRpzrR
>>637
元ゲームプログラマなめるな。
一応大手におった。

>>638
ライブラリやな。
ジョイントはムズイけど、
長方形と円はでけたぞ。
640Now_loading...774KB:2013/05/01(水) 17:15:26.66 ID:ATEz2ZZP
そんな素性だとしても>>613の発言はおかしかろう。なおさら。
641Now_loading...774KB:2013/05/01(水) 18:46:58.26 ID:F2uRpzrR
マッはデータで配置して、
キャンパスに直接マップを描くなってことだろ。

その考えが古いんだよ。
当たり判定は絵で取れる時代なのだ。
3Dやってればわかるでしょ。
コリジョンの絵を描くの!
642Now_loading...774KB:2013/05/01(水) 18:57:23.83 ID:ATEz2ZZP
3Dやってれば、オブジェクトを指定位置に配置するだけだって考えると思うんだが。
643Now_loading...774KB:2013/05/01(水) 20:33:30.67 ID:k16pKbEY
あたり判定を絵で取ることと馬鹿長いマップをステージに作れないとかいう基地外じみた理由でIDEにクレームいれることとなんの関係もないけどな
644Now_loading...774KB:2013/05/01(水) 20:44:27.71 ID:ATEz2ZZP
そもそも
コリジョンの絵を描く
ってなんだよw
645Now_loading...774KB:2013/05/03(金) 08:30:15.46 ID:GBw3Dm6K
Box2D解説してるサイトない?
646Now_loading...774KB:2013/05/03(金) 10:49:55.45 ID:KfzFoa/4
>>645
山ほどあるやんw

あるいはwonderflで検索
http://www5.pf-x.net/~uwi/wonderfl/index.php?q=Box2D&sort=#
これらをイジって遊ぶという手もある。
Box2D lines:10-100 とすると10〜100行のサンプルが得られる。
 
647Now_loading...774KB:2013/05/03(金) 12:43:40.31 ID:GBw3Dm6K
>>646
神認定します。
洋書をキンドルで翻訳して悪戦苦闘してたとこ。
648Now_loading...774KB:2013/05/03(金) 12:45:24.09 ID:GBw3Dm6K
これでアンドロイド版 TheIncidentつくる
649Now_loading...774KB:2013/05/03(金) 14:46:47.73 ID:Ey9nMLn0
Box2Dのバージョンにハマる展開まだー?
650Now_loading...774KB:2013/05/03(金) 14:57:10.99 ID:GBw3Dm6K
>>649
それ、とっくに回避したわ。
Box2D for Flash Gamesという比較的新しい本を買って、
サンプルをいじってるから。

キンドルストアで売ってるからお前らも買ってみ。
前編英語だけどなwww
651Now_loading...774KB:2013/05/03(金) 15:31:18.55 ID:Ey9nMLn0
後編買うわ
652Now_loading...774KB:2013/05/03(金) 15:50:04.82 ID:GBw3Dm6K
画面をタッチすると、はこが上から降ってくるプログラムつくったったw
端末の傾きで重力が変わる。

四角と円のコリジョンはできたけど、
それ以外は、矩形の組み合わせで実装するので、コードを組むのがめんどい。

TheIncidentつくるの楽勝www
653Now_loading...774KB:2013/05/03(金) 15:52:43.54 ID:GBw3Dm6K
GWなのに、一日中モニタの前やった。
プログラムが仕事じゃなくてよかったわ。

遅れるとどやされるけど
トラック運転するの楽しいわー。
654Now_loading...774KB:2013/05/05(日) 16:48:36.37 ID:oR3qxRZK
キャンパスってHTML5以外で聞いた事ない。
655Now_loading...774KB:2013/05/05(日) 17:38:01.40 ID:pezWvzPi
 


【 速 報 】 俳優で元タレントの田代まさし(57)さん、獄中で病死

http://e.im/www_headlines_yahoco_co_jp_201300505_0015-yom-soci


 
656Now_loading...774KB:2013/05/05(日) 20:03:31.17 ID:9FK8bsLm
ウィルス↑
657Now_loading...774KB:2013/05/06(月) 08:04:48.03 ID:khShmLgW
これから勉強しようと思っている、actionscript と javascript の違いについて質問させてください。
ちょっとググったりしてみた感じでだいたいどんな用途で使うのかは分かりましたが、
文法的な違いは大きいですか?

例えば javascript をある程度勉強したら、基本的な部分は似ているので
actionscript も少しは使えるようになる、とかもしくはほとんどの部分で違ってるから
別物として勉強しなおす必要があるのかなど、両方の知識がある方そのあたりを教えてください。

よろしくお願いします。
658Now_loading...774KB:2013/05/06(月) 10:27:36.52 ID:I4ifVQD+
勉強しなおしって事にはならないけど、同じように書けるってわけでもない。微妙。

jsはスコープチェイン分かってないときついし、自作クラス作ろうとするとクソ。
その辺わかるレベルになれば、どっちでもそんなに変わらん。
つかasだけならそのへんで苦労しないだろうけど。
659Now_loading...774KB:2013/05/06(月) 13:15:49.65 ID:fxS8rhAV
>>657  ※以下長文でスマン

 actionscript(以下AS)はAS1,2,3があってAS1は(他の2つに比べると)基本的な動作しかできず
古く、ライブラリ(誰かが作った道具箱)も皆無なので通常actionscriptと言えばAS2かAS3を指す。 

 文法はAS1と2は殆ど変らないがAS2とAS3は全く別のシロモノ。 AS2は規格上JavaScriptの兄弟で、
文法は殆ど同じなので、コードの流用が出来る。 また比較的簡単なので勉強しやすい。 反面ライブラリは
充実していないので(AS3に比べると)やれることが限られてる。
 一方、AS3はJavaに匹敵するオブジェクト指向言語でライブラリも豊富にある反面、初心者には
勉強しにくい。 

 *** 例えると、AS1は魚でAS2は両生類だが、AS3は類人猿みたいなもの。 ***

 世間の潮流はAS3だけど俺は使い分けだと思う。 AS2でもかなりのことが出来るがAS3は更に
可能な項目が10倍以上になる。 そうなると逆にオーバースペックで使わない機能が出てくる。

 実際、AS3のEventサブクラス(何かの出来事が生じた時の処理機能)は5年以上前の時点で250個
以上(下記)あるから、これの5%でも活用して、他のクラスも使えばそれなりのアプリが作れる筈。
ttp://help.adobe.com/ja_JP/FlashPlatform/reference/actionscript/3/flash/events/Event.html
※標準パッケージのクラス総数は不明というか膨大

 【まとめ】 AS2とAS3の比較上の長短は
AS2の長所: JavaScriptのコードが流用できる。 勉強しやすい。 それなりのことが出来る。
 〃 短所: やれることが制限される。 

AS3の長所: 多彩な動作が出来る(Felicaのデータ読み込みとか、高度な3Dとか、バイナリ解析とか)
 〃 短所: ちょっと難しい。 場合によってはオーバースペック。

 あと商用では1回限りの案件で短納期でチャチャと作る場合はAS2が向いている。
660659:2013/05/06(月) 13:47:54.79 ID:fxS8rhAV
追記)
>>657
 AndroidスマホとPCではAS1〜AS3書いたコードのSWF(コンテンツファイル)が
実行できるが、ガラケー(フィーチャーフォン)ではAS2以下によるSWFしか実行出来ない。
これは搭載される実行プログラム(FlashPlayer)の違いによって起こる事象。

ちなみに、FlashPlayerはExeファイルで、PC用なら任意の名前でタダで簡単に
作成できて簡単に配布できる。

※AS2以下用(Player8)のみならファイルサイズは4.2MB程度だが、最新のAS3も
動かせるPlayer11.7だと16.7MBになる。
661659:2013/05/06(月) 17:16:04.70 ID:fxS8rhAV
追記2) 度々すまぬ

SBのガラケーの一部では Player Lite4 によりAS3のSWFも実行可能。
ただし機種名は分からん。

あと、Yahooの広告SWFなんかはどの環境でも動作できるようにワザとAS2
のPlayer8以下(7年以上前のPlayer)での動作を求めている。
 ※ Flash SWF 入稿 規定 Player  で検索

JavaScriptの経験が長くて、蓄積コードも多いならAS2でも良いと思う。
662Now_loading...774KB:2013/05/06(月) 18:48:43.74 ID:o1t5PkZh
最初からAS3を勉強しとくのが吉
AS3→AS2、JavaScriptへの移植はAS2、JavaScriptを知らなくても比較的楽
AS2、JavaScript→AS3への移植はAS3を知らないとどーにもならん
663Now_loading...774KB:2013/05/07(火) 00:05:38.56 ID:4Fo69JOD
AS1.0しかやってないけどjavascriptの参考書が参考になるレベルには似てる
664Now_loading...774KB:2013/05/07(火) 09:49:44.91 ID:iFZhqKgA
最近ASに興味を示して色々本を買ったりwonderflからソースもらってきたりしてるんだけど

どうもイベント駆動式ってーのがわからん
イメージが掴めんって言うのか

もはやASとは関係ないほど低レベルなんはわかってるんだけど、手続きしきって言うのかな?古いBASICからASに移行する為の注意点ってーのを教えてほしい
イベント駆動ってーのはBASICで言うON ERROR GOTOやらON KEY GOSUB、ON TIME GOSUBなんだろうけど、継承?の考え方がイメージが掴めんのよ

説明できる人がいたら教えてください
665Now_loading...774KB:2013/05/07(火) 11:36:53.33 ID:siLVUOZJ
イベント駆動と継承って何の関係もないわけだが。
なんかオブジェクト指向とごっちゃになってないかい?

従来型のプログラミングのやり方(構造化)でGUIの処理をやろうとすると
非常に面倒だってことで出てきた方法論?で、
何かしらのイベント(ex:ボタンがクリックされた、キーが押された)が
発生した時の処理を記述するやり方。

結局VM内部では従来通り、高速に状態変化を監視するループが走ってて、
その変化の内容を処理を振り分けてるだけ。

オブジェクト指向ってのは、データ構造も含めて考える概念で
イベント駆動とオブジェクト指向は相性が良いこともあって、
まとめて解説してあったりして混乱しやすいとおもう。
666Now_loading...774KB:2013/05/07(火) 13:23:13.35 ID:6vR4EpSn
>>664
イベント駆動式に限定して言うと、

・バレンタインにチョコを貰った → お返しをする
・迷惑メールが届いた → 破棄した
・彼女の乳首を触った → 彼女が悶えた

というAction説明(因果の関係)ではどうかな?
ActionScriptってイベントスクリプトとも言えるかも。
667Now_loading...774KB:2013/05/07(火) 14:03:29.53 ID:8dbRiGvU
>>664
イメージが掴めないのは単純に経験が無いから。
気にせず作ればいいよ。
API触ってたら勝手に学習していく。
668Now_loading...774KB:2013/05/07(火) 14:40:08.74 ID:6vR4EpSn
>>667
まあ、どのプログラム言語もそうだけど、解説資料を参照しながら短い(行数が少ない)
多彩なサンプルをイジくり回して遊ぶのが近道だわな。

AS2の時は、「Flash MX ActionScript ほぼ10行道場」(毎日コミュニケーションズ)
がスゲー役に立った。
669664:2013/05/07(火) 19:36:48.98 ID:iFZhqKgA
>>665-668
たくさんレスありがと
イメージ的にはこんな感じでいいの?

[VM内処理]
メッセージループ
  //イベントhooを登録するとここに
  /*
    if hoo=1 then gosub *hoo
  */
  //これを追加
繰り返し

質問が低レベル過ぎて申し訳ない
670Now_loading...774KB:2013/05/07(火) 20:10:44.01 ID:siLVUOZJ
まぁ、そんな感じ。

ただ、AS3に関しては非同期処理だから注意が必要。

イベント駆動を知りたいだけならVM内での実装はどうでも良いのがホントで、
>>666が書いたように、イベントに対する処理を記述するだけ。

低レベルというか難しく考えているだけじゃなかろうか。
671664:2013/05/07(火) 20:55:02.87 ID:iFZhqKgA
いや、「BASICしか知らない」とは言ったものの、実際にはDelphiとかBCBとかJAVAとか齧ってきたの
三つ子の魂百までとはよく言ったもので、逐次式に慣れてしまってたらその考えがずっと後追いしててさ
イベント駆動式だっけ?にはどうやっても移行できんのよ
だから全部挫折したわ

ASっていうか、wonderflのサイト教えてもらった時に、サンプルが多い分できるかなって思ったんだけど、ここに来て強敵のイベント駆動式が立ちはだかったんよ

イベントの登録と処理を記述するのが今の方法だろうと思って、確認をお願いしたんだよね
後出しだがレス書いてた時に気づいた

疑問がもう一つあるんだけど、いいかな?
>>669のメッセージループに入る前に初期化処理っていうのは作れるの?
例えば
イベント[初期化処理]ってーのを登録した
 でも[初期化処理]のフラグを立てる術がない
  だからいつまで経っても初期化されない
ってことに陥る気がするんよ
そもそも、メッセージループにそういうフラグを監視する処理を入れる必要はなく、メッセージループ前に処理しちゃったら手っ取り早いと思うんよね

「非同期処理」ってーのは、次のメッセージループまで判定しないって意味?
672Now_loading...774KB:2013/05/07(火) 21:08:55.00 ID:awbKXR+P
AS3も何でやるかで多少変わってくるけど…
基本的にはEnterFrameっのループがあってそこで色んなイベントが割り込んでくるっていう感じで俺は理解したな、最初
初期化処理の話なら、イベント登録すればそのイベントが発生した時に自動的に登録した関数を呼び出してくれる
ここら辺読んでみるとか
http://help.adobe.com/ja_JP/as3/dev/WS5b3ccc516d4fbf351e63e3d118a9b90204-7fca.html
673Now_loading...774KB:2013/05/07(火) 21:50:53.54 ID:siLVUOZJ
うーん、VMの話をし出すと厳密な事書かないといけなくなるからなぁ。
俺もそこまで詳しい訳じゃないし。

イベント駆動の何につまずいているのかがわからん。
BASIC、特にVBやったことあるなら、一番概念がつかみやすいと思うが。
ボタンクリックした時の処理を個別に記述できるでしょ?

JavaはGUI用のAPIのSwingとかじゃないとイベント駆動とはあまり関係無いが。
DelphiだってVCL上の話だし。

> >>669のメッセージループに入る前に初期化処理っていうのは作れるの?
> 中略
> そもそも、メッセージループにそういうフラグを監視する処理を入れる必要はなく、メッセージループ前に処理しちゃったら手っ取り早いと思うんよね
これも、VMの話であってASによって手出しする部分じゃない。
だから処理系の持つ実際の処理(VM内の処理)の話は考えなくていい。
CPUのカウンタがどうだとかレジスタがどうなってるとか気にしたこと無いでしょ?

> 「非同期処理」ってーのは、次のメッセージループまで判定しないって意味?
フラグの判定とは全く関係無い。
例えば、よくあるサーバからデータとって来て表示処理を考えると、
値が返ってきてから表示すればよいだけで、
値が返って来るまでメッセージループを停めて、他の処理が出来なくなるのはバカらしいでしょ?
その返って来る時間が不定ならなおさら。
(実際そういう事考えずに画面描画が止まるアプリも多いけど。)
だから、データが返ってきたら呼んでね!っていうイベントを登録して、
処理が終わった!イベントでその表示処理をするわけ。そうした方がリソースを有効に使えるから。
こういった処理を非同期処理って呼ぶ。

なんか話が発散してしまった。
674Now_loading...774KB:2013/05/07(火) 21:58:21.80 ID:6vR4EpSn
>>671-673
要は簡単なサンプルで遊んで学ぶしかないと思う。

ttp://www5.pf-x.net/~uwi/wonderfl/index.php なら
例えば Click lines:5-30 と行数指定が出来る。これで141個あった。
675Now_loading...774KB:2013/05/07(火) 22:17:56.81 ID:8dbRiGvU
メッセージループってなんだ?
while(1){

sleep();
}

こういう処理はFlashではできないぞ。
676Now_loading...774KB:2013/05/07(火) 22:28:58.11 ID:6vR4EpSn
>>675
割り込みとかスレッド処理ってこと?
Workerとやらで出来たような・・・
677664:2013/05/07(火) 22:29:53.03 ID:iFZhqKgA
皆さんすいませんね
概念がイマイチ理解できてないから、やたら低レベルな話で

やりたいこと自体は別にそんなに大仰なことではなくて、「とりあえずワンキーゲームでも」って感じでかじってみたの
そんなにすんげー事するつもりはないんだけど、今のスタイルがどうにも飲み込めないから色々質問したんだけど
でもレスってくれた方々のおかげで理解はそこそこ深まった ってーのが今の感想よ

VMレベルでの質問は「嘘教えた!てめー責任取れ!」て言いたい訳じゃなくて、概念を知りたいからなんよ
今はこんな感じで理解しているかな
[元ソース]
 初期化を登録 こいつはメッセージループ前に実行するよ
 メインルーチンを登録 こいつはループごと実行するよ
 なんか押したを登録 こいつはループ中になんか押したら実行するよ
 終了処理を登録 こいつはループ終了後に実行するよ

[コンパイル時の解釈]
 gosub *初期化
 メッセージループ
  if 1 then gosub *メインルーチン
  if inkey$><"" then *なんか押した
 繰り返し
 gosub *終了処理
678664:2013/05/07(火) 22:40:12.20 ID:iFZhqKgA
>>675
ああ、ごめん
有り体に言えばそれなんだけど、知りたいのは方法じゃなくて考え方
だからそういう具体的なコードを求めてるんじゃないの

でもそこで引っかかってるって思われてもしかたない質問よね
679Now_loading...774KB:2013/05/07(火) 22:44:46.64 ID:6vR4EpSn
>>677
こういうサンプルじゃダメなん?
http://wonderfl.net/c/IaGj
http://wonderfl.net/c/zCKH
 (共に半角英数で)
680664:2013/05/07(火) 23:01:54.85 ID:iFZhqKgA
>>679
どうやったらこんなサンプル見つけれるんよ?
こういうのがたくさん欲しいから、是非ググり方教えて

ID:siLVUOZJの方もかなりためになったけど
ID:6vR4EpSnのあなたにも感謝するよ

くだけた口調でもの申してるけど ホンキで感謝してます
681Now_loading...774KB:2013/05/07(火) 23:13:17.02 ID:6vR4EpSn
>>680
 → >>674
682681:2013/05/07(火) 23:15:47.64 ID:6vR4EpSn
追記:

 KEY_DOWN lines:5-30

で検索した
683Now_loading...774KB:2013/05/08(水) 02:31:25.93 ID:Nc/tn9LS
プログラミングについて語るとこじゃないんだって
実際に組んで困った箇所があったら質問してこいお
684Now_loading...774KB:2013/05/08(水) 11:51:55.10 ID:H/XnjHxk
FireWorks開発終了だね……
AdobeのページでWEBデザインの項目で
Dreamweaver・Edge-a・Edge-r・Edge-i・Photoshop
でFlashもFireWorksも全ての表示を押さないと出ないし……

Adobeの扱いが酷すぎるんだが……
Adobe自らFLASHを消しに掛かってる印象を受ける。
まだ5年くらいはゲームエンジンとしてでも使える
ポテンシャル有りそうなのに
685Now_loading...774KB:2013/05/08(水) 12:14:33.05 ID:5B92pzbU
Photoshop に慣れると Fireworks は正直使いづらい

Flash はまだまだいけると思う
686Now_loading...774KB:2013/05/08(水) 13:33:26.54 ID:TjAR0Toa
>>685
Flashは既存の機能(クラス&関数)をどう使いこなすかの時代になると思う。
※企業で言うと新しい資産を求めるのではなく、既存の社内資産の活用ってこと
 まあこれはExcelの関数にも言えると思う。 

Player8でもかなりのことが出来たのに、Player11以降なんてメチャ多機能で
専門の人でも全く使わないクラス&関数もある筈。

絵の具で言えば12色あれば組み合わせで大抵の色が出せるのに、既に120色もあって
無駄になってる。
687Now_loading...774KB:2013/05/08(水) 15:13:47.07 ID:q2HlsVsj
>>684
Adobeはかなり前からFlashはGameに特化するって言ってるよ。
だから、Gameの項目にFlashは入ってる

Fireworksも結構前から統合するって言ってたんだよ。
あとCCだったらFireworksCS6は販売を続ける。

Web用の画像はHTML5対応だと作り方が従来と全く違う。
ひとつのソースでデスクトップからモバイル、タブレットに対応しないといけない。
だから、それに対応出来るEdgeシリーズを新規に作ってる。
従来の様な枠やバナーを作るのには、今までのままで十分でしょ?ってこと。

>>686
> Player8でもかなりのことが出来たのに、Player11以降なんてメチャ多機能で
> 専門の人でも全く使わないクラス&関数もある筈。
互換性で残してあるPlayer8よりも、9以降に追加された機能のほうが超強力で重要だし、
特にAS3になったことは意味がでかい。
AS2を使う意味をほぼ感じなくなったから、そのたとえはどうかと思う。
今時ガラケー用のFlash作ることも無いし。
688Now_loading...774KB:2013/05/08(水) 19:23:28.06 ID:H/XnjHxk
>>687
レス、ありがとう
でも一機にadobeに日陰者にされたのも事実だと思うんだ。
CCのメインのソフトにもPS、DW、PE、AI、AE、IDなどはあるけどFLはないし。
WEBのメインのソフトからすら消えて。どこにあるんだよ状態。

以前は、アップデートの売りで全面押しだったのにさ。
モバイルの時みたいに、どっかのブラウザが対応しませんと言ったら、
「Flash-Playerの削除を勧めます」で一機に終わるんじゃないかと怖いよ。

FWもだけどFlashとか切り捨てみたいにして次は、Edge使ってねって
Adobeは馬鹿じゃねーのと思う。別ソフトでなくFLASHで同じ事できるようにしろよと。

AIRも名前をモバイル用FLASHとかにしけば
モバイルでも動くと言う事で撤退・衰退と一機に思われずにすんだわけで。
切り捨て新しい物を使ってねと言ってもついてこないっての!とadobeへの不満でした。
689Now_loading...774KB:2013/05/08(水) 21:16:08.91 ID:q2HlsVsj
>>688
> でも一機にadobeに日陰者にされたのも事実だと思うんだ。
Adobeが日陰者にしたくてしたわけじゃないと思うよ。
Jobsに叩かれまくって、iPhoneから閉め出されたのがでかかった、と思うんだけど。
FlashPlayerの機能とかセキュリティの問題を叩いてたけど、
結局、自分の庭で少しでも稼ぐのは許さないって事だったわけで。

> CCのメインのソフトにもPS、DW、PE、AI、AE、IDなどはあるけどFLはないし。
> WEBのメインのソフトからすら消えて。どこにあるんだよ状態。
たしかに、どこにあるんだって思ったw
ただ、FlashはWEBのメインストリームから外れたことは確かで、
その流れからするとしょうがないのかなぁ。PhoneGapが入ってるのが納得いかないがw

今時のWEBページを作ろうとすると、レスポンシブは必須だし、
アニメーションしたい客が居てもFlashを選択することはなくEdgeAnimateを検討するからね。
(ちなみにEdgeAnimateは登録だけすれば無償で使える)
CreateJSでも良いんだろうけど、まだまともに使ったこと無いからなぁ。

> 「Flash-Playerの削除を勧めます」で一機に終わるんじゃないかと怖いよ。
AIR、Flexもあるし、そういう終わり方は無いと思うよ。仕事で使ってる会社がどれだけあるのかとw

> FWもだけどFlashとか切り捨てみたいにして次は、Edge使ってねって
> Adobeは馬鹿じゃねーのと思う。別ソフトでなくFLASHで同じ事できるようにしろよと。
これは全く同意出来ない。
レスポンシブデザインとアニメーション作成、画像作成は全く別の事だし
Flashの閉じた世界の話だけじゃ無くなってしまった。Flashで作りたければCreateJSで一応出来るっぽい。

> AIRも名前をモバイル用FLASHとかにしけば  モバイルでも動くと言う事で撤退・衰退と一機に思われずにすんだわけで。
これはほぼ同意。
ただ、ブラウザ外で、実行環境のリソースを直に触れる=AIR
だから、区別した方が良いのかなとも思うんだよね。
690Now_loading...774KB:2013/05/09(木) 01:51:35.75 ID:sRDfWG1Y
>>689 ブラウザ外で、実行環境のリソースを直に触れる

前者だけなら通常のFlashPlayerでもOKだよ。
例) http://uproda11.2ch-library.com/3878731tz/11387873.zip

FlashDevelopとかは分からんが、FlashCSシリーズなら簡単に
ブラウザ用とは別個に任意の名前でFlashPlayerを作れる。

適当に入手したSWFをこれにドラッグアンドドロップすれば実行できる。
691Now_loading...774KB:2013/05/09(木) 10:18:32.07 ID:7wl9fR9n
>>690
> 前者だけなら通常のFlashPlayerでもOKだよ。
わざわざ知らせてくれるのはありがたいが、プロジェクタの事でしょ?
AIRであれば、ランタイムさえあれば(ここのハードルが高すぎる)直接実行できるし。

重要なのは後者の方なんだよね。
アプリ作るとなったらディスクの読み書きは必須だし、
OSネイティブのプロセスと通信出来ることとか出来ないとつらい。
692Now_loading...774KB:2013/05/09(木) 13:32:00.69 ID:p7KFh3cn
>>691
「ディスクの読み書きは必須」・・・ コレは同意できるが俺が言いたいのは、
共通の最新Playerが1個あれば無数のSWFがブラウザから独立して利用OKってこと。
693Now_loading...774KB:2013/05/09(木) 14:53:17.43 ID:7wl9fR9n
なんか噛み合わないが、
>共通の最新Playerが1個あれば無数のSWFがブラウザから独立して利用OKってこと。
なぜこれを強調して、伝えようとしているのかがわからない。

最初に>>689で書いた
>ただ、ブラウザ外で、実行環境のリソースを直に触れる=AIR
が良くなかったのかもしれないが、
前者・後者に分けられたら意味が無いんですよ。

こう書き直した方がいいかな。
> ただ、ブラウザの制限から外れた、OSネイティブのリソースを直に触れる=AIR
これだとわかってもらえるだろうか?
694Now_loading...774KB:2013/05/09(木) 15:15:18.91 ID:p7KFh3cn
>>693
度々スマン。言いたいことは分かる。

ただ俺は、 SWF=ブラウザ内のコンテンツ という固定概念が広がり過ぎてるので
これを是正したかったのよ。

AIRのOS・リソースへの親和性は俺も全く同意している。
695Now_loading...774KB:2013/05/09(木) 15:33:05.95 ID:FPfvAlzo
ActionScript3.0で質問です
ダイナミックテキストの縦の最大行数を知りたいのですが
maxscrollやmaxscrollVではエラーとなってしまいます
他にプロパティがあるのでしょうか?
よろしくおねがいします
696Now_loading...774KB:2013/05/09(木) 15:48:24.25 ID:7wl9fR9n
>>694
なるほど。

>>695
numLines

あと、エラーになったんなら、どんなエラーか書こうよ。
697Now_loading...774KB:2013/05/09(木) 16:49:43.17 ID:FPfvAlzo
>>696
ありがとうございます
先のプロパティが存在しないというだけでしたので
エラーを省略してしまいました すいません
698Now_loading...774KB:2013/05/09(木) 17:53:11.69 ID:7wl9fR9n
>>697
そのプロパティが存在しないとなると、numLinesも同様にエラーになると思うが。

コード示してよ。
699Now_loading...774KB:2013/05/09(木) 19:54:46.11 ID:DjeSDYY8
使用しているのは、as3のSharedObjectなのですが、
最近、これで値が記録出来ないと言う方が増えていまして、
理由をご存じの方いらっしゃるでしょうか。

「FlashPlayer の設定」によりエラーが返って来た時は、
設定の変更して下さいの表示をしていますので、別の理由の気がしています。

昔から記録できない人は居たのですが、
最近とくに増えていまして、以前は出来たけど今のPCでは
出来なくなったと言う方も居るので
何か心当たりの居る方いらっしゃるでしょうか…

ブラウザのせいかセキュリティのせいか原因を特定出来なくって…
もしかしたら私が日本語の変数名などを使ってるので特殊な例だったりするのかもしれませんが
700Now_loading...774KB:2013/05/09(木) 19:57:30.44 ID:KbEZ69OS
ブロックに画像を使ったテトリスのソースって
どう書くんすか?
701Now_loading...774KB:2013/05/09(木) 20:13:31.89 ID:7wl9fR9n
702>>700:2013/05/09(木) 21:24:07.28 ID:KbEZ69OS
flashというよりASとしてならおk。
703Now_loading...774KB:2013/05/09(木) 21:30:44.72 ID:7wl9fR9n
ブロックどうやって表現してるん?
スプライトならLoderで画像ロードするだけ。
704Now_loading...774KB:2013/05/09(木) 21:54:54.74 ID:p3mLd52V
>>700
やるとしたら、色数を落とした方がいいかも。 16bit 6万5536色とか
705Now_loading...774KB:2013/05/10(金) 17:12:10.43 ID:/1UqiTlU
>>698
下記の通りです

hoge.maxscroll
未定義である可能性が高いプロパティ maxscroll に
静的型 flash.text:TextField の参照を使用してアクセスしています。
移行の問題 : プロパティ maxscroll はサポートされないようになりました。
代わりに、TextField.maxScrollV プロパティを使用してください。。

hoge.maxscrollV
未定義である可能性が高いプロパティ maxscrollV に
静的型 flash.text:TextField の参照を使用してアクセスしています。

hoge.numLines
問題なし 最大行数取得可能
706Now_loading...774KB:2013/05/10(金) 19:23:56.93 ID:C45fXbRJ
あ、取れたんだw
TextField 使ってないのかと思った。
707Now_loading...774KB:2013/05/13(月) 04:00:10.62 ID:j3JIKPb9
サンプル作成にAIR書き出し試してみたけど、簡単なものならほんとに何も考えず動くんだなー
708Now_loading...774KB:2013/05/13(月) 04:05:25.99 ID:lYlm1GKR
AIRで自分用ツール作ったりキッチンタイマーつくったり色々やってたんだけどcygwinいれてシェルスクリプトでいいやってなってきてしまった。
もう歳かね…
709Now_loading...774KB:2013/05/13(月) 10:40:19.12 ID:PPObXK1f
>>707
書籍にGoogleストリートビューのAIRサンプルが載っていたけど、あっけなく出来ちゃったしw
710Now_loading...774KB:2013/05/14(火) 18:37:20.84 ID:ttwq3Amr
>>708
おれはBox2Dでアングリーバードもどき作ってるぞ。
今年30歳だが、田舎の肉体労働者なので休日のプログラミングが楽しみでしょうがない。

年齢は関係ないな。
仕事でパソコン触ってるやつは趣味ではきついやろうな。
711Now_loading...774KB:2013/05/22(水) 19:39:20.39 ID:z0vZzp2c
あれれ 回転はrotationだろ 傾斜のプロパティってなんだっけ?
ムービークリップが反転されてるかどうか調べたいんだけど
712Now_loading...774KB:2013/05/22(水) 19:51:32.06 ID:z5uc8bu2
>710
完成したら、やらしてね。
713Now_loading...774KB:2013/05/22(水) 22:45:44.17 ID:mWgoxmvB
ググればわかんだろ
714Now_loading...774KB:2013/05/24(金) 11:08:55.20 ID:pCITSPtS
Adobe Flash CS5 でAS3つかってます

if(currentFrame ==1)
trace(currentFrame);
else if(currentFrame ==5)
trace(currentFrame);
else if(currentFrame ==10)
trace(currentFrame);

このスクリプトを10フレームの長さのレイヤーに書いてルートに置いて再生してみると、1フレーム目だけトレースが動いて残りの2つが動きません。
2つのelse if条件を動かすにはどう記述したらいいんでしょうか?
715Now_loading...774KB:2013/05/24(金) 11:31:24.89 ID:7hm8e4tT
1フレーム目に記述してるからってことじゃないかい?

Event.ENTER_FRAMEを使ったらやりたい事ができる。
詳細はググれ
716Now_loading...774KB:2013/05/24(金) 11:50:52.95 ID:pCITSPtS
>>715
調べてみます。どうもです。

あともう一つ聞きたかったんですがたとえばルートに
var AAA:Boolean = false;
とフラグを用意しておいてルートにおいた10フレームの長さのmcをそのAAAというフラグがtrueになったら再生させるみたいなことをしたいんですがうまく動きません。
mcの中に

if(MovieClip(root).AAA)
play();
else if(!MovieClip(root).AAA)
stop();

と書いてあるんですが、ルートのフラグの切り替わりが反映されないんです。
stop();の部分は反映されていてmcの再生は停止したままになってるんですがフラグをtrueにしてもifの部分が動きません。
親のフラグの切り替わりを条件に子のif elseを動かすことってできないんでしょうか?
717Now_loading...774KB:2013/05/24(金) 12:45:51.73 ID:7hm8e4tT
結局同じ質問なわけだが。

原因は「1フレーム目でしか実行されていない」ってこと。
フレーム毎にそのスクリプトが実行されればやりたい事が出来るとおもわれるが。
718Now_loading...774KB:2013/05/24(金) 13:24:56.49 ID:pCITSPtS
>>717
そうですか。どうもです。
719Now_loading...774KB:2013/05/24(金) 19:24:28.49 ID:pCITSPtS
もう一つ質問です

例えばですが。
1フレーム目にmcAというインスタンス名のムービークリップを配置します
2フレーム目に1フレーム目とは別物のムービークリップを1フレ目と同じようにmcAというインスタンス名をつけ配置します
そしてmcAというインスタンス名をもったインスタンスの可視性を変更するボタンを用意して、クリックをすると1フレ目のmcAと2フレ目のmcA両方の可視性を変更できるようにしたとします。
こういう方法は避けたほうがいいでしょうか?2フレ目に配置したシンボルの名前はmcBとかにしてボタンも別のものを用意して、mcBの可視性を変更する、といった設定にしたほういいんでしょうか?

今作ってるものがメインタイムライン5フレーム使っていて、それぞれのフレームに別々のムービークリップを合計5つ配置していて、すべてmcAというインスタンス名をつけて配置している感じなんですが。
1フレーム目のシンボルには文字列が入っていて、2フレーム目にはまた別の文字列が、3,4,5フレーム目にも別の文字列が配置されている、という感じの設定になっています。
すべてのフレームのムービークリップをボタンを押すと同じ動きをさせる、という設定にしたいので今のようなことをしている感じです。
720Now_loading...774KB:2013/05/24(金) 19:43:18.65 ID:gUyK75Dy
>>719
避けたほうが良い、というか無理
まず、一度に同じ識別子をもつインスタンスが複数存在することはできない
次に、フレーム1に再生ヘッドがいるなら、フレーム1のmcAしか存在しないので
2フレーム目以降にあるmcAでもmcBでもいいが、それらを操作することはできない

そもそも、状態をフレームで分けて管理するのは一見楽そうだが
実はFlashの仕様などの知識が必要になり初心者には難しかったりする
1フレームにすべて配置する方が、考え方も整理しやすいと思う
721Now_loading...774KB:2013/05/24(金) 20:17:54.42 ID:pCITSPtS
>>720
うまく伝わりませんでした。すいません。

ルートのそれぞれのフレームにstop():を書いていて
別のボタンで、play();を実行するようにしています。そのボタンを押すとメインのタイムラインの再生がはじまり、stop();で止まります。
そして、ルートのフレームが切り替わると同時にそれぞれのフレームにあるmcAの中身がアニメーションする、という設定にしています。
なので例えの設定のswfを再生すると、

ルートフレーム1にあるmcA(シンボルA)のアニメーションが始まる→ボタンを押す(play()を実行)
→ルートのタイムラインが1から2に切り替わり止まる(2フレーム目のstop()で止まります)→ルートフレーム2にあるmcA(シンボルB)のアニメーションが始まる

といった設定にしています。
それで、ルートフレーム1にあるmcAとルートフレーム2にあるmcAの動きを制御するボタンを一つ作っていくといった感じのことをしています。
試したところエラーも出ずに動いているんですが、どうなんでしょうか?やめたほうがいいのでしょうか。
722Now_loading...774KB:2013/05/24(金) 20:41:31.35 ID:pCITSPtS
すいませんまた追加なんですが

たとえば中身が空っぽのシンボルを1フレーム目に配置してmcBとインスタンス名をつけておいて、
2フレーム目に中身のあるシンボルを配置して同じようにmcBと名前をつけて、(1フレーム目と2フレーム目の別々のmcBを用意)
mcBを操作するスクリプトを書いておく、みたいなことって普通にするもんでしょうか?
存在しないmcに関するASはエラーがでるのでそのためにダミーのインスタンスを用意しておくみたいなことです。
こんなことをするよりもっと効率的な方法があったりしますかね?
723Now_loading...774KB:2013/05/24(金) 23:07:49.86 ID:6MIhE3XS
動くのが正義だから、やめたほうが良いとかない。

> たとえば中身が空っぽのシンボルを1フレーム目に配置してmcBとインスタンス名をつけておいて、
> 2フレーム目に中身のあるシンボルを配置して同じようにmcBと名前をつけて、(1フレーム目と2フレーム目の別々のmcBを用意)
>>720が言うとおり出来ないわけだが。

タイムライン上の特定のフレームで実行したアクションでアクセスすれば存在しないMCが居るわけない。
説明が足りてない部分がまだあるとおもうが。

インスタンスとかシンボルとか普通に使ってるけど、
どうもオレオレ解釈が入っているっぽくて、本来の意味でない使い方をしている風に感じる。
724Now_loading...774KB:2013/05/24(金) 23:44:31.54 ID:aje2cRha
>存在しないmcに関するASはエラーがでるのでそのためにダミーのインスタンスを用意しておくみたいなことです。

とんでもねえことすんな
725Now_loading...774KB:2013/05/25(土) 00:51:21.99 ID:PJ+HUhdp
>>723
スクリプトとかまったくわからないのでどう説明したら一番伝わりやすいのかもわからない感じです。すいません。
シンボルはライブラリにあるムービークリップシンボルやボタンシンボルのことですよね。それをレイヤーに配置するとインスタンスになるという解釈をしてます。

例えばすべてのフレームで同じように動くボタンがあってそれを押すと

mcB.x += 10

と動くような設定をしておきます。
1フレーム目には中身が空のシンボルがインスタンスmcBになっているのでボタンを押しても表示上は何も変化がありませんが、それを
var mcB_x:int = mcB.x
と1フレーム上で変数に格納しておいて2フレームでそれを中身がある2フレーム目のmcB.xに代入する、みたいな使い方をしたいんです。

本当はもう少し長ったらしくてぐちゃぐちゃと込み入ったif elseの条件文の羅列があって、自分の作ってるものは全部で5フレームある上にmcの数ももっとたくさんあります。
たくさんある上に、あとから表示されるmcと常に表示されているmcの位置関係が関係したようなスクリプトになっています。
if(mcB.x > 50)
mcA.y += 2
みたいなものがある感じです。
なのでわざわざあとからでてくる数個のmcのためだけにボタン動作を変更するためのASを新しく用意するのは手間なのでこういう感じにしたいんです。
あとから変更があったときにも修正がしやすいですし。やめたほうがいいですかね?

>>724
やっぱりやばいですかね。あとからおかしなことになりますかね。
726Now_loading...774KB:2013/05/26(日) 07:04:09.07 ID:de8sZsBR
空のシンボルとやらの必要性が分からん
必要になるタイミングでaddChild すればいいんじゃないの?
あとやりたいのは順番にmcが動き出すような事?
それならフレーム移動させずasだけで制御したほうがごちゃごちゃにならんよ
727Now_loading...774KB:2013/05/26(日) 16:51:59.97 ID:Mmxva5Is
suzuka -> AIRSDK -> androidのapk は作れるが actionscriptが動かんかった
当然ながらadobeのflash練習サンプルswfからだとちゃんと動く
これはsuzukaがactionscript2だからか・・・
728Now_loading...774KB:2013/05/26(日) 20:24:54.78 ID:dlOyp4IS
suzukaなんか使ってんなよ
729Now_loading...774KB:2013/05/27(月) 01:35:27.25 ID:gyU4BWJG
>>728
suzukaってダメなの?
最近ASに興味を示した下郎なんだけど、良さげなツールを教えてよ
今はWonderflでソース引っ張ってきてFlashDeveropでいじったりしてるんだけど、これも変?
☆Wonderflは俺のパソコンではなんか遅い
730Now_loading...774KB:2013/05/27(月) 02:56:24.22 ID:WxG4vzx+
FDでいいだろ
731Now_loading...774KB:2013/05/28(火) 06:46:08.41 ID:vPHfbVkL
AS3,FlashCS5です。
ウインドウズメタファイル(Windows Metafile: wmf)をSWFで読み込み&表示する
方法を探しています。

このファイルはSWFと同じくベクター形式の画像で、今回はPowerPointで作りました。
ttp://miffysora.blogspot.jp/2013/05/svg.html

要領としては、外部SWFをloaderで読み込んで子オブジェクトとして親SWFに表示する感じです。
(基本書によく載ってるアレです)

CS5ならステージに読み込みとかで直ぐに表示されるのですが、SWF内での表示方法が
ググりましたが分かりません。 英語のサイトでもOKですのでヒントを頂けたら幸いです。
参考までに試しに作ったwmfをUpします。 
http://uproda11.2ch-library.com/389280cu9/11389280.wmf

ちなみにinkscapeでも表示できますが、手元のver0.46では一部歪んでしまいます。
732731:2013/05/28(火) 07:11:22.53 ID:vPHfbVkL
すいません。
引き続き調べたらWMFは悪意あるコードを仕込めるということでこれは取りやめます。
代わりにその後継のEMF(Enhanced Meta File)でお願いします。
http://e-words.jp/w/WMF.html

これも同様にCS5でそのまま読み込めます。 ※ただし、inkscapeのver0.46では不可
733Now_loading...774KB:2013/05/29(水) 15:26:03.54 ID:WJUArqpv
>722
第1フレームのステージの外に必要なムービークリップを配置し、
白い画像などをかぶせて隠しておけばよい。
734Now_loading...774KB:2013/05/29(水) 21:19:50.41 ID:ssRH27VT
AS3 FlashCS6 です。
タイマーイベントを使用して処理をさせていますが、タイマーの時間を可変にしたくて悩んでいます。
var intervalTime:int=1000;
var timerEvent:Timer = new Timer(intervalTime);
timerEvent.addEventListener(TimerEvent.TIMER,onStart);
function onStart(e:TimerEvent):void {
wark();
}
こんな感じです。これを
ボタンを押すことでintervalTimeの値を入れ替えて可変にしたいのですが、タイマーを生成した際の間隔時間を変えられないでいます。
タイマー生成後にタイマー間隔を可変化する良い方法があればお教えください。
735731:2013/05/30(木) 05:42:43.63 ID:0H9gYSYz
>>733
どうも。
任意のファイル名を指定してダイナミックに読み込み&表示したいです。
736734:2013/05/30(木) 08:59:05.92 ID:tC6uPyls
いろいろ試行錯誤していますが
newしたタイマーインスタンスの引数を後から変更ってできるのでしょうか?
737Now_loading...774KB:2013/05/30(木) 09:21:27.53 ID:O0OYKOHE
>>734
一旦 var timerEvent:Timer; と宣言だけしておいて、ボタンを押す度に
timerEvent = new Timer(intervalTime);  としたら? 

var timerEvent:Timer = new Timer(intervalTime);  だと固定されてしまう。
738Now_loading...774KB:2013/05/30(木) 09:52:04.43 ID:aKT3dOwv
それ普通にTimerのdelay変更すれば済む話と違う?
739737:2013/05/30(木) 10:02:08.31 ID:O0OYKOHE
>>738
あーそうだった。
740Now_loading...774KB:2013/05/30(木) 15:06:14.36 ID:ke2ZDykC
>>735
対応してないフォーマットなら、loaderによって動的にロードしてswf内に表示はできないと思うが、
対応してることは確認してあるの?
741731:2013/05/31(金) 12:47:57.11 ID:VhjvGmbx
>>740
すいません。 EMFは対象外でした。
これを読めるようなライブラリを探しましたが見つかりませんでした。
742Now_loading...774KB:2013/05/31(金) 14:21:26.69 ID:aREkQB0Y
AS3, FB4.6です。
WSDLを定義したWebサービスと通信するActionScriptのプログラムを作っています。
このプログラムでは、Flash Builderの「データとサービスに追加」機能を使って、
通信用のプロトコルを自動生成しました。
(WebServiceWrapperクラスを拡張したクラスが生成されます)

このプロトコルについて、接続時のタイムアウト時間を変更したいと考えています。
(デフォルトの20秒より長く設定したいです。)

通常、接続時のタイムアウト時間は、Socket.timeoutで設定できるようなのですが、
自動生成したプロトコル内では、Socketクラスを参照する方法がなさそうです。

どなたか変更方法をご存じでしたら、教えていただきたいです。
743Now_loading...774KB:2013/06/01(土) 16:37:50.35 ID:570OZ6tk
同じ関数からSpriteオブジェクト取得して、
そのSpriteにaddhildされたbitmapにはアクセスできますが、
bitmapdataにアクセスするとtest2ではなぜかできません。
原因がわからないので教えていただきたいです。

環境:flashbuilder4.7

var test1:Array = new Array();
test1.push( getSpriteOfBitmap( 1, 1 ) );
//できる
trace( test1[ 0 ].getChildAt(0).bitmapData);

var test2:Sprite = getSpriteOfBitmap( 1, 1 );
//できない
trace( test2.getChildAt(0).bitmapData);
744Now_loading...774KB:2013/06/01(土) 16:44:41.58 ID:570OZ6tk
>>743
追記です。

test2の型宣言をObjectにしたらbitmapDataにアクセスできるようになりました。
なお、なぜこれでよいのか根本的な理解はできていない模様。
どなたか教えてくださいませ。
745Now_loading...774KB:2013/06/01(土) 19:52:33.09 ID:Ca8llbnS
getChildAtの返り値の型がDisplayObjectだからじゃないかね。
DisplayObjectはbitmapDataってプロパティ持ってないから、
「だーめよ」って怒られてたりとか。

これはDisplayObjectを継承したBitmapなんだよー、って具合に
 (test2.getChildAt(0) as Bitmap).bitmapData
 Bitmap(test2.getChildAt(0)).bitmapData
↑2例みたいに明示的にキャストしてやればいいんじゃないかな。

ArrayやObjectの場合は中身はなんでも格納してくれるから、
とりあえずあるプロパティにはアクセスできちゃうからじゃない。
746Now_loading...774KB:2013/06/01(土) 20:21:22.11 ID:570OZ6tk
>>745
ありがとうございます!
Sprite型でもBitmapにasキャストしたらbitmapDataにアクセスできるようになりました。

可読性的にはArrayのほうも明示的にキャストしておいたほうがいいのでしょうか?
747Now_loading...774KB:2013/06/01(土) 21:17:41.27 ID:Ca8llbnS
Vectorつかうよろし
748Now_loading...774KB:2013/06/02(日) 21:19:05.07 ID:g7MBLPlH
CS6 AS3使ってます。
光源が微妙にゆらゆら揺れてる感じの演出が作りたいんですがどうするのがいいですかね?
自分が思いついたのがブレンドモードをスクリーンにした放射グラデーションのスケールを
スケール変化完了までの時間を毎回ランダムで出してツイーンで動かすとかなんですけど
いまいちです。もっといい感じのないですかね?
749Now_loading...774KB:2013/06/03(月) 02:51:56.27 ID:vvqJDR79
どうやりたいのか、ようわからん。

wonderflで探したほうがはやい。
750Now_loading...774KB:2013/06/03(月) 22:58:49.23 ID:srnQl+SH
bit演算について質問です。
24bitカラー値にアルファNumber型(0-1.0)を16進数の形で足したいのですが、
下記の?のとこを出すにはどうすれば良いでしょうか?
0x??ffffff

あ、256をalphaに書けてからtoString(16)すればいいのです?
751Now_loading...774KB:2013/06/03(月) 23:01:29.63 ID:srnQl+SH
>>750
訂正です
「255を掛けてから」です。
var alpha:uint = alpha * 255;
alpha1.0でtraceで出したらffになったのでいいのかしら
752Now_loading...774KB:2013/06/03(月) 23:10:59.82 ID:trSPF4OX
そだね
((alpha*0xFF)<<24)|color24
753Now_loading...774KB:2013/06/03(月) 23:11:17.85 ID:srnQl+SH
>>750,751
解決できたようですー
754Now_loading...774KB:2013/06/03(月) 23:12:58.59 ID:srnQl+SH
>>752
なるほど0xFFかけてもいいのですね、ありがとうございます!
755Now_loading...774KB:2013/06/04(火) 15:18:47.58 ID:77l3vQdP
>>749
そうすか ども
756Now_loading...774KB:2013/06/04(火) 18:50:40.65 ID:U5s6ykPM
757Now_loading...774KB:2013/06/05(水) 00:31:01.98 ID:7gUbvDSb
最新のFireFoxインスコして、そのブラウザでサインインしようとするとすぐ弾かれるみたいなんだけど
これってなんかの仕様?
IE、Chromeはサインインできるんだが・・・
758Now_loading...774KB:2013/06/06(木) 01:18:21.00 ID:iq2tmbqH
ArrayCollectionにクラスのインスタンスをいれ、そのArrayCollectionをdataProviderに設定しております。

テキストとクラスのSpriteオブジェクトを設定したいのですが、下記だとdataProviderにインスタンスが設定されてしまい、RendererのimageにSpriteを表示できません。

とは言え、
lLabel: 'test',
lClass: new ClassName().spriteObject
とやるとクラスメソッドが利用できないため不便です。
うまくやる方法があればご教授ください。
環境はflashbuilder4.7です。


var ac:ArrayCollection = new ArrayCollection();
var item:ObjectProxy = new ObjectProxy(
{
lLabel: 'test',
lClass: new ClassName()
}
);
ac.addItem( item );

var list:Object = document.Container;
list.itemRenderer = new ClassFactory( Renderer );
list.dataProvider = ac;
759Now_loading...774KB:2013/06/06(木) 01:48:01.44 ID:iq2tmbqH
>>758
追記です。
arrayCollectionには表示オブジェクトをセットして、
getQualifiedClassNameでクラスメソッド利用できるかも?
760Now_loading...774KB:2013/06/06(木) 02:55:49.28 ID:iq2tmbqH
>>758,759
Rendererのほうの指定をクラスの表示オブジェクトにしたら解決できました!
761Now_loading...774KB:2013/06/10(月) 09:25:48.65 ID:KSfWivsj
AS3,Player10(または10.1),CS4またはCS5

Inkscape のSVGを表示するSparkライブラリ ttp://www.libspark.org/wiki/seven/svgparser を
試していますが、付属の Sample.as を使ったところ、同じく付属のサンプルのSVGも手製の簡単な
SVG(ベタ塗りの矩形1個)も表示できません。
 ttp://www.libspark.org/browser/as3/SvgParser/trunk/src/Sample.as

Flaファイルは SvgDisplay.as(メインのAS?)と同じディレクトリに置いていますがコンパイルでは
下記のエラーが出ます。
  TypeError: Error #1034: 強制型変換に失敗しました。Line@28ae30e9 を svgparser.parser.IParser に変換できません。

※どのSVGファイルでも Line@28〜 で引っ掛かります。
どなたか助言願います。
762Now_loading...774KB:2013/06/10(月) 18:51:44.56 ID:IOsV+W5V
action script 3.0でノベルゲーム,アドベンチャゲーム,ギャルゲー用のライブラリやゲームエンジン、流用できそうなサンプルって何かありますか?
よろしくお願いします
763Now_loading...774KB:2013/06/12(水) 00:09:17.97 ID:f2jBNzxB
男ならフルスクラッチ

ごめんフレームワーク使ったことないです
764Now_loading...774KB:2013/06/12(水) 16:58:15.42 ID:jQCpwlmc
俺もフルスクラッチだな。
知ってたら使ったかもしれないけど。全く知らない。
765Now_loading...774KB:2013/06/15(土) 21:30:10.05 ID:5AB2yV+V
adobe flash cs5 as3つかってます
ビットマップファイルの扱いについて質問です。
ブラーをかけなければ100kbでブラーをかけると150kbくらいになるpngファイルがあります
解像度は1kです。この画像を256x256に縮小してファイルサイズを減らしてそれをフラッシュ上で1kに拡大してやれば丁度ブラーをかけた150kbの画像のようになります。
100kbのままでインポートしてあとからスクリプトでブラーをかけるか、先に別アプリでブラーをかけておいた150kbを読み込むか、それとも縮小した256の画像を4倍に拡大して使うか、どれがベストですかね?

それとAEで作った一枚100kb程度のアルファ付き連番pngを100枚くらいadobe flashのライブラリに読み込んで使ってみたんですが
メモリ使用量がひどいことになりました。ビットマップファイルを連続で表示するようなことはFlashではやらないほうがいいのでしょうか?
だとしたらベクターで代用するとかflvを使うとかそういう方法をとるべきなんでしょうか?
ちなみにこの100枚連番画像は最初の質問のpngファイルと同じものです。
766Now_loading...774KB:2013/06/16(日) 07:01:58.68 ID:MhyNHelq
環境flashbuilder4.7
spark.ListのdragCompleteが発火されずに困っております。

ListにitemRendererとdataProviderを設定しており、
Listのe.targetにdragイベントをくっつけております。

DragManagerを使った手動ドラッグの実装をしたいのですが、
ドロップまではtraceで受け取れてるのですが、Completeはだめです。

さんざんサイトを回ったのですが、情報がなく解決できていません。
有益なサンプルなどあれば教えてください。
767Now_loading...774KB:2013/06/17(月) 23:40:50.22 ID:ByI8uEh3
flashbuilderでロジックとデザインの分離で、
子コンポーネント間でのデータのやりとりってどうしてます?

メインmxmlのヘルパーでaコンポネントのイベントをbへ流すようにしていますが、
Bのmxmlではイベントを受け取れますがBのビューヘルパーでランタイムエラーになってしまいます。
プロパティeventHandlerはないです言われます。

メインに書くのは下記です。
document.idA.addEventlistener( "event", document.idB.eventHandler);
768Now_loading...774KB:2013/06/18(火) 14:18:29.54 ID:sGduKo/S
FLASH CC更新しました。
Flash lite とAS2.0完全に切ったみたいですね…
400Mくらいのファイルでも起動は早くなりました。

確認してませんが、create JSってas2.0で書かなくて良かったのかな・・・
769Now_loading...774KB:2013/06/19(水) 00:14:37.86 ID:esswd3YO
>>767
解決しました!
770Now_loading...774KB:2013/06/19(水) 09:55:50.96 ID:p8CiV+Np
CCインスコしたらプロジェクトウィンドウとAS3のオートフォーマットが見当たらない
新規プロジェクトの作成もないしまさか無くなったのかしら?
771Now_loading...774KB:2013/06/21(金) 11:19:24.21 ID:4+fUs6Te
CS4 actionscript3.0で質問です
※ stage.scaleMode=StageScaleMode.NO_SCALE;

フルスクリーンとノーマルを切り替えするボタンがあります
ボタンで切り替えする分には問題ないのですが
ESCキーを使い全画面から復帰するとhtml内のswfは
フルスクリーン化した時の大きなサイズのまま動いてしまいます
これはどのように対応したらよいでしょうか?
よろしくお願いします
772771:2013/06/21(金) 12:27:40.90 ID:4+fUs6Te
stage.addEventListener(FullScreenEvent.FULL_SCREEN, hoge);
解決致しました
773Now_loading...774KB:2013/06/22(土) 19:39:42.76 ID:8Ki7a4jB
AS3が大好きです
774Now_loading...774KB:2013/06/23(日) 03:10:05.34 ID:KNtZrLXD
PC9821-AS3
775Now_loading...774KB:2013/06/24(月) 22:32:15.76 ID:pY2F8N4J
環境:flashbuilder4.7

各コンポーネントにコントローラを設定していて、
コンポAが生成された後にコンポBへAの情報を渡したいのですが、
コンポーネントの読み込み順が変わるとバグってしまいます。

どちらもcreationCompleteで子オブジェクトを作成し、
メインコントローラからapplicationCompleteイベントがですパッチされるのを待ちます。

コンポAが作成されたのちにコンポBへ単独で読み込みイベントをデスパッチすれば解決するとは思いますが、
もっと簡単な方法があればご教授くださいまし。
776Now_loading...774KB:2013/06/25(火) 05:53:55.71 ID:/VTG8Yh8
>>775
受け側の初期処理をcreationCompleteで処理するようにして回避できました。
777Now_loading...774KB:2013/06/25(火) 22:12:19.47 ID:nWZZei4u
携帯のアプリを作ろうと思うのですが、FlexモバイルプロジェクトとActionScriptモバイルプロジェクトの違いがよくわかりません。
違いを教えてください。
ゲーム関係ならActionScriptモバイルプロジェクトで作った方がいいのかしら?
778Now_loading...774KB:2013/06/25(火) 23:13:55.22 ID:rVP4T/Is
FlexだとMXMLでUIを定義できる。
ゲームアプリならあんまり関係ないかも。

StarlingとFeatherだっけ、こっち調べると幸せになれるかもしれない。
779Now_loading...774KB:2013/06/25(火) 23:20:07.66 ID:nWZZei4u
ありがとうございます。
描画の処理とかに違いがあまりないなら、情報の多いFlexモバイルプロジェクトで
開発しようかなと思います
780Now_loading...774KB:2013/06/25(火) 23:24:00.21 ID:nWZZei4u
StarlingとFeatherですか、調べてみます。
781Now_loading...774KB:2013/06/28(金) 12:32:24.50 ID:TSZgMv/B
CS6 actionscript3.0使用してます
占いのFlashを作ろうと思い、条件式を記入したのですが、コンパイルエラー(1151: 定義 kekka (名前空間 internal) にコンフリクトが存在します。)が出てしまい上手くいきません
学校の課題で少しやっているのみなのであまりFlashのことを理解出来ていません
間違っている点を教えていただけると幸いです

var kekka = Math.floor(Math.random() * 2);
if (kekka == 0) {
gotoAndStop(25);
} else {
gotoAndStop(26);
}
782Now_loading...774KB:2013/06/28(金) 18:59:51.96 ID:VjG4s0Zn
783Now_loading...774KB:2013/06/28(金) 19:00:45.64 ID:Mu1L8C2t
こいつぁひでぇwww
784Now_loading...774KB:2013/07/01(月) 12:55:18.84 ID:De4FUvqL
GIF→SVG生成ライブラリについて
(OS:WinXP,FlashProCS5,AS3[場合によってはAS2も])

題にある通り、GIF画像をSVGデータに変換(生成)できるライブラリや技術を探しています。
一応ググって VectorMagic ttp://coliss.com/articles/build-websites/operation/design/562.html
は見つかったのですが、これを実際にASで再現したいです。
 ※ちなみに、ここで得られたSVGをローカルにDLするにはメアド登録が必要です。

どなたか、そういう技術やヒントをご存知無いでしょうか?
大抵AS3かと思いますが、AS2であってもOKです。
785784:2013/07/02(火) 13:40:16.23 ID:ZEbtdN46
(自己レス)
以下の方法を試しましたがダメでした。

-- 直接SVG化は理想だがその方法は不明なので、1)→2)でSWFを経由することにした。

1) SWFフォーマット画像ファイルをローカルに保存とするAdobe AIRアプリケーション
ttp://digitechlog.com/2009/01/16/the-tutorial-on-how-to-save-swf-file-from-an-image-bitmap-in-adobe-air.html

2) SWFをSVGに変換: SWF2SVG
http://wonderfl.net/c/sPjI

漫画レベルの簡単なトラック絵柄のGIFで試したところ、1)はOKでしたが2)で変換できず
 WARNING: excess bytes: 2, Tag: DefineBitsJPEG4, Index: 1
 Error: Error #2030: End of file was encountered. at flash.utils::ByteArray/readUnsignedShort()
以下多量のエラーメッセージがAIRで出ました。

SWF2SVG単体ではどうなのかと思い、Illustratorによる単純SWFとFlashCS3で作った3DアニメSWF
を適用したところ問題なくSVGが生成出来ました。

SWF2SVGは予めpath情報を含んでいる場合のみ適用可能なのかも知れません。

現時点ではこんなことろです。
786Now_loading...774KB:2013/07/09(火) 14:47:08.01 ID:nxHD6wLL
Flashとかどうなるんすか今後
787Now_loading...774KB:2013/07/09(火) 16:30:11.66 ID:6ImlKSGh
AIRとしてならまだ生き残る。
デスクトップ用途はほぼゲーム向け。
788Now_loading...774KB:2013/07/10(水) 01:41:10.99 ID:+gZt3hiN
大規模ゲームとかはやっぱまだまだFlash独壇場だしな
HTML5だとBGMファイル隠せなかったり面倒だし
モバイルアプリは結構AIRあるよ
789Now_loading...774KB:2013/07/12(金) 19:21:02.88 ID:9OBcj0Hc
AIRってiOSでも使えるんだね
アップルから散々叩かれてたイメージだけどジョブスも死んだしまた息を吹き返しそうすね
790Now_loading...774KB:2013/07/15(月) 21:52:20.89 ID:vgLX0y9o
TextInputとSpriteでカスタムのNumericStepperを作成していて、
UIComponentを継承したクラスでTextInputとspriteステッパー生成してaddChildしてます。

これをコンポーネントとしてitemrendererで使用したいので、
下記のようにMXMLでCustomStepperのtextにアクセスできるようにしたいのですが、どのようにすればいいのでしょうか。

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

<itemrenderer>
<test:CustomStepper text="500"/>
</itemrenderer>

環境:flashbuilder4.7
791Now_loading...774KB:2013/07/15(月) 23:41:10.04 ID:vgLX0y9o
>>790
設計ミスのようです。
解決できそうですー
792Now_loading...774KB:2013/07/17(水) 03:10:57.53 ID:tgAH/aAP
>>789
ジョブスが息吹き返すって言ってるのかっておもったw
793Now_loading...774KB:2013/07/19(金) 01:14:00.10 ID:Mfnb2cMk
FlashBuilderのスクロールの中にスロットのリールのような機能を作ることは可能でしょうか?
出来たらやり方を教えてください。
794Now_loading...774KB:2013/07/19(金) 11:50:02.60 ID:bv9b5A6f
いみがわからん。

iOSのUIPickerview のような物が欲しいのではなくて?
795Now_loading...774KB:2013/07/20(土) 19:16:06.66 ID:v3rqxABl
as3初心者です。
データプロバイダを使って、datagridの中のitemrendererの中のボタンのlabelを変更することは可能でしょうか。
datagridは下記のような形で、[Bindable]になっているのはgriddata、変更しようとしているのは設定値がchangeになっているlabelです。
よろしくお願いします。

<mx:DataGrid id="adg1" x="38" y="452" width="1130" height="322" alpha="1.0" backgroundAlpha="0.0" dataProvider="{griddata}">
<mx:columns>
<mx:DataGridColumn width="105" dataField="reg" headerText="header">
<mx:itemRenderer>
<mx:Component>
<mx:Button width="22" height="14" label="change"
click="outerDocument.openDataWindow(event);"
borderColor="#3C86B6" color="#FFFFFF" fillAlphas="[1.0, 1.0]"
fillColors="[#3E3F40, #000000, #3E3F40, #000000]" fontSize="12" fontWeight="normal"
textRollOverColor="#E3007A" themeColor="#00ADED">
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
</mx:columns>
</mx:DataGrid>
796Now_loading...774KB:2013/07/21(日) 18:35:02.72 ID:OW36j71w
>>795
griddata(ArrayCollection?)を元にscriptで変えるしかないんじゃないかな。

itemRenderer Banana Systemsでググってみよう。
パート1が読めば実装できそうです。

※当方も同じく初心者ですので悪しからず
797Now_loading...774KB:2013/07/21(日) 20:00:11.36 ID:lZaZpZ5/
>>795
label="{data.key}"
でいけなかったっけ
798Now_loading...774KB:2013/07/21(日) 20:37:54.10 ID:OW36j71w
>>797
あ、そういうことか。。
もっと動的に変えたいのかと勝手に解釈してた。

>>796は無視してください。
799Now_loading...774KB:2013/07/22(月) 08:43:56.51 ID:76jEN3Y3
795です。返信ありがとうございます。

やろうとしていることは、データベースからArrayCollectionに対応した形でデータを取ってきて、
ある行に特定のデータAが存在すればその行のボタンのlabelをhogeに、Aが存在しなければfugaにする処理です。

ここまでは、labelfunctionを使ったら行ごとにlabelが変化しなくて失敗。
currentのボタンのrowindexを取ってそれを元に同じ行のAを取得しようとしたら、
datagridは表示されている行のインスタンス使い回しっぽくて使いたいindexが取れずに失敗、という感じでした。

>> 796、797
ありがとう。情報調べたり試したりしてみる。
800Now_loading...774KB:2013/07/22(月) 08:58:58.80 ID:76jEN3Y3
続きです。

データベースから取ってくる方法としては、

var result:SQLResult = state.getResult();
var gd2:ArrayCollection = new ArrayCollection(result.data);

で、データベースからのデータをgd2に一度入れて、

for(var i:int = 0; i < gd2.length; i++){

griddata.addItem({a:gd2[i].aaa,b:gd2[i]bbb});

}

みたいな形でやろうとしています。
このaddItemで、ボタンのlabelを指定するのが一番やりたい事で、
上に書いたlabelfunctionを使う方法や、curenntのrowindexを取得する方法は、
そっちがなかなか上手くいかなかったので試行錯誤の中でやろうとした方法です。
801Now_loading...774KB:2013/07/22(月) 09:39:10.53 ID:76jEN3Y3
795です。解決しました。

label="{data.A}" を使って同じ行にあるAを一度labelに指定して、
その後ボタンにdataChange="button1_dataChangeHandler(event)"を設定して、
ボタン要素内のスクリプトでlabelに文字列があるかないかによって、
改めてlabelの文字列を指定しなおしました。

ありがとうございました。
802Now_loading...774KB:2013/07/22(月) 11:58:49.90 ID:tJ2HeZjD
そんな面倒な事しなくて良い気がするが。
判定用のメソッド準備してやって呼び出せばいいんじゃない?

lblfunc(data:Object):String な判定用メソッド準備して、
その中でdata
["key"]が存在するか判定して、label設定文字を返す。


あとは
lable="{outerDocument.lblfunc(data)}"
で呼んでやれば良いと思う。

表示のためのだけのデータなら、>>800のように、データ複製する過程で表示用の列を作っちゃうと言う手もある。
それだったら、最初からSQLで列作ってしまえとも思うが。
803Now_loading...774KB:2013/07/22(月) 15:29:30.28 ID:QVqXCRGu
label="{(data.hasOwnProperty('A'))? 'hoge' : 'huga'}"
こんなんだとできる?
804Now_loading...774KB:2013/07/22(月) 15:58:39.55 ID:tJ2HeZjD
プロパティが存在=データが存在
だったらそれでもいけると思う
805Now_loading...774KB:2013/07/22(月) 18:34:33.57 ID:76jEN3Y3
795です。

最終的に802さんの方法を使わせてもらいました。
処理が二度手間にならなかった事と、条件判定にdata.A以外のデータも使えるのが良かったです。

803さんの方法だと、全部hogeになりました。
data.Aに入っているのが空文字等の場合でもデータが入っていると見なされたからでしょうか。

色々とアドバイスいただきありがとうございました。
806Now_loading...774KB:2013/07/22(月) 21:07:41.24 ID:QVqXCRGu
>>805
そりゃhasOwnProperty関数が、プロパティがあるかどうかを判定する関数だからね。
807Now_loading...774KB:2013/07/23(火) 19:27:59.34 ID:osJt0zJf
はじめまして。質問よろしいでしょうか。
Flash側でSimpleButtonを作って、MCのOBJと同様にそのボタンにプロパティを持たせる方法は
ありますか?
どなたかご教授いただければ幸いです。宜しくお願いします。

package{
import flash.display.MovieClip;
import flash.display.SimpleButton;
import flash.events.MouseEvent;

public class Main3 extends MovieClip{
public function Main(){
var btn0:Btn0 = new Btn0();
btn0.x = 275;btn0.y = 200;
btn0.num = 0;//←ダイナミックなインスタント変数みたいに出来ないですか?
addChild(btn0);
btn0.addEventListener(MouseEvent.MOUSE_DOWN,onMouseDown);

var btn1:Btn1 = new Btn1();
btn1.x = 275;btn1.y=300;
btn1.num = 1;//←こちらも
addChild(btn1);
btn1.addEventListener(MouseEvent.MOUSE_DOWN,onMouseDown);
}
public function onMouseDown(event:MouseEvent){
var thisBtn:SimpleButton = event.target as SimpleButton;
trace(thisBtn);
trace(thisBtn.num);//←イベント発生させたボタンに割り当てた数値を返させたい
}
}
}
808Now_loading...774KB:2013/07/23(火) 19:59:44.53 ID:QxhHVHq0
SimpleButtonを継承した自分独自のクラス作って、それにnumってプロパティを用意してあげれば可能だが
809Now_loading...774KB:2013/07/23(火) 20:15:20.73 ID:osJt0zJf
808さん、ありがうございます!
初心者なので、クラスの継承という発想は全くありませんでした
参考書を調べてみます〜〜〜!!!
810Now_loading...774KB:2013/07/24(水) 18:10:33.85 ID:8RHl5bdC
AS3,FlashProCS4
テキストフィールドの Event.CHANGE(文字変更)での setSelection で質問です。

ステージ上にテキストフィールド(tFd)を置いて、中身が変更される度に、setSelection で全部の文字列に
ハイライトを適用しようとしているのですが、変更の度に文字列長が1(たまに2)になってしまいます。

  ※実際、テキストフィールドの文字も1文字か2文字しか表示されない

ASはテキストフィールドを tFd.text = "最初の文字列"; として

tFd.addEventListener(Event.CHANGE, tFd_onChange);// 文字変更の際にイベント発行
function tFd_onChange(evt:Event):void {
trace( "文字長さ= " + tFd.text.length );// これが毎度1か2になってしまう
tFd.setSelection(0, tFd.text.length );// 全部の文字を選択状態にする(ハイライト化する)
}

どうすべきでしょうか?
811810:2013/07/24(水) 20:14:40.02 ID:8RHl5bdC
自己レス)
原因が分かりました。 全選択の状態でキーインすると自動的に1文字になっちゃいます。
なので、別のタイミングで全選択状態にすればOKでした。
812Now_loading...774KB:2013/08/05(月) 19:05:24.83 ID:Ggd2baG5
win7 CS6 です
var a0101:String = "";
var a0102:String = "";
var a0201:String = "";
var a0202:String = "";
・・・
var a1001:String = "";
var a1002:String = "";
と初期設定をしたい場合に、繰り返し処理で初期設定を行いたいのですが、
頭が熱暴走してしまい方法が思いつきません。
ぜひ、お教えくださいよろしくお願いいたします。
813Now_loading...774KB:2013/08/06(火) 01:37:11.53 ID:giM5Twcm
どういう使い方したいのか不明なのでなんとも言えないですが。。

配列で管理してfor文で回せばいいのでわ

var ar:Array = new Array( a0101, a0102, a0103, a0104);
for( var i:int = 0; i < ar.length; i++ ){
ar[ i ] = "";
}

以降はar[ idx ]で参照

StringだけならVector配列で
814Now_loading...774KB:2013/08/06(火) 01:50:45.81 ID:giM5Twcm
補足:
ar[ "a" + i ]で連想配列にすれば変数いらないね

var max:int = 7777;
var ar:Array = new Array();
for( var i:int = 0; i < max; i++ ){
ar[ "a" + i ] = "";
}


ar[ "a0" ]
ar[ "a1" ]
ar[ "a2" ]


ar[ "a7776" ]
ar[ "a7777" ]
815Now_loading...774KB:2013/08/06(火) 08:14:43.48 ID:ZtX/060i
>>814
ありがとうございます。やってみます!
816Now_loading...774KB:2013/08/09(金) 02:49:50.53 ID:GftXWv4L
flashbuilder4.7でカスタムコンポーネントで作ってるのですが、
TextInputってSpriteに追加できないんです?

SpriteやTextFieldは親スプライトに追加できますが、TextInputができなくて困っとります。


簡単にですが、ソースはこんな感じです↓

class test extends UIComponent {

btn = new Sprite();
btn.graphics.beginFill(~);
btn.graphics.drawRect(~);
btn.graphics.endFill();

t = new TextInput();
t.text = "foo";


sp = new Sprite();

//できる
sp.addChild( btn );
//できない
sp.addChild( t );

this.addChild( sp );
}
817Now_loading...774KB:2013/08/09(金) 07:33:07.30 ID:Bd/EkVZc
TextInput → UIComponent → Sprite 継承順がこうだから
UIComponentを実装しても使えないお 直接TextInputを継承してもだめかい?
818Now_loading...774KB:2013/08/09(金) 11:22:29.32 ID:rEpioE3B
>>817
ありがとうございます!

>>816みたいに実装したい場合は、textinputを継承したクラス内でspriteを作ってそこにthisを突っ込めばいいのでしょうか?

1つのコンポーネントみたいにしたいのですが。。
819Now_loading...774KB:2013/08/09(金) 11:43:47.03 ID:Bd/EkVZc
質問が曖昧でイマイチ意味がわからんお
方法てのは人それぞれなんだから好きなようにやればおk

その>>816の「できない」って時のエラーはどんなんだった?
コンポーネントてのはライブラリ内に読込んでおかないとエラーになるんだよな
import fl.controls.TextInput;//クラスファイル内でインポートしただけじゃだめ
820Now_loading...774KB:2013/08/09(金) 18:30:23.78 ID:2XBAkp78
確かにわからんw
addChildもふるいしな。
821Now_loading...774KB:2013/08/09(金) 21:47:57.85 ID:rEpioE3B
レス遅れましたサーセン

>>819
PANELっぽいカスタムコンポーネントをASで作りたくて、Uicomponentを継承したクラス内で、
コンテナ用のSpriteを作り、そのSpriteにボタンやshape、textfield、などを突っ込んで、コンテナをuicomponentにaddChildしたかったのです。
が、TextInputはスーパクラスなのでできないということを教わりました。

TextInputを継承したクラス内でコンテナをaddchildすれば1つのコンポーネントで完結するのかなぁと思いった次第です。

>>820
addchildが古い…だと?
最近のas3では一体なにが起こってるんです?
822Now_loading...774KB:2013/08/09(金) 21:58:34.46 ID:V4FE+BVp
>>819
追記:
ただ表示されないだけでエラーなどはでないです。

TextInputをコンテナSpriteではなく、Uicomponentを継承したクラスにaddChildすると表示されます。

これは継承関係が問題ってので納得しますた。
importはspark.component.TextInputだったはずです。

TextInputを継承したクラスでdisplayobjectをaddChildできちゃうの?ってのが正しい質問かもしれないです。

OOP初心者なのでシャキっと質問できなくてすんません。
823Now_loading...774KB:2013/08/09(金) 22:23:25.21 ID:2XBAkp78
addElementだろと。
addChildだとコンパイル時に警告ださない?
>importはspark.component.TextInputだったはずです。
sparkのコンポーネントつかってるわけだし。

>TextInputを継承したクラス内でコンテナをaddchildすれば1つのコンポーネントで完結するのかなぁと思いった次第です。
これもわからん。
> >>816みたいに実装したい場合は、textinputを継承したクラス内でspriteを作ってそこにthisを突っ込めばいいのでしょうか?
の説明だとはおもうが。
824Now_loading...774KB:2013/08/09(金) 22:59:05.29 ID:GftXWv4L
>>823
警告でないですね。。なんでだろ。

こんなんです。
spにいろんなものいれて表示させたいだけなのです。

◆as

public class PopupWindow extends UIComponent
{
public function PopupWindow() {
super();
this.init();
}
private function init():void{
var sp:Sprite = new Sprite();
sp.graphics.beginFill( 0xffffff );
sp.graphics.drawRect( 0, 0, bw, bh );
sp.graphics.endFill();
this.addChild( sp );
}

◆mxml
<view:PopupWindow id="pw" ~~~~~/>
825Now_loading...774KB:2013/08/09(金) 23:24:03.36 ID:2XBAkp78
>spにいろんなものいれて表示させたいだけなのです。
結局 >>816がやりたいことに近いってことか。

MXML使って良いなら、MXMLコンポーネントが楽じゃない?
描画部分はASで書くとして。
なんかそれだとまずい部分があるんだっけ?

そういえば、Flex4.10きたね。
http://sourceforge.jp/magazine/13/08/08/145000
826Now_loading...774KB:2013/08/09(金) 23:42:10.82 ID:GftXWv4L
>>825
UIComponentを動的に追加する場合はaddElementっぽいですね。
カスタムコンポーネントで
<view:PopupWindow id="pw" ~~~~~/>
とクラス指定しておくと、addElementする必要ないのかも。

外部スクリプト化してるので、mxmlコンポーネントでtextinputだけわけると、
いちいちイベントデスパッチしなきゃいけなくて、数が増えてくるともうただただ面倒なので悩んでござんす。

とりあえずデブ防止のため走ってきます。
827Now_loading...774KB:2013/08/10(土) 00:09:12.11 ID:1YPKlDTs
やりたいことはわかったような気がするが、

> 外部スクリプト化してるので、mxmlコンポーネントでtextinputだけわけると、
> いちいちイベントデスパッチしなきゃいけなくて、数が増えてくるともうただただ面倒なので悩んでござんす。
の部分を考えるとやっぱりわからん。

<view:PopupWindow id="pw" click="hoge.onClickHandler(event)"/>
のようにイベント書くのが面倒なのか、
pwがTextInputでないために、pwの中に作ってるTextInputへのイベントを
書き直してやらないといけないから面倒なのか。

どっち??
IMXMLObject使ってるとか言わないよな?
828Now_loading...774KB:2013/08/10(土) 00:20:37.50 ID:1YPKlDTs
> pwがTextInputでないために、pwの中に作ってるTextInputへのイベントを
> 書き直してやらないといけないから面倒なのか。
なんかおかしいな。

pwの中に置いたTextInputへのイベントを橋渡ししなきゃならんから面倒なのか。

かな。
829Now_loading...774KB:2013/08/10(土) 01:06:00.44 ID:H2OjpeVL
>>827
IMXMLObject使ってます・。・

>>828
IMXMLObject使ってるので、タグにイベントハンドラは書いてないっす。


IMXMLObjectを実装したControllerでタグid.addEventしてる感じです。

なのでTextInputだけ他のコンポーネントとして置くと、
TextInputControllerから入力されるたびにPopupWindowControllerへデスパッチしなければならないのですっ!

もしかして、、わたくし根本的にやりかた間違ってます??
830Now_loading...774KB:2013/08/10(土) 01:28:11.43 ID:XVNiEtee
UIComponentのサブクラス、というかmx系のクラスはいろいろ変わってるからな
素直にUIComponentの方にaddElementしたほうがいいんじゃないの?
831Now_loading...774KB:2013/08/10(土) 02:03:44.44 ID:H2OjpeVL
>>830
そうですね。
別コンポネントに分けるくらいなら同一クラス(UIComponent)に追加したほうがラクそうです。
flashbuilderって情報少なすぎて、どういう書き方が主流なのかわからんですわ。

仕事とかでas3使う人なんですか?
832Now_loading...774KB:2013/08/10(土) 02:36:56.39 ID:1YPKlDTs
うーん、コントローラーへ分離までやってるの、になんかちぐはぐな・・・

> なのでTextInputだけ他のコンポーネントとして置くと、
> TextInputControllerから入力されるたびにPopupWindowControllerへデスパッチしなければならないのですっ!
>>824をみるかぎりでは自作PopupWindow内にTextInputを置きたいわけだよね?
そしたら、引用部分のようなことにはならんかと。
内部においてない前提となると、TextInputコントローラーの存在がよくわからなくなる。
TextInputとPopupWindowの両方が置いてある親コンポーネントのコントローラーでの話だろうし。

Flex4(Spark)使ってるわけだから、自作コンポーネント作るのなら、
GroupかSkinnableContainerを親にするのが楽かと。
MXMLコンポーネント作るとウィザードの初期表示がそうなるでしょ?

> flashbuilderって情報少なすぎて、どういう書き方が主流なのかわからんですわ。
Flex・FlashBuilderの情報は今はすくないけど、昔の情報でもかなり役に立つと思うよ。
おれもどういう書き方が主流なのかはわからんけど、IMXMLObjectを拡張した奴を使ってる。

俺は仕事でも使ってる。
ちなみに>>830とは別人
833Now_loading...774KB:2013/08/10(土) 03:52:03.97 ID:H2OjpeVL
>>832
内部に置きたいのですが、
UIComponentを継承したクラス内でSprite(displayObject)にはTextInputは入れられないってとこまできました。

> GroupかSkinnableContainerを親にするのが楽かと。
親っていうのは継承ってことです?
Groupを継承しても、結局中で作ったSprite(displayObject)にTextInputをaddChildできないのでは??

俺の先生になってください!!
834Now_loading...774KB:2013/08/10(土) 11:29:05.36 ID:1YPKlDTs
親がSpriteであってほしい理由がわからんのだよね。
下記のように直接graphicsをいじってもいいし、
Spriteを入れたいのであれば、
SpriteVisualElementかUIComponentで一枚ラップしたなかに入れればいいわけだが。

<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
creationComplete="creationCompleteHandler(event)"
width="400" height="300">
<fx:Script>
<![CDATA[
import mx.events.FlexEvent;

protected function creationCompleteHandler(event:FlexEvent):void {
this.graphics.beginFill( 0xff0000 );
this.graphics.drawRect( 0, 0, this.width, this.height );
this.graphics.endFill();
}
]]>
</fx:Script>
<s:TextInput text="aaa"/>
</s:Group>

>先生
一日単価4万ならやるw
835Now_loading...774KB:2013/08/10(土) 16:32:51.99 ID:H2OjpeVL
>>834
んーー、すいません、なんかうまく説明できてないみたいです。
◆CustomPopupWindow.mxml
<custom:CustomNumericStepper id="aaa"/>
<custom:CustomButton id="bbb"/>

ボタン押下でコントローラー側でTextInputの値をデスパッチ。
CustomNumericStepper.asにTextInputとSpriteで作ったStepperを追加して、<□> ←こんな感じのを作りたいときに、この箱としてUIComponentを使っていたのですが、TextInputが表示されずどうしようと思っていたのです。

public class CustomNumericStepper extends UIComponent
{
public function CustomNumericStepper() {
      sp1 = new Sprite();
      sp2 = new Sprite();
tinput = new TextInput();
this.addChild( sp1 );
this.addChild( sp2 );
this.addChild( tf );
tf.adddEvent( Event.Change?, textInputEvent );
sp1.adddEvent(MouseDown.Evt, mde);
sp2.adddEvent(MouseDown.Evt, mde);
}
}
あれ、これ、期待どおり動くんじゃ。なにで悩んでたんだ俺は。。あああ!これで座標計算がラクになるように、spriteでラップして
this.container = new Sprite();
this.container.addChild(sp1,sp2,tf);
this.addChild( this.container );
としたらtfが表示できなかったんです!

> 先生
時間5千円で8時間ならぜひお願いしたいですわw
836Now_loading...774KB:2013/08/10(土) 17:10:38.09 ID:XVNiEtee
ヽ(・ω・)/ ズコー
まぁよかったな
837Now_loading...774KB:2013/08/10(土) 18:22:45.06 ID:H2OjpeVL
UIComponentの座標基準で各子要素の位置設定できるのかな。
みなさんありがとうございました!!
引き続き精進します!
838Now_loading...774KB:2013/08/12(月) 23:07:01.21 ID:plP9r/Y1
839Now_loading...774KB:2013/08/12(月) 23:09:37.97 ID:plP9r/Y1
わざわざSpriteに入れなくてもUIComponentに対してgraphicsつかえたんですね。。
spriteの親だから当然ちゃ当然ですけど。

みなさま本当にありがとうございました
840Now_loading...774KB:2013/08/14(水) 01:46:12.38 ID:p7PVMmyg
環境:flashbuilder4.7
カスタムコンポーネント内でイベント登録はできるのですが、他のカスタムコンポーネントへデスパッチすることができなくて困っております。

コンポネントBのサイズ(幅高)をコンポネントAで設定できるようなものを作っています。

値の渡し方は、Eventを拡張したクラスにプロパテーを追加して、カスタムコンポネントAで設定しボタン押下でコンポネントBへデスパッチし、
コンポーネントBのコントローラー側(IMXMLObjectを実装)で受けるつもりだたのですが無反応です。。

コンポネントAはUIComponentを継承したasファイルです。
841Now_loading...774KB:2013/08/14(水) 02:10:39.67 ID:p7PVMmyg
>>840
コントローラー側(IMXMLObjectを実装)で、ApplicationにaddEventしたらとれました。

けれども、
なぜコンポネントABともに、parentDocumentからdispatchしないといけないのかがわかりmせぬ。。

■コンポネントA(イベントデスパチ)
var cec:CustomEvent = new CustomEvent( CustomEvent.CUSTOM_EVENT );
cec.cWidth = Number( cwTinput.text );
cec.cHeight = Number( chTinput.text );
this.parentDocument.dispatchEvent( cec );

■コンポネントB(Controller)リスナ登録・ハンドラ
this.container = document as Container;
this.container.parentDocument.addEventListener( CustomEvent.CUSTOM_EVENT, handler );

private function handler(e:CustomEvent):void {
e.cWidth;
e.cHeight;
}
842Now_loading...774KB:2013/08/14(水) 10:29:45.81 ID:GYGJvBYV
コンポーネントはよくわからんな コンポーネント専用のアクセッサーが
色々用意されてるみたいだし そういうルールなんじゃね?

詳しい解説は先生の出現を待て
843Now_loading...774KB:2013/08/14(水) 14:03:19.63 ID:8jFWp5OH
コンポーネントAは、コンポーネントBを知らないから
逆も然り
844Now_loading...774KB:2013/08/14(水) 20:26:44.26 ID:AVObNHcc
元々どう書いてたのかが分からんと何とも言えんな
でも、サイズ変化ぐらいなら、わざわざカスタムイベントなんて作らんでも
出来合いのイベントあると思うんだけども
845Now_loading...774KB:2013/08/14(水) 20:44:40.64 ID:+fczqYUF
>>843
なるほど、目から鱗です。こういうものなのですね、ありがとうございました。
カスタムコンポネントmxmlにカスタムコンポネント(asクラス)をタグで置き。
さらにそのas内でボタンみたいのを置いて、

それが押されたときにコンポネントBにデスパッチするときは、

this.parentDocument.parentDocument.dispatch
になるてことで問題ないです?

あれ、てことは同一コンポネント間は自由にデスパッチできるのです?

※もちろんタグそのものが押される場合はコントローラー側からデスパッチになりやる。
846Now_loading...774KB:2013/08/14(水) 21:14:45.54 ID:GYGJvBYV
>同一コンポネント間は自由にデスパッチできるのです?

試せw
847Now_loading...774KB:2013/08/14(水) 23:21:33.45 ID:p7PVMmyg
>>846
ありがとうございます。
できなかったっです。

書き方がわるいのでしょうか?

<親mxml>
<custom:CustomA />
<custom:CustomB />
</親mxml>


コンポネントA.as(UIComponent)
this.dispatchEvent( customEvent );

コンポネントB.as(UIComponent)
this.addEventListener( customEvent, test);


this.parentDocumentはnullってました、両方のコンポネントのcreationCompleteを待たないといけないのかしら
848Now_loading...774KB:2013/08/16(金) 19:18:44.22 ID:PYk81eV2
お盆休みだろうに頑張るなぁ

> this.parentDocument.parentDocument.dispatch
> になるてことで問題ないです?
その条件では問題無いが、そんな事しなくて良い。
そんな事するとカスタムコンポーネントにする意味が無くなる。
素直に親MXMLまで含めてコンポーネント化を検討した方が良いとおもうが。

そうしないとこういう事になる↓
> this.parentDocumentはnullってました、

これについては正しい解決方法ではないが、親MXML側のcreationPolicyを弄ると回避は可能。

また、子から親へのイベント伝達については
イベントフローをググってみると良いかとおもう。
Eventの第二引数を調べろ。
849Now_loading...774KB:2013/08/16(金) 21:34:51.32 ID:5JfNc/7E
>>848

> 親MXMLまで含めてコンポーネント化
そうですね。。
なにもわからぬまま始めたので、
カスタムコンポネントmxmlにさらにカスタムコンポネントmxmlを追加していってたのでこんな状態に陥ってます。
これからは、applicationに置くタグは全部asクラスで作っていこうと思いますた。

イベントのバブリングは書いてある記事をいくつか見たけどスルーしてました。
要するにthis.parentDocument.parentDocument.をバブリングで検知するってことなんですね。
やっと理解できました。

ありがとうございました!
850Now_loading...774KB:2013/08/17(土) 13:55:12.56 ID:mBPd0VET
AS2.0ではステージ上にムービークリップを貼付けたら識別子で参照出来ていましたが
AS3.0ではどうやって参照すればよいのでしょうか?
やりたい内容はステージ上にムービークリップを貼付けて、
gotoAndStopで貼付けたMCのフレームを2フレームに移動させたいんですが。。。
851Now_loading...774KB:2013/08/18(日) 07:19:13.37 ID:glYGB8j7
そういう基本的な部分はたいして変わらんお
同じようにインスタンス名で参照できる
852Now_loading...774KB:2013/08/19(月) 10:31:54.64 ID:Acw8gT2A
>>849

> これからは、applicationに置くタグは全部asクラスで作っていこうと思いますた。
なぜこういう結論になるのかがわからん。
853Now_loading...774KB:2013/08/19(月) 20:33:43.33 ID:Al/3xTOv
>>852
えっ、
コンポネント内でのイベントのやりとりがラクだから?

コンポネント内でnewしたインスタンスにaddEventすれば、parentDocument.dispatchEventで常にデスパッチできますし。

さらにその子コンポネントからdispatchすることはほとんど無いと思いますし、インスタンス.プロパティーで値も取れるので、それをデスパッチすればいいかなと。。?
854Now_loading...774KB:2013/08/19(月) 21:24:58.45 ID:Acw8gT2A
そもそもMXMLを使わない or MXMLでは出来ない というのであればわかるが、
Applicationタグだけ作って、MXMLで配置できるような設定までを含めた
ASクラスを作るとか面倒だと思うんだがなぁ。
IMXMLObject使ってるならイベントの部分だけ抜き出すだけだし、
ViewとControlが分かれてわかりやすくなると思うが。

何ならコンポーネントだけのプロジェクトに分ければいいだけだし。
855Now_loading...774KB:2013/08/20(火) 20:39:44.52 ID:0exGSMjK
>>854
カスタムコンポネントmxml内に子カスタムコンポネントmxml置かれている場合、controlも二つ必要になるのがちょっと嫌なのと。

MXMLを使ったデザインをいまいち理解していないってのが大きいです。

list系itemrendererで各itemにカスタムコンポネントやカスタムイベントを付けるとき苦労しました。
だた始めからpureASで作ったほうが。。という甘えです。

ちゃんと理解すればそっちのほうがラクなのかもしれないっすけど。
856Now_loading...774KB:2013/08/21(水) 01:21:39.90 ID:ck3Y8Pn0
>>855
>だた始めからpureASで作ったほうが。。という甘えです。
甘えとは思わんし、ASのみで作るなら理解できる。

が、Applicationタグを使うと書いてあるわけだから、MXMLを使うわけでしょ。
なんでそんな面倒なことをするかなぁと。

前後するが
> カスタムコンポネントmxml内に子カスタムコンポネントmxml置かれている場合、controlも二つ必要になるのがちょっと嫌なのと。
これ、おかしくないかい?

<MyComp1>
  <MyComp2 id="a"/>
  <MyComp2 id="b"/>
  <MyComp2 id="c"/>
</MyComp1>

こんな感じであった場合、MyComp1、MyComp2にそれぞれについて
コントローラが1つになるように作ると思うんだがなぁ。
a,b,cの各コンポーネントのイベントやらを書くのはMyComp1側だし。
子のカスタムコンポーネントがいくらMXMLとASに別れていても、それで一つのコンポーネントでしょ?
857Now_loading...774KB:2013/08/21(水) 11:45:53.68 ID:ygvaOC4V
>>856
ありがとうございます。

<MyComp1>
<MyComp2 id="a"/>
<MyComp2 id="b"/>
</MyComp1>

この場合、MyComp1にはコントローラを設定しますが、
MyComp1Controller implements IMXMLObject{
a.addEventHandler( ~~ );
b.addEventHandler( ~~ );}
}
MyComp2がmxmlでその中にさらにカスタムコンポネントがある場合、MyComp2にもコントローラが必要になりますよね?
コントローラものすごい数になりません?
いずれにせよ、ディスパッチイベントする時にparentDocument.parentDocument....となるのが嫌なのです。
バブリングで簡単解決できちゃうならそのほうが管理しやすそうですが。。

知識不足なのもので、
<Application>
<MyComp1 id="comp" />
</Application>
として、a,b,cのクラスを作り、機能を盛り込んだMyComp1.asを作ればいいかなという結論に達しました。
この場合、textInputの値をaクラスのプロパテーで保持しておき、MyComp1でnew a().propertyでアクセスできるようにしておけば、
デスパッチ処理はMyComp1からnew b().label.textへ代入するのがラクかなと。。

> Applicationタグを使うと書いてあるわけだから、MXMLを使うわけでしょ。
Aplicationタグ(本体?)は必ず必要じゃないのですか??
858Now_loading...774KB:2013/08/22(木) 15:21:38.89 ID:pxyJxotH
端的に言うと
> ディスパッチイベントする時にparentDocument.parentDocument....となるのが
こうなる書き方がおかしい。

コンポーネント化する=部品として再利用可能な部品を作る
わけだから、今回のように親、親の親が何であるかを知っておく前提だったら
コンポーネント化のメリットが薄れてしまうでしょ。
だからよく言われる「疎結合」を意識的に行わないといけないと。

IMXMLObjectを使うのは見た目とロジックを分離するためだよね。
そこまでやってるのに、なぜこの部分は無頓着なのかがわからないと言いたかった。

> MyComp2がmxmlでその中にさらにカスタムコンポネントがある場合、MyComp2にもコントローラが必要になりますよね?
> コントローラものすごい数になりません?
各コンポーネントに付き1つ必要なのが「ものすごい数」とは思えないのだが。

> バブリングで簡単解決できちゃうならそのほうが管理しやすそうですが。。
試してみたらどうだろうか。

> 知識不足なのもので、
> ※ 中略 ※
> デスパッチ処理はMyComp1からnew b().label.textへ代入するのがラクかなと。。
MyComp1のインスタンスがa,b,cじゃないの?よくわからない。

イベント使うんだったら、値の受け渡し自体をイベントでやればよくないかい?
DataEventとかTextEventとかあるわけだし。

> Aplicationタグ(本体?)は必ず必要じゃないのですか??
ActionScriptプロジェクトってのがあってだな
859Now_loading...774KB:2013/08/24(土) 03:25:00.57 ID:4OOGJe2h
最近またActionScript始めました。
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
を使用して読み込み後に処理したいのですが
ブラウザでは(Chrome, IE10, FireFox)読み込み後の処理が行われません。

でもGOM Playerなら動くのです。昔のソースを見ても同様の処理で動いてました。
Flex3.0->4.0 とか ブラウザの環境も3年前と違いますし
何か仕様が変わってる部分があったら教えてください。
860Now_loading...774KB:2013/08/24(土) 11:04:05.98 ID:zR+oAhD5
わからんのでエスパー回答で

イベントリスナーじゃなく
loaderInfoの info.bytesLoaded と info.bytesTotal を毎フレームチェックする方式でもだめ?
861Now_loading...774KB:2013/08/24(土) 11:07:51.76 ID:zR+oAhD5
すまん infoてのはメンバ変数 private var info:LoaderInfo;
もしくはLoaderInfo型のタイムライン変数
862Now_loading...774KB:2013/08/25(日) 21:25:36.82 ID:WDLRL+Dq
Eseclockという時計のFlashを動かそうと試みているのですが、
fl.video.FLVPlayBackクラスのインスタンスを生成しているタイミングでエラーが発生してしまいます。

■環境
Flash Develop 4.4.2
Flash player 11.7
Windows8 64bit

■fl.swcライブラリ
以下のサイトからダウンロードしたfl.swcをライブラリとして指定
http://evolve.reintroducing.com/downloads/

■該当の処理(ソースコード)
//FLVの読み込み
_flvp = new FLVPlayback(); // ここでエラーが発生
_flvp.autoPlay = false;
_flvp.autoRewind = false;
_flvp.scaleMode = VideoScaleMode.EXACT_FIT;
_flvp.addEventListener(VideoEvent.READY, _flvpRedyHandler);
_flvp.load("movie.flv");

■発生したエラー
TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。
at fl.video::FLVPlayback()[D:\DEVELOP\test_lib\fl\video\FLVPlayback.as:875]

fl.video.FLVPlayBackクラス自体、fl.swcをライブラリパスを指定するだけでは使用できなかったり
するのでしょうか。
863Now_loading...774KB:2013/08/26(月) 11:37:26.67 ID:KogwjEKu
> at fl.video::FLVPlayback()[D:\DEVELOP\test_lib\fl\video\FLVPlayback.as:875]
エラーがライブラリ内で出ているように見えるから
そのあたりは大丈夫なんじゃない?
864Now_loading...774KB:2013/08/27(火) 03:06:58.58 ID:H4JI2JTn
実現可能かどうかを教えて下さい
FLASHで外部サイトのHTMLソースデータを取得し、
そのHTMLソースデータをjavascriptの変数へ受け渡すことは可能ですか?

javascriptで外部サイトのHTMLソースデータは取得不可能なので

FLASHであれば可能なのかな?と考えております。
865Now_loading...774KB:2013/08/27(火) 03:55:19.47 ID:4ABNHrnf
jsで外部html取得できるんじゃ?
866Now_loading...774KB:2013/08/27(火) 04:12:39.65 ID:H4JI2JTn
>>865
無理ですよ
867Now_loading...774KB:2013/08/27(火) 07:08:22.25 ID:4ABNHrnf
868Now_loading...774KB:2013/08/27(火) 09:31:41.31 ID:H4JI2JTn
>>867
実際にやってみたら分かると思いますが
クロスドメイン通信はjavascriptでは不可能ですよ?
869Now_loading...774KB:2013/08/27(火) 18:51:12.26 ID:VzZqw6eJ
as3の質問です
MCをクリックするとそのMCが点滅するものを作りたいです

var blinkTimer:Timer = new Timer(50,8);
blinkTimer.addEventListener(TimerEvent.TIMER, blink);

mc.addEventListener(MouseEvent.CLICK,mouseHandler);
function mouseHandler(event:MouseEvent):void
{
blinkTimer.start();
}

function blink(event:TimerEvent):void
{
mc.visible = !mc.visible;
}

このように作ったのですが、1回目のクリックでは正常に点滅するのですが
2回目以降クリックすると点滅してくれません(MCが消えっぱなし)
どのように改善すれば2回目以降も点滅するでしょうか?
870Now_loading...774KB:2013/08/27(火) 18:59:41.92 ID:4ABNHrnf
>>868
じゃあそれを解決する検索すればいいじゃない
http://d.hatena.ne.jp/cool2design/20110121/1295592901
871Now_loading...774KB:2013/08/27(火) 19:02:10.98 ID:4ABNHrnf
>>869
2回目以降のクリックイベントが重複してるんじゃ?
それでタイマーイベントも重複して変になってると
872Now_loading...774KB:2013/08/27(火) 19:07:55.25 ID:H4JI2JTn
>>870
それは通信先に対して自分が権限や許可を持っていたら出来るでしょうよ

要はJSではこちらから一方的に外部ドメインのhtmlソースを引っこ抜くことは無理
873Now_loading...774KB:2013/08/27(火) 20:56:44.35 ID:4ABNHrnf
>>872
そこのページにFlashに関しても色々書いてあるよ
ってかあなたのやりたいことのタイトルで記事書いてあるんだから試してみればいいのに
874Now_loading...774KB:2013/08/27(火) 21:27:16.26 ID:H4JI2JTn
>>873
だから無理だっっーの

別サイトの相手の許可を得ずにJSでHTMLソースを取得するのは不可能

あんたはSAME DOMAIN POLICYとか
CROSS DOMAIN POLICYも知らない素人か?
875Now_loading...774KB:2013/08/27(火) 22:12:41.44 ID:gepB3Fzc
>>873はできるっていいたいのかどうかがいまいちわからん。

「あなたのやりたいこと」も正しく認識できていないようだが。
876Now_loading...774KB:2013/08/27(火) 22:22:11.68 ID:4ABNHrnf
そのクロスドメイン制限を突破する方法が書いてあるんだから、
それで無理なら無理なんじゃね
877Now_loading...774KB:2013/08/27(火) 22:47:27.25 ID:gepB3Fzc
「クロスドメイン制限を突破する方法」が書いてあるのは間違いないようだが、
クロスドメイン制限を突破して「なに」が得られるのかがわかってないってことか。
878Now_loading...774KB:2013/08/28(水) 00:30:44.19 ID:9HSWIrln
偉い人、教えてください
ttp://www5f.biglobe.ne.jp/~kenmo/program/SLG/move/move.html
このプログラミング解説ページにあることをAS2でやりたいのですが、
本文にある「再回忌」処理の部分が理解できません
自分でできたのはfor文で自分の座標の縦と横の配列検索をすることだけです
どうか馬鹿でもわかるように教えてください
よろしくお願いします
879Now_loading...774KB:2013/08/28(水) 01:06:20.11 ID:vKozp5h2
「再帰」のことだとは思うが、質問するときには用語は正しくつかおうよ。

再帰については
http://ja.wikipedia.org/wiki/%E5%86%8D%E5%B8%B0
>ある手続き中で再びその手続き自身を呼び出すこと
でわかってもらわないと辛いものがあるなぁ。

あとは、そこのページに書いてあるとおりの関数
searchとsearch4を準備してやれば終わりのような気がするんだが。
880869:2013/08/28(水) 01:09:01.88 ID:CjrHy3W1
>>871
ありがとうございます
どう記述すれば重複しないようになりますか?
881869:2013/08/28(水) 01:17:57.65 ID:CjrHy3W1
var blinkTimer:Timer = new Timer(50,8);
blinkTimer.addEventListener(TimerEvent.TIMER, blink);
blinkTimer.addEventListener(TimerEvent.TIMER_COMPLETE, onComplete);

mc.addEventListener(MouseEvent.CLICK,mouseHandler);
function mouseHandler(event:MouseEvent):void
{
   blinkTimer.start();
}

function blink(event:TimerEvent):void
{
   mc.visible = !mc.visible;
}

function onComplete(event:TimerEvent):void
{
   blinkTimer.stop();
}

タイマーの繰り返し終了時にblinkTimer.stop();と記述すれば重複はなくなるかと思って上記のようにしましたが
それでも変わりませんでした
882Now_loading...774KB:2013/08/28(水) 02:34:06.10 ID:VwrXZn08
>>881
.stop() の変わりに .reset() 使ってみるとか?

あと2回目以降消えたままってのは、2回目のクリック直前はもちろん mc は表示されてるんだよね?
883Now_loading...774KB:2013/08/28(水) 02:51:42.99 ID:KvQAvjeZ
>>877
違うだろ

>>874にも書いてあるように
取得先のサイトにもテコ入れしなきゃ
実現できないってことだろ
884Now_loading...774KB:2013/08/28(水) 04:40:27.70 ID:CjrHy3W1
>>882
resetでいけました
ありがとうございました。助かりました
885Now_loading...774KB:2013/08/28(水) 09:08:45.98 ID:vKozp5h2
>>883
> 取得先のサイトにもテコ入れしなきゃ
> 実現できないってことだろ
そこは当たり前のことで、そういうことをいってるんじゃない。

JSONPで突破した場合、それで得られるものはそいつがほしい「HTML」じゃないだろと。
886Now_loading...774KB:2013/08/28(水) 14:55:56.35 ID:1dIMRnTY
なんのためのクロスドメインだよ
許可されてないのにパクろうとすんなよ…
887Now_loading...774KB:2013/08/28(水) 18:24:11.87 ID:bnzWzLdc
コミュ障同士のやりとりってすげえな。
888Now_loading...774KB:2013/08/28(水) 20:23:55.40 ID:gkASUwNP
結論言っちゃえばFlashでも無理だろ
889Now_loading...774KB:2013/08/30(金) 16:11:42.92 ID:8Qj5hPQs
ここの住人でも答えられない質問って結構あるんだなw
890Now_loading...774KB:2013/08/30(金) 17:41:20.18 ID:TlKhztRs
お、おう
891Now_loading...774KB:2013/08/31(土) 01:36:44.41 ID:3/y63M75
答えられないってか、実現できないんじゃないか?
892Now_loading...774KB:2013/08/31(土) 18:46:59.49 ID:d7akHP6W
var a:* = b;

これってどういう意味?
893Now_loading...774KB:2013/08/31(土) 22:56:26.19 ID:pU/PjHWG
aの型は決めずに、bの型に対応させるって意味
894Now_loading...774KB:2013/09/02(月) 13:55:24.95 ID:uF+DIdzr
FlashのCS6で開発しています。

FileReference.load()でファイル選択ダイアログを開いたときに
windowsプロジェクター(exe)でパブリッシュした場合
ダイアログの開くボタンが"保存"と表示されてしまいます。

Ctrl+Enterで起動した場合や、HTMLパブリッシュした場合には
きちんと開くと表示されます。

FileReference.load()で表示されるダイアログで"開く"と表示される解決方はありませんでしょうか。
CS4までは問題ありませんでした。
895Now_loading...774KB:2013/09/02(月) 15:20:48.79 ID:Vza/8x0R
win7 CS5.5です
var list1:ListMc=new ListMc();
addChild(list1);
としています。

newするムービークリップが増えてきたので、配列とfor文を使おうと思っています。
var McNumArray:Array = ["1","2","3","4","5"];
for (var i:int=1; i<=5; i++) {
}
この後に、ムービークリップをnewする時と、addCholdを行う場合に。変数listに配列の数字を結合する場合にどうすればいいのかわかりません。
ぜひお教えください。よろしくお願いいたします。
896Now_loading...774KB:2013/09/02(月) 15:23:03.79 ID:CuCkMVfG
>>895
getDefinitionByName
897Now_loading...774KB:2013/09/02(月) 15:43:25.90 ID:6LTtmwnk
>>894
ほんとだ。回避方法は無いだろうね。Adobeにバグ報告するとか?ちなみにbrowse()だよね?
どうしても気になるなら、CS6のAIRのランタイム付き書き出しで書き出すとかかな。
ファイルサイズ恐ろしくでかくなるけど。
898Now_loading...774KB:2013/09/02(月) 16:01:29.05 ID:uF+DIdzr
>>894
browse()でした。

もしくは、CS4でターゲットをFlash Player 11で
パブリッシュする方法はありませんでしょうか。
899Now_loading...774KB:2013/09/02(月) 16:41:33.54 ID:6LTtmwnk
そりゃ無理な話だよ
900Now_loading...774KB:2013/09/02(月) 19:57:15.63 ID:iLGgN3YI
横から&未確認でスマンが、FP10をターゲットにしたら問題なかったりしないかな
901Now_loading...774KB:2013/09/03(火) 13:11:36.68 ID:X+Uolkag
初歩的な質問ですいません
hogeMc1.x = 100;
hogeMc2.x = 100;
--->
hogeMc30.x = 100;
としているコードを、for文を使って処理したいと思っています
hogeMcの後に付ける連番の付け方を教えてください
902Now_loading...774KB:2013/09/03(火) 15:35:29.78 ID:90VqMC9P
>>901
配列アクセス演算子
903Now_loading...774KB:2013/09/03(火) 17:12:19.62 ID:6pLW4wUb
this["hogeMc"+i].x = 100;
904901:2013/09/06(金) 16:56:02.84 ID:8PXnKp7Q
配列アクセス演算子で解決しました!
ありがとうございました
905Now_loading...774KB:2013/09/10(火) 18:07:09.15 ID:M5W+vy1N
var Ax:MovieCrip=Object(root);
Ax.list1.x=100;
Ax.list1.y=100;
を配列アクセス演算子を使い
var Ax:MovieCrip=Object(root);
var hNum:int=1;
this["Ax.list"+hNum].x=100;
this["Ax.list"+hNum].y=100;
としてみましたが、エラーがでてしまいます。
たぶん、変数Axと配列アクセス変数の部分がおかしいためと思いますが、
ネットで検索してもこれという解決策が見つけられません。
よろしくお願いいたします。
906Now_loading...774KB:2013/09/10(火) 19:51:45.51 ID:uANehZFs
>>905
まずthis.Ax(インスタンス変数)がないので
this["Ax.list1"]にはアクセスできない

つぎに階層はドットでつなげず配列アクセスでつなげなくてはならない
this["Ax"]["list1"]


1,Ax["list"+1].x
2,Axをインスタンス変数にした上でthis["Ax"]["list"+1].x
このどちらか
907Now_loading...774KB:2013/09/16(月) 21:50:18.69 ID:Bek87XKL
お前らの培った、その技術と経験が、
数年後には、ただの忌むべきゴミ屑になると思うと…………
責めるならadobeを責めろ。
908Now_loading...774KB:2013/09/17(火) 02:00:37.86 ID:tpuTExuS
ゴミと思ってくれるとうれしい。
残存者利益が多い方がいい。
909Now_loading...774KB:2013/09/17(火) 08:04:17.82 ID:Dj/w946U
AS3はEECMAScriptを拡張したものだから別に無駄にならないしな
adobeが潰れたらFlashに関する技術はどこかコミュテニィにでも全部渡す言ってるし終わることもないだろ
910Now_loading...774KB:2013/09/21(土) 17:25:46.76 ID:Zxk9supw
>>909
AS3は今のところ移植先無いだろ。
無駄にならないのはAS1。
911Now_loading...774KB:2013/09/21(土) 17:31:25.95 ID:UE/Xr56P
AS1って今どこで使うの?
912Now_loading...774KB:2013/09/26(木) 16:07:59.86 ID:lq9HpavC
Object(root).Mcのフレームで
var a:int=0; var b:boolean=false;
var test:testClass=new testClass);
test.testFnc(a,b);
と変数を宣言して,外部クラスを呼び出して引数にて変数を受け渡して
package{
public class testClass {
var C:int; var D:boolean;
pjublic function testFnc(C,D){
C++;
D=true;
return
}
}
}
外部クラス内で値を変えて、元のObject(root).Mcに変更した値を戻したいのですが上手くいきません。
よろしくお願いいたします。
913Now_loading...774KB:2013/09/26(木) 23:11:18.65 ID:CC+WNg8/
適当に書きすぎ。
コンパイル通るtestClassのソースをそのまま張ってよ。
914Now_loading...774KB:2013/09/27(金) 02:16:54.42 ID:kxgO+f4s
くそわろた
エスパーするとプリミティブ値は参照で渡されないのでreturnで返すしかない
その場合返り値として取れるのはひとつだけなので
もしくはObject(のような参照を渡せるもの Objectはオススメしないので自分でデータクラスつくったほうがいいかも)を渡して操作する
var obj:Object={a:0,b:false};
test.testFunc(obj);
trace(obj.C);

testFunc(obj:Object):void{
obj.a++;
obj.b=true;
}
915Now_loading...774KB:2013/09/27(金) 02:20:09.51 ID:kxgO+f4s
×trace(obj.C);
◯trace(obj.a);
916Now_loading...774KB:2013/10/02(水) 19:04:01.70 ID:ixKYVTRj
TextFieldで"をrestrictしたいときはどうやれば良いですか?
917916:2013/10/02(水) 19:08:38.62 ID:ixKYVTRj
自己解決しました

var str:String = '"';
テキスト.restrict = "^" + str;

これで行けた
918Now_loading...774KB:2013/10/02(水) 20:14:42.51 ID:Faa3qX0D
>>917
おめ
たぶんだけど、バックスラッシュで"をエスケープしてもいけるかな
テキスト.restrict = "^\""; みたいな感じで
919Now_loading...774KB:2013/10/03(木) 04:00:21.73 ID:wOOr2WPC
ループ素材のFlvファイルをNetConnectionでループ再生させています。
再生される事自体は出来るのですがループ時に一瞬映像が切れてしまいきれいにループしてくれません。
コードを再生部分だけにしても症状は改善されず、また再生自体はされているので調べても該当問題が見つかりませんでした。
(CS5/player9でパブリッシュしていた時はなめらかでしたが、必要な命令上CS6/player11.2で実行する必要があるんです)
Flaファイルと素材等をアップさせていただきました。使用バージョンはCS6、AS3.0、player11.2です。
http://www.dotup.org/uploda/www.dotup.org4548752.zip.html
どうぞよろしくお願い致します。
920Now_loading...774KB:2013/10/03(木) 05:38:55.68 ID:wOOr2WPC
補足です。
CS5にFP11.2のswcを導入してパブリッシュしてみたところ同様の問題が発生しました。
FP10に戻したら今まで通り正常に動作しました。
しかしながら右クリック入力を利用したいためFP11.2以上が必要です。
FP11.2以上でもちらつかずなめらかに再生させる方法はないでしょうか?
921Now_loading...774KB:2013/10/09(水) 07:26:54.15 ID:K/d5KrIo
Objectの長さを取得するにはどうしたらいいでしょうか?
JavaScriptでいう Object.keys(myObj).length のようなものに該当するやり方を教えてください
922Now_loading...774KB:2013/10/10(木) 07:11:01.79 ID:CFgsO7to
for in で列挙するしかないんじゃないかな。
ぱっと調べた感じObject型ではそういうメソッドはないように見える。
自分でObject継承したクラス作ってkeysメソッド作ってやればいいんじゃない?
923Now_loading...774KB:2013/10/10(木) 07:36:35.40 ID:WD/gP7wM
>>922
ありがとうございます
やはりありませんか・・・
自作することにします
924Now_loading...774KB:2013/10/10(木) 17:18:55.54 ID:dttp78pV
希望とはちょっと違うと思うけど、describeTypeってのがあるでよ
925Now_loading...774KB:2013/10/10(木) 18:40:08.42 ID:WD/gP7wM
>>924
仰る通り、ちょっと違いましたが、
わざわざありがとうございました。
926Now_loading...774KB:2013/10/12(土) 13:39:15.85 ID:9I9I0Hj/
ActionScript3のエントリーポイント(初めに実行されるメソッド)ってどこよ。

教えろください。
927Now_loading...774KB:2013/10/12(土) 17:36:13.93 ID:zPY5afhV
ドキュメントクラスのコンストラクタ
928Now_loading...774KB:2013/10/12(土) 23:37:30.61 ID:o2PZI5TM
>>927
ありがとうございます。
929Now_loading...774KB:2013/10/13(日) 14:45:03.82 ID:/28Iw1Pg
ローカルのhtmlをブラウザで出すのはどうやるんだっけ?
var req:URLRequest = new URLRequest( "/help.html" );//help.htmlは本体swfと同階層
navigateToURL( req, "_blank");//ブラウザは立ち上がるがホームで設定したページが表示されてしまう
930Now_loading...774KB:2013/10/18(金) 16:39:54.47 ID:MemT2L45
文字コードの変換を行うにはどうしたらよいでしょうか?
UTF-8 から Shift_JIS や Shift_JIS から UTF-8 に変換したいです。
931Now_loading...774KB:2013/10/18(金) 17:54:30.38 ID:G9485Ttu
932Now_loading...774KB:2013/10/18(金) 17:59:29.47 ID:G9485Ttu
おれにも知恵を貸してくれお!
PNG画像を同階層に置いて外部読込みすると正確な色を抽出できないんだ みんなもテストしてみてくれ
以下を1フレームにコピペ 同階層にwhite.png(真っ白一色)と名前付けたPNG画像置く
var loader:Loader = new Loader();
loader.load( new URLRequest( "white.png" ) );//同じ階層に置いた真っ白なPNG-8画像(アルファ無し)
loader.contentLoaderInfo.addEventListener( Event.COMPLETE, function( e:Event ){
var obj:DisplayObject = e.currentTarget.content as DisplayObject;//目視用の型変換
var bm:BitmapData = new BitmapData( obj.width, obj.height, false );//falseは透明無し
bm.draw( e.currentTarget.content );//塗り(そのまんまコピー)
//bm.draw( obj, null, null, null, null, false );//色々やってもだめだ…
addChild( obj );//目視用
trace( bm.getPixel( 1, 1).toString(16) );//ffffffと出るはずがfdfdfdとなる なんで?????
} );
933Now_loading...774KB:2013/10/18(金) 18:17:43.76 ID:G9485Ttu
追記
画像をgifにしgifで読込むとffffffと出る 他の色でも正確に抽出される
なぜなんだろ 画像ソフトの設定なのか もしくは bm.drawでのコピーがまずいのか?
PNGでの色抽出を成功させたいです 他に方法があったらご教授よろです
934Now_loading...774KB:2013/10/18(金) 18:28:32.58 ID:MemT2L45
>>931
ありがとうございます。
ただ、実際にやりたい事は、
ファイルやURLからの読み込んだデータではなく、UTF8のソースコード上に指定した文字列を変換したいので、
その方法を知りたいです。
言葉足らずで大変申し訳ありませんでした。
よろしくお願いします。
935Now_loading...774KB:2013/10/18(金) 19:05:46.55 ID:2jcWVWY/
>>932
24か32ビットじゃないとだめと思われる
936Now_loading...774KB:2013/10/19(土) 06:42:24.14 ID:Lts+HjgH
PNG外部読込みのはバグ認定でいいよ
埋め込みだとちゃんと色値取れるんだから

>>934
System.useCodePage = true;
937Now_loading...774KB:2013/10/21(月) 19:04:27.53 ID:8KIpzvyv
>>933
チャンクはどうなってるん?
938Now_loading...774KB:2013/10/22(火) 08:44:27.63 ID:glET+0dR
>>937
チャンクといわれても… こんなん出ました 何かまずい箇所があるでしょうか
IHDR Size:13 Byte Offset:8 CRC32:29E16883 / verify: true
gAMA Size:4 Byte Offset:33 CRC32:36058AE9 / verify: true
tEXt Size: 25 Byte Offset:49 CRC32:61C9653C / verify: true
PLTE Size:6 Byte Offset:86 CRC32:6B62BF3E / verify: true
IDAT Size:228 Byte Offset:104 CRC32:E1C10A36 / verify: true
IEND Size:0 Byte Offset:344 CRC32:AE426082 / verify: true
939Now_loading...774KB:2013/10/22(火) 13:35:43.00 ID:yAWMMvOp
gAMAチャンクがガンマ値なんだが、その値が効いてるんではなかろうか。CRC32の値出されてもわからんw
試したわけではないからわからんが、ブラウザだとIEとモダンブラウザでPNGの色味が違うときはまず疑った。
safariも面倒だった覚えが。
fireworksでチャンク削るとかなんかそんなオプションなかったっけ?
940Now_loading...774KB:2013/10/22(火) 15:45:32.34 ID:glET+0dR
いやいやw ガンマ値で色値が変わるなんて困るよw
それなら埋め込みでも変わるべき 何で外部読込みの時だけ影響するんだ

作ってるのはゲーム系で PNG画像をそのままマップデータとして扱いたいんだ
個々のエンドユーザーにマップを作ってもらう仕様なんだけど 一々ガンマのチャンク削るとか
そんなの説明したらメンドクサくてプレイしてもらえないでしょ?

ちなみに>>939さんも >>932のコードで色値が変わるよね?
941Now_loading...774KB:2013/10/22(火) 15:54:43.94 ID:glET+0dR
ああ ブラウザによってガンマ値が異なってて
それをHTML等の外部読込み時に忠実に再現するって事なのかな?

それにしたってローカルからの読み込み時は無視してもらいたい
getPixelの方にガンマ値を無視するチェックでもありゃいいのにな
942Now_loading...774KB:2013/10/22(火) 16:26:14.03 ID:yAWMMvOp
>>940
面倒だけどFlashBuilderで試した。
が、fdfdfdになったぞw

で、gAMAチャンクを削除した画像だとffffffという結果。

ちょっと気になったんで、回避方法は調べてみよう。
気長に待てw
943Now_loading...774KB:2013/10/22(火) 16:45:01.26 ID:yAWMMvOp
ちがう、fefefeだった。<なにもしてないpng画像
944Now_loading...774KB:2013/10/22(火) 17:07:32.26 ID:yAWMMvOp
gAMAに限らずチャンク全削除だった。
現実逃避の時間がなくなってきたんでまた今度
945Now_loading...774KB:2013/10/22(火) 18:12:15.91 ID:rril3OOw
横から失礼
頑張れ!回避方法期待してます
946Now_loading...774KB:2013/10/22(火) 18:53:29.76 ID:yAWMMvOp
結局デコーダ自作じゃないと無理という結論に。

> それにしたってローカルからの読み込み時は無視してもらいたい
> getPixelの方にガンマ値を無視するチェックでもありゃいいのにな
ファイルガンマが設定されているということは、
そのガンマ値での表示が正しい表示と、作成者が決めたはず。
だからFlash環境では正しく表示されるべき方(=チャンクを正しく解釈すること)を選択することは理にかなっている。

問題は、そういう設定があるのを知らずに使ってる人が多いってことだと思う。

画像作成者=PNG利用者の場合、チャンク削るなりして正しい画像にすればいいが、
システム何が正しいかわからないのだからしょうがない。
となると、システムに準備されていない限り、
プログラム作成者が正しいと思うファイル読み込みで処理するしかない。

同じように悩んでる人が居るね。
http://wonderfl.net/c/t2BDW

目的は違うけど、デコーダ作っている人がいた。
http://d.hatena.ne.jp/heriet/20090123/1232650068

こんなもんじゃないだろうか。
947PNG外部読込みの人:2013/10/23(水) 10:26:12.92 ID:bO1Jsyf/
>>946
解決しました ありがとうございました!
回避方法は PNG画像をURLLoaderでバイナリで読み
そこのherietさんのデコーダにぶっ込み生成された画像(色値のみ?)で正確な色値を抽出できました
当初はByteArrayから直接色データを取り出そうとしましたが超メンドイのであきらめましたw
948PNG外部読込みの人:2013/10/23(水) 13:49:40.53 ID:bO1Jsyf/
…と思ったらだめでしたOTZ
自分の作品に組み込んだらいくつかの色が正確に抽出できませんでした
今までのように全滅とはならなかったのは救いですが

誰かPNGのバイナリデータから色値のみを抽出するデコーダクラスを作ってくれないかな…w
949Now_loading...774KB:2013/10/23(水) 15:39:58.83 ID:4Lac1b29
>>946のリンクの奴の、パレットとかそこらへんは読んだ?
どう悪いかわからんとどうしようもない。
950Now_loading...774KB:2013/10/29(火) 08:30:02.75 ID:tgrcD9D4
AS1.0でテキストフィールドに配列の一部を表示したいんですけど
tf.variable = "array[3]";
これだとうまくいかない……
tf.variable = "array";
ではさすがに読みづらいし、何か上手い方法はないですか?
951Now_loading...774KB:2013/10/30(水) 12:16:43.44 ID:KkML7WUG
tf.text = array[3];
厳密にやるなら
tf.text = String(array[3]); か tf.text = array[3].toString();
かね。エラー出るかどうかはわからん。
TextFieldのvariableプロパティなんて使ったことないわ。
952Now_loading...774KB:2013/10/31(木) 12:32:14.52 ID:Oy+baEdM
いつの間にかFlash Player プロジェクターでexe化できなくなってる
Flash CC もプロジェクト書き出しはないみたい

古いの使え以外に何か代替方法ありますか?
953Now_loading...774KB:2013/10/31(木) 16:22:42.02 ID:J9Yrqhv4
無いんだなこれが
954Now_loading...774KB:2013/11/01(金) 18:19:51.22 ID:onM4UxuH
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.events.KeyboardEvent;

public class Main extends Sprite
{
public function traceKeyDown(event:KeyboardEvent):void {
trace("key down: " + event.charCode);
}

public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
addEventListener(KeyboardEvent.KEY_DOWN, traceKeyDown);
}

private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
}
}
}

これでコンパイルしてみたけどtrace文が出力されない

キーボードの文字が押されたかどうかを取得したいがどうすればいいの?
955Now_loading...774KB:2013/11/01(金) 18:31:45.79 ID:onM4UxuH
>>954ですが事故解決したw
956Now_loading...774KB:2013/11/03(日) 21:39:32.56 ID:VbyQEgWN
addChildした親MCの子MCをaddChildしています
子MCからイベントリスナーで親のMCに定義してある
functionを参照させたいのですがエラーがでてしまいます。
親MC 関数定義
function do_Open():void{
trace("ボタンを押しました");
}

子MC イベントリスナー
hoge.addEventListener(MouseEvent.CLICK,Open);
function Open(e:MouseEvent):void {
parent.do_Open();
}
エラーメッセージでは、親MCに書かれている関数が見つからないぞ。
という感じだと思うのですが解決方法がわかりません。
よろしくお願いいたします。
957Now_loading...774KB:2013/11/03(日) 23:20:54.84 ID:q4zi4roa
こうじゃね? ( parent as MovieClip ).do_Open();

てかその構造が変だな ボタンも親で定義しる
958Now_loading...774KB:2013/11/04(月) 01:45:24.40 ID:pdHRG/xr
parentはDisplayIbjectContainerだからな
実行時はともかくコンパイル時にはdo_Openメソッドが保証されてないのでその親クラスでキャストする
959Now_loading...774KB:2013/11/04(月) 12:08:00.98 ID:yXhK2asK
>957
>958
( parent as MovieClip ).do_Open();にて思うような動作をさせることが出来ました
勉強のためにキャストする方法も試してみたいと思います。

どうもありがとうございました
960Now_loading...774KB:2013/11/05(火) 23:34:33.05 ID:L7qUXKRS
http://tech.nitoyon.com/ja/blog/2010/01/26/dijkstra-aster-visualize...

のDijkstra法の経路探索のソースを色々変えているところです。

従来のプログラムは、ソースコードの中にS(スタート地点)とG(ゴール地点)をあらかじめ定めてあります。
それを最初に地図だけ表示させて、マウスのクリックなどで動的にSとGを決めて経路探索を走らせることは可能でしょうか?
もし可能であれば、どのような記述になるのか教えていただけたら幸いです。
よろしくお願いします。
961Now_loading...774KB:2013/11/06(水) 01:31:02.91 ID:CvJozy8y
可能

あなたの言う地図上での最小移動単位でグラフを作る必要がある。
へクスなのかスクエアなのかどうするつもりかで変わる。
962960:2013/11/06(水) 10:33:22.74 ID:iZP6+rB4
>>961
本当ですか!ありがとうございます。
スクエアのつもりです。
963Now_loading...774KB:2013/11/06(水) 14:23:21.35 ID:SOj1vNQF
ドラクエタイプを想定するとマップチップごとの移動コストがグラフになるだけだから、
スタート地点、ゴール地点が何処だろうと処理しやすいと思うんだけど。
964Now_loading...774KB:2013/11/09(土) 13:33:54.82 ID:+s1+OvXv
http://rfi.a.la9.jp/sateweb/scurl/znsc.html
お世話になります。
私、責任者の加茂と申します。以後、宜しくお願い致します。
http://www.karilun.com/img_shop/15/ss52_1368685958.jpg
浪速建設様の見解と致しましては、メールによる対応に関しましては
受付しないということで、当初より返信を行っていないようで、今後につい
てもメールや書面での対応は致しかねるというお答えでした。
 
このように現在まで6通のメールを送られたとのことですが、結果一度も
返信がないとう状況になっています。
 
私どものほうでも現在までのメール履歴は随時削除を致しております
ので実際に11通のメールを頂戴しているか不明なところであります。
 
弊社としましても今後メールでのやり取りを差し控えたく、浪速建設様
と同行の上でお会いさせていただきたい所存です。
http://rfi.a.la9.jp/hn203/set/Avatar_set/Avatar_set.html
965Now_loading...774KB:2013/11/09(土) 18:15:17.81 ID:wddz6IOA
Loderを作り外部画像を読み込ませて、
画面内のボタンを押すことで別画像を読み込ませたいと思っています

ボタンを押すことで、最初の画像もRemoveされて
URLRequestの内容も変わっていることがトレースで確認できるのですが
画像表示用の表示用McをNewしてみると、古い画像を読み込んでしまいます。

Removeしても、古い情報を持ったMCが影にスタンバっているような感じなのですが、これを削除して

新規Mcとして生成、新規URLRequestを読み込ませるためにはどうしたらよいのでしょうか?
966Now_loading...774KB:2013/11/09(土) 19:35:57.15 ID:x1Riqr+O
>>965
バージョンとソース
967Now_loading...774KB:2013/11/13(水) 13:56:26.73 ID:RXF1z2M2
すみません、実現可能かどうかの質問をさせてください。

自分のサイトに設置したflash(swfファイル)が
訪問者によって実行される度に
他サイトのとあるページのHTMLソースを取り出すことは可能でしょうか?

それと、もし可能だった場合は
その際のリファラ情報はどうなりますか?変更可能ですか?
968Now_loading...774KB:2013/11/13(水) 14:54:30.21 ID:B3oCnXHr
可能、可能
969Now_loading...774KB:2013/11/13(水) 17:01:26.25 ID:jY5ikZrl
不可能だろ
970Now_loading...774KB:2013/11/14(木) 07:22:49.04 ID:TC9ZzzID
いいえ、可能です
971Now_loading...774KB:2013/11/14(木) 11:07:25.75 ID:k3W3w5wT
この話題何度目だ?
972Now_loading...774KB:2013/11/15(金) 02:19:47.71 ID:or06u98+
不可能でしょ
973Now_loading...774KB:2013/11/17(日) 21:56:08.50 ID:f2OYSJOo
Starling + AndroidでflvのVideoを再生しています。
デスクトップでデバッグすると普通に再生されますが、
実機だと色が少し暗くなります。Videoの上に半透明の
黒をのっけたようなかんじです。なにか解決策がありましたら
教えて下さいお願いします。
ちなみにstagevideoクラスではなく、videoクラスを使っています。
974Now_loading...774KB:2013/11/18(月) 00:18:18.91 ID:QREhdTlD
>>973
やっぱりデスクトップも色が若干黒くなっていました。
仕様でしょうねたぶん。
975Now_loading...774KB:2013/11/18(月) 04:58:05.13 ID:QREhdTlD
>>974
自己レスだが、ここで明るく出来た。
http://wsvdmeer.blogspot.jp/2012/04/as3-change-brightness-contrast-and.html
976Now_loading...774KB:2013/11/19(火) 19:20:49.14 ID:ceBlvCB/
as1のtextfieldでtf.wordWrap=true;の時
表示範囲の右端に「」が含まれてると
勝手に改行されて一行の文字数と合わなくなっちゃうんですけど
自動整形をなくして右端に「を表示させる方法は何かないですか?
977Now_loading...774KB:2013/11/21(木) 09:59:22.71 ID:YA63AP6y
chromeでflashを動作させるとアンチエイリアスが綺麗にかかりません
対策法をご存知のかたいらっしゃいましたらお願いします
978Now_loading...774KB:2013/11/23(土) 00:02:04.99 ID:duI7peTC
FlashDevelopで[Embed(source=〜でファイルを埋め込んで使っています
エディタからプロジェクトをテストすると埋め込んだオブジェクトを表示できるのですが、bin/htmlを実行しても表示されません
どんな問題が考えられますか?

やってることはFlare3Dで.f3dファイルの埋め込みです。
ちなみに埋め込まずにURLLoaderでファイルを読み込んでも同じ結果です。
979Now_loading...774KB:2013/11/23(土) 22:30:45.73 ID:+4L9Ib7x
>>977
IEを使うんだ

>>978
Flare3Dなどわからん 専用スレないのか

おれにも教えてくれ フォーカスをセットしたボタンを消すとstageに定義したキーボードイベントも
反応しなくなる(キー入力での処理が効かなくなる) Tabキーを押すと復活するんだけど
Tabキー押下以外でコードで復活させる事はできないの?
stage.focus = stage;//これはだめだった
980Now_loading...774KB:2013/11/23(土) 23:09:02.85 ID:+4L9Ib7x
勘違いだった stage.focus = stage; でフォーカス戻ったw
981Now_loading...774KB:2013/11/24(日) 00:44:58.46 ID:TLHZqIha
>>978
エラーが出てるんじゃなくて?
wmodeとか
982978:2013/11/24(日) 01:01:29.37 ID:4JZA8CY4
>>981
デフォルトのparams.wmode = “direct”;

Spriteに画像を読み込むのとかはちゃんと表示されてるから、bin/配下からだと何か必要な物に対するパスがズレるのかなと思ってる
983Now_loading...774KB
>>982
それにしたってファイル読めてないならなんかエラー出ると思うんだけどなあ
telemetry有効にしてScoutで見たらStage3Dのところにエラーは出ていない?