Section 1
//None (fl.transitions.easing.None)
package fl.transitions.easing {
public class None {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
}
}//package fl.transitions.easing
Section 2
//Tween (fl.transitions.Tween)
package fl.transitions {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class Tween extends EventDispatcher {
private var _position:Number;// = NAN
public var prevTime:Number;// = NAN
public var prevPos:Number;// = NAN
public var isPlaying:Boolean;// = false
private var _fps:Number;// = NAN
private var _time:Number;// = NAN
public var begin:Number;// = NAN
private var _finish:Number;// = NAN
public var change:Number;// = NAN
public var looping:Boolean;// = false
private var _intervalID:uint;// = 0
public var func:Function;
private var _timer:Timer;// = null
private var _startTime:Number;// = NAN
public var prop:String;// = ""
private var _duration:Number;// = NAN
public var obj:Object;// = null
public var useSeconds:Boolean;// = false
protected static var _mc:MovieClip = new MovieClip();
public function Tween(_arg1:Object, _arg2:String, _arg3:Function, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Boolean=false){
this.func = function (_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
};
super();
if (!arguments.length){
return;
};
this.obj = _arg1;
this.prop = _arg2;
this.begin = _arg4;
this.position = _arg4;
this.duration = _arg6;
this.useSeconds = _arg7;
if ((_arg3 is Function)){
this.func = _arg3;
};
this.finish = _arg5;
this._timer = new Timer(100);
this.start();
}
public function continueTo(_arg1:Number, _arg2:Number):void{
this.begin = this.position;
this.finish = _arg1;
if (!isNaN(_arg2)){
this.duration = _arg2;
};
this.start();
}
protected function startEnterFrame():void{
var _local1:Number;
if (isNaN(this._fps)){
_mc.addEventListener(Event.ENTER_FRAME, this.onEnterFrame, false, 0, true);
} else {
_local1 = (1000 / this._fps);
this._timer.delay = _local1;
this._timer.addEventListener(TimerEvent.TIMER, this.timerHandler, false, 0, true);
this._timer.start();
};
this.isPlaying = true;
}
public function stop():void{
this.stopEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_STOP, this._time, this._position));
}
private function fixTime():void{
if (this.useSeconds){
this._startTime = (getTimer() - (this._time * 1000));
};
}
public function set FPS(_arg1:Number):void{
var _local2:Boolean = this.isPlaying;
this.stopEnterFrame();
this._fps = _arg1;
if (_local2){
this.startEnterFrame();
};
}
public function get finish():Number{
return ((this.begin + this.change));
}
public function get duration():Number{
return (this._duration);
}
protected function stopEnterFrame():void{
if (isNaN(this._fps)){
_mc.removeEventListener(Event.ENTER_FRAME, this.onEnterFrame);
} else {
this._timer.stop();
};
this.isPlaying = false;
}
public function set time(_arg1:Number):void{
this.prevTime = this._time;
if (_arg1 > this.duration){
if (this.looping){
this.rewind((_arg1 - this._duration));
this.update();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_LOOP, this._time, this._position));
} else {
if (this.useSeconds){
this._time = this._duration;
this.update();
};
this.stop();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_FINISH, this._time, this._position));
};
} else {
if (_arg1 < 0){
this.rewind();
this.update();
} else {
this._time = _arg1;
this.update();
};
};
}
public function getPosition(_arg1:Number=NaN):Number{
if (isNaN(_arg1)){
_arg1 = this._time;
};
return (this.func(_arg1, this.begin, this.change, this._duration));
}
public function set finish(_arg1:Number):void{
this.change = (_arg1 - this.begin);
}
public function set duration(_arg1:Number):void{
this._duration = ((_arg1)<=0) ? Infinity : _arg1;
}
public function get position():Number{
return (this.getPosition(this._time));
}
public function setPosition(_arg1:Number):void{
this.prevPos = this._position;
if (this.prop.length){
this.obj[this.prop] = (this._position = _arg1);
};
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_CHANGE, this._time, this._position));
}
public function resume():void{
this.fixTime();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_RESUME, this._time, this._position));
}
public function fforward():void{
this.time = this._duration;
this.fixTime();
}
protected function onEnterFrame(_arg1:Event):void{
this.nextFrame();
}
public function yoyo():void{
this.continueTo(this.begin, this.time);
}
public function nextFrame():void{
if (this.useSeconds){
this.time = ((getTimer() - this._startTime) / 1000);
} else {
this.time = (this._time + 1);
};
}
protected function timerHandler(_arg1:TimerEvent):void{
this.nextFrame();
_arg1.updateAfterEvent();
}
public function get FPS():Number{
return (this._fps);
}
public function rewind(_arg1:Number=0):void{
this._time = _arg1;
this.fixTime();
this.update();
}
public function set position(_arg1:Number):void{
this.setPosition(_arg1);
}
public function get time():Number{
return (this._time);
}
private function update():void{
this.setPosition(this.getPosition(this._time));
}
public function start():void{
this.rewind();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_START, this._time, this._position));
}
public function prevFrame():void{
if (!this.useSeconds){
this.time = (this._time - 1);
};
}
}
}//package fl.transitions
Section 3
//TweenEvent (fl.transitions.TweenEvent)
package fl.transitions {
import flash.events.*;
public class TweenEvent extends Event {
public var position:Number;// = NAN
public var time:Number;// = NAN
public static const MOTION_START:String = "motionStart";
public static const MOTION_STOP:String = "motionStop";
public static const MOTION_LOOP:String = "motionLoop";
public static const MOTION_CHANGE:String = "motionChange";
public static const MOTION_FINISH:String = "motionFinish";
public static const MOTION_RESUME:String = "motionResume";
public function TweenEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Boolean=false, _arg5:Boolean=false){
super(_arg1, _arg4, _arg5);
this.time = _arg2;
this.position = _arg3;
}
override public function clone():Event{
return (new TweenEvent(this.type, this.time, this.position, this.bubbles, this.cancelable));
}
}
}//package fl.transitions
Section 4
//badge_games_Intro_Preloader_4 (magic_cards_pub_fla.badge_games_Intro_Preloader_4)
package magic_cards_pub_fla {
import flash.display.*;
import flash.events.*;
import flash.net.*;
public dynamic class badge_games_Intro_Preloader_4 extends MovieClip {
public var play_btn:MovieClip;
public var movie_btn:MovieClip;
public function badge_games_Intro_Preloader_4(){
addFrameScript(0, frame1, 1, frame2);
}
public function playClick(_arg1:MouseEvent):void{
if ((parent is MovieClip)){
(parent as MovieClip).play();
};
}
function frame2(){
stop();
play_btn.buttonMode = true;
play_btn.addEventListener(MouseEvent.CLICK, playClick);
}
public function toBadge(_arg1:MouseEvent):void{
var _local2:URLRequest = new URLRequest("http://www.badgegames.com");
navigateToURL(_local2, "_blank");
}
function frame1(){
stop();
if ((parent is MovieClip)){
(parent as MovieClip).stop();
};
movie_btn.addEventListener(MouseEvent.CLICK, toBadge);
}
}
}//package magic_cards_pub_fla
Section 5
//bgs_74 (magic_cards_pub_fla.bgs_74)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class bgs_74 extends MovieClip {
public function bgs_74(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package magic_cards_pub_fla
Section 6
//e_etherLine_76 (magic_cards_pub_fla.e_etherLine_76)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class e_etherLine_76 extends MovieClip {
public function e_etherLine_76(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package magic_cards_pub_fla
Section 7
//etherLine_46 (magic_cards_pub_fla.etherLine_46)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class etherLine_46 extends MovieClip {
public function etherLine_46(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package magic_cards_pub_fla
Section 8
//eyes_29 (magic_cards_pub_fla.eyes_29)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class eyes_29 extends MovieClip {
public function eyes_29(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package magic_cards_pub_fla
Section 9
//Hand1_2_32 (magic_cards_pub_fla.Hand1_2_32)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class Hand1_2_32 extends MovieClip {
public var Weapon:MovieClip;
public function Hand1_2_32(){
addFrameScript(15, frame16, 25, frame26);
}
function frame26(){
gotoAndPlay(1);
}
function frame16(){
gotoAndPlay(1);
}
}
}//package magic_cards_pub_fla
Section 10
//Hand1_40 (magic_cards_pub_fla.Hand1_40)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class Hand1_40 extends MovieClip {
public var Weapon:MovieClip;
public function Hand1_40(){
addFrameScript(15, frame16, 25, frame26);
}
function frame26(){
gotoAndPlay(1);
}
function frame16(){
gotoAndPlay(1);
}
}
}//package magic_cards_pub_fla
Section 11
//Hand2_2_26 (magic_cards_pub_fla.Hand2_2_26)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class Hand2_2_26 extends MovieClip {
public var Shild:MovieClip;
public function Hand2_2_26(){
addFrameScript(15, frame16, 25, frame26);
}
function frame26(){
gotoAndPlay(1);
}
function frame16(){
gotoAndPlay(1);
}
}
}//package magic_cards_pub_fla
Section 12
//Hand2_35 (magic_cards_pub_fla.Hand2_35)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class Hand2_35 extends MovieClip {
public var Shild:MovieClip;
public function Hand2_35(){
addFrameScript(15, frame16, 25, frame26);
}
function frame26(){
gotoAndPlay(1);
}
function frame16(){
gotoAndPlay(1);
}
}
}//package magic_cards_pub_fla
Section 13
//head_37 (magic_cards_pub_fla.head_37)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class head_37 extends MovieClip {
public function head_37(){
addFrameScript(15, frame16, 25, frame26);
}
function frame26(){
gotoAndPlay(1);
}
function frame16(){
gotoAndPlay(1);
}
}
}//package magic_cards_pub_fla
Section 14
//head2_28 (magic_cards_pub_fla.head2_28)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class head2_28 extends MovieClip {
public function head2_28(){
addFrameScript(15, frame16, 25, frame26);
}
function frame26(){
gotoAndPlay(1);
}
function frame16(){
gotoAndPlay(1);
}
}
}//package magic_cards_pub_fla
Section 15
//Logo_Intro_Preloader_5 (magic_cards_pub_fla.Logo_Intro_Preloader_5)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class Logo_Intro_Preloader_5 extends MovieClip {
public function Logo_Intro_Preloader_5(){
addFrameScript(284, frame285);
}
function frame285(){
stop();
if ((parent is MovieClip)){
(parent as MovieClip).play();
};
}
}
}//package magic_cards_pub_fla
Section 16
//Logo_Intro_Preloadercopy_1 (magic_cards_pub_fla.Logo_Intro_Preloadercopy_1)
package magic_cards_pub_fla {
import flash.display.*;
import flash.text.*;
public dynamic class Logo_Intro_Preloadercopy_1 extends MovieClip {
public var loadBar:MovieClip;
public var getPercent:Number;
public var bytes_total:Number;
public var loadText:TextField;
public var bytes_loaded:Number;
public function Logo_Intro_Preloadercopy_1(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
if ((parent is MovieClip)){
(parent as MovieClip).stop();
};
bytes_loaded = Math.round(loaderInfo.bytesLoaded);
bytes_total = Math.round(loaderInfo.bytesTotal);
getPercent = (bytes_loaded / bytes_total);
this.loadBar.width = (getPercent * 100);
this.loadText.text = (Math.round((getPercent * 100)).toString() + "%");
if (bytes_loaded == bytes_total){
if ((parent is MovieClip)){
(parent as MovieClip).play();
};
};
}
function frame2(){
this.gotoAndPlay(1);
}
}
}//package magic_cards_pub_fla
Section 17
//m002_73 (magic_cards_pub_fla.m002_73)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class m002_73 extends MovieClip {
public function m002_73(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package magic_cards_pub_fla
Section 18
//MainTimeline (magic_cards_pub_fla.MainTimeline)
package magic_cards_pub_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import mochi.as3.*;
import src.*;
import flash.utils.*;
import flash.media.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.profiler.*;
import flash.sampler.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class MainTimeline extends MovieClip {
public const HERORESPONCE:Number = 2;
public const HEROWAIT:Number = 0;
public const OPPWAIT:Number = 3;
public const HEROATTACK:Number = 1;
public const CARD:Number = 3;
public const BURNCARD:Number = 6;
public const OPPONENT:Number = 2;
public const OPPATTACK:Number = 4;
public const ETHERHIT:Number = 7;
public const OPPRESPONCE:Number = 5;
public const HERO:Number = 1;
public var winX:int;
public var resText:MaxText;
public var bBackNo:MaxText;
public var CGOST:ColorTransform;
public var OppCards:Array;
public var Hero:Player;
public var liveCard:Card;
public var music:music_menu;
public var bMoreGames:MaxText;
public var bDeck:MaxText;
public var CBOSS:ColorTransform;
public var HeroChanel:MovieClip;
public var etherloop_sound:snd_etherloop;
public var pain_opp2_sound:snd_pain_opp2;
public var endTitle:MaxText;
public var PastLevels:Array;
public var endBatWin:endWin;
public var BG:MovieClip;
public var Scores:int;
public var CVAMPIRE:ColorTransform;
public var SelectCard:Card;
public var InsMenu:InstMC;
public var toPlay:Boolean;
public var numbers:Array;
public var ice_sound:snd_ice;
public var e_int_ether:MaxText;
public var st:SoundTransform;
public var c:int;
public var newDeck:Boolean;
public var j:int;
public var tSelectSpec:MaxText;
public var l:int;
public var badgeGamesPopup:BadgeGamesPopup;
public var State:Number;
public var s:SharedObject;
public var painvamp_sound:snd_painvamp;
public var o:Object;
public var bEHit:MaxButton;
public var tState:TextField;
public var cardpick_sound:snd_cardpick;
public var darkWin:MovieClip;
public var boardID:String;
public var ether_up_sound:snd_ether_up;
public var COTHER:ColorTransform;
public var tMaxLives:TextField;
public var energy_sound:snd_energy;
public var EHitPower:int;
public var bBack:MaxText;
public var int_Lives:MaxText;
public var deck:Array;
public var DGlogo:MovieClip;
public var i:int;
public var tScoresMenu:TextField;
public var ch2_sound:snd_ch2;
public var newcard_sound:snd_newcard;
public var oppnumbers:Array;
public var VoiceVolume:SoundTransform;
public var battle_sound:snd_battle;
public var DeckIcon:MovieClip;
public var bMusic:MaxText;
public var SelectMapEnemy:MapEnemy;
public var OppChanel:MovieClip;
public var bNewGame:MaxText;
public var vampire2_sound:snd_vampire2;
public var CFIRE:ColorTransform;
public var painbig_sound:snd_painbig;
public var pain_opp1_sound:snd_pain_opp1;
public var xx:int;
public var CPOISON:ColorTransform;
public var ViewDeck:Boolean;
public var CreditsMenu:CredMC;
public var other_sound2:snd_other2;
public var poison_sound:snd_poison;
public var etherLine:MovieClip;
public var yy:int;
public var curse_sound:snd_curse;
public var other_sound:snd_other;
public var bContinue:MaxText;
public var pain2_sound:snd_pain2;
public var Campaign:int;
public var bEndBattle:MaxButton;
public var pain_opp_vamp_sound:snd_pain_opp_vamp;
public var HeroIcons:Array;
public var Map:MovieClip;
public var EarnButton:MovieClip;
public var bBack2:MaxText;
public var BattleTimer:Timer;
public var e_int_SpellInfo:MaxText;
public var e_int_Lives:MaxText;
public var paralize_sound:snd_par;
public var lightning_sound:snd_light;
public var regeneration_sound:snd_reg;
public var savesData:Object;
public var PausePoint:int;
public var Level:int;
public var GameTitle:MenuTitle;
public var bDeckOk:MaxText;
public var HeroCards:Array;
public var tLevel:TextField;
public var yyy:int;
public var bBurn:MaxButton;
public var xxx:int;
public var cardup_sound:snd_cardup;
public var ch1_sound:snd_ch1;
public var theChannel:SoundChannel;
public var CETHER:ColorTransform;
public var Opponent:Enemy;
public var num:int;
public var int_SpellInfo:MaxText;
public var Levels:Array;
public var me:BitmapData;
public var black_eff:Effect;
public var click_sound:snd_click;
public var bHowTo:MaxText;
public var deckMenu:DeckMenu;
public var LastMapEnemyIndex:int;
public var vampire1_sound:snd_vampire1;
public var tScores:TextField;
public var int_ether:MaxText;
public var bBattle:MaxText;
public var bBackYes:MaxText;
public var e_etherLine:MovieClip;
public var buttonSpec2:MaxButton;
public var buttonSpec3:MaxButton;
public var CLIGHTNING:ColorTransform;
public var bSpecBack:MaxText;
public var buttonSpec1:MaxButton;
public var fire_sound:snd_fire;
public var bCredits:MaxText;
public var OppIcons:Array;
public var bSpell:MaxButton;
public var pain1_sound:snd_pain1;
public var eff:Effect;
public var heal_sound:snd_heal;
public var winY:int;
public var ch3_sound:snd_ch3;
public function MainTimeline(){
addFrameScript(0, frame1, 1, frame2, 3, frame4, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11);
}
public function MakeDecision():int{
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:Object;
var _local7:String;
var _local8:int;
var _local9:*;
var _local1:Array = new Array();
_local1[0] = OppCards[0].Spells["price"];
_local1[1] = OppCards[1].Spells["price"];
_local1[2] = OppCards[2].Spells["price"];
_local1[3] = OppCards[3].Spells["price"];
_local1[4] = OppCards[4].Spells["price"];
var _local2:int;
while (_local2 <= 4) {
_local6 = OppCards[_local2].Spells;
for (_local7 in _local6) {
switch (_local7){
case "damage":
_local8 = ((_local6[_local7] + ((Opponent.Attack + Opponent.EtherBonus) - Opponent.CurseAttack)) - ((Hero.Armor + Hero.EtherBonus) - Hero.CurseArmor));
if (_local8 > Hero.Lives){
_local1[_local2] = (_local1[_local2] + 10);
};
if (Opponent.AggressiveTactics){
_local1[_local2] = (_local1[_local2] + 3);
};
break;
case "vdamage":
if (Opponent.Lives == Opponent.MaxLives){
_local1[_local2] = (_local1[_local2] - 2);
};
if (((Opponent.Lives * 100) / Opponent.MaxLives) < 30){
_local1[_local2] = (_local1[_local2] + 2);
};
if (((Opponent.Lives * 100) / Opponent.MaxLives) < 15){
_local1[_local2] = (_local1[_local2] + 5);
};
break;
case "energy":
if (((((((_local6[_local7] + Opponent.Energy) >= 30)) || (((_local6[_local7] + Opponent.Energy) >= 60)))) || (((_local6[_local7] + Opponent.Energy) >= 90)))){
_local1[_local2] = (_local1[_local2] + 4);
};
if (((Opponent.Lives * 100) / Opponent.MaxLives) < 30){
_local1[_local2] = (_local1[_local2] - 1);
};
if (Opponent.Energy == 90){
_local1[_local2] = (_local1[_local2] - 5);
};
break;
case "ether_vampire":
if (Hero.Energy <= 5){
_local1[_local2] = (_local1[_local2] - 3);
};
if (Hero.Energy >= 20){
_local1[_local2] = (_local1[_local2] + 3);
};
if (Hero.Energy >= 20){
if (((((((_local6[_local7] + Opponent.Energy) >= 30)) || (((_local6[_local7] + Opponent.Energy) >= 60)))) || (((_local6[_local7] + Opponent.Energy) >= 90)))){
_local1[_local2] = (_local1[_local2] + 4);
};
};
if (Hero.Energy <= 20){
if (((((((_local6[_local7] + Opponent.Energy) >= 30)) || (((_local6[_local7] + Opponent.Energy) >= 60)))) || (((_local6[_local7] + Opponent.Energy) >= 90)))){
_local1[_local2] = (_local1[_local2] + 3);
};
};
break;
case "heal":
_local9 = ((1 - (((Opponent.Lives * 100) / Opponent.MaxLives) / 100)) * 6);
_local1[_local2] = (_local1[_local2] + _local9);
if (Opponent.Lives == Opponent.MaxLives){
_local1[_local2] = (_local1[_local2] - 3);
};
break;
case "armor":
if (_local6[_local7] <= Opponent.Armor){
_local1[_local2] = (_local1[_local2] - 3);
};
if (_local6[_local7] > Opponent.Armor){
_local1[_local2] = (_local1[_local2] + 1);
};
if (Opponent.Armor == 0){
_local1[_local2] = (_local1[_local2] + 2);
};
if (((Opponent.Lives * 100) / Opponent.MaxLives) < 30){
_local1[_local2] = (_local1[_local2] - 1);
};
break;
case "attack":
if (_local6[_local7] <= Opponent.Attack){
_local1[_local2] = (_local1[_local2] - 3);
};
if (_local6[_local7] > Opponent.Attack){
_local1[_local2] = (_local1[_local2] + 1);
};
if (Opponent.Attack == 0){
_local1[_local2] = (_local1[_local2] + 2);
};
if (((Opponent.Lives * 100) / Opponent.MaxLives) < 30){
_local1[_local2] = (_local1[_local2] - 1);
};
break;
case "cursearmor":
if (Hero.CurseArmor >= _local6[_local7]){
_local1[_local2] = (_local1[_local2] - 3);
};
if (Hero.CurseArmor < _local6[_local7]){
_local1[_local2] = (_local1[_local2] + 1);
};
if (Hero.CurseArmor == 0){
_local1[_local2] = (_local1[_local2] + 2);
};
if (((Opponent.Lives * 100) / Opponent.MaxLives) < 30){
_local1[_local2] = (_local1[_local2] - 2);
};
if (((Opponent.Lives * 100) / Opponent.MaxLives) < 15){
_local1[_local2] = (_local1[_local2] - 3);
};
break;
case "poison":
if (Hero.Poison >= _local6[_local7]){
_local1[_local2] = (_local1[_local2] - 3);
};
if (Hero.Poison < _local6[_local7]){
_local1[_local2] = (_local1[_local2] + 1);
};
if (Hero.Poison == 0){
_local1[_local2] = (_local1[_local2] + 2);
};
break;
case "reg":
if (Opponent.Regeneration >= _local6[_local7]){
_local1[_local2] = (_local1[_local2] - 3);
};
if (Opponent.Regeneration < _local6[_local7]){
_local1[_local2] = (_local1[_local2] + 1);
};
if (Opponent.Regeneration == 0){
_local1[_local2] = (_local1[_local2] + 2);
};
break;
case "ether_reg":
if (Opponent.EtherReg >= _local6[_local7]){
_local1[_local2] = (_local1[_local2] - 3);
};
if (Opponent.EtherReg == 0){
_local1[_local2] = (_local1[_local2] + 3);
};
if (((Opponent.Lives * 100) / Opponent.MaxLives) < 30){
_local1[_local2] = (_local1[_local2] - 2);
};
if (((Opponent.Lives * 100) / Opponent.MaxLives) < 15){
_local1[_local2] = (_local1[_local2] - 3);
};
if (Opponent.Energy == 90){
_local1[_local2] = (_local1[_local2] - 5);
};
break;
case "dispel":
if (Hero.Attack > 0){
_local1[_local2] = (_local1[_local2] + 1);
};
if (Hero.Armor > 0){
_local1[_local2] = (_local1[_local2] + 1);
};
if (Hero.Regeneration > 0){
_local1[_local2] = (_local1[_local2] + 1);
};
if (Hero.Response == true){
_local1[_local2] = (_local1[_local2] + 1);
};
if (Hero.ResponseAttack > 0){
_local1[_local2] = (_local1[_local2] + 1);
};
if (Hero.EtherReg > 0){
_local1[_local2] = (_local1[_local2] + 1);
};
break;
case "antidot":
if (Opponent.Poison > 0){
_local1[_local2] = (_local1[_local2] + 2);
};
if (Opponent.Poison == 0){
_local1[_local2] = (_local1[_local2] - 2);
};
break;
};
};
_local2++;
};
if (Opponent.Paralysis){
_local3 = 10;
_local5 = 0;
while (_local5 <= 4) {
if (_local1[_local5] < _local3){
_local3 = _local1[_local5];
_local4 = _local5;
};
_local5++;
};
} else {
_local5 = 0;
while (_local5 <= 4) {
if (_local1[_local5] > _local3){
_local3 = _local1[_local5];
_local4 = _local5;
};
_local5++;
};
};
return (_local4);
}
public function fbClick(_arg1:MouseEvent):void{
var _local2:URLRequest = new URLRequest("http://www.facebook.com/pages/Boredcom/169141232614");
navigateToURL(_local2, "_blank");
}
public function CardClick(_arg1:MouseEvent):void{
var _local2:Card = (_arg1.target as Card);
var _local3:int;
while (_local3 <= 4) {
if (((HeroCards[_local3].isSelect) && (!((HeroCards[_local3] == _local2))))){
HeroCards[_local3].deSelect();
};
_local3++;
};
if (!_local2.isSelect){
SelectCard = _local2;
bSpell.visible = true;
bBurn.visible = true;
_local2.Select(275, 160);
cardup_sound.play();
} else {
SelectCard = null;
bSpell.visible = false;
bBurn.visible = false;
_local2.deSelect();
cardpick_sound.play();
};
}
public function UpdateInt():void{
var _local6:String;
int_Lives.Text = Hero.Lives.toString();
etherLine.gotoAndStop(Hero.Energy);
var _local1:int;
var _local2 = 38;
var _local3 = 15;
var _local4 = 21;
var _local5 = 20;
i = 0;
while (i < HeroIcons.length) {
removeChild(HeroIcons[i]);
i++;
};
j = 0;
while (j < OppIcons.length) {
removeChild(OppIcons[j]);
j++;
};
HeroIcons = new Array();
OppIcons = new Array();
if ((((Hero.EtherBonus == 0)) && ((Opponent.EtherBonus == 0)))){
BG.transform.colorTransform = new ColorTransform(1, 1, 1, 1);
};
if ((((Hero.EtherBonus == 2)) || ((Opponent.EtherBonus == 2)))){
BG.transform.colorTransform = new ColorTransform(0.8, 0.8, 0.8, 1);
};
if ((((Hero.EtherBonus == 4)) || ((Opponent.EtherBonus == 4)))){
BG.transform.colorTransform = new ColorTransform(0.6, 0.6, 0.6, 1);
};
if ((((Hero.EtherBonus == 6)) || ((Opponent.EtherBonus == 6)))){
BG.transform.colorTransform = new ColorTransform(0.4, 0.4, 0.4, 1);
};
if ((((Hero.Attack > 0)) || ((Hero.EtherBonus > 0)))){
_local4 = (_local4 + 17);
if (Hero.CurseAttack > 0){
_local6 = ((("Attack: +" + Hero.Attack) + " - Curse: ") + Hero.CurseAttack);
} else {
_local6 = ("Attack: +" + Hero.Attack);
};
if (Hero.EtherBonus > 0){
_local6 = (_local6 + (" +EtherBonus:" + Hero.EtherBonus));
};
HeroIcons[_local1] = new Icons(new i1(0, 0), Hero.Attack, -((_local4 - _local2)), (_local5 + _local3), _local6);
HeroIcons[_local1].x = _local4;
HeroIcons[_local1].y = _local5;
addChild(HeroIcons[_local1]);
_local1++;
_local4 = (_local4 + 2);
};
if ((((Hero.Armor > 0)) || ((Hero.EtherBonus > 0)))){
_local4 = (_local4 + 17);
if (Hero.CurseArmor > 0){
_local6 = ((("Armor: +" + Hero.Armor) + " - Curse: ") + Hero.CurseArmor);
} else {
_local6 = ("Armor: +" + Hero.Armor);
};
if (Hero.EtherBonus > 0){
_local6 = (_local6 + (" +EtherBonus:" + Hero.EtherBonus));
};
HeroIcons[_local1] = new Icons(new i2(0, 0), Hero.Armor, -((_local4 - _local2)), (_local5 + _local3), _local6);
HeroIcons[_local1].x = _local4;
HeroIcons[_local1].y = _local5;
addChild(HeroIcons[_local1]);
_local1++;
_local4 = (_local4 + 2);
};
if (Hero.Response){
_local4 = (_local4 + 17);
HeroIcons[_local1] = new Icons(new i3(0, 0), Hero.ResponseAttack, -((_local4 - _local2)), (_local5 + _local3), ("Response: +" + Hero.ResponseAttack));
HeroIcons[_local1].x = _local4;
HeroIcons[_local1].y = _local5;
addChild(HeroIcons[_local1]);
_local1++;
_local4 = (_local4 + 2);
};
if (Hero.Regeneration > 0){
_local4 = (_local4 + 17);
HeroIcons[_local1] = new Icons(new i4(0, 0), Hero.Regeneration, -((_local4 - _local2)), (_local5 + _local3), ("Regeneration: +" + Hero.Regeneration));
HeroIcons[_local1].x = _local4;
HeroIcons[_local1].y = _local5;
addChild(HeroIcons[_local1]);
_local1++;
_local4 = (_local4 + 2);
};
if (Hero.EtherReg > 0){
_local4 = (_local4 + 17);
HeroIcons[_local1] = new Icons(new i9(0, 0), Hero.EtherReg, -((_local4 - _local2)), (_local5 + _local3), ("Ether Regeneration: +" + Hero.EtherReg));
HeroIcons[_local1].x = _local4;
HeroIcons[_local1].y = _local5;
addChild(HeroIcons[_local1]);
_local1++;
_local4 = (_local4 + 2);
};
if (Hero.Poison > 0){
_local4 = (_local4 + 17);
HeroIcons[_local1] = new Icons(new i5(0, 0), Hero.Poison, -((_local4 - _local2)), (_local5 + _local3), ("Poison: +" + Hero.Poison));
HeroIcons[_local1].x = _local4;
HeroIcons[_local1].y = _local5;
addChild(HeroIcons[_local1]);
_local1++;
_local4 = (_local4 + 2);
};
if (Hero.CurseAttack > 0){
_local4 = (_local4 + 17);
_local6 = ((("Curse: Attack: -" + Hero.CurseAttack) + ", Armor: -") + Hero.CurseArmor);
HeroIcons[_local1] = new Icons(new i6(0, 0), Hero.Attack, -((_local4 - _local2)), (_local5 + _local3), _local6);
HeroIcons[_local1].x = _local4;
HeroIcons[_local1].y = _local5;
addChild(HeroIcons[_local1]);
_local1++;
_local4 = (_local4 + 2);
};
e_int_Lives.Text = Opponent.Lives.toString();
e_etherLine.gotoAndStop(Opponent.Energy);
_local1 = 0;
_local2 = 590;
_local3 = 15;
_local4 = 604;
_local5 = 20;
var _local7:int;
var _local8:TextField = new TextField();
if ((((Opponent.Attack > 0)) || ((Opponent.EtherBonus > 0)))){
_local4 = (_local4 - 17);
if (Opponent.CurseAttack > 0){
_local6 = ((("Attack: +" + Opponent.Attack) + " - Curse: ") + Opponent.CurseAttack);
} else {
_local6 = ("Attack: +" + Opponent.Attack);
};
if (Opponent.EtherBonus > 0){
_local6 = (_local6 + (" +EtherBonus:" + Opponent.EtherBonus));
};
_local8.text = _local6;
_local7 = _local8.textWidth;
OppIcons[_local1] = new Icons(new i1(0, 0), Opponent.Attack, ((_local2 - _local4) - _local7), (_local5 + _local3), _local6);
OppIcons[_local1].x = _local4;
OppIcons[_local1].y = _local5;
addChild(OppIcons[_local1]);
_local1++;
_local4 = (_local4 - 2);
};
if ((((Opponent.Armor > 0)) || ((Opponent.EtherBonus > 0)))){
_local4 = (_local4 - 17);
if (Opponent.CurseArmor > 0){
_local6 = ((("Armor: +" + Opponent.Armor) + " - Curse: ") + Opponent.CurseArmor);
} else {
_local6 = ("Armor: +" + Opponent.Armor);
};
if (Opponent.EtherBonus > 0){
_local6 = (_local6 + (" +EtherBonus:" + Opponent.EtherBonus));
};
_local8.text = _local6;
_local7 = _local8.textWidth;
OppIcons[_local1] = new Icons(new i2(0, 0), Opponent.Armor, ((_local2 - _local4) - _local7), (_local5 + _local3), _local6);
OppIcons[_local1].x = _local4;
OppIcons[_local1].y = _local5;
addChild(OppIcons[_local1]);
_local1++;
_local4 = (_local4 - 2);
};
if (Opponent.Response){
_local4 = (_local4 - 17);
_local8.text = ("Response: +" + Opponent.ResponseAttack);
_local7 = _local8.textWidth;
OppIcons[_local1] = new Icons(new i3(0, 0), Opponent.ResponseAttack, ((_local2 - _local4) - _local7), (_local5 + _local3), ("Response: +" + Opponent.ResponseAttack));
OppIcons[_local1].x = _local4;
OppIcons[_local1].y = _local5;
addChild(OppIcons[_local1]);
_local1++;
_local4 = (_local4 - 2);
};
if (Opponent.Regeneration > 0){
_local4 = (_local4 - 17);
_local8.text = ("Regeneration: +" + Opponent.Regeneration);
_local7 = _local8.textWidth;
OppIcons[_local1] = new Icons(new i4(0, 0), Opponent.Regeneration, ((_local2 - _local4) - _local7), (_local5 + _local3), ("Regeneration: +" + Opponent.Regeneration));
OppIcons[_local1].x = _local4;
OppIcons[_local1].y = _local5;
addChild(OppIcons[_local1]);
_local1++;
_local4 = (_local4 - 2);
};
if (Opponent.EtherReg > 0){
_local4 = (_local4 - 17);
_local8.text = ("Ether Regeneration: +" + Opponent.EtherReg);
_local7 = _local8.textWidth;
OppIcons[_local1] = new Icons(new i9(0, 0), Opponent.EtherReg, ((_local2 - _local4) - _local7), (_local5 + _local3), ("Ether Regeneration: +" + Opponent.EtherReg));
OppIcons[_local1].x = _local4;
OppIcons[_local1].y = _local5;
addChild(OppIcons[_local1]);
_local1++;
_local4 = (_local4 - 2);
};
if (Opponent.Poison > 0){
_local4 = (_local4 - 17);
_local8.text = ("Poison: +" + Opponent.Poison);
_local7 = _local8.textWidth;
OppIcons[_local1] = new Icons(new i5(0, 0), Opponent.Poison, ((_local2 - _local4) - _local7), (_local5 + _local3), ("Poison: +" + Opponent.Poison));
OppIcons[_local1].x = _local4;
OppIcons[_local1].y = _local5;
addChild(OppIcons[_local1]);
_local1++;
_local4 = (_local4 - 2);
};
if (Opponent.CurseAttack > 0){
_local4 = (_local4 - 17);
_local6 = ((("Curse: Attack: -" + Opponent.CurseAttack) + ", Armor: -") + Opponent.CurseArmor);
_local8.text = _local6;
_local7 = _local8.textWidth;
OppIcons[_local1] = new Icons(new i6(0, 0), Opponent.Attack, ((_local2 - _local4) - _local7), (_local5 + _local3), _local6);
OppIcons[_local1].x = _local4;
OppIcons[_local1].y = _local5;
addChild(OppIcons[_local1]);
_local1++;
_local4 = (_local4 - 2);
};
}
public function backToMap(_arg1:MouseEvent):void{
bBackYes.visible = !(bBackYes.visible);
bBackNo.visible = !(bBackNo.visible);
bBack2.Text = (bBackYes.visible) ? "Retreat?:" : "Retreat";
}
public function musicAgain(_arg1:Event):void{
theChannel.stop();
PausePoint = 0;
theChannel = music.play(PausePoint);
st.volume = 0.3;
theChannel.soundTransform = st;
theChannel.removeEventListener(Event.SOUND_COMPLETE, musicAgain);
theChannel.addEventListener(Event.SOUND_COMPLETE, musicAgain);
}
public function backToMenu(_arg1:MouseEvent):void{
click_sound.play();
ViewDeck = false;
deckMenu.visible = ViewDeck;
newDeck = false;
DeckIcon.gotoAndStop(1);
bBattle.visible = false;
bBack.visible = false;
bDeck.visible = false;
var _local2:int;
while (_local2 <= (Levels.length - 1)) {
Levels[_local2].visible = false;
_local2++;
};
gotoAndStop("menu");
}
function frame10(){
stop();
State = HEROWAIT;
tScores.text = ("Scores: " + Scores.toString());
setChildIndex(Hero, (getChildIndex(BG) + 1));
Hero.visible = true;
Hero.Lives = Hero.MaxLives;
Hero.Energy = 0;
Hero.Energy_level = 0;
Hero.Attack = 0;
Hero.Armor = 0;
Hero.Poison = 0;
Hero.PoisonWork = false;
Hero.Regeneration = 0;
Hero.EtherReg = 0;
Hero.EtherBonus = 0;
Hero.CurseArmor = 0;
Hero.CurseAttack = 0;
Hero.Response = false;
Hero.ResponseAttack = 0;
if (Hero.Paralysis){
Hero.Paralyze = false;
};
Hero.Hand2.Shild.gotoAndStop(1);
Hero.Hand1.Weapon.gotoAndStop(1);
Opponent.Hand2.Shild.gotoAndStop(1);
Opponent.Hand1.Weapon.gotoAndStop(1);
Opponent.visible = true;
setChildIndex(Opponent, (getChildIndex(BG) + 1));
HeroChanel = new MovieClip();
addChildAt(HeroChanel, (getChildIndex(Hero) + 1));
OppChanel = new MovieClip();
addChildAt(OppChanel, (getChildIndex(Opponent) + 1));
BG.gotoAndStop(SelectMapEnemy.BGin);
endBatWin.visible = false;
darkWin.visible = false;
bMusic.visible = false;
bBattle.visible = false;
bBack.visible = false;
bDeck.visible = false;
HeroCards = new Array();
OppCards = new Array();
numbers = new Array();
i = 0;
while (i < 5) {
num = (Math.random() * 20);
while (numbers.indexOf(num) >= 0) {
num = (Math.random() * 20);
};
numbers.push(num);
i++;
};
i = 0;
while (i <= 4) {
HeroCards[i] = Hero.Deck[numbers[i]];
HeroCards[i].scaleX = 0.8;
HeroCards[i].scaleY = 0.8;
HeroCards[i].Appearance(-100, 650, (5 + (i * (HeroCards[i].width + 3))), 380);
HeroCards[i].addEventListener(MouseEvent.CLICK, CardClick);
HeroCards[i].LastX = (5 + (i * (HeroCards[i].width + 3)));
HeroCards[i].LastY = 380;
HeroCards[i].visible = true;
HeroCards[i].buttonMode = true;
addChild(HeroCards[i]);
i++;
};
oppnumbers = new Array();
i = 0;
while (i < 5) {
num = (Math.random() * 20);
while (oppnumbers.indexOf(num) >= 0) {
num = (Math.random() * 20);
};
oppnumbers.push(num);
i++;
};
j = 0;
while (j <= 4) {
OppCards[j] = Opponent.Deck[oppnumbers[j]];
OppCards[j].scaleX = 0.5;
OppCards[j].scaleY = 0.5;
OppCards[j].Appearance(700, 650, (398 + (j * (OppCards[j].width + 2))), 380);
OppCards[j].SetBack(true);
OppCards[j].visible = true;
addChild(OppCards[j]);
j++;
};
bBack2 = new MaxText(430, 451, "Retreat");
bBack2.defTextFormat = new TextFormat("Georgia", 16, 0, true);
bBack2.SetTextColor(0xFF9900, 1, 0xFF3300, 1);
bBack2.buttonMode = true;
addChild(bBack2);
bBack2.addEventListener(MouseEvent.CLICK, backToMap);
bBackNo = new MaxText(520, 451, "No ");
bBackNo.defTextFormat = new TextFormat("Georgia", 16, 0, true);
bBackNo.SetTextColor(0xFF9900, 1, 0xFF3300, 1);
bBackNo.buttonMode = true;
bBackNo.visible = false;
addChild(bBackNo);
bBackNo.addEventListener(MouseEvent.CLICK, backNo);
bBackYes = new MaxText(550, 451, "| Yes");
bBackYes.defTextFormat = new TextFormat("Georgia", 16, 0, true);
bBackYes.SetTextColor(0xFF3300, 1, 16724889, 1);
bBackYes.buttonMode = true;
bBackYes.visible = false;
addChild(bBackYes);
bBackYes.addEventListener(MouseEvent.CLICK, backYes);
bEHit = new MaxButton(5, 75, new HitButton(), ("Ether hit: " + EHitPower));
bEHit.defTextFormat = new TextFormat("Georgia", 14, 0xFFFFFF);
bEHit.SetTextColor(0x999999, 1, 0xCCCCCC, 1);
bEHit.CenterText();
bEHit.buttonMode = true;
bEHit.visible = false;
addChild(bEHit);
BattleTimer = new Timer(2000);
BattleTimer.addEventListener(TimerEvent.TIMER, Update);
Update(null);
bSpell = new MaxButton(0x0101, 284, new SpellButton(), "Spell");
bSpell.defTextFormat = new TextFormat("Georgia", 16, 0xFFFFFF, true);
bSpell.SetTextColor(0xFFFFFF, 1, 0xF4C300, 1);
bSpell.CenterText();
bSpell.buttonMode = true;
bSpell.visible = false;
addChild(bSpell);
bSpell.addEventListener(MouseEvent.CLICK, spellThis);
bBurn = new MaxButton(275, 318, new BurnButton(), "Burn Card");
bBurn.defTextFormat = new TextFormat("Georgia", 14, 0xFFFFFF);
bBurn.SetTextColor(0xFFFFFF, 1, 0xFF0000, 1);
bBurn.CenterText();
bBurn.width = 90;
bBurn.height = 20;
bBurn.buttonMode = true;
bBurn.visible = false;
addChild(bBurn);
bBurn.addEventListener(MouseEvent.CLICK, burnThis);
winX = (320 - (endBatWin.width / 2));
winY = 100;
bEndBattle = new MaxButton((winX + 103), (winY + 190), new StdButton(), "OK");
bEndBattle.defTextFormat = new TextFormat("Georgia", 12, 0, true);
bEndBattle.SetTextColor(0, 1, 14399009, 1);
bEndBattle.buttonMode = true;
bEndBattle.visible = false;
addChild(bEndBattle);
endTitle = new MaxText((winX + 110), (winY + 2), "Title");
endTitle.defTextFormat = new TextFormat("Georgia", 18, 0, true);
endTitle.SetTextColor(0xFF9900, 1);
endTitle.visible = false;
addChild(endTitle);
resText = new MaxText((winX + 170), (winY + 30), "you reseved:");
resText.defTextFormat = new TextFormat("Georgia", 12, 0);
resText.SetTextColor(0xFFFFFF, 1);
resText.visible = false;
addChild(resText);
liveCard = new Card("live_bonus");
liveCard.name = "liveCard";
black_eff = new Effect(4, new blackFlash());
addChild(black_eff);
int_Lives = new MaxText(2, -1, Hero.Lives.toString());
int_Lives.defTextFormat = new TextFormat("Arial", 24, 0xFFFFFF, true);
addChild(int_Lives);
int_ether = new MaxText(35, -1, "E");
int_ether.SetTextColor(0xFFFFFF, 1);
addChild(int_ether);
e_int_Lives = new MaxText(608, -1, Opponent.Lives.toString());
e_int_Lives.defTextFormat = new TextFormat("Arial", 24, 0xFFFFFF, true);
addChild(e_int_Lives);
e_int_ether = new MaxText(593, -1, "E");
e_int_ether.SetTextColor(0xFFFFFF, 1);
addChild(e_int_ether);
int_SpellInfo = new MaxText(110, 120, "");
int_SpellInfo.defTextFormat = new TextFormat("Arial", 32, 0xFFFFFF, true);
addChild(int_SpellInfo);
e_int_SpellInfo = new MaxText(470, 120, "");
e_int_SpellInfo.defTextFormat = new TextFormat("Arial", 32, 0xFFFFFF, true);
addChild(e_int_SpellInfo);
ShowHideInt(true);
HeroIcons = new Array();
OppIcons = new Array();
}
public function goWithVictory(_arg1:MouseEvent):void{
var _local2:*;
var _local3:Array;
var _local4:int;
var _local5:Array;
var _local6:int;
var _local7:SharedObject;
Scores = (Scores + 500);
tScores.text = ("Scores: " + Scores.toString());
darkWin.visible = false;
endBatWin.visible = false;
bEndBattle.visible = false;
resText.visible = false;
endTitle.visible = false;
HeroChanel.visible = false;
OppChanel.visible = false;
bEHit.visible = false;
bBack2.visible = false;
bBackNo.visible = false;
bBackYes.visible = false;
bSpell.visible = false;
bBurn.visible = false;
bEndBattle.removeEventListener(MouseEvent.CLICK, goWithVictory);
ShowHideInt(false);
Hero.visible = false;
Opponent.visible = false;
i = 0;
while (i <= 4) {
HeroCards[i].visible = false;
OppCards[i].visible = false;
i++;
};
if (getChildByName("liveCard") != null){
removeChild(liveCard);
};
if (SelectMapEnemy.desc.Text != "Finale Battle!"){
_local2 = Levels.indexOf(SelectMapEnemy);
PastLevels.push(Levels[_local2].Num);
Levels.splice(_local2, 1);
removeChild(SelectMapEnemy);
SelectMapEnemy = null;
Level = (Level + 1);
_local3 = new Array();
_local4 = 0;
while (_local4 < 21) {
_local3[_local4] = Hero.Deck[_local4].Name;
_local4++;
};
_local5 = new Array();
_local6 = 0;
while (_local6 < Hero.DeckBack.length) {
_local5[_local6] = Hero.DeckBack[_local6].Name;
_local6++;
};
_local7 = SharedObject.getLocal("MC_saves");
_local7.data.level = Level;
_local7.data.pastLevels = PastLevels;
_local7.data.heroDeck = _local3;
_local7.data.heroDeckBack = _local5;
_local7.data.heroMaxLives = Hero.MaxLives;
_local7.data.scores = Scores;
_local7.data.campaign = Campaign;
_local7.flush();
gotoAndPlay("map");
mOnOff(null);
bMusic.visible = true;
} else {
battle_sound.play(0, 0, VoiceVolume);
mOnOff(null);
gotoAndPlay("End");
};
}
function frame2(){
}
public function closeClick(_arg1:MouseEvent):void{
click_sound.play();
if (buttonSpec1.visible){
selectSpec(null);
};
InsMenu.visible = false;
CreditsMenu.visible = false;
}
function frame8(){
stop();
}
function frame7(){
stop();
MochiServices.connect("9e2ab040d6662ae0", root);
Hero = new Player();
Levels = new Array();
PastLevels = new Array();
Level = 1;
EHitPower = 0;
VoiceVolume = new SoundTransform(0.5);
CVAMPIRE = new ColorTransform(1, 1, 1, 1, 20, -20, -100, 0);
CFIRE = new ColorTransform(1, 1, -1, 1, 30, 0, 0, 0);
CLIGHTNING = new ColorTransform(1, 1, 1, 1, -60, 0, 0, 0);
CPOISON = new ColorTransform(0.8, 0.5, 1, 1, 0, 0, 40, 0);
CETHER = new ColorTransform(1, -0.6, 1, 0.8, -20, 0, 0, 0);
CGOST = new ColorTransform(0.3, 0.3, 0.3, 0.5, 0, 0, 0, 0);
CBOSS = new ColorTransform(0.2, 0.2, 0.2, 1, 0, 0, 0, 0);
COTHER = new ColorTransform(0.6, 1, 1, 1, -30, 30, -30, 0);
me = new map_enemy(0, 0);
Levels[0] = new MapEnemy(80, 420, me, 1, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield2");
deck[1] = new Card("poison2");
deck[2] = new Card("ice2");
deck[3] = new Card("regeneration2");
deck[4] = new Card("sword2");
deck[5] = new Card("fire1");
deck[6] = new Card("fire2");
deck[7] = new Card("ice1");
deck[8] = new Card("lightning1");
deck[9] = new Card("lightning2");
deck[10] = new Card("heals1");
deck[11] = new Card("heals2");
deck[12] = new Card("ether1");
deck[13] = new Card("ether2");
deck[14] = new Card("shield1");
deck[15] = new Card("sword1");
deck[16] = new Card("vampire1");
deck[17] = new Card("poison1");
deck[18] = new Card("regeneration1");
deck[19] = new Card("antidot");
deck[20] = new Card("dispel");
Levels[0].Deck = deck;
Levels[0].bonusCard = new Card("regeneration3");
Levels[0].enemyLives = 20;
Levels[0].Num = 0;
Levels[0].BGin = 1;
Levels[1] = new MapEnemy(155, 375, me, 1, "Battle for Bonus");
deck = new Array();
deck[0] = new Card("shield2");
deck[1] = new Card("poison2");
deck[2] = new Card("fire3");
deck[3] = new Card("regeneration2");
deck[4] = new Card("sword3");
deck[5] = new Card("dispel");
deck[6] = new Card("ice2");
deck[7] = new Card("fire1");
deck[8] = new Card("lightning1");
deck[9] = new Card("lightning2");
deck[10] = new Card("vampire2");
deck[11] = new Card("heals2");
deck[12] = new Card("ether1");
deck[13] = new Card("ether2");
deck[14] = new Card("shield1");
deck[15] = new Card("sword2");
deck[16] = new Card("vampire1");
deck[17] = new Card("poison1");
deck[18] = new Card("regeneration1");
deck[19] = new Card("antidot");
deck[20] = new Card("dispel");
Levels[1].Deck = deck;
Levels[1].bonusLives = 3;
Levels[1].enemyLives = 20;
Levels[1].Num = 1;
Levels[1].BGin = 6;
Levels[2] = new MapEnemy(0xFF, 415, me, 2, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield2");
deck[1] = new Card("fire1");
deck[2] = new Card("fire3");
deck[3] = new Card("regeneration2");
deck[4] = new Card("sword2");
deck[5] = new Card("fire2");
deck[6] = new Card("fire2");
deck[7] = new Card("dispel");
deck[8] = new Card("fire1");
deck[9] = new Card("fire2");
deck[10] = new Card("heals2");
deck[11] = new Card("heals2");
deck[12] = new Card("ether2");
deck[13] = new Card("ether2");
deck[14] = new Card("shield1");
deck[15] = new Card("sword1");
deck[16] = new Card("vampire1");
deck[17] = new Card("poison1");
deck[18] = new Card("regeneration1");
deck[19] = new Card("antidot");
deck[20] = new Card("dispel");
Levels[2].Deck = deck;
Levels[2].bonusCard = new Card("fire3");
Levels[2].enemyLives = 23;
Levels[2].OppColor = CFIRE;
Levels[2].Num = 2;
Levels[2].AggressiveTactics = true;
Levels[2].BGin = 1;
Levels[3] = new MapEnemy(305, 360, me, 3, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield2");
deck[1] = new Card("paralysis");
deck[2] = new Card("fire3");
deck[3] = new Card("regeneration2");
deck[4] = new Card("sword2");
deck[5] = new Card("lightning2");
deck[6] = new Card("vampire1");
deck[7] = new Card("dispel");
deck[8] = new Card("paralysis");
deck[9] = new Card("fire2");
deck[10] = new Card("heals2");
deck[11] = new Card("heals2");
deck[12] = new Card("ether2");
deck[13] = new Card("ether2");
deck[14] = new Card("shield2");
deck[15] = new Card("sword2");
deck[16] = new Card("vampire1");
deck[17] = new Card("poison1");
deck[18] = new Card("regeneration1");
deck[19] = new Card("antidot");
deck[20] = new Card("dispel");
Levels[3].Deck = deck;
Levels[3].bonusCard = new Card("paralysis");
Levels[3].enemyLives = 25;
Levels[3].OppColor = COTHER;
Levels[3].Num = 3;
Levels[3].BGin = 1;
Levels[3].AggressiveTactics = true;
Levels[4] = new MapEnemy(265, 305, me, 3, "Battle for Bonus");
deck = new Array();
deck[0] = new Card("shield2");
deck[1] = new Card("heals2");
deck[2] = new Card("fire2");
deck[3] = new Card("regeneration3");
deck[4] = new Card("sword2");
deck[5] = new Card("vampire2");
deck[6] = new Card("heals2");
deck[7] = new Card("dispel");
deck[8] = new Card("fire1");
deck[9] = new Card("fire2");
deck[10] = new Card("paralysis");
deck[11] = new Card("heals2");
deck[12] = new Card("ether2");
deck[13] = new Card("ether2");
deck[14] = new Card("shield2");
deck[15] = new Card("sword1");
deck[16] = new Card("vampire1");
deck[17] = new Card("poison1");
deck[18] = new Card("regeneration2");
deck[19] = new Card("antidot");
deck[20] = new Card("dispel");
Levels[4].Deck = deck;
Levels[4].bonusLives = 3;
Levels[4].enemyLives = 25;
Levels[4].Num = 4;
Levels[4].BGin = 1;
Levels[5] = new MapEnemy(388, 388, me, 5, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield2");
deck[1] = new Card("vampire1");
deck[2] = new Card("fire3");
deck[3] = new Card("regeneration2");
deck[4] = new Card("sword2");
deck[5] = new Card("vampire1");
deck[6] = new Card("vampire1");
deck[7] = new Card("dispel");
deck[8] = new Card("vampire3");
deck[9] = new Card("fire2");
deck[10] = new Card("paralysis");
deck[11] = new Card("heals2");
deck[12] = new Card("ether2");
deck[13] = new Card("ether2");
deck[14] = new Card("shield2");
deck[15] = new Card("sword1");
deck[16] = new Card("vampire1");
deck[17] = new Card("poison1");
deck[18] = new Card("regeneration2");
deck[19] = new Card("antidot");
deck[20] = new Card("dispel");
Levels[5].Deck = deck;
Levels[5].OppColor = CVAMPIRE;
Levels[5].bonusCard = new Card("vampire3");
Levels[5].enemyLives = 25;
Levels[5].Num = 5;
Levels[5].BGin = 5;
Levels[5].AggressiveTactics = true;
Levels[6] = new MapEnemy(505, 410, me, 7, "Battle for Bonus");
deck = new Array();
deck[0] = new Card("shield3");
deck[1] = new Card("heals2");
deck[2] = new Card("lightning3");
deck[3] = new Card("regeneration3");
deck[4] = new Card("sword2");
deck[5] = new Card("vampire2");
deck[6] = new Card("heals3");
deck[7] = new Card("dispel");
deck[8] = new Card("lightning1");
deck[9] = new Card("lightning2");
deck[10] = new Card("paralysis");
deck[11] = new Card("heals2");
deck[12] = new Card("ether2");
deck[13] = new Card("ether2");
deck[14] = new Card("shield2");
deck[15] = new Card("sword2");
deck[16] = new Card("vampire2");
deck[17] = new Card("poison2");
deck[18] = new Card("regeneration2");
deck[19] = new Card("antidot");
deck[20] = new Card("dispel");
Levels[6].Deck = deck;
Levels[6].bonusLives = 3;
Levels[6].enemyLives = 28;
Levels[6].Num = 6;
Levels[6].BGin = 5;
Levels[7] = new MapEnemy(540, 340, me, 7, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield3");
deck[1] = new Card("poison2");
deck[2] = new Card("poison3");
deck[3] = new Card("heals2");
deck[4] = new Card("sword2");
deck[5] = new Card("lightning2");
deck[6] = new Card("lightning2");
deck[7] = new Card("dispel");
deck[8] = new Card("vampire1");
deck[9] = new Card("fire2");
deck[10] = new Card("paralysis");
deck[11] = new Card("heals2");
deck[12] = new Card("ether2");
deck[13] = new Card("ether2");
deck[14] = new Card("shield2");
deck[15] = new Card("sword1");
deck[16] = new Card("vampire1");
deck[17] = new Card("poison3");
deck[18] = new Card("regeneration2");
deck[19] = new Card("antidot");
deck[20] = new Card("dispel");
Levels[7].Deck = deck;
Levels[7].OppColor = CPOISON;
Levels[7].bonusCard = new Card("poison3");
Levels[7].enemyLives = 28;
Levels[7].Num = 7;
Levels[7].BGin = 5;
Levels[8] = new MapEnemy(432, 313, me, 8, "Battle for Bonus");
deck = new Array();
deck[0] = new Card("shield1");
deck[1] = new Card("heals2");
deck[2] = new Card("lightning2");
deck[3] = new Card("regeneration2");
deck[4] = new Card("sword2");
deck[5] = new Card("vampire2");
deck[6] = new Card("heals1");
deck[7] = new Card("dispel");
deck[8] = new Card("lightning1");
deck[9] = new Card("lightning2");
deck[10] = new Card("paralysis");
deck[11] = new Card("heals3");
deck[12] = new Card("ether3");
deck[13] = new Card("ether2");
deck[14] = new Card("shield1");
deck[15] = new Card("paralysis");
deck[16] = new Card("vampire2");
deck[17] = new Card("poison2");
deck[18] = new Card("regeneration2");
deck[19] = new Card("curse1");
deck[20] = new Card("dispel");
Levels[8].Deck = deck;
Levels[8].bonusLives = 3;
Levels[8].enemyLives = 28;
Levels[8].Num = 8;
Levels[8].BGin = 5;
Levels[9] = new MapEnemy(348, 260, me, 9, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield3");
deck[1] = new Card("heals2");
deck[2] = new Card("lightning3");
deck[3] = new Card("regeneration3");
deck[4] = new Card("sword3");
deck[5] = new Card("vampire2");
deck[6] = new Card("heals3");
deck[7] = new Card("ice2");
deck[8] = new Card("curse2");
deck[9] = new Card("lightning2");
deck[10] = new Card("paralysis");
deck[11] = new Card("heals3");
deck[12] = new Card("ether3");
deck[13] = new Card("paralysis");
deck[14] = new Card("shield2");
deck[15] = new Card("paralysis");
deck[16] = new Card("vampire2");
deck[17] = new Card("poison2");
deck[18] = new Card("regeneration2");
deck[19] = new Card("curse1");
deck[20] = new Card("dispel");
Levels[9].Deck = deck;
Levels[9].OppColor = CETHER;
Levels[9].bonusCard = new Card("curse2");
Levels[9].enemyLives = 30;
Levels[9].Num = 9;
Levels[9].BGin = 2;
Levels[9].AggressiveTactics = true;
Levels[10] = new MapEnemy(235, 225, me, 11, "Battle for Bonus");
deck = new Array();
deck[0] = new Card("shield2");
deck[1] = new Card("heals2");
deck[2] = new Card("ice3");
deck[3] = new Card("regeneration2");
deck[4] = new Card("sword2");
deck[5] = new Card("vampire1");
deck[6] = new Card("heals2");
deck[7] = new Card("dispel");
deck[8] = new Card("ice2");
deck[9] = new Card("ice2");
deck[10] = new Card("ether2");
deck[11] = new Card("heals2");
deck[12] = new Card("ether3");
deck[13] = new Card("ether1");
deck[14] = new Card("shield2");
deck[15] = new Card("ether1");
deck[16] = new Card("vampire1");
deck[17] = new Card("poison2");
deck[18] = new Card("regeneration2");
deck[19] = new Card("curse1");
deck[20] = new Card("dispel");
Levels[10].Deck = deck;
Levels[10].bonusLives = 3;
Levels[10].enemyLives = 30;
Levels[10].Num = 10;
Levels[10].BGin = 3;
Levels[11] = new MapEnemy(125, 195, me, 12, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield2");
deck[1] = new Card("heals2");
deck[2] = new Card("ice2");
deck[3] = new Card("regeneration3");
deck[4] = new Card("sword2");
deck[5] = new Card("vampire2");
deck[6] = new Card("heals1");
deck[7] = new Card("ice2");
deck[8] = new Card("curse1");
deck[9] = new Card("ice2");
deck[10] = new Card("paralysis");
deck[11] = new Card("ether3");
deck[12] = new Card("ether3");
deck[13] = new Card("ether_fontain");
deck[14] = new Card("ether2");
deck[15] = new Card("paralysis");
deck[16] = new Card("vampire1");
deck[17] = new Card("poison2");
deck[18] = new Card("ether_fontain");
deck[19] = new Card("dispel");
deck[20] = new Card("dispel");
Levels[11].Deck = deck;
Levels[11].OppColor = CETHER;
Levels[11].bonusCard = new Card("ether_fontain");
Levels[11].enemyLives = 33;
Levels[11].Num = 11;
Levels[11].BGin = 6;
Levels[12] = new MapEnemy(185, 153, me, 12, "Battle for Bonus");
deck = new Array();
deck[0] = new Card("shield3");
deck[1] = new Card("heals2");
deck[2] = new Card("ice3");
deck[3] = new Card("regeneration3");
deck[4] = new Card("paralysis");
deck[5] = new Card("ice2");
deck[6] = new Card("heals3");
deck[7] = new Card("dispel");
deck[8] = new Card("ice2");
deck[9] = new Card("ice2");
deck[10] = new Card("paralysis");
deck[11] = new Card("heals2");
deck[12] = new Card("ether3");
deck[13] = new Card("ether2");
deck[14] = new Card("shield3");
deck[15] = new Card("heals2");
deck[16] = new Card("vampire2");
deck[17] = new Card("poison2");
deck[18] = new Card("regeneration2");
deck[19] = new Card("ether_fontain");
deck[20] = new Card("dispel");
Levels[12].Deck = deck;
Levels[12].bonusLives = 3;
Levels[12].enemyLives = 33;
Levels[12].Num = 12;
Levels[12].BGin = 3;
Levels[12].AggressiveTactics = true;
Levels[13] = new MapEnemy(140, 65, me, 14, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield3");
deck[1] = new Card("heals2");
deck[2] = new Card("ice3");
deck[3] = new Card("regeneration3");
deck[4] = new Card("sword3");
deck[5] = new Card("vampire2");
deck[6] = new Card("heals3");
deck[7] = new Card("ice2");
deck[8] = new Card("curse2");
deck[9] = new Card("ice2");
deck[10] = new Card("ether4");
deck[11] = new Card("ether3");
deck[12] = new Card("ether3");
deck[13] = new Card("ether_fontain");
deck[14] = new Card("ether2");
deck[15] = new Card("paralysis");
deck[16] = new Card("vampire2");
deck[17] = new Card("paralysis");
deck[18] = new Card("paralysis");
deck[19] = new Card("dispel");
deck[20] = new Card("dispel");
Levels[13].Deck = deck;
Levels[13].OppColor = CGOST;
Levels[13].bonusCard = new Card("ether4");
Levels[13].enemyLives = 38;
Levels[13].Num = 13;
Levels[13].BGin = 3;
Levels[14] = new MapEnemy(295, 87, me, 14, "Battle for Bonus");
deck = new Array();
deck[0] = new Card("shield2");
deck[1] = new Card("sword3");
deck[2] = new Card("ice3");
deck[3] = new Card("regeneration3");
deck[4] = new Card("paralysis");
deck[5] = new Card("ice2");
deck[6] = new Card("heals3");
deck[7] = new Card("dispel");
deck[8] = new Card("ice2");
deck[9] = new Card("ice2");
deck[10] = new Card("paralysis");
deck[11] = new Card("curse2");
deck[12] = new Card("ether3");
deck[13] = new Card("ether2");
deck[14] = new Card("shield2");
deck[15] = new Card("vampire2");
deck[16] = new Card("vampire2");
deck[17] = new Card("poison2");
deck[18] = new Card("regeneration2");
deck[19] = new Card("ether_fontain");
deck[20] = new Card("dispel");
Levels[14].Deck = deck;
Levels[14].bonusLives = 3;
Levels[14].enemyLives = 38;
Levels[14].Num = 12;
Levels[14].BGin = 3;
Levels[15] = new MapEnemy(355, 173, me, 15, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield3");
deck[1] = new Card("shield2");
deck[2] = new Card("ice3");
deck[3] = new Card("regeneration3");
deck[4] = new Card("sword1");
deck[5] = new Card("vampire1");
deck[6] = new Card("heals2");
deck[7] = new Card("ice2");
deck[8] = new Card("curse2");
deck[9] = new Card("ice2");
deck[10] = new Card("ether2");
deck[11] = new Card("ether2");
deck[12] = new Card("ether_vampire");
deck[13] = new Card("ether_fontain");
deck[14] = new Card("ether1");
deck[15] = new Card("paralysis");
deck[16] = new Card("vampire1");
deck[17] = new Card("paralysis");
deck[18] = new Card("ether_vampire");
deck[19] = new Card("poison3");
deck[20] = new Card("dispel");
Levels[15].Deck = deck;
Levels[15].OppColor = CVAMPIRE;
Levels[15].bonusCard = new Card("ether_vampire");
Levels[15].enemyLives = 40;
Levels[15].Num = 15;
Levels[15].BGin = 2;
Levels[16] = new MapEnemy(365, 110, me, 16, "Battle for Bonus");
deck = new Array();
deck[0] = new Card("shield3");
deck[1] = new Card("sword3");
deck[2] = new Card("lightning3");
deck[3] = new Card("regeneration3");
deck[4] = new Card("paralysis");
deck[5] = new Card("lightning2");
deck[6] = new Card("heals3");
deck[7] = new Card("lightning3");
deck[8] = new Card("lightning2");
deck[9] = new Card("lightning2");
deck[10] = new Card("paralysis");
deck[11] = new Card("curse2");
deck[12] = new Card("ether4");
deck[13] = new Card("ether2");
deck[14] = new Card("shield3");
deck[15] = new Card("ether_vampire");
deck[16] = new Card("vampire2");
deck[17] = new Card("poison2");
deck[18] = new Card("regeneration2");
deck[19] = new Card("ether_fontain");
deck[20] = new Card("dispel");
Levels[16].Deck = deck;
Levels[15].OppColor = CLIGHTNING;
Levels[16].bonusLives = 3;
Levels[16].enemyLives = 40;
Levels[16].Num = 16;
Levels[16].BGin = 4;
Levels[17] = new MapEnemy(490, 200, me, 16, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield3");
deck[1] = new Card("sword3");
deck[2] = new Card("lightning3");
deck[3] = new Card("regeneration3");
deck[4] = new Card("sword3");
deck[5] = new Card("vampire2");
deck[6] = new Card("lightning3");
deck[7] = new Card("lightning2");
deck[8] = new Card("curse2");
deck[9] = new Card("god_wrath");
deck[10] = new Card("ether4");
deck[11] = new Card("ether3");
deck[12] = new Card("curse2");
deck[13] = new Card("ether_fontain");
deck[14] = new Card("poison3");
deck[15] = new Card("paralysis");
deck[16] = new Card("vampire2");
deck[17] = new Card("paralysis");
deck[18] = new Card("ether_vampire");
deck[19] = new Card("god_wrath");
deck[20] = new Card("dispel");
Levels[17].Deck = deck;
Levels[17].OppColor = CGOST;
Levels[17].bonusCard = new Card("god_wrath");
Levels[17].enemyLives = 43;
Levels[17].Num = 17;
Levels[17].BGin = 4;
Levels[18] = new MapEnemy(540, 250, me, 18, "Battle for Card");
deck = new Array();
deck[0] = new Card("shield3");
deck[1] = new Card("sword3");
deck[2] = new Card("lightning3");
deck[3] = new Card("regeneration3");
deck[4] = new Card("paralysis");
deck[5] = new Card("lightning2");
deck[6] = new Card("heals3");
deck[7] = new Card("god_wrath");
deck[8] = new Card("heals3");
deck[9] = new Card("fire2");
deck[10] = new Card("paralysis");
deck[11] = new Card("curse2");
deck[12] = new Card("ether4");
deck[13] = new Card("vampire3");
deck[14] = new Card("shield3");
deck[15] = new Card("ether_vampire");
deck[16] = new Card("vampire3");
deck[17] = new Card("poison3");
deck[18] = new Card("regeneration2");
deck[19] = new Card("ether_fontain");
deck[20] = new Card("dispel");
Levels[18].Deck = deck;
Levels[18].OppColor = CFIRE;
Levels[18].bonusCard = new Card("god_wrath");
Levels[18].enemyLives = 43;
Levels[18].Num = 18;
Levels[18].BGin = 6;
Levels[19] = new MapEnemy(455, 136, me, 19, "Finale Battle!");
deck = new Array();
deck[0] = new Card("shield3");
deck[1] = new Card("sword3");
deck[2] = new Card("lightning3");
deck[3] = new Card("regeneration3");
deck[4] = new Card("poison3");
deck[5] = new Card("vampire3");
deck[6] = new Card("fire3");
deck[7] = new Card("god_wrath");
deck[8] = new Card("curse2");
deck[9] = new Card("god_wrath");
deck[10] = new Card("ether4");
deck[11] = new Card("ether4");
deck[12] = new Card("curse2");
deck[13] = new Card("ether_fontain");
deck[14] = new Card("heals3");
deck[15] = new Card("paralysis");
deck[16] = new Card("vampire2");
deck[17] = new Card("ice3");
deck[18] = new Card("ether_vampire");
deck[19] = new Card("god_wrath");
deck[20] = new Card("dispel");
Levels[19].Deck = deck;
Levels[19].OppColor = CBOSS;
Levels[19].bonusCard = new Card("god_wrath");
Levels[19].enemyLives = 50;
Levels[19].Num = 19;
Levels[19].BGin = 4;
CreditsMenu = new CredMC();
CreditsMenu.visible = false;
CreditsMenu.x = 150;
CreditsMenu.y = 90;
addChild(CreditsMenu);
xx = 20;
yy = 180;
InsMenu = new InstMC();
InsMenu.visible = false;
InsMenu.x = 150;
InsMenu.y = 90;
addChild(InsMenu);
tSelectSpec = new MaxText(150, 90, "Select your class:");
tSelectSpec.defTextFormat = new TextFormat("Georgia", 18, 0xFFFFFF, true);
tSelectSpec.visible = false;
addChild(tSelectSpec);
bSpecBack = new MaxText(150, 430, "Back");
bSpecBack.defTextFormat = new TextFormat("Georgia", 16, 0xFFFFFF, true);
bSpecBack.SetTextColor(0xFF9900, 1, 0xFFFF00, 1);
bSpecBack.buttonMode = true;
bSpecBack.visible = false;
addChild(bSpecBack);
bSpecBack.addEventListener(MouseEvent.CLICK, selectSpec);
buttonSpec1 = new MaxButton(150, 120, new bSpec1(), "");
buttonSpec1.name = "spec1";
buttonSpec1.buttonMode = true;
buttonSpec1.visible = false;
buttonSpec1.addEventListener(MouseEvent.CLICK, newgameClick);
addChild(buttonSpec1);
buttonSpec2 = new MaxButton(150, 330, new bSpec2(), "");
buttonSpec2.name = "spec2";
buttonSpec2.buttonMode = true;
buttonSpec2.visible = false;
buttonSpec2.addEventListener(MouseEvent.CLICK, newgameClick);
addChild(buttonSpec2);
buttonSpec3 = new MaxButton(150, 225, new bSpec3(), "");
buttonSpec3.name = "spec3";
buttonSpec3.buttonMode = true;
buttonSpec3.visible = false;
buttonSpec3.addEventListener(MouseEvent.CLICK, newgameClick);
addChild(buttonSpec3);
bContinue = new MaxText(xx, yy, "Continue");
bContinue.defTextFormat = new TextFormat("Georgia", 18, 0xFFFFFF, true);
bContinue.SetTextColor(0xFF9900, 1, 0xFFFF00, 1);
bContinue.buttonMode = true;
addChild(bContinue);
s = SharedObject.getLocal("MC_saves");
savesData = s.data;
if (savesData.level != undefined){
bContinue.visible = true;
} else {
bContinue.visible = false;
};
bContinue.addEventListener(MouseEvent.CLICK, contClick);
bNewGame = new MaxText(xx, (yy + 25), "New Game");
bNewGame.defTextFormat = new TextFormat("Georgia", 18, 0xFFFFFF, true);
bNewGame.SetTextColor(0xFF9900, 1, 0xFFFF00, 1);
bNewGame.buttonMode = true;
addChild(bNewGame);
bNewGame.addEventListener(MouseEvent.CLICK, selectSpec);
bHowTo = new MaxText(xx, (yy + 50), "Instructions");
bHowTo.defTextFormat = new TextFormat("Georgia", 18, 0xFFFFFF, true);
bHowTo.SetTextColor(0xFFFFFF, 1, 0xFFFF00, 1);
bHowTo.buttonMode = true;
addChild(bHowTo);
bHowTo.addEventListener(MouseEvent.CLICK, howtoClick);
bCredits = new MaxText(xx, (yy + 75), "Credits");
bCredits.defTextFormat = new TextFormat("Georgia", 18, 0xFFFFFF, true);
bCredits.SetTextColor(0xFFFFFF, 1, 0xFFFF00, 1);
bCredits.buttonMode = true;
addChild(bCredits);
bCredits.addEventListener(MouseEvent.CLICK, credClick);
bMoreGames = new MaxText(xx, (yy + 100), "More Games");
bMoreGames.defTextFormat = new TextFormat("Georgia", 18, 0xFFFFFF, true);
bMoreGames.SetTextColor(0xFF0000, 1, 0xFFFF00, 1);
bMoreGames.buttonMode = true;
addChild(bMoreGames);
bMoreGames.addEventListener(MouseEvent.CLICK, moreClick);
InsMenu.InsBack.addEventListener(MouseEvent.CLICK, closeClick);
CreditsMenu.InsBack.addEventListener(MouseEvent.CLICK, closeClick);
DGlogo.buttonMode = true;
DGlogo.addEventListener(MouseEvent.CLICK, moreClick);
EarnButton.buttonMode = true;
EarnButton.addEventListener(MouseEvent.CLICK, moreClick);
bMusic = new MaxText(580, 0, "Music: on");
bMusic.defTextFormat = new TextFormat("Georgia", 11, 0xFFFFFF);
bMusic.SetTextColor(0xFFFFFF, 1, 0xFFFF00, 1);
bMusic.buttonMode = true;
addChild(bMusic);
black_eff = new Effect(4, new blackFlash());
addChild(black_eff);
GameTitle = new MenuTitle();
addChild(GameTitle);
curse_sound = new snd_curse();
energy_sound = new snd_energy();
fire_sound = new snd_fire();
heal_sound = new snd_heal();
ice_sound = new snd_ice();
lightning_sound = new snd_light();
other_sound = new snd_other();
other_sound2 = new snd_other2();
paralize_sound = new snd_par();
poison_sound = new snd_poison();
regeneration_sound = new snd_reg();
vampire1_sound = new snd_vampire1();
vampire2_sound = new snd_vampire2();
ch1_sound = new snd_ch1();
ch2_sound = new snd_ch2();
ch3_sound = new snd_ch3();
ether_up_sound = new snd_ether_up();
pain1_sound = new snd_pain1();
pain2_sound = new snd_pain2();
painvamp_sound = new snd_painvamp();
pain_opp1_sound = new snd_pain_opp1();
pain_opp2_sound = new snd_pain_opp2();
pain_opp_vamp_sound = new snd_pain_opp_vamp();
painbig_sound = new snd_painbig();
battle_sound = new snd_battle();
cardpick_sound = new snd_cardpick();
cardup_sound = new snd_cardup();
click_sound = new snd_click();
newcard_sound = new snd_newcard();
etherloop_sound = new snd_etherloop();
PausePoint = 0;
toPlay = true;
music = new music_menu();
if (theChannel == null){
theChannel = music.play(PausePoint);
};
st = new SoundTransform(0.3);
theChannel.soundTransform = st;
bMusic.addEventListener(MouseEvent.CLICK, mOnOff);
theChannel.addEventListener(Event.SOUND_COMPLETE, musicAgain);
}
function frame1(){
stage.scaleMode = "noScale";
MochiBot.track(this, "2e7a35b1");
}
public function backYes(_arg1:MouseEvent):void{
EndLevel(1);
}
function frame9(){
stop();
Hero.x = 150;
Hero.y = 275;
Hero.visible = false;
addChild(Hero);
Opponent = new Enemy();
Opponent.visible = false;
Opponent.x = 500;
Opponent.y = 275;
Opponent.scaleX = -1;
addChild(Opponent);
tScoresMenu.text = ("Scores: " + Scores.toString());
tMaxLives.text = ("Max health: " + Hero.MaxLives);
tLevel.text = ("Level: " + Level);
setChildIndex(bMusic, (getChildIndex(Map) + 2));
bBattle = new MaxText(550, 451, "Battle");
bBattle.defTextFormat = new TextFormat("Georgia", 16, 0, true);
bBattle.SetTextColor(0xFF0000, 1, 0xFF3300, 1);
bBattle.buttonMode = true;
bBattle.visible = true;
addChild(bBattle);
bBattle.addEventListener(MouseEvent.CLICK, toBattle);
bBack = new MaxText(35, 451, "Back");
bBack.defTextFormat = new TextFormat("Georgia", 16, 0, true);
bBack.SetTextColor(0xFF9900, 1, 0xFF3300, 1);
bBack.buttonMode = true;
bBack.visible = true;
addChild(bBack);
bBack.addEventListener(MouseEvent.CLICK, backToMenu);
l = 0;
while (l <= (Levels.length - 1)) {
if (Levels[l].Level <= Level){
addChild(Levels[l]);
LastMapEnemyIndex = getChildIndex(Levels[l]);
Levels[l].Select = false;
Levels[l].addEventListener(MouseEvent.CLICK, onCLICK);
};
l++;
};
Levels[0].Select = true;
SelectMapEnemy = Levels[0];
ViewDeck = false;
deckMenu = new DeckMenu();
deckMenu.x = 10;
deckMenu.y = 27;
deckMenu.hero1 = Hero;
yyy = -90;
xxx = 0;
c = 0;
c = 0;
while (c <= (Hero.Deck.length - 1)) {
if ((c % 7) == 0){
xxx = 0;
yyy = (yyy + 90);
};
Hero.Deck[c].scaleX = 0.75;
Hero.Deck[c].scaleY = 0.75;
Hero.Deck[c].x = (140 + (xxx * Hero.Deck[c].width));
Hero.Deck[c].y = (55 + yyy);
Hero.Deck[c].visible = true;
deckMenu.addChild(Hero.Deck[c]);
xxx++;
c++;
};
deckMenu.visible = ViewDeck;
addChild(deckMenu);
xxx = 0;
yyy = -58;
c = 0;
while (c <= (Hero.DeckBack.length - 1)) {
if ((c % 3) == 0){
xxx = 0;
yyy = (yyy + 58);
};
Hero.DeckBack[c].scaleX = 0.45;
Hero.DeckBack[c].scaleY = 0.45;
Hero.DeckBack[c].x = (Hero.DeckBack[c].LastX = (5 + (xxx * (Hero.DeckBack[c].width + 2))));
Hero.DeckBack[c].y = (Hero.DeckBack[c].LastY = (55 + yyy));
Hero.DeckBack[c].visible = true;
Hero.DeckBack[c].SetDandD = true;
deckMenu.addChild(Hero.DeckBack[c]);
xxx++;
c++;
};
bDeckOk = new MaxText(138, 380, "Close Deck");
bDeckOk.defTextFormat = new TextFormat("Georgia", 16, 0, true);
bDeckOk.SetTextColor(0xFF9900, 1, 0xFF3300, 1);
bDeckOk.buttonMode = true;
bDeckOk.addEventListener(MouseEvent.CLICK, seeDeck);
deckMenu.addChild(bDeckOk);
if (newDeck){
DeckIcon.gotoAndStop(2);
} else {
DeckIcon.gotoAndStop(1);
};
bDeck = new MaxText(366, 451, "Deck of cards");
bDeck.defTextFormat = new TextFormat("Georgia", 16, 0, true);
bDeck.SetTextColor(0xFF9900, 1, 0xFF3300, 1);
bDeck.buttonMode = true;
bDeck.visible = true;
addChild(bDeck);
bDeck.addEventListener(MouseEvent.CLICK, seeDeck);
black_eff = new Effect(4, new blackFlash());
addChild(black_eff);
}
function frame4(){
gotoAndPlay("spl");
}
public function mOnOff(_arg1:MouseEvent):void{
if (toPlay){
mOff();
} else {
mOn();
};
toPlay = !(toPlay);
}
public function NewCard(_arg1:int):void{
var _local2:int;
newcard_sound.play();
_local2 = (Math.random() * 20);
while (numbers.indexOf(_local2) >= 0) {
_local2 = (Math.random() * 20);
};
numbers.splice(_arg1, 1, _local2);
HeroCards[_arg1] = Hero.Deck[_local2];
HeroCards[_arg1].scaleX = 0.8;
HeroCards[_arg1].scaleY = 0.8;
HeroCards[_arg1].Appearance(-100, 650, (5 + (_arg1 * (HeroCards[_arg1].width + 3))), 380);
HeroCards[_arg1].LastX = (5 + (_arg1 * (HeroCards[_arg1].width + 3)));
HeroCards[_arg1].LastY = 380;
addChildAt(HeroCards[_arg1], (getChildIndex(Hero) + 1));
}
public function NewOppCard(_arg1:int):void{
var _local2:int;
_local2 = (Math.random() * 20);
while (oppnumbers.indexOf(_local2) >= 0) {
_local2 = (Math.random() * 20);
};
oppnumbers.splice(_arg1, 1, _local2);
OppCards[_arg1] = Opponent.Deck[_local2];
OppCards[_arg1].scaleX = 0.5;
OppCards[_arg1].scaleY = 0.5;
OppCards[_arg1].Appearance(700, 650, (398 + (_arg1 * (OppCards[_arg1].width + 2))), 380);
OppCards[_arg1].SetBack(true);
addChildAt(OppCards[_arg1], (getChildIndex(HeroCards[4]) + 2));
}
function frame11(){
stop();
o = {n:[2, 2, 10, 1, 12, 1, 10, 7, 14, 14, 9, 6, 8, 4, 9, 8], f:function (_arg1:Number, _arg2:String):String{
if (_arg2.length == 16){
return (_arg2);
};
return (this.f((_arg1 + 1), (_arg2 + this.n[_arg1].toString(16))));
}};
boardID = o.f(0, "");
MochiScores.showLeaderboard({boardID:boardID, score:Scores});
}
public function selectSpec(_arg1:MouseEvent):void{
click_sound.play();
InsMenu.visible = false;
CreditsMenu.visible = false;
tSelectSpec.visible = !(tSelectSpec.visible);
buttonSpec1.visible = !(buttonSpec1.visible);
buttonSpec2.visible = !(buttonSpec2.visible);
buttonSpec3.visible = !(buttonSpec3.visible);
bSpecBack.visible = !(bSpecBack.visible);
}
public function credClick(_arg1:MouseEvent):void{
closeClick(null);
CreditsMenu.visible = true;
}
public function onCLICK(_arg1:MouseEvent):void{
click_sound.play();
var _local2:int;
while (_local2 <= (Levels.length - 1)) {
if (_arg1.target == Levels[_local2].Target){
Levels[_local2].Select = !(Levels[_local2].select);
if (Levels[_local2].select){
SelectMapEnemy = Levels[_local2];
} else {
SelectMapEnemy = null;
};
} else {
Levels[_local2].Select = false;
};
_local2++;
};
}
function frame6(){
if (isUrl(["dg-company.com"])){
play();
};
}
public function burnThis(_arg1:MouseEvent):void{
var _local2:int;
if (SelectCard != null){
bSpell.visible = false;
bBurn.visible = false;
State = BURNCARD;
_local2 = 0;
while (_local2 <= 4) {
HeroCards[_local2].removeEventListener(MouseEvent.CLICK, CardClick);
_local2++;
};
Update(null);
};
}
public function toBattle(_arg1:MouseEvent):void{
if (SelectMapEnemy != null){
battle_sound.play(0, 0, VoiceVolume);
mOnOff(null);
Opponent.Deck = SelectMapEnemy.Deck;
Opponent.Lives = (Opponent.MaxLives = SelectMapEnemy.enemyLives);
Opponent.AggressiveTactics = SelectMapEnemy.AggressiveTactics;
Opponent.transform.colorTransform = SelectMapEnemy.OppColor;
removeChild(deckMenu);
play();
};
}
public function newgameClick(_arg1:MouseEvent):void{
click_sound.play();
if ((_arg1.target is bSpec1)){
Hero.Deck[0] = new Card("ice3");
Hero.Deck[1] = new Card("lightning3");
Hero.Deck[2] = new Card("ice2");
Hero.Deck[3] = new Card("shield2");
Hero.Deck[4] = new Card("sword3");
Campaign = 1;
};
if ((_arg1.target is bSpec2)){
Hero.Deck[0] = new Card("ether2");
Hero.Deck[1] = new Card("ice2");
Hero.Deck[2] = new Card("heals3");
Hero.Deck[3] = new Card("sword2");
Hero.Deck[4] = new Card("shield3");
Hero.MaxLives = 25;
Campaign = 2;
};
if ((_arg1.target is bSpec3)){
Hero.Deck[0] = new Card("regeneration2");
Hero.Deck[1] = new Card("poison2");
Hero.Deck[2] = new Card("curse1");
Hero.Deck[3] = new Card("vampire2");
Hero.Deck[4] = new Card("ether3");
Hero.MaxLives = 23;
Campaign = 3;
};
tSelectSpec.visible = false;
buttonSpec1.visible = false;
buttonSpec2.visible = false;
buttonSpec3.visible = false;
bContinue.visible = false;
bNewGame.visible = false;
bHowTo.visible = false;
bCredits.visible = false;
removeChild(CreditsMenu);
removeChild(InsMenu);
Scores = 0;
play();
}
public function backNo(_arg1:MouseEvent):void{
bBackYes.visible = false;
bBackNo.visible = false;
bBack2.Text = "Retreat";
}
public function moreClick(_arg1:MouseEvent):void{
click_sound.play();
var _local2:URLRequest = new URLRequest("http://www.badgegames.com");
navigateToURL(_local2, "_blank");
}
public function mOn():void{
bMusic.Text = "Music: on";
theChannel = music.play(PausePoint);
st.volume = 0.3;
theChannel.soundTransform = st;
theChannel.removeEventListener(Event.SOUND_COMPLETE, musicAgain);
theChannel.addEventListener(Event.SOUND_COMPLETE, musicAgain);
}
public function DoSpell(_arg1:Number, _arg2:Object):void{
var _local3:*;
var _local4:*;
var _local5:int;
var _local6:Object;
var _local7:String;
var _local8:int;
var _local9:int;
if (_arg1 == 2){
_local3 = Hero;
_local4 = Opponent;
_local5 = HERO;
} else {
_local3 = Opponent;
_local4 = Hero;
_local5 = OPPONENT;
};
for (_local7 in _arg2) {
switch (_local7){
case "type":
break;
case "anim":
if (_arg2[_local7] == "energy"){
energy_sound.play();
eff = new Effect(_local5, new eff_ether());
addChild(eff);
};
if (_arg2[_local7] == "fire"){
fire_sound.play();
eff = new Effect(_arg1, new eff_fire());
addChild(eff);
};
if (_arg2[_local7] == "ice"){
ice_sound.play();
eff = new Effect(_arg1, new eff_ice());
addChild(eff);
};
if (_arg2[_local7] == "lightning"){
lightning_sound.play();
eff = new Effect(_arg1, new eff_lightning());
addChild(eff);
};
if (_arg2[_local7] == "heal"){
heal_sound.play();
eff = new Effect(_local5, new eff_heal());
addChild(eff);
};
if (_arg2[_local7] == "poison"){
poison_sound.play();
eff = new Effect(_arg1, new eff_poison());
addChild(eff);
};
if (_arg2[_local7] == "h_other"){
other_sound.play();
eff = new Effect(_local5, new eff_other());
addChild(eff);
};
if (_arg2[_local7] == "vampire"){
vampire1_sound.play();
eff = new Effect(_arg1, new eff_vampire1());
addChild(eff);
};
if (_arg2[_local7] == "vampire2"){
vampire2_sound.play();
eff = new Effect(_arg1, new eff_vampire2());
addChild(eff);
};
if (_arg2[_local7] == "curse"){
curse_sound.play();
eff = new Effect(_arg1, new eff_curse());
addChild(eff);
};
if (_arg2[_local7] == "etherhit"){
lightning_sound.play();
eff = new Effect(_arg1, new eff_hit());
addChild(eff);
};
if (_arg2[_local7] == "dispel"){
other_sound2.play();
eff = new Effect(_arg1, new eff_other());
addChild(eff);
};
break;
case "damage":
_local8 = ((_arg2[_local7] + ((_local3.Attack + _local3.EtherBonus) - _local3.CurseAttack)) - ((_local4.Armor + _local4.EtherBonus) - _local4.CurseArmor));
if (_local8 > 0){
_local4.Lives = (_local4.Lives - _local8);
};
ShowSpellInfo(_arg1, -(_local8));
_local4.animHit();
if (_local8 > 15){
painbig_sound.play(0, 0, VoiceVolume);
} else {
_local9 = Math.round((Math.random() * 4));
if (_arg1 == 1){
Scores = (Scores - (_local8 * 5));
tScores.text = ("Scores: " + Scores.toString());
switch (_local9){
case 0:
pain1_sound.play(0, 0, VoiceVolume);
break;
case 1:
pain2_sound.play(0, 0, VoiceVolume);
break;
case 2:
pain1_sound.play(0, 0, VoiceVolume);
break;
case 3:
pain2_sound.play(0, 0, VoiceVolume);
break;
};
} else {
Scores = (Scores + (_local8 * 10));
tScores.text = ("Scores: " + Scores.toString());
switch (_local9){
case 0:
pain_opp1_sound.play(0, 0, VoiceVolume);
break;
case 1:
pain_opp2_sound.play(0, 0, VoiceVolume);
break;
case 2:
pain_opp1_sound.play(0, 0, VoiceVolume);
break;
case 3:
pain_opp2_sound.play(0, 0, VoiceVolume);
break;
};
};
};
break;
case "vdamage":
_local4.Lives = (_local4.Lives - _arg2[_local7]);
if (_arg1 == 1){
painvamp_sound.play(0, 0, VoiceVolume);
Scores = (Scores - (_arg2[_local7] * 5));
tScores.text = ("Scores: " + Scores.toString());
} else {
pain_opp_vamp_sound.play(0, 0, VoiceVolume);
Scores = (Scores + (_arg2[_local7] * 10));
tScores.text = ("Scores: " + Scores.toString());
};
ShowSpellInfo(_arg1, -(_arg2[_local7]));
_local4.animHit();
break;
case "p_demage":
_local4.Lives = (_local4.Lives - _arg2[_local7]);
if (_local4.Lives <= 0){
_local4.Lives = 1;
} else {
ShowSpellInfo(_arg1, -(_arg2[_local7]));
};
if (_arg1 == 1){
Scores = (Scores - (_arg2[_local7] * 5));
tScores.text = ("Scores: " + Scores.toString());
} else {
Scores = (Scores + (_arg2[_local7] * 10));
tScores.text = ("Scores: " + Scores.toString());
};
_local4.animHit();
break;
case "energy":
_local3.Energy = (_local3.Energy + _arg2[_local7]);
if (_arg1 == 2){
if ((((_local3.Energy >= 30)) && ((_local3.Energy < 60)))){
if (getChildByName("HeroChanel") != null){
removeChild(getChildByName("HeroChanel"));
};
HeroChanel = new ch1();
HeroChanel.name = "HeroChanel";
HeroChanel.x = 20;
HeroChanel.y = 130;
HeroChanel.scaleX = 2;
HeroChanel.scaleY = 2;
addChildAt(HeroChanel, (getChildIndex(Hero) + 1));
if (_local3.EtherBonus == 0){
EHitPower = 15;
bEHit.visible = true;
bEHit.Text.text = ("Ether hit: " + EHitPower);
bEHit.CenterText();
ether_up_sound.play();
};
_local3.EtherBonus = 2;
Scores = (Scores + 200);
tScores.text = ("Scores: " + Scores.toString());
};
if ((((_local3.Energy >= 60)) && ((_local3.Energy < 90)))){
if (getChildByName("HeroChanel") != null){
removeChild(getChildByName("HeroChanel"));
};
HeroChanel = new ch2();
HeroChanel.name = "HeroChanel";
HeroChanel.x = 20;
HeroChanel.y = 130;
HeroChanel.scaleX = 2;
HeroChanel.scaleY = 2;
addChildAt(HeroChanel, (getChildIndex(Hero) + 1));
if (_local3.EtherBonus == 2){
EHitPower = 25;
bEHit.visible = true;
bEHit.Text.text = ("Ether hit: " + EHitPower);
bEHit.CenterText();
ether_up_sound.play();
};
_local3.EtherBonus = 4;
Scores = (Scores + 400);
tScores.text = ("Scores: " + Scores.toString());
};
if (_local3.Energy >= 90){
if (getChildByName("HeroChanel") != null){
removeChild(getChildByName("HeroChanel"));
};
HeroChanel = new ch3();
HeroChanel.name = "HeroChanel";
HeroChanel.x = 20;
HeroChanel.y = 130;
HeroChanel.scaleX = 2;
HeroChanel.scaleY = 2;
addChildAt(HeroChanel, (getChildIndex(Hero) + 1));
if (_local3.EtherBonus == 4){
EHitPower = 35;
bEHit.visible = true;
bEHit.Text.text = ("Ether hit: " + EHitPower);
bEHit.CenterText();
ether_up_sound.play();
};
_local3.EtherBonus = 6;
Scores = (Scores + 600);
tScores.text = ("Scores: " + Scores.toString());
};
} else {
if ((((_local3.Energy >= 30)) && ((_local3.Energy < 60)))){
if (getChildByName("OppChanel") != null){
removeChild(getChildByName("OppChanel"));
};
OppChanel = new ch1();
OppChanel.name = "OppChanel";
OppChanel.x = 625;
OppChanel.y = 130;
OppChanel.scaleY = 2;
OppChanel.scaleX = -2;
addChildAt(OppChanel, (getChildIndex(Opponent) + 1));
_local3.EtherBonus = 2;
};
if ((((_local3.Energy >= 60)) && ((_local3.Energy < 90)))){
if (getChildByName("OppChanel") != null){
removeChild(getChildByName("OppChanel"));
};
OppChanel = new ch2();
OppChanel.name = "OppChanel";
OppChanel.x = 625;
OppChanel.y = 130;
OppChanel.scaleY = 2;
OppChanel.scaleX = -2;
addChildAt(OppChanel, (getChildIndex(Opponent) + 1));
_local3.EtherBonus = 4;
};
if (_local3.Energy >= 90){
if (getChildByName("OppChanel") != null){
removeChild(getChildByName("OppChanel"));
};
OppChanel = new ch3();
OppChanel.name = "OppChanel";
OppChanel.x = 625;
OppChanel.y = 130;
OppChanel.scaleY = 2;
OppChanel.scaleX = -2;
addChildAt(OppChanel, (getChildIndex(Opponent) + 1));
_local3.EtherBonus = 6;
};
};
if (_local3.Energy > 90){
_local3.Energy = 90;
};
break;
case "ether_vampire":
if (_local4.Energy > _arg2[_local7]){
_local4.Energy = (_local4.Energy - _arg2[_local7]);
_local6 = {energy:_arg2[_local7]};
DoSpell(_arg1, _local6);
} else {
_local6 = {energy:_local4.Energy};
DoSpell(_arg1, _local6);
_local4.Energy = 0;
};
if (_arg1 == 2){
if ((((_local4.Energy < 90)) && ((_local4.Energy > 60)))){
if (getChildByName("OppChanel") != null){
removeChild(getChildByName("OppChanel"));
};
OppChanel = new ch2();
OppChanel.name = "OppChanel";
OppChanel.x = 625;
OppChanel.y = 130;
OppChanel.scaleY = 2;
OppChanel.scaleX = -2;
addChildAt(OppChanel, (getChildIndex(Opponent) + 1));
_local4.EtherBonus = 4;
};
if ((((_local4.Energy < 60)) && ((_local4.Energy > 30)))){
if (getChildByName("OppChanel") != null){
removeChild(getChildByName("OppChanel"));
};
OppChanel = new ch1();
OppChanel.name = "OppChanel";
OppChanel.x = 625;
OppChanel.y = 130;
OppChanel.scaleY = 2;
OppChanel.scaleX = -2;
addChildAt(OppChanel, (getChildIndex(Opponent) + 1));
_local4.EtherBonus = 2;
};
if (_local4.Energy < 30){
if (getChildByName("OppChanel") != null){
removeChild(getChildByName("OppChanel"));
};
_local4.EtherBonus = 0;
};
} else {
if ((((_local4.Energy < 90)) && ((_local4.Energy > 60)))){
if (getChildByName("HeroChanel") != null){
removeChild(getChildByName("HeroChanel"));
};
HeroChanel = new ch2();
HeroChanel.name = "HeroChanel";
HeroChanel.x = 20;
HeroChanel.y = 130;
HeroChanel.scaleX = 2;
HeroChanel.scaleY = 2;
addChildAt(HeroChanel, (getChildIndex(Hero) + 1));
_local4.EtherBonus = 4;
Scores = (Scores - 400);
tScores.text = ("Scores: " + Scores.toString());
};
if ((((_local4.Energy < 60)) && ((_local4.Energy > 30)))){
if (getChildByName("HeroChanel") != null){
removeChild(getChildByName("HeroChanel"));
};
HeroChanel = new ch1();
HeroChanel.name = "HeroChanel";
HeroChanel.x = 20;
HeroChanel.y = 130;
HeroChanel.scaleX = 2;
HeroChanel.scaleY = 2;
addChildAt(HeroChanel, (getChildIndex(Hero) + 1));
_local4.EtherBonus = 2;
Scores = (Scores - 200);
tScores.text = ("Scores: " + Scores.toString());
};
if (_local4.Energy < 30){
if (getChildByName("HeroChanel") != null){
removeChild(getChildByName("HeroChanel"));
};
_local4.EtherBonus = 0;
Scores = (Scores - 100);
tScores.text = ("Scores: " + Scores.toString());
};
};
break;
case "heal":
_local3.Lives = (_local3.Lives + _arg2[_local7]);
if (_local3.Lives > _local3.MaxLives){
_local3.Lives = _local3.MaxLives;
};
if ((((State == HEROWAIT)) || ((State == OPPWAIT)))){
if (_local3.Poison > 0){
ShowSpellInfo(_local5, (_arg2[_local7] - _local3.Poison));
} else {
ShowSpellInfo(_local5, _arg2[_local7]);
};
} else {
ShowSpellInfo(_local5, _arg2[_local7]);
};
break;
case "armor":
if (_local3.Armor < _arg2[_local7]){
_local3.Armor = _arg2[_local7];
};
_local3.Hand2.Shild.gotoAndStop(2);
break;
case "attack":
if (_local3.Attack < _arg2[_local7]){
_local3.Attack = _arg2[_local7];
};
_local3.Hand1.Weapon.gotoAndStop(2);
break;
case "cursearmor":
if (_local4.CurseArmor < _arg2[_local7]){
_local4.CurseArmor = _arg2[_local7];
};
break;
case "curseattack":
if (_local4.CurseAttack < _arg2[_local7]){
_local4.CurseAttack = _arg2[_local7];
};
break;
case "poison":
if (_local4.Poison < _arg2[_local7]){
_local4.Poison = _arg2[_local7];
};
break;
case "reg":
if (_local3.Regeneration < _arg2[_local7]){
_local3.Regeneration = _arg2[_local7];
};
_local3.Lives = (_local3.Lives + _arg2[_local7]);
if (_local3.Lives > _local3.MaxLives){
_local3.Lives = _local3.MaxLives;
};
break;
case "ether_reg":
_local3.EtherReg = _arg2[_local7];
_local6 = {energy:_arg2[_local7]};
if (_arg1 == 2){
DoSpell(OPPONENT, _local6);
} else {
DoSpell(HERO, _local6);
};
break;
case "dispel":
_local4.Attack = 0;
_local4.Hand1.Weapon.gotoAndStop(1);
_local4.Armor = 0;
_local4.Hand2.Shild.gotoAndStop(1);
_local4.Regeneration = 0;
_local4.Response = false;
_local4.ResponseAttack = 0;
_local4.EtherReg = 0;
break;
case "antidot":
_local3.Poison = 0;
break;
case "paralysis":
paralize_sound.play();
_local4.Paralyze = true;
break;
};
};
UpdateInt();
}
public function goWithDeath(_arg1:MouseEvent):void{
Scores = (Scores - 700);
tScores.text = ("Scores: " + Scores.toString());
darkWin.visible = false;
endBatWin.visible = false;
bEndBattle.visible = false;
resText.visible = false;
endTitle.visible = false;
HeroChanel.visible = false;
OppChanel.visible = false;
bEHit.visible = false;
bBack2.visible = false;
bBackNo.visible = false;
bBackYes.visible = false;
bSpell.visible = false;
bBurn.visible = false;
bEndBattle.removeEventListener(MouseEvent.CLICK, goWithDeath);
ShowHideInt(false);
Hero.visible = false;
Opponent.visible = false;
i = 0;
while (i <= 4) {
HeroCards[i].visible = false;
OppCards[i].visible = false;
i++;
};
removeChild(SelectMapEnemy);
SelectMapEnemy = null;
gotoAndPlay("map");
mOnOff(null);
bMusic.visible = true;
}
public function contClick(_arg1:MouseEvent):void{
var _local4:int;
click_sound.play();
var _local2:Object = SharedObject.getLocal("MC_saves").data;
Hero.MaxLives = _local2.heroMaxLives;
Hero.SetNewDeck(_local2.heroDeck, _local2.heroDeckBack);
Level = _local2.level;
PastLevels = _local2.pastLevels;
Scores = _local2.scores;
Campaign = _local2.campaign;
var _local3:int;
while (_local3 < PastLevels.length) {
_local4 = 0;
while (_local4 < Levels.length) {
if (Levels[_local4].Num == PastLevels[_local3]){
Levels.splice(_local4, 1);
};
_local4++;
};
_local3++;
};
gotoAndPlay("map");
}
public function ShowHideInt(_arg1:Boolean):void{
if (HeroIcons != null){
i = 0;
while (i < HeroIcons.length) {
removeChild(HeroIcons[i]);
i++;
};
};
if (OppIcons != null){
j = 0;
while (j < OppIcons.length) {
removeChild(OppIcons[j]);
j++;
};
};
HeroIcons = new Array();
OppIcons = new Array();
int_Lives.visible = _arg1;
int_ether.visible = _arg1;
etherLine.visible = _arg1;
e_int_Lives.visible = _arg1;
e_int_ether.visible = _arg1;
e_etherLine.visible = _arg1;
}
public function howtoClick(_arg1:MouseEvent):void{
closeClick(null);
InsMenu.visible = true;
}
public function menuClick(_arg1:MouseEvent):void{
gotoAndPlay("menu");
}
public function EndLevel(_arg1:int):void{
var _local2:*;
darkWin.visible = true;
darkWin.x = 0;
darkWin.y = 0;
setChildIndex(darkWin, (numChildren - 1));
endBatWin.visible = true;
endBatWin.x = winX;
endBatWin.y = winY;
setChildIndex(endBatWin, (numChildren - 1));
if (_arg1 == 1){
endBatWin.gotoAndStop(2);
bEndBattle.visible = true;
setChildIndex(bEndBattle, (numChildren - 1));
bEndBattle.addEventListener(MouseEvent.CLICK, goWithDeath);
endTitle.Text = "Retreat";
endTitle.visible = true;
setChildIndex(endTitle, (numChildren - 1));
} else {
endBatWin.gotoAndStop(1);
endTitle.visible = true;
_local2 = Levels.indexOf(SelectMapEnemy);
bEndBattle.visible = true;
setChildIndex(bEndBattle, (numChildren - 1));
bEndBattle.addEventListener(MouseEvent.CLICK, goWithVictory);
endTitle.Text = "Victory";
endTitle.visible = true;
setChildIndex(endTitle, (numChildren - 1));
if (Levels[_local2].bonusCard != null){
Levels[_local2].bonusCard.x = (winX + 175);
Levels[_local2].bonusCard.y = (winY + 50);
addChild(Levels[_local2].bonusCard);
Hero.DeckBack.push(Levels[_local2].bonusCard);
setChildIndex(Levels[_local2].bonusCard, (numChildren - 1));
newDeck = true;
} else {
liveCard.x = (winX + 175);
liveCard.y = (winY + 50);
addChild(liveCard);
Hero.MaxLives = (Hero.MaxLives + Levels[_local2].bonusLives);
};
resText.visible = true;
setChildIndex(resText, (numChildren - 1));
};
}
public function Update(_arg1:TimerEvent):void{
var _local2:Object;
var _local3:int;
var _local4:int;
var _local5:int;
if (BattleTimer.running){
BattleTimer.stop();
};
switch (State){
case HEROWAIT:
tState.text = "Select Card!";
if (Hero.Lives <= 0){
EndLevel(HERO);
return;
};
_local4 = 0;
while (_local4 <= 4) {
if (HeroCards[_local4].isSelect){
HeroCards[_local4].isSelect = false;
removeChild(HeroCards[_local4]);
SelectCard.visible = true;
NewCard(_local4);
};
if (OppCards[_local4].isSelect){
OppCards[_local4].isSelect = false;
removeChild(OppCards[_local4]);
NewOppCard(_local4);
};
HeroCards[_local4].addEventListener(MouseEvent.CLICK, CardClick);
_local4++;
};
if (Hero.Poison > 0){
if (Hero.PoisonWork){
_local2 = {anim:"poison", p_demage:Hero.Poison};
DoSpell(HERO, _local2);
} else {
Hero.PoisonWork = true;
};
};
if (Hero.Regeneration > 0){
_local2 = {anim:"heal", heal:Hero.Regeneration};
DoSpell(OPPONENT, _local2);
};
if (Hero.EtherReg > 0){
_local2 = {anim:"energy", energy:Hero.EtherReg};
DoSpell(OPPONENT, _local2);
};
SelectCard = null;
bBack2.SetTextColor(0xFF9900, 1, 0xFF3300, 1);
bBack2.addEventListener(MouseEvent.CLICK, backToMap);
bEHit.SetTextColor(0xFFFFFF, 1, 0, 1);
bEHit.addEventListener(MouseEvent.CLICK, etherHit);
break;
case HEROATTACK:
tState.text = "Attack State!";
if (Hero.Lives <= 0){
EndLevel(HERO);
return;
};
if (Hero.Paralysis){
Hero.Paralyze = false;
eff = new Effect(CARD, new eff_fire());
addChild(eff);
} else {
DoSpell(OPPONENT, SelectCard.Spells);
Hero.animAttack();
};
if (Opponent.Response){
State = OPPRESPONCE;
} else {
if ((((Opponent.Poison > 0)) || ((Opponent.Regeneration > 0)))){
State = OPPWAIT;
} else {
State = OPPATTACK;
};
};
BattleTimer.start();
bBack2.SetTextColor(0x999999, 1, 0xCCCCCC, 1);
bBack2.removeEventListener(MouseEvent.CLICK, backToMap);
bEHit.SetTextColor(0x999999, 1, 0xCCCCCC, 1);
bEHit.removeEventListener(MouseEvent.CLICK, etherHit);
if (bBackYes.visible){
backToMap(null);
};
break;
case HERORESPONCE:
tState.text = "Responce";
State = HEROWAIT;
BattleTimer.start();
break;
case BURNCARD:
tState.text = "BurnCard";
eff = new Effect(CARD, new eff_fire());
addChild(eff);
_local2 = {energy:5};
DoSpell(OPPONENT, _local2);
UpdateInt();
if ((((Opponent.Poison > 0)) || ((Opponent.Regeneration > 0)))){
State = OPPWAIT;
} else {
State = OPPATTACK;
};
BattleTimer.start();
break;
case ETHERHIT:
tState.text = "Ether Hit";
eff = new Effect(OPPONENT, new eff_hit());
addChild(eff);
lightning_sound.play();
_local2 = {damage:EHitPower};
DoSpell(OPPONENT, _local2);
UpdateInt();
EHitPower = 0;
bEHit.visible = false;
bSpell.visible = false;
bBurn.visible = false;
_local5 = 0;
while (_local5 <= 4) {
if (HeroCards[_local5].isSelect){
HeroCards[_local5].deSelect();
};
_local5++;
};
if ((((Opponent.Poison > 0)) || ((Opponent.Regeneration > 0)))){
State = OPPWAIT;
} else {
State = OPPATTACK;
};
BattleTimer.start();
break;
case OPPWAIT:
if (tState.text == "BurnCard"){
SelectCard.visible = false;
};
if (Opponent.Lives <= 0){
EndLevel(OPPONENT);
return;
};
tState.text = "Opponent wait";
State = OPPATTACK;
if (Opponent.Poison > 0){
if (Opponent.PoisonWork){
_local2 = {anim:"poison", p_demage:Opponent.Poison};
DoSpell(OPPONENT, _local2);
} else {
Opponent.PoisonWork = true;
};
};
if (Opponent.Regeneration > 0){
_local2 = {anim:"heal", heal:Opponent.Regeneration};
DoSpell(HERO, _local2);
};
if (Opponent.EtherReg > 0){
_local2 = {anim:"energy", energy:Opponent.EtherReg};
DoSpell(HERO, _local2);
};
BattleTimer.delay = 1300;
BattleTimer.start();
break;
case OPPATTACK:
if (tState.text == "BurnCard"){
SelectCard.visible = false;
};
tState.text = "Defence State!";
if (Opponent.Lives <= 0){
EndLevel(OPPONENT);
return;
};
_local3 = MakeDecision();
OppCards[_local3].isSelect = true;
OppCards[_local3].SetBack(false);
setChildIndex(OppCards[_local3], (numChildren - 1));
OppCards[_local3].Select(279, 160);
if (Opponent.Paralysis){
Opponent.Paralyze = false;
eff = new Effect(CARD, new eff_fire());
addChild(eff);
} else {
DoSpell(HERO, OppCards[_local3].Spells);
Opponent.animAttack();
};
if (Hero.Response){
State = HERORESPONCE;
} else {
State = HEROWAIT;
};
BattleTimer.delay = 2000;
BattleTimer.start();
break;
case OPPRESPONCE:
tState.text = "Enemy responce";
State = OPPWAIT;
BattleTimer.start();
break;
};
}
public function seeDeck(_arg1:MouseEvent):void{
click_sound.play();
ViewDeck = !(ViewDeck);
deckMenu.visible = ViewDeck;
newDeck = false;
DeckIcon.gotoAndStop(1);
}
public function etherHit(_arg1:MouseEvent):void{
State = ETHERHIT;
var _local2:int;
while (_local2 <= 4) {
HeroCards[_local2].removeEventListener(MouseEvent.CLICK, CardClick);
_local2++;
};
Update(null);
}
public function ShowSpellInfo(_arg1:Number, _arg2:Number):void{
if (_arg1 == 1){
if (_arg2 > 0){
int_SpellInfo.SetTextColor(4168435, 1);
int_SpellInfo.Text = ("+" + _arg2.toString());
} else {
int_SpellInfo.SetTextColor(0xD50000, 1);
int_SpellInfo.Text = _arg2.toString();
};
int_SpellInfo.DeadUp(50, 2);
} else {
if (_arg2 > 0){
e_int_SpellInfo.SetTextColor(4168435, 1);
e_int_SpellInfo.Text = ("+" + _arg2.toString());
} else {
e_int_SpellInfo.SetTextColor(0xD50000, 1);
e_int_SpellInfo.Text = _arg2.toString();
};
e_int_SpellInfo.DeadUp(50, 2);
};
}
public function mOff():void{
bMusic.Text = "Music: off";
PausePoint = theChannel.position;
theChannel.stop();
theChannel.removeEventListener(Event.SOUND_COMPLETE, musicAgain);
theChannel.addEventListener(Event.SOUND_COMPLETE, musicAgain);
}
public function isUrl(_arg1:Array):Boolean{
var _local2:String = stage.loaderInfo.loaderURL;
var _local3:Number = (_local2.indexOf("://") + 3);
var _local4:Number = _local2.indexOf("/", _local3);
var _local5:String = _local2.substring(_local3, _local4);
var _local6:Number = (_local5.lastIndexOf(".") - 1);
var _local7:Number = (_local5.lastIndexOf(".", _local6) + 1);
_local5 = _local5.substring(_local7, _local5.length);
var _local8:int;
while (_local8 < _arg1.length) {
if (_local5 == _arg1[_local8]){
return (true);
};
_local8++;
};
return (false);
}
public function spellThis(_arg1:MouseEvent):void{
var _local2:int;
if (SelectCard != null){
bSpell.visible = false;
bBurn.visible = false;
State = HEROATTACK;
_local2 = 0;
while (_local2 <= 4) {
HeroCards[_local2].removeEventListener(MouseEvent.CLICK, CardClick);
_local2++;
};
Update(null);
};
}
}
}//package magic_cards_pub_fla
Section 19
//newbrif_66 (magic_cards_pub_fla.newbrif_66)
package magic_cards_pub_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
public dynamic class newbrif_66 extends MovieClip {
public var bSkip:TextField;
public function newbrif_66(){
addFrameScript(0, frame1, 432, frame433);
}
function frame1(){
bSkip.addEventListener(MouseEvent.CLICK, skipClick);
}
function frame433(){
if ((parent is MovieClip)){
(parent as MovieClip).gotoAndPlay("map");
};
}
public function skipClick(_arg1:MouseEvent):void{
gotoAndPlay("end");
}
}
}//package magic_cards_pub_fla
Section 20
//Shild_36 (magic_cards_pub_fla.Shild_36)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class Shild_36 extends MovieClip {
public function Shild_36(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package magic_cards_pub_fla
Section 21
//Shild2_27 (magic_cards_pub_fla.Shild2_27)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class Shild2_27 extends MovieClip {
public function Shild2_27(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package magic_cards_pub_fla
Section 22
//SpinMe_83 (magic_cards_pub_fla.SpinMe_83)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class SpinMe_83 extends MovieClip {
public function SpinMe_83(){
addFrameScript(74, frame75);
}
function frame75(){
gotoAndPlay("repeat");
}
}
}//package magic_cards_pub_fla
Section 23
//telo_38 (magic_cards_pub_fla.telo_38)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class telo_38 extends MovieClip {
public function telo_38(){
addFrameScript(15, frame16, 25, frame26);
}
function frame26(){
gotoAndPlay(1);
}
function frame16(){
gotoAndPlay(1);
}
}
}//package magic_cards_pub_fla
Section 24
//telo2_30 (magic_cards_pub_fla.telo2_30)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class telo2_30 extends MovieClip {
public function telo2_30(){
addFrameScript(15, frame16, 25, frame26);
}
function frame26(){
gotoAndPlay(1);
}
function frame16(){
gotoAndPlay(1);
}
}
}//package magic_cards_pub_fla
Section 25
//Weapon1_41 (magic_cards_pub_fla.Weapon1_41)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class Weapon1_41 extends MovieClip {
public function Weapon1_41(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package magic_cards_pub_fla
Section 26
//Weapon2_33 (magic_cards_pub_fla.Weapon2_33)
package magic_cards_pub_fla {
import flash.display.*;
public dynamic class Weapon2_33 extends MovieClip {
public function Weapon2_33(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package magic_cards_pub_fla
Section 27
//MochiCoins (mochi.as3.MochiCoins)
package mochi.as3 {
public class MochiCoins {
public static const STORE_HIDE:String = "StoreHide";
public static const LOGGED_IN:String = "LoggedIn";
public static const STORE_ITEMS:String = "StoreItems";
public static const NO_USER:String = "NoUser";
public static const PROPERTIES_SIZE:String = "PropertiesSize";
public static const ITEM_NEW:String = "ItemNew";
public static const USER_INFO:String = "UserInfo";
public static const IO_ERROR:String = "IOError";
public static const ITEM_OWNED:String = "ItemOwned";
public static const PROPERTIES_SAVED:String = "PropertySaved";
public static const WIDGET_LOADED:String = "WidgetLoaded";
public static const ERROR:String = "Error";
public static const LOGGED_OUT:String = "LoggedOut";
public static const PROFILE_SHOW:String = "ProfileShow";
public static const LOGIN_HIDE:String = "LoginHide";
public static const LOGIN_SHOW:String = "LoginShow";
public static const STORE_SHOW:String = "StoreShow";
public static const PROFILE_HIDE:String = "ProfileHide";
private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher();
public static function showItem(_arg1:Object=null):void{
if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){
trace("ERROR: showItem call must pass an Object with an item key");
return;
};
MochiServices.bringToTop();
MochiServices.send("coins_showItem", {options:_arg1}, null, null);
}
public static function saveUserProperties(_arg1:Object):void{
MochiServices.send("coins_saveUserProperties", _arg1);
}
public static function triggerEvent(_arg1:String, _arg2:Object):void{
_dispatcher.triggerEvent(_arg1, _arg2);
}
public static function showLoginWidget(_arg1:Object=null):void{
MochiServices.setContainer();
MochiServices.bringToTop();
MochiServices.send("coins_showLoginWidget", {options:_arg1});
}
public static function getStoreItems():void{
MochiServices.send("coins_getStoreItems");
}
public static function getVersion():String{
return (MochiServices.getVersion());
}
public static function showStore(_arg1:Object=null):void{
MochiServices.bringToTop();
MochiServices.send("coins_showStore", {options:_arg1}, null, null);
}
public static function addEventListener(_arg1:String, _arg2:Function):void{
_dispatcher.addEventListener(_arg1, _arg2);
}
public static function getUserInfo():void{
MochiServices.send("coins_getUserInfo");
}
public static function hideLoginWidget():void{
MochiServices.send("coins_hideLoginWidget");
}
public static function removeEventListener(_arg1:String, _arg2:Function):void{
_dispatcher.removeEventListener(_arg1, _arg2);
}
public static function showVideo(_arg1:Object=null):void{
if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){
trace("ERROR: showVideo call must pass an Object with an item key");
return;
};
MochiServices.bringToTop();
MochiServices.send("coins_showVideo", {options:_arg1}, null, null);
}
}
}//package mochi.as3
Section 28
//MochiDigits (mochi.as3.MochiDigits)
package mochi.as3 {
public final class MochiDigits {
private var Sibling:MochiDigits;
private var Fragment:Number;
private var Encoder:Number;
public function MochiDigits(_arg1:Number=0, _arg2:uint=0):void{
Encoder = 0;
setValue(_arg1, _arg2);
}
public function reencode():void{
var _local1:uint = int((2147483647 * Math.random()));
Fragment = (Fragment ^ (_local1 ^ Encoder));
Encoder = _local1;
}
public function set value(_arg1:Number):void{
setValue(_arg1);
}
public function toString():String{
var _local1:String = String.fromCharCode((Fragment ^ Encoder));
if (Sibling != null){
_local1 = (_local1 + Sibling.toString());
};
return (_local1);
}
public function setValue(_arg1:Number=0, _arg2:uint=0):void{
var _local3:String = _arg1.toString();
var _temp1 = _arg2;
_arg2 = (_arg2 + 1);
Fragment = (_local3.charCodeAt(_temp1) ^ Encoder);
if (_arg2 < _local3.length){
Sibling = new MochiDigits(_arg1, _arg2);
} else {
Sibling = null;
};
reencode();
}
public function get value():Number{
return (Number(this.toString()));
}
public function addValue(_arg1:Number):void{
value = (value + _arg1);
}
}
}//package mochi.as3
Section 29
//MochiEventDispatcher (mochi.as3.MochiEventDispatcher)
package mochi.as3 {
public class MochiEventDispatcher {
private var eventTable:Object;
public function MochiEventDispatcher():void{
eventTable = {};
}
public function triggerEvent(_arg1:String, _arg2:Object):void{
var _local3:Object;
if (eventTable[_arg1] == undefined){
return;
};
for (_local3 in eventTable[_arg1]) {
var _local6 = eventTable[_arg1];
_local6[_local3](_arg2);
};
}
public function removeEventListener(_arg1:String, _arg2:Function):void{
var _local3:Object;
if (eventTable[_arg1] == undefined){
eventTable[_arg1] = [];
return;
};
for (_local3 in eventTable[_arg1]) {
if (eventTable[_arg1][_local3] != _arg2){
} else {
eventTable[_arg1].splice(Number(_local3), 1);
};
};
}
public function addEventListener(_arg1:String, _arg2:Function):void{
removeEventListener(_arg1, _arg2);
eventTable[_arg1].push(_arg2);
}
}
}//package mochi.as3
Section 30
//MochiEvents (mochi.as3.MochiEvents)
package mochi.as3 {
import flash.display.*;
public class MochiEvents {
public static const ALIGN_BOTTOM_LEFT:String = "ALIGN_BL";
public static const FORMAT_LONG:String = "LongForm";
public static const ALIGN_BOTTOM:String = "ALIGN_B";
public static const ACHIEVEMENT_RECEIVED:String = "AchievementReceived";
public static const FORMAT_SHORT:String = "ShortForm";
public static const ALIGN_TOP_RIGHT:String = "ALIGN_TR";
public static const ALIGN_BOTTOM_RIGHT:String = "ALIGN_BR";
public static const ALIGN_TOP:String = "ALIGN_T";
public static const ALIGN_LEFT:String = "ALIGN_L";
public static const ALIGN_RIGHT:String = "ALIGN_R";
public static const ALIGN_TOP_LEFT:String = "ALIGN_TL";
public static const ALIGN_CENTER:String = "ALIGN_C";
private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher();
private static var gameStart:Number;
private static var levelStart:Number;
public static function addEventListener(_arg1:String, _arg2:Function):void{
_dispatcher.addEventListener(_arg1, _arg2);
}
public static function removeEventListener(_arg1:String, _arg2:Function):void{
_dispatcher.removeEventListener(_arg1, _arg2);
}
public static function startSession(_arg1:String):void{
MochiServices.send("events_beginSession", {achievementID:_arg1}, null, null);
}
public static function triggerEvent(_arg1:String, _arg2:Object):void{
_dispatcher.triggerEvent(_arg1, _arg2);
}
public static function setNotifications(_arg1:MovieClip, _arg2:Object):void{
var _local4:Object;
var _local3:Object = {};
for (_local4 in _arg2) {
_local3[_local4] = _arg2[_local4];
};
_local3.clip = _arg1;
MochiServices.send("events_setNotifications", _local3, null, null);
}
public static function endGame():void{
var _local1:Number = (new Date().time - gameStart);
trigger("end_game", {time:_local1});
}
public static function startGame():void{
gameStart = new Date().time;
trigger("start_game");
}
public static function trigger(_arg1:String, _arg2:Object=null):void{
if (_arg2 == null){
_arg2 = {};
} else {
if (_arg2["kind"] != undefined){
trace("WARNING: optional arguements package contains key 'id', it will be overwritten");
_arg2["kind"] = _arg1;
};
};
MochiServices.send("events_triggerEvent", {eventObject:_arg2}, null, null);
}
public static function getVersion():String{
return (MochiServices.getVersion());
}
public static function startLevel():void{
levelStart = new Date().time;
trigger("start_level");
}
public static function endLevel():void{
var _local1:Number = (new Date().time - levelStart);
trigger("end_level", {time:_local1});
}
}
}//package mochi.as3
Section 31
//MochiScores (mochi.as3.MochiScores)
package mochi.as3 {
import flash.display.*;
import flash.text.*;
public class MochiScores {
private static var boardID:String;
public static var onErrorHandler:Object;
public static var onCloseHandler:Object;
public static function showLeaderboard(_arg1:Object=null):void{
var n:Number;
var options = _arg1;
if (options != null){
delete options.clip;
MochiServices.setContainer();
MochiServices.bringToTop();
if (options.name != null){
if ((options.name is TextField)){
if (options.name.text.length > 0){
options.name = options.name.text;
};
};
};
if (options.score != null){
if ((options.score is TextField)){
if (options.score.text.length > 0){
options.score = options.score.text;
};
} else {
if ((options.score is MochiDigits)){
options.score = options.score.value;
};
};
n = Number(options.score);
if (isNaN(n)){
trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is 'Not a Number'"));
} else {
if ((((n == Number.NEGATIVE_INFINITY)) || ((n == Number.POSITIVE_INFINITY)))){
trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is an infinite"));
} else {
if (Math.floor(n) != n){
trace((("WARNING: Submitted score '" + options.score) + "' will be truncated"));
};
options.score = n;
};
};
};
if (options.onDisplay != null){
options.onDisplay();
} else {
if (MochiServices.clip != null){
if ((MochiServices.clip is MovieClip)){
MochiServices.clip.stop();
} else {
trace("Warning: Container is not a MovieClip, cannot call default onDisplay.");
};
};
};
} else {
options = {};
if ((MochiServices.clip is MovieClip)){
MochiServices.clip.stop();
} else {
trace("Warning: Container is not a MovieClip, cannot call default onDisplay.");
};
};
if (options.onClose != null){
onCloseHandler = options.onClose;
} else {
onCloseHandler = function ():void{
if ((MochiServices.clip is MovieClip)){
MochiServices.clip.play();
} else {
trace("Warning: Container is not a MovieClip, cannot call default onClose.");
};
};
};
if (options.onError != null){
onErrorHandler = options.onError;
} else {
onErrorHandler = null;
};
if (options.boardID == null){
if (MochiScores.boardID != null){
options.boardID = MochiScores.boardID;
};
};
MochiServices.warnID(options.boardID, true);
trace("[MochiScores] NOTE: Security Sandbox Violation errors below are normal");
MochiServices.send("scores_showLeaderboard", {options:options}, null, onClose);
}
public static function closeLeaderboard():void{
MochiServices.send("scores_closeLeaderboard");
}
public static function getPlayerInfo(_arg1:Object, _arg2:Object=null):void{
MochiServices.send("scores_getPlayerInfo", null, _arg1, _arg2);
}
public static function requestList(_arg1:Object, _arg2:Object=null):void{
MochiServices.send("scores_requestList", null, _arg1, _arg2);
}
public static function scoresArrayToObjects(_arg1:Object):Object{
var _local3:Number;
var _local4:Number;
var _local5:Object;
var _local6:Object;
var _local7:String;
var _local8:String;
var _local2:Object = {};
for (_local7 in _arg1) {
if (typeof(_arg1[_local7]) == "object"){
if (((!((_arg1[_local7].cols == null))) && (!((_arg1[_local7].rows == null))))){
_local2[_local7] = [];
_local5 = _arg1[_local7];
_local4 = 0;
while (_local4 < _local5.rows.length) {
_local6 = {};
_local3 = 0;
while (_local3 < _local5.cols.length) {
_local6[_local5.cols[_local3]] = _local5.rows[_local4][_local3];
_local3++;
};
_local2[_local7].push(_local6);
_local4++;
};
} else {
_local2[_local7] = {};
for (_local8 in _arg1[_local7]) {
_local2[_local7][_local8] = _arg1[_local7][_local8];
};
};
} else {
_local2[_local7] = _arg1[_local7];
};
};
return (_local2);
}
public static function submit(_arg1:Number, _arg2:String, _arg3:Object=null, _arg4:Object=null):void{
_arg1 = Number(_arg1);
if (isNaN(_arg1)){
trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is 'Not a Number'"));
} else {
if ((((_arg1 == Number.NEGATIVE_INFINITY)) || ((_arg1 == Number.POSITIVE_INFINITY)))){
trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is an infinite"));
} else {
if (Math.floor(_arg1) != _arg1){
trace((("WARNING: Submitted score '" + String(_arg1)) + "' will be truncated"));
};
_arg1 = Number(_arg1);
};
};
MochiServices.send("scores_submit", {score:_arg1, name:_arg2}, _arg3, _arg4);
}
public static function onClose(_arg1:Object=null):void{
if (((((_arg1) && ((_arg1.error == true)))) && (onErrorHandler))){
if (_arg1.errorCode == null){
_arg1.errorCode = "IOError";
};
onErrorHandler(_arg1.errorCode);
MochiServices.doClose();
return;
};
onCloseHandler();
MochiServices.doClose();
}
public static function setBoardID(_arg1:String):void{
MochiServices.warnID(_arg1, true);
MochiScores.boardID = _arg1;
MochiServices.send("scores_setBoardID", {boardID:_arg1});
}
}
}//package mochi.as3
Section 32
//MochiServices (mochi.as3.MochiServices)
package mochi.as3 {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
public class MochiServices {
private static var _container:Object;
private static var _connected:Boolean = false;
private static var _swfVersion:String;
private static var _preserved:Object;
public static var netupAttempted:Boolean = false;
private static var _sendChannel:LocalConnection;
public static var servicesSync:MochiSync = new MochiSync();
private static var _clip:MovieClip;
private static var _id:String;
private static var _services:String = "services.swf";
private static var _servURL:String = "http://www.mochiads.com/static/lib/services/";
public static var widget:Boolean = false;
private static var _timer:Timer;
private static var _sendChannelName:String;
private static var _loader:Loader;
private static var _connecting:Boolean = false;
private static var _mochiLocalConnection:MovieClip;
private static var _listenChannelName:String = "__ms_";
public static var onError:Object;
public static var netup:Boolean = true;
private static var _mochiLC:String = "MochiLC.swf";
public static function isNetworkAvailable():Boolean{
return (!((Security.sandboxType == "localWithFile")));
}
public static function get connected():Boolean{
return (_connected);
}
private static function onReceive(_arg1:Object):void{
var methodName:String;
var pkg = _arg1;
var cb:String = pkg.callbackID;
var cblst:Object = _clip._callbacks[cb];
if (!cblst){
return;
};
var method:* = cblst.callbackMethod;
methodName = "";
var obj:Object = cblst.callbackObject;
if (((obj) && ((typeof(method) == "string")))){
methodName = method;
if (obj[method] != null){
method = obj[method];
} else {
trace((("Error: Method " + method) + " does not exist."));
};
};
if (method != undefined){
try {
method.apply(obj, pkg.args);
} catch(error:Error) {
trace(((("Error invoking callback method '" + methodName) + "': ") + error.toString()));
};
} else {
if (obj != null){
try {
obj(pkg.args);
} catch(error:Error) {
trace(("Error invoking method on object: " + error.toString()));
};
};
};
delete _clip._callbacks[cb];
}
public static function get childClip():Object{
return (_clip);
}
public static function send(_arg1:String, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{
if (_connected){
_mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID});
} else {
if ((((_clip == null)) || (!(_connecting)))){
trace(("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + _arg1));
handleError(_arg2, _arg3, _arg4);
flush(true);
return;
};
_clip._queue.push({methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID});
};
if (_clip != null){
if (((!((_clip._callbacks == null))) && (!((_clip._nextcallbackID == null))))){
_clip._callbacks[_clip._nextcallbackID] = {callbackObject:_arg3, callbackMethod:_arg4};
_clip._nextcallbackID++;
};
};
}
private static function init(_arg1:String, _arg2:Object):void{
_id = _arg1;
if (_arg2 != null){
_container = _arg2;
loadCommunicator(_arg1, _container);
};
}
private static function clickMovie(_arg1:String, _arg2:Function):MovieClip{
var _local4:int;
var _local14:Loader;
var _local3:Array = [150, 21, 0, 7, 1, 0, 0, 0, 0, 98, 116, 110, 0, 7, 2, 0, 0, 0, 0, 116, 104, 105, 115, 0, 28, 150, 22, 0, 0, 99, 114, 101, 97, 116, 101, 69, 109, 112, 116, 121, 77, 111, 118, 105, 101, 67, 108, 105, 112, 0, 82, 135, 1, 0, 0, 23, 150, 13, 0, 4, 0, 0, 111, 110, 82, 101, 108, 101, 97, 115, 101, 0, 142, 8, 0, 0, 0, 0, 2, 42, 0, 114, 0, 150, 17, 0, 0, 32, 0, 7, 1, 0, 0, 0, 8, 0, 0, 115, 112, 108, 105, 116, 0, 82, 135, 1, 0, 1, 23, 150, 7, 0, 4, 1, 7, 0, 0, 0, 0, 78, 150, 8, 0, 0, 95, 98, 108, 97, 110, 107, 0, 154, 1, 0, 0, 150, 7, 0, 0, 99, 108, 105, 99, 107, 0, 150, 7, 0, 4, 1, 7, 1, 0, 0, 0, 78, 150, 27, 0, 7, 2, 0, 0, 0, 7, 0, 0, 0, 0, 0, 76, 111, 99, 97, 108, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 0, 64, 150, 6, 0, 0, 115, 101, 110, 100, 0, 82, 79, 150, 15, 0, 4, 0, 0, 95, 97, 108, 112, 104, 97, 0, 7, 0, 0, 0, 0, 79, 150, 23, 0, 7, 0xFF, 0, 0xFF, 0, 7, 1, 0, 0, 0, 4, 0, 0, 98, 101, 103, 105, 110, 70, 105, 108, 108, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 109, 111, 118, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 16, 0, 7, 0, 0, 0, 0, 4, 0, 0, 101, 110, 100, 70, 105, 108, 108, 0, 82, 23];
var _local5:Array = [104, 0, 31, 64, 0, 7, 208, 0, 0, 12, 1, 0, 67, 2, 0xFF, 0xFF, 0xFF, 63, 3];
var _local6:Array = [0, 64, 0, 0, 0];
var _local7:MovieClip = new MovieClip();
var _local8:LocalConnection = new LocalConnection();
var _local9:String = ((("_click_" + Math.floor((Math.random() * 999999))) + "_") + Math.floor(new Date().time));
_local8 = new LocalConnection();
_local7.lc = _local8;
_local7.click = _arg2;
_local8.client = _local7;
_local8.connect(_local9);
var _local10:ByteArray = new ByteArray();
var _local11:ByteArray = new ByteArray();
_local11.endian = Endian.LITTLE_ENDIAN;
_local11.writeShort(1);
_local11.writeUTFBytes(((_arg1 + " ") + _local9));
_local11.writeByte(0);
var _local12:uint = ((_local3.length + _local11.length) + 4);
var _local13:uint = (_local12 + 35);
_local10.endian = Endian.LITTLE_ENDIAN;
_local10.writeUTFBytes("FWS");
_local10.writeByte(8);
_local10.writeUnsignedInt(_local13);
for each (_local4 in _local5) {
_local10.writeByte(_local4);
};
_local10.writeUnsignedInt(_local12);
_local10.writeByte(136);
_local10.writeShort(_local11.length);
_local10.writeBytes(_local11);
for each (_local4 in _local3) {
_local10.writeByte(_local4);
};
for each (_local4 in _local6) {
_local10.writeByte(_local4);
};
_local14 = new Loader();
_local14.loadBytes(_local10);
_local7.addChild(_local14);
return (_local7);
}
public static function stayOnTop():void{
_container.addEventListener(Event.ENTER_FRAME, MochiServices.bringToTop, false, 0, true);
if (_clip != null){
_clip.visible = true;
};
}
public static function addLinkEvent(_arg1:String, _arg2:String, _arg3:DisplayObjectContainer, _arg4:Function=null):void{
var avm1Click:DisplayObject;
var x:String;
var req:URLRequest;
var loader:Loader;
var setURL:Function;
var err:Function;
var complete:Function;
var url = _arg1;
var burl = _arg2;
var btn = _arg3;
var onClick = _arg4;
var vars:Object = new Object();
vars["mav"] = getVersion();
vars["swfv"] = "9";
vars["swfurl"] = btn.loaderInfo.loaderURL;
vars["fv"] = Capabilities.version;
vars["os"] = Capabilities.os;
vars["lang"] = Capabilities.language;
vars["scres"] = ((Capabilities.screenResolutionX + "x") + Capabilities.screenResolutionY);
var s = "?";
var i:Number = 0;
for (x in vars) {
if (i != 0){
s = (s + "&");
};
i = (i + 1);
s = (((s + x) + "=") + escape(vars[x]));
};
req = new URLRequest("http://x.mochiads.com/linkping.swf");
loader = new Loader();
setURL = function (_arg1:String):void{
if (avm1Click){
btn.removeChild(avm1Click);
};
avm1Click = clickMovie(_arg1, onClick);
var _local2:Rectangle = btn.getBounds(btn);
btn.addChild(avm1Click);
avm1Click.x = _local2.x;
avm1Click.y = _local2.y;
avm1Click.scaleX = (0.01 * _local2.width);
avm1Click.scaleY = (0.01 * _local2.height);
};
err = function (_arg1:Object):void{
netup = false;
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
setURL(burl);
};
complete = function (_arg1:Object):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
};
if (netup){
setURL((url + s));
} else {
setURL(burl);
};
if (!((netupAttempted) || (_connected))){
netupAttempted = true;
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, err);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete);
loader.load(req);
};
}
public static function warnID(_arg1:String, _arg2:Boolean):void{
_arg1 = _arg1.toLowerCase();
if (_arg1.length != 16){
trace((("WARNING: " + (_arg2) ? "board" : "game") + " ID is not the appropriate length"));
return;
} else {
if (_arg1 == "1e113c7239048b3f"){
if (_arg2){
trace("WARNING: Using testing board ID");
} else {
trace("WARNING: Using testing board ID as game ID");
};
return;
} else {
if (_arg1 == "84993a1de4031cd8"){
if (_arg2){
trace("WARNING: Using testing game ID as board ID");
} else {
trace("WARNING: Using testing game ID");
};
return;
};
};
};
var _local3:Number = 0;
while (_local3 < _arg1.length) {
switch (_arg1.charAt(_local3)){
case "0":
case "1":
case "2":
case "3":
case "4":
case "5":
case "6":
case "7":
case "8":
case "9":
case "a":
case "b":
case "c":
case "d":
case "e":
case "f":
break;
default:
trace(("WARNING: Board ID contains illegal characters: " + _arg1));
return;
};
_local3++;
};
}
public static function disconnect():void{
if (((_connected) || (_connecting))){
if (_clip != null){
if (_clip.parent != null){
if ((_clip.parent is Sprite)){
Sprite(_clip.parent).removeChild(_clip);
_clip = null;
};
};
};
_connecting = (_connected = false);
flush(true);
try {
_mochiLocalConnection.close();
} catch(error:Error) {
};
};
if (_timer != null){
try {
_timer.stop();
} catch(error:Error) {
};
};
}
public static function allowDomains(_arg1:String):String{
var _local2:String;
if (Security.sandboxType != "application"){
Security.allowDomain("*");
Security.allowInsecureDomain("*");
};
if (_arg1.indexOf("http://") != -1){
_local2 = _arg1.split("/")[2].split(":")[0];
if (Security.sandboxType != "application"){
Security.allowDomain(_local2);
Security.allowInsecureDomain(_local2);
};
};
return (_local2);
}
public static function getVersion():String{
return ("3.3 as3");
}
public static function doClose():void{
_container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop);
}
private static function flush(_arg1:Boolean):void{
var _local2:Object;
var _local3:Object;
if (((_clip) && (_clip._queue))){
while (_clip._queue.length > 0) {
_local2 = _clip._queue.shift();
_local3 = null;
if (_local2 != null){
if (_local2.callbackID != null){
_local3 = _clip._callbacks[_local2.callbackID];
};
delete _clip._callbacks[_local2.callbackID];
if (((_arg1) && (!((_local3 == null))))){
handleError(_local2.args, _local3.callbackObject, _local3.callbackMethod);
};
};
};
};
}
public static function get id():String{
return (_id);
}
private static function onEvent(_arg1:Object):void{
var _local2:String = _arg1.target;
var _local3:String = _arg1.event;
switch (_local2){
case "events":
MochiEvents.triggerEvent(_arg1.event, _arg1.args);
break;
case "coins":
MochiCoins.triggerEvent(_arg1.event, _arg1.args);
break;
case "sync":
servicesSync.triggerEvent(_arg1.event, _arg1.args);
break;
};
}
private static function urlOptions(_arg1:Object):Object{
var _local3:String;
var _local4:Array;
var _local5:Number;
var _local6:Array;
var _local2:Object = {};
if (_arg1.stage){
_local3 = _arg1.stage.loaderInfo.parameters.mochiad_options;
} else {
_local3 = _arg1.loaderInfo.parameters.mochiad_options;
};
if (_local3){
_local4 = _local3.split("&");
_local5 = 0;
while (_local5 < _local4.length) {
_local6 = _local4[_local5].split("=");
_local2[unescape(_local6[0])] = unescape(_local6[1]);
_local5++;
};
};
return (_local2);
}
public static function setContainer(_arg1:Object=null, _arg2:Boolean=true):void{
if (_arg1 != null){
if ((_arg1 is Sprite)){
_container = _arg1;
};
};
if (_arg2){
if ((_container is Sprite)){
Sprite(_container).addChild(_clip);
};
};
}
private static function handleError(_arg1:Object, _arg2:Object, _arg3:Object):void{
var args = _arg1;
var callbackObject = _arg2;
var callbackMethod = _arg3;
if (args != null){
if (args.onError != null){
args.onError.apply(null, ["NotConnected"]);
};
if (((!((args.options == null))) && (!((args.options.onError == null))))){
args.options.onError.apply(null, ["NotConnected"]);
};
};
if (callbackMethod != null){
args = {};
args.error = true;
args.errorCode = "NotConnected";
if (((!((callbackObject == null))) && ((callbackMethod is String)))){
try {
var _local5 = callbackObject;
_local5[callbackMethod](args);
} catch(error:Error) {
};
} else {
if (callbackMethod != null){
try {
callbackMethod.apply(args);
} catch(error:Error) {
};
};
};
};
}
private static function loadError(_arg1:Object):void{
_clip._mochiad_ctr_failed = true;
trace("MochiServices could not load.");
MochiServices.disconnect();
MochiServices.onError("IOError");
}
private static function initComChannels():void{
if (!_connected){
trace("[SERVICES_API] connected!");
_connecting = false;
_connected = true;
_mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"});
_mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"registerGame", preserved:_preserved, id:_id, clip:_container, version:getVersion(), parentURL:_container.loaderInfo.loaderURL});
_clip.onReceive = onReceive;
_clip.onEvent = onEvent;
_clip.onError = function ():void{
MochiServices.onError("IOError");
};
while (_clip._queue.length > 0) {
_mochiLocalConnection.send(_sendChannelName, "onReceive", _clip._queue.shift());
};
};
}
private static function loadLCBridge(_arg1:Object):void{
var loader:Loader;
var clip = _arg1;
loader = new Loader();
var mochiLCURL:String = (_servURL + _mochiLC);
var req:URLRequest = new URLRequest(mochiLCURL);
var complete:Function = function (_arg1:Object):void{
_mochiLocalConnection = MovieClip(loader.content);
listen();
};
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError);
loader.load(req);
clip.addChild(loader);
}
private static function listen():void{
_mochiLocalConnection.connect(_listenChannelName);
_clip.handshake = function (_arg1:Object):void{
MochiServices.comChannelName = _arg1.newChannel;
};
trace("Waiting for MochiAds services to connect...");
}
public static function get clip():Object{
return (_container);
}
public static function set comChannelName(_arg1:String):void{
if (_arg1 != null){
if (_arg1.length > 3){
_sendChannelName = (_arg1 + "_fromgame");
initComChannels();
};
};
}
private static function loadCommunicator(_arg1:String, _arg2:Object):MovieClip{
var _local3:String = ("_mochiservices_com_" + _arg1);
if (_clip != null){
return (_clip);
};
if (!MochiServices.isNetworkAvailable()){
return (null);
};
if (urlOptions(_arg2).servURL){
_servURL = urlOptions(_arg2).servURL;
};
var _local4:String = (_servURL + _services);
if (urlOptions(_arg2).servicesURL){
_local4 = urlOptions(_arg2).servicesURL;
};
_listenChannelName = (_listenChannelName + ((Math.floor(new Date().time) + "_") + Math.floor((Math.random() * 99999))));
MochiServices.allowDomains(_local4);
_clip = createEmptyMovieClip(_arg2, _local3, 10336, false);
loadLCBridge(_clip);
_loader = new Loader();
_loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError);
var _local5:URLRequest = new URLRequest(_local4);
var _local6:URLVariables = new URLVariables();
_local6.listenLC = _listenChannelName;
_local6.mochiad_options = _arg2.loaderInfo.parameters.mochiad_options;
_local6.api_version = getVersion();
if (widget){
_local6.widget = true;
};
_local5.data = _local6;
_loader.load(_local5);
_clip.addChild(_loader);
_clip._mochiservices_com = _loader;
_sendChannel = new LocalConnection();
_clip._queue = [];
_clip._nextcallbackID = 0;
_clip._callbacks = {};
_timer = new Timer(10000, 1);
_timer.addEventListener(TimerEvent.TIMER, connectWait);
_timer.start();
return (_clip);
}
public static function connect(_arg1:String, _arg2:Object, _arg3:Object=null):void{
var id = _arg1;
var clip = _arg2;
var onError = _arg3;
warnID(id, false);
if ((clip is DisplayObject)){
if (((!(_connected)) && ((_clip == null)))){
trace("MochiServices Connecting...");
_connecting = true;
init(id, clip);
};
} else {
trace("Error, MochiServices requires a Sprite, Movieclip or instance of the stage.");
};
if (onError != null){
MochiServices.onError = onError;
} else {
if (MochiServices.onError == null){
MochiServices.onError = function (_arg1:String):void{
trace(_arg1);
};
};
};
}
public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Boolean=true):MovieClip{
var parent = _arg1;
var name = _arg2;
var depth = _arg3;
var doAdd = _arg4;
var mc:MovieClip = new MovieClip();
if (doAdd){
if (((false) && (depth))){
parent.addChildAt(mc, depth);
} else {
parent.addChild(mc);
};
};
try {
parent[name] = mc;
} catch(e:Error) {
throw (new Error("MochiServices requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic."));
};
mc["_name"] = name;
return (mc);
}
public static function bringToTop(_arg1:Event=null):void{
var e = _arg1;
if (((!((MochiServices.clip == null))) && (!((MochiServices.childClip == null))))){
try {
if (MochiServices.clip.numChildren > 1){
MochiServices.clip.setChildIndex(MochiServices.childClip, (MochiServices.clip.numChildren - 1));
};
} catch(errorObject:Error) {
trace("Warning: Depth sort error.");
_container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop);
};
};
}
public static function connectWait(_arg1:TimerEvent):void{
if (!_connected){
_clip._mochiad_ctr_failed = true;
trace("MochiServices could not load. (timeout)");
MochiServices.disconnect();
MochiServices.onError("IOError");
};
}
}
}//package mochi.as3
Section 33
//MochiSync (mochi.as3.MochiSync)
package mochi.as3 {
import flash.utils.*;
public dynamic class MochiSync extends Proxy {
private var _syncContainer:Object;
public static var SYNC_PROPERTY:String = "UpdateProperty";
public static var SYNC_REQUEST:String = "SyncRequest";
public function MochiSync():void{
_syncContainer = {};
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{
if (_syncContainer[_arg1] == _arg2){
return;
};
var _local3:String = _arg1.toString();
_syncContainer[_local3] = _arg2;
MochiServices.send("sync_propUpdate", {name:_local3, value:_arg2});
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){
return (_syncContainer[_arg1]);
}
public function triggerEvent(_arg1:String, _arg2:Object):void{
switch (_arg1){
case SYNC_REQUEST:
MochiServices.send("sync_syncronize", _syncContainer);
break;
case SYNC_PROPERTY:
_syncContainer[_arg2.name] = _arg2.value;
break;
};
}
}
}//package mochi.as3
Section 34
//Card (src.Card)
package src {
import flash.display.*;
import flash.events.*;
import fl.transitions.easing.*;
import fl.transitions.*;
public class Card extends MovieClip {
private var img:Bitmap;
private var moveRotate:Tween;
public var DandD:Boolean;// = false
public var isSelect:Boolean;// = false
public var LastY:int;
private var back:Bitmap;
public var LastX;
public var Spells:Object;
public var isBack:Boolean;// = false
public var Name:String;
private var scaleTweenX:Tween;
private var scaleTweenY:Tween;
private var moveTweenX:Tween;
private var moveTweenY:Tween;
public function Card(_arg1:String){
Name = _arg1;
back = new Bitmap(new card_back(0, 0), PixelSnapping.AUTO, true);
switch (_arg1){
case "ether1":
img = new Bitmap(new ether1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"energy", energy:10};
break;
case "ether2":
img = new Bitmap(new ether2(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"energy", energy:15};
break;
case "ether3":
img = new Bitmap(new ether3(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"energy", energy:20};
break;
case "ether4":
img = new Bitmap(new ether4(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"energy2", energy:30};
break;
case "ether_vampire":
img = new Bitmap(new ether_vampire(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"vampire2", ether_vampire:20};
break;
case "fire1":
img = new Bitmap(new fire1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:1, type:"fire", anim:"fire", damage:7};
break;
case "fire2":
img = new Bitmap(new fire2(0, 0));
Spells = {price:2, type:"fire", anim:"fire", damage:9};
break;
case "fire3":
img = new Bitmap(new fire3(0, 0));
Spells = {price:3, type:"fire", anim:"fire", damage:13};
break;
case "ice1":
img = new Bitmap(new ice1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:1, type:"ice", anim:"ice", damage:8};
break;
case "ice2":
img = new Bitmap(new ice2(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, type:"ice", anim:"ice", damage:11};
break;
case "ice3":
img = new Bitmap(new ice3(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, type:"ice", anim:"ice", damage:12};
break;
case "lightning1":
img = new Bitmap(new lightning1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:1, type:"lightning", anim:"lightning", damage:8};
break;
case "lightning2":
img = new Bitmap(new lightning2(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, type:"lightning", anim:"lightning", damage:10};
break;
case "lightning3":
img = new Bitmap(new lightning3(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, type:"lightning", anim:"lightning", damage:12};
break;
case "heals1":
img = new Bitmap(new heals1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:1, anim:"heal", heal:5};
break;
case "heals2":
img = new Bitmap(new heals2(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"heal", heal:10};
break;
case "heals3":
img = new Bitmap(new heals3(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"heal", heal:15};
break;
case "shield1":
img = new Bitmap(new shield1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:1, anim:"h_other", armor:2};
break;
case "shield2":
img = new Bitmap(new shield2(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"h_other", armor:3};
break;
case "shield3":
img = new Bitmap(new shield3(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"h_other", armor:4};
break;
case "sword1":
img = new Bitmap(new sword1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:1, anim:"h_other", attack:1};
break;
case "sword2":
img = new Bitmap(new sword2(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"h_other", attack:2};
break;
case "sword3":
img = new Bitmap(new sword3(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"h_other", attack:3};
break;
case "poison1":
img = new Bitmap(new poison1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:1, anim:"poison", damage:4, poison:1};
break;
case "poison2":
img = new Bitmap(new poison2(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"poison", damage:6, poison:2};
break;
case "poison3":
img = new Bitmap(new poison3(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"poison", damage:8, poison:3};
break;
case "dispel":
img = new Bitmap(new dispel(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"dispel", dispel:true};
break;
case "regeneration1":
img = new Bitmap(new reg1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:1, anim:"heal", reg:2};
break;
case "regeneration2":
img = new Bitmap(new reg2(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"heal", reg:3};
break;
case "regeneration3":
img = new Bitmap(new reg3(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"heal", reg:4};
break;
case "vampire1":
img = new Bitmap(new vampire1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:1, anim:"vampire", vdamage:5, heal:5};
break;
case "vampire2":
img = new Bitmap(new vampire2(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"vampire", vdamage:7, heal:7};
break;
case "vampire3":
img = new Bitmap(new vampire3(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"vampire", vdamage:9, heal:9};
break;
case "curse1":
img = new Bitmap(new curse1(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"curse", curseattack:1, cursearmor:2};
break;
case "curse2":
img = new Bitmap(new curse2(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"curse", curseattack:2, cursearmor:3};
break;
case "antidot":
img = new Bitmap(new antidot(0, 0), PixelSnapping.AUTO, true);
Spells = {price:2, anim:"h_other", antidot:true};
break;
case "paralysis":
img = new Bitmap(new paralysis(0, 0), PixelSnapping.AUTO, true);
Spells = {price:4, paralysis:true};
break;
case "god_wrath":
img = new Bitmap(new god_wrath(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, type:"lightning", anim:"lightning", damage:20, paralysis:true};
break;
case "ether_fontain":
img = new Bitmap(new ether_fontain(0, 0), PixelSnapping.AUTO, true);
Spells = {price:3, anim:"energy", ether_reg:3};
break;
case "live_bonus":
img = new Bitmap(new live_bonus(0, 0), PixelSnapping.AUTO, true);
break;
};
this.addChild(img);
}
private function dropIt(_arg1:MouseEvent):void{
var _local2:*;
var _local3:*;
var _local4:int;
var _local5:int;
var _local6:Card;
var _local7:Card;
_arg1.target.stopDrag();
if (((!((_arg1.target.dropTarget == null))) && ((_arg1.target.dropTarget.parent is Card)))){
_local2 = (parent as DeckMenu).hero1.Deck;
_local3 = (parent as DeckMenu).hero1.DeckBack;
_local4 = _local2.indexOf(_arg1.target.dropTarget.parent);
_local5 = _local3.indexOf(this);
if (_local4 < 0){
_arg1.target.x = LastX;
_arg1.target.y = LastY;
return;
};
_local6 = (_local2[_local4] as Card);
_local7 = (_local3[_local5] as Card);
_local2.splice(_local4, 1, _local7);
_local3.splice(_local5, 1, _local6);
_local7.scaleX = 0.75;
_local7.scaleY = 0.75;
_local7.x = _local6.x;
_local7.y = _local6.y;
_local7.buttonMode = false;
_local6.scaleX = 0.45;
_local6.scaleY = 0.45;
_local6.x = _local7.LastX;
_local6.y = _local7.LastY;
_local6.SetDandD = true;
_arg1.target.removeEventListener(MouseEvent.MOUSE_DOWN, pickUp);
_arg1.target.removeEventListener(MouseEvent.MOUSE_UP, dropIt);
} else {
_arg1.target.x = LastX;
_arg1.target.y = LastY;
};
}
public function SetBack(_arg1:Boolean):void{
isBack = _arg1;
if (isBack){
this.addChild(back);
} else {
this.removeChild(back);
};
}
public function Appearance(_arg1:int, _arg2:int, _arg3:int, _arg4:int):void{
moveTweenX = new Tween(this, "x", None.easeIn, _arg1, _arg3, 0.8, true);
moveTweenX.start();
moveTweenY = new Tween(this, "y", None.easeIn, _arg2, _arg4, 0.8, true);
moveTweenY.start();
moveRotate = new Tween(this, "rotation", None.easeIn, 0, 360, 0.8, true);
moveRotate.start();
}
public function Select(_arg1:int, _arg2:int):void{
isSelect = true;
moveTweenX = new Tween(this, "x", None.easeIn, this.x, _arg1, 0.3, true);
moveTweenX.start();
moveTweenY = new Tween(this, "y", None.easeIn, this.y, _arg2, 0.3, true);
moveTweenY.start();
scaleTweenX = new Tween(this, "scaleX", None.easeIn, 0.8, 1, 0.3, true);
scaleTweenX.start();
scaleTweenY = new Tween(this, "scaleY", None.easeIn, 0.8, 1, 0.3, true);
scaleTweenY.start();
}
public function set SetDandD(_arg1:Boolean):void{
DandD = _arg1;
if (_arg1){
this.addEventListener(MouseEvent.MOUSE_DOWN, pickUp);
this.addEventListener(MouseEvent.MOUSE_UP, dropIt);
this.buttonMode = true;
} else {
this.removeEventListener(MouseEvent.MOUSE_DOWN, pickUp);
this.removeEventListener(MouseEvent.MOUSE_UP, dropIt);
this.buttonMode = false;
};
}
public function deSelect():void{
isSelect = false;
moveTweenX = new Tween(this, "x", None.easeIn, this.x, LastX, 0.3, true);
moveTweenX.start();
moveTweenY = new Tween(this, "y", None.easeIn, this.y, LastY, 0.3, true);
moveTweenY.start();
scaleTweenX = new Tween(this, "scaleX", None.easeIn, 1, 0.8, 0.3, true);
scaleTweenX.start();
scaleTweenY = new Tween(this, "scaleY", None.easeIn, 1, 0.8, 0.3, true);
scaleTweenY.start();
}
private function pickUp(_arg1:MouseEvent):void{
parent.setChildIndex(this, (parent.numChildren - 1));
_arg1.target.startDrag();
LastX = _arg1.target.x;
LastY = _arg1.target.y;
}
}
}//package src
Section 35
//DeckMenu (src.DeckMenu)
package src {
import flash.display.*;
public class DeckMenu extends MovieClip {
public var hero1:Player;
}
}//package src
Section 36
//Effect (src.Effect)
package src {
import flash.display.*;
import flash.events.*;
public class Effect extends MovieClip {
public var effect:MovieClip;
public function Effect(_arg1:Number, _arg2:MovieClip){
effect = _arg2;
switch (_arg1){
case 1:
this.x = 242;
this.y = 130;
effect.scaleX = -1;
break;
case 2:
this.x = 410;
this.y = 130;
break;
case 3:
this.x = 242;
this.y = 100;
break;
case 4:
this.x = 0;
this.y = 0;
break;
};
addChild(effect);
this.addEventListener(Event.ENTER_FRAME, Animate);
}
public function Animate(_arg1:Event):void{
if (effect.currentFrame == effect.totalFrames){
this.removeEventListener(Event.ENTER_FRAME, Animate);
this.parent.removeChild(this);
};
}
}
}//package src
Section 37
//Enemy (src.Enemy)
package src {
import flash.display.*;
public dynamic class Enemy extends Hero {
public var Head:MovieClip;
public var Hand1:MovieClip;
public var Hand2:MovieClip;
public var Deck:Array;
public var Telo:MovieClip;
public var eff_paralysis:MovieClip;
public var AggressiveTactics:Boolean;
public function Enemy(){
Deck = new Array();
super();
Lives = 30;
MaxLives = 30;
}
public function set Paralyze(_arg1:Boolean):void{
Paralysis = _arg1;
if (_arg1){
if (eff_paralysis == null){
eff_paralysis = new eff_par();
eff_paralysis.x = -100;
eff_paralysis.y = -90;
addChild(eff_paralysis);
this.Head.gotoAndStop(22);
this.Telo.gotoAndStop(22);
this.Hand1.gotoAndStop(22);
this.Hand2.gotoAndStop(22);
};
} else {
if (eff_paralysis != null){
removeChild(eff_paralysis);
eff_paralysis = null;
this.Head.gotoAndPlay(1);
this.Telo.gotoAndPlay(1);
this.Hand1.gotoAndPlay(1);
this.Hand2.gotoAndPlay(1);
};
};
}
public function animHit():void{
if (!Paralysis){
this.Head.gotoAndPlay(17);
this.Telo.gotoAndPlay(17);
this.Hand1.gotoAndPlay(17);
this.Hand2.gotoAndPlay(17);
};
}
public function animAttack():void{
this.Hand1.gotoAndPlay(27);
}
}
}//package src
Section 38
//Hero (src.Hero)
package src {
import flash.display.*;
public class Hero extends MovieClip {
public var ResponseAttack:int;
public var EtherReg:int;
public var PoisonWork:Boolean;// = false
public var CurseAttack:int;
public var EtherBonus:int;
public var Response:Boolean;
public var MaxLives:int;
public var Armor:int;
public var Lives:int;
public var Poison:int;
public var Regeneration:int;
public var Energy_level:int;
public var Energy:int;
public var Paralysis:Boolean;// = false
public var Attack:int;
public var CurseArmor:int;
}
}//package src
Section 39
//Icons (src.Icons)
package src {
import flash.display.*;
import flash.events.*;
import flash.text.*;
public class Icons extends MovieClip {
public var desc:MaxText;
public var img:Bitmap;
public var number:MaxText;
public function Icons(_arg1:BitmapData, _arg2:int, _arg3:int, _arg4:int, _arg5:String){
img = new Bitmap(_arg1);
addChild(img);
desc = new MaxText(_arg3, _arg4, _arg5);
desc.defTextFormat = new TextFormat("Georgia", 12, 0xCC9E00);
desc.SetBG(2960950, 0.6, 2960950, 0.6);
desc.visible = false;
addChild(desc);
this.addEventListener(MouseEvent.MOUSE_OVER, onOver);
this.addEventListener(MouseEvent.MOUSE_OUT, onOut);
}
public function onOver(_arg1:MouseEvent):void{
desc.visible = true;
}
public function onOut(_arg1:MouseEvent):void{
desc.visible = false;
}
}
}//package src
Section 40
//MapEnemy (src.MapEnemy)
package src {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.geom.*;
public class MapEnemy extends MovieClip {
public var img:Bitmap;
public var Deck:Array;
public var bonusCard:Card;
public var desc:MaxText;
public var OppColor:ColorTransform;
public var enemyLives:int;
public var Level:int;
public var Num:int;
public var BGin:int;// = 1
public var bonusLives:int;
public var Target:MovieClip;
public var AggressiveTactics:Boolean;
public var select:Boolean;
public function MapEnemy(_arg1:int, _arg2:int, _arg3:BitmapData, _arg4:int, _arg5:String){
Deck = new Array();
OppColor = new ColorTransform(1, 1, 1, 1);
super();
x = _arg1;
y = _arg2;
Level = _arg4;
Target = new MapPoint();
addChild(Target);
img = new Bitmap(_arg3, PixelSnapping.AUTO, true);
img.x = -40;
img.y = -34;
addChild(img);
desc = new MaxText(-10, -35, _arg5);
desc.defTextFormat = new TextFormat("Georgia", 12, 0, true);
desc.visible = false;
addChild(desc);
this.addEventListener(MouseEvent.MOUSE_OVER, onOver);
this.addEventListener(MouseEvent.MOUSE_OUT, onOut);
}
public function onOver(_arg1:MouseEvent):void{
if (!select){
Target.gotoAndStop(2);
desc.visible = true;
};
}
public function onOut(_arg1:MouseEvent):void{
if (!select){
Target.gotoAndStop(1);
desc.visible = false;
};
}
public function set Select(_arg1:Boolean):void{
select = _arg1;
if (select){
Target.gotoAndStop(3);
desc.visible = true;
} else {
Target.gotoAndStop(1);
desc.visible = false;
};
}
}
}//package src
Section 41
//MaxButton (src.MaxButton)
package src {
import flash.display.*;
import flash.events.*;
import flash.text.*;
public class MaxButton extends MovieClip {
private var textOverColor:MaxColor;
private var textDefColor:MaxColor;
private var isOverText:Boolean;
public var Text:TextField;
private var button:MovieClip;
public var defFormat:TextFormat;
public function MaxButton(_arg1:Number, _arg2:Number, _arg3:MovieClip, _arg4:String){
Text = new TextField();
defFormat = new TextFormat("Arial", 12, 0);
textDefColor = new MaxColor(0, 1);
textOverColor = new MaxColor(0, 1);
super();
x = _arg1;
y = _arg2;
button = _arg3;
addChild(button);
button.gotoAndStop(1);
Text.text = _arg4;
Text.setTextFormat(defFormat);
var _local5:Number = (Text.textWidth + 5);
var _local6:Number = (Text.textHeight + 2);
var _local7:Number = button.width;
var _local8:Number = button.height;
Text.x = ((_local7 / 2) - (_local5 / 2));
Text.y = (((_local8 / 2) - (_local6 / 2)) - 2);
Text.width = (Text.textWidth + 10);
Text.height = (Text.textHeight + 5);
Text.mouseEnabled = false;
addChild(Text);
isOverText = false;
this.addEventListener(MouseEvent.MOUSE_OVER, onOver);
this.addEventListener(MouseEvent.MOUSE_OUT, onOut);
}
public function onOver(_arg1:MouseEvent):void{
button.gotoAndStop(2);
if (isOverText){
Text.textColor = textOverColor.rgb;
Text.alpha = textOverColor.a;
};
}
public function CenterText():void{
var _local1:Number = (Text.textWidth + 5);
var _local2:Number = (Text.textHeight + 2);
var _local3:Number = button.width;
var _local4:Number = button.height;
Text.x = ((_local3 / 2) - (_local1 / 2));
Text.y = (((_local4 / 2) - (_local2 / 2)) - 2);
Text.width = (Text.textWidth + 10);
Text.height = (Text.textHeight + 5);
}
public function onOut(_arg1:MouseEvent):void{
button.gotoAndStop(1);
Text.textColor = textDefColor.rgb;
Text.alpha = textDefColor.a;
}
public function SetTextColor(_arg1:int, _arg2:Number, _arg3:int=0, _arg4:Number=0):void{
textDefColor = new MaxColor(_arg1, _arg2);
if (_arg3 != 0){
isOverText = true;
textOverColor = new MaxColor(_arg3, _arg4);
} else {
isOverText = false;
};
Text.textColor = textDefColor.rgb;
Text.alpha = textDefColor.a;
}
public function set defTextFormat(_arg1:TextFormat):void{
defFormat = _arg1;
Text.setTextFormat(defFormat);
Text.width = (Text.textWidth + 5);
Text.height = (Text.textHeight + 2);
}
}
}//package src
Section 42
//MaxColor (src.MaxColor)
package src {
public class MaxColor {
public var a:Number;
public var rgb:int;
public function MaxColor(_arg1:int, _arg2:Number){
this.rgb = _arg1;
this.a = _arg2;
}
}
}//package src
Section 43
//MaxText (src.MaxText)
package src {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import fl.transitions.easing.*;
import fl.transitions.*;
public class MaxText extends MovieClip {
private var textOverColor:MaxColor;
private var moveTweenX:Tween;
private var defBG:MaxColor;
private var flour:MovieClip;
private var overBG:MaxColor;
public var defFormat:TextFormat;
public var LastX;
public var LastY:Number;
public var maintext:TextField;
private var textDefColor:MaxColor;
private var alphaTween:Tween;
private var isBG;
private var isOverText:Boolean;
private var moveTweenY:Tween;
public function MaxText(_arg1:Number, _arg2:Number, _arg3:String){
flour = new MovieClip();
maintext = new TextField();
defFormat = new TextFormat("Arial", 12, 0);
defBG = new MaxColor(0, 0);
overBG = new MaxColor(0, 0);
textDefColor = new MaxColor(0, 1);
textOverColor = new MaxColor(0, 1);
super();
this.x = _arg1;
this.y = _arg2;
LastX = _arg1;
LastY = _arg2;
maintext.x = 0;
maintext.y = 0;
maintext.blendMode = BlendMode.LAYER;
maintext.antiAliasType = AntiAliasType.ADVANCED;
maintext.text = _arg3;
maintext.setTextFormat(defFormat);
isOverText = false;
isBG = false;
this.addEventListener(MouseEvent.MOUSE_OVER, onOver);
this.addEventListener(MouseEvent.MOUSE_OUT, onOut);
maintext.name = "maintext";
maintext.mouseEnabled = false;
maintext.width = (maintext.textWidth + 12);
maintext.height = (maintext.textHeight + 5);
this.addChild(flour);
this.addChild(maintext);
}
public function onOver(_arg1:MouseEvent):void{
if (isBG){
flour.graphics.clear();
flour.graphics.beginFill(overBG.rgb, overBG.a);
flour.graphics.drawRect(0, 0, (maintext.textWidth + 5), (maintext.textHeight + 2));
};
if (isOverText){
maintext.textColor = textOverColor.rgb;
maintext.alpha = textOverColor.a;
};
}
public function get Height(){
return (maintext.textHeight);
}
public function SetBG(_arg1:int, _arg2:Number, _arg3:int, _arg4:Number):void{
isBG = true;
defBG = new MaxColor(_arg1, _arg2);
flour.graphics.clear();
flour.graphics.beginFill(defBG.rgb, defBG.a);
flour.graphics.drawRect(0, 0, (maintext.textWidth + 5), (maintext.textHeight + 2));
overBG = new MaxColor(_arg3, _arg4);
}
public function set defTextFormat(_arg1:TextFormat):void{
defFormat = _arg1;
maintext.setTextFormat(defFormat);
maintext.width = (maintext.textWidth + 12);
maintext.height = (maintext.textHeight + 5);
textDefColor.rgb = (_arg1.color as int);
flour.graphics.clear();
flour.graphics.beginFill(defBG.rgb, defBG.a);
flour.graphics.drawRect(0, 0, (maintext.textWidth + 5), (maintext.textHeight + 2));
}
public function DeadUp(_arg1:Number, _arg2:Number):void{
visible = true;
alpha = 1;
x = LastX;
y = LastY;
moveTweenY = new Tween(this, "y", None.easeIn, this.y, (this.y - _arg1), _arg2, true);
moveTweenY.start();
alphaTween = new Tween(this, "alpha", None.easeIn, 1, 0, _arg2, true);
alphaTween.start();
}
public function SetTextColor(_arg1:int, _arg2:Number, _arg3:int=0, _arg4:Number=0):void{
textDefColor = new MaxColor(_arg1, _arg2);
if (_arg3 != 0){
isOverText = true;
textOverColor = new MaxColor(_arg3, _arg4);
} else {
isOverText = false;
};
maintext.textColor = textDefColor.rgb;
maintext.alpha = textDefColor.a;
}
public function set Text(_arg1:String):void{
maintext.text = _arg1;
maintext.setTextFormat(defFormat);
maintext.width = (maintext.textWidth + 12);
maintext.height = (maintext.textHeight + 5);
if (isOverText){
maintext.textColor = textOverColor.rgb;
maintext.alpha = textOverColor.a;
} else {
maintext.textColor = textDefColor.rgb;
maintext.alpha = textDefColor.a;
};
flour.graphics.clear();
flour.graphics.beginFill(overBG.rgb, overBG.a);
flour.graphics.drawRect(0, 0, (maintext.textWidth + 5), (maintext.textHeight + 2));
}
public function get Text(){
return (maintext.text);
}
public function get Width(){
return (maintext.textWidth);
}
public function onOut(_arg1:MouseEvent):void{
if (isBG){
flour.graphics.clear();
flour.graphics.beginFill(defBG.rgb, defBG.a);
flour.graphics.drawRect(0, 0, (maintext.textWidth + 5), (maintext.textHeight + 2));
};
maintext.textColor = textDefColor.rgb;
maintext.alpha = textDefColor.a;
}
}
}//package src
Section 44
//Player (src.Player)
package src {
import flash.display.*;
import flash.events.*;
public class Player extends Hero {
public var Head:MovieClip;
public var Hand1:MovieClip;
public var Hand2:MovieClip;
public var Deck:Array;
public var DeckBack:Array;
public var Telo:MovieClip;
public var eff_paralysis:MovieClip;
public function Player(){
Deck = new Array();
DeckBack = new Array();
super();
Lives = 20;
MaxLives = 20;
Deck[0] = new Card("heals2");
Deck[1] = new Card("heals2");
Deck[2] = new Card("heals2");
Deck[3] = new Card("heals2");
Deck[4] = new Card("heals2");
Deck[5] = new Card("fire1");
Deck[6] = new Card("fire2");
Deck[7] = new Card("ice1");
Deck[8] = new Card("lightning1");
Deck[9] = new Card("lightning2");
Deck[10] = new Card("heals1");
Deck[11] = new Card("heals2");
Deck[12] = new Card("ether1");
Deck[13] = new Card("ether2");
Deck[14] = new Card("shield1");
Deck[15] = new Card("sword1");
Deck[16] = new Card("vampire1");
Deck[17] = new Card("poison1");
Deck[18] = new Card("regeneration1");
Deck[19] = new Card("antidot");
Deck[20] = new Card("dispel");
DeckBack[0] = new Card("dispel");
DeckBack[1] = new Card("sword2");
DeckBack[2] = new Card("shield2");
DeckBack[3] = new Card("ether2");
DeckBack[4] = new Card("vampire1");
DeckBack[5] = new Card("regeneration2");
}
public function SetNewDeck(_arg1:Array, _arg2:Array):void{
Deck = new Array();
var _local3:int;
while (_local3 < _arg1.length) {
Deck[_local3] = new Card(_arg1[_local3]);
_local3++;
};
DeckBack = new Array();
var _local4:int;
while (_local4 < _arg2.length) {
DeckBack[_local4] = new Card(_arg2[_local4]);
_local4++;
};
}
public function animHit():void{
if (!Paralysis){
this.Head.gotoAndPlay(17);
this.Telo.gotoAndPlay(17);
this.Hand1.gotoAndPlay(17);
this.Hand2.gotoAndPlay(17);
};
}
public function set Paralyze(_arg1:Boolean):void{
Paralysis = _arg1;
if (_arg1){
if (eff_paralysis == null){
eff_paralysis = new eff_par();
eff_paralysis.x = -100;
eff_paralysis.y = -90;
addChild(eff_paralysis);
this.Head.gotoAndStop(22);
this.Telo.gotoAndStop(22);
this.Hand1.gotoAndStop(22);
this.Hand2.gotoAndStop(22);
};
} else {
if (eff_paralysis != null){
removeChild(eff_paralysis);
eff_paralysis = null;
this.Head.gotoAndPlay(1);
this.Telo.gotoAndPlay(1);
this.Hand1.gotoAndPlay(1);
this.Hand2.gotoAndPlay(1);
};
};
}
public function animAttack():void{
this.Hand1.gotoAndPlay(27);
}
}
}//package src
Section 45
//preloader (src.preloader)
package src {
import flash.display.*;
import flash.events.*;
public dynamic class preloader extends MovieClip {
public var percent:Number;// = 0
public function preloader(){
addEventListener(Event.ENTER_FRAME, Update);
}
public function Update(_arg1:Event):void{
var _local2:Number = loaderInfo.bytesLoaded;
var _local3:Number = loaderInfo.bytesTotal;
if (_local3 > 0){
percent = Math.floor(((_local2 / _local3) * 100));
};
this.gotoAndStop((percent + 1));
if ((((_local2 == _local3)) || ((_local3 == 0)))){
removeEventListener(Event.ENTER_FRAME, Update);
if ((parent is MovieClip)){
(parent as MovieClip).gotoAndPlay("spl");
};
};
}
}
}//package src
Section 46
//antidot (antidot)
package {
import flash.display.*;
public dynamic class antidot extends BitmapData {
public function antidot(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 47
//BadgeGamesPopup (BadgeGamesPopup)
package {
import flash.display.*;
public dynamic class BadgeGamesPopup extends MovieClip {
public var help:MovieClip;
public var inside:MovieClip;
public function BadgeGamesPopup(){
addFrameScript(0, frame1);
}
function frame1(){
this.x = -150;
this.visible = false;
stop();
}
}
}//package
Section 48
//blackFlash (blackFlash)
package {
import flash.display.*;
public dynamic class blackFlash extends MovieClip {
}
}//package
Section 49
//bSpec1 (bSpec1)
package {
import flash.display.*;
public dynamic class bSpec1 extends MovieClip {
}
}//package
Section 50
//bSpec2 (bSpec2)
package {
import flash.display.*;
public dynamic class bSpec2 extends MovieClip {
}
}//package
Section 51
//bSpec3 (bSpec3)
package {
import flash.display.*;
public dynamic class bSpec3 extends MovieClip {
}
}//package
Section 52
//BurnButton (BurnButton)
package {
import flash.display.*;
public dynamic class BurnButton extends MovieClip {
}
}//package
Section 53
//card_back (card_back)
package {
import flash.display.*;
public dynamic class card_back extends BitmapData {
public function card_back(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 54
//ch1 (ch1)
package {
import flash.display.*;
public dynamic class ch1 extends MovieClip {
}
}//package
Section 55
//ch2 (ch2)
package {
import flash.display.*;
public dynamic class ch2 extends MovieClip {
}
}//package
Section 56
//ch3 (ch3)
package {
import flash.display.*;
public dynamic class ch3 extends MovieClip {
}
}//package
Section 57
//CredMC (CredMC)
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.profiler.*;
import flash.sampler.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class CredMC extends MovieClip {
public var Blogo:MovieClip;
public var InsBack:MovieClip;
public var btnDG:SimpleButton;
public function CredMC(){
addFrameScript(0, frame1);
}
function frame1(){
InsBack.addEventListener(MouseEvent.MOUSE_OVER, onOver);
InsBack.addEventListener(MouseEvent.MOUSE_OUT, onOut);
InsBack.buttonMode = true;
btnDG.addEventListener(MouseEvent.CLICK, dgClick);
Blogo.addEventListener(MouseEvent.CLICK, bClick);
Blogo.buttonMode = true;
}
public function dgClick(_arg1:MouseEvent):void{
var _local2:URLRequest = new URLRequest("http://www.dg-company.com");
navigateToURL(_local2, "_blank");
}
public function bClick(_arg1:MouseEvent):void{
var _local2:URLRequest = new URLRequest("http://www.badgegames.com");
navigateToURL(_local2, "_blank");
}
public function onOut(_arg1:MouseEvent):void{
InsBack.bInsBack.textColor = 0xFF9900;
}
public function onOver(_arg1:MouseEvent):void{
InsBack.bInsBack.textColor = 0xFFFF00;
}
}
}//package
Section 58
//curse1 (curse1)
package {
import flash.display.*;
public dynamic class curse1 extends BitmapData {
public function curse1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 59
//curse2 (curse2)
package {
import flash.display.*;
public dynamic class curse2 extends BitmapData {
public function curse2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 60
//dispel (dispel)
package {
import flash.display.*;
public dynamic class dispel extends BitmapData {
public function dispel(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 61
//eff_curse (eff_curse)
package {
import flash.display.*;
public dynamic class eff_curse extends MovieClip {
}
}//package
Section 62
//eff_ether (eff_ether)
package {
import flash.display.*;
public dynamic class eff_ether extends MovieClip {
}
}//package
Section 63
//eff_fire (eff_fire)
package {
import flash.display.*;
public dynamic class eff_fire extends MovieClip {
}
}//package
Section 64
//eff_heal (eff_heal)
package {
import flash.display.*;
public dynamic class eff_heal extends MovieClip {
}
}//package
Section 65
//eff_hit (eff_hit)
package {
import flash.display.*;
public dynamic class eff_hit extends MovieClip {
}
}//package
Section 66
//eff_ice (eff_ice)
package {
import flash.display.*;
public dynamic class eff_ice extends MovieClip {
}
}//package
Section 67
//eff_lightning (eff_lightning)
package {
import flash.display.*;
public dynamic class eff_lightning extends MovieClip {
}
}//package
Section 68
//eff_other (eff_other)
package {
import flash.display.*;
public dynamic class eff_other extends MovieClip {
}
}//package
Section 69
//eff_par (eff_par)
package {
import flash.display.*;
public dynamic class eff_par extends MovieClip {
public function eff_par(){
addFrameScript(18, frame19);
}
function frame19(){
stop();
}
}
}//package
Section 70
//eff_poison (eff_poison)
package {
import flash.display.*;
public dynamic class eff_poison extends MovieClip {
}
}//package
Section 71
//eff_vampire1 (eff_vampire1)
package {
import flash.display.*;
public dynamic class eff_vampire1 extends MovieClip {
}
}//package
Section 72
//eff_vampire2 (eff_vampire2)
package {
import flash.display.*;
public dynamic class eff_vampire2 extends MovieClip {
}
}//package
Section 73
//endWin (endWin)
package {
import flash.display.*;
public dynamic class endWin extends MovieClip {
public function endWin(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 74
//ether_fontain (ether_fontain)
package {
import flash.display.*;
public dynamic class ether_fontain extends BitmapData {
public function ether_fontain(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 75
//ether_vampire (ether_vampire)
package {
import flash.display.*;
public dynamic class ether_vampire extends BitmapData {
public function ether_vampire(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 76
//ether1 (ether1)
package {
import flash.display.*;
public dynamic class ether1 extends BitmapData {
public function ether1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 77
//ether2 (ether2)
package {
import flash.display.*;
public dynamic class ether2 extends BitmapData {
public function ether2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 78
//ether3 (ether3)
package {
import flash.display.*;
public dynamic class ether3 extends BitmapData {
public function ether3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 79
//ether4 (ether4)
package {
import flash.display.*;
public dynamic class ether4 extends BitmapData {
public function ether4(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 80
//fire1 (fire1)
package {
import flash.display.*;
public dynamic class fire1 extends BitmapData {
public function fire1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 81
//fire2 (fire2)
package {
import flash.display.*;
public dynamic class fire2 extends BitmapData {
public function fire2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 82
//fire3 (fire3)
package {
import flash.display.*;
public dynamic class fire3 extends BitmapData {
public function fire3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 83
//god_wrath (god_wrath)
package {
import flash.display.*;
public dynamic class god_wrath extends BitmapData {
public function god_wrath(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 84
//heals1 (heals1)
package {
import flash.display.*;
public dynamic class heals1 extends BitmapData {
public function heals1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 85
//heals2 (heals2)
package {
import flash.display.*;
public dynamic class heals2 extends BitmapData {
public function heals2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 86
//heals3 (heals3)
package {
import flash.display.*;
public dynamic class heals3 extends BitmapData {
public function heals3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 87
//HitButton (HitButton)
package {
import flash.display.*;
public dynamic class HitButton extends MovieClip {
}
}//package
Section 88
//i1 (i1)
package {
import flash.display.*;
public dynamic class i1 extends BitmapData {
public function i1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 89
//i2 (i2)
package {
import flash.display.*;
public dynamic class i2 extends BitmapData {
public function i2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 90
//i3 (i3)
package {
import flash.display.*;
public dynamic class i3 extends BitmapData {
public function i3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 91
//i4 (i4)
package {
import flash.display.*;
public dynamic class i4 extends BitmapData {
public function i4(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 92
//i5 (i5)
package {
import flash.display.*;
public dynamic class i5 extends BitmapData {
public function i5(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 93
//i6 (i6)
package {
import flash.display.*;
public dynamic class i6 extends BitmapData {
public function i6(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 94
//i7 (i7)
package {
import flash.display.*;
public dynamic class i7 extends BitmapData {
public function i7(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 95
//i8 (i8)
package {
import flash.display.*;
public dynamic class i8 extends BitmapData {
public function i8(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 96
//i9 (i9)
package {
import flash.display.*;
public dynamic class i9 extends BitmapData {
public function i9(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 97
//ice1 (ice1)
package {
import flash.display.*;
public dynamic class ice1 extends BitmapData {
public function ice1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 98
//ice2 (ice2)
package {
import flash.display.*;
public dynamic class ice2 extends BitmapData {
public function ice2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 99
//ice3 (ice3)
package {
import flash.display.*;
public dynamic class ice3 extends BitmapData {
public function ice3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 100
//InstMC (InstMC)
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.geom.*;
import flash.net.*;
import flash.system.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.profiler.*;
import flash.sampler.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class InstMC extends MovieClip {
public var insNext:SimpleButton;
public var insPrev:SimpleButton;
public var InsBack:MovieClip;
public function InstMC(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
InsBack.addEventListener(MouseEvent.MOUSE_OVER, onOver);
InsBack.addEventListener(MouseEvent.MOUSE_OUT, onOut);
InsBack.buttonMode = true;
stop();
insNext.addEventListener(MouseEvent.CLICK, nextClick);
}
function frame2(){
stop();
insPrev.addEventListener(MouseEvent.CLICK, prevClick);
}
public function nextClick(_arg1:MouseEvent):void{
play();
}
public function onOut(_arg1:MouseEvent):void{
InsBack.bInsBack.textColor = 0xFF9900;
}
public function onOver(_arg1:MouseEvent):void{
InsBack.bInsBack.textColor = 0xFFFF00;
}
public function prevClick(_arg1:MouseEvent):void{
gotoAndPlay(1);
}
}
}//package
Section 101
//lightning1 (lightning1)
package {
import flash.display.*;
public dynamic class lightning1 extends BitmapData {
public function lightning1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 102
//lightning2 (lightning2)
package {
import flash.display.*;
public dynamic class lightning2 extends BitmapData {
public function lightning2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 103
//lightning3 (lightning3)
package {
import flash.display.*;
public dynamic class lightning3 extends BitmapData {
public function lightning3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 104
//live_bonus (live_bonus)
package {
import flash.display.*;
public dynamic class live_bonus extends BitmapData {
public function live_bonus(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 105
//map_enemy (map_enemy)
package {
import flash.display.*;
public dynamic class map_enemy extends BitmapData {
public function map_enemy(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 106
//MapPoint (MapPoint)
package {
import flash.display.*;
public dynamic class MapPoint extends MovieClip {
public function MapPoint(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 107
//MenuTitle (MenuTitle)
package {
import flash.display.*;
public dynamic class MenuTitle extends MovieClip {
}
}//package
Section 108
//MochiBot (MochiBot)
package {
import flash.display.*;
import flash.net.*;
import flash.system.*;
public dynamic class MochiBot extends Sprite {
public static function track(_arg1:Sprite, _arg2:String):MochiBot{
if (Security.sandboxType == "localWithFile"){
return (null);
};
var _local3:MochiBot = new (MochiBot);
_arg1.addChild(_local3);
Security.allowDomain("*");
Security.allowInsecureDomain("*");
var _local4 = "http://core.mochibot.com/my/core.swf";
var _local5:URLVariables = new URLVariables();
_local5["sb"] = Security.sandboxType;
_local5["v"] = Capabilities.version;
_local5["swfid"] = _arg2;
_local5["mv"] = "8";
_local5["fv"] = "9";
var _local6:String = _local3.root.loaderInfo.loaderURL;
if (_local6.indexOf("http") == 0){
_local5["url"] = _local6;
} else {
_local5["url"] = "local";
};
var _local7:URLRequest = new URLRequest(_local4);
_local7.contentType = "application/x-www-form-urlencoded";
_local7.method = URLRequestMethod.POST;
_local7.data = _local5;
var _local8:Loader = new Loader();
_local3.addChild(_local8);
_local8.load(_local7);
return (_local3);
}
}
}//package
Section 109
//music_menu (music_menu)
package {
import flash.media.*;
public dynamic class music_menu extends Sound {
}
}//package
Section 110
//paralysis (paralysis)
package {
import flash.display.*;
public dynamic class paralysis extends BitmapData {
public function paralysis(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 111
//poison1 (poison1)
package {
import flash.display.*;
public dynamic class poison1 extends BitmapData {
public function poison1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 112
//poison2 (poison2)
package {
import flash.display.*;
public dynamic class poison2 extends BitmapData {
public function poison2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 113
//poison3 (poison3)
package {
import flash.display.*;
public dynamic class poison3 extends BitmapData {
public function poison3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 114
//reg1 (reg1)
package {
import flash.display.*;
public dynamic class reg1 extends BitmapData {
public function reg1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 115
//reg2 (reg2)
package {
import flash.display.*;
public dynamic class reg2 extends BitmapData {
public function reg2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 116
//reg3 (reg3)
package {
import flash.display.*;
public dynamic class reg3 extends BitmapData {
public function reg3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 117
//shield1 (shield1)
package {
import flash.display.*;
public dynamic class shield1 extends BitmapData {
public function shield1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 118
//shield2 (shield2)
package {
import flash.display.*;
public dynamic class shield2 extends BitmapData {
public function shield2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 119
//shield3 (shield3)
package {
import flash.display.*;
public dynamic class shield3 extends BitmapData {
public function shield3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 120
//snd_battle (snd_battle)
package {
import flash.media.*;
public dynamic class snd_battle extends Sound {
}
}//package
Section 121
//snd_cardpick (snd_cardpick)
package {
import flash.media.*;
public dynamic class snd_cardpick extends Sound {
}
}//package
Section 122
//snd_cardup (snd_cardup)
package {
import flash.media.*;
public dynamic class snd_cardup extends Sound {
}
}//package
Section 123
//snd_ch1 (snd_ch1)
package {
import flash.media.*;
public dynamic class snd_ch1 extends Sound {
}
}//package
Section 124
//snd_ch2 (snd_ch2)
package {
import flash.media.*;
public dynamic class snd_ch2 extends Sound {
}
}//package
Section 125
//snd_ch3 (snd_ch3)
package {
import flash.media.*;
public dynamic class snd_ch3 extends Sound {
}
}//package
Section 126
//snd_click (snd_click)
package {
import flash.media.*;
public dynamic class snd_click extends Sound {
}
}//package
Section 127
//snd_curse (snd_curse)
package {
import flash.media.*;
public dynamic class snd_curse extends Sound {
}
}//package
Section 128
//snd_energy (snd_energy)
package {
import flash.media.*;
public dynamic class snd_energy extends Sound {
}
}//package
Section 129
//snd_ether_up (snd_ether_up)
package {
import flash.media.*;
public dynamic class snd_ether_up extends Sound {
}
}//package
Section 130
//snd_etherloop (snd_etherloop)
package {
import flash.media.*;
public dynamic class snd_etherloop extends Sound {
}
}//package
Section 131
//snd_fire (snd_fire)
package {
import flash.media.*;
public dynamic class snd_fire extends Sound {
}
}//package
Section 132
//snd_heal (snd_heal)
package {
import flash.media.*;
public dynamic class snd_heal extends Sound {
}
}//package
Section 133
//snd_ice (snd_ice)
package {
import flash.media.*;
public dynamic class snd_ice extends Sound {
}
}//package
Section 134
//snd_light (snd_light)
package {
import flash.media.*;
public dynamic class snd_light extends Sound {
}
}//package
Section 135
//snd_newcard (snd_newcard)
package {
import flash.media.*;
public dynamic class snd_newcard extends Sound {
}
}//package
Section 136
//snd_other (snd_other)
package {
import flash.media.*;
public dynamic class snd_other extends Sound {
}
}//package
Section 137
//snd_other2 (snd_other2)
package {
import flash.media.*;
public dynamic class snd_other2 extends Sound {
}
}//package
Section 138
//snd_pain_opp_vamp (snd_pain_opp_vamp)
package {
import flash.media.*;
public dynamic class snd_pain_opp_vamp extends Sound {
}
}//package
Section 139
//snd_pain_opp1 (snd_pain_opp1)
package {
import flash.media.*;
public dynamic class snd_pain_opp1 extends Sound {
}
}//package
Section 140
//snd_pain_opp2 (snd_pain_opp2)
package {
import flash.media.*;
public dynamic class snd_pain_opp2 extends Sound {
}
}//package
Section 141
//snd_pain1 (snd_pain1)
package {
import flash.media.*;
public dynamic class snd_pain1 extends Sound {
}
}//package
Section 142
//snd_pain2 (snd_pain2)
package {
import flash.media.*;
public dynamic class snd_pain2 extends Sound {
}
}//package
Section 143
//snd_painbig (snd_painbig)
package {
import flash.media.*;
public dynamic class snd_painbig extends Sound {
}
}//package
Section 144
//snd_painvamp (snd_painvamp)
package {
import flash.media.*;
public dynamic class snd_painvamp extends Sound {
}
}//package
Section 145
//snd_par (snd_par)
package {
import flash.media.*;
public dynamic class snd_par extends Sound {
}
}//package
Section 146
//snd_poison (snd_poison)
package {
import flash.media.*;
public dynamic class snd_poison extends Sound {
}
}//package
Section 147
//snd_reg (snd_reg)
package {
import flash.media.*;
public dynamic class snd_reg extends Sound {
}
}//package
Section 148
//snd_vampire1 (snd_vampire1)
package {
import flash.media.*;
public dynamic class snd_vampire1 extends Sound {
}
}//package
Section 149
//snd_vampire2 (snd_vampire2)
package {
import flash.media.*;
public dynamic class snd_vampire2 extends Sound {
}
}//package
Section 150
//SpellButton (SpellButton)
package {
import flash.display.*;
public dynamic class SpellButton extends MovieClip {
}
}//package
Section 151
//StdButton (StdButton)
package {
import flash.display.*;
public dynamic class StdButton extends MovieClip {
}
}//package
Section 152
//sword1 (sword1)
package {
import flash.display.*;
public dynamic class sword1 extends BitmapData {
public function sword1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 153
//sword2 (sword2)
package {
import flash.display.*;
public dynamic class sword2 extends BitmapData {
public function sword2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 154
//sword3 (sword3)
package {
import flash.display.*;
public dynamic class sword3 extends BitmapData {
public function sword3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 155
//vampire1 (vampire1)
package {
import flash.display.*;
public dynamic class vampire1 extends BitmapData {
public function vampire1(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 156
//vampire2 (vampire2)
package {
import flash.display.*;
public dynamic class vampire2 extends BitmapData {
public function vampire2(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 157
//vampire3 (vampire3)
package {
import flash.display.*;
public dynamic class vampire3 extends BitmapData {
public function vampire3(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package