Section 1
//GameInterface (com.meteorgames.flashsystem.game.GameInterface)
package com.meteorgames.flashsystem.game {
import flash.display.*;
import com.meteorgames.flashsystem.system.*;
public class GameInterface extends MovieClip {
private var _systemReady:Boolean;
public var _SYSTEM:System;
public function GameInterface(){
_systemReady = false;
}
public function initGame(){
var _local1:*;
var _local2:*;
var _local3:String;
_local1 = false;
_local2 = false;
_local3 = this.root.loaderInfo.url;
if (((!((_local3.indexOf("http://www.twinskies.com/", 0) == 0))) && (!((_local3.indexOf("http://192.168.2.13", 0) == 0))))){
_local1 = true;
} else {
if (_local3.indexOf("/flash/g/", 0) == -1){
_local1 = true;
};
};
if (_local3.toUpperCase().indexOf("FILE", 0) != -1){
_local1 = false;
_local2 = true;
};
if (this.parent.toString().toUpperCase().indexOf("STAGE", 0) >= 0){
_local2 = true;
};
if (((_local1) || (_local2))){
_SYSTEM = new System();
_SYSTEM.init(new GameParams());
_SYSTEM.gameIsOffline = _local2;
_SYSTEM.gameIsHostedExternally = _local1;
_systemReady = true;
};
}
public function setSystem(_arg1:System){
_SYSTEM = _arg1;
_systemReady = true;
}
public function get systemReady():Boolean{
return (_systemReady);
}
}
}//package com.meteorgames.flashsystem.game
Section 2
//GameParams (com.meteorgames.flashsystem.system.GameParams)
package com.meteorgames.flashsystem.system {
public class GameParams {
public var sUserID:String;
public var iGameHeight:Number;
public var sPreloader:String;
public var iGameWidth:Number;
public var sID:String;
public var iCollectStats:Number;
public var sPHPServer:String;
public var sLanguage:String;
public var iFramerate:Number;
public var sTehGame:String;
public var sSWFServer:String;
public function GameParams(){
sID = "";
sTehGame = "";
sPreloader = "";
sSWFServer = "";
sPHPServer = "";
iCollectStats = 0;
iFramerate = 30;
iGameWidth = 500;
iGameHeight = 500;
sUserID = "";
sLanguage = "en";
}
public function setVar(_arg1:String, _arg2):void{
if (this[_arg1] != undefined){
if (_arg2 != undefined){
this[_arg1] = _arg2;
};
};
}
}
}//package com.meteorgames.flashsystem.system
Section 3
//GameTracking (com.meteorgames.flashsystem.system.GameTracking)
package com.meteorgames.flashsystem.system {
import flash.events.*;
import flash.net.*;
public class GameTracking {
private var _dataReceived:Boolean;
private var _iTrackData:int;
private var _PHPSERVER:String;
private var _PHPSCRIPT:String;
private var _GAMEID:String;
private var _loader:URLLoader;
public function GameTracking(){
_PHPSERVER = "";
_PHPSCRIPT = "scripts/minigame";
_dataReceived = false;
}
private function securityErrorHandler(_arg1:SecurityErrorEvent):void{
_dataReceived = true;
removeListeners();
}
public function init(_arg1:String, _arg2:String="", _arg3:int=0):void{
_PHPSERVER = _arg1;
_GAMEID = _arg2;
_iTrackData = _arg3;
if (_PHPSERVER.charAt((_PHPSERVER.length - 1)) != "/"){
_PHPSERVER = (_PHPSERVER + "/");
};
}
private function completeHandler(_arg1:Event):void{
_dataReceived = true;
removeListeners();
}
public function logGameOver(_arg1:String):void{
var _local2:String;
var _local3:URLVariables;
var _local4:URLRequest;
if (_iTrackData == 0){
return;
};
_local2 = (_PHPSERVER + _PHPSCRIPT);
_local3 = new URLVariables();
_local3.data = _arg1;
_local4 = new URLRequest(_local2);
_local4.data = _local3;
trackIt(_local4);
}
private function removeListeners():void{
_loader.removeEventListener(Event.COMPLETE, completeHandler);
_loader.removeEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
_loader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
}
private function trackIt(_arg1:URLRequest):void{
var request = _arg1;
try {
sendToURL(request);
} catch(e:Error) {
};
}
public function getReturnVar(_arg1:String):String{
var _local2:String;
_local2 = "";
if (_loader.data[_arg1] != null){
_local2 = String(_loader.data[_arg1]);
};
return (_local2);
}
public function postPoints(_arg1:String):void{
var _local2:String;
var _local3:URLVariables;
var _local4:URLRequest;
_dataReceived = false;
_local2 = (_PHPSERVER + _PHPSCRIPT);
_local3 = new URLVariables();
_local3.data = _arg1;
_local4 = new URLRequest(_local2);
_local4.data = _local3;
postIt(_local4);
}
private function ioErrorHandler(_arg1:IOErrorEvent):void{
_dataReceived = true;
removeListeners();
}
private function postIt(_arg1:URLRequest):void{
var request = _arg1;
_loader = new URLLoader();
_loader.dataFormat = URLLoaderDataFormat.VARIABLES;
_loader.addEventListener(Event.COMPLETE, completeHandler);
_loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
_loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
try {
_loader.load(request);
} catch(e:Error) {
_dataReceived = true;
};
}
public function logGameStart(_arg1:String):void{
var _local2:String;
var _local3:URLVariables;
var _local4:URLRequest;
if (_iTrackData == 0){
return;
};
_local2 = (_PHPSERVER + _PHPSCRIPT);
_local3 = new URLVariables();
_local3.data = _arg1;
_local4 = new URLRequest(_local2);
_local4.data = _local3;
trackIt(_local4);
}
public function get wasDataReceived():Boolean{
return (_dataReceived);
}
public function keepSessionAlive(_arg1:String):void{
var _local2:String;
var _local3:URLVariables;
var _local4:URLRequest;
_local2 = (_PHPSERVER + _PHPSCRIPT);
_local3 = new URLVariables();
_local3.data = _arg1;
_local4 = new URLRequest(_local2);
_local4.data = _local3;
trackIt(_local4);
}
}
}//package com.meteorgames.flashsystem.system
Section 4
//System (com.meteorgames.flashsystem.system.System)
package com.meteorgames.flashsystem.system {
import flash.display.*;
import flash.text.*;
import flash.utils.*;
public class System {
private var _bOffline:Boolean;
private var _KEY:Verschluesselung;
private var _GAMETRACKING:GameTracking;
private var _TRANSLATION:Translation;
private var _bExternalHost:Boolean;
private var _aAdd:Array;
private var _iGameSessionLength:int;
private var _aP:Array;
private var _GAME_PARAMS:Object;
public function System(){
var _local1:Array;
super();
_bOffline = false;
_bExternalHost = false;
_aP = new Array();
_aAdd = new Array();
_iGameSessionLength = 0;
_local1 = new Array();
}
public function keepSessionAlive():void{
var _local1:String;
var _local2:*;
if (((_bOffline) || (_bExternalHost))){
return;
};
_local1 = "ct=keep_session_alive";
_local2 = _KEY.run(_local1);
_GAMETRACKING.keepSessionAlive(_local2);
}
public function addParam(_arg1:String, _arg2):void{
_aAdd[_arg1] = _arg2;
}
public function addFont(_arg1:Font, _arg2:String):void{
_TRANSLATION.addFont(_arg1, _arg2);
}
public function logGameOver(_arg1:int=1):void{
var _local2:String;
var _local3:*;
_iGameSessionLength = (getTimer() - _iGameSessionLength);
if (((_bOffline) || (_bExternalHost))){
return;
};
_local2 = ((("ct=game_end&minigame_id=" + String(getFlashParam("sID"))) + "&minigame_mode=") + String(_arg1));
_local3 = _KEY.run(_local2);
_GAMETRACKING.logGameOver(_local3);
}
public function setTextField(_arg1:TextField, _arg2:String):void{
_TRANSLATION.setTextField(_arg1, _arg2);
}
public function setFont(_arg1:String):void{
_TRANSLATION.setFont(_arg1);
}
public function set gameIsOffline(_arg1:Boolean):void{
_bOffline = _arg1;
}
public function get gameIsOffline():Boolean{
return (_bOffline);
}
public function init(_arg1:Object):void{
_GAME_PARAMS = _arg1;
_GAMETRACKING = new GameTracking();
_GAMETRACKING.init(getFlashParam("sPHPServer"), getFlashParam("sID"), int(getFlashParam("iCollectStats")));
_TRANSLATION = new Translation();
_TRANSLATION.init();
_KEY = new Verschluesselung();
}
public function getServerResponse():String{
var _local1:String;
_local1 = "";
if (((_bOffline) || (_bExternalHost))){
_local1 = "Visit <u><a href='http://www.twinskies.com/' target='_blank'>www.twinskies.com</a></u> today to sign up for an account!";
} else {
_local1 = _GAMETRACKING.getReturnVar("text");
};
return (_local1);
}
public function get gameIsHostedExternally():Boolean{
return (_bExternalHost);
}
public function postPoints(_arg1:int=0, _arg2:int=1):void{
var _local3:*;
if (((_bOffline) || (_bExternalHost))){
return;
};
_local3 = "TPOSG";
_GAMETRACKING.postPoints(_local3);
}
public function getLegalText(_arg1:int):String{
var _local2:String;
var _local3:*;
_local2 = (("<p align='center'><font size='" + String(_arg1)) + "'><a href='http://www.twinskies.com' target='_blank'>Twin Skies</a> graphics, text and sound elements copyright 2008");
_local3 = new Date();
if (_local3.getFullYear() > 2008){
_local2 = (_local2 + (" - " + String(_local3.getFullYear())));
};
_local2 = (_local2 + " by Meteor Games LLC.<br>All rights reserved. <a href='http://www.twinskies.com' target='_blank'>Twin Skies</a> is a trademark of Meteor Games LLC.</font></p>");
return (_local2);
}
public function serverHasResponded():Boolean{
var _local1:Boolean;
_local1 = false;
if (((_bOffline) || (_bExternalHost))){
_local1 = true;
} else {
_local1 = _GAMETRACKING.wasDataReceived;
};
return (_local1);
}
public function set gameIsHostedExternally(_arg1:Boolean):void{
_bExternalHost = _arg1;
}
public function getFlashParam(_arg1:String):String{
return (String(_GAME_PARAMS[_arg1]));
}
public function logGameStart(_arg1:int=1):void{
var _local2:String;
var _local3:*;
_iGameSessionLength = getTimer();
if (((_bOffline) || (_bExternalHost))){
return;
};
_local2 = ((("ct=game_start&minigame_id=" + String(getFlashParam("sID"))) + "&minigame_mode=") + String(_arg1));
_local3 = _KEY.run(_local2);
_GAMETRACKING.logGameStart(_local3);
}
public function setSchluessel(_arg1:MovieClip){
}
public function getGameVersion():String{
var _local1:String;
var _local2:String;
var _local3:RegExp;
var _local4:Array;
_local1 = "";
_local2 = getFlashParam("sTehGame");
if (_local2 != ""){
_local3 = /_v[0-9]+?.swf/;
_local4 = _local2.match(_local3);
if (_local4 != null){
if (_local4.length > 0){
_local1 = String(_local4[0]);
_local1 = _local1.replace("_v", "");
_local1 = _local1.replace(".swf", "");
};
};
};
return (_local1);
}
}
}//package com.meteorgames.flashsystem.system
Section 5
//Textfields (com.meteorgames.flashsystem.system.Textfields)
package com.meteorgames.flashsystem.system {
import flash.text.*;
public class Textfields {
private var _aFonts:Array;
private var _bMultiline:Boolean;
private var _objDefaultTextFormat:TextFormat;
private var _bWordWrap:Boolean;
private var _bWesternLang:Boolean;
public function Textfields():void{
_bWesternLang = true;
_bMultiline = true;
_bWordWrap = true;
_aFonts = new Array();
_objDefaultTextFormat = new TextFormat();
}
public function setTextField(_arg1:TextField, _arg2:String):void{
_arg1.embedFonts = _bWesternLang;
_arg1.multiline = _bMultiline;
_arg1.wordWrap = _bWordWrap;
_arg1.htmlText = _arg2;
_arg1.setTextFormat(_objDefaultTextFormat);
}
public function init(_arg1:Boolean):void{
_bWesternLang = _arg1;
}
public function setFont(_arg1:String):void{
if (_aFonts[_arg1] != undefined){
_objDefaultTextFormat.font = _aFonts[_arg1].fontName;
};
}
public function addFont(_arg1:Font, _arg2:String):void{
if (_aFonts[_arg2] == undefined){
_aFonts[_arg2] = _arg1;
};
}
}
}//package com.meteorgames.flashsystem.system
Section 6
//Translation (com.meteorgames.flashsystem.system.Translation)
package com.meteorgames.flashsystem.system {
import flash.text.*;
public class Translation {
private var _TEXTFIELDS:Textfields;
public function Translation(){
_TEXTFIELDS = new Textfields();
}
public function init():void{
_TEXTFIELDS.init(true);
}
public function addFont(_arg1:Font, _arg2:String):void{
_TEXTFIELDS.addFont(_arg1, _arg2);
}
public function setFont(_arg1:String):void{
_TEXTFIELDS.setFont(_arg1);
}
public function setTextField(_arg1:TextField, _arg2:String):void{
_TEXTFIELDS.setTextField(_arg1, _arg2);
}
}
}//package com.meteorgames.flashsystem.system
Section 7
//Verschluesselung (com.meteorgames.flashsystem.system.Verschluesselung)
package com.meteorgames.flashsystem.system {
public class Verschluesselung {
private static var _sA:String;
private static var _sB:String;
public function Verschluesselung(){
var _local1:uint;
var _local2:Array;
var _local3:Array;
super();
_local1 = (Math.pow(2, 3) * Math.pow(2, 3));
_local2 = [-15, -14, -13, -12, -11, -10, -9, -8, -7, -16, -15, -14, -13, -12, -11, -10, -9, -8, -7, -16, -15, -14, -13, -12, -11, -10];
_local3 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26];
}
public function run(_arg1:String):String{
return ("TPOSG");
}
}
}//package com.meteorgames.flashsystem.system
Section 8
//SoundManager (com.meteorgames.libs.sound.SoundManager)
package com.meteorgames.libs.sound {
import flash.media.*;
import flash.events.*;
import flash.utils.*;
public class SoundManager {
private var _bMusic:Boolean;
private var _aChannels:Array;
private var _iVolFX:Number;
private var _iVolMusic:Number;
private var _aMusic:Array;
private var _bFX:Boolean;
private var _aFX:Array;
static var _C_MUSIC:int = 1;
static var _C_FX:int = 0;
public function SoundManager(){
_bFX = true;
_bMusic = true;
_iVolFX = 1;
_iVolMusic = 1;
_aFX = new Array();
_aMusic = new Array();
_aChannels = new Array();
}
public function stopMusic(_arg1:String=""):void{
var _local2:SoundObject;
var _local3:Object;
var _local4:String;
var _local5:Boolean;
for (_local4 in _aChannels) {
_local2 = _aChannels[_local4];
if (_local2 == null){
} else {
if (_local2.getType() == _C_MUSIC){
_local5 = true;
if (((!((_arg1 == ""))) && (!((_local2.getID() == _arg1))))){
_local5 = false;
};
if (_local5){
_local2._soundChannel.stop();
_local3 = _aMusic[_local2.getID()];
_local3.iPlaying--;
};
};
};
};
}
private function updateAllFXVol():void{
var _local1:SoundObject;
var _local2:String;
for (_local2 in _aChannels) {
_local1 = _aChannels[_local2];
if (_local1 == null){
} else {
if (_local1.getType() == _C_FX){
_local1.setVolume(_iVolFX);
};
};
};
}
public function addMusic(_arg1:Sound, _arg2:String="", _arg3:Boolean=false):void{
var _local4:Object;
if (_arg2 == ""){
return;
};
if (_aMusic[_arg2] == undefined){
_local4 = createSoundAsset(_C_MUSIC, _arg1, _arg2, _arg3);
_aMusic[_arg2] = _local4;
};
}
public function playFX(_arg1:String="", _arg2:int=0, _arg3:int=1, _arg4:Number=1, _arg5:Number=0):void{
var _local6:Object;
if (!_bFX){
return;
};
if (_aFX[_arg1] != undefined){
_local6 = _aFX[_arg1];
if (_arg4 > _iVolFX){
_arg4 = _iVolFX;
};
playIt(_local6, _arg2, _arg3, _arg4, _arg5);
};
}
public function stopAll():void{
stopFX();
stopMusic();
_aChannels = new Array();
}
public function fadeMusic(_arg1:String="", _arg2:Number=0, _arg3:Number=1, _arg4:int=1000):void{
if (_arg2 > _iVolMusic){
_arg2 = _iVolMusic;
};
fade(_C_MUSIC, _arg1, _arg2, _arg3, _arg4);
}
public function playMusic(_arg1:String="", _arg2:int=0, _arg3:int=1, _arg4:Number=1, _arg5:Number=0):void{
var _local6:Object;
if (!_bMusic){
return;
};
if (_aMusic[_arg1] != undefined){
_local6 = _aMusic[_arg1];
if (_arg4 > _iVolMusic){
_arg4 = _iVolMusic;
};
playIt(_local6, _arg2, _arg3, _arg4, _arg5);
};
}
public function stopFX(_arg1:String=""):void{
var _local2:SoundObject;
var _local3:Object;
var _local4:String;
var _local5:Boolean;
for (_local4 in _aChannels) {
_local2 = _aChannels[_local4];
if (_local2 == null){
} else {
if (_local2.getType() == _C_FX){
_local5 = true;
if (((!((_arg1 == ""))) && (!((_local2.getID() == _arg1))))){
_local5 = false;
};
if (_local5){
_local2._soundChannel.stop();
_local3 = _aFX[_local2.getID()];
_local3.iPlaying--;
};
};
};
};
}
public function fadeFX(_arg1:String="", _arg2:Number=0, _arg3:Number=1, _arg4:int=1000):void{
if (_arg2 > _iVolFX){
_arg2 = _iVolFX;
};
fade(_C_FX, _arg1, _arg2, _arg3, _arg4);
}
public function setMusicVolume(_arg1:int):void{
_iVolMusic = Number((_arg1 / 100));
updateAllMusicVol();
}
private function fade(_arg1:int, _arg2:String, _arg3:Number, _arg4:Number, _arg5:int):void{
var _local6:SoundObject;
var _local7:Object;
var _local8:String;
var _local9:Boolean;
for (_local8 in _aChannels) {
_local6 = _aChannels[_local8];
if (_local6 == null){
} else {
if (_local6.getType() == _arg1){
_local9 = true;
if (((!((_arg2 == ""))) && (!((_local6.getID() == _arg2))))){
_local9 = false;
};
if (_local9){
_local6.fade(_arg3, _arg4, _arg5);
};
};
};
};
}
public function getFXVolume():Number{
return (_iVolFX);
}
private function updateAllMusicVol():void{
var _local1:SoundObject;
var _local2:String;
for (_local2 in _aChannels) {
_local1 = _aChannels[_local2];
if (_local1 == null){
} else {
if (_local1.getType() == _C_MUSIC){
_local1.setVolume(_iVolMusic);
};
};
};
}
public function getMusicVolume():Number{
return (_iVolMusic);
}
public function setMusic(_arg1:Boolean):void{
_bMusic = _arg1;
}
public function setFXVolume(_arg1:int):void{
_iVolFX = Number((_arg1 / 100));
updateAllFXVol();
}
public function getFX():Boolean{
return (_bFX);
}
public function setFX(_arg1:Boolean):void{
_bFX = _arg1;
}
public function soundComplete(_arg1:int, _arg2:String, _arg3:String):void{
var _local4:SoundObject;
var _local5:Boolean;
if (_aChannels[_arg3] != null){
_local4 = _aChannels[_arg3];
_local4._soundChannel.removeEventListener(Event.SOUND_COMPLETE, _local4.onSoundComplete);
_local5 = false;
if (_arg1 == _C_FX){
if (_aFX[_arg2] != null){
_aFX[_arg2].iPlaying--;
_local5 = _aFX[_arg2].bMultiple;
};
} else {
if (_arg1 == _C_MUSIC){
if (_aMusic[_arg2] != null){
_aMusic[_arg2].iPlaying--;
_local5 = _aMusic[_arg2].bMultiple;
};
};
};
if (_local5){
_aChannels[_arg3] = null;
delete _aChannels[_arg3];
};
};
}
public function addFX(_arg1:Sound, _arg2:String="", _arg3:Boolean=true):void{
var _local4:Object;
if (_arg2 == ""){
return;
};
if (_aFX[_arg2] == undefined){
_local4 = createSoundAsset(_C_FX, _arg1, _arg2, _arg3);
_aFX[_arg2] = _local4;
};
}
public function findSoundObject(_arg1:String):SoundObject{
var _local2:SoundObject;
var _local3:String;
for (_local3 in _aChannels) {
if (_aChannels[_local3] == null){
continue;
} else {
if (_aChannels[_local3].getID() == _arg1){
_local2 = _aChannels[_local3];
break;
};
};
};
return (_local2);
}
private function createSoundAsset(_arg1:int, _arg2:Sound, _arg3:String, _arg4:Boolean):Object{
var _local5:Object;
_local5 = new Object();
_local5.iType = _arg1;
_local5.sound = _arg2;
_local5.soundID = _arg3;
_local5.bMultiple = _arg4;
_local5.iPlaying = 0;
return (_local5);
}
public function getMusic():Boolean{
return (_bMusic);
}
public function playIt(_arg1:Object, _arg2:int=0, _arg3:int=1, _arg4:Number=1, _arg5:Number=0):void{
var _local6:Boolean;
var _local7:SoundObject;
var _local8:String;
_local6 = false;
if (!_arg1.bMultiple){
_local7 = findSoundObject(_arg1.soundID);
};
if (_local7 == null){
_local7 = new SoundObject(this);
} else {
_local6 = true;
if (_local7.isFading()){
_local7.killFadeTimer();
};
_local7._soundChannel.stop();
};
_local7._soundChannel = _arg1.sound.play(_arg2, _arg3);
_local7._soundTransform.volume = _arg4;
_local7._soundTransform.pan = _arg5;
_local7._soundChannel.soundTransform = _local7._soundTransform;
if (!_local6){
_arg1.iPlaying++;
_local8 = (getTimer() + _arg1.soundID);
_local7.setID(_arg1.iType, _arg1.soundID, _local8);
_local7._soundChannel.addEventListener(Event.SOUND_COMPLETE, _local7.onSoundComplete, false, 0, true);
_aChannels[_local8] = _local7;
};
}
}
}//package com.meteorgames.libs.sound
Section 9
//SoundObject (com.meteorgames.libs.sound.SoundObject)
package com.meteorgames.libs.sound {
import flash.media.*;
import flash.events.*;
import flash.utils.*;
public class SoundObject {
private var _objParent:Object;
private var _iType:int;
private var _nFadeVol:Number;
private var _tFade:Timer;
private var _nFadePan:Number;
public var _soundChannel:SoundChannel;
private var _sSoundID:String;
private var _iFadeVolTarget:Number;
private var _sCustomID:String;
private var _iFadePanTarget:Number;
public var _soundTransform:SoundTransform;
public function SoundObject(_arg1:Object){
_objParent = _arg1;
_iType = 0;
_sSoundID = "";
_sCustomID = "";
_tFade = new Timer(0, 0);
_nFadeVol = 0;
_nFadePan = 0;
_iFadeVolTarget = 0;
_iFadePanTarget = 0;
_soundChannel = new SoundChannel();
_soundTransform = new SoundTransform();
}
public function stop():void{
_soundChannel.stop();
if (_tFade.running){
_tFade.stop();
};
_objParent.soundComplete(_iType, _sSoundID, _sCustomID);
}
public function isFading():Boolean{
return (_tFade.running);
}
public function fade(_arg1:Number, _arg2:Number, _arg3:int):void{
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:int;
if (_arg1 == _soundTransform.volume){
if (_arg2 == _soundTransform.pan){
return;
};
};
if (_tFade.running){
_tFade.stop();
};
_iFadeVolTarget = _arg1;
_iFadePanTarget = _arg2;
_local4 = 100;
_local5 = Math.abs((_soundTransform.volume - _iFadeVolTarget));
_local6 = Math.abs((_soundTransform.pan - _iFadePanTarget));
_local7 = int((_arg3 / _local4));
_nFadeVol = Number((_local5 / _local7));
_nFadePan = Number((_local6 / _local7));
if (_iFadeVolTarget < _soundTransform.volume){
_nFadeVol = (_nFadeVol * -1);
};
if (_iFadePanTarget < _soundTransform.pan){
_nFadePan = (_nFadePan * -1);
};
startFadeTimer(_local4, _local7);
}
public function onSoundComplete(_arg1:Event):void{
_objParent.soundComplete(_iType, _sSoundID, _sCustomID);
}
private function onTimerFade(_arg1:TimerEvent):void{
_soundTransform.volume = (_soundTransform.volume + _nFadeVol);
_soundTransform.pan = (_soundTransform.pan + _nFadePan);
_soundChannel.soundTransform = _soundTransform;
}
private function onTimerCompleteFade(_arg1:TimerEvent):void{
_soundTransform.volume = _iFadeVolTarget;
_soundTransform.pan = _iFadePanTarget;
_soundChannel.soundTransform = _soundTransform;
if (_soundTransform.volume <= 0){
_soundChannel.stop();
_objParent.soundComplete(_iType, _sSoundID, _sCustomID);
};
}
public function setVolume(_arg1:Number):void{
_soundTransform.volume = _arg1;
_soundChannel.soundTransform = _soundTransform;
}
public function killFadeTimer():void{
_tFade.reset();
if (_tFade.hasEventListener(TimerEvent.TIMER)){
_tFade.removeEventListener(TimerEvent.TIMER, onTimerFade);
};
if (_tFade.hasEventListener(TimerEvent.TIMER_COMPLETE)){
_tFade.removeEventListener(TimerEvent.TIMER_COMPLETE, onTimerCompleteFade);
};
}
private function startFadeTimer(_arg1:Number, _arg2:int):void{
_tFade = new Timer(_arg1, _arg2);
if (!_tFade.hasEventListener(TimerEvent.TIMER)){
_tFade.addEventListener(TimerEvent.TIMER, onTimerFade, false, 0, true);
};
if (!_tFade.hasEventListener(TimerEvent.TIMER_COMPLETE)){
_tFade.addEventListener(TimerEvent.TIMER_COMPLETE, onTimerCompleteFade, false, 0, true);
};
_tFade.start();
}
public function getType():int{
return (_iType);
}
public function getID():String{
return (_sSoundID);
}
public function setID(_arg1:int, _arg2:String, _arg3:String){
_iType = _arg1;
_sSoundID = _arg2;
_sCustomID = _arg3;
}
}
}//package com.meteorgames.libs.sound
Section 10
//XVar (com.meteorgames.libs.xvars.XVar)
package com.meteorgames.libs.xvars {
public class XVar {
private var _aXVar:Array;
public function XVar(_arg1){
_aXVar = [];
create(_arg1);
}
public function add(_arg1):void{
var _local2:*;
if (_aXVar[0][0] > 0){
_aXVar[0][1] = (_aXVar[0][1] + (_aXVar[0][0] * _arg1));
} else {
_local2 = 0;
while (_local2 < _arg1.length) {
_aXVar[0][1].push(_arg1.charCodeAt(_local2));
_local2++;
};
};
}
public function set(_arg1):void{
create(_arg1);
}
private function create(_arg1):void{
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
_aXVar = [];
_local2 = [];
_local3 = typeof(_arg1);
if (_local3.toLowerCase() == "string"){
_local2.push(0);
_local4 = [];
_local5 = 0;
while (_local5 < _arg1.length) {
_local4.push(_arg1.charCodeAt(_local5));
_local5++;
};
_local2.push(_local4);
} else {
if (_local3.toLowerCase() == "number"){
_local2.push((11 + int((Math.random() * 100))));
_local2.push((_arg1 * _local2[0]));
};
};
_aXVar.push(_local2);
}
public function out(){
var _local1:*;
var _local2:*;
if (_aXVar[0][0] > 0){
return ((_aXVar[0][1] / _aXVar[0][0]));
};
_local1 = "";
_local2 = 0;
while (_local2 < _aXVar[0][1].length) {
_local1 = (_local1 + String.fromCharCode(_aXVar[0][1][_local2]));
_local2++;
};
return (_local1);
}
}
}//package com.meteorgames.libs.xvars
Section 11
//Bounce (fl.transitions.easing.Bounce)
package fl.transitions.easing {
public class Bounce {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / _arg4);
if (_arg1 < (1 / 2.75)){
return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2));
};
if (_arg1 < (2 / 2.75)){
_arg1 = (_arg1 - (1.5 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2));
};
if (_arg1 < (2.5 / 2.75)){
_arg1 = (_arg1 - (2.25 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2));
};
_arg1 = (_arg1 - (2.625 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return (((_arg3 - easeOut((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
if (_arg1 < (_arg4 / 2)){
return (((easeIn((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2));
};
return ((((easeOut(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2));
}
}
}//package fl.transitions.easing
Section 12
//None (fl.transitions.easing.None)
package fl.transitions.easing {
public class None {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
}
}//package fl.transitions.easing
Section 13
//Regular (fl.transitions.easing.Regular)
package fl.transitions.easing {
public class Regular {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / _arg4);
return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / _arg4);
return ((((_arg3 * _arg1) * _arg1) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2));
};
--_arg1;
return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2));
}
}
}//package fl.transitions.easing
Section 14
//Strong (fl.transitions.easing.Strong)
package fl.transitions.easing {
public class Strong {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / _arg4);
return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2));
}
}
}//package fl.transitions.easing
Section 15
//Tween (fl.transitions.Tween)
package fl.transitions {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class Tween extends EventDispatcher {
private var _position:Number;// = NAN
public var prevTime:Number;// = NAN
public var prevPos:Number;// = NAN
public var isPlaying:Boolean;// = false
public var begin:Number;// = NAN
private var _fps:Number;// = NAN
private var _time:Number;// = NAN
public var change:Number;// = NAN
private var _finish:Number;// = NAN
public var looping:Boolean;// = false
private var _intervalID:uint;// = 0
public var func:Function;
private var _timer:Timer;// = null
private var _startTime:Number;// = NAN
public var prop:String;// = ""
private var _duration:Number;// = NAN
public var obj:Object;// = null
public var useSeconds:Boolean;// = false
protected static var _mc:MovieClip = new MovieClip();
public function Tween(_arg1:Object, _arg2:String, _arg3:Function, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Boolean=false){
isPlaying = false;
obj = null;
prop = "";
func = function (_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
};
begin = NaN;
change = NaN;
useSeconds = false;
prevTime = NaN;
prevPos = NaN;
looping = false;
_duration = NaN;
_time = NaN;
_fps = NaN;
_position = NaN;
_startTime = NaN;
_intervalID = 0;
_finish = NaN;
_timer = null;
super();
if (!arguments.length){
return;
};
this.obj = _arg1;
this.prop = _arg2;
this.begin = _arg4;
this.position = _arg4;
this.duration = _arg6;
this.useSeconds = _arg7;
if ((_arg3 is Function)){
this.func = _arg3;
};
this.finish = _arg5;
this._timer = new Timer(100);
this.start();
}
public function continueTo(_arg1:Number, _arg2:Number):void{
this.begin = this.position;
this.finish = _arg1;
if (!isNaN(_arg2)){
this.duration = _arg2;
};
this.start();
}
public function stop():void{
this.stopEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_STOP, this._time, this._position));
}
private function fixTime():void{
if (this.useSeconds){
this._startTime = (getTimer() - (this._time * 1000));
};
}
public function set FPS(_arg1:Number):void{
var _local2:Boolean;
_local2 = this.isPlaying;
this.stopEnterFrame();
this._fps = _arg1;
if (_local2){
this.startEnterFrame();
};
}
public function get finish():Number{
return ((this.begin + this.change));
}
public function get duration():Number{
return (this._duration);
}
protected function startEnterFrame():void{
var _local1:Number;
if (isNaN(this._fps)){
_mc.addEventListener(Event.ENTER_FRAME, this.onEnterFrame, false, 0, true);
} else {
_local1 = (1000 / this._fps);
this._timer.delay = _local1;
this._timer.addEventListener(TimerEvent.TIMER, this.timerHandler, false, 0, true);
this._timer.start();
};
this.isPlaying = true;
}
public function set time(_arg1:Number):void{
this.prevTime = this._time;
if (_arg1 > this.duration){
if (this.looping){
this.rewind((_arg1 - this._duration));
this.update();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_LOOP, this._time, this._position));
} else {
if (this.useSeconds){
this._time = this._duration;
this.update();
};
this.stop();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_FINISH, this._time, this._position));
};
} else {
if (_arg1 < 0){
this.rewind();
this.update();
} else {
this._time = _arg1;
this.update();
};
};
}
protected function stopEnterFrame():void{
if (isNaN(this._fps)){
_mc.removeEventListener(Event.ENTER_FRAME, this.onEnterFrame);
} else {
this._timer.stop();
};
this.isPlaying = false;
}
public function getPosition(_arg1:Number=NaN):Number{
if (isNaN(_arg1)){
_arg1 = this._time;
};
return (this.func(_arg1, this.begin, this.change, this._duration));
}
public function set finish(_arg1:Number):void{
this.change = (_arg1 - this.begin);
}
public function set duration(_arg1:Number):void{
this._duration = ((_arg1)<=0) ? Infinity : _arg1;
}
public function setPosition(_arg1:Number):void{
this.prevPos = this._position;
if (this.prop.length){
this.obj[this.prop] = (this._position = _arg1);
};
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_CHANGE, this._time, this._position));
}
public function resume():void{
this.fixTime();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_RESUME, this._time, this._position));
}
public function fforward():void{
this.time = this._duration;
this.fixTime();
}
protected function onEnterFrame(_arg1:Event):void{
this.nextFrame();
}
public function get position():Number{
return (this.getPosition(this._time));
}
public function yoyo():void{
this.continueTo(this.begin, this.time);
}
public function nextFrame():void{
if (this.useSeconds){
this.time = ((getTimer() - this._startTime) / 1000);
} else {
this.time = (this._time + 1);
};
}
protected function timerHandler(_arg1:TimerEvent):void{
this.nextFrame();
_arg1.updateAfterEvent();
}
public function get FPS():Number{
return (this._fps);
}
public function rewind(_arg1:Number=0):void{
this._time = _arg1;
this.fixTime();
this.update();
}
public function set position(_arg1:Number):void{
this.setPosition(_arg1);
}
public function get time():Number{
return (this._time);
}
private function update():void{
this.setPosition(this.getPosition(this._time));
}
public function start():void{
this.rewind();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_START, this._time, this._position));
}
public function prevFrame():void{
if (!this.useSeconds){
this.time = (this._time - 1);
};
}
}
}//package fl.transitions
Section 16
//TweenEvent (fl.transitions.TweenEvent)
package fl.transitions {
import flash.events.*;
public class TweenEvent extends Event {
public var time:Number;// = NAN
public var position:Number;// = NAN
public static const MOTION_START:String = "motionStart";
public static const MOTION_STOP:String = "motionStop";
public static const MOTION_LOOP:String = "motionLoop";
public static const MOTION_CHANGE:String = "motionChange";
public static const MOTION_FINISH:String = "motionFinish";
public static const MOTION_RESUME:String = "motionResume";
public function TweenEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Boolean=false, _arg5:Boolean=false){
time = NaN;
position = NaN;
super(_arg1, _arg4, _arg5);
this.time = _arg2;
this.position = _arg3;
}
override public function clone():Event{
return (new TweenEvent(this.type, this.time, this.position, this.bubbles, this.cancelable));
}
}
}//package fl.transitions
Section 17
//fps (game.fps)
package game {
import flash.text.*;
import flash.utils.*;
public class fps extends gameObject {
private var sTextColor:String;
private var iMilliseconds:int;
private var iFrames:int;// = 0
private var tx_fps:TextField;
private var bKeyDown:Boolean;// = false
public function fps(_arg1:String="#ffffff"):void{
tx_fps = new TextField();
iFrames = 0;
iMilliseconds = getTimer();
bKeyDown = false;
super();
cacheAsBitmap = true;
tx_fps.selectable = false;
sTextColor = _arg1;
visible = false;
addChild(tx_fps);
}
public function toggleFPS():void{
if (((((Key.isDown(82)) && (Key.isDown(17)))) && (!(bKeyDown)))){
visible = !(visible);
bKeyDown = true;
} else {
if (((!(Key.isDown(82))) || (!(Key.isDown(17))))){
bKeyDown = false;
};
};
}
override public function init():void{
Key.initialize(stage);
fn_state = frameCount;
}
function frameCount():void{
var _local1:Number;
toggleFPS();
_local1 = ((getTimer() - iMilliseconds) / 1000);
iFrames++;
if (_local1 > 1){
tx_fps.htmlText = (((("<font face='Georgia' color='" + sTextColor) + "'>") + int(Math.round((iFrames / _local1))).toString()) + " fps</font > ");
tx_fps.autoSize = TextFieldAutoSize.CENTER;
iMilliseconds = getTimer();
iFrames = 0;
};
}
}
}//package game
Section 18
//gameObject (game.gameObject)
package game {
import flash.display.*;
public class gameObject extends MovieClip {
public var fn_state:Function;// = null
public function gameObject():void{
fn_state = null;
super();
tabEnabled = false;
focusRect = false;
tabChildren = false;
fn_state = init;
}
public function init():void{
fn_state = wait;
}
public function kill():void{
killChildren();
parent.removeChild(this);
}
public function wait():void{
}
public function killChildren():void{
var _local1:DisplayObject;
for each (_local1 in this) {
if ((_local1 is gameObject)){
gameObject(_local1).kill();
} else {
removeChild(_local1);
};
};
}
public function get state():Function{
return (fn_state);
}
public function distanceFormula(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
_local3 = Math.sqrt((Math.pow((((width / 2) + x) - _arg1), 2) + Math.pow((((width / 2) + y) - _arg2), 2)));
return (_local3);
}
public function update():void{
if (fn_state != null){
fn_state.call();
updateChildren();
};
}
public function updateChildren():void{
var _local1:int;
_local1 = 0;
while (_local1 < numChildren) {
if ((getChildAt(_local1) is gameObject)){
gameObject(getChildAt(_local1)).update();
};
_local1++;
};
}
}
}//package game
Section 19
//gameText (game.gameText)
package game {
public class gameText {
public static const GAME_OVER:String = "<p align='center'>Game Over!<br>You ate % percent of the level.<br>You've scored % points so far.</p>";
public static const BITES_TAKEN:String = "%<br>Need %";
public static const LIVES_TEXT:String = (("<p align='center'>You have % " + LIVES) + " left.</p>");
public static const RETRY:String = "<font size='24'>Retry?</font>";
public static const START_SCREEN:String = "<font size='24'>Return to start</font>";
public static const EATEN_TEXT:String = "Eaten:";
public static const QUIT:String = "<font size='24'>Quit</font>";
public static const PAUSE:String = "<font size='24'>Pause</font>";
public static const BITES_TEXT:String = "Bites left:";
public static const UNPAUSE:String = "<font size='24'>Unpause</font>";
public static const FINAL_GAME_OVER:String = "% percent...<br>% points total...";
public static const INSTRUCTIONS:String = "Feed the hungry Grub!<br>Use the mouse to position where it will bite next.<br>Eat as much as possible in % bites.<br><font size='20'>You only have % lives, so use each bite wisely.</font>";
public static const LIVES:String = "lives";
public static const PLAY:String = "<font size='24'>Play</font>";
public static const SUBMIT_TEXT:String = "Submitting score...";
public static const LIFE:String = "life";
public static const TITLE:String = "OMNOMNOM*MUNCH*";
public static function insertVariables(_arg1:String, _arg2, ... _args):String{
var _local4:int;
_local4 = 0;
while (_local4 < _args.length) {
_arg1 = _arg1.replace(_arg2, _args[_local4]);
_local4++;
};
return (_arg1);
}
}
}//package game
Section 20
//Key (game.Key)
package game {
import flash.display.*;
import flash.events.*;
public class Key {
private static var initialized:Boolean = false;
private static var keysDown:Object = new Object();
private static var keyboardEventHolder:KeyboardEvent;
public static function initialize(_arg1:Stage){
if (!initialized){
_arg1.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
_arg1.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
_arg1.addEventListener(Event.DEACTIVATE, clearKeys);
initialized = true;
};
}
private static function clearKeys(_arg1:Event):void{
keysDown = new Object();
}
public static function isDown(_arg1:uint):Boolean{
if (!initialized){
throw (new Error("Key class has yet been initialized."));
};
return (Boolean((_arg1 in keysDown)));
}
private static function keyPressed(_arg1:KeyboardEvent):void{
keyboardEventHolder = _arg1;
keysDown[keyboardEventHolder.keyCode] = true;
}
private static function keyReleased(_arg1:KeyboardEvent):void{
if ((_arg1.keyCode in keysDown)){
delete keysDown[_arg1.keyCode];
};
}
}
}//package game
Section 21
//_startScreen_96 (game_fla._startScreen_96)
package game_fla {
import flash.display.*;
import src.screens.*;
public dynamic class _startScreen_96 extends MovieClip {
public var sound_on_btn:SimpleButton;
public var music_on_btn:SimpleButton;
public var sound_off_btn:SimpleButton;
public var music_off_btn:SimpleButton;
public var play_btn:SimpleButton;
public function _startScreen_96(){
addFrameScript(0, frame1, 6, frame7);
}
function frame7(){
mainScreen.playSound(mainScreen.MUNCH02);
}
function frame1(){
}
}
}//package game_fla
Section 22
//empty_1 (game_fla.empty_1)
package game_fla {
import flash.display.*;
public dynamic class empty_1 extends MovieClip {
public function empty_1(){
addFrameScript(0, frame1);
}
function frame1(){
visible = false;
}
}
}//package game_fla
Section 23
//endText_3 (game_fla.endText_3)
package game_fla {
import flash.display.*;
import flash.text.*;
public dynamic class endText_3 extends MovieClip {
public var msg:TextField;
}
}//package game_fla
Section 24
//main_64 (game_fla.main_64)
package game_fla {
import flash.display.*;
import flash.text.*;
public dynamic class main_64 extends MovieClip {
public var god_mode_btn:SimpleButton;
public var bites_left:TextField;
public var frame:MovieClip;
public var resume_btn:SimpleButton;
public var quit_btn:SimpleButton;
public var percentage:TextField;
public var pause_btn:SimpleButton;
public var munch:MovieClip;
public var shapeArea:MovieClip;
public var om:MovieClip;
public var nom1:MovieClip;
public var nom2:MovieClip;
}
}//package game_fla
Section 25
//results_90 (game_fla.results_90)
package game_fla {
import flash.display.*;
public dynamic class results_90 extends MovieClip {
public var grow:MovieClip;
public var next_match:SimpleButton;
}
}//package game_fla
Section 26
//partition (src.elements.partition)
package src.elements {
import flash.display.*;
import flash.geom.*;
public class partition {
public var ypos:int;// = 0
private var iInitialAlpha:int;
private var iWidth:int;// = 0
public var xpos:int;// = 0
private var objImageData:BitmapData;
private var iHeight:int;// = 0
private var objAlphaData:BitmapData;
private var iCurrentAlpha:int;
private var objRect:Rectangle;
public function partition(_arg1:BitmapData=null, _arg2:BitmapData=null, _arg3:int=0, _arg4:int=0, _arg5:int=0, _arg6:int=0):void{
iWidth = 0;
iHeight = 0;
xpos = 0;
ypos = 0;
objRect = new Rectangle();
super();
if (((!((_arg1 == null))) && (!((_arg2 == null))))){
createNewPartition(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6);
} else {
if ((((_arg1 == null)) && (!((_arg2 == null))))){
throw (new Error("No image data to accompany alpha data!"));
};
if (((!((_arg1 == null))) && ((_arg2 == null)))){
throw (new Error("No alpha data to accompany image data!"));
};
};
}
public function createNewPartition(_arg1:BitmapData, _arg2:BitmapData, _arg3:int, _arg4:int, _arg5:int, _arg6:int):void{
objImageData = _arg1;
objAlphaData = _arg2;
xpos = _arg3;
ypos = _arg4;
iWidth = _arg5;
iHeight = _arg6;
objRect.x = xpos;
objRect.y = ypos;
objRect.width = iWidth;
objRect.height = iHeight;
calculateAlpha();
iInitialAlpha = iCurrentAlpha;
}
public function get originalAlpha():int{
return (iInitialAlpha);
}
public function get width():int{
return (iWidth);
}
public function get currentCount():int{
return (iCurrentAlpha);
}
public function calculateAlpha():void{
var _local1:int;
var _local2:int;
var _local3:uint;
var _local4:uint;
iCurrentAlpha = 0;
if (objImageData == null){
throw (new Error("Cannot calculate alpha! No image data provided."));
};
if (objAlphaData == null){
throw (new Error("Cannot calculate alpha! No alpha data provided."));
};
if (xpos > objImageData.width){
throw (new Error("X coordinate falls outside the boundaries of the image"));
};
if (ypos > objImageData.height){
throw (new Error("Y coordinate falls outside the boundaries of the image"));
};
if ((((width == 0)) || ((height == 0)))){
throw (new Error("Width/Height does not contain a significant value"));
};
_local1 = ypos;
while (_local1 < (ypos + iHeight)) {
_local2 = xpos;
while (_local2 < (xpos + iWidth)) {
_local3 = objImageData.getPixel32(_local2, _local1);
_local4 = objAlphaData.getPixel32(_local2, _local1);
if ((((_local3 > 2281701376)) && ((_local4 < 2298478591)))){
iCurrentAlpha++;
};
_local2++;
};
_local1++;
};
}
public function get rect():Rectangle{
return (objRect);
}
public function get height():int{
return (iHeight);
}
public function get y():int{
return (ypos);
}
public function get x():int{
return (xpos);
}
}
}//package src.elements
Section 27
//crumb (src.particles.crumb)
package src.particles {
import flash.geom.*;
import game.*;
import src.screens.*;
public class crumb extends gameObject {
private var nSpreadSpeed:Number;
private var nFallSpeed:Number;
public function crumb(_arg1:Rectangle):void{
nFallSpeed = ((Math.random() * 5) - 5);
nSpreadSpeed = ((Math.random() * 2) - 1);
super();
cacheAsBitmap = true;
mouseEnabled = false;
mouseChildren = false;
x = ((Math.random() * _arg1.width) + _arg1.x);
y = ((Math.random() * _arg1.height) + _arg1.y);
graphics.beginFill(0x999999);
graphics.drawCircle(0, 0, 2);
graphics.endFill();
fn_state = fall;
}
function fall():void{
y = (y + nFallSpeed);
x = (x + nSpreadSpeed);
nFallSpeed = (nFallSpeed + 0.5);
if (y > mainScreen.SCREEN_HEIGHT){
kill();
};
}
}
}//package src.particles
Section 28
//gameScreen (src.screens.subscreens.gameScreen)
package src.screens.subscreens {
import flash.display.*;
import flash.text.*;
import flash.events.*;
import flash.geom.*;
import fl.transitions.*;
import game.*;
import flash.utils.*;
import com.meteorgames.libs.xvars.*;
import src.elements.*;
import fl.transitions.easing.*;
import src.screens.*;
import src.particles.*;
import flash.system.*;
import flash.ui.*;
public class gameScreen extends gameObject {
private const NUM_COLS:int = 16;
private const NUM_ROWS:int = 16;
private const MAX_BITES:int = 25;
private const MULTIPLIER:int = 1000;
private var objGodModeBtn:SimpleButton;
private var objAlphaTween:Tween;
private var objImgHolder:MovieClip;
private var iNumBites:int;
private var bMusicStarted:Boolean;// = false
private var objChompShape:MovieClip;
private var xvScore:XVar;
private var objWordArray:Array;
private var objInstructions:MovieClip;
private var objScreen:MovieClip;
private var iChompIndex:int;// = -1
private var objPartitionArray:Array;
private var objImageData:BitmapData;
private var objNom1:MovieClip;
private var objNom2:MovieClip;
private var objTimer:Timer;
private var objQuitBtn:SimpleButton;
private var iLevel:int;// = 0
private var objPauseBtn:SimpleButton;
private var objImage:Bitmap;
private var iNumLives:int;// = 3
private var iBitesLeft:int;
private var xvPrevScore:XVar;
private var objChompArea:MovieClip;
private var objLevel:MovieClip;
private var bPlayerQuit:Boolean;// = false
private var iTime:int;// = 3000
private var objResultTween:Tween;
private var objChompArray:Array;
private var bKeyDown:Boolean;// = false
private var objAlphaData:BitmapData;
private var objAlphaImage:Bitmap;
private var objNextMatchBtn:SimpleButton;
private var objGrubGrow:MovieClip;
private var objPlayScreen:MovieClip;
private var objTweenX:Tween;
private var objTweenY:Tween;
private var objOm:MovieClip;
private var iNextIndex:int;// = -1
private var objNextShape:MovieClip;
private var bGodModeEntered:Boolean;// = false
private var objPopUpTween:Tween;
private var objShade:MovieClip;
private var iWordIndex:int;// = -1
private var iInitialAlpha:int;
private var bGodMode:Boolean;// = false
private var objLevelArray:Array;
private var objPercentText:TextField;
private var xvRemainingAlpha:XVar;
private var objImgDataCopy:BitmapData;
private var objMagnifyArray:Array;
private var objBitesLeftText:TextField;
private var objPrevLevel:MovieClip;
private var iPercentage:int;
private var objResumeBtn:SimpleButton;
private var objEndScreen:MovieClip;
private var objMunch:MovieClip;
private var objGameOver:MovieClip;
public function gameScreen():void{
var _local1:int;
objLevelArray = new Array(_level0, _level1, _level2, _level3, _level4, _level5, _level6, _level7, _level8, _level9);
objChompArray = new Array();
iChompIndex = -1;
iNextIndex = -1;
xvScore = new XVar(0);
xvPrevScore = new XVar(0);
objPartitionArray = new Array((NUM_COLS * NUM_ROWS));
objTimer = new Timer(3000);
iTime = 3000;
objInstructions = new gameInstructions();
objGameOver = new gameOverText();
objMagnifyArray = new Array(1);
iLevel = 0;
objPlayScreen = new _mcPlayScreen();
objScreen = MovieClip(objPlayScreen.play_area);
objOm = MovieClip(objScreen.om);
objNom1 = MovieClip(objScreen.nom1);
objNom2 = MovieClip(objScreen.nom2);
objMunch = MovieClip(objScreen.munch);
objBitesLeftText = TextField(objScreen.bites_left);
objPercentText = TextField(objScreen.percentage);
objPauseBtn = SimpleButton(objScreen.pause_btn);
objResumeBtn = SimpleButton(objScreen.resume_btn);
objQuitBtn = SimpleButton(objScreen.quit_btn);
objNextMatchBtn = SimpleButton(objPlayScreen.results.next_match);
objWordArray = new Array(objOm, objNom1, objNom2, objMunch);
iWordIndex = -1;
objChompArea = new MovieClip();
objShade = new MovieClip();
bGodMode = false;
bGodModeEntered = false;
bKeyDown = false;
objEndScreen = new _mcEndScreen();
bMusicStarted = false;
iNumLives = 3;
bPlayerQuit = false;
super();
cacheAsBitmap = true;
addChild(objEndScreen);
addChild(objPlayScreen);
objChompArray.push(MovieClip(objPlayScreen.Bite01));
objChompArray.push(MovieClip(objPlayScreen.Bite02));
objChompArray.push(MovieClip(objPlayScreen.Bite03));
objChompArray.push(MovieClip(objPlayScreen.Bite04));
objPauseBtn.addEventListener(MouseEvent.CLICK, togglePause, false, 0, true);
objResumeBtn.addEventListener(MouseEvent.CLICK, togglePause, false, 0, true);
objQuitBtn.addEventListener(MouseEvent.CLICK, quitMatch, false, 0, true);
objNextMatchBtn.addEventListener(MouseEvent.CLICK, hideResults, false, 0, true);
objNextMatchBtn.visible = false;
objResumeBtn.visible = false;
_local1 = 0;
while (_local1 < objChompArray.length) {
MovieClip(objChompArray[_local1]).mouseEnabled = false;
MovieClip(objChompArray[_local1]).mouseChildren = false;
MovieClip(objChompArray[_local1]).cacheAsBitmap = true;
MovieClip(objChompArray[_local1]).visible = false;
_local1++;
};
_local1 = 0;
while (_local1 < objPartitionArray.length) {
objPartitionArray[_local1] = new partition();
_local1++;
};
hideWords();
objGameOver.y = 50;
objGameOver.x = mainScreen.SCREEN_WIDTH;
SimpleButton(objGameOver.play_btn).addEventListener(MouseEvent.CLICK, hideGameOver, false, 0, true);
SimpleButton(objGameOver.return_btn).addEventListener(MouseEvent.CLICK, endGame, false, 0, true);
SimpleButton(objGameOver.submit_btn).addEventListener(MouseEvent.CLICK, submitScore, false, 0, true);
SimpleButton(objGameOver.finishSubmit).addEventListener(MouseEvent.CLICK, finishSubmit, false, 0, true);
SimpleButton(objGameOver.finishSubmit).visible = false;
addChild(objGameOver);
objInstructions.x = mainScreen.SCREEN_WIDTH;
objInstructions.y = 50;
TextField(objInstructions.text).htmlText = gameText.insertVariables(gameText.INSTRUCTIONS, "%", MAX_BITES, iNumLives);
SimpleButton(objInstructions.play_btn).addEventListener(MouseEvent.CLICK, hideInstructions, false, 0, true);
SimpleButton(objInstructions.return_btn).addEventListener(MouseEvent.CLICK, endGame, false, 0, true);
addChild(objInstructions);
objShade.graphics.beginFill(0, 0.5);
objShade.graphics.drawRect(0, 0, 440, 390);
objShade.graphics.endFill();
objShade.visible = false;
objGrubGrow = MovieClip(objPlayScreen.results.grow);
objGrubGrow.visible = false;
objGodModeBtn = SimpleButton(objScreen.god_mode_btn);
objGodModeBtn.addEventListener(MouseEvent.CLICK, skipToNextMatch, false, 0, true);
objGodModeBtn.visible = false;
objPauseBtn.visible = false;
objQuitBtn.visible = false;
}
public function pause():void{
MovieClip(objScreen.shapeArea).visible = false;
objChompShape.visible = false;
objNextShape.visible = false;
objTimer.stop();
fn_state = pauseState;
}
public function hideInstructions(_arg1:MouseEvent):void{
objPopUpTween.continueTo(mainScreen.SCREEN_WIDTH, 0.5);
objPopUpTween.addEventListener(TweenEvent.MOTION_FINISH, startNewGame, false, 0, true);
}
public function showGameOver():void{
iNumLives--;
if (iNumLives <= 0){
SimpleButton(objGameOver.play_btn).visible = false;
};
mainScreen(parent)._SYSTEM.logGameOver();
fn_state = wait;
iChompIndex = -1;
objChompShape.visible = false;
objTimer.reset();
showGameOverMsg();
objPauseBtn.visible = false;
objQuitBtn.visible = false;
objPopUpTween = new Tween(objGameOver, "x", Strong.easeOut, objGameOver.x, ((mainScreen.SCREEN_WIDTH - objGameOver.width) / 2), 0.5, true);
}
public function setNextLevel():void{
var _local1:Class;
if (iLevel >= objLevelArray.length){
iLevel = 0;
};
objPrevLevel = objLevel;
_local1 = objLevelArray[int(iLevel)];
objLevel = new (_local1);
objLevel.x = 58;
objLevel.y = 72;
}
public function scheduledMeal(_arg1:TimerEvent):void{
iWordIndex++;
if (iWordIndex < objWordArray.length){
showWords();
if (iWordIndex == (objWordArray.length - 1)){
eat();
};
} else {
hideWords();
};
}
public function setImage():void{
drawNewLevel();
getInitialAlpha();
fillMagnificationArray();
updateMagnificationArray();
}
public function playBiteSound():void{
var _local1:int;
_local1 = int((Math.random() * 4));
switch (_local1){
case 0:
mainScreen.playSound(mainScreen.MUNCH01);
break;
case 1:
mainScreen.playSound(mainScreen.MUNCH02);
break;
case 2:
mainScreen.playSound(mainScreen.MUNCH03);
break;
default:
mainScreen.playSound(mainScreen.MUNCH04);
break;
};
}
public function pauseState():void{
}
public function updateGame():void{
objChompShape.visible = true;
if ((((objTweenX == null)) || (!(objTweenX.isPlaying)))){
updateChompPosition();
} else {
objTweenX.finish = mouseX;
objTweenY.finish = mouseY;
};
updateMagnificationArray();
}
private function toggleGodMode():void{
if (((((((((Key.isDown(16)) && (Key.isDown(17)))) && (Key.isDown(71)))) && (Key.isDown(32)))) && (!(bKeyDown)))){
bGodModeEntered = true;
bGodMode = !(bGodMode);
objGodModeBtn.visible = !(objGodModeBtn.visible);
bKeyDown = true;
} else {
if (((((((!(Key.isDown(16))) || (!(Key.isDown(17))))) || (!(Key.isDown(71))))) || (!(Key.isDown(32))))){
bKeyDown = false;
};
};
}
public function quit():void{
Mouse.show();
objPauseBtn.visible = false;
objResumeBtn.visible = false;
objQuitBtn.visible = false;
objNextMatchBtn.visible = false;
setScore();
showGameOver();
}
public function goToNextMatch(_arg1:TweenEvent):void{
if (objResultTween.hasEventListener(TweenEvent.MOTION_FINISH)){
objResultTween.removeEventListener(TweenEvent.MOTION_FINISH, goToNextMatch);
};
objNextMatchBtn.visible = false;
iChompIndex = -1;
iLevel++;
MovieClip(objScreen.shapeArea).visible = true;
fn_state = addLevel;
}
private function hideResults(_arg1:MouseEvent):void{
objResultTween.removeEventListener(TweenEvent.MOTION_FINISH, showGrubGrowing);
objResultTween.continueTo(mainScreen.SCREEN_WIDTH, 0.5);
objResultTween.addEventListener(TweenEvent.MOTION_FINISH, goToNextMatch, false, 0, true);
}
public function showGameOverMsg():void{
var _local1:String;
var _local2:int;
var _local3:String;
_local1 = gameText.insertVariables(gameText.LIVES_TEXT, "%", iNumLives);
if (iNumLives == 1){
_local1 = gameText.insertVariables(_local1, gameText.LIVES, gameText.LIFE);
};
_local2 = int(((1 - (int(xvRemainingAlpha.out()) / iInitialAlpha)) * 100));
_local3 = gameText.insertVariables(gameText.GAME_OVER, "%", _local2.toString(), int(xvScore.out()));
if (((!(bPlayerQuit)) && ((iNumLives > 0)))){
_local3 = (_local3 + _local1);
};
TextField(objGameOver.text).htmlText = _local3;
}
public function hideMouse(_arg1:MouseEvent):void{
Mouse.hide();
}
public function setNewMatch():void{
var _local1:int;
var _local2:uint;
var _local3:Number;
objGrubGrow.visible = false;
objShade.visible = false;
MovieClip(objScreen.shapeArea).visible = true;
xvPrevScore.set(int(xvScore.out()));
fn_state = updateGame;
hideWords();
_local1 = 0;
while (_local1 < objChompArray.length) {
MovieClip(objChompArray[_local1]).visible = false;
_local1++;
};
xvRemainingAlpha = new XVar(0);
iBitesLeft = MAX_BITES;
iNumBites = 0;
objPauseBtn.visible = true;
objQuitBtn.visible = true;
setChompTimer();
getChompShape();
setImage();
iPercentage = objLevel.percent;
checkImage(true);
updateNumBites();
_local2 = System.totalMemory;
_local3 = (_local2 / (0x0400 * 0x0400));
}
public function finishSubmit(_arg1:MouseEvent):void{
showGameOverMsg();
SimpleButton(objGameOver.finishSubmit).visible = false;
SimpleButton(objGameOver.return_btn).visible = true;
}
public function hideWords():void{
iWordIndex = -1;
objOm.visible = false;
objNom1.visible = false;
objNom2.visible = false;
objMunch.visible = false;
}
public function lvlReady():void{
clearPrevLevel();
objLevel.cacheAsBitmap = true;
objScreen.addChildAt(objLevel, (objScreen.getChildIndex(MovieClip(objScreen.frame)) + 1));
setNewMatch();
}
public function waitingForMsg():void{
if (mainScreen(parent)._SYSTEM.serverHasResponded()){
TextField(objGameOver.text).htmlText = mainScreen(parent)._SYSTEM.getServerResponse();
fn_state = wait;
SimpleButton(objGameOver.finishSubmit).visible = true;
};
}
public function eatBitmap():void{
var _local1:Matrix;
var _local2:int;
var _local3:DisplayObject;
var _local4:Number;
var _local5:DisplayObject;
_local1 = new Matrix();
_local1.scale(objChompShape.scaleX, objChompShape.scaleY);
_local1.translate(int(((objChompShape.x - objLevel.x) - objScreen.x)), int(((objChompShape.y - objLevel.y) - objScreen.y)));
objAlphaImage.bitmapData.lock();
objAlphaImage.bitmapData.draw(objChompShape, _local1);
objAlphaImage.bitmapData.unlock();
_local2 = 0;
while (_local2 < objMagnifyArray.length) {
_local3 = MovieClip(objMagnifyArray[_local2]).getChildByName("holder");
_local4 = MovieClip(objMagnifyArray[_local2]).scaleX;
MovieClip(objMagnifyArray[_local2]).scaleX = 1;
MovieClip(objMagnifyArray[_local2]).scaleY = 1;
_local5 = Bitmap(MovieClip(_local3).getChildByName("surface"));
Bitmap(_local5).bitmapData.merge(objAlphaData, new Rectangle(0, 0, objAlphaData.width, objAlphaData.height), new Point(0, 0), 0xFF, 0xFF, 0xFF, 0xFF);
MovieClip(objMagnifyArray[_local2]).scaleX = _local4;
MovieClip(objMagnifyArray[_local2]).scaleY = _local4;
_local2++;
};
}
public function updateNumBites():void{
objBitesLeftText.htmlText = int((iBitesLeft - iNumBites)).toString();
}
public function quitMatch(_arg1:MouseEvent):void{
if ((((fn_state == updateGame)) || ((fn_state == pauseState)))){
bPlayerQuit = true;
SimpleButton(objGameOver.play_btn).visible = false;
quit();
};
}
private function theEnd():void{
objTimer.stop();
objTimer.removeEventListener(TimerEvent.TIMER, scheduledMeal);
objGodModeBtn.visible = false;
mainScreen.objSndMgr.stopAll();
fn_state = wait;
objPlayScreen.play();
}
override public function update():void{
toggleGodMode();
super.update();
}
public function showResults():void{
var _local1:DisplayObject;
objShade.x = objLevel.x;
objShade.y = objLevel.y;
objShade.visible = true;
fn_state = wait;
objChompShape.visible = false;
objNextShape.visible = false;
objPauseBtn.visible = false;
objQuitBtn.visible = false;
for each (_local1 in objMagnifyArray) {
_local1.visible = false;
};
objNextMatchBtn.visible = true;
MovieClip(objScreen.shapeArea).visible = false;
objTimer.reset();
objGrubGrow.visible = true;
objResultTween = new Tween(MovieClip(objPlayScreen.results), "x", Regular.easeOut, mainScreen.SCREEN_WIDTH, 0, 0.5, true);
objResultTween.addEventListener(TweenEvent.MOTION_FINISH, showGrubGrowing, false, 0, true);
}
public function startNewGame(_arg1:TweenEvent):void{
if (objPopUpTween.hasEventListener(TweenEvent.MOTION_FINISH)){
objPopUpTween.removeEventListener(TweenEvent.MOTION_FINISH, startNewGame);
};
if (!bMusicStarted){
mainScreen.playMusic(mainScreen.OMNOMNOM);
bMusicStarted = true;
};
mainScreen(parent)._SYSTEM.logGameStart();
xvScore.set(int(xvPrevScore.out()));
fn_state = addLevel;
}
public function unpause():void{
MovieClip(objScreen.shapeArea).visible = true;
objChompShape.visible = true;
objNextShape.visible = true;
objTimer.start();
fn_state = updateGame;
}
override public function init():void{
objTimer.addEventListener(TimerEvent.TIMER, scheduledMeal, false, 0, true);
showInstructions();
super.init();
}
public function togglePause(_arg1:MouseEvent):void{
if (fn_state == updateGame){
objPauseBtn.visible = false;
objResumeBtn.visible = true;
pause();
} else {
if (fn_state == pauseState){
objPauseBtn.visible = true;
objResumeBtn.visible = false;
unpause();
};
};
}
public function getInitialAlpha():void{
var _local1:int;
var _local2:int;
var _local3:Boolean;
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
var _local8:int;
iInitialAlpha = 0;
_local1 = objImage.width;
_local2 = objImage.height;
_local3 = false;
_local4 = 0;
while (_local4 < objPartitionArray.length) {
_local5 = (int((objImageData.width / NUM_COLS)) * (_local4 % NUM_COLS));
_local6 = (int((objImageData.height / NUM_ROWS)) * int((_local4 / NUM_COLS)));
if ((_local4 % NUM_COLS) != (NUM_COLS - 1)){
_local7 = int((objImageData.width / NUM_COLS));
_local1 = (_local1 - _local7);
} else {
_local7 = _local1;
_local1 = objImageData.width;
};
if ((_local4 % NUM_COLS) == 0){
_local3 = true;
} else {
_local3 = false;
};
if (int((_local4 / NUM_COLS)) != (NUM_ROWS - 1)){
_local8 = int((objImageData.height / NUM_ROWS));
if (_local3){
_local2 = (_local2 - _local8);
};
} else {
_local8 = _local2;
};
partition(objPartitionArray[_local4]).createNewPartition(objImageData, objAlphaData, _local5, _local6, _local7, _local8);
partition(objPartitionArray[_local4]).calculateAlpha();
iInitialAlpha = (iInitialAlpha + partition(objPartitionArray[_local4]).currentCount);
_local4++;
};
}
public function submitFinalScore(_arg1:MouseEvent):void{
mainScreen(parent)._SYSTEM.postPoints(int(xvScore.out()));
TextField(objEndScreen.endText.msg).htmlText = gameText.SUBMIT_TEXT;
SimpleButton(objEndScreen.submitScoreBtn).visible = false;
SimpleButton(objEndScreen.returnBtn).visible = false;
fn_state = waitingForFinalMsg;
}
public function drawNewLevel():void{
var _local1:DisplayObject;
var _local2:Matrix;
objImgHolder = new MovieClip();
objImgHolder.blendMode = BlendMode.LAYER;
objImageData = new BitmapData(440, 390, true, 0);
objImgDataCopy = new BitmapData(objImageData.width, objImageData.height);
objAlphaData = new BitmapData(objImageData.width, objImageData.height, true, 0);
for each (_local1 in objLevel.edibleArray) {
_local2 = new Matrix();
_local2.scale(_local1.scaleX, _local1.scaleX);
_local2.translate(_local1.x, _local1.y);
objImageData.draw(_local1, _local2);
_local1.visible = false;
};
objImgDataCopy.merge(objImageData, new Rectangle(0, 0, objImageData.width, objImageData.height), new Point(0, 0), 0, 0xFF, 0xFF, 0xFF);
objImage = new Bitmap(objImageData, "auto", true);
objAlphaImage = new Bitmap(objAlphaData);
objAlphaImage.blendMode = BlendMode.ERASE;
objImgHolder.addChildAt(objImage, 0);
objImgHolder.addChildAt(objAlphaImage, 1);
objLevel.addChildAt(objImgHolder, objLevel.index);
objLevel.addChild(objChompArea);
}
public function showInstructions():void{
objInstructions.visible = true;
objPopUpTween = new Tween(objInstructions, "x", Strong.easeOut, objInstructions.x, ((mainScreen.SCREEN_WIDTH - objInstructions.width) / 2), 0.5, true);
}
public function clearPrevLevel():void{
var _local1:*;
var _local2:DisplayObject;
var _local3:int;
var _local4:DisplayObject;
for each (_local1 in this) {
if ((_local1 is crumb)){
crumb(_local1).kill();
};
};
if (objPrevLevel != null){
objPrevLevel.removeChild(objChompArea);
for each (_local2 in objImgHolder) {
objImgHolder.removeChild(_local2);
};
_local3 = 0;
while (_local3 < objMagnifyArray.length) {
objMagnifyArray[_local3] = null;
_local3++;
};
objImageData.dispose();
objAlphaData.dispose();
objImgDataCopy.dispose();
objImage = null;
objAlphaImage = null;
objPrevLevel.removeChild(objImgHolder);
objImgHolder = null;
for each (_local4 in objLevel.edibleArray) {
_local4.visible = true;
};
objScreen.removeChild(objPrevLevel);
objPrevLevel = null;
};
}
public function hideGameOver(_arg1:MouseEvent):void{
objPopUpTween.continueTo(mainScreen.SCREEN_WIDTH, 0.5);
objPopUpTween.addEventListener(TweenEvent.MOTION_FINISH, startNewGame, false, 0, true);
}
private function setScore():void{
var _local1:int;
if (!bGodModeEntered){
_local1 = int(((1 - (int(xvRemainingAlpha.out()) / iInitialAlpha)) * 1000));
xvScore.add(_local1);
} else {
xvPrevScore.set(0);
xvScore.set(0);
};
}
public function findAlpha(_arg1:Boolean=false):int{
var _local2:Rectangle;
var _local3:int;
var _local4:int;
var _local5:Rectangle;
var _local6:*;
var _local7:int;
var _local8:int;
_local2 = new Rectangle((((objChompShape.x - objLevel.x) - (objChompShape.width / 2)) - objScreen.x), (((objChompShape.y - objLevel.y) - (objChompShape.height / 2)) - objScreen.y), objChompShape.width, objChompShape.height);
objChompArea.graphics.clear();
if (Key.isDown(32)){
objChompArea.graphics.beginFill(0xFFFFFF, 0.5);
objChompArea.graphics.drawRect(_local2.x, _local2.y, _local2.width, _local2.height);
objChompArea.graphics.endFill();
};
_local3 = 0;
_local4 = 0;
while (_local4 < objPartitionArray.length) {
if (_local2.intersects(partition(objPartitionArray[_local4]).rect)){
_local6 = partition(objPartitionArray[_local4]).currentCount;
partition(objPartitionArray[_local4]).calculateAlpha();
if (!_arg1){
_local5 = _local2.intersection(partition(objPartitionArray[_local4]).rect);
_local2.intersection(partition(objPartitionArray[_local4]).rect).x = (_local5.x + (objLevel.x + objScreen.x));
_local5.y = (_local5.y + (objLevel.y + objScreen.y));
_local7 = int(((_local6 - partition(objPartitionArray[_local4]).currentCount) / 50));
_local8 = 0;
while (_local8 < _local7) {
addChild(new crumb(_local5));
_local8 = (_local8 + 2);
};
};
};
_local3 = (_local3 + partition(objPartitionArray[_local4]).currentCount);
_local4++;
};
return (_local3);
}
public function checkImage(_arg1:Boolean=false):void{
var _local2:Rectangle;
var _local3:String;
var _local4:String;
_local2 = new Rectangle(int((mouseX - objImage.x)), int((mouseY - objImage.y)), int(objImage.width), int(objImage.height));
xvRemainingAlpha.set(findAlpha(_arg1));
_local3 = (int(((1 - (int(xvRemainingAlpha.out()) / iInitialAlpha)) * 100)).toString() + "%");
_local4 = (iPercentage.toString() + "%");
objPercentText.htmlText = gameText.insertVariables(gameText.BITES_TAKEN, "%", _local3, _local4);
if (int(xvRemainingAlpha.out()) == 0){
showResults();
};
}
public function skipToNextMatch(_arg1:MouseEvent):void{
endMatch();
}
public function submitScore(_arg1:MouseEvent):void{
bPlayerQuit = true;
mainScreen(parent)._SYSTEM.postPoints(int(xvScore.out()));
TextField(objGameOver.text).htmlText = gameText.SUBMIT_TEXT;
SimpleButton(objGameOver.play_btn).visible = false;
SimpleButton(objGameOver.submit_btn).visible = false;
SimpleButton(objGameOver.return_btn).visible = false;
fn_state = waitingForMsg;
}
public function eat():void{
playBiteSound();
iNumBites++;
eatBitmap();
updateNumBites();
checkImage();
getChompShape();
if ((iBitesLeft - iNumBites) <= 0){
endMatch();
} else {
if ((iTime - 40) >= 500){
iTime = (iTime - 40);
objTimer.delay = (iTime / 5);
};
};
}
public function addLevel():void{
var _local1:uint;
var _local2:Number;
setNextLevel();
_local1 = System.totalMemory;
_local2 = (_local1 / (0x0400 * 0x0400));
fn_state = lvlReady;
}
override public function kill():void{
objTimer.removeEventListener(TimerEvent.TIMER, scheduledMeal);
SimpleButton(objGameOver.play_btn).removeEventListener(MouseEvent.CLICK, hideGameOver);
SimpleButton(objGameOver.return_btn).removeEventListener(MouseEvent.CLICK, endGame);
SimpleButton(objInstructions.play_btn).removeEventListener(MouseEvent.CLICK, hideInstructions);
SimpleButton(objInstructions.return_btn).removeEventListener(MouseEvent.CLICK, endGame);
super.kill();
}
public function endGame(_arg1:MouseEvent):void{
if (objImageData){
objImageData.dispose();
objImgDataCopy.dispose();
objAlphaData.dispose();
};
mainScreen.objSndMgr.stopAll();
mainScreen(parent).endGame();
}
public function setChompTimer():void{
iTime = 1500;
objTimer.delay = (iTime / 5);
objTimer.start();
}
public function waitingForFinalMsg():void{
if (mainScreen(parent)._SYSTEM.serverHasResponded()){
TextField(objEndScreen.endText.msg).htmlText = mainScreen(parent)._SYSTEM.getServerResponse();
fn_state = wait;
SimpleButton(objEndScreen.returnBtn).visible = true;
};
}
public function updateMagnificationArray():void{
var _local1:int;
var _local2:DisplayObject;
var _local3:DisplayObject;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
_local1 = 0;
while (_local1 < objMagnifyArray.length) {
_local2 = MovieClip(objMagnifyArray[_local1]).getChildByName("myMask");
_local2.x = (((mouseX - objLevel.x) - objScreen.x) * MovieClip(objMagnifyArray[_local1]).scaleX);
_local2.y = (((mouseY - objLevel.y) - objScreen.y) * MovieClip(objMagnifyArray[_local1]).scaleY);
_local3 = MovieClip(objMagnifyArray[_local1]).getChildByName("holder");
_local4 = (_local3.width - objImage.width);
_local5 = (_local3.height - objImage.height);
_local6 = ((mouseX - objLevel.x) / objImage.width);
_local7 = ((mouseY - objLevel.y) / objImage.height);
_local3.x = (objImage.x - (_local4 * _local6));
_local3.y = (objImage.y - (_local5 * _local7));
_local1++;
};
}
public function showFinalScore():void{
TextField(objEndScreen.endText.msg).htmlText = gameText.insertVariables(gameText.FINAL_GAME_OVER, "%", int(((1 - (xvRemainingAlpha.out() / iInitialAlpha)) * 100)).toString(), int(xvScore.out()));
objEndScreen.play();
}
public function showMouse(_arg1:MouseEvent):void{
Mouse.show();
}
public function endMatch():void{
var _local1:int;
if (fn_state == updateGame){
objLevel.removeEventListener(MouseEvent.MOUSE_OVER, hideMouse);
objLevel.removeEventListener(MouseEvent.MOUSE_OUT, showMouse);
Mouse.show();
_local1 = int(((1 - (int(xvRemainingAlpha.out()) / iInitialAlpha)) * 100));
if (((bGodMode) || ((_local1 >= iPercentage)))){
setScore();
if (iLevel < (objLevelArray.length - 1)){
showResults();
} else {
theEnd();
};
} else {
quit();
};
};
}
public function showWords():void{
MovieClip(objWordArray[iWordIndex]).visible = true;
}
public function fillMagnificationArray():void{
var _local1:int;
var _local2:Bitmap;
var _local3:Bitmap;
var _local4:MovieClip;
var _local5:MovieClip;
_local1 = 0;
while (_local1 < objMagnifyArray.length) {
_local2 = new Bitmap(objImgDataCopy);
_local3 = new Bitmap(objAlphaData);
_local3.blendMode = BlendMode.ERASE;
_local3.name = "surface";
_local4 = new MovieClip();
_local4.blendMode = BlendMode.LAYER;
_local4.name = "holder";
_local4.addChild(_local2);
_local4.addChild(_local3);
_local4.x = -(((_local4.width - objImage.width) / 2));
_local4.y = -(((_local4.height - objImage.height) / 2));
_local5 = new MovieClip();
_local5.graphics.beginFill(0xFFFFFF, 1);
_local5.graphics.drawCircle(0, 0, (50 + ((objMagnifyArray.length - _local1) * 3)));
_local5.graphics.endFill();
_local5.name = "myMask";
objMagnifyArray[_local1] = new MovieClip();
MovieClip(objMagnifyArray[_local1]).addChild(_local4);
MovieClip(objMagnifyArray[_local1]).addChild(_local5);
_local4.mask = _local5;
MovieClip(objMagnifyArray[_local1]).cacheAsBitmap = true;
objImgHolder.addChild(MovieClip(objMagnifyArray[_local1]));
_local1++;
};
}
public function getChompShape():void{
if (iChompIndex == -1){
iChompIndex = 0;
objChompShape = MovieClip(objChompArray[iChompIndex]);
objChompShape.visible = true;
objChompShape.x = mouseX;
objChompShape.y = mouseY;
} else {
iChompIndex = iNextIndex;
objChompShape.x = (mainScreen.SCREEN_WIDTH - objChompShape.width);
objChompShape.y = 50;
objChompShape.visible = false;
objNextShape.visible = false;
objTweenX = new Tween(objNextShape, "x", None.easeIn, objNextShape.x, mouseX, 0.25, true);
objTweenY = new Tween(objNextShape, "y", None.easeIn, objNextShape.y, mouseY, 0.25, true);
objChompShape = objNextShape;
};
iNextIndex = (iChompIndex + 1);
if (iNextIndex >= objChompArray.length){
iNextIndex = 0;
};
objNextShape = MovieClip(objChompArray[iNextIndex]);
objNextShape.x = (MovieClip(objScreen.shapeArea).x + objScreen.x);
objNextShape.y = (MovieClip(objScreen.shapeArea).y + objScreen.y);
objNextShape.visible = true;
objNextShape.alpha = 1;
objChompShape.alpha = 0.7;
}
public function updateChompPosition():void{
var _local1:int;
var _local2:int;
_local1 = (mouseX - objChompShape.x);
_local2 = (mouseY - objChompShape.y);
objChompShape.x = (objChompShape.x + (_local1 * ((objLevelArray.length - iLevel) / objLevelArray.length)));
objChompShape.y = (objChompShape.y + (_local2 * ((objLevelArray.length - iLevel) / objLevelArray.length)));
}
private function showGrubGrowing(_arg1:TweenEvent):void{
var _local2:Number;
if (objResultTween.hasEventListener(TweenEvent.MOTION_FINISH)){
objResultTween.removeEventListener(TweenEvent.MOTION_FINISH, showGrubGrowing);
};
_local2 = (1 - (int(xvRemainingAlpha.out()) / iInitialAlpha));
new Tween(objGrubGrow, "scaleX", Bounce.easeInOut, objGrubGrow.scaleX, (objGrubGrow.scaleX + _local2), 1, true);
new Tween(objGrubGrow, "scaleY", Bounce.easeInOut, objGrubGrow.scaleY, (objGrubGrow.scaleY + _local2), 1, true);
}
}
}//package src.screens.subscreens
Section 29
//startScreen (src.screens.subscreens.startScreen)
package src.screens.subscreens {
import flash.display.*;
import flash.text.*;
import flash.events.*;
import game.*;
import flash.utils.*;
import src.screens.*;
public class startScreen extends gameObject {
private var objMusicOnBtn:SimpleButton;
private var objScreen:MovieClip;
private var objLegalText:TextField;
private var objMusicOffBtn:SimpleButton;
private var objPlayBtn:SimpleButton;
private var objSoundOnBtn:SimpleButton;
private var objAnimTimer:Timer;
private var objSoundOffBtn:SimpleButton;
public function startScreen():void{
objScreen = new _mcStartScreen();
objMusicOffBtn = SimpleButton(objScreen.mov.music_off_btn);
objMusicOnBtn = SimpleButton(objScreen.mov.music_on_btn);
objSoundOffBtn = SimpleButton(objScreen.mov.sound_off_btn);
objSoundOnBtn = SimpleButton(objScreen.mov.sound_on_btn);
objPlayBtn = SimpleButton(objScreen.mov.play_btn);
objAnimTimer = new Timer((1000 / 12));
super();
objScreen.stop();
objLegalText = TextField(objScreen.tfLegal);
objSoundOnBtn.visible = false;
objMusicOnBtn.visible = false;
addChild(objScreen);
objAnimTimer.addEventListener(TimerEvent.TIMER, updateAnim, false, 0, true);
objAnimTimer.start();
objPlayBtn.addEventListener(MouseEvent.CLICK, startGame);
objMusicOnBtn.addEventListener(MouseEvent.CLICK, musicOn);
objMusicOffBtn.addEventListener(MouseEvent.CLICK, musicOff);
objSoundOnBtn.addEventListener(MouseEvent.CLICK, soundOn);
objSoundOffBtn.addEventListener(MouseEvent.CLICK, soundOff);
objPlayBtn.tabEnabled = false;
objMusicOnBtn.tabEnabled = false;
objMusicOffBtn.tabEnabled = false;
objSoundOnBtn.addEventListener(MouseEvent.CLICK, soundOn);
objSoundOffBtn.addEventListener(MouseEvent.CLICK, soundOff);
}
public function musicOn(_arg1:MouseEvent):void{
objMusicOnBtn.visible = false;
objMusicOffBtn.visible = true;
mainScreen(parent).musicOn();
}
public function musicOff(_arg1:MouseEvent):void{
objMusicOnBtn.visible = true;
objMusicOffBtn.visible = false;
mainScreen(parent).musicOff();
}
public function soundOn(_arg1:MouseEvent):void{
objSoundOffBtn.visible = true;
objSoundOnBtn.visible = false;
mainScreen(parent).soundOn();
}
override public function kill():void{
objAnimTimer.removeEventListener(TimerEvent.TIMER, updateAnim);
super.kill();
}
public function startGame(_arg1:MouseEvent):void{
mainScreen(parent).startGame();
}
public function updateAnim(_arg1:TimerEvent):void{
if (MovieClip(objScreen.mov).currentFrame != MovieClip(objScreen.mov).totalFrames){
MovieClip(objScreen.mov).nextFrame();
};
}
public function get legalText():TextField{
return (objLegalText);
}
public function soundOff(_arg1:MouseEvent):void{
objSoundOffBtn.visible = false;
objSoundOnBtn.visible = true;
mainScreen(parent).soundOff();
}
}
}//package src.screens.subscreens
Section 30
//mainScreen (src.screens.mainScreen)
package src.screens {
import flash.display.*;
import flash.text.*;
import com.meteorgames.libs.sound.*;
import flash.events.*;
import game.*;
import com.meteorgames.flashsystem.game.*;
import src.screens.subscreens.*;
public class mainScreen extends GameInterface {
private var objStartScreen:MovieClip;
private var objGameScreen:gameScreen;
private var objFPS:fps;
private var fnState:Function;
private var objActiveScreen:MovieClip;
public static const MUNCH01:String = "munch01";
public static const MUNCH02:String = "munch02";
public static const MUNCH03:String = "munch03";
public static const MUNCH04:String = "munch04";
public static const OMNOMNOM:String = "Omnomnom";
public static var objSndMgr:SoundManager = new SoundManager();
public static var bMusic:Boolean = true;
private static var iHeight:int;
public static var bSound:Boolean = true;
private static var iWidth:int;
public function mainScreen():void{
objStartScreen = new startScreen();
super();
addFrameScript(0, frame1);
tabEnabled = false;
focusRect = false;
fnState = init;
objActiveScreen = objStartScreen;
addEventListener(Event.ENTER_FRAME, update);
objSndMgr.addMusic(new TS_OmNomNom(), OMNOMNOM);
objSndMgr.addFX(new munch01(), MUNCH01, false);
objSndMgr.addFX(new munch02(), MUNCH02, false);
objSndMgr.addFX(new munch03(), MUNCH03, false);
objSndMgr.addFX(new munch04(), MUNCH04, false);
}
public function init():void{
if (loaderInfo.bytesLoaded < loaderInfo.bytesTotal){
} else {
super.initGame();
Key.initialize(stage);
objFPS = new fps();
fnState = waitForSystem;
};
}
public function musicOn():void{
bMusic = true;
}
public function musicOff():void{
objSndMgr.stopAll();
bMusic = false;
}
public function updateGameObjects():void{
objFPS.update();
if ((objActiveScreen is gameObject)){
gameObject(objActiveScreen).update();
};
}
public function waitForSystem():void{
if (systemReady){
fnState = init;
addChild(objStartScreen);
addChild(objFPS);
showLegaltext(TextField(objStartScreen.legalText));
iWidth = 682;
iHeight = 480;
objFPS.x = 50;
objFPS.y = (SCREEN_HEIGHT - 20);
fnState = updateGameObjects;
};
}
public function soundOn():void{
bSound = true;
}
function frame1(){
stop();
}
public function startGame():void{
objActiveScreen.visible = false;
objGameScreen = new gameScreen();
addChildAt(objGameScreen, getChildIndex(objFPS));
objActiveScreen = objGameScreen;
}
public function endGame():void{
objActiveScreen.visible = false;
objGameScreen.kill();
objActiveScreen = objStartScreen;
objActiveScreen.visible = true;
}
public function update(_arg1:Event):void{
if (fnState != null){
fnState.call();
};
}
public function soundOff():void{
objSndMgr.stopAll();
bSound = false;
}
public function showLegaltext(_arg1:TextField):void{
var _local2:String;
var _local3:StyleSheet;
if (((_SYSTEM.gameIsHostedExternally) || (_SYSTEM.gameIsOffline))){
_local2 = "a:link{text-decoration:underline;color:#FFFFFF;} a:hover{text-decoration:underline;color:#FFFF00;} a:active{text-decoration:underline;color:#FFFF00;}";
_local3 = new StyleSheet();
_local3.parseCSS(_local2);
_arg1.styleSheet = _local3;
_arg1.htmlText = _SYSTEM.getLegalText(12);
};
}
public static function get SCREEN_WIDTH():int{
return (iWidth);
}
public static function playMusic(_arg1:String):void{
if (bMusic){
objSndMgr.playMusic(_arg1, 0, 9999);
};
}
public static function get SCREEN_HEIGHT():int{
return (iHeight);
}
public static function playSound(_arg1:String):void{
if (bSound){
objSndMgr.playFX(_arg1);
};
}
}
}//package src.screens
Section 31
//_Arial (_Arial)
package {
import flash.text.*;
public dynamic class _Arial extends Font {
}
}//package
Section 32
//_level0 (_level0)
package {
import flash.display.*;
public dynamic class _level0 extends MovieClip {
public var percent:int;
public var leaf:MovieClip;
public var edibleArray:Array;
public var index:int;
public function _level0(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
percent = 64;
index = getChildIndex(leaf);
edibleArray = new Array(leaf);
}
}
}//package
Section 33
//_level1 (_level1)
package {
import flash.display.*;
public dynamic class _level1 extends MovieClip {
public var fruit:MovieClip;
public var percent:int;
public var edibleArray:Array;
public var index:int;
public function _level1(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
percent = 89;
index = getChildIndex(fruit);
edibleArray = new Array(fruit);
}
}
}//package
Section 34
//_level2 (_level2)
package {
import flash.display.*;
public dynamic class _level2 extends MovieClip {
public var percent:int;
public var edibleArray:Array;
public var core:MovieClip;
public var stem:MovieClip;
public var index:int;
public var bush:MovieClip;
public function _level2(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
percent = 61;
index = getChildIndex(bush);
edibleArray = new Array(bush, core, stem);
}
}
}//package
Section 35
//_level3 (_level3)
package {
import flash.display.*;
public dynamic class _level3 extends MovieClip {
public var percent:int;
public var edibleArray:Array;
public var elf:MovieClip;
public var index:int;
public function _level3(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
percent = 79;
index = getChildIndex(elf);
edibleArray = new Array(elf);
}
}
}//package
Section 36
//_level4 (_level4)
package {
import flash.display.*;
public dynamic class _level4 extends MovieClip {
public var house:MovieClip;
public var percent:int;
public var edibleArray:Array;
public var index:int;
public function _level4(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
percent = 87;
index = getChildIndex(house);
edibleArray = new Array(house);
}
}
}//package
Section 37
//_level5 (_level5)
package {
import flash.display.*;
public dynamic class _level5 extends MovieClip {
public var field:MovieClip;
public var bedroom:MovieClip;
public var shrub:MovieClip;
public var percent:int;
public var edibleArray:Array;
public var bushes:MovieClip;
public var eleplant:MovieClip;
public var grass:MovieClip;
public var index:int;
public var back_foliage:MovieClip;
public function _level5(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
percent = 52;
index = getChildIndex(back_foliage);
edibleArray = new Array(back_foliage, bushes, field, eleplant, grass);
}
}
}//package
Section 38
//_level6 (_level6)
package {
import flash.display.*;
public dynamic class _level6 extends MovieClip {
public var percent:int;
public var city:MovieClip;
public var edibleArray:Array;
public var index:int;
public function _level6(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
percent = 72;
index = getChildIndex(city);
edibleArray = new Array(city);
}
}
}//package
Section 39
//_level7 (_level7)
package {
import flash.display.*;
public dynamic class _level7 extends MovieClip {
public var percent:int;
public var edibleArray:Array;
public var tree:MovieClip;
public var index:int;
public function _level7(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
percent = 64;
index = getChildIndex(tree);
edibleArray = new Array(tree);
}
}
}//package
Section 40
//_level8 (_level8)
package {
import flash.display.*;
public dynamic class _level8 extends MovieClip {
public var percent:int;
public var edibleArray:Array;
public var planet:MovieClip;
public var index:int;
public function _level8(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
percent = 44;
index = getChildIndex(planet);
edibleArray = new Array(planet);
}
}
}//package
Section 41
//_level9 (_level9)
package {
import flash.display.*;
public dynamic class _level9 extends MovieClip {
public var bg:MovieClip;
public var percent:int;
public var edibleArray:Array;
public var index:int;
public var player:MovieClip;
public function _level9(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
percent = 41;
index = getChildIndex(player);
edibleArray = new Array(player);
}
}
}//package
Section 42
//_mcEndScreen (_mcEndScreen)
package {
import flash.display.*;
import flash.events.*;
import src.screens.subscreens.*;
public dynamic class _mcEndScreen extends MovieClip {
public var returnBtn:SimpleButton;
public var endText:MovieClip;
public var submitScoreBtn:SimpleButton;
public var gameOver:MovieClip;
public function _mcEndScreen(){
addFrameScript(0, frame1, 119, frame120, 179, frame180, 239, frame240);
}
function frame180(){
returnBtn.addEventListener(MouseEvent.CLICK, gameScreen(parent).endGame, false, 0, true);
}
function frame1(){
stop();
}
function frame240(){
stop();
}
function frame120(){
submitScoreBtn.addEventListener(MouseEvent.CLICK, gameScreen(parent).submitFinalScore, false, 0, true);
}
}
}//package
Section 43
//_mcPlayScreen (_mcPlayScreen)
package {
import flash.display.*;
import flash.text.*;
import src.screens.subscreens.*;
public dynamic class _mcPlayScreen extends MovieClip {
public var Bite02:MovieClip;
public var Bite03:MovieClip;
public var Bite04:MovieClip;
public var Bite05:MovieClip;
public var Bite01:MovieClip;
public var bites_text:TextField;
public var eaten_text:TextField;
public var play_area:MovieClip;
public var results:MovieClip;
public function _mcPlayScreen(){
addFrameScript(0, frame1, 284, frame285);
}
function frame285(){
stop();
gameScreen(parent).showFinalScore();
}
function frame1(){
stop();
}
}
}//package
Section 44
//_mcStartScreen (_mcStartScreen)
package {
import flash.display.*;
import flash.text.*;
public dynamic class _mcStartScreen extends MovieClip {
public var mov:MovieClip;
public var tfLegal:TextField;
}
}//package
Section 45
//gameInstructions (gameInstructions)
package {
import flash.display.*;
import flash.text.*;
public dynamic class gameInstructions extends MovieClip {
public var text:TextField;
public var return_btn:SimpleButton;
public var play_btn:SimpleButton;
}
}//package
Section 46
//gameOverText (gameOverText)
package {
import flash.display.*;
import flash.text.*;
public dynamic class gameOverText extends MovieClip {
public var text:TextField;
public var finishSubmit:SimpleButton;
public var submit_btn:SimpleButton;
public var return_btn:SimpleButton;
public var play_btn:SimpleButton;
}
}//package
Section 47
//munch01 (munch01)
package {
import flash.media.*;
public dynamic class munch01 extends Sound {
}
}//package
Section 48
//munch02 (munch02)
package {
import flash.media.*;
public dynamic class munch02 extends Sound {
}
}//package
Section 49
//munch03 (munch03)
package {
import flash.media.*;
public dynamic class munch03 extends Sound {
}
}//package
Section 50
//munch04 (munch04)
package {
import flash.media.*;
public dynamic class munch04 extends Sound {
}
}//package
Section 51
//TS_OmNomNom (TS_OmNomNom)
package {
import flash.media.*;
public dynamic class TS_OmNomNom extends Sound {
}
}//package