プログラミングとイラストレーション » Flash Pro CC, Starlingでメニューボタンを作る
プログラミングとイラストレーション > Flash > Flash Pro CC, Starlingでメニューボタンを作る

Flash Pro CC, Starlingでメニューボタンを作る

Flash Pro CC, Starlingでメニューボタンを作る

Flash Pro CC, Starlingでメニューボタンを作る : デモ

Flash Pro CC, Starlingでメニューボタンを作る : ZIPファイル(78kb)

1.Main.fla

1. Flashコンテンツのパフォーマンスをグラフ化するstatsをダウンロードします。

statsサイト(外部サイト):http://github.com/mrdoob/Hi-ReS-Stats

2. Flash Professional CC にダウンロードしたstatsファイルを以下のように、Flashメニューから設定します。

Flash – 環境設定 – コンパイラー – ソースパス で、Hi-ReS-Stats-master/src を設定します。

3. Starlingファイルをダウンロードします。

Starlingサイト(外部サイト):http://gamua.com/starling/

4. Flash Professional CC にダウンロードしたstarlingファイルを以下のように、Flashメニューから設定します。

Flash – 環境設定 – コンパイラー – ソースパス で、starling/src を設定します。

Flash – 環境設定 – コンパイラー – ライブラリパス で、starling/bin を設定します。

5. プロパティのクラスに「StartUp」を記述します。

6. ライブラリに画像を読み込む。

上部メニューから「ファイル – 読み込み – ライブラリに読み込み」で、ライブラリに表示する画像を読み込みます。

読み込んだライブラリの画像をクリックし、「ビットマッププロパティ」を表示します。

「ビットマッププロパティ」の「ActionScript」のタブをクリックし、「ActionScript用書き出し」をチェック。

クラス名は、最初の一文字目は大文字にし、任意に決めます。

ビットマッププロパティの設定

2.StartUp.as

プログラム言語は、ActionScript3.0です。

package
{
	import flash.display.Sprite;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
	import starling.core.Starling;
	import net.hires.debug.Stats;
	
	public class StartUp extends Sprite
	{
		private var mStarling:Starling;
		
		public function StartUp()
		{
			//fps計測用クラス
			addChild(new Stats());
			
			stage.align = StageAlign.TOP_LEFT;
			stage.scaleMode = StageScaleMode.NO_SCALE;
			
			mStarling = new Starling(MenuButton, stage); //メニューボタンの作成
			
			//アンチエイリアスの設定 0:アンチなし、2:最小限のアンチエイリアス、4:高品質、6:最高品質
			mStarling.antiAliasing = 2;
			
			//スタート
			mStarling.start();
		}
	}
}

3.MenuClass.as

package
{
	import flash.display.Bitmap;
	import starling.display.Button;
	import starling.display.Sprite;
	import starling.events.Event;
	import starling.textures.Texture;
	import flash.display.BitmapData;
	
	public class MenuButton extends Sprite
	{
		//[Embed(source = "button-normal.png")]
		//private static const ButtonTexture: Class;
		
		//Flash IDEのライブラリ画像を使う場合
		private var buttonBitmapData:BitmapData = new ButtonNormal(0, 0);
		
		// セクション
		private var _sections: Vector.<String> = Vector.<String>(["Play", "Options", "Rules", "Sign in"]);
		
		public function MenuButton()
		{
			addEventListener(Event.ADDED_TO_STAGE, onAdded);
		}
		private function onAdded(e: Event): void
		{
			var buttonBitmap:Bitmap = new Bitmap(buttonBitmapData);
			var texture: Texture = Texture.fromBitmap(buttonBitmap);
			
			// 埋め込んだイメージからBitmap オブジェクトを作成
			//var buttonSkin: Bitmap = new ButtonTexture();
			// Button オブジェクトに与えるTexture オブジェクトを作成
			//var texture: Texture = Texture.fromBitmap(buttonSkin);
			
			// メニュー(複数のボタン)用コンテナを作成
			var menuContainer: Sprite = new Sprite();
			var numSections: uint = _sections.length;
			for (var i: uint = 0; i < 4; i++)
			{
				// このスキンをアップ状態として使用するボタンを作成
				var myButton: Button = new Button(texture, _sections[i]);
				// ラベルを太字に
				myButton.fontBold = true;
				myButton.fontColor = 0xffffff;
				myButton.fontSize = 10;
				// ボタンの位置取り
				myButton.y = myButton.height * i;
				// ボタンをコンテナに追加
				menuContainer.addChild(myButton);
			}
			// メニューをセンターに
			menuContainer.x = stage.stageWidth - menuContainer.width >> 1;
			menuContainer.y = stage.stageHeight - menuContainer.height >> 1;
			// ボタンを表示
			addChild(menuContainer);
		}
	}
}

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

コメントフィード

トラックバック URL : http://www.htmlcode.jp/flash-pro-cc-starling%e3%81%a7%e3%83%a1%e3%83%8b%e3%83%a5%e3%83%bc%e3%83%9c%e3%82%bf%e3%83%b3%e3%82%92%e4%bd%9c%e3%82%8b/trackback/