STORY   LOOP   FURRY   PORN   GAMES
• C •   SERVICES [?] [R] RND   POPULAR
Archived flashes:
228074
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2560 · P5120

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/64259768?noj=FRM64259768-29DC" width="1" height="1"></div>

where-is-my-cow.swf

This is the info page for
Flash #114436

(Click the ID number above for more basic data on this flash file.)


Text
<p align="left"><font face="Redensek_12pt_st" size="12" color="#0066cc" letterSpacing="0.000000" kerning="1">score:</font></p>

ActionScript [AS3]

Section 1
//StageBack (Assets.StageBack) package Assets { import flash.display.*; import Core.*; public class StageBack extends MovieClip { public function StageBack(){ super(); var bg:Bitmap = new Resourcen.instance.IMAGE_BACK_GREEN(); bg.smoothing = true; addChild(bg); bg.x = -((bg.width / 2)); bg.y = -((bg.height / 2)); } } }//package Assets
Section 2
//Vector2D (com.cheezeworld.math.Vector2D) package com.cheezeworld.math { import flash.geom.*; public class Vector2D { private var v2:Vector2D; private var _length:Number; private var _oldX:Number; private var v1:Vector2D; private var _oldY:Number; public var x:Number; public var y:Number; private static const DEG_TO_RAD:Number = 0.0174532925199433; private static const RAD_TO_DEG:Number = 57.2957795130823; public function Vector2D(X:Number=0, Y:Number=0){ super(); x = X; y = Y; _length = 0; } public function divide(scalar:Number):void{ if (scalar == 0){ trace("Vector::dividedBy() - Illegal Divide by Zero!"); } else { x = (x / scalar); y = (y / scalar); }; } public function isZero():Boolean{ return ((((x == 0)) || ((y == 0)))); } public function Set(x:Number, y:Number):void{ this.x = x; this.y = y; } public function sign(vector:Vector2D):int{ if ((y * vector.x) > (x * vector.y)){ return (-1); }; return (1); } public function dotOf(vector:Vector2D):Number{ return (((x * vector.x) + (y * vector.y))); } public function dividedBy(scalar:Number):Vector2D{ if (scalar == 0){ trace("Vector::dividedBy() - Illegal Divide by Zero!"); return (new Vector2D()); }; return (new Vector2D((x / scalar), (y / scalar))); } public function normalize():void{ if (length != 0){ x = (x / _length); y = (y / _length); }; } public function isParallelTo(vector:Vector2D):Boolean{ v1 = copy(); v1.normalize(); v2 = vector.copy(); v2.normalize(); return ((((((v1.x == v2.x)) && ((v1.y == v2.y)))) || ((((v1.x == -(v2.x))) && ((v1.y == -(v2.y))))))); } public function distanceTo(vector:Vector2D):Number{ var xSep:Number = (vector.x - x); var ySep:Number = (vector.y - y); return (Math.sqrt(((ySep * ySep) + (xSep * xSep)))); } public function subtract(vector:Vector2D):void{ x = (x - vector.x); y = (y - vector.y); } public function toPoint():Point{ return (new Point(x, y)); } public function toRotation():Number{ var ang:Number = (Math.atan((y / x)) * RAD_TO_DEG); if ((((y < 0)) && ((x > 0)))){ return (ang); }; if ((((((y < 0)) && ((x < 0)))) || ((((y > 0)) && ((x < 0)))))){ return ((ang + 180)); }; return ((ang + 360)); } public function isInsideRegion(topLeft:Vector2D, botRight:Vector2D):Boolean{ return (!((((((((x < topLeft.x)) || ((x > (topLeft.x + botRight.x))))) || ((y < topLeft.y)))) || ((y > (topLeft.y + botRight.y)))))); } public function addedTo(vector:Vector2D):Vector2D{ return (new Vector2D((x + vector.x), (y + vector.y))); } public function perpDotOf(vector:Vector2D):Number{ return (getPerp().dotOf(vector)); } public function projectionOn(vector:Vector2D):Vector2D{ v1 = vector.copy(); v1.multiply((this.dotOf(vector) / vector.dotOf(vector))); return (v1); } public function distanceSqTo(vector:Vector2D):Number{ var xSep:Number = (vector.y - y); var ySep:Number = (vector.x - x); return (((ySep * ySep) + (xSep * xSep))); } public function get lengthSq():Number{ return (((x * x) + (y * y))); } public function get length():Number{ if (((!((_oldX == x))) || (!((_oldY == y))))){ _oldX = x; _oldY = y; _length = Math.sqrt(((x * x) + (y * y))); }; return (_length); } public function getPerp():Vector2D{ return (new Vector2D(-(y), x)); } public function subtractedBy(vector:Vector2D):Vector2D{ return (new Vector2D((x - vector.x), (y - vector.y))); } public function multiply(scalar:Number):void{ x = (x * scalar); y = (y * scalar); } public function toString():String{ return ((((("(" + x) + ",") + y) + ")")); } public function truncate(max:Number):void{ if (lengthSq > (max * max)){ normalize(); multiply(max); }; } public function angleTo(vector:Vector2D):Number{ return (Math.acos((dotOf(vector) / (length * vector.length)))); } public function multipliedBy(scalar:Number):Vector2D{ return (new Vector2D((x * scalar), (y * scalar))); } public function getNormalized():Vector2D{ if (length == 0){ return (new Vector2D()); }; return (new Vector2D((x / _length), (y / _length))); } public function copy():Vector2D{ var newVector:Vector2D = new Vector2D(x, y); newVector._length = _length; newVector._oldX = x; newVector._oldY = y; return (newVector); } public function wrapAround(topLeft:Vector2D, botRight:Vector2D):void{ if (x > botRight.x){ x = (topLeft.x + (x - botRight.x)); } else { if (x < topLeft.x){ x = (botRight.x + x); }; }; if (y < topLeft.y){ y = (botRight.y + y); } else { if (y > botRight.y){ y = (topLeft.y + (y - botRight.y)); }; }; } public function getReverse():Vector2D{ return (new Vector2D(-(x), -(y))); } public function addTo(vector:Vector2D):void{ x = (x + vector.x); y = (y + vector.y); } public function reflect(norm:Vector2D):void{ v1 = norm.getReverse(); v1.multiply((2 * dotOf(norm))); addTo(v1); } public function crossOf(vector:Vector2D):Number{ return (((x * vector.y) - (y * vector.x))); } public static function rotToHeading(rotInDegrees:Number):Vector2D{ var rotInRad:Number = (rotInDegrees * DEG_TO_RAD); var xPart:Number = Math.cos(rotInRad); var yPart:Number = Math.sin(rotInRad); return (new Vector2D(xPart, yPart)); } public static function is2ndInFOVof1st(pos1st:Vector2D, facing1st:Vector2D, fov:Number, pos2nd:Vector2D):Boolean{ var toTarget:Vector2D = pos2nd.copy(); toTarget.subtract(pos1st); toTarget.normalize(); return ((facing1st.dotOf(toTarget) >= Math.cos((fov / 2)))); } public static function pointToVector(point:Point):Vector2D{ return (new Vector2D(point.x, point.y)); } } }//package com.cheezeworld.math
Section 3
//Input (com.cheezeworld.utils.Input) package com.cheezeworld.utils { import flash.events.*; import flash.display.*; import com.cheezeworld.math.*; import flash.utils.*; public class Input { private var _ot:int; public var _keyBuffer:Array; private var _timeMousePressed:int; public var mouseDelta:int;// = 0 public var lastKeyName:String;// = "" private var _bufferSize:int; private var _keyArr:Array; private var _timeKeyPressed:int; private var _timeMouseReleased:int; private var _dt:int; private var _keyState:Array; public var mouseX:Number;// = 0 public var mouseY:Number;// = 0 private var _hasMouseScrolled:Boolean; private var _ascii:Array; public var isMouseDown:Boolean;// = false private var _nt:int; public var mousePos:Vector2D; private var _timeKeyReleased:int; public var lastKeyCode:int;// = 0 public var isMouseReleased:Boolean;// = false private var _stage:Stage; private static const BUFFER_SIZE:int = 5; private static var _instance:Input; public function Input(enforcer:SingletonEnforcer){ super(); _timeKeyPressed = (_nt = (_ot = getTimer())); _dt = 0; mousePos = new Vector2D(); _ascii = new Array(222); fillAscii(); _keyState = new Array(222); _keyArr = new Array(); var i:int; while (i < 222) { _keyState[i] = new int(0); if (_ascii[i] != undefined){ _keyArr.push(i); }; i++; }; _bufferSize = Input.BUFFER_SIZE; _keyBuffer = new Array(_bufferSize); var j:int; while (j < _bufferSize) { _keyBuffer[j] = new Array(0, 0); j++; }; } public function get hasMouseScrolled():Boolean{ if (_hasMouseScrolled){ _hasMouseScrolled = false; return (true); }; return (false); } public function isKeyPressed(keyCode:int):Boolean{ return ((_keyState[keyCode] == 1)); } private function fillAscii():void{ _ascii[65] = "A"; _ascii[66] = "B"; _ascii[67] = "C"; _ascii[68] = "D"; _ascii[69] = "E"; _ascii[70] = "F"; _ascii[71] = "G"; _ascii[72] = "H"; _ascii[73] = "I"; _ascii[74] = "J"; _ascii[75] = "K"; _ascii[76] = "L"; _ascii[77] = "M"; _ascii[78] = "N"; _ascii[79] = "O"; _ascii[80] = "P"; _ascii[81] = "Q"; _ascii[82] = "R"; _ascii[83] = "S"; _ascii[84] = "T"; _ascii[85] = "U"; _ascii[86] = "V"; _ascii[87] = "W"; _ascii[88] = "X"; _ascii[89] = "Y"; _ascii[90] = "Z"; _ascii[48] = "0"; _ascii[49] = "1"; _ascii[50] = "2"; _ascii[51] = "3"; _ascii[52] = "4"; _ascii[53] = "5"; _ascii[54] = "6"; _ascii[55] = "7"; _ascii[56] = "8"; _ascii[57] = "9"; _ascii[32] = "Space"; _ascii[13] = "Enter"; _ascii[17] = "Ctrl"; _ascii[16] = "Shift"; _ascii[192] = "~"; _ascii[38] = "Up"; _ascii[40] = "Down"; _ascii[37] = "Left"; _ascii[39] = "Right"; _ascii[96] = "Numpad 0"; _ascii[97] = "Numpad 1"; _ascii[98] = "Numpad 2"; _ascii[99] = "Numpad 3"; _ascii[100] = "Numpad 4"; _ascii[101] = "Numpad 5"; _ascii[102] = "Numpad 6"; _ascii[103] = "Numpad 7"; _ascii[104] = "Numpad 8"; _ascii[105] = "Numpad 9"; _ascii[111] = "Numpad /"; _ascii[106] = "Numpad *"; _ascii[109] = "Numpad -"; _ascii[107] = "Numpad +"; _ascii[110] = "Numpad ."; _ascii[45] = "Insert"; _ascii[46] = "Delete"; _ascii[33] = "Page Up"; _ascii[34] = "Page Down"; _ascii[35] = "End"; _ascii[36] = "Home"; _ascii[112] = "F1"; _ascii[113] = "F2"; _ascii[114] = "F3"; _ascii[115] = "F4"; _ascii[116] = "F5"; _ascii[117] = "F6"; _ascii[118] = "F7"; _ascii[119] = "F8"; _ascii[188] = ","; _ascii[190] = "."; _ascii[186] = ";"; _ascii[222] = "'"; _ascii[219] = "["; _ascii[221] = "]"; _ascii[189] = "-"; _ascii[187] = "+"; _ascii[220] = "\\"; _ascii[191] = "/"; _ascii[9] = "TAB"; _ascii[8] = "Backspace"; _ascii[27] = "ESC"; } public function get timeSinceMouseReleased():int{ return ((getTimer() - _timeMouseReleased)); } private function mouseMove(e:MouseEvent):void{ mouseX = (e.stageX - _stage.x); mouseY = (e.stageY - _stage.y); mousePos.x = mouseX; mousePos.y = mouseY; } public function isKeyDown(keyCode:int):Boolean{ return ((_keyState[keyCode] > 0)); } public function getKeyString(keyCode:int):String{ return (_ascii[keyCode]); } private function mouseRelease(e:MouseEvent):void{ isMouseDown = false; isMouseReleased = true; _timeMouseReleased = getTimer(); } private function keyPress(e:KeyboardEvent):void{ _keyState[e.keyCode] = Math.max(_keyState[e.keyCode], 1); lastKeyName = _ascii[e.keyCode]; lastKeyCode = e.keyCode; if (_keyState[e.keyCode] == 1){ _timeKeyPressed = getTimer(); }; } private function mousePress(e:MouseEvent):void{ isMouseDown = true; _timeMousePressed = getTimer(); } private function keyRelease(e:KeyboardEvent):void{ _keyState[e.keyCode] = -1; var i:int = (_bufferSize - 1); while (i > 0) { _keyBuffer[i] = _keyBuffer[(i - 1)]; i--; }; _keyBuffer[0] = [e.keyCode, 0]; _timeKeyReleased = getTimer(); } public function get timeSinceLastKeyRelease():int{ return ((getTimer() - _timeKeyReleased)); } public function isKeyReleased(keyCode:int):Boolean{ return ((_keyState[keyCode] == -1)); } public function isKeyInBuffer(keyCode:int, i:int, t:int):Boolean{ return ((((_keyBuffer[i][0] == keyCode)) && ((_keyBuffer[i][1] <= t)))); } public function update():void{ _nt = getTimer(); _dt = (_nt - _ot); _ot = _nt; var i:int; while (i < _keyArr.length) { if (_keyState[_keyArr[i]] != 0){ var _local3 = _keyState; var _local4 = _keyArr[i]; var _local5 = (_local3[_local4] + 1); _local3[_local4] = _local5; }; i++; }; var j:int; while (j < _bufferSize) { _keyBuffer[j][1] = (_keyBuffer[j][1] + _dt); j++; }; isMouseReleased = false; } public function get timeSinceMousePressed():int{ return ((getTimer() - _timeMousePressed)); } private function mouseScroll(e:MouseEvent):void{ _hasMouseScrolled = true; mouseDelta = e.delta; } public function get timeSinceLastKeyPress():int{ return ((getTimer() - _timeKeyPressed)); } public function activate(stage:Stage):void{ _stage = stage; stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPress, false, 0, true); stage.addEventListener(KeyboardEvent.KEY_UP, keyRelease, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_DOWN, mousePress, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, mouseRelease, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMove, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_WHEEL, mouseScroll, false, 0, true); } public static function get instance():Input{ if (Input._instance == null){ Input._instance = new Input(new SingletonEnforcer()); }; return (Input._instance); } } }//package com.cheezeworld.utils class SingletonEnforcer { private function SingletonEnforcer(){ super(); } }
Section 4
//GTween (com.gskinner.motion.GTween) package com.gskinner.motion { import flash.events.*; import flash.utils.*; public class GTween extends EventDispatcher { public var autoPlay:Boolean;// = true protected var _position:Number;// = 0 protected var ticker:ITicker; protected var _delay:Number;// = 0 public var duration:Number;// = 1 public var repeat:int;// = 0 protected var positionOffset:Number; protected var _previousPosition:Number; protected var startValues:Object; public var data; protected var inited:Boolean; protected var _target:Object; protected var _tweenPosition:Number;// = 0 protected var _reversed:Boolean; public var snapping:Boolean;// = false public var reflect:Boolean;// = false public var nextTween:GTween; protected var assignmentProperty:String; public var autoVisible:Boolean;// = true protected var assignmentTarget:Object; protected var _lockStartProperties:Boolean; public var autoRotation:Boolean;// = false protected var endValues:Object; protected var inTick:Boolean; protected var _paused:Boolean;// = true protected var _propertyTarget:Object; public var ease:Function; protected var _proxy:TargetProxy; protected var _previousTweenPosition:Number; public static const START:String = "start"; public static const FRAME:String = "frame"; public static const TWEEN:String = "tween"; public static const TIME:String = "time"; public static const DELAY:String = "delay"; public static const END:String = "end"; public static const HYBRID:String = "hybrid"; public static var snappingProperties:Object = {x:true, y:true}; public static var pauseAll:Boolean = false; protected static var activeTweens:Dictionary = new Dictionary(); protected static var _activeTicker:ITicker; protected static var _timeInterval:uint = 10; public static var rotationProperties:Object = {rotation:true, rotationX:true, rotationY:true, rotationZ:true}; public static var defaultEase:Function; protected static var _timingMode:String; public function GTween(target:Object=null, duration:Number=10, properties:Object=null, tweenProperties:Object=null){ ease = linearEase; super(); ticker = activeTicker; this.target = target; this.duration = duration; ease = ((defaultEase) || (linearEase)); setProperties(properties); setTweenProperties(tweenProperties); } protected function setGCLock(value:Boolean):void{ if (value){ if ((_target is IEventDispatcher)){ _target.addEventListener("GDS__NONEXISTENT_EVENT", nullListener, false, 0, false); } else { activeTweens[this] = true; }; } else { if ((_target is IEventDispatcher)){ _target.removeEventListener("GDS__NONEXISTENT_EVENT", nullListener); }; delete activeTweens[this]; }; } public function get target():Object{ return (_target); } public function get delay():Number{ return (_delay); } public function set delay(value:Number):void{ if (_position == -(_delay)){ setPosition(-(value)); }; _delay = value; } protected function init():void{ var n:String; var r:Number; var tr:Number; inited = true; if (_lockStartProperties){ return; }; startValues = {}; if (((assignmentTarget) && (assignmentProperty))){ _propertyTarget = assignmentTarget[assignmentProperty]; }; for (n in endValues) { if (((autoRotation) && (rotationProperties[n]))){ r = (endValues[n] = (endValues[n] % 360)); tr = (_propertyTarget[n] % 360); startValues[n] = (tr + ((Math.abs((tr - r)))<180) ? 0 : ((tr)>r) ? -360 : 360); } else { startValues[n] = _propertyTarget[n]; }; }; } public function get state():String{ return (((((_position == -(_delay))) && (_paused))) ? START : ((_position)<0) ? DELAY : (((!((repeat == -1))) && ((_position >= ((repeat + 1) * duration))))) ? END : TWEEN); } public function get lockStartProperties():Boolean{ return (_lockStartProperties); } public function deleteProperty(name:String):Boolean{ return (delete endValues[name]); } public function set target(value:Object):void{ _propertyTarget = (_target = ((value)===null) ? {} : value); inited = false; } public function set reversed(value:Boolean):void{ if (value == _reversed){ return; }; _reversed = value; if (!inited){ init(); }; setPosition(_position, true); } public function get position():Number{ return (_position); } public function setPosition(position:Number, suppressEvents:Boolean=true):void{ var tp:Number; _previousPosition = _position; _position = position; if (((!(inTick)) && (!(paused)))){ updatePositionOffset(); }; var maxPos:Number = ((repeat + 1) * duration); if (position < 0){ tp = (_reversed) ? duration : 0; } else { if ((((repeat == -1)) || ((position < maxPos)))){ tp = (position % duration); if (((reflect) && ((((position / duration) % 2) >= 1))) != _reversed){ tp = (duration - tp); }; } else { tp = ((((reflect) && (((repeat % 2) >= 1))))!=_reversed) ? 0 : duration; }; }; if (tp == _tweenPosition){ return; }; _previousTweenPosition = _tweenPosition; _tweenPosition = tp; if (((!(suppressEvents)) && (hasEventListener(Event.CHANGE)))){ dispatchEvent(new Event(Event.CHANGE)); }; if (((((!(inited)) && ((_previousPosition <= 0)))) && ((_position >= 0)))){ init(); if (((!(suppressEvents)) && (hasEventListener(Event.INIT)))){ dispatchEvent(new Event(Event.INIT)); }; }; updateProperties(); if (((((!((repeat == -1))) && ((_previousPosition < maxPos)))) && ((position >= maxPos)))){ if (((!(suppressEvents)) && (hasEventListener(Event.COMPLETE)))){ dispatchEvent(new Event(Event.COMPLETE)); }; paused = true; if (nextTween){ nextTween.paused = false; }; }; } public function set lockStartProperties(value:Boolean):void{ if (((value) && (!(inited)))){ init(); }; _lockStartProperties = value; } public function get paused():Boolean{ return (_paused); } public function get tweenPosition():Number{ return (_tweenPosition); } public function invalidate():void{ inited = false; if (_position > 0){ _position = 0; updatePositionOffset(); }; if (autoPlay){ paused = false; }; } public function getProperties():Object{ return (copyObject(endValues)); } public function get propertyTarget():Object{ return (_propertyTarget); } public function play():void{ paused = false; } public function setAssignment(assignmentTarget:Object=null, assignmentProperty:String=null):void{ this.assignmentTarget = assignmentTarget; this.assignmentProperty = assignmentProperty; inited = false; } public function get reversed():Boolean{ return (_reversed); } public function set position(value:Number):void{ setPosition(value, true); } protected function updateProperty(property:String, startValue:Number, endValue:Number, tweenRatio:Number):void{ var value:Number = (startValue + ((endValue - startValue) * tweenRatio)); if (((snapping) && (snappingProperties[property]))){ value = Math.round(value); }; if (property == "currentFrame"){ _propertyTarget.gotoAndStop((value << 0)); } else { _propertyTarget[property] = value; }; } public function setProperties(properties:Object):void{ var n:String; endValues = {}; for (n in properties) { setProperty(n, properties[n]); }; } public function getProperty(name:String):Number{ return (endValues[name]); } public function end():void{ setPosition(((repeat)==-1) ? duration : ((repeat + 1) * duration)); } public function set paused(value:Boolean):void{ if (value == _paused){ return; }; _paused = value; if (value){ ticker.removeEventListener("tick", handleTick); } else { ticker.addEventListener("tick", handleTick, false, 0, true); if (((!((repeat == -1))) && ((_position >= (duration * (repeat + 1)))))){ position = 0; } else { updatePositionOffset(); }; }; setGCLock(!(value)); } public function beginning():void{ setPosition(-(_delay)); } public function setProperty(name:String, value:Number):void{ if (isNaN(value)){ return; }; endValues[name] = value; if (((_lockStartProperties) && ((startValues[name] == null)))){ startValues[name] = _propertyTarget[name]; }; invalidate(); } protected function updatePositionOffset():void{ positionOffset = (ticker.position - _position); } protected function copyObject(o:Object):Object{ var n:String; var copy:Object = {}; for (n in o) { copy[o] = o[n]; }; return (copy); } public function setTweenProperties(properties:Object):void{ var positionValue:Number; var n:String; if (!properties){ return; }; if (("position" in properties)){ positionValue = properties.position; delete properties.position; }; if (("initListener" in properties)){ addEventListener(Event.INIT, properties.initListener, false, 0, true); delete properties.initListener; }; if (("completeListener" in properties)){ addEventListener(Event.COMPLETE, properties.completeListener, false, 0, true); delete properties.completeListener; }; if (("changeListener" in properties)){ addEventListener(Event.CHANGE, properties.changeListener, false, 0, true); delete properties.changeListener; }; for (n in properties) { this[n] = properties[n]; }; if (!isNaN(positionValue)){ position = positionValue; }; } protected function updateProperties():void{ var n:String; var ratio:Number = ease((_tweenPosition / duration), 0, 1, 1); for (n in endValues) { updateProperty(n, startValues[n], endValues[n], ratio); }; if (((((((autoVisible) && (("alpha" in endValues)))) && (("alpha" in _propertyTarget)))) && (("visible" in _propertyTarget)))){ _propertyTarget.visible = (_propertyTarget.alpha > 0); }; if (((assignmentTarget) && (assignmentProperty))){ assignmentTarget[assignmentProperty] = _propertyTarget; }; } public function reverse(suppressEvents:Boolean=true):void{ var pos:Number = ((repeat == -1)) ? (duration - (_position % duration)) : (((repeat + 1) * duration) - _position); if (reflect){ _reversed = !((((((position / duration) % 2) >= 1) == (((pos / duration) % 2) >= 1)) == _reversed)); } else { _reversed = !(_reversed); }; setPosition(pos, suppressEvents); } public function setStartProperties(properties:Object):void{ startValues = copyObject(properties); inited = true; } protected function handleTick(evt:Event):void{ inTick = true; if (pauseAll){ updatePositionOffset(); } else { setPosition((ticker.position - positionOffset), false); }; inTick = false; } public function get proxy():Object{ if (_proxy == null){ _proxy = new TargetProxy(this); }; return (_proxy); } public function pause():void{ paused = true; } protected function nullListener(evt:Event):void{ } public function getStartProperties():Object{ return (copyObject(startValues)); } public static function set timeInterval(value:uint):void{ _timeInterval = value; if ((_activeTicker is TimeTicker)){ (_activeTicker as TimeTicker).interval = (_timeInterval / 1000); }; } public static function get timingMode():String{ return (_timingMode); } public static function get activeTicker():ITicker{ if (_timingMode == null){ timingMode = HYBRID; }; return (_activeTicker); } public static function set timingMode(value:String):void{ value = ((((value == FRAME)) || ((value == TIME)))) ? value : HYBRID; if (value == _timingMode){ return; }; _timingMode = value; if (_timingMode == TIME){ _activeTicker = new TimeTicker(); (_activeTicker as TimeTicker).interval = (_timeInterval / 1000); } else { if (_timingMode == FRAME){ _activeTicker = new FrameTicker(); } else { _activeTicker = new HybridTicker(); }; }; } public static function linearEase(t:Number, b:Number, c:Number, d:Number):Number{ return (t); } public static function get timeInterval():uint{ return (_timeInterval); } } }//package com.gskinner.motion import flash.events.*; import flash.display.*; import flash.utils.*; interface ITicker extends IEventDispatcher { "GTween.as$5:ITicker"?? function get position():Number; } class FrameTicker extends EventDispatcher implements ITicker { protected var shape:Shape; protected var _position:Number;// = 0 private function FrameTicker():void{ super(); shape = new Shape(); shape.addEventListener(Event.ENTER_FRAME, tick); } public function get position():Number{ return (_position); } protected function tick(evt:Event):void{ _position++; dispatchEvent(new Event("tick")); } } dynamic class TargetProxy extends Proxy { private var gTween:GTween; private function TargetProxy(gTween:GTween):void{ super(); this.gTween = gTween; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function deleteProperty(prop):Boolean{ return (gTween.deleteProperty(prop)); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function callProperty(methodName, ... _args){ return (gTween.propertyTarget[methodName].apply(null, _args)); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(prop, value):void{ if (isNaN(value)){ gTween.propertyTarget[prop] = value; } else { gTween.setProperty(String(prop), Number(value)); }; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(prop){ var value:Number = gTween.getProperty(prop); return ((isNaN(value)) ? gTween.propertyTarget[prop] : value); } } class HybridTicker extends EventDispatcher implements ITicker { protected var shape:Shape; private function HybridTicker():void{ super(); shape = new Shape(); shape.addEventListener(Event.ENTER_FRAME, tick); } public function get position():Number{ return ((getTimer() / 1000)); } protected function tick(evt:Event):void{ dispatchEvent(new Event("tick")); } } class TimeTicker extends EventDispatcher implements ITicker { protected var timer:Timer; private function TimeTicker():void{ super(); timer = new Timer(20); timer.start(); timer.addEventListener(TimerEvent.TIMER, tick); } public function get position():Number{ return ((getTimer() / 1000)); } public function set interval(value:Number):void{ timer.delay = (value * 1000); } protected function tick(evt:TimerEvent):void{ dispatchEvent(new Event("tick")); evt.updateAfterEvent(); } }
Section 5
//Camera2D (com.normsoule.pixelblitz.core.Camera2D) package com.normsoule.pixelblitz.core { import flash.geom.*; public class Camera2D { public var boundry:Rectangle; public var ease:Number;// = 0.1 public var target:Point; private var distX:int; private var distY:int; public var basePoint:Point; private static var instance:Camera2D; private static var allowInstance:Boolean; public function Camera2D(){ basePoint = new Point(); boundry = new Rectangle(); super(); if (!allowInstance){ throw (new Error("Camera2D is instantiated internally")); }; } public function scroll():void{ if (target){ scrollTarget(); }; } private function scrollTarget():void{ if ((((target.x < boundry.right)) && ((target.x > boundry.left)))){ distX = ((boundry.left - target.x) - basePoint.x); basePoint.x = (basePoint.x + (distX * ease)); } else { if (target.x > boundry.right){ distX = (boundry.left - (boundry.right + basePoint.x)); basePoint.x = (basePoint.x + (distX * ease)); }; if (target.x < boundry.left){ distX = (boundry.left - (boundry.left + basePoint.x)); basePoint.x = (basePoint.x + (distX * ease)); }; }; if ((((target.y < boundry.bottom)) && ((target.y > boundry.top)))){ distY = ((boundry.top - target.y) - basePoint.y); basePoint.y = (basePoint.y + (distY * ease)); } else { if (target.y > boundry.bottom){ distY = (boundry.top - (boundry.bottom + basePoint.y)); basePoint.y = (basePoint.y + (distY * ease)); }; if (target.y < boundry.top){ distY = (boundry.top - (boundry.top + basePoint.y)); basePoint.y = (basePoint.y + (distY * ease)); }; }; } public static function getInstance():Camera2D{ if (!instance){ allowInstance = true; instance = new (Camera2D); allowInstance = false; }; return (instance); } } }//package com.normsoule.pixelblitz.core
Section 6
//TextButton (Core.DialogBoxes.TextButton) package Core.DialogBoxes { import flash.events.*; import flash.display.*; import Core.*; import flash.text.*; public class TextButton extends Sprite { public var txt:TextField; public var number:int;// = 1 public var image:Sprite; public var isOver:Boolean;// = false public function TextButton(p:Sprite, px:Number, py:Number, n:int, onClick:Function=null, enabled:Boolean=true){ var img:Bitmap; image = new Sprite(); super(); if (!enabled){ img = new Resourcen.instance.IMAGE_BUTTON_RECT(); } else { img = new Resourcen.instance.IMAGE_BUTTON_RECT(); }; img.smoothing = true; image.addChild(img); img.x = (-(img.width) / 2); img.y = (-(img.height) / 2); number = n; addChild(image); buttonMode = true; if (enabled){ addEventListener(MouseEvent.MOUSE_OVER, onOver); addEventListener(MouseEvent.MOUSE_OUT, onOut); addEventListener(Event.ENTER_FRAME, update); addEventListener(MouseEvent.CLICK, onClick); }; AddText(n.toString()); x = px; y = py; p.addChild(this); } public function update(e:Event):void{ } private function AddText(s:String):void{ var fmt:TextFormat = new TextFormat("soolidium", 12, 0, "Regular"); txt = new TextField(); txt.y = 7; txt.height = 20; txt.selectable = false; txt.text = s; txt.setTextFormat(fmt, 0, txt.text.length); var bmp:BitmapData = new BitmapData(txt.width, txt.height, true, 0); bmp.draw(txt); var b:Bitmap = new Bitmap(bmp); b.y = -8; if (s.length < 2){ b.x = -5; } else { b.x = -8; }; addChild(b); } public function onOut(e:Event):void{ isOver = false; } public function onOver(e:Event):void{ isOver = true; } } }//package Core.DialogBoxes
Section 7
//AbstractLevelItem (Core.LevelItems.AbstractLevelItem) package Core.LevelItems { import flash.geom.*; import Core.View.LevelItems.*; public class AbstractLevelItem { public var b:Number; public var view:AbstractLevelItemView; public var g:Number; public var name:String; public var r:Number; public var id:uint; public var isCollected:Boolean;// = false public function AbstractLevelItem(id:uint){ super(); this.id = id; } public function reset():void{ this.isCollected = false; } public function walkableTest(playerPosition:Point):Boolean{ throw (new Error("Usage of Absctact class")); } } }//package Core.LevelItems
Section 8
//Cloud (Core.LevelItems.Cloud) package Core.LevelItems { import flash.geom.*; import Core.View.LevelItems.*; public class Cloud extends AbstractLevelItem { public function Cloud(id:int){ super(id); r = 10; g = 0; b = 0; name = "cloud"; view = new CloudView(); } override public function walkableTest(playerPosition:Point):Boolean{ return (true); } } }//package Core.LevelItems
Section 9
//Coin (Core.LevelItems.Coin) package Core.LevelItems { import flash.geom.*; import Core.View.LevelItems.*; public class Coin extends AbstractLevelItem { public function Coin(id:int){ super(id); r = 20; g = 0; b = 100; name = "coin"; view = new CoinView(); } override public function walkableTest(playerPosition:Point):Boolean{ return (false); } } }//package Core.LevelItems
Section 10
//LevelEnder (Core.LevelItems.LevelEnder) package Core.LevelItems { import flash.geom.*; import Core.View.LevelItems.*; public class LevelEnder extends AbstractLevelItem { public function LevelEnder(id:int){ super(id); r = 60; g = 0xFF; b = 0xFF; name = "levelender"; view = new LevelEnderView(); } override public function walkableTest(playerPosition:Point):Boolean{ return (false); } } }//package Core.LevelItems
Section 11
//Luck (Core.LevelItems.Luck) package Core.LevelItems { import flash.geom.*; import Core.View.LevelItems.*; public class Luck extends AbstractLevelItem { private var rotation:Number; private var direction:Point; public function Luck(id:int, direction:Number){ super(id); view = new LuckView(); direction = (direction % 360); rotation = direction; if (direction == 90){ r = 60; g = 0; b = 60; name = "luckRight"; this.direction = new Point(1, 0); }; if (direction == 180){ r = 0; g = 60; b = 0; name = "luckDown"; this.direction = new Point(0, 1); }; if (direction == 270){ r = 0; g = 0; b = 60; name = "luckLeft"; this.direction = new Point(-1, 0); }; if (direction == 0){ r = 60; g = 0; b = 0; name = "luckUp"; this.direction = new Point(0, -1); }; view.rotation = rotation; } override public function walkableTest(playerDirection:Point):Boolean{ if (((!((playerDirection.x == direction.x))) || (!((playerDirection.y == direction.y))))){ return (true); }; return (false); } public function get Direction():Number{ return (this.rotation); } } }//package Core.LevelItems
Section 12
//Level (Core.model.Level) package Core.model { import flash.events.*; import flash.geom.*; import util.math.*; import Core.LevelItems.*; public class Level extends EventDispatcher { private var matrix:Grid; private var locks:Array; private var startPosition:Point; private var index:uint; private var rotation:Number; public function Level(index:uint, widht:uint=0, height:uint=0){ super(); this.matrix = new Grid(widht, height); this.startPosition = new Point(uint((widht / 2)), uint((height / 2))); this.rotation = 0; this.locks = new Array(); this.index = index; } public function set Rotation(rotation:Number):void{ this.rotation = rotation; } public function getItemAtPosition(x:uint, y:uint):AbstractLevelItem{ return (AbstractLevelItem(matrix.getField(x, y))); } public function get Width():uint{ return (this.matrix.Width); } public function get Height():uint{ return (this.matrix.Height); } public function get Rotation():Number{ return (this.rotation); } public function reset():void{ var x:int; this.rotation = 0; var y:int; while (y < this.Height) { x = 0; while (x < this.Width) { x++; }; y++; }; } public function setItemAtPosition(x:uint, y:uint, item:AbstractLevelItem):void{ matrix.setField(x, y, item); } public function collectKey(color:uint):void{ var i:int; while (i < this.locks.length) { i++; }; } public function get Index():uint{ return (this.index); } public function get StartPosition():Point{ return (this.startPosition); } public function set StartPosition(position:Point):void{ this.startPosition = position; } } }//package Core.model
Section 13
//Player (Core.model.Player) package Core.model { import flash.events.*; import flash.geom.*; import util.math.*; public class Player extends EventDispatcher { private var points:int; private var position:Point; private var movementVector:Vector2; public function Player(){ super(); position = new Point(); points = 0; movementVector = new Vector2(0, 0); } public function set Position(position:Point):void{ this.position = position; dispatchEvent(new Event(Event.CHANGE)); } public function set Points(points:int):void{ this.points = points; dispatchEvent(new Event(Event.CHANGE)); } public function get Position():Point{ return (this.position); } public function get Points():int{ return (this.points); } public function set MovementVector(movementVector:Vector2):void{ this.movementVector = movementVector; dispatchEvent(new Event(Event.CHANGE)); } public function get MovementVector():Vector2{ return (this.movementVector); } public function destruct():void{ this.position = null; this.points = 0; this.movementVector = null; } } }//package Core.model
Section 14
//DialogEnd (Core.Screens.Dialogs.DialogEnd) package Core.Screens.Dialogs { import com.gskinner.motion.*; import flash.events.*; import flash.display.*; import Core.*; import flash.text.*; import mx.effects.easing.*; public class DialogEnd extends Sprite { public var mBtnNext:Sprite; private var mNext:Bitmap; public var txtScore:TextField; public var time:String; public var coins:int; public var score:int; public var level:int;// = 0 public var txtTime:TextField; public var txtCoins:TextField; private var mNextOver:Bitmap; public var nbtn:NavButton; private var mParent:Sprite; private var mBack:Bitmap; public function DialogEnd(p:Sprite){ mBack = new Resourcen.instance.IMAGE_DIALOG_COMPLETE(); mBtnNext = new Sprite(); mNext = new Resourcen.instance.IMAGE_BUTTON_OK(); mNextOver = new Resourcen.instance.IMAGE_BUTTON_OK(); txtScore = new TextField(); txtTime = new TextField(); txtCoins = new TextField(); nbtn = new NavButton(); super(); mParent = p; mBack.smoothing = true; addChild(mBack); mBtnNext.addChild(mNext); mBtnNext.x = ((720 / 2) - (mNext.width / 2)); mBtnNext.y = 320; mBtnNext.buttonMode = true; addChild(mBtnNext); this.addChild(txtScore); this.addChild(txtCoins); this.addChild(txtTime); addChild(nbtn); nbtn.x = (730 / 2); nbtn.y = (320 - nbtn.height); this.visible = false; this.y = -(this.height); } public function SetSubmit(f:Function):void{ } public function ShowDialog():void{ mParent.addChild(this); this.visible = true; var myTween:GTween = new GTween(this, 0.8, {y:0}, {reflect:true, ease:Back.easeOut}); } public function HideDialog():void{ var myTween:GTween = new GTween(this, 0.8, {y:-(height)}, {reflect:true, ease:Back.easeOut}); myTween.addEventListener(Event.COMPLETE, hideComplete); } public function SetBack(f:Function):void{ } public function update():void{ } public function hideComplete(e:Event):void{ this.visible = false; mParent.removeChild(this); } public function SetClick(f:Function):void{ mBtnNext.addEventListener(MouseEvent.CLICK, f); } public function onNextOver(e:Event):void{ } public function onNext(e:Event):void{ } public function onNextOut(e:Event):void{ } public function setTextInfo(textBox:TextField, text:String, px:Number, py:Number):void{ var tfmt:TextFormat = new TextFormat("Tahoma", 26, 0, "bold"); tfmt.font = "Tahoma"; tfmt.size = 16; textBox.selectable = false; textBox.x = px; textBox.textColor = 0xFFFFFF; textBox.y = py; textBox.autoSize = TextFieldAutoSize.LEFT; textBox.text = text; textBox.setTextFormat(tfmt); } } }//package Core.Screens.Dialogs
Section 15
//DialogStart (Core.Screens.Dialogs.DialogStart) package Core.Screens.Dialogs { import com.gskinner.motion.*; import flash.events.*; import flash.display.*; import Core.*; import flash.text.*; import mx.effects.easing.*; public class DialogStart extends Sprite { public var mBtnNext:Sprite; private var mNext:Bitmap; public var txtScore:TextField; public var time:String; public var coins:int; public var score:int; public var level:int;// = 0 public var txtTime:TextField; public var txtCoins:TextField; private var mNextOver:Bitmap; private var mParent:Sprite; private var mBack:Bitmap; public function DialogStart(p:Sprite){ mBack = new Resourcen.instance.IMAGE_LEVEL_START(); mBtnNext = new Sprite(); mNext = new Resourcen.instance.IMAGE_BUTTON_OK(); mNextOver = new Resourcen.instance.IMAGE_BUTTON_OK(); txtScore = new TextField(); txtTime = new TextField(); txtCoins = new TextField(); super(); mParent = p; mBack.smoothing = true; addChild(mBack); mBtnNext.addChild(mNext); mBtnNext.x = ((720 / 2) - (mNext.width / 2)); mBtnNext.y = 320; mBtnNext.buttonMode = true; addChild(mBtnNext); this.addChild(txtScore); this.addChild(txtCoins); this.addChild(txtTime); this.visible = false; this.y = -(this.height); } public function SetSubmit(f:Function):void{ } public function ShowDialog():void{ mParent.addChild(this); this.visible = true; var myTween:GTween = new GTween(this, 0.8, {y:0}, {reflect:true, ease:Back.easeOut}); } public function HideDialog():void{ var myTween:GTween = new GTween(this, 0.8, {y:-(height)}, {reflect:true, ease:Back.easeOut}); myTween.addEventListener(Event.COMPLETE, hideComplete); } public function SetBack(f:Function):void{ } public function update():void{ } private function hideComplete(e:Event):void{ this.visible = false; mParent.removeChild(this); } public function SetClick(f:Function):void{ mBtnNext.addEventListener(MouseEvent.CLICK, f); } public function onNextOver(e:Event):void{ } public function onNext(e:Event):void{ } public function onNextOut(e:Event):void{ } public function setTextInfo(textBox:TextField, text:String, px:Number, py:Number):void{ var tfmt:TextFormat = new TextFormat("Tahoma", 26, 0, "bold"); tfmt.font = "Tahoma"; tfmt.size = 16; textBox.selectable = false; textBox.x = px; textBox.textColor = 0xFFFFFF; textBox.y = py; textBox.autoSize = TextFieldAutoSize.LEFT; textBox.text = text; textBox.setTextFormat(tfmt); } } }//package Core.Screens.Dialogs
Section 16
//LevelSelect (Core.Screens.Dialogs.LevelSelect) package Core.Screens.Dialogs { import com.gskinner.motion.*; import flash.events.*; import flash.display.*; import Core.*; import mx.effects.easing.*; import Core.DialogBoxes.*; public class LevelSelect extends Sprite { public var imageBack:Bitmap; public var nbtn:NavButton; public var mParent:Main; public function LevelSelect(p:Main){ imageBack = new Resourcen.instance.IMAGE_LEVEL_SELECT(); nbtn = new NavButton(); super(); mParent = p; imageBack.smoothing = true; addChild(imageBack); var btn1:TextButton = new TextButton(this, 185, 170, 1, onSelect, true); var btn2:TextButton = new TextButton(this, 245, 170, 2, onSelect, (GlobalInfo.instance.lev > 1)); var btn3:TextButton = new TextButton(this, 305, 170, 3, onSelect, (GlobalInfo.instance.lev > 2)); var btn4:TextButton = new TextButton(this, 365, 170, 4, onSelect, (GlobalInfo.instance.lev > 3)); var btn5:TextButton = new TextButton(this, 425, 170, 5, onSelect, (GlobalInfo.instance.lev > 4)); var btn6:TextButton = new TextButton(this, 485, 170, 6, onSelect, (GlobalInfo.instance.lev > 5)); var btn7:TextButton = new TextButton(this, 545, 170, 7, onSelect, (GlobalInfo.instance.lev > 6)); var btn8:TextButton = new TextButton(this, 185, 230, 8, onSelect, (GlobalInfo.instance.lev > 7)); var btn9:TextButton = new TextButton(this, 245, 230, 9, onSelect, (GlobalInfo.instance.lev > 8)); var btn10:TextButton = new TextButton(this, 305, 230, 10, onSelect, (GlobalInfo.instance.lev > 9)); var btn11:TextButton = new TextButton(this, 365, 230, 11, onSelect, (GlobalInfo.instance.lev > 10)); var btn12:TextButton = new TextButton(this, 425, 230, 12, onSelect, (GlobalInfo.instance.lev > 11)); var btn13:TextButton = new TextButton(this, 485, 230, 13, onSelect, (GlobalInfo.instance.lev > 12)); var btn14:TextButton = new TextButton(this, 545, 230, 14, onSelect, (GlobalInfo.instance.lev > 13)); var btn15:TextButton = new TextButton(this, 215, 290, 15, onSelect, (GlobalInfo.instance.lev > 14)); var btn16:TextButton = new TextButton(this, 275, 290, 16, onSelect, (GlobalInfo.instance.lev > 15)); var btn17:TextButton = new TextButton(this, 335, 290, 17, onSelect, (GlobalInfo.instance.lev > 16)); var btn18:TextButton = new TextButton(this, 395, 290, 18, onSelect, (GlobalInfo.instance.lev > 17)); var btn19:TextButton = new TextButton(this, 455, 290, 19, onSelect, (GlobalInfo.instance.lev > 18)); var btn20:TextButton = new TextButton(this, 515, 290, 20, onSelect, (GlobalInfo.instance.lev > 19)); addChild(nbtn); nbtn.x = (730 / 2); nbtn.y = (305 + nbtn.height); nbtn.stop(); this.visible = false; this.y = -(this.height); } public function onSelect(e:Event):void{ var t:TextButton = (e.currentTarget as TextButton); this.visible = false; mParent.initBoard(t.number); } public function HideDialog():void{ var myTween:GTween = new GTween(this, 0.8, {y:-(height)}, {reflect:true, ease:Back.easeOut}); myTween.addEventListener(Event.COMPLETE, hideComplete); } private function hideComplete(e:Event):void{ this.visible = false; mParent.removeChild(this); } public function ShowDialog():void{ mParent.addChild(this); this.visible = true; var myTween:GTween = new GTween(this, 0.8, {y:0}, {reflect:true, ease:Back.easeOut}); } } }//package Core.Screens.Dialogs
Section 17
//InfoBar (Core.Screens.Layers.InfoBar) package Core.Screens.Layers { import flash.display.*; import flash.text.*; public class InfoBar extends Sprite { private var textFormat:TextFormat; private var label:TextField; public var redensec:Class; private var mBitmap:Bitmap; private var mParent:Sprite; public function InfoBar(parentSprite:Sprite, px:Number, py:Number, font:String, fontSize:int, color:Object, bgBitmap:Bitmap=null){ redensec = InfoBar_redensec; super(); this.mParent = parentSprite; if (bgBitmap != null){ this.mBitmap = bgBitmap; this.mBitmap.smoothing = true; this.mBitmap.x = 0; this.mBitmap.y = 2; this.addChild(this.mBitmap); }; this.label = new TextField(); this.label.selectable = false; this.label.autoSize = TextFieldAutoSize.LEFT; this.label.text = "Score: "; this.addChild(this.label); this.label.x = 10; this.label.y = 5; this.x = px; this.y = py; var f:Font = new redensec(); this.setTextFormat("Redensek_12pt_st", fontSize, color); this.textFormat.font = "Redensek_12pt_st"; this.label.setTextFormat(textFormat, 0, this.label.text.length); this.mParent.addChild(this); } public function updateLayer(text:String):void{ this.label.text = text; this.label.setTextFormat(this.textFormat, 0, this.label.text.length); } private function setTextFormat(font:String, size:int, color:Object):void{ this.textFormat = new TextFormat("Redensek_12pt_st", size, color); } } }//package Core.Screens.Layers
Section 18
//InfoBar_redensec (Core.Screens.Layers.InfoBar_redensec) package Core.Screens.Layers { import flash.display.*; import mx.core.*; public class InfoBar_redensec extends FontAsset { public var mText:DisplayObject; } }//package Core.Screens.Layers
Section 19
//UILayer (Core.Screens.Layers.UILayer) package Core.Screens.Layers { import flash.events.*; import flash.display.*; import Core.*; import UI.*; public class UILayer extends MovieClip { private var btnSound:Button; private var btnClose:Button; private var scoreLayer:InfoBar; public function UILayer(){ super(); this.btnSound = new Button(this, 650, 0, new Resourcen.instance.IMAGE_BTN_SOUND(), null, this.onSound); this.scoreLayer = new InfoBar(this, 10, 5, "redensec", 15, 0xFFFFFF, new Resourcen.instance.IMAGE_BALKE()); } public function onSound(e:Event):void{ GlobalInfo.instance.isSound = !(GlobalInfo.instance.isSound); GlobalInfo.instance.isMusic = !(GlobalInfo.instance.isMusic); if (!GlobalInfo.instance.isMusic){ GlobalInfo.instance.StopMusic(); } else { GlobalInfo.instance.PlayMusic(); }; } public function getScoreLayer():InfoBar{ return (scoreLayer); } public function onClose(e:Event):void{ } } }//package Core.Screens.Layers
Section 20
//Board (Core.Screens.Board) package Core.Screens { import framework.Widgets.*; import flash.events.*; import flash.display.*; import Core.model.*; import Core.*; import Core.Screens.Layers.*; import util.sound.*; import flash.utils.*; import mx.effects.easing.*; import Assets.*; import Core.Screens.Dialogs.*; import Core.View.*; import org.flashdevelop.utils.*; public dynamic class Board extends Widget { public var theParent:Main; private var stageBack:StageBack; private var score:int;// = 0 private var _dlgEnd:DialogEnd; private var uiLayer:UILayer; private var lLoader:LevelLoader; private var _dlgStart:DialogStart; private var curLevel:int;// = 0 public var levelLayer:MovieClip; public var nbtn:NavButton; private var mMap:MapView; private var levelView:LevelView; private var sTime:String; private var player:PlayerView; private var coinsCollected:int;// = 0 private var isPause:Boolean;// = false private var levels:Array; public function Board(par:Main, lvl:int){ stageBack = new StageBack(); levelLayer = new MovieClip(); levels = new Array(); nbtn = new NavButton(); super(); this.SetupStartDialog(); curLevel = (lvl - 1); lLoader = new LevelLoader(); this.initLevels(); this.initLayers(); this.initListeners(); this.setNextLevel(); this.SetupEndDialog(); this.uiLayer = new UILayer(); this.uiLayer.x = 0; this.uiLayer.y = 0; this.addChildAt(this.uiLayer, 2); addChild(nbtn); nbtn.x = (730 - (nbtn.width / 2)); nbtn.y = (420 - (nbtn.height / 2)); nbtn.stop(); } private function setNextLevel():void{ levelView = new LevelView(this); levelView.level = getNextLevel(); levelView.updateLevel(); this.levelView.setup(); this.levelView.startRendering(); levelLayer.x = (730 / 2); levelLayer.y = (420 / 2); stageBack.x = (730 / 2); stageBack.y = (420 / 2); levelView.addPlayerView(); if (curLevel == 0){ _dlgStart.ShowDialog(); }; } private function initListeners():void{ addEventListener(MouseEvent.MOUSE_MOVE, mouseMove); addEventListener(MouseEvent.MOUSE_DOWN, mouseDown); addEventListener(MouseEvent.MOUSE_UP, mouseUp); addEventListener(KeyboardEvent.KEY_DOWN, keyDown); addEventListener(KeyboardEvent.KEY_UP, keyUp); } public function onCoinCollected(coinsCollected:int, score:int):void{ this.coinsCollected = coinsCollected; this.score = score; GlobalInfo.instance.PlayCoin(); } public function keyDown(e:KeyboardEvent):void{ } public function mouseMove(evt:MouseEvent):void{ } private function SetupEndDialog():void{ _dlgEnd = new DialogEnd(this); _dlgEnd.SetClick(onNext); } public function mouseUp(evt:MouseEvent):void{ } public function getNextLevel():Level{ return (lLoader.createLevel(levels[curLevel])); } private function SetupStartDialog():void{ _dlgStart = new DialogStart(this); _dlgStart.SetClick(onStart); } public function initLevels():void{ var l1:Bitmap = new Resourcen.instance.LEVEL_1(); var l2:Bitmap = new Resourcen.instance.LEVEL_2(); var l3:Bitmap = new Resourcen.instance.LEVEL_3(); var l4:Bitmap = new Resourcen.instance.LEVEL_4(); var l5:Bitmap = new Resourcen.instance.LEVEL_5(); var l6:Bitmap = new Resourcen.instance.LEVEL_6(); var l7:Bitmap = new Resourcen.instance.LEVEL_7(); var l8:Bitmap = new Resourcen.instance.LEVEL_8(); var l9:Bitmap = new Resourcen.instance.LEVEL_9(); var l10:Bitmap = new Resourcen.instance.LEVEL_10(); var l11:Bitmap = new Resourcen.instance.LEVEL_11(); var l12:Bitmap = new Resourcen.instance.LEVEL_12(); var l13:Bitmap = new Resourcen.instance.LEVEL_13(); var l14:Bitmap = new Resourcen.instance.LEVEL_14(); var l15:Bitmap = new Resourcen.instance.LEVEL_15(); var l16:Bitmap = new Resourcen.instance.LEVEL_16(); var l17:Bitmap = new Resourcen.instance.LEVEL_17(); var l18:Bitmap = new Resourcen.instance.LEVEL_18(); var l19:Bitmap = new Resourcen.instance.LEVEL_19(); var l20:Bitmap = new Resourcen.instance.LEVEL_20(); levels.push(l1.bitmapData); levels.push(l2.bitmapData); levels.push(l3.bitmapData); levels.push(l4.bitmapData); levels.push(l5.bitmapData); levels.push(l6.bitmapData); levels.push(l7.bitmapData); levels.push(l8.bitmapData); levels.push(l9.bitmapData); levels.push(l10.bitmapData); levels.push(l11.bitmapData); levels.push(l12.bitmapData); levels.push(l13.bitmapData); levels.push(l14.bitmapData); levels.push(l15.bitmapData); levels.push(l16.bitmapData); levels.push(l17.bitmapData); levels.push(l18.bitmapData); levels.push(l19.bitmapData); levels.push(l20.bitmapData); } private function onStart(e:Event):void{ _dlgStart.HideDialog(); stage.focus = this; } override public function update(nTime:Number):void{ if (isPause){ return; }; sTime = clockTime((getTimer() - levelView.levelStartTime)); uiLayer.getScoreLayer().updateLayer(((((("Coins: " + coinsCollected) + " Score: ") + score) + " Time: ") + sTime)); } public function removeBoard():void{ } public function levelComplete():void{ SoundController.Instance.stopSound("[object Resourcen_SOUND_FALLING]"); _dlgEnd.setTextInfo(_dlgEnd.txtTime, sTime, 135, 210); _dlgEnd.setTextInfo(_dlgEnd.txtScore, score.toString(), 540, 210); _dlgEnd.setTextInfo(_dlgEnd.txtCoins, coinsCollected.toString(), 325, 210); _dlgEnd.ShowDialog(); isPause = true; } public function rotateLevel(angle:Number):void{ levelLayer.rotation = angle; stageBack.rotation = angle; } public function mouseDown(evt:MouseEvent):void{ } private function initLayers():void{ addChild(stageBack); addChild(levelLayer); stageBack.x = (stageBack.width / 2); stageBack.y = (stageBack.width / 2); } public function onNext(e:Event):void{ _dlgEnd.HideDialog(); stage.focus = this; isPause = false; coinsCollected = 0; removeChild(levelLayer); levelLayer = new MovieClip(); addChild(levelLayer); removeChild(uiLayer); addChild(uiLayer); rotateLevel(0); FlashConnect.trace(curLevel); if (curLevel == 19){ theParent.initMenu(); theParent.removeBoard(); return; }; if (curLevel < 20){ curLevel++; if (GlobalInfo.instance.lev < (curLevel + 1)){ GlobalInfo.instance.lev = (curLevel + 1); GlobalInfo.instance.save(); }; setNextLevel(); }; } public function clockTime(ms:int):String{ var seconds:int = Math.floor((ms / 1000)); var minutes:int = Math.floor((seconds / 60)); seconds = (seconds - (minutes * 60)); var timeString:String = ((minutes.toString() + ":") + String((seconds + 100)).substr(1, 2)); return (timeString); } public function keyUp(e:KeyboardEvent):void{ FlashConnect.trace(e.keyCode); if (e.keyCode == 39){ levelView.rotate(1); } else { if (e.keyCode == 37){ levelView.rotate(-1); }; }; } } }//package Core.Screens
Section 21
//LevelView (Core.Screens.LevelView) package Core.Screens { import flash.events.*; import flash.display.*; import Core.model.*; import flash.geom.*; import util.math.*; import Core.LevelItems.*; import Core.*; import util.sound.*; import com.normsoule.pixelblitz.core.*; import flash.utils.*; import Core.View.*; import org.flashdevelop.utils.*; import Core.View.LevelItems.*; public class LevelView { private var startRotation:Number;// = 0 public var coins:int; private var currentPlayerPosition:Point; public var level:Level; private var fallingSpeed:Number;// = 0 public var score:int; private var currentRotation:Number;// = 0 private var fallingDistance:Number;// = 0 public var rotationStarted:Boolean;// = false public var camera:Camera2D; public var playerView:PlayerView; private var parent:Board; public var levelStartTime:int; private var lastFall:Number;// = 0 public var rotateTo:int; private var fallingDirection:Vector2; private var oldRotation:Number; private var viewMatrix:Grid; public var outofrange; private var rotStart:Number;// = 0 private var viewMovementVector:Vector2; public var levelContainer:Sprite; public var player:Player; private var starsCollected:int; private var rotationSpeed:Number;// = 1 private var rodDirection:Number;// = 0 private var fallenDistance:Number;// = 0 public var isFalling:Boolean;// = false private var isStarted:Boolean;// = false public function LevelView(b:Board){ camera = Camera2D.getInstance(); levelStartTime = getTimer(); super(); parent = b; player = new Player(); setCameraBoundry(new Rectangle(0, 0, 4800, 4880)); } private function calcFallingDistance():int{ var distance:int; var position:Point; var x:int; var y:int; var levelItem:AbstractLevelItem; var movementVector:Vector2 = player.MovementVector; var levelWidth:int = level.Width; var levelHeight:int = level.Height; var maxDistance:int = ((movementVector.x)!=0) ? levelWidth : levelHeight; var i = 1; while (i < maxDistance) { position = new Point(); position.x = (player.Position.x + (movementVector.x * i)); position.y = (player.Position.y + (movementVector.y * i)); if (position.x < 0){ position.x = (position.x + levelWidth); FlashConnect.trace("OUT OF RANGE X"); }; if (position.y < 0){ position.y = (position.y + levelHeight); FlashConnect.trace("OUT OF RANGE Y"); }; x = (position.x % levelWidth); y = (position.y % levelHeight); levelItem = level.getItemAtPosition(x, y); if (levelItem != null){ if ((levelItem is LevelEnder)){ }; if ((levelItem is Coin)){ }; if (levelItem.walkableTest(movementVector)){ player.Position.x = (position.x - movementVector.x); player.Position.y = (position.y - movementVector.y); return (((i - 1) * 32)); }; }; i++; }; return (int.MAX_VALUE); } public function setup():void{ var levelItemView:MovieClip; var x:int; var currentPos:Point; var currentMatrixPos:Point; var item:AbstractLevelItem; this.levelStartTime = getTimer(); this.starsCollected = 0; this.score = 0; var previousPosition:Point = new Point(levelContainer.x, levelContainer.y); var renderingAreaWidth:int = ((this.level.Width)>64) ? 64 : this.level.Width; var renderingAreaHeigth:int = ((this.level.Height)>64) ? 64 : this.level.Height; var y:int = -(uint((renderingAreaHeigth / 2))); while (y < (renderingAreaHeigth / 2)) { x = -(uint((renderingAreaWidth / 2))); while (x < (renderingAreaWidth / 2)) { currentPos = new Point(x, y); currentMatrixPos = new Point(currentPos.x, currentPos.y); while (currentMatrixPos.x < 0) { currentMatrixPos.x = (currentMatrixPos.x + this.level.Width); }; currentMatrixPos.x = (currentMatrixPos.x % this.level.Width); while (currentMatrixPos.y < 0) { currentMatrixPos.y = (currentMatrixPos.y + this.level.Height); }; currentMatrixPos.y = (currentMatrixPos.y % this.level.Height); item = level.getItemAtPosition(currentMatrixPos.x, currentMatrixPos.y); if (item == null){ } else { if (item.view.visible){ item.view.x = ((currentMatrixPos.x - (this.level.Width / 2)) * 32); item.view.y = ((currentMatrixPos.y - (this.level.Height / 2)) * 32); levelContainer.addChild(item.view); }; }; x++; }; y++; }; parent.levelLayer.addChild(levelContainer); this.levelContainer.x = (-((level.StartPosition.x - (this.level.Width / 2))) * 32); this.levelContainer.y = (-((level.StartPosition.y - (this.level.Height / 2))) * 32); } private function onRotate(e:Event):void{ if (rodDirection == 0){ return; }; var t:Number = ((getTimer() - this.rotStart) / 400); var f:Number = (t + ((1 - Math.pow((2 * (0.5 - t)), 2)) * 0.4)); if (t >= 1){ t = 1; this.currentRotation = (this.startRotation + (this.rodDirection * 90)); parent.rotateLevel(this.currentRotation); rotationStarted = false; this.levelContainer.removeEventListener(Event.ENTER_FRAME, onRotate); this.rodDirection = 0; this.onRotationComplete(); return; }; parent.rotateLevel(this.currentRotation); this.currentRotation = (this.startRotation + ((this.rodDirection * 90) * f)); } public function stopFall():void{ var distance:uint; if (this.fallingSpeed != 0){ this.playerView.view.x = ((player.Position.x - (this.level.Width / 2)) * 32); this.playerView.view.y = ((player.Position.y - (this.level.Height / 2)) * 32); this.levelContainer.x = (-((player.Position.x - (this.level.Width / 2))) * 32); this.levelContainer.y = (-((player.Position.y - (this.level.Height / 2))) * 32); distance = uint((this.fallingDistance / 32)); this.fallingDistance = 0; this.fallenDistance = 0; this.fallingSpeed = 0; this.lastFall = 0; playerView.view.gotoAndStop(0); SoundController.Instance.stopSound("[object Resourcen_SOUND_FALLING]"); isFalling = false; GlobalInfo.instance.PlayFalled(); }; } public function setCameraBoundry(r:Rectangle):void{ camera.boundry = r; } public function startFall(direction:Vector2, distance:int):void{ this.fallingDirection = direction; this.fallingDistance = distance; this.fallenDistance = 0; this.lastFall = getTimer(); if (fallingSpeed < 1){ fallingSpeed = 1; }; if (((!((playerView == null))) && (!((playerView.view == null))))){ playerView.view.play(); }; } public function addPlayerView():void{ player.Position = level.StartPosition; playerView = new PlayerView(levelContainer); playerView.view.x = ((level.StartPosition.x - (this.level.Width / 2)) * 32); playerView.view.y = ((level.StartPosition.y - (this.level.Height / 2)) * 32); } public function updateLevel():void{ var width:uint = this.level.Width; var height:uint = this.level.Height; levelContainer = new Sprite(); } private function collectItems():void{ var y:int; var item:AbstractLevelItem; var x1:int; var y1:int; var rcPlayer:Rectangle; var expl:Explosion; var x:int; while (x < level.Width) { y = 0; while (y < level.Height) { item = level.getItemAtPosition(x, y); if (item != null){ x1 = ((this.playerView.view.x / 32) + (this.level.Width / 2)); y1 = ((this.playerView.view.y / 32) + (this.level.Height / 2)); rcPlayer = new Rectangle(x1, y1, 16, 16); if ((((x1 == x)) && ((y1 == y)))){ if ((item is Coin)){ if (item.view.visible){ this.starsCollected++; this.score = (this.score + 20); parent.onCoinCollected(starsCollected, score); expl = new Explosion(levelContainer, playerView.view.x, playerView.view.y); }; item.view.visible = false; }; if ((item is LevelEnder)){ item.view.visible = false; this.onLevelComplete(); }; }; }; y++; }; x++; }; } private function onLevelComplete():void{ levelContainer.removeEventListener(Event.ENTER_FRAME, render); parent.levelComplete(); } public function render(e:Event):void{ var previousPosition:Point = new Point(levelContainer.x, levelContainer.y); this.fall(previousPosition); } public function startRendering():void{ this.fallingDirection = new Vector2(0, 0); this.fallingSpeed = 0; this.currentPlayerPosition = new Point(); this.lastFall = 0; var fallingDistance:int; this.startFall(player.MovementVector, fallingDistance); this.levelContainer.addEventListener(Event.ENTER_FRAME, render); this.fallingSpeed = 24; } public function rotate(dir:int):void{ if (rotationStarted){ return; }; if (isFalling){ if (outofrange == true){ } else { return; }; }; GlobalInfo.instance.PlayRotate(); rodDirection = dir; rotationStarted = dir; rotationStarted = true; this.oldRotation = this.levelContainer.rotation; this.rotStart = getTimer(); this.startRotation = this.currentRotation; this.levelContainer.addEventListener(Event.ENTER_FRAME, onRotate); } public function onRotationComplete():void{ var rotation:Number = currentRotation; level.Rotation = rotation; rotation = ((rotation + 360) % 360); this.playerView.getView().rotation = rotation; if (rotation < 0){ rotation = (360 + rotation); }; if (rotation == 0){ player.MovementVector = Vector2.DOWN_VECTOR; }; if (rotation == 270){ player.MovementVector = Vector2.RIGHT_VECTOR; this.playerView.getView().rotation = (this.playerView.getView().rotation - 180); }; if (rotation == 90){ player.MovementVector = Vector2.LEFT_VECTOR; this.playerView.getView().rotation = (this.playerView.getView().rotation + 180); }; if (rotation == 180){ player.MovementVector = Vector2.UP_VECTOR; }; var fallingDistance:int = this.calcFallingDistance(); this.startFall(player.MovementVector, fallingDistance); isStarted = true; } private function fall(oldPos:Point):void{ if (this.fallingDistance == 0){ isFalling = false; return; }; isFalling = true; if (fallingSpeed < 34){ fallingSpeed = (fallingSpeed + ((getTimer() - this.lastFall) / 20)); }; this.lastFall = getTimer(); if (fallingDistance <= (fallenDistance + uint(fallingSpeed))){ fallingSpeed = (fallingDistance - fallenDistance); }; fallenDistance = (fallenDistance + uint(fallingSpeed)); this.levelContainer.x = (oldPos.x - (fallingDirection.x * uint(fallingSpeed))); this.levelContainer.y = (oldPos.y - (fallingDirection.y * uint(fallingSpeed))); var lastPlayerPosition:Point = new Point(0, 0); lastPlayerPosition.x = this.player.Position.x; lastPlayerPosition.y = this.player.Position.y; currentPlayerPosition.x = -(Math.round(((levelContainer.x / 32) - (level.Width / 2)))); currentPlayerPosition.y = -(Math.round(((levelContainer.y / 32) - (level.Height / 2)))); if (currentPlayerPosition.x >= level.Width){ FlashConnect.trace("out 1"); outofrange = true; this.onLevelComplete(); }; if (currentPlayerPosition.x < 0){ FlashConnect.trace("out 2"); outofrange = true; this.onLevelComplete(); }; if (currentPlayerPosition.y >= level.Height){ FlashConnect.trace("out 3"); outofrange = true; this.onLevelComplete(); }; if (currentPlayerPosition.y < 0){ FlashConnect.trace("out 4"); outofrange = true; this.onLevelComplete(); }; player.Position = currentPlayerPosition; this.playerView.view.x = (this.playerView.view.x + (fallingSpeed * this.player.MovementVector.x)); this.playerView.view.y = (this.playerView.view.y + (fallingSpeed * this.player.MovementVector.y)); GlobalInfo.instance.PlayFalling(); this.collectItems(); if (fallingDistance <= fallenDistance){ this.stopFall(); }; } } }//package Core.Screens
Section 22
//MainMenu (Core.Screens.MainMenu) package Core.Screens { import framework.Widgets.*; import flash.events.*; import flash.display.*; import Core.*; import Core.Screens.Dialogs.*; import UI.*; import flash.net.*; public class MainMenu extends Widget { public var nbutton:NavButton; private var mMore:Button; private var mBtnPlay:Button; public var theParent:Main; private var mBack:Bitmap; public var mParent:DisplayObject; public var dlgSelect:LevelSelect; public function MainMenu(p:Main){ nbutton = new NavButton(); mBack = new Resourcen.instance.IMAGE_MENU(); super(); GlobalInfo.instance.PlayMusic(); mBack.smoothing = true; addChild(mBack); var play:Bitmap = new Resourcen.instance.BUTTON_PLAY(); var more:Bitmap = new Resourcen.instance.BUTTON_MORE(); mBtnPlay = new Button(this, ((730 / 2) - (play.width / 2)), (230 - (play.height / 2)), play, null, this.onPlay); mMore = new Button(this, ((730 / 2) - (more.width / 2)), ((mBtnPlay.y + mBtnPlay.height) + 15), more, null, this.onLogo); dlgSelect = new LevelSelect(p); this.addChild(nbutton); nbutton.stop(); nbutton.x = (730 / 2); nbutton.y = ((mMore.y + mMore.height) + 40); } override public function update(nTime:Number):void{ } public function Remove():void{ } public function onMore(e:Event):void{ } public function onMusic(e:Event):void{ GlobalInfo.instance.isMusic = !(GlobalInfo.instance.isMusic); GlobalInfo.instance.MUSICCHANEL.stop(); if (GlobalInfo.instance.isMusic){ }; } public function onLogo(e:Event):void{ var urlRequest:URLRequest = new URLRequest("http://www.gamesclub.com/"); navigateToURL(urlRequest, "_blank"); } private function PlayMusic():void{ } public function onTime(e:Event):void{ theParent.initBoard(2); theParent.removeMenu(); } public function onPlay(e:Event):void{ if (this.theParent == null){ return; }; removeChild(nbutton); this.dlgSelect.ShowDialog(); } public function onSound(e:Event):void{ GlobalInfo.instance.isSound = !(GlobalInfo.instance.isSound); } } }//package Core.Screens
Section 23
//AbstractLevelItemView (Core.View.LevelItems.AbstractLevelItemView) package Core.View.LevelItems { import flash.display.*; import flash.geom.*; public class AbstractLevelItemView extends MovieClip { protected var viewID:int; private var view:MovieClip; protected var coords:Point; public function AbstractLevelItemView(){ super(); } public function reset():void{ this.visible = true; } public function setCoords(x:uint, y:uint):void{ this.coords = new Point(x, y); } } }//package Core.View.LevelItems
Section 24
//CloudView (Core.View.LevelItems.CloudView) package Core.View.LevelItems { public class CloudView extends AbstractLevelItemView { public function CloudView(){ super(); } } }//package Core.View.LevelItems
Section 25
//CoinView (Core.View.LevelItems.CoinView) package Core.View.LevelItems { public class CoinView extends AbstractLevelItemView { public function CoinView(){ super(); } } }//package Core.View.LevelItems
Section 26
//Explosion (Core.View.LevelItems.Explosion) package Core.View.LevelItems { import flash.events.*; import flash.display.*; public class Explosion extends MovieClip { private var mParent:Sprite; public function Explosion(p:Sprite, px:Number, py:Number){ super(); mParent = p; this.x = px; this.y = py; mParent.addChild(this); this.addEventListener(Event.ENTER_FRAME, onEnter); } public function onEnter(e:Event):void{ if (this.currentFrame == 17){ mParent.removeChild(this); this.removeEventListener(Event.ENTER_FRAME, onEnter); }; } } }//package Core.View.LevelItems
Section 27
//LevelEnderView (Core.View.LevelItems.LevelEnderView) package Core.View.LevelItems { public class LevelEnderView extends AbstractLevelItemView { public function LevelEnderView(){ super(); } } }//package Core.View.LevelItems
Section 28
//LuckView (Core.View.LevelItems.LuckView) package Core.View.LevelItems { public class LuckView extends AbstractLevelItemView { public function LuckView(){ super(); } } }//package Core.View.LevelItems
Section 29
//PlayerClip (Core.View.LevelItems.PlayerClip) package Core.View.LevelItems { import flash.display.*; public class PlayerClip extends MovieClip { public function PlayerClip(){ super(); this.stop(); } } }//package Core.View.LevelItems
Section 30
//MapView (Core.View.MapView) package Core.View { import flash.display.*; public class MapView extends MovieClip { private var mParent:Sprite; private var map:Bitmap; public function MapView(p:Sprite){ super(); mParent = p; this.x = 50; this.y = 360; } public function createMap(b:BitmapData):void{ var j:int; var currentPixel:uint; var red:uint; var green:uint; var blue:uint; var mapSprite:Sprite = new Sprite(); this.graphics.beginFill(0xFFFFFF, 0.6); this.graphics.drawRect(0, 0, 100, 100); this.graphics.endFill(); var startX:int = (50 - (b.width / 2)); var startY:int = (50 - (b.height / 2)); var i:int; while (i < b.width) { j = 0; while (j < b.height) { currentPixel = b.getPixel(i, j); red = ((currentPixel & 0xFF0000) >> 16); green = ((currentPixel & 0xFF00) >> 8); blue = (currentPixel & 0xFF); if ((((((red + green) + blue) < (3 * 0xFF))) && (!((((((green > 250)) && ((blue < 5)))) && ((red < 5))))))){ mapSprite.graphics.beginFill(0); mapSprite.graphics.drawRect((3 * i), (3 * j), 2, 2); mapSprite.graphics.endFill(); }; j++; }; i++; }; this.addChild(mapSprite); mParent.addChild(this); } public function updateMap():void{ } } }//package Core.View
Section 31
//PlayerView (Core.View.PlayerView) package Core.View { import flash.events.*; import flash.display.*; import flash.utils.*; import Core.View.LevelItems.*; public class PlayerView { public var fallingSpeed:Number; public var view:MovieClip; public var lastMove:int; private var parent:Sprite; private var idleTimer:Timer; public var fallingTarget:int; public function PlayerView(p:Sprite){ super(); view = new PlayerClip(); parent = p; parent.addChild(view); } public function playIntroAnimation():void{ view.y = -50; fallingSpeed = 1; fallingTarget = 15; this.view.addEventListener(Event.ENTER_FRAME, fall); } public function setFallingTarget(target:int):void{ fallingTarget = target; this.view.addEventListener(Event.ENTER_FRAME, fall); } public function getView():MovieClip{ return (view); } private function fall(e:Event):void{ view.y = (view.y + fallingSpeed); fallingSpeed++; if (view.y > fallingTarget){ view.y = fallingTarget; this.view.removeEventListener(Event.ENTER_FRAME, fall); }; } } }//package Core.View
Section 32
//GlobalInfo (Core.GlobalInfo) package Core { import util.sound.*; import flash.media.*; import flash.net.*; public class GlobalInfo { public var money:int;// = 85 public var isSound:Boolean;// = true public var MUSIC:Sound; public var time:String;// = "0" public var score:int;// = 0 public var isMusic:Boolean;// = true public var lev:int;// = 1 private var sharedData:SharedObject;// = null public var MUSICCHANEL:SoundChannel; private static var _instance:GlobalInfo; public function GlobalInfo(){ super(); sharedData = SharedObject.getLocal("starGameData"); if (sharedData.data.level == undefined){ lev = 1; } else { lev = sharedData.data.level; }; if (sharedData.data.ismusic == undefined){ isMusic = true; } else { isMusic = sharedData.data.ismusic; }; if (sharedData.data.issound == undefined){ isSound = true; } else { isSound = sharedData.data.issound; }; } public function PlayFalled():void{ if (!isSound){ return; }; var s:Sound = new Resourcen.instance.SOUND_LANDING(); SoundController.Instance.playSound(s, 0, false, 0.6); } public function PlayRotate():void{ if (!isSound){ return; }; var s:Sound = new Resourcen.instance.SOUND_ROTATE(); SoundController.Instance.playSound(s, 0, false, 0.6); } public function PlayFalling():void{ if (!isSound){ return; }; var s:Sound = new Resourcen.instance.SOUND_FALLING(); SoundController.Instance.playSound(s, 0, false, 0.4); } public function PlayCoin():void{ if (!isSound){ return; }; var s:Sound = new Resourcen.instance.SOUND_COIN(); SoundController.Instance.playSound(s, 0, false, 1); } public function StopMusic():void{ SoundController.Instance.stopSound("[object Resourcen_SOUND_MUSIC]", 0.6); } public function PlayMusic():void{ if (!isMusic){ return; }; var s:Sound = new Resourcen.instance.SOUND_MUSIC(); SoundController.Instance.playSound(s, 0, true, 0.7); } public function save():void{ sharedData.data.level = lev; sharedData.data.ismusic = isMusic; sharedData.data.issound = isSound; sharedData.flush(); } public static function get instance():GlobalInfo{ if (GlobalInfo._instance == null){ GlobalInfo._instance = new (GlobalInfo); }; return (GlobalInfo._instance); } } }//package Core
Section 33
//LevelLoader (Core.LevelLoader) package Core { import flash.display.*; import Core.model.*; import flash.geom.*; import Core.LevelItems.*; public class LevelLoader { public var GameItemAssets:Array; private var levelIndex:uint; public function LevelLoader(){ GameItemAssets = new Array(); super(); GameItemAssets.push(new Cloud(1)); GameItemAssets.push(new LevelEnder(1)); GameItemAssets.push(new Coin(1)); GameItemAssets.push(new Luck(1, 0)); GameItemAssets.push(new Luck(1, 90)); GameItemAssets.push(new Luck(1, 180)); GameItemAssets.push(new Luck(1, 270)); } private function mapColorToArrayIndex(r:uint, g:uint, b:uint):int{ var dr:Number; var dg:Number; var db:Number; var d:Number = Number.MAX_VALUE; var nextIndex = -1; var i:int; while (i < GameItemAssets.length) { dr = Math.abs((Number(GameItemAssets[i].r) - r)); dg = Math.abs((Number(GameItemAssets[i].g) - g)); db = Math.abs((Number(GameItemAssets[i].b) - b)); if (((dr + dg) + db) < d){ d = ((dr + dg) + db); nextIndex = i; }; i++; }; return (nextIndex); } public function createLevel(data:BitmapData):Level{ var x:int; var currentPixel:uint; var red:uint; var green:uint; var blue:uint; var index:int; var item:AbstractLevelItem; var level:Level = new Level(this.levelIndex, data.width, data.height); var y:int; while (y < data.height) { x = 0; for (;x < data.width;x++) { currentPixel = data.getPixel(x, y); red = ((currentPixel & 0xFF0000) >> 16); green = ((currentPixel & 0xFF00) >> 8); blue = (currentPixel & 0xFF); if ((((((red + green) + blue) < (3 * 0xFF))) && (!((((((green > 250)) && ((blue < 5)))) && ((red < 5))))))){ index = this.mapColorToArrayIndex(red, green, blue); if (index >= GameItemAssets.length){ continue; }; item = null; switch (GameItemAssets[index].name){ case "cloud": item = new Cloud(index); break; case "levelender": item = new LevelEnder(index); break; case "coin": item = new Coin(index); break; case "luckUp": item = new Luck(index, 0); break; case "luckDown": item = new Luck(index, 180); break; case "luckRight": item = new Luck(index, 90); break; case "luckLeft": item = new Luck(index, 270); break; }; level.setItemAtPosition(x, y, item); }; if ((((((green == 0xFF)) && ((red == 0)))) && ((blue == 0)))){ level.StartPosition = new Point(x, y); }; }; y++; }; return (level); } } }//package Core
Section 34
//Resourcen (Core.Resourcen) package Core { import flash.text.*; public class Resourcen { public var IMAGE_BALKE:Class; public var IMAGE_BUTTON_OK:Class; public var IMAGE_BACK_GREEN:Class; public var IMAGE_CLOUD:Class; public var LEVEL_1:Class; public var LEVEL_2:Class; public var IMAGE_BTN_CLOSE:Class; public var LEVEL_4:Class; public var LEVEL_5:Class; public var LEVEL_6:Class; public var LEVEL_7:Class; public var LEVEL_8:Class; public var LEVEL_9:Class; public var LEVEL_3:Class; public var textFmt:TextFormat; public var BUTTON_PLAY:Class; public var IMAGE_LEVEL_START:Class; public var SOUND_FALLING:Class; public var SOUND_LANDING:Class; public var IMAGE_BTN_SOUND:Class; public var SOUND_ROTATE:Class; public var SCOREBAR:Class; public var MOVIE_BACK:Class; public var BUTTON_SCORE:Class; public var IMAGE_DIALOG_COMPLETE:Class; public var SOUND_MUSIC:Class; public var IMAGE_LEVEL_SELECT:Class; public var IMAGE_BUTTON_RECT:Class; public var LEVEL_10:Class; public var LEVEL_11:Class; public var LEVEL_12:Class; public var LEVEL_13:Class; public var LEVEL_14:Class; public var LEVEL_15:Class; public var LEVEL_16:Class; public var LEVEL_17:Class; public var LEVEL_18:Class; public var LEVEL_19:Class; public var IMAGE_STAR:Class; public var SOUND_COIN:Class; public var IMAGE_GREAT:Class; public var BUTTON_MORE:Class; public var LEVEL_20:Class; public var IMAGE_MENU:Class; private static var _instance:Resourcen; public function Resourcen(){ SCOREBAR = Resourcen_SCOREBAR; MOVIE_BACK = Resourcen_MOVIE_BACK; IMAGE_BACK_GREEN = Resourcen_IMAGE_BACK_GREEN; IMAGE_CLOUD = Resourcen_IMAGE_CLOUD; LEVEL_1 = Resourcen_LEVEL_1; LEVEL_2 = Resourcen_LEVEL_2; LEVEL_3 = Resourcen_LEVEL_3; LEVEL_4 = Resourcen_LEVEL_4; LEVEL_5 = Resourcen_LEVEL_5; LEVEL_6 = Resourcen_LEVEL_6; LEVEL_7 = Resourcen_LEVEL_7; LEVEL_8 = Resourcen_LEVEL_8; LEVEL_9 = Resourcen_LEVEL_9; LEVEL_10 = Resourcen_LEVEL_10; LEVEL_11 = Resourcen_LEVEL_11; LEVEL_12 = Resourcen_LEVEL_12; LEVEL_13 = Resourcen_LEVEL_13; LEVEL_14 = Resourcen_LEVEL_14; LEVEL_15 = Resourcen_LEVEL_15; LEVEL_16 = Resourcen_LEVEL_16; LEVEL_17 = Resourcen_LEVEL_17; LEVEL_18 = Resourcen_LEVEL_18; LEVEL_19 = Resourcen_LEVEL_19; LEVEL_20 = Resourcen_LEVEL_20; IMAGE_BTN_SOUND = Resourcen_IMAGE_BTN_SOUND; IMAGE_BTN_CLOSE = Resourcen_IMAGE_BTN_CLOSE; IMAGE_BALKE = Resourcen_IMAGE_BALKE; SOUND_COIN = Resourcen_SOUND_COIN; SOUND_LANDING = Resourcen_SOUND_LANDING; SOUND_ROTATE = Resourcen_SOUND_ROTATE; SOUND_FALLING = Resourcen_SOUND_FALLING; SOUND_MUSIC = Resourcen_SOUND_MUSIC; IMAGE_GREAT = Resourcen_IMAGE_GREAT; IMAGE_STAR = Resourcen_IMAGE_STAR; IMAGE_MENU = Resourcen_IMAGE_MENU; BUTTON_PLAY = Resourcen_BUTTON_PLAY; BUTTON_MORE = Resourcen_BUTTON_MORE; BUTTON_SCORE = Resourcen_BUTTON_SCORE; IMAGE_DIALOG_COMPLETE = Resourcen_IMAGE_DIALOG_COMPLETE; IMAGE_BUTTON_OK = Resourcen_IMAGE_BUTTON_OK; IMAGE_LEVEL_SELECT = Resourcen_IMAGE_LEVEL_SELECT; IMAGE_LEVEL_START = Resourcen_IMAGE_LEVEL_START; IMAGE_BUTTON_RECT = Resourcen_IMAGE_BUTTON_RECT; textFmt = new TextFormat("Tahoma", 13, 0xFFFFFF, "bold"); super(); } public static function get instance():Resourcen{ if (Resourcen._instance == null){ Resourcen._instance = new (Resourcen); }; return (Resourcen._instance); } } }//package Core
Section 35
//Resourcen_BUTTON_MORE (Core.Resourcen_BUTTON_MORE) package Core { import mx.core.*; public class Resourcen_BUTTON_MORE extends BitmapAsset { } }//package Core
Section 36
//Resourcen_BUTTON_PLAY (Core.Resourcen_BUTTON_PLAY) package Core { import mx.core.*; public class Resourcen_BUTTON_PLAY extends BitmapAsset { } }//package Core
Section 37
//Resourcen_BUTTON_SCORE (Core.Resourcen_BUTTON_SCORE) package Core { import mx.core.*; public class Resourcen_BUTTON_SCORE extends BitmapAsset { } }//package Core
Section 38
//Resourcen_IMAGE_BACK_GREEN (Core.Resourcen_IMAGE_BACK_GREEN) package Core { import mx.core.*; public class Resourcen_IMAGE_BACK_GREEN extends BitmapAsset { } }//package Core
Section 39
//Resourcen_IMAGE_BALKE (Core.Resourcen_IMAGE_BALKE) package Core { import mx.core.*; public class Resourcen_IMAGE_BALKE extends BitmapAsset { } }//package Core
Section 40
//Resourcen_IMAGE_BTN_CLOSE (Core.Resourcen_IMAGE_BTN_CLOSE) package Core { import mx.core.*; public class Resourcen_IMAGE_BTN_CLOSE extends BitmapAsset { } }//package Core
Section 41
//Resourcen_IMAGE_BTN_SOUND (Core.Resourcen_IMAGE_BTN_SOUND) package Core { import mx.core.*; public class Resourcen_IMAGE_BTN_SOUND extends BitmapAsset { } }//package Core
Section 42
//Resourcen_IMAGE_BUTTON_OK (Core.Resourcen_IMAGE_BUTTON_OK) package Core { import mx.core.*; public class Resourcen_IMAGE_BUTTON_OK extends BitmapAsset { } }//package Core
Section 43
//Resourcen_IMAGE_BUTTON_RECT (Core.Resourcen_IMAGE_BUTTON_RECT) package Core { import mx.core.*; public class Resourcen_IMAGE_BUTTON_RECT extends BitmapAsset { } }//package Core
Section 44
//Resourcen_IMAGE_CLOUD (Core.Resourcen_IMAGE_CLOUD) package Core { import flash.display.*; import mx.core.*; public class Resourcen_IMAGE_CLOUD extends SpriteAsset { public var mText:DisplayObject; } }//package Core
Section 45
//Resourcen_IMAGE_DIALOG_COMPLETE (Core.Resourcen_IMAGE_DIALOG_COMPLETE) package Core { import mx.core.*; public class Resourcen_IMAGE_DIALOG_COMPLETE extends BitmapAsset { } }//package Core
Section 46
//Resourcen_IMAGE_GREAT (Core.Resourcen_IMAGE_GREAT) package Core { import mx.core.*; public class Resourcen_IMAGE_GREAT extends BitmapAsset { } }//package Core
Section 47
//Resourcen_IMAGE_LEVEL_SELECT (Core.Resourcen_IMAGE_LEVEL_SELECT) package Core { import mx.core.*; public class Resourcen_IMAGE_LEVEL_SELECT extends BitmapAsset { } }//package Core
Section 48
//Resourcen_IMAGE_LEVEL_START (Core.Resourcen_IMAGE_LEVEL_START) package Core { import mx.core.*; public class Resourcen_IMAGE_LEVEL_START extends BitmapAsset { } }//package Core
Section 49
//Resourcen_IMAGE_MENU (Core.Resourcen_IMAGE_MENU) package Core { import mx.core.*; public class Resourcen_IMAGE_MENU extends BitmapAsset { } }//package Core
Section 50
//Resourcen_IMAGE_STAR (Core.Resourcen_IMAGE_STAR) package Core { import mx.core.*; public class Resourcen_IMAGE_STAR extends BitmapAsset { } }//package Core
Section 51
//Resourcen_LEVEL_1 (Core.Resourcen_LEVEL_1) package Core { import mx.core.*; public class Resourcen_LEVEL_1 extends BitmapAsset { } }//package Core
Section 52
//Resourcen_LEVEL_10 (Core.Resourcen_LEVEL_10) package Core { import mx.core.*; public class Resourcen_LEVEL_10 extends BitmapAsset { } }//package Core
Section 53
//Resourcen_LEVEL_11 (Core.Resourcen_LEVEL_11) package Core { import mx.core.*; public class Resourcen_LEVEL_11 extends BitmapAsset { } }//package Core
Section 54
//Resourcen_LEVEL_12 (Core.Resourcen_LEVEL_12) package Core { import mx.core.*; public class Resourcen_LEVEL_12 extends BitmapAsset { } }//package Core
Section 55
//Resourcen_LEVEL_13 (Core.Resourcen_LEVEL_13) package Core { import mx.core.*; public class Resourcen_LEVEL_13 extends BitmapAsset { } }//package Core
Section 56
//Resourcen_LEVEL_14 (Core.Resourcen_LEVEL_14) package Core { import mx.core.*; public class Resourcen_LEVEL_14 extends BitmapAsset { } }//package Core
Section 57
//Resourcen_LEVEL_15 (Core.Resourcen_LEVEL_15) package Core { import mx.core.*; public class Resourcen_LEVEL_15 extends BitmapAsset { } }//package Core
Section 58
//Resourcen_LEVEL_16 (Core.Resourcen_LEVEL_16) package Core { import mx.core.*; public class Resourcen_LEVEL_16 extends BitmapAsset { } }//package Core
Section 59
//Resourcen_LEVEL_17 (Core.Resourcen_LEVEL_17) package Core { import mx.core.*; public class Resourcen_LEVEL_17 extends BitmapAsset { } }//package Core
Section 60
//Resourcen_LEVEL_18 (Core.Resourcen_LEVEL_18) package Core { import mx.core.*; public class Resourcen_LEVEL_18 extends BitmapAsset { } }//package Core
Section 61
//Resourcen_LEVEL_19 (Core.Resourcen_LEVEL_19) package Core { import mx.core.*; public class Resourcen_LEVEL_19 extends BitmapAsset { } }//package Core
Section 62
//Resourcen_LEVEL_2 (Core.Resourcen_LEVEL_2) package Core { import mx.core.*; public class Resourcen_LEVEL_2 extends BitmapAsset { } }//package Core
Section 63
//Resourcen_LEVEL_20 (Core.Resourcen_LEVEL_20) package Core { import mx.core.*; public class Resourcen_LEVEL_20 extends BitmapAsset { } }//package Core
Section 64
//Resourcen_LEVEL_3 (Core.Resourcen_LEVEL_3) package Core { import mx.core.*; public class Resourcen_LEVEL_3 extends BitmapAsset { } }//package Core
Section 65
//Resourcen_LEVEL_4 (Core.Resourcen_LEVEL_4) package Core { import mx.core.*; public class Resourcen_LEVEL_4 extends BitmapAsset { } }//package Core
Section 66
//Resourcen_LEVEL_5 (Core.Resourcen_LEVEL_5) package Core { import mx.core.*; public class Resourcen_LEVEL_5 extends BitmapAsset { } }//package Core
Section 67
//Resourcen_LEVEL_6 (Core.Resourcen_LEVEL_6) package Core { import mx.core.*; public class Resourcen_LEVEL_6 extends BitmapAsset { } }//package Core
Section 68
//Resourcen_LEVEL_7 (Core.Resourcen_LEVEL_7) package Core { import mx.core.*; public class Resourcen_LEVEL_7 extends BitmapAsset { } }//package Core
Section 69
//Resourcen_LEVEL_8 (Core.Resourcen_LEVEL_8) package Core { import mx.core.*; public class Resourcen_LEVEL_8 extends BitmapAsset { } }//package Core
Section 70
//Resourcen_LEVEL_9 (Core.Resourcen_LEVEL_9) package Core { import mx.core.*; public class Resourcen_LEVEL_9 extends BitmapAsset { } }//package Core
Section 71
//Resourcen_MOVIE_BACK (Core.Resourcen_MOVIE_BACK) package Core { import flash.display.*; import mx.core.*; public class Resourcen_MOVIE_BACK extends SpriteAsset { public var mText:DisplayObject; } }//package Core
Section 72
//Resourcen_SCOREBAR (Core.Resourcen_SCOREBAR) package Core { import flash.display.*; import mx.core.*; public class Resourcen_SCOREBAR extends SpriteAsset { public var mText:DisplayObject; } }//package Core
Section 73
//Resourcen_SOUND_COIN (Core.Resourcen_SOUND_COIN) package Core { import flash.display.*; import mx.core.*; public class Resourcen_SOUND_COIN extends SoundAsset { public var mText:DisplayObject; } }//package Core
Section 74
//Resourcen_SOUND_FALLING (Core.Resourcen_SOUND_FALLING) package Core { import flash.display.*; import mx.core.*; public class Resourcen_SOUND_FALLING extends SoundAsset { public var mText:DisplayObject; } }//package Core
Section 75
//Resourcen_SOUND_LANDING (Core.Resourcen_SOUND_LANDING) package Core { import flash.display.*; import mx.core.*; public class Resourcen_SOUND_LANDING extends SoundAsset { public var mText:DisplayObject; } }//package Core
Section 76
//Resourcen_SOUND_MUSIC (Core.Resourcen_SOUND_MUSIC) package Core { import flash.display.*; import mx.core.*; public class Resourcen_SOUND_MUSIC extends SoundAsset { public var mText:DisplayObject; } }//package Core
Section 77
//Resourcen_SOUND_ROTATE (Core.Resourcen_SOUND_ROTATE) package Core { import flash.display.*; import mx.core.*; public class Resourcen_SOUND_ROTATE extends SoundAsset { public var mText:DisplayObject; } }//package Core
Section 78
//IWidget (framework.Widgets.IWidget) package framework.Widgets { import flash.events.*; public interface IWidget extends IEventDispatcher { function onCollideDetected(_arg1:int, _arg2:Number, _arg3:Number):void; function get currentScreen():IWidget; function get parentScreen():IWidget; function update(:Number):void; function setWidget(:Class):void; function dispose():void; function onCollide(_arg1:Number, _arg2:Number):void; } }//package framework.Widgets
Section 79
//Root (framework.Widgets.Root) package framework.Widgets { import flash.display.*; public class Root extends Sprite { public function Root(){ super(); } } }//package framework.Widgets
Section 80
//Widget (framework.Widgets.Widget) package framework.Widgets { import flash.display.*; public class Widget extends MovieClip implements IWidget { public function Widget(){ super(); } public function onCollideDetected(cType:int, x_:Number, y_:Number):void{ } public function update(nTime:Number):void{ } public function get currentScreen():IWidget{ return (null); } public function setWidget(widget:Class):void{ } public function dispose():void{ } public function get parentScreen():IWidget{ return (null); } public function onCollide(x_:Number, y_:Number):void{ } } }//package framework.Widgets
Section 81
//WidgetManager (framework.Widgets.WidgetManager) package framework.Widgets { public class WidgetManager { private var parent:Root; private var widgets:Array; private static var _instance:WidgetManager; public function WidgetManager(){ super(); widgets = new Array(); } public function addWidget(w:Widget):void{ widgets.push(w); parent.addChild(w); } public function removeWidget(w:Widget):void{ var w1:Widget; parent.removeChild(w); var i:int; while (i < widgets.length) { w1 = widgets[i]; if (w1 == w){ widgets.splice(i, 1); break; }; i++; }; } public function update(nTime:Number):void{ var w:Widget; var i:int; while (i < widgets.length) { w = widgets[i]; w.update(nTime); i++; }; } public function SetParent(r:Root):void{ parent = r; } public static function get instance():WidgetManager{ if (WidgetManager._instance == null){ WidgetManager._instance = new (WidgetManager); }; return (WidgetManager._instance); } } }//package framework.Widgets
Section 82
//BitmapAsset (mx.core.BitmapAsset) package mx.core { import flash.display.*; public class BitmapAsset extends FlexBitmap implements IFlexAsset, IFlexDisplayObject { mx_internal static const VERSION:String = "3.5.0.12683"; public function BitmapAsset(bitmapData:BitmapData=null, pixelSnapping:String="auto", smoothing:Boolean=false){ super(bitmapData, pixelSnapping, smoothing); } public function get measuredWidth():Number{ if (bitmapData){ return (bitmapData.width); }; return (0); } public function get measuredHeight():Number{ if (bitmapData){ return (bitmapData.height); }; return (0); } public function setActualSize(newWidth:Number, newHeight:Number):void{ width = newWidth; height = newHeight; } public function move(x:Number, y:Number):void{ this.x = x; this.y = y; } } }//package mx.core
Section 83
//EdgeMetrics (mx.core.EdgeMetrics) package mx.core { public class EdgeMetrics { public var top:Number; public var left:Number; public var bottom:Number; public var right:Number; mx_internal static const VERSION:String = "3.5.0.12683"; public static const EMPTY:EdgeMetrics = new EdgeMetrics(0, 0, 0, 0); ; public function EdgeMetrics(left:Number=0, top:Number=0, right:Number=0, bottom:Number=0){ super(); this.left = left; this.top = top; this.right = right; this.bottom = bottom; } public function clone():EdgeMetrics{ return (new EdgeMetrics(left, top, right, bottom)); } } }//package mx.core
Section 84
//FlexBitmap (mx.core.FlexBitmap) package mx.core { import flash.display.*; import mx.utils.*; public class FlexBitmap extends Bitmap { mx_internal static const VERSION:String = "3.5.0.12683"; public function FlexBitmap(bitmapData:BitmapData=null, pixelSnapping:String="auto", smoothing:Boolean=false){ var bitmapData = bitmapData; var pixelSnapping = pixelSnapping; var smoothing = smoothing; super(bitmapData, pixelSnapping, smoothing); name = NameUtil.createUniqueName(this); //unresolved jump var _slot1 = e; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 85
//FlexSprite (mx.core.FlexSprite) package mx.core { import flash.display.*; import mx.utils.*; public class FlexSprite extends Sprite { mx_internal static const VERSION:String = "3.5.0.12683"; public function FlexSprite(){ super(); name = NameUtil.createUniqueName(this); //unresolved jump var _slot1 = e; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 86
//FontAsset (mx.core.FontAsset) package mx.core { import flash.text.*; public class FontAsset extends Font implements IFlexAsset { mx_internal static const VERSION:String = "3.5.0.12683"; public function FontAsset(){ super(); } } }//package mx.core
Section 87
//IBorder (mx.core.IBorder) package mx.core { public interface IBorder { function get borderMetrics():EdgeMetrics; } }//package mx.core
Section 88
//IFlexAsset (mx.core.IFlexAsset) package mx.core { public interface IFlexAsset { } }//package mx.core
Section 89
//IFlexDisplayObject (mx.core.IFlexDisplayObject) package mx.core { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.accessibility.*; public interface IFlexDisplayObject extends IBitmapDrawable, IEventDispatcher { function get visible():Boolean; function get rotation():Number; function localToGlobal(void:Point):Point; function get name():String; function set width(flash.display:Number):void; function get measuredHeight():Number; function get blendMode():String; function get scale9Grid():Rectangle; function set name(flash.display:String):void; function set scaleX(flash.display:Number):void; function set scaleY(flash.display:Number):void; function get measuredWidth():Number; function get accessibilityProperties():AccessibilityProperties; function set scrollRect(flash.display:Rectangle):void; function get cacheAsBitmap():Boolean; function globalToLocal(void:Point):Point; function get height():Number; function set blendMode(flash.display:String):void; function get parent():DisplayObjectContainer; function getBounds(String:DisplayObject):Rectangle; function get opaqueBackground():Object; function set scale9Grid(flash.display:Rectangle):void; function setActualSize(_arg1:Number, _arg2:Number):void; function set alpha(flash.display:Number):void; function set accessibilityProperties(flash.display:AccessibilityProperties):void; function get width():Number; function hitTestPoint(_arg1:Number, _arg2:Number, _arg3:Boolean=false):Boolean; function set cacheAsBitmap(flash.display:Boolean):void; function get scaleX():Number; function get scaleY():Number; function get scrollRect():Rectangle; function get mouseX():Number; function get mouseY():Number; function set height(flash.display:Number):void; function set mask(flash.display:DisplayObject):void; function getRect(String:DisplayObject):Rectangle; function get alpha():Number; function set transform(flash.display:Transform):void; function move(_arg1:Number, _arg2:Number):void; function get loaderInfo():LoaderInfo; function get root():DisplayObject; function hitTestObject(mx.core:IFlexDisplayObject/mx.core:IFlexDisplayObject:stage/get:DisplayObject):Boolean; function set opaqueBackground(flash.display:Object):void; function set visible(flash.display:Boolean):void; function get mask():DisplayObject; function set x(flash.display:Number):void; function set y(flash.display:Number):void; function get transform():Transform; function set filters(flash.display:Array):void; function get x():Number; function get y():Number; function get filters():Array; function set rotation(flash.display:Number):void; function get stage():Stage; } }//package mx.core
Section 90
//IRepeaterClient (mx.core.IRepeaterClient) package mx.core { public interface IRepeaterClient { function get instanceIndices():Array; function set instanceIndices(C:\autobuild\3.5.0\frameworks\projects\framework\src;mx\core;IRepeaterClient.as:Array):void; function get isDocument():Boolean; function set repeaters(C:\autobuild\3.5.0\frameworks\projects\framework\src;mx\core;IRepeaterClient.as:Array):void; function initializeRepeaterArrays(C:\autobuild\3.5.0\frameworks\projects\framework\src;mx\core;IRepeaterClient.as:IRepeaterClient):void; function get repeaters():Array; function set repeaterIndices(C:\autobuild\3.5.0\frameworks\projects\framework\src;mx\core;IRepeaterClient.as:Array):void; function get repeaterIndices():Array; } }//package mx.core
Section 91
//mx_internal (mx.core.mx_internal) package mx.core { public namespace mx_internal = "http://www.adobe.com/2006/flex/mx/internal"; }//package mx.core
Section 92
//SoundAsset (mx.core.SoundAsset) package mx.core { import flash.media.*; public class SoundAsset extends Sound implements IFlexAsset { mx_internal static const VERSION:String = "3.5.0.12683"; public function SoundAsset(){ super(); } } }//package mx.core
Section 93
//SpriteAsset (mx.core.SpriteAsset) package mx.core { public class SpriteAsset extends FlexSprite implements IFlexAsset, IFlexDisplayObject, IBorder { private var _measuredHeight:Number; private var _measuredWidth:Number; mx_internal static const VERSION:String = "3.5.0.12683"; public function SpriteAsset(){ super(); _measuredWidth = width; _measuredHeight = height; } public function get measuredWidth():Number{ return (_measuredWidth); } public function get measuredHeight():Number{ return (_measuredHeight); } public function setActualSize(newWidth:Number, newHeight:Number):void{ width = newWidth; height = newHeight; } public function move(x:Number, y:Number):void{ this.x = x; this.y = y; } public function get borderMetrics():EdgeMetrics{ if (scale9Grid == null){ return (EdgeMetrics.EMPTY); }; return (new EdgeMetrics(scale9Grid.left, scale9Grid.top, Math.ceil((measuredWidth - scale9Grid.right)), Math.ceil((measuredHeight - scale9Grid.bottom)))); } } }//package mx.core
Section 94
//Back (mx.effects.easing.Back) package mx.effects.easing { import mx.core.*; public class Back { mx_internal static const VERSION:String = "3.5.0.12683"; public function Back(){ super(); } public static function easeIn(t:Number, b:Number, c:Number, d:Number, s:Number=0):Number{ if (!s){ s = 1.70158; }; t = (t / d); return (((((c * t) * t) * (((s + 1) * t) - s)) + b)); } public static function easeInOut(t:Number, b:Number, c:Number, d:Number, s:Number=0):Number{ if (!s){ s = 1.70158; }; t = (t / (d / 2)); if (t < 1){ s = (s * 1.525); return ((((c / 2) * ((t * t) * (((s + 1) * t) - s))) + b)); }; t = (t - 2); s = (s * 1.525); return ((((c / 2) * (((t * t) * (((s + 1) * t) + s)) + 2)) + b)); } public static function easeOut(t:Number, b:Number, c:Number, d:Number, s:Number=0):Number{ if (!s){ s = 1.70158; }; t = ((t / d) - 1); return (((c * (((t * t) * (((s + 1) * t) + s)) + 1)) + b)); } } }//package mx.effects.easing
Section 95
//NameUtil (mx.utils.NameUtil) package mx.utils { import flash.display.*; import mx.core.*; import flash.utils.*; public class NameUtil { mx_internal static const VERSION:String = "3.5.0.12683"; private static var counter:int = 0; public function NameUtil(){ super(); } public static function displayObjectToString(displayObject:DisplayObject):String{ var result:String; var o:DisplayObject; var s:String; var indices:Array; var displayObject = displayObject; o = displayObject; while (o != null) { if (((((o.parent) && (o.stage))) && ((o.parent == o.stage)))){ break; }; s = o.name; if ((o is IRepeaterClient)){ indices = IRepeaterClient(o).instanceIndices; if (indices){ s = (s + (("[" + indices.join("][")) + "]")); }; }; result = ((result == null)) ? s : ((s + ".") + result); o = o.parent; }; //unresolved jump var _slot1 = e; return (result); } public static function createUniqueName(object:Object):String{ if (!object){ return (null); }; var name:String = getQualifiedClassName(object); var index:int = name.indexOf("::"); if (index != -1){ name = name.substr((index + 2)); }; var charCode:int = name.charCodeAt((name.length - 1)); if ((((charCode >= 48)) && ((charCode <= 57)))){ name = (name + "_"); }; return ((name + counter++)); } } }//package mx.utils
Section 96
//FlashConnect (org.flashdevelop.utils.FlashConnect) package org.flashdevelop.utils { import flash.events.*; import flash.xml.*; import flash.utils.*; import flash.net.*; public class FlashConnect { public static var onReturnData:Function; public static var port:Number = 1978; private static var interval:Number; private static var messages:Array; public static var onConnection:Function; public static var host:String = "localhost"; public static var status:Number = 0; private static var socket:XMLSocket; public static var limit:Number = 1000; private static var counter:Number; public function FlashConnect(){ super(); } private static function onIOError(event:IOErrorEvent):void{ FlashConnect.status = -1; if (FlashConnect.onConnection != null){ FlashConnect.onConnection(); }; } public static function atrace(... _args):void{ var result:String = _args.join(","); var message:XMLNode = createMsgNode(result, TraceLevel.DEBUG); FlashConnect.send(message); } private static function createMsgNode(message:String, level:Number):XMLNode{ if (isNaN(level)){ level = TraceLevel.DEBUG; }; var msgNode:XMLNode = new XMLNode(1, null); var txtNode:XMLNode = new XMLNode(3, encodeURI(message)); msgNode.attributes.state = level.toString(); msgNode.attributes.cmd = "trace"; msgNode.nodeName = "message"; msgNode.appendChild(txtNode); return (msgNode); } public static function send(message:XMLNode):void{ if (messages == null){ initialize(); }; messages.push(message); } private static function onSecurityError(event:SecurityErrorEvent):void{ FlashConnect.status = -1; if (FlashConnect.onConnection != null){ FlashConnect.onConnection(); }; } public static function flush():Boolean{ if (status){ sendStack(); return (true); }; return (false); } public static function trace(value:Object, level:Number=1):void{ var msgNode:XMLNode = createMsgNode(value.toString(), level); FlashConnect.send(msgNode); } private static function onConnect(event:Event):void{ FlashConnect.status = 1; if (FlashConnect.onConnection != null){ FlashConnect.onConnection(); }; } public static function initialize():int{ if (socket){ return (status); }; counter = 0; messages = new Array(); socket = new XMLSocket(); socket.addEventListener(DataEvent.DATA, onData); socket.addEventListener(Event.CONNECT, onConnect); socket.addEventListener(IOErrorEvent.IO_ERROR, onIOError); socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecurityError); interval = setInterval(sendStack, 50); socket.connect(host, port); return (status); } private static function sendStack():void{ var message:XMLDocument; var rootNode:XMLNode; var msg:String; var errorNode:XMLNode; var msgNode:XMLNode; if ((((messages.length > 0)) && ((status == 1)))){ message = new XMLDocument(); rootNode = message.createElement("flashconnect"); while (messages.length != 0) { counter++; if (counter > limit){ clearInterval(interval); msg = new String("FlashConnect aborted. You have reached the limit of maximum messages."); errorNode = createMsgNode(msg, TraceLevel.ERROR); rootNode.appendChild(errorNode); break; } else { msgNode = XMLNode(messages.shift()); rootNode.appendChild(msgNode); }; }; message.appendChild(rootNode); socket.send(message); }; } private static function onData(event:DataEvent):void{ FlashConnect.status = 1; if (FlashConnect.onReturnData != null){ FlashConnect.onReturnData(event.data); }; } public static function mtrace(value:Object, method:String, path:String, line:Number):void{ var fixed:String = path.split("/").join("\\"); var formatted:String = ((((fixed + ":") + line) + ":") + value); FlashConnect.trace(formatted, TraceLevel.DEBUG); } } }//package org.flashdevelop.utils
Section 97
//TraceLevel (org.flashdevelop.utils.TraceLevel) package org.flashdevelop.utils { public class TraceLevel { public static const DEBUG:Number = 1; public static const FATAL:Number = 4; public static const WARNING:Number = 2; public static const INFO:Number = 0; public static const ERROR:Number = 3; public function TraceLevel(){ super(); } } }//package org.flashdevelop.utils
Section 98
//Button (UI.Button) package UI { import flash.events.*; import flash.display.*; public class Button extends Sprite { private var mButtonSprite:Bitmap;// = null private var mDisabled:Boolean;// = false private var mParent:Sprite; private var mButtonOverSprite:Bitmap;// = null public function Button(parentSprite:Sprite, px:Number, py:Number, btnSprite:Bitmap, btnOverSprite:Bitmap=null, f:Function=null){ super(); mParent = parentSprite; mButtonSprite = btnSprite; mButtonSprite.smoothing = true; if (btnOverSprite != null){ mButtonOverSprite = btnOverSprite; mButtonOverSprite.smoothing = true; }; this.buttonMode = true; addChild(mButtonSprite); if (btnOverSprite != null){ this.addChild(mButtonOverSprite); this.addEventListener(MouseEvent.MOUSE_OVER, onOver); this.addEventListener(MouseEvent.MOUSE_OUT, onOut); }; if (f != null){ addEventListener(MouseEvent.CLICK, f); }; this.x = px; this.y = py; mParent.addChild(this); } public function IsDisabled():Boolean{ return (mDisabled); } private function onOut(e:Event):void{ if (mButtonOverSprite == null){ return; }; removeChild(mButtonOverSprite); addChild(mButtonSprite); } private function play():void{ } private function onOver(e:Event):void{ if (mDisabled){ return; }; play(); if (mButtonOverSprite == null){ return; }; removeChild(mButtonSprite); addChild(mButtonOverSprite); } public function SetDisabled(d:Boolean):void{ mDisabled = d; visible = !(d); } } }//package UI
Section 99
//Grid (util.math.Grid) package util.math { import org.flashdevelop.utils.*; public class Grid { private var m:Array; public function Grid(width:uint, heigth:uint){ super(); m = new Array(width); var i:int; while (i < m.length) { m[i] = new Array(heigth); i++; }; } public function getField(x:uint, y:uint):Object{ var x = x; var y = y; return (m[x][y]); //unresolved jump var _slot1 = e; FlashConnect.trace(((("Error: x " + x) + " y: ") + y)); return (null); } public function get Width():uint{ return (m.length); } public function get Height():uint{ if (m[0] == null){ return (0); }; return (m[0].length); } public function setField(x:uint, y:uint, item:Object):void{ this.m[x][y] = item; } } }//package util.math
Section 100
//Vector2 (util.math.Vector2) package util.math { import flash.geom.*; public class Vector2 extends Point { public static const DOWN_VECTOR:Vector2 = new Vector2(0, 1); ; public static const RIGHT_VECTOR:Vector2 = new Vector2(-1, 0); ; public static const UP_VECTOR:Vector2 = new Vector2(0, -1); ; public static const LEFT_VECTOR:Vector2 = new Vector2(1, 0); ; public function Vector2(... _args){ var args = _args; super(); if (args.length == 2){ this.x = (args[0].x - args[1].x); this.y = (args[0].y - args[1].y); return; //unresolved jump var _slot1 = e; this.x = args[0]; this.y = args[1]; //unresolved jump var _slot1 = e2; return; }; } public function scale(factor:Number):Vector2{ return (new Vector2((this.x * factor), (this.y * factor))); } public function get Angle():Number{ if (this.x <= 0){ return (((Math.acos(this.Normal.y) * 180) / Math.PI)); }; return ((-(((Math.acos(this.Normal.y) * 180) / Math.PI)) + 360)); } public function rotate(angle:Number):void{ x = ((x * Math.cos(angle)) - (y * Math.sin(angle))); y = ((y * Math.cos(angle)) + (x * Math.sin(angle))); } public function get Length():Number{ return (Math.sqrt((Math.pow(this.x, 2) + Math.pow(this.y, 2)))); } public function get Normal():Vector2{ var length:Number = this.Length; return (new Vector2((this.x / length), (this.y / length))); } } }//package util.math
Section 101
//SoundController (util.sound.SoundController) package util.sound { import flash.events.*; import flash.media.*; import flash.utils.*; public class SoundController { private var loops:Dictionary; private var playingSounds:Array; private var defaultVolumes:Object; private var volume:Number; private var fadingSounds:Dictionary; private var soundChannels:Object; private static var instance:SoundController; public function SoundController(){ super(); this.playingSounds = new Array(); this.soundChannels = new Object(); this.defaultVolumes = new Object(); this.loops = new Dictionary(); this.fadingSounds = new Dictionary(); this.volume = 1; } private function onFadeIn(e:TimerEvent):void{ var t:Number = ((getTimer() - this.fadingSounds[e.target].t0) / (this.fadingSounds[e.target].t1 - this.fadingSounds[e.target].t0)); SoundChannel(this.fadingSounds[e.target].channel).soundTransform = new SoundTransform((t * this.fadingSounds[e.target].targetVolume)); if (t >= 1){ t = 1; Timer(e.target).removeEventListener(TimerEvent.TIMER, onFadeIn); Timer(e.target).stop(); delete this.fadingSounds[t]; }; } private function onFadeOut(e:TimerEvent):void{ var t:Number; var p:String; var s:String; var e = e; t = ((getTimer() - this.fadingSounds[e.target].t0) / (this.fadingSounds[e.target].t1 - this.fadingSounds[e.target].t0)); SoundChannel(this.fadingSounds[e.target].channel).soundTransform = new SoundTransform(((1 - t) * this.fadingSounds[e.target].startVolume)); if (t >= 1){ t = 1; Timer(e.target).removeEventListener(TimerEvent.TIMER, onFadeIn); Timer(e.target).stop(); delete this.fadingSounds[t]; for (p in this.soundChannels) { if (this.soundChannels[p] == this.fadingSounds[e.target].channel){ this.stopSound(p); return; }; }; }; //unresolved jump var _slot1 = te; Timer(e.target).removeEventListener(TimerEvent.TIMER, onFadeIn); Timer(e.target).stop(); for (s in this.soundChannels) { if (this.soundChannels[s] == this.fadingSounds[e.target].channel){ this.stopSound(s); return; }; }; } public function stopAllSounds(fadeTime:Number=0):void{ var p:String; for (p in this.soundChannels) { this.stopSound(p, fadeTime); }; } public function get Volume():Number{ return (this.volume); } private function isPlaying(s:Sound):Boolean{ if (this.soundChannels[s] != null){ return (true); }; return (false); } public function set Volume(v:Number):void{ this.volume = v; SoundMixer.soundTransform = new SoundTransform(v); } public function stopSound(sound:String, fadeOutTime:Number=0):void{ var t:Timer; var sound = sound; var fadeOutTime = fadeOutTime; if (fadeOutTime > 0){ t = new Timer(10); this.fadingSounds[t] = {channel:SoundChannel(this.soundChannels[sound]), t0:getTimer(), t1:(getTimer() + fadeOutTime), startVolume:SoundChannel(this.soundChannels[sound]).soundTransform.volume}; t.addEventListener(TimerEvent.TIMER, onFadeOut); t.start(); //unresolved jump var _slot1 = e; } else { SoundChannel(this.soundChannels[sound]).soundTransform = new SoundTransform(0); SoundChannel(this.soundChannels[sound]).stop(); SoundChannel(this.soundChannels[sound]).removeEventListener(Event.SOUND_COMPLETE, onSoundComplete); SoundChannel(this.soundChannels[sound]).removeEventListener(Event.SOUND_COMPLETE, onLoopComplete); delete this.soundChannels[sound]; delete this.defaultVolumes[sound]; //unresolved jump var _slot1 = e; }; } private function onSoundComplete(e:Event):void{ var p:String; SoundChannel(e.target).removeEventListener(Event.SOUND_COMPLETE, onSoundComplete); for (p in this.soundChannels) { if (this.soundChannels[p] == e.target){ delete this.soundChannels[p]; delete this.defaultVolumes[p]; return; }; }; } public function playSound(sound:Sound, fadeInTime:Number=0, loop:Boolean=false, volume:Number=1):void{ var s:Sound; var c:SoundChannel; var t:Timer; var sound = sound; var fadeInTime = fadeInTime; var loop = loop; var volume = volume; if (((isPlaying(sound)) && (!((sound.toString() == "[object Resourcen_SOUND_COIN]"))))){ return; }; s = sound; playingSounds.push(s.toString()); c = s.play(); c.soundTransform = new SoundTransform(((fadeInTime)>0) ? 0 : (volume * this.volume)); this.soundChannels[sound] = c; this.defaultVolumes[sound] = volume; if (loop){ c.addEventListener(Event.SOUND_COMPLETE, onLoopComplete); this.loops[c] = s; } else { c.addEventListener(Event.SOUND_COMPLETE, onSoundComplete); }; if (fadeInTime > 0){ t = new Timer(100); this.fadingSounds[t] = {channel:c, t0:getTimer(), t1:(getTimer() + fadeInTime), targetVolume:volume}; t.addEventListener(TimerEvent.TIMER, onFadeIn); t.start(); }; //unresolved jump var _slot1 = e; return; } private function onLoopComplete(e:Event):void{ var volume:Number; var sound:String; var p:String; var s:Sound; var c:SoundChannel; SoundChannel(e.target).removeEventListener(Event.SOUND_COMPLETE, onLoopComplete); for (p in this.soundChannels) { if (this.soundChannels[p] == e.target){ sound = p; volume = this.defaultVolumes[p]; delete this.soundChannels[p]; delete this.defaultVolumes[p]; break; }; }; s = Sound(this.loops[e.target]); delete this.loops[e.target]; c = s.play(); c.addEventListener(Event.SOUND_COMPLETE, onLoopComplete); c.soundTransform = new SoundTransform((volume * this.volume)); this.soundChannels[sound] = c; this.defaultVolumes[sound] = volume; this.loops[c] = s; } public static function get Instance():SoundController{ if (instance == null){ instance = new (SoundController); }; return (instance); } } }//package util.sound
Section 102
//Main (Main) package { import com.gskinner.motion.*; import framework.Widgets.*; import flash.events.*; import com.cheezeworld.utils.*; import flash.display.*; import Core.Screens.*; import flash.utils.*; import mx.effects.easing.*; public dynamic class Main extends Root { private var _input:Input; private var time:Number; public var menu:MainMenu; private var prevTime:Number;// = 0 private var board:Board; private var fps:Number; public var mParent:DisplayObject; private static var m_isUpdateOn:Boolean; public function Main():void{ _input = Input.instance; super(); m_isUpdateOn = true; if (stage){ init(); } else { addEventListener(Event.ADDED_TO_STAGE, init); }; } public function menuHide(e:Event):void{ WidgetManager.instance.removeWidget(menu); menu = null; } public function removeBoard():void{ WidgetManager.instance.removeWidget(board); } public function removeMenu():void{ menu.Remove(); WidgetManager.instance.removeWidget(menu); } public function ShowDialog(d:Widget, prop:Object):GTween{ this.visible = true; var myTween:GTween = new GTween(d, 1.1, prop, {reflect:true, ease:Back.easeOut}); return (myTween); } private function update(nTime:Number):void{ _input.update(); WidgetManager.instance.update(nTime); } public function HideDialog(d:Widget, prop:Object):GTween{ var myTween:GTween = new GTween(d, 1.1, prop, {reflect:true, ease:Back.easeOut}); return (myTween); } public function initMenu():void{ menu = new MainMenu(this); menu.theParent = this; WidgetManager.instance.addWidget(menu); } private function init(e:Event=null):void{ removeEventListener(Event.ADDED_TO_STAGE, init); WidgetManager.instance.SetParent(this); stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMove); stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown); stage.addEventListener(MouseEvent.MOUSE_UP, mouseUp); stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDown); stage.addEventListener(KeyboardEvent.KEY_UP, keyUp); this.addEventListener(Event.ENTER_FRAME, enterFrame); Input.instance.activate(this.stage); initMenu(); } public function mouseMove(evt:MouseEvent):void{ if (board != null){ }; } public function keyDown(e:KeyboardEvent):void{ if (board != null){ board.keyDown(e); }; } public function mouseDown(evt:MouseEvent):void{ if (board != null){ }; } public function mouseUp(evt:MouseEvent):void{ if (board != null){ }; } public function keyUp(e:KeyboardEvent):void{ if (board != null){ board.keyUp(e); }; } public function enterFrame(evt:Event):void{ time = getTimer(); fps = ((time - prevTime) / 100); prevTime = getTimer(); update(fps); } public function initBoard(mode:int=1):void{ var tween:GTween; if (menu != null){ tween = this.HideDialog(menu, {y:-(menu.height)}); tween.addEventListener(Event.COMPLETE, menuHide); }; board = new Board(this, mode); board.y = (board.height / 5); board.theParent = this; stage.focus = board; WidgetManager.instance.addWidget(board); var tween1:GTween = this.HideDialog(board, {y:0}); } } }//package
Section 103
//NavButton (NavButton) package { import flash.events.*; import flash.display.*; import flash.net.*; public class NavButton extends MovieClip { public var But; public function NavButton(){ super(); width = 239.2; height = 35.75; buttonMode = true; addEventListener(MouseEvent.MOUSE_OVER, onOver); addEventListener(MouseEvent.MOUSE_OUT, onOut); addEventListener(MouseEvent.CLICK, onClick); gotoAndStop(1); But = this; addEventListener(Event.ENTER_FRAME, Depth); } public function onOver(e:Event):void{ gotoAndStop(2); } public function onClick(e:Event):void{ var urlRequest:URLRequest = new URLRequest("http://www.gamesclub.com"); navigateToURL(urlRequest, "_blank"); } public function Depth(e:Event):void{ if (parent){ parent.setChildIndex(But, (parent.numChildren - 1)); }; } public function onOut(e:Event):void{ gotoAndStop(1); } } }//package

