Section 1
//coinAnim_7 (Game_fla.coinAnim_7)
package Game_fla {
import flash.display.*;
public dynamic class coinAnim_7 extends MovieClip {
public function coinAnim_7(){
addFrameScript(7, frame8, 16, frame17);
}
function frame17(){
Main.Application.coinMC.x = -100;
Main.Application.coinMC.y = -100;
stop();
}
function frame8(){
gotoAndPlay(1);
}
}
}//package Game_fla
Section 2
//Action (org.flintparticles.common.actions.Action)
package org.flintparticles.common.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public interface Action {
function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void;
function addedToEmitter(_arg1:Emitter):void;
function removedFromEmitter(_arg1:Emitter):void;
function getDefaultPriority():Number;
}
}//package org.flintparticles.common.actions
Section 3
//ActionBase (org.flintparticles.common.actions.ActionBase)
package org.flintparticles.common.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public class ActionBase implements Action {
public function addedToEmitter(_arg1:Emitter):void{
}
public function removedFromEmitter(_arg1:Emitter):void{
}
public function getDefaultPriority():Number{
return (0);
}
public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
}
}
}//package org.flintparticles.common.actions
Section 4
//Age (org.flintparticles.common.actions.Age)
package org.flintparticles.common.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.energyEasing.*;
public class Age extends ActionBase {
private var _easing:Function;
public function Age(_arg1:Function=null){
if (_arg1 == null){
_easing = Linear.easeNone;
} else {
_easing = _arg1;
};
}
public function set easing(_arg1:Function):void{
_easing = _arg1;
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
_arg2.age = (_arg2.age + _arg3);
if (_arg2.age >= _arg2.lifetime){
_arg2.energy = 0;
_arg2.isDead = true;
} else {
_arg2.energy = _easing(_arg2.age, _arg2.lifetime);
};
}
public function get easing():Function{
return (_easing);
}
}
}//package org.flintparticles.common.actions
Section 5
//Fade (org.flintparticles.common.actions.Fade)
package org.flintparticles.common.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public class Fade extends ActionBase {
private var _endAlpha:Number;
private var _diffAlpha:Number;
public function Fade(_arg1:Number=1, _arg2:Number=0){
_diffAlpha = (_arg1 - _arg2);
_endAlpha = _arg2;
}
public function get endAlpha():Number{
return (_endAlpha);
}
public function set endAlpha(_arg1:Number):void{
_diffAlpha = ((_endAlpha + _diffAlpha) - _arg1);
_endAlpha = _arg1;
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
var _local4:Number = (_endAlpha + (_diffAlpha * _arg2.energy));
_arg2.color = ((_arg2.color & 0xFFFFFF) | (Math.round((_local4 * 0xFF)) << 24));
}
override public function getDefaultPriority():Number{
return (-5);
}
public function set startAlpha(_arg1:Number):void{
_diffAlpha = (_arg1 - _endAlpha);
}
public function get startAlpha():Number{
return ((_endAlpha + _diffAlpha));
}
}
}//package org.flintparticles.common.actions
Section 6
//Activity (org.flintparticles.common.activities.Activity)
package org.flintparticles.common.activities {
import org.flintparticles.common.emitters.*;
public interface Activity {
function initialize(_arg1:Emitter):void;
function removedFromEmitter(_arg1:Emitter):void;
function update(_arg1:Emitter, _arg2:Number):void;
function addedToEmitter(_arg1:Emitter):void;
function getDefaultPriority():Number;
}
}//package org.flintparticles.common.activities
Section 7
//Blast (org.flintparticles.common.counters.Blast)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
public class Blast implements Counter {
private var _startCount:uint;
public function Blast(_arg1:uint){
_startCount = _arg1;
}
public function stop():void{
}
public function updateEmitter(_arg1:Emitter, _arg2:Number):uint{
return (0);
}
public function startEmitter(_arg1:Emitter):uint{
return (_startCount);
}
public function resume():void{
}
public function set startCount(_arg1:Number):void{
_startCount = _arg1;
}
public function get startCount():Number{
return (_startCount);
}
}
}//package org.flintparticles.common.counters
Section 8
//Counter (org.flintparticles.common.counters.Counter)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
public interface Counter {
function stop():void;
function startEmitter(_arg1:Emitter):uint;
function updateEmitter(_arg1:Emitter, _arg2:Number):uint;
function resume():void;
}
}//package org.flintparticles.common.counters
Section 9
//ZeroCounter (org.flintparticles.common.counters.ZeroCounter)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
public class ZeroCounter implements Counter {
public function stop():void{
}
public function updateEmitter(_arg1:Emitter, _arg2:Number):uint{
return (0);
}
public function startEmitter(_arg1:Emitter):uint{
return (0);
}
public function resume():void{
}
}
}//package org.flintparticles.common.counters
Section 10
//Dot (org.flintparticles.common.displayObjects.Dot)
package org.flintparticles.common.displayObjects {
import flash.display.*;
public class Dot extends Shape {
public function Dot(_arg1:Number, _arg2:uint=0xFFFFFF, _arg3:String="normal"){
graphics.beginFill(_arg2);
graphics.drawCircle(0, 0, _arg1);
graphics.endFill();
blendMode = _arg3;
}
}
}//package org.flintparticles.common.displayObjects
Section 11
//Emitter (org.flintparticles.common.emitters.Emitter)
package org.flintparticles.common.emitters {
import org.flintparticles.common.particles.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.common.activities.*;
import org.flintparticles.common.counters.*;
import org.flintparticles.common.events.*;
import org.flintparticles.common.utils.*;
import flash.events.*;
public class Emitter extends EventDispatcher {
protected var _running:Boolean;// = false
protected var _activities:PriorityArray;
protected var _particles:Array;
protected var _initializers:PriorityArray;
protected var _counter:Counter;
protected var _started:Boolean;// = false
protected var _actions:PriorityArray;
protected var _useInternalTick:Boolean;// = true
protected var _particleFactory:ParticleFactory;
protected var _fixedFrameTime:Number;// = 0
protected var _maximumFrameTime:Number;// = 0.1
public function Emitter(){
_particles = new Array();
_actions = new PriorityArray();
_initializers = new PriorityArray();
_activities = new PriorityArray();
_counter = new ZeroCounter();
}
public function addInitializer(_arg1:Initializer, _arg2:Number=NaN):void{
if (isNaN(_arg2)){
_arg2 = _arg1.getDefaultPriority();
};
_initializers.add(_arg1, _arg2);
_arg1.addedToEmitter(this);
}
public function stop():void{
if (_useInternalTick){
FrameUpdater.instance.removeEventListener(UpdateEvent.UPDATE, updateEventListener);
};
_started = false;
killAllParticles();
}
public function killAllParticles():void{
var _local1:int = _particles.length;
var _local2:int;
while (_local2 < _local1) {
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_DEAD, _particles[_local2]));
_particleFactory.disposeParticle(_particles[_local2]);
_local2++;
};
_particles.length = 0;
}
public function set fixedFrameTime(_arg1:Number):void{
_fixedFrameTime = _arg1;
}
public function get maximumFrameTime():Number{
return (_maximumFrameTime);
}
public function get useInternalTick():Boolean{
return (_useInternalTick);
}
protected function createParticle():Particle{
var _local1:Particle = _particleFactory.createParticle();
var _local2:int = _initializers.length;
initParticle(_local1);
var _local3:int;
while (_local3 < _local2) {
_initializers[_local3].initialize(this, _local1);
_local3++;
};
_particles.push(_local1);
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_CREATED, _local1));
return (_local1);
}
public function get particleFactory():ParticleFactory{
return (_particleFactory);
}
private function updateEventListener(_arg1:UpdateEvent):void{
if (_fixedFrameTime){
update(_fixedFrameTime);
} else {
update(_arg1.time);
};
}
public function get particles():Array{
return (_particles);
}
protected function sortParticles():void{
}
public function removeActivity(_arg1:Activity):void{
if (_activities.remove(_arg1)){
_arg1.removedFromEmitter(this);
};
}
public function set maximumFrameTime(_arg1:Number):void{
_maximumFrameTime = _arg1;
}
protected function initParticle(_arg1:Particle):void{
}
public function addAction(_arg1:Action, _arg2:Number=NaN):void{
if (isNaN(_arg2)){
_arg2 = _arg1.getDefaultPriority();
};
_actions.add(_arg1, _arg2);
_arg1.addedToEmitter(this);
}
public function hasInitializerOfType(_arg1:Class):Boolean{
var _local2:uint = _initializers.length;
var _local3:uint;
while (_local3 < _local2) {
if ((_initializers[_local3] is _arg1)){
return (true);
};
_local3++;
};
return (false);
}
public function resume():void{
_running = true;
}
public function removeInitializer(_arg1:Initializer):void{
if (_initializers.remove(_arg1)){
_arg1.removedFromEmitter(this);
};
}
public function get running():Boolean{
return (_running);
}
public function hasActionOfType(_arg1:Class):Boolean{
var _local2:uint = _actions.length;
var _local3:uint;
while (_local3 < _local2) {
if ((_actions[_local3] is _arg1)){
return (true);
};
_local3++;
};
return (false);
}
public function get fixedFrameTime():Number{
return (_fixedFrameTime);
}
public function set particleFactory(_arg1:ParticleFactory):void{
_particleFactory = _arg1;
}
public function hasActivity(_arg1:Activity):Boolean{
return (_activities.contains(_arg1));
}
public function addActivity(_arg1:Activity, _arg2:Number=NaN):void{
if (isNaN(_arg2)){
_arg2 = _arg1.getDefaultPriority();
};
_activities.add(_arg1, _arg2);
_arg1.addedToEmitter(this);
}
public function update(_arg1:Number):void{
var _local2:int;
var _local3:Particle;
var _local5:Action;
var _local6:int;
var _local7:int;
if (!_running){
return;
};
if (_arg1 > _maximumFrameTime){
_arg1 = _maximumFrameTime;
};
var _local4:int = _counter.updateEmitter(this, _arg1);
_local2 = 0;
while (_local2 < _local4) {
createParticle();
_local2++;
};
sortParticles();
_local4 = _activities.length;
_local2 = 0;
while (_local2 < _local4) {
_activities[_local2].update(this, _arg1);
_local2++;
};
if (_particles.length > 0){
_local4 = _actions.length;
_local6 = _particles.length;
_local7 = 0;
while (_local7 < _local4) {
_local5 = _actions[_local7];
_local2 = 0;
while (_local2 < _local6) {
_local3 = _particles[_local2];
_local5.update(this, _local3, _arg1);
_local2++;
};
_local7++;
};
_local2 = _local6;
while (_local2--) {
_local3 = _particles[_local2];
if (_local3.isDead){
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_DEAD, _local3));
_particleFactory.disposeParticle(_local3);
_particles.splice(_local2, 1);
};
};
} else {
dispatchEvent(new EmitterEvent(EmitterEvent.EMITTER_EMPTY));
};
dispatchEvent(new EmitterEvent(EmitterEvent.EMITTER_UPDATED));
}
public function addExistingParticles(_arg1:Array, _arg2:Boolean=false):void{
var _local4:int;
var _local5:int;
var _local6:int;
var _local3:int = _arg1.length;
if (_arg2){
_local5 = _initializers.length;
_local6 = 0;
while (_local6 < _local5) {
_local4 = 0;
while (_local4 < _local3) {
_initializers[_local6].initialize(this, _arg1[_local4]);
_local4++;
};
_local6++;
};
};
_local4 = 0;
while (_local4 < _local3) {
_particles.push(_arg1[_local4]);
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_ADDED, _arg1[_local4]));
_local4++;
};
}
public function removeAction(_arg1:Action):void{
if (_actions.remove(_arg1)){
_arg1.removedFromEmitter(this);
};
}
public function hasActivityOfType(_arg1:Class):Boolean{
var _local2:uint = _activities.length;
var _local3:uint;
while (_local3 < _local2) {
if ((_activities[_local3] is _arg1)){
return (true);
};
_local3++;
};
return (false);
}
public function set useInternalTick(_arg1:Boolean):void{
if (_useInternalTick != _arg1){
_useInternalTick = _arg1;
if (_started){
if (_useInternalTick){
FrameUpdater.instance.addEventListener(UpdateEvent.UPDATE, updateEventListener, false, 0, true);
} else {
FrameUpdater.instance.removeEventListener(UpdateEvent.UPDATE, updateEventListener);
};
};
};
}
public function hasInitializer(_arg1:Initializer):Boolean{
return (_initializers.contains(_arg1));
}
public function start():void{
if (_useInternalTick){
FrameUpdater.instance.addEventListener(UpdateEvent.UPDATE, updateEventListener, false, 0, true);
};
_started = true;
_running = true;
var _local1:int = _activities.length;
var _local2:int;
while (_local2 < _local1) {
_activities[_local2].initialize(this);
_local2++;
};
_local1 = _counter.startEmitter(this);
_local2 = 0;
while (_local2 < _local1) {
createParticle();
_local2++;
};
}
public function hasAction(_arg1:Action):Boolean{
return (_actions.contains(_arg1));
}
public function pause():void{
_running = false;
}
public function set counter(_arg1:Counter):void{
_counter = _arg1;
if (running){
_counter.startEmitter(this);
};
}
public function get counter():Counter{
return (_counter);
}
public function runAhead(_arg1:Number, _arg2:Number=10):void{
var _local3:Number = _maximumFrameTime;
var _local4:Number = (1 / _arg2);
_maximumFrameTime = _local4;
while (_arg1 > 0) {
_arg1 = (_arg1 - _local4);
update(_local4);
};
_maximumFrameTime = _local3;
}
}
}//package org.flintparticles.common.emitters
Section 12
//Linear (org.flintparticles.common.energyEasing.Linear)
package org.flintparticles.common.energyEasing {
public class Linear {
public static function easeOut(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
public static function easeIn(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
public static function easeInOut(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
public static function easeNone(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
}
}//package org.flintparticles.common.energyEasing
Section 13
//Quadratic (org.flintparticles.common.energyEasing.Quadratic)
package org.flintparticles.common.energyEasing {
public class Quadratic {
public static function easeOut(_arg1:Number, _arg2:Number):Number{
_arg1 = (1 - (_arg1 / _arg2));
return ((_arg1 * _arg1));
}
public static function easeIn(_arg1:Number, _arg2:Number):Number{
_arg1 = (_arg1 / _arg2);
return ((1 - (_arg1 * _arg1)));
}
public static function easeInOut(_arg1:Number, _arg2:Number):Number{
_arg1 = (_arg1 / (_arg2 * 0.5));
if (_arg1 < 1){
return ((1 - ((_arg1 * _arg1) * 0.5)));
};
_arg1 = (_arg1 - 2);
return (((_arg1 * _arg1) * 0.5));
}
}
}//package org.flintparticles.common.energyEasing
Section 14
//EmitterEvent (org.flintparticles.common.events.EmitterEvent)
package org.flintparticles.common.events {
import flash.events.*;
public class EmitterEvent extends Event {
public static var EMITTER_UPDATED:String = "emitterUpdated";
public static var EMITTER_EMPTY:String = "emitterEmpty";
public function EmitterEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){
super(_arg1, _arg2, _arg3);
}
}
}//package org.flintparticles.common.events
Section 15
//ParticleEvent (org.flintparticles.common.events.ParticleEvent)
package org.flintparticles.common.events {
import org.flintparticles.common.particles.*;
import flash.events.*;
public class ParticleEvent extends Event {
public var particle:Particle;
public var otherObject;
public static var PARTICLES_COLLISION:String = "particlesCollision";
public static var PARTICLE_ADDED:String = "particleAdded";
public static var PARTICLE_DEAD:String = "particleDead";
public static var PARTICLE_CREATED:String = "particleCreated";
public function ParticleEvent(_arg1:String, _arg2:Particle=null, _arg3:Boolean=false, _arg4:Boolean=false){
super(_arg1, _arg3, _arg4);
this.particle = _arg2;
}
}
}//package org.flintparticles.common.events
Section 16
//UpdateEvent (org.flintparticles.common.events.UpdateEvent)
package org.flintparticles.common.events {
import flash.events.*;
public class UpdateEvent extends Event {
public var time:Number;
public static var UPDATE:String = "update";
public function UpdateEvent(_arg1:String, _arg2:Number=NaN, _arg3:Boolean=false, _arg4:Boolean=false){
super(_arg1, _arg3, _arg4);
this.time = _arg2;
}
}
}//package org.flintparticles.common.events
Section 17
//ColorInit (org.flintparticles.common.initializers.ColorInit)
package org.flintparticles.common.initializers {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.utils.*;
public class ColorInit extends InitializerBase {
private var _max:uint;
private var _min:uint;
public function ColorInit(_arg1:uint, _arg2:uint){
_min = _arg1;
_max = _arg2;
}
public function set minColor(_arg1:uint):void{
_min = _arg1;
}
public function get color():uint{
return (((_min == _max)) ? _min : interpolateColors(_max, _min, 0.5));
}
public function set color(_arg1:uint):void{
_max = (_min = _arg1);
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
if (_max == _min){
_arg2.color = _min;
} else {
_arg2.color = interpolateColors(_min, _max, Math.random());
};
}
public function get minColor():uint{
return (_min);
}
public function set maxColor(_arg1:uint):void{
_max = _arg1;
}
public function get maxColor():uint{
return (_max);
}
}
}//package org.flintparticles.common.initializers
Section 18
//Initializer (org.flintparticles.common.initializers.Initializer)
package org.flintparticles.common.initializers {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public interface Initializer {
function initialize(_arg1:Emitter, _arg2:Particle):void;
function addedToEmitter(_arg1:Emitter):void;
function removedFromEmitter(_arg1:Emitter):void;
function getDefaultPriority():Number;
}
}//package org.flintparticles.common.initializers
Section 19
//InitializerBase (org.flintparticles.common.initializers.InitializerBase)
package org.flintparticles.common.initializers {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public class InitializerBase implements Initializer {
public function initialize(_arg1:Emitter, _arg2:Particle):void{
}
public function addedToEmitter(_arg1:Emitter):void{
}
public function removedFromEmitter(_arg1:Emitter):void{
}
public function getDefaultPriority():Number{
return (0);
}
}
}//package org.flintparticles.common.initializers
Section 20
//Lifetime (org.flintparticles.common.initializers.Lifetime)
package org.flintparticles.common.initializers {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public class Lifetime extends InitializerBase {
private var _max:Number;
private var _min:Number;
public function Lifetime(_arg1:Number, _arg2:Number=NaN){
_max = _arg2;
_min = _arg1;
}
public function get lifetime():Number{
return (((_min == _max)) ? _min : ((_max + _min) * 0.5));
}
public function get maxLifetime():Number{
return (_max);
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
if (isNaN(_max)){
_arg2.lifetime = _min;
} else {
_arg2.lifetime = (_min + (Math.random() * (_max - _min)));
};
}
public function set lifetime(_arg1:Number):void{
_max = (_min = _arg1);
}
public function set minLifetime(_arg1:Number):void{
_min = _arg1;
}
public function set maxLifetime(_arg1:Number):void{
_max = _arg1;
}
public function get minLifetime():Number{
return (_min);
}
}
}//package org.flintparticles.common.initializers
Section 21
//SharedImage (org.flintparticles.common.initializers.SharedImage)
package org.flintparticles.common.initializers {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import flash.display.*;
public class SharedImage extends InitializerBase {
private var _image:DisplayObject;
public function SharedImage(_arg1:DisplayObject){
_image = _arg1;
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
_arg2.image = _image;
}
public function set image(_arg1:DisplayObject):void{
_image = _arg1;
}
public function get image():DisplayObject{
return (_image);
}
}
}//package org.flintparticles.common.initializers
Section 22
//Particle (org.flintparticles.common.particles.Particle)
package org.flintparticles.common.particles {
import flash.geom.*;
import flash.utils.*;
public class Particle {
public var energy:Number;// = 1
public var lifetime:Number;// = 0
public var scale:Number;// = 1
public var image;// = null
public var color:uint;// = 4294967295
public var collisionRadius:Number;// = 1
private var _colorTransform:ColorTransform;// = null
private var _previousColor:uint;
public var isDead:Boolean;// = false
public var mass:Number;// = 1
private var _dictionary:Dictionary;// = null
public var age:Number;// = 0
public function get dictionary():Dictionary{
if (_dictionary == null){
_dictionary = new Dictionary(true);
};
return (_dictionary);
}
public function get colorTransform():ColorTransform{
if (((!(_colorTransform)) || (!((_previousColor == color))))){
_colorTransform = new ColorTransform((((color >>> 16) & 0xFF) / 0xFF), (((color >>> 8) & 0xFF) / 0xFF), ((color & 0xFF) / 0xFF), (((color >>> 24) & 0xFF) / 0xFF), 0, 0, 0, 0);
_previousColor = color;
};
return (_colorTransform);
}
protected function cloneInto(_arg1:Particle):Particle{
var _local2:Object;
_arg1.color = color;
_arg1.scale = scale;
_arg1.mass = mass;
_arg1.collisionRadius = collisionRadius;
_arg1.lifetime = lifetime;
_arg1.age = age;
_arg1.energy = energy;
_arg1.isDead = isDead;
_arg1.image = image;
if (_dictionary){
_arg1._dictionary = new Dictionary(true);
for (_local2 in _dictionary) {
_arg1._dictionary[_local2] = _dictionary[_local2];
};
};
return (_arg1);
}
public function get alpha():Number{
return ((((color & 4278190080) >>> 24) / 0xFF));
}
public function initialize():void{
color = 4294967295;
scale = 1;
mass = 1;
collisionRadius = 1;
lifetime = 0;
age = 0;
energy = 1;
isDead = false;
image = null;
_dictionary = null;
_colorTransform = null;
}
public function clone(_arg1:ParticleFactory=null):Particle{
var _local2:Particle;
if (_arg1){
_local2 = _arg1.createParticle();
} else {
_local2 = new Particle();
};
return (cloneInto(_local2));
}
}
}//package org.flintparticles.common.particles
Section 23
//ParticleFactory (org.flintparticles.common.particles.ParticleFactory)
package org.flintparticles.common.particles {
public interface ParticleFactory {
function createParticle():Particle;
function disposeParticle(_arg1:Particle):void;
}
}//package org.flintparticles.common.particles
Section 24
//Renderer (org.flintparticles.common.renderers.Renderer)
package org.flintparticles.common.renderers {
import org.flintparticles.common.emitters.*;
public interface Renderer {
function removeEmitter(_arg1:Emitter):void;
function addEmitter(_arg1:Emitter):void;
}
}//package org.flintparticles.common.renderers
Section 25
//SpriteRendererBase (org.flintparticles.common.renderers.SpriteRendererBase)
package org.flintparticles.common.renderers {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.events.*;
import flash.events.*;
import flash.display.*;
public class SpriteRendererBase extends Sprite implements Renderer {
protected var _emitters:Array;
public function SpriteRendererBase(){
_emitters = new Array();
mouseEnabled = false;
mouseChildren = false;
addEventListener(Event.ADDED_TO_STAGE, addedToStage, false, 0, true);
}
private function particleAdded(_arg1:ParticleEvent):void{
addParticle(_arg1.particle);
if (stage){
stage.invalidate();
};
}
private function addedToStage(_arg1:Event):void{
if (stage){
stage.invalidate();
};
}
public function get emitters():Array{
return (_emitters);
}
protected function addParticle(_arg1:Particle):void{
}
private function updateParticles(_arg1:Event):void{
var _local2:Array = new Array();
var _local3:int;
while (_local3 < _emitters.length) {
_local2 = _local2.concat(_emitters[_local3].particles);
_local3++;
};
renderParticles(_local2);
}
private function emitterUpdated(_arg1:EmitterEvent):void{
if (stage){
stage.invalidate();
};
}
public function removeEmitter(_arg1:Emitter):void{
var _local3:Particle;
var _local2:int;
while (_local2 < _emitters.length) {
if (_emitters[_local2] == _arg1){
_emitters.splice(_local2, 1);
_arg1.removeEventListener(EmitterEvent.EMITTER_UPDATED, emitterUpdated);
_arg1.removeEventListener(ParticleEvent.PARTICLE_CREATED, particleAdded);
_arg1.removeEventListener(ParticleEvent.PARTICLE_ADDED, particleAdded);
_arg1.removeEventListener(ParticleEvent.PARTICLE_DEAD, particleRemoved);
for each (_local3 in _arg1.particles) {
removeParticle(_local3);
};
if (_emitters.length == 0){
removeEventListener(Event.RENDER, updateParticles);
renderParticles([]);
} else {
stage.invalidate();
};
return;
};
_local2++;
};
}
protected function renderParticles(_arg1:Array):void{
}
protected function removeParticle(_arg1:Particle):void{
}
private function particleRemoved(_arg1:ParticleEvent):void{
removeParticle(_arg1.particle);
if (stage){
stage.invalidate();
};
}
public function addEmitter(_arg1:Emitter):void{
var _local2:Particle;
_emitters.push(_arg1);
if (stage){
stage.invalidate();
};
_arg1.addEventListener(EmitterEvent.EMITTER_UPDATED, emitterUpdated, false, 0, true);
_arg1.addEventListener(ParticleEvent.PARTICLE_CREATED, particleAdded, false, 0, true);
_arg1.addEventListener(ParticleEvent.PARTICLE_ADDED, particleAdded, false, 0, true);
_arg1.addEventListener(ParticleEvent.PARTICLE_DEAD, particleRemoved, false, 0, true);
for each (_local2 in _arg1.particles) {
addParticle(_local2);
};
if (_emitters.length == 1){
addEventListener(Event.RENDER, updateParticles, false, 0, true);
};
}
}
}//package org.flintparticles.common.renderers
Section 26
//FrameUpdater (org.flintparticles.common.utils.FrameUpdater)
package org.flintparticles.common.utils {
import flash.utils.*;
import org.flintparticles.common.events.*;
import flash.events.*;
import flash.display.*;
public class FrameUpdater extends EventDispatcher {
private var _shape:Shape;
private var _time:Number;
private static var _instance:FrameUpdater;
public function FrameUpdater(){
_shape = new Shape();
_shape.addEventListener(Event.ENTER_FRAME, frameUpdate, false, 0, true);
_time = getTimer();
}
private function frameUpdate(_arg1:Event):void{
var _local2:int = _time;
_time = getTimer();
var _local3:Number = ((_time - _local2) * 0.001);
dispatchEvent(new UpdateEvent(UpdateEvent.UPDATE, _local3));
}
public static function get instance():FrameUpdater{
if (_instance == null){
_instance = new (FrameUpdater);
};
return (_instance);
}
}
}//package org.flintparticles.common.utils
Section 27
//interpolateColors (org.flintparticles.common.utils.interpolateColors)
package org.flintparticles.common.utils {
public function interpolateColors(_arg1:uint, _arg2:uint, _arg3:Number):uint{
var _local4:Number = (1 - _arg3);
var _local5:uint = Math.round(((((_arg1 >>> 16) & 0xFF) * _arg3) + (((_arg2 >>> 16) & 0xFF) * _local4)));
var _local6:uint = Math.round(((((_arg1 >>> 8) & 0xFF) * _arg3) + (((_arg2 >>> 8) & 0xFF) * _local4)));
var _local7:uint = Math.round((((_arg1 & 0xFF) * _arg3) + ((_arg2 & 0xFF) * _local4)));
var _local8:uint = Math.round(((((_arg1 >>> 24) & 0xFF) * _arg3) + (((_arg2 >>> 24) & 0xFF) * _local4)));
return (((((_local8 << 24) | (_local5 << 16)) | (_local6 << 8)) | _local7));
}
}//package org.flintparticles.common.utils
Section 28
//Maths (org.flintparticles.common.utils.Maths)
package org.flintparticles.common.utils {
public class Maths {
private static const DEGTORAD:Number = 0.0174532925199433;
private static const RADTODEG:Number = 57.2957795130823;
public static function asRadians(_arg1:Number):Number{
return ((_arg1 * DEGTORAD));
}
public static function asDegrees(_arg1:Number):Number{
return ((_arg1 * RADTODEG));
}
}
}//package org.flintparticles.common.utils
Section 29
//PriorityArray (org.flintparticles.common.utils.PriorityArray)
package org.flintparticles.common.utils {
import flash.utils.*;
public class PriorityArray extends Proxy {
private var _values:Array;
public function PriorityArray(){
_values = new Array();
}
public function remove(_arg1):Boolean{
var _local2:uint = _values.length;
while (_local2--) {
if (_values[_local2].value == _arg1){
_values.splice(_local2, 1);
return (true);
};
};
return (false);
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextName(_arg1:int):String{
return ((_arg1 - 1).toString());
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{
var _local3:uint = uint(_arg1);
if ((((_local3 == _arg1)) && ((_local3 < _values.length)))){
_values[_local3].value = _arg2;
};
}
public function add(_arg1, _arg2:Number):uint{
var _local3:uint = _values.length;
var _local4:uint;
while (_local4 < _local3) {
if (_values[_local4].priority < _arg2){
break;
};
_local4++;
};
_values.splice(_local4, 0, new Pair(_arg2, _arg1));
return (_values.length);
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){
var _local2:int = int(_arg1);
if ((((((_local2 == _arg1)) && ((_local2 < _values.length)))) && (_values[_local2]))){
return (_values[_local2].value);
};
return (undefined);
}
public function clear():void{
_values.length = 0;
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextNameIndex(_arg1:int):int{
if (_arg1 < _values.length){
return ((_arg1 + 1));
};
return (0);
}
public function get length():uint{
return (_values.length);
}
public function removeAt(_arg1:uint){
var _local2:* = _values[_arg1].value;
_values.splice(_arg1, 1);
return (_local2);
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextValue(_arg1:int){
return (_values[(_arg1 - 1)].value);
}
public function contains(_arg1):Boolean{
var _local2:uint = _values.length;
while (_local2--) {
if (_values[_local2].value == _arg1){
return (true);
};
};
return (false);
}
}
}//package org.flintparticles.common.utils
class Pair {
private var value;
private var priority:Number;
private function Pair(_arg1:Number, _arg2){
this.priority = _arg1;
this.value = _arg2;
}
}
Section 30
//Accelerate (org.flintparticles.twoD.actions.Accelerate)
package org.flintparticles.twoD.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.twoD.particles.*;
public class Accelerate extends ActionBase {
private var _x:Number;
private var _y:Number;
public function Accelerate(_arg1:Number, _arg2:Number){
_x = _arg1;
_y = _arg2;
}
public function set x(_arg1:Number):void{
_x = _arg1;
}
public function get y():Number{
return (_y);
}
public function get x():Number{
return (_x);
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
var _local4:Particle2D = Particle2D(_arg2);
Particle2D(_arg2).velX = (_local4.velX + (_x * _arg3));
_local4.velY = (_local4.velY + (_y * _arg3));
}
public function set y(_arg1:Number):void{
_y = _arg1;
}
}
}//package org.flintparticles.twoD.actions
Section 31
//LinearDrag (org.flintparticles.twoD.actions.LinearDrag)
package org.flintparticles.twoD.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.twoD.particles.*;
public class LinearDrag extends ActionBase {
private var _drag:Number;
public function LinearDrag(_arg1:Number){
_drag = _arg1;
}
public function get drag():Number{
return (_drag);
}
public function set drag(_arg1:Number):void{
_drag = _arg1;
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
var _local4:Particle2D;
_local4 = Particle2D(_arg2);
var _local5:Number = (1 - ((_drag * _arg3) / _local4.mass));
if (_local5 < 0){
_local4.velX = 0;
_local4.velY = 0;
} else {
_local4.velX = (_local4.velX * _local5);
_local4.velY = (_local4.velY * _local5);
};
}
}
}//package org.flintparticles.twoD.actions
Section 32
//Move (org.flintparticles.twoD.actions.Move)
package org.flintparticles.twoD.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.twoD.particles.*;
public class Move extends ActionBase {
private var p:Particle2D;
override public function getDefaultPriority():Number{
return (-10);
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
p = Particle2D(_arg2);
p.x = (p.x + (p.velX * _arg3));
p.y = (p.y + (p.velY * _arg3));
}
}
}//package org.flintparticles.twoD.actions
Section 33
//Emitter2D (org.flintparticles.twoD.emitters.Emitter2D)
package org.flintparticles.twoD.emitters {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.utils.*;
import org.flintparticles.twoD.particles.*;
public class Emitter2D extends Emitter {
protected var _y:Number;// = 0
public var spaceSort:Boolean;// = false
public var spaceSortedX:Array;
protected var _x:Number;// = 0
protected var _rotation:Number;// = 0
protected static var _creator:ParticleCreator2D = new ParticleCreator2D();
public function Emitter2D(){
_particleFactory = _creator;
}
public function get y():Number{
return (_y);
}
override protected function initParticle(_arg1:Particle):void{
var _local2:Particle2D;
_local2 = Particle2D(_arg1);
_local2.x = _x;
_local2.y = _y;
_local2.rotation = _rotation;
}
override protected function sortParticles():void{
var _local1:int;
var _local2:int;
if (spaceSort){
spaceSortedX = _particles.sortOn("x", (Array.NUMERIC | Array.RETURNINDEXEDARRAY));
_local1 = _particles.length;
_local2 = 0;
while (_local2 < _local1) {
_particles[spaceSortedX[_local2]].sortID = _local2;
_local2++;
};
};
}
public function set x(_arg1:Number):void{
_x = _arg1;
}
public function set rotRadians(_arg1:Number):void{
_rotation = _arg1;
}
public function get x():Number{
return (_x);
}
public function get rotRadians():Number{
return (_rotation);
}
public function set rotation(_arg1:Number):void{
_rotation = Maths.asRadians(_arg1);
}
public function get rotation():Number{
return (Maths.asDegrees(_rotation));
}
public function set y(_arg1:Number):void{
_y = _arg1;
}
public static function get defaultParticleFactory():ParticleFactory{
return (_creator);
}
}
}//package org.flintparticles.twoD.emitters
Section 34
//Velocity (org.flintparticles.twoD.initializers.Velocity)
package org.flintparticles.twoD.initializers {
import flash.geom.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.twoD.zones.*;
import org.flintparticles.twoD.particles.*;
public class Velocity extends InitializerBase {
private var _zone:Zone2D;
public function Velocity(_arg1:Zone2D){
_zone = _arg1;
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
var _local3:Particle2D;
var _local5:Number;
var _local6:Number;
_local3 = Particle2D(_arg2);
var _local4:Point = _zone.getLocation();
if (_local3.rotation == 0){
_local3.velX = _local4.x;
_local3.velY = _local4.y;
} else {
_local5 = Math.sin(_local3.rotation);
_local6 = Math.cos(_local3.rotation);
_local3.velX = ((_local6 * _local4.x) - (_local5 * _local4.y));
_local3.velY = ((_local6 * _local4.y) + (_local5 * _local4.x));
};
}
public function set zone(_arg1:Zone2D):void{
_zone = _arg1;
}
public function get zone():Zone2D{
return (_zone);
}
}
}//package org.flintparticles.twoD.initializers
Section 35
//Particle2D (org.flintparticles.twoD.particles.Particle2D)
package org.flintparticles.twoD.particles {
import flash.geom.*;
import org.flintparticles.common.particles.*;
public class Particle2D extends Particle {
public var sortID:int;// = -1
private var _inertia:Number;
public var velY:Number;// = 0
private var _previousRadius:Number;
private var _previousMass:Number;
public var angVelocity:Number;// = 0
public var x:Number;// = 0
public var y:Number;// = 0
public var velX:Number;// = 0
public var rotation:Number;// = 0
override public function clone(_arg1:ParticleFactory=null):Particle{
var _local2:Particle2D;
if (_arg1){
_local2 = (_arg1.createParticle() as Particle2D);
} else {
_local2 = new Particle2D();
};
cloneInto(_local2);
_local2.x = x;
_local2.y = y;
_local2.velX = velX;
_local2.velY = velY;
_local2.rotation = rotation;
_local2.angVelocity = angVelocity;
return (_local2);
}
override public function initialize():void{
super.initialize();
x = 0;
y = 0;
velX = 0;
velY = 0;
rotation = 0;
angVelocity = 0;
sortID = -1;
}
public function get matrixTransform():Matrix{
var _local1:Number = (scale * Math.cos(rotation));
var _local2:Number = (scale * Math.sin(rotation));
return (new Matrix(_local1, _local2, -(_local2), _local1, x, y));
}
public function get inertia():Number{
if (((!((mass == _previousMass))) || (!((collisionRadius == _previousRadius))))){
_inertia = (((mass * collisionRadius) * collisionRadius) * 0.5);
_previousMass = mass;
_previousRadius = collisionRadius;
};
return (_inertia);
}
}
}//package org.flintparticles.twoD.particles
Section 36
//ParticleCreator2D (org.flintparticles.twoD.particles.ParticleCreator2D)
package org.flintparticles.twoD.particles {
import org.flintparticles.common.particles.*;
public class ParticleCreator2D implements ParticleFactory {
private var _particles:Array;
public function ParticleCreator2D(){
_particles = new Array();
}
public function clearAllParticles():void{
_particles = new Array();
}
public function disposeParticle(_arg1:Particle):void{
if ((_arg1 is Particle2D)){
_arg1.initialize();
_particles.push(_arg1);
};
}
public function createParticle():Particle{
if (_particles.length){
return (_particles.pop());
};
return (new Particle2D());
}
}
}//package org.flintparticles.twoD.particles
Section 37
//BitmapRenderer (org.flintparticles.twoD.renderers.BitmapRenderer)
package org.flintparticles.twoD.renderers {
import flash.geom.*;
import flash.display.*;
import flash.filters.*;
import org.flintparticles.twoD.particles.*;
import org.flintparticles.common.renderers.*;
public class BitmapRenderer extends SpriteRendererBase {
protected var _preFilters:Array;
protected var _bitmap:Bitmap;
protected var _bitmapData:BitmapData;
protected var _colorMap:Array;
protected var _smoothing:Boolean;
protected var _canvas:Rectangle;
protected var _postFilters:Array;
protected static var ZERO_POINT:Point = new Point(0, 0);
public function BitmapRenderer(_arg1:Rectangle, _arg2:Boolean=false){
mouseEnabled = false;
mouseChildren = false;
_smoothing = _arg2;
_preFilters = new Array();
_postFilters = new Array();
_canvas = _arg1;
createBitmap();
}
public function addFilter(_arg1:BitmapFilter, _arg2:Boolean=false):void{
if (_arg2){
_postFilters.push(_arg1);
} else {
_preFilters.push(_arg1);
};
}
protected function createBitmap():void{
if (!_canvas){
return;
};
if (((_bitmap) && (_bitmapData))){
_bitmapData.dispose();
_bitmapData = null;
};
if (_bitmap){
removeChild(_bitmap);
};
_bitmap = new Bitmap(null, "auto", _smoothing);
_bitmapData = new BitmapData(_canvas.width, _canvas.height, true, 0);
_bitmap.bitmapData = _bitmapData;
addChild(_bitmap);
_bitmap.x = _canvas.x;
_bitmap.y = _canvas.y;
}
public function clearPaletteMap():void{
_colorMap = null;
}
public function get canvas():Rectangle{
return (_canvas);
}
public function removeFilter(_arg1:BitmapFilter):void{
var _local2:int;
while (_local2 < _preFilters.length) {
if (_preFilters[_local2] == _arg1){
_preFilters.splice(_local2, 1);
return;
};
_local2++;
};
_local2 = 0;
while (_local2 < _postFilters.length) {
if (_postFilters[_local2] == _arg1){
_postFilters.splice(_local2, 1);
return;
};
_local2++;
};
}
public function set canvas(_arg1:Rectangle):void{
_canvas = _arg1;
createBitmap();
}
protected function drawParticle(_arg1:Particle2D):void{
var _local2:Matrix;
_local2 = _arg1.matrixTransform;
_local2.translate(-(_canvas.x), -(_canvas.y));
_bitmapData.draw(_arg1.image, _local2, _arg1.colorTransform, DisplayObject(_arg1.image).blendMode, null, _smoothing);
}
public function setPaletteMap(_arg1:Array=null, _arg2:Array=null, _arg3:Array=null, _arg4:Array=null):void{
_colorMap = new Array(4);
_colorMap[0] = _arg4;
_colorMap[1] = _arg1;
_colorMap[2] = _arg2;
_colorMap[3] = _arg3;
}
public function get bitmapData():BitmapData{
return (_bitmapData);
}
override protected function renderParticles(_arg1:Array):void{
var _local2:int;
var _local3:int;
if (!_bitmap){
return;
};
_bitmapData.lock();
_local3 = _preFilters.length;
_local2 = 0;
while (_local2 < _local3) {
_bitmapData.applyFilter(_bitmapData, _bitmapData.rect, BitmapRenderer.ZERO_POINT, _preFilters[_local2]);
_local2++;
};
if ((((_local3 == 0)) && ((_postFilters.length == 0)))){
_bitmapData.fillRect(_bitmap.bitmapData.rect, 0);
};
_local3 = _arg1.length;
if (_local3){
_local2 = _local3;
while (_local2--) {
drawParticle(_arg1[_local2]);
};
};
_local3 = _postFilters.length;
_local2 = 0;
while (_local2 < _local3) {
_bitmapData.applyFilter(_bitmapData, _bitmapData.rect, BitmapRenderer.ZERO_POINT, _postFilters[_local2]);
_local2++;
};
if (_colorMap){
_bitmapData.paletteMap(_bitmapData, _bitmapData.rect, ZERO_POINT, _colorMap[1], _colorMap[2], _colorMap[3], _colorMap[0]);
};
_bitmapData.unlock();
}
}
}//package org.flintparticles.twoD.renderers
Section 38
//DiscZone (org.flintparticles.twoD.zones.DiscZone)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public class DiscZone implements Zone2D {
private var _innerRadius:Number;
private var _outerRadius:Number;
private var _center:Point;
private var _innerSq:Number;
private var _outerSq:Number;
private static const TWOPI:Number = 6.28318530717959;
public function DiscZone(_arg1:Point, _arg2:Number, _arg3:Number=0){
if (_arg2 < _arg3){
throw (new Error((((("The outerRadius (" + _arg2) + ") can't be smaller than the innerRadius (") + _arg3) + ") in your DiscZone. N.B. the outerRadius is the second argument in the constructor and the innerRadius is the third argument.")));
};
_center = _arg1;
_innerRadius = _arg3;
_outerRadius = _arg2;
_innerSq = (_innerRadius * _innerRadius);
_outerSq = (_outerRadius * _outerRadius);
}
public function set outerRadius(_arg1:Number):void{
_outerRadius = _arg1;
_outerSq = (_outerRadius * _outerRadius);
}
public function get center():Point{
return (_center);
}
public function getArea():Number{
return ((Math.PI * (_outerSq - _innerSq)));
}
public function getLocation():Point{
var _local1:Number = Math.random();
var _local2:Point = Point.polar((_innerRadius + ((1 - (_local1 * _local1)) * (_outerRadius - _innerRadius))), (Math.random() * TWOPI));
_local2.x = (_local2.x + _center.x);
_local2.y = (_local2.y + _center.y);
return (_local2);
}
public function get outerRadius():Number{
return (_outerRadius);
}
public function get innerRadius():Number{
return (_innerRadius);
}
public function set innerRadius(_arg1:Number):void{
_innerRadius = _arg1;
_innerSq = (_innerRadius * _innerRadius);
}
public function set center(_arg1:Point):void{
_center = _arg1;
}
public function contains(_arg1:Number, _arg2:Number):Boolean{
_arg1 = (_arg1 - _center.x);
_arg2 = (_arg2 - _center.y);
var _local3:Number = ((_arg1 * _arg1) + (_arg2 * _arg2));
return ((((_local3 <= _outerSq)) && ((_local3 >= _innerSq))));
}
}
}//package org.flintparticles.twoD.zones
Section 39
//Zone2D (org.flintparticles.twoD.zones.Zone2D)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public interface Zone2D {
function getArea():Number;
function getLocation():Point;
function contains(_arg1:Number, _arg2:Number):Boolean;
}
}//package org.flintparticles.twoD.zones
Section 40
//AdvancedButton (AdvancedButton)
package {
import flash.events.*;
import flash.display.*;
public class AdvancedButton extends MovieClip {
public function AdvancedButton(){
buttonMode = true;
useHandCursor = true;
mouseChildren = false;
this.gotoAndStop(1);
addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
}
public function onMouseDown(_arg1:MouseEvent):void{
this.gotoAndStop(3);
}
public function onMouseUp(_arg1:MouseEvent):void{
this.gotoAndStop(2);
}
public function onMouseOver(_arg1:MouseEvent):void{
this.gotoAndStop(2);
}
public function onMouseOut(_arg1:MouseEvent):void{
this.gotoAndStop(1);
}
}
}//package
Section 41
//advBlock1 (advBlock1)
package {
import flash.display.*;
public dynamic class advBlock1 extends MovieClip {
}
}//package
Section 42
//advButton (advButton)
package {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.system.*;
public class advButton extends MovieClip {
public function advButton(){
super();
addFrameScript(0, frame1);
Security.allowDomain("*");
useHandCursor = true;
buttonMode = true;
addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
navigateToURL(new URLRequest("http://tds.mutanky.com/?gameid=ekeeper_sexy_shape_hentai_set&version=1&action=adv_button"), "_blank");
});
}
function frame1(){
stop();
}
}
}//package
Section 43
//ball (ball)
package {
import flash.display.*;
public dynamic class ball extends MovieClip {
}
}//package
Section 44
//bottom_panel (bottom_panel)
package {
import flash.events.*;
import flash.display.*;
public class bottom_panel extends MovieClip {
private var o_state:Boolean;
private var openerMC:MovieClip;
public var opener_mc:opener;
public function bottom_panel(){
openerMC = (getChildByName("opener_mc") as MovieClip);
this.y = (Main.Application.g_height - 9);
openerMC.gotoAndStop(2);
o_state = ((openerMC.currentFrame)==1) ? true : false;
openerMC.addEventListener(MouseEvent.CLICK, onClick);
}
public function Switch(_arg1:int=0, _arg2:Boolean=false):void{
if (_arg1 != 0){
openerMC.gotoAndStop(_arg1);
};
o_state = ((openerMC.currentFrame)==1) ? false : true;
if (_arg2 == false){
this.y = (Main.Application.g_height - ((openerMC.currentFrame)==1) ? (this.height - 20) : 9);
addEventListener(Event.ENTER_FRAME, frameHandler);
} else {
this.y = (Main.Application.g_height - ((openerMC.currentFrame)==1) ? 9 : (this.height - 20));
openerMC.gotoAndStop(((openerMC.currentFrame)==1) ? 2 : 1);
Main.Application.MoveButtons(((openerMC.currentFrame)==1) ? 280 : 350, false);
};
}
public function frameHandler(_arg1:Event):void{
if (o_state == true){
if (this.y > ((Main.Application.g_height - this.height) + 20)){
this.y = (this.y - 5);
Main.Application.MoveButtons(-5);
} else {
this.y = ((Main.Application.g_height - this.height) + 20);
openerMC.gotoAndStop(((openerMC.currentFrame)==1) ? 2 : 1);
removeEventListener(Event.ENTER_FRAME, frameHandler);
};
} else {
if (this.y < (Main.Application.g_height - 9)){
this.y = (this.y + 5);
Main.Application.MoveButtons(5);
} else {
this.y = (Main.Application.g_height - 9);
openerMC.gotoAndStop(((openerMC.currentFrame)==1) ? 2 : 1);
removeEventListener(Event.ENTER_FRAME, frameHandler);
};
};
}
public function onClick(_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
Switch();
}
}
}//package
Section 45
//bottom_panel_adv (bottom_panel_adv)
package {
import flash.events.*;
import flash.display.*;
public class bottom_panel_adv extends MovieClip {
public function bottom_panel_adv(){
var _local3:Number;
var _local5:int;
var _local6:advButton;
var _local7:image_mask;
super();
var _local1:Array = new Array();
var _local2:Boolean;
var _local4:int;
while (_local4 < 4) {
_local2 = false;
_local3 = (Math.round((Math.random() * 7)) + 1);
_local5 = 0;
while (_local5 < _local4) {
if (_local1[_local5] == _local3){
_local2 = true;
break;
};
_local5++;
};
if (_local2 == true){
while (_local2 == true) {
_local2 = false;
_local3 = (Math.round((Math.random() * 7)) + 1);
_local5 = 0;
while (_local5 < _local4) {
if (_local1[_local5] == _local3){
_local2 = true;
};
_local5++;
};
};
};
_local1.push(_local3);
_local6 = new advButton();
_local7 = new image_mask();
addChild(_local6);
addChild(_local7);
_local6.cacheAsBitmap = true;
_local7.cacheAsBitmap = true;
_local6.mask = _local7;
_local6.gotoAndStop(_local3);
_local6.y = 29;
_local6.x = (19 + (_local4 * 64));
_local7.y = 29;
_local7.x = (19 + (_local4 * 64));
_local4++;
};
}
}
}//package
Section 46
//btnFreePorn (btnFreePorn)
package {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.system.*;
public class btnFreePorn extends SimpleButton {
public function btnFreePorn(){
super();
Security.allowDomain("*");
useHandCursor = true;
addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
navigateToURL(new URLRequest("http://myhornybunny.mysexhost.com/tds/redirect.php?gameid=ssps&action=free-porn"), "_blank");
});
}
}
}//package
Section 47
//btnMoreGames (btnMoreGames)
package {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.system.*;
public class btnMoreGames extends SimpleButton {
public function btnMoreGames(){
super();
Security.allowDomain("*");
useHandCursor = true;
addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
navigateToURL(new URLRequest("http://myhornybunny.mysexhost.com/tds/redirect.php?gameid=ssps&action=more-games"), "_blank");
});
}
}
}//package
Section 48
//btnMoreGirls (btnMoreGirls)
package {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.system.*;
public class btnMoreGirls extends SimpleButton {
public function btnMoreGirls(){
super();
Security.allowDomain("*");
useHandCursor = true;
addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
navigateToURL(new URLRequest("http://myhornybunny.mysexhost.com/tds/redirect.php?gameid=ssps&action=more-girls"), "_blank");
});
}
}
}//package
Section 49
//btnMoreGirls2 (btnMoreGirls2)
package {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.system.*;
public class btnMoreGirls2 extends SimpleButton {
public function btnMoreGirls2(){
super();
Security.allowDomain("*");
useHandCursor = true;
addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
navigateToURL(new URLRequest("http://myhornybunny.mysexhost.com/tds/redirect.php?gameid=ssps&action=more-girls-main-menu"), "_blank");
});
}
}
}//package
Section 50
//btnNewGame (btnNewGame)
package {
import flash.events.*;
import flash.display.*;
public class btnNewGame extends SimpleButton {
public function btnNewGame(){
addEventListener(MouseEvent.CLICK, onClick);
}
public function onClick(_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
Main.Application.ReInit();
}
}
}//package
Section 51
//btnNewGame2 (btnNewGame2)
package {
import flash.events.*;
import flash.display.*;
public class btnNewGame2 extends SimpleButton {
public function btnNewGame2(){
addEventListener(MouseEvent.CLICK, onClick);
}
public function onClick(_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
Main.Application.ReInit();
}
}
}//package
Section 52
//btnNextLevel (btnNextLevel)
package {
import flash.events.*;
import flash.display.*;
public class btnNextLevel extends SimpleButton {
public function btnNextLevel(){
addEventListener(MouseEvent.CLICK, onClick);
}
public function onClick(_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
Main.Application.NextLevel();
}
}
}//package
Section 53
//btnPrivateContent (btnPrivateContent)
package {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.system.*;
public class btnPrivateContent extends SimpleButton {
public function btnPrivateContent(){
super();
Security.allowDomain("*");
useHandCursor = true;
addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
navigateToURL(new URLRequest("http://tds.mutanky.com/?gameid=ekeeper_sexy_shape_hentai_set&version=1&action=private-content"), "_blank");
});
}
}
}//package
Section 54
//btnSinglePlayer (btnSinglePlayer)
package {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
public class btnSinglePlayer extends SimpleButton {
public function btnSinglePlayer(){
addEventListener(MouseEvent.CLICK, onClick);
}
public function onClick(_arg1:MouseEvent):void{
var event = _arg1;
Main.Application.shapeMC.visible = true;
Main.Application.babeMC.visible = false;
Main.Application.soundControl.Play(0, 1, false);
Main.Application.last_mousex = (Main.Application.g_width / 2);
Main.Application.last_mousey = (Main.Application.g_height / 2);
var _timer:Timer = new Timer(100, 1);
_timer.addEventListener(TimerEvent.TIMER, function (_arg1:Event):void{
Main.Application.NewGame();
});
_timer.start();
}
}
}//package
Section 55
//btnTouchSound (btnTouchSound)
package {
import flash.events.*;
import flash.display.*;
public class btnTouchSound extends SimpleButton {
public function btnTouchSound(){
addEventListener(MouseEvent.CLICK, onClick);
}
public function onClick(_arg1:MouseEvent):void{
Main.Application.soundControl.TouchSound();
}
}
}//package
Section 56
//btnTryAgain (btnTryAgain)
package {
import flash.events.*;
import flash.display.*;
public class btnTryAgain extends SimpleButton {
public function btnTryAgain(){
addEventListener(MouseEvent.CLICK, onClick);
}
public function onClick(_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
Main.Application.ReplayLevel();
}
}
}//package
Section 57
//button_click (button_click)
package {
import flash.media.*;
public dynamic class button_click extends Sound {
}
}//package
Section 58
//coin (coin)
package {
import flash.display.*;
public dynamic class coin extends MovieClip {
public var coinAmin:MovieClip;
}
}//package
Section 59
//coin_icon (coin_icon)
package {
import flash.display.*;
public dynamic class coin_icon extends MovieClip {
}
}//package
Section 60
//coin1 (coin1)
package {
import flash.media.*;
public dynamic class coin1 extends Sound {
}
}//package
Section 61
//coin2 (coin2)
package {
import flash.media.*;
public dynamic class coin2 extends Sound {
}
}//package
Section 62
//coin3 (coin3)
package {
import flash.media.*;
public dynamic class coin3 extends Sound {
}
}//package
Section 63
//configManager (configManager)
package {
import flash.utils.*;
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.system.*;
public class configManager extends MovieClip {
var showonload:String;// = null
var popupurl:String;// = ""
var areas:Dictionary;
var host:String;// = "myhornybunny.mysexhost.com/tds/getConfig.php"
public var values:Array;
var gid:String;
var ver:uint;
var areacontent:Dictionary;
var configXML:XML;
public function configManager(_arg1:String, _arg2:uint, _arg3:Stage):void{
var ioErrorHandler:Function;
var loadXML:Function;
var gameid = _arg1;
var version = _arg2;
var st = _arg3;
configXML = <config></config>
;
areas = new Dictionary(true);
areacontent = new Dictionary(true);
values = [];
super();
ioErrorHandler = function (_arg1:Event):void{
trace("config fail");
};
loadXML = function (_arg1:Event):void{
var k:uint;
var tmpfn:Function;
var e = _arg1;
configXML = new XML(e.target.data);
var i:uint;
while (i < configXML.stages.stage.length()) {
k = 0;
while (k < configXML.stages.stage[i].banners.banner.length()) {
if (configXML.stages.stage[i].banners.banner[k].@autoload == "true"){
trace(((("get content " + configXML.stages.stage[i].@name) + " loc:") + configXML.stages.stage[i].banners.banner[k].@location));
getContent(configXML.stages.stage[i].@name, k, configXML.stages.stage[i].banners.banner[k].@location, configXML.stages.stage[i].banners.banner[k].@x, configXML.stages.stage[i].banners.banner[k].@y, configXML.stages.stage[i].banners.banner[k].@href);
};
if (configXML.stages.stage[i].@name == "popup"){
tmpfn = function (_arg1:Event):void{
if (popupurl != ""){
navigateToURL(new URLRequest(popupurl), "_blank");
};
st.removeEventListener(MouseEvent.CLICK, tmpfn);
};
st.addEventListener(MouseEvent.CLICK, tmpfn);
popupurl = configXML.stages.stage[i].banners.banner[k].@href;
};
k = (k + 1);
};
i = (i + 1);
};
i = 0;
while (i < configXML.values.value.length()) {
if (String(configXML.values.value[i].@stagename).length > 0){
values[configXML.values.value[i].@name] = [configXML.values.value[i].@stagename, configXML.values.value[i].@text];
} else {
values[String(configXML.values.value[i].@name)] = String(configXML.values.value[i].@value);
};
i = (i + 1);
};
dispatchEvent(new Event("CONFIGLOADED"));
trace("config loaded\n\n");
};
gid = gameid;
ver = version;
var loader:URLLoader = new URLLoader();
loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, ioErrorHandler);
loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
loader.addEventListener(Event.COMPLETE, loadXML);
loader.load(new URLRequest(((((((("http://" + host) + "?gameid=") + gameid) + "&version=") + version) + "&player=") + Capabilities.version)));
}
public function addArea(_arg1:String, _arg2:MovieClip):void{
var bannerid:uint;
var i:uint;
var k:uint;
var id = _arg1;
var area = _arg2;
if (areas[id] == undefined){
areas[id] = area;
if (areacontent[id] == undefined){
areacontent[id] = [];
i = 0;
while (i < configXML.stages.stage.length()) {
if (String(configXML.stages.stage[i].@name) == id){
k = 0;
while (k < configXML.stages.stage[i].banners.banner.length()) {
getContent(configXML.stages.stage[i].@name, k, configXML.stages.stage[i].banners.banner[k].@location, configXML.stages.stage[i].banners.banner[k].@x, configXML.stages.stage[i].banners.banner[k].@y, configXML.stages.stage[i].banners.banner[k].@href);
k = (k + 1);
};
};
i = (i + 1);
};
};
};
bannerid = int((Math.random() * areacontent[id].length));
if (((((!((areacontent[id][bannerid] == null))) && (!((areacontent[id][bannerid] == undefined))))) && (!(area.contains(areacontent[id][bannerid]))))){
area.addChild(areacontent[id][bannerid]);
dispatchEvent(new Event(("LOADED_" + id)));
if (areacontent[id][bannerid].href != ""){
areacontent[id][bannerid].addEventListener(MouseEvent.CLICK, function (_arg1:Event):void{
navigateToURL(new URLRequest(areacontent[id][bannerid].href), "_blank");
});
};
} else {
showonload = id;
};
trace((("start " + id) + " area"));
}
function getContent(_arg1:String, _arg2:uint, _arg3:String, _arg4:Number, _arg5:Number, _arg6:String):void{
var loadcontent:Function;
var id = _arg1;
var arrid = _arg2;
var loc = _arg3;
var x = _arg4;
var y = _arg5;
var href = _arg6;
loadcontent = function (_arg1:Event):void{
var bannerid:uint;
var e = _arg1;
if (areacontent[id] == undefined){
areacontent[id] = [];
};
e.target.content.x = x;
e.target.content.y = y;
e.target.content.href = href;
e.target.content.gameid = gid;
e.target.content.version = ver;
areacontent[id][arrid] = e.target.content;
if (showonload == id){
bannerid = int((Math.random() * areacontent[id].length));
areas[id].addChild(areacontent[id][bannerid]);
if (areacontent[id][bannerid].href != ""){
areacontent[id][bannerid].addEventListener(MouseEvent.CLICK, function (_arg1:Event):void{
navigateToURL(new URLRequest(areacontent[id][bannerid].href), "_blank");
});
};
};
trace("content loaded");
trace(("LOADED_" + id));
dispatchEvent(new Event(("LOADED_" + id)));
};
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadcontent);
loader.load(new URLRequest(loc));
}
}
}//package
Section 64
//fireworkExplode (fireworkExplode)
package {
import flash.media.*;
public dynamic class fireworkExplode extends Sound {
}
}//package
Section 65
//g1 (g1)
package {
import flash.media.*;
public dynamic class g1 extends Sound {
}
}//package
Section 66
//Gallery (Gallery)
package {
import flash.events.*;
import flash.display.*;
public class Gallery extends MovieClip {
private var o_state:Boolean;
private var openerMC:MovieClip;
public var left_mc:panel_left;
private var switchig:Boolean;// = false
public var right_mc:panel_right;
private var leftMC:MovieClip;
public var opener_mc:opener;
private var opened:Boolean;// = false
private var rightMC:MovieClip;
public function Gallery(){
openerMC = (getChildByName("opener_mc") as MovieClip);
leftMC = (getChildByName("left_mc") as MovieClip);
rightMC = (getChildByName("right_mc") as MovieClip);
this.y = ((-1 * this.height) + 35);
openerMC.gotoAndStop(1);
o_state = ((openerMC.currentFrame)==1) ? true : false;
addEventListener(MouseEvent.MOUSE_OVER, MouseOverHandle);
openerMC.addEventListener(MouseEvent.CLICK, onClick);
leftMC.useHandCursor = true;
leftMC.buttonMode = true;
leftMC.addEventListener(MouseEvent.CLICK, onLeftClick);
rightMC.useHandCursor = true;
rightMC.buttonMode = true;
rightMC.addEventListener(MouseEvent.CLICK, onRightClick);
}
public function MouseOverHandle(_arg1:MouseEvent):void{
if (switchig == true){
return;
};
if (opened == true){
return;
};
opened = true;
Main.Application.soundControl.Play(0, 1, false);
Switch();
}
public function onRightClick(_arg1:MouseEvent):void{
if (Main.Application.gallery_array.length < 8){
return;
};
Main.Application.gallery_pos++;
if (Main.Application.gallery_pos > ((Main.Application.gallery_array.length - 1) - 7)){
Main.Application.gallery_pos = ((Main.Application.gallery_array.length - 1) - 7);
};
Main.Application.ReDrawGallery();
}
public function MouseOutHandle(_arg1:MouseEvent):void{
if (switchig == true){
return;
};
if (opened == false){
return;
};
opened = false;
Main.Application.soundControl.Play(0, 1, false);
Switch();
}
public function Switch(_arg1:int=0, _arg2:Boolean=false):void{
if (_arg1 != 0){
openerMC.gotoAndStop(_arg1);
};
o_state = ((openerMC.currentFrame)==1) ? false : true;
opened = !(o_state);
if (_arg2 == false){
this.y = ((openerMC.currentFrame)==1) ? ((-1 * this.height) + 35) : 0;
switchig = true;
addEventListener(Event.ENTER_FRAME, frameHandler);
} else {
this.y = ((openerMC.currentFrame)==1) ? 0 : ((-1 * this.height) + 35);
openerMC.gotoAndStop(((openerMC.currentFrame)==1) ? 2 : 1);
};
}
public function onLeftClick(_arg1:MouseEvent):void{
Main.Application.gallery_pos--;
if (Main.Application.gallery_pos < 0){
Main.Application.gallery_pos = 0;
};
Main.Application.ReDrawGallery();
}
public function frameHandler(_arg1:Event):void{
if (o_state == true){
if (this.y > ((-1 * this.height) + 35)){
this.y = (this.y - 5);
} else {
this.y = ((-1 * this.height) + 35);
openerMC.gotoAndStop(((openerMC.currentFrame)==1) ? 2 : 1);
removeEventListener(Event.ENTER_FRAME, frameHandler);
switchig = false;
};
} else {
if (this.y < 0){
this.y = (this.y + 5);
} else {
this.y = 0;
openerMC.gotoAndStop(((openerMC.currentFrame)==1) ? 2 : 1);
removeEventListener(Event.ENTER_FRAME, frameHandler);
switchig = false;
};
};
}
public function onClick(_arg1:MouseEvent):void{
Main.Application.soundControl.Play(0, 1, false);
Switch();
}
}
}//package
Section 67
//game_over (game_over)
package {
import flash.media.*;
public dynamic class game_over extends Sound {
}
}//package
Section 68
//gameTheme (gameTheme)
package {
import flash.media.*;
public dynamic class gameTheme extends Sound {
}
}//package
Section 69
//image_mask (image_mask)
package {
import flash.display.*;
public dynamic class image_mask extends MovieClip {
}
}//package
Section 70
//images (images)
package {
import flash.display.*;
public dynamic class images extends MovieClip {
public function images(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 71
//images_masks (images_masks)
package {
import flash.display.*;
public dynamic class images_masks extends MovieClip {
public function images_masks(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 72
//images_preview (images_preview)
package {
import flash.events.*;
import flash.display.*;
import flash.system.*;
public class images_preview extends MovieClip {
public function images_preview(){
addFrameScript(0, frame1);
Security.allowDomain("*");
useHandCursor = true;
buttonMode = true;
addEventListener(MouseEvent.CLICK, onClick);
}
public function babeHandler(_arg1:Event){
if (Main.Application.babeMC.alpha < 1){
Main.Application.babeMC.alpha = (Main.Application.babeMC.alpha + 0.02);
} else {
Main.Application.babeMC.removeEventListener(Event.ENTER_FRAME, babeHandler);
};
}
public function onClick(_arg1:MouseEvent){
Main.Application.babeMC.addEventListener(Event.ENTER_FRAME, babeHandler);
Main.Application.babeMC.gotoAndStop(this.currentFrame);
Main.Application.babeMC.alpha = 0;
Main.Application.soundControl.Play(0, 1, false);
Main.Application.whiteMC.visible = false;
Main.Application.babe_maskMC.visible = false;
Main.Application.level_progressMC.visible = false;
Main.Application.timer_progressMC.visible = false;
Main.Application.babeMC.visible = true;
Main.Application.galleryMC.Switch();
}
function frame1(){
stop();
}
}
}//package
Section 73
//infoProgress (infoProgress)
package {
import flash.display.*;
import flash.text.*;
public dynamic class infoProgress extends MovieClip {
public var info:TextField;
}
}//package
Section 74
//kick (kick)
package {
import flash.media.*;
public dynamic class kick extends Sound {
}
}//package
Section 75
//level_progress (level_progress)
package {
import flash.display.*;
public dynamic class level_progress extends MovieClip {
public var ProgressBarMC:MovieClip;
}
}//package
Section 76
//Main (Main)
package {
import flash.geom.*;
import flash.utils.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.common.counters.*;
import flash.events.*;
import org.flintparticles.twoD.zones.*;
import flash.display.*;
import flash.filters.*;
import org.flintparticles.common.energyEasing.*;
import org.flintparticles.twoD.actions.*;
import org.flintparticles.twoD.initializers.*;
import org.flintparticles.twoD.emitters.*;
import org.flintparticles.common.displayObjects.*;
import flash.net.*;
import flash.text.*;
import org.flintparticles.twoD.renderers.*;
import flash.system.*;
import org.flintparticles.twoD.activities.*;
public class Main extends MovieClip {
public var coins:Number;// = 0
public var levels_ims:Array;
public var gallery_pos:int;// = 0
public var loader:URLLoader;
private var coin_timer:Timer;
private var btnMoreGirlsMC:btnMoreGirls;
public var level_progressMC:level_progress;
public var coinMC:coin;
private var btnTouchSoundMC:btnTouchSound;
public var gallery_array:Array;
private var btnTryAgainMC:btnTryAgain;
private var g_cell:Number;// = 35
public var fireworks_emitter:Emitter2D;
public var last_mousey:Number;
public var config:configManager;
public var last_mousex:Number;// = -1
private var current_level:Number;// = 1
public var layers:Array;
public var soundControl:SoundControl;
private var open_fields:Number;// = 0
public var SplashMC:Splash;
public var galleryMC:Gallery;
private var k:Number;// = 0.1
private var level_progressBar:Sprite;
public var MainMenuMC:MainMenu;
public var whiteMC:white;
private var maskMC:Bitmap;
public var ball_kick:Boolean;// = false
private var level_percent:int;
private var level_percent_default:int;// = 60
public var gameid:String;// = "ssps"
private var drawMtrx:Matrix;
private var distx:Number;
private var disty:Number;
private var dy:Number;// = 5
private var gameLoaded:Boolean;// = false
private var dx:Number;// = 5
public var ProgressBarMC:MovieClip;
public var babe_maskMC:images_masks;
private var progressBar:Sprite;
public var coins_max:Number;// = 10
private var level_time:Number;
public var config_loaded:Boolean;// = false
private var btnNextLevelMC:btnNextLevel;
private var timer_progressBar:Sprite;
public var advBlock1MC:advBlock1;
private var level_over:Boolean;// = false
private var level_time_default:Number;// = 20000
private var shadowMC:shadow;
public var timer_progressMC:timer_progress;
private var level_timer:Timer;
private var btnNewGameMC:btnNewGame2;
private var infoProgressMC:infoProgress;
private var ballMC:ball;
public var babeMC:images;
public var version:uint;// = 1
public var ball_tick:Boolean;// = false
public var level_start:Boolean;// = false
public var g_width:Number;// = 550
private var count_of_fields:Number;// = 0
public var end_of_game:Boolean;// = false
public var shapeMC:Sprite;
private var field:Array;
public var mouse_down:Boolean;
public var g_height:Number;// = 400
public static var Application:Main;
public function Main(){
level_time = level_time_default;
gallery_array = new Array();
level_percent = level_percent_default;
field = new Array();
layers = new Array(5);
levels_ims = new Array();
super();
Application = this;
Security.allowDomain("*");
config = new configManager(gameid, version, stage);
config.addEventListener("CONFIGLOADED", cfgLoaded);
stage.showDefaultContextMenu = false;
stage.scaleMode = StageScaleMode.NO_SCALE;
progressBar = (getChildByName("ProgressBarMC") as Sprite);
progressBar.scaleX = 0;
addEventListener(Event.ENTER_FRAME, Update);
loaderInfo.addEventListener(Event.COMPLETE, loadingComplite);
loaderInfo.addEventListener(ProgressEvent.PROGRESS, loaderUpdate);
stop();
var _local1:int;
while (_local1 < layers.length) {
layers[_local1] = new Sprite();
stage.addChild(layers[_local1]);
_local1++;
};
}
public function ReInit(){
babeMC.visible = false;
btnNewGameMC.visible = false;
btnNextLevelMC.visible = false;
btnTryAgainMC.visible = false;
btnMoreGirlsMC.visible = false;
galleryMC.visible = false;
shapeMC.visible = false;
btnTouchSoundMC.visible = false;
infoProgressMC.visible = false;
}
public function gameOver(){
if (level_over == true){
return;
};
level_over = true;
level_start = false;
soundControl.Play(3, 1, false);
ballMC.visible = false;
shadowMC.visible = false;
galleryMC.visible = true;
btnTryAgainMC.visible = true;
btnNextLevelMC.visible = false;
btnMoreGirlsMC.y = btnTryAgainMC.y;
btnNewGameMC.visible = true;
btnMoreGirlsMC.visible = true;
StopTimers();
}
public function coinTickHandler2(_arg1:Event){
coin_timer.stop();
coin_timer.removeEventListener(TimerEvent.TIMER, coinTickHandler2);
coinMC.coinAmin.gotoAndPlay(9);
soundControl.Play(8, 1, false);
coin_timer = new Timer((level_time / 3), 1);
coin_timer.addEventListener(TimerEvent.TIMER, coinTickHandler);
coin_timer.start();
}
public function ReDrawGallery(){
var _local1:int;
while (_local1 < gallery_array.length) {
if ((((_local1 < gallery_pos)) || ((_local1 > (gallery_pos + 7))))){
gallery_array[_local1][0].visible = false;
gallery_array[_local1][1].visible = false;
} else {
gallery_array[_local1][0].visible = true;
gallery_array[_local1][1].visible = true;
gallery_array[_local1][0].x = (19 + ((_local1 - gallery_pos) * 64));
gallery_array[_local1][0].y = 3;
gallery_array[_local1][1].x = (19 + ((_local1 - gallery_pos) * 64));
gallery_array[_local1][1].y = 3;
};
_local1++;
};
}
function Init():void{
var _local2:Number;
var _local5:int;
if (gameLoaded == true){
return;
};
gameLoaded = true;
coinMC = new coin();
babeMC = new images();
babe_maskMC = new images_masks();
btnNextLevelMC = new btnNextLevel();
btnTryAgainMC = new btnTryAgain();
btnMoreGirlsMC = new btnMoreGirls();
btnNewGameMC = new btnNewGame2();
btnTouchSoundMC = new btnTouchSound();
shapeMC = new Sprite();
whiteMC = new white();
ballMC = new ball();
shadowMC = new shadow();
level_progressMC = new level_progress();
timer_progressMC = new timer_progress();
infoProgressMC = new infoProgress();
maskMC = new Bitmap(new BitmapData(g_width, g_height));
drawMtrx = new Matrix();
soundControl = new SoundControl();
soundControl.AddSound(new button_click());
soundControl.AddSound(new fireworkExplode());
soundControl.AddSound(new tada());
soundControl.AddSound(new game_over());
soundControl.AddSound(new kick());
soundControl.AddSound(new tick());
soundControl.AddSound(new gameTheme());
soundControl.AddSound(new coin1());
soundControl.AddSound(new coin2());
soundControl.AddSound(new coin3());
soundControl.AddSound(new g1());
levels_ims = new Array();
var _local1:Boolean;
var _local3:int;
while (_local3 < 20) {
_local1 = false;
_local2 = (Math.round((Math.random() * 39)) + 1);
_local5 = 0;
while (_local5 < _local3) {
if (levels_ims[_local5] == _local2){
_local1 = true;
break;
};
_local5++;
};
if (_local1 == true){
while (_local1 == true) {
_local1 = false;
_local2 = (Math.round((Math.random() * 39)) + 1);
_local5 = 0;
while (_local5 < _local3) {
if (levels_ims[_local5] == _local2){
_local1 = true;
};
_local5++;
};
};
};
levels_ims.push(_local2);
_local3++;
};
MainMenuMC = new MainMenu();
layers[2].addChild(MainMenuMC);
SplashMC = new Splash();
layers[2].addChild(SplashMC);
whiteMC.cacheAsBitmap = true;
maskMC.cacheAsBitmap = true;
layers[3].addChild(shapeMC);
shapeMC.addChild(new white());
shapeMC.addChild(babeMC);
shapeMC.addChild(babe_maskMC);
shapeMC.addChild(whiteMC);
shapeMC.addChild(maskMC);
shapeMC.addChild(shadowMC);
shapeMC.addChild(coinMC);
shapeMC.addChild(ballMC);
shapeMC.addChild(level_progressMC);
shapeMC.addChild(timer_progressMC);
coinMC.visible = false;
coinMC.x = -100;
coinMC.y = -100;
fireworks_emitter = new Emitter2D();
fireworks_emitter.counter = new Blast(275);
fireworks_emitter.addInitializer(new SharedImage(new Dot(2)));
fireworks_emitter.addInitializer(new ColorInit(4294967040, 4294927872));
fireworks_emitter.addInitializer(new Velocity(new DiscZone(new Point(0, 0), 450, 120)));
fireworks_emitter.addInitializer(new Lifetime(1));
fireworks_emitter.addAction(new Age(Quadratic.easeIn));
fireworks_emitter.addAction(new Move());
fireworks_emitter.addAction(new Fade());
fireworks_emitter.addAction(new Accelerate(0, 0));
fireworks_emitter.addAction(new LinearDrag(0.5));
var _local4:BitmapRenderer = new BitmapRenderer(new Rectangle(0, 0, g_width, g_height));
_local4.addFilter(new BlurFilter(2, 2, 1));
_local4.addFilter(new ColorMatrixFilter([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0.95, 0]));
_local4.addEmitter(fireworks_emitter);
shapeMC.addChild(_local4);
fireworks_emitter.x = (g_width / 2);
fireworks_emitter.y = (g_height / 2);
ballMC.x = (g_width / 2);
ballMC.y = (g_height / 2);
shadowMC.x = (ballMC.x - (ballMC.width / 2));
shadowMC.y = (ballMC.y - (ballMC.height / 2));
level_progressMC.x = 20;
level_progressMC.y = 320;
level_progressBar = (level_progressMC.getChildByName("ProgressBarMC") as Sprite);
level_progressBar.scaleX = 0;
timer_progressMC.x = 20;
timer_progressMC.y = 350;
timer_progressBar = (timer_progressMC.getChildByName("ProgressBarMC") as Sprite);
babeMC.gotoAndStop(levels_ims[(current_level - 1)]);
babe_maskMC.gotoAndStop(levels_ims[(current_level - 1)]);
whiteMC.mask = maskMC;
shapeMC.visible = false;
babeMC.alpha = 0;
galleryMC = new Gallery();
layers[4].addChild(galleryMC);
galleryMC.visible = false;
layers[3].addChild(btnNextLevelMC);
btnNextLevelMC.x = 230;
btnNextLevelMC.y = 360;
btnNextLevelMC.visible = false;
layers[3].addChild(btnTryAgainMC);
btnTryAgainMC.x = 230;
btnTryAgainMC.y = 360;
btnTryAgainMC.visible = false;
layers[3].addChild(btnMoreGirlsMC);
btnMoreGirlsMC.x = 370;
btnMoreGirlsMC.y = 360;
btnMoreGirlsMC.visible = false;
layers[3].addChild(btnNewGameMC);
btnNewGameMC.x = 165;
btnNewGameMC.y = 367;
btnNewGameMC.visible = false;
layers[3].addChild(infoProgressMC);
infoProgressMC.x = 10;
infoProgressMC.y = 360;
infoProgressMC.visible = false;
layers[3].addChild(btnTouchSoundMC);
btnTouchSoundMC.x = 85;
btnTouchSoundMC.y = 363;
btnTouchSoundMC.visible = false;
field = new Array(Math.round((g_width / g_cell)));
_local3 = 0;
while (_local3 < Math.round((g_width / g_cell))) {
field[_local3] = new Array(Math.round((g_height / g_cell)));
_local5 = 0;
while (_local5 < Math.round((g_height / g_cell))) {
field[_local3][_local5] = false;
_local5++;
};
_local3++;
};
count_of_fields = Math.round((((g_width / g_cell) * g_height) / g_cell));
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDownHandler);
stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUpHandler);
soundControl.Play(6, 0, false);
}
public function NextLevel(){
current_level++;
level_time = (level_time - 1000);
level_percent = (level_percent + 2);
InitLevel();
}
public function InitLevel(){
var j:int;
level_over = false;
ball_tick = false;
babeMC.gotoAndStop(levels_ims[(current_level - 1)]);
babe_maskMC.gotoAndStop(levels_ims[(current_level - 1)]);
field = new Array(Math.round((g_width / g_cell)));
var i:int;
while (i < Math.round((g_width / g_cell))) {
field[i] = new Array(Math.round((g_height / g_cell)));
j = 0;
while (j < Math.round((g_height / g_cell))) {
field[i][j] = false;
j = (j + 1);
};
i = (i + 1);
};
open_fields = 0;
babe_maskMC.visible = true;
whiteMC.visible = true;
ballMC.visible = true;
ballMC.x = (g_width / 2);
ballMC.y = (g_height / 2);
shadowMC.visible = true;
shadowMC.x = (ballMC.x - (ballMC.width / 2));
shadowMC.y = (ballMC.y - (ballMC.height / 2));
babeMC.visible = false;
galleryMC.visible = false;
btnNextLevelMC.visible = false;
btnTryAgainMC.visible = false;
btnMoreGirlsMC.visible = false;
infoProgressMC.visible = false;
btnNewGameMC.visible = false;
btnNewGameMC.x = 165;
btnTouchSoundMC.visible = false;
maskMC.bitmapData = new BitmapData(g_width, g_height);
babeMC.alpha = 0;
last_mousex = (g_width / 2);
last_mousey = (g_height / 2);
var _timer:Timer = new Timer(100, 1);
_timer.addEventListener(TimerEvent.TIMER, function (_arg1:Event):void{
Main.Application.startLevel();
});
_timer.start();
level_progressMC.visible = true;
}
public function startLevel(){
level_start = true;
level_timer = new Timer(100, Math.round((level_time / 100)));
level_timer.addEventListener(TimerEvent.TIMER, tickHandler);
level_timer.start();
if (coins < coins_max){
coin_timer = new Timer((level_time / 3), 1);
coin_timer.addEventListener(TimerEvent.TIMER, coinTickHandler);
coin_timer.start();
};
}
public function MoveButtons(_arg1:Number, _arg2:Boolean=true){
if (_arg2 == false){
btnTryAgainMC.y = _arg1;
btnNextLevelMC.y = _arg1;
btnNewGameMC.y = _arg1;
btnMoreGirlsMC.y = _arg1;
infoProgressMC.y = _arg1;
} else {
btnTryAgainMC.y = (btnTryAgainMC.y + _arg1);
btnNextLevelMC.y = (btnNextLevelMC.y + _arg1);
btnNewGameMC.y = (btnNewGameMC.y + _arg1);
btnMoreGirlsMC.y = (btnMoreGirlsMC.y + _arg1);
infoProgressMC.y = (infoProgressMC.y + _arg1);
};
}
private function onMouseDownHandler(_arg1:MouseEvent):void{
mouse_down = true;
}
private function keyDownHandler(_arg1:KeyboardEvent):void{
}
public function cfgLoaded(_arg1:Event):void{
config_loaded = true;
}
private function keyUpHandler(_arg1:KeyboardEvent):void{
}
public function loadingComplite(_arg1:Event):void{
gotoAndStop(1, "Game");
Init();
}
public function AddPictureToGallery(_arg1:int, _arg2:int=0, _arg3:Boolean=false){
var _local8:coin_icon;
var _local4:images_preview = new images_preview();
var _local5:image_mask = new image_mask();
galleryMC.addChild(_local4);
galleryMC.addChild(_local5);
_local4.cacheAsBitmap = true;
_local5.cacheAsBitmap = true;
_local4.mask = _local5;
_local4.gotoAndStop(_arg1);
if (_arg3 == true){
_local8 = new coin_icon();
_local4.addChild(_local8);
_local8.x = 32;
};
gallery_array.push(new Array(_local4, _local5));
var _local6:Number = 0;
if ((current_level + _arg2) > 7){
_local6 = ((current_level + _arg2) - 8);
};
var _local7:int;
while (_local7 < gallery_array.length) {
if (_local7 < _local6){
gallery_array[_local7][0].visible = false;
gallery_array[_local7][1].visible = false;
} else {
gallery_array[_local7][0].visible = true;
gallery_array[_local7][1].visible = true;
gallery_array[_local7][0].x = (19 + ((_local7 - _local6) * 64));
gallery_array[_local7][0].y = 3;
gallery_array[_local7][1].x = (19 + ((_local7 - _local6) * 64));
gallery_array[_local7][1].y = 3;
};
_local7++;
};
gallery_pos = _local6;
}
public function NewGame(){
var _local3:Number;
var _local4:int;
end_of_game = false;
btnNewGameMC.visible = false;
btnMoreGirlsMC.visible = false;
btnTouchSoundMC.visible = true;
current_level = 1;
level_time = level_time_default;
level_percent = level_percent_default;
coins = 0;
var _local1:int;
while (_local1 < gallery_array.length) {
galleryMC.removeChild(gallery_array[_local1][0]);
galleryMC.removeChild(gallery_array[_local1][1]);
_local1++;
};
gallery_array = new Array();
gallery_pos = 0;
levels_ims = new Array();
var _local2:Boolean;
_local1 = 0;
while (_local1 < 20) {
_local2 = false;
_local3 = (Math.round((Math.random() * 39)) + 1);
_local4 = 0;
while (_local4 < _local1) {
if (levels_ims[_local4] == _local3){
_local2 = true;
break;
};
_local4++;
};
if (_local2 == true){
while (_local2 == true) {
_local2 = false;
_local3 = (Math.round((Math.random() * 39)) + 1);
_local4 = 0;
while (_local4 < _local1) {
if (levels_ims[_local4] == _local3){
_local2 = true;
};
_local4++;
};
};
};
levels_ims.push(_local3);
_local1++;
};
InitLevel();
}
public function StopTimers(){
if (coin_timer.running == true){
coin_timer.stop();
coin_timer.removeEventListener(TimerEvent.TIMER, coinTickHandler);
if (coin_timer.running == true){
coin_timer.stop();
coin_timer.removeEventListener(TimerEvent.TIMER, coinTickHandler2);
};
coinMC.x = -100;
coinMC.y = -100;
coinMC.visible = false;
};
}
public function loaderUpdate(_arg1:ProgressEvent):void{
var _local2:Number = Math.floor(((_arg1.bytesLoaded * 100) / _arg1.bytesTotal));
progressBar.scaleX = (_local2 / 100);
if (_local2 == 100){
gotoAndPlay(1, "Game");
Init();
};
}
public function coinTickHandler(_arg1:Event){
coin_timer.stop();
coin_timer.removeEventListener(TimerEvent.TIMER, coinTickHandler);
coinMC.visible = true;
coinMC.x = (50 + Math.round((Math.random() * (g_width - 100))));
coinMC.y = (50 + Math.round((Math.random() * (g_height - 100))));
coinMC.coinAmin.gotoAndPlay(1);
soundControl.Play(7, 1, false);
coin_timer = new Timer(1500, 1);
coin_timer.addEventListener(TimerEvent.TIMER, coinTickHandler2);
coin_timer.start();
}
public function ReplayLevel(){
InitLevel();
}
private function onMouseUpHandler(_arg1:MouseEvent):void{
mouse_down = false;
last_mousex = stage.mouseX;
last_mousey = stage.mouseY;
}
private function Update(_arg1:Event):void{
var _local2:int;
var _local3:TextField;
var _local4:int;
var _local5:int;
if (gameLoaded == false){
return;
};
if ((((level_over == true)) && ((babeMC.alpha < 1)))){
babeMC.alpha = (babeMC.alpha + 0.02);
};
level_progressBar.scaleX = (Math.round(((open_fields * 100) / count_of_fields)) / level_percent);
if ((((level_over == false)) && ((level_start == true)))){
if (ballMC.hitTestObject(coinMC) == true){
coins++;
coin_timer.stop();
coin_timer.removeEventListener(TimerEvent.TIMER, coinTickHandler);
if (coin_timer.running == true){
coin_timer.stop();
coin_timer.removeEventListener(TimerEvent.TIMER, coinTickHandler2);
};
coinMC.x = -100;
coinMC.y = -100;
coinMC.visible = false;
soundControl.Play(9, 1, false);
};
if (Math.round(((open_fields * 100) / count_of_fields)) >= level_percent){
fireworks_emitter.start();
soundControl.Play(1, 1, false);
soundControl.Play(10, 1, false);
infoProgressMC.y = 360;
infoProgressMC.visible = true;
StopTimers();
_local3 = (infoProgressMC.getChildByName("info") as TextField);
_local3.text = ((current_level + " / ") + (levels_ims.length - 10));
if (current_level == (levels_ims.length - 10)){
soundControl.Play(2, 1, false);
babe_maskMC.visible = false;
whiteMC.visible = false;
ballMC.visible = false;
shadowMC.visible = false;
babeMC.visible = true;
galleryMC.visible = true;
galleryMC.Switch(1);
btnNewGameMC.visible = false;
btnMoreGirlsMC.y = btnTryAgainMC.y;
btnNewGameMC.visible = true;
btnNewGameMC.x = 300;
btnTouchSoundMC.visible = true;
btnMoreGirlsMC.visible = true;
infoProgressMC.y = btnTryAgainMC.y;
end_of_game = true;
} else {
babe_maskMC.visible = false;
whiteMC.visible = false;
ballMC.visible = false;
shadowMC.visible = false;
babeMC.visible = true;
galleryMC.visible = true;
galleryMC.Switch(2, true);
btnTryAgainMC.visible = false;
btnNextLevelMC.visible = true;
btnMoreGirlsMC.y = btnNextLevelMC.y;
btnMoreGirlsMC.visible = true;
btnNewGameMC.visible = true;
btnTouchSoundMC.visible = true;
};
level_progressMC.visible = false;
timer_progressMC.visible = false;
AddPictureToGallery(levels_ims[(current_level - 1)]);
if (((end_of_game) && ((coins > 0)))){
_local4 = 0;
while (_local4 < coins) {
AddPictureToGallery(levels_ims[((levels_ims.length - 10) + _local4)], coins, true);
_local4++;
};
};
level_timer.stop();
level_over = true;
level_start = false;
};
if (mouse_down == true){
distx = (ballMC.x - stage.mouseX);
disty = (ballMC.y - stage.mouseY);
ballMC.x = (ballMC.x - (distx / 10));
ballMC.y = (ballMC.y - (disty / 10));
} else {
if (last_mousex != -1){
distx = (ballMC.x - last_mousex);
disty = (ballMC.y - last_mousey);
ballMC.x = (ballMC.x - (distx / 10));
ballMC.y = (ballMC.y - (disty / 10));
};
};
if ((((((ballMC.x > 0)) && ((ballMC.x < g_width)))) && ((((ballMC.y > 0)) && ((ballMC.y < g_height)))))){
ball_kick = false;
};
if (ballMC.x < 0){
ballMC.x = 0;
if (ball_kick == false){
soundControl.Play(4, 1, false);
ball_kick = true;
};
};
if (ballMC.x > g_width){
ballMC.x = g_width;
if (ball_kick == false){
soundControl.Play(4, 1, false);
ball_kick = true;
};
};
if (ballMC.y < 0){
ballMC.y = 0;
if (ball_kick == false){
soundControl.Play(4, 1, false);
ball_kick = true;
};
};
if (ballMC.y > g_height){
ballMC.y = g_height;
if (ball_kick == false){
soundControl.Play(4, 1, false);
ball_kick = true;
};
};
drawMtrx.tx = ballMC.x;
drawMtrx.ty = ballMC.y;
shadowMC.x = (ballMC.x - (ballMC.width / 2));
shadowMC.y = (ballMC.y - (ballMC.height / 2));
_local2 = 0;
while (_local2 < Math.round((g_width / g_cell))) {
_local5 = 0;
while (_local5 < Math.round((g_height / g_cell))) {
if ((((((((((field[_local2][_local5] == false)) && ((ballMC.x >= (_local2 * g_cell))))) && ((ballMC.x < ((_local2 + 1) * g_cell))))) && ((ballMC.y >= (_local5 * g_cell))))) && ((ballMC.y < ((_local5 + 1) * g_cell))))){
field[_local2][_local5] = true;
open_fields++;
break;
};
_local5++;
};
_local2++;
};
maskMC.bitmapData.draw(ballMC, drawMtrx, null, BlendMode.ERASE);
};
}
public function tickHandler(_arg1:Event){
if (timer_progressMC.visible == false){
timer_progressMC.visible = true;
};
var _local2:Number = Math.round((level_time / 100));
var _local3:Number = (Math.floor(((level_timer.currentCount * 100) / _local2)) / 100);
timer_progressBar.scaleX = (1 - _local3);
if (timer_progressBar.scaleX == 0){
gameOver();
};
if (((((level_time - (level_timer.currentCount * 100)) < 3000)) && ((ball_tick == false)))){
ball_tick = true;
soundControl.Play(5, 1, false);
StopTimers();
};
}
}
}//package
Section 77
//MainMenu (MainMenu)
package {
import flash.display.*;
public dynamic class MainMenu extends MovieClip {
}
}//package
Section 78
//opener (opener)
package {
import flash.display.*;
public dynamic class opener extends MovieClip {
public function opener(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package
Section 79
//panel_left (panel_left)
package {
public dynamic class panel_left extends AdvancedButton {
public function panel_left(){
addFrameScript(0, frame1, 1, frame2, 2, frame3);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
function frame3(){
stop();
}
}
}//package
Section 80
//panel_right (panel_right)
package {
public dynamic class panel_right extends AdvancedButton {
public function panel_right(){
addFrameScript(0, frame1, 1, frame2, 2, frame3);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
function frame3(){
stop();
}
}
}//package
Section 81
//shadow (shadow)
package {
import flash.display.*;
public dynamic class shadow extends MovieClip {
}
}//package
Section 82
//SoundControl (SoundControl)
package {
import flash.events.*;
import flash.display.*;
import flash.media.*;
public class SoundControl extends Sprite {
private var sndTransform:Array;
private var sndNum:int;// = 0
private var channel:Array;
private var sound:Array;
private var globalSwitch:Boolean;// = true
private var loopPlay:Array;
private var sndSwitch:Array;
public function SoundControl(){
sound = new Array();
channel = new Array();
sndTransform = new Array();
sndSwitch = new Array();
loopPlay = new Array();
super();
addEventListener(Event.ENTER_FRAME, onEnterFrame);
}
public function Stop(_arg1:int):void{
sndSwitch[_arg1] = false;
}
public function Play(_arg1:int, _arg2:int, _arg3:Boolean=false):void{
sndSwitch[_arg1] = true;
if (!loopPlay[_arg1]){
if (_arg2 == 0){
loopPlay[_arg1] = true;
};
if (((!(globalSwitch)) || (_arg3))){
sndTransform[_arg1].volume = 0;
};
channel[_arg1] = sound[_arg1].play(0, ((_arg2)>0) ? _arg2 : 999999, sndTransform[_arg1]);
};
}
public function AddSound(_arg1:Object):void{
sound[sndNum] = _arg1;
channel[sndNum] = new SoundChannel();
sndTransform[sndNum] = new SoundTransform();
sndSwitch[sndNum] = true;
loopPlay[sndNum] = false;
sndNum++;
}
private function onEnterFrame(_arg1:Event):void{
var _local2:int;
while (_local2 < sndNum) {
if (((((!(globalSwitch)) || (!(sndSwitch[_local2])))) && ((sndTransform[_local2].volume > 0)))){
sndTransform[_local2].volume = (sndTransform[_local2].volume - 0.05);
channel[_local2].soundTransform = sndTransform[_local2];
if (sndTransform[_local2].volume <= 0.07){
sndTransform[_local2].volume = 0;
channel[_local2].soundTransform = sndTransform[_local2];
};
} else {
if (((((globalSwitch) && (sndSwitch[_local2]))) && ((sndTransform[_local2].volume < 1)))){
sndTransform[_local2].volume = (sndTransform[_local2].volume + 0.05);
channel[_local2].soundTransform = sndTransform[_local2];
if (sndTransform[_local2].volume >= 0.93){
sndTransform[_local2].volume = 1;
channel[_local2].soundTransform = sndTransform[_local2];
};
};
};
_local2++;
};
}
public function TouchSound():void{
if (sndNum == 0){
return;
};
globalSwitch = !(globalSwitch);
if (globalSwitch){
sndTransform[0].volume = 1;
channel[0].soundTransform = sndTransform[0];
};
}
}
}//package
Section 83
//Splash (Splash)
package {
import flash.display.*;
public dynamic class Splash extends MovieClip {
public function Splash(){
addFrameScript(99, frame100);
}
function frame100(){
visible = false;
}
}
}//package
Section 84
//tada (tada)
package {
import flash.media.*;
public dynamic class tada extends Sound {
}
}//package
Section 85
//tick (tick)
package {
import flash.media.*;
public dynamic class tick extends Sound {
}
}//package
Section 86
//timer_progress (timer_progress)
package {
import flash.display.*;
public dynamic class timer_progress extends MovieClip {
public var ProgressBarMC:MovieClip;
}
}//package
Section 87
//top_panel (top_panel)
package {
import flash.events.*;
import flash.display.*;
public class top_panel extends MovieClip {
public function top_panel(){
var _local3:Number;
var _local5:int;
var _local6:advButton;
var _local7:image_mask;
super();
var _local1:Array = new Array();
var _local2:Boolean;
var _local4:int;
while (_local4 < 8) {
_local2 = false;
_local3 = (Math.round((Math.random() * 7)) + 1);
_local5 = 0;
while (_local5 < _local4) {
if (_local1[_local5] == _local3){
_local2 = true;
break;
};
_local5++;
};
if (_local2 == true){
while (_local2 == true) {
_local2 = false;
_local3 = (Math.round((Math.random() * 7)) + 1);
_local5 = 0;
while (_local5 < _local4) {
if (_local1[_local5] == _local3){
_local2 = true;
};
_local5++;
};
};
};
_local1.push(_local3);
_local6 = new advButton();
_local7 = new image_mask();
addChild(_local6);
addChild(_local7);
_local6.cacheAsBitmap = true;
_local7.cacheAsBitmap = true;
_local6.mask = _local7;
_local6.gotoAndStop(_local3);
_local6.y = 3;
_local6.x = (19 + (_local4 * 64));
_local7.y = 3;
_local7.x = (19 + (_local4 * 64));
_local4++;
};
}
}
}//package
Section 88
//white (white)
package {
import flash.display.*;
public dynamic class white extends MovieClip {
}
}//package