Section 1
//FireFX (com.gskinner.effects.FireFX)
package com.gskinner.effects {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
import flash.geom.*;
public class FireFX extends Sprite {
private var perlinValid:Boolean;// = false
private var bmpsValid:Boolean;// = false
private var fireCMF:ColorMatrixFilter;
private var scratchBmp:BitmapData;
private var dispMapF:DisplacementMapFilter;
private var pnt:Point;
private var _distortion:Number;// = 0.5
private var endCount:Number;
private var displayBmp:BitmapData;
private var _distortionScale:Number;// = 0.4
private var _smoke:Number;// = 0
private var _flameHeight:Number;// = 0.3
private var perlinBmp:BitmapData;
private var _blueFlame:Boolean;// = false
private var drawColorTransform:ColorTransform;
private var _target:DisplayObject;
private var mtx:Matrix;
private var filtersValid:Boolean;// = false
private var _flameSpread:Number;// = 0.3
private var blurF:BlurFilter;
private var _fadeRate:Number;// = 0.4
public function FireFX(){
var _local1:DisplayObject;
_fadeRate = 0.4;
_distortionScale = 0.4;
_distortion = 0.5;
_flameHeight = 0.3;
_flameSpread = 0.3;
_blueFlame = false;
_smoke = 0;
bmpsValid = false;
perlinValid = false;
filtersValid = false;
super();
_local1 = getChildAt(0);
_local1.visible = false;
_local1.height = height;
_local1.width = width;
scaleX = (scaleY = 1);
mtx = new Matrix();
pnt = new Point();
startFire();
}
public function get blueFlame():Boolean{
return (_blueFlame);
}
function updateFilters():void{
if (_blueFlame){
fireCMF = new ColorMatrixFilter([(0.8 - (0.55 * _fadeRate)), 0, 0, 0, 0, 0, (0.93 - (0.48 * _fadeRate)), 0, 0, 0, 0, 0.1, (0.96 - (0.35 * _fadeRate)), 0, 0, 0, 0.1, 0, 1, (-25 + (_smoke * 24))]);
drawColorTransform = new ColorTransform(0, 0, 0, 1, 210, 240, 0xFF, 0);
} else {
fireCMF = new ColorMatrixFilter([(0.96 - (0.35 * _fadeRate)), 0.1, 0, 0, -1, 0, (0.9 - (0.45 * _fadeRate)), 0, 0, 0, 0, 0, (0.8 - (0.55 * _fadeRate)), 0, 0, 0, 0.1, 0, 1, (-25 + (_smoke * 24))]);
drawColorTransform = new ColorTransform(0, 0, 0, 1, 0xFF, 0xFF, 210, 0);
};
dispMapF = new DisplacementMapFilter(perlinBmp, pnt, 1, 2, (14 * _distortion), -30, "clamp");
blurF = new BlurFilter((32 * _flameSpread), (32 * _flameSpread), 1);
filtersValid = true;
}
public function set flameSpread(_arg1:Number):void{
filtersValid = ((filtersValid) && ((_arg1 == _flameSpread)));
_flameSpread = _arg1;
}
private function updateBitmaps():void{
if (displayBmp){
displayBmp.dispose();
displayBmp = null;
scratchBmp.dispose();
scratchBmp = null;
perlinBmp.dispose();
perlinBmp = null;
};
displayBmp = new BitmapData(width, height, true, 0);
scratchBmp = displayBmp.clone();
perlinBmp = new BitmapData((width * 3), (height * 3), false, 0);
while (numChildren) {
removeChildAt(0);
};
addChild(new Bitmap(displayBmp));
updatePerlin();
updateFilters();
bmpsValid = true;
}
override public function get height():Number{
return (super.height);
}
public function set target(_arg1:DisplayObject):void{
_target = _arg1;
clear();
}
public function set distortion(_arg1:Number):void{
filtersValid = ((filtersValid) && ((_arg1 == _fadeRate)));
_distortion = _arg1;
}
public function get flameHeight():Number{
return (_flameHeight);
}
override public function set height(_arg1:Number):void{
bmpsValid = ((bmpsValid) && ((_arg1 == height)));
super.height = (_arg1 | 0);
}
public function get smoke():Number{
return (_smoke);
}
public function set flameHeight(_arg1:Number):void{
perlinValid = ((perlinValid) && ((_arg1 == _flameHeight)));
_flameHeight = _arg1;
}
public function get fadeRate():Number{
return (_fadeRate);
}
private function doFire(_arg1:Event):void{
var _local2:Matrix;
if (_target == null){
return;
};
if (!bmpsValid){
updateBitmaps();
};
if (!perlinValid){
updatePerlin();
};
if (!filtersValid){
updateFilters();
};
if (endCount == 0){
_local2 = _target.transform.matrix;
_local2.tx = (_target.x - x);
_local2.ty = (_target.y - y);
scratchBmp.fillRect(scratchBmp.rect, 0);
drawColorTransform.alphaOffset = ((-(Math.random()) * 200) | 0);
scratchBmp.draw(_target, _local2, drawColorTransform, "add");
scratchBmp.applyFilter(scratchBmp, scratchBmp.rect, pnt, blurF);
displayBmp.draw(scratchBmp, mtx, null, "add");
};
dispMapF.mapPoint = new Point(((-(Math.random()) * (perlinBmp.width - displayBmp.width)) | 0), ((-(Math.random()) * (perlinBmp.height - displayBmp.height)) | 0));
displayBmp.applyFilter(displayBmp, displayBmp.rect, pnt, dispMapF);
displayBmp.applyFilter(displayBmp, displayBmp.rect, pnt, fireCMF);
if (((!((endCount == 0))) && ((--endCount == 0)))){
removeEventListener(Event.ENTER_FRAME, doFire);
};
}
public function set distortionScale(_arg1:Number):void{
perlinValid = ((perlinValid) && ((_arg1 == _distortionScale)));
_distortionScale = _arg1;
}
public function set targetName(_arg1:String):void{
var targ:DisplayObject;
var value = _arg1;
targ = parent.getChildByName(value);
if (targ == null){
try {
targ = (parent[value] as DisplayObject);
} catch(e) {
};
};
target = targ;
}
override public function set width(_arg1:Number):void{
bmpsValid = ((bmpsValid) && ((_arg1 == width)));
super.width = (_arg1 | 0);
}
public function get target():DisplayObject{
return (_target);
}
public function get distortion():Number{
return (_distortion);
}
private function updatePerlin():void{
perlinBmp.perlinNoise((30 * _distortionScale), (20 * _distortionScale), 1, ((-(Math.random()) * 1000) | 0), false, true, (1 | 2), false);
perlinBmp.colorTransform(perlinBmp.rect, new ColorTransform(1, (1 - (_flameHeight * 0.5)), 1, 1, 0, 0, 0, 0));
perlinValid = true;
}
public function clear():void{
if (displayBmp){
displayBmp.fillRect(displayBmp.rect, 0);
};
}
public function get flameSpread():Number{
return (_flameSpread);
}
public function stopFire():void{
if (endCount == 0){
endCount = 20;
};
}
public function get distortionScale():Number{
return (_distortionScale);
}
override public function get width():Number{
return (super.width);
}
private function startFire():void{
endCount = 0;
addEventListener(Event.ENTER_FRAME, doFire);
}
public function set smoke(_arg1:Number):void{
filtersValid = ((filtersValid) && ((_arg1 == _smoke)));
_smoke = _arg1;
}
public function set blueFlame(_arg1:Boolean):void{
filtersValid = ((filtersValid) && ((_arg1 == _blueFlame)));
_blueFlame = _arg1;
}
public function set fadeRate(_arg1:Number):void{
filtersValid = ((filtersValid) && ((_arg1 == _fadeRate)));
_fadeRate = _arg1;
}
}
}//package com.gskinner.effects
Section 2
//MochiScores (mochi.MochiScores)
package mochi {
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 options = _arg1;
if (options != null){
if (options.clip != null){
if ((options.clip is Sprite)){
MochiServices.setContainer(options.clip);
};
delete options.clip;
} else {
MochiServices.setContainer();
};
MochiServices.stayOnTop();
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;
};
};
};
if (options.onDisplay != null){
options.onDisplay();
} else {
if (MochiServices.clip != null){
if ((MochiServices.clip is MovieClip)){
MochiServices.clip.stop();
//unresolved jump
};
};
};
} else {
options = {};
if ((MochiServices.clip is MovieClip)){
MochiServices.clip.stop();
//unresolved jump
};
};
if (options.onClose != null){
onCloseHandler = options.onClose;
} else {
onCloseHandler = function ():void{
if ((MochiServices.clip is MovieClip)){
//unresolved jump
};
};
};
if (options.onError != null){
onErrorHandler = options.onError;
} else {
onErrorHandler = null;
};
if (options.boardID == null){
if (_slot1.boardID != null){
options.boardID = _slot1.boardID;
};
};
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 _local2:Object;
var _local3:Number;
var _local4:Number;
var _local5:Object;
var _local6:Object;
var _local7:String;
var _local8:String;
_local2 = {};
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{
MochiServices.send("scores_submit", {score:_arg1, name:_arg2}, _arg3, _arg4);
}
public static function onClose(_arg1:Object=null):void{
if (_arg1 != null){
if (_arg1.error != null){
if (_arg1.error == true){
if (onErrorHandler != null){
if (_arg1.errorCode == null){
_arg1.errorCode = "IOError";
};
onErrorHandler(_arg1.errorCode);
MochiServices.doClose();
return;
};
};
};
};
onCloseHandler();
MochiServices.doClose();
}
public static function setBoardID(_arg1:String):void{
_slot1.boardID = _arg1;
MochiServices.send("scores_setBoardID", {boardID:_arg1});
}
}
}//package mochi
Section 3
//MochiServices (mochi.MochiServices)
package mochi {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
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 _sendChannel:LocalConnection;
private static var _rcvChannelName:String;
private static var _gatewayURL:String = "http://www.mochiads.com/static/lib/services/services.swf";
private static var _clip:MovieClip;
private static var _loader:Loader;
private static var _id:String;
private static var _listenChannel:LocalConnection;
private static var _timer:Timer;
private static var _sendChannelName:String;
private static var _startTime:Number;
private static var _connecting:Boolean = false;
public static var onError:Object;
private static var _listenChannelName:String = "__mochiservices";
private static var _rcvChannel:LocalConnection;
public static function isNetworkAvailable():Boolean{
return (!((Security.sandboxType == "localWithFile")));
}
public static function send(_arg1:String, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{
if (_connected){
_sendChannel.send(_sendChannelName, "onReceive", {methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID});
} else {
if ((((_clip == null)) || (!(_connecting)))){
onError("NotConnected");
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++;
};
};
}
public static function get connected():Boolean{
return (_connected);
}
private static function flush(_arg1:Boolean):void{
var _local2:Object;
var _local3:Object;
if (_clip != null){
if (_clip._queue != null){
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);
};
};
};
};
};
}
private static function init(_arg1:String, _arg2:Object):void{
_id = _arg1;
if (_arg2 != null){
_container = _arg2;
loadCommunicator(_arg1, _container);
};
}
public static function get childClip():Object{
return (_clip);
}
public static function get id():String{
return (_id);
}
public static function stayOnTop():void{
_container.addEventListener(Event.ENTER_FRAME, _slot1.bringToTop, false, 0, true);
if (_clip != null){
_clip.visible = true;
};
}
public static function getVersion():String{
return ("1.31");
}
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 {
_listenChannel.close();
_rcvChannel.close();
} catch(error:Error) {
};
};
if (_timer != null){
try {
_timer.stop();
} catch(error:Error) {
};
};
}
public static function allowDomains(_arg1:String):String{
var _local2:String;
Security.allowDomain("*");
Security.allowInsecureDomain("*");
if (_arg1.indexOf("http://") != -1){
_local2 = _arg1.split("/")[2].split(":")[0];
Security.allowDomain(_local2);
Security.allowInsecureDomain(_local2);
};
return (_local2);
}
public static function doClose():void{
_container.removeEventListener(Event.ENTER_FRAME, _slot1.bringToTop);
if (_clip.parent != null){
Sprite(_clip.parent).removeChild(_clip);
};
}
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 onStatus(_arg1:StatusEvent):void{
switch (_arg1.level){
case "error":
_connected = false;
_listenChannel.connect(_listenChannelName);
break;
};
}
private static function initComChannels():void{
if (!_connected){
_sendChannel.addEventListener(StatusEvent.STATUS, _slot1.onStatus);
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"});
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, clip:_container, version:getVersion()});
_rcvChannel.addEventListener(StatusEvent.STATUS, _slot1.onStatus);
_clip.onReceive = function (_arg1:Object):void{
var cb:String;
var cblst:Object;
var method:*;
var methodName:String;
var obj:Object;
var pkg = _arg1;
cb = pkg.callbackID;
cblst = this.client._callbacks[cb];
if (!cblst){
return;
};
method = cblst.callbackMethod;
methodName = "";
obj = cblst.callbackObject;
if (((obj) && ((typeof(method) == "string")))){
methodName = method;
if (obj[method] != null){
method = obj[method];
//unresolved jump
};
};
if (method != undefined){
try {
method.apply(obj, pkg.args);
} catch(error:Error) {
};
} else {
if (obj != null){
try {
obj(pkg.args);
} catch(error:Error) {
};
};
};
delete this.client._callbacks[cb];
};
_clip.onError = function ():void{
_slot1.onError("IOError");
};
_rcvChannel.connect(_rcvChannelName);
_connecting = false;
_connected = true;
_listenChannel.close();
while (_clip._queue.length > 0) {
_sendChannel.send(_sendChannelName, "onReceive", _clip._queue.shift());
};
};
}
private static function listen():void{
_listenChannel = new LocalConnection();
_listenChannel.client = _clip;
_clip.handshake = function (_arg1:Object):void{
_slot1.comChannelName = _arg1.newChannel;
};
_listenChannel.allowDomain("*", "localhost");
_listenChannel.allowInsecureDomain("*", "localhost");
_listenChannel.connect(_listenChannelName);
}
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 (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) {
};
};
};
};
}
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");
_rcvChannelName = _arg1;
initComChannels();
};
};
}
private static function loadCommunicator(_arg1:String, _arg2:Object):MovieClip{
var clipname:String;
var f:Function;
var req:URLRequest;
var id = _arg1;
var clip = _arg2;
clipname = ("_mochiservices_com_" + id);
if (_clip != null){
return (_clip);
};
if (!_slot1.isNetworkAvailable()){
return (null);
};
_slot1.allowDomains(_gatewayURL);
_clip = createEmptyMovieClip(clip, clipname, 10336, false);
_loader = new Loader();
_timer = new Timer(1000, 0);
_startTime = getTimer();
_timer.addEventListener(TimerEvent.TIMER, connectWait);
_timer.start();
f = function (_arg1:Object):void{
_clip._mochiad_ctr_failed = true;
_slot1.disconnect();
_slot1.onError("IOError");
};
_loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f);
req = new URLRequest(_gatewayURL);
_loader.load(req);
_clip.addChild(_loader);
_clip._mochiservices_com = _loader;
_sendChannel = new LocalConnection();
_clip._queue = [];
_rcvChannel = new LocalConnection();
_rcvChannel.allowDomain("*", "localhost");
_rcvChannel.allowInsecureDomain("*", "localhost");
_rcvChannel.client = _clip;
_clip._nextcallbackID = 0;
_clip._callbacks = {};
listen();
return (_clip);
}
public static function bringToTop(_arg1:Event):void{
var e = _arg1;
if (_slot1.clip != null){
if (_slot1.childClip != null){
try {
if (_slot1.clip.numChildren > 1){
_slot1.clip.setChildIndex(_slot1.childClip, (_slot1.clip.numChildren - 1));
};
} catch(errorObject:Error) {
_container.removeEventListener(Event.ENTER_FRAME, _slot1.bringToTop);
};
};
};
}
public static function connect(_arg1:String, _arg2:Object, _arg3:Object=null):void{
var id = _arg1;
var clip = _arg2;
var onError = _arg3;
if ((clip is DisplayObject)){
if (((!(_connected)) && ((_clip == null)))){
_connecting = true;
init(id, clip);
};
//unresolved jump
};
if (onError != null){
_slot1.onError = onError;
} else {
if (_slot1.onError == null){
_slot1.onError = function (_arg1:String):void{
};
};
};
}
public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Boolean=true):MovieClip{
var mc:MovieClip;
var parent = _arg1;
var name = _arg2;
var depth = _arg3;
var doAdd = _arg4;
mc = 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 connectWait(_arg1:TimerEvent):void{
if ((getTimer() - _startTime) > 10000){
if (!_connected){
_clip._mochiad_ctr_failed = true;
_slot1.disconnect();
_slot1.onError("IOError");
};
_timer.stop();
};
}
}
}//package mochi
Section 4
//amuletpedestool_126 (Sinta_fla.amuletpedestool_126)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class amuletpedestool_126 extends MovieClip {
public var fireball:MovieClip;
public var inner:MovieClip;
public var outline:MovieClip;
public function amuletpedestool_126(){
addFrameScript(0, frame1, 1, frame2, 33, frame34, 67, frame68, 107, frame108);
}
function frame1(){
stop();
}
function frame2(){
}
function frame34(){
}
function frame108(){
stop();
MovieClip(parent).game.getSuperObject(40);
}
function frame68(){
}
}
}//package Sinta_fla
Section 5
//arrowonbow_50 (Sinta_fla.arrowonbow_50)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import com.gskinner.effects.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class arrowonbow_50 extends MovieClip {
public var __setPropDict:Dictionary;
public var inner:MovieClip;
public var fireFX:FireFX;
public var flameybit:MovieClip;
public function arrowonbow_50(){
__setPropDict = new Dictionary(true);
super();
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
if ((((__setPropDict[fireFX] == undefined)) || (!((int(__setPropDict[fireFX]) == 2))))){
__setPropDict[fireFX] = currentFrame;
__setProp_fireFX_arrowonbow_Layer5_2();
};
stop();
flameybit.visible = false;
}
function __setProp_fireFX_arrowonbow_Layer5_2(){
try {
fireFX["componentInspectorSetting"] = true;
} catch(e:Error) {
};
fireFX.blueFlame = false;
fireFX.distortion = 0.4;
fireFX.distortionScale = 0.4;
fireFX.fadeRate = 0.2;
fireFX.flameHeight = 0.3;
fireFX.flameSpread = 0.3;
fireFX.smoke = 0;
fireFX.targetName = "flameybit";
try {
fireFX["componentInspectorSetting"] = false;
} catch(e:Error) {
};
}
}
}//package Sinta_fla
Section 6
//axeinner_209 (Sinta_fla.axeinner_209)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class axeinner_209 extends MovieClip {
public function axeinner_209(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 7
//barbdie_185 (Sinta_fla.barbdie_185)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class barbdie_185 extends MovieClip {
public function barbdie_185(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 8
//barbhit_184 (Sinta_fla.barbhit_184)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class barbhit_184 extends MovieClip {
public function barbhit_184(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 9
//barboolia_307 (Sinta_fla.barboolia_307)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class barboolia_307 extends MovieClip {
public var hitbitbite:MovieClip;
public var hitbithurt:MovieClip;
public function barboolia_307(){
addFrameScript(0, frame1, 16, frame17, 45, frame46, 54, frame55, 94, frame95);
}
function frame95(){
gotoAndPlay("walk");
MovieClip(parent).regen();
}
function frame1(){
MovieClip(parent).walkSpeed = 0.06;
}
function frame17(){
gotoAndPlay("walk");
}
function frame46(){
MovieClip(parent).punch();
}
function frame55(){
gotoAndPlay("walk");
MovieClip(parent).isAttacking = false;
}
}
}//package Sinta_fla
Section 10
//barbroar_183 (Sinta_fla.barbroar_183)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class barbroar_183 extends MovieClip {
public function barbroar_183(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 11
//bgs_10 (Sinta_fla.bgs_10)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class bgs_10 extends MovieClip {
public function bgs_10(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15);
}
function frame10(){
stop();
}
function frame14(){
stop();
}
function frame12(){
stop();
}
function frame3(){
stop();
}
function frame6(){
stop();
}
function frame7(){
stop();
}
function frame1(){
stop();
}
function frame13(){
stop();
}
function frame4(){
stop();
}
function frame5(){
stop();
}
function frame9(){
stop();
}
function frame8(){
stop();
}
function frame2(){
stop();
}
function frame15(){
stop();
}
function frame11(){
stop();
}
}
}//package Sinta_fla
Section 12
//blackbit_74 (Sinta_fla.blackbit_74)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class blackbit_74 extends MovieClip {
public function blackbit_74(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 13
//block1_218 (Sinta_fla.block1_218)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class block1_218 extends MovieClip {
public function block1_218(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame4(){
stop();
}
function frame2(){
stop();
}
}
}//package Sinta_fla
Section 14
//block2_219 (Sinta_fla.block2_219)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class block2_219 extends MovieClip {
public function block2_219(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame4(){
stop();
}
function frame2(){
stop();
}
}
}//package Sinta_fla
Section 15
//block3_220 (Sinta_fla.block3_220)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class block3_220 extends MovieClip {
public function block3_220(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame4(){
stop();
}
function frame2(){
stop();
}
}
}//package Sinta_fla
Section 16
//block4_221 (Sinta_fla.block4_221)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class block4_221 extends MovieClip {
public function block4_221(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame4(){
stop();
}
function frame2(){
stop();
}
}
}//package Sinta_fla
Section 17
//block5s_222 (Sinta_fla.block5s_222)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class block5s_222 extends MovieClip {
public function block5s_222(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame4(){
stop();
}
function frame2(){
stop();
}
}
}//package Sinta_fla
Section 18
//blocktrap_257 (Sinta_fla.blocktrap_257)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class blocktrap_257 extends MovieClip {
public var hitbit:MovieClip;
public function blocktrap_257(){
addFrameScript(2, frame3, 3, frame4, 4, frame5, 5, frame6, 44, frame45);
}
function frame3(){
Block(parent).crush();
Block(parent).game.sounds.stomper.play();
}
function frame6(){
MovieClip(parent).setOpen(false);
}
function frame4(){
Block(parent).crush();
}
function frame5(){
Block(parent).crush();
}
function frame45(){
MovieClip(parent).setOpen(true);
}
}
}//package Sinta_fla
Section 19
//blocktrapreverse_258 (Sinta_fla.blocktrapreverse_258)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class blocktrapreverse_258 extends MovieClip {
public var hitbit:MovieClip;
public function blocktrapreverse_258(){
addFrameScript(29, frame30, 72, frame73, 73, frame74, 74, frame75, 75, frame76);
}
function frame73(){
Block(parent).crush();
Block(parent).game.sounds.stomper.play();
}
function frame75(){
Block(parent).crush();
}
function frame76(){
MovieClip(parent).setOpen(false);
}
function frame74(){
Block(parent).crush();
}
function frame30(){
MovieClip(parent).setOpen(true);
}
}
}//package Sinta_fla
Section 20
//bonus_255 (Sinta_fla.bonus_255)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class bonus_255 extends MovieClip {
public function bonus_255(){
addFrameScript(0, frame1, 3, frame4);
}
function frame1(){
stop();
}
function frame4(){
stop();
MovieClip(parent).deleteMe();
}
}
}//package Sinta_fla
Section 21
//btn_Animation_80 (Sinta_fla.btn_Animation_80)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class btn_Animation_80 extends MovieClip {
public function btn_Animation_80(){
addFrameScript(0, frame1, 5, frame6);
}
function frame6(){
stop();
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 22
//carnplant_295 (Sinta_fla.carnplant_295)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class carnplant_295 extends MovieClip {
public var hitbitbite:MovieClip;
public var hitbithurt:MovieClip;
public function carnplant_295(){
addFrameScript(0, frame1, 45, frame46, 59, frame60, 78, frame79, 87, frame88, 232, frame233);
}
function frame79(){
MovieClip(parent).bite();
}
function frame88(){
gotoAndStop("shown");
MovieClip(parent).isAttacking = false;
}
function frame1(){
stop();
}
function frame233(){
stop();
MovieClip(parent).endDie();
}
function frame46(){
gotoAndStop("hidden");
}
function frame60(){
stop();
}
}
}//package Sinta_fla
Section 23
//colonna_260 (Sinta_fla.colonna_260)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class colonna_260 extends MovieClip {
public var inner:MovieClip;
public function colonna_260(){
addFrameScript(0, frame1, 16, frame17, 33, frame34, 34, frame35, 49, frame50);
}
function frame1(){
stop();
}
function frame17(){
MovieClip(parent).setOpen(true);
}
function frame34(){
visible = false;
stop();
}
function frame35(){
visible = true;
}
function frame50(){
MovieClip(parent).setOpen(false);
}
}
}//package Sinta_fla
Section 24
//colonnareverse_262 (Sinta_fla.colonnareverse_262)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class colonnareverse_262 extends MovieClip {
public var inner:MovieClip;
public function colonnareverse_262(){
addFrameScript(0, frame1, 1, frame2, 16, frame17, 32, frame33, 48, frame49);
}
function frame1(){
stop();
visible = false;
}
function frame17(){
MovieClip(parent).setOpen(false);
}
function frame2(){
visible = true;
}
function frame33(){
stop();
}
function frame49(){
MovieClip(parent).setOpen(true);
}
}
}//package Sinta_fla
Section 25
//Credits_84 (Sinta_fla.Credits_84)
package Sinta_fla {
import flash.display.*;
public dynamic class Credits_84 extends MovieClip {
public var btn_Animation:MovieClip;
}
}//package Sinta_fla
Section 26
//dialoguepanel_71 (Sinta_fla.dialoguepanel_71)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class dialoguepanel_71 extends MovieClip {
public var okbtn:SimpleButton;
public function dialoguepanel_71(){
addFrameScript(0, frame1);
}
function frame1(){
okbtn.addEventListener(MouseEvent.CLICK, closemsg);
}
public function closemsg(_arg1:MouseEvent){
MovieClip(parent).closemsg();
}
}
}//package Sinta_fla
Section 27
//DOOR_1b_239 (Sinta_fla.DOOR_1b_239)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class DOOR_1b_239 extends MovieClip {
public function DOOR_1b_239(){
addFrameScript(0, frame1, 48, frame49);
}
function frame1(){
stop();
}
function frame49(){
stop();
MovieClip(parent).openDoor();
}
}
}//package Sinta_fla
Section 28
//DOOR_1secret_241 (Sinta_fla.DOOR_1secret_241)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class DOOR_1secret_241 extends MovieClip {
public function DOOR_1secret_241(){
addFrameScript(0, frame1, 48, frame49);
}
function frame1(){
stop();
}
function frame49(){
stop();
MovieClip(parent).openDoor();
}
}
}//package Sinta_fla
Section 29
//DOOR_2b_240 (Sinta_fla.DOOR_2b_240)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class DOOR_2b_240 extends MovieClip {
public function DOOR_2b_240(){
addFrameScript(0, frame1, 48, frame49);
}
function frame1(){
stop();
}
function frame49(){
stop();
MovieClip(parent).openDoor();
}
}
}//package Sinta_fla
Section 30
//Door_3b_244 (Sinta_fla.Door_3b_244)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class Door_3b_244 extends MovieClip {
public function Door_3b_244(){
addFrameScript(0, frame1, 72, frame73);
}
function frame73(){
stop();
MovieClip(parent).openDoor();
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 31
//doorclose_194 (Sinta_fla.doorclose_194)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class doorclose_194 extends MovieClip {
public function doorclose_194(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 32
//elementalhit_182 (Sinta_fla.elementalhit_182)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class elementalhit_182 extends MovieClip {
public function elementalhit_182(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 33
//elementalimmune_181 (Sinta_fla.elementalimmune_181)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class elementalimmune_181 extends MovieClip {
public function elementalimmune_181(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 34
//firearrow_152 (Sinta_fla.firearrow_152)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import com.gskinner.effects.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class firearrow_152 extends MovieClip {
public var fireball:MovieClip;
public var inner:MovieClip;
public var fireFX:FireFX;
public function firearrow_152(){
addFrameScript(0, frame1, 1, frame2, 33, frame34, 67, frame68, 98, frame99);
__setProp_fireFX_firearrow_Layer2_1();
}
function __setProp_fireFX_firearrow_Layer2_1(){
try {
fireFX["componentInspectorSetting"] = true;
} catch(e:Error) {
};
fireFX.blueFlame = false;
fireFX.distortion = 0.8;
fireFX.distortionScale = 0.4;
fireFX.fadeRate = 0.1;
fireFX.flameHeight = 0.3;
fireFX.flameSpread = 0.3;
fireFX.smoke = 0;
fireFX.targetName = "inner";
try {
fireFX["componentInspectorSetting"] = false;
} catch(e:Error) {
};
}
function frame1(){
stop();
}
function frame2(){
fireFX.target = fireball;
}
function frame34(){
fireball.visible = false;
}
function frame99(){
stop();
MovieClip(parent).game.getSuperObject(39);
}
function frame68(){
fireFX.flameHeight = 0.5;
fireFX.blueFlame = true;
}
}
}//package Sinta_fla
Section 35
//fish_155 (Sinta_fla.fish_155)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class fish_155 extends MovieClip {
public function fish_155(){
addFrameScript(0, frame1, 3, frame4);
}
function frame1(){
stop();
}
function frame4(){
stop();
MovieClip(parent).deleteMe();
}
}
}//package Sinta_fla
Section 36
//flameinner_157 (Sinta_fla.flameinner_157)
package Sinta_fla {
import flash.display.*;
public dynamic class flameinner_157 extends MovieClip {
public var inner:MovieClip;
}
}//package Sinta_fla
Section 37
//gamelevel_8 (Sinta_fla.gamelevel_8)
package Sinta_fla {
import flash.display.*;
public dynamic class gamelevel_8 extends MovieClip {
public var hero:MovieClip;
public var arrowholder:MovieClip;
public var monsterholder:MovieClip;
public var help:MovieClip;
public var bgcolour:MovieClip;
public var blockholder:MovieClip;
public var bgs:MovieClip;
}
}//package Sinta_fla
Section 38
//gamelevelbgcolour_9 (Sinta_fla.gamelevelbgcolour_9)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class gamelevelbgcolour_9 extends MovieClip {
public function gamelevelbgcolour_9(){
addFrameScript(0, frame1, 19, frame20);
}
function frame1(){
stop();
}
function frame20(){
stop();
}
}
}//package Sinta_fla
Section 39
//gameoverpanel_68 (Sinta_fla.gameoverpanel_68)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import mochi.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class gameoverpanel_68 extends MovieClip {
public var submitbtn:SimpleButton;
public var continuebtn:SimpleButton;
public var menubtn:SimpleButton;
public function gameoverpanel_68(){
addFrameScript(0, frame1);
}
public function continueGame(_arg1:MouseEvent){
MovieClip(parent).continueGame();
}
public function gotoMenu(_arg1:MouseEvent){
MovieClip(parent).endGame();
}
function frame1(){
continuebtn.addEventListener(MouseEvent.CLICK, continueGame);
menubtn.addEventListener(MouseEvent.CLICK, gotoMenu);
submitbtn.addEventListener(MouseEvent.CLICK, submitScore);
}
public function submitScore(_arg1:MouseEvent){
MovieClip(parent).gotoAndStop(16);
if (MovieClip(parent).diff == 0){
MochiScores.showLeaderboard({boardID:"2ed013f03056eb34", score:MovieClip(parent).getScore()});
} else {
MochiScores.showLeaderboard({boardID:"cef97303e729ba60", score:MovieClip(parent).getScore()});
};
}
}
}//package Sinta_fla
Section 40
//getspecial_201 (Sinta_fla.getspecial_201)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class getspecial_201 extends MovieClip {
public function getspecial_201(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 41
//hand_2_run2_49 (Sinta_fla.hand_2_run2_49)
package Sinta_fla {
import flash.display.*;
public dynamic class hand_2_run2_49 extends MovieClip {
public var arrowinner:MovieClip;
}
}//package Sinta_fla
Section 42
//healthbar_161 (Sinta_fla.healthbar_161)
package Sinta_fla {
import flash.display.*;
public dynamic class healthbar_161 extends MovieClip {
public var bar:MovieClip;
}
}//package Sinta_fla
Section 43
//help1_27 (Sinta_fla.help1_27)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class help1_27 extends MovieClip {
public function help1_27(){
addFrameScript(0, frame1, 1, frame2, 2, frame3);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package Sinta_fla
Section 44
//Hero_28 (Sinta_fla.Hero_28)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class Hero_28 extends MovieClip {
public var hitbit:MovieClip;
public var lhand:MovieClip;
public var head:MovieClip;
public var rhand:MovieClip;
public function Hero_28(){
addFrameScript(0, frame1, 8, frame9, 13, frame14, 25, frame26, 34, frame35, 88, frame89, 89, frame90, 102, frame103, 104, frame105, 105, frame106, 129, frame130, 130, frame131, 138, frame139, 161, frame162, 164, frame165, 184, frame185, 219, frame220);
}
function frame165(){
stop();
this.hero.endDie();
}
function frame89(){
gotoAndStop("fall");
}
function frame162(){
stop();
this.hero.endDie();
}
function frame90(){
stop();
}
function frame14(){
stop();
}
function frame220(){
stop();
this.hero.endDie();
}
function frame105(){
stop();
}
function frame106(){
stop();
}
function frame1(){
gotoAndStop("stand");
}
function frame185(){
stop();
this.hero.endDie();
}
function frame26(){
stop();
}
function frame103(){
gotoAndStop("stand");
}
function frame9(){
}
function frame35(){
}
function frame130(){
stop();
this.hero.isOpening = false;
}
function frame131(){
}
function frame139(){
gotoAndStop("stand");
this.hero.checkDead();
}
}
}//package Sinta_fla
Section 45
//howtoplay_125 (Sinta_fla.howtoplay_125)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class howtoplay_125 extends MovieClip {
public var thread:MovieClip;
public var closebtn:SimpleButton;
public var hitbitbite:MovieClip;
public var hitbithurt:MovieClip;
public function howtoplay_125(){
addFrameScript(0, frame1);
}
function frame1(){
closebtn.addEventListener(MouseEvent.CLICK, closehowto);
}
public function closehowto(_arg1:MouseEvent){
visible = false;
}
}
}//package Sinta_fla
Section 46
//Howtoplay_79 (Sinta_fla.Howtoplay_79)
package Sinta_fla {
import flash.display.*;
public dynamic class Howtoplay_79 extends MovieClip {
public var btn_Animation:MovieClip;
}
}//package Sinta_fla
Section 47
//intro_2 (Sinta_fla.intro_2)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class intro_2 extends MovieClip {
public var done;
public function intro_2(){
addFrameScript(0, frame1, 132, frame133);
}
function frame1(){
done = false;
}
function frame133(){
stop();
done = true;
}
}
}//package Sinta_fla
Section 48
//Levelnamebox_164 (Sinta_fla.Levelnamebox_164)
package Sinta_fla {
import flash.display.*;
import flash.text.*;
public dynamic class Levelnamebox_164 extends MovieClip {
public var level_txt:TextField;
}
}//package Sinta_fla
Section 49
//lightningbolt_210 (Sinta_fla.lightningbolt_210)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class lightningbolt_210 extends MovieClip {
public function lightningbolt_210(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 50
//loadSavebtn_93 (Sinta_fla.loadSavebtn_93)
package Sinta_fla {
import flash.display.*;
public dynamic class loadSavebtn_93 extends MovieClip {
public var btn_Animation:MovieClip;
}
}//package Sinta_fla
Section 51
//lustrasmashed_291 (Sinta_fla.lustrasmashed_291)
package Sinta_fla {
import flash.display.*;
public dynamic class lustrasmashed_291 extends MovieClip {
public var hitbitbite:MovieClip;
public var hitbithurt:MovieClip;
}
}//package Sinta_fla
Section 52
//Makeyourownlevels_82 (Sinta_fla.Makeyourownlevels_82)
package Sinta_fla {
import flash.display.*;
public dynamic class Makeyourownlevels_82 extends MovieClip {
public var btn_Animation:MovieClip;
}
}//package Sinta_fla
Section 53
//menu_76 (Sinta_fla.menu_76)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import mochi.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class menu_76 extends MovieClip {
public var diff;
public var loadsavebtn:MovieClip;
public var year;
public var moregamesbtn:MovieClip;
public var mynkbtn:MovieClip;
public var howtoplaybtn:MovieClip;
public var month;
public var creditsbtn:MovieClip;
public var thedate;
public var choosediff:MovieClip;
public var warning:MovieClip;
public var day;
public function menu_76(){
addFrameScript(0, frame1);
}
public function loadrollout(_arg1:MouseEvent){
loadsavebtn.btn_Animation.gotoAndPlay("btnOut");
}
public function clickmoregames(_arg1:MouseEvent){
var _local2:String;
var _local3:URLRequest;
_local2 = "http://www.ninjakiwi.com";
_local3 = new URLRequest(_local2);
navigateToURL(_local3, "_blank");
}
public function setnorm(_arg1:MouseEvent){
if (diff == 1){
diff = 0;
choosediff.gotoAndPlay("drawonnormal");
};
}
public function clickhowto(_arg1:MouseEvent){
MovieClip(parent).howtoplay.visible = true;
}
public function startgame(_arg1:MouseEvent){
MovieClip(parent).diff = diff;
MovieClip(parent).loadSavedGame = false;
MovieClip(parent).gotoAndStop("play");
}
public function loadclick(_arg1:MouseEvent){
MovieClip(parent).loadSavedGame = true;
MovieClip(parent).gotoAndStop("play");
}
function frame1(){
diff = 0;
choosediff.addEventListener(MouseEvent.CLICK, startgame);
choosediff.normalbtn.addEventListener(MouseEvent.ROLL_OVER, setnorm);
choosediff.addEventListener(MouseEvent.ROLL_OVER, rollover);
choosediff.hardbtn.addEventListener(MouseEvent.ROLL_OVER, sethard);
loadsavebtn.addEventListener(MouseEvent.ROLL_OVER, loadrollover);
loadsavebtn.addEventListener(MouseEvent.ROLL_OUT, loadrollout);
howtoplaybtn.addEventListener(MouseEvent.ROLL_OVER, rolloverhowto);
howtoplaybtn.addEventListener(MouseEvent.ROLL_OUT, rollouthowto);
moregamesbtn.addEventListener(MouseEvent.ROLL_OVER, rollovermoregames);
moregamesbtn.addEventListener(MouseEvent.ROLL_OUT, rolloutmoregames);
creditsbtn.addEventListener(MouseEvent.ROLL_OVER, rollovercredits);
creditsbtn.addEventListener(MouseEvent.ROLL_OUT, rolloutcredits);
mynkbtn.addEventListener(MouseEvent.ROLL_OVER, rollovermynk);
mynkbtn.addEventListener(MouseEvent.ROLL_OUT, rolloutmynk);
howtoplaybtn.addEventListener(MouseEvent.CLICK, clickhowto);
loadsavebtn.addEventListener(MouseEvent.CLICK, loadclick);
moregamesbtn.addEventListener(MouseEvent.CLICK, clickmoregames);
mynkbtn.addEventListener(MouseEvent.CLICK, clickmynk);
creditsbtn.addEventListener(MouseEvent.CLICK, clickhs);
warning.addEventListener(MouseEvent.CLICK, getFlash);
thedate = new Date();
day = thedate.getDate();
month = (thedate.getMonth() + 1);
year = thedate.getFullYear();
mynkbtn.visible = false;
if (year == 2008){
if (month > 7){
mynkbtn.visible = true;
};
};
if (year > 2008){
mynkbtn.visible = true;
};
}
public function rolloutmoregames(_arg1:MouseEvent){
moregamesbtn.btn_Animation.gotoAndPlay("btnOut");
}
public function rolloverhowto(_arg1:MouseEvent){
howtoplaybtn.btn_Animation.gotoAndPlay("btnOver");
}
public function getFlash(_arg1:MouseEvent){
var _local2:String;
var _local3:URLRequest;
_local2 = "http://www.adobe.com/go/getflashplayer";
_local3 = new URLRequest(_local2);
navigateToURL(_local3, "_blank");
}
public function sethard(_arg1:MouseEvent){
diff = 1;
choosediff.gotoAndPlay("drawonhard");
}
public function rollovercredits(_arg1:MouseEvent){
creditsbtn.btn_Animation.gotoAndPlay("btnOver");
}
public function clickhs(_arg1:MouseEvent){
if (diff == 0){
MochiScores.showLeaderboard({boardID:"2ed013f03056eb34"});
} else {
MochiScores.showLeaderboard({boardID:"cef97303e729ba60"});
};
}
public function loadrollover(_arg1:MouseEvent){
loadsavebtn.btn_Animation.gotoAndPlay("btnOver");
}
public function rollouthowto(_arg1:MouseEvent){
howtoplaybtn.btn_Animation.gotoAndPlay("btnOut");
}
public function rollovermynk(_arg1:MouseEvent){
mynkbtn.btn_Animation.gotoAndPlay("btnOver");
}
public function rolloutcredits(_arg1:MouseEvent){
creditsbtn.btn_Animation.gotoAndPlay("btnOut");
}
public function rollover(_arg1:MouseEvent){
if (choosediff.currentFrame == 1){
diff = 0;
choosediff.gotoAndPlay("drawonnormal");
};
}
public function rolloutmynk(_arg1:MouseEvent){
mynkbtn.btn_Animation.gotoAndPlay("btnOut");
}
public function rollovermoregames(_arg1:MouseEvent){
moregamesbtn.btn_Animation.gotoAndPlay("btnOver");
}
public function clickmynk(_arg1:MouseEvent){
var _local2:String;
var _local3:URLRequest;
_local2 = "http://www.myninjakiwi.com";
_local3 = new URLRequest(_local2);
navigateToURL(_local3, "_blank");
}
}
}//package Sinta_fla
Section 54
//MoreGames_83 (Sinta_fla.MoreGames_83)
package Sinta_fla {
import flash.display.*;
public dynamic class MoreGames_83 extends MovieClip {
public var btn_Animation:MovieClip;
}
}//package Sinta_fla
Section 55
//movPlatLargeHL_235 (Sinta_fla.movPlatLargeHL_235)
package Sinta_fla {
import flash.display.*;
public dynamic class movPlatLargeHL_235 extends MovieClip {
public var inner:MovieClip;
}
}//package Sinta_fla
Section 56
//movPlatLargeHS_233 (Sinta_fla.movPlatLargeHS_233)
package Sinta_fla {
import flash.display.*;
public dynamic class movPlatLargeHS_233 extends MovieClip {
public var inner:MovieClip;
}
}//package Sinta_fla
Section 57
//movPlatLargeVL_237 (Sinta_fla.movPlatLargeVL_237)
package Sinta_fla {
import flash.display.*;
public dynamic class movPlatLargeVL_237 extends MovieClip {
public var inner:MovieClip;
}
}//package Sinta_fla
Section 58
//movPlatLargeVS_236 (Sinta_fla.movPlatLargeVS_236)
package Sinta_fla {
import flash.display.*;
public dynamic class movPlatLargeVS_236 extends MovieClip {
public var inner:MovieClip;
}
}//package Sinta_fla
Section 59
//movPlatSmallHL_230 (Sinta_fla.movPlatSmallHL_230)
package Sinta_fla {
import flash.display.*;
public dynamic class movPlatSmallHL_230 extends MovieClip {
public var inner:MovieClip;
}
}//package Sinta_fla
Section 60
//movPlatSmallHS_228 (Sinta_fla.movPlatSmallHS_228)
package Sinta_fla {
import flash.display.*;
public dynamic class movPlatSmallHS_228 extends MovieClip {
public var inner:MovieClip;
}
}//package Sinta_fla
Section 61
//movPlatSmallVL_232 (Sinta_fla.movPlatSmallVL_232)
package Sinta_fla {
import flash.display.*;
public dynamic class movPlatSmallVL_232 extends MovieClip {
public var inner:MovieClip;
}
}//package Sinta_fla
Section 62
//movPlatSmallVS_231 (Sinta_fla.movPlatSmallVS_231)
package Sinta_fla {
import flash.display.*;
public dynamic class movPlatSmallVS_231 extends MovieClip {
public var inner:MovieClip;
}
}//package Sinta_fla
Section 63
//music_176 (Sinta_fla.music_176)
package Sinta_fla {
import flash.display.*;
public dynamic class music_176 extends MovieClip {
public var musicmain:MovieClip;
public var musicwizard:MovieClip;
}
}//package Sinta_fla
Section 64
//musicmain_177 (Sinta_fla.musicmain_177)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class musicmain_177 extends MovieClip {
public function musicmain_177(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package Sinta_fla
Section 65
//musicToggle_169 (Sinta_fla.musicToggle_169)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class musicToggle_169 extends MovieClip {
public var newTransform:SoundTransform;
public function musicToggle_169(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
newTransform = new SoundTransform(1, 0);
MovieClip(parent.parent).music.soundTransform = newTransform;
}
function frame2(){
stop();
newTransform = new SoundTransform(0, 0);
MovieClip(parent.parent).music.soundTransform = newTransform;
}
}
}//package Sinta_fla
Section 66
//musicwizard_178 (Sinta_fla.musicwizard_178)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class musicwizard_178 extends MovieClip {
public function musicwizard_178(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package Sinta_fla
Section 67
//Newgamemc_85 (Sinta_fla.Newgamemc_85)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class Newgamemc_85 extends MovieClip {
public var normalbtn:SimpleButton;
public var hardbtn:SimpleButton;
public function Newgamemc_85(){
addFrameScript(0, frame1, 5, frame6, 10, frame11, 11, frame12, 16, frame17, 21, frame22);
}
function frame12(){
stop();
}
function frame6(){
stop();
}
function frame1(){
stop();
}
function frame22(){
gotoAndStop(12);
}
function frame17(){
stop();
}
function frame11(){
gotoAndStop(1);
}
}
}//package Sinta_fla
Section 68
//pickuparrows_199 (Sinta_fla.pickuparrows_199)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class pickuparrows_199 extends MovieClip {
public function pickuparrows_199(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 69
//pickuplife_200 (Sinta_fla.pickuplife_200)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class pickuplife_200 extends MovieClip {
public function pickuplife_200(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 70
//quitScreen_60 (Sinta_fla.quitScreen_60)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class quitScreen_60 extends MovieClip {
public var continuebtn:SimpleButton;
public var menubtn:SimpleButton;
public function quitScreen_60(){
addFrameScript(0, frame1);
}
public function continueGame(_arg1:MouseEvent){
MovieClip(parent).closeQuitScreen();
}
public function gotoMenu(_arg1:MouseEvent){
MovieClip(parent).endGame();
}
function frame1(){
continuebtn.addEventListener(MouseEvent.CLICK, continueGame);
menubtn.addEventListener(MouseEvent.CLICK, gotoMenu);
}
}
}//package Sinta_fla
Section 71
//quiver2_256 (Sinta_fla.quiver2_256)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class quiver2_256 extends MovieClip {
public function quiver2_256(){
addFrameScript(0, frame1, 4, frame5);
}
function frame1(){
stop();
}
function frame5(){
stop();
MovieClip(parent).deleteMe();
}
}
}//package Sinta_fla
Section 72
//rubypedestool_137 (Sinta_fla.rubypedestool_137)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class rubypedestool_137 extends MovieClip {
public var fireball:MovieClip;
public var inner:MovieClip;
public function rubypedestool_137(){
addFrameScript(0, frame1, 1, frame2, 33, frame34, 67, frame68, 93, frame94);
}
function frame94(){
stop();
MovieClip(parent).game.getSuperObject(37);
}
function frame1(){
stop();
}
function frame2(){
}
function frame34(){
}
function frame68(){
}
}
}//package Sinta_fla
Section 73
//shootarm_55 (Sinta_fla.shootarm_55)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class shootarm_55 extends MovieClip {
public var rhand:MovieClip;
public function shootarm_55(){
addFrameScript(0, frame1, 1, frame2, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9);
}
function frame6(){
play();
}
function frame7(){
play();
}
function frame1(){
stop();
if (MovieClip(parent).hero){
MovieClip(parent).hero.setShooting(false);
};
}
function frame4(){
play();
}
function frame5(){
play();
}
function frame9(){
play();
}
function frame8(){
play();
}
function frame2(){
play();
MovieClip(parent).lhand.arrowinner.visible = false;
}
}
}//package Sinta_fla
Section 74
//sintaburn_195 (Sinta_fla.sintaburn_195)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class sintaburn_195 extends MovieClip {
public function sintaburn_195(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 75
//sintadienormal_203 (Sinta_fla.sintadienormal_203)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class sintadienormal_203 extends MovieClip {
public function sintadienormal_203(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 76
//sintaeat_202 (Sinta_fla.sintaeat_202)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class sintaeat_202 extends MovieClip {
public function sintaeat_202(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 77
//sintaelectricute_198 (Sinta_fla.sintaelectricute_198)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class sintaelectricute_198 extends MovieClip {
public function sintaelectricute_198(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 78
//sintahit_204 (Sinta_fla.sintahit_204)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class sintahit_204 extends MovieClip {
public function sintahit_204(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 79
//sintaland_205 (Sinta_fla.sintaland_205)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class sintaland_205 extends MovieClip {
public function sintaland_205(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 80
//sintashootfire_197 (Sinta_fla.sintashootfire_197)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class sintashootfire_197 extends MovieClip {
public function sintashootfire_197(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 81
//sintashootnormal_196 (Sinta_fla.sintashootnormal_196)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class sintashootnormal_196 extends MovieClip {
public function sintashootnormal_196(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 82
//slideplatin_263 (Sinta_fla.slideplatin_263)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class slideplatin_263 extends MovieClip {
public function slideplatin_263(){
addFrameScript(0, frame1, 16, frame17, 32, frame33, 48, frame49);
}
function frame1(){
stop();
}
function frame17(){
MovieClip(parent).setOpen(false);
}
function frame33(){
stop();
}
function frame49(){
MovieClip(parent).setOpen(true);
}
}
}//package Sinta_fla
Section 83
//slideplatout_265 (Sinta_fla.slideplatout_265)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class slideplatout_265 extends MovieClip {
public function slideplatout_265(){
addFrameScript(0, frame1, 16, frame17, 33, frame34, 49, frame50);
}
function frame1(){
stop();
}
function frame17(){
MovieClip(parent).setOpen(true);
}
function frame34(){
stop();
}
function frame50(){
MovieClip(parent).setOpen(false);
}
}
}//package Sinta_fla
Section 84
//SNAKE_walk_293 (Sinta_fla.SNAKE_walk_293)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class SNAKE_walk_293 extends MovieClip {
public var hitbitbite:MovieClip;
public var hitbithurt:MovieClip;
public function SNAKE_walk_293(){
addFrameScript(33, frame34, 155, frame156);
}
function frame156(){
stop();
MovieClip(parent).endDie();
}
function frame34(){
gotoAndPlay("walk");
}
}
}//package Sinta_fla
Section 85
//snakespawn_180 (Sinta_fla.snakespawn_180)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class snakespawn_180 extends MovieClip {
public function snakespawn_180(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 86
//sndToggle_168 (Sinta_fla.sndToggle_168)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class sndToggle_168 extends MovieClip {
public var newTransform:SoundTransform;
public function sndToggle_168(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
newTransform = new SoundTransform(1, 0);
MovieClip(parent.parent).sounds.soundTransform = newTransform;
MovieClip(parent.parent).gamelevel.soundTransform = newTransform;
}
function frame2(){
stop();
newTransform = new SoundTransform(0, 0);
MovieClip(parent.parent).sounds.soundTransform = newTransform;
MovieClip(parent.parent).gamelevel.soundTransform = newTransform;
}
}
}//package Sinta_fla
Section 87
//soundControl_167 (Sinta_fla.soundControl_167)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class soundControl_167 extends MovieClip {
public var musToggle_mc:MovieClip;
public var sndToggle_mc:MovieClip;
public function soundControl_167(){
addFrameScript(0, frame1);
}
public function musToggle(_arg1:MouseEvent){
musToggle_mc.play();
}
public function sndToggle(_arg1:MouseEvent){
sndToggle_mc.play();
}
function frame1(){
sndToggle_mc.addEventListener(MouseEvent.CLICK, sndToggle);
musToggle_mc.addEventListener(MouseEvent.CLICK, musToggle);
}
}
}//package Sinta_fla
Section 88
//sounds_179 (Sinta_fla.sounds_179)
package Sinta_fla {
import flash.display.*;
public dynamic class sounds_179 extends MovieClip {
public var sintaelectricute:MovieClip;
public var pickuparrows:MovieClip;
public var wizardlaugh2:MovieClip;
public var wizardsummon:MovieClip;
public var doorclose:MovieClip;
public var sintaeat:MovieClip;
public var wizarddie:MovieClip;
public var snakespawn:MovieClip;
public var sintashootfire:MovieClip;
public var elementalhit:MovieClip;
public var wizardhit:MovieClip;
public var sintahit:MovieClip;
public var barbroar:MovieClip;
public var elementalimmune:MovieClip;
public var sintashootnormal:MovieClip;
public var barbdie:MovieClip;
public var wizardlaugh1:MovieClip;
public var pickuplife:MovieClip;
public var wizardattack:MovieClip;
public var barbhit:MovieClip;
public var wizardpreattack:MovieClip;
public var sintaburn:MovieClip;
public var sintaland:MovieClip;
public var wizardimmune:MovieClip;
public var getspecial:MovieClip;
public var stomper:MovieClip;
public var sintadienormal:MovieClip;
}
}//package Sinta_fla
Section 89
//Spider_298 (Sinta_fla.Spider_298)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class Spider_298 extends MovieClip {
public var thread:MovieClip;
public var hitbitbite:MovieClip;
public var hitbithurt:MovieClip;
public function Spider_298(){
addFrameScript(20, frame21, 165, frame166);
}
function frame166(){
stop();
MovieClip(parent).endDie();
}
function frame21(){
gotoAndPlay("walk");
}
}
}//package Sinta_fla
Section 90
//spikes_139 (Sinta_fla.spikes_139)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class spikes_139 extends MovieClip {
public var spikebit:MovieClip;
public function spikes_139(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4);
}
function frame3(){
stop();
}
function frame1(){
stop();
}
function frame4(){
stop();
}
function frame2(){
stop();
}
}
}//package Sinta_fla
Section 91
//star_254 (Sinta_fla.star_254)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class star_254 extends MovieClip {
public function star_254(){
addFrameScript(0, frame1, 23, frame24);
}
function frame1(){
stop();
}
function frame24(){
stop();
MovieClip(parent).deleteMe();
}
}
}//package Sinta_fla
Section 92
//stomper_206 (Sinta_fla.stomper_206)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class stomper_206 extends MovieClip {
public function stomper_206(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 93
//switch_251 (Sinta_fla.switch_251)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class switch_251 extends MovieClip {
public function switch_251(){
addFrameScript(0, frame1, 25, frame26);
}
function frame1(){
stop();
}
function frame26(){
MovieClip(parent).game.openWalls();
}
}
}//package Sinta_fla
Section 94
//treestump_294 (Sinta_fla.treestump_294)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class treestump_294 extends MovieClip {
public var hitbitbite:MovieClip;
public var hitbithurt:MovieClip;
public function treestump_294(){
addFrameScript(9, frame10, 23, frame24, 371, frame372);
}
function frame10(){
gotoAndPlay("walk");
}
function frame24(){
gotoAndPlay("walk");
MovieClip(parent).isAttacking = false;
}
function frame372(){
gotoAndPlay("walk");
MovieClip(parent).regen();
}
}
}//package Sinta_fla
Section 95
//waterelemental_306 (Sinta_fla.waterelemental_306)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class waterelemental_306 extends MovieClip {
public var hitbitbite:MovieClip;
public var hitbithurt:MovieClip;
public function waterelemental_306(){
addFrameScript(0, frame1, 19, frame20, 27, frame28, 40, frame41, 240, frame241);
}
function frame1(){
MovieClip(parent).walkSpeed = 0.06;
}
function frame20(){
MovieClip(parent).walkSpeed = 0;
}
function frame28(){
gotoAndPlay("walk");
}
function frame41(){
gotoAndPlay("walk");
MovieClip(parent).isAttacking = false;
}
function frame241(){
gotoAndPlay("walk");
MovieClip(parent).endDie();
}
}
}//package Sinta_fla
Section 96
//wingame_95 (Sinta_fla.wingame_95)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import mochi.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wingame_95 extends MovieClip {
public var lives;
public var starspoints_txt:TextField;
public var livespoints_txt:TextField;
public var totalpoints_txt:TextField;
public var stars;
public var skipbtn:SimpleButton;
public var submitscorebtn:SimpleButton;
public function wingame_95(){
addFrameScript(0, frame1, 85, frame86, 1684, frame1685, 1772, frame1773);
}
function frame86(){
skipbtn.addEventListener(MouseEvent.CLICK, goEnd);
}
function frame1(){
stop();
}
function frame1773(){
gotoAndStop(1);
MovieClip(parent).gotoAndStop(16);
}
public function submitscore(_arg1:Event){
play();
if (MovieClip(parent).diff == 0){
MochiScores.showLeaderboard({boardID:"2ed013f03056eb34", score:MovieClip(parent).getScore()});
} else {
MochiScores.showLeaderboard({boardID:"cef97303e729ba60", score:MovieClip(parent).getScore()});
};
}
function frame1685(){
stop();
stars = MovieClip(parent).starsGot;
lives = MovieClip(parent).playerLives;
starspoints_txt.text = ((stars + " = ") + (stars * 100));
livespoints_txt.text = ((lives + " = ") + (lives * 1000));
totalpoints_txt.text = String((((stars * 100) + (lives * 1000)) + 5000));
MovieClip(parent).setScore((((stars * 100) + (lives * 1000)) + 5000));
submitscorebtn.addEventListener(MouseEvent.CLICK, submitscore);
}
public function goEnd(_arg1:MouseEvent){
gotoAndStop(totalFrames);
}
}
}//package Sinta_fla
Section 97
//wizard_310 (Sinta_fla.wizard_310)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wizard_310 extends MovieClip {
public var hitbitbite:MovieClip;
public var hitbithurt:MovieClip;
public function wizard_310(){
addFrameScript(0, frame1, 8, frame9, 9, frame10, 19, frame20, 41, frame42, 47, frame48, 69, frame70, 75, frame76, 96, frame97, 103, frame104, 122, frame123, 129, frame130, 153, frame154, 177, frame178, 301, frame302);
}
function frame70(){
MovieClip(parent.parent).shootLightning(0);
}
function frame154(){
MovieClip(parent).play();
MovieClip(parent.parent).isAttacking = false;
gotoAndPlay("walkright");
}
function frame76(){
gotoAndPlay("walkleft");
MovieClip(parent.parent).isAttacking = false;
}
function frame178(){
MovieClip(parent).play();
MovieClip(parent.parent).isAttacking = false;
gotoAndPlay("walkleft");
}
function frame10(){
MovieClip(parent).play();
}
function frame97(){
MovieClip(parent.parent).shootLightning(50);
}
function frame1(){
MovieClip(parent).play();
}
function frame104(){
gotoAndPlay("walkright");
MovieClip(parent.parent).isAttacking = false;
}
function frame9(){
gotoAndPlay(("walk" + MovieClip(parent.parent).wizdirection));
}
function frame20(){
gotoAndPlay(("walk" + MovieClip(parent.parent).wizdirection));
}
function frame123(){
MovieClip(parent.parent).shootLightning(-50);
}
function frame48(){
gotoAndPlay("walkright");
MovieClip(parent.parent).isAttacking = false;
}
function frame42(){
MovieClip(parent.parent).shootLightning(0);
}
function frame130(){
gotoAndPlay("walkleft");
MovieClip(parent.parent).isAttacking = false;
}
function frame302(){
gotoAndPlay("walk");
MovieClip(parent.parent).endDie();
}
}
}//package Sinta_fla
Section 98
//wizardattack_189 (Sinta_fla.wizardattack_189)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wizardattack_189 extends MovieClip {
public function wizardattack_189(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 99
//wizarddie_193 (Sinta_fla.wizarddie_193)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wizarddie_193 extends MovieClip {
public function wizarddie_193(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 100
//wizarddoorinner1_246 (Sinta_fla.wizarddoorinner1_246)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wizarddoorinner1_246 extends MovieClip {
public function wizarddoorinner1_246(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 101
//wizardhit_192 (Sinta_fla.wizardhit_192)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wizardhit_192 extends MovieClip {
public function wizardhit_192(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 102
//wizardimmune_188 (Sinta_fla.wizardimmune_188)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wizardimmune_188 extends MovieClip {
public function wizardimmune_188(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 103
//wizardlaugh1_186 (Sinta_fla.wizardlaugh1_186)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wizardlaugh1_186 extends MovieClip {
public function wizardlaugh1_186(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 104
//wizardlaugh2_187 (Sinta_fla.wizardlaugh2_187)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wizardlaugh2_187 extends MovieClip {
public function wizardlaugh2_187(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 105
//wizardmove_309 (Sinta_fla.wizardmove_309)
package Sinta_fla {
import flash.display.*;
public dynamic class wizardmove_309 extends MovieClip {
public var movewiz:MovieClip;
}
}//package Sinta_fla
Section 106
//wizardpreattack_191 (Sinta_fla.wizardpreattack_191)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wizardpreattack_191 extends MovieClip {
public function wizardpreattack_191(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 107
//wizardsummon_190 (Sinta_fla.wizardsummon_190)
package Sinta_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.filters.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class wizardsummon_190 extends MovieClip {
public function wizardsummon_190(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Sinta_fla
Section 108
//Arial (Arial)
package {
import flash.text.*;
public dynamic class Arial extends Font {
}
}//package
Section 109
//Arrow (Arrow)
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
public class Arrow extends MovieClip {
public var isFlame:Boolean;
public var inner;
public var targ:MovieClip;
public var damage:int;
public var direction:int;
public var dy:Number;
public var fireFX;
public var hit:Boolean;
public var hitbit;
public var dx:Number;
public var game:PlatformGame;
public function Arrow(){
addFrameScript(0, frame1, 1, frame2);
damage = 25;
}
public function hitSomething(){
var _local1:Timer;
hit = true;
_local1 = new Timer(750, 1);
_local1.start();
_local1.addEventListener(TimerEvent.TIMER_COMPLETE, endTime);
}
public function endTime(_arg1:Event){
deleteMe();
}
function frame1(){
stop();
}
function frame2(){
stop();
}
public function updateFlight(_arg1){
var _local2:*;
var _local3:int;
if (targ == null){
} else {
dx = targ.dx;
dy = targ.dy;
};
x = (x + (dx * _arg1));
y = (y + (dy * _arg1));
_local2 = Math.atan((dy / dx));
_local2 = ((180 / Math.PI) * _local2);
if (targ == null){
rotation = _local2;
};
if ((((rotation > 90)) && ((dy < 0)))){
rotation = (rotation - 180);
};
if ((((dx < 0)) && ((dy > 0)))){
};
if ((((((x > 700)) || ((x < -20)))) || ((y > 500)))){
deleteMe();
};
if (!hit){
_local3 = 0;
while (_local3 < game.enemies.length) {
if (game.enemies[_local3].monsterType != 28){
if (((game.enemies[_local3].inner.hitbithurt.hitTestObject(hitbit)) && (game.enemies[_local3].alive))){
if (game.enemies[_local3].monsterType == 26){
if (isFlame){
game.sounds.elementalhit.play();
} else {
game.sounds.elementalimmune.play();
deleteMe();
break;
};
};
game.enemies[_local3].takeDamage(damage);
targ = game.enemies[_local3];
hitSomething();
};
} else {
if (((game.enemies[_local3].inner.movewiz.hitbithurt.hitTestObject(hitbit)) && (game.enemies[_local3].alive))){
game.sounds.wizardimmune.play();
deleteMe();
break;
};
};
_local3++;
};
_local3 = 0;
while (_local3 < game.fixedObjects.length) {
if ((((game.fixedObjects[_local3].blocktype == 62)) && (!(game.fixedObjects[_local3].open)))){
if (game.fixedObjects[_local3].block62.inner.hitTestPoint(x, y, false)){
targ = game.fixedObjects[_local3];
hitSomething();
};
};
if ((((game.fixedObjects[_local3].blocktype == 63)) && (!(game.fixedObjects[_local3].open)))){
if (game.fixedObjects[_local3].block63.inner.hitTestPoint(x, y, false)){
targ = game.fixedObjects[_local3];
hitSomething();
};
};
_local3++;
};
_local3 = 0;
while (_local3 < game.lustras.length) {
if (game.lustras[_local3].hitbithurt.hitTestObject(hitbit)){
game.lustras[_local3].takeDamage(damage);
deleteMe();
};
_local3++;
};
};
}
public function deleteMe(){
game.removeArrow(this);
}
}
}//package
Section 110
//BadArrow (BadArrow)
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
public class BadArrow extends MovieClip {
public var arrowType:int;
public var thrower:Monster;
public var power:int;
public var damageType:int;
public var damage:int;
public var direction:int;
public var dy:Number;
public var dx:Number;
public var alive:Boolean;
public var game:PlatformGame;
public function BadArrow(){
addFrameScript(0, frame1, 1, frame2);
}
public function init(_arg1:Monster){
alive = true;
arrowType = _arg1.monsterType;
thrower = _arg1;
switch (arrowType){
case 23:
damage = 25;
damageType = 1;
dx = (0.3 * thrower.direction);
dy = -0.05;
x = (thrower.x - (6 * thrower.direction));
y = (thrower.y - 36);
scaleX = thrower.direction;
power = 0.5;
break;
case 28:
damage = 100;
damageType = 4;
gotoAndStop(2);
power = 0.5;
break;
};
}
public function endTime(_arg1:Event){
deleteMe();
}
function frame1(){
stop();
}
function frame2(){
stop();
}
public function updateFlight(_arg1){
var _local2:int;
var _local3:*;
if (arrowType == 23){
dy = (dy + (_arg1 * 0.0002));
};
if (arrowType == 28){
_local3 = Math.atan((dy / dx));
_local3 = ((180 / Math.PI) * _local3);
rotation = _local3;
if ((((rotation > 90)) && ((dy < 0)))){
rotation = (rotation - 180);
};
if (dx < 0){
rotation = (rotation - 180);
};
};
x = (x + (dx * _arg1));
y = (y + (dy * _arg1));
if ((((((x > 700)) || ((x < -20)))) || ((y > 500)))){
deleteMe();
};
if (game.hero.mc.hitTestPoint(x, y, true)){
if (thrower.monsterType == 28){
game.sounds.wizardlaugh2.play();
};
game.hero.takeDamage(damage, damageType, power, x);
deleteMe();
};
_local2 = 0;
while (_local2 < game.fixedObjects.length) {
if ((((game.fixedObjects[_local2].blocktype == 62)) && (!(game.fixedObjects[_local2].open)))){
if (game.fixedObjects[_local2].block62.inner.hitTestPoint(x, y, false)){
deleteMe();
};
};
if ((((game.fixedObjects[_local2].blocktype == 63)) && (!(game.fixedObjects[_local2].open)))){
if (game.fixedObjects[_local2].block63.inner.hitTestPoint(x, y, false)){
deleteMe();
};
};
_local2++;
};
}
public function deleteMe(){
game.removeBadArrow(this);
}
}
}//package
Section 111
//Block (Block)
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
public class Block extends MovieClip {
public var block60;
public var block61;
public var block62;
public var block63;
public var block64;
public var block65;
public var block66;
public var block68;
public var block69;
public var block67;
public var block70;
public var block71;
public var block72;
public var block73;
public var block75;
public var topside:Number;
public var block77;
public var block78;
public var block74;
public var block76;
public var block79;
public var block80;
public var block81;
public var block95;
public var prevY:Number;
public var prevX:Number;
public var dx:Number;
public var dy:Number;
public var alive:Boolean;
public var id:int;
public var block1;
public var block2;
public var block3;
public var blocktype:int;
public var block5;
public var block6;
public var block7;
public var block9;
public var block4;
public var doorid:int;
public var block8;
public var rightside:Number;
public var col:int;
public var row:int;
public var leftside:Number;
public var bottomside:Number;
public var destlevel:int;
public var open:Boolean;
public var destid:int;
public var block11;
public var block12;
public var block13;
public var block14;
public var block15;
public var block16;
public var block10;
public var block19;
public var block17;
public var block18;
public var block20;
public var block22;
public var block23;
public var block24;
public var block25;
public var block26;
public var block27;
public var block28;
public var block29;
public var block21;
public var block30;
public var block31;
public var block32;
public var block33;
public var block35;
public var block36;
public var block37;
public var block38;
public var block39;
public var block34;
public var block40;
public var block41;
public var block42;
public var block43;
public var block44;
public var block45;
public var block46;
public var block47;
public var block48;
public var block49;
public var block50;
public var block51;
public var block53;
public var block54;
public var block55;
public var block56;
public var block57;
public var block58;
public var block52;
public var game:PlatformGame;
public var block59;
public function Block(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30, 30, frame31, 31, frame32, 32, frame33, 33, frame34, 34, frame35, 35, frame36, 36, frame37, 37, frame38, 38, frame39, 39, frame40, 40, frame41, 41, frame42, 42, frame43, 43, frame44, 44, frame45, 45, frame46, 46, frame47, 47, frame48, 48, frame49, 49, frame50, 50, frame51, 51, frame52, 52, frame53, 53, frame54, 54, frame55, 55, frame56, 56, frame57, 57, frame58, 58, frame59, 59, frame60, 60, frame61, 61, frame62, 62, frame63, 63, frame64, 64, frame65, 65, frame66, 66, frame67, 67, frame68, 68, frame69, 69, frame70, 70, frame71, 71, frame72, 72, frame73, 73, frame74, 74, frame75, 75, frame76, 76, frame77, 77, frame78, 78, frame79, 94, frame95);
alive = true;
open = false;
prevX = (prevY = 0);
dx = (dy = 0);
}
function frame11(){
stop();
}
function frame15(){
stop();
}
function frame14(){
stop();
}
function frame16(){
stop();
}
function frame17(){
stop();
}
function frame18(){
stop();
}
function frame1(){
stop();
}
function frame3(){
stop();
}
function frame4(){
stop();
}
function frame5(){
stop();
}
function frame7(){
stop();
}
function frame8(){
stop();
}
function frame9(){
stop();
}
function frame22(){
stop();
}
function frame10(){
stop();
}
function frame24(){
stop();
}
function frame6(){
stop();
}
function frame13(){
stop();
}
function frame21(){
stop();
}
function frame2(){
stop();
}
function frame23(){
stop();
}
public function isHitting(_arg1:Sprite){
if (!alive){
return (false);
};
if (_arg1.hitTestObject(this)){
return (true);
};
return (false);
}
function frame12(){
stop();
}
function frame25(){
stop();
}
function frame26(){
stop();
}
function frame19(){
stop();
}
function frame29(){
stop();
}
function frame31(){
stop();
}
function frame34(){
stop();
}
function frame35(){
stop();
}
function frame36(){
stop();
}
function frame37(){
stop();
}
function frame38(){
stop();
}
function frame39(){
stop();
}
function frame20(){
stop();
}
function frame30(){
stop();
}
function frame27(){
stop();
}
public function deleteMe(){
game.removeBlock(this);
}
function frame33(){
stop();
}
function frame40(){
stop();
}
function frame42(){
stop();
}
function frame28(){
stop();
}
function frame44(){
stop();
}
function frame45(){
stop();
}
function frame46(){
stop();
}
function frame47(){
stop();
}
function frame48(){
stop();
}
function frame43(){
stop();
}
function frame49(){
stop();
}
function frame41(){
stop();
}
function frame32(){
stop();
}
function frame50(){
stop();
}
function frame51(){
stop();
}
function frame52(){
stop();
}
function frame53(){
stop();
}
function frame54(){
stop();
}
function frame56(){
stop();
}
function frame57(){
stop();
}
function frame58(){
stop();
}
function frame59(){
stop();
}
function frame55(){
stop();
}
function frame60(){
stop();
}
function frame61(){
stop();
}
function frame62(){
stop();
}
function frame63(){
stop();
}
function frame64(){
stop();
}
function frame65(){
stop();
}
function frame66(){
stop();
}
function frame67(){
stop();
}
function frame68(){
stop();
}
function frame69(){
stop();
}
function frame70(){
stop();
}
function frame71(){
stop();
}
function frame72(){
stop();
}
function frame73(){
stop();
}
function frame75(){
stop();
}
function frame77(){
stop();
}
function frame78(){
stop();
}
function frame79(){
stop();
}
public function openDoor(){
if (game.hero.alive){
game.loadLevel(destlevel, destid);
};
}
function frame74(){
stop();
}
function frame76(){
stop();
}
function frame95(){
stop();
}
public function setOpen(_arg1:Boolean){
open = _arg1;
}
public function crush(){
var _local1:int;
if (!alive){
return;
};
if ((((game.hero.mc.x > leftside)) && ((game.hero.mc.x < rightside)))){
if (this[("block" + blocktype)].hitbit.hitTestObject(game.hero.mc)){
game.hero.takeDamage(1000, 2, 0, x);
};
};
_local1 = 0;
while (_local1 < game.enemies.length) {
if ((((game.enemies[_local1].x > leftside)) && ((game.enemies[_local1].x < rightside)))){
if (this[("block" + blocktype)].hitbit.hitTestObject(game.enemies[_local1])){
game.enemies[_local1].takeDamage(1000);
};
};
_local1++;
};
}
public function endIt(){
alive = false;
this[("block" + blocktype)].gotoAndStop(1);
}
}
}//package
Section 112
//Hero (Hero)
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
public class Hero extends Sprite {
public var isHit:Boolean;
public var maxArrows;// = 100
public var moveDown:Boolean;
public var jump:Boolean;
public var charwidth:Number;
public var hitWallRight:Boolean;
public var isSkidding:Boolean;
public var moveUp:Boolean;
public var isClimbing:Boolean;
public var animstep:Number;
public var starty:Number;
public var isJumping:Boolean;
public var startx:Number;
public var gravity;
public var immune:Boolean;
public var walkSpeedMax:Number;
public var timeDiff:int;
public var dx:Number;
public var dy:Number;
public var isShooting:Boolean;
public var numArrows;
public var jumpSpeed:Number;
public var curHealth;
public var hasFlame:Boolean;
public var moveRight:Boolean;
public var alive:Boolean;
public var isOpening:Boolean;
public var angle:Number;
public var isTouchingDoor:Boolean;
public var maxHealth;
public var damType:int;
public var hasAmulet:Boolean;
public var isRising:Boolean;
public var animstate:String;
public var hasPulledLever:Boolean;
public var moveLeft:Boolean;
public var direction:int;
public var mc:MovieClip;
public var hasRuby:Boolean;
public var hitWallLeft:Boolean;
public var onPlat:Boolean;
public var walkAnimation:Array;
public var moveCount:int;
public var isPunched:Boolean;
public var isCrouching:Boolean;
public var inAir:Boolean;
public var game:PlatformGame;
public var charheight:Number;
public var walkSpeed:Number;
static const startArrows = 50;
static const startHealth = 100;
public function Hero(_arg1:PlatformGame){
maxArrows = 100;
super();
game = _arg1;
mc = game.gamelevel.hero;
mc.hero = this;
gravity = 0.0015;
timeDiff = 0;
walkAnimation = new Array(2, 3, 4, 5, 6, 7, 8, 9);
damType = 0;
jumpSpeed = 0.4;
walkSpeed = 0.00147;
walkSpeedMax = 0.2;
charwidth = 20;
charheight = 41;
hasFlame = (hasAmulet = (hasRuby = (hasPulledLever = false)));
numArrows = startArrows;
startx = mc.x;
starty = mc.y;
mc.hero = this;
mc.stop();
init();
}
public function getPunched(){
if (((!(isPunched)) && (alive))){
checkDead();
isPunched = true;
dy = -10;
};
}
public function getHasFlame(){
return (hasFlame);
}
public function shoot(){
numArrows--;
mc.rhand.gotoAndPlay(2);
setShooting(true);
if (hasFlame){
game.sounds.sintashootfire.play();
} else {
game.sounds.sintashootnormal.play();
};
}
public function addHealth(_arg1:int){
curHealth = (curHealth + _arg1);
if (curHealth > maxHealth){
curHealth = maxHealth;
};
}
public function die(_arg1:int){
var _local2:String;
if (alive){
isPunched = false;
game.playerLives--;
alive = false;
_local2 = ("die" + _arg1);
mc.gotoAndPlay(_local2);
if (_arg1 == 1){
game.sounds.sintadienormal.play();
};
if (_arg1 == 3){
game.sounds.sintaburn.play();
};
if (_arg1 == 4){
game.sounds.sintaelectricute.play();
};
};
}
public function doAim(){
var _local1:*;
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
if (((((((((((inAir) || (isShooting))) || (isOpening))) || (isHit))) || (!(alive)))) || ((mc.lhand == null)))){
return;
};
_local1 = mouseX;
_local2 = mouseY;
_local3 = (mc.x + mc.lhand.x);
_local4 = (mc.y + mc.lhand.y);
if (direction == 1){
if (_local1 < _local3){
direction = -1;
};
};
if (direction == -1){
if (_local1 > _local3){
direction = 1;
};
};
mc.scaleX = direction;
_local5 = Math.sqrt(game.GetDistSq(_local1, _local2, _local3, _local4));
_local6 = (_local4 - _local2);
_local7 = (_local3 - _local1);
angle = Math.acos((_local6 / _local5));
angle = (angle * (180 / Math.PI));
if (angle > 170){
angle = 170;
};
if (angle < 10){
angle = 10;
};
if (_local7 > 0){
};
if (animstate == "stand"){
if (mc.lhand != null){
mc.lhand.rotation = (angle - 150);
mc.rhand.rotation = (angle - 90);
if (hasFlame){
mc.lhand.arrowinner.gotoAndStop(2);
};
};
_local8 = (angle - 106);
_local9 = ((_local8 + mc.head.rotation) / 4);
mc.head.rotation = (_local9 - 8);
};
}
public function takeDamage(_arg1:int, _arg2:int, _arg3:Number, _arg4:int){
var _local5:int;
var _local6:Timer;
if (((!(alive)) || (immune))){
return;
};
isOpening = false;
damType = _arg2;
if ((((((damType == 3)) || ((damType == 4)))) && (hasAmulet))){
_arg1 = (_arg1 * 0.2);
};
if (_arg1 >= curHealth){
curHealth = 0;
die(_arg2);
} else {
game.sounds.sintahit.play();
mc.gotoAndPlay("hit");
};
isClimbing = false;
moveUp = (moveDown = (moveLeft = (moveRight = false)));
_local5 = 1;
if (_arg4 > mc.x){
_local5 = -1;
};
dx = (dx + (_arg3 * _local5));
isHit = true;
immune = true;
_local6 = new Timer(500, 1);
_local6.start();
_local6.addEventListener(TimerEvent.TIMER_COMPLETE, endImmune);
if (curHealth > 0){
curHealth = (curHealth - _arg1);
if (curHealth < 0){
curHealth = 0;
};
};
}
public function setStartPos(_arg1:Number, _arg2:Number){
mc.x = (startx = (_arg1 + 20));
mc.y = (starty = (_arg2 + 40));
mc.visible = true;
}
public function init(){
mc.gotoAndStop(1);
immune = false;
moveCount = 0;
isShooting = false;
onPlat = false;
alive = true;
dx = 0;
dy = 0;
inAir = false;
direction = 1;
mc.scaleX = 1;
animstate = "stand";
isHit = false;
timeDiff = 0;
curHealth = (maxHealth = startHealth);
damType = 0;
animstep = 0;
jump = false;
isJumping = false;
isSkidding = false;
isCrouching = false;
isRising = false;
isShooting = false;
isClimbing = false;
isOpening = false;
isTouchingDoor = false;
isPunched = false;
moveLeft = false;
moveRight = false;
moveDown = false;
}
public function endPunch(){
isPunched = false;
dy = 0;
if (alive){
game.loadLevel(4, 0);
} else {
checkDead();
};
}
public function continueGame(){
numArrows = startArrows;
init();
}
public function endImmune(_arg1:Event){
immune = false;
checkDead();
}
public function updateStats(){
game.healthbar.bar.width = (82 * (curHealth / maxHealth));
game.arrows_txt.text = String(numArrows);
game.lives_txt.text = String(game.playerLives);
}
public function moveHero(_arg1:Number){
var _local2:*;
var _local3:Number;
var _local4:*;
var _local5:String;
var _local6:int;
var _local7:Number;
var _local8:Number;
var _local9:int;
var _local10:*;
var _local11:*;
var _local12:*;
var _local13:*;
var _local14:Boolean;
var _local15:int;
var _local16:int;
if ((((_arg1 < 1)) || (!(game.isLoaded)))){
return;
};
if ((((numArrows == 0)) && ((((mc.currentFrame == 105)) || ((mc.currentFrame == 106)))))){
mc.lhand.arrowinner.visible = false;
} else {
if (((!(isShooting)) && ((((mc.currentFrame == 105)) || ((mc.currentFrame == 106)))))){
mc.lhand.arrowinner.visible = true;
};
};
if (isPunched){
mc.gotoAndPlay("hit");
if ((((((mc.x < -50)) || ((mc.x > 660)))) || ((mc.y > 500)))){
endPunch();
};
dy = (dy + 0.2);
mc.x = (mc.x + dx);
mc.y = (mc.y + dy);
checkDead();
return;
};
timeDiff = _arg1;
updateStats();
if (isOpening){
return;
};
_local2 = game.getTypeAt(game.getColFromX(mc.x), game.getRowFromY((mc.y - 50)));
if (((!(game.pressDown)) && (((moveDown) || (isCrouching))))){
if ((((_local2 < 5)) && (!((_local2 == 0))))){
moveDown = true;
isCrouching = true;
jump = false;
} else {
moveDown = false;
isCrouching = false;
};
};
_local3 = ((dy * timeDiff) + (timeDiff * gravity));
if (_local3 > (8 * (timeDiff / 17))){
_local3 = (8 * (timeDiff / 17));
};
dy = (dy + (timeDiff * gravity));
_local4 = 0;
_local5 = "stand";
_local6 = direction;
if (isHit){
moveLeft = (moveRight = (moveUp = (moveDown = false)));
};
if (isClimbing){
inAir = false;
_local3 = (_local3 - (timeDiff * gravity));
dy = 0;
_local5 = "climb";
if (moveUp){
dy = -0.085;
if ((((game.getTypeAt(game.getColFromX(mc.x), game.getRowFromY((mc.y - (charheight / 2)))) == 0)) || ((game.getTypeAt(game.getColFromX(mc.x), game.getRowFromY((mc.y - (charheight / 2)))) > 22)))){
isClimbing = false;
_local3 = (_local3 - 2);
};
};
if (moveDown){
dy = 0.085;
};
};
if (((moveLeft) || (((moveRight) && (!(isHit)))))){
moveCount++;
isSkidding = false;
isClimbing = false;
_local5 = "walk";
if (moveLeft){
_local6 = -1;
};
if (moveRight){
_local6 = 1;
};
if (!inAir){
dx = (dx + ((_local6 * walkSpeed) * timeDiff));
} else {
dx = (dx + (((_local6 * walkSpeed) * 0.2) * timeDiff));
};
} else {
if (((!(inAir)) && ((Math.abs(dy) < 0.025)))){
dy = 0;
};
if ((((((Math.abs(dx) > 0.1)) && ((dy == 0)))) && ((moveCount > 10)))){
};
if (Math.abs(dx) < 0.05){
dx = 0;
moveCount = 0;
};
};
if (Math.abs(dx) > walkSpeedMax){
if (dx < 0){
dx = -(walkSpeedMax);
} else {
dx = walkSpeedMax;
};
};
_local4 = (dx * timeDiff);
if (!inAir){
dx = (dx * (1 - (0.00882 * timeDiff)));
} else {
isSkidding = false;
};
if (((((moveDown) && (!(inAir)))) && (!(isClimbing)))){
dx = (dx * 0.5);
_local5 = "crouch";
};
if (((jump) && (!(isTouchingDoor)))){
jump = false;
if (!isClimbing){
dy = -(jumpSpeed);
_local3 = -(jumpSpeed);
_local5 = "jump";
};
};
hitWallRight = false;
hitWallLeft = false;
inAir = true;
_local7 = (mc.y + _local3);
_local8 = (mc.x + _local4);
_local9 = 0;
while (_local9 < game.fixedObjects.length) {
_local11 = game.fixedObjects[_local9];
if ((((_local11.blocktype > 10)) && ((_local11.blocktype < 19)))){
_local12 = _local11[("block" + _local11.blocktype)].inner;
if (((((mc.x + (charwidth / 2)) > (_local11.leftside + _local12.x))) && (((mc.x - (charwidth / 2)) < (_local11.rightside + _local12.x))))){
if ((((mc.y <= ((_local11.topside + _local12.y) + 5))) && ((_local7 > (_local11.topside + _local12.y))))){
_local7 = (_local11.topside + _local12.y);
if (_local12.x == undefined){
};
_local13 = (_local12.x - _local11.prevX);
if (Math.abs(_local13) > 10){
_local13 = 0;
};
_local8 = (_local8 + _local13);
_local7 = (_local7 + (_local12.y - _local11.prevY));
inAir = false;
};
};
_local11.prevX = _local12.x;
_local11.prevY = _local12.y;
};
if ((((_local11.blocktype < 11)) || ((((((((((_local11.blocktype > 61)) && ((_local11.blocktype < 66)))) || ((_local11.blocktype == 52)))) || ((_local11.blocktype == 54)))) && (!(_local11.open)))))){
if (((((mc.x + (charwidth / 2)) > _local11.leftside)) && (((mc.x - (charwidth / 2)) < _local11.rightside)))){
if (((((mc.y - charheight) > _local11.bottomside)) && (((_local7 - charheight) <= _local11.bottomside)))){
_local7 = (_local11.bottomside + charheight);
dy = 0;
break;
};
if ((((mc.y <= _local11.topside)) && ((_local7 > _local11.topside)))){
_local7 = _local11.topside;
if ((((dy > 0.05)) && ((((mc.currentLabel == "jumping")) || ((mc.currentLabel == "fall")))))){
_local5 = "skid";
};
dy = 0;
if ((((((((((((_local11.blocktype == 6)) || ((_local11.blocktype == 7)))) || ((_local11.blocktype == 8)))) || ((_local11.blocktype == 9)))) || ((_local11.blocktype == 10)))) && (moveDown))){
_local7 = (_local11.topside + 10);
inAir = false;
if (moveDown){
_local10 = true;
isClimbing = true;
_local5 = "climb";
_local8 = ((_local11.leftside + charwidth) - 2);
};
} else {
isClimbing = false;
dy = 0;
inAir = false;
};
break;
};
};
} else {
if (mc.hitbit.hitTestObject(_local11)){
if ((((_local11.blocktype == 51)) && (!(isHit)))){
if (mc.hitbit.hitTestObject(_local11.block51.spikebit)){
takeDamage(1000, 1, 0, (_local11.x + (_local11.width / 2)));
} else {
takeDamage(30, 1, 0.35, (_local11.x + (_local11.width / 2)));
};
};
if ((((_local11.blocktype == 53)) && (!(isHit)))){
if (mc.hitbit.hitTestObject(_local11.block53)){
takeDamage(250, 3, 0, (_local11.x + (_local11.width / 2)));
};
};
};
};
_local9++;
};
if (_local7 > 440){
_local7 = 440;
if ((((dy > 0.05)) && ((((mc.currentLabel == "jumping")) || ((mc.currentLabel == "fall")))))){
_local5 = "skid";
};
dy = 0;
inAir = false;
};
_local10 = false;
isTouchingDoor = false;
_local9 = 0;
while (_local9 < game.fixedObjects.length) {
_local11 = game.fixedObjects[_local9];
if ((((_local11.blocktype < 6)) || ((((((((((_local11.blocktype > 61)) && ((_local11.blocktype < 66)))) || ((_local11.blocktype == 52)))) || ((_local11.blocktype == 54)))) && (!(_local11.open)))))){
if ((((_local7 > _local11.topside)) && (((_local7 - charheight) < _local11.bottomside)))){
if (((((mc.x - (charwidth / 2)) >= _local11.rightside)) && (((_local8 - (charwidth / 2)) <= _local11.rightside)))){
_local8 = (_local11.rightside + (charwidth / 2));
hitWallLeft = true;
dx = 0;
break;
};
if (((((mc.x + (charwidth / 2)) <= _local11.leftside)) && (((_local8 + (charwidth / 2)) >= _local11.leftside)))){
_local8 = (_local11.leftside - (charwidth / 2));
hitWallRight = true;
dx = 0;
break;
};
};
} else {
if (_local11.isHitting(mc.hitbit)){
if ((((((((((((((_local11.blocktype == 19)) || ((_local11.blocktype == 20)))) || ((_local11.blocktype == 6)))) || ((_local11.blocktype == 7)))) || ((_local11.blocktype == 8)))) || ((_local11.blocktype == 9)))) || ((_local11.blocktype == 10)))){
_local10 = true;
inAir = false;
_local14 = false;
_local15 = game.getColFromX(mc.x);
_local16 = game.getRowFromY(mc.y);
if (game.getTypeAt(_local15, (_local16 + 1)) < 6){
_local14 = true;
};
if (((moveUp) || (((moveDown) && (!(_local14)))))){
isClimbing = true;
_local5 = "climb";
_local8 = ((_local11.leftside + charwidth) - 2);
};
};
if ((((_local11.blocktype > 40)) && ((_local11.blocktype < 51)))){
if (_local11.blocktype == 41){
game.gotStars[game.curLevel][_local11.id] = 1;
};
if (_local11.blocktype == 42){
game.gotLives[game.curLevel][_local11.id] = 1;
};
game.getPowerup(_local11);
};
if ((((_local11.blocktype > 50)) && ((_local11.blocktype < 56)))){
game.hitTrap(_local11);
};
if ((((_local11.blocktype > 32)) && ((_local11.blocktype < 41)))){
if ((((mc.x > (_local11.leftside + 8))) && ((mc.x < (_local11.rightside - 8))))){
isTouchingDoor = true;
jump = false;
if (((((moveUp) && (!(isOpening)))) && (!(inAir)))){
if (_local11.blocktype == 36){
if (hasRuby){
if (!game.placedRuby){
game.placedRuby = true;
};
_local8 = (_local11.leftside + 34);
} else {
break;
};
} else {
_local8 = (_local11.leftside + 20);
};
_local11[("block" + _local11.blocktype)].play();
mc.gotoAndPlay("open");
_local5 = "open";
isOpening = true;
if ((((_local11.blocktype == 38)) && ((game.curLevel == 17)))){
hasPulledLever = true;
};
break;
};
};
};
};
};
_local9++;
};
if (!_local10){
isClimbing = false;
};
if (_local8 > 630){
_local8 = 630;
hitWallRight = true;
dx = 0;
};
if (_local8 < 10){
_local8 = 10;
hitWallLeft = true;
dx = 0;
};
mc.x = _local8;
mc.y = _local7;
if (inAir){
_local5 = "jump";
} else {
isJumping = false;
};
animstate = _local5;
if (isHit){
animstate = "hit";
};
if ((((((animstate == "walk")) || ((animstate == "crouch")))) || ((((((animstate == "climb")) && (((((((moveLeft) || (moveRight))) || (moveUp))) || (moveDown))))) && (!(isHit)))))){
animstep = (animstep + (timeDiff / 60));
if (animstep > walkAnimation.length){
animstep = 0;
};
if (((isClimbing) && (((moveUp) || (moveDown))))){
mc.gotoAndStop((walkAnimation[Math.floor(animstep)] + 25));
} else {
if (((moveDown) && (!(isClimbing)))){
if (((moveLeft) || (moveRight))){
mc.gotoAndStop((walkAnimation[Math.floor(animstep)] + 12));
};
} else {
mc.gotoAndStop(walkAnimation[Math.floor(animstep)]);
};
};
} else {
if ((((((((animstate == "jump")) && (!(isJumping)))) && (!(isClimbing)))) && (!(isHit)))){
isJumping = true;
mc.gotoAndPlay("jump");
};
};
if ((((((animstate == "skid")) && (!(isSkidding)))) && (!(isHit)))){
isSkidding = true;
game.sounds.sintaland.play();
mc.gotoAndPlay(animstate);
};
if ((((((animstate == "stand")) && (!(isSkidding)))) && (!(isHit)))){
if (mc.currentLabel != "stand"){
mc.gotoAndPlay("stand");
};
};
if (((((((moveDown) && (!(isCrouching)))) && (!(inAir)))) && (!(isHit)))){
isCrouching = true;
charheight = 30;
mc.gotoAndPlay(animstate);
};
if (!isCrouching){
charheight = 41;
};
if (((((((!(moveDown)) && ((animstate == "crouch")))) && (!(isRising)))) && (!(isHit)))){
isRising = true;
animstate = "rise";
mc.gotoAndPlay(animstate);
};
if (_local6 != direction){
direction = _local6;
mc.scaleX = direction;
};
}
public function resetLevel(_arg1:Event){
if (game.playerLives <= 0){
game.gameOver();
} else {
init();
game.resetLevel();
};
}
public function addArrows(_arg1:int){
numArrows = (numArrows + _arg1);
if (numArrows > maxArrows){
numArrows = maxArrows;
};
}
public function endDie(){
var _local1:Timer;
_local1 = new Timer(1500, 1);
_local1.start();
_local1.addEventListener(TimerEvent.TIMER_COMPLETE, resetLevel);
}
public function checkDead(){
if (curHealth <= 0){
isPunched = false;
die(damType);
} else {
isHit = false;
if (game.pressDown){
moveDown = true;
};
if (game.pressUp){
moveUp = true;
};
if (game.pressLeft){
moveLeft = true;
};
if (game.pressRight){
moveRight = true;
};
};
}
public function setShooting(_arg1:Boolean){
isShooting = _arg1;
mc.lhand.arrowinner.visible = _arg1;
}
}
}//package
Section 113
//Lustra (Lustra)
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
public class Lustra extends MovieClip {
public var startX:Number;
public var startY:Number;
public var damageType:int;
public var gravity:Number;
public var blocktype:int;
public var health:int;
public var damage:int;
public var falling:Boolean;
public var dy:Number;
public var hit:Boolean;
public var hitbithurt;
public var dx:Number;
public var alive:Boolean;
public var hitbitbite;
public var game:PlatformGame;
public function Lustra(_arg1:PlatformGame){
addFrameScript(73, frame74, 87, frame88, 312, frame313);
game = _arg1;
gravity = 0.03;
damage = 101;
damageType = 2;
dy = 0;
init();
}
function frame313(){
regen();
stop();
}
public function smash(){
if (alive){
alive = false;
gotoAndPlay("smash");
};
}
public function init(){
falling = false;
hit = false;
alive = true;
dy = 0;
health = 60;
}
function frame74(){
stop();
}
function frame88(){
checkDead();
gotoAndStop("start");
}
public function regen(){
gotoAndPlay(1);
x = startX;
y = startY;
init();
}
public function fall(){
falling = true;
}
public function checkDead(){
if (health == 0){
fall();
};
}
public function update(_arg1:Number){
var _local2:int;
var _local3:*;
if (falling){
if (!hit){
dy = (dy + (gravity * _arg1));
};
y = (y + dy);
};
if (falling){
_local2 = 0;
while (_local2 < game.enemies.length) {
if (game.enemies[_local2].monsterType != 28){
if (((game.enemies[_local2].inner.hitbithurt.hitTestObject(hitbitbite)) && (game.enemies[_local2].alive))){
if (!hit){
game.enemies[_local2].takeDamage(damage);
};
smash();
hit = true;
break;
};
} else {
if (((game.enemies[_local2].inner.movewiz.hitbithurt.hitTestObject(hitbitbite)) && (game.enemies[_local2].alive))){
if (!hit){
game.sounds.wizardhit.play();
game.enemies[_local2].takeDamage(damage);
};
hit = true;
smash();
break;
};
};
_local2++;
};
if (((((!(hit)) && (game.hero.alive))) && (game.hero.mc.hitTestObject(hitbitbite)))){
game.hero.takeDamage(damage, damageType, 0, x);
hit = true;
smash();
};
_local2 = 0;
while (_local2 < game.fixedObjects.length) {
_local3 = game.fixedObjects[_local2];
if (_local3.blocktype < 11){
if (((((x + 80) > _local3.leftside)) && ((x < _local3.rightside)))){
if ((y + 85) > _local3.topside){
hit = true;
y = (_local3.topside - 85);
dy = 0;
smash();
break;
};
};
};
_local2++;
};
if ((((((x > 700)) || ((x < -20)))) || ((y > (440 - height))))){
hit = true;
dy = 0;
smash();
};
};
}
public function takeDamage(_arg1){
if (!hit){
health = (health - _arg1);
if (health < 0){
health = 0;
};
gotoAndPlay("hit");
};
}
}
}//package
Section 114
//MochiAd (MochiAd)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.net.*;
import flash.system.*;
public class MochiAd {
public static function getVersion():String{
return ("2.2");
}
public static function showTimedAd(_arg1:Object):void{
_slot1.showInterLevelAd(_arg1);
}
public static function _allowDomains(_arg1:String):String{
var _local2:String;
_local2 = _arg1.split("/")[2].split(":")[0];
Security.allowDomain("*");
Security.allowDomain(_local2);
Security.allowInsecureDomain("*");
Security.allowInsecureDomain(_local2);
return (_local2);
}
public static function load(_arg1:Object):MovieClip{
var DEFAULTS:Object;
var clip:Object;
var depth:Number;
var mc:MovieClip;
var wh:Array;
var lv:URLVariables;
var k:String;
var server:String;
var hostname:String;
var lc:LocalConnection;
var name:String;
var loader:Loader;
var f:Function;
var g:Function;
var req:URLRequest;
var v:Object;
var options = _arg1;
DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = _slot1._parseOptions(options, DEFAULTS);
options.swfv = 9;
options.mav = _slot1.getVersion();
clip = options.clip;
if (!_slot1._isNetworkAvailable()){
return (null);
};
try {
if (clip._mochiad_loaded){
return (null);
};
} catch(e:Error) {
throw (new Error("MochiAd requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic."));
};
depth = options.depth;
delete options.depth;
mc = createEmptyMovieClip(clip, "_mochiad", depth);
wh = _slot1._getRes(options, clip);
options.res = ((wh[0] + "x") + wh[1]);
options.server = (options.server + options.id);
delete options.id;
clip._mochiad_loaded = true;
if (clip.loaderInfo.loaderURL.indexOf("http") == 0){
options.as3_swf = clip.loaderInfo.loaderURL;
};
lv = new URLVariables();
for (k in options) {
v = options[k];
if (!(v is Function)){
lv[k] = v;
};
};
server = lv.server;
delete lv.server;
hostname = _allowDomains(server);
lc = new LocalConnection();
lc.client = mc;
name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_");
lc.allowDomain("*", "localhost");
lc.allowInsecureDomain("*", "localhost");
lc.connect(name);
mc.lc = lc;
lv.lc = name;
lv.st = getTimer();
loader = new Loader();
f = function (_arg1:Object):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
mc._mochiad_ctr_failed = true;
};
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f);
g = function (_arg1:Object):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
_slot1.unload(clip);
};
loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g);
req = new URLRequest((server + ".swf"));
req.contentType = "application/x-www-form-urlencoded";
req.method = URLRequestMethod.POST;
req.data = lv;
loader.load(req);
mc.addChild(loader);
mc._mochiad_ctr = loader;
return (mc);
}
public static function sendHighScore(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{
var _local4:MovieClip;
_local4 = _slot1._loadCommunicator({clip:_arg1.clip, id:_arg1.id});
if (!_local4){
return (false);
};
_local4.doSend(["sendHighScore", _arg1], _arg2, _arg3);
return (true);
}
public static function _parseOptions(_arg1:Object, _arg2:Object):Object{
var _local3:Object;
var _local4:String;
var _local5:Array;
var _local6:Number;
var _local7:Array;
_local3 = {};
for (_local4 in _arg2) {
_local3[_local4] = _arg2[_local4];
};
if (_arg1){
for (_local4 in _arg1) {
_local3[_local4] = _arg1[_local4];
};
};
if (_local3.clip == undefined){
throw (new Error("MochiAd is missing the 'clip' parameter. This should be a MovieClip, Sprite or an instance of a class that extends MovieClip or Sprite."));
};
_arg1 = _local3.clip.loaderInfo.parameters.mochiad_options;
if (_arg1){
_local5 = _arg1.split("&");
_local6 = 0;
while (_local6 < _local5.length) {
_local7 = _local5[_local6].split("=");
_local3[unescape(_local7[0])] = unescape(_local7[1]);
_local6++;
};
};
if (_local3.id == "test"){
};
return (_local3);
}
public static function _isNetworkAvailable():Boolean{
return (!((Security.sandboxType == "localWithFile")));
}
public static function _cleanup(_arg1:Object):void{
var idx:Number;
var k:String;
var lc:LocalConnection;
var f:Function;
var mc = _arg1;
if (("lc" in mc)){
lc = mc.lc;
f = function ():void{
try {
lc.client = null;
lc.close();
} catch(e:Error) {
};
};
setTimeout(f, 0);
};
idx = DisplayObjectContainer(mc).numChildren;
while (idx > 0) {
idx = (idx - 1);
DisplayObjectContainer(mc).removeChildAt(idx);
};
for (k in mc) {
delete mc[k];
};
}
public static function unload(_arg1:Object):Boolean{
if (((_arg1.clip) && (_arg1.clip._mochiad))){
_arg1 = _arg1.clip;
};
if (!_arg1._mochiad){
return (false);
};
if (_arg1._mochiad.onUnload){
_arg1._mochiad.onUnload();
};
delete _arg1._mochiad_loaded;
delete _arg1._mochiad;
return (true);
}
public static function showInterLevelAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_msec:Number;
var ad_timeout:Number;
var fadeout_time:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var options = _arg1;
DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{
if ((this.clip is MovieClip)){
this.clip.stop();
} else {
throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_finished:function ():void{
if ((this.clip is MovieClip)){
this.clip.play();
} else {
throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}};
options = _slot1._parseOptions(options, DEFAULTS);
clip = options.clip;
ad_msec = 11000;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!_slot1.load(options)){
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
_slot1._cleanup(mc);
options.ad_finished();
};
wh = _slot1._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.ad_msec = ad_msec;
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function ():void{
var _local1:Number;
if (!this.parent){
delete this.onEnterFrame;
delete this.fadeFunction;
return;
};
_local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)));
if (_local1 > 0){
this.parent.alpha = (_local1 * 0.01);
} else {
_slot1.unload(clip);
delete this["onEnterFrame"];
};
};
mc.unloadAd = function ():void{
_slot1.unload(clip);
};
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object;
_local2 = mc._mochiad_wait;
_local2.server_control = true;
_local2.showing = true;
_local2.started = getTimer();
_local2.ad_msec = (_arg1 - 250);
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Number;
var _local3:Boolean;
var _local4:Number;
if (!this.parent){
delete this.onEnterFrame;
delete this.fadeFunction;
return;
};
_local1 = this.parent._mochiad_ctr;
_local2 = (getTimer() - this.started);
_local3 = false;
if (!chk.showing){
_local4 = _local1.loaderInfo.bytesTotal;
if ((((_local4 > 0)) || (("number" == "undefined")))){
chk.showing = true;
chk.started = getTimer();
} else {
if (_local2 > chk.ad_timeout){
_local3 = true;
};
};
};
if ((((_local2 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){
_local3 = true;
};
if (_local3){
if (this.server_control){
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
};
};
};
doOnEnterFrame(chk);
}
public static function _getRes(_arg1:Object, _arg2:Object):Array{
var _local3:Object;
var _local4:Number;
var _local5:Number;
var _local6:Array;
_local3 = _arg2.getBounds(_arg2.root);
_local4 = 0;
_local5 = 0;
if (typeof(_arg1.res) != "undefined"){
_local6 = _arg1.res.split("x");
_local4 = parseFloat(_local6[0]);
_local5 = parseFloat(_local6[1]);
} else {
_local4 = (_local3.xMax - _local3.xMin);
_local5 = (_local3.yMax - _local3.yMin);
};
if ((((_local4 == 0)) || ((_local5 == 0)))){
_local4 = _arg2.stage.stageWidth;
_local5 = _arg2.stage.stageHeight;
};
return ([_local4, _local5]);
}
public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{
var _local4:MovieClip;
_local4 = new MovieClip();
if (((false) && (_arg3))){
_arg1.addChildAt(_local4, _arg3);
} else {
_arg1.addChild(_local4);
};
_arg1[_arg2] = _local4;
_local4["_name"] = _arg2;
return (_local4);
}
public static function _loadCommunicator(_arg1:Object):MovieClip{
var DEFAULTS:Object;
var clip:Object;
var clipname:String;
var server:String;
var depth:Number;
var mc:MovieClip;
var lv:URLVariables;
var k:String;
var lc:LocalConnection;
var name:String;
var req:URLRequest;
var loader:Loader;
var options = _arg1;
DEFAULTS = {com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"};
options = _slot1._parseOptions(options, DEFAULTS);
options.swfv = 9;
options.mav = _slot1.getVersion();
clip = options.clip;
clipname = ("_mochiad_com_" + options.id);
if (!_slot1._isNetworkAvailable()){
return (null);
};
if (clip[clipname]){
return (clip[clipname]);
};
server = (options.com_server + options.id);
_slot1._allowDomains(server);
delete options.id;
delete options.com_server;
depth = options.depth;
delete options.depth;
mc = createEmptyMovieClip(clip, clipname, depth);
lv = new URLVariables();
for (k in options) {
lv[k] = options[k];
};
lc = new LocalConnection();
lc.client = mc;
name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_");
lc.allowDomain("*", "localhost");
lc.allowInsecureDomain("*", "localhost");
lc.connect(name);
mc.name = name;
mc.lc = lc;
lv.lc = name;
mc._id = 0;
mc._queue = [];
mc.rpcResult = function (_arg1:Object):void{
var _local3:Array;
var _local4:Array;
var _local5:Number;
var _local6:Object;
var _local7:Object;
_arg1 = parseInt(_arg1.toString());
_local3 = mc._callbacks[_arg1];
if (typeof(_local3) == "undefined"){
return;
};
delete mc._callbacks[_arg1];
_local4 = [];
_local5 = 2;
while (_local5 < _local3.length) {
_local4.push(_local3[_local5]);
_local5++;
};
_local5 = 1;
while (_local5 < arguments.length) {
_local4.push(arguments[_local5]);
_local5++;
};
_local6 = _local3[1];
_local7 = _local3[0];
if (((_local7) && ((typeof(_local6) == "string")))){
_local6 = _local7[_local6];
};
if (typeof(_local6) == "function"){
_local6.apply(_local7, _local4);
};
};
mc._didConnect = function (_arg1:String):void{
var _local2:Array;
var _local3:Function;
var _local4:Number;
var _local5:Array;
mc._endpoint = _arg1;
_local2 = mc._queue;
delete mc._queue;
_local3 = mc.doSend;
_local4 = 0;
while (_local4 < _local2.length) {
_local5 = _local2[_local4];
_local3.apply(this, _local5);
_local4++;
};
};
mc.doSend = function (_arg1:Array, _arg2:Object, _arg3:Object):void{
var _local5:Number;
var _local6:LocalConnection;
var _local7:Array;
var _local8:Number;
if (mc._endpoint == null){
_local7 = [];
_local8 = 0;
while (_local8 < arguments.length) {
_local7.push(arguments[_local8]);
_local8++;
};
mc._queue.push(_local7);
return;
};
mc._id = (mc._id + 1);
_local5 = mc._id;
mc._callbacks[_local5] = [_arg2, ((_arg3) || (_arg2))];
_local6 = new LocalConnection();
_local6.send(mc._endpoint, "rpc", _local5, _arg1);
};
mc._callbacks = {};
mc._callbacks[0] = [mc, "_didConnect"];
lv.st = getTimer();
req = new URLRequest((server + ".swf"));
req.contentType = "application/x-www-form-urlencoded";
req.method = URLRequestMethod.POST;
req.data = lv;
loader = new Loader();
loader.load(req);
mc.addChild(loader);
mc._mochiad_com = loader;
return (mc);
}
public static function showPreGameAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_msec:Number;
var ad_timeout:Number;
var fadeout_time:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var bar:MovieClip;
var bar_color:Number;
var bar_background:Number;
var bar_outline:Number;
var backing_mc:MovieClip;
var backing:Object;
var inside_mc:MovieClip;
var inside:Object;
var outline_mc:MovieClip;
var outline:Object;
var complete:Boolean;
var unloaded:Boolean;
var f:Function;
var r:MovieClip;
var options = _arg1;
DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, ad_started:function ():void{
if ((this.clip is MovieClip)){
this.clip.stop();
} else {
throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_finished:function ():void{
if ((this.clip is MovieClip)){
this.clip.play();
} else {
throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}};
options = _slot1._parseOptions(options, DEFAULTS);
clip = options.clip;
ad_msec = 11000;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!_slot1.load(options)){
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
var fn:Function;
_slot1._cleanup(mc);
fn = function ():void{
options.ad_finished();
};
setTimeout(fn, 100);
};
wh = _slot1._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.x = (w * -0.5);
chk.y = (h * -0.5);
bar = createEmptyMovieClip(chk, "_mochiad_bar", 4);
bar.x = 10;
bar.y = (h - 20);
bar_color = options.color;
delete options.color;
bar_background = options.background;
delete options.background;
bar_outline = options.outline;
delete options.outline;
backing_mc = createEmptyMovieClip(bar, "_outline", 1);
backing = backing_mc.graphics;
backing.beginFill(bar_background);
backing.moveTo(0, 0);
backing.lineTo((w - 20), 0);
backing.lineTo((w - 20), 10);
backing.lineTo(0, 10);
backing.lineTo(0, 0);
backing.endFill();
inside_mc = createEmptyMovieClip(bar, "_inside", 2);
inside = inside_mc.graphics;
inside.beginFill(bar_color);
inside.moveTo(0, 0);
inside.lineTo((w - 20), 0);
inside.lineTo((w - 20), 10);
inside.lineTo(0, 10);
inside.lineTo(0, 0);
inside.endFill();
inside_mc.scaleX = 0;
outline_mc = createEmptyMovieClip(bar, "_outline", 3);
outline = outline_mc.graphics;
outline.lineStyle(0, bar_outline, 100);
outline.moveTo(0, 0);
outline.lineTo((w - 20), 0);
outline.lineTo((w - 20), 10);
outline.lineTo(0, 10);
outline.lineTo(0, 0);
chk.ad_msec = ad_msec;
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function ():void{
var _local1:Number;
_local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)));
if (_local1 > 0){
this.parent.alpha = (_local1 * 0.01);
} else {
_slot1.unload(clip);
delete this["onEnterFrame"];
};
};
complete = false;
unloaded = false;
f = function (_arg1:Event):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
complete = true;
if (unloaded){
_slot1.unload(clip);
};
};
clip.loaderInfo.addEventListener(Event.COMPLETE, f);
if ((clip.root is MovieClip)){
r = (clip.root as MovieClip);
if (r.framesLoaded >= r.totalFrames){
complete = true;
};
};
mc.unloadAd = function ():void{
unloaded = true;
if (complete){
_slot1.unload(clip);
};
};
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object;
_local2 = mc._mochiad_wait;
_local2.server_control = true;
_local2.showing = true;
_local2.started = getTimer();
_local2.ad_msec = _arg1;
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Object;
var _local3:Number;
var _local4:Boolean;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Object;
var _local10:Number;
var _local11:Number;
if (!this.parent.parent){
delete this["onEnterFrame"];
return;
};
_local1 = this.parent.parent.root;
_local2 = this.parent._mochiad_ctr;
_local3 = (getTimer() - this.started);
_local4 = false;
_local5 = _local1.loaderInfo.bytesTotal;
_local6 = _local1.loaderInfo.bytesLoaded;
if (complete){
_local6 = Math.max(1, _local6);
_local5 = _local6;
};
_local7 = ((100 * _local6) / _local5);
_local8 = ((100 * _local3) / chk.ad_msec);
_local9 = this._mochiad_bar._inside;
_local10 = Math.min(100, Math.min(((_local7) || (0)), _local8));
_local10 = Math.max(this.last_pcnt, _local10);
this.last_pcnt = _local10;
_local9.scaleX = (_local10 * 0.01);
if (!chk.showing){
_local11 = _local2.loaderInfo.bytesTotal;
if ((((_local11 > 0)) || (("number" == "undefined")))){
chk.showing = true;
chk.started = getTimer();
} else {
if (_local3 > chk.ad_timeout){
_local4 = true;
};
};
};
if ((((_local3 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){
_local4 = true;
};
if (((complete) && (_local4))){
if (this.server_control){
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
};
};
};
doOnEnterFrame(chk);
}
public static function showPreloaderAd(_arg1:Object):void{
_slot1.showPreGameAd(_arg1);
}
public static function fetchHighScores(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{
var _local4:MovieClip;
_local4 = _slot1._loadCommunicator({clip:_arg1.clip, id:_arg1.id});
if (!_local4){
return (false);
};
_local4.doSend(["fetchHighScores", _arg1], _arg2, _arg3);
return (true);
}
public static function doOnEnterFrame(_arg1:MovieClip):void{
var f:Function;
var mc = _arg1;
f = function (_arg1:Object):void{
if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){
mc.onEnterFrame();
} else {
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
};
};
mc.addEventListener(Event.ENTER_FRAME, f);
}
}
}//package
Section 115
//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{
var _local3:MochiBot;
var _local4:String;
var _local5:URLVariables;
var _local6:String;
var _local7:URLRequest;
var _local8:Loader;
if (Security.sandboxType == "localWithFile"){
return (null);
};
_local3 = new (MochiBot);
_arg1.addChild(_local3);
Security.allowDomain("core.mochibot.com");
Security.allowInsecureDomain("core.mochibot.com");
_local4 = "http://core.mochibot.com/my/core.swf";
_local5 = new URLVariables();
_local5["sb"] = Security.sandboxType;
_local5["v"] = Capabilities.version;
_local5["swfid"] = _arg2;
_local5["mv"] = "8";
_local5["fv"] = "9";
_local6 = _local3.root.loaderInfo.loaderURL;
if (_local6.indexOf("http") == 0){
_local5["url"] = _local6;
} else {
_local5["url"] = "local";
};
_local7 = new URLRequest(_local4);
_local7.contentType = "application/x-www-form-urlencoded";
_local7.method = URLRequestMethod.POST;
_local7.data = _local5;
_local8 = new Loader();
_local3.addChild(_local8);
_local8.load(_local7);
return (_local3);
}
}
}//package
Section 116
//Monster (Monster)
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
public class Monster extends MovieClip {
public var moveDown:Boolean;
public var stopCount:int;
public var hitWallRight:Boolean;
public var charwidth:Number;
public var monsterType:int;
public var sleepTime:int;
public var moveUp:Boolean;
public var gravity:Number;
public var inner;
public var roared:Boolean;
public var finished:Boolean;
public var isAttacking:Boolean;
public var dx:Number;
public var dy:Number;
public var wizdirection:String;
public var oneFrame;
public var moveRight:Boolean;
public var alive:Boolean;
public var generator:MonsterGenerator;
public var curHealth;
public var damType;
public var animstate:String;
public var testID:int;
public var theTimer:Timer;
public var startHealth;
public var damage;
public var moveLeft:Boolean;
public var direction:int;
public var col:int;
public var hitWallLeft:Boolean;
public var hidden:Boolean;
public var stopped:Boolean;
public var row:int;
public var inAir:Boolean;
public var game:PlatformGame;
public var charheight:Number;
public var walkSpeed:Number;
public function Monster(_arg1:PlatformGame){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11);
game = _arg1;
finished = false;
}
public function startTimer(){
if (finished){
return;
};
sleepTime = (Math.ceil((Math.random() * 3)) + 3);
stopCount = 0;
if (theTimer == null){
theTimer = new Timer(1000, 0);
theTimer.start();
theTimer.addEventListener(TimerEvent.TIMER, timerTick);
};
}
public function shootCheck(){
var _local1:Boolean;
if (finished){
return;
};
if (((stopped) && (game.hero.alive))){
_local1 = false;
if (game.getRowFromY(game.hero.mc.y) == game.getRowFromY(y)){
if (direction == 1){
if (x < game.hero.mc.x){
_local1 = true;
};
};
if (direction == -1){
if (x > game.hero.mc.x){
_local1 = true;
};
};
if (_local1){
inner.gotoAndPlay("attack");
isAttacking = true;
game.throwAxe(this);
};
};
};
}
function frame10(){
stop();
}
public function regen(){
endTimer();
init();
stopped = false;
}
function frame3(){
stop();
}
function frame4(){
stop();
}
function frame7(){
stop();
}
function frame1(){
stop();
}
function frame6(){
stop();
}
function frame9(){
stop();
}
function frame2(){
stop();
}
function frame5(){
stop();
}
public function die(){
if (finished){
return;
};
alive = false;
dx = (dy = 0);
if ((((monsterType == 25)) || ((monsterType == 27)))){
moveUp = false;
moveDown = true;
gravity = 0.02;
};
if (monsterType == 28){
game.wizardDead = true;
inner.movewiz.gotoAndPlay("die");
game.sounds.wizarddie.play();
inner.stop();
} else {
inner.gotoAndPlay("die");
};
if (monsterType == 27){
game.sounds.barbdie.play();
};
endTimer();
}
function frame8(){
stop();
}
function frame11(){
stop();
}
public function timerTick(_arg1:Event){
if (finished){
return;
};
stopped = true;
if (alive){
shootCheck();
} else {
return;
};
if (stopped){
stopCount++;
if ((((stopCount >= sleepTime)) && (!(isAttacking)))){
stopCount = 0;
stopped = false;
inner.gotoAndPlay("walk");
};
} else {
stopped = true;
};
}
public function resetBarboolia(){
x = 4000;
y = 200;
if (game.diff == 0){
x = 5000;
};
roared = false;
alive = true;
}
public function update(_arg1:Number){
var _local2:*;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:int;
var _local7:*;
var _local8:int;
var _local9:int;
if (finished){
return;
};
if (((!(alive)) && ((monsterType == 24)))){
dy = 0;
};
if (((((((moveLeft) || (moveRight))) && (alive))) && (!(stopped)))){
if (((!((monsterType == 26))) && (!((monsterType == 27))))){
isAttacking = false;
};
dx = (direction * walkSpeed);
};
if (monsterType == 28){
if (oneFrame == 0){
oneFrame++;
} else {
if (oneFrame == 1){
oneFrame++;
visible = true;
inner.gotoAndPlay(100);
};
};
};
if (((stopped) && (alive))){
dx = 0;
if (!isAttacking){
if (monsterType != 28){
inner.gotoAndStop(1);
} else {
inner.movewiz.gotoAndStop(1);
};
};
};
_local2 = (dx * _arg1);
dy = (dy + gravity);
_local3 = (dy * _arg1);
if (_local3 > 10){
_local3 = 10;
};
hitWallRight = false;
hitWallLeft = false;
inAir = true;
_local4 = (y + _local3);
_local5 = (x + _local2);
if (((((((!((monsterType == 24))) && (!((monsterType == 25))))) && (!((monsterType == 27))))) && (!((monsterType == 28))))){
_local6 = 0;
while (_local6 < game.fixedObjects.length) {
_local7 = game.fixedObjects[_local6];
if ((((_local7.blocktype < 11)) || ((((((((((_local7.blocktype > 61)) && ((_local7.blocktype < 66)))) || ((_local7.blocktype == 52)))) || ((_local7.blocktype == 54)))) && (!(_local7.open)))))){
if (((((x + (charwidth / 2)) > _local7.leftside)) && (((x - (charwidth / 2)) < _local7.rightside)))){
if ((((((monsterType == 22)) || ((monsterType == 23)))) && ((Math.abs((_local7.topside - y)) < 10)))){
if (direction == 1){
if ((((game.getTypeAt((_local7.col + direction), _local7.row) == 0)) || ((game.getTypeAt((_local7.col + direction), _local7.row) > 10)))){
hitWallRight = true;
};
} else {
if ((((game.getTypeAt(game.getColFromX((x - (charwidth / 2))), _local7.row) == 0)) || ((game.getTypeAt(game.getColFromX((x - (charwidth / 2))), _local7.row) > 10)))){
hitWallLeft = true;
};
};
};
if ((((y <= _local7.topside)) && ((_local4 > _local7.topside)))){
_local4 = _local7.topside;
dy = 0;
inAir = false;
break;
};
};
};
_local6++;
};
if (_local4 > 440){
_local4 = 440;
dy = 0;
inAir = false;
};
_local6 = 0;
while (_local6 < game.fixedObjects.length) {
_local7 = game.fixedObjects[_local6];
if ((((((((_local7.blocktype < 6)) || ((_local7.blocktype == 53)))) || ((((_local7.blocktype == 51)) && (!((monsterType == 26))))))) || ((((_local7.blocktype == 62)) && (!(_local7.open)))))){
if ((((_local4 > _local7.topside)) && (((_local4 - (charheight * 0.9)) < _local7.bottomside)))){
if (((((x - (charwidth / 2)) >= _local7.rightside)) && (((_local5 - (charwidth / 2)) <= _local7.rightside)))){
_local5 = (_local7.rightside + (charwidth / 2));
hitWallLeft = true;
dx = 0;
break;
};
if (((((x + (charwidth / 2)) <= _local7.leftside)) && (((_local5 + (charwidth / 2)) >= _local7.leftside)))){
_local5 = (_local7.leftside - (charwidth / 2));
hitWallRight = true;
dx = 0;
break;
};
};
};
if (_local7.blocktype == 53){
if (inner.hitbitbite.hitTestObject(_local7.block53)){
takeDamage(150);
};
};
_local6++;
};
if (_local5 > 630){
_local5 = 630;
hitWallRight = true;
dx = 0;
};
if (_local5 < 10){
_local5 = 10;
hitWallLeft = true;
dx = 0;
};
x = _local5;
y = _local4;
if (hitWallRight){
moveLeft = true;
direction = -1;
moveRight = false;
} else {
if (hitWallLeft){
direction = 1;
moveLeft = false;
moveRight = true;
};
};
};
if (monsterType == 24){
if (!alive){
return;
};
dx = (dy = 0);
_local8 = Math.abs((game.getColFromX(game.hero.mc.x) - game.getColFromX(x)));
_local9 = Math.abs((game.getRowFromY(game.hero.mc.y) - game.getRowFromY(y)));
if ((((((_local8 <= 2)) && ((_local9 <= 2)))) && (hidden))){
show();
} else {
if ((((((((_local8 > 2)) || ((_local9 > 2)))) && (!(hidden)))) && (!(isAttacking)))){
hide();
};
};
if (((!(hidden)) && (!(isAttacking)))){
if ((((((_local8 <= 1)) && ((_local9 <= 1)))) && (game.hero.alive))){
isAttacking = true;
inner.gotoAndPlay("bite");
};
};
if ((((game.hero.mc.x > x)) && (!(hidden)))){
direction = 1;
};
if ((((game.hero.mc.x <= x)) && (!(hidden)))){
direction = -1;
};
};
if (monsterType == 25){
if (!alive){
inner.thread.visible = false;
} else {
visible = true;
inner.thread.scaleY = (((440 - generator.y) / 440) * ((y - generator.y) / (440 - generator.y)));
};
if (moveDown){
if (alive){
inner.gotoAndStop(4);
};
};
if (moveUp){
dy = -(walkSpeed);
};
if (((((moveDown) && ((y > 420)))) && (alive))){
inner.gotoAndPlay("walk");
moveUp = true;
dy = 0;
moveDown = false;
};
if (((moveUp) && ((y < (generator.y + 20))))){
moveUp = false;
dy = 0;
moveDown = true;
};
x = _local5;
y = _local4;
};
if (monsterType == 26){
_local8 = Math.abs((game.getColFromX(game.hero.mc.x) - game.getColFromX(x)));
_local9 = Math.abs((game.getRowFromY(game.hero.mc.y) - game.getRowFromY(y)));
if ((((_local9 == 0)) && (game.hero.alive))){
if (game.hero.mc.x > x){
direction = 1;
} else {
direction = -1;
};
};
if (((!(isAttacking)) && (alive))){
if ((((((_local8 <= 1)) && ((_local9 <= 1)))) && (game.hero.alive))){
isAttacking = true;
inner.gotoAndPlay("attack");
};
};
};
if ((((monsterType == 27)) && (!(game.wizardDead)))){
if ((((((x > 1200)) && ((x < 1400)))) && (!(roared)))){
roared = true;
game.sounds.barbroar.play();
};
_local8 = Math.abs((game.getColFromX(game.hero.mc.x) - game.getColFromX(x)));
_local9 = (game.getRowFromY(game.hero.mc.y) - game.getRowFromY(y));
if (((((alive) && (!(game.hero.isPunched)))) && (!(game.wizardDead)))){
if (_local8 > 1){
dx = (0.2 * direction);
};
if (_local9 > 0){
dy = 0.2;
};
if (_local9 < 0){
dy = -0.2;
};
if (_local9 == 0){
dy = 0;
};
if (game.hero.alive){
if (game.hero.mc.x > x){
direction = 1;
moveRight = true;
moveLeft = false;
} else {
direction = -1;
moveLeft = true;
moveRight = false;
};
};
};
if (((!(isAttacking)) && (alive))){
if ((((_local8 <= 3)) && (game.hero.alive))){
isAttacking = true;
inner.gotoAndPlay("attack");
};
};
if (game.hero.isPunched){
dy = 0;
};
x = (x + (dx * _arg1));
y = (y + (dy * _arg1));
};
if (monsterType == 28){
_local8 = Math.abs((game.getColFromX(game.hero.mc.x) - game.getColFromX((inner.movewiz.x + x))));
_local9 = (game.getRowFromY(game.hero.mc.y) - game.getRowFromY((inner.movewiz.y + y)));
if (alive){
if (game.hero.alive){
if (game.hero.mc.x > (inner.movewiz.x + x)){
direction = 1;
wizdirection = "right";
} else {
direction = -1;
wizdirection = "left";
};
};
};
} else {
scaleX = direction;
};
}
public function takeDamage(_arg1:int){
if (monsterType == 28){
inner.movewiz.gotoAndPlay(("hit" + wizdirection));
inner.stop();
};
if (((alive) && (!(hidden)))){
if (monsterType == 27){
game.sounds.barbhit.play();
};
curHealth = (curHealth - _arg1);
if (curHealth <= 0){
curHealth = 0;
die();
};
};
}
public function startWizardTimer(){
if (finished){
return;
};
if (theTimer == null){
theTimer = new Timer(3000, 0);
theTimer.start();
theTimer.addEventListener(TimerEvent.TIMER, wizShoot);
};
}
public function show(){
if (finished){
return;
};
isAttacking = false;
hidden = false;
inner.gotoAndPlay("show");
}
public function bite(){
if (finished){
return;
};
if (inner.hitbitbite.hitTestObject(game.hero.mc)){
game.hero.takeDamage(1000, 1, 0.3, x);
};
}
public function init(){
var _local1:*;
dx = (dy = 0);
gravity = 0.03;
alive = true;
stopped = false;
stopCount = 0;
hidden = false;
moveDown = (moveUp = false);
switch (monsterType){
case 22:
direction = 1;
moveLeft = false;
moveRight = true;
_local1 = Math.random();
if (_local1 < 0.5){
direction = -1;
moveLeft = true;
moveRight = false;
};
walkSpeed = 0.04;
startHealth = 20;
charwidth = 30;
charheight = 20;
damage = 20;
damType = 1;
break;
case 23:
stopped = true;
direction = 1;
moveLeft = false;
moveRight = true;
_local1 = Math.random();
if (_local1 < 0.5){
direction = -1;
moveLeft = true;
moveRight = false;
};
walkSpeed = 0.16;
startHealth = 20;
charwidth = 40;
charheight = 40;
damage = 15;
damType = 1;
startTimer();
break;
case 24:
direction = 1;
moveLeft = false;
moveRight = false;
walkSpeed = 0;
startHealth = 40;
charwidth = 40;
charheight = 40;
damage = 40;
damType = 1;
hidden = true;
break;
case 25:
direction = 1;
moveLeft = false;
moveRight = false;
moveDown = true;
walkSpeed = 0.1;
startHealth = 20;
charwidth = 40;
charheight = 40;
damage = 15;
damType = 1;
gravity = 0.02;
visible = false;
break;
case 26:
direction = 1;
moveLeft = false;
moveRight = true;
_local1 = Math.random();
if (_local1 < 0.5){
direction = -1;
moveLeft = true;
moveRight = false;
};
walkSpeed = 0.06;
startHealth = 120;
if (game.diff == 0){
startHealth = 80;
};
charwidth = 30;
charheight = 40;
damage = 10;
damType = 1;
break;
case 27:
direction = 1;
moveLeft = false;
moveRight = true;
walkSpeed = 1.3;
startHealth = 90;
charwidth = 30;
charheight = 40;
damage = 20;
damType = 1;
resetBarboolia();
break;
case 28:
direction = 1;
moveLeft = (moveRight = false);
walkSpeed = 0;
startHealth = 300;
if (game.diff == 0){
startHealth = 300;
};
damType = 4;
charwidth = 120;
charheight = 100;
damage = 40;
oneFrame = 0;
visible = false;
wizdirection = "right";
startWizardTimer();
break;
case 29:
break;
case 30:
break;
case 31:
break;
case 32:
break;
};
curHealth = startHealth;
}
public function wizShoot(_arg1:Event){
if (finished){
return;
};
if (((((!(isAttacking)) && (alive))) && (game.hero.alive))){
isAttacking = true;
game.sounds.wizardpreattack.play();
if (Math.abs((game.hero.mc.x - (inner.movewiz.x + x))) < 100){
inner.movewiz.gotoAndPlay(("attackdown" + wizdirection));
} else {
inner.movewiz.gotoAndPlay(("attackside" + wizdirection));
};
};
}
public function endTimer(){
if (theTimer != null){
theTimer.stop();
theTimer = null;
};
}
public function punch(){
if (finished){
return;
};
if (hitTestObject(game.hero.mc)){
game.hero.takeDamage(20, 1, 14, x);
game.hero.getPunched();
};
}
public function hide(){
if (finished){
return;
};
isAttacking = false;
hidden = true;
inner.gotoAndPlay("hide");
}
public function endIt(){
endTimer();
finished = true;
}
public function shootLightning(_arg1){
game.shootLightning(this, _arg1);
}
public function endDie(){
game.removeMonster(this);
if (generator != null){
generator.monsterCount--;
generator.resetTimer();
};
if (monsterType == 28){
game.killAllMonsters();
game.winGame();
};
}
}
}//package
Section 117
//MonsterGenerator (MonsterGenerator)
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
public class MonsterGenerator extends MovieClip {
public var monsterType:int;
public var timer:Timer;
public var emitting:Boolean;
public var monsterCount:int;
public var col:int;
public var precursor:Boolean;
public var maxMonster:int;
public var row:int;
public var game:PlatformGame;
public function MonsterGenerator(_arg1:PlatformGame){
addFrameScript(0, frame1, 3, frame4);
game = _arg1;
}
function init(){
var _local1:int;
precursor = false;
_local1 = 0;
switch (monsterType){
case 22:
maxMonster = 2;
_local1 = 10000;
break;
case 25:
maxMonster = 1;
_local1 = 7000;
break;
default:
maxMonster = 2;
_local1 = 10000;
break;
};
emitting = true;
monsterCount = 0;
timer = new Timer((_local1 + (Math.random() * 2000)), 0);
timer.start();
timer.addEventListener(TimerEvent.TIMER, emit);
}
public function resetTimer(){
timer.reset();
timer.start();
}
function frame1(){
stop();
}
function frame4(){
stop();
}
public function emit(_arg1:Event){
if ((((monsterCount >= maxMonster)) || (!(emitting)))){
return;
};
if (monsterType == 22){
game.sounds.snakespawn.play();
};
game.createMonster(monsterType, col, row, this);
monsterCount++;
}
}
}//package
Section 118
//PlatformGame (PlatformGame)
package {
import flash.display.*;
import flash.events.*;
import mochi.*;
import flash.text.*;
import flash.utils.*;
import flash.net.*;
import flash.system.*;
public dynamic class PlatformGame extends MovieClip {
public var generators:Array;
public var data3020;
public var data3021;
public var data3022;
public var data3023;
public var data3024;
public var data3026;
public var data3028;
public var levelname;
public var data3025;
public var data3027;
public var data3029;
public var data3030;
public var data3031;
public var data3032;
public var data3033;
public var data3034;
public var data3035;
public var diff:int;
public var loadthis_txt;
public var healthbar;
public var timeSum:Number;
public var wizAttack:int;
public var messagebox;
public var starsGot:int;
public var startHard;
public var wizardDead:Boolean;
public var howtoplay;
public var blockholder:MovieClip;
public var r:Number;
public var blackbit;
public var hallVisited:Boolean;
private var gameMode:String;// = "start"
public var starsgot_txt;
public var diffMod:int;
public var loadSavedGame:Boolean;
public var fps;
public var getLevelVars:URLVariables;
public var curLevel:int;
public var sounds;
public var goLevelBtn;
public var levelData:Array;
public var menu;
public var loadbar;
public var howtoplaybtn;
public var renderTime:Number;
public var fireFX;
public var arrows:Array;
private var gameScore:int;
public var data1;
public var data2;
public var data3;
public var data4;
public var data6;
public var data7;
public var wingame;
public var data9;
public var data5;
public var savedProgress:SharedObject;
public var data8;
public var isLoaded:Boolean;
public var badArrows:Array;
public var gameoverpanel;
public var monsterholder:MovieClip;
private var curDoor:int;
public var music;
public var enemies:Array;
public var levelsArray:Array;
public var startButton;
public var arrows_txt;
public var pressUp:Boolean;
public var lustras:Array;
public var uiruby;
private var lastTime:Number;// = 0
public var doors:Array;
public var clickbit;
public var playerLives:int;
private var oneFrame:int;
public var uifire;
public var gamelevel:MovieClip;
public var pressLeft:Boolean;
public var playerObjects:Array;
public var arrowholder:MovieClip;
public var doit;
public var fixedObjects:Array;
public var gotStars:Array;
public var lives_txt;
public var loadlevelbtn;
public var score_txt;
public var theversion:String;
public var data10;
public var data12;
public var data13;
public var data14;
public var data15;
public var data16;
public var data17;
public var data19;
public var uiamulet;
public var data18;
public var data11;
public var prog;
public var data20;
public var data21;
public var data22;
public var data23;
public var data25;
public var data26;
public var data27;
public var data28;
public var data29;
public var data24;
public var getLevelLoader:URLLoader;
public var pressDown:Boolean;
public var data30;
public var data32;
public var data33;
public var data34;
public var data31;
public var loopTime:Number;
public var data35;
public var quitScreen;
public var frameCount:int;
public var pressRight:Boolean;
public var starstotal_txt;
public var placedRuby:Boolean;
public var introclip;
public var wizDoor;
public var data3001;
public var data3002;
public var data3003;
public var data3004;
public var data3005;
public var data3006;
public var data3007;
public var data3008;
public var data3009;
public var gotLives:Array;
public var otherObjects:Array;
public var data3010;
public var data3011;
public var data3012;
public var data3013;
public var data3015;
public var data3016;
public var data3017;
public var data3018;
public var data3019;
public var profiler;
public var data3014;
public var hero:Hero;
static const gridWidth = 16;
static const cellHeight = 40;
static const cellWidth = 40;
static const gridHeight = 11;
static const gravity:Number = 0.0015;
static const starPoints = 100;
static const edgeDistance:Number = 100;
public function PlatformGame(){
gameMode = "start";
lastTime = 0;
super();
addFrameScript(0, frame1, 2, frame3, 3, frame4, 10, frame11, 14, frame15, 15, frame16, 16, frame17, 17, frame18);
levelsArray = new Array(4000);
diff = 0;
savedProgress = SharedObject.getLocal("sinta");
renderTime = (loopTime = 0);
}
public function getTypeAt(_arg1, _arg2){
if ((((((((_arg1 < 0)) || ((_arg2 < 0)))) || ((_arg1 >= gridWidth)))) || ((_arg2 >= gridHeight)))){
return (0);
};
return (levelData[_arg1][_arg2]);
}
public function shoot(_arg1:Event){
if ((((((((((hero.animstate == "stand")) && (!(hero.isShooting)))) && ((hero.numArrows > 0)))) && (hero.alive))) && (hero.mc.visible))){
if (gameMode == "play"){
hero.shoot();
shootArrow();
};
};
}
public function updateAim(){
hero.doAim();
}
public function GetTypeByGrid(_arg1, _arg2){
if (levelData[_arg1][_arg2] === undefined){
return (5);
};
return (levelData[_arg1][_arg2]);
}
public function showLives(){
lives_txt.text = String(playerLives);
}
function frame11(){
if (!introclip.done){
gotoAndPlay("intro");
};
}
function frame15(){
doit = 0;
}
function frame16(){
stop();
data1 = "title=Jail 1&bgnum=1&data=0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-21-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-41-0-0-0-0-0-0-0-0-0-0-41-0-0-0-0-0-0-0-0-0-0-41-0-0-0-0-0-8-19-19-19-19-19-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-43-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-78-0-0-0-0-33-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-doordata33-14-4-1-2-1#";
levelsArray[1] = data1;
data2 = "title=Jail 2&bgnum=1&data=0-0-0-33-2-0-0-0-0-0-0-0-0-0-21-2-0-0-0-0-0-0-0-0-0-0-8-19-19-19-19-19-19-0-0-56-0-2-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-41-2-0-0-0-56-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-66-0-0-0-0-0-0-2-0-0-0-2-0-0-0-0-56-0-8-19-19-19-2-0-0-2-2-0-62-2-0-0-41-2-0-0-0-0-0-0-2-0-0-41-2-0-0-0-0-0-33-2-0-0-38-2-0-0-0-0-0-0-2-0-0-0-2-0-0-doordata33-0-3-1-1-1#33-14-3-2-3-1#";
levelsArray[2] = data2;
data3 = "title=Jail 3&bgnum=1&data=0-0-0-33-2-0-0-0-0-0-35-0-0-0-21-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-76-0-0-0-56-2-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-51-0-0-0-0-0-0-0-0-56-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-0-8-19-19-2-0-0-0-0-0-0-0-2-0-0-2-0-0-22-0-0-0-22-2-0-43-2-0-0-0-0-0-0-0-2-0-0-2-0-0-0-0-0-0-44-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-2-0-0-0-0-0-0-2-0-0-0-8-19-19-0-0-0-33-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-57-doordata33-0-3-1-2-2#35-0-10-3-35-1#33-14-3-2-4-1#";
levelsArray[3] = data3;
data4 = "title=Basement&bgnum=1&data=0-0-33-5-41-6-19-19-19-19-19-0-0-0-5-0-5-0-0-0-0-0-21-0-0-0-0-60-0-0-41-5-0-0-0-41-0-15-0-0-0-56-5-0-0-0-41-0-0-0-0-0-0-5-0-0-0-0-0-0-41-0-0-0-0-0-0-0-0-0-0-0-0-0-43-5-0-0-41-56-13-0-0-0-0-56-5-0-41-0-0-0-0-0-41-0-41-5-0-0-60-0-0-0-0-0-0-0-0-0-0-0-0-41-41-0-0-14-0-0-0-0-41-5-0-0-0-0-0-14-0-0-56-0-5-60-0-0-0-0-0-0-0-0-0-5-0-0-0-42-5-56-0-0-0-0-5-0-0-41-0-5-0-0-34-0-0-6-19-19-19-19-5-0-0-0-doordata33-0-2-1-3-2#34-14-10-2-5-1#";
levelsArray[4] = data4;
data5 = "title=Herb Garden&bgnum=3&data=0-33-1-0-41-1-0-43-1-41-0-0-0-1-0-24-1-0-41-1-0-43-0-21-1-0-0-1-0-41-1-0-0-0-0-1-0-73-1-0-41-1-0-0-0-0-1-0-0-1-0-0-1-0-0-0-0-18-0-0-0-0-0-0-0-77-0-0-0-0-0-0-0-0-0-0-0-41-0-0-0-17-0-0-0-7-19-19-41-0-0-0-0-0-0-0-1-0-35-0-0-18-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-57-0-0-1-0-0-1-0-0-1-0-41-0-0-1-0-71-1-0-44-1-0-43-0-41-1-0-0-1-41-0-1-0-0-0-0-1-0-23-1-0-24-1-0-33-0-57-1-0-42-1-0-41-1-0-0-doordata33-0-1-1-4-2#35-8-10-3-33-1#33-14-10-2-6-1#";
levelsArray[5] = data5;
data6 = "title=Stone Garden&bgnum=8&data=0-41-0-0-0-0-0-0-0-0-33-0-0-0-0-8-19-19-19-2-0-21-0-0-0-41-2-0-0-0-2-0-78-0-0-0-41-2-0-0-57-2-0-0-0-0-0-0-2-0-0-43-2-0-0-0-0-0-77-2-0-0-0-0-0-41-0-0-0-57-2-0-78-2-0-0-57-0-0-0-0-0-0-22-2-0-0-41-0-0-17-0-0-0-0-2-0-0-41-0-0-0-0-0-0-0-2-0-0-41-0-0-0-0-0-0-0-0-0-0-78-0-0-13-0-0-0-0-0-0-0-22-0-0-0-0-0-0-0-2-0-0-0-0-0-0-41-2-41-76-2-0-0-44-0-0-0-33-2-41-0-2-0-0-57-0-0-0-0-2-0-0-8-19-19-19-doordata33-0-10-1-5-2#33-14-3-2-7-1#";
levelsArray[6] = data6;
data7 = "title=Great Hall&bgnum=2&data=0-0-0-0-0-0-5-0-0-0-0-0-0-0-69-0-34-5-0-67-0-34-95-0-0-0-0-0-6-19-5-0-0-0-0-0-0-0-0-0-0-6-19-19-0-0-0-0-0-56-0-0-0-0-0-0-0-0-0-0-0-0-0-6-19-19-0-0-0-5-0-0-0-35-5-0-0-0-0-36-5-0-68-0-34-5-0-21-0-0-0-5-0-0-0-0-5-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-56-0-0-6-19-19-95-0-0-0-0-0-0-0-5-0-0-0-0-0-0-0-0-6-19-5-0-0-0-0-0-69-0-34-5-0-0-0-34-0-0-0-0-0-0-5-0-0-0-0-doordata34-1-5-3-13-1#34-1-10-2-8-1#35-6-7-7-29-1#36-7-2-6-30-1#34-7-7-4-18-1#34-14-5-5-23-1#34-14-10-1-6-2#";
levelsArray[7] = data7;
data8 = "title=East Wing 1&bgnum=5&data=0-41-6-19-19-19-19-0-0-0-33-0-41-5-0-0-0-0-0-0-0-21-52-41-5-0-0-0-0-0-5-0-0-0-41-5-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-5-0-0-0-0-0-0-0-0-0-38-5-0-0-0-0-0-0-0-0-0-0-0-0-0-42-0-41-43-0-64-41-0-5-0-0-0-0-0-0-0-0-41-0-5-0-0-0-0-0-0-0-64-0-0-0-0-0-0-0-0-0-0-44-0-0-0-0-0-41-2-0-62-0-62-0-0-0-57-0-41-2-0-33-6-19-19-0-0-0-0-74-2-2-2-2-2-0-0-0-0-60-0-0-0-0-0-0-0-0-0-0-0-0-6-19-19-19-19-19-19-19-19-doordata33-0-10-1-7-2#33-12-4-2-9-1#";
levelsArray[8] = data8;
data9 = "title=East Wing 2&bgnum=5&data=0-0-33-5-2-0-0-0-0-0-0-0-0-21-5-2-0-16-0-0-0-0-0-0-0-0-2-0-0-0-2-54-0-0-0-0-0-0-0-0-51-2-0-41-0-0-0-13-0-0-0-51-2-0-41-42-0-0-0-0-0-0-0-2-52-0-0-0-0-17-0-0-0-0-2-0-0-60-0-0-0-0-0-0-0-2-0-0-0-0-5-0-0-0-56-2-2-54-0-0-0-13-0-0-0-0-0-2-0-41-0-0-5-0-13-0-0-0-2-0-41-0-43-5-0-0-0-0-53-2-52-0-0-41-5-0-41-2-2-2-2-0-0-0-41-5-0-0-5-0-0-0-0-0-0-41-5-0-24-5-0-33-8-8-8-0-23-5-0-41-5-0-0-0-0-0-doordata33-0-2-1-8-2#33-14-7-2-10-1#";
levelsArray[9] = data9;
data10 = "title=East Wing 3&bgnum=5&data=0-0-33-5-0-0-0-0-33-5-51-0-0-0-5-0-0-0-0-0-5-51-0-0-0-0-0-0-13-0-0-0-51-0-0-0-0-56-0-5-0-0-0-51-0-0-0-63-0-0-5-0-0-0-51-0-0-0-0-0-0-13-0-0-0-51-0-44-0-0-0-0-0-51-5-0-51-0-0-0-0-0-0-0-41-5-0-51-0-13-0-0-41-0-0-57-5-0-51-60-0-0-0-0-0-0-0-0-0-51-0-0-0-0-18-0-0-0-0-0-51-43-5-0-0-0-0-0-0-0-0-0-0-5-56-2-2-2-2-2-2-2-2-0-5-0-0-0-0-19-19-19-64-38-41-5-0-0-0-0-0-0-21-0-0-0-6-19-19-19-19-19-5-0-0-64-doordata33-0-2-2-11-1#33-0-8-1-9-2#";
levelsArray[10] = data10;
data11 = "title=East Wing 4&bgnum=5&data=0-33-6-19-19-19-0-74-2-0-57-0-2-0-0-11-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-41-2-0-0-56-0-0-0-24-0-0-12-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-41-0-0-0-0-0-0-41-5-0-0-0-0-2-0-0-0-0-0-0-0-0-0-0-21-0-33-5-0-41-5-0-24-0-0-0-0-0-5-0-0-0-0-0-0-0-0-0-0-0-0-41-5-0-0-0-0-5-0-0-5-0-0-0-0-0-0-0-60-0-0-0-0-41-5-0-24-0-0-5-0-0-0-56-0-0-0-57-0-0-0-0-42-0-0-0-0-0-0-0-0-0-6-19-19-19-19-19-19-0-doordata33-0-1-2-12-1#33-8-4-1-10-2#";
levelsArray[11] = data11;
data12 = "title=East Tower&bgnum=10&data=41-0-6-19-19-19-5-0-21-5-0-41-0-5-41-0-38-5-0-33-5-0-41-0-5-60-0-0-0-0-0-5-0-0-0-0-0-0-0-15-0-0-0-53-0-0-0-64-0-0-0-0-0-0-53-0-0-0-0-0-0-0-16-41-5-0-0-0-0-0-0-0-0-0-41-5-0-0-0-41-2-2-2-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-43-2-15-0-0-0-0-0-53-0-0-0-0-0-0-0-0-44-5-0-0-0-64-0-0-51-2-0-0-5-0-0-0-0-0-0-2-0-0-0-0-51-0-0-0-0-14-0-0-0-0-0-51-0-62-5-0-0-0-0-41-41-0-51-0-39-5-0-0-41-0-13-0-0-51-doordata33-1-8-1-11-2#";
levelsArray[12] = data12;
data13 = "title=South Wing 1&bgnum=6&data=21-0-6-19-19-19-19-0-43-5-42-0-33-5-0-0-0-0-0-0-5-0-0-0-5-0-0-0-0-0-0-5-57-0-0-41-41-0-41-0-64-56-5-0-0-0-0-0-0-0-0-0-2-54-0-0-0-0-3-0-0-0-41-2-0-0-0-0-41-41-0-0-0-0-0-0-0-0-0-0-0-0-41-0-64-0-0-0-0-0-0-3-0-0-0-0-41-0-0-0-0-41-41-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-3-41-38-65-64-0-5-0-0-0-41-41-0-0-0-0-56-5-0-0-0-0-0-0-41-0-0-0-5-57-0-62-2-60-0-0-0-0-0-5-0-0-34-2-0-0-0-6-19-19-19-19-doordata33-1-1-1-7-3#34-15-1-2-14-1#";
levelsArray[13] = data13;
data14 = "title=South Wing 2&bgnum=6&data=0-57-2-0-0-41-0-2-0-0-33-0-0-2-0-0-0-44-2-0-0-21-0-38-2-0-0-0-0-8-19-19-19-0-0-66-41-0-41-0-0-56-0-43-0-0-2-60-0-0-0-0-0-2-2-0-0-2-0-0-0-0-0-0-0-0-0-0-43-2-0-60-0-0-56-0-0-0-0-0-2-0-0-0-0-41-0-2-0-0-0-0-2-0-0-60-0-0-41-0-0-0-0-0-2-0-0-56-0-2-60-0-0-0-0-2-0-0-0-0-41-0-0-0-0-0-2-0-0-41-2-66-0-0-60-0-0-2-56-0-2-0-0-0-0-0-0-0-2-0-0-2-0-62-0-0-0-0-60-2-0-0-2-0-0-0-0-0-0-0-8-19-19-2-0-33-doordata33-0-10-1-13-2#33-15-10-2-15-1#";
levelsArray[14] = data14;
data15 = "title=South Wing 3&bgnum=6&data=0-0-0-0-0-0-0-21-0-0-33-0-0-8-19-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-15-0-2-0-0-0-0-0-0-60-0-0-0-0-0-0-0-0-2-0-0-0-0-0-12-0-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-2-0-0-0-0-0-0-0-0-0-0-2-0-0-56-0-2-0-0-0-0-0-2-0-0-0-0-0-0-0-43-0-0-15-0-0-0-2-0-11-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-51-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-56-0-0-0-0-57-0-33-2-0-0-0-0-0-8-19-42-doordata33-0-10-1-14-2#33-15-1-2-16-1#";
levelsArray[15] = data15;
data16 = "title=South Wing 4&bgnum=6&data=0-33-2-41-23-2-0-57-2-0-0-21-0-2-0-0-2-0-43-2-0-0-0-0-8-0-0-0-0-0-0-0-51-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-8-19-19-2-0-0-0-0-0-2-41-2-0-38-2-0-57-2-2-2-2-2-2-2-2-2-0-0-0-41-8-19-19-19-19-19-19-19-19-0-62-2-0-41-2-52-0-2-0-0-0-41-2-0-41-2-0-0-2-0-22-60-0-0-0-2-2-2-42-2-0-0-0-0-60-0-0-0-0-0-0-0-0-0-0-0-0-0-0-56-0-0-0-51-2-2-2-2-2-54-0-2-0-0-22-0-33-2-2-2-0-0-2-0-0-51-0-0-8-19-19-19-19-2-0-0-0-doordata33-0-1-1-15-2#33-14-1-2-17-1#";
levelsArray[16] = data16;
data17 = "title=South Tower&bgnum=13&data=0-21-2-0-0-0-0-35-2-0-53-0-34-2-0-0-0-0-0-2-0-53-0-0-2-0-2-0-56-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-2-0-0-43-2-0-53-0-0-0-0-0-0-0-0-2-0-53-60-0-0-0-0-66-56-0-0-0-53-0-0-2-0-0-0-0-0-0-0-53-0-38-2-0-0-0-2-0-0-0-2-0-0-66-0-0-0-0-0-0-0-51-60-0-0-0-0-0-0-0-0-0-0-0-0-0-13-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-11-0-0-2-0-0-2-2-2-0-0-0-2-42-0-0-0-0-0-0-0-0-0-0-0-19-19-19-19-19-19-19-0-0-0-57-doordata35-0-7-2-34-1#34-1-1-1-16-2#";
levelsArray[17] = data17;
data18 = "title=West Wing 1&bgnum=7&data=0-23-2-0-0-21-2-0-0-0-42-41-43-2-0-0-34-2-0-0-56-57-41-0-2-0-0-0-2-0-0-0-43-0-38-2-0-0-41-2-0-0-0-0-0-0-2-0-0-0-0-0-16-0-44-0-0-2-60-0-0-0-0-0-56-57-0-0-0-15-0-0-2-0-0-0-43-0-0-56-0-41-41-2-0-0-0-22-0-64-0-0-0-0-0-0-0-0-44-0-0-0-0-0-0-0-0-0-56-43-41-0-0-13-0-0-0-0-0-0-57-0-2-0-0-0-41-2-0-0-0-0-0-0-0-0-0-41-2-0-0-0-34-0-0-0-0-0-3-2-0-0-0-0-0-0-0-0-0-34-2-0-0-56-57-0-0-0-0-0-2-2-0-0-0-0-doordata34-1-5-1-7-4#34-12-10-3-19-3#34-14-5-2-19-1#";
levelsArray[18] = data18;
data19 = "title=West Wing 2&bgnum=7&data=42-0-66-0-0-66-41-0-66-0-34-0-0-2-0-34-2-0-23-2-0-0-41-0-2-0-21-2-41-0-2-0-41-41-0-2-0-0-8-19-19-2-0-57-0-0-2-0-41-0-0-0-2-0-0-0-0-2-0-0-0-0-0-2-0-38-0-0-11-2-60-0-56-0-2-0-62-0-0-0-0-2-0-0-0-2-0-57-0-0-0-0-0-11-0-43-2-0-41-0-0-0-0-0-0-0-0-2-2-0-0-0-0-41-0-0-0-41-22-2-22-0-41-2-0-0-0-0-41-0-2-0-0-0-0-0-0-2-0-0-57-2-41-0-0-2-0-0-8-19-19-19-2-0-0-34-2-2-2-2-2-2-2-2-22-0-0-8-19-19-19-19-19-19-19-19-doordata34-0-10-3-18-3#34-1-4-1-18-2#34-14-1-2-20-1#";
levelsArray[19] = data19;
data20 = "title=West Wing 3&bgnum=7&data=0-41-0-0-0-0-0-0-0-0-51-0-0-0-0-0-41-41-41-0-0-0-0-0-2-2-2-2-2-2-2-2-0-0-34-2-0-0-0-0-0-38-2-57-0-21-2-0-0-0-0-0-0-2-41-2-2-2-0-0-0-2-0-62-2-0-0-34-2-0-56-41-2-41-42-2-22-0-0-2-0-0-74-2-0-62-2-0-0-0-0-0-0-0-0-0-0-0-44-0-41-2-0-0-0-0-0-56-0-0-0-0-60-0-0-23-2-0-0-8-19-0-0-0-0-41-0-2-52-0-2-0-18-0-0-0-41-0-2-0-0-2-0-0-0-0-0-0-0-2-2-0-2-2-0-0-0-17-0-0-0-2-0-0-2-41-0-0-0-0-0-0-8-19-19-41-doordata34-3-1-1-19-2#34-6-1-2-21-1#";
levelsArray[20] = data20;
data21 = "title=West Wing 4&bgnum=7&data=41-41-41-41-41-42-0-0-0-0-33-0-0-2-2-2-2-2-2-0-0-21-0-0-8-19-19-19-19-0-0-0-0-2-2-2-0-0-0-0-2-0-56-57-0-0-11-2-0-0-0-0-0-0-0-0-0-0-0-2-0-0-63-2-54-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-38-2-0-41-0-2-54-0-0-0-0-0-0-0-0-41-2-0-0-0-33-2-0-41-2-0-0-0-0-41-0-62-2-0-0-0-0-0-0-0-57-60-0-0-0-0-0-2-0-0-0-0-0-0-2-0-0-0-0-0-41-0-2-0-0-34-2-0-0-5-41-0-2-0-0-0-0-2-0-0-41-0-2-56-0-0-0-26-2-0-0-0-2-0-0-0-doordata33-0-10-1-20-2#33-9-1-2-22-1#34-13-2-3-28-1#";
levelsArray[21] = data21;
data22 = "title=West Tower&bgnum=4&data=0-38-1-41-0-0-41-65-0-65-43-0-73-1-41-0-64-0-0-0-0-0-0-41-1-41-0-0-0-41-0-0-65-0-60-0-0-64-0-0-0-2-1-0-0-0-0-0-21-0-2-0-2-1-41-0-0-12-0-0-77-2-57-2-1-41-0-0-0-41-0-33-2-41-2-1-0-0-0-0-65-0-0-5-0-2-1-0-0-0-0-0-2-2-5-38-2-0-62-0-0-0-0-0-22-2-43-2-1-41-0-0-0-65-1-0-2-57-2-1-24-0-0-0-0-1-41-0-62-2-1-57-0-0-0-0-1-0-0-0-2-1-41-0-62-1-24-1-60-41-0-0-0-41-0-40-1-0-1-0-0-0-0-43-2-0-26-1-38-7-19-19-0-0-0-63-doordata33-6-5-1-21-2#";
levelsArray[22] = data22;
data23 = "title=North Wing 1&bgnum=9&data=0-38-8-19-2-0-0-38-2-0-21-0-41-5-0-15-0-0-41-2-0-33-0-0-5-0-0-0-0-41-8-19-19-60-0-0-0-0-0-0-41-2-2-2-41-0-5-0-0-0-0-0-16-0-51-0-0-0-0-5-0-41-2-0-0-51-41-0-5-0-2-0-56-0-0-0-51-0-0-0-43-2-0-0-0-0-0-51-0-0-0-0-0-0-0-0-0-0-51-0-0-0-63-2-41-62-2-0-0-51-60-0-0-0-0-0-0-0-0-0-51-0-0-11-0-0-0-56-0-0-0-51-41-0-0-0-5-0-44-2-0-0-51-0-0-0-0-0-0-38-2-0-0-51-0-0-0-0-2-0-0-2-0-0-51-0-33-5-0-8-19-19-2-0-0-51-doordata33-1-10-1-7-5#33-15-1-2-24-1#";
levelsArray[23] = data23;
data24 = "title=North Wing 2&bgnum=9&data=0-34-2-0-38-2-42-2-0-33-2-0-21-2-0-43-2-41-2-52-0-2-0-0-0-2-0-2-57-2-0-0-2-0-0-0-0-57-2-43-2-0-41-0-0-0-2-56-0-5-41-2-2-0-62-41-0-2-0-57-5-0-0-2-2-0-0-0-0-2-0-2-60-0-41-66-0-0-0-0-41-22-2-60-0-41-2-0-0-0-2-0-0-2-2-0-2-2-0-0-74-2-0-0-0-2-0-2-0-78-0-43-2-2-2-57-2-0-2-0-0-0-0-0-0-0-0-5-57-2-56-57-0-0-56-0-2-0-5-0-2-2-0-0-0-0-41-2-57-5-41-0-2-0-0-0-2-2-0-0-5-0-0-2-41-0-0-8-19-19-19-8-19-19-8-19-doordata34-0-1-1-23-2#33-0-9-2-25-1#";
levelsArray[24] = data24;
data25 = "title=North Wing 3&bgnum=9&data=0-33-5-38-5-0-6-19-5-0-33-0-0-2-0-5-0-5-0-0-0-21-0-62-6-19-5-0-0-0-0-5-0-0-0-0-0-5-0-0-5-57-5-0-0-0-0-0-0-56-0-5-0-5-57-0-0-5-0-5-0-0-5-22-5-0-0-0-5-23-5-0-0-0-0-5-43-0-0-60-0-5-0-5-0-0-0-22-0-5-0-0-0-56-5-0-0-5-57-0-0-56-5-0-0-0-0-22-5-43-0-2-26-5-0-0-0-0-0-5-0-0-0-63-5-0-0-5-0-0-0-57-0-0-0-0-0-23-5-0-0-0-0-0-0-0-0-5-0-5-0-22-5-43-0-0-0-0-5-0-5-0-0-5-22-0-42-5-0-6-19-5-0-0-6-19-doordata33-0-1-2-26-1#38-0-3-undefined-undefined-undefined#33-0-10-1-24-2#";
levelsArray[25] = data25;
data26 = "title=North Wing 4&bgnum=9&data=19-19-19-19-19-19-19-19-8-19-19-0-60-0-0-0-0-0-38-2-0-57-2-2-6-19-19-0-0-0-0-56-0-2-42-5-41-41-5-0-0-0-0-0-2-41-2-0-62-2-0-41-2-2-2-2-57-2-41-42-2-0-0-12-0-53-2-22-2-2-2-2-0-0-0-0-53-0-33-5-0-0-0-0-0-0-0-53-2-0-5-21-34-6-19-41-0-0-53-2-57-5-0-0-0-41-0-0-0-53-0-62-2-2-2-2-41-0-0-0-53-0-41-0-0-0-2-41-0-0-0-53-0-41-0-0-2-2-0-62-2-2-2-0-0-41-0-0-2-0-0-0-0-57-0-0-6-0-0-0-6-19-5-0-0-26-0-5-0-0-41-0-56-6-19-19-doordata33-7-1-2-27-1#34-8-4-1-25-2#";
levelsArray[26] = data26;
data27 = "title=North Tower&bgnum=13&data=21-33-5-0-0-0-0-0-0-5-51-0-0-0-0-0-0-0-0-0-0-51-0-0-43-5-41-5-43-5-0-0-0-0-0-26-5-38-5-0-5-38-5-0-0-0-23-5-23-5-0-5-23-5-0-2-0-62-0-0-5-62-0-0-2-0-60-0-41-5-41-5-41-5-41-2-43-0-0-41-5-41-5-41-5-41-2-0-60-56-42-5-41-5-41-5-41-2-56-0-0-22-5-0-5-26-5-0-2-57-60-0-22-5-0-5-62-5-44-2-0-0-0-0-0-0-63-0-0-0-0-0-0-0-0-0-0-0-63-0-0-0-2-0-62-5-0-43-0-0-0-0-0-0-0-37-5-0-0-5-0-0-0-5-0-56-0-5-0-0-6-19-19-19-19-0-doordata33-0-1-1-26-2#";
levelsArray[27] = data27;
data28 = "title=Oubliette&bgnum=14&data=0-0-10-41-4-4-0-0-21-4-43-0-34-4-0-41-4-4-0-34-4-44-0-0-4-60-0-41-4-41-41-10-19-0-34-4-0-0-0-0-0-0-0-0-0-0-0-41-0-4-0-0-0-0-51-0-60-0-0-0-0-38-17-0-0-51-0-0-0-41-0-5-0-0-0-0-51-0-0-0-0-0-0-4-0-0-0-51-0-0-0-0-0-0-0-0-62-2-51-0-0-41-41-0-0-0-0-0-0-51-0-0-41-41-41-43-41-0-62-2-51-41-38-4-60-0-0-0-0-0-0-51-0-0-0-0-0-0-41-0-62-2-51-60-0-0-0-0-0-0-0-0-0-51-0-41-14-0-0-0-0-0-0-0-41-0-0-0-0-0-0-44-10-19-19-0-doordata34-1-1-3-28-1#34-1-8-1-28-1#34-3-1-2-21-1#";
levelsArray[28] = data28;
data29 = "title=Pantry&bgnum=15&data=0-56-0-0-0-6-19-19-0-0-21-0-42-0-0-0-5-0-0-0-0-33-41-41-41-0-0-0-0-0-41-5-0-0-0-0-0-0-0-0-0-41-5-41-0-0-0-0-0-0-0-0-41-5-0-5-0-0-41-41-0-63-0-41-5-41-6-19-5-0-0-0-0-0-41-5-0-0-0-5-0-0-0-0-0-41-5-41-0-56-5-0-0-0-0-0-41-5-0-0-0-5-41-41-0-63-0-41-5-41-0-0-5-0-0-0-0-0-41-5-0-0-0-5-0-0-0-0-0-41-5-41-0-0-5-0-0-0-0-0-41-5-0-0-0-5-41-41-0-63-0-41-5-41-0-56-5-0-0-0-0-0-41-6-19-0-0-6-19-19-5-0-0-0-0-38-doordata33-1-10-1-7-7#";
levelsArray[29] = data29;
data30 = "title=Wizard Tower 1&bgnum=12&data=0-0-0-33-2-56-0-0-0-11-53-0-0-0-0-2-21-33-4-0-0-53-0-0-0-0-2-0-3-4-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-0-0-0-0-0-16-53-0-0-0-0-0-63-0-0-0-0-53-0-0-0-0-0-4-0-0-0-0-53-0-0-0-0-0-4-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-2-0-62-2-0-62-4-0-0-0-53-0-0-13-0-0-56-4-0-0-11-53-0-0-0-27-0-0-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-38-10-0-0-10-19-0-13-0-53-doordata33-0-3-2-31-1#33-1-6-1-7-6#";
levelsArray[30] = data30;
data31 = "title=Wizard Tower 2&bgnum=12&data=0-34-4-0-34-4-60-0-0-10-19-0-21-4-56-0-4-60-0-38-4-0-0-41-4-0-0-4-60-54-0-4-0-0-41-2-0-62-2-2-0-0-4-57-0-0-4-60-0-51-2-0-0-4-0-0-0-4-0-22-2-0-0-0-0-0-0-0-4-56-0-8-19-19-0-0-53-0-0-4-2-57-2-0-0-41-0-4-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-0-27-41-0-0-0-53-0-63-0-41-0-0-0-0-0-0-53-42-0-0-63-41-63-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-0-0-0-41-0-0-53-0-41-4-0-0-0-38-4-0-0-4-0-56-10-19-19-19-19-19-19-19-4-doordata34-0-1-1-30-2#34-0-4-2-32-1#";
levelsArray[31] = data31;
data32 = "title=Throne Room&bgnum=11&data=0-0-0-0-72-0-0-0-5-21-0-0-0-0-0-0-0-0-43-5-0-34-0-0-0-0-0-0-0-0-5-0-0-0-0-0-0-0-0-0-0-6-19-19-95-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-56-0-0-0-0-0-0-0-0-0-0-0-0-0-0-95-0-0-0-0-0-0-28-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-27-0-0-0-0-43-95-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-56-0-0-0-0-0-0-0-72-0-0-0-6-19-19-0-0-0-0-0-0-0-0-5-0-62-0-0-0-0-0-0-0-0-5-0-0-0-0-0-0-0-0-0-38-5-0-42-doordata34-1-10-1-31-2#";
levelsArray[32] = data32;
data33 = "title=Secret Garden&bgnum=3&data=0-0-7-19-19-19-19-1-0-0-21-0-0-1-0-0-0-43-1-0-0-33-0-41-1-0-0-0-24-1-0-0-0-0-41-1-0-0-0-41-1-0-41-1-0-0-1-0-0-0-41-1-0-41-1-0-24-1-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-1-41-0-1-0-0-0-0-0-0-41-1-41-0-1-0-0-0-41-1-0-24-1-41-0-1-0-0-0-41-1-0-0-0-41-41-0-0-0-0-0-0-41-1-0-24-41-0-0-0-0-0-0-3-1-0-0-0-41-0-0-0-0-0-24-1-0-0-0-41-41-0-0-0-0-2-1-0-0-0-0-41-0-24-1-0-0-7-19-19-0-0-0-42-0-1-0-43-1-0-0-doordata33-1-10-1-5-3#";
levelsArray[33] = data33;
data34 = "title=The Inferno&bgnum=13&data=0-0-0-38-2-0-0-33-2-0-53-0-0-0-0-2-0-0-21-2-0-53-0-0-0-11-0-12-0-0-0-0-53-0-0-0-0-0-0-41-2-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-41-0-0-0-0-0-0-0-0-53-0-41-64-0-0-0-41-2-0-0-53-0-0-3-0-0-0-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-41-64-0-0-11-0-0-74-2-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-0-0-41-2-0-0-53-0-0-0-0-0-0-0-0-0-0-53-41-2-0-0-0-41-2-0-0-0-53-0-41-0-0-41-2-0-0-0-0-53-doordata33-0-7-1-17-2#";
levelsArray[34] = data34;
data35 = "title=Forgotten Jail&bgnum=1&data=0-2-2-2-0-0-2-2-0-0-2-0-0-41-2-0-0-41-2-0-0-41-0-0-41-2-0-0-22-2-0-0-26-0-0-51-2-0-0-41-2-0-0-74-0-0-41-2-0-0-41-2-0-0-26-0-0-41-2-0-0-57-2-0-0-26-2-0-62-2-0-62-2-2-0-0-41-0-8-19-19-19-19-19-2-0-62-2-78-2-0-0-0-0-0-2-0-0-0-0-2-0-0-0-0-0-8-19-19-19-0-2-0-38-65-0-0-0-0-0-51-41-2-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-71-0-0-0-33-2-0-0-56-0-0-51-0-0-0-21-2-0-0-0-0-0-74-0-0-0-0-0-0-0-0-0-0-51-doordata33-13-3-1-3-3#";
levelsArray[35] = data35;
data3001 = "title=Jail 1&bgnum=1&data=0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-21-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-41-0-0-0-0-0-0-0-0-0-0-41-0-0-0-0-0-0-0-0-0-0-41-0-0-0-0-0-8-19-19-19-19-19-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-43-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-78-0-0-0-0-33-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-doordata33-14-4-1-2-1#";
levelsArray[3001] = data3001;
data3002 = "title=Jail 2&bgnum=1&data=0-0-0-33-2-0-0-0-0-0-0-0-0-0-21-2-0-0-0-0-0-0-0-0-0-0-8-19-19-19-19-19-19-0-0-56-0-2-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-41-2-0-0-0-56-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-66-0-0-0-0-0-0-2-0-0-0-2-0-0-0-0-56-0-8-19-19-19-2-0-0-2-2-0-62-2-0-0-41-2-0-0-0-0-0-0-2-0-0-41-2-0-0-0-0-0-33-2-0-0-38-2-0-0-0-0-0-0-2-0-0-0-2-0-0-doordata33-0-3-1-1-1#33-14-3-2-3-1#";
levelsArray[3002] = data3002;
data3003 = "title=Jail 3&bgnum=1&data=0-0-0-33-2-0-0-0-0-0-35-0-0-0-21-2-0-0-0-0-0-0-0-0-0-43-2-0-0-0-0-0-76-0-0-0-56-2-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-51-0-0-0-0-0-0-0-0-56-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-0-8-19-19-2-0-0-0-0-0-0-0-2-0-0-2-0-0-22-0-0-0-22-2-0-43-2-0-0-0-0-0-0-0-2-0-0-2-0-0-0-0-0-0-44-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-2-0-0-0-0-0-0-2-0-0-0-8-19-19-0-0-0-33-2-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-0-0-doordata33-0-3-1-2-2#35-0-10-3-35-1#33-14-3-2-4-1#";
levelsArray[3003] = data3003;
data3004 = "title=Basement&bgnum=1&data=0-0-33-5-41-6-19-19-19-19-19-0-0-0-5-0-5-0-0-0-0-0-21-0-0-0-0-60-0-0-41-5-0-0-0-41-0-5-0-0-0-56-5-0-0-0-41-0-5-0-0-0-0-5-0-0-0-0-0-0-41-0-0-0-0-0-0-0-0-0-0-0-0-0-43-5-0-0-41-56-13-0-0-0-0-56-5-0-41-0-0-0-0-0-41-0-41-5-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-41-41-0-0-0-0-0-0-0-41-5-60-0-0-0-0-0-0-0-56-0-5-0-0-0-0-6-19-19-19-0-0-5-0-0-0-42-5-56-0-0-0-0-5-0-0-41-0-5-0-0-34-0-0-6-19-19-19-19-5-0-0-0-doordata33-0-2-1-3-2#34-14-10-2-5-1#";
levelsArray[3004] = data3004;
data3005 = "title=Herb Garden&bgnum=3&data=0-33-1-0-41-1-0-43-1-41-0-0-0-1-0-24-1-0-41-1-0-43-0-21-1-0-0-1-0-41-1-0-0-0-0-1-0-73-1-0-41-1-0-22-0-0-1-0-0-1-0-0-1-0-0-0-0-1-0-0-1-0-0-1-0-77-0-0-1-0-0-1-0-0-1-0-0-41-0-18-0-0-0-0-0-7-19-19-41-0-0-0-0-0-0-0-1-0-35-0-0-1-0-0-1-0-0-1-0-0-0-0-1-0-0-1-0-0-1-0-0-0-0-1-0-0-1-0-0-1-0-41-0-0-1-0-71-1-0-44-1-0-43-0-41-1-0-0-1-41-0-1-0-0-0-22-1-0-23-1-0-24-1-0-33-0-0-1-0-42-1-0-41-1-0-0-doordata33-0-1-1-4-2#35-8-10-3-33-1#33-14-10-2-6-1#";
levelsArray[3005] = data3005;
data3006 = "title=Stone Garden&bgnum=8&data=0-41-42-0-0-0-0-0-0-0-33-0-0-0-0-8-19-19-19-2-0-21-0-0-0-41-2-0-0-0-2-0-78-0-0-0-41-2-0-0-57-2-0-0-0-0-0-0-2-0-0-43-2-0-0-0-0-0-22-2-0-0-0-0-0-41-0-0-0-0-2-0-78-2-0-0-57-0-0-0-0-0-0-22-2-0-0-41-0-0-0-2-0-0-0-2-0-0-41-0-0-77-2-0-0-0-2-0-0-41-0-0-0-2-0-0-0-0-0-0-78-0-0-0-0-0-0-0-0-0-0-22-0-0-0-0-0-0-0-2-0-0-0-0-0-0-41-2-41-76-2-0-0-44-0-0-0-33-2-41-0-2-0-0-0-0-0-0-0-2-0-0-8-19-19-19-doordata33-0-10-1-5-2#33-14-3-2-7-1#";
levelsArray[3006] = data3006;
data3007 = "title=Great Hall&bgnum=2&data=0-0-0-0-0-0-5-0-0-0-0-0-0-0-69-0-34-5-0-67-0-34-95-0-0-0-0-0-6-19-5-0-0-0-0-0-0-0-0-0-0-6-19-19-0-0-0-0-0-56-0-0-0-0-0-0-0-0-0-0-0-0-0-6-19-19-0-0-0-5-0-0-0-35-5-0-0-0-0-36-5-0-68-0-34-5-0-21-0-0-0-5-0-0-0-0-5-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-56-0-0-6-19-19-95-0-0-0-0-0-0-0-5-0-0-0-0-0-0-0-0-6-19-5-0-0-0-0-0-69-0-34-5-0-0-0-34-0-0-0-0-0-0-5-0-0-0-0-doordata34-1-5-3-13-1#34-1-10-2-8-1#35-6-7-7-29-1#36-7-2-6-30-1#34-7-7-4-18-1#34-14-5-5-23-1#34-14-10-1-6-2#";
levelsArray[3007] = data3007;
data3008 = "title=East Wing 1&bgnum=5&data=0-41-6-19-19-19-19-19-5-0-33-0-41-5-0-0-0-0-0-5-0-21-0-41-5-0-0-0-0-0-5-0-0-0-41-5-0-0-0-0-42-0-0-0-0-0-0-0-0-0-0-0-0-5-0-0-0-0-0-0-0-0-0-38-5-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-41-43-0-64-41-0-5-0-0-0-0-0-0-0-0-41-0-5-0-0-0-0-0-0-0-64-0-0-0-0-0-0-0-0-0-0-44-0-0-0-0-0-41-2-0-62-0-62-0-0-0-57-0-41-2-0-33-6-19-19-5-0-0-0-74-2-2-2-2-2-0-0-0-0-60-0-0-0-0-0-0-0-0-0-0-0-0-6-19-19-19-19-19-19-19-19-doordata33-0-10-1-7-2#33-12-4-2-9-1#";
levelsArray[3008] = data3008;
data3009 = "title=East Wing 2&bgnum=5&data=0-0-33-5-2-0-0-0-0-0-0-0-0-21-5-2-0-16-0-5-0-44-0-0-0-0-2-0-0-0-5-0-0-0-0-0-0-0-0-0-0-5-56-41-0-0-0-13-0-0-0-51-5-0-41-0-0-0-0-0-0-0-0-5-0-22-0-0-0-17-0-0-0-0-5-0-0-0-0-0-0-0-0-0-0-2-54-0-0-0-5-0-0-0-56-2-2-0-0-0-0-13-0-0-0-0-0-2-0-0-0-0-5-0-13-0-0-0-2-52-41-0-43-5-0-0-0-0-0-2-0-0-0-41-5-0-41-2-2-2-2-0-57-0-41-5-0-0-5-0-0-0-0-0-0-41-5-0-42-5-0-33-8-8-8-0-23-5-0-41-5-0-0-0-0-0-doordata33-0-2-1-8-2#33-14-7-2-10-1#";
levelsArray[3009] = data3009;
data3010 = "title=East Wing 3&bgnum=5&data=0-0-33-5-0-0-0-0-33-5-51-0-0-0-5-0-0-0-0-0-5-51-0-0-0-0-0-0-13-0-0-0-51-0-0-0-0-56-0-5-0-0-0-51-0-0-0-63-0-0-5-0-0-0-51-0-0-0-0-0-0-13-0-0-0-51-0-0-0-0-0-0-0-51-5-0-51-0-42-5-0-0-0-0-41-5-0-51-0-0-5-0-41-0-0-22-5-0-51-60-0-0-0-0-0-0-0-0-0-51-0-0-0-0-18-0-0-0-0-0-2-43-5-0-0-0-0-0-0-0-0-2-0-5-56-0-2-2-2-2-2-2-2-0-5-0-0-0-0-0-0-0-0-38-41-5-0-0-0-0-0-0-21-0-44-0-6-19-19-19-19-19-19-19-19-19-doordata33-0-2-2-11-1#33-0-8-1-9-2#";
levelsArray[3010] = data3010;
data3011 = "title=East Wing 4&bgnum=5&data=0-33-6-19-19-19-5-74-2-0-57-0-2-0-0-5-0-0-0-0-0-0-0-0-0-0-5-0-0-0-0-0-0-0-0-41-0-0-0-56-0-0-0-0-0-0-12-0-0-0-0-0-0-0-43-0-0-0-0-0-0-0-0-0-0-0-41-0-0-0-0-0-0-41-5-0-0-0-0-2-0-0-0-0-0-0-0-0-0-0-21-0-33-5-0-41-5-0-0-0-0-0-0-0-5-0-0-0-0-0-0-0-0-0-0-0-0-41-5-0-0-0-0-5-0-0-5-0-0-0-0-0-0-0-60-0-0-0-0-41-5-0-0-0-0-5-0-0-0-56-0-0-0-57-0-0-0-0-42-0-0-0-0-0-0-0-0-0-6-19-19-19-19-19-19-0-doordata33-0-1-2-12-1#33-8-4-1-10-2#";
levelsArray[3011] = data3011;
data3012 = "title=East Tower&bgnum=10&data=41-0-6-19-19-19-5-0-21-5-0-41-0-5-41-0-38-5-0-33-5-0-41-0-5-60-0-0-0-0-0-5-0-0-0-0-0-0-0-15-0-0-0-53-0-0-0-64-0-0-0-0-0-0-53-0-0-0-0-0-0-0-16-41-5-0-0-0-0-0-0-0-0-0-41-5-0-0-0-41-2-2-2-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-43-2-15-0-0-0-0-5-0-0-0-0-0-0-0-0-0-44-5-0-0-0-64-0-0-51-2-0-0-5-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-0-14-0-0-0-0-0-0-0-62-5-0-0-0-0-41-41-0-0-0-39-5-0-0-41-0-13-0-0-0-doordata33-1-8-1-11-2#";
levelsArray[3012] = data3012;
data3013 = "title=South Wing 1&bgnum=6&data=21-0-6-19-19-19-19-5-43-5-42-0-33-5-0-0-0-0-0-0-5-0-0-0-5-0-0-0-0-0-0-5-57-0-0-41-41-0-41-0-64-56-5-0-0-0-0-0-0-0-0-0-2-52-0-0-0-2-0-0-0-0-41-2-0-0-0-0-41-41-0-0-0-0-0-0-0-0-0-0-0-0-41-0-64-0-0-0-0-0-2-0-0-0-0-0-41-0-0-0-0-41-41-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-41-38-65-64-0-5-0-0-0-41-41-0-0-0-0-56-5-0-0-0-0-0-0-41-0-0-0-5-57-0-62-2-60-0-0-0-0-0-5-0-0-34-2-0-0-0-6-19-19-19-19-doordata33-1-1-1-7-3#34-15-1-2-14-1#";
levelsArray[3013] = data3013;
data3014 = "title=South Wing 2&bgnum=6&data=0-22-2-0-0-41-0-2-0-0-33-0-0-2-0-0-0-44-2-0-0-21-0-38-2-0-0-0-0-8-19-19-19-0-0-66-41-0-41-0-0-56-0-43-0-0-2-0-0-0-0-0-0-2-2-0-0-2-0-0-0-0-0-0-0-0-0-0-43-2-0-60-0-0-56-0-0-0-0-0-2-0-0-0-0-41-0-2-0-0-0-0-2-0-0-60-0-0-41-0-0-0-0-0-2-0-0-56-0-2-60-0-0-0-0-2-0-0-0-0-41-0-0-0-0-0-2-0-0-41-2-0-0-0-60-0-0-2-56-0-2-0-0-0-0-0-0-0-2-0-0-2-0-62-0-0-0-0-0-2-0-0-2-0-0-0-0-0-0-0-8-19-19-2-0-33-doordata33-0-10-1-13-2#33-15-10-2-15-1#";
levelsArray[3014] = data3014;
data3015 = "title=South Wing 3&bgnum=6&data=0-0-0-0-0-0-0-21-0-0-33-0-0-8-19-2-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-15-0-2-0-0-0-0-0-0-60-0-0-0-0-0-0-0-0-2-0-0-0-0-0-12-0-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-0-0-2-0-0-0-0-0-0-0-0-0-44-2-0-0-56-0-2-0-0-0-0-0-2-0-0-0-0-0-0-0-43-0-0-15-0-0-0-2-0-11-0-0-0-0-0-0-0-0-0-0-0-0-22-0-0-0-0-0-2-0-0-0-0-51-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-0-56-0-0-0-0-0-0-33-2-0-0-0-0-42-8-19-19-doordata33-0-10-1-14-2#33-15-1-2-16-1#";
levelsArray[3015] = data3015;
data3016 = "title=South Wing 4&bgnum=6&data=0-33-2-41-23-2-0-57-2-0-0-21-0-2-0-0-2-0-43-2-0-0-0-0-8-0-0-0-0-0-0-0-51-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-8-19-19-2-0-0-0-0-0-2-41-2-0-38-2-0-57-2-2-2-2-2-2-2-2-2-0-0-0-41-8-19-19-19-19-19-19-19-19-0-62-2-0-41-2-52-0-2-0-0-0-41-2-0-41-2-0-0-2-0-22-60-0-0-0-2-2-2-42-2-0-0-0-0-60-0-0-0-0-0-0-0-0-0-0-0-0-0-0-56-0-0-0-0-2-2-0-0-0-0-0-2-0-0-22-0-33-2-0-0-0-0-2-0-0-0-0-0-8-19-19-19-2-0-0-0-0-doordata33-0-1-1-15-2#33-14-1-2-17-1#";
levelsArray[3016] = data3016;
data3017 = "title=South Tower&bgnum=13&data=0-21-2-0-0-0-0-35-2-0-53-0-34-2-0-0-0-0-0-2-0-53-0-0-2-0-2-0-56-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-2-0-0-43-2-0-53-0-0-0-0-0-0-0-0-2-0-53-60-0-0-0-0-2-56-0-0-0-53-0-0-2-0-0-0-0-0-0-0-53-0-38-2-0-0-0-2-0-0-0-2-0-0-2-0-0-0-0-0-0-0-0-60-0-0-0-0-0-0-0-0-0-0-0-0-0-13-0-0-0-0-0-0-2-0-0-0-0-0-0-0-0-11-0-0-2-0-0-2-2-2-0-0-0-2-42-0-0-0-0-0-0-0-0-0-0-0-19-19-19-19-19-19-19-0-0-0-57-doordata35-0-7-2-34-1#34-1-1-1-16-2#";
levelsArray[3017] = data3017;
data3018 = "title=West Wing 1&bgnum=7&data=0-23-2-0-0-21-2-0-0-0-42-41-43-2-0-0-34-2-0-0-56-57-41-0-2-0-0-0-2-0-0-0-43-0-38-2-0-0-41-2-0-0-0-0-0-0-2-0-0-0-0-0-16-0-44-0-0-2-60-0-0-0-0-0-56-0-0-0-0-15-0-0-2-0-0-0-43-0-0-56-0-41-41-0-0-0-0-22-0-64-0-0-0-0-0-0-0-0-44-0-0-0-0-8-19-2-0-0-56-43-41-0-0-0-0-0-0-0-0-0-57-0-2-0-0-0-41-2-0-0-0-0-0-0-0-0-0-41-2-0-0-0-34-0-0-0-0-0-3-2-0-0-0-0-0-0-0-0-0-34-2-0-0-56-0-0-0-0-0-0-2-2-0-0-0-0-doordata34-1-5-1-7-4#34-12-10-3-19-3#34-14-5-2-19-1#";
levelsArray[3018] = data3018;
data3019 = "title=West Wing 2&bgnum=7&data=42-0-66-0-0-66-41-0-66-0-34-0-0-2-0-34-2-0-23-2-0-0-41-0-2-0-21-2-41-0-2-0-41-41-0-2-0-0-8-19-19-2-0-57-0-0-2-0-41-0-0-0-2-0-0-0-0-2-0-0-0-0-0-2-0-38-0-0-11-2-60-0-56-0-2-0-62-0-0-0-0-2-0-0-44-2-0-57-0-0-0-0-0-0-0-43-2-0-41-0-0-0-0-0-2-0-0-2-2-0-0-0-0-41-0-0-0-41-22-2-22-0-41-2-0-0-0-0-41-0-2-0-0-0-0-0-0-2-0-0-0-2-41-0-0-2-0-0-8-19-19-19-2-0-0-34-2-2-2-2-2-2-2-2-22-0-0-8-19-19-19-19-19-19-19-19-doordata34-0-10-3-18-3#34-1-4-1-18-2#34-14-1-2-20-1#";
levelsArray[3019] = data3019;
data3020 = "title=West Wing 3&bgnum=7&data=0-41-0-0-0-0-0-0-0-0-2-0-0-0-0-0-41-41-41-0-0-0-0-0-2-2-2-2-2-2-2-2-0-0-34-2-0-0-0-0-0-38-2-22-0-21-2-0-0-0-0-43-0-2-41-2-2-2-0-0-0-2-0-62-2-0-0-34-2-0-56-41-2-41-42-2-22-0-0-2-0-0-74-2-0-62-2-0-0-0-0-0-0-0-0-0-0-0-44-0-41-2-0-0-0-0-0-56-0-0-0-0-60-0-0-23-2-0-0-8-19-0-0-0-0-41-0-2-52-0-2-0-0-0-17-0-41-0-2-0-0-2-0-0-0-0-0-0-0-2-0-0-2-2-0-0-0-0-0-0-0-2-0-0-2-41-0-0-0-0-0-0-8-19-19-41-doordata34-3-1-1-19-2#34-6-1-2-21-1#";
levelsArray[3020] = data3020;
data3021 = "title=West Wing 4&bgnum=7&data=41-41-41-41-41-42-0-0-0-0-33-0-0-2-2-2-2-2-2-0-0-21-0-0-8-19-19-19-19-2-0-0-0-2-2-2-0-0-0-0-2-0-56-43-0-0-11-2-0-0-0-0-0-0-0-0-0-0-0-2-0-0-63-2-0-22-0-0-0-0-0-0-0-0-2-0-0-0-0-0-0-2-0-41-0-2-54-0-0-0-0-41-0-2-0-41-2-0-0-0-33-2-0-38-2-0-0-0-0-41-0-62-2-0-0-0-0-0-0-0-0-60-0-0-0-0-0-2-0-0-0-22-0-0-2-0-0-0-0-0-41-44-2-0-0-34-2-0-0-5-41-0-2-0-0-0-0-2-0-0-41-0-2-56-0-0-0-26-2-0-0-0-2-0-0-0-doordata33-0-10-1-20-2#33-9-1-2-22-1#34-13-2-3-28-1#";
levelsArray[3021] = data3021;
data3022 = "title=West Tower&bgnum=4&data=42-38-1-41-0-0-41-65-0-65-43-0-73-1-41-0-64-0-0-0-0-0-0-41-1-41-0-0-0-41-0-0-65-0-60-0-0-64-0-0-0-2-1-0-0-0-0-0-21-0-2-0-2-1-41-0-0-12-0-0-77-2-0-2-1-41-0-0-0-41-0-33-2-41-2-1-0-0-0-0-65-0-0-5-44-2-1-0-0-0-0-0-2-2-5-38-2-0-62-0-0-0-0-0-22-2-43-2-1-41-0-0-0-65-1-0-2-57-2-1-0-0-0-0-0-1-41-0-62-2-1-57-0-0-0-0-1-0-0-0-2-1-41-0-62-1-24-1-60-41-0-0-0-41-0-40-1-0-1-0-0-0-0-43-2-0-26-1-38-7-19-19-19-19-0-63-doordata33-6-5-1-21-2#";
levelsArray[3022] = data3022;
data3023 = "title=North Wing 1&bgnum=9&data=0-0-8-19-2-0-0-38-2-0-21-0-41-5-0-15-0-0-41-2-0-33-0-0-5-0-0-0-0-41-8-19-19-60-43-5-0-0-0-0-41-2-2-2-41-0-5-0-0-0-0-0-15-0-51-0-0-5-0-5-0-41-0-0-0-51-41-0-5-0-2-0-56-0-0-0-51-0-0-0-44-2-0-0-0-0-0-51-0-0-16-0-0-0-0-2-0-0-2-0-0-0-43-2-41-62-2-0-0-2-60-0-0-0-0-0-0-0-0-2-2-0-0-0-0-5-0-56-0-15-0-51-41-0-0-0-5-0-0-0-0-0-51-0-0-0-0-0-0-0-0-0-0-51-0-0-0-42-2-0-0-0-0-0-51-0-33-5-0-8-19-19-19-2-0-51-doordata33-1-10-1-7-5#33-15-1-2-24-1#";
levelsArray[3023] = data3023;
data3024 = "title=North Wing 2&bgnum=9&data=0-34-2-0-38-2-42-2-0-33-2-0-21-2-0-43-2-41-2-0-0-2-0-0-0-2-0-2-57-2-0-0-2-0-0-0-0-57-5-43-2-0-41-0-0-0-2-56-0-5-41-0-2-0-62-41-0-2-0-0-2-0-0-2-2-0-0-0-0-2-0-2-60-0-41-2-0-0-0-0-41-22-2-0-0-41-2-0-0-0-2-0-0-2-0-0-2-2-0-0-74-2-0-0-0-2-0-2-0-78-0-43-2-2-2-0-2-0-2-0-0-0-0-0-0-0-0-2-57-2-0-57-0-56-2-0-2-0-5-0-2-0-0-0-0-0-41-2-57-5-41-2-56-0-0-0-2-2-0-0-5-0-0-2-41-0-0-8-19-19-19-8-19-19-8-19-doordata34-0-1-1-23-2#33-0-9-2-25-1#";
levelsArray[3024] = data3024;
data3025 = "title=North Wing 3&bgnum=9&data=0-33-5-38-5-0-6-19-5-0-33-0-0-2-0-5-0-5-0-0-0-21-0-62-6-19-5-0-0-0-0-5-0-0-0-0-0-5-0-0-5-57-5-0-0-0-0-0-0-56-0-5-0-5-57-0-0-5-0-5-0-0-5-22-5-0-0-0-5-23-5-0-0-0-0-5-43-0-0-60-0-5-0-5-0-0-0-22-0-5-0-0-0-56-5-0-0-5-0-0-0-56-5-0-0-0-0-22-5-43-0-2-26-5-0-0-0-0-0-5-0-0-0-63-5-0-0-5-0-0-0-0-0-0-0-0-0-23-5-0-0-5-0-0-0-0-0-5-0-5-0-22-5-43-0-0-0-0-5-0-5-0-0-5-22-0-42-5-0-6-19-5-0-0-6-19-doordata33-0-1-2-26-1#33-0-10-1-24-2#";
levelsArray[3025] = data3025;
data3026 = "title=North Wing 4&bgnum=9&data=19-19-19-19-19-19-19-19-8-19-19-0-60-0-0-0-0-0-38-2-0-57-2-2-6-19-19-5-0-0-0-56-0-2-42-5-41-41-5-0-0-0-0-0-2-41-2-0-62-2-0-41-2-2-2-2-22-2-41-42-2-0-0-8-19-19-2-22-2-2-2-2-0-0-11-0-22-0-33-5-0-0-0-0-0-0-0-0-2-0-5-21-34-6-19-41-0-0-0-2-0-5-0-0-0-41-0-0-0-22-0-62-2-2-2-2-41-0-0-0-0-0-41-0-0-0-2-41-0-8-19-19-0-41-5-0-2-2-0-62-2-2-2-0-0-41-0-0-2-0-0-0-0-57-0-26-6-19-19-19-6-19-5-0-0-0-0-5-0-0-41-0-56-6-19-19-doordata33-7-1-2-27-1#34-8-4-1-25-2#";
levelsArray[3026] = data3026;
data3027 = "title=North Tower&bgnum=13&data=21-33-5-0-0-0-0-0-0-5-0-0-0-0-0-0-0-0-0-0-0-0-0-0-43-5-41-5-43-5-0-0-0-0-0-22-5-38-5-0-5-38-5-0-0-0-0-5-23-5-0-5-0-5-0-2-0-62-0-0-5-62-0-0-2-22-60-0-41-5-41-5-41-5-41-2-43-0-0-41-5-41-5-41-5-41-2-0-0-56-42-5-41-5-41-5-41-2-56-0-0-22-5-44-5-26-5-0-2-0-0-0-0-5-0-5-62-5-44-2-22-0-0-0-0-0-63-0-0-0-0-0-0-0-0-0-0-0-63-0-0-0-2-0-62-5-0-43-0-0-0-0-0-0-0-37-5-0-0-5-0-0-0-5-44-56-0-5-0-0-6-19-19-19-19-19-doordata33-0-1-1-26-2#";
levelsArray[3027] = data3027;
data3028 = "title=Oubliette&bgnum=14&data=0-0-10-19-19-4-0-0-21-4-43-0-34-4-0-41-4-4-0-34-4-44-0-0-4-0-0-41-4-41-41-10-19-0-34-4-0-0-0-0-0-0-0-0-0-0-0-41-0-4-0-17-0-0-51-0-60-0-0-0-0-38-0-0-0-51-0-0-0-41-0-5-0-0-0-0-51-0-0-0-0-0-0-4-0-0-2-51-0-0-0-0-0-0-0-0-62-2-51-0-0-41-41-0-0-0-0-0-0-51-0-0-41-41-41-43-41-0-62-2-51-41-38-4-0-0-0-0-0-0-0-51-0-0-4-0-0-0-41-0-62-2-51-60-0-4-0-0-0-0-0-0-0-51-0-41-14-0-0-0-0-0-0-0-41-0-0-4-0-0-0-44-10-19-19-41-doordata34-1-1-3-28-1#34-1-8-1-28-1#34-3-1-2-21-1#";
levelsArray[3028] = data3028;
data3029 = "title=Pantry&bgnum=15&data=0-56-0-0-0-6-19-19-0-0-21-0-42-0-0-0-5-0-0-0-0-33-41-41-41-0-0-0-0-0-41-5-0-0-0-0-0-0-0-0-0-41-5-41-0-0-0-0-0-5-0-0-41-5-0-5-0-0-41-41-0-63-0-41-5-41-6-19-5-0-0-0-0-0-41-5-0-0-0-5-0-0-0-0-0-41-5-41-0-56-5-0-0-5-0-0-41-5-0-0-0-5-41-41-0-63-0-41-5-41-0-0-5-0-0-0-0-0-41-5-0-0-0-5-0-0-0-0-0-41-5-41-0-0-5-0-0-5-0-0-41-5-0-0-0-5-41-41-0-63-0-41-5-41-0-56-5-0-0-0-0-0-41-6-19-0-0-6-19-19-5-0-0-0-0-38-doordata33-1-10-1-7-7#";
levelsArray[3029] = data3029;
data3030 = "title=Wizard Tower 1&bgnum=12&data=0-0-0-33-2-56-0-0-0-4-53-0-0-0-0-2-21-33-4-0-4-53-0-0-0-0-2-0-3-4-0-4-53-0-0-0-0-0-0-0-0-0-4-53-0-0-0-0-0-0-0-0-0-16-53-0-0-0-0-0-4-0-0-0-0-53-0-0-0-0-0-4-0-0-0-0-53-0-0-0-0-0-4-0-0-0-0-53-0-0-0-2-0-0-0-0-0-0-53-0-0-0-2-0-0-0-0-0-0-53-2-0-62-2-0-62-4-0-0-0-53-0-0-17-0-0-56-4-0-0-11-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-27-0-0-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-38-10-19-0-10-19-19-19-4-53-doordata33-0-3-2-31-1#33-1-6-1-7-6#";
levelsArray[3030] = data3030;
data3031 = "title=Wizard Tower 2&bgnum=12&data=0-34-4-0-34-4-0-0-0-10-19-0-21-4-56-0-4-0-0-38-4-0-0-41-4-0-0-4-60-54-0-4-0-0-41-2-0-62-2-2-0-0-4-22-0-0-4-0-44-2-0-0-43-4-0-0-0-4-0-22-2-0-0-0-0-0-0-0-4-56-0-8-19-19-0-0-4-0-0-4-2-57-2-0-0-41-42-4-0-0-0-0-0-0-0-0-0-0-4-0-0-0-0-0-0-41-0-0-0-53-0-63-0-41-0-0-0-0-0-0-53-42-0-0-63-41-63-27-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-0-0-0-41-0-0-53-0-41-4-0-0-0-38-4-0-0-4-0-56-10-19-19-19-19-19-19-19-4-doordata34-0-1-1-30-2#34-0-4-2-32-1#";
levelsArray[3031] = data3031;
data3032 = "title=Throne Room&bgnum=11&data=0-0-0-0-72-0-0-42-5-0-21-0-0-0-0-0-0-0-43-5-0-34-0-0-0-0-0-0-0-0-5-0-0-95-0-0-0-0-0-0-0-6-19-19-0-0-0-0-0-0-0-0-0-0-0-95-0-0-0-0-0-0-56-0-0-0-0-0-0-0-0-0-0-0-0-0-0-95-0-0-0-0-0-0-28-0-0-43-0-0-0-0-0-0-0-0-0-0-0-95-0-0-0-0-27-0-0-0-0-0-0-0-0-0-0-0-41-0-0-0-0-95-0-0-0-0-0-0-56-0-0-0-0-0-0-0-72-0-0-0-6-19-19-0-0-0-0-0-0-43-0-5-0-62-0-0-0-0-0-0-0-0-5-0-0-0-0-0-0-0-0-0-38-5-0-42-doordata34-1-10-1-31-2#";
levelsArray[3032] = data3032;
data3033 = "title=Secret Garden&bgnum=3&data=0-0-7-19-19-19-19-1-0-0-21-0-0-1-0-0-0-43-1-0-0-33-0-41-1-0-0-0-24-1-0-0-0-0-41-1-0-0-0-41-1-0-41-1-0-0-1-0-0-0-41-1-0-41-1-0-24-1-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-1-41-0-1-0-0-0-0-0-0-41-1-41-0-1-0-0-0-41-1-0-24-1-41-0-1-0-0-0-41-1-0-0-0-41-41-0-0-0-0-0-0-41-1-0-24-41-0-0-0-0-0-0-3-1-0-0-0-41-0-0-0-0-0-24-1-0-0-0-41-41-0-0-0-0-2-1-0-0-0-0-41-0-24-1-0-0-7-19-19-0-0-0-42-0-1-0-43-1-0-0-doordata33-1-10-1-5-3#";
levelsArray[3033] = data3033;
data3034 = "title=The Inferno&bgnum=13&data=0-0-0-38-2-0-0-33-2-0-53-0-0-0-0-2-0-0-21-2-0-53-0-0-0-0-0-16-0-0-0-0-53-0-0-0-64-0-0-41-2-0-0-53-0-0-0-64-0-0-0-0-0-0-53-0-41-0-0-0-0-0-0-0-0-53-0-41-64-0-0-0-41-2-0-0-53-0-0-64-0-0-0-0-0-0-0-53-0-0-0-0-0-0-0-0-0-0-53-0-0-0-0-0-0-0-0-2-0-53-41-64-0-0-15-0-0-74-2-0-53-0-2-0-0-0-0-0-0-0-0-53-0-0-0-0-0-0-41-2-0-0-53-0-0-0-0-0-0-0-0-0-0-53-41-2-0-0-0-41-2-0-0-0-53-0-41-0-0-41-2-0-0-0-0-53-doordata33-0-7-1-17-2#";
levelsArray[3034] = data3034;
data3035 = "title=Forgotten Jail&bgnum=1&data=0-2-2-2-0-43-2-2-0-0-2-0-0-41-2-0-0-41-2-0-0-41-0-0-41-2-0-0-22-2-0-0-26-0-0-22-2-0-0-41-2-0-0-74-0-0-41-2-0-0-41-2-0-0-0-0-0-41-2-0-0-57-2-0-0-26-2-0-62-2-0-62-2-2-0-0-41-0-8-19-19-19-19-19-2-0-62-2-78-2-0-0-0-0-0-2-0-0-0-0-2-0-0-0-0-0-8-19-19-19-0-2-0-38-65-0-0-0-0-0-0-41-2-0-0-0-0-0-0-0-0-51-0-0-0-0-2-0-0-0-0-0-71-0-0-0-33-2-0-0-56-0-0-51-0-0-0-21-2-0-0-0-0-0-74-0-0-0-0-0-0-0-0-0-0-51-doordata33-13-3-1-3-3#";
levelsArray[3035] = data3035;
menu.warning.visible = false;
gamelevel.visible = false;
quitScreen.visible = false;
messagebox.visible = false;
gameoverpanel.visible = false;
howtoplay.visible = false;
if (!savedProgress.data.livesLeft){
menu.loadsavebtn.visible = false;
} else {
menu.loadsavebtn.visible = true;
};
stage.quality = StageQuality.HIGH;
theversion = String(Capabilities.version);
if (theversion.indexOf("9,0,45,0") != -1){
menu.warning.visible = true;
};
stopMusic();
}
function frame17(){
stop();
messagebox.visible = false;
startPlatformGame();
loadlevelbtn.addEventListener(MouseEvent.CLICK, goLevel);
stage.quality = StageQuality.MEDIUM;
}
function frame3(){
prog = (this.loaderInfo.bytesLoaded / this.loaderInfo.bytesTotal);
loadbar.scaleX = prog;
}
function frame4(){
if (framesLoaded == totalFrames){
play();
} else {
gotoAndPlay("load");
};
}
function frame18(){
}
public function startGameLevel(){
this.addEventListener(Event.ENTER_FRAME, gameLoop);
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownFunction);
stage.addEventListener(KeyboardEvent.KEY_UP, keyUpFunction);
clickbit.addEventListener(MouseEvent.MOUSE_DOWN, shoot);
gameMode = "play";
addScore(0);
showLives();
uifire.visible = hero.hasFlame;
uiamulet.visible = hero.hasAmulet;
uiruby.visible = hero.hasRuby;
}
function frame1(){
if (MochiBot != null){
MochiBot.track(this, "07cfe4fc");
};
stage.showDefaultContextMenu = false;
if (Capabilities.playerType != "External"){
if (MochiAd != null){
MochiAd.showPreGameAd({clip:root, id:"9e766ab65642d883", res:"640x480"});
};
};
if (MochiServices != null){
MochiServices.connect("9e766ab65642d883", this);
MochiServices.connect("9e766ab65642d883", this);
};
}
public function startPlatformGame(){
ClearBlocks();
gameoverpanel.visible = false;
if (diff == 1){
diffMod = 0;
} else {
diffMod = 3000;
};
hallVisited = false;
closemsg();
gameScore = 0;
gameMode = "play";
playerLives = (5 - (diff * 2));
wizAttack = 0;
oneFrame = 0;
starsGot = 0;
isLoaded = false;
hero = new Hero(this);
uifire.visible = (uiamulet.visible = (uiruby.visible = false));
blockholder = gamelevel.blockholder;
arrowholder = gamelevel.arrowholder;
monsterholder = gamelevel.monsterholder;
blockholder.visible = false;
quitScreen.visible = false;
placedRuby = false;
wizardDead = false;
fixedObjects = new Array();
otherObjects = new Array();
arrows = new Array();
badArrows = new Array();
doors = new Array();
enemies = new Array();
generators = new Array();
gotStars = new Array();
gotLives = new Array();
lustras = new Array();
timeSum = 0;
frameCount = 0;
playMainMusic();
if (loadSavedGame){
loadGame();
loadLevel(7, 0);
} else {
loadLevel(1, 0);
};
countStars();
}
public function countStars(){
var _local1:*;
var _local2:*;
var _local3:int;
var _local4:int;
var _local5:String;
var _local6:int;
_local1 = 0;
_local2 = (0 + diffMod);
while (_local2 < (37 + diffMod)) {
if (levelsArray[_local2] == undefined){
} else {
_local3 = 0;
_local4 = 0;
while (_local3 != -1) {
_local4++;
if (_local4 > 99999){
break;
};
_local5 = levelsArray[_local2];
_local6 = _local5.indexOf("41", (_local3 + 1));
_local3 = _local6;
if (_local6 != -1){
_local1++;
};
};
};
_local2++;
};
starstotal_txt.text = String(_local1);
}
public function endWinGame(){
this.removeEventListener(Event.ENTER_FRAME, gameLoop);
stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownFunction);
stage.removeEventListener(KeyboardEvent.KEY_UP, keyUpFunction);
clickbit.removeEventListener(MouseEvent.MOUSE_DOWN, shoot);
gamelevel.bgcolour.gotoAndPlay(2);
wingame.gotoAndPlay(2);
}
public function getYFromRow(_arg1){
return (((_arg1 * cellHeight) + gamelevel.y));
}
public function loadResult(_arg1:Event){
var _local2:int;
var _local3:int;
var _local4:*;
var _local5:Object;
var _local6:*;
var _local7:String;
var _local8:Array;
var _local9:Array;
var _local10:int;
var _local11:Array;
var _local12:*;
var _local13:int;
var _local14:URLVariables;
var _local15:Array;
var _local16:int;
gamelevel.bgcolour.gotoAndStop(1);
if (curLevel > 3){
gamelevel.help.visible = false;
} else {
gamelevel.help.gotoAndStop(curLevel);
gamelevel.help.visible = true;
};
if (curDoor != 0){
sounds.doorclose.play();
};
isLoaded = true;
if (gotStars[curLevel] == undefined){
gotStars[curLevel] = new Array();
};
if (gotLives[curLevel] == undefined){
gotLives[curLevel] = new Array();
};
_local2 = 0;
_local3 = 0;
ClearBlocks();
oneFrame = 0;
FillUpArray();
_local4 = URLLoader(getLevelLoader);
_local5 = new Object();
if (_arg1.type != "timer"){
_local5.data = _local4.data["data"];
_local5.title = _local4.data["title"];
_local5.bgnum = _local4.data["bgnum"];
};
_local6 = curLevel;
if (diff == 0){
_local6 = (_local6 + 3000);
};
if (_arg1.type == "timer"){
_local14 = new URLVariables();
_local14.decode(levelsArray[_local6]);
_local5.data = _local14.data;
_local5.title = _local14.title;
_local5.bgnum = _local14.bgnum;
};
levelname.level_txt.text = String(_local5.title);
gamelevel.bgs.gotoAndStop(_local5.bgnum);
gamelevel.bgs.visible = true;
_local7 = _local5.data;
_local8 = _local7.split("doordata");
_local9 = _local8[1].split("#");
_local10 = 0;
while (_local10 < (_local9.length - 1)) {
_local15 = _local9[_local10].split("-");
CreateBlockFromLoad(parseInt(_local15[0]), parseInt(_local15[1]), parseInt(_local15[2]), parseInt(_local15[3]), parseInt(_local15[4]), parseInt(_local15[5]));
_local10++;
};
_local11 = _local8[0].split("-");
_local12 = 0;
_local13 = 0;
while (_local13 < gridWidth) {
_local16 = 0;
while (_local16 < gridHeight) {
levelData[_local13][_local16] = _local11[_local12];
_local12++;
_local16++;
};
_local13++;
};
_local13 = 0;
while (_local13 < gridWidth) {
_local16 = 0;
while (_local16 < gridHeight) {
if (levelData[_local13][_local16] != 0){
if ((((parseInt(levelData[_local13][_local16]) < 33)) || ((parseInt(levelData[_local13][_local16]) > 36)))){
if ((((parseInt(levelData[_local13][_local16]) > 21)) && ((parseInt(levelData[_local13][_local16]) < 33)))){
createMonster(parseInt(levelData[_local13][_local16]), _local13, _local16, null);
} else {
if ((((parseInt(levelData[_local13][_local16]) > 56)) && ((parseInt(levelData[_local13][_local16]) < 61)))){
createGenerator(parseInt(levelData[_local13][_local16]), _local13, _local16);
} else {
if (parseInt(levelData[_local13][_local16]) == 41){
if (!gotStars[curLevel][_local2]){
CreateBlockFromLoad(parseInt(levelData[_local13][_local16]), _local13, _local16, 0, 0, 0, _local2);
};
_local2++;
} else {
if (parseInt(levelData[_local13][_local16]) == 42){
if (!gotLives[curLevel][_local3]){
CreateBlockFromLoad(parseInt(levelData[_local13][_local16]), _local13, _local16, 0, 0, 0, _local3);
};
_local3++;
} else {
CreateBlockFromLoad(parseInt(levelData[_local13][_local16]), _local13, _local16, 0, 0, 0);
};
};
};
};
};
};
_local16++;
};
_local13++;
};
if ((((curLevel == 7)) && (hero.hasPulledLever))){
CreateBlockFromLoad(64, 9, 4, 0, 0, 0);
CreateBlockFromLoad(64, 10, 5, 0, 0, 0);
CreateBlockFromLoad(64, 11, 6, 0, 0, 0);
};
if (oneFrame == 0){
} else {
updateJoins();
};
startGameLevel();
if ((((curLevel == 7)) && (!(hallVisited)))){
hallVisited = true;
showmsg();
};
}
public function getScore(){
return (gameScore);
}
public function moveEnemies(_arg1:int){
var _local2:int;
_local2 = 0;
while (_local2 < enemies.length) {
enemies[_local2].update(_arg1);
_local2++;
};
}
public function continueGame(){
gotLives = new Array();
ClearBlocks();
gameoverpanel.visible = false;
timeSum = 0;
frameCount = 0;
gameMode = "play";
playerLives = (5 - (diff * 2));
oneFrame = 0;
hero.continueGame();
loadLevel(7, 0);
}
public function clearLevel(){
}
public function createGenerator(_arg1:int, _arg2:int, _arg3:int){
var _local4:MonsterGenerator;
_local4 = new MonsterGenerator(this);
_local4.gotoAndStop((_arg1 - 56));
blockholder.addChild(_local4);
_local4.col = _arg2;
_local4.row = _arg3;
_local4.x = getXFromCol(_arg2);
_local4.y = getYFromRow(_arg3);
_local4.monsterType = (_arg1 - 35);
_local4.init();
generators.push(_local4);
}
public function updateJoins(){
var _local1:int;
var _local2:Block;
var _local3:int;
_local1 = 0;
while (_local1 < fixedObjects.length) {
_local2 = fixedObjects[_local1];
if (_local2.blocktype == 36){
if (((hero.hasRuby) && (placedRuby))){
_local2.block36.gotoAndStop("ruby");
};
};
if ((((curLevel == 7)) && ((_local2.blocktype == 64)))){
_local2.block64.play();
};
if (_local2.blocktype < 6){
if (Math.random() > 0.5){
_local2[("block" + _local2.blocktype)].gotoAndStop(2);
};
_local3 = (_local2.col - 1);
if (_local3 >= 0){
if (levelData[_local3][_local2.row] == 0){
_local2[("block" + _local2.blocktype)].gotoAndStop(3);
};
};
_local3 = (_local2.col + 1);
if (_local3 < gridWidth){
if (levelData[_local3][_local2.row] == 0){
_local2[("block" + _local2.blocktype)].gotoAndStop(4);
};
};
};
if (_local2.blocktype == 51){
_local2.block51.gotoAndStop(Math.ceil((Math.random() * 4)));
};
_local1++;
};
blockholder.visible = true;
gamelevel.visible = true;
}
public function FillUpArray(){
var _local1:int;
var _local2:int;
levelData = new Array(gridWidth);
_local1 = 0;
while (_local1 < gridWidth) {
levelData[_local1] = new Array(gridHeight);
_local2 = 0;
while (_local2 < gridHeight) {
levelData[_local1][_local2] = 0;
_local2++;
};
_local1++;
};
}
public function getSuperObject(_arg1:int){
if (_arg1 == 39){
hero.hasFlame = true;
};
if (_arg1 == 40){
hero.hasAmulet = true;
};
if (_arg1 == 37){
hero.hasRuby = true;
};
loadLevel(7, 0);
}
public function shootLightning(_arg1:Monster, _arg2:Number){
var _local3:BadArrow;
var _local4:*;
var _local5:*;
var _local6:*;
var _local7:*;
var _local8:Number;
if (wizAttack < 2){
wizAttack++;
_local3 = new BadArrow();
_local3.game = this;
arrowholder.addChild(_local3);
sounds.wizardattack.play();
_local4 = hero.mc.x;
_local5 = hero.mc.y;
_local3.direction = _arg1.direction;
_local3.x = ((_arg1.x + _arg1.inner.movewiz.x) + _arg2);
_local3.y = ((_arg1.y + _arg1.inner.movewiz.y) - 10);
_local3.rotation = 90;
_local3.game = this;
_local6 = (_local4 - _local3.x);
_local7 = (_local3.y - _local5);
_local8 = Math.sqrt(((_local6 * _local6) + (_local7 * _local7)));
_local6 = (_local6 / _local8);
_local7 = (_local7 / _local8);
_local3.dx = (_local6 / 2);
_local3.dy = (-(_local7) / 2);
_local3.init(_arg1);
badArrows.push(_local3);
} else {
wizAttack = 0;
sounds.wizardsummon.play();
createMonster(26, getColFromX(hero.mc.x), getRowFromY((hero.mc.y - 180)), null);
};
}
public function hitTrap(_arg1:Block){
}
public function GetDistSq(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number){
var _local5:Number;
var _local6:Number;
var _local7:Number;
_local5 = (_arg1 - _arg3);
_local6 = (_arg2 - _arg4);
_local7 = ((_local5 * _local5) + (_local6 * _local6));
return (_local7);
}
public function getRowFromY(_arg1){
_arg1 = (_arg1 - gamelevel.y);
_arg1 = (_arg1 / cellHeight);
_arg1 = Math.floor(_arg1);
return (_arg1);
}
public function gameLoop(_arg1:Event){
var _local2:int;
if (oneFrame < 2){
if (oneFrame == 1){
updateJoins();
};
oneFrame++;
return;
};
if (lastTime == 0){
lastTime = getTimer();
};
_local2 = (getTimer() - lastTime);
lastTime = (lastTime + _local2);
timeSum = (timeSum + _local2);
frameCount++;
if (frameCount == 60){
fps.text = String(Math.round((1000 / (timeSum / 60))));
timeSum = 0;
frameCount = 0;
timeSum = 0;
frameCount = 0;
};
if (gameMode == "play"){
if (_local2 > 100){
_local2 = 100;
};
updateAim();
hero.moveHero(_local2);
updateArrows(_local2);
moveEnemies(_local2);
checkCollisions();
};
}
public function getColFromX(_arg1){
_arg1 = (_arg1 - gamelevel.x);
_arg1 = (_arg1 / cellWidth);
_arg1 = Math.floor(_arg1);
return (_arg1);
}
public function removeArrow(_arg1){
var _local2:*;
_local2 = 0;
while (_local2 < arrows.length) {
if (_arg1 == arrows[_local2]){
arrows.splice(_local2, 1);
arrowholder.removeChild(_arg1);
_arg1 = null;
};
_local2++;
};
}
public function winGame(){
stopMusic();
CreateBlockFromLoad(79, 7, 8, 0, 0, 0);
CreateBlockFromLoad(33, 7, 10, 2, 10000, 0);
removeBlock(wizDoor);
}
public function loadGame(){
hero.hasFlame = savedProgress.data.hasFlame;
hero.hasAmulet = savedProgress.data.hasAmulet;
hero.hasRuby = savedProgress.data.hasRuby;
hero.hasPulledLever = savedProgress.data.hasPulledLever;
playerLives = savedProgress.data.livesLeft;
starsGot = savedProgress.data.starsGot;
gotStars = savedProgress.data.gotStars;
gotLives = savedProgress.data.gotLives;
gameScore = savedProgress.data.gameScore;
placedRuby = savedProgress.data.placedRuby;
hallVisited = savedProgress.data.hallVisited;
diff = savedProgress.data.diff;
uifire.visible = hero.hasFlame;
uiamulet.visible = hero.hasAmulet;
uiruby.visible = hero.hasRuby;
if (diff == 1){
diffMod = 0;
} else {
diffMod = 3000;
};
}
public function ClearBlocks(){
var _local1:int;
var _local2:*;
var _local3:*;
if (!fixedObjects){
return;
};
_local1 = 0;
while (_local1 < fixedObjects.length) {
fixedObjects[_local1].endIt();
levelData[fixedObjects[_local1].col][fixedObjects[_local1].row] = 0;
blockholder.removeChild(fixedObjects[_local1]);
fixedObjects[_local1] = null;
_local1++;
};
while (fixedObjects.length > 0) {
fixedObjects.shift();
};
while (arrows.length > 0) {
_local2 = arrows.shift();
arrowholder.removeChild(_local2);
_local2 = null;
};
while (badArrows.length > 0) {
_local2 = badArrows.shift();
arrowholder.removeChild(_local2);
_local2 = null;
};
_local1 = 0;
while (_local1 < enemies.length) {
enemies[_local1].endIt();
monsterholder.removeChild(enemies[_local1]);
enemies[_local1] = null;
_local1++;
};
while (enemies.length > 0) {
enemies.shift();
};
_local1 = 0;
while (_local1 < lustras.length) {
lustras[_local1].hit = true;
blockholder.removeChild(lustras[_local1]);
lustras[_local1] = null;
_local1++;
};
while (lustras.length > 0) {
lustras.shift();
};
while (generators.length > 0) {
_local3 = generators.shift();
blockholder.removeChild(_local3);
_local3.emitting = false;
_local3 = null;
};
}
public function getPowerup(_arg1:Block){
if (hero.alive){
switch (_arg1.blocktype){
case 41:
_arg1.block41.gotoAndPlay("pickup");
starsGot++;
addScore(starPoints);
_arg1.alive = false;
break;
case 42:
_arg1.block42.gotoAndPlay("pickup");
sounds.pickuplife.play();
playerLives++;
_arg1.alive = false;
break;
case 43:
if (hero.numArrows < hero.maxArrows){
sounds.pickuparrows.play();
_arg1.block43.gotoAndPlay("pickup");
hero.addArrows(10);
_arg1.alive = false;
};
break;
case 44:
if (hero.curHealth < hero.maxHealth){
sounds.sintaeat.play();
_arg1.block44.gotoAndPlay("pickup");
hero.addHealth(50);
_arg1.alive = false;
};
break;
};
};
}
public function loadLevel(_arg1:uint, _arg2:int){
var _local3:URLRequest;
var _local4:*;
if (_arg1 > 1){
saveGame();
};
if (diff == 0){
_arg1 = (_arg1 + diffMod);
};
gamelevel.visible = false;
blackbit.play();
wizAttack = 0;
hero.mc.visible = false;
gamelevel.bgs.visible = false;
isLoaded = false;
gamelevel.help.visible = false;
ClearBlocks();
if ((_arg1 - diffMod) == 10000){
endWinGame();
return;
};
getLevelLoader = new URLLoader();
getLevelVars = new URLVariables();
getLevelLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
if (levelsArray[_arg1]){
} else {
_local3 = new URLRequest("http://www.kaiparasoft.co.nz/platform_leveltest/php/loadlevels.php");
getLevelVars.num = _arg1;
_local3.method = URLRequestMethod.POST;
_local3.data = getLevelVars;
getLevelLoader.addEventListener(Event.COMPLETE, loadResult);
getLevelLoader.load(_local3);
};
if (((!(((curLevel + diffMod) == _arg1))) && (((_arg1 - diffMod) == 32)))){
sounds.wizardlaugh1.play();
playWizMusic();
};
if ((((curLevel == 32)) && (!(((curLevel + diffMod) == _arg1))))){
playMainMusic();
};
curLevel = (_arg1 - diffMod);
curDoor = _arg2;
if (levelsArray[_arg1]){
_local4 = new Timer(100, 1);
_local4.start();
_local4.addEventListener(TimerEvent.TIMER, loadResult);
};
}
public function throwAxe(_arg1:Monster){
var _local2:BadArrow;
_local2 = new BadArrow();
_local2.game = this;
arrowholder.addChild(_local2);
_local2.init(_arg1);
badArrows.push(_local2);
}
public function killAllMonsters(){
var _local1:int;
var _local2:*;
var _local3:*;
_local1 = (enemies.length - 1);
while (_local1 >= 0) {
enemies[_local1].die();
_local1--;
};
while (badArrows.length > 0) {
_local2 = badArrows.shift();
arrowholder.removeChild(_local2);
_local2 = null;
};
while (generators.length > 0) {
_local3 = generators.shift();
blockholder.removeChild(_local3);
_local3.emitting = false;
_local3 = null;
};
}
public function removeBlock(_arg1){
var _local2:int;
_local2 = 0;
while (_local2 < fixedObjects.length) {
if (_arg1 == fixedObjects[_local2]){
levelData[_arg1.col][_arg1.row] = 0;
fixedObjects.splice(_local2, 1);
blockholder.removeChild(_arg1);
_arg1 = null;
};
_local2++;
};
}
public function addScore(_arg1:int){
gameScore = (gameScore + _arg1);
score_txt.text = String(gameScore);
starsgot_txt.text = String(starsGot);
}
public function showQuitScreen(){
quitScreen.visible = true;
}
public function closemsg(){
gameMode = "play";
messagebox.visible = false;
}
public function keyDownFunction(_arg1:KeyboardEvent){
if (((!((gameMode == "play"))) || (!(hero.alive)))){
return;
};
if (_arg1.keyCode == 27){
gameMode = "pause";
showQuitScreen();
return;
};
if ((((_arg1.keyCode == 37)) || ((_arg1.keyCode == 65)))){
hero.moveLeft = true;
pressLeft = true;
} else {
if ((((_arg1.keyCode == 39)) || ((_arg1.keyCode == 68)))){
hero.moveRight = true;
pressRight = true;
} else {
if ((((_arg1.keyCode == 40)) || ((_arg1.keyCode == 83)))){
hero.moveDown = true;
pressDown = true;
} else {
if (_arg1.keyCode == 32){
if (!hero.inAir){
hero.jump = true;
};
};
};
};
};
if ((((_arg1.keyCode == 87)) || ((_arg1.keyCode == 38)))){
if (((!(hero.inAir)) && (!(hero.isClimbing)))){
hero.jump = true;
};
hero.moveUp = true;
pressUp = true;
};
}
public function checkCollisions(){
var _local1:int;
_local1 = (enemies.length - 1);
while (_local1 >= 0) {
if (((((((((((enemies[_local1].alive) && (!(hero.isHit)))) && (!((enemies[_local1].monsterType == 23))))) && (!((enemies[_local1].monsterType == 24))))) && (!((enemies[_local1].monsterType == 27))))) && (!((enemies[_local1].monsterType == 28))))){
if (hero.mc.hitTestObject(enemies[_local1].inner.hitbitbite)){
hero.takeDamage(enemies[_local1].damage, enemies[_local1].damType, 0.1, enemies[_local1].x);
};
};
_local1--;
};
_local1 = 0;
while (_local1 < badArrows.length) {
_local1++;
};
}
public function playWizMusic(){
music.musicmain.gotoAndStop(1);
music.musicwizard.gotoAndStop(2);
}
public function removeMonster(_arg1){
var _local2:*;
_local2 = 0;
while (_local2 < enemies.length) {
if (_arg1 == enemies[_local2]){
enemies.splice(_local2, 1);
monsterholder.removeChild(_arg1);
_arg1 = null;
};
_local2++;
};
}
public function cleanUp(){
removeChild(gamelevel);
this.removeEventListener(Event.ENTER_FRAME, gameLoop);
stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownFunction);
stage.removeEventListener(KeyboardEvent.KEY_UP, keyUpFunction);
}
public function removeLustra(_arg1){
var _local2:*;
_local2 = 0;
while (_local2 < lustras.length) {
if (_arg1 == lustras[_local2]){
lustras.splice(_local2, 1);
blockholder.removeChild(_arg1);
_arg1 = null;
};
_local2++;
};
}
public function cloneArray(_arg1){
var _local2:*;
var _local3:*;
var _local4:*;
_local2 = new Array();
for (_local3 in _arg1) {
_local2[_local3] = new Object();
for (_local4 in _arg1[_local3]) {
_local2[_local3][_local4] = _arg1[_local3][_local4];
};
};
return (_local2);
}
public function saveGame(){
savedProgress.data.hasFlame = hero.hasFlame;
savedProgress.data.hasAmulet = hero.hasAmulet;
savedProgress.data.hasRuby = hero.hasRuby;
savedProgress.data.hasPulledLever = hero.hasPulledLever;
savedProgress.data.livesLeft = playerLives;
savedProgress.data.starsGot = starsGot;
savedProgress.data.gotStars = cloneArray(gotStars);
savedProgress.data.gotLives = cloneArray(gotLives);
savedProgress.data.placedRuby = placedRuby;
savedProgress.data.gameScore = gameScore;
savedProgress.data.hallVisited = hallVisited;
savedProgress.data.diff = diff;
savedProgress.flush();
}
public function shootArrow(){
var _local1:Arrow;
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:Number;
_local1 = new Arrow();
arrowholder.addChild(_local1);
_local1.isFlame = hero.getHasFlame();
if (_local1.isFlame){
_local1.damage = 50;
_local1.gotoAndStop(2);
};
_local2 = mouseX;
_local3 = mouseY;
_local1.direction = hero.direction;
_local1.x = (hero.mc.x + (10 * _local1.direction));
_local1.y = (hero.mc.y - 30);
_local1.scaleX = _local1.direction;
_local1.rotation = (hero.mc.rhand.rotation * _local1.direction);
_local1.game = this;
_local4 = (_local2 - _local1.x);
if ((((_local4 < 5)) && ((hero.direction == 1)))){
_local4 = 5;
};
if ((((_local4 > -5)) && ((hero.direction == -1)))){
_local4 = -5;
};
_local5 = (_local1.y - _local3);
if (Math.abs(_local5) > (Math.abs(_local4) * 5.67128)){
_local5 = (((_local5 / Math.abs(_local5)) * Math.abs(_local4)) * 5.67128);
};
_local6 = Math.sqrt(((_local4 * _local4) + (_local5 * _local5)));
_local4 = (_local4 / _local6);
_local5 = (_local5 / _local6);
_local1.dx = (_local4 * 0.9);
_local1.dy = (-(_local5) * 0.9);
arrows.push(_local1);
}
public function playMainMusic(){
music.musicmain.gotoAndStop(2);
music.musicwizard.gotoAndStop(1);
}
public function createMonster(_arg1:int, _arg2:int, _arg3:int, _arg4:MonsterGenerator){
var _local5:Monster;
_local5 = new Monster(this);
monsterholder.addChild(_local5);
_local5.gotoAndStop((_arg1 - 21));
_local5.monsterType = _arg1;
_local5.col = _arg2;
_local5.row = _arg3;
_local5.generator = _arg4;
_local5.x = (getXFromCol(_arg2) + (cellWidth / 2));
_local5.y = (getYFromRow(_arg3) + cellHeight);
_local5.init();
_local5.testID = enemies.length;
enemies.push(_local5);
}
public function getXFromCol(_arg1){
return (((_arg1 * cellWidth) + gamelevel.x));
}
public function setScore(_arg1:int){
gameScore = _arg1;
}
public function stopMusic(){
if (music != null){
music.musicmain.gotoAndStop(1);
music.musicwizard.gotoAndStop(1);
};
}
public function showmsg(){
gameMode = "pause";
messagebox.visible = true;
}
public function goLevel(_arg1:MouseEvent){
loadLevel(loadthis_txt.text, 0);
}
public function keyUpFunction(_arg1:KeyboardEvent){
if ((((_arg1.keyCode == 37)) || ((_arg1.keyCode == 65)))){
hero.moveLeft = false;
pressLeft = false;
} else {
if ((((_arg1.keyCode == 39)) || ((_arg1.keyCode == 68)))){
hero.moveRight = false;
pressRight = false;
} else {
if ((((_arg1.keyCode == 40)) || ((_arg1.keyCode == 83)))){
pressDown = false;
if ((((getTypeAt(getColFromX(hero.mc.x), getRowFromY((hero.mc.y - 50))) > 4)) || ((getTypeAt(getColFromX(hero.mc.x), getRowFromY((hero.mc.y - 50))) == 0)))){
hero.moveDown = false;
hero.isCrouching = false;
};
} else {
if ((((_arg1.keyCode == 87)) || ((_arg1.keyCode == 38)))){
hero.moveUp = false;
pressUp = false;
};
};
};
};
}
public function resetLevel(){
loadLevel(curLevel, curDoor);
}
public function endGame(){
gameMode = "gameover";
ClearBlocks();
stopMusic();
hero.init();
this.removeEventListener(Event.ENTER_FRAME, gameLoop);
stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownFunction);
stage.removeEventListener(KeyboardEvent.KEY_UP, keyUpFunction);
clickbit.removeEventListener(MouseEvent.MOUSE_DOWN, shoot);
gotoAndStop(16);
}
public function removeBadArrow(_arg1){
var _local2:*;
_local2 = 0;
while (_local2 < badArrows.length) {
if (_arg1 == badArrows[_local2]){
badArrows.splice(_local2, 1);
arrowholder.removeChild(_arg1);
_arg1 = null;
};
_local2++;
};
}
public function CreateBlockFromLoad(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int=-1){
var _local8:int;
var _local9:int;
var _local10:int;
var _local11:*;
var _local12:Block;
_local8 = _arg2;
_local9 = _arg3;
if (((hero.hasFlame) && ((_arg1 == 39)))){
CreateBlockFromLoad(33, _local8, _local9, 2, 7, 0);
return;
};
if (((hero.hasAmulet) && ((_arg1 == 40)))){
CreateBlockFromLoad(33, _local8, _local9, 2, 7, 0);
return;
};
if (((hero.hasRuby) && ((_arg1 == 37)))){
CreateBlockFromLoad(33, _local8, _local9, 2, 7, 0);
return;
};
if (_arg1 == 21){
levelData[_local8][_local9] = 0;
if (curDoor){
_local10 = 0;
while (_local10 < fixedObjects.length) {
if (fixedObjects[_local10].doorid == curDoor){
hero.setStartPos(getXFromCol(fixedObjects[_local10].col), getYFromRow(fixedObjects[_local10].row));
};
_local10++;
};
} else {
hero.setStartPos(getXFromCol(_local8), getYFromRow(_local9));
};
} else {
if (_arg1 == 95){
_local11 = new Lustra(this);
blockholder.addChild(_local11);
_local11.gotoAndStop("start");
_local11.x = (_local11.startX = getXFromCol(_arg2));
_local11.y = (_local11.startY = getYFromRow(_arg3));
lustras.push(_local11);
} else {
_local12 = new Block();
blockholder.addChild(_local12);
_local12.gotoAndStop(_arg1);
levelData[_local8][_local9] = _arg1;
_local12.blocktype = _arg1;
_local12.col = _local8;
_local12.row = _local9;
_local12.x = getXFromCol(_local8);
_local12.y = getYFromRow(_local9);
_local12.game = this;
_local12.leftside = _local12.x;
_local12.rightside = (_local12.x + _local12.width);
_local12.topside = _local12.y;
_local12.bottomside = (_local12.y + _local12.height);
if ((((_arg1 == 62)) || ((_arg1 == 63)))){
_local12.topside = (_local12.y - 40);
_local12.bottomside = (_local12.y + 40);
_local12.leftside = _local12.x;
_local12.rightside = (_local12.x + 40);
};
if ((((_arg1 == 63)) || ((_arg1 == 64)))){
_local12.open = true;
};
if ((((_arg1 == 64)) || ((_arg1 == 65)))){
_local12.leftside = (_local12.x - 10);
_local12.rightside = (_local12.leftside + _local12.width);
};
if (_arg1 == 3){
_local12.leftside = (_local12.x + 12);
_local12.rightside = (_local12.leftside + _local12.width);
_local12.topside = (_local12.y - 23);
_local12.bottomside = (_local12.topside + _local12.height);
};
if (_arg1 == 41){
_local12.id = _arg7;
};
if (_arg1 == 42){
_local12.id = _arg7;
};
if (_arg1 == 36){
_local12.leftside = (_local12.x - 20);
_local12.rightside = (_local12.x + 40);
_local12.topside = _local12.y;
_local12.bottomside = (_local12.y + _local12.height);
};
if ((((_arg1 > 32)) && ((_arg1 < 36)))){
_local12.rightside = ((_local12.x + _local12.width) - 13);
};
if ((((curLevel == 32)) && ((_arg4 == 1)))){
wizDoor = _local12;
};
_local12.doorid = _arg4;
_local12.destlevel = _arg5;
_local12.destid = _arg6;
fixedObjects.push(_local12);
};
};
_local10 = 0;
while (_local10 < fixedObjects.length) {
if (fixedObjects[_local10].blocktype > 69){
blockholder.setChildIndex(fixedObjects[_local10], (fixedObjects.length - 1));
};
if (fixedObjects[_local10].blocktype == 3){
blockholder.setChildIndex(fixedObjects[_local10], 0);
};
if (fixedObjects[_local10].blocktype == 52){
blockholder.setChildIndex(fixedObjects[_local10], 0);
};
if (fixedObjects[_local10].blocktype == 56){
blockholder.setChildIndex(fixedObjects[_local10], 0);
};
_local10++;
};
_local10 = 0;
while (_local10 < lustras.length) {
blockholder.setChildIndex(lustras[_local10], (lustras.length - 1));
_local10++;
};
}
public function GetType(_arg1, _arg2){
_arg1 = getColFromX(_arg1);
_arg2 = getRowFromY(_arg2);
if (levelData[_arg1][_arg2] === undefined){
return (5);
};
return (levelData[_arg1][_arg2]);
}
public function closeQuitScreen(){
quitScreen.visible = false;
gameMode = "play";
}
public function updateArrows(_arg1){
var _local2:int;
_local2 = 0;
while (_local2 < arrows.length) {
arrows[_local2].updateFlight(_arg1);
_local2++;
};
_local2 = 0;
while (_local2 < badArrows.length) {
badArrows[_local2].updateFlight(_arg1);
_local2++;
};
_local2 = 0;
while (_local2 < lustras.length) {
lustras[_local2].update(_arg1);
_local2++;
};
}
public function openWalls(){
var _local1:int;
if (curLevel == 17){
loadLevel(7, 0);
} else {
_local1 = 0;
while (_local1 < fixedObjects.length) {
if (fixedObjects[_local1].blocktype == 62){
fixedObjects[_local1].block62.play();
};
if (fixedObjects[_local1].blocktype == 63){
fixedObjects[_local1].block63.play();
};
if (fixedObjects[_local1].blocktype == 64){
fixedObjects[_local1].block64.play();
};
if (fixedObjects[_local1].blocktype == 65){
fixedObjects[_local1].block65.play();
};
_local1++;
};
};
}
public function gameOver(){
gameMode = "gameover";
gameoverpanel.visible = true;
}
}
}//package