Library Items

Symbol 1 GraphicUsed by:2
Symbol 2 MovieClipUses:1Used by:3
Symbol 3 MovieClip {NavButton} [neu]Uses:2
Symbol 4 BitmapUsed by:5
Symbol 5 GraphicUses:4Used by:10
Symbol 6 BitmapUsed by:7
Symbol 7 GraphicUses:6Used by:10
Symbol 8 BitmapUsed by:9
Symbol 9 GraphicUses:8Used by:10
Symbol 10 MovieClip {Core.View.LevelItems.Explosion} [explos]Uses:5 7 9
Symbol 11 BitmapUsed by:12
Symbol 12 GraphicUses:11Used by:21
Symbol 13 BitmapUsed by:14
Symbol 14 GraphicUses:13Used by:21
Symbol 15 BitmapUsed by:16
Symbol 16 GraphicUses:15Used by:21
Symbol 17 BitmapUsed by:18
Symbol 18 GraphicUses:17Used by:21
Symbol 19 BitmapUsed by:20
Symbol 20 GraphicUses:19Used by:21
Symbol 21 MovieClip {Core.View.LevelItems.PlayerClip} [PlayerClip]Uses:12 14 16 18 20
Symbol 22 Sound {Core.Resourcen_SOUND_FALLING} [falling]
Symbol 23 Sound {Core.Resourcen_SOUND_ROTATE} [sndrotate]
Symbol 24 Sound {Core.Resourcen_SOUND_MUSIC} [music]
Symbol 25 FontUsed by:26
Symbol 26 EditableTextUses:25Used by:27
Symbol 27 MovieClip {Core.Resourcen_SCOREBAR} [ScoreBar]Uses:26
Symbol 28 Sound {Core.Resourcen_SOUND_COIN} [coin]
Symbol 29 Sound {Core.Resourcen_SOUND_LANDING} [falled]
Symbol 30 BitmapUsed by:31
Symbol 31 GraphicUses:30Used by:32
Symbol 32 MovieClip {Core.Resourcen_MOVIE_BACK} [bg_pink]Uses:31
Symbol 33 BitmapUsed by:34
Symbol 34 GraphicUses:33Used by:35
Symbol 35 MovieClip {Core.View.LevelItems.LevelEnderView} [Colbe]Uses:34
Symbol 36 BitmapUsed by:37
Symbol 37 GraphicUses:36Used by:38
Symbol 38 MovieClip {Core.View.LevelItems.CoinView} [Ei]Uses:37
Symbol 39 BitmapUsed by:40
Symbol 40 GraphicUses:39Used by:41
Symbol 41 MovieClip {Core.View.LevelItems.LuckView} [directed]Uses:40
Symbol 42 BitmapUsed by:43
Symbol 43 GraphicUses:42Used by:44
Symbol 44 MovieClip {Core.View.LevelItems.CloudView} [Cloud]Uses:43
Symbol 45 Bitmap {Core.Resourcen_LEVEL_20}
Symbol 46 Bitmap {Core.Resourcen_IMAGE_BTN_CLOSE}
Symbol 47 Bitmap {Core.Resourcen_IMAGE_LEVEL_SELECT}
Symbol 48 Bitmap {Core.Resourcen_IMAGE_STAR}
Symbol 49 Bitmap {Core.Resourcen_IMAGE_BALKE}
Symbol 50 Bitmap {Core.Resourcen_LEVEL_9}
Symbol 51 Bitmap {Core.Resourcen_LEVEL_7}
Symbol 52 Bitmap {Core.Resourcen_LEVEL_8}
Symbol 53 Bitmap {Core.Resourcen_LEVEL_5}
Symbol 54 Bitmap {Core.Resourcen_LEVEL_6}
Symbol 55 Bitmap {Core.Resourcen_LEVEL_3}
Symbol 56 Bitmap {Core.Resourcen_LEVEL_4}
Symbol 57 Bitmap {Core.Resourcen_LEVEL_1}
Symbol 58 Bitmap {Core.Resourcen_LEVEL_2}
Symbol 59 Font {Core.Screens.Layers.InfoBar_redensec}
Symbol 60 Bitmap {Core.Resourcen_IMAGE_BACK_GREEN}
Symbol 61 Bitmap {Core.Resourcen_IMAGE_DIALOG_COMPLETE}
Symbol 62 Bitmap {Core.Resourcen_BUTTON_PLAY}
Symbol 63 Bitmap {Core.Resourcen_LEVEL_15}
Symbol 64 Bitmap {Core.Resourcen_LEVEL_14}
Symbol 65 Bitmap {Core.Resourcen_LEVEL_17}
Symbol 66 Bitmap {Core.Resourcen_LEVEL_16}
Symbol 67 Bitmap {Core.Resourcen_LEVEL_11}
Symbol 68 Bitmap {Core.Resourcen_LEVEL_10}
Symbol 69 Bitmap {Core.Resourcen_LEVEL_13}
Symbol 70 Bitmap {Core.Resourcen_IMAGE_GREAT}
Symbol 71 Bitmap {Core.Resourcen_LEVEL_12}
Symbol 72 Bitmap {Core.Resourcen_LEVEL_18}
Symbol 73 Bitmap {Core.Resourcen_LEVEL_19}
Symbol 74 Bitmap {Core.Resourcen_IMAGE_BUTTON_RECT}
Symbol 75 Bitmap {Core.Resourcen_BUTTON_SCORE}
Symbol 76 Bitmap {Core.Resourcen_IMAGE_BTN_SOUND}
Symbol 77 Bitmap {Core.Resourcen_IMAGE_LEVEL_START}
Symbol 78 Bitmap {Core.Resourcen_IMAGE_BUTTON_OK}
Symbol 79 Bitmap {Core.Resourcen_IMAGE_MENU}
Symbol 80 Bitmap {Core.Resourcen_BUTTON_MORE}

