/**
* AS3サンプルコード的な by ミングスレの名無し
*/
package
{
import flash.display.Sprite;
import flash.display.Bitmap;
import flash.events.Event;
import flash.events.MouseEvent;
public class Main extends Sprite
{
[Embed(source = '../imgs/gazou_vip1.png')] private var IMG_CHAR_A:Class; // 埋め込み画像リソースその1
[Embed(source = '../imgs/gazou_vip2.png')] private var IMG_CHAR_B:Class; // 埋め込み画像リソースその2
public var bmp1:Bitmap; // リソースからロードする画像のハンドル的な ※Pixelのデータはこの中の bitmapData
public var bmp2:Bitmap; // リソースからロードする画像のハンドル的な
private var char1:Sprite; // 直球そのままスプライト
private var char2:Sprite; // 〃
// エントリポイント
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
// 初期処理
// ※Flashでは「ステージ」と呼ばれるメインウィンドウに追加されて初めて開始
// ※みたいな状態なのでこんな
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init); // とりあえず削除
// entry point
bmp1 = new IMG_CHAR_A(); // 画像リソースを受け取る。※C++&win32APIで言う、LoadResourceのような
bmp2 = new IMG_CHAR_B(); // 〃
char1 = new Sprite(); // スプライトを準備して
char1.addChild(bmp1); // 画像を直接の子として追加
char1.visible = true; // 一応
addChild(char1); // スプライト自身をステージの子に追加
char2 = new Sprite();
char2.addChild(bmp2);
char2.visible = true;
addChild(char2);
addEventListener(Event.ENTER_FRAME, mainloop); // ※ ENTER_FRAME イベントは毎フレームのコールバック
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown); // 以下見たまんま
stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);
}
private function onMouseDown(e:MouseEvent):void
{
// マウス押されたら
}
private function onMouseUp(e:MouseEvent):void
{
// マウス離され
}
private function onMouseMove(e:MouseEvent):void
{
// マウs
}
private function mainloop(e:Event = null): void
{
// メインループ
// ※毎フレームこのメソッドが呼ばれる:コールバックされる
}
}