ゲームが作れるようになるまでがんばる日記

ゲーム制作のことを中心にゲームに関することを書いています

Flash

数字を16進数の文字列に

数字を画面に表示するときに文字列を取得するにはtoString()を使えばよい。 var num:Number = 123; var text:String = num.toString(); このとき引数に16を渡せば16進数で表した文字列を取得できる。 var num:Number = 123; var text:String = num.toString(…

マウスの座標

マウスの座標はstageのmouseX,mouseYプロパティで取得できる。この座標はウィンドウ全体のもの。 描画オブジェクトにMOUSE_MOVEイベントをイベントリスナーで追加した場合、その描画オブジェクトの座標はlocalX,localYで取得できる。このときstageX,stageYで…

sinを使ってアニメーション

あるオブジェクトのX座標、Y座標をsinを使って求めてアニメーションさせてみた。 wonderfl build flash online | 面白法人カヤック ball.x = stage.stageWidth/2 + Math.sin(angleX) * range; ball.y = stage.stageHeight/2 + Math.sin(angleY) * range; ang…

wonderflバージョンアップ

wonderflのエディタとビューワがバージョンアップしていた。 wonderfl build flash online | 面白法人カヤック いろいろと機能アップしている。コード補完もできるし、F3で定義ジャンプもできる。ブラウザ上のエディタもかなり高機能になっている。 でも、相…

別ソースで定義

別のソースファイルで定義したクラスは同じフォルダに置いておけば参照することができる。 たとえば、円を描くBallクラスをBall.asで定義したとする。 package { import flash.display.Sprite; public class Ball extends Sprite { public function Ball() {…

回転方向

ActionScriptでの2D座標系はX軸は右方向がプラスでY軸は下方向がプラス。画面左端上の座標が(0,0)となっている。 sinやcosを使ってものを回転するような場合、回転方向は時計回りがプラスとなる。通常分度器とか現実世界では反時計回りがプラスになっている…

ダブルクリック

マウスのボタンが押されたかどうかはマウスイベントを使って判定できる。 通常のクリックはMouseEvent.CLICKをaddEventListener()でイベントを追加すれば判定できるが、ダブルクリックはそのままでは判定できない。doubleClickEnabledプロパティをtrueにする…

親子構造

ActionScriptでは描画オブジェクトを作成しただけでは描画されない。すでに描画されているオブジェクトに子供として登録すれば描画される。 test = new Sprite(); addChild(test); 登録したのを削除するにはremoveChild()を使えば良い。 removeChild(test); …

ムービーの伸縮を行わない

Flashプレイヤーのウィンドウサイズを変えるとムービーは自動的にサイズを合わせてくれる。しかしそれを行ないたくない場合は、StageScaleModeとStageAlignの設定を行えば良い。 import flash.display.StageScaleMode; import flash.display.StageAlign; sta…

ActionScript 3.0 アニメーション

ActionScript 3.0 アニメーション作者: Keith Peters,永井勝則出版社/メーカー: ボーンデジタル発売日: 2007/10/30メディア: 単行本購入: 19人 クリック: 431回この商品を含むブログ (45件) を見るこの本を読みながら、実際にActionScriptを書いて実行して、…

デバッグビルドを有効に

mxmlcでビルドするとデフォルトではデバッグビルドになっておらず、作成したswfファイルをデバッグ機能ありのFlash Playerで実行しようとしてもエラーになってしまう。 そこでデフォルトでデバッグビルドとなるように設定を変更した。 FlexSDKをインストール…

trace

Windowsで作っていたActionScriptのファイルをMacに持ってきてテストしていたのだが、traceを入れるとコンパイルは出来るのだが、実行しようとすると VerifyError: Error #1024: スタックアンダーフローが発生しました。とエラーになってしまう。 どうやら、…

Flash Playerのインストール

MacにFlex SDKについてくるデバッグありのFlash Playerをインストールした。 まずは、FlexSDK/runtimes/player/10/mac/ にある Flash Player.app.zip をクリックして展開。展開してできた Flash Player.app をアプリケーションフォルダへコピー。これで単体…

Flex SDKのインストール

MacにもFlex SDKをインストールした。手順は以前Windowsにインストールしたとき(id:toburau:20100508)とあまり変わらない。 http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+4 ここからSDKのZIPファイルをダウンロード。バイナリではなくJa…

actionscript-modeの設定

Emacsにactionscript-modeを設定した。 まずは次のサイトからactionscript-mode.elをダウンロード。 http://blog.pettomato.com/?p=22 ダウンロードしたファイルを~/.emacs.d/に移動。Finderでは隠しフォルダとなっていて見えないのでターミナルを使ってmvコ…

DANCE ON RADAR

wonderfl build flash online | 面白法人カヤック これはすごい。wonderflでもここまでできるとは。 wonderflならソースを見ることができる。さっそく参考にさせてもらおう。

Flex 4 SDKのインストール

ActionScriptでflash.geomパッケージにあるVector3Dを使おうとしたのだが、使用していたFlex 3.5には実装されていなかった。そこでFlex 4へと移行することにした。 まず、Flex 4 SDKをダウンロード。IEではレイアウトが崩れてしまったので、Google Chromeで…

ActionScript Perfomance Monitorのインストール

昨日のStatsはwonderflにはインストールされているのですぐに使えるが、FlexSDKを使ってビルドしている自分のローカル環境ではインストールされていないのでもちろん使用できない。ということでインストールした。 インストールといっても、ソースをダウンロ…

デバッグ情報の表示

wonderflには簡単にフレームレートや使用メモリなどのデバッグ情報を表示できるパッケージがインストールされている。使用方法は簡単で、net.hires.debug.StatsをインポートしてStatsクラスを作成して追加するだけ。 package { import flash.display.Sprite;…

Boolean

http://livedocs.adobe.com/flex/3_jp/langref/Boolean.html ActionScriptでの論理値を表すデータ型はBoolean。ついついC++の感覚でboolと書いてしまい、コンパイルエラーになってしまうことが多い。ちゃんと覚えないと。 例えばオブジェクトの表示、非表示…

グローバル変数

関数の外部で変数を宣言すればグローバル変数となり、そのコードのどこからでも使用できる。 ただし、グローバル変数はpackageの中で宣言することは出来ない。またpackageより前に宣言を書こうとするとエラーになりコンパイル出来なかった。なのでpackage内…

マップ上の位置計算

マップ上の位置を計算するため、いつもやっているようにループカウンタの剰余で座標を求めた。 C++で書いたソースがこちら。 int main() { const int MAPSIZE = 5; const int BOXSIZE = 30; for(int i=0; i

const

ActionScriptでの定数はconstを使う。 const MAX:int = 255; 配列も定数にできる。 const Test:Array = new Array("A","B","C"); この場合、Arrayクラスのメソッド、例えばpush()などは呼び出すことができる。 http://livedocs.adobe.com/flex/3_jp/langref/…

マウスイベントが来ない?

package内のクラスにマウスクリックのイベントを登録しても、マウスクリックでイベントが呼ばれなかった。 package { import flash.display.Sprite; import flash.events.MouseEvent; public class Test extends Sprite { public function Test() { graphics…

画像ファイルを読み込む

ActionScriptで画像ファイルを読み込むにはLoaderクラスを使う。 Loaderクラスのload()メソッドでファイルを指定する。読み込むことのできる画像ファイルはJPEG,GIF,PNG。画像だけでなくSWFファイルも読み込める。 サーバー上の画像ファイルを指定するにはUR…

練習問題その4の続き

昨日の練習問題には次のような発展問題がある(原文ママ)。 ボタンの中にランプが2つ入れ、次のように状態を変化させる ・ボタンにオーバーすると赤が点灯 ・ボタンからアウトすると赤が消灯 ・ボタンを押すと青が点灯 ・もう一度ボタンを押すと青が消灯 ・一…

練習問題その4

ブラウザで無料ではじめるActionScript 3.0 ―It's a wonderfl world―作者: 面白法人カヤック,フォークビッツ出版社/メーカー: ワークスコーポレーション発売日: 2009/12/19メディア: 単行本購入: 1人 クリック: 236回この商品を含むブログ (29件) を見る74ペ…

練習問題その3

ブラウザで無料ではじめるActionScript 3.0 ―It's a wonderfl world―作者: 面白法人カヤック,フォークビッツ出版社/メーカー: ワークスコーポレーション発売日: 2009/12/19メディア: 単行本購入: 1人 クリック: 236回この商品を含むブログ (29件) を見る練習…

練習問題その2

ブラウザで無料ではじめるActionScript 3.0 ―It's a wonderfl world―作者: 面白法人カヤック,フォークビッツ出版社/メーカー: ワークスコーポレーション発売日: 2009/12/19メディア: 単行本購入: 1人 クリック: 236回この商品を含むブログ (29件) を見る74ペ…

TextField

ActionScriptでテキスト入力を扱うTextFieldを試してみた。実際に試したコードは次の通り。二つのテキストフィールドを作成し、一方に文字列を入力し、それをもう一方にコピーするというもの。 wonderfl build flash online | 面白法人カヤック package { im…