welcomescreen.as

来自「Papervision3d的源码」· AS 代码 · 共 88 行

AS
88
字号
/**
 * Paperskated3d - simple skateboard simulator in Papervision3d
 * 
 * @author Bartek Drozdz 
 * @version 1.0
 * 
 * Released under Creative Commons Attribution-Non-Commercial-Share Alike 3.0 License.
 */
package com.paperskate3d.gui {
	
	import com.paperskate3d.util.Button;
	import flash.display.Bitmap;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	import com.paperskate3d.util.SkateTransition;
	import com.carlcalderon.arthropod.Debug;
	import flash.filters.DropShadowFilter;
	import flash.filters.GlowFilter;
	
	public class WelcomeScreen extends Sprite {
		
		[Embed(source = '../../../../assets/ui/welcome.png')]
		private var WelcomeGraphic:Class;
		private var background:Bitmap;
		
		[Embed(source = '../../../../assets/ui/welcomeInstructions.png')]
		private var WelcomeInstructions:Class;
		private var insBut:Button;
		
		[Embed(source = '../../../../assets/ui/welcomeStart.png')]
		private var StartRide:Class;
		private var startBut:Button;
		
		private var psuie:PSUIEvent;
		
		public function WelcomeScreen() {
			background = new WelcomeGraphic() as Bitmap;
			background.x = -(Math.round(background.bitmapData.width / 2));
			background.y = -(Math.round(background.bitmapData.height / 2));
			addChild(background);
			
			insBut = new Button(new WelcomeInstructions());
			insBut.x = -96;
			insBut.y = 106;
			insBut.filters = [new GlowFilter(0x000000, .6, 8, 8, 1)];
			addChild(insBut);
			
			startBut = new Button(new StartRide());
			startBut.x = 71;
			startBut.y = 101;
			startBut.filters = [new GlowFilter(0x000000, .6, 8, 8, 1)];
			addChild(startBut);
			
			insBut.addEventListener(MouseEvent.CLICK, clear);
			startBut.addEventListener(MouseEvent.CLICK, clear);
			
			addEventListener(Event.ADDED_TO_STAGE, init);
		}
		
		public function init(e:Event):void {
			Debug.log("WelcomeScreen.init");
			SkateTransition.makeIn(this, onInitReady);
			
		}
		
		public function onInitReady():void {
			// ok
		}
		
		private function clear(me:MouseEvent):void {
			SkateTransition.makeOut(this, onCleared);
			psuie = new PSUIEvent(PSUIEvent.WELCOME_SCREEN_CLEARED);
			psuie.startGame = (me.target == startBut) ? true : false;
		}
		
		public function forceClear(startGame:Boolean=false):void {
			SkateTransition.makeOut(this, onCleared);
			psuie = new PSUIEvent(PSUIEvent.WELCOME_SCREEN_CLEARED);
			psuie.startGame = startGame;
		}
		
		public function onCleared():void {
			dispatchEvent(psuie);
		}
	}
	
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?