home *** CD-ROM | disk | FTP | other *** search
- package game.model
- {
- import caurina.transitions.properties.FilterShortcuts;
- import core.CoreAssets;
- import flash.display.Stage;
- import flash.display.StageQuality;
- import flash.events.Event;
- import flash.events.KeyboardEvent;
- import flash.media.SoundTransform;
- import game.controller.EndGameCommand;
- import game.controller.InitializeCommand;
- import game.controller.InstructionsHideCommand;
- import game.controller.InstructionsShowCommand;
- import game.controller.QuitGameCommand;
- import game.controller.ScoresInitCommand;
- import game.controller.StartGameCommand;
- import org.puremvc.as3.patterns.proxy.Proxy;
-
- public class AppProxy extends Proxy
- {
-
- public static const MUSIC_TOGGLE:String = "MusicToggle";
-
- public static const QUIT_GAME:String = "QuitGame";
-
- public static const NAME:String = "AppProxy";
-
- public static const START_GAME:String = "StartGame";
-
- public static const INITIALIZE:String = "Initialize";
-
- public static const SCORES_INIT:String = "ScoresInit";
-
- public static const INSTRUCTIONS_SHOW:String = "InstructionsShow";
-
- public static const INSTRUCTIONS_HIDE:String = "InstructionsHide";
-
- public static const END_GAME:String = "EndGame";
-
-
- public var sndTransform:SoundTransform;
-
- public var musicTransform:SoundTransform;
-
- public var playerName:String;
-
- private var notesProxy:NotesProxy;
-
- public var soundEnabled:Boolean;
-
- public var musicEnabled:Boolean;
-
- public function AppProxy()
- {
- super(NAME);
- init();
- }
-
- private function coreAssetsInitHandler(e:Event) : void
- {
- var embedAssets:GameAssets = GameAssets.getInstance();
- embedAssets.addEventListener(Event.INIT,assetsInitHandler);
- embedAssets.init();
- }
-
- public function toggleMusicEnabled() : void
- {
- musicEnabled = !musicEnabled;
- trace("A",musicEnabled);
- musicTransform.volume = musicEnabled ? 1 : 0;
- }
-
- private function keyDownHandler(e:KeyboardEvent) : void
- {
- var stage:Stage = null;
- if(e.keyCode == 81)
- {
- stage = ApplicationFacade.getInstance().viewContainer.stage;
- if(stage.quality == "LOW")
- {
- stage.quality = StageQuality.MEDIUM;
- }
- else if(stage.quality == "MEDIUM")
- {
- stage.quality = StageQuality.HIGH;
- }
- else if(stage.quality == "HIGH")
- {
- stage.quality = StageQuality.LOW;
- }
- }
- }
-
- private function init() : void
- {
- facade.registerCommand(INITIALIZE,InitializeCommand);
- facade.registerCommand(INSTRUCTIONS_SHOW,InstructionsShowCommand);
- facade.registerCommand(INSTRUCTIONS_HIDE,InstructionsHideCommand);
- facade.registerCommand(START_GAME,StartGameCommand);
- facade.registerCommand(END_GAME,EndGameCommand);
- facade.registerCommand(QUIT_GAME,QuitGameCommand);
- facade.registerCommand(SCORES_INIT,ScoresInitCommand);
- notesProxy = new NotesProxy();
- facade.registerProxy(notesProxy);
- playerName = "Player";
- soundEnabled = true;
- musicEnabled = true;
- sndTransform = new SoundTransform();
- musicTransform = new SoundTransform();
- ApplicationFacade.getInstance().viewContainer.stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownHandler);
- }
-
- public function toggleSoundEnabled() : void
- {
- soundEnabled = !soundEnabled;
- sndTransform.volume = soundEnabled ? 1 : 0;
- }
-
- public function startApp() : void
- {
- var coreAssets:CoreAssets = CoreAssets.getInstance();
- coreAssets.addEventListener(Event.INIT,coreAssetsInitHandler);
- coreAssets.init();
- }
-
- private function assetsInitHandler(e:Event = null) : void
- {
- FilterShortcuts.init();
- notesProxy.push(INITIALIZE);
- }
- }
- }
-