Actionscript
ボタンを押したら特定のページに飛ぶようなスクリプトを書こうとして、 private function onURLButtonClick(e:MouseEvent):void{ navigateToURL(new URLRequest("http://hogehoge/index.html"),"_blank"); } みたいなコードを書いたが、実際におしても何もな…
小ハマリしたので覚書。Spriteクラスのコンストラクタでwidth,heightプロパティをいじると、インスタンスが作られないようだ。
ゲームを作るのにタイマーが必要になる。で、Spriteクラスから派生すれば setIntervalメソッドが使えるので、そのまま setInterval(onTimer,50); とすれば、50ミリ秒ごとにonTimerメソッドが呼び出される。しかし、これだと、表示のタイミング(フレームレー…
Flex SDKを使っていて、プリローダーをつけるのにどハマリしたので覚書。まず、プリローダーをつけるには [Frame(factoryClass="Preloader")]みたいなメタ指定を入れるのだが、これをずっとルートファイルのコンストラクタの前に入れていた。正しくは [Frame…
ActionScript 3.0 をFlex SDKでコンパイルしたとき、なぜか原点がずれる問題にずっと苦しんでいた。原因は、flexのコンフィグファイル flex-config.xmlにデフォルトの大きさが指定されていたからだった。これを修整するには、自分のconfigファイルを作成して…
AS 3.0において、mp3を埋め込んで再生するのはすごく簡単で、 import flash.media.Sound; [Embed(source='hoge.mp3')] private const BGM01:Class; private function play():void{ var s:Sound = new BGM01(); s.play(0,256) } とかやればいい。埋め込んだデ…
なんかsleep(ミリ秒)なんてのを期待していたのだが、みつからなかったので自作。 import flash.utils.*; public function wait(count:uint ):void{ var start:uint = getTimer(); while(getTimer() - start < count){ } } 単位はミリ秒。
Actionscript3.0はファイルを分割して記述できるが、そのスコープはかなり厳しい。まず、各 packageには一つしかクラスをかけない。package宣言の後にはいくらでもクラスや定数、関数を書けるが、これは別のファイルからは見えない。したがって、異なるファ…
キーイベントが取れたので、スプライトを動かしてみる。 package { import flash.display.*; import flash.text.*; import flash.events.*; import flash.ui.*; public class SpriteTest extends Sprite { private var field:Sprite; private var player:Spr…
キーイベントを取る。addEventListenerもJavaではおなじみ。 package { import flash.display.*; import flash.text.*; import flash.events.*; import flash.ui.*; public class KeyTest extends Sprite { private var tf:TextField; public function KeyTe…
あんまりActionScript が Javaっぽいので、vim で *.asファイルを開いたときに、javaモードで開くようにしてしまえ。.vimに以下の内容のfiletype.vimを作る。 % cd .vim % cat filetype.vim augroup filetypedetect au BufNewFile,BufRead *.as setf java au…