Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.aberustudios.kodama
- {
- import de.nulldesign.nd2d.display.World2D;
- import flash.display.Stage3D;
- import flash.display.StageAlign;
- import flash.display.StageScaleMode;
- import flash.display3D.Context3DRenderMode;
- import flash.events.Event;
- /**
- * ...
- * @author Rolpege
- */
- public class Kodama extends World2D
- {
- public static const WIDTH:Number = 800;
- public static const HEIGHT:Number = 600;
- protected var firstResizeTime:Boolean = true;
- public function Kodama()
- {
- super(Context3DRenderMode.AUTO);
- antialiasing = 2;
- //setActiveScene and start here
- }
- override protected function addedToStage(event:Event):void
- {
- stage.align=StageAlign.TOP_LEFT;
- stage.scaleMode=StageScaleMode.NO_SCALE;
- var contextMenu:ContextMenu = new ContextMenu();
- contextMenu.hideBuiltInItems();
- this.contextMenu = contextMenu;
- super.addedToStage(event);
- }
- override protected function resizeStage(e:Event = null):void
- {
- if (firstResizeTime)
- {
- if(!context3D) return;
- var rect:Rectangle = bounds ? bounds : new Rectangle(0, 0, stage.stageWidth, stage.stageHeight);
- stage.stage3Ds[stageID].x = rect.x;
- stage.stage3Ds[stageID].y = rect.y;
- context3D.configureBackBuffer(rect.width, rect.height, antialiasing, false);
- camera.resizeCameraStage(rect.width, rect.height);
- }
- else
- {
- var sx:Number = stage.stageWidth / WIDTH;
- var sy:Number = stage.stageHeight / HEIGHT;
- var zoom:Number = sx > sy ? sy : sx;
- context3D.configureBackBuffer(WIDTH * zoom, HEIGHT * zoom, antialiasing, false);
- var stage3D:Stage3D = stage.stage3Ds[stageID];
- stage3D.x = (stage.stageWidth - (WIDTH * zoom)) * 0.5;
- stage3D.y = (stage.stageHeight - (HEIGHT * zoom)) * 0.5;
- }
- firstResizeTime = false;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement