Section 1
//GameState (Main.GameState)
package Main {
import flash.display.*;
public class GameState extends MovieClip {
var m_isInitiliazed:Boolean;// = false
var m_name:String;// = "no_name"
public function getName():String{
return (m_name);
}
public function onCleanup():void{
}
public function onStop():void{
}
public function isInitiliazed():Boolean{
return (m_isInitiliazed);
}
public function onResume():void{
}
public function InternalInit():void{
if (!m_isInitiliazed){
m_isInitiliazed = true;
onPreInit();
};
onInit();
}
public function onInit():void{
}
public function setName(_arg1:String):void{
m_name = _arg1;
}
public function onPreInit():void{
}
}
}//package Main
Section 2
//ResCreator (Main.ResCreator)
package Main {
import flash.display.*;
import flash.media.*;
import flash.utils.*;
public class ResCreator {
public static function createSimpleButton(_arg1:String):SimpleButton{
var type:Class;
var name = _arg1;
try {
type = (getDefinitionByName(name) as Class);
} catch(e:ReferenceError) {
trace(e, "resource name:", name);
return (null);
};
return (new (type));
}
public static function createMC(_arg1:String):MovieClip{
var type:Class;
var name = _arg1;
try {
type = (getDefinitionByName(name) as Class);
} catch(e:ReferenceError) {
trace(e, "resource name:", name);
return (null);
};
return (new (type));
}
public static function createSound(_arg1:String):Sound{
return (new ((getDefinitionByName(_arg1) as Class)));
}
}
}//package Main
Section 3
//StateManager (Main.StateManager)
package Main {
import flash.display.*;
import States.*;
public class StateManager extends MovieClip {
public var m_percents:SimpleDigits;
public var m_preloader:preloader;
var m_lastState:GameState;// = null
var m_overlayLayer:MovieClip;
var m_states:Array;
static var m_instance:StateManager = null;
public function StateManager(){
m_states = new Array();
m_overlayLayer = new MovieClip();
super();
addFrameScript(0, frame1, 1, frame2);
m_instance = this;
pushState(PreloaderState.getInstance());
}
public function changeState(_arg1:GameState):void{
if (m_states.length != 0){
m_lastState = m_states[(m_states.length - 1)];
};
while (m_states.length != 0) {
popState();
};
pushState(_arg1);
}
public function getLastState():GameState{
return (m_lastState);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
public function coolChangeState(_arg1:GameState):void{
ShadeInState.getInstance().setNextState(_arg1);
pushState(ShadeInState.getInstance());
}
public function addOverlay(_arg1:DisplayObject):void{
m_overlayLayer.addChild(_arg1);
}
public function pushState(_arg1:GameState):void{
if (m_states.length != 0){
m_lastState = m_states[(m_states.length - 1)];
m_lastState.onStop();
} else {
m_lastState = _arg1;
};
m_states.push(_arg1);
addChild(_arg1);
_arg1.InternalInit();
onStateChanging();
}
public function popState():void{
if (m_states.length != 0){
m_lastState = m_states[(m_states.length - 1)];
m_lastState.onCleanup();
m_states.pop();
removeChild(m_lastState);
if (m_states.length != 0){
m_states[(m_states.length - 1)].onResume();
};
};
onStateChanging();
}
public function getTopState():GameState{
return (m_states[(m_states.length - 1)]);
}
function onStateChanging():void{
addChild(m_overlayLayer);
}
public static function getInstance():StateManager{
return (m_instance);
}
}
}//package Main
Section 4
//ComponentDescriptor (States.PlayState.ComponentDescriptor)
package States.PlayState {
import flash.display.*;
import Main.*;
public class ComponentDescriptor {
public var m_zOrder:Number;
private var m_cookingPhase:int;// = 0
public var m_xOffset:Number;// = 0
public var m_yOffset:Number;// = 0
private var m_name:String;
public var m_cost:int;
var m_isBad:Boolean;// = false
private var m_cookingPhaseNames:Array;
public function ComponentDescriptor(_arg1:String){
m_name = _arg1;
m_zOrder = Cookies.nameToZOrder(m_name);
m_cookingPhaseNames = Cookies.nameToComponents(m_name);
m_cost = Cookies.nameToCost(m_name);
}
public function getName():String{
return (m_name);
}
public function setCookingPhase(_arg1:int):Boolean{
m_cookingPhase = _arg1;
if (m_cookingPhase >= m_cookingPhaseNames.length){
m_cookingPhase = (m_cookingPhaseNames.length - 1);
return (false);
};
return (true);
}
public function nextCookingPhase():Boolean{
return (setCookingPhase((m_cookingPhase + 1)));
}
public function convertFromIcon():ComponentDescriptor{
var _local1:ComponentDescriptor = new ComponentDescriptor(Cookies.iconToComponent(m_name));
_local1.setCookingPhase(m_cookingPhase);
_local1.m_isBad = m_isBad;
return (_local1);
}
public function trySetBad():void{
if ((((m_cookingPhase == 2)) && (!(m_isBad)))){
m_cost = 0;
m_isBad = true;
};
}
public function toString():String{
return (m_name);
}
public function isEqual(_arg1:ComponentDescriptor):Boolean{
return ((m_name == _arg1.m_name));
}
public function getCookingPhase():int{
return (m_cookingPhase);
}
public function makeClipPart():MovieClip{
return (ResCreator.createMC(m_cookingPhaseNames[m_cookingPhase]));
}
public function isPastryType():Boolean{
var _local1:String;
for each (_local1 in Cookies.PASTRY_TYPES) {
if (_local1 == m_name){
return (true);
};
};
return (false);
}
}
}//package States.PlayState
Section 5
//Cooker (States.PlayState.Cooker)
package States.PlayState {
import flash.display.*;
import Main.*;
import flash.events.*;
public class Cooker extends MovieClip {
const m_cookinPhaseTime:int = 150;
var m_inputMaterial:String;
var m_isClosed:Boolean;// = false
var m_pastryPlace:MovieClip;
var m_product:Product;
var m_picture:MovieClip;
var m_cakecapName:String;
var m_cookingTime:int;
var m_productionName:String;
public function Cooker(_arg1:Number, _arg2:Number, _arg3:String, _arg4:String, _arg5:String, _arg6:Number, _arg7:String){
m_cakecapName = _arg7;
m_productionName = _arg4;
m_inputMaterial = _arg5;
x = _arg1;
y = _arg2;
m_picture = ResCreator.createMC(_arg3);
m_picture.cacheAsBitmap = true;
addChild(m_picture);
m_pastryPlace = ResCreator.createMC("cooker_hit_zone");
m_pastryPlace.cacheAsBitmap = true;
addChild(m_pastryPlace);
m_pastryPlace.alpha = 0;
this.scaleX = _arg6;
this.scaleY = _arg6;
buttonMode = true;
}
function update(_arg1:Event):void{
if (m_product != null){
if (++m_cookingTime != 0){
if ((m_cookingTime % m_cookinPhaseTime) == 0){
m_product.nextCookinPhase();
};
if ((m_cookingTime % 40) == 0){
m_product.trySetBad();
};
};
};
}
public function isTrueMaterial(_arg1:Product):Boolean{
return (_arg1.isSingleComponent(m_inputMaterial));
}
public function resetProduct():void{
m_picture.removeChild(m_product);
m_product = null;
}
public function setProduct(_arg1:Product):void{
m_cookingTime = 0;
m_product = new Product();
m_product.addComponent(new ComponentDescriptor(m_productionName));
m_picture.addChild(m_product);
}
public function isClosed():Boolean{
return (m_isClosed);
}
public function getProduct():Product{
return (m_product);
}
function close():void{
m_isClosed = true;
if (m_cakecapName != null){
addChild(ResCreator.createMC(m_cakecapName));
};
buttonMode = false;
}
}
}//package States.PlayState
Section 6
//Cookies (States.PlayState.Cookies)
package States.PlayState {
import flash.utils.*;
public class Cookies {
public static const MAIN_TYPE_GROUPS:Array = [[ROUND_PASTRY, STAR_PASTRY, SQUARE_PASTRY], [GREEN_SODA, RED_SODA]];
public static const BANANA_ICON:String = "banana_icon";
public static const CHERRY:String = "cherry";
public static const CHOCOLATE:String = "chocolate";
static const m_allCookieTypes:Array = [[RED_SODA], [RED_SODA], [RED_SODA], [RED_SODA], [RED_SODA], [GREEN_SODA], [GREEN_SODA], [GREEN_SODA], [GREEN_SODA], [GREEN_SODA], [ROUND_PASTRY, CHOCOLATE], [ROUND_PASTRY, CHOCOLATE, BANANA], [ROUND_PASTRY, CHOCOLATE, CHERRY], [ROUND_PASTRY, CHOCOLATE, STRAWBERRY], [ROUND_PASTRY, BLUEJAM], [ROUND_PASTRY, BLUEJAM, BANANA], [ROUND_PASTRY, BLUEJAM, CHERRY], [ROUND_PASTRY, BLUEJAM, STRAWBERRY], [ROUND_PASTRY, CREAM], [ROUND_PASTRY, CREAM, BANANA], [ROUND_PASTRY, CREAM, CHERRY], [ROUND_PASTRY, CREAM, STRAWBERRY], [ROUND_PASTRY, BANANA], [ROUND_PASTRY, CHERRY], [ROUND_PASTRY, STRAWBERRY], [STAR_PASTRY, CHOCOLATE], [STAR_PASTRY, CHOCOLATE, BANANA], [STAR_PASTRY, CHOCOLATE, CHERRY], [STAR_PASTRY, CHOCOLATE, STRAWBERRY], [STAR_PASTRY, BLUEJAM], [STAR_PASTRY, BLUEJAM, BANANA], [STAR_PASTRY, BLUEJAM, CHERRY], [STAR_PASTRY, BLUEJAM, STRAWBERRY], [STAR_PASTRY, CREAM], [STAR_PASTRY, CREAM, BANANA], [STAR_PASTRY, CREAM, CHERRY], [STAR_PASTRY, CREAM, STRAWBERRY], [STAR_PASTRY, BANANA], [STAR_PASTRY, CHERRY], [STAR_PASTRY, STRAWBERRY], [SQUARE_PASTRY, CHOCOLATE], [SQUARE_PASTRY, CHOCOLATE, BANANA], [SQUARE_PASTRY, CHOCOLATE, CHERRY], [SQUARE_PASTRY, CHOCOLATE, STRAWBERRY], [SQUARE_PASTRY, BLUEJAM], [SQUARE_PASTRY, BLUEJAM, BANANA], [SQUARE_PASTRY, BLUEJAM, CHERRY], [SQUARE_PASTRY, BLUEJAM, STRAWBERRY], [SQUARE_PASTRY, CREAM], [SQUARE_PASTRY, CREAM, BANANA], [SQUARE_PASTRY, CREAM, CHERRY], [SQUARE_PASTRY, CREAM, STRAWBERRY], [SQUARE_PASTRY, BANANA], [SQUARE_PASTRY, CHERRY], [SQUARE_PASTRY, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE], [ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, BANANA], [ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, CHERRY], [ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, BLUEJAM], [ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, BANANA], [ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, CHERRY], [ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, CREAM], [ROUND_PASTRY, ROUND_PASTRY, CREAM, BANANA], [ROUND_PASTRY, ROUND_PASTRY, CREAM, CHERRY], [ROUND_PASTRY, ROUND_PASTRY, CREAM, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, BANANA], [ROUND_PASTRY, ROUND_PASTRY, CHERRY], [STAR_PASTRY, STAR_PASTRY, CHOCOLATE], [STAR_PASTRY, STAR_PASTRY, CHOCOLATE, BANANA], [STAR_PASTRY, STAR_PASTRY, CHOCOLATE, CHERRY], [STAR_PASTRY, STAR_PASTRY, CHOCOLATE, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, BLUEJAM], [STAR_PASTRY, STAR_PASTRY, BLUEJAM, BANANA], [STAR_PASTRY, STAR_PASTRY, BLUEJAM, CHERRY], [STAR_PASTRY, STAR_PASTRY, BLUEJAM, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, CREAM], [STAR_PASTRY, STAR_PASTRY, CREAM, BANANA], [STAR_PASTRY, STAR_PASTRY, CREAM, CHERRY], [STAR_PASTRY, STAR_PASTRY, CREAM, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, BANANA], [STAR_PASTRY, STAR_PASTRY, CHERRY], [SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE], [SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE, BANANA], [SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE, CHERRY], [SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM], [SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM, BANANA], [SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM, CHERRY], [SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, CREAM], [SQUARE_PASTRY, SQUARE_PASTRY, CREAM, BANANA], [SQUARE_PASTRY, SQUARE_PASTRY, CREAM, CHERRY], [SQUARE_PASTRY, SQUARE_PASTRY, CREAM, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, BANANA], [SQUARE_PASTRY, SQUARE_PASTRY, CHERRY], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, BANANA], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, CHERRY], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, BLUEJAM], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, BANANA], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, CHERRY], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, CREAM], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, CREAM, BANANA], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, CREAM, CHERRY], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, CREAM, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, BANANA], [ROUND_PASTRY, ROUND_PASTRY, ROUND_PASTRY, CHERRY], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, CHOCOLATE], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, CHOCOLATE, BANANA], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, CHOCOLATE, CHERRY], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, CHOCOLATE, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, BLUEJAM], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, BLUEJAM, BANANA], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, BLUEJAM, CHERRY], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, BLUEJAM, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, CREAM], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, CREAM, BANANA], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, CREAM, CHERRY], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, CREAM, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, BANANA], [STAR_PASTRY, STAR_PASTRY, STAR_PASTRY, CHERRY], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE, BANANA], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE, CHERRY], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM, BANANA], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM, CHERRY], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, CREAM], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, CREAM, BANANA], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, CREAM, CHERRY], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, CREAM, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, BANANA], [SQUARE_PASTRY, SQUARE_PASTRY, SQUARE_PASTRY, CHERRY]];
public static const LIQUID_SOURCES_TYPES:Array = [CHOCOLATE_ICON, BLUEJAM_ICON, CREAM_ICON];
public static const SOURCE_TYPES:Array = [STRAWBERRY_ICON, CHOCOLATE_ICON, CHERRY_ICON, BANANA_ICON, BLUEJAM_ICON, CREAM_ICON, PASTRY];
static const m_cookiesPerLevels:Array = [[[ROUND_PASTRY, BLUEJAM], [ROUND_PASTRY, CHOCOLATE]], [[ROUND_PASTRY, CHOCOLATE], [ROUND_PASTRY, BLUEJAM], [STAR_PASTRY, CHOCOLATE], [STAR_PASTRY, BLUEJAM]], [[ROUND_PASTRY, CHOCOLATE], [ROUND_PASTRY, BLUEJAM], [STAR_PASTRY, CHOCOLATE], [STAR_PASTRY, BLUEJAM], [GREEN_SODA], [GREEN_SODA]], [[ROUND_PASTRY, CHOCOLATE, CHERRY], [STAR_PASTRY, CHOCOLATE], [ROUND_PASTRY, CHOCOLATE, CHERRY], [ROUND_PASTRY, CHERRY], [STAR_PASTRY, CHOCOLATE, CHERRY], [STAR_PASTRY, CHERRY], [ROUND_PASTRY, BLUEJAM, CHERRY], [STAR_PASTRY, BLUEJAM], [ROUND_PASTRY, BLUEJAM, CHERRY], [ROUND_PASTRY, BLUEJAM], [STAR_PASTRY, BLUEJAM, CHERRY], [GREEN_SODA]], [[ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, CHERRY], [STAR_PASTRY, CHOCOLATE], [ROUND_PASTRY, ROUND_PASTRY, BLUEJAM], [ROUND_PASTRY, BLUEJAM], [STAR_PASTRY, CHOCOLATE, CHERRY], [STAR_PASTRY, CHERRY], [GREEN_SODA], [GREEN_SODA]], [[ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, CHERRY], [ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, CHERRY], [ROUND_PASTRY, BLUEJAM, CHERRY], [STAR_PASTRY, STAR_PASTRY, CHOCOLATE, CHERRY], [STAR_PASTRY, BLUEJAM], [STAR_PASTRY, CHOCOLATE], [RED_SODA], [RED_SODA], [GREEN_SODA], [GREEN_SODA]], [[ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, CHERRY], [ROUND_PASTRY, BLUEJAM, STRAWBERRY], [ROUND_PASTRY, CHOCOLATE, STRAWBERRY], [ROUND_PASTRY, BLUEJAM, CHERRY], [ROUND_PASTRY, CHOCOLATE], [RED_SODA], [GREEN_SODA]], [[RED_SODA], [GREEN_SODA], [ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, CHERRY], [ROUND_PASTRY, BLUEJAM, STRAWBERRY], [ROUND_PASTRY, CHOCOLATE, STRAWBERRY], [ROUND_PASTRY, BLUEJAM, CHERRY], [ROUND_PASTRY, CHOCOLATE], [ROUND_PASTRY, CREAM, CHERRY], [ROUND_PASTRY, CREAM, STRAWBERRY], [STAR_PASTRY, CREAM, CHERRY], [STAR_PASTRY, CREAM, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, CREAM, STRAWBERRY]], [[RED_SODA], [GREEN_SODA], [ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, CHERRY], [ROUND_PASTRY, CHOCOLATE, STRAWBERRY], [ROUND_PASTRY, BLUEJAM, CHERRY], [ROUND_PASTRY, CHOCOLATE], [ROUND_PASTRY, CREAM, STRAWBERRY], [STAR_PASTRY, CHOCOLATE, CHERRY], [STAR_PASTRY, CREAM, CHERRY], [STAR_PASTRY, CREAM, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, CREAM, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM], [SQUARE_PASTRY, BLUEJAM, CHERRY], [SQUARE_PASTRY, CREAM, STRAWBERRY], [SQUARE_PASTRY, CHOCOLATE, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE, CHERRY]], [[RED_SODA], [GREEN_SODA], [ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, STRAWBERRY], [ROUND_PASTRY, ROUND_PASTRY, CHOCOLATE, CHERRY], [ROUND_PASTRY, CHOCOLATE, STRAWBERRY], [ROUND_PASTRY, BLUEJAM, CHERRY], [ROUND_PASTRY, CHOCOLATE], [ROUND_PASTRY, CREAM, STRAWBERRY], [STAR_PASTRY, CHOCOLATE, CHERRY], [STAR_PASTRY, CREAM, CHERRY], [STAR_PASTRY, CREAM, STRAWBERRY], [STAR_PASTRY, STAR_PASTRY, CREAM, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM], [SQUARE_PASTRY, BLUEJAM, CHERRY], [SQUARE_PASTRY, CREAM, STRAWBERRY], [SQUARE_PASTRY, CHOCOLATE, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE, CHERRY], [ROUND_PASTRY, ROUND_PASTRY, BLUEJAM, BANANA], [ROUND_PASTRY, CHOCOLATE, BANANA], [ROUND_PASTRY, CHOCOLATE, BANANA], [STAR_PASTRY, CHOCOLATE, BANANA], [STAR_PASTRY, CREAM, BANANA], [SQUARE_PASTRY, SQUARE_PASTRY, BLUEJAM, BANANA], [SQUARE_PASTRY, CREAM, STRAWBERRY], [SQUARE_PASTRY, SQUARE_PASTRY, CHOCOLATE, BANANA]], m_allCookieTypes, m_allCookieTypes, m_allCookieTypes, m_allCookieTypes, m_allCookieTypes, m_allCookieTypes, m_allCookieTypes, m_allCookieTypes, m_allCookieTypes, m_allCookieTypes];
public static const SQUARE_PASTRY:String = "square_pastry";
public static const GREEN_SODA:String = "green_soda";
public static const CREAM_ICON:String = "cream_icon";
public static const CHOCOLATE_ICON:String = "chocolate_icon";
public static const ROUND_PASTRY:String = "round_pastry";
public static const STRAWBERRY:String = "strawberry";
public static const MAIN_TYPES:Array = [ROUND_PASTRY, STAR_PASTRY, SQUARE_PASTRY, GREEN_SODA, RED_SODA];
public static const ADDITION_TYPES:Array = [STRAWBERRY_ICON, CHOCOLATE_ICON, CHERRY_ICON, BANANA_ICON, BLUEJAM_ICON, CREAM_ICON];
public static const PASTRY:String = "pastry";
public static const BLUEJAM:String = "bluejam";
public static const CHERRY_ICON:String = "cherry_icon";
public static const CREAM:String = "cream";
public static const STAR_PASTRY:String = "star_pastry";
public static const RED_SODA:String = "red_soda";
public static const STRAWBERRY_ICON:String = "strawberry_icon";
public static const BANANA:String = "banana";
public static const PASTRY_TYPES:Array = [ROUND_PASTRY, STAR_PASTRY, SQUARE_PASTRY];
public static const BLUEJAM_ICON:String = "bluejam_icon";
static var m_nameToZOrder:Dictionary = new Dictionary();
static var m_iconToComponent:Dictionary = new Dictionary();
static var m_nameToAdditionAnimation:Dictionary = new Dictionary();
static var m_nameToComponent:Dictionary = new Dictionary();
static var m_nameToCost:Dictionary = new Dictionary();
public static function nameToZOrder(_arg1:String):int{
return (m_nameToZOrder[_arg1]);
}
public static function iconToComponent(_arg1:String):String{
return (m_iconToComponent[_arg1]);
}
public static function nameToComponents(_arg1:String):Array{
return (m_nameToComponent[_arg1]);
}
public static function initConnections():void{
m_nameToComponent[BLUEJAM] = ["bluejam"];
m_nameToZOrder[BLUEJAM] = 1;
m_iconToComponent[BLUEJAM] = BLUEJAM;
m_nameToCost[BLUEJAM] = 4;
m_nameToComponent[BLUEJAM_ICON] = ["bluejam_icon"];
m_nameToZOrder[BLUEJAM_ICON] = -1;
m_iconToComponent[BLUEJAM_ICON] = BLUEJAM;
m_nameToAdditionAnimation[BLUEJAM_ICON] = "put_bluejam";
m_nameToCost[BLUEJAM_ICON] = -1;
m_nameToComponent[CREAM] = ["cream"];
m_nameToZOrder[CREAM] = 1;
m_iconToComponent[CREAM] = CREAM;
m_nameToCost[CREAM] = 6;
m_nameToComponent[CREAM_ICON] = ["cream_icon"];
m_nameToZOrder[CREAM_ICON] = -1;
m_iconToComponent[CREAM_ICON] = CREAM;
m_nameToAdditionAnimation[CREAM_ICON] = "put_cream";
m_nameToCost[CREAM_ICON] = -1;
m_nameToComponent[CHOCOLATE] = ["chocolate"];
m_nameToZOrder[CHOCOLATE] = 1;
m_iconToComponent[CHOCOLATE] = CHOCOLATE;
m_nameToCost[CHOCOLATE] = 4;
m_nameToComponent[CHOCOLATE_ICON] = ["chocolate_icon"];
m_nameToZOrder[CHOCOLATE_ICON] = -1;
m_iconToComponent[CHOCOLATE_ICON] = CHOCOLATE;
m_nameToAdditionAnimation[CHOCOLATE_ICON] = "put_chocolate";
m_nameToCost[CHOCOLATE_ICON] = -1;
m_nameToComponent[BANANA] = ["banana"];
m_nameToZOrder[BANANA] = 2;
m_iconToComponent[BANANA] = BANANA;
m_nameToCost[BANANA] = 7;
m_nameToComponent[BANANA_ICON] = ["banana_icon"];
m_nameToZOrder[BANANA_ICON] = -1;
m_iconToComponent[BANANA_ICON] = BANANA;
m_nameToCost[BANANA_ICON] = -1;
m_nameToComponent[CHERRY_ICON] = ["cherry_icon"];
m_nameToZOrder[CHERRY_ICON] = -1;
m_iconToComponent[CHERRY_ICON] = CHERRY;
m_nameToCost[CHERRY_ICON] = -1;
m_nameToComponent[CHERRY] = ["cherry"];
m_nameToZOrder[CHERRY] = 2;
m_iconToComponent[CHERRY] = CHERRY;
m_nameToCost[CHERRY] = 7;
m_nameToComponent[STRAWBERRY] = ["strawberry"];
m_nameToZOrder[STRAWBERRY] = 2;
m_iconToComponent[STRAWBERRY] = STRAWBERRY;
m_nameToCost[STRAWBERRY] = 7;
m_nameToComponent[STRAWBERRY_ICON] = ["strawberry_icon"];
m_nameToZOrder[STRAWBERRY_ICON] = -1;
m_iconToComponent[STRAWBERRY_ICON] = STRAWBERRY;
m_nameToCost[STRAWBERRY_ICON] = -1;
m_nameToComponent[GREEN_SODA] = ["green_soda"];
m_nameToZOrder[GREEN_SODA] = 0;
m_iconToComponent[GREEN_SODA] = GREEN_SODA;
m_nameToCost[GREEN_SODA] = 10;
m_nameToComponent[RED_SODA] = ["red_soda"];
m_nameToZOrder[RED_SODA] = 0;
m_iconToComponent[RED_SODA] = RED_SODA;
m_nameToCost[RED_SODA] = 10;
m_nameToComponent[PASTRY] = ["pastry_icon"];
m_nameToZOrder[PASTRY] = -1;
m_iconToComponent[PASTRY] = PASTRY;
m_nameToCost[PASTRY] = -1;
m_nameToComponent[ROUND_PASTRY] = ["round_pastry_phase_1", "round_pastry_phase_2", "round_pastry_phase_3"];
m_nameToZOrder[ROUND_PASTRY] = 0;
m_iconToComponent[ROUND_PASTRY] = ROUND_PASTRY;
m_nameToCost[ROUND_PASTRY] = 4;
m_nameToComponent[STAR_PASTRY] = ["star_pastry_phase_1", "star_pastry_phase_2", "star_pastry_phase_3"];
m_nameToZOrder[STAR_PASTRY] = 0;
m_iconToComponent[STAR_PASTRY] = STAR_PASTRY;
m_nameToCost[STAR_PASTRY] = 4;
m_nameToComponent[SQUARE_PASTRY] = ["square_pastry_phase_1", "square_pastry_phase_2", "square_pastry_phase_3"];
m_nameToZOrder[SQUARE_PASTRY] = 0;
m_iconToComponent[SQUARE_PASTRY] = SQUARE_PASTRY;
m_nameToCost[SQUARE_PASTRY] = 4;
}
public static function nameToAdditionAnimation(_arg1:String):String{
return (m_nameToAdditionAnimation[_arg1]);
}
public static function nameToCost(_arg1:String):int{
if (m_nameToCost[_arg1] == null){
trace("error, no cost for component", _arg1);
return (0);
};
return (m_nameToCost[_arg1]);
}
public static function getCookie(_arg1:int):Array{
return (m_cookiesPerLevels[_arg1]);
}
}
}//package States.PlayState
Section 7
//Customer (States.PlayState.Customer)
package States.PlayState {
import flash.display.*;
import Main.*;
import flash.geom.*;
import flash.utils.*;
import flash.filters.*;
public class Customer extends MovieClip {
const WaitForWishState:String = "wait_for_wish";
const WaitBeforeLeaveState:String = "wait_before_leave";
const EnterState:String = "enter";
const LeaveState:String = "leave";
const NormalState:String = "normal";
const SettleAccountState:String = "settle_account_state";
var m_mood:Number;// = 1
var m_movingSpeedModul:Number;// = 0
var m_offset:Point;
var m_isShake:Boolean;// = false
var m_direction:Number;
var m_stateTime:Number;// = 0
var m_shakeCount:int;
var m_settleAccountSing:MovieClip;
var m_wishPlace:MovieClip;
var m_owner:PlayState;
var m_wishs:Array;
var m_bodyComponents:Array;
var m_state:String;// = "enter"
var m_goalPosition:Point;
var m_currentPosition:Point;
var m_money:int;
var m_cloud:MovieClip;
public function Customer(_arg1:PlayState, _arg2:Point, _arg3:Point, _arg4:Array){
var _local6:MovieClip;
m_wishs = new Array();
m_settleAccountSing = ResCreator.createMC("settle_accaunt");
super();
(m_bodyComponents = new Array());
(m_owner = _arg1);
(m_goalPosition = _arg3);
(m_currentPosition = _arg2);
(m_offset = new Point());
(x = m_currentPosition.x);
(y = m_currentPosition.y);
var _local5:int;
while (_local5 < _arg4.length) {
_local6 = ResCreator.createMC(_arg4[_local5]);
_local6.stop();
(_local6.cacheAsBitmap = true);
addChild(_local6);
m_bodyComponents.push(_local6);
_local5++;
};
(cacheAsBitmap = true);
(m_movingSpeedModul = (2 + (Math.random() * 3)));
(m_cloud = ResCreator.createMC("cloud"));
(m_cloud.y = -120);
(m_cloud.x = 60);
(m_wishPlace = new MovieClip());
m_cloud.addChild(m_wishPlace);
changeState(EnterState);
subMood(((Math.random() * 0.3) + 0.1));
(scaleX = 0.8);
(scaleY = 0.8);
}
function onChangeMood():void{
var _local1:MovieClip;
for each (_local1 in m_bodyComponents) {
_local1.gotoAndStop(int(Math.round((m_mood * 3))));
};
if (m_mood < 0.2){
startShake();
} else {
m_isShake = false;
};
}
function recalcWishCloud():void{
var _local1:ProductDescriptor;
var _local2:MovieClip;
while (m_wishPlace.numChildren != 0) {
m_wishPlace.removeChildAt(0);
};
for each (_local1 in m_wishs) {
_local2 = _local1.makeClip(true);
m_wishPlace.addChild(_local2);
};
switch (m_wishs.length){
case 1:
m_wishPlace.getChildAt(0).x = 0;
break;
case 2:
m_wishPlace.getChildAt(0).x = -20;
m_wishPlace.getChildAt(1).x = 20;
break;
};
}
public function haveWish(_arg1:Product):Boolean{
if (m_state != NormalState){
return (false);
};
return (!((getMatchCount(_arg1) == 0)));
}
public function setY(_arg1:Number):void{
(m_currentPosition.y = _arg1);
}
function addMood(_arg1:Number):void{
if ((m_mood = (m_mood + _arg1)) > 1){
m_mood = 1;
};
onChangeMood();
}
public function getWishsCount():int{
return (m_wishs.length);
}
function changeState(_arg1:String):void{
switch (_arg1){
case SettleAccountState:
m_cloud.filters = [new BlurFilter(4, 4, 4)];
addChild(m_settleAccountSing);
m_settleAccountSing.alpha = 0;
m_cloud.alpha = 1;
break;
case EnterState:
break;
case LeaveState:
if (m_state == NormalState){
(m_cloud.filters = [new BlurFilter(4, 4, 4)]);
(m_cloud.alpha = 1);
};
(m_direction = ((Math.random() > 0.5)) ? -1 : 1);
(buttonMode = false);
break;
case NormalState:
addChild(m_cloud);
(m_cloud.alpha = 0);
(buttonMode = true);
break;
};
(m_stateTime = 0);
(m_state = _arg1);
}
function startShake():void{
if (!m_isShake){
m_isShake = true;
m_shakeCount = 20;
};
}
public function getMatchCount(_arg1:Product):int{
var _local3:ProductDescriptor;
var _local2:int;
for each (_local3 in m_wishs) {
_local2 = (_local2 + _local3.getMatchCount(_arg1.getDescriptor()));
};
return (_local2);
}
function update():void{
switch (m_state){
case EnterState:
if (Math.abs((m_goalPosition.x - m_currentPosition.x)) <= m_movingSpeedModul){
changeState(NormalState);
break;
};
if (m_goalPosition.x < m_currentPosition.x){
(m_currentPosition.x = (m_currentPosition.x - m_movingSpeedModul));
} else {
(m_currentPosition.x = (m_currentPosition.x + m_movingSpeedModul));
};
(m_offset.y = (Math.sin((m_stateTime * 10)) * 5));
break;
case SettleAccountState:
if ((m_cloud.alpha = (m_cloud.alpha - 0.15)) < 0){
(m_cloud.alpha = 0);
};
(m_settleAccountSing.x = -35);
(m_settleAccountSing.y = ((Math.cos((m_stateTime * 5)) * 10) + 30));
if ((m_settleAccountSing.alpha = (m_settleAccountSing.alpha + 0.07)) > 1){
(m_settleAccountSing.alpha = 1);
};
break;
case NormalState:
if ((m_cloud.alpha = (m_cloud.alpha + 0.07)) > 1){
(m_cloud.alpha = 1);
};
subMood(0.0005);
if (m_isShake){
if (m_shakeCount < 10){
(m_offset.x = (Math.random() * 2));
(m_offset.y = (Math.random() * 2));
};
if (--m_shakeCount == 0){
(m_isShake = false);
};
};
break;
case LeaveState:
(m_currentPosition.x = (m_currentPosition.x + ((m_movingSpeedModul * m_direction) * 1.5)));
(m_offset.y = (Math.sin((m_stateTime * 10)) * 5));
if (((((m_cloud.alpha = (m_cloud.alpha - 0.15)) <= 0)) && (!((m_cloud.parent == null))))){
removeChild(m_cloud);
};
break;
};
(x = (m_currentPosition.x + m_offset.x));
(y = (m_currentPosition.y + m_offset.y));
(m_stateTime = (m_stateTime + (1 / 24)));
}
function subMood(_arg1:Number):void{
if ((m_mood = (m_mood - _arg1)) < 0){
changeState(LeaveState);
m_owner.removeCustomerFromHisPlace(this);
PlayState.getInstance().customerLeaved();
};
onChangeMood();
}
public function isLeaver():Boolean{
return ((((m_state == LeaveState)) && ((((m_currentPosition.x < -100)) || ((m_currentPosition.x > 800))))));
}
public function addWish(_arg1:ProductDescriptor):void{
m_wishs.push(_arg1);
recalcWishCloud();
}
public function takeProduct(_arg1:ProductDescriptor):void{
var _local2:int;
var _local3:ProductDescriptor;
var _local4:int;
var _local5:Array;
var _local6:ComponentDescriptor;
if (_arg1.havePastry()){
SoundManager.play("hrum");
} else {
ResCreator.createSound("drink").play();
};
if (m_state == NormalState){
if (_arg1.havePastry()){
_local2 = 0;
while (_local2 < m_wishs.length) {
if (m_wishs[_local2].havePastry()){
_local3 = m_wishs[_local2];
_local3;
m_wishs.splice(_local2, 1);
break;
};
_local2++;
};
} else {
_local2 = 0;
while (_local2 < m_wishs.length) {
if (m_wishs[_local2].getFirstComponent().getName() == _arg1.getFirstComponent().getName()){
_local3 = m_wishs[_local2];
_local3;
m_wishs.splice(_local2, 1);
break;
};
_local2++;
};
};
recalcWishCloud();
addMood(0.3);
_local4 = 0;
_local5 = _local3.getIntersection(_arg1);
for each (var _local9 in _local5) {
_local6 = _local9;
_local9;
_local4 = (_local4 + _local6.m_cost);
_local4;
};
(m_money = (m_money + ((_local4 * 0.3) + ((_local4 * 0.7) * m_mood))));
if (m_wishs.length == 0){
changeState(SettleAccountState);
};
};
}
public function onClick():void{
if (m_state == SettleAccountState){
if (m_money == 0){
(m_money = 1);
};
m_owner.removeCustomerFromHisPlace(this);
PlayState.getInstance().addChild(new Dollars(("$" + m_money), x, (y + 100)));
removeChild(m_settleAccountSing);
changeState(LeaveState);
PlayState.getInstance().customerSettleAccounted(m_money);
SoundManager.play("settle_account");
};
}
}
}//package States.PlayState
Section 8
//Dollars (States.PlayState.Dollars)
package States.PlayState {
import flash.display.*;
import flash.events.*;
import flash.geom.*;
import flash.text.*;
public class Dollars extends MovieClip {
var m_position:Point;
var m_liveTime:Number;
public var m_text:TextField;
public function Dollars(_arg1:String, _arg2:Number, _arg3:Number){
m_position = new Point(_arg2, _arg3);
m_liveTime = 0;
m_text.text = _arg1;
alpha = 1.8;
addEventListener(Event.ENTER_FRAME, update);
}
function update(_arg1:Event):void{
m_liveTime = (m_liveTime + (1 / 24));
m_position.y = (m_position.y - 2);
alpha = (alpha - (1 / 24));
x = (m_position.x + (Math.cos((m_liveTime * 5)) * 10));
y = m_position.y;
if ((((alpha < 0)) && (!((parent == null))))){
removeEventListener(Event.ENTER_FRAME, update);
parent.removeChild(this);
};
}
}
}//package States.PlayState
Section 9
//GasAutomat (States.PlayState.GasAutomat)
package States.PlayState {
import flash.display.*;
import Main.*;
public class GasAutomat extends MovieClip {
const m_maxSpawnDelay:int = 6;
const EmptyGlassState:String = "empty_glass";
const FillingGlassState:String = "filling";
const m_maxDelay:int = 48;
const m_productX:Number = -11;
const SpawnNewGlassState:String = "spawn";
const m_productY:Number = 77;
const DelayState:String = "delay";
const WaitForTakeGlassState:String = "wait";
const m_maxFillingDelay:int = 31;
var m_newGlassAnimation:MovieClip;
var m_sodaPlace:MovieClip;
var m_product:Product;
var m_buttonGreen:SimpleButton;
var m_buttonRed:SimpleButton;
var m_picture:MovieClip;
var m_stateTime:int;
var m_state:String;
public function GasAutomat(_arg1:Boolean){
m_buttonGreen = new ButtonGreen();
m_buttonRed = new ButtonRed();
m_newGlassAnimation = ResCreator.createMC("new_glass_animation");
m_picture = ResCreator.createMC("automate_source");
m_sodaPlace = new MovieClip();
super();
m_picture.cacheAsBitmap = true;
addChild(m_picture);
m_picture.addChild(m_sodaPlace);
m_picture.addChild(m_buttonGreen);
if (_arg1){
m_picture.addChild(m_buttonRed);
};
changeState(DelayState);
if (!_arg1){
m_buttonGreen.x = -18;
m_buttonGreen.y = -8;
} else {
m_buttonGreen.x = -38;
m_buttonGreen.y = -15;
m_buttonRed.x = 36;
m_buttonRed.y = 14;
};
}
function changeState(_arg1:String):void{
m_stateTime = 0;
m_state = _arg1;
switch (m_state){
case SpawnNewGlassState:
m_sodaPlace.addChild(m_newGlassAnimation);
m_newGlassAnimation.x = -10;
m_newGlassAnimation.y = 69;
m_newGlassAnimation.gotoAndPlay(1);
break;
case FillingGlassState:
m_sodaPlace.addChild(m_product);
m_sodaPlace.removeChild(m_newGlassAnimation);
SoundManager.play("soda_sound");
break;
};
}
public function update():void{
m_stateTime++;
switch (m_state){
case DelayState:
if (m_stateTime == m_maxDelay){
changeState(SpawnNewGlassState);
};
break;
case SpawnNewGlassState:
if (m_stateTime == m_maxSpawnDelay){
changeState(EmptyGlassState);
};
break;
case FillingGlassState:
if (m_stateTime == m_maxFillingDelay){
changeState(WaitForTakeGlassState);
};
break;
};
}
public function resetProduct():void{
while (m_sodaPlace.numChildren != 0) {
m_sodaPlace.removeChildAt(0);
};
m_product = null;
changeState(DelayState);
}
public function onGreenClick():void{
if (m_state == EmptyGlassState){
m_product = new Product();
m_product.addComponent(new ComponentDescriptor(Cookies.GREEN_SODA));
m_product.x = m_productX;
m_product.y = m_productY;
changeState(FillingGlassState);
};
}
public function returnProduct(_arg1:Product):void{
m_product = _arg1;
while (m_sodaPlace.numChildren != 0) {
m_sodaPlace.removeChildAt(0);
};
m_sodaPlace.addChild(m_product);
m_product.x = m_productX;
m_product.y = m_productY;
changeState(WaitForTakeGlassState);
}
public function canReturnProduct(_arg1:Product):Boolean{
var _local2:Boolean = (((m_state == DelayState)) && (((_arg1.isSingleComponent(Cookies.GREEN_SODA)) || (_arg1.isSingleComponent(Cookies.RED_SODA)))));
return (_local2);
}
public function getGreenButton():SimpleButton{
return (m_buttonGreen);
}
public function getProduct():Product{
if (m_state != WaitForTakeGlassState){
return (null);
};
return (m_product);
}
public function getRedButton():SimpleButton{
return (m_buttonRed);
}
public function onRedClick():void{
if (m_state == EmptyGlassState){
m_product = new Product();
m_product.addComponent(new ComponentDescriptor(Cookies.RED_SODA));
m_product.x = m_productX;
m_product.y = m_productY;
changeState(FillingGlassState);
};
}
}
}//package States.PlayState
Section 10
//Place (States.PlayState.Place)
package States.PlayState {
import flash.display.*;
import Main.*;
public class Place extends MovieClip {
var m_picture:MovieClip;
var m_product:Product;
public function Place(_arg1:Number, _arg2:Number, _arg3:Number){
x = _arg1;
y = _arg2;
m_picture = ResCreator.createMC("place");
m_picture.alpha = 0;
addChild(m_picture);
scaleX = _arg3;
scaleY = _arg3;
}
public function resetProduct():void{
removeChild(m_product);
m_product = null;
}
public function setProduct(_arg1:Product):void{
m_product = _arg1;
m_product.x = 0;
m_product.y = 0;
addChild(m_product);
}
public function getProduct():Product{
return (m_product);
}
}
}//package States.PlayState
Section 11
//PlayState (States.PlayState.PlayState)
package States.PlayState {
import flash.display.*;
import Main.*;
import flash.events.*;
import flash.geom.*;
import States.*;
import flash.text.*;
import flash.utils.*;
public class PlayState extends GameState {
const m_stagesCount:int = 3;
const m_redGasLevel:int = 5;
const m_levelsInStage:Array;
const m_sourcesCountAviable:Array;
const m_levelTimes:Array;
const m_secondWishLevel:int = 3;
const m_jalousieY2:Number = -10;
const m_jalousieY1:Number = -350;
const m_customerArriveTimerPeriod:Array;
const m_jalouseieMaxTime:Number = 1;
const m_cookersCountAviable:Array;
const m_customerPlacePositions:Array;
const m_moneyGoals:Array;
const m_shadeMaxTime:Number = 0.5;
const m_greenGasLevel:int = 2;
var m_timeLeftCaption:SimpleDigits;
var m_isJalousieOpen:Boolean;
var m_customers:Array;
var m_customersLayer:Sprite;
var m_maxLevelTime:Number;// = 120
var m_levelTime:Number;
var m_updateTimer:Timer;
var m_needCalcLevelIndex:Boolean;// = true
var m_blackSquare:MovieClip;
var m_level:int;// = 0
var m_jalouseieTime:Number;
var m_shadeTime:Number;// = 0
var m_cookers:Array;
var m_isSecondJalouseiePath:Boolean;
var m_backLayer:MovieClip;
var m_gasAutomat:GasAutomat;
var m_closedSign:MovieClip;
var m_places:Array;
var m_shopBoardPlace:MovieClip;
var m_shopBoardPic:MovieClip;
var m_expertGoal:int;
var m_totalMoneyCur:int;// = 0
var m_allIngredients:Array;
var m_money:int;
var m_guiLayer:Sprite;
var m_overlayLayer:MovieClip;
var m_somethingInHand:Product;
var m_menuButton:SimpleButton;
var m_goal:int;// = 100
var m_customersArriveTimer:Timer;
var m_stage:int;// = 0
var m_moneyCaption:SimpleDigits;
var m_levelIndex:int;// = 0
var m_isClosed:Boolean;
var m_levelsCompleted:int;// = 0
var m_jalousie:MovieClip;
var m_isJalousieRunned:Boolean;
var m_customerPlaces:Array;
var m_day:SimpleDigits;
var m_sources:Array;
var m_expertGoalReached:Boolean;
var m_trash:Trash;
var m_totalMoney:Array;
var m_goalReached:Boolean;
var m_moneyTextField:TextField;
static var m_instance:PlayState = null;
public function PlayState(){
m_customerArriveTimerPeriod = [13000, 13000, 13000, 12000, 11000, 9000, 9000, 9000, 9000, 9000, 8000, 8000, 8000, 8000, 8000, 8000, 8000, 8000, 8000, 8000];
m_levelTimes = [60, 60, 70, 80, 80, 90, 90, 90, 100, 110, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120];
m_sourcesCountAviable = [3, 3, 3, 4, 4, 4, 5, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7];
m_cookersCountAviable = [2, 4, 4, 4, 4, 4, 4, 4, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6];
m_moneyGoals = [20, 30, 35, 70, 90, 120, 135, 150, 165, 180, 200, 210, 220, 230, 240, 250, 265, 275, 280, 290];
m_levelsInStage = [5, 5, 10];
m_totalMoney = [0, 0, 0];
m_customerPlacePositions = [90, 245, 405, 560];
super();
}
override public function onResume():void{
m_updateTimer.start();
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseClick);
}
public function getMoney():int{
return (m_money);
}
public function customerLeaved():void{
}
function newCustomerArrive(_arg1:TimerEvent):void{
var _local2:int;
var _local4:int;
var _local5:Number;
var _local6:Point;
var _local7:Array;
var _local8:Array;
var _local9:Array;
var _local10:Customer;
var _local11:int;
var _local12:*;
var _local13:Array;
var _local14:int;
var _local15:ProductDescriptor;
var _local16:Array;
var _local17:int;
var _local18:ComponentDescriptor;
if (m_customersArriveTimer.currentCount == 1){
m_customersArriveTimer.delay = (m_customersArriveTimer.delay * 4);
};
var _local3:Array = new Array();
_local2 = 0;
while (_local2 < m_customerPlaces.length) {
if (m_customerPlaces[_local2] == null){
_local3.push(_local2);
};
_local2++;
};
if (_local3.length != 0){
_local4 = Utils.AnyOf(_local3);
_local5 = 100;
_local6 = new Point();
if (Math.random() < 0.5){
_local6.x = -(_local5);
} else {
_local6.x = (700 + _local5);
};
_local7 = [[["woman_body_2", "woman_body_1"], ["woman_clothe_2", "woman_clothe_1"], ["woman_eyes_2", "woman_eyes_1"], ["woman_mouth_2", "woman_mouth_1"], ["woman_nose_2", "woman_nose_1"], ["woman_hairs_2", "woman_hairs_1"]], [["black_body_1", "black_body_2"], ["black_clothe_1", "black_clothe_2"], ["black_eyes_1", "black_eyes_2"], ["black_mouth_1", "black_mouth_2"], ["black_nose_1", "black_nose_2"], ["black_hairs_1", "black_hairs_2"]], [["white_body_1", "white_body_2"], ["white_clothe_1", "white_clothe_2"], ["white_eyes_1", "white_eyes_2"], ["white_mouth_1", "white_mouth_2"], ["white_nose_1", "white_nose_2"], ["white_hairs_1", "white_hairs_2"]], [["yellow_body_1", "yellow_body_2"], ["yellow_clothe_1", "yellow_clothe_2"], ["yellow_eyes_1", "yellow_eyes_2"], ["yellow_mouth_1", "yellow_mouth_2"], ["yellow_nose_1", "yellow_nose_2"], ["yellow_hairs_1", "yellow_hairs_2"]]];
_local8 = new Array();
_local9 = _local7[int((Math.random() * _local7.length))];
_local2 = 0;
while (_local2 < _local9.length) {
_local8.push(Utils.AnyOf(_local9[_local2]));
_local2++;
};
_local10 = new Customer(this, _local6, new Point(m_customerPlacePositions[_local4], 0), _local8);
if (getLevelIndex() >= m_secondWishLevel){
_local11 = ((Math.random() < 0.5)) ? 1 : 2;
} else {
_local11 = 1;
};
_local12 = false;
_local13 = new Array();
_local14 = 0;
while (_local11 != 0) {
_local15 = new ProductDescriptor();
_local16 = getRandomCookies();
_local2 = 0;
while (_local2 < _local16.length) {
_local18 = new ComponentDescriptor(_local16[_local2]);
_local18.setCookingPhase(1);
_local15.addComponentDescriptor(_local18);
_local2++;
};
_local17 = _local15.getMainTypeGroup();
if (_local13.lastIndexOf(_local17) == -1){
_local10.addWish(_local15);
_local13.push(_local17);
_local11--;
};
var _temp1 = _local14;
_local14 = (_local14 + 1);
if (_temp1 == 100){
trace("bug_insurance error!");
break;
};
};
m_customersLayer.addChildAt(_local10, 0);
m_customers.push(_local10);
m_customerPlaces[_local4] = _local10;
updateY();
};
}
public function getLevelGoal():int{
return (m_moneyGoals[getLevelIndex()]);
}
public function setTotalMoneyArray(_arg1:Array):void{
m_totalMoney = _arg1;
if (m_totalMoney == null){
m_totalMoney = [0, 0, 0, 0];
};
}
function updateJalousie(_arg1:Number):void{
if (m_isJalousieRunned){
if (!m_isSecondJalouseiePath){
m_jalouseieTime = (m_jalouseieTime + _arg1);
if (m_isJalousieOpen){
if (m_jalouseieTime >= m_jalouseieMaxTime){
m_jalouseieTime = m_jalouseieMaxTime;
m_isJalousieRunned = false;
};
m_jalousie.y = (m_jalousieY2 + (((m_jalousieY1 - m_jalousieY2) * m_jalouseieTime) / m_jalouseieMaxTime));
} else {
if (m_jalouseieTime >= m_jalouseieMaxTime){
m_jalouseieTime = m_jalouseieMaxTime;
m_isSecondJalouseiePath = true;
m_overlayLayer.addChild(m_blackSquare);
};
m_jalousie.y = (m_jalousieY1 + (((m_jalousieY2 - m_jalousieY1) * m_jalouseieTime) / m_jalouseieMaxTime));
};
} else {
m_shadeTime = (m_shadeTime + _arg1);
if (m_isJalousieOpen){
m_blackSquare.alpha = ((1 - (m_shadeTime / m_shadeMaxTime)) * 0.5);
if (m_shadeTime >= m_shadeMaxTime){
m_overlayLayer.removeChild(m_blackSquare);
m_isSecondJalouseiePath = false;
};
} else {
m_blackSquare.alpha = ((m_shadeTime / m_shadeMaxTime) * 0.5);
if (m_shadeTime >= m_shadeMaxTime){
if (m_goalReached){
if (m_levelsCompleted == getLevelIndex()){
m_totalMoneyCur = (m_totalMoneyCur + m_money);
if (m_totalMoneyCur > m_totalMoney[m_stage]){
m_totalMoney[m_stage] = m_totalMoneyCur;
};
m_levelsCompleted++;
SaveManager.getInstance().save();
};
StateManager.getInstance().pushState(WinState.getInstance());
} else {
StateManager.getInstance().pushState(LoseState.getInstance());
};
};
};
};
};
}
function onMouseClick(_arg1:MouseEvent):void{
var _local2:Cooker;
var _local3:Place;
var _local4:Customer;
var _local5:Source;
var _local6:String;
if (m_somethingInHand == null){
if (m_gasAutomat != null){
if (m_gasAutomat.getProduct() == null){
if (m_gasAutomat.getGreenButton().hitTestPoint(stage.mouseX, stage.mouseY, true)){
m_gasAutomat.onGreenClick();
return;
};
if (m_gasAutomat.getRedButton().hitTestPoint(stage.mouseX, stage.mouseY, true)){
m_gasAutomat.onRedClick();
return;
};
};
if (((!((m_gasAutomat.getProduct() == null))) && (m_gasAutomat.getProduct().hitTestPoint(stage.mouseX, stage.mouseY, true)))){
m_somethingInHand = m_gasAutomat.getProduct();
m_gasAutomat.resetProduct();
addChild(m_somethingInHand);
updateSomethingInHandPosition();
return;
};
};
for each (_local3 in m_places) {
if (((!((_local3.getProduct() == null))) && (_local3.hitTestPoint(stage.mouseX, stage.mouseY, true)))){
m_somethingInHand = _local3.getProduct();
_local3.resetProduct();
addChild(m_somethingInHand);
updateSomethingInHandPosition();
return;
};
};
for each (_local5 in m_sources) {
if (_local5.hitTestPoint(stage.mouseX, stage.mouseY, true)){
m_somethingInHand = _local5.getProduct();
addChild(m_somethingInHand);
updateSomethingInHandPosition();
return;
};
};
for each (_local2 in m_cookers) {
if (((((((!(_local2.isClosed())) && (!((_local2.getProduct() == null))))) && (!((_local2.getProduct().getFirstComponent().getCookingPhase() == 0))))) && (_local2.hitTestPoint(stage.mouseX, stage.mouseY, true)))){
_local2.getProduct().runAntiCooking();
m_somethingInHand = _local2.getProduct();
_local2.resetProduct();
addChild(m_somethingInHand);
m_somethingInHand.goToLastFrame();
updateSomethingInHandPosition();
return;
};
};
for each (_local4 in m_customers) {
if (_local4.hitTestPoint(stage.mouseX, stage.mouseY)){
_local4.onClick();
return;
};
};
} else {
if (m_somethingInHand.havePastry()){
for each (_local3 in m_places) {
if (_local3.hitTestPoint(stage.mouseX, stage.mouseY, true)){
if (_local3.getProduct() == null){
removeChild(m_somethingInHand);
_local3.setProduct(m_somethingInHand);
m_somethingInHand = null;
return;
};
};
};
};
if (m_somethingInHand.haveOneOf([Cookies.GREEN_SODA, Cookies.RED_SODA])){
for each (_local3 in m_places) {
if (_local3.hitTestPoint(stage.mouseX, stage.mouseY, true)){
if (_local3.getProduct() == null){
removeChild(m_somethingInHand);
_local3.setProduct(m_somethingInHand);
m_somethingInHand = null;
return;
};
};
};
};
for each (_local3 in m_places) {
if (((((!((_local3.getProduct() == null))) && (_local3.hitTestPoint(stage.mouseX, stage.mouseY, true)))) && (_local3.getProduct().canAddProduct(m_somethingInHand)))){
_local6 = Cookies.nameToAdditionAnimation(m_somethingInHand.getFirstComponent().getName());
if (((!((_local6 == null))) && (!((_local6.length == 0))))){
addChild(new AutoKillObject(ResCreator.createMC(_local6), _local3.x, (_local3.y - 20)));
};
removeChild(m_somethingInHand);
_local3.getProduct().addComponent(m_somethingInHand.getFirstComponent().convertFromIcon());
if (Utils.IsContain(Cookies.LIQUID_SOURCES_TYPES, m_somethingInHand.getFirstComponent().getName())){
SoundManager.play("drop");
};
if (!m_somethingInHand.getFirstComponent().isPastryType()){
_local3.getProduct().playLastAddedComponent();
} else {
_local3.getProduct().goToLastFrame();
};
m_somethingInHand = null;
return;
};
};
for each (_local2 in m_cookers) {
if (((((((!(_local2.isClosed())) && (_local2.isTrueMaterial(m_somethingInHand)))) && ((_local2.getProduct() == null)))) && (_local2.hitTestPoint(stage.mouseX, stage.mouseY, true)))){
removeChild(m_somethingInHand);
_local2.setProduct(m_somethingInHand);
m_somethingInHand = null;
addChild(new AutoKillObject(ResCreator.createMC("ladle_fill"), (_local2.x - 3), (_local2.y - 30)));
SoundManager.play("cooking");
return;
};
};
if (!m_shopBoardPic.hitTestPoint(stage.mouseX, stage.mouseY, true)){
for each (_local4 in m_customers) {
if (((_local4.hitTestObject(m_somethingInHand)) && (_local4.haveWish(m_somethingInHand)))){
if (_local4.haveWish(m_somethingInHand)){
removeChild(m_somethingInHand);
_local4.takeProduct(m_somethingInHand.getDescriptor());
m_somethingInHand = null;
};
return;
};
};
};
if (m_somethingInHand.isSourceType()){
for each (_local5 in m_sources) {
if (_local5.hitTestPoint(stage.mouseX, stage.mouseY, true)){
if (m_somethingInHand.isSingleComponent(_local5.getProductionName())){
removeChild(m_somethingInHand);
m_somethingInHand = null;
return;
};
removeChild(m_somethingInHand);
m_somethingInHand = _local5.getProduct();
addChild(m_somethingInHand);
updateSomethingInHandPosition();
return;
};
};
};
if (((((!((m_gasAutomat == null))) && (m_gasAutomat.hitTestPoint(stage.mouseX, stage.mouseY, true)))) && (m_gasAutomat.canReturnProduct(m_somethingInHand)))){
removeChild(m_somethingInHand);
m_gasAutomat.returnProduct(m_somethingInHand);
m_somethingInHand = null;
return;
};
if (m_trash.hitTestPoint(stage.mouseX, stage.mouseY, true)){
removeChild(m_somethingInHand);
m_somethingInHand = null;
return;
};
};
}
function removeCustomerFromHisPlace(_arg1:Customer):void{
var _local2:int;
while (_local2 < m_customerPlaces.length) {
if (m_customerPlaces[_local2] == _arg1){
m_customerPlaces[_local2] = null;
m_customersLayer.addChildAt(_arg1, 0);
return;
};
_local2++;
};
}
function onMouseMoved(_arg1:MouseEvent):void{
var _local2:SelectableObject;
for each (_local2 in SelectableObject.m_allSelectableObjects) {
_local2.onMouseMoved(_arg1.stageX, _arg1.stageY);
};
}
function updateStatsPanel():void{
var _local1:int = (m_maxLevelTime - m_levelTime);
if (_local1 < 0){
_local1 = 0;
};
if ((_local1 % 60).toString().length < 2){
m_timeLeftCaption.m_text.text = ((int((_local1 / 60)) + ":0") + (_local1 % 60));
} else {
m_timeLeftCaption.m_text.text = ((int((_local1 / 60)) + ":") + (_local1 % 60));
};
m_moneyCaption.m_text.text = ((m_money + "/") + m_goal);
m_moneyCaption.m_text.textColor = 4278255360;
m_day.m_text.text = ((("day: " + (m_level + 1)) + "/") + m_levelsInStage[m_stage]);
}
public function getStagesCompleted():int{
if (m_levelsCompleted < 5){
return (0);
};
if (m_levelsCompleted < 10){
return (1);
};
if (m_levelsCompleted < 20){
return (2);
};
return (3);
}
public function selectStage(_arg1:int):void{
m_stage = _arg1;
m_level = 0;
}
public function getLevelsCompleted():int{
return (m_levelsCompleted);
}
override public function onPreInit():void{
Cookies.initConnections();
m_backLayer = new MovieClip();
addChild(m_backLayer);
m_customersLayer = new Sprite();
m_customersLayer.y = 50;
addChild(m_customersLayer);
m_jalousie = ResCreator.createMC("jalousie");
m_jalousie.cacheAsBitmap = true;
addChild(m_jalousie);
m_shopBoardPic = ResCreator.createMC("shopboard");
m_shopBoardPlace = new MovieClip();
m_shopBoardPic.addChild(m_shopBoardPlace);
addChild(m_shopBoardPic);
m_shopBoardPic.cacheAsBitmap = true;
m_guiLayer = new Sprite();
addChild(m_guiLayer);
m_guiLayer.addChild(ResCreator.createMC("menu_panel"));
var icon_clock:MovieClip = ResCreator.createMC("icon_clock");
icon_clock.x = 5;
icon_clock.y = 5;
m_guiLayer.addChild(icon_clock);
m_timeLeftCaption = new SimpleDigits();
m_timeLeftCaption.x = 25;
m_timeLeftCaption.y = -4;
m_guiLayer.addChild(m_timeLeftCaption);
var icon_money:MovieClip = ResCreator.createMC("icon_money");
icon_money.x = 90;
icon_money.y = 5;
m_guiLayer.addChild(icon_money);
m_moneyCaption = new SimpleDigits();
m_moneyCaption.x = 123;
m_moneyCaption.y = -4;
m_guiLayer.addChild(m_moneyCaption);
m_day = new SimpleDigits();
m_day.x = 230;
m_day.y = -4;
m_guiLayer.addChild(m_day);
m_moneyTextField = new TextField();
m_moneyTextField.text = "0";
m_moneyTextField.x = 100;
m_moneyTextField.y = 20;
m_menuButton = new PauseButton();
m_menuButton.x = 615;
m_menuButton.y = 5;
m_guiLayer.addChild(m_menuButton);
m_menuButton.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
StateManager.getInstance().pushState(GameMenuState.getInstance());
});
var instructions_btn:SimpleButton = ResCreator.createSimpleButton("question_mark");
instructions_btn.x = 570;
instructions_btn.y = 5;
m_guiLayer.addChild(instructions_btn);
instructions_btn.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
StateManager.getInstance().pushState(InstructionState.getInstance());
});
m_overlayLayer = new MovieClip();
addChild(m_overlayLayer);
}
public function nextLevel():Boolean{
if (++m_level == m_levelsInStage[m_stage]){
m_level = 0;
nextStage();
return (true);
};
return (false);
}
function updateSomethingInHandPosition():void{
if (m_somethingInHand != null){
m_somethingInHand.x = stage.mouseX;
m_somethingInHand.y = stage.mouseY;
};
}
override public function onInit():void{
var _local2:Source;
var _local3:*;
var _local4:int;
var _local5:Cooker;
SoundManager.getInstance().playLoop("music");
m_isJalousieRunned = false;
m_needCalcLevelIndex = true;
m_goalReached = false;
m_expertGoalReached = false;
m_levelTime = 0;
m_maxLevelTime = m_levelTimes[getLevelIndex()];
m_goal = m_moneyGoals[getLevelIndex()];
m_money = 0;
m_isClosed = false;
var _local1:MovieClip = ResCreator.createMC("backs");
_local1.gotoAndStop((m_stage + 1));
_local1.cacheAsBitmap = true;
m_backLayer.addChild(_local1);
m_customersArriveTimer = new Timer((m_customerArriveTimerPeriod[getLevelIndex()] / 4));
m_customersArriveTimer.start();
m_customersArriveTimer.addEventListener(TimerEvent.TIMER, newCustomerArrive);
m_customers = new Array();
m_customerPlaces = [null, null, null, null];
m_allIngredients = new Array();
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseClick);
stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMoved);
while (m_shopBoardPlace.numChildren != 0) {
m_shopBoardPlace.removeChildAt(0);
};
m_sources = [new Source(530, 340, "pastry_source", Cookies.PASTRY), new Source(170, 305, "bluejam_source", Cookies.BLUEJAM_ICON), new Source(105, 328, "chocolate_source", Cookies.CHOCOLATE_ICON), new Source(17, 312, "cherry_source", Cookies.CHERRY_ICON), new Source(63, 285, "strawberries_source", Cookies.STRAWBERRY_ICON), new Source(62, 365, "cream_source", Cookies.CREAM_ICON), new Source(130, 271, "banana_source", Cookies.BANANA_ICON)];
m_sources.length = m_sourcesCountAviable[getLevelIndex()];
for each (_local2 in m_sources) {
_local2.buttonMode = true;
m_shopBoardPlace.addChild(_local2);
};
m_cookers = [new Cooker(300, 394, "round_cooker", Cookies.ROUND_PASTRY, Cookies.PASTRY, 1, null), new Cooker(303, 363, "round_cooker", Cookies.ROUND_PASTRY, Cookies.PASTRY, 0.8, null), new Cooker(352, 393, "star_cooker", Cookies.STAR_PASTRY, Cookies.PASTRY, 1, "cakecap_1"), new Cooker(352, 363, "star_cooker", Cookies.STAR_PASTRY, Cookies.PASTRY, 0.8, "cakecap_2"), new Cooker(401, 363, "square_cooker", Cookies.SQUARE_PASTRY, Cookies.PASTRY, 0.8, "cakecap_3"), new Cooker(408, 393, "square_cooker", Cookies.SQUARE_PASTRY, Cookies.PASTRY, 1, "cakecap_4")];
_local3 = m_cookersCountAviable[getLevelIndex()];
_local4 = 0;
while (_local4 < m_cookers.length) {
if (_local4 >= _local3){
m_cookers[_local4].close();
};
_local4++;
};
for each (_local5 in m_cookers) {
m_shopBoardPlace.addChild(_local5);
};
m_places = [new Place(287, 294, 1), new Place(296, 258, 0.85), new Place(345, 294, 1), new Place(347, 258, 0.85), new Place(404, 294, 1), new Place(400, 258, 0.85)];
_local4 = (m_places.length - 1);
while (_local4 >= 0) {
m_shopBoardPlace.addChild(m_places[_local4]);
_local4--;
};
m_trash = new Trash();
m_shopBoardPlace.addChild(m_trash);
m_trash.x = 0;
m_trash.y = 430;
if (getLevelIndex() >= m_greenGasLevel){
m_gasAutomat = new GasAutomat((getLevelIndex() >= m_redGasLevel));
m_shopBoardPlace.addChild(m_gasAutomat);
m_gasAutomat.x = 640;
m_gasAutomat.y = 300;
};
updateStatsPanel();
m_updateTimer = new Timer(((1 / 24) * 1000));
m_updateTimer.start();
m_updateTimer.addEventListener(TimerEvent.TIMER, update);
updateStatsPanel();
runJalousie(true);
}
function getRandomCookies():Array{
return (Utils.AnyOf(Cookies.getCookie(getLevelIndex())));
}
override public function onStop():void{
m_updateTimer.stop();
stage.removeEventListener(MouseEvent.MOUSE_DOWN, onMouseClick);
}
public function addMoney(_arg1:int):void{
m_money = (m_money + _arg1);
updateStatsPanel();
}
function getLevelIndex():int{
var _local1:int;
var _local2:int;
if (m_needCalcLevelIndex){
_local1 = 0;
_local2 = 0;
while (_local2 < m_stage) {
_local1 = (_local1 + m_levelsInStage[_local2]);
_local2++;
};
m_levelIndex = (_local1 + m_level);
m_needCalcLevelIndex = false;
};
return (m_levelIndex);
}
public function getTotalMoneyArray():Array{
return (m_totalMoney);
}
function updateY():void{
var _local1:Customer;
var _local2:Number;
for each (_local1 in m_customers) {
_local2 = _local1.x;
if (_local2 < 350){
_local1.setY(((((350 - _local2) / 350) * (272 - 178)) + 80));
} else {
_local1.setY(((((_local2 - 350) / 350) * (272 - 178)) + 80));
};
};
}
public function customerSettleAccounted(_arg1:int):void{
addMoney(_arg1);
if ((((m_money >= m_goal)) && (!(m_goalReached)))){
m_goalReached = true;
};
if ((((m_money >= m_expertGoal)) && (!(m_expertGoalReached)))){
m_expertGoalReached = true;
};
}
override public function onCleanup():void{
while (m_overlayLayer.numChildren != 0) {
m_overlayLayer.removeChildAt(0);
};
if (m_somethingInHand != null){
removeChild(m_somethingInHand);
m_somethingInHand = null;
};
stage.removeEventListener(MouseEvent.MOUSE_DOWN, onMouseClick);
m_updateTimer.reset();
m_updateTimer = null;
if (m_closedSign){
m_backLayer.removeChild(m_closedSign);
m_closedSign = null;
};
m_customersArriveTimer.stop();
m_customersArriveTimer.removeEventListener(TimerEvent.TIMER, newCustomerArrive);
while (m_customersLayer.numChildren) {
m_customersLayer.removeChildAt(0);
};
m_customers = null;
m_sources = null;
m_cookers = null;
m_places = null;
SelectableObject.m_allSelectableObjects.length = 0;
}
function update(_arg1:TimerEvent):void{
var _local3:Customer;
var _local5:Cooker;
m_levelTime = (m_levelTime + (m_updateTimer.delay / 1000));
updateStatsPanel();
updateJalousie((m_updateTimer.delay / 1000));
var _local2:* = new Array();
for each (_local3 in m_customers) {
_local3.update();
if (!_local3.isLeaver()){
_local2.push(_local3);
} else {
m_customersLayer.removeChild(_local3);
};
};
m_customers = _local2;
updateY();
updateSomethingInHandPosition();
if ((((m_levelTime >= m_maxLevelTime)) && (!(m_isClosed)))){
m_customersArriveTimer.stop();
m_isClosed = true;
m_closedSign = ResCreator.createMC("closed_signboard");
m_backLayer.addChild(m_closedSign);
};
if ((((m_customers.length == 0)) && (m_isClosed))){
runJalousie(false);
};
if (m_gasAutomat){
m_gasAutomat.update();
};
var _local4:int;
while (_local4 < m_sources.length) {
m_sources[_local4].update();
_local4++;
};
for each (_local5 in m_cookers) {
_local5.update(null);
};
}
public function nextStage():Boolean{
return ((++m_stage == m_stagesCount));
}
public function setLevelsCompleted(_arg1):void{
m_levelsCompleted = _arg1;
}
function runJalousie(_arg1:Boolean):void{
if (!m_isJalousieRunned){
m_isJalousieOpen = _arg1;
m_isJalousieRunned = true;
m_jalouseieTime = 0;
m_blackSquare = ResCreator.createMC("black_square");
m_blackSquare.cacheAsBitmap = true;
m_shadeTime = 0;
if (m_isJalousieOpen){
m_overlayLayer.addChild(m_blackSquare);
m_jalousie.y = m_jalousieY2;
m_isSecondJalouseiePath = true;
m_blackSquare.alpha = ((1 - (m_shadeTime / m_shadeMaxTime)) * 0.5);
} else {
m_blackSquare.alpha = 0;
m_isSecondJalouseiePath = false;
m_jalousie.y = m_jalousieY1;
};
};
}
public function replay():void{
onCleanup();
onInit();
}
public function payAFine(_arg1:int):void{
m_money = (m_money - _arg1);
if (m_money < 0){
m_money = 0;
};
updateStatsPanel();
}
public static function getInstance():PlayState{
if (m_instance == null){
m_instance = new (PlayState);
};
return (m_instance);
}
}
}//package States.PlayState
Section 12
//Product (States.PlayState.Product)
package States.PlayState {
import flash.display.*;
public class Product extends MovieClip {
var m_descriptor:ProductDescriptor;
var m_clip:MovieClip;
public function Product(){
m_descriptor = new ProductDescriptor();
super();
}
public function getPastryCount():int{
return (m_descriptor.getPastryCount());
}
public function getClip():MovieClip{
return (m_clip);
}
public function isSingleComponent(_arg1:String):Boolean{
return (m_descriptor.isSingleComponent(_arg1));
}
public function runAntiCooking():void{
if ((((getFirstComponent().getCookingPhase() == 2)) && (!(getFirstComponent().m_isBad)))){
getFirstComponent().setCookingPhase(1);
};
}
public function haveOneOf(_arg1:Array):Boolean{
var _local2:String;
for each (_local2 in _arg1) {
if (haveComponent(_local2)){
return (true);
};
};
return (false);
}
public function isZOrderBusy(_arg1:Number):Boolean{
return (m_descriptor.isZOrderBusy(_arg1));
}
public function nextCookinPhase():void{
if (getFirstComponent().nextCookingPhase()){
m_clip = m_descriptor.makeClip(false);
recalcClips();
};
}
public function addComponent(_arg1:ComponentDescriptor):void{
m_descriptor.addComponentDescriptor(_arg1);
m_clip = m_descriptor.makeClip(false);
recalcClips();
}
public function trySetBad():void{
getFirstComponent().trySetBad();
}
public function havePastry():Boolean{
return (m_descriptor.havePastry());
}
public function getFirstComponent():ComponentDescriptor{
return (m_descriptor.getFirstComponent());
}
public function getDescriptor():ProductDescriptor{
return (m_descriptor);
}
public function playLastAddedComponent():void{
m_clip = m_descriptor.makeSmartClip();
recalcClips();
}
public function getComponentsCount():int{
return (m_descriptor.getComponentsCount());
}
override public function toString():String{
return (("product " + m_descriptor));
}
public function getPastryForm():String{
return (m_descriptor.getPastryForm());
}
public function goToLastFrame():void{
m_clip = m_descriptor.makeClip(true);
recalcClips();
}
public function haveComponent(_arg1:String):Boolean{
return (m_descriptor.haveComponent(_arg1));
}
function recalcClips():void{
while (numChildren != 0) {
removeChildAt(0);
};
addChild(m_clip);
m_clip.buttonMode = true;
}
public function canAddProduct(_arg1:Product):Boolean{
var _local3:String;
if (_arg1.getComponentsCount() != 1){
return (false);
};
var _local2:ComponentDescriptor = _arg1.getFirstComponent();
if (_local2.isPastryType()){
if (getPastryCount() > 5){
return (false);
};
if (getPastryForm() != _arg1.getPastryForm()){
return (false);
};
return (true);
};
if (isZOrderBusy(_local2.convertFromIcon().m_zOrder)){
return (false);
};
if (havePastry()){
for each (_local3 in Cookies.ADDITION_TYPES) {
if (_local3 == _local2.getName()){
return (true);
};
};
};
return (false);
}
public function isSourceType():Boolean{
if (getComponentsCount() != 1){
return (false);
};
return (!((Cookies.SOURCE_TYPES.indexOf(getFirstComponent().getName()) == -1)));
}
}
}//package States.PlayState
Section 13
//ProductDescriptor (States.PlayState.ProductDescriptor)
package States.PlayState {
import flash.display.*;
import flash.utils.*;
public class ProductDescriptor {
private var m_lastAdded:ComponentDescriptor;// = null
private var m_componentDescriptors:Array;
public function ProductDescriptor(){
m_componentDescriptors = new Array();
super();
}
public function getMatchCount(_arg1:ProductDescriptor):int{
var _local4:ComponentDescriptor;
var _local5:ComponentDescriptor;
var _local2:int;
var _local3:Dictionary = new Dictionary();
for each (_local4 in m_componentDescriptors) {
for each (_local5 in _arg1.m_componentDescriptors) {
if ((((((_local4.getName() == _local5.getName())) && ((_local3[_local4] == null)))) && ((_local3[_local5] == null)))){
_local3[_local4] = true;
_local3[_local5] = true;
_local2++;
};
};
};
return (_local2);
}
public function havePastry(){
var _local1:ComponentDescriptor;
for each (_local1 in m_componentDescriptors) {
if (_local1.isPastryType()){
return (true);
};
};
return (false);
}
public function getComponentsCount():int{
return (m_componentDescriptors.length);
}
public function getPastryCount():int{
var _local2:ComponentDescriptor;
var _local1:int;
for each (_local2 in m_componentDescriptors) {
if (_local2.isPastryType()){
_local1++;
};
};
return (_local1);
}
public function getMainType():String{
var _local1:ComponentDescriptor;
var _local2:int;
for each (_local1 in m_componentDescriptors) {
_local2 = Cookies.MAIN_TYPES.indexOf(_local1.getName());
if (_local2 != -1){
return (Cookies.MAIN_TYPES[_local2]);
};
};
return ("salupa");
}
public function getFirstComponent():ComponentDescriptor{
return (m_componentDescriptors[0]);
}
public function makeSmartClip():MovieClip{
var _local3:ComponentDescriptor;
var _local4:MovieClip;
var _local1:MovieClip = new MovieClip();
var _local2:int;
while (_local2 < m_componentDescriptors.length) {
_local3 = m_componentDescriptors[_local2];
_local4 = _local3.makeClipPart();
_local4.y = _local3.m_yOffset;
_local1.addChild(_local4);
if (_local3 != m_lastAdded){
_local4.gotoAndStop(_local4.totalFrames);
_local4.cacheAsBitmap = true;
};
_local2++;
};
return (_local1);
}
public function toString():String{
var _local2:ComponentDescriptor;
var _local1:String = new String();
for each (_local2 in m_componentDescriptors) {
_local1 = (_local1 + (_local2.toString() + " "));
};
return (_local1);
}
public function addComponentDescriptor(_arg1:ComponentDescriptor):void{
m_lastAdded = _arg1;
if (_arg1.isPastryType()){
_arg1.m_zOrder = (getPastryCount() * 0.1);
};
m_componentDescriptors.push(_arg1);
m_componentDescriptors.sortOn("m_zOrder");
var _local2:Number = 0;
var _local3:int;
var _local4:int;
while (_local4 < m_componentDescriptors.length) {
if (m_componentDescriptors[_local4].isPastryType()){
++_local3;
if (_local3 != 1){
_local2 = (_local2 - 5);
};
};
m_componentDescriptors[_local4].m_yOffset = _local2;
_local4++;
};
}
public function getPastryForm():String{
var _local1:ComponentDescriptor;
for each (_local1 in m_componentDescriptors) {
if (_local1.isPastryType()){
return (_local1.getName());
};
};
return (null);
}
public function haveComponent(_arg1:String):Boolean{
var _local2:ComponentDescriptor;
for each (_local2 in m_componentDescriptors) {
if (_local2.getName() == _arg1){
return (true);
};
};
return (false);
}
public function getMainTypeGroup():int{
var _local1:String = getMainType();
var _local2:int;
while (_local2 < Cookies.MAIN_TYPE_GROUPS.length) {
if (Cookies.MAIN_TYPE_GROUPS[_local2].indexOf(_local1) != -1){
return (_local2);
};
_local2++;
};
return (-1);
}
public function isZOrderBusy(_arg1:Number):Boolean{
var _local2:ComponentDescriptor;
for each (_local2 in m_componentDescriptors) {
if (_local2.m_zOrder == _arg1){
return (true);
};
};
return (false);
}
public function isSingleComponent(_arg1:String):Boolean{
return ((((m_componentDescriptors.length == 1)) && ((m_componentDescriptors[0].getName() == _arg1))));
}
public function makeClip(_arg1:Boolean):MovieClip{
var _local4:ComponentDescriptor;
var _local5:MovieClip;
var _local2:MovieClip = new MovieClip();
var _local3:int;
while (_local3 < m_componentDescriptors.length) {
_local4 = m_componentDescriptors[_local3];
_local5 = _local4.makeClipPart();
_local5.y = _local4.m_yOffset;
_local2.addChild(_local5);
if (_arg1){
_local5.gotoAndStop(_local5.totalFrames);
};
_local3++;
};
return (_local2);
}
public function getIntersection(_arg1:ProductDescriptor):Array{
var _local4:ComponentDescriptor;
var _local5:ComponentDescriptor;
var _local2:Array = new Array();
var _local3:Dictionary = new Dictionary();
for each (_local4 in m_componentDescriptors) {
for each (_local5 in _arg1.m_componentDescriptors) {
if (((((_local4.isEqual(_local5)) && ((_local3[_local4] == null)))) && ((_local3[_local5] == null)))){
_local3[_local4] = _local4;
_local3[_local5] = _local5;
_local2.push(_local5);
};
};
};
return (_local2);
}
}
}//package States.PlayState
Section 14
//Source (States.PlayState.Source)
package States.PlayState {
import flash.display.*;
import Main.*;
public class Source extends SelectableObject {
var m_descriptor:ComponentDescriptor;
var m_liveTime:Number;// = 0
var m_picture:MovieClip;
var m_blendPicture:MovieClip;
public function Source(_arg1:Number, _arg2:Number, _arg3:String, _arg4:String){
x = _arg1;
y = _arg2;
m_picture = ResCreator.createMC(_arg3);
m_picture.cacheAsBitmap = true;
addChild(m_picture);
m_blendPicture = ResCreator.createMC(_arg3);
m_blendPicture.blendMode = BlendMode.ADD;
m_blendPicture.alpha = 0.2;
m_descriptor = new ComponentDescriptor(_arg4);
}
public function getProduct():Product{
var _local1:Product = new Product();
_local1.addComponent(m_descriptor);
return (_local1);
}
public function getProductionName():String{
return (m_descriptor.getName());
}
override public function onSelect():void{
addChild(m_blendPicture);
}
override public function onDeselect():void{
if (m_blendPicture.parent != null){
removeChild(m_blendPicture);
};
}
}
}//package States.PlayState
Section 15
//Trash (States.PlayState.Trash)
package States.PlayState {
import flash.display.*;
import Main.*;
public class Trash extends MovieClip {
public function Trash(){
var _local1:MovieClip = ResCreator.createMC("trash");
_local1.cacheAsBitmap = true;
addChild(_local1);
}
}
}//package States.PlayState
Section 16
//GameMenuState (States.GameMenuState)
package States {
import flash.display.*;
import States.PlayState.*;
import Main.*;
import flash.events.*;
public class GameMenuState extends GameState {
const m_maxScaleTime:Number = 0.3;
const m_maxShadeTime:Number = 1;
var m_replay:SimpleButton;
var m_window:MovieClip;
var m_quite:SimpleButton;
var m_scaleTime:Number;
var m_blackSquare:MovieClip;
var m_liveTime:Number;
var m_scale:Number;
var m_back:SimpleButton;
static var m_instance:GameMenuState = null;
function update(_arg1:Event):void{
m_scaleTime = (m_scaleTime + (1 / 24));
if (m_scaleTime > m_maxScaleTime){
m_scaleTime = m_maxScaleTime;
};
m_window.scaleX = (m_scaleTime / m_maxScaleTime);
m_window.scaleY = (m_scaleTime / m_maxScaleTime);
m_liveTime = (m_liveTime + (1 / 24));
if (m_liveTime > m_maxShadeTime){
m_liveTime = m_maxShadeTime;
};
m_blackSquare.alpha = ((m_liveTime / m_maxShadeTime) * 0.5);
}
override public function onCleanup():void{
removeEventListener(Event.ENTER_FRAME, update);
}
override public function onInit():void{
m_window.scaleX = 0;
m_window.scaleY = 0;
m_blackSquare.alpha = 0;
m_liveTime = -0.5;
m_scaleTime = 0;
addEventListener(Event.ENTER_FRAME, update);
}
override public function onPreInit():void{
m_blackSquare = ResCreator.createMC("black_square");
addChild(m_blackSquare);
m_window = ResCreator.createMC("window");
addChild(m_window);
m_window.x = (700 / 2);
m_window.y = (450 / 2);
m_quite = new MenuButton();
m_quite.x = -65;
m_quite.y = 75;
m_quite.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
StateManager.getInstance().coolChangeState(MainMenuState.getInstance());
});
m_window.addChild(m_quite);
m_replay = new ReplayButton();
m_replay.x = -65;
m_replay.y = -33;
m_replay.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
StateManager.getInstance().coolChangeState(PlayState.getInstance());
});
m_window.addChild(m_replay);
m_back = new BackButton();
m_back.x = -65;
m_back.y = -113;
m_back.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
StateManager.getInstance().popState();
});
m_window.addChild(m_back);
}
public static function getInstance():GameMenuState{
if (m_instance == null){
m_instance = new (GameMenuState);
};
return (m_instance);
}
}
}//package States
Section 17
//InstructionState (States.InstructionState)
package States {
import flash.display.*;
import Main.*;
import flash.events.*;
public class InstructionState extends GameState {
static var m_instance:InstructionState = null;
override public function onPreInit():void{
var instructions_mc:MovieClip = ResCreator.createMC("instructions");
instructions_mc.cacheAsBitmap = true;
addChild(instructions_mc);
instructions_mc["m_backButton"].addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
StateManager.getInstance().popState();
});
}
public static function getInstance():InstructionState{
if (m_instance == null){
m_instance = new (InstructionState);
};
return (m_instance);
}
}
}//package States
Section 18
//LoseState (States.LoseState)
package States {
import flash.display.*;
import States.PlayState.*;
import Main.*;
import flash.events.*;
public class LoseState extends GameState {
const m_maxScaleTime:Number = 0.3;
var m_scaleTime:Number;
var m_window:MovieClip;
var m_liveTime:Number;
var m_levelCompletedCaption:SimpleDigits;
var m_moneyCollectedGoal:SimpleDigits;
var m_menu:SimpleButton;
var m_replay:SimpleButton;
var m_moneyCollectedCaption:SimpleDigits;
static var m_instance:LoseState = null;
override public function onCleanup():void{
removeEventListener(Event.ENTER_FRAME, update);
}
override public function onInit():void{
SoundManager.getInstance().playLoop("music");
m_window.scaleX = 0;
m_window.scaleY = 0;
m_scaleTime = 0;
addEventListener(Event.ENTER_FRAME, update);
m_moneyCollectedCaption.m_text.text = (("Money needed: " + "$") + PlayState.getInstance().getLevelGoal());
m_moneyCollectedGoal.m_text.text = (("Money earned: " + "$") + PlayState.getInstance().getMoney());
}
function update(_arg1:Event):void{
m_scaleTime = (m_scaleTime + (1 / 24));
if (m_scaleTime > m_maxScaleTime){
m_scaleTime = m_maxScaleTime;
};
m_window.scaleX = (m_scaleTime / m_maxScaleTime);
m_window.scaleY = (m_scaleTime / m_maxScaleTime);
}
override public function onPreInit():void{
m_window = ResCreator.createMC("window");
addChild(m_window);
m_window.x = (700 / 2);
m_window.y = (450 / 2);
m_replay = new ReplayButton();
m_replay.x = -130;
m_replay.y = 75;
m_replay.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
StateManager.getInstance().coolChangeState(PlayState.getInstance());
});
m_window.addChild(m_replay);
m_replay.scaleX = 0.7;
m_replay.scaleY = 0.7;
m_menu = new MenuButton();
m_menu.x = 50;
m_menu.y = 85;
m_menu.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
StateManager.getInstance().coolChangeState(MainMenuState.getInstance());
});
m_window.addChild(m_menu);
m_menu.scaleX = 0.7;
m_menu.scaleY = 0.7;
var x_pos = -150;
m_moneyCollectedCaption = new SimpleDigits();
m_moneyCollectedCaption.x = x_pos;
m_moneyCollectedCaption.y = -40;
m_window.addChild(m_moneyCollectedCaption);
m_moneyCollectedGoal = new SimpleDigits();
m_moneyCollectedGoal.x = x_pos;
m_moneyCollectedGoal.y = 0;
m_window.addChild(m_moneyCollectedGoal);
m_levelCompletedCaption = new SimpleDigits();
m_levelCompletedCaption.x = -90;
m_levelCompletedCaption.y = -120;
m_window.addChild(m_levelCompletedCaption);
m_levelCompletedCaption.m_text.text = " YOU FAILED ";
m_levelCompletedCaption.m_text.textColor = 4294901760;
}
public static function getInstance():LoseState{
if (m_instance == null){
m_instance = new (LoseState);
};
return (m_instance);
}
}
}//package States
Section 19
//MainMenuState (States.MainMenuState)
package States {
import flash.display.*;
import Main.*;
import flash.events.*;
public class MainMenuState extends GameState {
var m_start:SimpleButton;
var m_title:title;
var m_instructions:SimpleButton;
static var m_instance:MainMenuState = null;
override public function onInit():void{
m_title.gotoAndPlay(1);
SoundManager.getInstance().playLoop("menu_music");
}
override public function onPreInit():void{
m_title = new title();
addChild(m_title);
m_start = m_title.m_buttonStart;
m_start.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
StateManager.getInstance().coolChangeState(SelectZoneState.getInstance());
});
m_instructions = m_title.m_buttonInstructions;
m_instructions.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
StateManager.getInstance().pushState(InstructionState.getInstance());
});
StateManager.getInstance().addOverlay(new Links());
StateManager.getInstance().addOverlay(new SoundButton());
SaveManager.getInstance().load();
}
public static function getInstance():MainMenuState{
if (m_instance == null){
m_instance = new (MainMenuState);
};
return (m_instance);
}
}
}//package States
Section 20
//PreloaderState (States.PreloaderState)
package States {
import flash.display.*;
import Main.*;
import flash.events.*;
import flash.net.*;
public class PreloaderState extends GameState {
const m_minimalLoadTime:Number = 5;
var m_loadingBar:MovieClip;
var m_liveTime:Number;// = 0
var m_isLoadingFinished:Boolean;// = false
var m_loaderInfo:LoaderInfo;
var m_percentsLabel:MovieClip;
var m_bytesTotal:Number;// = 100
var m_bytesLoaded:Number;// = 100
static var m_instance:PreloaderState = null;
private function onLoadProgress(_arg1:ProgressEvent):void{
m_bytesTotal = _arg1.bytesTotal;
m_bytesLoaded = _arg1.bytesLoaded;
}
override public function onCleanup():void{
removeEventListener(Event.ENTER_FRAME, update);
}
private function onLoadComplete(_arg1:Event):void{
m_loaderInfo.removeEventListener(ProgressEvent.PROGRESS, onLoadProgress);
m_loaderInfo.removeEventListener(Event.COMPLETE, onLoadComplete);
startGame();
}
override public function onInit():void{
var scene:MovieClip = StateManager.getInstance();
m_loaderInfo = scene.loaderInfo;
m_loadingBar = scene.m_preloader.m_loadingBar;
m_percentsLabel = scene.m_percents;
m_percentsLabel.m_text.text = "0%";
addEventListener(Event.ENTER_FRAME, update);
if (m_loaderInfo.bytesLoaded == m_loaderInfo.bytesTotal){
startGame();
return;
};
m_loaderInfo.addEventListener(ProgressEvent.PROGRESS, onLoadProgress);
m_loaderInfo.addEventListener(Event.COMPLETE, onLoadComplete);
scene["m_preloader"]["m_iriySoft"].addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.iriysoft.ru"), "_blank");
});
scene["m_preloader"]["m_games96"].addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.games96.com"), "_blank");
});
}
function update(_arg1:Event):void{
m_liveTime = (m_liveTime + (1 / 24));
var _local2:Number = Math.min((m_bytesLoaded / m_bytesTotal), (m_liveTime / m_minimalLoadTime));
m_percentsLabel.m_text.text = (int(((_local2 * 100) + 0.5)) + "%");
m_loadingBar.gotoAndStop((int((m_loadingBar.totalFrames * _local2)) + 1));
if (((m_isLoadingFinished) && ((m_liveTime >= m_minimalLoadTime)))){
StateManager.getInstance().gotoAndStop(2);
StateManager.getInstance().changeState(MainMenuState.getInstance());
};
}
function startGame():void{
m_percentsLabel.m_text.text = "100%";
m_isLoadingFinished = true;
}
public static function getInstance():PreloaderState{
if (m_instance == null){
m_instance = new (PreloaderState);
};
return (m_instance);
}
}
}//package States
Section 21
//SelectZoneState (States.SelectZoneState)
package States {
import flash.display.*;
import States.PlayState.*;
import Main.*;
import flash.events.*;
public class SelectZoneState extends GameState {
var m_borough1Icon:SimpleButton;
var m_borough2Icon:SimpleButton;
var m_borough3Icon:SimpleButton;
var m_lock2:MovieClip;
var m_lock3:MovieClip;
static var m_instance:SelectZoneState = null;
override public function onCleanup():void{
while (numChildren != 0) {
removeChildAt(0);
};
}
override public function onInit():void{
var completed_sign:MovieClip;
SoundManager.getInstance().playLoop("menu_music");
var back:MovieClip = ResCreator.createMC("select_stage_back");
back.cacheAsBitmap = true;
addChild(back);
var dx = 130;
var dy = 70;
addChild(m_borough1Icon);
if (PlayState.getInstance().getStagesCompleted() > 0){
completed_sign = ResCreator.createMC("complete");
completed_sign.x = (m_borough1Icon.x + dx);
completed_sign.y = (m_borough1Icon.y + dy);
addChild(completed_sign);
};
if (PlayState.getInstance().getStagesCompleted() > 0){
addChild(m_borough2Icon);
if (PlayState.getInstance().getStagesCompleted() > 1){
completed_sign = ResCreator.createMC("complete");
completed_sign.x = (m_borough2Icon.x + dx);
completed_sign.y = (m_borough2Icon.y + dy);
addChild(completed_sign);
};
} else {
addChild(m_lock2);
};
if (PlayState.getInstance().getStagesCompleted() > 1){
addChild(m_borough3Icon);
if (PlayState.getInstance().getStagesCompleted() > 2){
completed_sign = ResCreator.createMC("complete");
completed_sign.x = (m_borough3Icon.x + dx);
completed_sign.y = (m_borough3Icon.y + dy);
addChild(completed_sign);
};
} else {
addChild(m_lock3);
};
var back_btn:SimpleButton = new BackButton();
addChild(back_btn);
back_btn.x = 25;
back_btn.y = 400;
back_btn.scaleX = 0.7;
back_btn.scaleY = 0.7;
back_btn.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
StateManager.getInstance().coolChangeState(MainMenuState.getInstance());
});
var head:SimpleDigits = new SimpleDigits();
head.x = 240;
head.y = 5;
head.m_text.text = "select district";
head.cacheAsBitmap = true;
addChild(head);
}
override public function onPreInit():void{
m_borough1Icon = new Borough1Icon();
m_borough1Icon.x = 50;
m_borough1Icon.y = 50;
m_borough1Icon.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
PlayState.getInstance().selectStage(0);
StateManager.getInstance().coolChangeState(PlayState.getInstance());
});
m_borough1Icon.cacheAsBitmap = true;
m_borough2Icon = new Borough2Icon();
m_borough2Icon.x = 410;
m_borough2Icon.y = 50;
m_borough2Icon.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
PlayState.getInstance().selectStage(1);
StateManager.getInstance().coolChangeState(PlayState.getInstance());
});
m_borough2Icon.cacheAsBitmap = true;
m_lock2 = new Borough2IconLocked();
m_lock2.x = 410;
m_lock2.y = 50;
m_lock2.cacheAsBitmap = true;
m_borough3Icon = new Borough3Icon();
m_borough3Icon.x = 230;
m_borough3Icon.y = 260;
m_borough3Icon.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
PlayState.getInstance().selectStage(2);
StateManager.getInstance().coolChangeState(PlayState.getInstance());
});
m_borough3Icon.cacheAsBitmap = true;
m_lock3 = new Borough3IconLocked();
m_lock3.x = 230;
m_lock3.y = 260;
m_lock3.cacheAsBitmap = true;
}
public static function getInstance():SelectZoneState{
if (m_instance == null){
m_instance = new (SelectZoneState);
};
return (m_instance);
}
}
}//package States
Section 22
//ShadeInState (States.ShadeInState)
package States {
import flash.display.*;
import Main.*;
import flash.events.*;
public class ShadeInState extends GameState {
const m_maxTime:Number = 0.3;
var m_blackSquare:MovieClip;
var m_liveTime:Number;
var m_nextState:GameState;// = null
static var m_instance:ShadeInState = null;
override public function onCleanup():void{
m_blackSquare.removeEventListener(Event.ENTER_FRAME, update);
}
function update(_arg1:Event):void{
if (m_liveTime <= m_maxTime){
m_liveTime = (m_liveTime + (1 / 24));
m_blackSquare.alpha = (m_liveTime / m_maxTime);
} else {
if (m_nextState != null){
StateManager.getInstance().changeState(m_nextState);
m_nextState = null;
StateManager.getInstance().pushState(ShadeOutState.getInstance());
};
};
}
override public function onInit():void{
m_blackSquare.addEventListener(Event.ENTER_FRAME, update);
m_liveTime = 0;
m_blackSquare.alpha = 0;
m_blackSquare.cacheAsBitmap = true;
}
override public function onPreInit():void{
m_blackSquare = ResCreator.createMC("black_square");
addChild(m_blackSquare);
}
public function setNextState(_arg1:GameState):void{
m_nextState = _arg1;
}
public static function getInstance():ShadeInState{
if (m_instance == null){
m_instance = new (ShadeInState);
};
return (m_instance);
}
}
}//package States
Section 23
//ShadeOutState (States.ShadeOutState)
package States {
import flash.display.*;
import Main.*;
import flash.events.*;
public class ShadeOutState extends GameState {
const m_maxTime:Number = 0.3;
var m_blackSquare:MovieClip;
var m_liveTime:Number;
static var m_instance:ShadeOutState = null;
override public function onPreInit():void{
m_blackSquare = ResCreator.createMC("black_square");
addChild(m_blackSquare);
}
override public function onCleanup():void{
removeEventListener(Event.ENTER_FRAME, update);
}
override public function onInit():void{
addEventListener(Event.ENTER_FRAME, update);
m_blackSquare.alpha = 1;
m_blackSquare.cacheAsBitmap = true;
m_liveTime = 0;
}
function update(_arg1:Event):void{
if (m_liveTime <= m_maxTime){
m_liveTime = (m_liveTime + (1 / 24));
m_blackSquare.alpha = (1 - (m_liveTime / m_maxTime));
} else {
StateManager.getInstance().popState();
};
}
public static function getInstance():ShadeOutState{
if (m_instance == null){
m_instance = new (ShadeOutState);
};
return (m_instance);
}
}
}//package States
Section 24
//WinState (States.WinState)
package States {
import flash.display.*;
import States.PlayState.*;
import Main.*;
import flash.events.*;
public class WinState extends GameState {
const m_maxScaleTime:Number = 0.3;
var m_window:MovieClip;
var m_scaleTime:Number;
var m_liveTime:Number;
var m_levelCompletedCaption:SimpleDigits;
var m_moneyCollectedGoal:SimpleDigits;
var m_isNextStage:Boolean;
var m_moneyCollectedCaption:SimpleDigits;
var m_next:SimpleButton;
static var m_instance:WinState = null;
override public function onInit():void{
SoundManager.getInstance().playLoop("music");
m_window.scaleX = 0;
m_window.scaleY = 0;
m_scaleTime = 0;
addEventListener(Event.ENTER_FRAME, update);
m_isNextStage = PlayState.getInstance().nextLevel();
m_moneyCollectedCaption.m_text.text = (("Money needed: " + "$") + PlayState.getInstance().getLevelGoal());
m_moneyCollectedGoal.m_text.text = (("Money earned: " + "$") + PlayState.getInstance().getMoney());
}
override public function onCleanup():void{
removeEventListener(Event.ENTER_FRAME, update);
}
function update(_arg1:Event):void{
m_scaleTime = (m_scaleTime + (1 / 24));
if (m_scaleTime > m_maxScaleTime){
m_scaleTime = m_maxScaleTime;
};
m_window.scaleX = (m_scaleTime / m_maxScaleTime);
m_window.scaleY = (m_scaleTime / m_maxScaleTime);
}
function onNextClick(_arg1:MouseEvent):void{
if (m_isNextStage){
StateManager.getInstance().coolChangeState(SelectZoneState.getInstance());
} else {
StateManager.getInstance().coolChangeState(PlayState.getInstance());
};
}
override public function onPreInit():void{
m_window = ResCreator.createMC("window");
addChild(m_window);
m_window.x = (700 / 2);
m_window.y = (450 / 2);
m_next = new NextLevel();
m_next.x = -65;
m_next.y = 60;
m_next.addEventListener(MouseEvent.CLICK, onNextClick);
m_window.addChild(m_next);
var _local1 = -150;
m_moneyCollectedCaption = new SimpleDigits();
m_moneyCollectedCaption.x = _local1;
m_moneyCollectedCaption.y = -40;
m_window.addChild(m_moneyCollectedCaption);
m_moneyCollectedGoal = new SimpleDigits();
m_moneyCollectedGoal.x = _local1;
m_moneyCollectedGoal.y = 0;
m_window.addChild(m_moneyCollectedGoal);
m_levelCompletedCaption = new SimpleDigits();
m_levelCompletedCaption.x = -115;
m_levelCompletedCaption.y = -120;
m_window.addChild(m_levelCompletedCaption);
m_levelCompletedCaption.m_text.text = "LEVEL COMPLETE";
m_levelCompletedCaption.m_text.textColor = 4278255360;
}
public static function getInstance():WinState{
if (m_instance == null){
m_instance = new (WinState);
};
return (m_instance);
}
}
}//package States
Section 25
//choco_spoon_anim_1_34 (TimeManager_fla.choco_spoon_anim_1_34)
package TimeManager_fla {
import flash.display.*;
public dynamic class choco_spoon_anim_1_34 extends MovieClip {
public function choco_spoon_anim_1_34(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package TimeManager_fla
Section 26
//choco_spoon_anim_2_43 (TimeManager_fla.choco_spoon_anim_2_43)
package TimeManager_fla {
import flash.display.*;
public dynamic class choco_spoon_anim_2_43 extends MovieClip {
public function choco_spoon_anim_2_43(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package TimeManager_fla
Section 27
//cream_spoon_anim_1_31 (TimeManager_fla.cream_spoon_anim_1_31)
package TimeManager_fla {
import flash.display.*;
public dynamic class cream_spoon_anim_1_31 extends MovieClip {
public function cream_spoon_anim_1_31(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package TimeManager_fla
Section 28
//cream_spoon_anim_2_40 (TimeManager_fla.cream_spoon_anim_2_40)
package TimeManager_fla {
import flash.display.*;
public dynamic class cream_spoon_anim_2_40 extends MovieClip {
public function cream_spoon_anim_2_40(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package TimeManager_fla
Section 29
//gough_21 (TimeManager_fla.gough_21)
package TimeManager_fla {
import flash.display.*;
public dynamic class gough_21 extends MovieClip {
public function gough_21(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
stop();
}
}
}//package TimeManager_fla
Section 30
//gough_24 (TimeManager_fla.gough_24)
package TimeManager_fla {
import flash.display.*;
public dynamic class gough_24 extends MovieClip {
public function gough_24(){
addFrameScript(3, frame4);
}
function frame4(){
stop();
}
}
}//package TimeManager_fla
Section 31
//jam_spoon_anim_1_28 (TimeManager_fla.jam_spoon_anim_1_28)
package TimeManager_fla {
import flash.display.*;
public dynamic class jam_spoon_anim_1_28 extends MovieClip {
public function jam_spoon_anim_1_28(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package TimeManager_fla
Section 32
//jam_spoon_anim_2_37 (TimeManager_fla.jam_spoon_anim_2_37)
package TimeManager_fla {
import flash.display.*;
public dynamic class jam_spoon_anim_2_37 extends MovieClip {
public function jam_spoon_anim_2_37(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package TimeManager_fla
Section 33
//AutoKillObject (AutoKillObject)
package {
import flash.display.*;
import flash.events.*;
public class AutoKillObject extends MovieClip {
private var m_needReduceAlpha:Boolean;// = false
private var m_movie:MovieClip;
public function AutoKillObject(_arg1:MovieClip, _arg2:Number, _arg3:Number){
this.x = _arg2;
this.y = _arg3;
m_movie = _arg1;
addChild(m_movie);
addEventListener(Event.ENTER_FRAME, update);
}
function update(_arg1:Event):void{
if (((!(m_needReduceAlpha)) && ((m_movie.currentFrame == m_movie.totalFrames)))){
m_needReduceAlpha = true;
stop();
};
if (m_needReduceAlpha){
alpha = (alpha - 0.2);
if (alpha <= 0){
removeChild(m_movie);
if (parent){
parent.removeChild(this);
};
removeEventListener(Event.ENTER_FRAME, update);
return;
};
};
}
}
}//package
Section 34
//automate_source (automate_source)
package {
import flash.display.*;
public dynamic class automate_source extends MovieClip {
}
}//package
Section 35
//BackButton (BackButton)
package {
import flash.display.*;
public dynamic class BackButton extends SimpleButton {
}
}//package
Section 36
//backs (backs)
package {
import flash.display.*;
public dynamic class backs extends MovieClip {
public function backs(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 37
//banana (banana)
package {
import flash.display.*;
public dynamic class banana extends MovieClip {
}
}//package
Section 38
//banana_icon (banana_icon)
package {
import flash.display.*;
public dynamic class banana_icon extends MovieClip {
}
}//package
Section 39
//banana_source (banana_source)
package {
import flash.display.*;
public dynamic class banana_source extends MovieClip {
}
}//package
Section 40
//black_body_1 (black_body_1)
package {
import flash.display.*;
public dynamic class black_body_1 extends MovieClip {
}
}//package
Section 41
//black_body_2 (black_body_2)
package {
import flash.display.*;
public dynamic class black_body_2 extends MovieClip {
}
}//package
Section 42
//black_clothe_1 (black_clothe_1)
package {
import flash.display.*;
public dynamic class black_clothe_1 extends MovieClip {
}
}//package
Section 43
//black_clothe_2 (black_clothe_2)
package {
import flash.display.*;
public dynamic class black_clothe_2 extends MovieClip {
}
}//package
Section 44
//black_eyes_1 (black_eyes_1)
package {
import flash.display.*;
public dynamic class black_eyes_1 extends MovieClip {
public function black_eyes_1(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 45
//black_eyes_2 (black_eyes_2)
package {
import flash.display.*;
public dynamic class black_eyes_2 extends MovieClip {
public function black_eyes_2(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 46
//black_hairs_1 (black_hairs_1)
package {
import flash.display.*;
public dynamic class black_hairs_1 extends MovieClip {
}
}//package
Section 47
//black_hairs_2 (black_hairs_2)
package {
import flash.display.*;
public dynamic class black_hairs_2 extends MovieClip {
}
}//package
Section 48
//black_mouth_1 (black_mouth_1)
package {
import flash.display.*;
public dynamic class black_mouth_1 extends MovieClip {
public function black_mouth_1(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 49
//black_mouth_2 (black_mouth_2)
package {
import flash.display.*;
public dynamic class black_mouth_2 extends MovieClip {
public function black_mouth_2(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 50
//black_nose_1 (black_nose_1)
package {
import flash.display.*;
public dynamic class black_nose_1 extends MovieClip {
}
}//package
Section 51
//black_nose_2 (black_nose_2)
package {
import flash.display.*;
public dynamic class black_nose_2 extends MovieClip {
}
}//package
Section 52
//black_square (black_square)
package {
import flash.display.*;
public dynamic class black_square extends MovieClip {
}
}//package
Section 53
//bluejam (bluejam)
package {
import flash.display.*;
public dynamic class bluejam extends MovieClip {
public function bluejam(){
addFrameScript(9, frame10);
}
function frame10(){
stop();
}
}
}//package
Section 54
//bluejam_icon (bluejam_icon)
package {
import flash.display.*;
public dynamic class bluejam_icon extends MovieClip {
public function bluejam_icon(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package
Section 55
//bluejam_source (bluejam_source)
package {
import flash.display.*;
public dynamic class bluejam_source extends MovieClip {
}
}//package
Section 56
//Borough1Icon (Borough1Icon)
package {
import flash.display.*;
public dynamic class Borough1Icon extends SimpleButton {
}
}//package
Section 57
//Borough2Icon (Borough2Icon)
package {
import flash.display.*;
public dynamic class Borough2Icon extends SimpleButton {
}
}//package
Section 58
//Borough2IconLocked (Borough2IconLocked)
package {
import flash.display.*;
public dynamic class Borough2IconLocked extends MovieClip {
}
}//package
Section 59
//Borough3Icon (Borough3Icon)
package {
import flash.display.*;
public dynamic class Borough3Icon extends SimpleButton {
}
}//package
Section 60
//Borough3IconLocked (Borough3IconLocked)
package {
import flash.display.*;
public dynamic class Borough3IconLocked extends MovieClip {
}
}//package
Section 61
//btn_howtoplay (btn_howtoplay)
package {
import flash.display.*;
public dynamic class btn_howtoplay extends SimpleButton {
}
}//package
Section 62
//btn_play (btn_play)
package {
import flash.display.*;
public dynamic class btn_play extends SimpleButton {
}
}//package
Section 63
//ButtonGreen (ButtonGreen)
package {
import flash.display.*;
public dynamic class ButtonGreen extends SimpleButton {
}
}//package
Section 64
//ButtonRed (ButtonRed)
package {
import flash.display.*;
public dynamic class ButtonRed extends SimpleButton {
}
}//package
Section 65
//cakecap_1 (cakecap_1)
package {
import flash.display.*;
public dynamic class cakecap_1 extends MovieClip {
}
}//package
Section 66
//cakecap_2 (cakecap_2)
package {
import flash.display.*;
public dynamic class cakecap_2 extends MovieClip {
}
}//package
Section 67
//cakecap_3 (cakecap_3)
package {
import flash.display.*;
public dynamic class cakecap_3 extends MovieClip {
}
}//package
Section 68
//cakecap_4 (cakecap_4)
package {
import flash.display.*;
public dynamic class cakecap_4 extends MovieClip {
}
}//package
Section 69
//cells (cells)
package {
import flash.display.*;
public dynamic class cells extends MovieClip {
}
}//package
Section 70
//cherry (cherry)
package {
import flash.display.*;
public dynamic class cherry extends MovieClip {
}
}//package
Section 71
//cherry_icon (cherry_icon)
package {
import flash.display.*;
public dynamic class cherry_icon extends MovieClip {
}
}//package
Section 72
//cherry_source (cherry_source)
package {
import flash.display.*;
public dynamic class cherry_source extends MovieClip {
}
}//package
Section 73
//chocolate (chocolate)
package {
import flash.display.*;
public dynamic class chocolate extends MovieClip {
public function chocolate(){
addFrameScript(9, frame10);
}
function frame10(){
stop();
}
}
}//package
Section 74
//chocolate_icon (chocolate_icon)
package {
import flash.display.*;
public dynamic class chocolate_icon extends MovieClip {
public function chocolate_icon(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package
Section 75
//chocolate_source (chocolate_source)
package {
import flash.display.*;
public dynamic class chocolate_source extends MovieClip {
}
}//package
Section 76
//closed_signboard (closed_signboard)
package {
import flash.display.*;
public dynamic class closed_signboard extends MovieClip {
public function closed_signboard(){
addFrameScript(34, frame35);
}
function frame35(){
stop();
}
}
}//package
Section 77
//cloud (cloud)
package {
import flash.display.*;
public dynamic class cloud extends MovieClip {
}
}//package
Section 78
//complete (complete)
package {
import flash.display.*;
public dynamic class complete extends MovieClip {
}
}//package
Section 79
//cooker (cooker)
package {
import flash.display.*;
public dynamic class cooker extends MovieClip {
}
}//package
Section 80
//cooker_hit_zone (cooker_hit_zone)
package {
import flash.display.*;
public dynamic class cooker_hit_zone extends MovieClip {
}
}//package
Section 81
//cooking (cooking)
package {
import flash.media.*;
public dynamic class cooking extends Sound {
}
}//package
Section 82
//cream (cream)
package {
import flash.display.*;
public dynamic class cream extends MovieClip {
public function cream(){
addFrameScript(9, frame10);
}
function frame10(){
stop();
}
}
}//package
Section 83
//cream_icon (cream_icon)
package {
import flash.display.*;
public dynamic class cream_icon extends MovieClip {
public function cream_icon(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package
Section 84
//cream_source (cream_source)
package {
import flash.display.*;
public dynamic class cream_source extends MovieClip {
}
}//package
Section 85
//drink (drink)
package {
import flash.media.*;
public dynamic class drink extends Sound {
}
}//package
Section 86
//drop (drop)
package {
import flash.media.*;
public dynamic class drop extends Sound {
}
}//package
Section 87
//enviroment (enviroment)
package {
import flash.display.*;
public dynamic class enviroment extends MovieClip {
}
}//package
Section 88
//ghouh_container (ghouh_container)
package {
import flash.display.*;
public dynamic class ghouh_container extends MovieClip {
}
}//package
Section 89
//green_soda (green_soda)
package {
import flash.display.*;
public dynamic class green_soda extends MovieClip {
public function green_soda(){
addFrameScript(29, frame30);
}
function frame30(){
stop();
}
}
}//package
Section 90
//hrum (hrum)
package {
import flash.media.*;
public dynamic class hrum extends Sound {
}
}//package
Section 91
//icon_clock (icon_clock)
package {
import flash.display.*;
public dynamic class icon_clock extends MovieClip {
}
}//package
Section 92
//icon_money (icon_money)
package {
import flash.display.*;
public dynamic class icon_money extends MovieClip {
}
}//package
Section 93
//icon_money_goal (icon_money_goal)
package {
import flash.display.*;
public dynamic class icon_money_goal extends MovieClip {
}
}//package
Section 94
//instructions (instructions)
package {
import flash.display.*;
public dynamic class instructions extends MovieClip {
public var m_backButton:BackButton;
}
}//package
Section 95
//jalousie (jalousie)
package {
import flash.display.*;
public dynamic class jalousie extends MovieClip {
}
}//package
Section 96
//ladle_fill (ladle_fill)
package {
import flash.display.*;
public dynamic class ladle_fill extends MovieClip {
public function ladle_fill(){
addFrameScript(3, frame4);
}
function frame4(){
stop();
}
}
}//package
Section 97
//Links (Links)
package {
import flash.display.*;
import Main.*;
import flash.events.*;
import flash.net.*;
public class Links extends MovieClip {
var m_picture:MovieClip;
public function Links(){
super();
m_picture = ResCreator.createMC("links");
addChild(m_picture);
if (m_picture["m_playMoreGames"]){
m_picture["m_playMoreGames"].addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.games96.com"), "_blank");
});
};
if (m_picture["m_games96"]){
m_picture["m_games96"].addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.games96.com"), "_blank");
});
};
if (m_picture["m_freeGames"]){
m_picture["m_freeGames"].addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.games96.com/free_online_games.php"), "_blank");
});
};
}
}
}//package
Section 98
//links (links)
package {
import flash.display.*;
public dynamic class links extends MovieClip {
public var m_freeGames:SimpleButton;
public var m_games96:SimpleButton;
public var m_playMoreGames:SimpleButton;
}
}//package
Section 99
//loading_bar (loading_bar)
package {
import flash.display.*;
public dynamic class loading_bar extends MovieClip {
}
}//package
Section 100
//main_menu (main_menu)
package {
import flash.display.*;
public dynamic class main_menu extends MovieClip {
}
}//package
Section 101
//menu_music (menu_music)
package {
import flash.media.*;
public dynamic class menu_music extends Sound {
}
}//package
Section 102
//menu_panel (menu_panel)
package {
import flash.display.*;
public dynamic class menu_panel extends MovieClip {
}
}//package
Section 103
//MenuButton (MenuButton)
package {
import flash.display.*;
public dynamic class MenuButton extends SimpleButton {
}
}//package
Section 104
//music (music)
package {
import flash.media.*;
public dynamic class music extends Sound {
}
}//package
Section 105
//new_glass_animation (new_glass_animation)
package {
import flash.display.*;
public dynamic class new_glass_animation extends MovieClip {
public function new_glass_animation(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package
Section 106
//NextLevel (NextLevel)
package {
import flash.display.*;
public dynamic class NextLevel extends SimpleButton {
}
}//package
Section 107
//pastry_icon (pastry_icon)
package {
import flash.display.*;
public dynamic class pastry_icon extends MovieClip {
public function pastry_icon(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package
Section 108
//pastry_source (pastry_source)
package {
import flash.display.*;
public dynamic class pastry_source extends MovieClip {
}
}//package
Section 109
//PauseButton (PauseButton)
package {
import flash.display.*;
public dynamic class PauseButton extends SimpleButton {
}
}//package
Section 110
//place (place)
package {
import flash.display.*;
public dynamic class place extends MovieClip {
}
}//package
Section 111
//plane (plane)
package {
import flash.display.*;
public dynamic class plane extends MovieClip {
}
}//package
Section 112
//preloader (preloader)
package {
import flash.display.*;
public dynamic class preloader extends MovieClip {
public var m_iriySoft:SimpleButton;
public var m_loadingBar:loading_bar;
public var m_games96:SimpleButton;
public function preloader(){
addFrameScript(40, frame41);
}
function frame41(){
stop();
}
}
}//package
Section 113
//put_bluejam (put_bluejam)
package {
import flash.display.*;
public dynamic class put_bluejam extends MovieClip {
public function put_bluejam(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package
Section 114
//put_chocolate (put_chocolate)
package {
import flash.display.*;
public dynamic class put_chocolate extends MovieClip {
public function put_chocolate(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package
Section 115
//put_cream (put_cream)
package {
import flash.display.*;
public dynamic class put_cream extends MovieClip {
public function put_cream(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
}
}
}//package
Section 116
//question_mark (question_mark)
package {
import flash.display.*;
public dynamic class question_mark extends SimpleButton {
}
}//package
Section 117
//red_soda (red_soda)
package {
import flash.display.*;
public dynamic class red_soda extends MovieClip {
public function red_soda(){
addFrameScript(29, frame30);
}
function frame30(){
stop();
}
}
}//package
Section 118
//ReplayButton (ReplayButton)
package {
import flash.display.*;
public dynamic class ReplayButton extends SimpleButton {
}
}//package
Section 119
//round_cooker (round_cooker)
package {
import flash.display.*;
public dynamic class round_cooker extends MovieClip {
}
}//package
Section 120
//round_pastry_phase_1 (round_pastry_phase_1)
package {
import flash.display.*;
public dynamic class round_pastry_phase_1 extends MovieClip {
public function round_pastry_phase_1(){
addFrameScript(10, frame11);
}
function frame11(){
stop();
}
}
}//package
Section 121
//round_pastry_phase_2 (round_pastry_phase_2)
package {
import flash.display.*;
public dynamic class round_pastry_phase_2 extends MovieClip {
public function round_pastry_phase_2(){
addFrameScript(39, frame40);
}
function frame40(){
stop();
}
}
}//package
Section 122
//round_pastry_phase_3 (round_pastry_phase_3)
package {
import flash.display.*;
public dynamic class round_pastry_phase_3 extends MovieClip {
public function round_pastry_phase_3(){
addFrameScript(40, frame41);
}
function frame41(){
stop();
}
}
}//package
Section 123
//SaveManager (SaveManager)
package {
import States.PlayState.*;
import flash.net.*;
public class SaveManager {
const m_soName:String = "pancakemania2";
static var m_instance:SaveManager = null;
public function save():void{
var _local1:SharedObject = SharedObject.getLocal(m_soName, "/");
_local1.data.m_levelsCompleted = PlayState.getInstance().getLevelsCompleted();
_local1.data.m_totalMoney = PlayState.getInstance().getTotalMoneyArray();
_local1.flush();
_local1.close();
}
public function load():void{
var _local1:SharedObject = SharedObject.getLocal(m_soName, "/", false);
if (_local1.size != 0){
PlayState.getInstance().setLevelsCompleted(_local1.data.m_levelsCompleted);
PlayState.getInstance().setTotalMoneyArray(_local1.data.m_totalMoney);
};
}
public static function getInstance():SaveManager{
if (m_instance == null){
m_instance = new (SaveManager);
};
return (m_instance);
}
}
}//package
Section 124
//select_stage_back (select_stage_back)
package {
import flash.display.*;
public dynamic class select_stage_back extends MovieClip {
}
}//package
Section 125
//SelectableObject (SelectableObject)
package {
import flash.display.*;
public class SelectableObject extends MovieClip {
public var m_isSelected:Boolean;// = false
public static var m_allSelectableObjects:Array = new Array();
public function SelectableObject(){
m_allSelectableObjects.push(this);
}
public function update():void{
}
public function onSelect():void{
}
public function onDeselect():void{
}
public function onMouseMoved(_arg1:Number, _arg2:Number):void{
var _local3:Boolean = hitTestPoint(_arg1, _arg2, true);
if (_local3){
if (!m_isSelected){
onSelect();
m_isSelected = true;
};
} else {
if (m_isSelected){
onDeselect();
m_isSelected = false;
};
};
}
}
}//package
Section 126
//settle_accaunt (settle_accaunt)
package {
import flash.display.*;
public dynamic class settle_accaunt extends MovieClip {
}
}//package
Section 127
//settle_account (settle_account)
package {
import flash.media.*;
public dynamic class settle_account extends Sound {
}
}//package
Section 128
//shopboard (shopboard)
package {
import flash.display.*;
public dynamic class shopboard extends MovieClip {
}
}//package
Section 129
//SimpleDigits (SimpleDigits)
package {
import flash.display.*;
import flash.text.*;
public dynamic class SimpleDigits extends MovieClip {
public var m_text:TextField;
}
}//package
Section 130
//soda_sound (soda_sound)
package {
import flash.media.*;
public dynamic class soda_sound extends Sound {
}
}//package
Section 131
//SoundButton (SoundButton)
package {
import flash.display.*;
import flash.events.*;
public class SoundButton extends MovieClip {
var m_isSoundOn:Boolean;// = true
var m_sound:SimpleButton;
public function SoundButton(){
m_sound = new SoundOn();
m_sound.x = 660;
m_sound.y = 5;
m_sound.addEventListener(MouseEvent.CLICK, onSoundClick);
addChild(m_sound);
}
function onSoundClick(_arg1:MouseEvent):void{
m_isSoundOn = !(m_isSoundOn);
m_sound.removeEventListener(MouseEvent.CLICK, onSoundClick);
removeChild(m_sound);
if (m_isSoundOn){
m_sound = new SoundOn();
} else {
m_sound = new SoundOff();
};
m_sound.x = 660;
m_sound.y = 5;
addChild(m_sound);
m_sound.addEventListener(MouseEvent.CLICK, onSoundClick);
SoundManager.getInstance().setSoundEnable(m_isSoundOn);
}
}
}//package
Section 132
//SoundManager (SoundManager)
package {
import flash.media.*;
import Main.*;
public class SoundManager {
var m_isSoundEnable:Boolean;// = true
var m_currentLoopName:String;
var m_currentLoop:SoundChannel;
static var m_instance:SoundManager = null;
public function setSoundEnable(_arg1:Boolean):void{
m_isSoundEnable = _arg1;
if (m_isSoundEnable){
if (m_currentLoopName != null){
m_currentLoop = ResCreator.createSound(m_currentLoopName).play(0, int.MAX_VALUE);
};
} else {
if (m_currentLoop){
m_currentLoop.stop();
};
};
}
public function playLoop(_arg1:String):void{
if (m_isSoundEnable){
if (m_currentLoopName != _arg1){
if (m_currentLoop != null){
m_currentLoop.stop();
};
m_currentLoop = ResCreator.createSound(_arg1).play(0, int.MAX_VALUE);
};
};
m_currentLoopName = _arg1;
}
public static function getInstance():SoundManager{
if (m_instance == null){
m_instance = new (SoundManager);
};
return (m_instance);
}
public static function play(_arg1:String):void{
if (SoundManager.getInstance().m_isSoundEnable){
ResCreator.createSound(_arg1).play();
};
}
}
}//package
Section 133
//SoundOff (SoundOff)
package {
import flash.display.*;
public dynamic class SoundOff extends SimpleButton {
}
}//package
Section 134
//SoundOn (SoundOn)
package {
import flash.display.*;
public dynamic class SoundOn extends SimpleButton {
}
}//package
Section 135
//square_cooker (square_cooker)
package {
import flash.display.*;
public dynamic class square_cooker extends MovieClip {
}
}//package
Section 136
//square_pastry_phase_1 (square_pastry_phase_1)
package {
import flash.display.*;
public dynamic class square_pastry_phase_1 extends MovieClip {
public function square_pastry_phase_1(){
addFrameScript(10, frame11);
}
function frame11(){
stop();
}
}
}//package
Section 137
//square_pastry_phase_2 (square_pastry_phase_2)
package {
import flash.display.*;
public dynamic class square_pastry_phase_2 extends MovieClip {
public function square_pastry_phase_2(){
addFrameScript(39, frame40);
}
function frame40(){
stop();
}
}
}//package
Section 138
//square_pastry_phase_3 (square_pastry_phase_3)
package {
import flash.display.*;
public dynamic class square_pastry_phase_3 extends MovieClip {
public function square_pastry_phase_3(){
addFrameScript(39, frame40);
}
function frame40(){
stop();
}
}
}//package
Section 139
//star_cooker (star_cooker)
package {
import flash.display.*;
public dynamic class star_cooker extends MovieClip {
}
}//package
Section 140
//star_pastry_phase_1 (star_pastry_phase_1)
package {
import flash.display.*;
public dynamic class star_pastry_phase_1 extends MovieClip {
public function star_pastry_phase_1(){
addFrameScript(10, frame11);
}
function frame11(){
stop();
}
}
}//package
Section 141
//star_pastry_phase_2 (star_pastry_phase_2)
package {
import flash.display.*;
public dynamic class star_pastry_phase_2 extends MovieClip {
public function star_pastry_phase_2(){
addFrameScript(39, frame40);
}
function frame40(){
stop();
}
}
}//package
Section 142
//star_pastry_phase_3 (star_pastry_phase_3)
package {
import flash.display.*;
public dynamic class star_pastry_phase_3 extends MovieClip {
public function star_pastry_phase_3(){
addFrameScript(40, frame41);
}
function frame41(){
stop();
stop();
}
}
}//package
Section 143
//strawberries_source (strawberries_source)
package {
import flash.display.*;
public dynamic class strawberries_source extends MovieClip {
}
}//package
Section 144
//strawberry (strawberry)
package {
import flash.display.*;
public dynamic class strawberry extends MovieClip {
}
}//package
Section 145
//strawberry_icon (strawberry_icon)
package {
import flash.display.*;
public dynamic class strawberry_icon extends MovieClip {
}
}//package
Section 146
//title (title)
package {
import flash.display.*;
public dynamic class title extends MovieClip {
public var m_buttonStart:btn_play;
public var m_buttonInstructions:btn_howtoplay;
public function title(){
addFrameScript(22, frame23);
}
function frame23(){
stop();
}
}
}//package
Section 147
//trash (trash)
package {
import flash.display.*;
public dynamic class trash extends MovieClip {
}
}//package
Section 148
//Utils (Utils)
package {
public class Utils {
public static function IsContain(_arg1:Array, _arg2:Object){
return (!((_arg1.indexOf(_arg2) == -1)));
}
public static function AnyOf(_arg1:Array){
return (_arg1[int((Math.random() * _arg1.length))]);
}
}
}//package
Section 149
//white_body_1 (white_body_1)
package {
import flash.display.*;
public dynamic class white_body_1 extends MovieClip {
}
}//package
Section 150
//white_body_2 (white_body_2)
package {
import flash.display.*;
public dynamic class white_body_2 extends MovieClip {
}
}//package
Section 151
//white_clothe_1 (white_clothe_1)
package {
import flash.display.*;
public dynamic class white_clothe_1 extends MovieClip {
}
}//package
Section 152
//white_clothe_2 (white_clothe_2)
package {
import flash.display.*;
public dynamic class white_clothe_2 extends MovieClip {
}
}//package
Section 153
//white_eyes_1 (white_eyes_1)
package {
import flash.display.*;
public dynamic class white_eyes_1 extends MovieClip {
public function white_eyes_1(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 154
//white_eyes_2 (white_eyes_2)
package {
import flash.display.*;
public dynamic class white_eyes_2 extends MovieClip {
public function white_eyes_2(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 155
//white_hairs_1 (white_hairs_1)
package {
import flash.display.*;
public dynamic class white_hairs_1 extends MovieClip {
}
}//package
Section 156
//white_hairs_2 (white_hairs_2)
package {
import flash.display.*;
public dynamic class white_hairs_2 extends MovieClip {
}
}//package
Section 157
//white_mouth_1 (white_mouth_1)
package {
import flash.display.*;
public dynamic class white_mouth_1 extends MovieClip {
public function white_mouth_1(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 158
//white_mouth_2 (white_mouth_2)
package {
import flash.display.*;
public dynamic class white_mouth_2 extends MovieClip {
public function white_mouth_2(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 159
//white_nose_1 (white_nose_1)
package {
import flash.display.*;
public dynamic class white_nose_1 extends MovieClip {
}
}//package
Section 160
//white_nose_2 (white_nose_2)
package {
import flash.display.*;
public dynamic class white_nose_2 extends MovieClip {
}
}//package
Section 161
//window (window)
package {
import flash.display.*;
public dynamic class window extends MovieClip {
}
}//package
Section 162
//woman_body_1 (woman_body_1)
package {
import flash.display.*;
public dynamic class woman_body_1 extends MovieClip {
}
}//package
Section 163
//woman_body_2 (woman_body_2)
package {
import flash.display.*;
public dynamic class woman_body_2 extends MovieClip {
}
}//package
Section 164
//woman_clothe_1 (woman_clothe_1)
package {
import flash.display.*;
public dynamic class woman_clothe_1 extends MovieClip {
}
}//package
Section 165
//woman_clothe_2 (woman_clothe_2)
package {
import flash.display.*;
public dynamic class woman_clothe_2 extends MovieClip {
}
}//package
Section 166
//woman_eyes_1 (woman_eyes_1)
package {
import flash.display.*;
public dynamic class woman_eyes_1 extends MovieClip {
public function woman_eyes_1(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 167
//woman_eyes_2 (woman_eyes_2)
package {
import flash.display.*;
public dynamic class woman_eyes_2 extends MovieClip {
public function woman_eyes_2(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 168
//woman_hairs_1 (woman_hairs_1)
package {
import flash.display.*;
public dynamic class woman_hairs_1 extends MovieClip {
}
}//package
Section 169
//woman_hairs_2 (woman_hairs_2)
package {
import flash.display.*;
public dynamic class woman_hairs_2 extends MovieClip {
}
}//package
Section 170
//woman_mouth_1 (woman_mouth_1)
package {
import flash.display.*;
public dynamic class woman_mouth_1 extends MovieClip {
public function woman_mouth_1(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 171
//woman_mouth_2 (woman_mouth_2)
package {
import flash.display.*;
public dynamic class woman_mouth_2 extends MovieClip {
public function woman_mouth_2(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 172
//woman_nose_1 (woman_nose_1)
package {
import flash.display.*;
public dynamic class woman_nose_1 extends MovieClip {
}
}//package
Section 173
//woman_nose_2 (woman_nose_2)
package {
import flash.display.*;
public dynamic class woman_nose_2 extends MovieClip {
}
}//package
Section 174
//yellow_body_1 (yellow_body_1)
package {
import flash.display.*;
public dynamic class yellow_body_1 extends MovieClip {
}
}//package
Section 175
//yellow_body_2 (yellow_body_2)
package {
import flash.display.*;
public dynamic class yellow_body_2 extends MovieClip {
}
}//package
Section 176
//yellow_clothe_1 (yellow_clothe_1)
package {
import flash.display.*;
public dynamic class yellow_clothe_1 extends MovieClip {
}
}//package
Section 177
//yellow_clothe_2 (yellow_clothe_2)
package {
import flash.display.*;
public dynamic class yellow_clothe_2 extends MovieClip {
}
}//package
Section 178
//yellow_eyes_1 (yellow_eyes_1)
package {
import flash.display.*;
public dynamic class yellow_eyes_1 extends MovieClip {
public function yellow_eyes_1(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 179
//yellow_eyes_2 (yellow_eyes_2)
package {
import flash.display.*;
public dynamic class yellow_eyes_2 extends MovieClip {
public function yellow_eyes_2(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 180
//yellow_hairs_1 (yellow_hairs_1)
package {
import flash.display.*;
public dynamic class yellow_hairs_1 extends MovieClip {
}
}//package
Section 181
//yellow_hairs_2 (yellow_hairs_2)
package {
import flash.display.*;
public dynamic class yellow_hairs_2 extends MovieClip {
}
}//package
Section 182
//yellow_mouth_1 (yellow_mouth_1)
package {
import flash.display.*;
public dynamic class yellow_mouth_1 extends MovieClip {
public function yellow_mouth_1(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 183
//yellow_mouth_2 (yellow_mouth_2)
package {
import flash.display.*;
public dynamic class yellow_mouth_2 extends MovieClip {
public function yellow_mouth_2(){
addFrameScript(2, frame3);
}
function frame3(){
stop();
}
}
}//package
Section 184
//yellow_nose_1 (yellow_nose_1)
package {
import flash.display.*;
public dynamic class yellow_nose_1 extends MovieClip {
}
}//package
Section 185
//yellow_nose_2 (yellow_nose_2)
package {
import flash.display.*;
public dynamic class yellow_nose_2 extends MovieClip {
}
}//package