Instance Names

"mText"Symbol 27 MovieClip {Core.Resourcen_SCOREBAR} [ScoreBar] Frame 1Symbol 26 EditableText

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata present, AS3.
SWFMetaData (77)Timeline Frame 1459 bytes "<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'><rdf:Description rdf:about='' xmlns ..."
ScriptLimits (65)Timeline Frame 1MaxRecursionDepth: 1000, ScriptTimeout: 60 seconds
ExportAssets (56)Timeline Frame 1Symbol 3 as "neu"
ExportAssets (56)Timeline Frame 1Symbol 10 as "explos"
ExportAssets (56)Timeline Frame 1Symbol 21 as "PlayerClip"
ExportAssets (56)Timeline Frame 1Symbol 22 as "falling"
ExportAssets (56)Timeline Frame 1Symbol 23 as "sndrotate"
ExportAssets (56)Timeline Frame 1Symbol 24 as "music"
ExportAssets (56)Timeline Frame 1Symbol 27 as "ScoreBar"
ExportAssets (56)Timeline Frame 1Symbol 28 as "coin"
ExportAssets (56)Timeline Frame 1Symbol 29 as "falled"
ExportAssets (56)Timeline Frame 1Symbol 32 as "bg_pink"
ExportAssets (56)Timeline Frame 1Symbol 35 as "Colbe"
ExportAssets (56)Timeline Frame 1Symbol 38 as "Ei"
ExportAssets (56)Timeline Frame 1Symbol 41 as "directed"
ExportAssets (56)Timeline Frame 1Symbol 44 as "Cloud"
EnableDebugger2 (64)Timeline Frame 131 bytes "u.$1$qZ$vb.tnKXNUSMjRlUBJQ4Vj0."
DebugMX1 (63)Timeline Frame 1
SerialNumber (41)Timeline Frame 1

Labels

"Main"Frame 1
"start"Frame 2
"gamesclub"Symbol 2 MovieClip Frame 1




http://swfchan.com/23/114436/info.shtml
Created: 10/3 -2019 18:31:51 Last modified: 10/3 -2019 18:31:51 Server time: 29/04 -2024 20:14:11