Frame 1
System.security.allowDomain("*");
if (_root != this) {
this.onEnterFrame = function () {
stop();
if (getBytesLoaded() < getBytesTotal()) {
} else {
this.onEnterFrame = function () {
_root.controller.syncInsidePlayer(this);
};
gotoAndStop ("rootCache");
}
};
stop();
} else {
gotoAndPlay ("rootLoad");
}
Instance of Symbol 5 MovieClip in Frame 2
onClipEvent (enterFrame) {
if (_root.getBytesLoaded() < _root.getBytesTotal()) {
this._xscale = 4500 * (_root.getBytesLoaded() / _root.getBytesTotal());
} else {
_root.play();
}
_parent.loadtext = ("Loading... " + (Math.floor((_root.getBytesLoaded() / _root.getBytesTotal()) * 1000) / 10)) + " Percent";
}
Frame 4
function colorize(obje, passr, passg, passb, passa) {
tempc = new Color(eval (obje));
tempc = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0};
tempc.rb = passr;
tempc.gb = passg;
tempc.bb = passb;
tempc.ab = passa;
eval (obje).Acolor = tempc;
eval (obje).Ccolor = new Color(eval (obje));
eval (obje).Ccolor.setTransform(eval (obje).Acolor);
}
function _recursive_trace(c, depth, depthmax, dontuse) {
var _local3 = "";
var _local2 = "";
var _local5 = newline;
var _local1 = 0;
while (_local1 < depth) {
_local2 = _local2 + "\t";
_local1 = _local1 + 1;
}
if (depth >= depthmax) {
return((_local2 + "DEPTH EXCEEDED") + _local5);
}
for (var _local9 in c) {
if (!dontuse.hasOwnProperty(_local9)) {
if (c[_local9] instanceof MovieClip) {
_local3 = _local3 + ((((_local2 + "\"") + _local9) + "\" : { ") + _local5);
_local3 = _local3 + _recursive_trace(c[_local9], depth + 1, depthmax, dontuse);
_local3 = _local3 + ((_local2 + " } ") + _local5);
}
}
}
return(_local3);
}
function recursive_trace(c, maxd) {
if (maxd == undefined) {
maxd = 5;
}
var _local1 = new Object();
_local1._parent = 0;
_local1._level = 0;
_local1._alpha = 0;
_local1._root = 0;
_local1.G = 0;
_local1.g = 0;
_local1.CBOX = 0;
_local1.CBox = 0;
_local1.cBox = 0;
_local1.cbox = 0;
if (maxd == 0) {
var _local3 = [];
for (var _local4 in c) {
if (!_local1.hasOwnProperty(_local4)) {
if (c[_local4] instanceof MovieClip) {
_local3.push(_local4);
}
}
}
_local3.sort();
return(_local3);
}
return(_recursive_trace(c, 0, maxd, _local1));
}
function _list_differences(A, B) {
var _local2 = 0;
var _local1 = 0;
var _local8 = A.length;
var _local7 = B.length;
var _local5 = [];
var _local6 = [];
A.sort();
B.sort();
while (true) {
if (_local2 < _local8) {
if (_local1 < _local7) {
if (A[_local2] < B[_local1]) {
_local5.push(A[_local2]);
_local2 = _local2 + 1;
} else if (A[_local2] > B[_local1]) {
_local6.push(B[_local1]);
_local1 = _local1 + 1;
} else {
_local2 = _local2 + 1;
_local1 = _local1 + 1;
}
} else {
_local5.push(A[_local2]);
_local2 = _local2 + 1;
}
} else if (_local1 < _local7) {
_local6.push(B[_local1]);
_local1 = _local1 + 1;
} else {
break;
}
}
return([_local5, _local6]);
}
GLOBAL_PLAYERGRAPHIC = 1;
GLOBAL_PLAYERSUBGRAPHIC = 1;
GLOBAL_ASSISTANCE = 0;
Stage.scaleMode = "showAll";
GLOBAL_SANDBOXTYPE = System.security.sandboxType;
System.security.allowDomain("*");
Frame 5
_quality = "MEDIUM";
flashTraceFilters = function (mc) {
var _local2 = mc.filters;
for (var _local4 in _local2) {
var _local1 = _local2[_local4];
trace((("Filter: " + typeof(_local1)) + " ") + _local4);
for (var _local3 in _local1) {
trace((("\t" + _local3) + ": ") + _local1[_local3]);
}
if (_local1 instanceof flash.filters.GradientBevelFilter) {
scode = "";
scode = scode + "new flash.filters.GradientBevelFilter( ";
scode = scode + (_local1.distance + ", ");
scode = scode + (_local1.angle + ", ");
scode = scode + (("Array(" + _local1.colors) + "), ");
scode = scode + (("Array(" + _local1.alphas) + "), ");
scode = scode + (("Array(" + _local1.ratios) + "), ");
scode = scode + (_local1.blurX + ", ");
scode = scode + (_local1.blurY + ", ");
scode = scode + (_local1.strength + ", ");
scode = scode + (_local1.quality + ", ");
scode = scode + (("\"" + _local1.type) + "\", ");
scode = scode + _local1.knockout;
scode = scode + " )";
trace(scode);
}
}
};
flashApplyFilter = function (MC, filtobject) {
var _local1 = [];
_local1.push(filtobject);
MC.filters = _local1;
};
flashApplyFilters = function (MC, filtlist) {
var _local2 = [];
for (obj in filtlist) {
_local2.push(filtlist[obj]);
}
MC.filters = _local2;
};
flashColorize = function (obj, r, g, b, al) {
var _local2 = new flash.geom.Transform(obj);
if (al == undefined) {
al = 1;
}
var _local1 = new flash.geom.ColorTransform(r, g, b, al, 0, 0, 0, 0);
_local2.colorTransform = _local1;
return(_local1);
};
onEnterFrame = function () {
gamescore = "Score: " + minigame.entertainor.gGameScore;
};
stop();
Frame 7
stop();
Frame 9
Stage.scaleMode = "showAll";
var m_input_raw_mouse_x = _xmouse;
var m_input_raw_mouse_y = _ymouse;
var m_input_raw_mouse_dx = 0;
var m_input_raw_mouse_dy = 0;
var m_input_raw_mouse_down = 0;
var m_input_raw_mouse_clicked = 0;
var m_input_raw_mouse_wheel = 0;
var m_input_keys_active = new Object();
var m_game_mouse_listener = new Object();
m_game_mouse_listener.onMouseMove = function () {
var _local2 = _xmouse;
var _local1 = _ymouse;
m_input_raw_mouse_dx = _local2 - m_input_raw_mouse_x;
m_input_raw_mouse_dy = _local1 - m_input_raw_mouse_y;
m_input_raw_mouse_x = _local2;
m_input_raw_mouse_y = _local1;
};
m_game_mouse_listener.onMouseDown = function () {
if (m_input_raw_mouse_down == 0) {
m_input_raw_mouse_clicked = 1;
}
m_input_raw_mouse_down = m_input_raw_mouse_down + 1;
};
m_game_mouse_listener.onMouseUp = function () {
m_input_raw_mouse_down = 0;
};
m_game_mouse_listener.onMouseWheel = function (vdelta) {
m_input_raw_mouse_wheel = m_input_raw_mouse_wheel + vdelta;
};
Mouse.addListener(m_game_mouse_listener);
stop();
Instance of Symbol 115 MovieClip "controller" in Frame 9
onClipEvent (load) {
function GetTheBaseUrl() {
var _local2 = _root._url;
txtFullUrl.text = _local2;
var _local4 = _local2.lastIndexOf("/");
var _local3 = _local2.indexOf("|");
if (_local3 >= 0) {
baseUrl = _local2.substring(0, _local3);
baseUrl = baseUrl + ":";
} else {
baseUrl = "";
}
baseUrl = baseUrl + _local2.substring(_local3 + 1, _local4 + 1);
return(baseUrl);
}
function assignContentTypeCheck(eurl) {
var _local1 = eurl;
if (GLOBAL_CONTENT_TYPES.hasOwnProperty(_local1)) {
return(GLOBAL_CONTENT_TYPES[_local1]);
}
if (GLOBAL_REPAIREDBASEURL.length > 0) {
if (_local1.length > GLOBAL_REPAIREDBASEURL.length) {
_local1 = _local1.substr(GLOBAL_REPAIREDBASEURL.length);
return(assignContentTypeCheck(_local1));
}
}
return(5);
}
function _loadSyncClipInto(uclipDST, path) {
var mclListener = new Object();
mclListener.loaded = false;
mclListener.onLoadInit = function (target_mc) {
mclListener.loaded = true;
};
mclListener.onLoadComplete = function (target_mc, httpStatus) {
};
mclListener.onLoadProgress = function (target_mc, errorCode, httpStatus) {
};
mclListener.onLoadError = function (target_mc, errorCode, httpStatus) {
trace((("onLoadError: " + errorCode) + " ") + httpStatus);
};
var _local1 = new MovieClipLoader();
_local1.addListener(mclListener);
_local1.loadClip(path, uclipDST);
mclListener.loader = _local1;
return(mclListener);
}
function syncInsidePlayer(fromwhere) {
fromwhere._syncInsidePlayer = 1;
}
function _updateVictimSyncInternalClip(CO) {
CO.toanim.gotoAndStop(CO.anim);
CO.toanim.aniclip.gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
var _local3 = CO.clip.transform;
var _local4 = new flash.geom.Matrix();
CO.toanim.transform = _local3;
CO.toanim.aniclip.mc.stop();
}
function _updateVictimSyncInternalClipNextframe(CO) {
var _local2 = CO.toanim.aniclip.mc._currentframe;
CO.toanim.aniclip.mc.nextFrame();
var _local3 = CO.toanim.aniclip.mc._currentframe;
if (_local3 == _local2) {
CO.toanim.aniclip.mc.gotoAndStop(1);
}
}
function updateVictimSync(from) {
if (from.loaded != 1) {
from.loaded = 0;
if (from.mc == undefined) {
from.createEmptyMovieClip("mc", 0);
from.mapClips = new Object();
if (GLOBAL_LOCALSCOPE) {
from._attachedLoader = _loadSyncClipInto(from.mc, GLOBAL_SWF_NAME);
} else {
from._attachedLoader = _loadSyncClipInto(from.mc, GLOBAL_SWF_URL);
}
}
if (from._attachedLoader != undefined) {
if (from._attachedLoader.loaded) {
if (from.mc._syncInsidePlayer == 1) {
from.loaded = 1;
}
}
}
from.mc._visible = false;
from._visible = false;
}
if (from.loaded == 1) {
from.mc._visible = true;
from._visible = true;
if (_root.controller.GLOBAL_SHOW_PLAYER_INSIDEPLUS) {
if (from.mc.SPECIALPLAYER == undefined) {
from.mc.attachMovie("mcPlayer", "SPECIALPLAYER", _VICTIM_SYNC_CLIP_PER_FRAME_COUNTER_MAYBE_INSIDE);
} else {
_root.controller.GLOBALUPDATECOX[String(from.mc.SPECIALPLAYER)] = from.mc.SPECIALPLAYER;
}
}
var _local3 = new Object();
for (var _local4 in from.mapClips) {
if (from.mapClips[_local4].clip._visible == undefined) {
_local3[_local4] = 1;
}
}
for (var _local4 in _local3) {
from.mapClips[_local4].toanim.removeMovieClip();
delete from.mapClips[_local4];
}
for (var _local4 in from.mapClips) {
_updateVictimSyncInternalClip(from.mapClips[_local4]);
if (!isPaused()) {
_updateVictimSyncInternalClipNextframe(from.mapClips[_local4]);
}
}
}
}
function updateVictimSyncClip(from, anim) {
var _local6 = getEnemyGSync(from);
var _local3 = _local6.VICSYNC;
if (_local3 != undefined) {
var _local2 = String(from);
var _local4;
if (_local3.mapClips.hasOwnProperty(_local2)) {
_local4 = _local3.mapClips[_local2].toanim;
} else {
_local3.mapClips[_local2] = new Object();
_local3.mapClips[_local2].clip = from;
_local3.mapClips[_local2].anim = anim;
_local3.mapClips[_local2].toanim = _local4;
_local3.mapClips[_local2].key = _local2;
}
_local3.mapClips[_local2].clip = from;
_local3.mapClips[_local2].anim = anim;
_local3.mapClips[_local2].key = _local2;
if (_local4 == undefined) {
_local4 = _local3.mc.attachMovie("mcPlayer", _local2, _VICTIM_SYNC_CLIP_PER_FRAME_COUNTER_MAYBE);
_VICTIM_SYNC_CLIP_PER_FRAME_COUNTER_MAYBE = _VICTIM_SYNC_CLIP_PER_FRAME_COUNTER_MAYBE + 1;
_local3.mc.onUnload = function () {
if (this.mcPlayer) {
this.mcPlayer.unloadMovie();
this.mcPlayer.removeMovieClip();
}
this.unloadMovie();
this.removeMovieClip();
};
}
_local3.mapClips[_local2].toanim = _local4;
_updateVictimSyncInternalClip(_local3.mapClips[_local2]);
} else {
trace((("updateVictimSyncClip: No VICSYNC " + anim) + " ") + from);
}
}
function displayHelp() {
_root.GLOBAL_ASSISTANCE = 1;
GLOBAL_ASSISTANCE_TIMER = 0;
Log("Use arrow keys and spacebar");
}
function _extSetup(T, D) {
var _local5;
var _local2 = T._parent;
if (T == T.G._parent.enemyshad.t.enemy) {
trace((((T + " ") + T._parent) + " ") + T.G);
trace("Ext setup was shadow!");
} else if (T == T.G._parent.enemyshad.t.enemy.enemy) {
trace((((T + " ") + T._parent) + " ") + T.G);
trace("Ext setup was shadow from correct external clip!");
} else {
trace("Ext setup called: " + T);
for (var _local4 in D) {
_local2[_local4] = D[_local4];
}
_local2.hp = _local2.maxhp;
T.in_movex = 0;
T.in_movey = 0;
T.in_action = 0;
if (D.in_movex != undefined) {
T.in_movex = D.in_movex;
}
if (D.in_movey != undefined) {
T.in_movey = D.in_movey;
}
if (D.in_action != undefined) {
T.in_action = D.in_action;
}
T.s_atktype = 0;
T.s_animbusy = 0;
T.s_idle = 1;
T.s_moving = 0;
T.s_attacking = 0;
T.s_hit = 0;
T.s_vx = 0;
_local2.ignore_hitweak = -1;
_local2.ignore_hitanim = false;
_local2.ignore_hitanimonly = false;
_local2.hatk_original = _local2.hatk;
_local2.matk_original = _local2.matk;
_local2.latk_original = _local2.latk;
_local2.hdef_original = _local2.hdef;
_local2.mdef_original = _local2.mdef;
_local2.ldef_original = _local2.ldef;
_local2.hatk_original = _local2.hatk;
T.is_external = true;
T.is_external_loaded = 0;
_local2._xscale = 100;
_local2._yscale = 100;
T._xscale = 100;
T._yscale = 100;
_local5 = "idle";
}
if (D.m_scale == undefined) {
_local2.m_scale = 100;
}
var _local6 = 100 * (100 / _local2.m_scale);
T.onEnterFrame = function () {
};
if (_local5 != undefined) {
T.gotoAndPlay(_local5);
}
T._xscale = _local6;
T._yscale = _local6;
}
function goPlay(target, animm) {
var _local1;
var _local2;
if ((target != undefined) and (animm != undefined)) {
_local1 = target;
_local2 = animm;
} else if (target != undefined) {
trace((("Reassigned target to enemy: " + target) + " ") + animm);
_local1 = getEnemyT(GLOBAL_ENEMY);
_local2 = target;
} else {
trace(((" goPlay has bad arguments: " + target) + " ") + animm);
}
if (_local1.__animmap == undefined) {
_local1.__animmap = new Object();
}
if (_local1.__animnamemap == undefined) {
_local1.__animnamemap = new Object();
}
if (_local1.__aniprefix != undefined) {
_local2 = _local1.__aniprefix + _local2;
}
if (!_local1.__animmap.hasOwnProperty(_local1._currentframe)) {
_local1.__animmap[_local1._currentframe] = new Object();
}
if (_local1.__animcurrent != _local2) {
_local1.__animprevious = _local1.__animcurrent;
}
_local1.__animcurrent = _local2;
_local1.gotoAndPlay(_local2);
_local1.__animmap[_local1._currentframe][_local2] = 0;
if (!_local1.__animnamemap.hasOwnProperty(_local2)) {
_local1.__animnamemap[_local2] = new Object({fmin:_local1._currentframe, fmax:_local1._currentframe});
}
var _local3 = _local1.__animnamemap[_local2];
if (_local1._currentframe > _local3.fmax) {
_local3.fmax = _local1._currentframe;
}
if (_local1._currentframe < _local3.fmin) {
_local3.fmin = _local1._currentframe;
}
}
function enemyCurrAnim() {
return(getEnemyT(GLOBAL_ENEMY).__animcurrent);
}
function enemyPrevAnim() {
return(getEnemyT(GLOBAL_ENEMY).__animprevious);
}
function enemyPrevAnimClear() {
getEnemyT(GLOBAL_ENEMY).__animprevious = "";
}
function playerCurrAnim() {
return(GLOBAL_PLAYER.__animcurrent);
}
function enemyPlay(thisone) {
goPlay(getEnemyT(GLOBAL_ENEMY), thisone);
}
function goPlayGetMinFrame(target, aname) {
if (target.__animmap != undefined) {
if (target.__animmap.hasOwnProperty(aname)) {
return(target.__animnamemap[aname].fmin);
}
}
return(undefined);
}
function goPlayGetMaxFrame(target, aname) {
if (target.__animmap != undefined) {
if (target.__animmap.hasOwnProperty(aname)) {
return(target.__animnamemap[aname].fmax);
}
}
return(undefined);
}
function fixURL(url) {
if (GLOBAL_LOCALSCOPE) {
} else if (GLOBAL_USEHTTPS) {
if (url.indexOf("http:") == 0) {
url = "https" + url.substring(4);
}
} else if (url.indexOf("https:") == 0) {
url = "http" + url.substring(5);
}
return(url);
}
function _loadGui(targ, url, usermessage) {
var tp = targ._parent;
tp.controllerClip = _root.controller;
tp.MovieClipLoaderURL = url;
tp.MovieClipLoaderStatus = 0;
tp.onLoadInit = function (target_mc) {
target_mc._visible = false;
target_mc.stop();
target_mc.G = _root.controller;
tp.MovieClipLoaderStatus = 3;
};
tp.onLoadComplete = function (target_mc, httpStatus) {
tp.MovieClipLoaderStatus = 2;
};
tp.onLoadProgress = function (target_mc, errorCode, httpStatus) {
tp.MovieClipLoaderStatus = 1;
};
tp.onLoadError = function (target_mc, errorCode, httpStatus) {
trace("Could not load gui: " + tp.MovieClipLoaderURL);
Log("Could not load gui: " + tp.MovieClipLoaderURL);
tp.MovieClipLoaderStatus = -1;
};
var _local2 = new MovieClipLoader();
_local2.addListener(tp);
targ._visible = false;
_local2.loadClip(url, targ);
}
function _loadMovie(targ, url, usermessage) {
var tp = targ._parent;
GLOBAL_ENEMY.is_external_loaded = 0;
tp.controllerClip = _root.controller;
tp.MovieClipLoaderURL = url;
tp.onLoadInit = function (target_mc) {
target_mc.stop();
};
tp.onLoadComplete = function (target_mc, httpStatus) {
};
tp.onLoadProgress = function (target_mc, errorCode, httpStatus) {
};
tp.onLoadError = function (target_mc, errorCode, httpStatus) {
trace("Could not load: " + tp.MovieClipLoaderURL);
Log("Could not load: " + tp.MovieClipLoaderURL);
var _local2 = 0;
while (_local2 < tp.controllerClip.GLOBAL_LOADEEMS.length) {
if (tp.controllerClip.GLOBAL_LOADEEMS[_local2] == tp.MovieClipLoaderURL) {
var _local3 = true;
var _local1 = 0;
while (_local1 < tp.controllerClip.GLOBAL_LOADEEMS_BROKEN.length) {
if (tp.controllerClip.GLOBAL_LOADEEMS_BROKEN[_local1] == tp.MovieClipLoaderURL) {
_local3 = false;
break;
}
_local1++;
}
if (_local3) {
tp.controllerClip.GLOBAL_LOADEEMS_BROKEN.push(tp.MovieClipLoaderURL);
}
}
_local2++;
}
};
var _local5 = new MovieClipLoader();
_local5.addListener(tp);
_local5.loadClip(url, targ);
}
function cameraComputeZoomScale(targetclip, delmove) {
if (delmove == undefined) {
delmove = 0;
}
var _local6 = 0 + (targetclip._x - _parent.camControl._x);
var _local3 = targetclip._y - _parent.camControl._y;
var _local5 = (120 + ((1 - GLOBAL_CAMERA_ZOOMPLAYER) * (GLOBAL_FLOOR - 120))) - _parent.camControl._y;
var _local7 = -(targetclip._y - GLOBAL_FLOOR);
var _local2 = _local7 / ((GLOBAL_CAMERA_ZOOMPLAYER * 240) / 2);
if (_local2 > 1) {
_local2 = 1;
}
if (_local2 < 0) {
_local2 = 0;
}
_local3 = (_local2 * _local3) + ((1 - _local2) * _local5);
_parent.camControl._x = _parent.camControl._x + _local6;
_parent.camControl._y = _parent.camControl._y + _local3;
_parent.camControl._xscale = _parent.camControl._xscale * GLOBAL_CAMERA_ZOOMPLAYER;
_parent.camControl._yscale = _parent.camControl._yscale * GLOBAL_CAMERA_ZOOMPLAYER;
}
function isPaused() {
if (GLOBAL_PAUSE or GLOBAL_TRUEPAUSE) {
return(true);
}
return(false);
}
function mcPointToLocal(mc, px, py) {
var _local5 = new flash.geom.Point(px, py);
if (mc != undefined) {
var _local6 = new Array();
var _local8 = this._parent;
var _local2 = mc;
while (_local2 != _local8) {
_local6.unshift(_local2);
_local2 = _local2._parent;
}
var _local4 = 0;
var _local7 = _local6.length;
while (_local4 != _local7) {
_local2 = _local6[_local4];
var _local3 = _local2.transform.matrix.clone();
_local3.invert();
_local5 = _local3.transformPoint(_local5);
_local4++;
}
}
return(Object({_x:_local5.x, _y:_local5.y}));
}
function mcPointToGlobal(mc, px, py) {
var _local4 = new flash.geom.Point(px, py);
if (mc != undefined) {
var _local5 = this._parent;
var _local2 = mc;
while (_local2 != _local5) {
var _local3 = _local2.transform.matrix;
_local4 = _local3.transformPoint(_local4);
_local2 = _local2._parent;
}
}
return(Object({_x:_local4.x, _y:_local4.y}));
}
function rand(nval, pval) {
if (pval == undefined) {
if (nval == undefined) {
return(Math.random());
}
if (nval > 0) {
return(Math.floor(nval * Math.random()));
}
if (nval == 0) {
}
}
return(0);
}
function chance(percent) {
if (percent != undefined) {
return((100 * Math.random()) < percent);
}
return((100 * Math.random()) < 50);
}
function smoothChanceDown(healthpercent) {
var _local1 = 100 - healthpercent;
if (_local1 > 0) {
if (_local1 < 100) {
return(chance(_local1));
}
return(true);
}
return(false);
}
function smoothChanceUp(healthpercent) {
var _local1 = healthpercent;
if (_local1 > 0) {
if (_local1 < 100) {
return(chance(_local1));
}
return(true);
}
return(false);
}
function chanceSmoothLess(percent, lowpercent) {
if (percent <= lowpercent) {
return(true);
}
if (lowpercent < 100) {
(percent - lowpercent) / (100 - lowpercent);
} else {
return(true);
}
}
function chanceCall(percent, functionptr, arg0, arg1, arg2, arg3, arg4, arg5, arg6) {
if (chance(percent)) {
functionptr(arg0, arg1, arg2, arg3, arg4, arg5, arg6);
return(true);
}
return(false);
}
function histFromObject(A) {
var _local4 = new Array();
var _local2 = new Array();
for (akey in A) {
_local2.push(akey);
}
_local2.sort();
var _local1 = 0;
while (_local1 < _local2.length) {
_local4.push(A[_local2[_local1]]);
_local1++;
}
return(_local4);
}
function histToUnityRange(A) {
var _local3 = 0;
var _local4 = 0;
var _local5 = 0;
for (akey in A) {
var _local1 = A[akey];
if (_local1 < _local3) {
_local3 = _local1;
}
if (_local1 > _local4) {
_local4 = _local1;
}
_local5 = _local5 + _local1;
}
_local4 = _local4 / _local5;
_local3 = _local3 / _local5;
if (_local3 < _local4) {
var _local6 = new Object();
var _local7 = _local4 - _local3;
for (akey in A) {
_local6[akey] = ((A[akey] / _local5) - _local3) / _local7;
}
return(histFromObject(_local6));
}
return(histFromObject(A));
}
function histSelect(distofanims) {
var _local2 = new Array();
var _local9 = new Array();
var _local4 = 0;
var _local8 = 0;
for (akey in distofanims) {
var _local1 = distofanims[akey];
_local2.push(_local1);
_local9.push(akey);
if (_local1 < _local4) {
_local4 = _local1;
}
if (_local1 > _local8) {
_local8 = _local1;
}
}
if (_local4 < _local8) {
var _local7 = 0;
var _local3 = 0;
while (_local3 < _local2.length) {
var _local6 = _local2[_local3] - _local4;
_local7 = _local7 + _local6;
_local2[_local3] = _local7;
_local3++;
}
var _local10 = Math.random() * _local7;
_local3 = 0;
while (_local3 < _local2.length) {
if (_local2[_local3] > _local10) {
return(_local9[_local3]);
}
_local3++;
}
}
for (var _local11 in distofanims) {
return(_local11);
}
return(undefined);
}
function histBlend(A, B, factor) {
if (A.length == B.length) {
var _local2 = histToUnityRange(A);
var _local4 = histToUnityRange(B);
var _local3 = new Array(_local2.length);
var _local1 = 0;
while (_local1 < _local2.length) {
_local3[_local1] = _local2[_local1] + (factor * (_local4[_local1] - _local2[_local1]));
_local1++;
}
return(histToUnityRange(_local3));
}
return(histFromObject(A));
}
function histPick(A, W) {
var _local3 = {};
if (W) {
var _local2 = 0;
while (_local2 < A.length) {
_local3[A[_local2]] = W[_local2];
_local2 = _local2 + 1;
}
} else {
var _local2 = 0;
while (_local2 < A.length) {
_local3[A[_local2]] = 1;
_local2 = _local2 + 1;
}
}
return(histSelect(_local3));
}
function bhistCreate(retvals, vals, histvals) {
var _local1 = {};
_local1.r = retvals;
_local1.v = vals;
_local1.h = histvals;
return(_local1);
}
function bhistSample(bhist, v) {
var _local2 = 0;
var _local4 = bhist.v.length;
while (_local2 < _local4) {
if (bhist.v >= v) {
break;
}
_local2 = _local2 + 1;
}
var _local6 = _local2 + 1;
if (_local2 >= _local4) {
_local2 = _local4 - 1;
}
if (_local6 >= _local4) {
_local6 = _local4 - 1;
}
var _local7 = bhist.v[_local6] - bhist.v[_local2];
if (_local7 <= 0) {
_local7 = 1;
}
var _local10 = (v - bhist.v[_local2]) / _local7;
var _local8 = this.histBlend(bhist.h[_local2], bhist.h[_local6], _local10);
var _local9 = this.histSelect(_local8);
trace((((((((((_local9 + " ") + _local8) + " ") + _local10) + " ") + _local2) + " ") + _local6) + " ") + _local7);
return(bhist.r[_local9]);
}
function setPlayerName(uname) {
GLOBAL_PLAYER.m_name = uname;
}
function setPlayerGraphic(sid, subid) {
if (sid < 1) {
sid = 1;
}
sid = sid % GLOBAL_MAX_PLAYERGRAPHIC;
if (sid < 1) {
sid = 1;
}
_root.GLOBAL_PLAYERGRAPHIC = sid;
if (subid != undefined) {
_root.GLOBAL_PLAYERSUBGRAPHIC = subid;
}
}
function getPlayerGraphic() {
return(_root.GLOBAL_PLAYERGRAPHIC);
}
function getPlayerSubGraphic() {
return(_root.GLOBAL_PLAYERSUBGRAPHIC);
}
function getPlayerMode() {
return(GLOBAL_PLAYER_MODE);
}
function isPlayerFacingEnemy() {
var _local1 = GLOBAL_ENEMY._xscale > 0;
var _local2 = GLOBAL_PLAYER._xscale > 0;
return(_local1 != _local2);
}
function playerFacing() {
if (GLOBAL_PLAYER._xscale >= 0) {
return(1);
}
return(-1);
}
function enemyFacing() {
if (GLOBAL_ENEMY._xscale >= 0) {
return(1);
}
return(-1);
}
function enemyFacingRight() {
return(GLOBAL_ENEMY._xscale >= 0);
}
function enemyFacingLeft() {
return(GLOBAL_ENEMY._xscale < 0);
}
function enemySetFacing(v) {
if (v > 0) {
if (enemyFacingLeft()) {
GLOBAL_ENEMY._xscale = -GLOBAL_ENEMY._xscale;
}
} else if (v < 0) {
if (enemyFacingRight()) {
GLOBAL_ENEMY._xscale = -GLOBAL_ENEMY._xscale;
}
}
}
function playerInputX() {
return(GLOBAL_PLAYER.in_movex);
}
function playerInputY() {
return(GLOBAL_PLAYER.in_movey);
}
function playerInputA() {
return(GLOBAL_PLAYER.in_action);
}
function playerTapReset() {
GLOBAL_PLAYER_TAPS.L = 2;
GLOBAL_PLAYER_TAPS.R = 2;
GLOBAL_PLAYER_TAPS.U = 2;
GLOBAL_PLAYER_TAPS.D = 2;
GLOBAL_PLAYER_TAPS.B = 2;
}
function playerTapGet() {
var _local1 = "";
for (var _local2 in GLOBAL_PLAYER_TAPS) {
if (GLOBAL_PLAYER_TAPS[_local2] == 1) {
_local1 = _local1 + _local2;
}
}
return(_local1);
}
function getPlayerRelativeMovement(option) {
if (option == undefined) {
option = 0;
}
var _local2 = GLOBAL_PLAYER;
var _local6 = GLOBAL_ENEMY;
var _local4 = _local6._xscale > 0;
var _local1 = "";
var _local3 = "";
if (_local2.in_action) {
_local1 = "B";
_local3 = _local3 + "B";
}
_local3 = _local1;
if (_local2.in_movex < 0) {
if (_local4) {
_local1 = _local1 + "L";
} else {
_local1 = _local1 + "R";
}
_local3 = _local1;
} else if (_local2.in_movex > 0) {
if (_local4) {
_local1 = _local1 + "R";
} else {
_local1 = _local1 + "L";
}
_local3 = _local1;
} else if (_local2.in_movey < 0) {
_local1 = _local1 + "D";
} else if (_local2.in_movey > 0) {
_local1 = _local1 + "U";
}
if (_local1 == "") {
}
if (option == 1) {
if (_local2.in_movey < 0) {
_local3 = _local3 + "D";
} else if (_local2.in_movey > 0) {
_local3 = _local3 + "U";
}
return(_local3);
}
return(_local1);
}
function getNextAnimation(AO, RM) {
var _local2 = "";
if (AO != undefined) {
if (RM == "B") {
if (AO.b != undefined) {
_local2 = AO.b;
}
} else if (RM == "L") {
if (AO.l != undefined) {
_local2 = AO.l;
}
} else if (RM == "R") {
if (AO.r != undefined) {
_local2 = AO.r;
}
} else if (RM == "U") {
if (AO.u != undefined) {
_local2 = AO.u;
}
} else if (RM == "D") {
if (AO.d != undefined) {
_local2 = AO.d;
}
} else if (RM == "BL") {
if (AO.bl != undefined) {
_local2 = AO.bl;
}
} else if (RM == "BR") {
if (AO.br != undefined) {
_local2 = AO.br;
}
} else if (RM == "BU") {
if (AO.bu != undefined) {
_local2 = AO.bu;
}
} else if (RM == "BD") {
if (AO.bd != undefined) {
_local2 = AO.bd;
}
} else if (RM == "LU") {
if (AO.lu != undefined) {
_local2 = AO.lu;
} else if (AO.l != undefined) {
_local2 = AO.l;
} else if (AO.u != undefined) {
_local2 = AO.u;
}
} else if (RM == "RU") {
if (AO.ru != undefined) {
_local2 = AO.ru;
} else if (AO.r != undefined) {
_local2 = AO.r;
} else if (AO.u != undefined) {
_local2 = AO.u;
}
} else if (RM == "LD") {
if (AO.ld != undefined) {
_local2 = AO.ld;
} else if (AO.l != undefined) {
_local2 = AO.l;
} else if (AO.d != undefined) {
_local2 = AO.d;
}
} else if (RM == "RD") {
if (AO.rd != undefined) {
_local2 = AO.rd;
} else if (AO.r != undefined) {
_local2 = AO.r;
} else if (AO.d != undefined) {
_local2 = AO.d;
}
} else if (RM == "BLU") {
if (AO.blu != undefined) {
_local2 = AO.blu;
} else if (AO.bl != undefined) {
_local2 = AO.bl;
} else if (AO.bu != undefined) {
_local2 = AO.bu;
} else if (AO.b != undefined) {
_local2 = AO.b;
} else if (AO.l != undefined) {
_local2 = AO.l;
} else if (AO.u != undefined) {
_local2 = AO.u;
}
} else if (RM == "BRU") {
if (AO.bru != undefined) {
_local2 = AO.bru;
} else if (AO.br != undefined) {
_local2 = AO.br;
} else if (AO.bu != undefined) {
_local2 = AO.bu;
} else if (AO.b != undefined) {
_local2 = AO.b;
} else if (AO.r != undefined) {
_local2 = AO.r;
} else if (AO.u != undefined) {
_local2 = AO.u;
}
} else if (RM == "BLD") {
if (AO.bld != undefined) {
_local2 = AO.bld;
} else if (AO.bl != undefined) {
_local2 = AO.bl;
} else if (AO.bd != undefined) {
_local2 = AO.bd;
} else if (AO.b != undefined) {
_local2 = AO.b;
} else if (AO.l != undefined) {
_local2 = AO.l;
} else if (AO.d != undefined) {
_local2 = AO.d;
}
} else if (RM == "BRD") {
if (AO.brd != undefined) {
_local2 = AO.brd;
} else if (AO.br != undefined) {
_local2 = AO.br;
} else if (AO.bd != undefined) {
_local2 = AO.bd;
} else if (AO.b != undefined) {
_local2 = AO.b;
} else if (AO.r != undefined) {
_local2 = AO.r;
} else if (AO.d != undefined) {
_local2 = AO.d;
}
}
}
return(_local2);
}
function initDigestion(target) {
_traceF1("initDigestion");
target.digeststruct = new Object();
target.digeststruct.frames = 0;
target.digeststruct.curr = 0;
target.digeststruct.escapes = new Array();
}
function startDigestion(target, onehpperframes) {
_traceF2("startDigestion");
if (target.digeststruct == undefined) {
initDigestion(target);
}
target.digeststruct.frames = onehpperframes;
}
function stopDigestion(target) {
_traceF1("stopDigestion");
target.digeststruct.frames = 0;
target.digeststruct.curr = 0;
target.digeststruct.escapes = new Array();
target.digeststruct = undefined;
}
function endDigestion(target) {
_traceF1("endDigestion");
target.digeststruct.frames = 0;
target.digeststruct.curr = 0;
target.digeststruct.escapes = new Array();
target.digeststruct = undefined;
}
function getDigestion(target) {
if (target.digeststruct == undefined) {
initDigestion(target);
}
return(target.digeststruct);
}
function enemyGetAnimStruct() {
if (GLOBAL_ENEMY.enemy.animstruct == undefined) {
if (GLOBAL_ENEMY.enemy.enemy.animstruct == undefined) {
if (GLOBAL_ENEMY.enemy.enemy.enemy.animstruct == undefined) {
// unexpected jump
}
return(GLOBAL_ENEMY.enemy.enemy.enemy.animstruct);
} else {
return(GLOBAL_ENEMY.enemy.enemy.animstruct);
}
} else {
return(GLOBAL_ENEMY.enemy.animstruct);
}
return(undefined);
}
function enemyGetDigestionStruct() {
if (GLOBAL_ENEMY.enemy.digeststruct == undefined) {
if (GLOBAL_ENEMY.enemy.enemy.digeststruct == undefined) {
if (GLOBAL_ENEMY.enemy.enemy.enemy.digeststruct == undefined) {
// unexpected jump
}
return(GLOBAL_ENEMY.enemy.enemy.enemy.digeststruct);
} else {
return(GLOBAL_ENEMY.enemy.enemy.digeststruct);
}
} else {
return(GLOBAL_ENEMY.enemy.digeststruct);
}
return(undefined);
}
function hurtPlayer(whodoes, amount) {
if (amount >= 0) {
if (GLOBAL_PLAYER.hp > amount) {
GLOBAL_PLAYER.hp = GLOBAL_PLAYER.hp - amount;
} else {
GLOBAL_PLAYER.hp = 0;
}
} else {
healPlayer(whodoes, -amount);
}
}
function healPlayer(whodoes, amount) {
if (amount >= 0) {
GLOBAL_PLAYER.hp = GLOBAL_PLAYER.hp + amount;
if (GLOBAL_PLAYER.hp > GLOBAL_PLAYER.maxhp) {
GLOBAL_PLAYER.hp = GLOBAL_PLAYER.maxhp;
}
} else {
hurtPlayer(whodoes, -amount);
}
}
function healEnemy(amount, optiona) {
if (optiona != undefined) {
amount = optiona;
}
if (amount >= 0) {
GLOBAL_ENEMY.hp = GLOBAL_ENEMY.hp + amount;
if (GLOBAL_ENEMY.hp > GLOBAL_ENEMY.maxhp) {
GLOBAL_ENEMY.hp = GLOBAL_ENEMY.maxhp;
}
} else {
hurtEnemy(-amount);
}
}
function hurtEnemy(amount, optiona) {
if (optiona != undefined) {
amount = optiona;
}
if (amount >= 0) {
if (GLOBAL_ENEMY.hp > amount) {
GLOBAL_ENEMY.hp = GLOBAL_ENEMY.hp - amount;
} else {
GLOBAL_ENEMY.hp = 0;
}
} else {
healEnemy(-amount);
}
}
function enemySetIgnoreHitCallbackName(fnp) {
GLOBAL_ENEMY_IGNOREHIT_CALLBACK = fnp;
}
function enemySetPlayerHitCallbackName(fnp) {
GLOBAL_ENEMY_PLAYERHIT_CALLBACK = fnp;
}
function enemyCallIgnoreHitCallback(hittype, hitdamage, nextEnemyAnim) {
if (GLOBAL_ENEMY_IGNOREHIT_CALLBACK != undefined) {
var _local2 = GLOBAL_VALUES[GLOBAL_ENEMY_IGNOREHIT_CALLBACK](this, GLOBAL_ENEMY, hittype, hitdamage);
if (_local2 != undefined) {
return(_local2);
}
}
return(nextEnemyAnim);
}
function enemyCallSetPlayerHitCallbackName(hittype, hitdamage, nextEnemyAnim) {
if (GLOBAL_ENEMY_PLAYERHIT_CALLBACK != undefined) {
var _local2 = GLOBAL_VALUES[GLOBAL_ENEMY_PLAYERHIT_CALLBACK](this, GLOBAL_ENEMY, hittype, hitdamage);
if (_local2 != undefined) {
return(_local2);
}
}
return(nextEnemyAnim);
}
function enemySetIgnoreHits(vals) {
if (vals != 0) {
GLOBAL_ENEMY.ignore_hitanim = 1;
} else {
GLOBAL_ENEMY.ignore_hitanim = 0;
}
}
function enemySetIgnoreWeakHits(vals) {
if (vals == undefined) {
GLOBAL_ENEMY.ignore_hitweak = -1;
} else {
GLOBAL_ENEMY.ignore_hitweak = vals;
}
}
function enemySetDontPlayHitAnimation(vals) {
if (vals != 0) {
GLOBAL_ENEMY.ignore_hitanimonly = 1;
} else {
GLOBAL_ENEMY.ignore_hitanimonly = 0;
}
}
function enemySetAttackHistogram(vallow, valmedium, valhigh) {
if (vallow == undefined) {
vallow = 0;
}
if (valmedium == undefined) {
valmedium = 0;
}
if (valhigh == undefined) {
valhigh = 0;
}
if (valhigh < 0) {
valhigh = 0;
}
if (valmedium < 0) {
valmedium = 0;
}
if (vallow < 0) {
vallow = 0;
}
if (((valhigh + valmedium) + vallow) <= 0) {
vallow = 0.09;
valmedium = 0.71;
valhigh = 0.1;
}
var _local1 = new Array(valhigh, vallow, valmedium);
var _local5 = (_local1[0] + _local1[1]) + _local1[2];
_local1[0] = _local1[0] / _local5;
_local1[1] = _local1[1] / _local5;
_local1[2] = _local1[2] / _local5;
GLOBAL_ENEMY_ATKUSE = _local1;
}
function enemySetAllowPets(doit) {
GLOBAL_ALLOW_PETS = doit;
}
function getNumEscapes(targ) {
if (targ.digeststruct != undefined) {
var _local1 = targ.digeststruct;
if (_local1.escapes != undefined) {
return(_local1.escapes.length);
}
}
return(0);
}
function toggleOption(optname) {
if (GLOBAL_OPTIONS[optname] > 0) {
GLOBAL_OPTIONS[optname] = 0;
} else {
GLOBAL_OPTIONS[optname] = 1;
}
}
function getOption(optname) {
return(GLOBAL_OPTIONS[optname]);
}
function setAnims(targ, AO) {
if (targ.animstruct == undefined) {
targ.animstruct = new Object();
}
targ.animstruct = AO;
}
function clearAnims(targ, AO) {
targ.animstruct = undefined;
}
function replaceEscape(targ, nextanim, inputseq, count, options) {
return(setEscape(targ, nextanim, inputseq, count, options, true));
}
function setEscape(targ, nextanim, inputseq, count, options, specialkey) {
if (targ.digeststruct != undefined) {
var _local2 = targ.digeststruct;
var _local5 = new Object();
_local5.inseq = inputseq;
_local5.count = count;
_local5.options = options;
_local5.curr = 0;
_local5.anim = nextanim;
_local5.inputs = new Array();
var _local9 = inputseq.split(" ");
var _local12 = 0;
var _local10 = 0;
for (var _local16 in _local5.inputs) {
if (GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS.hasOwnProperty(_local5.inputs[_local16])) {
_local10 = _local10 + 1;
} else {
_local12 = _local12 + 1;
}
}
if (_local10 == 0) {
} else if (_local10 != 0) {
if (_local12 != 0) {
trace("#WARNING: You can't mix hold and non hold escape inputs: " + inputseq);
trace((((("From: " + targ) + " ") + targ._currentframe) + " ") + nextanim);
}
}
var _local1 = 0;
while (_local1 < _local9.length) {
var _local6 = _local9[_local1].toUpperCase();
var _local7 = "";
var _local4 = 0;
while (_local4 < _local6.length) {
var _local3 = _local6.charCodeAt(_local4);
if ((_local3 >= 65) && (_local3 <= 90)) {
_local7 = _local7 + String.fromCharCode(_local3);
}
_local4++;
}
if (_local7.length > 0) {
_local5.inputs.push(_local7);
}
_local1++;
}
if (_local2.escapes == undefined) {
_local2.escapes = new Array();
_local2.escapes.push(_local5);
} else {
var _local8 = true;
_local1 = 0;
while (_local1 < _local2.escapes.length) {
if (_local2.escapes[_local1].anim == nextanim) {
if (specialkey == true) {
if (_local8 == true) {
_local2.escapes[_local1].inseq = _local5.inseq;
_local2.escapes[_local1].inputs = _local5.inputs;
_local2.escapes[_local1].options = _local5.options;
_local2.escapes[_local1].count = count;
_local8 = false;
} else {
_local2.escapes.splice(_local1, 1);
_local1--;
}
} else if (_local2.escapes[_local1].inseq == inputseq) {
if (_local2.escapes[_local1].options == options) {
_local8 = false;
}
}
}
_local1++;
}
if (_local8) {
_local2.escapes.push(_local5);
}
}
}
}
function setBlockEscape(nframes) {
var _local1 = getEnemyT(GLOBAL_ENEMY);
if (_local1.digeststruct != undefined) {
_local1.digeststruct.blockescapes = nframes;
}
}
function updateOnlyDigestion(target) {
if (target.digeststruct != undefined) {
var _local2 = target.digeststruct;
if (_local2.frames > 0) {
_local2.curr = _local2.curr + 1;
this.hurtPlayer(target, 1 / _local2.frames);
}
}
}
function updateDigestion(target, movedex) {
var _local8 = "";
if (target.digeststruct != undefined) {
var _local7 = target.digeststruct;
updateOnlyDigestion(target);
if (_local7.escapes != undefined) {
if (movedex == "") {
if (GLOBAL_PLAYER.hp < 1) {
movedex = "E";
} else {
movedex = "W";
}
}
var _local5 = 0;
while (_local5 < _local7.escapes.length) {
var _local1 = _local7.escapes[_local5];
var _local4 = false;
var _local2 = 0;
while (_local2 < _local1.inputs.length) {
if (_local1.inputs[_local2] == "W") {
_local4 = true;
break;
}
_local2++;
}
if (_local4) {
if (movedex != "W") {
_local1.curr = 0;
}
} else {
_local1.curr = _local1.curr - 0.0333333333333333;
}
if (_local1.curr < 0) {
_local1.curr = 0;
}
if (movedex != undefined) {
var _local6 = 0;
_local2 = 0;
while (_local2 < _local1.inputs.length) {
if (_local1.inputs[_local2] == movedex) {
_local6 = true;
break;
}
_local2++;
}
if (_local6) {
if (movedex == "W") {
_local1.curr = _local1.curr + 0.0333333333333333;
} else {
_local1.curr = _local1.curr + 1;
}
if (_local1.curr > _local1.count) {
if (_local8 == "") {
_local8 = _local1.anim;
_local1.curr = 0;
}
}
}
}
_local5++;
}
}
if (_local7.blockescapes != undefined) {
_local7.blockescapes--;
if (_local7.blockescapes < 1) {
_local7.blockescapes = undefined;
}
}
}
return(_local8);
}
function upMapAOVars(AO) {
if (AO != undefined) {
if (AO.E != undefined) {
if (AO.e == undefined) {
AO.e = AO.E;
}
}
if (AO.W != undefined) {
if (AO.w == undefined) {
AO.w = AO.W;
}
}
if (AO.L != undefined) {
if (AO.l == undefined) {
AO.l = AO.L;
}
}
if (AO.R != undefined) {
if (AO.r == undefined) {
AO.r = AO.R;
}
}
if (AO.U != undefined) {
if (AO.u == undefined) {
AO.u = AO.U;
}
}
if (AO.D != undefined) {
if (AO.d == undefined) {
AO.d = AO.D;
}
}
if (AO.B != undefined) {
if (AO.b == undefined) {
AO.b = AO.B;
}
}
if (AO.BL != undefined) {
if (AO.bl == undefined) {
AO.bl = AO.BL;
}
}
if (AO.BR != undefined) {
if (AO.br == undefined) {
AO.br = AO.BR;
}
}
if (AO.BU != undefined) {
if (AO.bu == undefined) {
AO.bu = AO.BU;
}
}
if (AO.BD != undefined) {
if (AO.bd == undefined) {
AO.bd = AO.BD;
}
}
if (AO.LU != undefined) {
if (AO.lu == undefined) {
AO.lu = AO.LU;
}
}
if (AO.RU != undefined) {
if (AO.ru == undefined) {
AO.ru = AO.RU;
}
}
if (AO.LD != undefined) {
if (AO.ld == undefined) {
AO.ld = AO.LD;
}
}
if (AO.RD != undefined) {
if (AO.rd == undefined) {
AO.rd = AO.RD;
}
}
if (AO.BLU != undefined) {
if (AO.blu == undefined) {
AO.blu = AO.BLU;
}
}
if (AO.BRU != undefined) {
if (AO.bru == undefined) {
AO.bru = AO.BRU;
}
}
if (AO.BLD != undefined) {
if (AO.bld == undefined) {
AO.bld = AO.BLD;
}
}
if (AO.BRD != undefined) {
if (AO.brd == undefined) {
AO.brd = AO.BRD;
}
}
}
}
function _resetHoldAnimationSystem() {
for (var _local1 in GLOBAL_HOLD_ANIMATION_INPUTS) {
GLOBAL_HOLD_ANIMATION_INPUTS[_local1].up = 1;
GLOBAL_HOLD_ANIMATION_INPUTS[_local1].down = 0;
GLOBAL_HOLD_ANIMATION_INPUTS[_local1].rel = 0;
GLOBAL_HOLD_ANIMATION_INPUTS[_local1].prev = 0;
GLOBAL_HOLD_ANIMATION_INPUTS[_local1].lckh = 0;
GLOBAL_HOLD_ANIMATION_FRAMES[_local1] = GLOBAL_HOLD_FRAMES_DEFAULT;
}
}
function getInputHoldingNames(target) {
var _local6 = NOFLIPEK;
var _local3 = target;
while (_local3._parent) {
if (_local3._parent.controller == this) {
if (_local3._xscale < 0) {
_local6 = FLIPEK;
}
break;
}
_local3 = _local3._parent;
}
var _local8 = [];
for (var _local9 in GLOBAL_HOLD_ANIMATION_PRIORITY) {
var _local2 = GLOBAL_HOLD_ANIMATION_PRIORITY[_local9];
var _local7 = GLOBAL_HOLD_ANIMATION_INPUTS[_local2].down;
var _local5 = GLOBAL_HOLD_ANIMATION_INPUTS[_local2].rel;
var _local4 = GLOBAL_HOLD_ANIMATION_FRAMES[_local2];
if ((_local5 >= _local4) || (_local7 >= _local4)) {
if (GLOBAL_HOLD_ANIMATION_INPUTS[_local2].lckh <= 1) {
_local8.push(_local6[("H" + _local2).toUpperCase()]);
}
} else if ((_local5 != 0) && (_local5 < _local4)) {
_local8.push(_local6[("T" + _local2).toUpperCase()]);
}
}
return(_local8);
}
function getNextAnimationHolding(targ, AO, defanim) {
var _local8 = defanim;
var _local6 = {};
var _local9 = getInputHoldingNames(targ);
for (var _local10 in _local9) {
var _local5 = _local9[_local10];
var _local7 = _local5.toLowerCase();
_local6[_local7] = _local5;
}
for (var _local11 in GLOBAL_HOLD_ANIMATION_PRIORITY) {
var _local4 = GLOBAL_HOLD_ANIMATION_PRIORITY[_local11];
var _local1 = "h" + _local4;
var _local2 = "t" + _local4;
if (_local6.hasOwnProperty(_local2)) {
if (AO.hasOwnProperty(_local2)) {
_local8 = AO[_local2];
break;
}
} else if (_local6.hasOwnProperty(_local1)) {
if (AO.hasOwnProperty(_local1)) {
_local8 = AO[_local1];
break;
}
}
}
return(_local8);
}
function updateDigestionHolds(target, AO) {
var _local9 = "";
if (target.digeststruct != undefined) {
var _local8 = target.digeststruct;
if (_local8.escapes != undefined) {
var _local6 = getInputHoldingNames(target);
var _local4 = 0;
while (_local4 < _local8.escapes.length) {
var _local1 = _local8.escapes[_local4];
var _local2 = {};
var _local3 = 0;
var _local7 = 0;
for (var _local10 in _local1.inputs) {
if (GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS.hasOwnProperty(_local1.inputs[_local10])) {
_local7 = _local7 + 1;
_local2[_local1.inputs[_local10]] = _local1.inputs[_local10];
} else {
_local3 = _local3 + 1;
}
}
if (_local3 == 0) {
var _local5 = false;
for (var _local11 in _local6) {
if (_local2.hasOwnProperty(_local6[_local11])) {
_local5 = true;
break;
}
}
if (_local5) {
_local1.curr = _local1.curr + 1;
if (_local1.curr > _local1.count) {
if (_local9 == "") {
_local9 = _local1.anim;
_local1.curr = 0;
}
}
} else {
_local1.curr = _local1.curr - 0.0333333333333333;
if (_local1.curr < 0) {
_local1.curr = 0;
}
}
}
_local4++;
}
}
}
return(_local9);
}
function handleBasicStruggle(targ, AO) {
if (targ.animstruct != undefined) {
if (AO == undefined) {
AO = targ.animstruct;
}
}
upMapAOVars(AO);
targ.animstruct = AO;
if (AO != undefined) {
if (GLOBAL_PLAYER.hp < 1) {
if (AO.e != undefined) {
goPlay(targ, AO.e);
return(false);
}
}
}
var _local4 = getPlayerRelativeMovement(1);
if (targ.digeststruct != undefined) {
var _local5 = targ.digeststruct;
if (_local5.blockescapes != undefined) {
_local4 = "";
}
}
var _local1 = updateDigestion(targ, _local4);
if (_local1 == "") {
_local1 = updateDigestionHolds(targ, AO);
}
if (_local1 == "") {
_local1 = getNextAnimation(AO, _local4);
_local1 = getNextAnimationHolding(targ, AO, _local1);
if (_local1 != "") {
goPlay(targ, _local1);
_traceF2((("Handle digest update, play this: " + _local1) + " from ") + targmoveindex);
return(true);
}
_traceF2((("Handle digest update, play this digest: " + _local1) + " from ") + targmoveindex);
} else {
goPlay(targ, _local1);
return(true);
}
return(false);
}
function decodePlayerAct() {
var _local2 = this.actGet(GLOBAL_PLAYER);
if (_local2.attacking != 0) {
if (_local2.attack == 2) {
return("atkh");
}
if (_local2.attack == 1) {
return("atkm");
}
if (_local2.attack == 0) {
return("atkl");
}
if (_local2.attack == 4) {
return("atkp");
}
}
if ((_local2.running != 0) && (_local2.attacking == 0)) {
return("rolling");
}
if (((_local2.moving != 0) && (_local2.attacking == 0)) && (_local2.busy == 0)) {
return("move");
}
if ((((_local2.moving == 0) && (_local2.attacking == 0)) && (_local2.busy != 0)) && (_local2.hit != 0)) {
return("hit");
}
return("idle");
}
function actGet(target) {
var _local1 = new Object();
_local1.idle = target.s_idle;
_local1.attack = target.s_atktype;
_local1.busy = target.s_animbusy;
_local1.moving = target.s_moving;
_local1.running = target.s_running;
_local1.attacking = target.s_attacking;
_local1.hit = target.s_hit;
_local1.inputX = target.in_movex;
_local1.inputY = target.in_movey;
_local1.inputA = target.in_action;
_local1.vx = target.s_vx;
return(_local1);
}
function actIdle(target) {
_traceF1("actIdle");
target.s_idle = 1;
target.s_atktype = 0;
target.s_animbusy = 0;
target.s_moving = 0;
target.s_attacking = 0;
target.s_hit = 0;
target.in_movex = 0;
target.in_movey = 0;
target.in_action = 0;
target.s_vx = 0;
}
function actMove(target, uvx) {
_traceF1("actMove");
target.s_idle = 0;
if (uvx != undefined) {
target.s_moving = uvx;
} else {
target.s_moving = 0;
}
target.s_attacking = 0;
target.s_hit = 0;
target.s_animbusy = 0;
}
function actSetMove(target, amt) {
if (amt == undefined) {
amt = 0;
}
target.s_moving = amt;
}
function actMoveAttack(target, uvx, attype) {
_traceF1("actMoveAttack");
target.s_idle = 0;
if (uvx != undefined) {
target.s_moving = uvx;
} else {
target.s_moving = 0;
}
target.s_attacking = 0;
target.s_hit = 0;
target.s_animbusy = 0;
target.s_attacking = 1;
target.s_animbusy = 0;
target.s_atktype = attype;
}
function actHurt(target, knockback) {
_traceF1("actHurt");
target.s_idle = 0;
target.s_moving = 0;
target.s_attacking = 0;
target.s_hit = 1;
target.s_animbusy = 1;
if (knockback != undefined) {
target.s_vx = knockback;
} else {
target.s_vx = 0;
}
}
function actAttack(target, type) {
_traceF1("actAttack");
target.s_idle = 0;
target.s_moving = 0;
target.s_attacking = 1;
target.s_hit = 0;
target.s_animbusy = 1;
target.s_atktype = type;
}
function actBusy(target, movex) {
_traceF1("actBusy");
target.s_idle = 0;
target.s_moving = 0;
target.s_attacking = 0;
target.s_hit = 1;
target.s_animbusy = 1;
if (movex != undefined) {
target.s_vx = -movex;
target.s_moving = -movex;
} else {
target.s_moving = 0;
target.s_vx = 0;
}
}
function actSetBusy(target, mv) {
target.s_animbusy = mv;
}
function actUnbusy(target) {
_traceF1("actUnbusy");
target.s_hit = 0;
target.s_animbusy = 0;
target.s_vx = 0;
}
function consumePlayer(target) {
_traceF1("consumePlayer");
var _local1 = GLOBAL_PLAYER;
_local1.s_consumed = 1;
_local1._alpha = 0;
_local1.s_animbusy = 1;
_local1.s_hit = 1;
_local1.s_vx = 0;
_local1.in_movex = 0;
_local1.in_movey = 0;
_local1.in_action = 0;
_local1.stop();
_local1.mc.stop();
GLOBAL_ENEMY.s_atktype = 8;
}
function isPlayerConsumed(target) {
if (target == undefined) {
target = GLOBAL_PLAYER;
}
if (target.s_consumed != undefined) {
return(target.s_consumed > 0);
}
return(target._alpha < 50);
}
function suckPlayer(target, range, speed) {
var _local3 = GLOBAL_PLAYER;
var _local4 = mcPointToGlobal(target, 0, 0);
var _local2 = _local4._x - _local3._x;
if (Math.abs(_local2) < range) {
var _local1 = 1 - Math.abs(_local2 / range);
if (_local2 < 0) {
_local1 = -_local1;
}
_local3._x = _local3._x + (speed * _local1);
}
}
function instantKillPlayer(target) {
_traceF1("instantKillPlayer");
var _local1 = GLOBAL_PLAYER;
_local1.hp = 0;
}
function setPlayerStatus(msg) {
GLOBAL_PLAYER.m_status = msg;
}
function setPlayerMode(newmode) {
if (newmode == undefined) {
GLOBAL_PLAYER_MODE++;
if (GLOBAL_PLAYER_MODE > GLOBAL_PLAYER_MODE_MAX) {
GLOBAL_PLAYER_MODE = 0;
}
} else if ((newmode >= 0) && (newmode <= GLOBAL_PLAYER_MODE_MAX)) {
GLOBAL_PLAYER_MODE = newmode;
}
if (GLOBAL_PLAYER_MODE == 0) {
setPlayerSparkAt(GLOBAL_PLAYER);
setPlayerSparkPhysics("MoveUp,2");
GLOBAL_PLAYERSPARK.gotoAndPlay("number" + GLOBAL_PLAYER_MODE);
} else if (GLOBAL_PLAYER_MODE == 1) {
setPlayerSparkAt(GLOBAL_PLAYER);
setPlayerSparkPhysics("MoveUp,2");
GLOBAL_PLAYERSPARK.gotoAndPlay("number" + GLOBAL_PLAYER_MODE);
}
}
function pointsSetPerDamage(factor) {
if (factor > 0) {
GLOBAL_SCORE_ON_DAMAGE = factor;
} else {
GLOBAL_SCORE_ON_DAMAGE = 0;
}
}
function pointsAdd(amount, dontuselog) {
if (amount > 0) {
GLOBAL_POINTS = GLOBAL_POINTS + amount;
if (dontuselog == 1) {
Log(((GLOBAL_PLAYER.m_name + " got ") + amount) + " points!");
}
}
}
function pointsGet(amount) {
return(GLOBAL_POINTS);
}
function pointsGetFightDelta(amount) {
return(GLOBAL_POINTS - GLOBAL_POINTS_START);
}
function setHAtk(v) {
GLOBAL_ENEMY.hatk = v;
}
function setMAtk(v) {
GLOBAL_ENEMY.matk = v;
}
function setLAtk(v) {
GLOBAL_ENEMY.latk = v;
}
function setHDef(v) {
GLOBAL_ENEMY.hdef = v;
}
function setMDef(v) {
GLOBAL_ENEMY.mdef = v;
}
function setLDef(v) {
GLOBAL_ENEMY.ldef = v;
}
function setMaxHP(v) {
GLOBAL_ENEMY.maxhp = v;
}
function setMaxHPandHP(v) {
GLOBAL_ENEMY.maxhp = v;
GLOBAL_ENEMY.hp = v;
}
function setHP(v) {
GLOBAL_ENEMY.hp = v;
}
function setHMLDef(vh, vm, vl) {
GLOBAL_ENEMY.hdef = vh;
GLOBAL_ENEMY.mdef = vm;
GLOBAL_ENEMY.ldef = vl;
}
function setHMLAtk(vh, vm, vl) {
GLOBAL_ENEMY.hatk = vh;
GLOBAL_ENEMY.matk = vm;
GLOBAL_ENEMY.latk = vl;
}
function setScaleValue(v) {
GLOBAL_ENEMY.m_scale = v;
GLOBAL_ENEMY.enemy.m_scale = v;
getEnemyT(GLOBAL_ENEMY).m_scale = v;
var _local2 = 100 * (100 / v);
if (GLOBAL_ENEMY._xscale >= 0) {
GLOBAL_ENEMY._xscale = 100;
} else {
GLOBAL_ENEMY._xscale = -100;
}
GLOBAL_ENEMY._yscale = 100;
getEnemyT(GLOBAL_ENEMY)._xscale = _local2;
getEnemyT(GLOBAL_ENEMY)._yscale = _local2;
}
function setName(v) {
GLOBAL_ENEMY.m_name = v;
}
function setStatus(v) {
GLOBAL_ENEMY.m_status = v;
}
function setCredit(v) {
GLOBAL_ENEMY.m_credit = v;
}
function getHAtk() {
return(GLOBAL_ENEMY.hatk);
}
function getMAtk() {
return(GLOBAL_ENEMY.matk);
}
function getLAtk() {
return(GLOBAL_ENEMY.latk);
}
function getHDef() {
return(GLOBAL_ENEMY.hdef);
}
function getMDef() {
return(GLOBAL_ENEMY.mdef);
}
function getLDef() {
return(GLOBAL_ENEMY.ldef);
}
function getMaxHP() {
return(GLOBAL_ENEMY.maxhp);
}
function getHP() {
return(GLOBAL_ENEMY.hp);
}
function getScaleValue() {
return(GLOBAL_ENEMY.m_scale);
}
function getName() {
return(GLOBAL_ENEMY.m_name);
}
function getStatus() {
return(GLOBAL_ENEMY.m_status);
}
function getCredit() {
return(GLOBAL_ENEMY.m_credit);
}
function resetHAtk(v) {
GLOBAL_ENEMY.hatk = GLOBAL_ENEMY.hatk_original;
}
function resetMAtk(v) {
GLOBAL_ENEMY.matk = GLOBAL_ENEMY.matk_original;
}
function resetLAtk(v) {
GLOBAL_ENEMY.latk = GLOBAL_ENEMY.latk_original;
}
function resetHDef(v) {
GLOBAL_ENEMY.hdef = GLOBAL_ENEMY.hdef_original;
}
function resetMDef(v) {
GLOBAL_ENEMY.mdef = GLOBAL_ENEMY.mdef_original;
}
function resetLDef(v) {
GLOBAL_ENEMY.ldef = GLOBAL_ENEMY.ldef_original;
}
function resetMaxHP(v) {
GLOBAL_ENEMY.maxhp = GLOBAL_ENEMY.maxhp_original;
}
function setEnemySolid(v) {
if (v == 1) {
GLOBAL_ENEMY.m_notsolid = undefined;
} else {
GLOBAL_ENEMY.m_notsolid = 1;
}
}
function setEnemyFaceTarget(v) {
if (v == 1) {
GLOBAL_ENEMY.m_dontfacetarget = 0;
} else {
GLOBAL_ENEMY.m_dontfacetarget = 1;
}
}
function setEnemyAIUseAttacks(v) {
if (v == 1) {
GLOBAL_ENEMY.m_dontattackauto = undefined;
} else {
GLOBAL_ENEMY.m_dontattackauto = 1;
}
}
function setEnemyAINoAutoIdle(v) {
if (v == 1) {
GLOBAL_ENEMY.m_dontautoidle = 1;
} else {
GLOBAL_ENEMY.m_dontautoidle = undefined;
}
}
function setEnemyRollOption(v) {
GLOBAL_ENEMY.m_rolloption = v;
}
function getEnemyRollOption() {
return(GLOBAL_ENEMY.m_rolloption);
}
function setPlayerHP(v) {
GLOBAL_PLAYER.hp = v;
}
function setPlayerAbove(ynq) {
if (ynq == 1) {
if (GLOBAL_PLAYER.getDepth() < GLOBAL_ENEMY.getDepth()) {
GLOBAL_ENEMY.swapDepths(GLOBAL_PLAYER);
}
} else if (GLOBAL_PLAYER.getDepth() > GLOBAL_ENEMY.getDepth()) {
GLOBAL_ENEMY.swapDepths(GLOBAL_PLAYER);
}
}
function enemyReplaceWalk(newanim) {
if (newanim == undefined) {
newanim = "walk";
}
GLOBAL_ENEMY.replaceAnimWalk = newanim;
if (getEnemyT(GLOBAL_ENEMY).__animcurrent != newanim) {
goPlay(getEnemyT(GLOBAL_ENEMY), newanim);
}
}
function syncSubclip(owner, subclip, framename, funccall) {
if (GLOBAL_SYNCMAP.hasOwnProperty(subclip)) {
GLOBAL_SYNCMAP[subclip].framename = framename;
GLOBAL_SYNCMAP[subclip].owner = owner;
GLOBAL_SYNCMAP[subclip].target = subclip;
GLOBAL_SYNCMAP[subclip].ownerstring = String(owner);
GLOBAL_SYNCMAP[subclip].targetstring = String(subclip).substr(GLOBAL_SYNCMAP[subclip].ownerstring.length);
GLOBAL_SYNCMAP[subclip].funccall = funccall;
} else {
var _local2 = new Object();
_local2.framename = framename;
_local2.owner = owner;
_local2.target = subclip;
_local2.funccall = funccall;
_local2.ownerstring = String(owner);
_local2.targetstring = String(subclip).substr(_local2.ownerstring.length);
_local2.fixedframemap = new Object();
GLOBAL_SYNCMAP[subclip] = _local2;
}
}
function setPreSync(func) {
GLOBAL_PRESYNC = func;
}
function setPostSync(func) {
GLOBAL_POSTSYNC = func;
}
function isV(key) {
return(GLOBAL_VALUES.hasOwnProperty(key));
}
function setValue(key, val) {
if (GLOBAL_VALUES[key] != val) {
_traceF1(((("setValue( " + key) + ", ") + val) + ");");
}
GLOBAL_VALUES[key] = val;
}
function getValue(key, usedefault) {
if (GLOBAL_VALUES.hasOwnProperty(key)) {
return(GLOBAL_VALUES[key]);
}
return(usedefault);
}
function hasValue(key) {
return(GLOBAL_VALUES.hasOwnProperty(key));
}
function addValue(key, addme) {
if (GLOBAL_VALUES.hasOwnProperty(key)) {
if (addme != val) {
_traceF1(((("addValue( " + key) + ", ") + addme) + ");");
}
GLOBAL_VALUES[key] = GLOBAL_VALUES[key] + addme;
return(true);
}
trace(("Value: " + key) + " does not exist, adding as 0");
GLOBAL_VALUES[key] = addme;
return(false);
}
function setF(key, func) {
GLOBAL_FUNCS[key] = func;
}
function callF(key, arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7) {
if (GLOBAL_FUNCS.hasOwnProperty(key)) {
return(GLOBAL_FUNCS[key](arg0, arg1, arg2, arg3, arg4, arg5, arg6, arg7));
}
trace(("callF: " + key) + " does not exist");
}
function setAnimPrefix(target, v) {
target.__aniprefix = v;
}
function unconsumePlayer(target, xposrel, playanim) {
_traceF1("unconsumePlayer");
if (isPlayerConsumed(GLOBAL_PLAYER)) {
var _local2 = GLOBAL_PLAYER;
_local2.s_consumed = 0;
_local2._alpha = 100;
_local2.s_animbusy = 0;
_local2.s_hit = 1;
_local2.s_vx = 0;
_local2.in_movex = 0;
_local2.in_movey = 0;
_local2.in_action = 0;
if (playanim != undefined) {
goPlay(_local2, playanim);
} else {
goPlay(_local2, "hitm");
}
trace((((target + " ") + target._parent) + " ") + target._parent._parent);
if (xposrel != undefined) {
if (target._parent._parent == GLOBAL_ENEMY) {
_local2._x = target._parent._parent._x + ((xposrel * (target._xscale / 100)) * (target._parent._parent._xscale / 100));
} else {
_local2._x = target._parent._x + ((xposrel * (target._xscale / 100)) * (target._parent._xscale / 100));
}
} else if (target._parent._parent == GLOBAL_ENEMY) {
_local2._x = target._parent._parent._x + ((32 * (target._xscale / 100)) * (target._parent._parent._xscale / 100));
} else {
_local2._x = target._parent._x + ((32 * (target._xscale / 100)) * (target._parent._xscale / 100));
}
}
}
function enemySetViewBetween(doit) {
if (doit == 0) {
GLOBAL_SHOW_PLAYER_INSIDEPLUS_ENEMY_ENABLE = false;
} else {
GLOBAL_SHOW_PLAYER_INSIDEPLUS_ENEMY_ENABLE = true;
}
}
function playerSignedDistance(target) {
var _local3 = GLOBAL_ENEMY._x;
var _local2 = GLOBAL_PLAYER._x;
var _local4 = GLOBAL_ENEMY._xscale < 0;
var _local6 = getCBox(GLOBAL_PLAYER);
if (target == undefined) {
target = getEnemyT(GLOBAL_ENEMY);
}
var _local5 = getCBox(GLOBAL_ENEMY.enemy);
if ((_local6 != undefined) and (_local5 != undefined)) {
A = _local6.getBounds(_root);
B = _local5.getBounds(_root);
if (!_local4) {
_local3 = B.xMax;
_local2 = A.xMin;
} else {
_local3 = B.xMin;
_local2 = A.xMax;
}
}
if (isNaN(_local2)) {
_local2 = GLOBAL_PLAYER._x;
}
if (_local4) {
return(_local3 - _local2);
}
return(_local2 - _local3);
}
function playerSignedDistanceFix(target) {
var _local4 = GLOBAL_ENEMY._x;
var _local3 = GLOBAL_PLAYER._x;
var _local5 = GLOBAL_ENEMY._xscale < 0;
var _local2 = getCBox(GLOBAL_PLAYER);
if ((_local2 == undefined) || (_local2.toString() == undefined)) {
_local2 = getRollBox(GLOBAL_PLAYER);
}
if (target == undefined) {
target = getEnemyT(GLOBAL_ENEMY);
}
var _local6 = getCBox(GLOBAL_ENEMY.enemy);
if ((_local2 != undefined) and (_local6 != undefined)) {
A = _local2.getBounds(_root);
B = _local6.getBounds(_root);
if (!_local5) {
_local4 = B.xMax;
_local3 = A.xMin;
} else {
_local4 = B.xMin;
_local3 = A.xMax;
}
}
if (_local5) {
return(_local4 - _local3);
}
return(_local3 - _local4);
}
function playerDistance(target) {
var _local3 = getCBox(GLOBAL_PLAYER);
if (target == undefined) {
target = getEnemyT(GLOBAL_ENEMY);
}
var _local2 = getCBox(GLOBAL_ENEMY.enemy);
if ((_local3 != undefined) and (_local2 != undefined)) {
A = _local3.getBounds(_root);
B = _local2.getBounds(_root);
if ((A.xMin <= B.xMax) and (A.xMax >= B.xMin)) {
if ((A.yMin <= B.yMax) and (A.yMax >= B.yMin)) {
return(-Math.abs(0.5 * ((A.xMax + A.xMin) - (B.xMax + B.xMin))));
}
}
if (A.xMin >= B.xMax) {
return(Math.abs(B.xMax - A.xMin));
}
if (A.xMax <= B.xMin) {
return(Math.abs(B.xMin - A.xMax));
}
}
return(Math.abs(GLOBAL_PLAYER._x - GLOBAL_ENEMY._x));
}
function playerEnemyCenterAbsoluteDistance() {
var _local1 = (GLOBAL_PLAYER._x - GLOBAL_ENEMY._x) * 1;
return(_local1);
}
function enemyAbsoluteYPosition() {
var _local1 = (GLOBAL_ENEMY._y - GLOBAL_FLOOR) * 1;
return(_local1);
}
function playerDistanceNF(target) {
var _local3 = getCBox(GLOBAL_PLAYER);
if (target == undefined) {
target = getEnemyT(GLOBAL_ENEMY);
}
var _local2 = getCBox(GLOBAL_ENEMY.enemy);
if ((_local3 != undefined) and (_local2 != undefined)) {
A = _local3.getBounds(_root);
B = _local2.getBounds(_root);
if ((A.xMin <= B.xMax) and (A.xMax >= B.xMin)) {
if ((A.yMin <= B.yMax) and (A.yMax >= B.yMin)) {
return(0.5 * ((A.xMax + A.xMin) - (B.xMax + B.xMin)));
}
}
if (A.xMin >= B.xMax) {
return(A.xMin - B.xMax);
}
if (A.xMax <= B.xMin) {
return(A.xMax - B.xMin);
}
}
return(GLOBAL_PLAYER._x - GLOBAL_ENEMY._x);
}
function playerEnemyCenterDistance() {
var _local1 = (GLOBAL_PLAYER._x - GLOBAL_ENEMY._x) * 1;
if (GLOBAL_ENEMY._xscale < 0) {
return(-_local1);
}
return(_local1);
}
function playerWithin(target, distance, fardistance) {
if (fardistance != undefined) {
var _local1 = playerDistance(target);
return((_local1 >= distance) and (_local1 <= fardistance));
}
return(playerDistance(target) < distance);
}
function playSound(soundkey, extravolume, exparam) {
var _local5 = _parent.soundbank;
if (extravolume != undefined) {
var _local7 = new Sound(_local5);
_local7.setVolume(extravolume);
} else {
var _local7 = new Sound(_local5);
_local7.setVolume(100);
}
var _local4 = "";
var _local2 = 0;
while (_local2 < soundkey.length) {
if (soundkey.charCodeAt(_local2) == 46) {
_local4 = _local4 + "_";
} else {
_local4 = _local4 + soundkey.charAt(_local2);
}
_local2++;
}
var _local9 = _local5._currentframe;
_local5.gotoAndPlay(1);
_local5.gotoAndPlay(_local4);
var _local6 = _local5._currentframe;
if (_local6 == 1) {
trace(((((((((((("Manual soundplay" + _local5) + ": ") + _local4) + " :") + extravolume) + " |") + exparam) + " [") + _local9) + " ") + _local6) + "]");
}
}
function _getRollBox(bc) {
if (bc.rollbox != undefined) {
return(bc.rollbox);
}
if (bc.rollBox != undefined) {
return(bc.rollBox);
}
if (bc.Rollbox != undefined) {
return(bc.Rollbox);
}
if (bc.RollBox != undefined) {
return(bc.RollBox);
}
if (bc.ROLLBOX != undefined) {
return(bc.ROLLBOX);
}
return(undefined);
}
function _getCBox(bc) {
if (bc.cbox != undefined) {
return(bc.cbox);
}
if (bc.cBox != undefined) {
return(bc.cBox);
}
if (bc.Cbox != undefined) {
return(bc.Cbox);
}
if (bc.CBox != undefined) {
return(bc.CBox);
}
if (bc.CBOX != undefined) {
return(bc.CBOX);
}
return(undefined);
}
function _getABox(bc) {
if (bc.abox != undefined) {
return(bc.abox);
}
if (bc.aBox != undefined) {
return(bc.aBox);
}
if (bc.Abox != undefined) {
return(bc.Abox);
}
if (bc.ABox != undefined) {
return(bc.ABox);
}
if (bc.ABOX != undefined) {
return(bc.ABOX);
}
return(undefined);
}
function _getSBox(bc) {
if (bc.sbox != undefined) {
return(bc.sbox);
}
if (bc.sBox != undefined) {
return(bc.sBox);
}
if (bc.Sbox != undefined) {
return(bc.Sbox);
}
if (bc.SBox != undefined) {
return(bc.SBox);
}
if (bc.SBOX != undefined) {
return(bc.SBOX);
}
return(undefined);
}
function _getScopelessFunc(bc, usefunc) {
var _local1 = usefunc(bc);
if (_local1 != undefined) {
return(_local1);
}
_local1 = usefunc(bc.aniclip.mc);
if (_local1 != undefined) {
return(_local1);
}
_local1 = usefunc(bc.aniclip.mc.mc);
if (_local1 != undefined) {
return(_local1);
}
_local1 = usefunc(bc.enemy);
if (_local1 != undefined) {
return(_local1);
}
return(undefined);
}
function getCBox(mc) {
return(_getScopelessFunc(mc, _getCBox));
}
function getRollBox(mc) {
return(_getScopelessFunc(mc, _getRollBox));
}
function getABox(mc) {
return(_getScopelessFunc(mc, _getABox));
}
function getSBox(mc) {
return(_getScopelessFunc(mc, _getSBox));
}
function getEnemyT(GE) {
if (GE.enemy.enemy != undefined) {
return(GE.enemy.enemy);
}
return(GE.enemy);
}
function getEnemyGSync(GC) {
var _local2 = GC;
while (_local2.VICSYNC == undefined) {
if (_local2.VICSYNC != undefined) {
return(_local2);
}
if (_local2 == _root) {
return(undefined);
}
_local2 = _local2._parent;
}
return(_local2);
}
function getEnemyURL(index) {
if (index > GLOBAL_MAXENEMYNONEXTERNAL) {
var _local1 = (index - GLOBAL_MAXENEMYNONEXTERNAL) - 1;
if (_local1 < GLOBAL_LOADEEMS.length) {
return(GLOBAL_LOADEEMS[_local1]);
}
}
return("");
}
function getEnemyURLIndex(index) {
if (index > GLOBAL_MAXENEMYNONEXTERNAL) {
var _local1 = (index - GLOBAL_MAXENEMYNONEXTERNAL) - 1;
if (_local1 < GLOBAL_LOADEEMS.length) {
return(_local1);
}
}
return(-1);
}
function stringTrimR(s, char, flip) {
if (flip == undefined) {
flip = 0;
}
if (flip) {
var _local4 = s.indexOf(char);
var _local1 = _local4;
while (_local4 > 0) {
_local1 = _local4;
_local4 = s.indexOf(char, _local1 + 1);
}
if (_local1 >= 0) {
s = s.substr(_local1 + 1);
}
} else {
var _local4 = s.indexOf(char);
if (_local4 > 0) {
s = s.substr(0, _local4);
}
}
return(s);
}
function stringTrimL(s, char, flip) {
if (flip == undefined) {
flip = 0;
}
var _local1 = s.indexOf(char);
var _local2 = _local1;
while (_local1 > 0) {
_local2 = _local1;
_local1 = s.indexOf(char, _local2 + 1);
}
if (_local2 >= 0) {
if (flip) {
s = s.substr(0, _local2);
} else {
s = s.substr(_local2 + 1);
}
}
return(s);
}
function getEnemyURLName(index) {
var _local1 = "";
if (GLOBAL_ENEMY_DATA.hasOwnProperty(index)) {
var _local5 = GLOBAL_ENEMY_DATA[index];
var _local4 = _local5.m_name;
var _local3 = _local5.m_status;
var _local2 = _local5.m_credit;
if (_local4 == undefined) {
_local4 = "?";
}
if (_local3 == undefined) {
_local3 = "?";
}
if (_local2 == undefined) {
_local2 = "?";
}
_local1 = ((((_local4 + ", ") + _local3) + "[") + _local2) + "]";
} else {
_local1 = getEnemyURL(index);
_local1 = stringTrimL(_local1, "/");
_local1 = stringTrimL(_local1, ".", 1);
_local1 = stringTrimL(_local1, ".");
}
return(_local1);
}
function _getScopeless(bc, targetname) {
var _local1 = function (xc) {
if (xc.hasOwnProperty(targetname)) {
return(xc[targetname]);
}
return(undefined);
};
return(_getScopelessFunc(bc, _local1));
}
function reassignAllXClips(mc) {
var _local3 = getCBox(mc);
if (_local3 == mc) {
_local3 = undefined;
}
if (_local3 != mc.cbox) {
mc.cbox = _local3;
}
if (_local3 != mc.cBox) {
mc.cBox = _local3;
}
if (_local3 != mc.CBox) {
mc.CBox = _local3;
}
if (_local3 != mc.CBOX) {
mc.CBOX = _local3;
}
var _local4 = getABox(mc);
if (_local4 == mc) {
_local4 = undefined;
}
if (_local4 != mc.abox) {
mc.abox = _local4;
}
if (_local4 != mc.aBox) {
mc.aBox = _local4;
}
if (_local4 != mc.ABox) {
mc.ABox = _local4;
}
if (_local4 != mc.ABOX) {
mc.ABOX = _local4;
}
var _local2 = getSBox(mc);
if (_local2 == mc) {
_local2 = undefined;
}
if (_local2 != mc.sbox) {
mc.sbox = _local2;
}
if (_local2 != mc.sBox) {
mc.sBox = _local2;
}
if (_local2 != mc.SBox) {
mc.SBox = _local2;
}
if (_local2 != mc.SBOX) {
mc.SBOX = _local2;
}
}
function hitPlayerAttack(clip) {
var _local1 = getABox(GLOBAL_PLAYER);
return(_local1.hitTest(clip));
}
function hitPlayerHeadCenter(clip) {
return(clip.hitTest(_root.player.head.center));
}
function hitPlayerHead(clip) {
return(clip.hitTest(_root.player.head));
}
function hitPlayerCenter(clip) {
return(clip.hitTest(_root.player.centerbox));
}
function hitPlayer(clip) {
return(clip.hitTest(_root.player.cbox));
}
function getPlayerCenterClip() {
return(_root.player.centerbox);
}
function getPlayerHeadClip() {
return(_root.player.head);
}
function getPlayerHeadCenterClip() {
return(_root.player.head.center);
}
function hitPlayerAny(clip) {
return(clip.hitTest(_root.player));
}
function getPlayer() {
return(_root.player);
}
function getPlayerHealthPercent() {
return(100 * (_root.player.hp / 63));
}
function getPlayerRemainingHealthPercent() {
return(100 - getPlayerHealthPercent());
}
function getEnemyHealthPercent() {
return(100 * (_root.enemy.hp / _root.enemy.maxhp));
}
function getPlayerHP() {
return(_root.player.hp);
}
function getEnemyHP() {
return(_root.enemy.hp);
}
function getEnemy() {
return(_root.enemy);
}
function getController() {
return(_root.controller);
}
function enemyFacePlayer() {
if (GLOBAL_ENEMY._x < GLOBAL_PLAYER._x) {
GLOBAL_ENEMY._xscale = Math.abs(GLOBAL_ENEMY._xscale);
} else {
GLOBAL_ENEMY._xscale = -Math.abs(GLOBAL_ENEMY._xscale);
}
}
function enemyGetXPosition() {
return(GLOBAL_ENEMY._x);
}
function playerGetXPosition() {
return(GLOBAL_PLAYER._x);
}
function enemyRecenter(atx) {
if (atx == undefined) {
atx = 0;
}
var _local2 = GLOBAL_PLAYER._x - GLOBAL_ENEMY._x;
GLOBAL_ENEMY._x = atx;
GLOBAL_PLAYER._x = atx + _local2;
}
function enemyPlaceFromPlayer(deltx, delty) {
if (GLOBAL_PLAYER._xscale > 0) {
GLOBAL_ENEMY._x = deltx + GLOBAL_PLAYER._x;
} else {
GLOBAL_ENEMY._x = (-deltx) + GLOBAL_PLAYER._x;
}
if (delty != undefined) {
GLOBAL_ENEMY._y = delty;
}
}
function setPlayerHasHead(v) {
if (v) {
_root.GLOBAL_PLAYERHEAD = 1;
GLOBAL_PLAYERHASHEAD = true;
} else {
_root.GLOBAL_PLAYERHEAD = 0;
GLOBAL_PLAYERHASHEAD = false;
}
}
function enemyGetID() {
return(GLOBAL_ENEMY._currentframe);
}
function enemyGetHashData(thisframe) {
if (GLOBAL_ENEMY_HASHCODES.hasOwnProperty(thisframe)) {
return(GLOBAL_ENEMY_HASHCODES[thisframe]);
}
var _local1 = new Object();
_local1.external = 0;
_local1.url = "";
_local1.index = thisframe;
if (thisframe > GLOBAL_MAXENEMYNONEXTERNAL) {
var _local13 = (thisframe - GLOBAL_MAXENEMYNONEXTERNAL) - 1;
if (_local13 < GLOBAL_LOADEEMS.length) {
_local1.url = GLOBAL_LOADEEMS[_local13];
_local1.external = 1;
} else {
return(undefined);
}
}
var _local12 = 2147483647 /* 0x7FFFFFFF */;
var _local9 = 2147483647 /* 0x7FFFFFFF */;
var _local3 = int(_local12);
if (_local1.external) {
_local3 = _local12;
} else {
_local3 = _local12 * _local1.index;
}
var _local5 = 0;
while (_local5 < _local1.url.length) {
var _local4 = _local1.url.charCodeAt(_local5);
_local3 = _local3 ^ (((_local4 | (_local4 << 8)) | (_local4 << 16)) | (_local4 << 24));
_local3 = _local3 + _local9;
_local5++;
}
_local1.hashcode = _local3;
_local1.hashflip = ((((_local3 >> 24) & 255) ^ ((_local3 >> 16) & 255)) ^ ((_local3 >> 8) & 255)) ^ (_local3 & 255);
_local1.red = 0;
_local1.green = 0;
_local1.blue = 0;
var _local2 = 0;
while (_local2 < 11) {
var _local8 = (_local3 >> (0 + (_local2 * 3))) & 1;
var _local7 = (_local3 >> (1 + (_local2 * 3))) & 1;
var _local6 = (_local3 >> (2 + (_local2 * 3))) & 1;
_local1.red = _local1.red << 1;
_local1.green = _local1.green << 1;
_local1.blue = _local1.blue << 1;
_local1.red = _local1.red | _local8;
_local1.green = _local1.green | _local7;
_local1.blue = _local1.blue | _local6;
_local2++;
}
_local1.red = _local1.red / 2048;
_local1.green = _local1.green / 2048;
_local1.blue = _local1.blue / 2048;
var _local10 = Math.sqrt(((_local1.red * _local1.red) + (_local1.green * _local1.green)) + (_local1.blue * _local1.blue));
if (_local10 > 0) {
_local1.red = _local1.red / _local10;
_local1.green = _local1.green / _local10;
_local1.blue = _local1.blue / _local10;
}
GLOBAL_ENEMY_HASHCODES[thisframe] = _local1;
return(_local1);
}
function toggleQuality() {
if (_root._quality == "LOW") {
_root._quality = "MEDIUM";
} else if (_root._quality == "MEDIUM") {
_root._quality = "HIGH";
} else {
_root._quality = "LOW";
}
}
function toggleFXQuality() {
GLOBAL_FX_QUALITY = GLOBAL_FX_QUALITY + 1;
GLOBAL_FX_QUALITY = GLOBAL_FX_QUALITY % 4;
if (GLOBAL_FX_QUALITY == 0) {
GLOBAL_USE_SHADOWS = false;
GLOBAL_USE_SYNCFX = false;
} else if (GLOBAL_FX_QUALITY == 1) {
GLOBAL_USE_SHADOWS = true;
GLOBAL_USE_SYNCFX = false;
} else if (GLOBAL_FX_QUALITY == 2) {
GLOBAL_USE_SHADOWS = false;
GLOBAL_USE_SYNCFX = true;
} else if (GLOBAL_FX_QUALITY == 3) {
GLOBAL_USE_SHADOWS = true;
GLOBAL_USE_SYNCFX = true;
}
}
function toggleSlowMode() {
GLOBAL_PAUSEHFR++;
GLOBAL_PAUSEHFR = GLOBAL_PAUSEHFR % 4;
}
function legacy4Struggle(target, aright, aleft, aup, adown) {
return(legacy8StruggleDist(target, aright, aleft, aup, adown, aright, aleft, aup, adown));
}
function legacy8Struggle(target, aright, aleft, aup, adown, bright, bleft, bup, bdown) {
return(legacy8StruggleDist(target, aright, aleft, aup, adown, bright, bleft, bup, bdown));
}
function legacyRandomStruggle(target, aright, aleft, aup, adown) {
var _local1 = new Object();
if (adown != undefined) {
_local1[adown] = 1;
}
if (aup != undefined) {
_local1[aup] = 1;
}
if (aleft != undefined) {
_local1[aleft] = 1;
}
if (aright != undefined) {
_local1[aright] = 1;
}
return(legacy8StruggleDist(target, _local1, _local1, _local1, _local1, _local1, _local1, _local1, _local1));
}
function legacySelectAndPlay(target, distofanims) {
if (typeof(distofanims) == "string") {
target.gotoAndPlay(distofanims);
return(true);
}
var _local1 = histSelect(distofanims);
if (_local1 != undefined) {
target.gotoAndPlay(_local1);
return(true);
}
return(false);
}
function legacy4StruggleDist(target, aright, aleft, aup, adown, bright, bleft, bup, bdown) {
return(legacy8StruggleDist(target, aright, aleft, aup, adown, aright, aleft, aup, adown));
}
function legacy8StruggleDist(target, aright, aleft, aup, adown, bright, bleft, bup, bdown) {
var _local4 = playerInputX();
var _local3 = playerInputY();
var _local5 = playerInputA();
var _local2 = enemyFacingRight();
if (_local5 != 0) {
if (_local4 < 0) {
if (_local2) {
return(legacySelectAndPlay(target, aleft));
}
return(legacySelectAndPlay(target, aright));
}
if (_local4 > 0) {
if (_local2) {
return(legacySelectAndPlay(target, aright));
}
return(legacySelectAndPlay(target, aleft));
}
if (_local3 > 0) {
return(legacySelectAndPlay(target, aup));
}
if (_local3 < 0) {
return(legacySelectAndPlay(target, adown));
}
} else {
if (_local4 < 0) {
if (_local2) {
return(legacySelectAndPlay(target, bleft));
}
return(legacySelectAndPlay(target, bright));
}
if (_local4 > 0) {
if (_local2) {
return(legacySelectAndPlay(target, bright));
}
return(legacySelectAndPlay(target, bleft));
}
if (_local3 > 0) {
return(legacySelectAndPlay(target, bup));
}
if (_local3 < 0) {
return(legacySelectAndPlay(target, bdown));
}
}
return(false);
}
function _stopExtSounds() {
var _local2 = new Sound(GLOBAL_ENEMY);
_local2.stop();
_local2.setVolume(0);
var _local3 = new Sound(GLOBAL_ENEMY.enemy);
_local3.stop();
_local3.setVolume(0);
var _local4 = new Sound(GLOBAL_ENEMY.enemy.enemy);
_local4.stop();
_local4.setVolume(0);
var _local5 = new Sound(GLOBAL_ENEMY.enemy.enemy.enemy);
_local5.stop();
_local5.setVolume(0);
var _local1 = new Sound(getEnemyT(GLOBAL_ENEMY));
_local1.stop();
_local1.setVolume(0);
}
function _startExtSounds() {
var _local2 = new Sound(GLOBAL_ENEMY);
_local2.stop();
_local2.setVolume(100);
var _local3 = new Sound(GLOBAL_ENEMY.enemy);
_local3.stop();
_local3.setVolume(100);
var _local4 = new Sound(GLOBAL_ENEMY.enemy.enemy);
_local4.stop();
_local4.setVolume(100);
var _local5 = new Sound(GLOBAL_ENEMY.enemy.enemy.enemy);
_local5.stop();
_local5.setVolume(100);
var _local1 = new Sound(getEnemyT(GLOBAL_ENEMY));
_local1.stop();
_local1.setVolume(100);
}
function SMcreate(namekey) {
var _local3 = function (G, O, player) {
};
enemySetAIFunction(_local3);
GLOBAL_VALUES._StateMachinePrefixKey = namekey;
GLOBAL_VALUES._StateMachineKey = namekey + "SM";
GLOBAL_VALUES._StateMachineStateKey = namekey + "SMstates";
GLOBAL_VALUES[GLOBAL_VALUES._StateMachineKey] = {};
GLOBAL_VALUES[namekey + "SMnext"] = "";
GLOBAL_VALUES[namekey + "SMcurr"] = "";
GLOBAL_VALUES[GLOBAL_VALUES._StateMachineStateKey] = new Object();
getEnemyT(ENMC)._run = function (G, O) {
var _local3 = G.V._StateMachinePrefixKey + "SMnext";
var _local2 = G.V._StateMachinePrefixKey + "SMcurr";
G.V[_local2] = G.V[_local3];
var _local4 = G.V[G.V._StateMachineKey][G.V[_local2]](G, O);
G.moveenemyCollisionOption(O);
};
}
function SMget() {
return(GLOBAL_VALUES[GLOBAL_VALUES._StateMachineKey]);
}
function _SM_state_updater(G, O) {
}
function SMaddState(key) {
var _local1 = key;
GLOBAL_VALUES[GLOBAL_VALUES._StateMachineStateKey][_local1] = new Array();
GLOBAL_VALUES[GLOBAL_VALUES._StateMachineKey][_local1] = _SM_state_updater;
}
function SMpushFunction(key, fn) {
GLOBAL_VALUES[GLOBAL_VALUES._StateMachineStateKey][key].push({type:0, fn:fn});
}
function SMpushEdgeFunction(key, nextkey, fn) {
GLOBAL_VALUES[GLOBAL_VALUES._StateMachineStateKey][key].push({type:1, fn:fn});
}
function easClear() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
_local1.s_moving = 0;
_local1.s_movespeed = 0;
_local1.s_atktype = 0;
_local1.s_moving = 0;
_local1.s_attacking = 0;
_local1.s_hit = 0;
_local1.s_vx = 0;
}
function eaiActionStay() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
_local1.in_movex = 0;
}
function eaiActionMoveToward() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
var _local2 = playerDistance();
if (_local2 < 0) {
_local1.in_movex = -1;
} else {
_local1.in_movex = 1;
}
}
function eaiActionMoveAway() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
var _local2 = playerDistance();
if (_local2 < 0) {
_local1.in_movex = 1;
} else {
_local1.in_movex = -1;
}
}
function eaiActionMoveUp() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
_local1.in_movey = 1;
}
function eaiActionMoveDown() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
_local1.in_movey = -1;
}
function eaiActionAttack() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
_local1.in_action = 1;
}
function eaiActionAttackLow() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
_local1.in_movex = 0;
eaiActionMoveDown();
_local1.in_action = 1;
}
function eaiActionAttackMid() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
eaiActionMoveToward();
_local1.in_movey = 0;
_local1.in_action = 1;
}
function eaiActionAttackHigh() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
_local1.in_movex = 0;
eaiActionMoveUp();
_local1.in_action = 1;
}
function eaiAnimPlayIdle() {
goPlay(getEnemyT(GLOBAL_ENEMY), "idle");
}
function eaiAnimPlay(specific) {
goPlay(getEnemyT(GLOBAL_ENEMY), specific);
}
function eaiActBusy() {
var _local1 = getEnemyT(GLOBAL_ENEMY);
_local1.in_movex = 0;
_local1.in_movey = 0;
_local1.in_action = 0;
_local1.s_idle = 0;
_local1.s_moving = 0;
_local1.s_attacking = 0;
_local1.s_hit = 1;
_local1.s_animbusy = 1;
}
function _enemyAIDefault(G, enemy, player) {
if (!G.isPlayerConsumed(player)) {
if (((Math.abs(player._x - enemy._x) < (2 * player._width)) || (!player.s_attacking)) && ((G.getCBox(player).getBounds(_root).xMax + 16) < G.getCBox(enemy.enemy).getBounds(_root).xMin)) {
G.getEnemyT(enemy).in_movex = -1 * enemy.ai;
if ((Math.random() * 10) < 2) {
enemy.ai = 1;
}
} else if (((Math.abs(player._x - enemy._x) < (2 * player._width)) || (!player.s_attacking)) && ((G.getCBox(player).getBounds(_root).xMin - 16) > G.getCBox(enemy.enemy).getBounds(_root).xMax)) {
G.getEnemyT(enemy).in_movex = 1 * enemy.ai;
if ((Math.random() * 10) < 2) {
enemy.ai = 1;
}
} else {
G.getEnemyT(enemy).in_movex = 0;
if ((player.s_attacking && (!G.getEnemyT(enemy).s_attacking)) && (Math.abs(player._x - enemy._x) < (2 * player._width))) {
enemy.ai = -1;
} else if ((((G.getEnemyT(enemy).s_moving != 0) && (!G.getEnemyT(enemy).s_attacking)) && (!G.getEnemyT(enemy).s_hit)) && (!G.getEnemyT(enemy).s_animbusy)) {
if (enemy.m_dontautoidle == undefined) {
G.goPlay(G.getEnemyT(enemy), "idle");
}
} else {
var _local6 = player._x < enemy._x;
var _local7 = true;
var _local5 = G.histSelect(G.GLOBAL_ENEMY_ATKUSE);
if (enemy.m_dontattackauto != 1) {
if (_local6) {
if (_local5 == 0) {
G.getEnemyT(enemy).in_movex = 0;
G.getEnemyT(enemy).in_movey = 1;
G.getEnemyT(enemy).in_action = 1;
} else if (_local5 == 1) {
G.getEnemyT(enemy).in_movex = 0;
G.getEnemyT(enemy).in_movey = -1;
G.getEnemyT(enemy).in_action = 1;
} else {
G.getEnemyT(enemy).in_movex = -1;
G.getEnemyT(enemy).in_movey = 0;
G.getEnemyT(enemy).in_action = 1;
}
} else if (_local5 == 0) {
G.getEnemyT(enemy).in_movex = 0;
G.getEnemyT(enemy).in_movey = 1;
G.getEnemyT(enemy).in_action = 1;
} else if (_local5 == 1) {
G.getEnemyT(enemy).in_movex = 0;
G.getEnemyT(enemy).in_movey = -1;
G.getEnemyT(enemy).in_action = 1;
} else {
G.getEnemyT(enemy).in_movex = 1;
G.getEnemyT(enemy).in_movey = 0;
G.getEnemyT(enemy).in_action = 1;
}
}
}
}
}
}
function manualReset(T) {
if (T._manuallyReset == undefined) {
GLOBAL_DELAY_STARTNOISE = 4;
var _local3 = T.getBytesLoaded() >= T.getBytesTotal();
if (_local3) {
T._manuallyReset = 0;
var _local2 = T._parent;
_local2.m_scale = 100;
_local2.m_name = "NULL";
_local2.m_status = "NULL";
_local2.m_credit = "AUTO";
_local2.maxhp = 100;
_local2.hp = _local2.maxhp;
T.in_movex = 0;
T.in_movey = 0;
T.in_action = 0;
_local2.hatk = 0;
_local2.matk = 0;
_local2.latk = 0;
_local2.hdef = 0;
_local2.mdef = 0;
_local2.ldef = 0;
T.s_atktype = 0;
T.s_animbusy = 0;
T.s_idle = 1;
T.s_moving = 0;
T.s_attacking = 0;
T.s_hit = 0;
T.s_vx = 0;
_local2.m_cameraoffset = 0;
return(true);
}
trace("Force Reframe...");
T.gotoAndPlay("idle");
}
return(false);
}
function calcShadowPosition(ycoord) {
var _local2 = Math.abs(GLOBAL_FLOOR - ycoord) / 10;
var _local1 = 1;
if (_local2 > 1) {
_local1 = 1 / _local2;
if (_local1 > 1) {
_local1 = 1;
}
}
return(GLOBAL_FLOOR);
}
function calcShadowScale(ycoord) {
var _local2 = Math.abs(GLOBAL_FLOOR - ycoord) / 10;
if (_local2 > 1) {
var _local1 = 1 / _local2;
if (_local1 > 1) {
_local1 = 1;
}
return(Math.sqrt(_local1));
}
return(1);
}
function enemyClearIcon(cellid) {
if (GLOBAL_ENEMY_DATA[cellid] != undefined) {
if (GLOBAL_ENEMY_DATA[cellid].bitmap != undefined) {
GLOBAL_ENEMY_DATA[cellid].bitmap.dispose();
}
}
}
function enemySetIconBitmap(cellid, srcbmp, srcrect) {
if (GLOBAL_ENEMY_DATA[cellid] != undefined) {
if (GLOBAL_ENEMY_DATA[cellid].bitmap != undefined) {
GLOBAL_ENEMY_DATA[cellid].bitmap.dispose();
}
var _local2 = new flash.display.BitmapData(srcrect.width, srcrect.height, true, 0);
if (srcbmp != undefined) {
_local2.copyPixels(srcbmp, srcrect, new flash.geom.Point(0, 0));
}
GLOBAL_ENEMY_DATA[cellid].bitmap = _local2;
trace("EnemyBitmap: created " + cellid);
}
return(true);
}
function enemyGetIconBitmap(cellid) {
if (GLOBAL_ENEMY_DATA[cellid] != undefined) {
if (GLOBAL_ENEMY_DATA[cellid].bitmap == undefined) {
if (GLOBAL_ENEMY_DATA[cellid].bitmapstring != undefined) {
if (enemyLoadIconString(cellid, GLOBAL_ENEMY_DATA[cellid].bitmapstring)) {
return(GLOBAL_ENEMY_DATA[cellid].bitmap);
}
}
// unexpected jump
}
return(GLOBAL_ENEMY_DATA[cellid].bitmap);
}
var _local2 = getEnemyURLIndex(cellid);
if (GLOBAL_LOADEEMS_ICONS[_local2] != undefined) {
trace("Premade icon for: " + cellid);
GLOBAL_ENEMY_DATA[cellid] = new Object();
GLOBAL_ENEMY_DATA[cellid].bitmapstring = GLOBAL_LOADEEMS_ICONS[_local2];
if (enemyLoadIconString(cellid, GLOBAL_ENEMY_DATA[cellid].bitmapstring)) {
return(GLOBAL_ENEMY_DATA[cellid].bitmap);
}
}
return(undefined);
}
function enemySetIconString(cellid, x64lzssstring) {
if (GLOBAL_ENEMY_DATA[cellid] != undefined) {
GLOBAL_ENEMY_DATA[cellid].bitmapstring = x64lzssstring;
return(true);
}
return(false);
}
function enemyLoadIconString(cellid, x64lzssstring) {
if (GLOBAL_ENEMY_DATA[cellid] != undefined) {
var _local14 = function (A, i) {
var _local1 = A[i];
return(_local1);
};
var _local15 = function (A, i) {
return((((A[i] << 24) | (A[i + 1] << 16)) | (A[i + 2] << 8)) | A[i + 3]);
};
var _local20 = TexDa.arrayFromA64(x64lzssstring);
var _local10 = TexDa.lzssDecompress(_local20);
var _local12 = new Array();
_local12.push(_local14(_local10, 0));
_local12.push(_local14(_local10, 1));
var _local5 = 2;
while (_local5 < _local10.length) {
_local12.push(_local14(_local10, _local5));
_local12.push(_local15(_local10, _local5 + 1));
_local5 = _local5 + 5;
}
var _local11 = _local12;
var _local4 = 0;
var _local16 = _local11.length;
var _local8 = _local11[_local4];
_local4++;
var _local18 = _local11[_local4];
_local4++;
enemySetIconBitmap(cellid, undefined, new flash.geom.Rectangle(0, 0, _local8, _local18));
var _local13 = GLOBAL_ENEMY_DATA[cellid].bitmap;
var _local3 = 0;
while (_local4 < _local16) {
var _local9 = _local11[_local4];
_local4++;
var _local2 = _local11[_local4];
_local4++;
var _local1 = 0;
while (_local1 < _local9) {
var _local7 = _local3 % _local8;
var _local6 = Math.floor(_local3 / _local8);
if ((_local2 & 16777216) != 0) {
_local2 = _local2 | -16777216;
}
_local13.setPixel32(_local7 + 0, _local6 + 0, _local2);
_local3++;
_local1++;
}
}
GLOBAL_ENEMY_DATA[cellid].bitmapstring = x64lzssstring;
return(true);
}
return(false);
}
function enemySaveIconString(cellid) {
if (GLOBAL_ENEMY_DATA[cellid] != undefined) {
if (GLOBAL_ENEMY_DATA[cellid].bitmap != undefined) {
var _local10 = GLOBAL_ENEMY_DATA[cellid].bitmap;
var _local18 = new flash.geom.Rectangle(0, 0, _local10.width, _local10.height);
var _local3 = new Array();
var _local20 = Math.floor(_local18.width);
var _local19 = Math.floor(_local18.height);
var _local11 = Math.floor(_local18.x);
var _local14 = Math.floor(_local18.y);
var _local12 = _local11 + _local20;
var _local16 = _local14 + _local19;
var _local5 = 0;
var _local1 = 0;
_local3.push(_local20);
_local3.push(_local19);
var _local8 = _local14;
while (_local8 < _local16) {
var _local4 = _local11;
while (_local4 < _local12) {
var _local2 = _local10.getPixel32(_local4, _local8);
if ((_local2 >> 24) & true) {
_local2 = _local2 & 16777215;
_local2 = _local2 | 16777216;
} else {
_local2 = 0;
}
if (_local2 != _local5) {
if (_local1 > 0) {
_local3.push(_local1);
_local3.push(_local5);
}
_local1 = 0;
}
_local1++;
if (_local1 > 255) {
_local3.push(_local1);
_local3.push(_local5);
_local1 = 0;
_local1++;
}
_local5 = _local2;
_local4++;
}
_local8++;
}
if (_local1 > 0) {
if (_local5 != undefined) {
_local3.push(_local1);
_local3.push(_local5);
}
}
var _local13 = function (v) {
return(Math.floor(v) & 255);
};
var _local15 = function (v) {
v = Math.floor(v);
var _local1 = new Array();
_local1.push((v >> 24) & 255);
_local1.push((v >> 16) & 255);
_local1.push((v >> 8) & 255);
_local1.push(v & 255);
return(_local1);
};
var _local9 = new Array();
_local9.push(_local13(_local3[0]));
_local9.push(_local13(_local3[1]));
var _local7 = 2;
while (_local7 < _local3.length) {
_local9.push(_local13(_local3[_local7]));
var _local6 = _local15(_local3[_local7 + 1]);
_local9.push(_local6[0]);
_local9.push(_local6[1]);
_local9.push(_local6[2]);
_local9.push(_local6[3]);
_local7 = _local7 + 2;
}
var _local21 = TexDa.lzssCompress(_local9);
var _local23 = TexDa.arrayToA64(_local21);
return(_local23);
}
}
return("");
}
function _traceFx(msg) {
trace((((("#GT [" + GLOBAL_ENEMY_FRAMES_RUN) + "](") + getEnemyT(GLOBAL_ENEMY)._currentframe) + ")\t") + msg);
}
function enableFullTrace(newlevel) {
GLOBAL_FULL_TRACE = 0;
_traceF0 = function (msg) {
_traceFx(msg);
};
_traceF1 = function (msg) {
};
_traceF2 = function (msg) {
};
_traceF3 = function (msg) {
};
if (newlevel > 0) {
_traceF1 = function (msg) {
_traceFx(msg);
};
GLOBAL_FULL_TRACE = 1;
if (newlevel > 1) {
_traceF2 = function (msg) {
_traceFx(msg);
};
GLOBAL_FULL_TRACE = 2;
if (newlevel > 2) {
_traceF3 = function (msg) {
_traceFx(msg);
};
GLOBAL_FULL_TRACE = 3;
}
}
}
}
function disableFullTrace() {
GLOBAL_FULL_TRACE = 0;
}
function Log(s) {
LogScrollOffset = 0;
GLOBAL_LOG.unshift(s + newline);
if (GLOBAL_LOG.length > 4096) {
GLOBAL_LOG.pop();
}
}
function parseString(s) {
var _local5 = "";
var _local2 = 0;
var _local8 = s.length;
while (_local2 < _local8) {
if (s.charCodeAt(_local2) == 37) {
if ((_local2 + 1) < _local8) {
if (s.charCodeAt(_local2 + 1) == 91) {
var _local7 = _local2 + 2;
var _local6 = _local7;
var _local3 = _local2 + 1;
while (_local3 < _local8) {
if (s.charCodeAt(_local3) == 93) {
_local6 = _local3;
break;
}
_local3++;
}
var _local1 = s.substr(_local7, _local6 - _local7);
if (GLOBAL_VALUES.hasOwnProperty(_local1)) {
_local5 = _local5 + GLOBAL_VALUES[_local1];
} else {
_local1 = _local1.toLowerCase();
hasmsg = _local1;
if (_local1 == "enemyname") {
hasmsg = GLOBAL_ENEMY.m_name;
} else if (_local1 == "playername") {
hasmsg = GLOBAL_PLAYER.m_name;
} else if (_local1 == "enemydescr") {
hasmsg = GLOBAL_ENEMY.m_status;
} else if (_local1 == "playerdescr") {
hasmsg = "";
} else if (_local1 == "enemyhp") {
hasmsg = GLOBAL_ENEMY.hp;
} else if (_local1 == "playerhp") {
hasmsg = GLOBAL_PLAYER.hp;
} else if (getValue(_local1, undefined) != undefined) {
hasmsg = getValue(_local1);
}
_local5 = _local5 + hasmsg;
}
_local2 = _local6 + 1;
} else {
_local5 = _local5 + s.charAt(_local2);
_local5 = _local5 + s.charAt(_local2 + 1);
_local2 = _local2 + 2;
}
} else {
_local5 = _local5 + s.charAt(_local2);
_local2++;
}
} else {
_local5 = _local5 + s.charAt(_local2);
_local2++;
}
}
return(_local5);
}
function LogParsed(s) {
Log(parseString(s));
}
function chatMessage(msg, flags) {
_parent.camControl.chatbubble.addMessage(parseString(msg), flags);
}
function chatClear() {
_parent.camControl.chatbubble.clearMessage();
}
function chatTarget(mclip) {
_parent.camControl.chatbubble.setTarget(mclip);
}
function chatType(framename) {
if (framename != undefined) {
_parent.camControl.chatbubble.bubbletype.gotoAndStop(framename);
_parent.camControl.chatbubble.bubbletail.gotoAndStop(framename);
}
return(_parent.camControl.chatbubble.bubbletype);
}
function numclamp(v) {
if (v < 0) {
v = 0;
} else {
v = Math.ceil(v);
}
return(v);
}
function addcharactervariables(targ) {
targ.hp = 63;
targ.in_movex = 0;
targ.in_movey = 0;
targ.in_action = 0;
targ.hatk = 32;
targ.matk = 32;
targ.latk = 32;
targ.hdef = 0;
targ.mdef = 0;
targ.ldef = 0;
targ.hdefon = 0;
targ.mdefon = 0;
targ.ldefon = 0;
targ.s_atktype = 0;
targ.s_animbusy = 0;
targ.s_idle = 1;
targ.s_moving = 0;
targ.s_attacking = 0;
targ.s_hit = 0;
targ.s_vx = 0;
targ.s_movespeed = 1;
targ.m_name = "NULL";
targ.m_status = "NULL";
targ._y = GLOBAL_FLOOR;
targ.s_vy = 0;
}
function pauseall() {
GLOBAL_PAUSE = true;
GLOBAL_PLAYER.stop();
GLOBAL_PLAYER.aniclip.mc.stop();
GLOBAL_PLAYER.aniclip.mc.mc.stop();
getEnemyT(GLOBAL_ENEMY).stop();
_parent.playershad.t.stop();
_parent.playershad.t.head.stop();
_parent.playershad.t.aniclip.stop();
_parent.playershad.t.aniclip.mc.stop();
_parent.enemyshad.t.stop();
_parent.enemyshad.t.enemy.stop();
GLOBAL_ENEMYSPARK.stop();
GLOBAL_PLAYERSPARK.stop();
}
function unpauseall() {
GLOBAL_PAUSE = false;
if ((GLOBAL_QTE_DATA.qliveevent <= 0) && (!GLOBAL_QTE_DATA.active)) {
GLOBAL_PLAYER.play(GLOBAL_PLAYER._currentframe);
if (GLOBAL_PLAYER.aniclip.mc.mc != undefined) {
GLOBAL_PLAYER.aniclip.mc.mc.play();
} else {
GLOBAL_PLAYER.aniclip.mc.play();
}
getEnemyT(GLOBAL_ENEMY).play(GLOBAL_ENEMY._currentframe);
GLOBAL_ENEMYSPARK.play(GLOBAL_ENEMYSPARK._currentframe);
GLOBAL_PLAYERSPARK.stop(GLOBAL_PLAYERSPARK._currentframe);
}
}
function moveCharacterGravity(sourcedata, char) {
char.s_vy = char.s_vy + GLOBAL_GRAVITY;
var _local1 = char.s_vy;
sourcedata._y = sourcedata._y + _local1;
if (sourcedata._y >= GLOBAL_FLOOR) {
_local1 = GLOBAL_FLOOR - (sourcedata._y - _local1);
sourcedata._y = GLOBAL_FLOOR;
char.s_vy = 0;
}
return(_local1);
}
function movecharacter(obje, objdataclip, options) {
var _local5 = Math.abs(obje._xscale);
var _local2 = "null";
if (!isPlayerConsumed(objdataclip)) {
if ((objdataclip.s_idle || (objdataclip.s_moving != 0)) && (((!objdataclip.s_attacking) && (!objdataclip.s_hit)) && (!objdataclip.s_animbusy))) {
if (objdataclip.in_action) {
obje.hdefon = 0;
obje.mdefon = 0;
obje.ldefon = 0;
if ((objdataclip.attackmode == undefined) || (objdataclip.attackmode == 0)) {
if (objdataclip.in_movex > 0) {
if (obje.m_dontfacetarget != 1) {
obje._xscale = _local5;
}
_local2 = "atkm";
} else if (objdataclip.in_movex < 0) {
if (obje.m_dontfacetarget != 1) {
obje._xscale = -_local5;
}
_local2 = "atkm";
}
if (objdataclip.in_movey > 0) {
_local2 = "atkh";
} else if (objdataclip.in_movey < 0) {
_local2 = "atkl";
}
} else if (objdataclip.attackmode == 1) {
if (objdataclip.in_movex > 0) {
if (obje.m_dontfacetarget != 1) {
obje._xscale = _local5;
}
_local2 = "atkp";
} else if (objdataclip.in_movex < 0) {
if (obje.m_dontfacetarget != 1) {
obje._xscale = -_local5;
}
_local2 = "atkp";
}
if (objdataclip.in_movey > 0) {
_local2 = "atkp";
} else if (objdataclip.in_movey < 0) {
_local2 = "atkp";
}
}
} else if (objdataclip.s_running == 1) {
_local2 = "idle";
if (objdataclip.in_movex > 0) {
obje.hdefon = 0;
obje.mdefon = 0;
obje.ldefon = 0;
if (obje.m_dontfacetarget != 1) {
obje._xscale = _local5;
}
_local2 = "run";
} else if (objdataclip.in_movex < 0) {
obje.hdefon = 0;
obje.mdefon = 0;
obje.ldefon = 0;
if (obje.m_dontfacetarget != 1) {
obje._xscale = -_local5;
}
_local2 = "run";
} else {
objdataclip.s_running = 0;
_local2 = "idle";
}
} else if (objdataclip.in_movex > 0) {
obje.hdefon = 0;
obje.mdefon = 0;
obje.ldefon = 0;
if (obje.m_dontfacetarget != 1) {
obje._xscale = _local5;
}
if (objdataclip.s_moving == 0) {
_local2 = "walk";
}
} else if (objdataclip.in_movex < 0) {
obje.hdefon = 0;
obje.mdefon = 0;
obje.ldefon = 0;
if (obje.m_dontfacetarget != 1) {
obje._xscale = -_local5;
}
if (objdataclip.s_moving == 0) {
_local2 = "walk";
}
} else if (objdataclip.in_movex == 0) {
obje.hdefon = 0;
obje.mdefon = 0;
obje.ldefon = 0;
if (objdataclip.in_movey > 0) {
obje.hdefon = 1;
} else if (objdataclip.in_movey < 0) {
obje.ldefon = 1;
} else if (objdataclip.in_movey == 0) {
obje.mdefon = 1;
}
}
if (objdataclip.in_movex == 0) {
if ((((objdataclip.s_moving != 0) && (!objdataclip.s_attacking)) && (!objdataclip.s_hit)) && (!objdataclip.s_animbusy)) {
_local2 = "idle";
}
}
} else if (objdataclip.s_moving != 0) {
}
}
if (GLOBAL_PLAYER == objdataclip) {
var _local4 = new Object();
_local4.atkh = new Array("atkh", "atkh2", "atkh3");
if (GLOBAL_PLAYER.combocount == undefined) {
GLOBAL_PLAYER.combocount = 0;
}
foundone = false;
for (var _local6 in _local4) {
if (_local2 == _local6) {
trace((((_local6 + " ") + _local2) + " ") + GLOBAL_PLAYER.combocount);
_local2 = _local4[_local6][GLOBAL_PLAYER.combocount];
GLOBAL_PLAYER.combocount = (GLOBAL_PLAYER.combocount + 1) % _local4[_local6].length;
foundone = true;
break;
}
}
if ((!foundone) && (_local2 != "null")) {
GLOBAL_PLAYER.combocount = 0;
}
}
objdataclip.def_h._visible = false;
objdataclip.def_m._visible = false;
objdataclip.def_l._visible = false;
if (obje.hdefon != 0) {
objdataclip.def_h._visible = true;
}
if (obje.mdefon != 0) {
objdataclip.def_m._visible = true;
}
if (obje.ldefon != 0) {
objdataclip.def_l._visible = true;
}
if (_local2 == "null") {
if (((((objdataclip.s_idle == 0) && (objdataclip.s_moving == 0)) && (objdataclip.s_attacking == 0)) && (objdataclip.s_hit == 1)) && (objdataclip.s_animbusy == 1)) {
_local2 = objdataclip.__animcurrent;
}
}
if (_local2 != "null") {
if (_local2 == "walk") {
if (objdataclip.replaceAnimWalk != undefined) {
_local2 = objdataclip.replaceAnimWalk;
} else {
_local2 = "walk";
}
}
if ((options != undefined) and (options == 2)) {
objdataclip.__animcurrent = _local2;
objdataclip.gotoAndStop(_local2);
} else if (objdataclip.__animcurrent != _local2) {
goPlay(objdataclip, _local2);
}
}
}
function moveplayer() {
GLOBAL_PLAYER.attackmode = GLOBAL_PLAYER_MODE;
if (GLOBAL_PLAYER_BLOCKATTACKS) {
GLOBAL_PLAYER.attackmode = "Incorrect";
}
movecharacter(GLOBAL_PLAYER, GLOBAL_PLAYER, 2);
var _local5 = 0;
if (!isPlayerConsumed(GLOBAL_PLAYER)) {
if ((((GLOBAL_PLAYER.s_idle == 0) && (GLOBAL_PLAYER.s_moving != 0)) && (GLOBAL_PLAYER.s_vx == 0)) && (!GLOBAL_PLAYER.s_animbusy)) {
_local5 = _local5 + ((GLOBAL_PLAYER._xscale / Math.abs(GLOBAL_PLAYER._xscale)) * GLOBAL_PLAYER.s_moving);
}
}
if ((GLOBAL_PLAYER.s_vx != 0) && (!GLOBAL_PLAYER.s_animbusy)) {
if (GLOBAL_PLAYER._x > GLOBAL_ENEMY._x) {
_local5 = _local5 + GLOBAL_PLAYER.s_vx;
} else {
_local5 = _local5 - GLOBAL_PLAYER.s_vx;
}
}
GLOBAL_PLAYER._x = GLOBAL_PLAYER._x + (GLOBAL_PLAYER_MOVESCALE * _local5);
moveCharacterGravity(GLOBAL_PLAYER, GLOBAL_PLAYER);
if (GLOBAL_ENEMY.m_notsolid != 1) {
var _local7 = getCBox(GLOBAL_ENEMY.enemy);
var _local6 = getCBox(GLOBAL_PLAYER);
if (((_local6 != undefined) && (_local7 != undefined)) && (_local6.hitTest(_local7))) {
var _local3 = _local7.getBounds(_root);
var _local4 = _local6.getBounds(_root);
if (((_local3.xMin + _local3.xMax) / 2) > ((_local4.xMin + _local4.xMax) / 2)) {
GLOBAL_PLAYER._x = GLOBAL_PLAYER._x + (_local3.xMin - _local4.xMax);
} else {
GLOBAL_PLAYER._x = GLOBAL_PLAYER._x + (_local3.xMax - _local4.xMin);
}
}
}
if (GLOBAL_USE_DARKROLLS) {
var _local6 = getRollBox(GLOBAL_PLAYER);
if (_local6 != undefined) {
var _local7 = getCBox(GLOBAL_ENEMY.enemy);
if (((_local6 != undefined) && (_local7 != undefined)) && (_local6.hitTest(_local7))) {
var _local3 = _local7.getBounds(_root);
var _local4 = _local6.getBounds(_root);
var _local2 = 0;
if (((_local3.xMin + _local3.xMax) / 2) > ((_local4.xMin + _local4.xMax) / 2)) {
_local2 = _local3.xMin - _local4.xMax;
} else {
_local2 = _local3.xMax - _local4.xMin;
}
if (GLOBAL_ENEMY.m_rolloption == 1) {
GLOBAL_PLAYER._x = GLOBAL_PLAYER._x + (GLOBAL_PLAYER_MOVESCALE * _local2);
} else if (GLOBAL_ENEMY.m_rolloption == 2) {
GLOBAL_PLAYER._x = GLOBAL_PLAYER._x + (GLOBAL_PLAYER_MOVESCALE * _local2);
if (_local2 > 0) {
actMove(GLOBAL_PLAYER, 4);
} else {
actMove(GLOBAL_PLAYER, -4);
}
GLOBAL_PLAYER.s_hit = 1;
goPlay(GLOBAL_PLAYER, "hith");
Log(((GLOBAL_PLAYER.m_name + " crashed into ") + GLOBAL_ENEMY.m_name) + "!");
}
}
}
}
}
function moveenemyCollisionOption(ENMC) {
if (ENMC.m_notsolid != 1) {
if (getCBox(ENMC.enemy).hitTest(getCBox(GLOBAL_PLAYER))) {
var _local2 = getCBox(ENMC.enemy).getBounds(_root);
var _local3 = getCBox(GLOBAL_PLAYER).getBounds(_root);
if (((_local2.xMin + _local2.xMax) / 2) < ((_local3.xMin + _local3.xMax) / 2)) {
ENMC._x = ENMC._x + (_local3.xMin - _local2.xMax);
} else {
ENMC._x = ENMC._x + (_local3.xMax - _local2.xMin);
}
}
}
}
function moveenemy(ENMC) {
if (GLOBAL_ENEMY_USE_GRAVITY) {
moveCharacterGravity(ENMC, getEnemyT(ENMC));
}
if (getEnemyT(ENMC)._run != undefined) {
return(getEnemyT(ENMC)._run(this, ENMC));
}
if (getEnemyT(ENMC) != undefined) {
movecharacter(ENMC, getEnemyT(ENMC), undefined);
} else {
movecharacter(ENMC, ENMC, undefined);
}
if (ENMC.m_dontfacetarget != 1) {
enemyFacePlayer();
}
if (((getEnemyT(ENMC).s_idle == 0) && (getEnemyT(ENMC).s_moving != 0)) && (!getEnemyT(ENMC).s_animbusy)) {
ENMC._x = ENMC._x + (((ENMC._xscale / Math.abs(ENMC._xscale)) * getEnemyT(ENMC).s_moving) * ENMC.s_movespeed);
}
if ((getEnemyT(ENMC).s_vx != 0) && (!getEnemyT(ENMC).s_animbusy)) {
if (GLOBAL_PLAYER._x > ENMC._x) {
ENMC._x = ENMC._x - getEnemyT(ENMC).s_vx;
} else {
ENMC._x = ENMC._x + getEnemyT(ENMC).s_vx;
}
} else if (((getEnemyT(ENMC).s_moving != 0) && (getEnemyT(ENMC).s_vx != 0)) && (getEnemyT(ENMC).s_animbusy)) {
if (GLOBAL_PLAYER._x > ENMC._x) {
ENMC._x = ENMC._x - getEnemyT(ENMC).s_vx;
} else {
ENMC._x = ENMC._x + getEnemyT(ENMC).s_vx;
}
}
moveenemyCollisionOption(ENMC);
}
function setClipAt(mc, clip) {
var _local2 = clip.getBounds(_root);
mc._x = (_local2.xMax + _local2.xMin) * 0.5;
mc._y = (_local2.xMax + _local2.xMin) * 0.5;
}
function setClipAtExact(mc, clip) {
var _local2 = mcPointToGlobal(clip, 0, 0);
var _local6 = mcPointToGlobal(clip, 1, 0);
var _local4 = _local6._x - _local2._x;
var _local3 = _local6._y - _local2._y;
var _local5 = Math.sqrt((_local4 * _local4) + (_local3 * _local3));
var _local7 = 57.2957795130823 * Math.atan2(_local3 / _local5, _local4 / _local5);
mc._x = _local2._x;
mc._y = _local2._y;
mc._rotation = _local7;
mc._xscale = (100 * _local5) / 1;
mc._yscale = mc._xscale;
}
function _resetSparkSim(clip) {
clip.xvel = 0;
clip.yvel = 0;
clip.rotvel = 0;
clip.xacc = 0;
clip.yacc = 0;
clip.rotacc = 0;
clip.shrinkto = 0;
clip.shrinktime = 0;
clip.shrinktimemax = 0;
}
function _updateSparkSim(mc, steps) {
if (mc.xacc != 0) {
mc.xvel = mc.xvel + (steps * mc.xacc);
}
if (mc.yacc != 0) {
mc.yvel = mc.yvel + (steps * mc.yacc);
}
if (mc.rotacc != 0) {
mc.rotvel = mc.rotvel + (steps * mc.rotacc);
}
if (mc.xvel != 0) {
mc._x = mc._x + (steps * mc.xvel);
}
if (mc.yvel != 0) {
mc._y = mc._y + (steps * mc.yvel);
}
if (mc.rotvel != 0) {
mc._rotation = mc._rotation + (steps * mc.rotvel);
}
if (mc.shrinktimemax > 0) {
if (mc.shrinktime == mc.shrinktimemax) {
mc._originalscalex = mc._xscale;
mc._originalscaley = mc._yscale;
}
mc.shrinktime = mc.shrinktime - steps;
if (mc.shrinktime < 0) {
mc.shrinktime = 0;
}
var _local3 = (1 - mc.shrinkto) * ((1 * mc.shrinktime) / (1 * mc.shrinktimemax));
mc._xscale = (mc.shrinkto + _local3) * mc._originalscalex;
mc._yscale = (mc.shrinkto + _local3) * mc._originalscaley;
}
}
function _setClipPhysics(clip, vx, vy, ax, ay, rv, ra, shrinkin, shrinkamount) {
if (vx != undefined) {
clip.xvel = vx;
} else {
clip.xvel = 0;
}
if (vy != undefined) {
clip.yvel = vy;
} else {
clip.yvel = 0;
}
if (ax != undefined) {
clip.xacc = ax;
} else {
clip.xacc = 0;
}
if (ay != undefined) {
clip.yacc = ay;
} else {
clip.yacc = 0;
}
if (rv != undefined) {
clip.rotvel = rv;
} else {
clip.rotvel = 0;
}
if (ra != undefined) {
clip.rotacc = ra;
} else {
clip.rotacc = 0;
}
if (shrinkin != undefined) {
clip.shrinkto = 0;
clip.shrinktime = shrinkin;
clip.shrinktimemax = shrinkin;
if (shrinkamount != undefined) {
clip.shrinkto = shrinkamount / 100;
}
} else {
clip.shrinktimemax = 0;
clip.shrinkto = 0;
clip.shrinktime = 0;
}
}
function _parseClipPhysicsAndSet(clip, lex) {
var _local5;
var _local4;
var _local10;
var _local9;
var _local7;
var _local11;
var _local8;
var _local6;
var _local2 = lex.split(",");
var _local3 = _local2.length;
var _local1 = 0;
while (_local1 < _local3) {
if (_local2[_local1] == "MoveUp") {
_local1++;
if (_local1 < _local3) {
_local4 = -Number(_local2[_local1]);
}
} else if (_local2[_local1] == "MoveRight") {
_local1++;
if (_local1 < _local3) {
_local5 = Number(_local2[_local1]);
}
} else if (_local2[_local1] == "MoveLeft") {
_local1++;
if (_local1 < _local3) {
_local5 = -Number(_local2[_local1]);
}
} else if (_local2[_local1] == "MoveDown") {
_local1++;
if (_local1 < _local3) {
_local4 = Number(_local2[_local1]);
}
} else if (_local2[_local1] == "Spin") {
_local1++;
if (_local1 < _local3) {
_local7 = Number(_local2[_local1]);
}
} else if (_local2[_local1] == "Shrink") {
_local1++;
if (_local1 < _local3) {
_local8 = 60;
_local6 = Number(_local2[_local1]);
}
}
_local1++;
}
_setClipPhysics(clip, _local5, _local4, _local10, _local9, _local7, _local11, _local8, _local6);
}
function setEnemySparkPhysics(lex) {
_parseClipPhysicsAndSet(GLOBAL_ENEMYSPARK, lex);
}
function setPlayerSparkPhysics(lex) {
_parseClipPhysicsAndSet(GLOBAL_PLAYERSPARK, lex);
}
function setEnemySparkAnim(anim) {
if (anim != undefined) {
GLOBAL_PLAYERSPARK.gotoAndPlay(anim);
}
}
function setBackgroundData(thing, yoffset) {
GLOBAL_CURRENT_BACKGROUND = thing;
GLOBAL_ENEMY.m_background = thing;
GLOBAL_CURRENT_BACKGROUND_YOFF = yoffset;
}
function setPlayerSparkAt(clip, anim, offsetx, offsety) {
setClipAt(GLOBAL_PLAYERSPARK, clip);
_resetSparkSim(GLOBAL_PLAYERSPARK);
if (GLOBAL_PLAYER._xscale < 0) {
GLOBAL_PLAYERSPARK._xscale = -100;
} else {
GLOBAL_PLAYERSPARK._xscale = 100;
}
if (offsetx != undefined) {
if (GLOBAL_PLAYERSPARK._xscale > 0) {
GLOBAL_PLAYERSPARK._x = GLOBAL_PLAYERSPARK._x + offsetx;
} else {
GLOBAL_PLAYERSPARK._x = GLOBAL_PLAYERSPARK._x - offsetx;
}
}
if (offsety != undefined) {
GLOBAL_PLAYERSPARK._y = GLOBAL_PLAYERSPARK._y + offsety;
}
if (anim != undefined) {
GLOBAL_PLAYERSPARK.gotoAndPlay(anim);
}
}
function setEnemySparkAt(clip, anim, offsetx, offsety) {
setClipAt(GLOBAL_ENEMYSPARK, clip);
_resetSparkSim(GLOBAL_ENEMYSPARK);
if (GLOBAL_ENEMY._xscale < 0) {
GLOBAL_ENEMYSPARK._xscale = -100;
} else {
GLOBAL_ENEMYSPARK._xscale = 100;
}
if (offsetx != undefined) {
if (GLOBAL_ENEMYSPARK._xscale > 0) {
GLOBAL_ENEMYSPARK._x = GLOBAL_ENEMYSPARK._x + offsetx;
} else {
GLOBAL_ENEMYSPARK._x = GLOBAL_ENEMYSPARK._x - offsetx;
}
}
if (offsety != undefined) {
GLOBAL_ENEMYSPARK._y = GLOBAL_ENEMYSPARK._y + offsety;
}
if (anim != undefined) {
GLOBAL_ENEMYSPARK.gotoAndPlay(anim);
}
}
function setPlayerScale(val) {
GLOBAL_PLAYER._xscale = val * (GLOBAL_PLAYER._xscale / Math.abs(GLOBAL_PLAYER._xscale));
GLOBAL_PLAYER._yscale = val * (GLOBAL_PLAYER._yscale / Math.abs(GLOBAL_PLAYER._yscale));
}
function getPlayerScale() {
return(Math.abs(GLOBAL_PLAYER._xscale));
}
function setEnemySparkOnScreen(anim, screenfloatx, screenfloaty, screenscale) {
_resetSparkSim(GLOBAL_ENEMYSPARK);
GLOBAL_ENEMYSPARK._x = _parent.camControl._x;
GLOBAL_ENEMYSPARK._y = _parent.camControl._y;
var _local3 = 0;
if (screenfloatx != undefined) {
_local3 = (screenfloatx * _parent.camControl.fixX) * (_parent.camControl._xscale / 200);
}
var _local2 = 0;
if (screenfloaty != undefined) {
_local2 = ((-screenfloaty) * _parent.camControl.fixY) * (_parent.camControl._yscale / 200);
}
GLOBAL_ENEMYSPARK._x = GLOBAL_ENEMYSPARK._x + _local3;
GLOBAL_ENEMYSPARK._y = GLOBAL_ENEMYSPARK._y + _local2;
if (screenscale != undefined) {
GLOBAL_ENEMYSPARK._xscale = screenscale * Math.abs(_parent.camControl._xscale / 100);
GLOBAL_ENEMYSPARK._yscale = screenscale * Math.abs(_parent.camControl._yscale / 100);
}
if (anim != undefined) {
GLOBAL_ENEMYSPARK.gotoAndPlay(anim);
}
}
function setEnemySparkAtExact(clip, anim, param) {
_resetSparkSim(GLOBAL_ENEMYSPARK);
setClipAtExact(GLOBAL_ENEMYSPARK, clip);
if (param != undefined) {
for (var _local2 in param) {
GLOBAL_ENEMYSPARK[_local2] = param[_local2];
}
}
if (anim != undefined) {
GLOBAL_ENEMYSPARK.gotoAndPlay(anim);
}
}
function unscaleEnemySpark(arg1) {
if (arg1 != undefined) {
GLOBAL_ENEMYSPARK._xscale = arg1;
GLOBAL_ENEMYSPARK._yscale = arg1;
} else {
GLOBAL_ENEMYSPARK._xscale = 100;
GLOBAL_ENEMYSPARK._yscale = 100;
}
}
function getEnemySpark() {
return(GLOBAL_ENEMYSPARK);
}
function damagecollisions() {
var _local2 = null;
var _local1 = null;
var _local4 = getABox(GLOBAL_PLAYER);
var _local6 = getCBox(GLOBAL_PLAYER);
var _local3 = getABox(GLOBAL_ENEMY.enemy);
var _local5 = getCBox(GLOBAL_ENEMY.enemy);
if (getEnemyT(GLOBAL_ENEMY).s_attacking) {
if (((_local3 != undefined) && (_local6 != undefined)) && (_local3.hitTest(_local6))) {
if (getEnemyT(GLOBAL_ENEMY).s_atktype < 1) {
var _local7 = GLOBAL_ENEMY.latk - GLOBAL_PLAYER.ldef;
if (GLOBAL_PLAYER.ldefon != 0) {
_local7 = _local7 / 2;
}
_local7 = numclamp(_local7);
setEnemySparkAt(getABox(GLOBAL_ENEMY.enemy));
if (GLOBAL_PLAYER.ldefon != 0) {
GLOBAL_ENEMYSPARK.gotoAndPlay("cutblock");
} else {
GLOBAL_ENEMYSPARK.gotoAndPlay("cutlow");
}
GLOBAL_PLAYER.hp = GLOBAL_PLAYER.hp - _local7;
_local2 = "hitl";
_local2 = enemyCallSetPlayerHitCallbackName("hitl", _local7, _local2);
GLOBAL_PLAYER.s_hit = 1;
getEnemyT(GLOBAL_ENEMY).s_attacking = 0;
Log(((((GLOBAL_ENEMY.m_name + " hit ") + GLOBAL_PLAYER.m_name) + " for ") + _local7) + "!");
} else if (getEnemyT(GLOBAL_ENEMY).s_atktype == 1) {
var _local7 = GLOBAL_ENEMY.matk - GLOBAL_PLAYER.mdef;
if (GLOBAL_PLAYER.mdefon != 0) {
_local7 = _local7 / 2;
}
_local7 = numclamp(_local7);
setEnemySparkAt(getABox(GLOBAL_ENEMY.enemy));
if (GLOBAL_PLAYER.mdefon != 0) {
GLOBAL_ENEMYSPARK.gotoAndPlay("cutblock");
} else {
GLOBAL_ENEMYSPARK.gotoAndPlay("cutmid");
}
GLOBAL_PLAYER.hp = GLOBAL_PLAYER.hp - _local7;
_local2 = "hitm";
_local2 = enemyCallSetPlayerHitCallbackName("hitm", _local7, _local2);
GLOBAL_PLAYER.s_hit = 1;
getEnemyT(GLOBAL_ENEMY).s_attacking = 0;
Log(((((GLOBAL_ENEMY.m_name + " hit ") + GLOBAL_PLAYER.m_name) + " for ") + _local7) + "!");
} else if (getEnemyT(GLOBAL_ENEMY).s_atktype == 2) {
var _local7 = GLOBAL_ENEMY.hatk - GLOBAL_PLAYER.hdef;
if (GLOBAL_PLAYER.hdefon != 0) {
_local7 = _local7 / 2;
}
_local7 = numclamp(_local7);
setEnemySparkAt(getABox(GLOBAL_ENEMY.enemy));
if (GLOBAL_PLAYER.hdefon != 0) {
GLOBAL_ENEMYSPARK.gotoAndPlay("cutblock");
} else {
GLOBAL_ENEMYSPARK.gotoAndPlay("cuthigh");
}
GLOBAL_PLAYER.hp = GLOBAL_PLAYER.hp - _local7;
_local2 = "hith";
_local2 = enemyCallSetPlayerHitCallbackName("hith", _local7, _local2);
GLOBAL_PLAYER.s_hit = 1;
getEnemyT(GLOBAL_ENEMY).s_attacking = 0;
Log(((((GLOBAL_ENEMY.m_name + " hit ") + GLOBAL_PLAYER.m_name) + " for ") + _local7) + "!");
}
numclamp(GLOBAL_PLAYER.hp);
}
}
if (GLOBAL_PLAYER.s_attacking and (GLOBAL_ENEMY.hp >= 1)) {
if (((_local5 != undefined) && (_local4 != undefined)) && (_local4.hitTest(_local5))) {
if (GLOBAL_PLAYER.s_atktype < 1) {
var _local7 = GLOBAL_PLAYER.latk - GLOBAL_ENEMY.ldef;
if (GLOBAL_ENEMY.ldefon != 0) {
_local7 = _local7 / 2;
}
_local7 = numclamp(_local7);
setPlayerSparkAt(getABox(GLOBAL_PLAYER));
if (GLOBAL_ENEMY.ldefon != 0) {
GLOBAL_PLAYERSPARK.gotoAndPlay("hitblock");
} else {
GLOBAL_PLAYERSPARK.gotoAndPlay("hitlow");
}
GLOBAL_ENEMY.hp = GLOBAL_ENEMY.hp - _local7;
if (!GLOBAL_ENEMY.ignore_hitanim) {
if ((_local7 > GLOBAL_ENEMY.ignore_hitweak) && (!GLOBAL_ENEMY.ignore_hitanimonly)) {
_local1 = "hitl";
}
}
_local1 = enemyCallIgnoreHitCallback("l", _local7, _local1);
if ((_local7 > GLOBAL_ENEMY.ignore_hitweak) && (!GLOBAL_ENEMY.ignore_hitanimonly)) {
GLOBAL_ENEMY.s_hit = true;
GLOBAL_ENEMY.ai = -1;
}
GLOBAL_PLAYER.s_attacking = 0;
if ((GLOBAL_SCORE_ON_DAMAGE * _local7) > 0) {
GLOBAL_POINTS = GLOBAL_POINTS + (GLOBAL_SCORE_ON_DAMAGE * _local7);
Log(((((GLOBAL_PLAYER.m_name + " hit ") + GLOBAL_ENEMY.m_name) + " for ") + _local7) + "!");
}
} else if (GLOBAL_PLAYER.s_atktype == 1) {
var _local7 = GLOBAL_PLAYER.matk - GLOBAL_ENEMY.mdef;
if (GLOBAL_ENEMY.lmdefon != 0) {
_local7 = _local7 / 2;
}
_local7 = numclamp(_local7);
setPlayerSparkAt(getABox(GLOBAL_PLAYER));
if (GLOBAL_ENEMY.lmdefon != 0) {
GLOBAL_PLAYERSPARK.gotoAndPlay("hitblock");
} else {
GLOBAL_PLAYERSPARK.gotoAndPlay("hitmid");
}
GLOBAL_ENEMY.hp = GLOBAL_ENEMY.hp - _local7;
if (!GLOBAL_ENEMY.ignore_hitanim) {
if ((_local7 > GLOBAL_ENEMY.ignore_hitweak) && (!GLOBAL_ENEMY.ignore_hitanimonly)) {
_local1 = "hitm";
}
}
_local1 = enemyCallIgnoreHitCallback("m", _local7, _local1);
if ((_local7 > GLOBAL_ENEMY.ignore_hitweak) && (!GLOBAL_ENEMY.ignore_hitanimonly)) {
GLOBAL_ENEMY.s_hit = true;
GLOBAL_ENEMY.ai = -1;
}
GLOBAL_PLAYER.s_attacking = 0;
if ((GLOBAL_SCORE_ON_DAMAGE * _local7) > 0) {
GLOBAL_POINTS = GLOBAL_POINTS + (GLOBAL_SCORE_ON_DAMAGE * _local7);
Log(((((GLOBAL_PLAYER.m_name + " hit ") + GLOBAL_ENEMY.m_name) + " for ") + _local7) + "!");
}
} else if (GLOBAL_PLAYER.s_atktype == 2) {
var _local7 = GLOBAL_PLAYER.hatk - GLOBAL_ENEMY.hdef;
if (GLOBAL_ENEMY.hdefon != 0) {
_local7 = _local7 / 2;
}
_local7 = numclamp(_local7);
setPlayerSparkAt(getABox(GLOBAL_PLAYER));
if (GLOBAL_ENEMY.hdefon != 0) {
GLOBAL_PLAYERSPARK.gotoAndPlay("hitblock");
} else {
GLOBAL_PLAYERSPARK.gotoAndPlay("hithigh");
}
GLOBAL_ENEMY.hp = GLOBAL_ENEMY.hp - _local7;
if (!GLOBAL_ENEMY.ignore_hitanim) {
if ((_local7 > GLOBAL_ENEMY.ignore_hitweak) && (!GLOBAL_ENEMY.ignore_hitanimonly)) {
_local1 = "hith";
}
}
_local1 = enemyCallIgnoreHitCallback("h", _local7, _local1);
if ((_local7 > GLOBAL_ENEMY.ignore_hitweak) && (!GLOBAL_ENEMY.ignore_hitanimonly)) {
GLOBAL_ENEMY.s_hit = true;
GLOBAL_ENEMY.ai = -1;
}
GLOBAL_PLAYER.s_attacking = 0;
if ((GLOBAL_SCORE_ON_DAMAGE * _local7) > 0) {
GLOBAL_POINTS = GLOBAL_POINTS + (GLOBAL_SCORE_ON_DAMAGE * _local7);
Log(((((GLOBAL_PLAYER.m_name + " hit ") + GLOBAL_ENEMY.m_name) + " for ") + _local7) + "!");
}
} else if (GLOBAL_PLAYER.s_atktype == 4) {
var _local7 = 0;
if (GLOBAL_ALLOW_PETS) {
setPlayerSparkAt(getABox(GLOBAL_PLAYER));
GLOBAL_PLAYERSPARK.gotoAndPlay("heart");
_local1 = "hitp";
Log(((GLOBAL_PLAYER.m_name + " pet ") + GLOBAL_ENEMY.m_name) + "!");
} else {
setPlayerSparkAt(getABox(GLOBAL_PLAYER));
GLOBAL_PLAYERSPARK.gotoAndPlay("heart");
}
_local1 = enemyCallIgnoreHitCallback("p", GLOBAL_ALLOW_PETS, _local1);
GLOBAL_PLAYER.s_attacking = 0;
}
numclamp(GLOBAL_ENEMY.hp);
}
}
if (!isPlayerConsumed(GLOBAL_PLAYER)) {
if (_local1 != null) {
goPlay(getEnemyT(GLOBAL_ENEMY), _local1);
}
if (_local2 != null) {
goPlay(GLOBAL_PLAYER, _local2);
actHurt(GLOBAL_PLAYER, 1);
}
}
}
function _pickEnemyReset() {
V = new Object();
GLOBAL_VALUES = V;
GLOBAL_SYNCMAP = new Object();
GLOBAL_POSTSYNC = function (G, Obj, extra) {
};
GLOBAL_PRESYNC = function (G, Obj, extra) {
};
GLOBAL_ENEMY_AI_FUNC = _enemyAIDefault;
GLOBAL_ENEMY_IGNOREHIT_CALLBACK = undefined;
GLOBAL_ENEMY_PLAYERHIT_CALLBACK = undefined;
GLOBAL_ENEMY.m_scale = undefined;
GLOBAL_ENEMY.enemy.m_scale = undefined;
getEnemyT(GLOBAL_ENEMY).m_scale = undefined;
GLOBAL_ALLOW_PETS = 0;
BLOCK_ENEMY_ONE_FRAME = true;
GLOBAL_SHOW_CONSUMED_PLAYER = false;
GLOBAL_SHOW_PLAYER_INSIDEPLUS_ENEMY_ENABLE = false;
GLOBAL_PLAYER_MOVESCALE = 1;
GLOBAL_GRAVITY = GLOBAL_GRAVITY_CONSTANT;
GLOBAL_ENEMY_USE_GRAVITY = true;
}
function pickEnemy(userev) {
GLOBAL_ENEMY_FRAMES_RUN = 0;
GLOBAL_ENEMY_REQUEST_VICTORY = 0;
GLOBAL_ENEMY_REQUEST_VICTORY_NEXT = 0;
GLOBAL_CAMERA_SCALE_FACTOR = 1;
var _local5 = userev;
var _local7 = false;
var _local4;
if ((_local5 < 2) || (_local5 > GLOBAL_MAXENEMYFRAMES)) {
if ((GLOBAL_ENEMY._currentframe + 1) > GLOBAL_MAXENEMYFRAMES) {
_pickEnemyReset();
_local4 = 2;
} else {
_pickEnemyReset();
_local4 = GLOBAL_ENEMY._currentframe + 1;
}
} else if (GLOBAL_ENEMY._currentframe == int(_local5)) {
_local7 = true;
_local4 = int(_local5);
} else {
_pickEnemyReset();
_local4 = int(_local5);
}
if (_local4 != undefined) {
GLOBAL_ENEMY.m_scale = 100;
GLOBAL_ENEMY.maxhp = 1;
GLOBAL_ENEMY.hp = GLOBAL_ENEMY.maxhp;
GLOBAL_ENEMY.enemy.in_movex = 0;
GLOBAL_ENEMY.enemy.in_movey = 0;
GLOBAL_ENEMY.enemy.in_action = 0;
getEnemyT(GLOBAL_ENEMY).in_movex = 0;
getEnemyT(GLOBAL_ENEMY).in_movey = 0;
getEnemyT(GLOBAL_ENEMY).in_action = 0;
GLOBAL_ENEMY.hatk = 0;
GLOBAL_ENEMY.matk = 0;
GLOBAL_ENEMY.latk = 0;
GLOBAL_ENEMY.hdef = 0;
GLOBAL_ENEMY.mdef = 0;
GLOBAL_ENEMY.ldef = 0;
GLOBAL_ENEMY.enemy.s_atktype = 0;
GLOBAL_ENEMY.enemy.s_animbusy = 0;
GLOBAL_ENEMY.enemy.s_idle = 1;
GLOBAL_ENEMY.enemy.s_moving = 0;
GLOBAL_ENEMY.enemy.s_attacking = 0;
GLOBAL_ENEMY.enemy.s_hit = 0;
GLOBAL_ENEMY.enemy.s_vx = 0;
getEnemyT(GLOBAL_ENEMY).s_atktype = 0;
getEnemyT(GLOBAL_ENEMY).s_animbusy = 0;
getEnemyT(GLOBAL_ENEMY).s_idle = 1;
getEnemyT(GLOBAL_ENEMY).s_moving = 0;
getEnemyT(GLOBAL_ENEMY).s_attacking = 0;
getEnemyT(GLOBAL_ENEMY).s_hit = 0;
getEnemyT(GLOBAL_ENEMY).s_vx = 0;
GLOBAL_ENEMY.m_cameraoffset = 0;
GLOBAL_ENEMY.m_animPrefix = undefined;
GLOBAL_ENEMY.m_background = undefined;
GLOBAL_CURRENT_BACKGROUND = "default";
var _local8 = GLOBAL_ENEMY.enemy.music;
if (_local8) {
_local8.wasstarted = undefined;
}
GLOBAL_ENEMY.m_notsolid = undefined;
GLOBAL_ENEMY.m_dontfacetarget = 0;
GLOBAL_ENEMY.m_dontattackauto = undefined;
GLOBAL_ENEMY.m_dontautoidle = undefined;
GLOBAL_ENEMY.m_dontplayhurt = undefined;
GLOBAL_ENEMY.m_dontplayhurtforweakattacks = -1;
GLOBAL_ENEMY.m_rolloption = 1;
GLOBAL_ENEMY._manuallyReset = undefined;
GLOBAL_ENEMY.is_external = undefined;
GLOBAL_ENEMY.is_external_loaded = 0;
GLOBAL_ENEMY.enemy.is_external_loaded = 0;
GLOBAL_ENEMY.enemy.enemy.is_external_loaded = 0;
GLOBAL_ENEMY.m_loadurl = undefined;
GLOBAL_ENEMY_ATKUSE = new Array(0.1, 0.09, 0.71);
GLOBAL_ENEMY.gotoAndStop(_local4);
GLOBAL_ENEMY.enemy.G = this;
GLOBAL_ENEMY.enemy.enemy.G = this;
getEnemyT(GLOBAL_ENEMY).G = this;
GLOBAL_ENEMY.m_blatently_reset = 2;
GLOBAL_ENEMY.m_blatently_resetenemy = _local4;
}
if (_local7) {
GLOBAL_ENEMY._manuallyReset = undefined;
getEnemyT(GLOBAL_ENEMY)._manuallyReset = undefined;
getEnemyT(GLOBAL_ENEMY).gotoAndPlay("idle");
}
if ((!_local7) && (_local4 != undefined)) {
GLOBAL_ENEMY.m_name = "Default";
GLOBAL_ENEMY.m_status = "Default";
GLOBAL_ENEMY.m_credit = "";
if (_local4 > GLOBAL_MAXENEMYNONEXTERNAL) {
GLOBAL_ENEMY.m_loadurl = fixURL(_root.externalURL);
GLOBAL_ENEMY.is_external = fixURL(_root.externalURL);
GLOBAL_ENEMY.m_name = "EXTERNAL";
GLOBAL_ENEMY.m_status = "SxS*NOTLOADED";
var _local6 = (_local4 - GLOBAL_MAXENEMYNONEXTERNAL) - 1;
if (_local6 < GLOBAL_LOADEEMS.length) {
GLOBAL_ENEMY.m_loadurl = fixURL(GLOBAL_LOADEEMS[_local6]);
GLOBAL_ENEMY.is_external = fixURL(GLOBAL_LOADEEMS[_local6]);
GLOBAL_ENEMY.bitmapiconstring = undefined;
if (GLOBAL_LOADEEMS_ICONS[_local6] != undefined) {
GLOBAL_ENEMY.bitmapiconstring = GLOBAL_LOADEEMS_ICONS[_local6];
}
}
BLOCK_ENEMY_ONE_FRAME = true;
}
musicStop();
}
GLOBAL_ENEMY.enemy.G = this;
getEnemyT(GLOBAL_ENEMY).G = this;
GLOBAL_ENEMY.enemy.enemy.G = this;
GLOBAL_ENEMY.ignore_hitweak = -1;
GLOBAL_ENEMY.ignore_hitanim = false;
GLOBAL_ENEMY.ignore_hitanimonly = false;
GLOBAL_ENEMY.hatk_original = GLOBAL_ENEMY.hatk;
GLOBAL_ENEMY.matk_original = GLOBAL_ENEMY.matk;
GLOBAL_ENEMY.latk_original = GLOBAL_ENEMY.latk;
GLOBAL_ENEMY.hdef_original = GLOBAL_ENEMY.hdef;
GLOBAL_ENEMY.mdef_original = GLOBAL_ENEMY.mdef;
GLOBAL_ENEMY.ldef_original = GLOBAL_ENEMY.ldef;
GLOBAL_ENEMY.hatk_original = GLOBAL_ENEMY.hatk;
_parent.camControl.emptygrid.drawnyet = undefined;
GLOBAL_PLAYER.m_status = "Normal";
GLOBAL_SCORE_ON_DAMAGE = 1;
GLOBAL_POINTS_START = GLOBAL_POINTS;
fadeInBG();
_resetSparkSim(GLOBAL_ENEMYSPARK);
_resetSparkSim(GLOBAL_PLAYERSPARK);
BLOCK_ENEMY_ONE_FRAME = true;
if (Math.random() < 0.5) {
GLOBAL_ENEMY._x = GLOBAL_PLAYER._x + 640;
GLOBAL_ENEMY._xscale = -Math.abs(GLOBAL_ENEMY._xscale);
} else {
GLOBAL_ENEMY._x = GLOBAL_PLAYER._x - 640;
GLOBAL_ENEMY._xscale = Math.abs(GLOBAL_ENEMY._xscale);
}
GLOBAL_ENEMY._y = GLOBAL_FLOOR;
GLOBAL_ENEMY_TIMEOUT = 0;
}
function victoryStatus() {
if (GLOBAL_ENEMY.hp < 1) {
return(-1);
}
return(GLOBAL_ENEMY_REQUEST_VICTORY);
}
function victoryRequest(nextenemy, endanim) {
GLOBAL_ENEMY_REQUEST_VICTORY = 1;
GLOBAL_ENEMY_REQUEST_VICTORY_NEXT = 0;
if (nextenemy != undefined) {
if (typeof(nextenemy) == "number") {
GLOBAL_ENEMY_REQUEST_VICTORY_NEXT = nextenemy;
} else if (typeof(nextenemy) == "string") {
if (GLOBAL_ENEMIES_BY_NAME.hasOwnProperty(nextenemy)) {
GLOBAL_ENEMY_REQUEST_VICTORY_NEXT = GLOBAL_ENEMIES_BY_NAME[nextenemy];
} else {
_traceF0(("requestVictory does not have monster: \"" + nextenemy) + "\"");
}
}
}
}
function ObjHitsBody(obj) {
return(getCBox(GLOBAL_PLAYER).hitTest(obj));
}
function ObjHitsBodyCenter(obj) {
return(GLOBAL_PLAYER.centerbox.hitTest(obj));
}
function ObjHitsHead(obj) {
return(GLOBAL_PLAYER.head.hitTest(obj));
}
function ObjHitsHeadCenter(obj) {
return(GLOBAL_PLAYER.head.center.hitTest(obj));
}
function CanVoreHigh() {
if (GLOBAL_PLAYER.hdefon == 0) {
return(true);
}
return(false);
}
function CanVoreMid() {
if (GLOBAL_PLAYER.mdefon == 0) {
return(true);
}
return(false);
}
function CanVoreLow() {
if (GLOBAL_PLAYER.ldefon == 0) {
return(true);
}
return(false);
}
function CanVore() {
if (((GLOBAL_PLAYER.ldefon == 0) && (GLOBAL_PLAYER.mdefon == 0)) && (GLOBAL_PLAYER.hdefon == 0)) {
return(true);
}
return(false);
}
function shakeBegin(freq, amplitude, autodecay) {
if (GLOBAL_CAMERA_SHAKE.use == 0) {
GLOBAL_CAMERA_SHAKE.phase = 0;
GLOBAL_CAMERA_SHAKE.decay = 0;
GLOBAL_CAMERA_SHAKE.maxdecay = 10;
}
GLOBAL_CAMERA_SHAKE.use = 1;
GLOBAL_CAMERA_SHAKE.amp = amplitude;
GLOBAL_CAMERA_SHAKE.freq = freq * Math.PI;
GLOBAL_CAMERA_SHAKE.autodecay = -1;
if (autodecay != undefined) {
if (autodecay > 0) {
GLOBAL_CAMERA_SHAKE.autodecay = autodecay;
} else {
GLOBAL_CAMERA_SHAKE.autodecay = -1;
}
}
}
function shakeEnd(decay) {
GLOBAL_CAMERA_SHAKE.autodecay = -1;
GLOBAL_CAMERA_SHAKE.use = 0;
if (decay != undefined) {
if (decay > 0) {
GLOBAL_CAMERA_SHAKE.maxdecay = decay;
} else {
GLOBAL_CAMERA_SHAKE.maxdecay = 0;
}
}
}
function _setClipColor(mc, color) {
var _local2 = new flash.geom.Transform(mc);
var _local6 = 1;
var _local4 = (color & 255) / 255;
var _local7 = ((color >> 8) & 255) / 255;
var _local3 = ((color >> 16) & 255) / 255;
var _local1 = new flash.geom.ColorTransform(_local4, _local7, _local3, _local6, 0, 0, 0, 0);
_local2.colorTransform = _local1;
return(_local1);
}
function fadeBG(nframes, optionalcolor) {
GLOBAL_BG_FADE_COLOR = 0;
if (optionalcolor != undefined) {
GLOBAL_BG_FADE_COLOR = optionalcolor;
}
GLOBAL_BG_FADE = -1;
GLOBAL_BG_FADE_TIME = -1;
if ((nframes != undefined) and (nframes > 0)) {
GLOBAL_BG_FADE = 0;
GLOBAL_BG_FADE_TIME = nframes;
} else {
_setClipColor(GLOBAL_SCROLLBG, GLOBAL_BG_FADE_COLOR);
GLOBAL_BG_FADE_PREV_COLOR = GLOBAL_BG_FADE_COLOR;
}
}
function fadeInBG(nframes, optionalcolor) {
GLOBAL_BG_FADE_COLOR = 16777215 /* 0xFFFFFF */;
if (optionalcolor != undefined) {
GLOBAL_BG_FADE_COLOR = optionalcolor;
}
GLOBAL_BG_FADE = -1;
GLOBAL_BG_FADE_TIME = -1;
if ((nframes != undefined) and (nframes > 0)) {
GLOBAL_BG_FADE = 0;
GLOBAL_BG_FADE_TIME = nframes;
} else {
_setClipColor(GLOBAL_SCROLLBG, GLOBAL_BG_FADE_COLOR);
GLOBAL_BG_FADE_PREV_COLOR = GLOBAL_BG_FADE_COLOR;
}
}
function showConsumedPlayer(how, freezy) {
if (how != undefined) {
GLOBAL_SHOW_CONSUMED_PLAYER = how;
} else {
GLOBAL_SHOW_CONSUMED_PLAYER = false;
}
if (freezy != undefined) {
GLOBAL_SHOW_CONSUMED_PLAYER_FROZEN = freezy;
} else {
GLOBAL_SHOW_CONSUMED_PLAYER_FROZEN = false;
}
}
function musicSetVolume(musvolume) {
GLOBAL_MUSIC_VOLUME = musvolume;
var _local2 = GLOBAL_SET_MUSIC_VOLUME * (GLOBAL_MUSIC_VOLUME / 100);
GLOBAL_MUSIC.setVolume(GLOBAL_SET_MUSIC_VOLUME * (GLOBAL_MUSIC_VOLUME / 100));
if (getEnemyT(GLOBAL_ENEMY)._parent.music != undefined) {
var _local1 = getEnemyT(GLOBAL_ENEMY)._parent.music;
if (_local1.snd != undefined) {
_local1.snd.setVolume(_local2);
}
}
}
function musicFadeOut(frames, minvolume) {
if (minvolume == undefined) {
minvolume = 0;
}
GLOBAL_MUSIC_FADES.main = {};
GLOBAL_MUSIC_FADES.main.frames = frames;
GLOBAL_MUSIC_FADES.main.start = GLOBAL_MUSIC_VOLUME;
GLOBAL_MUSIC_FADES.main.end = minvolume;
GLOBAL_MUSIC_FADES.main.curr = 0;
}
function musicFadeIn(frames, maxvolume) {
if (maxvolume == undefined) {
maxvolume = 100;
}
GLOBAL_MUSIC_FADES.main = {};
GLOBAL_MUSIC_FADES.main.frames = frames;
GLOBAL_MUSIC_FADES.main.start = GLOBAL_MUSIC_VOLUME;
GLOBAL_MUSIC_FADES.main.end = maxvolume;
GLOBAL_MUSIC_FADES.main.curr = 0;
}
function musicPlay(localname) {
if (localname != GLOBAL_MUSIC_FILE) {
GLOBAL_MUSIC_FILE = localname;
}
trace("MUSIC: " + GLOBAL_MUSIC_FILE);
GLOBAL_MUSIC.loadSound(GLOBAL_MUSIC_FILE, true);
GLOBAL_MUSIC.start();
GLOBAL_MUSIC.onSoundComplete = function () {
GLOBAL_MUSIC.start();
};
musicSetVolume(100);
}
function musicStop() {
musicSetVolume(0);
GLOBAL_MUSIC.stop();
}
function musicUpdate() {
if (getEnemyT(GLOBAL_ENEMY)._parent.music != undefined) {
var _local5 = getEnemyT(GLOBAL_ENEMY)._parent.music;
if (_local5.snd != undefined) {
var _local4 = {};
for (var _local6 in GLOBAL_MUSIC_FADES) {
var _local1 = GLOBAL_MUSIC_FADES[_local6];
var _local2 = _local1.curr / (1 * _local1.frames);
var _local3 = _local1.end - _local1.start;
_local1.curr = _local1.curr + 1;
if (_local1.curr >= _local1.frames) {
musicSetVolume(_local1.end);
} else {
musicSetVolume(_local1.start + (_local2 * _local3));
_local4[_local6] = _local1;
}
}
GLOBAL_MUSIC_FADES = _local4;
if (_local5.wasstarted < 5) {
_local5.wasstarted = _local5.wasstarted + 1;
if (_local5.wasstarted > 4) {
var me = _local5.snd;
me.start();
me.onSoundComplete = function () {
me.start();
};
}
} else if (_local5.wasstarted) {
} else {
_local5.wasstarted = 0;
}
musicSetVolume(GLOBAL_MUSIC_VOLUME);
}
}
}
function resetPlayer() {
GLOBAL_PLAYER.hp = 63;
GLOBAL_PLAYER.s_atktype = 0;
GLOBAL_PLAYER.s_animbusy = 0;
GLOBAL_PLAYER.s_idle = 1;
GLOBAL_PLAYER.s_moving = 0;
GLOBAL_PLAYER.s_attacking = 0;
GLOBAL_PLAYER.s_hit = 0;
GLOBAL_PLAYER.s_vx = 0;
GLOBAL_PLAYER.s_consumed = undefined;
GLOBAL_PLAYER._alpha = 100;
GLOBAL_PLAYER.head._alpha = 100;
GLOBAL_PLAYER.head._visible = true;
GLOBAL_PLAYER._visible = true;
GLOBAL_PLAYER_MOVESCALE = 1;
setPlayerScale(100);
GLOBAL_PLAYER.gotoAndStop("idle");
setPlayerHasHead(true);
enemyFacePlayer();
_root.GLOBAL_WEAPON_TYPE = 1 + Math.floor(Math.random() * 2);
if (GLOBAL_PLAYERGRAPHIC > 9) {
}
}
function requestUseBarb(barbid) {
setPlayerGraphic(barbid);
goPlay(GLOBAL_PLAYER, 1);
goPlay(GLOBAL_PLAYER, "idle");
if (GLOBAL_PLAYER.aniclip) {
GLOBAL_PLAYER.aniclip.gotoAndStop(GLOBAL_PLAYERGRAPHIC);
}
resetPlayer();
}
function qteEvent(frames, typeobject) {
if (typeobject == undefined) {
typeobject = new Object({type:1});
}
GLOBAL_QTE_DATA.qliveevent = 0;
for (var _local2 in typeobject) {
GLOBAL_QTE_DATA[_local2] = typeobject[_local2];
}
if (frames == undefined) {
frames = 20;
}
GLOBAL_QTE_DATA.result = 0;
GLOBAL_QTE_DATA.active = true;
GLOBAL_QTE_DATA.timeleft = frames;
GLOBAL_QTE_DATA.qsetup = 0;
if (GLOBAL_QTE_DATA.qliveevent > 0) {
} else {
GLOBAL_ENEMY.enemy.stop();
getEnemyT(GLOBAL_ENEMY).stop();
GLOBAL_PLAYER.stop();
GLOBAL_PLAYER.aniclip.mc.stop();
GLOBAL_PLAYER.aniclip.mc.mc.stop();
if (GLOBAL_SHOW_CONSUMED_PLAYER) {
GLOBAL_PLAYER._alpha = 100;
}
}
}
function qteAbort(setto) {
if (setto != undefined) {
GLOBAL_QTE_DATA.result = setto;
} else {
GLOBAL_QTE_DATA.result = 0;
}
GLOBAL_QTE_DATA.active = 0;
}
function qteCheck() {
trace("Checking QTE result: " + GLOBAL_QTE_DATA.result);
return(GLOBAL_QTE_DATA.result);
}
function loadURLList(textData) {
var _local10 = new Array();
var _local4 = new Array();
var _local11 = 0;
var _local2 = 0;
while (_local2 < textData.length) {
var _local8 = textData.charCodeAt(_local2);
if ((_local8 == 13) || (_local8 == 0)) {
if (_local11 < _local2) {
var _local3 = textData.substring(_local11, _local2);
if (String.fromCharCode(_local3.charCodeAt(0)) == "#") {
} else if (String.fromCharCode(_local3.charCodeAt(0)) == "~") {
if (_local4.length > 0) {
_local4[_local4.length - 1] = _local3.substr(1);
}
} else {
var _local7 = new Object();
_local7.text = _local3;
_local10.push(_local7);
_local4.push(undefined);
loadicon = undefined;
}
}
_local11 = _local2 + 1;
}
_local2++;
}
_local2 = 0;
while (_local2 < _local10.length) {
var _local12 = _local10[_local2];
var _local9 = _local4[_local2];
var _local6 = _local12.text;
BLOCK_ENEMY_ONE_FRAME = true;
var _local5 = true;
var _local1 = 0;
while (_local1 < GLOBAL_LOADEEMS.length) {
if (GLOBAL_LOADEEMS[_local1] == _local6) {
_local5 = false;
break;
}
_local1++;
}
if (_local5) {
GLOBAL_LOADEEMS.push(_local6);
if (_local9 != undefined) {
GLOBAL_LOADEEMS_ICONS[GLOBAL_LOADEEMS.length] = _local9;
}
GLOBAL_MAXENEMYFRAMES = GLOBAL_MAXENEMYFRAMES + 1;
}
_local2++;
}
return(0);
}
function getURLList() {
var _local2 = "";
var _local1 = 0;
while (_local1 < GLOBAL_LOADEEMS.length) {
_local2 = _local2 + GLOBAL_LOADEEMS[_local1];
_local2 = _local2 + newline;
if (GLOBAL_LOADEEMS_ICONS[_local1] != undefined) {
_local2 = _local2 + (("~" + GLOBAL_LOADEEMS_ICONS[_local1]) + newline);
}
_local1++;
}
return(_local2);
}
function enemySetAIFunction(fptr) {
GLOBAL_ENEMY_AI_FUNC = fptr;
}
function setCustomGui(embedpath, embedframe) {
var _local2 = 0;
if (embedframe == undefined) {
if (GLOBAL_GAME_GUI_TYPE_FRAME != GLOBAL_GAME_GUI_TYPE_FRAME_DEFAULT) {
_local2 = _local2 + 1;
}
GLOBAL_GAME_GUI_TYPE_FRAME = GLOBAL_GAME_GUI_TYPE_FRAME_DEFAULT;
} else {
if (GLOBAL_GAME_GUI_TYPE_FRAME != embedframe) {
_local2 = _local2 + 1;
}
GLOBAL_GAME_GUI_TYPE_FRAME = embedframe;
}
if (embedpath == 0) {
if (GLOBAL_GAME_GUI_TYPE != GLOBAL_GAME_GUI_TYPE_DEFAULT) {
_local2 = _local2 + 1;
}
GLOBAL_GAME_GUI_TYPE = GLOBAL_GAME_GUI_TYPE_DEFAULT;
} else {
if (GLOBAL_GAME_GUI_TYPE != "gamecustom") {
_local2 = _local2 + 1;
}
GLOBAL_GAME_GUI_TYPE = "gamecustom";
if (embedpath == undefined) {
var _local3 = getEnemyURL(enemyGetID());
if (GLOBAL_GAME_GUI_TYPE_PATH != _local3) {
_local2 = _local2 + 1;
}
GLOBAL_GAME_GUI_TYPE_PATH = _local3;
} else {
if (GLOBAL_GAME_GUI_TYPE_PATH != embedpath) {
_local2 = _local2 + 1;
}
GLOBAL_GAME_GUI_TYPE_PATH = embedpath;
}
}
if (_local2) {
_parent.camControl.gotoAndStop(GLOBAL_GAME_GUI_TYPE);
}
}
function enemyMoveUpdate() {
this.GLOBAL_ENEMY._x = this.GLOBAL_ENEMY._x + ((this.GLOBAL_ENEMY._xscale / Math.abs(this.GLOBAL_ENEMY._xscale)) * this.getEnemyT(this.GLOBAL_ENEMY).s_moving);
}
function enemyIsMoving() {
return(this.getEnemyT(this.GLOBAL_ENEMY).s_moving != 0);
}
function enemyStopMoving() {
this.getEnemyT(this.GLOBAL_ENEMY).s_moving = 0;
}
function enemyMoveTowardPlayerCenter(amt) {
this.getEnemyT(this.GLOBAL_ENEMY).s_moving = (this.GLOBAL_ENEMY._xscale / Math.abs(this.GLOBAL_ENEMY._xscale)) * Math.max(Math.min(amt * this.playerEnemyCenterAbsoluteDistance(), amt), -amt);
}
function enemyCurrAnimIs(alist) {
var _local2 = enemyCurrAnim();
for (var _local3 in alist) {
if (_local2 == alist[_local3]) {
return(true);
}
}
return(false);
}
function setParameterEnemyAttackDamage(v) {
this.V.gd_damage_amt = v;
}
function setParameterEnemyHurtAmount(v) {
this.V.gd_hurt_amt = v;
}
function setupParameterEnemy(vals) {
_CURRENT_ENEMY_PARAMETERS = vals;
this.setScaleValue(100);
this.setName("Unnamed");
this.setStatus("");
this.setCredit("");
this.setHAtk(0);
this.setMAtk(0);
this.setLAtk(0);
this.setHDef(1000);
this.setMDef(1000);
this.setLDef(1000);
this.setMaxHP(63);
this.setHP(63);
this.enemySetAllowPets(0);
this.setEnemyFaceTarget(0);
this.setEnemySolid(1);
this.enemySetViewBetween(0);
this.setEnemyAIUseAttacks(0);
this.setEnemyAINoAutoIdle(1);
this.enemySetDontPlayHitAnimation(0);
this.setEnemyRollOption(1);
for (var k in _FIXED_PARAMETER_MAPPING) {
if (vals.hasOwnProperty(k)) {
this[_FIXED_PARAMETER_MAPPING[k]](vals[k]);
}
}
if (vals.hasOwnProperty("atkhisto")) {
var v = vals.atkhisto;
if (v.length > 2) {
this.enemySetAttackHistogram(v[0], v[1], v[2]);
} else {
trace("#WARNING: atkhisto value must be list of 3 frequencies, like [1,1,1] or [3,2,4]");
}
}
if (vals.hasOwnProperty("backgroundimage")) {
var usebgname = vals.backgroundimage;
if (usebgname.length > 0) {
with (getEnemyT(GLOBAL_ENEMY)) {
G.V.gd_use_background_data = flash.display.BitmapData.loadBitmap(usebgname);
}
this.setBackgroundData(this.V.gd_use_background_data, -500);
}
}
if (vals.hasOwnProperty("music")) {
var usemusicname = vals.music;
if (usemusicname.length > 0) {
var mysound = new Sound(getEnemyT(GLOBAL_ENEMY)._parent.music);
mysound.attachSound(usemusicname);
getEnemyT(GLOBAL_ENEMY)._parent.music.snd = mysound;
}
}
getEnemyT(GLOBAL_ENEMY).postSync = function (G, Obj) {
};
this.V.hitCallback = function (G, Obj, hittype, hitdamage) {
G.V.lastHit = hittype;
return(undefined);
};
this.V.playerHitCallback = function (G, Obj, hittype, hitdamage) {
G.V.lastPlayerHit = hittype;
var _local2 = G.V.gd_damage_amt;
G.V.lastPlayerHitFatal = G.getPlayerHP() <= _local2;
G.hurtPlayer(Obj, _local2);
return(undefined);
};
this.V.checkAlwaysTrue = function (G, arglist) {
return(true);
};
this.V.checkRollIntercept = function (G, distmin, distmax) {
if (G.GLOBAL_TAPDASH_STATE > 0) {
if (G.enemyFacing() != G.playerFacing()) {
var _local2 = G.playerSignedDistanceFix();
if ((_local2 >= distmin) && (_local2 < distmax)) {
return(true);
}
}
}
return(false);
};
this.V.checkBlockAttacks = function (G, dmax) {
var _local1 = G.playerCurrAnim();
if (_local1.indexOf("atk") == 0) {
if (_local1.indexOf("atkp") == 0) {
} else if (G.enemyFacing() != G.playerFacing()) {
var _local3 = G.playerSignedDistanceFix();
if ((_local3 >= 0) && (_local3 < dmax)) {
return(true);
}
}
}
return(false);
};
this.V.checkLastHit = function (G) {
return(G.V.lastHit != "");
};
this.V.checkInFrontRange = function (G, dmin, dmax) {
var _local1 = G.playerSignedDistanceFix();
return((_local1 >= dmin) && (_local1 < dmax));
};
this.V.notPlayingAnimation = function (G, alist) {
return(!G.enemyCurrAnimIs(alist));
};
this.V.playingAnimation = function (G, alist) {
return(G.enemyCurrAnimIs(alist));
};
this.V.healthPercentLessThan = function (G, hpercent) {
return(G.getEnemyHealthPercent() <= hpercent);
};
this.V.healthPercentLessThanAndVarsEqual = function (G, hpercent, vlist) {
var _local1 = 0;
var _local3 = vlist.length;
while (_local1 < _local3) {
if (G.V[vlist[_local1]] != vlist[_local1 + 1]) {
return(false);
}
_local1 = _local1 + 2;
}
return(G.getEnemyHealthPercent() <= hpercent);
};
this.enemySetIgnoreHitCallbackName("hitCallback");
this.enemySetPlayerHitCallbackName("playerHitCallback");
this.enemyFacePlayer();
this.V.lastHit = "";
this.V.lastPlayerHit = "";
this.V.lastPlayerHitFatal = false;
this.V.gd_statechangecounter = 0;
this.V.gd_hurt_amt = 16;
this.V.gd_damage_amt = 8;
this.V.gd_states = {};
this.V.gd_next_anim = "idle";
this.addParameterEnemyState("");
this.V.gd_current_state = "";
this.V.gd_next_state = "";
this.easClear();
this.getEnemyT(this.GLOBAL_ENEMY)._run = function (G, Obj) {
G.updateParameterEnemyStates();
G.runParameterEnemyState(G.V.gd_current_state);
G.updateParameterEnemy();
};
}
function addParameterEnemyState(statename) {
var _local2 = {};
_local2.V = {};
_local2.L = [];
_local2.transitions = {};
_local2.paramfuncs = [];
for (var _local3 in _CURRENT_ENEMY_PARAMETERS) {
_local2.V[_local3] = _CURRENT_ENEMY_PARAMETERS[_local3];
}
this.V.gd_states[statename] = _local2;
}
function addStateOp(varifuncarglist, handlerfn, logicop, nobreaking) {
if (logicop == undefined) {
logicop = 0;
}
if (nobreaking == undefined) {
nobreaking = 0;
}
this.V.gd_states[this.V.gd_current_state].L.push([varifuncarglist, handlerfn, logicop, nobreaking]);
}
function setStateNext(statename) {
this.V.gd_next_state = statename;
}
function setState(statename) {
this.V.gd_current_state = statename;
this.V.gd_next_state = statename;
}
function getState() {
return(this.V.gd_current_state);
}
function getNextState() {
return(this.V.gd_next_state);
}
function statevar(vname, vvalue) {
this.V.gd_states[this.V.gd_current_state].V[vname] = vvalue;
}
function statevarload(vars) {
for (var _local3 in vars) {
this.statevar(_local3, vars[_local3]);
}
}
function statevarget(vname) {
return(this.V.gd_states[this.V.gd_current_state].V[vname]);
}
function statevargetsafe(vname, vdefault) {
var _local2 = this.V.gd_states[this.V.gd_current_state].V;
if (_local2.hasOwnProperty(vname)) {
return(_local2[vname]);
}
trace((("#ERROR missing state variable in state " + this.V.gd_current_state) + " variable: ") + vname);
return(vdefault);
}
function setNextAnim(aname) {
G.V.gd_next_anim = aname;
}
function addParamStateOp(sopname, nobreaking, sparams, userfunc) {
if (nobreaking == undefined) {
nobreaking = 0;
}
if (sparams == undefined) {
sparams = {};
}
if (_COMMON_STATE_OPS_PARAM_FUNC.hasOwnProperty(sopname)) {
this.V.gd_states[this.V.gd_current_state].paramfuncs.push([_COMMON_STATE_OPS_PARAM_FUNC[sopname], nobreaking, sparams]);
} else {
trace((("#ERROR missing state op function: " + sopname) + " in ") + this.V.gd_current_state);
}
}
function addParamStateCustomOp(nobreaking, sparams, userfunc) {
this.V.gd_states[this.V.gd_current_state].paramfuncs.push([userfunc, nobreaking, sparams]);
}
function addCommonStateOpSet(setname, tparams) {
if (setname == "simpleenemy") {
}
}
function addStateTransition(state_from, state_to, callback_fn) {
if (this.V.gd_states.hasOwnProperty(state_from)) {
} else {
trace((((("#ERROR state must exist to transition: " + state_from) + " from ") + state_from) + " ") + state_to);
}
if (this.V.gd_states.hasOwnProperty(state_to)) {
} else {
trace((((("#ERROR state must exist to transition: " + state_to) + " from ") + state_from) + " ") + state_to);
}
this.V.gd_states[state_from].transitions[state_to] = callback_fn;
}
function runParameterEnemyState(statename) {
var _local5 = this.V.gd_states[statename].paramfuncs;
var _local3 = 0;
var _local6 = _local5.length;
var _local4 = 0;
while (_local3 < _local6) {
var _local2 = _local5[_local3];
if (_local2[1] >= _local4) {
if (_local2[0](this, _local2[2])) {
} else if (_local2[1] > 0) {
} else {
_local4 = _local4 + 1;
}
}
_local3 = _local3 + 1;
}
}
function updateParameterEnemyStates() {
this.V.gd_next_anim = "";
var _local2 = this.V.gd_next_state;
var _local3 = this.V.gd_current_state;
if (_local3 != _local2) {
this.V.gd_statechangecounter = this.V.gd_statechangecounter + 1;
var _local4 = this.V.gd_states[_local3].transitions;
if (_local4.hasOwnProperty(_local2)) {
_local4[_local2](this);
if (_local2 != this.V.gd_next_state) {
trace((("#WARNING You can't change states in a transition function! " + _local3) + " -> ") + this.V.gd_next_state);
}
this.V.gd_next_state = _local2;
}
this.V.gd_current_state = _local2;
return(true);
}
return(false);
}
function updateParameterEnemy() {
if (this.V.gd_next_anim != "") {
if (this.V.gd_next_anim != this.enemyCurrAnim()) {
trace("nextanim: " + this.V.gd_next_anim);
this.goPlay(this.getEnemyT(this.GLOBAL_ENEMY), this.V.gd_next_anim);
}
this.V.gd_next_anim = "";
}
}
var proposcalex = 426.666666666667;
var proposcaley = 240;
var proposcale = (proposcalex / proposcaley);
var GLOBAL_ENEMY_PREVINAME = undefined;
var GLOBAL_ENEMY_PREVILIST = undefined;
var _VICTIM_SYNC_CLIP_PER_FRAME_COUNTER_MAYBE_INSIDE = 0;
var _VICTIM_SYNC_CLIP_PER_FRAME_COUNTER_MAYBE = (_VICTIM_SYNC_CLIP_PER_FRAME_COUNTER_MAYBE_INSIDE + 1);
var copyTransform = function (dst, src) {
var _local1 = new flash.geom.Transform(src);
var _local2 = new flash.geom.Transform(dst);
_local2.matrix = _local1.matrix;
};
var flashColorize = function (obj, r, g, b, al) {
var _local2 = new flash.geom.Transform(obj);
if (al == undefined) {
al = 1;
}
var _local1 = new flash.geom.ColorTransform(r, g, b, al, 0, 0, 0, 0);
_local2.colorTransform = _local1;
return(_local1);
};
var fullColorize = function (obj, rf, gf, bf, af, ra, ga, ba, aa) {
var _local2 = new flash.geom.Transform(obj);
if (af == undefined) {
af = 1;
}
if (ra == undefined) {
ra = 0;
}
if (ga == undefined) {
ga = 0;
}
if (ba == undefined) {
ba = 0;
}
if (aa == undefined) {
aa = 0;
}
var _local1 = new flash.geom.ColorTransform(rf, gf, bf, af, ra, ga, ba, aa);
_local2.colorTransform = _local1;
return(_local1);
};
var dataFunction = function (v, A, method) {
if (A.length > 0) {
if (method == undefined) {
method = 8;
}
var _local9 = Math.floor(method) & 3;
var _local8 = Math.floor(method) >> 3;
var _local5 = v;
var _local2 = Math.floor(_local5);
var _local3 = _local2 + 1;
if (_local9 == 1) {
if (_local2 > 0) {
_local2 = _local2 - (A.length * Math.floor(_local2 / A.length));
} else if (_local2 < 0) {
_local2 = _local2 + (A.length * Math.ceil((-_local2) / A.length));
}
if (_local3 > 0) {
_local3 = _local3 - (A.length * Math.floor(_local3 / A.length));
} else if (_local3 < 0) {
_local3 = _local3 + (A.length * Math.ceil((-_local3) / A.length));
}
} else {
if (_local2 >= A.length) {
_local2 = A.length - 1;
}
if (_local2 < 0) {
_local2 = 0;
}
if (_local3 >= A.length) {
_local3 = A.length - 1;
}
if (_local3 < 0) {
_local3 = 0;
}
}
while (_local2 < 0) {
_local2 = _local2 + A.length;
}
while (_local3 < 0) {
_local3 = _local3 + A.length;
}
while (_local2 >= A.length) {
_local2 = _local2 - A.length;
}
while (_local3 >= A.length) {
_local3 = _local3 - A.length;
}
var _local4 = _local5 - _local2;
var _local6 = A[_local3] - A[_local2];
if (_local8 == 1) {
return(A[_local2] + (_local6 * _local4));
}
if (_local8 == 2) {
return(A[_local2] + (_local6 * ((_local4 * _local4) * (3 - (2 * _local4)))));
}
return(A[_local2]);
}
return(0);
};
GLOBAL_USE_DARKROLLS = true;
GLOBAL_PLAYER_BLOCKROLLS = false;
GLOBAL_PLAYER_BLOCKATTACKS = false;
GLOBAL_FX_QUALITY = 2;
GLOBAL_USE_SHADOWS = false;
GLOBAL_USE_SYNCFX = true;
USER_MINIMUM_CONTENT_CODE = 5;
USER_ACCEPTED_AUP = 0;
GLOBAL_HOLD_FRAMES = 6;
GLOBAL_GRAVITY_CONSTANT = 0.533333333333333;
GLOBAL_GRAVITY = GLOBAL_GRAVITY_CONSTANT;
GLOBAL_ENEMY_USE_GRAVITY = true;
GLOBAL_LOADEEMS = new Array();
GLOBAL_LOADEEMS_ICONS = new Object();
GLOBAL_LOADEEMS_BROKEN = new Array();
var GLOBAL_LOCALSCOPE = (String(_root._url).indexOf("file") == 0);
var GLOBAL_USEHTTPS = (String(_root._url).indexOf("https") == 0);
trace((((_root._url + " ") + GLOBAL_LOCALSCOPE) + " ") + GLOBAL_USEHTTPS);
var GLOBAL_SWF_NAME = "";
var GLOBAL_SWF_URL = unescape(String(_root._url));
swfName = String(_root._url);
swfName = swfName.slice(swfName.lastIndexOf("/") + 1);
GLOBAL_SWF_NAME = unescape(swfName);
trace((GLOBAL_SWF_NAME + " ") + GLOBAL_SWF_URL);
var GLOBAL_BASEURL = GetTheBaseUrl();
var GLOBAL_REPAIREDBASEURL = "";
GLOBAL_CONTENT_TYPES = {};
if (GLOBAL_LOCALSCOPE) {
trace("no defaults");
} else {
var URLPLACE = "";
URLPLACE = GLOBAL_BASEURL;
var killslasher = 3;
while (killslasher > 0) {
var s2 = URLPLACE.lastIndexOf("/");
URLPLACE = URLPLACE.substr(0, s2);
killslasher--;
}
URLPLACE = URLPLACE + "/";
GLOBAL_REPAIREDBASEURL = URLPLACE;
}
GLOBAL_OPTIONS = new Object();
GLOBAL_OPTIONS.showDirty = 1;
GLOBAL_OPTIONS.showNaughty = 1;
GLOBAL_OPTIONS.automaticBarb = new Object();
GLOBAL_OPTIONS.automaticBarb.enabled = 0;
GLOBAL_OPTIONS.automaticBarb.value = 0;
GLOBAL_OPTIONS.automaticBarb.healthdown = 30;
GLOBAL_EXTERNAL_XML_FILEURL = "external.xml";
GLOBAL_MAX_PLAYERGRAPHIC = 11;
GLOBAL_MAXENEMYFRAMES = GLOBAL_LOADEEMS.length;
_root.GLOBAL_PLAYERGRAPHIC = 1;
_root.GLOBAL_PLAYERSUBGRAPHIC = 1;
_root.GLOBAL_PLAYERHEAD = 1;
_root.GLOBAL_SKIN_CLASS = "Human";
_root.GLOBAL_SKIN_BODY_PART = "newBarb";
_root.GLOBAL_SKIN_ARM_PART = "newBarb";
_root.GLOBAL_SKIN_HAND_PART = "newBarb";
_root.GLOBAL_SKIN_LEG_PART = "newBarb";
_root.GLOBAL_SKIN_FOOT_PART = "newBarb";
_root.GLOBAL_SKIN_HEAD_PART = "newBarb";
_root.GLOBAL_SKIN_WEAPON_PARTL = "sword";
_root.GLOBAL_SKIN_WEAPON_PARTR = "none";
_root.GLOBAL_SKIN_TAIL_PART = "none";
_root.GLOBAL_SKIN_EAR_PART = "none";
_root.GLOBAL_SKIN_GENDER_PART = "none";
GLOBAL_SET_VOLUME = 50;
GLOBAL_SET_MUSIC_VOLUME = 50;
GLOBAL_MUSIC_VOLUME = 50;
GLOBAL_TAPDASH_FRAMES = 3;
GLOBAL_TAPDASH_STATE = 0;
GLOBAL_TAPDASH_DIRECTION = 0;
_root.GLOBAL_WEAPON_TYPE = 2;
GLOBAL_ENEMIES_BY_NAME_LOADING = 0;
GLOBAL_CAMERA_ZOOMPLAYER = 1;
GLOBAL_CAMERA_SCALE_FACTOR = 1;
GLOBAL_ALLOW_PETS = 0;
GLOBAL_PLAYER_MODE = 0;
GLOBAL_PLAYER_MODE_MAX = 1;
GLOBAL_PLAYER_MODE_DETECT = 0;
GLOBAL_ENEMY_REQUEST_VICTORY = 0;
GLOBAL_ENEMY_REQUEST_VICTORY_NEXT = 0;
GLOBAL_GAME_GUI_TYPE_DEFAULT = "game";
GLOBAL_GAME_GUI_TYPE = GLOBAL_GAME_GUI_TYPE_DEFAULT;
GLOBAL_GAME_GUI_TYPE_PATH = 0;
GLOBAL_GAME_GUI_TYPE_FRAME_DEFAULT = "customGui";
GLOBAL_GAME_GUI_TYPE_FRAME = 0;
GLOBAL_TROPHYCASE = new Object();
var GLOBALUPDATECOX = new Object();
GLOBAL_SHOW_PLAYER_INSIDEPLUS = true;
GLOBAL_SHOW_PLAYER_INSIDEPLUS_ENEMY_ENABLE = false;
GLOBAL_QTE_DATA = new Object({result:0});
ATTACK_MEDIUM = 1;
ATTACK_HIGH = 2;
ATTACK_LOW = 0;
ATTACK_SPECIAL = 1;
_parent.camControl.gotoAndStop(GLOBAL_GAME_GUI_TYPE);
_parent.camControl.resetStage();
G.setValue("attackbhist1", attackbhist1);
G.bhistSample(attackbhist1);
GLOBAL_ENEMY_PLAYERHIT_CALLBACK = undefined;
GLOBAL_ENEMY_IGNOREHIT_CALLBACK = undefined;
GLOBAL_HOLD_FRAMES_DEFAULT = 7;
GLOBAL_HOLD_ANIMATION_PRIORITY_DEFAULT = ["d", "l", "u", "r"];
GLOBAL_HOLD_ANIMATION_PRIORITY = GLOBAL_HOLD_ANIMATION_PRIORITY_DEFAULT;
GLOBAL_HOLD_ANIMATION_FRAMES = {};
GLOBAL_HOLD_ANIMATION_INPUTS = {};
GLOBAL_HOLD_ANIMATION_INPUTS.d = {};
GLOBAL_HOLD_ANIMATION_INPUTS.l = {};
GLOBAL_HOLD_ANIMATION_INPUTS.r = {};
GLOBAL_HOLD_ANIMATION_INPUTS.u = {};
GLOBAL_HOLD_ANIMATION_INPUTS.b = {};
GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS = {};
GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS.TL = "TL";
GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS.TR = "TR";
GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS.TU = "TU";
GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS.TD = "TD";
GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS.HL = "HL";
GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS.HR = "HR";
GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS.HU = "HU";
GLOBAL_HOLD_ANIMATION_ESCAPE_KEYS.HD = "HD";
GLOBAL_ALL_ESCAPE_KEYS = new Array("L", "R", "U", "D", "E", "B", "W", "BL", "BR", "BU", "BD", "HL", "HR", "HU", "HD", "TL", "TR", "TU", "TD");
NOFLIPEK = {};
FLIPEK = {};
var ki = 0;
while (ki < GLOBAL_ALL_ESCAPE_KEYS.length) {
var k = GLOBAL_ALL_ESCAPE_KEYS[ki];
NOFLIPEK[k] = k;
NOFLIPEK[k.toLowerCase()] = k.toLowerCase();
FLIPEK[k] = k;
FLIPEK[k.toLowerCase()] = k.toLowerCase();
ki++;
}
FLIPEK.L = "R";
FLIPEK.R = "L";
FLIPEK.BL = "BR";
FLIPEK.BR = "BL";
FLIPEK.TL = "TR";
FLIPEK.TR = "TL";
FLIPEK.HL = "HR";
FLIPEK.HR = "HL";
FLIPEK.l = "r";
FLIPEK.l = "r";
FLIPEK.bl = "br";
FLIPEK.br = "bl";
FLIPEK.tl = "tr";
FLIPEK.tr = "tl";
FLIPEK.hl = "hr";
FLIPEK.hr = "hl";
_resetHoldAnimationSystem();
GLOBAL_SYNCMAP = new Object();
GLOBAL_PRESYNC = function (G, Obj, extra) {
};
GLOBAL_POSTSYNC = function (G, Obj, extra) {
};
V = new Object();
GLOBAL_VALUES = V;
GLOBAL_FUNCS = new Object();
GLOBAL_ENEMY_HASHCODES = new Object();
var GLOBAL_ENEMY_AI_FUNC = _enemyAIDefault;
_root.nvSetVolume = function (amt100) {
var _local2 = new Sound(_parent);
_local2.setVolume(amt100);
GLOBAL_SET_VOLUME = amt100;
musicSetVolume(GLOBAL_MUSIC_VOLUME);
};
_root.nvSetMusicVolume = function (amt100) {
if (amt100 < 0) {
amt100 = 0;
}
if (amt100 > 100) {
amt100 = 100;
}
if (getEnemyT(GLOBAL_ENEMY)._parent.music != undefined) {
var _local3 = getEnemyT(GLOBAL_ENEMY)._parent.music;
if (_local3.snd != undefined) {
_local3.snd.setVolume(amt100);
}
}
var _local4 = _parent.camControl.sld_sound_music;
_local4.sld._yscale = amt100;
GLOBAL_SET_MUSIC_VOLUME = amt100;
};
_root.nvSetVolume(GLOBAL_SET_VOLUME);
_root.nvSetMusicVolume(GLOBAL_SET_MUSIC_VOLUME);
GLOBAL_ENEMY_DATA = new Object();
GLOBAL_CURRENT_BACKGROUND = "default";
GLOBAL_CURRENT_BACKGROUND_YOFF = 0;
GLOBAL_CURRENT_BACKGROUND_PREV = undefined;
GLOBAL_CURRENT_BACKGROUND_STYLE = false;
GLOBAL_FLOOR = 180;
GLOBAL_LIVES = 6;
GLOBAL_KILLS = 0;
GLOBAL_POINTS = 0;
GLOBAL_LOG = new Array();
GLOBAL_TRUEPAUSE = false;
GLOBAL_PAUSE = false;
GLOBAL_PAUSECTR = false;
GLOBAL_PAUSEHFR = 0;
GLOBAL_PAUSEHFRCTR = 0;
GLOBAL_PLAYER = _parent.player;
GLOBAL_PLAYERHASHEAD = true;
GLOBAL_PLAYER_MOVESCALE = 1;
GLOBAL_ENEMY = _parent.enemy;
GLOBAL_ENEMY_TIMEOUT = 0;
GLOBAL_BG = _parent.MBG;
_parent.colorize(_parent.playershad, -100, -100, -100, -50);
_parent.colorize(_parent.enemyshad, -100, -100, -100, -50);
GLOBAL_CAMERA_SHAKE = new Object();
GLOBAL_CAMERA_SHAKE.use = false;
GLOBAL_CAMERA_SHAKE.freq = 5;
GLOBAL_CAMERA_SHAKE.amp = 1;
GLOBAL_CAMERA_SHAKE.decay = 0;
GLOBAL_CAMERA_SHAKE.maxdecay = 0;
GLOBAL_ENEMYSPARK = _parent.enemyspark;
GLOBAL_PLAYERSPARK = _parent.playerspark;
GLOBAL_ENEMY_FRAMES_RUN = 0;
GLOBAL_FULL_TRACE = 0;
GLOBAL_ENEMY_ATKUSE = new Array(0.1, 0.09, 0.71);
GLOBAL_PLAYER_TAPS = new Object();
GLOBAL_PLAYER_INPUTTRACKING = new Object();
GLOBAL_SCORE_ON_DAMAGE = 1;
GLOBAL_POINTS_START = 0;
GLOBAL_DELAY_STARTNOISE = 0;
playerTapReset();
GLOBAL_SHOW_CONSUMED_PLAYER = false;
GLOBAL_SHOW_CONSUMED_PLAYER_FROZEN = false;
GLOBAL_MAXENEMYFRAMES = GLOBAL_ENEMY._totalframes;
_traceF0 = _traceFx;
_traceF1 = function (msg) {
};
_traceF2 = function (msg) {
};
_traceF3 = function (msg) {
};
LogScrollOffset = 0;
GLOBAL_BG_FADE = -1;
GLOBAL_BG_FADE_TIME = -1;
GLOBAL_BG_FADE_COLOR = 16777215 /* 0xFFFFFF */;
GLOBAL_BG_FADE_PREV_COLOR = 16777215 /* 0xFFFFFF */;
GLOBAL_SCROLLBG = _parent.scrollbg;
GLOBAL_MUSIC = new Sound(this);
GLOBAL_MUSIC_FILE = "";
GLOBAL_MUSIC_FADES = {};
_FIXED_PARAMETER_MAPPING = {};
_FIXED_PARAMETER_MAPPING.displayscale = "setScaleValue";
_FIXED_PARAMETER_MAPPING.name = "setName";
_FIXED_PARAMETER_MAPPING.status = "setStatus";
_FIXED_PARAMETER_MAPPING.credit = "setCredit";
_FIXED_PARAMETER_MAPPING.hatk = "setHAtk";
_FIXED_PARAMETER_MAPPING.matk = "setMAtk";
_FIXED_PARAMETER_MAPPING.latk = "setLAtk";
_FIXED_PARAMETER_MAPPING.hdef = "setHDef";
_FIXED_PARAMETER_MAPPING.mdef = "setMDef";
_FIXED_PARAMETER_MAPPING.ldef = "setLDef";
_FIXED_PARAMETER_MAPPING.hp = "setMaxHPandHP";
_FIXED_PARAMETER_MAPPING.allowpets = "enemySetAllowPets";
_FIXED_PARAMETER_MAPPING.facetarget = "setEnemyFaceTarget";
_FIXED_PARAMETER_MAPPING.solid = "setEnemySolid";
_FIXED_PARAMETER_MAPPING.viewbetween = "enemySetViewBetween";
_FIXED_PARAMETER_MAPPING.useattacks = "setEnemyAIUseAttacks";
_FIXED_PARAMETER_MAPPING.noautoidle = "setEnemyAINoAutoIdle";
_FIXED_PARAMETER_MAPPING.dontplayhitanims = "enemySetDontPlayHitAnimation";
_FIXED_PARAMETER_MAPPING.blockrolls = "setEnemyRollOption";
_FIXED_PARAMETER_MAPPING.barbcode = "requestUseBarb";
_FIXED_PARAMETER_MAPPING.attack_damage = "setParameterEnemyAttackDamage";
_FIXED_PARAMETER_MAPPING.hurt_amount = "setParameterEnemyHurtAmount";
_CURRENT_ENEMY_PARAMETERS = {};
_COMMON_STATE_OPS_PARAM_FUNC = {};
_COMMON_STATE_OPS_PARAM_FUNC.update_common_motion = function (G, p) {
if (G.enemyCurrAnimIs(p.anims)) {
if ((G.V.gd_next_anim == p.move) || (G.V.gd_next_anim == p.idle)) {
if (G.enemyIsMoving()) {
G.V.gd_next_anim = p.move;
} else {
G.V.gd_next_anim = p.idle;
}
}
}
if (G.enemyIsMoving()) {
G.enemyMoveUpdate();
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.far_face_and_walk_towards = function (G, p) {
if (G.enemyCurrAnimIs(p.anims)) {
if (G.V.checkInFrontRange(G, p.far, Number.POSITIVE_INFINITY)) {
G.enemyFacePlayer();
G.enemyMoveTowardPlayerCenter(p.speed);
G.V.gd_next_anim = p.move;
if (p.pets) {
G.enemySetAllowPets(p.pets);
}
return(false);
}
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.ranged_approach_wait_or_face = function (G, p) {
if (G.enemyCurrAnimIs(p.anims)) {
if (G.V.checkInFrontRange(G, p.near, p.far)) {
if (G.chance(p.chance)) {
G.enemyFacePlayer();
G.V.gd_next_anim = p.wait;
G.enemyStopMoving();
} else {
G.enemyMoveTowardPlayerCenter(p.speed);
G.V.gd_next_anim = p.move;
}
if (p.pets) {
G.enemySetAllowPets(p.pets);
}
return(false);
}
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.near_split_by_fatal_attack = function (G, p) {
if (G.enemyCurrAnimIs(p.anims)) {
if (G.V.checkInFrontRange(G, 0, p.distance)) {
G.enemyStopMoving();
if (G.getPlayerHP() > G.V.gd_damage_amt) {
G.V.gd_next_anim = G.histPick(p.attacks);
G.enemySetAllowPets(0);
} else {
G.V.gd_next_anim = G.histPick(p.fatal);
G.enemySetAllowPets(0);
}
return(false);
}
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.take_hit_then_play = function (G, p) {
if (G.V.checkLastHit(G)) {
G.enemyStopMoving();
var _local3 = G.V.lastHit;
G.V.lastHit = "";
if (_local3 == "h") {
if (p.hith != undefined) {
G.hurtEnemy(G.V.gd_hurt_amt);
G.V.gd_next_anim = p.hith;
return(false);
}
} else if (_local3 == "l") {
if (p.hitl != undefined) {
G.hurtEnemy(G.V.gd_hurt_amt);
G.V.gd_next_anim = p.hitl;
return(false);
}
} else if (_local3 == "p") {
if (p.hitp != undefined) {
G.V.gd_next_anim = p.hitp;
return(false);
}
} else if (p.hitm != undefined) {
G.hurtEnemy(G.V.gd_hurt_amt);
G.V.gd_next_anim = p.hitm;
return(false);
}
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.counter_attacks_within = function (G, p) {
if (G.V.checkBlockAttacks(G, p.distance)) {
var _local3 = true;
var _local4 = G.playerCurrAnim();
if (_local4 == "atkh") {
if (p.animh != undefined) {
G.V.gd_next_anim = p.animh;
_local3 = false;
}
} else if (_local4 == "atkl") {
if (p.animl != undefined) {
G.V.gd_next_anim = p.animl;
_local3 = false;
}
} else if (_local4 == "atkp") {
if (p.animp != undefined) {
G.V.gd_next_anim = p.animp;
_local3 = false;
}
} else if (p.animm != undefined) {
G.V.gd_next_anim = p.animm;
_local3 = false;
}
if (_local3) {
} else {
G.enemyStopMoving();
G.enemySetAllowPets(0);
return(false);
}
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.counter_roll_within = function (G, p) {
if (p.distance_min) {
} else {
p.distance_min = 0;
}
if (G.V.checkRollIntercept(G, p.distance_min, p.distance)) {
if (p.anim != undefined) {
G.V.gd_next_anim = p.anim;
G.enemyStopMoving();
G.enemySetAllowPets(0);
return(false);
}
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.when_health_lower_call = function (G, p) {
if (G.getEnemyHealthPercent() <= p.health) {
G[p.func].apply(G, p.args);
return(false);
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.when_health_lower_call_user = function (G, p) {
if (G.getEnemyHealthPercent() <= p.health) {
G.V[p.func].apply(G, p.args);
return(false);
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.when_hit_call = function (G, p) {
if (G.V.checkLastHit(G)) {
var _local3 = G.V.lastHit;
G.V.lastHit = "";
if (_local3 == "h") {
if (p.hith != undefined) {
G[p.hith].apply(G, p.args);
return(false);
}
} else if (_local3 == "l") {
if (p.hitl != undefined) {
G[p.hitl].apply(G, p.args);
return(false);
}
} else if (_local3 == "p") {
if (p.hitp != undefined) {
G[p.hitp].apply(G, p.args);
return(false);
}
} else if (p.hitm != undefined) {
G[p.hitm].apply(G, p.args);
return(false);
}
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.when_hit_call_user = function (G, p) {
if (G.V.checkLastHit(G)) {
var _local3 = G.V.lastHit;
G.V.lastHit = "";
if (_local3 == "h") {
if (p.hith != undefined) {
G.V[p.hith].apply(G, p.args);
return(false);
}
} else if (_local3 == "l") {
if (p.hitl != undefined) {
G.V[p.hitl].apply(G, p.args);
return(false);
}
} else if (_local3 == "p") {
if (p.hitp != undefined) {
G.V[p.hitp].apply(G, p.args);
return(false);
}
} else if (p.hitm != undefined) {
G.V[p.hitm].apply(G, p.args);
return(false);
}
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.when_health_lower_next_state = function (G, p) {
if (G.getEnemyHealthPercent() <= p.health) {
G.setStateNext(p.state);
return(false);
}
return(true);
};
_COMMON_STATE_OPS_PARAM_FUNC.on_anim_change_state = function (G, p) {
if (G.enemyCurrAnimIs(p.anims)) {
G.setStateNext(p.state);
return(false);
}
return(true);
};
addcharactervariables(GLOBAL_PLAYER);
addcharactervariables(GLOBAL_ENEMY);
GLOBAL_ENEMY.ai = 1;
GLOBAL_PLAYER.m_name = "Barb";
GLOBAL_PLAYER.m_status = "Normal";
setPlayerHasHead(true);
GLOBAL_ENEMIES_BY_NAME = new Object();
GLOBAL_ENEMIES_BY_NAME_SORTED = new Array();
BLOCK_ENEMY_ONE_FRAME = true;
GLOBAL_MAXENEMYNONEXTERNAL = 1;
LOADINGXML = false;
LOADINGXMLCOMPLETED = false;
REGISTER_FIRST_ENEMY_FRAME = 1;
GLOBAL_ENEMY.gotoAndStop("external");
Log((GLOBAL_SWF_NAME + " ") + GLOBAL_SWF_URL);
Log((((("Player: " + System.capabilities.playerType) + ", ") + GLOBAL_LOCALSCOPE) + ": ") + _root._url);
}
onClipEvent (enterFrame) {
if (_root.GLOBAL_ASSISTANCE) {
if (GLOBAL_ASSISTANCE_TIMER == undefined) {
GLOBAL_ASSISTANCE_TIMER = 0;
}
GLOBAL_ASSISTANCE_TIMER++;
if (GLOBAL_ASSISTANCE_TIMER > 30) {
GLOBAL_ASSISTANCE_TIMER = 0;
_root.GLOBAL_ASSISTANCE = 0;
}
}
if (REGISTER_FIRST_ENEMY_FRAME) {
GLOBAL_MAXENEMYNONEXTERNAL = GLOBAL_ENEMY._currentframe;
GLOBAL_MAXENEMYFRAMES = GLOBAL_MAXENEMYNONEXTERNAL;
GLOBAL_MAXENEMYFRAMES = GLOBAL_MAXENEMYFRAMES + GLOBAL_LOADEEMS.length;
REGISTER_FIRST_ENEMY_FRAME = 0;
BLOCK_ENEMY_ONE_FRAME = true;
trace("Synced auto: " + GLOBAL_MAXENEMYNONEXTERNAL);
var loadme = new XML();
loadme.ignoreWhite = true;
loadme.onLoad = function (success) {
var _local1 = loadme.firstChild.firstChild;
while (_local1 != null) {
var _local4 = _local1.attributes.path;
var _local2 = _local1.attributes.local;
var _local5 = _local1.attributes.icon;
var _local6 = _local1.attributes.aup;
if (_local2 == undefined) {
_local2 = 0;
}
_local2 = Number(_local2);
var _local3 = false;
if (GLOBAL_LOCALSCOPE) {
_local3 = true;
} else if (_local2 == 0) {
_local3 = true;
}
if (_local3) {
if (_local6 != undefined) {
GLOBAL_CONTENT_TYPES[_local4] = int(_local6);
}
GLOBAL_LOADEEMS.push(_local4);
if (_local5 != undefined) {
GLOBAL_LOADEEMS_ICONS[GLOBAL_LOADEEMS.length - 1] = _local5;
}
GLOBAL_MAXENEMYFRAMES = GLOBAL_MAXENEMYFRAMES + 1;
}
_local1 = _local1.nextSibling;
}
trace("loaded XML " + GLOBAL_LOADEEMS);
LOADINGXML = false;
};
LOADINGXML = true;
if (GLOBAL_EXTERNAL_XML_FILEURL == undefined) {
GLOBAL_EXTERNAL_XML_FILEURL = "external.xml";
}
loadme.load(GLOBAL_EXTERNAL_XML_FILEURL);
}
if (LOADINGXML) {
LOADINGXMLCOMPLETED = false;
if (loadme.getBytesTotal() > 0) {
}
return(undefined);
}
if (!LOADINGXMLCOMPLETED) {
_parent.camControl.emptygrid.drawnyet = undefined;
_parent.camControl.emptygrid.selectnext = 1;
LOADINGXMLCOMPLETED = true;
Log("Loaded!");
pickEnemy(2);
}
if (GLOBAL_LOADEEMS_BROKEN.length > 0) {
while (GLOBAL_LOADEEMS_BROKEN.length > 0) {
var killme = GLOBAL_LOADEEMS_BROKEN.pop();
var i = 0;
while (i < GLOBAL_LOADEEMS.length) {
if (GLOBAL_LOADEEMS[i] == killme) {
GLOBAL_LOADEEMS.splice(i, 1);
if (GLOBAL_ENEMY_HASHCODES.hasOwnProperty(i)) {
delete GLOBAL_ENEMY_HASHCODES[i];
}
if (GLOBAL_ENEMY_DATA.hasOwnProperty(i)) {
delete GLOBAL_ENEMY_DATA[i];
}
GLOBAL_MAXENEMYFRAMES = GLOBAL_MAXENEMYFRAMES - 1;
trace("EXREMOVE: " + killme);
Log("EXREMOVE: " + killme);
break;
}
i++;
}
}
pickEnemy(0);
}
GLOBAL_PLAYER.aniclip.mc.G = this;
GLOBAL_ENEMY.enemy.G = this;
GLOBAL_ENEMY.enemy.enemy.G = this;
getEnemyT(GLOBAL_ENEMY).G = this;
var correctMyExternalEnemy = 0;
if (GLOBAL_ENEMY.m_name == "EXTERNAL") {
BLOCK_ENEMY_ONE_FRAME = true;
if (GLOBAL_ENEMY.m_status == "SxS*NOTLOADED") {
if (GLOBAL_ENEMIES_BY_NAME_LOADING > 0) {
pickEnemy(2);
GLOBAL_ENEMIES_BY_NAME_LOADING = 0;
var nenemies = 0;
var names = new Array();
for (var key in GLOBAL_ENEMIES_BY_NAME) {
names.push(new Object({name:key, value:GLOBAL_ENEMIES_BY_NAME[key]}));
}
names.sortOn("name", Array.CASEINSENSITIVE);
GLOBAL_ENEMIES_BY_NAME_SORTED = new Object();
var ia = 0;
while (ia < names.length) {
GLOBAL_ENEMIES_BY_NAME_SORTED[ia + 2] = names[ia].value;
ia++;
}
trace(GLOBAL_ENEMIES_BY_NAME_SORTED);
_parent.camControl.gotoAndStop(GLOBAL_GAME_GUI_TYPE);
return(undefined);
}
_stopExtSounds();
if (GLOBAL_ENEMY.m_loadurl != undefined) {
GLOBAL_ENEMY.is_external = fixURL(GLOBAL_ENEMY.m_loadurl);
GLOBAL_ENEMY.is_external_loaded = 0;
GLOBAL_ENEMY._manuallyReset = undefined;
GLOBAL_ENEMY.enemy._xscale = 100;
GLOBAL_ENEMY.enemy._yscale = 100;
if (GLOBAL_USE_SHADOWS) {
_loadMovie(_parent.enemyshad.t.enemy, GLOBAL_ENEMY.m_loadurl, "");
}
_loadMovie(GLOBAL_ENEMY.enemy, GLOBAL_ENEMY.m_loadurl, "");
} else {
GLOBAL_ENEMY.is_external = fixURL(_root.externalURL);
GLOBAL_ENEMY.is_external_loaded = 0;
GLOBAL_ENEMY._manuallyReset = undefined;
GLOBAL_ENEMY.enemy._xscale = 100;
GLOBAL_ENEMY.enemy._yscale = 100;
if (GLOBAL_USE_SHADOWS) {
_loadMovie(_parent.enemyshad.t.enemy, _root.externalURL, "");
}
_loadMovie(GLOBAL_ENEMY.enemy, _root.externalURL, "");
}
_parent.enemyshad.t.enemy.G = this;
_parent.enemyshad.t.enemy.enemy.G = this;
GLOBAL_ENEMY.m_status = "";
}
}
if (GLOBAL_ENEMY.is_external) {
if (!GLOBAL_ENEMY.is_external_loaded) {
var FMin = goPlayGetMinFrame(getEnemyT(GLOBAL_ENEMY), "idle");
if (FMin == undefined) {
FMin = 1;
}
if (getEnemyT(GLOBAL_ENEMY)._currentframe != FMin) {
correctMyExternalEnemy = 1;
}
} else if (GLOBAL_ENEMY.is_external_loaded == 1) {
correctMyExternalEnemy = 1;
GLOBAL_ENEMY.is_external_loaded = 2;
}
}
if (GLOBAL_ENEMY.m_blatently_reset > 0) {
GLOBAL_ENEMY.m_blatently_reset--;
if (GLOBAL_ENEMY.m_blatently_reset < 1) {
GLOBAL_CURRENT_BACKGROUND = GLOBAL_ENEMY.m_background;
if (GLOBAL_CURRENT_BACKGROUND == undefined) {
GLOBAL_CURRENT_BACKGROUND = "default";
}
if (GLOBAL_CURRENT_BACKGROUND instanceof flash.display.BitmapData) {
_parent.scrollbg.gotoAndStop("none");
} else {
_parent.scrollbg.gotoAndStop(GLOBAL_CURRENT_BACKGROUND);
}
}
}
var usethisenemy = GLOBAL_ENEMY._currentframe;
var continueme = true;
if (GLOBAL_ENEMY.is_external) {
if (!GLOBAL_ENEMY.is_external_loaded) {
continueme = false;
}
}
if ((GLOBAL_ENEMY.m_name == "EXTERNAL") || (GLOBAL_ENEMY.m_status == "SxS*NOTLOADED")) {
continueme = false;
}
if (GLOBAL_ENEMY_DATA.hasOwnProperty(usethisenemy)) {
if (continueme) {
var EDATA = GLOBAL_ENEMY_DATA[usethisenemy];
if (EDATA.m_scale == undefined) {
EDATA.m_scale = GLOBAL_ENEMY.m_scale;
}
if (EDATA.m_name == undefined) {
EDATA.m_name = GLOBAL_ENEMY.m_name;
}
if (EDATA.m_status == undefined) {
EDATA.m_status = GLOBAL_ENEMY.m_status;
}
if (EDATA.m_credit == undefined) {
EDATA.m_credit = GLOBAL_ENEMY.m_credit;
}
if (EDATA.maxhp == undefined) {
EDATA.maxhp = GLOBAL_ENEMY.maxhp;
}
if (EDATA.enemyHasDisplayedWarningFor == undefined) {
EDATA.enemyHasDisplayedWarningFor = 0;
}
if (EDATA.enemyContentMaxType == undefined) {
EDATA.enemyContentMaxType = assignContentTypeCheck(getEnemyURL(usethisenemy));
}
if (GLOBAL_ENEMIES_BY_NAME[EDATA.m_name] == undefined) {
GLOBAL_ENEMIES_BY_NAME[EDATA.m_name] = GLOBAL_ENEMY._currentframe;
}
}
} else if (continueme) {
var EDATA = new Object();
EDATA.m_scale = GLOBAL_ENEMY.m_scale;
EDATA.m_name = GLOBAL_ENEMY.m_name;
EDATA.m_status = GLOBAL_ENEMY.m_status;
EDATA.m_credit = GLOBAL_ENEMY.m_credit;
EDATA.maxhp = GLOBAL_ENEMY.maxhp;
EDATA.enemyHasDisplayedWarningFor = 0;
EDATA.enemyContentMaxType = assignContentTypeCheck(getEnemyURL(usethisenemy));
GLOBAL_ENEMIES_BY_NAME[EDATA.m_name] = GLOBAL_ENEMY._currentframe;
GLOBAL_ENEMY_DATA[usethisenemy] = EDATA;
}
if (GLOBAL_ENEMIES_BY_NAME_LOADING > 0) {
pickEnemy(Math.floor(GLOBAL_ENEMIES_BY_NAME_LOADING) + 1);
GLOBAL_ENEMIES_BY_NAME_LOADING = GLOBAL_ENEMIES_BY_NAME_LOADING + 0.5;
_parent.camControl.gotoAndStop("loading");
_parent.scrollbg._visible = false;
return(undefined);
}
_parent.scrollbg._visible = true;
if (GLOBAL_GAME_GUI_TYPE == "gamecustom") {
var ECAM = _parent.camControl;
var EGUI = ECAM.embedgui;
if (EGUI != undefined) {
if (EGUI.mc == undefined) {
EGUI.createEmptyMovieClip("mc", 0);
}
if (EGUI.mc != undefined) {
var eGUI = EGUI.mc;
if (EGUI.MovieClipLoaderURL != GLOBAL_GAME_GUI_TYPE_PATH) {
_loadGui(eGUI, GLOBAL_GAME_GUI_TYPE_PATH);
trace("TRUE load gui");
} else if (EGUI.MovieClipLoaderStatus == 3) {
if (EGUI.MovieClipLoaderURL == GLOBAL_GAME_GUI_TYPE_PATH) {
if (Key.isDown(8) || (Key.isDown(27))) {
setCustomGui(0);
} else {
eGUI.gotoAndStop(GLOBAL_GAME_GUI_TYPE_FRAME);
eGUI._visible = true;
eGUI.update();
}
} else {
trace("not correctly loaded...");
setCustomGui(0);
}
} else if (EGUI.MovieClipLoaderStatus < 0) {
trace((((("not loaded..." + EGUI.MovieClipLoaderStatus) + " ") + EGUI) + " ") + eGUI);
Log("Could not load: " + GLOBAL_GAME_GUI_TYPE_PATH);
setCustomGui(0);
} else {
trace((((((((((EGUI.MovieClipLoaderURL + " ") + GLOBAL_GAME_GUI_TYPE_PATH) + " ") + GLOBAL_GAME_GUI_TYPE) + " ") + EGUI.MovieClipLoaderStatus) + " ") + GLOBAL_GAME_GUI_TYPE_PATH) + " ") + GLOBAL_GAME_GUI_TYPE_FRAME);
}
}
}
}
var inputKeyAction = (Key.isDown(101) || (Key.isDown(32)));
var inputKeyLeft = (Key.isDown(100) || (Key.isDown(37)));
var inputKeyRight = (Key.isDown(102) || (Key.isDown(39)));
var inputKeyUp = (Key.isDown(104) || (Key.isDown(38)));
var inputKeyDown = (Key.isDown(98) || (Key.isDown(40)));
var inputMouseX = ((_parent.camControl.mouseX - (-(_parent.camControl.fixX / 2))) / _parent.camControl.fixX);
var inputMouseY = ((_parent.camControl.mouseY - (-(_parent.camControl.fixY / 2))) / _parent.camControl.fixY);
var inputMouseB = _parent.m_input_raw_mouse_down;
var inputMouseValid = false;
if ((inputMouseX >= 0) && (inputMouseX <= 1)) {
if ((inputMouseY >= 0) && (inputMouseY <= 1)) {
inputMouseValid = true;
}
}
var inputB = (1 & (Key.isDown(101) || (Key.isDown(32))));
var inputL = (1 & (Key.isDown(100) || (Key.isDown(37))));
var inputR = (1 & (Key.isDown(102) || (Key.isDown(39))));
var inputU = (1 & (Key.isDown(104) || (Key.isDown(38))));
var inputD = (1 & (Key.isDown(98) || (Key.isDown(40))));
_parent.camControl.mousecursor.gotoAndStop("none");
if (inputMouseValid) {
var mcframe = "c";
var usableMousePos = true;
if ((inputMouseY < 0.16) || (inputMouseY > 0.86)) {
usableMousePos = false;
}
if (usableMousePos) {
if (inputMouseB) {
var useactioncode = false;
if (inputMouseX < 0.5) {
} else {
useactioncode = true;
}
var dx = (inputMouseX / 0.5);
var dy = (inputMouseY / 1);
if (dx > 1) {
dx = dx - 1;
mcframe = mcframe + "A";
}
if (useactioncode) {
inputB = inputB | 1;
if (dx < 0.333) {
inputL = inputL | 1;
} else if (dx > 0.666) {
inputR = inputR | 1;
}
if (dy < 0.333) {
inputU = inputU | 1;
} else if (dy > 0.666) {
inputD = inputD | 1;
}
} else if (Math.abs(dx - 0.5) > Math.abs(dy - 0.5)) {
if (dx < 0.333) {
inputL = inputL | 1;
} else if (dx > 0.666) {
inputR = inputR | 1;
}
} else if (dy < 0.333) {
inputU = inputU | 1;
} else if (dy > 0.666) {
inputD = inputD | 1;
}
}
var dx = (inputMouseX / 0.5);
var dy = (inputMouseY / 1);
if (dx > 1) {
dx = dx - 1;
mcframe = mcframe + "A";
if (dx < 0.333) {
mcframe = mcframe + "L";
} else if (dx > 0.666) {
mcframe = mcframe + "R";
}
if (dy < 0.333) {
mcframe = mcframe + "U";
} else if (dy > 0.666) {
mcframe = mcframe + "D";
}
} else if (Math.abs(dx - 0.5) > Math.abs(dy - 0.5)) {
if (dx < 0.333) {
mcframe = mcframe + "L";
} else if (dx > 0.666) {
mcframe = mcframe + "R";
}
} else if (dy < 0.333) {
mcframe = mcframe + "U";
} else if (dy > 0.666) {
mcframe = mcframe + "D";
}
}
_parent.camControl.mousecursor.gotoAndStop(mcframe);
}
if (GLOBAL_OPTIONS.hasOwnProperty("automaticBarb")) {
if (GLOBAL_OPTIONS.automaticBarb.enabled == 1) {
GLOBAL_OPTIONS.automaticBarb.value = GLOBAL_OPTIONS.automaticBarb.value + 1;
if (GLOBAL_PLAYER.hp < 1) {
GLOBAL_OPTIONS.automaticBarb.healthdown = GLOBAL_OPTIONS.automaticBarb.healthdown - 1;
} else {
GLOBAL_OPTIONS.automaticBarb.healthdown = 300;
}
if (GLOBAL_OPTIONS.automaticBarb.healthdown > 0) {
GLOBAL_PLAYER_TAPS.D = -1;
if (!isPlayerConsumed(GLOBAL_PLAYER)) {
var lasttype = GLOBAL_OPTIONS.automaticBarb.aitype;
GLOBAL_OPTIONS.automaticBarb.aiframes = GLOBAL_OPTIONS.automaticBarb.aiframes - 1;
if (GLOBAL_OPTIONS.automaticBarb.aiframes < 1) {
lasttype = 0;
}
if (lasttype == 1) {
inputB = 0;
inputL = 0;
inputR = 0;
inputU = 0;
inputD = 0;
} else if (lasttype == 2) {
var dist = playerDistanceNF(GLOBAL_ENEMY);
if (dist > 30) {
inputL = 1;
} else if (dist < -30) {
inputR = 1;
} else if (Math.random() < 0.1) {
inputB = 1;
inputR = 0;
inputL = 0;
inputU = 0;
inputD = 0;
switch (Math.floor(Math.random() * 3)) {
case 1 :
inputU = 1;
break;
case 2 :
inputD = 1;
break;
default :
if (dist > 0) {
inputL = 1;
} else {
if (dist >= 0) {
break;
}
inputR = 1;
}
}
}
} else if (lasttype == 3) {
var dist = playerDistanceNF(GLOBAL_ENEMY);
if (dist > 0) {
inputR = 1;
GLOBAL_TAPDASH_DIRECTION = 1;
} else if (dist < 0) {
inputL = 1;
GLOBAL_TAPDASH_DIRECTION = -1;
}
GLOBAL_PLAYER.in_movex = GLOBAL_TAPDASH_DIRECTION;
GLOBAL_PLAYER.in_movey = 0;
GLOBAL_PLAYER.in_action = false;
GLOBAL_TAPDASH_STATE = 17;
GLOBAL_PLAYER.inputXSeq.clear();
GLOBAL_PLAYER.s_running = 1;
GLOBAL_OPTIONS.automaticBarb.aitype = 0;
} else if (lasttype == 4) {
var dist = playerDistanceNF(GLOBAL_ENEMY);
if (Math.random() < 0.2) {
if (dist > 0) {
inputL = 1;
} else if (dist < 0) {
inputR = 1;
}
inputB = 1;
switch (Math.floor(Math.random() * 3)) {
case 1 :
inputU = 1;
break;
case 2 :
inputD = 1;
break;
default :
if (dist > 0) {
inputL = 1;
} else {
if (dist >= 0) {
break;
}
inputR = 1;
}
}
}
} else {
GLOBAL_OPTIONS.automaticBarb.aitype = 1 + Math.floor(Math.random() * 4);
GLOBAL_OPTIONS.automaticBarb.aiframes = 30 + Math.floor((Math.random() * 30) * 5);
}
} else {
var allescapeanims = {};
var allnonescapes = [];
var TAS = enemyGetAnimStruct();
if (TAS != undefined) {
var i = 0;
while (i < GLOBAL_ALL_ESCAPE_KEYS.length) {
var hasit = getNextAnimation(TAS, GLOBAL_ALL_ESCAPE_KEYS[i]);
if (TAS.hasOwnProperty(GLOBAL_ALL_ESCAPE_KEYS[i].toLowerCase())) {
hasit = TAS[GLOBAL_ALL_ESCAPE_KEYS[i].toLowerCase()];
}
if (hasit != "") {
allnonescapes.push(GLOBAL_ALL_ESCAPE_KEYS[i]);
}
i++;
}
}
var TDS = enemyGetDigestionStruct();
if (TDS != undefined) {
var inuse = new Object();
var uniqueanims = new Object();
var escapeid = 0;
while (escapeid < TDS.escapes.length) {
var D = TDS.escapes[escapeid];
var din = 0;
while (din < D.inputs.length) {
var dirmoved = D.inputs[din];
if (TDS.blockescapes != undefined) {
if ((dirmoved == "E") || (dirmoved == "W")) {
// unexpected jump
}
} else {
if (inuse[dirmoved] == undefined) {
inuse[dirmoved] = new Array();
}
inuse[dirmoved].push(D.anim);
if (D.anim.length > 0) {
if (uniqueanims.hasOwnProperty(D.anim)) {
} else {
uniqueanims[D.anim] = [];
}
if (dirmoved.length > 0) {
uniqueanims[D.anim].push(dirmoved);
}
}
}
din++;
}
escapeid++;
}
allescapeanims = uniqueanims;
}
if (GLOBAL_OPTIONS.automaticBarb.hasOwnProperty("struggledata")) {
} else {
GLOBAL_OPTIONS.automaticBarb.struggledata = {};
GLOBAL_OPTIONS.automaticBarb.struggledata.delay = 0;
GLOBAL_OPTIONS.automaticBarb.struggledata.action = [0, 0, 0, 0, 0];
GLOBAL_OPTIONS.automaticBarb.struggledata.tryescapecount = 0;
}
var strgdata = GLOBAL_OPTIONS.automaticBarb.struggledata;
if (strgdata.method == "pickone") {
debug_autoai = false;
if (strgdata.delay > 0) {
inputL = 0;
inputR = 0;
inputU = 0;
inputD = 0;
inputB = 0;
if (strgdata.action[0] > 0) {
inputL = 1;
}
if (strgdata.action[1] > 0) {
inputR = 1;
}
if (strgdata.action[2] > 0) {
inputU = 1;
}
if (strgdata.action[3] > 0) {
inputD = 1;
}
if (strgdata.action[4] > 0) {
inputB = 1;
}
strgdata.action[0] = strgdata.action[0] - 1;
strgdata.action[1] = strgdata.action[1] - 1;
strgdata.action[2] = strgdata.action[2] - 1;
strgdata.action[3] = strgdata.action[3] - 1;
strgdata.action[4] = strgdata.action[4] - 1;
strgdata.delay = strgdata.delay - 1;
} else {
inputB = 0;
inputL = 0;
inputR = 0;
inputU = 0;
inputD = 0;
var sfactor = (0.5 + (0.5 * Math.cos((Math.PI*2) * ((GLOBAL_OPTIONS.automaticBarb.value % 300) / 300))));
strgdata.delay = 3 + Math.abs((sfactor * Math.random()) * 120);
var escapestring = "";
for (var k in allescapekeys) {
escapestring = escapestring + (allescapekeys[k] + ",");
}
for (var k in allescapeanims) {
escapestring = escapestring + (k + ",");
for (var k2 in allescapeanims[k]) {
escapestring = escapestring + (allescapeanims[k][k2] + ",");
}
}
for (var k in allnonescapes) {
escapestring = escapestring + (k + ",");
}
strgdata.action = [0, 0, 0, 0, 0, 120, 120, 120, 120];
strgdata.tryescapecount = strgdata.tryescapecount + 1;
if ((strgdata.estring != escapestring) or (strgdata.tryescapecount > strgdata.tryescapemaxcount)) {
strgdata.estring = escapestring;
var escapekeys = [];
for (var k in allescapeanims) {
if (allescapeanims[k].length > 0) {
escapekeys.push(k);
}
}
var nonescapekeys = allnonescapes;
strgdata.tryescape = undefined;
strgdata.tryescapedata = [""];
var chanceit = chance(87.5);
if (chanceit and (escapekeys.length > 0)) {
strgdata.tryescape = histPick(escapekeys);
strgdata.tryescapedata = allescapeanims[strgdata.tryescape];
strgdata.tryescapemaxcount = 1 + Math.floor(Math.random() * 20);
if (debug_autoai) {
trace("Escape");
trace((escapekeys + " ") + escapekeys.length);
trace(strgdata.tryescape);
trace(allescapeanims[strgdata.tryescape]);
}
} else if (nonescapekeys.length > 0) {
strgdata.tryescape = histPick(nonescapekeys);
strgdata.tryescapedata = nonescapekeys;
strgdata.tryescapemaxcount = 1 + Math.floor(Math.random() * 3);
if (debug_autoai) {
trace("Non escape");
trace(nonescapekeys);
trace(strgdata.tryescape);
trace(allnonescapes[strgdata.tryescape]);
}
}
strgdata.tryescapecount = 0;
if (debug_autoai) {
trace((("trying selected: " + strgdata.tryescape) + " ") + strgdata.tryescapedata);
trace(strgdata.tryescapedata);
trace(escapekeys);
trace(escapestring);
}
}
var thisone = histPick(strgdata.tryescapedata);
if (thisone) {
var Amap = {};
var TMins = {};
Amap. = [0, 0, 0, 0, 0];
Amap.W = [0, 0, 0, 0, 0];
Amap.E = [0, 0, 0, 0, 0];
Amap.L = [120, 0, 0, 0, 0];
Amap.R = [0, 120, 0, 0, 0];
Amap.U = [0, 0, 120, 0, 0];
Amap.D = [0, 0, 0, 120, 0];
Amap.B = [0, 0, 0, 0, 120];
Amap.BL = [120, 0, 0, 0, 120];
Amap.BR = [0, 120, 0, 0, 120];
Amap.BU = [0, 0, 120, 0, 120];
Amap.BD = [0, 0, 0, 120, 120];
Amap.TL = [3, 0, 0, 0, 0];
Amap.TR = [0, 3, 0, 0, 0];
Amap.TU = [0, 0, 3, 0, 0];
Amap.TD = [0, 0, 0, 3, 0];
Amap.HL = [30, 0, 0, 0, 0];
TMins.HL = 30;
Amap.HR = [0, 30, 0, 0, 0];
TMins.HR = 30;
Amap.HU = [0, 0, 30, 0, 0];
TMins.HU = 30;
Amap.HD = [0, 0, 0, 30, 0];
TMins.HD = 30;
if (Amap.hasOwnProperty(thisone)) {
strgdata.action = Amap[thisone];
if (TMins.hasOwnProperty(thisone)) {
strgdata.delay = Math.min(strgdata.delay, TMins[thisone]);
}
} else {
trace("MISSING ACTION: " + thisone);
}
}
}
GLOBAL_OPTIONS.automaticBarb.struggledata = strgdata;
} else {
var sfactor = (0.5 + (0.5 * Math.cos((Math.PI*2) * ((GLOBAL_OPTIONS.automaticBarb.value % 300) / 300))));
var dothings = Math.floor((30 * ((0.0333333333333333 * sfactor) + 0.0333333333333333)) * Math.random());
if (dothings) {
inputB = Math.floor(Math.random() * 1.5);
switch (Math.floor(Math.random() * 4)) {
case 0 :
inputL = 1;
break;
case 1 :
inputR = 1;
break;
case 2 :
inputU = 1;
break;
case 3 :
inputD = 1;
}
}
}
}
} else {
resetPlayer();
}
} else {
GLOBAL_OPTIONS.automaticBarb.value = 0;
GLOBAL_OPTIONS.automaticBarb.healthdown = 300;
}
}
if (inputL) {
GLOBAL_PLAYER_TAPS.L = GLOBAL_PLAYER_TAPS.L + 1;
} else {
GLOBAL_PLAYER_TAPS.L = 0;
}
if (inputR) {
GLOBAL_PLAYER_TAPS.R = GLOBAL_PLAYER_TAPS.R + 1;
} else {
GLOBAL_PLAYER_TAPS.R = 0;
}
if (inputU) {
GLOBAL_PLAYER_TAPS.U = GLOBAL_PLAYER_TAPS.U + 1;
} else {
GLOBAL_PLAYER_TAPS.U = 0;
}
if (inputD) {
GLOBAL_PLAYER_TAPS.D = GLOBAL_PLAYER_TAPS.D + 1;
} else {
GLOBAL_PLAYER_TAPS.D = 0;
}
if (inputB) {
GLOBAL_PLAYER_TAPS.B = GLOBAL_PLAYER_TAPS.B + 1;
} else {
GLOBAL_PLAYER_TAPS.B = 0;
}
GLOBAL_PRESYNC(this, getEnemyT(GLOBAL_ENEMY), undefined);
GLOBAL_CAMERA_ZOOMPLAYER = (GLOBAL_CAMERA_SCALE_FACTOR * getPlayerScale()) / 100;
var cancelthisframe = 0;
if (GLOBAL_QTE_DATA.active) {
if (GLOBAL_QTE_DATA.qliveevent > 0) {
cancelthisframe = 0;
} else {
cancelthisframe = 1;
}
var QT = _parent.camControl.mcqte;
GLOBAL_QTE_DATA.fadetime = 10;
var deltaxm = 128;
var deltaym = -40;
if (enemyFacingRight()) {
deltaxm = Math.abs(deltaxm);
} else {
deltaxm = -Math.abs(deltaxm);
}
QT._x = deltaxm;
QT._y = deltaym;
QT._visible = true;
if (!GLOBAL_PAUSE) {
GLOBAL_QTE_DATA.timeleft = GLOBAL_QTE_DATA.timeleft - 1;
}
if (GLOBAL_QTE_DATA.timeleft < 0) {
GLOBAL_QTE_DATA.active = false;
}
if (GLOBAL_QTE_DATA.qliveevent > 0) {
} else if (getEnemyT(GLOBAL_ENEMY).camera != undefined) {
var offy = 0;
var cbounds = getEnemyT(GLOBAL_ENEMY).camera.getBounds(_root);
var useviewbox = false;
if (cbounds.xMax != undefined) {
if (((cbounds.xMax - cbounds.xMin) > 2) && ((cbounds.yMax - cbounds.yMin) > 2)) {
useviewbox = true;
}
}
if (useviewbox) {
var xsize = (cbounds.xMax - cbounds.xMin);
var ysize = (cbounds.yMax - cbounds.yMin);
var ysp = (ysize * proposcale);
if (xsize >= ysp) {
ysize = xsize / proposcale;
} else {
xsize = ysize * proposcale;
}
var newx = (0.5 * (cbounds.xMin + cbounds.xMax));
var newy = (0.5 * (cbounds.yMin + cbounds.yMax));
var newxscale = (xsize / (proposcalex / 100));
var newyscale = (ysize / (proposcaley / 100));
_parent.camControl._x = newx;
_parent.camControl._y = newy;
_parent.camControl._xscale = newxscale;
_parent.camControl._yscale = newyscale;
delmove = (160 - newx) * decayspeed;
} else {
_parent.camControl.resetStage();
var offx = (((GLOBAL_ENEMY._xscale / Math.abs(GLOBAL_ENEMY._xscale)) * (getEnemyT(GLOBAL_ENEMY)._xscale / Math.abs(getEnemyT(GLOBAL_ENEMY)._xscale))) * getEnemyT(GLOBAL_ENEMY).camera._x);
delmove = ((160 - GLOBAL_ENEMY._x) - offx) * decayspeed;
if (!isPlayerConsumed(GLOBAL_PLAYER)) {
cameraComputeZoomScale(GLOBAL_PLAYER, delmove);
} else {
cameraComputeZoomScale(GLOBAL_ENEMY, delmove);
}
}
}
_parent.camControl.emenydir.gotoAndStop("qte");
_traceF1("QTE Active");
if (GLOBAL_QTE_DATA.type == 1) {
if (GLOBAL_QTE_DATA.qsetup == 0) {
playerTapReset();
var barray = new Array("L", "D", "U", "R");
GLOBAL_QTE_DATA.qbutton = barray[Math.floor(Math.random() * barray.length)];
GLOBAL_QTE_DATA.qsetup = 1;
}
QT.gotoAndStop(GLOBAL_QTE_DATA.qbutton);
if (playerTapGet() == GLOBAL_QTE_DATA.qbutton) {
GLOBAL_QTE_DATA.active = false;
GLOBAL_QTE_DATA.result = 1;
}
} else if (GLOBAL_QTE_DATA.type == 2) {
if (GLOBAL_QTE_DATA.qsetup == 0) {
playerTapReset();
var barray = new Array("B", "L", "D", "U", "R");
GLOBAL_QTE_DATA.qbutton = barray[Math.floor(Math.random() * barray.length)];
GLOBAL_QTE_DATA.qsetup = 1;
}
QT.gotoAndStop(GLOBAL_QTE_DATA.qbutton);
if (playerTapGet() == GLOBAL_QTE_DATA.qbutton) {
GLOBAL_QTE_DATA.active = false;
GLOBAL_QTE_DATA.result = 1;
}
} else if (GLOBAL_QTE_DATA.type == 3) {
if (GLOBAL_QTE_DATA.qsetup == 0) {
playerTapReset();
GLOBAL_QTE_DATA.qbuttons = new Array("L", "D", "U", "R");
GLOBAL_QTE_DATA.qframe = "MASHDIR";
GLOBAL_QTE_DATA.qsetup = 1;
GLOBAL_QTE_DATA.qsmashcount = 0;
GLOBAL_QTE_DATA.qdeltatime = 0;
GLOBAL_QTE_DATA.qsmashmark = GLOBAL_QTE_DATA.timeleft / 7;
if (GLOBAL_QTE_DATA.qsmashmark < 1) {
GLOBAL_QTE_DATA.qsmashmark = 1;
}
}
QT.gotoAndStop(GLOBAL_QTE_DATA.qframe);
QT.progressSet(GLOBAL_QTE_DATA.qsmashcount / GLOBAL_QTE_DATA.qsmashmark);
GLOBAL_QTE_DATA.qdeltatime = GLOBAL_QTE_DATA.qdeltatime + 1;
var tappedit = 0;
var i = 0;
while (i < GLOBAL_QTE_DATA.qbuttons.length) {
if (playerTapGet() == GLOBAL_QTE_DATA.qbuttons[i]) {
tappedit = tappedit + 1;
}
i++;
}
if (tappedit == 1) {
GLOBAL_QTE_DATA.qsmashcount++;
}
if (GLOBAL_QTE_DATA.qsmashcount > GLOBAL_QTE_DATA.qsmashmark) {
GLOBAL_QTE_DATA.active = false;
GLOBAL_QTE_DATA.result = 1;
}
} else {
if (GLOBAL_QTE_DATA.qsetup == 0) {
playerTapReset();
GLOBAL_QTE_DATA.qsetup = 1;
}
QT.gotoAndStop("ANY");
if (playerTapGet().length > 0) {
GLOBAL_QTE_DATA.active = false;
GLOBAL_QTE_DATA.result = 1;
}
}
if (GLOBAL_QTE_DATA.qliveevent > 0) {
} else {
if (!GLOBAL_QTE_DATA.active) {
trace(" Should QTE play ");
if (!GLOBAL_PAUSE) {
unpauseall();
}
if (GLOBAL_QTE_DATA.result) {
QT.gotoAndStop("OK");
} else {
QT.gotoAndStop("FAIL");
}
} else {
GLOBAL_ENEMY.enemy.stop();
getEnemyT(GLOBAL_ENEMY).stop();
GLOBAL_PLAYER.stop();
GLOBAL_PLAYER.aniclip.mc.stop();
GLOBAL_PLAYER.aniclip.mc.mc.stop();
}
if (GLOBAL_SHOW_CONSUMED_PLAYER) {
if (isPlayerConsumed(GLOBAL_PLAYER)) {
GLOBAL_PLAYER._alpha = 100;
} else {
GLOBAL_PLAYER._alpha = 100;
}
} else if (isPlayerConsumed(GLOBAL_PLAYER)) {
GLOBAL_PLAYER._alpha = 0;
} else {
GLOBAL_PLAYER._alpha = 100;
}
}
}
var hasenemyID = enemyGetID();
if (GLOBAL_ENEMY_DATA.hasOwnProperty(hasenemyID)) {
if (GLOBAL_ENEMY_DATA[hasenemyID].enemyContentMaxType > USER_MINIMUM_CONTENT_CODE) {
if (GLOBAL_ENEMY_DATA[hasenemyID].enemyHasDisplayedWarningFor < 30) {
if (USER_ACCEPTED_AUP > 0) {
GLOBAL_ENEMY_DATA[hasenemyID].enemyHasDisplayedWarningFor = 999;
} else if (USER_ACCEPTED_AUP < 0) {
pickEnemy(GLOBAL_MAXENEMYNONEXTERNAL + 1);
} else {
cancelthisframe = true;
pauseall();
GLOBAL_ENEMY_DATA[hasenemyID].enemyHasDisplayedWarningFor = 1;
_parent.camControl.gotoAndStop("aup");
}
}
}
}
if (USER_ACCEPTED_AUP != 0) {
USER_ACCEPTED_AUP = 0;
}
if (cancelthisframe) {
} else if (!GLOBAL_PAUSE) {
if (inputL) {
GLOBAL_PLAYER_INPUTTRACKING.L.down = GLOBAL_PLAYER_INPUTTRACKING.L.down + 1;
GLOBAL_PLAYER_INPUTTRACKING.L.up = 0;
} else {
GLOBAL_PLAYER_INPUTTRACKING.L.up = GLOBAL_PLAYER_INPUTTRACKING.L.up + 1;
GLOBAL_PLAYER_INPUTTRACKING.L.down = 0;
}
if (inputR) {
GLOBAL_PLAYER_INPUTTRACKING.R.down = GLOBAL_PLAYER_INPUTTRACKING.R.down + 1;
GLOBAL_PLAYER_INPUTTRACKING.R.up = 0;
} else {
GLOBAL_PLAYER_INPUTTRACKING.R.up = GLOBAL_PLAYER_INPUTTRACKING.R.up + 1;
GLOBAL_PLAYER_INPUTTRACKING.R.down = 0;
}
if (inputU) {
GLOBAL_PLAYER_INPUTTRACKING.U.down = GLOBAL_PLAYER_INPUTTRACKING.U.down + 1;
GLOBAL_PLAYER_INPUTTRACKING.U.up = 0;
} else {
GLOBAL_PLAYER_INPUTTRACKING.U.up = GLOBAL_PLAYER_INPUTTRACKING.U.up + 1;
GLOBAL_PLAYER_INPUTTRACKING.U.down = 0;
}
if (inputD) {
GLOBAL_PLAYER_INPUTTRACKING.D.down = GLOBAL_PLAYER_INPUTTRACKING.D.down + 1;
GLOBAL_PLAYER_INPUTTRACKING.D.up = 0;
} else {
GLOBAL_PLAYER_INPUTTRACKING.D.up = GLOBAL_PLAYER_INPUTTRACKING.D.up + 1;
GLOBAL_PLAYER_INPUTTRACKING.D.down = 0;
}
if (inputB) {
GLOBAL_PLAYER_INPUTTRACKING.B.down = GLOBAL_PLAYER_INPUTTRACKING.B.down + 1;
GLOBAL_PLAYER_INPUTTRACKING.B.up = 0;
} else {
GLOBAL_PLAYER_INPUTTRACKING.B.up = GLOBAL_PLAYER_INPUTTRACKING.B.up + 1;
GLOBAL_PLAYER_INPUTTRACKING.B.down = 0;
}
if (GLOBAL_QTE_DATA.fadetime > 0) {
GLOBAL_QTE_DATA.fadetime = GLOBAL_QTE_DATA.fadetime - 1;
} else {
_parent.camControl.mcqte._visible = false;
_parent.camControl.mcqte.gotoAndStop(1);
}
if (inputB) {
GLOBAL_PLAYER.in_action = true;
} else {
GLOBAL_PLAYER.in_action = false;
}
if (inputL) {
GLOBAL_PLAYER.in_movex = -1;
GLOBAL_PLAYER.inputXSeq.push(-1);
} else if (inputR) {
GLOBAL_PLAYER.in_movex = 1;
GLOBAL_PLAYER.inputXSeq.push(1);
} else {
GLOBAL_PLAYER.in_movex = 0;
GLOBAL_PLAYER.inputXSeq.push(0);
}
while (GLOBAL_PLAYER.inputXSeq.length > 30) {
GLOBAL_PLAYER.inputXSeq.splice(0, 1);
}
if (inputU) {
GLOBAL_PLAYER.in_movey = 1;
} else if (inputD) {
GLOBAL_PLAYER.in_movey = -1;
} else {
GLOBAL_PLAYER.in_movey = 0;
}
for (var ki in GLOBAL_HOLD_ANIMATION_PRIORITY) {
var ikey = GLOBAL_HOLD_ANIMATION_PRIORITY[ki];
var current_d = GLOBAL_HOLD_ANIMATION_INPUTS[ikey].down;
var released_d = GLOBAL_HOLD_ANIMATION_INPUTS[ikey].rel;
var holdconstant = GLOBAL_HOLD_ANIMATION_FRAMES[ikey];
if ((released_d >= holdconstant) || (current_d >= holdconstant)) {
GLOBAL_HOLD_ANIMATION_INPUTS[ikey].lckh = GLOBAL_HOLD_ANIMATION_INPUTS[ikey].lckh + 1;
}
}
GLOBAL_HOLD_ANIMATION_INPUTS.l.rel = 0;
GLOBAL_HOLD_ANIMATION_INPUTS.d.rel = 0;
GLOBAL_HOLD_ANIMATION_INPUTS.u.rel = 0;
GLOBAL_HOLD_ANIMATION_INPUTS.r.rel = 0;
if (GLOBAL_PLAYER.in_movex > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.r.down = GLOBAL_HOLD_ANIMATION_INPUTS.r.down + 1;
if (GLOBAL_HOLD_ANIMATION_INPUTS.r.up > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.r.up = 0;
GLOBAL_HOLD_ANIMATION_INPUTS.r.lckh = 1;
}
if (GLOBAL_HOLD_ANIMATION_INPUTS.l.down > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.l.rel = GLOBAL_HOLD_ANIMATION_INPUTS.l.down;
GLOBAL_HOLD_ANIMATION_INPUTS.l.down = 0;
}
GLOBAL_HOLD_ANIMATION_INPUTS.l.up = GLOBAL_HOLD_ANIMATION_INPUTS.l.up + 1;
} else if (GLOBAL_PLAYER.in_movex < 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.l.down = GLOBAL_HOLD_ANIMATION_INPUTS.l.down + 1;
if (GLOBAL_HOLD_ANIMATION_INPUTS.l.up > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.l.up = 0;
GLOBAL_HOLD_ANIMATION_INPUTS.l.lckh = 1;
}
if (GLOBAL_HOLD_ANIMATION_INPUTS.r.down > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.r.rel = GLOBAL_HOLD_ANIMATION_INPUTS.r.down;
GLOBAL_HOLD_ANIMATION_INPUTS.r.down = 0;
}
GLOBAL_HOLD_ANIMATION_INPUTS.r.up = GLOBAL_HOLD_ANIMATION_INPUTS.r.up + 1;
} else {
if (GLOBAL_HOLD_ANIMATION_INPUTS.l.down > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.l.rel = GLOBAL_HOLD_ANIMATION_INPUTS.l.down;
GLOBAL_HOLD_ANIMATION_INPUTS.l.down = 0;
}
GLOBAL_HOLD_ANIMATION_INPUTS.l.up = GLOBAL_HOLD_ANIMATION_INPUTS.l.up + 1;
if (GLOBAL_HOLD_ANIMATION_INPUTS.r.down > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.r.rel = GLOBAL_HOLD_ANIMATION_INPUTS.r.down;
GLOBAL_HOLD_ANIMATION_INPUTS.r.down = 0;
}
GLOBAL_HOLD_ANIMATION_INPUTS.r.up = GLOBAL_HOLD_ANIMATION_INPUTS.r.up + 1;
}
if (GLOBAL_PLAYER.in_movey > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.u.down = GLOBAL_HOLD_ANIMATION_INPUTS.u.down + 1;
if (GLOBAL_HOLD_ANIMATION_INPUTS.u.up > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.u.up = 0;
GLOBAL_HOLD_ANIMATION_INPUTS.u.lckh = 1;
}
if (GLOBAL_HOLD_ANIMATION_INPUTS.d.down > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.d.rel = GLOBAL_HOLD_ANIMATION_INPUTS.d.down;
GLOBAL_HOLD_ANIMATION_INPUTS.d.down = 0;
}
GLOBAL_HOLD_ANIMATION_INPUTS.d.up = GLOBAL_HOLD_ANIMATION_INPUTS.d.up + 1;
} else if (GLOBAL_PLAYER.in_movey < 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.d.down = GLOBAL_HOLD_ANIMATION_INPUTS.d.down + 1;
if (GLOBAL_HOLD_ANIMATION_INPUTS.d.up > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.d.up = 0;
GLOBAL_HOLD_ANIMATION_INPUTS.d.lckh = 1;
}
if (GLOBAL_HOLD_ANIMATION_INPUTS.u.down > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.u.rel = GLOBAL_HOLD_ANIMATION_INPUTS.u.down;
GLOBAL_HOLD_ANIMATION_INPUTS.u.down = 0;
}
GLOBAL_HOLD_ANIMATION_INPUTS.u.up = GLOBAL_HOLD_ANIMATION_INPUTS.u.up + 1;
} else {
if (GLOBAL_HOLD_ANIMATION_INPUTS.d.down > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.d.rel = GLOBAL_HOLD_ANIMATION_INPUTS.d.down;
GLOBAL_HOLD_ANIMATION_INPUTS.d.down = 0;
}
GLOBAL_HOLD_ANIMATION_INPUTS.d.up = GLOBAL_HOLD_ANIMATION_INPUTS.d.up + 1;
if (GLOBAL_HOLD_ANIMATION_INPUTS.u.down > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.u.rel = GLOBAL_HOLD_ANIMATION_INPUTS.u.down;
GLOBAL_HOLD_ANIMATION_INPUTS.u.down = 0;
}
GLOBAL_HOLD_ANIMATION_INPUTS.u.up = GLOBAL_HOLD_ANIMATION_INPUTS.u.up + 1;
}
GLOBAL_HOLD_ANIMATION_INPUTS.b.rel = 0;
if (GLOBAL_PLAYER.in_action) {
GLOBAL_HOLD_ANIMATION_INPUTS.b.down = GLOBAL_HOLD_ANIMATION_INPUTS.b.down + 1;
if (GLOBAL_HOLD_ANIMATION_INPUTS.b.up > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.b.up = 0;
GLOBAL_HOLD_ANIMATION_INPUTS.b.lckh = 1;
}
} else {
if (GLOBAL_HOLD_ANIMATION_INPUTS.b.down > 0) {
GLOBAL_HOLD_ANIMATION_INPUTS.b.rel = GLOBAL_HOLD_ANIMATION_INPUTS.b.down;
GLOBAL_HOLD_ANIMATION_INPUTS.b.down = 0;
}
GLOBAL_HOLD_ANIMATION_INPUTS.b.up = GLOBAL_HOLD_ANIMATION_INPUTS.b.up + 1;
}
if (GLOBAL_PLAYER_MODE_DETECT < 0) {
GLOBAL_PLAYER_MODE_DETECT = 0;
} else {
GLOBAL_PLAYER_MODE_DETECT = GLOBAL_PLAYER_MODE_DETECT - 0.08;
}
if (GLOBAL_PLAYER_TAPS.D == 1) {
GLOBAL_PLAYER_MODE_DETECT = GLOBAL_PLAYER_MODE_DETECT + 1;
if (GLOBAL_PLAYER_MODE_DETECT > 3) {
setPlayerMode();
GLOBAL_PLAYER_MODE_DETECT = 0;
}
}
if ((!GLOBAL_PLAYER_BLOCKROLLS) && (GLOBAL_USE_DARKROLLS)) {
if (GLOBAL_PLAYER.inputXSeq == undefined) {
GLOBAL_PLAYER.inputXSeq = new Array();
GLOBAL_TAPDASH_STATE = 0;
}
var cura = playerCurrAnim().toLowerCase();
if ((cura == "idle") || (cura == "walk")) {
while (GLOBAL_PLAYER.inputXSeq.length > 30) {
GLOBAL_PLAYER.inputXSeq.splice(0, 1);
}
GLOBAL_TAPDASH_STATE = 0;
GLOBAL_TAPDASH_DIRECTION = 0;
} else {
GLOBAL_PLAYER.inputXSeq.clear();
}
var prevval = 0;
var prevcount = 0;
var comp = new Array();
var ii = 0;
while (ii < GLOBAL_PLAYER.inputXSeq.length) {
var vee = GLOBAL_PLAYER.inputXSeq[ii];
if (prevval == vee) {
prevcount++;
} else {
comp.push(new Object({input:vee, count:prevcount}));
prevval = vee;
prevcount = 0;
}
ii++;
}
if (prevcount > 0) {
comp.push(new Object({input:prevval, count:prevcount}));
}
if (GLOBAL_TAPDASH_STATE == 0) {
if (comp.length > 2) {
var iend = (comp.length - 1);
if (comp[iend].input == comp[iend - 2].input) {
if ((comp[iend - 1].input == 0) && (comp[iend - 1].count < GLOBAL_TAPDASH_FRAMES)) {
GLOBAL_TAPDASH_STATE = 17;
GLOBAL_TAPDASH_DIRECTION = comp[iend].input;
}
}
}
} else {
GLOBAL_PLAYER.inputXSeq.clear();
GLOBAL_TAPDASH_STATE--;
if (GLOBAL_TAPDASH_STATE < 1) {
GLOBAL_TAPDASH_DIRECTION = 0;
GLOBAL_TAPDASH_STATE = 0;
} else {
GLOBAL_PLAYER.in_movex = GLOBAL_TAPDASH_DIRECTION;
GLOBAL_PLAYER.in_movey = 0;
GLOBAL_PLAYER.in_action = false;
}
}
GLOBAL_PLAYER.s_running = 0;
if (GLOBAL_TAPDASH_STATE > 0) {
if (GLOBAL_TAPDASH_DIRECTION != 0) {
GLOBAL_PLAYER.s_running = 1;
}
}
}
_parent.camControl.mousecursor._x = _parent.camControl.mouseX;
_parent.camControl.mousecursor._y = _parent.camControl.mouseY;
_updateSparkSim(GLOBAL_PLAYERSPARK, 1);
_updateSparkSim(GLOBAL_ENEMYSPARK, 1);
moveplayer();
GLOBAL_ENEMY_AI_FUNC(this, GLOBAL_ENEMY, GLOBAL_PLAYER);
if (Key.isDown(87)) {
getEnemyT(GLOBAL_ENEMY).in_movey = 1;
} else if (Key.isDown(83)) {
getEnemyT(GLOBAL_ENEMY).in_movey = -1;
}
if (Key.isDown(65)) {
getEnemyT(GLOBAL_ENEMY).in_movex = 1;
} else if (Key.isDown(68)) {
getEnemyT(GLOBAL_ENEMY).in_movex = -1;
}
if (Key.isDown(70)) {
getEnemyT(GLOBAL_ENEMY).in_action = 1;
}
if (GLOBAL_ENEMY_REQUEST_VICTORY) {
if ((getEnemyT(GLOBAL_ENEMY).s_idle || (getEnemyT(GLOBAL_ENEMY).s_moving)) && (((!getEnemyT(GLOBAL_ENEMY).s_attacking) && (!getEnemyT(GLOBAL_ENEMY).s_hit)) && (!getEnemyT(GLOBAL_ENEMY).s_animbusy))) {
var movehere = (GLOBAL_ENEMY._x - GLOBAL_PLAYER._x);
if (movehere > 0) {
GLOBAL_ENEMY._xscale = Math.abs(GLOBAL_ENEMY._xscale);
getEnemyT(GLOBAL_ENEMY).in_movex = -1;
} else {
GLOBAL_ENEMY._xscale = -Math.abs(GLOBAL_ENEMY._xscale);
getEnemyT(GLOBAL_ENEMY).in_movex = 1;
}
getEnemyT(GLOBAL_ENEMY).in_movey = 0;
getEnemyT(GLOBAL_ENEMY).in_action = 0;
setEnemyFaceTarget(0);
}
}
if (GLOBAL_PLAYER.hp > 0) {
GLOBAL_ENEMY.enemy.G = this;
GLOBAL_ENEMY.enemy.enemy.G = this;
getEnemyT(GLOBAL_ENEMY).G = this;
if (!BLOCK_ENEMY_ONE_FRAME) {
moveenemy(GLOBAL_ENEMY);
}
}
damagecollisions();
var delmove = 0;
var decayspeed = 0.25;
if (!isPlayerConsumed(GLOBAL_PLAYER)) {
delmove = (160 - GLOBAL_PLAYER._x) * decayspeed;
_parent.camControl.resetStage();
cameraComputeZoomScale(GLOBAL_PLAYER, delmove);
} else if (getEnemyT(GLOBAL_ENEMY).camera != undefined) {
var offy = 0;
var cbounds = getEnemyT(GLOBAL_ENEMY).camera.getBounds(_root);
var useviewbox = false;
if (cbounds.xMax != undefined) {
if (((cbounds.xMax - cbounds.xMin) > 2) && ((cbounds.yMax - cbounds.yMin) > 2)) {
useviewbox = true;
}
}
if (useviewbox) {
var ysp = (ysize * proposcale);
if (xsize >= ysp) {
ysize = xsize / proposcale;
} else {
xsize = ysize * proposcale;
}
var xsize = (cbounds.xMax - cbounds.xMin);
var ysize = (cbounds.yMax - cbounds.yMin);
var ysp = (ysize * proposcale);
if (xsize >= ysp) {
ysize = xsize / proposcale;
} else {
xsize = ysize * proposcale;
}
var newx = (0.5 * (cbounds.xMin + cbounds.xMax));
var newy = (0.5 * (cbounds.yMin + cbounds.yMax));
var newxscale = (xsize / (proposcalex / 100));
var newyscale = (ysize / (proposcaley / 100));
_parent.camControl._x = newx;
_parent.camControl._y = newy;
_parent.camControl._xscale = newxscale;
_parent.camControl._yscale = newyscale;
delmove = 0;
} else {
_parent.camControl.resetStage();
var offx = 0;
if (getEnemyT(GLOBAL_ENEMY).camera != undefined) {
var xscaleu = (GLOBAL_ENEMY._xscale / Math.abs(GLOBAL_ENEMY._xscale));
var xscalee = (getEnemyT(GLOBAL_ENEMY)._xscale / Math.abs(getEnemyT(GLOBAL_ENEMY)._xscale));
offx = (xscaleu * xscalee) * getEnemyT(GLOBAL_ENEMY).camera._x;
}
delmove = ((160 - GLOBAL_ENEMY._x) - offx) * decayspeed;
if (!isPlayerConsumed(GLOBAL_PLAYER)) {
cameraComputeZoomScale(GLOBAL_PLAYER, delmove);
} else {
cameraComputeZoomScale(GLOBAL_ENEMY, delmove);
}
}
} else {
_parent.camControl.resetStage();
var offx = 0;
if (GLOBAL_ENEMY.m_cameraoffset != undefined) {
offx = ((GLOBAL_ENEMY._xscale / Math.abs(GLOBAL_ENEMY._xscale)) * (getEnemyT(GLOBAL_ENEMY)._xscale / Math.abs(getEnemyT(GLOBAL_ENEMY)._xscale))) * GLOBAL_ENEMY.m_cameraoffset;
}
delmove = ((160 - GLOBAL_ENEMY._x) - offx) * decayspeed;
if (!isPlayerConsumed(GLOBAL_PLAYER)) {
cameraComputeZoomScale(GLOBAL_PLAYER, delmove);
} else {
cameraComputeZoomScale(GLOBAL_ENEMY, delmove);
}
}
if (GLOBAL_CAMERA_SHAKE.use != 0) {
_parent.camControl._y = _parent.camControl._y + (GLOBAL_CAMERA_SHAKE.amp * Math.cos(GLOBAL_CAMERA_SHAKE.phase));
GLOBAL_CAMERA_SHAKE.phase = GLOBAL_CAMERA_SHAKE.phase + GLOBAL_CAMERA_SHAKE.freq;
GLOBAL_CAMERA_SHAKE.decay = 0;
if (GLOBAL_CAMERA_SHAKE.autodecay > 0) {
GLOBAL_CAMERA_SHAKE.autodecay--;
if (GLOBAL_CAMERA_SHAKE.autodecay < 1) {
GLOBAL_CAMERA_SHAKE.use = 0;
}
}
} else if (GLOBAL_CAMERA_SHAKE.maxdecay > 0) {
var decay = (1 - (GLOBAL_CAMERA_SHAKE.decay / GLOBAL_CAMERA_SHAKE.maxdecay));
if (decay < 0) {
decay = 0;
} else {
_parent.camControl._y = _parent.camControl._y + ((decay * GLOBAL_CAMERA_SHAKE.amp) * Math.cos(GLOBAL_CAMERA_SHAKE.phase));
GLOBAL_CAMERA_SHAKE.decay = GLOBAL_CAMERA_SHAKE.decay + 1;
}
}
if ((GLOBAL_BG_FADE_TIME >= 0) and (GLOBAL_BG_FADE >= 0)) {
GLOBAL_BG_FADE++;
if (GLOBAL_BG_FADE >= GLOBAL_BG_FADE_TIME) {
GLOBAL_BG_FADE = GLOBAL_BG_FADE_TIME;
}
var fadef = ((1 * GLOBAL_BG_FADE) / (1 * GLOBAL_BG_FADE_TIME));
var fader = Math.floor(((GLOBAL_BG_FADE_PREV_COLOR & 255) * (1 - fadef)) + (fadef * (GLOBAL_BG_FADE_COLOR & 255)));
var fadeg = Math.floor((((GLOBAL_BG_FADE_PREV_COLOR >> 8) & 255) * (1 - fadef)) + (fadef * ((GLOBAL_BG_FADE_COLOR >> 8) & 255)));
var fadeb = Math.floor((((GLOBAL_BG_FADE_PREV_COLOR >> 16) & 255) * (1 - fadef)) + (fadef * ((GLOBAL_BG_FADE_COLOR >> 16) & 255)));
var fadec = ((fader + (fadeg << 8)) + (fadeb << 16));
_setClipColor(_parent.scrollbg, fadec);
if (GLOBAL_BG_FADE >= GLOBAL_BG_FADE_TIME) {
GLOBAL_BG_FADE_PREV_COLOR = GLOBAL_BG_FADE_COLOR;
GLOBAL_BG_FADE_TIME = -1;
GLOBAL_BG_FADE = -1;
}
}
if (Math.abs(delmove) < 0.05) {
delmove = 0;
}
if (delmove != 0) {
GLOBAL_PLAYER._x = GLOBAL_PLAYER._x + delmove;
GLOBAL_ENEMY._x = GLOBAL_ENEMY._x + delmove;
}
if (GLOBAL_CURRENT_BACKGROUND instanceof flash.display.BitmapData) {
_parent.scrollbg.gotoAndStop("none");
if (_parent.scrollbg.scclip != undefined) {
_parent.scrollbg.scclip._visible = true;
} else {
var scclip = _parent.scrollbg.attachMovie("mcEmpty", "scclip", 0);
scclip._x = 0;
scclip._y = 0;
scclip._xscale = 100;
scclip._yscale = 100;
scclip.lastenemy = undefined;
scclip.c0 = scclip.attachMovie("mcEmpty", "c0", 0);
scclip.c1 = scclip.attachMovie("mcEmpty", "c1", 1);
scclip.c2 = scclip.attachMovie("mcEmpty", "c2", 2);
}
if (GLOBAL_CURRENT_BACKGROUND_PREV != GLOBAL_CURRENT_BACKGROUND) {
GLOBAL_CURRENT_BACKGROUND_PREV = GLOBAL_CURRENT_BACKGROUND;
if (_parent.scrollbg.scclip.lastenemy != enemyGetID()) {
_parent.scrollbg.scclip.lastenemy = enemyGetID();
}
if (_parent.scrollbg.scclip.drawme != undefined) {
_parent.scrollbg.scclip.drawme.dispose();
_parent.scrollbg.scclip.removeMovieClip(_parent.scrollbg.scclip.drawme);
}
if (_parent.scrollbg.scclip.c0.bmc != undefined) {
_parent.scrollbg.scclip.c0.bmc.dispose();
}
if (_parent.scrollbg.scclip.c1.bmc != undefined) {
_parent.scrollbg.scclip.c1.bmc.dispose();
}
if (_parent.scrollbg.scclip.c2.bmc != undefined) {
_parent.scrollbg.scclip.c2.bmc.dispose();
}
var bmprealwidth = Math.floor(GLOBAL_CURRENT_BACKGROUND.width);
var bmpwidth = Math.min(bmprealwidth, 2880);
var scalefactor = (bmpwidth / bmprealwidth);
var myMatrixT = (new flash.geom.Matrix());
myMatrixT.scale(scalefactor, scalefactor);
myMatrixT.translate(-1, 0);
var myMatrixT1 = (new flash.geom.Matrix());
myMatrixT1.scale(scalefactor, scalefactor);
myMatrixT1.translate(bmpwidth - 1, 0);
var drawme1 = (new flash.display.BitmapData(1 + bmpwidth, Math.floor(scalefactor * GLOBAL_CURRENT_BACKGROUND.height)));
_parent.scrollbg.scclip.c0.attachBitmap(drawme1, 0, "normal", GLOBAL_CURRENT_BACKGROUND_STYLE);
_parent.scrollbg.scclip.c0.bmc = drawme1;
_parent.scrollbg.scclip.c0.bmc.draw(GLOBAL_CURRENT_BACKGROUND, myMatrixT, undefined, undefined, undefined, GLOBAL_CURRENT_BACKGROUND_STYLE);
_parent.scrollbg.scclip.c0.bmc.draw(GLOBAL_CURRENT_BACKGROUND, myMatrixT1, undefined, undefined, undefined, GLOBAL_CURRENT_BACKGROUND_STYLE);
_parent.scrollbg.scclip.c0._x = 0;
var drawme2 = (new flash.display.BitmapData(1 + bmpwidth, Math.floor(scalefactor * GLOBAL_CURRENT_BACKGROUND.height)));
_parent.scrollbg.scclip.c1.attachBitmap(drawme2, 0, "normal", GLOBAL_CURRENT_BACKGROUND_STYLE);
_parent.scrollbg.scclip.c1.bmc = drawme2;
_parent.scrollbg.scclip.c1.bmc.draw(GLOBAL_CURRENT_BACKGROUND, myMatrixT, undefined, undefined, undefined, GLOBAL_CURRENT_BACKGROUND_STYLE);
_parent.scrollbg.scclip.c1.bmc.draw(GLOBAL_CURRENT_BACKGROUND, myMatrixT1, undefined, undefined, undefined, GLOBAL_CURRENT_BACKGROUND_STYLE);
_parent.scrollbg.scclip.c1._x = bmpwidth;
var drawme3 = (new flash.display.BitmapData(1 + bmpwidth, Math.floor(scalefactor * GLOBAL_CURRENT_BACKGROUND.height)));
_parent.scrollbg.scclip.c2.attachBitmap(drawme3, 0, "normal", GLOBAL_CURRENT_BACKGROUND_STYLE);
_parent.scrollbg.scclip.c2.bmc = drawme3;
_parent.scrollbg.scclip.c2.bmc.draw(GLOBAL_CURRENT_BACKGROUND, myMatrixT, undefined, undefined, undefined, GLOBAL_CURRENT_BACKGROUND_STYLE);
_parent.scrollbg.scclip.c2.bmc.draw(GLOBAL_CURRENT_BACKGROUND, myMatrixT1, undefined, undefined, undefined, GLOBAL_CURRENT_BACKGROUND_STYLE);
_parent.scrollbg.scclip.c2._x = bmpwidth + bmpwidth;
_parent.scrollbg.scclip._y = GLOBAL_CURRENT_BACKGROUND_YOFF;
var unitw = ((_parent.scrollbg.scclip._width - 3) / 3);
while (_parent.scrollbg.scclip._x < (-2 * unitw)) {
_parent.scrollbg.scclip._x = _parent.scrollbg.scclip._x + unitw;
}
while (_parent.scrollbg.scclip._x > (-unitw)) {
_parent.scrollbg.scclip._x = _parent.scrollbg.scclip._x - unitw;
}
}
if (delmove != 0) {
_parent.scrollbg.scclip._x = _parent.scrollbg.scclip._x + delmove;
_parent.scrollbg.scclip._y = GLOBAL_CURRENT_BACKGROUND_YOFF;
var unitw = (_parent.scrollbg.scclip._width / 3);
while (_parent.scrollbg.scclip._x < (-2 * unitw)) {
_parent.scrollbg.scclip._x = _parent.scrollbg.scclip._x + unitw;
}
while (_parent.scrollbg.scclip._x > (-unitw)) {
_parent.scrollbg.scclip._x = _parent.scrollbg.scclip._x - unitw;
}
}
} else {
_parent.scrollbg.gotoAndStop(GLOBAL_CURRENT_BACKGROUND);
if (_parent.scrollbg.scclip != undefined) {
_parent.scrollbg.scclip._visible = false;
_parent.scrollbg.scclip.lastenemy = enemyGetID();
}
if (delmove != 0) {
_parent.scrollbg.mc._x = _parent.scrollbg.mc._x + delmove;
var unitw = (_parent.scrollbg.mc._width / 3);
while (_parent.scrollbg.mc._x < (-unitw)) {
_parent.scrollbg.mc._x = _parent.scrollbg.mc._x + unitw;
}
while (_parent.scrollbg.mc._x > 0) {
_parent.scrollbg.mc._x = _parent.scrollbg.mc._x - unitw;
}
}
}
if (isPlayerConsumed(GLOBAL_PLAYER)) {
_parent.camControl.emenydir.gotoAndStop("eaten");
} else if (GLOBAL_PLAYER.hp < 1) {
_parent.camControl.emenydir.gotoAndStop("dead");
} else if (GLOBAL_ENEMY._x < (GLOBAL_PLAYER._x - 160)) {
_parent.camControl.emenydir.gotoAndStop(3);
} else if (GLOBAL_ENEMY._x > (GLOBAL_PLAYER._x + 160)) {
_parent.camControl.emenydir.gotoAndStop(2);
} else if (GLOBAL_ALLOW_PETS) {
_parent.camControl.emenydir.gotoAndStop("allowpets");
} else {
_parent.camControl.emenydir.gotoAndStop(1);
}
if (isPlayerConsumed(GLOBAL_PLAYER)) {
_parent.camControl.playerModeClip._visible = true;
_parent.camControl.playerModeClip.gotoAndStop("consumed");
var PV = _parent.camControl.playerModeClip;
var sourcebutts = GLOBAL_ALL_ESCAPE_KEYS;
var flipbutts = NOFLIPEK;
if (enemyFacing() < 0) {
flipbutts = FLIPEK;
}
var onlyanim = new Array(-140, -140, -140);
var allcolors = new Array();
allcolors.push(new Array(128, -64, -64));
allcolors.push(new Array(128, 128, -64));
allcolors.push(new Array(-64, 128, -64));
allcolors.push(new Array(-64, 128, 128));
allcolors.push(new Array(-64, -64, 128));
allcolors.push(new Array(128, 64, -64));
allcolors.push(new Array(128, -64, 128));
allcolors.push(new Array(128, 128, 128));
var i = 0;
while (i < sourcebutts.length) {
var mc = PV[sourcebutts[i]];
mc._visible = false;
i++;
}
var TAS = enemyGetAnimStruct();
if (TAS != undefined) {
var i = 0;
while (i < sourcebutts.length) {
var mc = PV[flipbutts[sourcebutts[i]]];
var hasit = getNextAnimation(TAS, sourcebutts[i]);
if (TAS.hasOwnProperty(sourcebutts[i].toLowerCase())) {
hasit = TAS[sourcebutts[i].toLowerCase()];
}
if (hasit != "") {
mc._visible = true;
_parent.colorize(mc, onlyanim[0], onlyanim[1], onlyanim[2], 0);
}
i++;
}
}
var TDS = enemyGetDigestionStruct();
if (TDS != undefined) {
var inuse = new Object();
var escapeid = 0;
while (escapeid < TDS.escapes.length) {
var D = TDS.escapes[escapeid];
var usecolor = allcolors[escapeid % allcolors.length];
var din = 0;
while (din < D.inputs.length) {
var dirmoved = D.inputs[din];
if (TDS.blockescapes != undefined) {
if ((dirmoved == "E") || (dirmoved == "W")) {
// unexpected jump
}
} else {
var mc = PV[flipbutts[dirmoved]];
if (inuse[dirmoved] == undefined) {
inuse[dirmoved] = new Array();
}
mc._visible = true;
inuse[dirmoved].push(D.anim);
}
din++;
}
escapeid++;
}
var uniquekeys = new Object();
var maxuniquekeys = 0;
for (var k in inuse) {
inuse[k].sort();
var sk = String(inuse[k]);
if (uniquekeys.hasOwnProperty(sk)) {
} else {
maxuniquekeys++;
uniquekeys[sk] = maxuniquekeys;
}
inuse[k] = uniquekeys[sk];
}
for (var k in inuse) {
var mc = PV[flipbutts[k]];
var usecolor = allcolors[inuse[k] % allcolors.length];
_parent.colorize(mc, usecolor[0], usecolor[1], usecolor[2], 0);
}
}
PV.BV._visible = ((((((PV.BL._visible | PV.BR._visible) | PV.BU._visible) | PV.BD._visible) | PV.HL._visible) | PV.HR._visible) | PV.HU._visible) | PV.HD._visible;
_parent.colorize(PV.BV, onlyanim[0], onlyanim[1], onlyanim[2], 0);
} else {
_parent.camControl.playerModeClip._visible = true;
_parent.camControl.playerModeClip.gotoAndStop("mode" + GLOBAL_PLAYER_MODE);
}
if (GLOBAL_PLAYER.hp < 1) {
if ((!GLOBAL_PLAYER.s_hit) && (!GLOBAL_PLAYER.s_animbusy)) {
goPlay(GLOBAL_PLAYER, "death");
}
}
if (GLOBAL_ENEMY.hp < 1) {
GLOBAL_ENEMY.hp = 0;
if (!GLOBAL_ENEMY.ignore_hitanim) {
if (GLOBAL_ENEMY_TIMEOUT == 1) {
goPlay(getEnemyT(GLOBAL_ENEMY), "death");
GLOBAL_KILLS++;
Log(("YOU KILLED THE " + GLOBAL_ENEMY.m_name) + "!");
}
GLOBAL_ENEMY_TIMEOUT++;
if (GLOBAL_ENEMY_TIMEOUT > 60) {
pickEnemy(0);
resetPlayer();
}
} else {
GLOBAL_ENEMY_TIMEOUT = 0;
}
} else if (GLOBAL_ENEMY_REQUEST_VICTORY) {
if (GLOBAL_ENEMY_TIMEOUT == 1) {
Log(("YOU DEFEATED THE " + GLOBAL_ENEMY.m_name) + "!");
}
if (_parent.camControl.bounds.hitTest(GLOBAL_ENEMY)) {
} else {
trace("notvisible! ");
GLOBAL_ENEMY_TIMEOUT = 150;
}
GLOBAL_ENEMY_TIMEOUT++;
if (GLOBAL_ENEMY_TIMEOUT > 150) {
pickEnemy(GLOBAL_ENEMY_REQUEST_VICTORY_NEXT);
}
} else {
GLOBAL_ENEMY_TIMEOUT = 0;
}
if (GLOBAL_SHOW_CONSUMED_PLAYER) {
if (isPlayerConsumed(GLOBAL_PLAYER)) {
GLOBAL_PLAYER._alpha = 100;
} else {
GLOBAL_PLAYER._alpha = 100;
}
} else if (isPlayerConsumed(GLOBAL_PLAYER)) {
GLOBAL_PLAYER._alpha = 0;
} else {
GLOBAL_PLAYER._alpha = 100;
}
GLOBAL_ENEMYSPARK.nextFrame();
GLOBAL_PLAYERSPARK.nextFrame();
_parent.camControl.gui_enemyhp.setbarvalue(GLOBAL_ENEMY.hp);
_parent.camControl.gui_playerhp.setbarvalue(GLOBAL_PLAYER.hp);
_parent.camControl.gui_playername = GLOBAL_PLAYER.m_name;
_parent.camControl.gui_playerstatus = GLOBAL_PLAYER.m_status;
_parent.camControl.gui_enemyname = GLOBAL_ENEMY.m_name;
_parent.camControl.gui_enemystatus = ((GLOBAL_ENEMY.m_status + "[") + GLOBAL_ENEMY.m_credit) + "]";
_parent.camControl.gui_points = "Score: " + GLOBAL_POINTS;
_parent.camControl.gui_kills = "Wins: " + GLOBAL_KILLS;
_parent.playershad._y = calcShadowPosition(GLOBAL_PLAYER._y);
_parent.playershad._x = GLOBAL_PLAYER._x;
_parent.playershad._yscale = 10 * calcShadowScale(GLOBAL_PLAYER._y);
_parent.playershad._xscale = GLOBAL_PLAYER._xscale * calcShadowScale(GLOBAL_PLAYER._y);
_parent.playershad.t.gotoAndStop(GLOBAL_PLAYER._currentframe);
_parent.playershad._alpha = GLOBAL_PLAYER._alpha;
if (GLOBAL_SHOW_CONSUMED_PLAYER) {
_parent.playershad._visible = true;
} else if (isPlayerConsumed(GLOBAL_PLAYER)) {
_parent.playershad._visible = false;
} else {
_parent.playershad._visible = true;
}
_parent.playershad.t.head._alpha = GLOBAL_PLAYER.head._alpha;
_parent.playershad.t.head._x = GLOBAL_PLAYER.head._x;
_parent.playershad.t.head._y = GLOBAL_PLAYER.head._y;
_parent.enemyshad._y = calcShadowPosition(GLOBAL_ENEMY._y);
_parent.enemyshad._x = GLOBAL_ENEMY._x;
_parent.enemyshad._xscale = 100;
_parent.enemyshad._yscale = 10;
if (GLOBAL_USE_SHADOWS) {
_parent.playershad.t._visible = true;
_parent.enemyshad.t._visible = true;
_parent.enemyshad.t._xscale = GLOBAL_ENEMY._xscale * calcShadowScale(GLOBAL_ENEMY._y);
_parent.enemyshad.t._yscale = GLOBAL_ENEMY._yscale * calcShadowScale(GLOBAL_ENEMY._y);
_parent.enemyshad.t.enemy._xscale = GLOBAL_ENEMY.enemy._xscale;
_parent.enemyshad.t.enemy._yscale = GLOBAL_ENEMY.enemy._yscale;
_parent.enemyshad.t.enemy.enemy._xscale = GLOBAL_ENEMY.enemy.enemy._xscale;
_parent.enemyshad.t.enemy.enemy._yscale = GLOBAL_ENEMY.enemy.enemy._yscale;
_parent.enemyshad.t.enemy.G = undefined;
_parent.enemyshad.t.enemy.enemy.G = undefined;
_parent.enemyshad.t.G = undefined;
_parent.enemyshad.G = undefined;
if (GLOBAL_ENEMY.is_external) {
if (isPlayerConsumed(GLOBAL_PLAYER)) {
_parent.enemyshad.t.enemy.VICSYNC._visible = true;
} else {
_parent.enemyshad.t.enemy.VICSYNC._visible = false;
}
}
_parent.enemyshad.t.gotoAndStop(GLOBAL_ENEMY._currentframe);
_parent.enemyshad.t.enemy.gotoAndStop(GLOBAL_ENEMY.enemy._currentframe);
_parent.enemyshad.t.enemy.enemy.gotoAndStop(GLOBAL_ENEMY.enemy.enemy._currentframe);
if (_parent.playershad.dotshadow) {
_parent.playershad.dotshadow.removeMovieClip();
}
if (_parent.enemyshad.dotshadow) {
_parent.enemyshad.dotshadow.removeMovieClip();
}
} else {
_parent.playershad.t._visible = false;
_parent.enemyshad.t._visible = false;
_parent.playershad.t.stop();
_parent.playershad.t.enemy.stop();
_parent.playershad.t.enemy.enemy.stop();
_parent.enemyshad.t.stop();
_parent.enemyshad.t.enemy.stop();
_parent.enemyshad.t.enemy.enemy.stop();
if (_parent.enemyshad.t.enemy) {
_parent.enemyshad.t.enemy.removeMovieClip();
}
if (_parent.playershad.dotshadow) {
} else {
_parent.playershad.attachMovie("defaultdotshadow", "dotshadow", 0);
}
if (_parent.enemyshad.dotshadow) {
} else {
_parent.enemyshad.attachMovie("defaultdotshadow", "dotshadow", 0);
}
_parent.playershad.dotshadow._x = 0;
_parent.playershad.dotshadow._y = 0;
var hasit = getCBox(GLOBAL_PLAYER);
if (hasit) {
_parent.playershad.dotshadow._xscale = hasit._width / 2;
}
_parent.playershad.dotshadow._yscale = _parent.playershad.dotshadow._xscale;
_parent.enemyshad.dotshadow._x = 0;
_parent.enemyshad.dotshadow._y = 0;
var hasit = getCBox(GLOBAL_ENEMY);
if (hasit) {
var bobj = hasit.getBounds(getEnemyT(GLOBAL_ENEMY));
_parent.enemyshad.dotshadow._xscale = (100 / GLOBAL_ENEMY.m_scale) * ((bobj.xMax - bobj.xMin) / 2);
_parent.enemyshad.dotshadow._x = (enemyFacing() * (100 / GLOBAL_ENEMY.m_scale)) * ((bobj.xMax + bobj.xMin) / 2);
}
_parent.enemyshad.dotshadow._yscale = _parent.enemyshad.dotshadow._xscale;
}
GLOBAL_ENEMY_FRAMES_RUN++;
} else if (GLOBAL_TRUEPAUSE) {
if (inputMouseValid) {
if (inputMouseB) {
if (inputMouseX < 0.333) {
inputKeyLeft = 1;
} else if (inputMouseX > 0.666) {
inputKeyRight = 1;
}
if (inputMouseY < 0.333) {
inputKeyUp = 1;
} else if (inputMouseY > 0.666) {
inputKeyDown = 1;
}
}
}
var delx = (inputKeyRight - inputKeyLeft);
var dely = (inputKeyUp - inputKeyDown);
if (inputKeyAction) {
if (dely != 0) {
var factorx = 1;
if (dely > 0) {
factorx = 1.125;
} else if (dely < 0) {
factorx = 0.8;
}
_parent.camControl._xscale = _parent.camControl._xscale * factorx;
_parent.camControl._yscale = _parent.camControl._yscale * factorx;
}
if (delx != 0) {
_parent.camControl._xscale = _parent.camControl._xscale + (0.1 * (100 - _parent.camControl._xscale));
_parent.camControl._yscale = _parent.camControl._yscale + (0.1 * (100 - _parent.camControl._yscale));
}
if (_parent.camControl._xscale < 26.2144) {
_parent.camControl._xscale = 26.2144;
} else if (_parent.camControl._xscale > 100) {
_parent.camControl._xscale = 100;
}
if (_parent.camControl._yscale < 26.2144) {
_parent.camControl._yscale = 26.2144;
} else if (_parent.camControl._yscale > 100) {
_parent.camControl._yscale = 100;
}
} else {
if (delx != 0) {
_parent.camControl._x = _parent.camControl._x + (((8 * delx) * _parent.camControl._xscale) / 100);
}
if (dely != 0) {
_parent.camControl._y = _parent.camControl._y - (((8 * dely) * _parent.camControl._yscale) / 100);
}
}
}
if (GLOBAL_ENEMY.is_external) {
var lpercent = 0;
if (GLOBAL_ENEMY.enemy != undefined) {
if (GLOBAL_ENEMY.enemy.getBytesTotal() > 0) {
lpercent = (100 * GLOBAL_ENEMY.enemy.getBytesLoaded()) / GLOBAL_ENEMY.enemy.getBytesTotal();
}
}
if (!GLOBAL_ENEMY.is_external_loaded) {
if (lpercent < 100) {
_parent.camControl.gui_enemystatus = Math.floor(lpercent) + "% ";
_parent.camControl.gui_enemyname = GLOBAL_ENEMY.m_name;
_parent.camControl.gui_enemystatus = _parent.camControl.gui_enemystatus + (((GLOBAL_ENEMY.m_status + "[") + GLOBAL_ENEMY.m_credit) + "]");
if (GLOBAL_ENEMY._x < GLOBAL_PLAYER._x) {
GLOBAL_ENEMY._x = GLOBAL_PLAYER._x - 640;
} else {
GLOBAL_ENEMY._x = GLOBAL_PLAYER._x + 640;
}
} else {
GLOBAL_ENEMY.is_external_loaded = 1;
}
} else if (lpercent < 100) {
GLOBAL_ENEMY.is_external_loaded = 0;
}
}
if (Key.isDown(45)) {
if (!GLOBAL_PAUSECTR) {
GLOBAL_TRUEPAUSE = !GLOBAL_TRUEPAUSE;
var TM = getEnemyT(GLOBAL_ENEMY).__animmap;
trace("ENEMY MAP: ");
for (var fkey in TM) {
trace("frame " + fkey);
var ao = TM[fkey];
for (var akey in ao) {
trace("\t" + akey);
}
}
}
GLOBAL_PAUSECTR = true;
} else {
GLOBAL_PAUSECTR = false;
}
if (Key.isDown(35)) {
resetPlayer();
}
if (Key.isDown(187)) {
if (lastkeydown_187 != true) {
lastkeydown_187 = true;
GLOBAL_OPTIONS.automaticBarb.enabled = !GLOBAL_OPTIONS.automaticBarb.enabled;
if (GLOBAL_OPTIONS.automaticBarb.hasOwnProperty("struggledata")) {
} else {
GLOBAL_OPTIONS.automaticBarb.struggledata = {};
GLOBAL_OPTIONS.automaticBarb.struggledata.method = "pickone";
GLOBAL_OPTIONS.automaticBarb.struggledata.delay = 0;
GLOBAL_OPTIONS.automaticBarb.struggledata.action = [0, 0, 0, 0, 0];
GLOBAL_OPTIONS.automaticBarb.struggledata.tryescapecount = 0;
}
if (GLOBAL_OPTIONS.automaticBarb.enabled) {
if (GLOBAL_OPTIONS.automaticBarb.struggledata.method == "pickone") {
GLOBAL_OPTIONS.automaticBarb.struggledata.method = "default";
} else {
GLOBAL_OPTIONS.automaticBarb.struggledata.method = "pickone";
}
Log((("Auto-Barb: " + GLOBAL_OPTIONS.automaticBarb.enabled) + " ") + GLOBAL_OPTIONS.automaticBarb.struggledata.method);
} else {
Log("Auto-Barb disabled");
}
}
} else {
lastkeydown_187 = false;
}
if (Key.isDown(36)) {
GLOBAL_PAUSEHFR++;
GLOBAL_PAUSEHFR = GLOBAL_PAUSEHFR % 4;
}
if (Key.isDown(16)) {
}
if (GLOBAL_LOCALSCOPE) {
if (Key.isDown(8)) {
setPlayerScale((Math.floor(19 * Math.random()) * 10) + 10);
chatMessage("%[mygoodname]: That feels great babe.", 1);
chatType(Math.floor(Math.random() * 6) + 1);
chatTarget(GLOBAL_PLAYER);
}
if (Key.isDown(16) && (Key.isDown(9))) {
trace("WOW");
enemyClearIcon(enemyGetID());
} else if (Key.isDown(9)) {
var eatme = enemySaveIconString(enemyGetID());
var didit = enemyLoadIconString(enemyGetID(), eatme);
if (didit) {
var EDATA = GLOBAL_ENEMY_DATA[enemyGetID()];
trace(((((((didit + " ") + EDATA.m_name) + ", ") + EDATA.m_status) + "[") + EDATA.m_credit) + "]");
trace(("\"" + eatme) + "\"");
}
}
}
if (!GLOBAL_TRUEPAUSE) {
if (GLOBAL_PAUSEHFR != 0) {
GLOBAL_PAUSEHFRCTR = GLOBAL_PAUSEHFRCTR + 1;
if (GLOBAL_PAUSEHFRCTR > GLOBAL_PAUSEHFR) {
unpauseall();
GLOBAL_PAUSEHFRCTR = 0;
} else {
pauseall();
}
} else if ((!GLOBAL_TRUEPAUSE) and GLOBAL_PAUSE) {
unpauseall();
}
} else if (GLOBAL_TRUEPAUSE and (!GLOBAL_PAUSE)) {
pauseall();
}
var esounds = new Sound(_parent.enemyshad);
esounds.setVolume(0);
var psounds = new Sound(_parent.playershad);
psounds.setVolume(0);
_parent.flashColorize(_parent.playershad, -1, -1, -1, 0.4);
_parent.flashColorize(_parent.enemyshad, -1, -1, -1, 0.4);
GLOBAL_ENEMY.G = this;
GLOBAL_ENEMY.enemy.G = this;
GLOBAL_ENEMY.enemy.enemy.G = this;
getEnemyT(GLOBAL_ENEMY).G = this;
GLOBAL_PLAYER.G = this;
_root.G = this;
GLOBAL_ENEMY.enemy.goPlay = function (animf) {
_root.controller.goPlay(_root.controller.GLOBAL_ENEMY.enemy, animf);
};
getEnemyT(GLOBAL_ENEMY).goPlay = function (animf) {
_root.controller.goPlay(_root.controller.GLOBAL_ENEMY.enemy.enemy, animf);
};
if (_parent.camControl.sld_sound.mousedown) {
var sldtarg = _parent.camControl.sld_sound;
var my = sldtarg.My;
var checkyb = sldtarg.sldbak.getBounds(_parent.camControl.sld_sound);
var sldcoord = my;
var sldsize = (checkyb.yMax - checkyb.yMin);
var val = (-100 * (sldcoord / sldsize));
if (val > 100) {
val = 100;
}
if (val < 0) {
val = 0;
}
sldtarg.sld._yscale = val;
_root.nvSetVolume(val);
}
if (_parent.camControl.sld_sound_music.mousedown) {
var sldtarg = _parent.camControl.sld_sound_music;
var my = sldtarg.My;
var checkyb = sldtarg.sldbak.getBounds(_parent.camControl.sld_sound_music);
var sldcoord = my;
var sldsize = (checkyb.yMax - checkyb.yMin);
var val = (-100 * (sldcoord / sldsize));
if (val > 100) {
val = 100;
}
if (val < 0) {
val = 0;
}
sldtarg.sld._yscale = val;
_root.nvSetMusicVolume(val);
}
_parent.camControl.gui_playergfxid = _root.GLOBAL_PLAYERGRAPHIC;
BLOCK_ENEMY_ONE_FRAME = false;
if (_parent.camControl.exturl != undefined) {
if (_parent.camControl.exturl != _root.externalURL) {
trace("exturl exists? :" + _parent.camControl.exturl);
_root.externalURL = _parent.camControl.exturl;
}
}
reassignAllXClips(GLOBAL_ENEMY);
reassignAllXClips(GLOBAL_ENEMY.enemy);
reassignAllXClips(GLOBAL_ENEMY.enemy.enemy);
reassignAllXClips(GLOBAL_PLAYER);
if (GLOBAL_PLAYERHASHEAD) {
setPlayerHasHead(true);
} else {
setPlayerHasHead(false);
}
if (guiTextScroll == 1) {
var gmx = ((_parent.camControl.mouseX - -160) / 240);
var gmy = ((_parent.camControl.mouseY - 72) / 48);
if ((gmx > 0) and (gmx < 1)) {
if ((gmy > 0) and (gmy < 1)) {
if (gmx < 0.1) {
LogScrollOffset = 0;
} else if (gmx > 0.9) {
LogScrollOffset = GLOBAL_LOG.length - 2;
} else {
LogScrollOffset = LogScrollOffset + ((gmy - 0.5) * 4);
}
if (LogScrollOffset > (GLOBAL_LOG.length - 2)) {
LogScrollOffset = GLOBAL_LOG.length - 2;
}
if (LogScrollOffset < 0) {
LogScrollOffset = 0;
}
}
}
}
var offi = Math.floor(LogScrollOffset);
_parent.camControl.gui_leveldesc = "";
if (offi < GLOBAL_LOG.length) {
_parent.camControl.gui_leveldesc = _parent.camControl.gui_leveldesc + GLOBAL_LOG[offi + 0];
offi++;
}
if (offi < GLOBAL_LOG.length) {
_parent.camControl.gui_leveldesc = _parent.camControl.gui_leveldesc + GLOBAL_LOG[offi + 0];
offi++;
}
if (offi < GLOBAL_LOG.length) {
_parent.camControl.gui_leveldesc = _parent.camControl.gui_leveldesc + GLOBAL_LOG[offi + 0];
offi++;
}
if (offi < GLOBAL_LOG.length) {
_parent.camControl.gui_leveldesc = _parent.camControl.gui_leveldesc + GLOBAL_LOG[offi + 0];
offi++;
}
if (getOption("showDirty")) {
_parent.camControl.showDirty.gotoAndStop("on");
} else {
_parent.camControl.showDirty.gotoAndStop("off");
}
if (getOption("showNaughty")) {
_parent.camControl.showNaughty.gotoAndStop("on");
} else {
_parent.camControl.showNaughty.gotoAndStop("off");
}
if ((!GLOBAL_PAUSE) && (!GLOBAL_TRUEPAUSE)) {
_parent.camControl.chatbubble.update();
}
if (GLOBAL_PLAYER.aniclip != undefined) {
GLOBAL_PLAYER.stop();
GLOBAL_PLAYER.aniclip.stop();
GLOBAL_PLAYER.aniclip.mc.stop();
var updateplayerclip = (!GLOBAL_PAUSE);
if (GLOBAL_SHOW_CONSUMED_PLAYER) {
if (GLOBAL_SHOW_CONSUMED_PLAYER_FROZEN) {
if (isPlayerConsumed(GLOBAL_PLAYER)) {
updateplayerclip = false;
}
}
}
if ((!GLOBAL_PAUSE) && (!GLOBAL_QTE_DATA.active)) {
var cframe = GLOBAL_PLAYER.aniclip.mc._currentframe;
var tframe = GLOBAL_PLAYER.aniclip.mc._totalframes;
if (cframe == tframe) {
var isnextanim = (cframe == tframe);
var cura = playerCurrAnim().toLowerCase();
var nextanim = cura;
if (cura == "idle") {
nextanim = "idle";
} else if (cura == "walk") {
nextanim = "walk";
} else if (cura == "atkl") {
nextanim = "idle";
} else if (cura == "atkm") {
nextanim = "idle";
} else if (cura == "atkh") {
nextanim = "idle";
} else if (cura == "atkh2") {
nextanim = "idle";
} else if (cura == "atkh3") {
nextanim = "idle";
} else if (cura == "atkp") {
nextanim = "idle";
} else if (cura == "atky") {
nextanim = "idle";
} else if (cura == "hitl") {
nextanim = "idle";
} else if (cura == "hitm") {
nextanim = "idle";
} else if (cura == "hith") {
nextanim = "idle";
} else if (cura == "run") {
nextanim = "idle";
} else if (cura == "death") {
nextanim = "dead";
isnextanim = false;
} else if (cura == "dead") {
nextanim = "dead";
isnextanim = false;
} else if (cura == undefined) {
nextanim = "idle";
} else {
trace("Not in scope anim: " + cura);
}
if (GLOBAL_PLAYER.hp < 1) {
if ((nextanim != "death") && (nextanim != "dead")) {
nextanim = "death";
}
}
if (isnextanim) {
goPlay(GLOBAL_PLAYER, nextanim);
GLOBAL_PLAYER.aniclip.mc.gotoAndStop(1);
}
} else {
GLOBAL_PLAYER.aniclip.mc.gotoAndStop(cframe + 1);
}
} else {
GLOBAL_PLAYER.stop();
GLOBAL_PLAYER.aniclip.stop();
GLOBAL_PLAYER.aniclip.mc.stop();
}
}
if (GLOBAL_SHOW_PLAYER_INSIDEPLUS) {
var displaydistance = GLOBAL_ENEMY._width;
for (var mckey in GLOBALUPDATECOX) {
var COX = GLOBALUPDATECOX[mckey];
var pdist = playerEnemyCenterDistance();
if ((GLOBAL_SHOW_PLAYER_INSIDEPLUS_ENEMY_ENABLE && (pdist < displaydistance)) && (GLOBAL_PLAYER._visible)) {
var flipx = ((GLOBAL_PLAYER._xscale > 0) == (GLOBAL_ENEMY._xscale > 0));
if (flipx == 0) {
flipx = -1;
} else {
flipx = 1;
}
var scaleval = (GLOBAL_ENEMY.m_scale / 100);
var delx = (((GLOBAL_ENEMY.m_scale / 100) * (GLOBAL_PLAYER._x - GLOBAL_ENEMY._x)) * (GLOBAL_ENEMY._xscale / 100));
var dely = (((GLOBAL_ENEMY.m_scale / 100) * (GLOBAL_PLAYER._y - GLOBAL_ENEMY._y)) * (GLOBAL_ENEMY._yscale / 100));
COX.gotoAndStop(GLOBAL_PLAYER._currentframe);
COX.aniclip.gotoAndStop(GLOBAL_PLAYER.aniclip._currentframe);
COX.aniclip.mc.gotoAndStop(GLOBAL_PLAYER.aniclip.mc._currentframe);
COX._rotation = GLOBAL_PLAYER._rotation;
COX._xscale = (scaleval * flipx) * Math.abs(GLOBAL_PLAYER._xscale);
COX._yscale = scaleval * GLOBAL_PLAYER._yscale;
COX._x = delx;
COX._y = dely;
COX._visible = true;
COX._alpha = GLOBAL_PLAYER._alpha;
} else {
COX._x = 0;
COX._y = 0;
COX._xscale = 100;
COX._yscale = 100;
COX._rotation = 0;
COX._alpha = 0;
COX._visible = false;
}
}
}
GLOBALUPDATECOX = new Object();
if (GLOBAL_PLAYER.aniclip != undefined) {
if (GLOBAL_USE_SHADOWS) {
_parent.playershad.t.aniclip.gotoAndStop(GLOBAL_PLAYER.aniclip._currentframe);
_parent.playershad.t.aniclip.mc.gotoAndStop(GLOBAL_PLAYER.aniclip.mc._currentframe);
_parent.playershad.t.aniclip.mc.mc.gotoAndStop(GLOBAL_PLAYER.aniclip.mc.mc._currentframe);
GLOBAL_PLAYER.aniclip.mc.head._visible = _root.GLOBAL_PLAYERHEAD;
GLOBAL_PLAYER.aniclip.mc.head2._visible = _root.GLOBAL_PLAYERHEAD;
GLOBAL_PLAYER.aniclip.mc.head3._visible = _root.GLOBAL_PLAYERHEAD;
_parent.playershad.t.aniclip.mc.head._visible = _root.GLOBAL_PLAYERHEAD;
_parent.playershad.t.aniclip.mc.head2._visible = _root.GLOBAL_PLAYERHEAD;
_parent.playershad.t.aniclip.mc.head3._visible = _root.GLOBAL_PLAYERHEAD;
}
}
for (var skey in GLOBAL_SYNCMAP) {
var S = GLOBAL_SYNCMAP[skey];
if (S.owner._visible) {
if (S.target != undefined) {
if (S.owner.__animcurrent == S.framename) {
var anis = S.owner.__animnamemap[S.framename];
if (anis != undefined) {
var delfram = (S.owner._currentframe - anis.fmin);
if (!S.fixedframemap.hasOwnProperty(S.framename)) {
S.target.gotoAndStop(S.framename);
S.fixedframemap[S.framename] = S.target._currentframe;
}
S.target.gotoAndStop(S.fixedframemap[S.framename] + delfram);
S.target._visible = true;
if (S.target._alpha < 100) {
S.target._alpha = S.target._alpha + 5;
}
if (S.target._alpha > 95) {
S.target._alpha = 100;
}
} else {
trace((("not mapped yet? " + anis) + " ") + S.framename);
}
}
}
}
if (S.funccall != undefined) {
S.funccall(this, S.owner, S.target);
}
}
musicUpdate();
if (correctMyExternalEnemy) {
GLOBAL_ENEMY._manuallyReset = undefined;
goPlay(getEnemyT(GLOBAL_ENEMY), "idle");
getEnemyT(GLOBAL_ENEMY).gotoAndStop(getEnemyT(GLOBAL_ENEMY)._totalframes);
getEnemyT(GLOBAL_ENEMY).gotoAndPlay("idle");
_parent.camControl.clearDrawingByIndex(GLOBAL_ENEMY._currentframe);
}
if (GLOBAL_ENEMY.is_external) {
if (correctMyExternalEnemy || (GLOBAL_ENEMY.is_external_loaded == 0)) {
_stopExtSounds();
}
}
GLOBAL_POSTSYNC(this, getEnemyT(GLOBAL_ENEMY), undefined);
if (GLOBAL_DELAY_STARTNOISE > 0) {
GLOBAL_DELAY_STARTNOISE--;
if (GLOBAL_DELAY_STARTNOISE < 1) {
_startExtSounds();
}
}
_VICTIM_SYNC_CLIP_PER_FRAME_COUNTER_MAYBE = _VICTIM_SYNC_CLIP_PER_FRAME_COUNTER_MAYBE_INSIDE + 1;
_root.stop();
}
Symbol 2 MovieClip [defaultdotshadow] Frame 1
Symbol 25 MovieClip Frame 1
var setBar = function (factor) {
if (factor < 0) {
factor = 0;
}
if (factor > 1) {
factor = 1;
}
prog._xscale = factor * 100;
};
Symbol 33 MovieClip Frame 1
stop();
Symbol 33 MovieClip Frame 55
var progressSet = function (factor) {
progbar.setBar(factor);
};
Symbol 47 MovieClip Frame 1
stop();
Symbol 101 MovieClip Frame 1
stop();
Symbol 108 MovieClip Frame 1
stop();
Symbol 110 MovieClip Frame 1
function addMessage(msg, flags) {
if (flags != undefined) {
if ((flags & 1) != 0) {
if (msg.length < msgDisplay.length) {
var _local2 = msgDisplay.substr((msgDisplay.length - msg.length) - 1, msg.length);
if (_local2 == msg) {
msgTimeout = 0;
downDeltaTimeout = msg.length;
return(undefined);
}
}
}
}
msgDisplay = msgDisplay + (msg + newline);
}
function clearMessage() {
msgDisplay = "";
msgTextText = "";
msgChar = 0;
}
function setMessageSpeed(cpf) {
msgSpeed = cpf;
}
function setMessage(msg, speed) {
clearMessage();
addMessage(msg);
if (speed != undefined) {
setMessageSpeed(speed);
}
}
function setTarget(mclip) {
followTarget = mclip;
}
function update() {
shouldUpdate = true;
}
var msgDisplay = "";
var msgSpeed = 1;
var msgChar = 0;
var msgTimeout = 0;
var originalPosition = _y;
var deltaPosition = 48;
var shouldUpdate = true;
var followTarget = undefined;
var downDeltaTimeout = 0;
msgTextText = "";
this.onEnterFrame = function () {
if ((((_xmouse > 0) && (_ymouse > 0)) && (_xmouse < 296)) && (_ymouse < 48)) {
_alpha = 20;
} else {
_alpha = 100;
}
if (shouldUpdate) {
shouldUpdate = false;
var _local10 = msgText.scroll;
var _local9 = msgText.maxscroll;
var _local5 = 0;
var _local4 = 0;
if (msgDisplay.length > 0) {
downDeltaTimeout = downDeltaTimeout - msgSpeed;
if (msgSpeed == 0) {
downDeltaTimeout = 0;
}
if (msgChar < msgDisplay.length) {
if (msgSpeed > 0) {
var _local6 = msgDisplay.charAt(msgChar);
msgTextText = msgTextText + _local6;
msgChar++;
} else {
msgTextText = msgDisplay;
msgChar = msgDisplay.length;
}
_local5 = 1;
msgTimeout = 0;
} else {
msgTimeout++;
if (msgTimeout > 90) {
_local4 = 1;
downDeltaTimeout = 0;
}
}
} else {
_local4 = 1;
}
if (downDeltaTimeout > 0) {
_local5 = 1;
} else {
downDeltaTimeout = 0;
}
var _local3 = originalPosition;
if (_local4) {
_local3 = originalPosition;
} else {
_local3 = originalPosition + ((deltaPosition * this._yscale) / 100);
}
if (_local3 < this._y) {
this._y = this._y - 4;
if (this._y < _local3) {
this._y = _local3;
}
} else {
this._y = this._y + 4;
if (this._y > _local3) {
this._y = _local3;
}
}
if (this._y <= originalPosition) {
clearMessage();
_visible = false;
} else {
_visible = true;
}
var _local7 = msgText.scroll;
var _local8 = msgText.maxscroll;
msgTextText.scroll = msgTextText.maxscroll - 1;
if (((!_local5) || (_local4)) || (followTarget == undefined)) {
bubbletail._visible = false;
} else {
var _local2 = {x:0, y:0};
followTarget.localToGlobal(_local2);
this.globalToLocal(_local2);
if (_local2.x < 32) {
_local2.x = 32;
} else if (_local2.x > 264) {
_local2.x = 264;
}
bubbletail._x = _local2.x;
bubbletail._visible = true;
}
}
};
Symbol 112 MovieClip Frame 10
stop();
Symbol 114 Button
on (release) {
guiButtonRelease = 1;
}
Symbol 119 MovieClip Frame 5
if (_root.GLOBAL_ASSISTANCE) {
} else {
gotoAndPlay ("off");
}
Symbol 121 Button
on (press) {
var parc = _parent.controller;
parc.toggleFXQuality();
}
Symbol 124 Button
on (release, releaseOutside) {
mousedown = 0;
}
on (press) {
mousedown = 1;
}
Instance of Symbol 127 MovieClip "sldbak" in Symbol 129 MovieClip Frame 1
onClipEvent (enterFrame) {
_parent.Mx = _xmouse;
_parent.My = _ymouse;
}
Symbol 131 Button
on (press) {
var parc = _parent.controller;
parc.displayHelp();
}
Symbol 134 Button
on (press) {
var parc = _parent.controller;
parc.toggleQuality();
}
Symbol 135 Button
on (press) {
var parc = _parent.controller;
parc.toggleSlowMode();
}
Symbol 137 Button
on (press) {
var parc = _parent.controller;
parc.GLOBAL_TRUEPAUSE = !parc.GLOBAL_TRUEPAUSE;
}
Instance of Symbol 127 MovieClip "sldbak" in Symbol 139 MovieClip Frame 1
onClipEvent (enterFrame) {
_parent.Mx = _xmouse;
_parent.My = _ymouse;
}
Symbol 141 Button
on (press) {
gotoAndStop ("debuggui");
}
Symbol 142 Button
on (press) {
gotoAndStop ("nogui");
}
Symbol 161 Button
on (press) {
_parent.controller.resetPlayer();
}
Symbol 164 Button
on (press) {
selectorDown = 1;
return(undefined);
}
Symbol 166 Button
on (press) {
emptygrid.drawnyet = undefined;
emptygrid.selectnext = selectf;
_parent.controller.pickEnemy(0);
_parent.controller.resetPlayer();
}
Symbol 167 Button
on (press) {
var xp = hpslider._xmouse;
var yp = hpslider._ymouse;
var xs = hpslider._width;
var ys = hpslider._height;
var factor = (Math.abs(yp) / xs);
factor = (factor - 0.1) / 0.2;
_parent.controller.setPlayerHP(factor * 63);
}
Symbol 170 Button
on (press) {
_parent.controller.setPlayerMode();
}
Symbol 175 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_WEAPON_TYPE);
stop();
Symbol 175 MovieClip Frame 2
gotoAndStop(_root.GLOBAL_WEAPON_TYPE);
stop();
Symbol 175 MovieClip Frame 3
gotoAndStop(_root.GLOBAL_WEAPON_TYPE);
stop();
Symbol 175 MovieClip Frame 4
gotoAndStop(_root.GLOBAL_WEAPON_TYPE);
stop();
Symbol 199 MovieClip Frame 1
function setbarvalue(v) {
if (v < 0) {
v = 0;
}
colorv = int(v / 64);
if (colorv == 0) {
_root.colorize(bar, 0, 200, 0, 0);
_root.colorize(nextcolor, 0, 0, 0, 0);
} else if (colorv == 1) {
_root.colorize(bar, 200, 200, 0, 0);
_root.colorize(nextcolor, 0, 200, 0, 0);
} else if (colorv == 2) {
_root.colorize(bar, 255, 128, 0, 0);
_root.colorize(nextcolor, 200, 200, 0, 0);
} else if (colorv == 3) {
_root.colorize(bar, 200, 0, 0, 0);
_root.colorize(nextcolor, 255, 128, 0, 0);
} else if (colorv == 4) {
_root.colorize(bar, 200, 200, 200, 0);
_root.colorize(nextcolor, 200, 0, 0, 0);
} else {
_root.colorize(bar, 200, 200, 200, 0);
_root.colorize(nextcolor, 50, 50, 50, 0);
}
v = v % 64;
bar._yscale = v / 0.64;
}
Symbol 199 MovieClip Frame 2
stop();
Symbol 204 Button
on (press) {
gotoAndStop(_root.controller.GLOBAL_GAME_GUI_TYPE);
}
Symbol 206 Button
on (release) {
exturllist = _parent.controller.getURLList();
}
Symbol 209 Button
on (release) {
_parent.controller.loadURLList(exturllist);
}
Symbol 216 Button
on (press) {
_root.controller.USER_ACCEPTED_AUP = -1;
gotoAndStop(_root.controller.GLOBAL_GAME_GUI_TYPE);
}
Symbol 219 Button
on (press) {
_root.controller.USER_ACCEPTED_AUP = 1;
gotoAndStop(_root.controller.GLOBAL_GAME_GUI_TYPE);
}
Symbol 225 MovieClip Frame 1
function updateCallback() {
}
function camControl() {
parentColor.setTransform(camColor.getTransform());
prevcamx = _parent._x;
prevcamy = _parent._y;
var _local4 = this._xscale / 100;
var _local3 = this._yscale / 100;
var _local6 = sX / (fixX * _local4);
var _local5 = sY / (fixY * _local3);
_parent._x = cX - (this._x * _local6);
_parent._y = cY - (this._y * _local5);
_parent._xscale = 100 * _local6;
_parent._yscale = 100 * _local5;
_parent._xscale = _parent._xscale * cameraScaleMode;
_parent._yscale = _parent._yscale * cameraScaleMode;
_parent._x = _parent._x - (_local4 * ((fixX * cameraScaleMode) - fixX));
_parent._y = _parent._y - (_local3 * ((fixY * cameraScaleMode) - fixY));
currcamx = _parent._x;
currcamy = _parent._y;
mouseX = _xmouse;
mouseY = _ymouse;
updateCallback();
}
function resetStage() {
var _local2 = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0};
parentColor.setTransform(_local2);
_parent._xscale = 100;
_parent._yscale = 100;
_parent._x = 0;
_parent._y = 0;
prevcamx = _parent._x;
prevcamy = _parent._y;
currcamx = _parent._x;
currcamy = _parent._y;
_xscale = 100;
_yscale = 100;
_x = (fixX / 2);
_y = (fixY / 2);
}
parentColor.setTransform(camColor.getTransform());
var fixX = 426;
var fixY = 240;
var cameraScaleMode = 1;
this.stop();
var oldMode = Stage.scaleMode;
Stage.scaleMode = "exactFit";
var cX = (Stage.width / 2);
var cY = (Stage.height / 2);
var sX = Stage.width;
var sY = Stage.height;
Stage.scaleMode = oldMode;
var camColor = new Color(this);
var parentColor = new Color(_parent);
this.onEnterFrame = camControl;
camControl();
this.onUnload = resetStage;
Symbol 225 MovieClip Frame 11
function getCellCoords(idex, selectmax4, delx, dern, ncolumns) {
if (dern == undefined) {
dern = 1;
}
if (idex == undefined) {
idex = 0;
}
if (idex < 0) {
idex = 0;
}
if (idex > 1024) {
idex = 0;
}
var _local3 = 0;
while (idex >= selectmax4) {
idex = idex - selectmax4;
_local3++;
}
var _local4 = new Object();
_local4.xMin = (idex * delx) + dern;
_local4.xMax = ((idex * delx) + delx) - dern;
_local4.yMin = ((_local3 * 36) / ncolumns) + dern;
_local4.yMax = (((_local3 * 36) / ncolumns) + (36 / ncolumns)) - dern;
return(_local4);
}
function drawCell(M, idex, selectmax4, delx, color, dern, ncolumns) {
var _local1 = getCellCoords(idex, selectmax4, delx, dern, ncolumns);
M.lineStyle(0, 0);
M.beginFill(color, 100);
M.moveTo(_local1.xMin, _local1.yMin);
M.lineTo(_local1.xMax, _local1.yMin);
M.lineTo(_local1.xMax, _local1.yMax);
M.lineTo(_local1.xMin, _local1.yMax);
M.lineTo(_local1.xMin, _local1.yMin);
M.endFill();
}
function drawCellBits(M, bits, idex, selectmax4, delx, color, dern, ncolumns) {
var _local2 = getCellCoords(idex, selectmax4, delx, dern, ncolumns);
var _local4 = (_local2.xMin + _local2.xMax) / 2;
var _local3 = (_local2.yMin + _local2.yMax) / 2;
if (bits & 1) {
M.lineStyle(0, 0);
M.beginFill(color, 100);
M.moveTo(_local2.xMin, _local2.yMin);
M.lineTo(_local4, _local2.yMin);
M.lineTo(_local4, _local3);
M.lineTo(_local2.xMin, _local3);
M.lineTo(_local2.xMin, _local2.yMin);
M.endFill();
}
if (bits & 2) {
M.lineStyle(0, 0);
M.beginFill(color, 100);
M.moveTo(_local4, _local2.yMin);
M.lineTo(_local2.xMax, _local2.yMin);
M.lineTo(_local2.xMax, _local3);
M.lineTo(_local4, _local3);
M.lineTo(_local4, _local2.yMin);
M.endFill();
}
if (bits & 4) {
M.lineStyle(0, 0);
M.beginFill(color, 100);
M.moveTo(_local2.xMin, _local3);
M.lineTo(_local4, _local3);
M.lineTo(_local4, _local2.yMax);
M.lineTo(_local2.xMin, _local2.yMax);
M.lineTo(_local2.xMin, _local3);
M.endFill();
}
if (bits & 8) {
M.lineStyle(0, 0);
M.beginFill(color, 100);
M.moveTo(_local4, _local3);
M.lineTo(_local2.xMax, _local3);
M.lineTo(_local2.xMax, _local2.yMax);
M.lineTo(_local4, _local2.yMax);
M.lineTo(_local4, _local3);
M.endFill();
}
if (bits & 16) {
var _local6 = _local4 - (_local4 / 2);
var _local5 = _local3 - (_local3 / 2);
M.lineStyle(0, 0);
M.beginFill(color, 100);
M.moveTo(_local4 - _local6, _local3 - _local5);
M.lineTo(_local4 + _local6, _local3 - _local5);
M.lineTo(_local4 + _local6, _local3 + _local5);
M.lineTo(_local4 - _local6, _local3 + _local5);
M.lineTo(_local4 - _local6, _local3 - _local5);
M.endFill();
}
}
function drawCellX(M, idex, selectmax4, delx, color, dern, ncolumns) {
var _local1 = getCellCoords(idex, selectmax4, delx, dern, ncolumns);
M.lineStyle(0.5, color, 100);
M.beginFill(0, 0);
M.moveTo(_local1.xMin, _local1.yMin);
M.lineTo(_local1.xMax, _local1.yMax);
M.moveTo(_local1.xMax, _local1.yMin);
M.lineTo(_local1.xMin, _local1.yMax);
M.endFill();
}
function drawCellChar(M, uchar, idex, selectmax4, delx, color, dern, ncolumns) {
var _local1 = getCellCoords(idex, selectmax4, delx, dern, ncolumns);
M.lineStyle(0.5, color, 100);
M.beginFill(0, 0);
var _local5 = (_local1.xMin + _local1.xMax) / 2;
var _local4 = (_local1.yMin + _local1.yMax) / 2;
if (char8segmap.hasOwnProperty(uchar)) {
var _local3 = char8segmap[uchar];
if (_local3 & 1) {
M.moveTo(_local1.xMin, _local1.yMin);
M.lineTo(_local1.xMax, _local1.yMin);
}
if (_local3 & 2) {
M.moveTo(_local1.xMin, _local1.yMin);
M.lineTo(_local1.xMin, _local4);
}
if (_local3 & 4) {
M.moveTo(_local1.xMin, _local4);
M.lineTo(_local1.xMax, _local4);
}
if (_local3 & 8) {
M.moveTo(_local1.xMax, _local1.yMin);
M.lineTo(_local1.xMax, _local4);
}
if (_local3 & 16) {
M.moveTo(_local1.xMin, _local4);
M.lineTo(_local1.xMin, _local1.yMax);
}
if (_local3 & 32) {
M.moveTo(_local1.xMin, _local1.yMax);
M.lineTo(_local1.xMax, _local1.yMax);
}
if (_local3 & 64) {
M.moveTo(_local1.xMax, _local4);
M.lineTo(_local1.xMax, _local1.yMax);
}
}
M.endFill();
}
function gridSelectFrom(max, may) {
}
function clearDrawingByIndex(enemyid) {
newGui.drawMap[enemyid] = 1;
}
function updateCallback() {
if (newGui == undefined) {
var _local14 = new Object();
_local14.activeEnemySelection = 0;
_local14.enemySelectionFade = 0;
_local14.bitmapChars = undefined;
_local14.bitmapIconStored = undefined;
_local14.bitmapScale = 3;
_local14.cellSize = 100;
_local14.maxCount = 0;
_local14.drawMap = new Object();
newGui = _local14;
}
var _local12 = 426;
var _local13 = 36;
var _local32 = -213.35;
var _local28 = -120;
var _local52 = 36;
var _local26 = new Object({xMin:_local32, xMax:_local32 + 148, yMin:_local28, yMax:_local28 + 36});
var _local57 = _local32;
var _local45 = _local28 - _local52;
var _local31 = false;
var _local10 = selectdown.drawText;
if (_local10.mytext == undefined) {
var _local27 = new TextFormat();
_local27.font = "Arial";
_local27.size = 16;
_local27.color = 0;
_local10.createTextField("mytext", 0, 0, 0, selectdown._width, 24);
_local10.mytext.multiline = false;
_local10.mytext.wordWrap = false;
_local10.mytext.text = "";
_local10.mytext.embedFonts = false;
_local10.mytext.selectable = false;
_local10.mytext.antiAliasType = "normal";
_local10.mytext.backgroundColor = 2155905152;
_local10.mytext.textColor = 0;
_local10.useformat = _local27;
_local10.mytext.setNewTextFormat(_local10.useformat);
}
_local10.mytext.text = "";
_local10._x = 0;
var _local24 = selectdown.drawinto;
var _local4 = selectdown.drawSelector;
if (newGui.bitmapChars == undefined) {
newGui.bitmapChars = new flash.display.BitmapData(newGui.bitmapScale * _local12, newGui.bitmapScale * _local13, true, 0);
_local24.attachBitmap(newGui.bitmapChars, 0, "auto", false);
_local24._xscale = 100 / newGui.bitmapScale;
_local24._yscale = 100 / newGui.bitmapScale;
}
var _local15 = _parent.controller.GLOBAL_MAXENEMYFRAMES;
if (newGui.maxCount != _local15) {
newGui.drawMap = new Object();
newGui.maxCount = _local15;
var _local23 = new flash.geom.Rectangle(0, 0, newGui.bitmapScale * _local12, newGui.bitmapScale * _local13);
newGui.bitmapChars.fillRect(_local23, 0);
var _local5 = Math.min(_local13, _local12);
while ((Math.floor(_local12 / _local5) * Math.floor(_local13 / _local5)) < _local15) {
_local5--;
}
newGui.cellSize = _local5;
_local15++;
var _local8 = Math.floor(_local12 / _local5);
var _local11 = Math.floor(_local13 / _local5);
_local4.clear();
var _local20 = newGui.cellSize / 64;
var _local7 = 0;
while (_local7 < _local11) {
var _local3 = 0;
while (_local3 < _local8) {
var _local6 = (_local3 + (_local7 * _local8)) + 1;
var _local25 = _parent.controller.enemyGetHashData(_local6);
if (_local25 != undefined) {
var _local22 = 0;
_local22 = _local22 | -16777216;
_local22 = _local22 | ((int(_local25.red * 255) & 255) << 16);
_local22 = _local22 | ((int(_local25.green * 255) & 255) << 8);
_local22 = _local22 | (int(_local25.blue * 255) & 255);
_local23 = new flash.geom.Rectangle((newGui.bitmapScale * newGui.cellSize) * _local3, (newGui.bitmapScale * newGui.cellSize) * _local7, (newGui.bitmapScale * 64) * _local20, (newGui.bitmapScale * 64) * _local20);
var _local37 = new flash.geom.Rectangle(((newGui.bitmapScale * newGui.cellSize) * _local3) + 1, ((newGui.bitmapScale * newGui.cellSize) * _local7) + 1, ((newGui.bitmapScale * 64) * _local20) - 2, ((newGui.bitmapScale * 64) * _local20) - 2);
newGui.bitmapChars.fillRect(_local37, _local22);
var _local38 = _parent.controller.enemyGetIconBitmap(_local6);
if (_local38 != undefined) {
trace((("Enemy [" + _local6) + "] has icon: ") + _local38);
var _local36 = new flash.geom.Matrix();
_local36.translate(_local23.x, _local23.y);
newGui.bitmapChars.draw(_local38, _local36, undefined, "normal", _local23, false);
}
}
_local3 = _local3 + 1;
}
_local7 = _local7 + 1;
}
_local4._x = 0;
_local4._y = 0;
_local4._xscale = 100;
_local4._yscale = 100;
_local4.clear();
_local4.lineStyle(0, 8421504, 255);
var _local9 = 0;
while (_local9 <= _local8) {
_local4.moveTo(_local9 * _local5, 0);
_local4.lineTo(_local9 * _local5, _local11 * _local5);
_local9 = _local9 + 1;
}
_local9 = 0;
while (_local9 <= _local11) {
_local4.moveTo(0, _local9 * _local5);
_local4.lineTo(_local8 * _local5, _local9 * _local5);
_local9 = _local9 + 1;
}
_local4.lineStyle(0, 8421504, 255);
_local4.moveTo(0, 0);
_local4.lineTo(_local5, _local5);
_local4.moveTo(_local5, 0);
_local4.lineTo(0, _local5);
var _local17 = _local4.transform.matrix.clone();
var _local44 = _local24.transform.matrix.clone();
_local44.invert();
_local17.concat(_local44);
var _local48;
var _local49;
_local23 = undefined;
var _local64 = false;
newGui.bitmapChars.draw(_local4, _local17, _local48, _local49, _local23, true);
_local4.clear();
_local4.beginFill(16777215, 25);
_local4.lineStyle(1, 16711808, 255);
_local4.moveTo(0, 0);
_local4.lineTo(100, 0);
_local4.lineTo(100, 100);
_local4.lineTo(0, 100);
_local4.lineTo(0, 0);
_local4.endFill(16777215, 25);
_local4._xscale = newGui.cellSize;
_local4._yscale = newGui.cellSize;
} else {
var _local46 = _parent.controller.enemyGetID() - 1;
if (!newGui.drawMap.hasOwnProperty(_local46)) {
newGui.drawMap[_local46] = 1;
}
if (newGui.drawMap[_local46] != 3) {
newGui.drawMap[_local46] = newGui.drawMap[_local46] + 1;
} else {
newGui.drawMap[_local46] = newGui.drawMap[_local46] + 1;
var _local43 = Math.floor(_local12 / newGui.cellSize);
var _local62 = Math.floor(_local13 / newGui.cellSize);
var _local58 = Math.floor(_local46 % _local43);
var _local56 = Math.floor(_local46 / _local43);
var _local35 = _local58 * newGui.cellSize;
var _local34 = _local56 * newGui.cellSize;
var _local20 = newGui.cellSize / 64;
var _local18 = _parent.controller.GLOBAL_ENEMY;
var _local33 = _local18;
if (_local18.enemy.enemy.head != undefined) {
_local33 = _local18.enemy.enemy.head;
} else if (_local18.enemy.head != undefined) {
_local33 = _local18.enemy.head;
}
var _local17 = _local18.transform.matrix.clone();
var _local19 = 1;
var _local21 = _local33.getBounds(_root);
var _local40 = _local21.xMax - _local21.xMin;
var _local41 = _local21.yMax - _local21.yMin;
var _local53 = _local18._x - _local21.xMin;
var _local54 = _local18._y - _local21.yMin;
if (_local40 > 0) {
_local19 = 64 / _local40;
}
if (_local41 > 0) {
var _local39 = 64 / _local41;
if (_local39 < _local19) {
_local19 = _local39;
}
}
_local17.scale(_local19, _local19);
_local17.translate((-_local17.tx) + (_local19 * _local53), (-_local17.ty) + (_local19 * _local54));
_local17.scale(_local20, _local20);
_local17.translate(_local35, _local34);
var _local44 = _local24.transform.matrix.clone();
_local44.invert();
_local17.concat(_local44);
var _local23 = new flash.geom.Rectangle(newGui.bitmapScale * _local35, newGui.bitmapScale * _local34, (newGui.bitmapScale * 64) * _local20, (newGui.bitmapScale * 64) * _local20);
var _local37 = new flash.geom.Rectangle((newGui.bitmapScale * _local35) + 1, (newGui.bitmapScale * _local34) + 1, ((newGui.bitmapScale * 64) * _local20) - 2, ((newGui.bitmapScale * 64) * _local20) - 2);
var _local25 = _parent.controller.enemyGetHashData(_parent.controller.enemyGetID());
if (_local25 != undefined) {
var _local22 = 0;
_local22 = _local22 | -16777216;
_local22 = _local22 | ((int(_local25.red * 255) & 255) << 16);
_local22 = _local22 | ((int(_local25.green * 255) & 255) << 8);
_local22 = _local22 | (int(_local25.blue * 255) & 255);
newGui.bitmapChars.fillRect(_local37, _local22);
} else {
newGui.bitmapChars.fillRect(_local37, 0);
}
var _local38 = _parent.controller.enemyGetIconBitmap(_parent.controller.enemyGetID());
if (_local38 == undefined) {
var _local55 = _parent.controller.GLOBAL_ENEMY._quality;
_parent.controller.GLOBAL_ENEMY._quality = "LOW";
newGui.bitmapChars.draw(_parent.controller.GLOBAL_ENEMY, _local17, undefined, undefined, _local23, false);
_parent.controller.GLOBAL_ENEMY._quality = _local55;
_parent.controller.enemySetIconBitmap(_parent.controller.enemyGetID(), newGui.bitmapChars, _local23);
} else {
var _local36 = new flash.geom.Matrix();
_local36.translate(_local23.x, _local23.y);
newGui.bitmapChars.draw(_local38, _local36, undefined, "normal", _local23, true);
}
}
}
if (newGui.activeEnemySelection) {
_local31 = 1;
var _local43 = Math.floor(_local12 / newGui.cellSize);
var _local62 = Math.floor(_local13 / newGui.cellSize);
var _local30 = Math.floor((selectdown._xmouse - 0) / newGui.cellSize);
var _local29 = Math.floor((selectdown._ymouse - 0) / newGui.cellSize);
var _local16 = _local30 + (_local29 * _local43);
if ((_local16 > 0) && (_local16 < newGui.maxCount)) {
} else {
_local16 = 0;
}
_local4._visible = false;
if ((_local30 >= 0) && (_local30 < _local43)) {
if ((_local29 >= 0) && (_local29 < _local62)) {
if ((_local16 > 0) && (_local16 < newGui.maxCount)) {
_local4._x = 0 + (_local30 * newGui.cellSize);
_local4._y = 0 + (_local29 * newGui.cellSize);
_local4._xscale = newGui.cellSize;
_local4._yscale = newGui.cellSize;
_local4._visible = true;
}
}
}
if (!_local4._visible) {
var _local46 = _parent.controller.enemyGetID() - 1;
_local43 = Math.floor(_local12 / newGui.cellSize);
_local62 = Math.floor(_local13 / newGui.cellSize);
var _local58 = Math.floor(_local46 % _local43);
var _local56 = Math.floor(_local46 / _local43);
_local4._x = 0 + (_local58 * newGui.cellSize);
_local4._y = 0 + (_local56 * newGui.cellSize);
_local4._xscale = newGui.cellSize;
_local4._yscale = newGui.cellSize;
_local4._visible = true;
var _local47 = new flash.geom.ColorTransform();
_local47.blueMultiplier = 0.5;
_local47.greenMultiplier = 0.5;
_local47.redMultiplier = 0.5;
var _local51 = new flash.geom.Transform(_local4);
_local51.colorTransform = _local47;
} else {
var _local47 = new flash.geom.ColorTransform();
var _local51 = new flash.geom.Transform(_local4);
_local51.colorTransform = _local47;
var _local50 = _parent.controller.getEnemyURLName(_local16 + 1);
_local10.mytext.text = _local50;
_local10._y = 0;
if (selectdown._ymouse < 24) {
_local10._y = 24;
}
}
if (selectdown.guiButtonRelease) {
newGui.activeEnemySelection = 0;
if (_local16 > 0) {
_parent.controller.pickEnemy(_local16 + 1);
_parent.controller.resetPlayer();
}
} else {
_local45 = _local28;
}
} else {
_local31 = 0;
var _local42 = false;
if ((_xmouse < _local26.xMax) && (_xmouse > _local26.xMin)) {
if ((_ymouse < _local26.yMax) && (_ymouse > _local26.yMin)) {
if (selectorDown) {
_local42 = true;
}
}
}
if (_local42) {
newGui.activeEnemySelection = 1;
}
}
selectdown._x = _local57;
selectdown._y = _local45;
selectdown._visible = _local31;
selectdown.guiButtonRelease = 0;
selectorDown = 0;
}
var blockX = 16;
var blockY = 0;
var blockWidth = 128;
var blockHeight = 36;
var blockColumns = 5;
char8segmap = new Object();
char8segmap["0"] = 91;
char8segmap["1"] = 72;
char8segmap["2"] = 61;
char8segmap["3"] = 109;
char8segmap["4"] = 78;
char8segmap["5"] = 103;
char8segmap["6"] = 119;
char8segmap["7"] = 73;
char8segmap["8"] = 127;
char8segmap["9"] = 79;
char8segmap.A = 95;
char8segmap.B = 118;
char8segmap.C = 52;
char8segmap.D = 124;
char8segmap.E = 55;
char8segmap.F = 23;
char8segmap.G = 115;
char8segmap.H = 94;
char8segmap.I = 64;
char8segmap.J = 120;
char8segmap.K = 30;
char8segmap.L = 50;
char8segmap.M = 92;
char8segmap.N = 84;
char8segmap.O = 116;
char8segmap.P = 31;
char8segmap.Q = 27;
char8segmap.R = 20;
char8segmap.S = 103;
char8segmap.T = 19;
char8segmap.U = 122;
char8segmap.V = 112;
char8segmap.W = 14;
char8segmap.X = 94;
char8segmap.Y = 78;
char8segmap.Z = 28;
var newGui = undefined;
Symbol 225 MovieClip Frame 18
stop();
Symbol 225 MovieClip Frame 27
function updateCallback() {
}
Symbol 225 MovieClip Frame 33
function updateCallback() {
}
exturl = _root.externalURL;
Symbol 225 MovieClip Frame 44
var enemyid = _parent.controller.enemyGetID();
var enemydata = _parent.controller.GLOBAL_ENEMY_DATA[enemyid];
var enemyurl = _parent.controller.getEnemyURL(enemyid);
trace(enemyurl);
enemyurlname = enemyurl;
Symbol 226 MovieClip Frame 1
stop();
Symbol 226 MovieClip Frame 2
stop();
Symbol 235 MovieClip Frame 1
stop();
Symbol 235 MovieClip Frame 8
removeMovieClip(this);
_parent.removeMovieClip(this);
Instance of Symbol 236 MovieClip "entertainor" in Symbol 237 MovieClip Frame 1
onClipEvent (load) {
function FireOrange(x, y) {
if (gActiveOranges < 16) {
var newname = ("ong_" + gGarbageClipCurr);
gGarbageClip.duplicateMovieClip(newname, gGarbageClipCurr + 1024);
var clip = eval ("_parent." + newname);
clip._x = x;
clip._y = y;
clip._xvel = (Math.random() * 32) - 16;
clip._yvel = (Math.random() * 32) - 16;
clip._xscale = 12 + (Math.random() * 12);
clip._yscale = clip._xscale;
delmc._rotation = 0;
clip.destroy = false;
clip.gotoAndStop(1);
gGarbageClipCurr++;
if (gGarbageClipCurr > 256) {
gGarbageClipCurr = 0;
}
gGarbageClips.push(clip);
gActiveOranges++;
}
}
var gGarbageClip = _parent.dup_orange;
var gGarbageClipCurr = 0;
var gGarbageClips = [];
var gMouseState = 0;
var gMouseXPrev = 0;
var gMouseYPrev = 0;
var gTimer = 5;
var gFieldWidth = 1000;
var gFieldHeight = 700;
var gActiveOranges = 0;
var gGameScore = 0;
}
onClipEvent (enterFrame) {
gTimer = gTimer + 1;
if (gTimer > 5) {
FireOrange(Math.random() * gFieldWidth, Math.random() * gFieldHeight);
gTimer = 0;
}
var remarray = [];
var hitany = 0;
var clickany = 0;
var i = 0;
var imax = gGarbageClips.length;
while (i < imax) {
var mc = gGarbageClips[i];
if (gMouseState) {
var dx = (_parent._xmouse - mc._x);
var dy = (_parent._ymouse - mc._y);
var dm = ((dx * dx) + (dy * dy));
if (dm < (mc._xscale * mc._xscale)) {
remarray.push(i);
hitany = hitany + 1;
}
clickany = clickany + 1;
}
mc._yvel = mc._yvel + 0.327;
mc._y = mc._y + mc._yvel;
mc._x = mc._x + mc._xvel;
if (mc._x < 0) {
mc._x = -mc._x;
mc._xvel = -mc._xvel;
} else if (mc._x > gFieldWidth) {
mc._x = gFieldWidth + (gFieldWidth - mc._x);
mc._xvel = -mc._xvel;
}
if (mc._y < 0) {
mc._y = -mc._y;
mc._yvel = -mc._yvel;
} else if (mc._y > gFieldHeight) {
mc._y = gFieldHeight + (gFieldHeight - mc._y);
mc._yvel = -mc._yvel;
}
i++;
}
if (clickany) {
if (hitany == 0) {
gGameScore = gGameScore - 1;
if (gGameScore < 0) {
gGameScore = 0;
}
}
}
var r = 0;
var rcount = 0;
var rmax = remarray.length;
while (r < rmax) {
var delmc = gGarbageClips[remarray[r] - rcount];
gGameScore = gGameScore + (Math.floor(delmc._xscale) - 11);
delmc.play();
delmc._rotation = Math.random() * 360;
gGarbageClips.splice(remarray[r] - rcount, 1);
gActiveOranges--;
rcount++;
r++;
}
gMouseXPrev = _parent._xmouse;
gMouseYPrev = _parent._ymouse;
}
onClipEvent (mouseDown) {
gMouseState = gMouseState + 1;
}
onClipEvent (mouseUp) {
gMouseState = 0;
}
Symbol 487 MovieClip [__Packages.TexDa] Frame 0
class TexDa
{
function TexDa () {
}
static function lzssDecompress(input) {
var _local14 = 11;
var _local13 = 4;
var _local16 = 1;
var _local4 = 1 << _local14;
var _local15 = (1 << _local13) + _local16;
var _local7 = new Object();
_local7.currreadbyte = 0;
_local7.currreadbuf = 0;
_local7.currreadmask = 0;
var _local8 = function (D, n, S) {
var _local2;
var _local3;
_local3 = 0;
_local2 = 0;
while (_local2 < n) {
if (S.currreadmask == 0) {
if (S.currreadbyte < D.length) {
S.currreadbuf = D[S.currreadbyte];
S.currreadbyte++;
} else {
return(-1);
}
S.currreadmask = 128;
}
_local3 = _local3 << 1;
if (S.currreadbuf & S.currreadmask) {
_local3++;
}
S.currreadmask = S.currreadmask >> 1;
_local2++;
}
return(_local3);
};
var _local2 = 0;
var _local9 = 0;
var _local3 = 0;
var _local5 = 0;
var _local1 = 0;
var _local6 = new Array(2 * _local4);
_local2 = 0;
while (_local2 < (_local4 - _local15)) {
_local6[_local2] = 32;
_local2++;
}
_local5 = _local4 - _local15;
var _local11 = new Array();
_local1 = _local8(input, 1, _local7);
while (_local1 >= 0) {
if (_local1) {
_local1 = _local8(input, 8, _local7);
if (_local1 < 0) {
break;
}
_local11.push(_local1);
_local6[_local5++] = _local1;
_local5 = _local5 & (_local4 - 1);
} else {
_local2 = _local8(input, _local14, _local7);
if (_local2 < 0) {
break;
}
_local9 = _local8(input, _local13, _local7);
if (_local9 < 0) {
break;
}
_local3 = 0;
while (_local3 <= (_local9 + 1)) {
_local1 = _local6[(_local2 + _local3) & (_local4 - 1)];
_local11.push(_local1);
_local6[_local5++] = _local1;
_local5 = _local5 & (_local4 - 1);
_local3++;
}
}
_local1 = _local8(input, 1, _local7);
}
return(_local11);
}
static function lzssCompress(input) {
var _local24 = 11;
var _local22 = 4;
var _local19 = 1;
var _local4 = 1 << _local24;
var _local11 = (1 << _local22) + _local19;
var _local25 = function (output, S) {
S.bit_buffer = S.bit_buffer | S.bit_mask;
if (((S.bit_mask = S.bit_mask >> 1)) == 0) {
output.push(S.bit_buffer);
S.bit_buffer = 0;
S.bit_mask = 128;
S.codecount++;
}
};
var _local26 = function (output, S) {
if (((S.bit_mask = S.bit_mask >> 1)) == 0) {
output.push(S.bit_buffer);
S.bit_buffer = 0;
S.bit_mask = 128;
S.codecount++;
}
};
var _local23 = function (output, S) {
if (S.bit_mask != 128) {
output.push(S.bit_buffer);
S.codecount++;
}
};
var _local21 = function (output, c, S) {
var _local2 = 0;
S.putbit1(output, S);
_local2 = 256;
while (_local2 = _local2 >> 1 , _local2) {
if (c & _local2) {
S.putbit1(output, S);
} else {
S.putbit0(output, S);
}
}
};
var _local20 = function (output, x, y, S) {
var _local2 = 0;
S.putbit0(output, S);
_local2 = S.N;
while (_local2 = _local2 >> 1 , _local2) {
if (x & _local2) {
S.putbit1(output, S);
} else {
S.putbit0(output, S);
}
}
_local2 = 1 << S.EJ;
while (_local2 = _local2 >> 1 , _local2) {
if (y & _local2) {
S.putbit1(output, S);
} else {
S.putbit0(output, S);
}
}
};
var _local14 = new Object();
_local14.bit_buffer = 0;
_local14.bit_mask = 128;
_local14.codecount = 0;
_local14.N = _local4;
_local14.EJ = _local22;
_local14.putbit1 = _local25;
_local14.putbit0 = _local26;
_local14.flush_bit_buffer = _local23;
_local14.output1 = _local21;
_local14.output2 = _local20;
trace(_local14);
var _local17 = 0;
var _local3 = new Array(_local4 * 2);
var _local18 = new Array();
var _local7 = 0;
var _local27 = 0;
var _local28 = 0;
var _local1 = 0;
var _local2 = 0;
var _local15 = 0;
var _local16 = 0;
var _local8 = 0;
var _local5 = 0;
var _local13 = 0;
var _local9 = 0;
var _local6 = 0;
_local1 = 0;
while (_local1 < (_local4 - _local11)) {
_local3[_local1] = 32;
_local1++;
}
_local1 = _local4 - _local11;
while (_local1 < (_local4 * 2)) {
if (_local7 >= input.length) {
break;
}
_local6 = input[_local7];
_local7++;
_local3[_local1] = _local6;
_local17++;
_local1++;
}
_local9 = _local1;
_local5 = _local4 - _local11;
_local13 = 0;
while (_local5 < _local9) {
_local15 = ((_local11 <= (_local9 - _local5)) ? (_local11) : (_local9 - _local5));
_local16 = 0;
_local8 = 1;
_local6 = _local3[_local5];
_local1 = _local5 - 1;
while (_local1 >= _local13) {
if (_local3[_local1] == _local6) {
_local2 = 1;
while (_local2 < _local15) {
if (_local3[_local1 + _local2] != _local3[_local5 + _local2]) {
break;
}
_local2++;
}
if (_local2 > _local8) {
_local16 = _local1;
_local8 = _local2;
}
}
_local1--;
}
if (_local8 <= _local19) {
_local21(_local18, _local6, _local14);
} else {
_local20(_local18, _local16 & (_local4 - 1), _local8 - 2, _local14);
}
_local5 = _local5 + _local8;
_local13 = _local13 + _local8;
if (_local5 >= ((_local4 * 2) - _local11)) {
_local1 = 0;
while (_local1 < _local4) {
_local3[_local1] = _local3[_local1 + _local4];
_local1++;
}
_local9 = _local9 - _local4;
_local5 = _local5 - _local4;
_local13 = _local13 - _local4;
while (_local9 < (_local4 * 2)) {
if (_local7 >= input.length) {
break;
}
_local6 = input[_local7];
_local7++;
_local3[_local9++] = _local6;
_local17++;
}
}
}
_local23(_local18, _local14);
return(_local18);
}
static function lzssRegressionTest() {
var _local3 = new Array();
var _local5 = 1000;
var _local1 = 0;
while (_local1 < _local5) {
var _local4 = Math.floor(Math.random() * 255);
_local3.push(_local4);
if ((_local1 + 1) >= _local5) {
break;
}
var _local7 = Math.floor(Math.random() * 5);
var _local2 = 0;
while (_local2 < _local7) {
_local3.push(_local4);
_local1++;
if (_local1 >= _local5) {
break;
}
_local2++;
}
_local1++;
}
var _local8 = lzssCompress(_local3);
var _local6 = lzssDecompress(_local8);
if (_local6.length == _local3.length) {
var _local9 = _local3.length;
_local1 = 0;
while (_local1 < _local9) {
if (_local3[_local1] != _local6[_local1]) {
trace((((("LZSS FAILED @ " + _local1) + " ") + _local3[_local1]) + " ") + _local6[_local1]);
trace("C: " + _local8);
trace("D: " + _local6);
trace("S: " + _local3);
return(false);
}
_local1++;
}
trace("LZSS PASSED!");
trace("C: " + _local8.length);
trace((("D: " + _local6.length) + " %") + (100 * (_local8.length / _local6.length)));
trace("S: " + _local3.length);
return(true);
}
trace((("LZSS FAILED " + _local6.length) + " ==? ") + _local3.length);
trace("C: " + _local8);
trace("D: " + _local6);
trace("S: " + _local3);
return(false);
}
static function matchAny(v, a) {
var _local2 = a.length;
var _local1 = 0;
while (_local1 < _local2) {
if (a[_local1] == v) {
return(true);
}
_local1++;
}
return(false);
}
static function stringSanitizeAS(V) {
return(V);
}
static function objectToASRecursive(V) {
var _local5 = typeof(V);
var _local1 = "";
if (_local5 == "string") {
_local1 = _local1 + (("\"" + V) + "\"");
} else if (_local5 == "number") {
_local1 = _local1 + String(V);
} else if (_local5 == "boolean") {
_local1 = _local1 + String(V);
} else if (_local5 == "object") {
_local1 = _local1 + "new Object(";
var _local4 = 0;
for (var _local6 in V) {
_local4 = 1;
break;
}
if (_local4) {
_local1 = _local1 + " {";
var _local3 = 0;
for (var _local6 in V) {
_local1 = _local1 + (((" " + stringSanitizeAS(String(_local6))) + ":") + objectToASRecursive(V[_local6]));
_local1 = _local1 + ",";
_local3 = 1;
}
if (_local3 != 0) {
_local1 = _local1.substr(0, _local1.length - 1);
}
_local1 = _local1 + " } ";
}
_local1 = _local1 + ")";
} else {
_local1 = ("undefined /*" + _local1) + "*/";
}
return(_local1);
}
static function objectToAS(AO) {
return(objectToASRecursive(AO));
}
static function objectFromAS(AS) {
var retval = undefined;
eval (("retval = \"" + AS) + "\";");
return(retval);
}
static function objectFromLDF(AS, endchar) {
if (endchar == undefined) {
endchar = "`";
}
var _local13 = AS.split(endchar);
var _local3 = new Array();
var _local12 = new Object();
var _local1 = _local12;
var _local14 = _local13.length;
var _local9 = 0;
while (_local9 < _local14) {
var _local2 = _local13[_local9];
if (_local2.length > 0) {
switch (_local2.charAt(0)) {
case "(" :
var _local8 = _local2.substr(1);
_local3.push(_local8);
_local1[_local8] = new Object();
_local1 = _local1[_local8];
break;
case ")" :
if (_local3.length > 0) {
_local3.pop();
_local1 = _local12;
var _local4 = 0;
while (_local4 < _local3.length) {
_local1 = _local1[_local3[_local4]];
_local4++;
}
} else {
trace("objectFromLDF Badly formatted Object: ");
}
break;
case "[" :
var _local10 = _local2.substr(1);
_local3.push(_local10);
_local1[_local10] = new Array();
_local1 = _local1[_local10];
break;
case "]" :
if (_local3.length > 0) {
_local3.pop();
_local1 = _local12;
var _local4 = 0;
while (_local4 < _local3.length) {
_local1 = _local1[_local3[_local4]];
_local4++;
}
} else {
trace("objectFromLDF Badly formatted Array: ");
}
break;
default :
var _local6 = _local2.indexOf(":");
var _local5 = _local2.indexOf("\"");
var _local7 = _local2.lastIndexOf("\"");
if (_local6 >= 0) {
var _local11 = _local2.substr(0, _local6);
if (_local5 >= 0) {
if (_local5 == (_local6 + 1)) {
_local1[_local11] = _local2.substr(_local5 + 1, (_local7 - _local5) - 1);
} else {
trace("objectFromLDF Invalid object string data.");
}
} else {
_local1[_local11] = Number(_local2.substr(_local6 + 1));
}
} else if (_local5 >= 0) {
if ((_local5 == 0) && (_local7 == (_local2.length - 1))) {
_local1.push(_local2.substr(_local5 + 1, (_local7 - _local5) - 1));
} else {
trace("objectFromLDF Invalid string data.");
}
} else {
_local1.push(Number(_local2));
}
}
}
_local9++;
}
if (_local3.length > 0) {
trace("#ERROR Object data is malformed; missing closure statements!");
return(null);
}
return(_local12);
}
static function objectToLDFRecursive(V, objname, endchar) {
var _local12 = typeof(V);
var _local4 = "";
if (_local12 == "string") {
if (objname.length > 0) {
_local4 = _local4 + objname;
_local4 = _local4 + ":";
}
var _local3 = V;
var _local8 = _local3.length;
var _local1 = 0;
while (_local1 < _local8) {
if (_local3.charAt(_local1) == "\"") {
} else if (_local3.charAt(_local1) == endchar) {
trace("#ERROR input string contains endchar; this is NOT allowed. We removed it.");
_local3 = _local3.substr(0, _local1) + _local3.substr(_local1 + 1);
_local8--;
_local1--;
}
_local1++;
}
_local4 = _local4 + (("\"" + _local3) + "\"");
} else if (_local12 == "number") {
if (objname.length > 0) {
_local4 = _local4 + objname;
_local4 = _local4 + ":";
}
_local4 = _local4 + String(V);
} else if (_local12 == "boolean") {
if (objname.length > 0) {
_local4 = _local4 + objname;
_local4 = _local4 + ":";
}
_local4 = _local4 + String(V);
} else if (_local12 == "object") {
var _local7 = 0;
while (V.hasOwnProperty(String(_local7))) {
_local7++;
}
var _local9 = 1;
var _local11 = 0;
for (var _local13 in V) {
var _local5 = Number(_local13);
if ((_local5 < _local7) && (_local5 >= 0)) {
} else {
_local9 = 0;
break;
}
_local11++;
}
if (_local11 != _local7) {
_local9 = 0;
}
if (_local9) {
_local4 = _local4 + "[";
_local4 = _local4 + objname;
_local4 = _local4 + endchar;
_local7 = 0;
while (V.hasOwnProperty(String(_local7))) {
_local4 = _local4 + objectToLDFRecursive(V[_local7], "", endchar);
_local7++;
}
_local4 = _local4 + "]";
} else {
if (objname.length < 1) {
trace("Invalid object name! A name is required!");
}
_local4 = _local4 + "(";
_local4 = _local4 + objname;
_local4 = _local4 + endchar;
for (var _local13 in V) {
_local4 = _local4 + objectToLDFRecursive(V[_local13], _local13, endchar);
}
_local4 = _local4 + ")";
}
} else {
trace((("objectToLDFRecursive Invalid data type:" + objname) + ":") + _local4);
}
_local4 = _local4 + endchar;
return(_local4);
}
static function objectToLDF(AO, endchar) {
if (endchar == undefined) {
endchar = "`";
}
var _local2 = "";
for (var _local4 in AO) {
_local2 = _local2 + objectToLDFRecursive(AO[_local4], _local4, endchar);
}
return(_local2);
}
static function stringToArray(S) {
var _local3 = new Array(S.length);
var _local1 = 0;
while (_local1 < S.length) {
_local3[_local1] = 255 & S.charCodeAt(_local1);
_local1++;
}
return(_local3);
}
static function stringFromArray(A) {
var _local3 = "";
var _local1 = 0;
while (_local1 < A.length) {
_local3 = _local3 + String.fromCharCode(255 & A[_local1]);
_local1++;
}
return(_local3);
}
static function arrayToA64(A, X) {
if (X == undefined) {
X = _ascii64Table;
}
var _local4 = "";
var _local2 = 0;
var _local1 = 0;
var _local3 = 0;
while (_local3 < A.length) {
_local2 = _local2 | ((255 & A[_local3]) << _local1);
_local1 = _local1 + 8;
while (_local1 >= 6) {
_local4 = _local4 + X.charAt(_local2 & 63);
_local1 = _local1 - 6;
_local2 = _local2 >> 6;
}
_local3++;
}
while (_local1 > 0) {
_local4 = _local4 + X.charAt(_local2 & 63);
_local1 = _local1 - 6;
_local2 = _local2 >> 6;
}
return(_local4);
}
static function arrayFromA64(S, X) {
if (X == undefined) {
X = _ascii64Table;
}
var _local5 = new Array(255);
var _local3 = 0;
while (_local3 < 255) {
_local5[_local3] = 0;
_local3++;
}
_local3 = 0;
while (_local3 < 64) {
_local5[X.charCodeAt(_local3)] = _local3;
_local3++;
}
var _local4 = new Array();
var _local2 = 0;
var _local1 = 0;
_local3 = 0;
while (_local3 < S.length) {
_local2 = _local2 | ((_local5[255 & S.charCodeAt(_local3)] & 63) << _local1);
_local1 = _local1 + 6;
while (_local1 >= 8) {
_local4.push(_local2 & 255);
_local1 = _local1 - 8;
_local2 = _local2 >> 8;
}
_local3++;
}
while (_local1 >= 8) {
_local4.push(_local2 & 255);
_local1 = _local1 - 8;
_local2 = _local2 >> 8;
}
return(_local4);
}
static function arrayCipher(A, C) {
var _local6 = new Array();
var _local4 = 0;
var _local2 = new String();
if (C == undefined) {
C = "FSFK";
}
_local2 = C;
var _local3 = 0;
while (_local3 < A.length) {
_local6[_local3] = 255 & (A[_local3] ^ (255 & _local2.charCodeAt(_local4)));
_local4++;
if (_local4 >= _local2.length) {
_local4 = _local4 - _local2.length;
var _local1 = 0;
while (_local1 < _local2.length) {
_local2[_local1] = _local2[_local1] ^ 324905761;
_local1++;
}
}
_local3++;
}
return(_local6);
}
static function arrayDecipher(A, C) {
var _local7 = new Array();
var _local4 = 0;
var _local2 = new String();
if (C == undefined) {
C = "FSFK";
}
_local2 = C;
var _local3 = 0;
while (_local3 < A.length) {
_local7[_local3] = 255 & (A[_local3] ^ (255 & C.charCodeAt(_local4)));
_local4++;
if (_local4 >= _local2.length) {
_local4 = _local4 - _local2.length;
var _local1 = 0;
while (_local1 < _local2.length) {
_local2[_local1] = _local2[_local1] ^ 324905761;
_local1++;
}
}
_local3++;
}
return(_local7);
}
static function arrayCompress(A) {
return(lzssCompress(A));
}
static function arrayDecompress(A) {
return(lzssDecompress(A));
}
static function arrayRandom(N) {
var _local2 = new Array(Math.floor(N));
var _local1 = 0;
while (_local1 < N) {
_local2[_local1] = Math.floor(Math.random() * 255) & 255;
_local1++;
}
return(_local2);
}
static function stringRandom(N) {
var _local3 = new String();
var _local1 = 0;
while (_local1 < N) {
var _local2 = Math.floor(Math.random() * _asciiTable.length);
_local3 = _local3 + _asciiTable.charAt(_local2);
_local1++;
}
return(_local3);
}
static function _objCmpRecur(A, B) {
var _local4 = typeof(A);
var _local7 = typeof(B);
if (stringCmp(_local4, _local7) == 0) {
if (_local4 == "object") {
for (var _local3 in A) {
if (B.hasOwnProperty(_local3)) {
var _local5 = _objCmpRecur(A[_local3], B[_local3]);
if (_local5 != 0) {
return(_local5);
}
continue;
}
trace(("_objCmpRecur: Different properties! " + _local3) + " ");
return(-3);
}
return(0);
}
if (_local4 == "string") {
var _local5 = stringCmp(A, B);
if (_local5 != 0) {
return(_local5);
}
return(0);
}
if (A != B) {
if (_local4 == "number") {
var _local6 = Math.abs(A - B);
if (_local6 < 1E-6) {
return(0);
}
}
return(-1);
}
return(0);
}
return(-2);
}
static function objCmp(A, B) {
return(_objCmpRecur(A, B));
}
static function arrayCmp(A, B) {
if (A.length == B.length) {
var _local1 = 0;
while (_local1 < A.length) {
if (A[_local1] != B[_local1]) {
return(A[_local1] - B[_local1]);
}
_local1++;
}
return(0);
}
return(A.length - B.length);
}
static function stringCmp(A, B) {
if (A.length == B.length) {
var _local1 = 0;
while (_local1 < A.length) {
if (A.charAt(_local1) != B.charAt(_local1)) {
return(A.charCodeAt(_local1) - B.charCodeAt(_local1));
}
_local1++;
}
return(0);
}
return(A.length - B.length);
}
static function stringComputeChecksum(S, ignorelast) {
if (S.length > 7) {
var _local3 = 0;
var _local6 = S.length - ignorelast;
var _local2 = 5381;
while (_local3 < _local6) {
var _local4 = 255 & S.charCodeAt(_local3);
_local2 = _local4 + ((_local2 << 5) + _local2);
_local3++;
}
var _local1 = _local2.toString(16);
if (_local1.charAt(0) == "-") {
_local1 = _local1.substring(1);
}
while (_local1.length < 8) {
_local1 = "0" + _local1;
}
return(_local1);
}
return("");
}
static function stringCheckChecksum(S) {
var _local3 = stringComputeChecksum(S, 8);
var _local2 = S.substring(S.length - 8, S.length);
if (_local3 == _local2) {
return(0);
}
return(-1);
}
static function stringTrimChecksum(S) {
return(S.substring(0, S.length - 8));
}
static function stringCompressA64(S, C) {
if (C == undefined) {
C = "SA)($*#)*gjk";
}
var _local5 = stringToArray(S);
var _local2 = arrayCompress(_local5);
var _local3;
if (C.length > 0) {
_local3 = arrayCipher(_local2, C);
} else {
_local3 = _local2;
}
S = arrayToA64(_local3, _ascii64Table);
return(S);
}
static function stringDecompressA64(S, C) {
if (C == undefined) {
C = "SA)($*#)*gjk";
}
var _local2 = arrayFromA64(S, _ascii64Table);
var _local3;
if (C.length > 0) {
_local3 = arrayDecipher(_local2, C);
} else {
_local3 = _local2;
}
var _local5 = arrayDecompress(_local3);
S = stringFromArray(_local5);
return(S);
}
static function objectToLDFCompA64(inobj, cipherkey, usedelimiter) {
if (usedelimiter == undefined) {
usedelimiter = "`";
}
if (cipherkey == undefined) {
cipherkey = "";
}
var _local1 = objectToLDF(inobj, usedelimiter);
_local1 = _local1 + stringComputeChecksum(_local1, 0);
var _local4 = stringCompressA64(_local1, cipherkey);
return(_local4);
}
static function objectFromLDFCompA64(instr, cipherkey, usedelimiter) {
if (usedelimiter == undefined) {
usedelimiter = "`";
}
if (cipherkey == undefined) {
cipherkey = "";
}
var _local1 = stringDecompressA64(instr, cipherkey);
if (stringCheckChecksum(_local1) == 0) {
var _local2 = objectFromLDF(stringTrimChecksum(_local1), usedelimiter);
return(_local2);
}
var _local2 = new Object();
_local2._error = "INVALID CHECKSUM! DATA WAS TAMPERED WITH! ";
return(_local2);
}
static function regressionTestLDF() {
trace("Testing stringToArray / stringFromArray:");
var _local14 = stringRandom(5 + (Math.random() * 100));
var _local26 = stringToArray(_local14);
var _local24 = stringFromArray(_local26);
if (stringCmp(_local14, _local24) == 0) {
trace("\tPassed!");
} else {
trace("\tFAILED: ");
trace("Array: " + _local26);
trace(_local14);
trace(_local24);
}
trace("");
trace("Testing arrayCipher / arrayDecipher:");
var _local15 = arrayRandom(5 + (Math.random() * 100));
var _local30 = arrayCipher(_local15);
var _local28 = arrayDecipher(_local30);
if (arrayCmp(_local15, _local28) == 0) {
trace("\tPassed!");
} else {
trace("\tFAILED: ");
trace("Ciphered: " + _local30);
trace(_local15);
trace(_local28);
}
trace("");
trace("Testing arrayCompress / arrayDecompress:");
var _local10 = arrayRandom(5 + (Math.random() * 100));
_local30 = arrayCompress(_local10);
var _local19 = arrayDecompress(_local30);
if (arrayCmp(_local10, _local19) == 0) {
trace("\tPassed!");
} else {
trace("\tFAILED: ");
trace("Compa: " + _local30);
trace(_local10);
trace(_local19);
}
trace("");
trace("Testing arrayToA64 / arrayFromA64:");
var _local7 = arrayRandom(5 + (Math.random() * 100));
var _local11 = arrayToA64(_local7, _ascii64Table);
var _local12 = arrayFromA64(_local11, _ascii64Table);
var _local27 = arrayToA64(_local12, _ascii64Table);
if ((stringCmp(_local11, _local27) == 0) && (arrayCmp(_local7, _local12) == 0)) {
trace("\tPassed!");
} else {
trace("\tFAILED: ");
trace("Source:" + _local7);
trace("x64a: " + _local11);
trace("x64b: " + _local27);
trace("Ai: " + _local7);
trace("Ao: " + _local12);
}
trace("");
trace("Testing stringCompressA64 / stringDecompressA64:");
var _local2 = stringRandom(1000);
var _local8 = stringCompressA64(_local2, "BitchPlease!");
var _local25 = stringDecompressA64(_local8, "BitchPlease!");
if (stringCmp(_local2, _local25) == 0) {
trace((("\tPassed! " + _local8.length) + " / ") + _local2.length);
} else {
trace("\tFAILED: ");
trace("A64: " + _local8);
trace("Input: " + _local2);
trace("Result: " + _local25);
trace((_local8.length + " / ") + _local2.length);
}
trace("");
trace("Testing LDF conversion formats; Note NONE of the input has a ` character, since that is used as a delimeter");
var _local1 = new Object();
_local1.isnum = 100;
_local1.isstr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+-=\\|/~{}|[]\\:<>?,./;'\"";
_local1.isnumn = -42368;
_local1.isfloat = 4306.34352;
_local1.isfloatn = -1204.4612346;
_local1.isstr2 = "<xml>Fuckit!</xml>";
_local1.prase = " I'll have some \"tea\" with %[n] fucking crumpets. Ya'll Better \"move along\" now.";
_local1.array1 = new Array(10, 3246, 37, 237, 327, 3275);
_local1.array2 = new Array(10.68, 3246.64, 37.266, 237.26, 327.526, 3275.3466);
_local1.array3 = new Array(10.68, "Mixitup", 37.266, 237.26, "Ass", 3275.3466);
_local1.subob = new Object();
_local1.subob.isnum = 1031;
_local1.subob.isstr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+-=\\|/~{}|[]\\:<>?,./;'\"";
_local1.subob.isnumn = -423468;
_local1.subob.isfloat = 43406.343542;
_local1.subob.isfloatn = -12044.4612346;
_local1.subob.isstr2 = "<xml>Fuckit!</xml>";
_local1.subob.array1 = new Array(10, 32446, 37, 237, 4327, 32475);
_local1.subob.array2 = new Array(10.68, 3246.64, 337.2666, 237.26, 32437.526, 32765.3466);
_local1.subob.array3 = new Array(10.68, "Mixadatup", 37.266, 2637.26, "Assihk", 36275.3466);
_local1.subob.subob = new Object();
_local1.subob.subob.probs = "Yeah no.";
_local1.subob2.subob = new Object();
_local1.subob2.probs = "Subbish.";
_local1.subob3.subob = new Object();
_local1.subob3.probs = "Subbish2.";
trace("");
var _local3 = objectToLDF(_local1, "`");
var _local16 = objectFromLDF(_local3, "`");
var _local6 = objectToLDF(_local16, "`");
var _local29 = objectFromLDF(_local6, "`");
var _local23 = objCmp(_local16, _local1);
var _local22 = objCmp(_local16, _local29);
var _local21 = objCmp(_local1, _local29);
var _local20 = stringCmp(_local3, _local6);
trace((((((("FC: " + _local23) + " ") + _local22) + " ") + _local21) + " ") + _local20);
if (((_local23 == 0) && (_local22 == 0)) && (_local21 == 0)) {
if (_local20 != 0) {
trace("\tPassed, data objects are identical, but strings are not (reordered or trimmed):");
trace(_local3);
trace("");
trace(_local6);
} else {
trace("\tPassed! ");
}
} else {
trace("\tFAILED: ");
trace(_local3);
trace("");
trace(_local6);
}
trace("");
trace("Testing LDF + A64 conversion formats: ");
var _local4 = objectToLDFCompA64(_local1);
var _local5 = objectFromLDFCompA64(_local4);
var _local9 = objectToLDFCompA64(_local5);
var _local13 = objectFromLDFCompA64(_local9);
var _local31 = objCmp(_local1, _local5);
var _local17 = objCmp(_local5, _local13);
var _local18 = objCmp(_local1, _local13);
if (((_local31 == 0) && (_local17 == 0)) && (_local18 == 0)) {
if (stringCmp(_local4, _local9) == 0) {
trace("\tPassed! ");
} else {
trace("\tPassed, data objects are identical, but strings are not (reordered or trimmed):");
trace(_local4);
trace("");
trace(_local9);
}
} else {
trace("\tFAILED: ");
trace(_local31);
trace(_local17);
trace(_local18);
trace("S1: " + _local4);
trace("S2: " + _local9);
trace("O1: " + _local5);
trace("O2: " + _local13);
}
trace("");
}
static function hashSSM(S, MRounds) {
var _local12 = (S.length / 4) + MRounds;
var _local6 = "X";
var _local7 = "0123";
var _local2 = _local7 + S;
while (_local12 > 0) {
_local12 = _local12 - 1;
var _local5 = 229;
var _local4 = 75;
var _local3 = 123;
var _local13 = 0;
var _local1 = _local2.length;
while (_local1 != 0) {
_local1 = _local1 - 1;
_local5 = _local5 + (_local2.charCodeAt(_local1) & 255);
if (_local1 != 0) {
_local1 = _local1 - 1;
_local4 = _local4 + (_local2.charCodeAt(_local1) & 255);
if (_local1 != 0) {
_local1 = _local1 - 1;
_local3 = _local3 + (_local2.charCodeAt(_local1) & 255);
}
}
}
var _local11 = _local5 & 63;
var _local10 = ((_local5 >> 6) & 3) | (_local4 & 15);
var _local9 = ((_local4 >> 4) & 15) | (_local3 & 3);
var _local8 = (_local3 >> 2) & 63;
_local7 = ((String.fromCharCode(48 + _local11) + String.fromCharCode(49 + _local10)) + String.fromCharCode(50 + _local9)) + String.fromCharCode(51 + _local8);
_local2 = _local2 + _local7;
_local6 = _local6 + _local7;
if (_local6.length > 32) {
_local6 = _local6.slice(32 - _local6.length);
}
_local2 = _local2.slice(4);
}
return(_local6);
}
static function randomString(slen) {
var _local2 = "";
var _local1 = 0;
while (_local1 < slen) {
_local2 = _local2 + String.fromCharCode(32 + Math.floor(Math.random() * 95));
_local1++;
}
return(_local2);
}
static var _asciiVNameTable = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_";
static var _ascii64Table = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-+";
static var _ascii64TableReverse = undefined;
static var _asciiTable = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-+!@#$%^&*()_=~`<>?:{}|[]\\',./+-\"";
}
Symbol 248 Button
on (release) {
_root.externalURL = exturl;
play();
}
Symbol 356 MovieClip Frame 1
stop();
Symbol 356 MovieClip Frame 2
gotoAndStop (1);
Symbol 356 MovieClip Frame 3
gotoAndStop (1);
Symbol 356 MovieClip Frame 12
gotoAndStop (1);
Symbol 356 MovieClip Frame 23
gotoAndStop (1);
Symbol 356 MovieClip Frame 42
gotoAndStop (1);
Symbol 356 MovieClip Frame 51
gotoAndStop (1);
Symbol 356 MovieClip Frame 58
gotoAndStop (1);
Symbol 356 MovieClip Frame 65
gotoAndStop (1);
Symbol 356 MovieClip Frame 95
gotoAndStop (1);
Symbol 356 MovieClip Frame 102
gotoAndStop (1);
Symbol 356 MovieClip Frame 109
gotoAndStop (1);
Symbol 356 MovieClip Frame 120
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 150
gotoAndStop (1);
Symbol 356 MovieClip Frame 151
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 179
gotoAndStop (1);
Symbol 356 MovieClip Frame 180
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 210
gotoAndStop (1);
Symbol 356 MovieClip Frame 211
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 239
gotoAndStop (1);
Symbol 356 MovieClip Frame 240
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 270
gotoAndStop (1);
Symbol 356 MovieClip Frame 271
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 300
gotoAndStop (1);
Symbol 356 MovieClip Frame 302
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 307
gotoAndStop (1);
Symbol 356 MovieClip Frame 310
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 315
gotoAndStop (1);
Symbol 356 MovieClip Frame 318
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 321
gotoAndStop (1);
Symbol 356 MovieClip Frame 327
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 330
gotoAndStop (1);
Symbol 356 MovieClip Frame 337
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 340
gotoAndStop (1);
Symbol 356 MovieClip Frame 348
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 351
gotoAndStop (1);
Symbol 356 MovieClip Frame 358
_xscale = Math.abs(_xscale);
_yscale = Math.abs(_xscale);
_rotation = 0;
Symbol 356 MovieClip Frame 361
gotoAndStop (1);
Symbol 356 MovieClip Frame 371
gotoAndStop (1);
Symbol 356 MovieClip Frame 381
gotoAndStop (1);
Symbol 356 MovieClip Frame 391
gotoAndStop (1);
Symbol 357 MovieClip Frame 1
stop();
Symbol 357 MovieClip Frame 3
gotoAndStop (1);
Symbol 358 MovieClip Frame 1
stop();
Symbol 358 MovieClip Frame 2
this.m_scale = 100;
this.m_name = "EXTERNAL";
this.m_status = "SxS*NOTLOADED";
this.m_credit = "";
this.maxhp = 100;
this.hp = this.maxhp;
this.enemy.in_movex = 0;
this.enemy.in_movey = 0;
this.enemy.in_action = 0;
this.hatk = 0;
this.matk = 0;
this.latk = 0;
this.hdef = 0;
this.mdef = 0;
this.ldef = 0;
enemy.s_atktype = 0;
enemy.s_animbusy = 0;
enemy.s_idle = 1;
enemy.s_moving = 0;
enemy.s_attacking = 0;
enemy.s_hit = 0;
enemy.s_vx = 0;
m_cameraoffset = 0;
stop();
Symbol 369 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 369 MovieClip Frame 50
Symbol 370 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 371 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 371 MovieClip Frame 21
Symbol 372 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 392 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 392 MovieClip Frame 24
Symbol 393 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 397 MovieClip Frame 16
Symbol 398 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 402 MovieClip Frame 27
Symbol 403 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 404 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 404 MovieClip Frame 19
Symbol 405 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 406 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 406 MovieClip Frame 16
Symbol 407 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 411 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 411 MovieClip Frame 22
Symbol 412 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 417 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 417 MovieClip Frame 7
Symbol 418 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 419 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 419 MovieClip Frame 7
Symbol 420 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 421 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 421 MovieClip Frame 7
Symbol 422 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 423 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 423 MovieClip Frame 25
Symbol 424 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 428 MovieClip Frame 1
onEnterFrame = function () {
if (!_root.GLOBAL_PLAYERHEAD) {
head._visible = false;
}
};
Symbol 428 MovieClip Frame 23
stop();
Symbol 429 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 446 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 446 MovieClip Frame 2
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 446 MovieClip Frame 3
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 446 MovieClip Frame 4
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 446 MovieClip Frame 5
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 446 MovieClip Frame 6
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 446 MovieClip Frame 7
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 446 MovieClip Frame 8
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 446 MovieClip Frame 9
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 446 MovieClip Frame 10
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 449 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 449 MovieClip Frame 2
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 449 MovieClip Frame 3
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 449 MovieClip Frame 4
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 449 MovieClip Frame 5
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 449 MovieClip Frame 6
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 449 MovieClip Frame 7
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 449 MovieClip Frame 8
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 449 MovieClip Frame 9
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 449 MovieClip Frame 10
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 452 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 452 MovieClip Frame 2
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 452 MovieClip Frame 3
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 452 MovieClip Frame 4
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 452 MovieClip Frame 5
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 452 MovieClip Frame 6
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 452 MovieClip Frame 7
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 452 MovieClip Frame 8
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 452 MovieClip Frame 9
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 452 MovieClip Frame 10
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 456 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 456 MovieClip Frame 2
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 456 MovieClip Frame 3
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 456 MovieClip Frame 4
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 456 MovieClip Frame 5
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 456 MovieClip Frame 6
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 456 MovieClip Frame 7
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 456 MovieClip Frame 8
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 456 MovieClip Frame 9
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 456 MovieClip Frame 10
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 459 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 459 MovieClip Frame 2
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 459 MovieClip Frame 3
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 459 MovieClip Frame 4
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 459 MovieClip Frame 5
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 459 MovieClip Frame 6
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 459 MovieClip Frame 7
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 459 MovieClip Frame 8
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 459 MovieClip Frame 9
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 459 MovieClip Frame 10
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 462 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 462 MovieClip Frame 2
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 462 MovieClip Frame 3
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 462 MovieClip Frame 4
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 462 MovieClip Frame 5
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 462 MovieClip Frame 6
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 462 MovieClip Frame 7
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 462 MovieClip Frame 8
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 462 MovieClip Frame 9
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 462 MovieClip Frame 10
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 467 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 467 MovieClip Frame 2
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 467 MovieClip Frame 3
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 467 MovieClip Frame 4
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 467 MovieClip Frame 5
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 467 MovieClip Frame 6
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 467 MovieClip Frame 7
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 467 MovieClip Frame 8
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 467 MovieClip Frame 9
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 467 MovieClip Frame 10
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 472 MovieClip Frame 1
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 472 MovieClip Frame 2
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 472 MovieClip Frame 3
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 472 MovieClip Frame 4
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 472 MovieClip Frame 5
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 472 MovieClip Frame 6
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 472 MovieClip Frame 7
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 472 MovieClip Frame 8
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 472 MovieClip Frame 9
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 472 MovieClip Frame 10
gotoAndStop(_root.GLOBAL_PLAYERGRAPHIC);
Symbol 473 MovieClip [mcPlayer] Frame 1
stop();
nextFrame();
Symbol 473 MovieClip [mcPlayer] Frame 2
s_idle = 1;
s_moving = 0;
s_attacking = 0;
s_hit = 0;
s_animbusy = 0;
s_vx = 0;
s_decidedanim = "idle";
Symbol 473 MovieClip [mcPlayer] Frame 8
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 9
s_idle = 0;
s_moving = 4;
s_attacking = 0;
s_hit = 0;
s_animbusy = 0;
s_decidedanim = "walk";
Symbol 473 MovieClip [mcPlayer] Frame 16
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 24
s_animbusy = 1;
s_decidedanim = "turn";
Symbol 473 MovieClip [mcPlayer] Frame 30
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 31
s_idle = 0;
s_moving = 0;
s_attacking = 1;
s_hit = 0;
s_animbusy = 1;
s_atktype = 2;
s_decidedanim = "atkh";
Symbol 473 MovieClip [mcPlayer] Frame 38
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 40
s_idle = 0;
s_moving = 0;
s_attacking = 1;
s_hit = 0;
s_animbusy = 1;
s_atktype = 2;
s_decidedanim = "atkh2";
Symbol 473 MovieClip [mcPlayer] Frame 46
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 48
s_idle = 0;
s_moving = 0;
s_attacking = 1;
s_hit = 0;
s_animbusy = 1;
s_atktype = 2;
s_decidedanim = "atkh3";
Symbol 473 MovieClip [mcPlayer] Frame 54
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 56
s_idle = 0;
s_moving = 0;
s_attacking = 1;
s_hit = 0;
s_animbusy = 1;
s_atktype = 1;
s_decidedanim = "atkm";
Symbol 473 MovieClip [mcPlayer] Frame 63
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 64
s_idle = 0;
s_moving = 0;
s_attacking = 1;
s_hit = 0;
s_animbusy = 1;
s_atktype = 0;
s_decidedanim = "atkl";
Symbol 473 MovieClip [mcPlayer] Frame 70
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 72
s_idle = 0;
s_moving = 0;
s_attacking = 1;
s_hit = 0;
s_animbusy = 1;
s_atktype = 4;
s_decidedanim = "atkp";
Symbol 473 MovieClip [mcPlayer] Frame 78
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 79
s_idle = 0;
s_moving = 0;
s_attacking = 0;
s_hit = 1;
s_animbusy = 1;
s_vx = 6;
s_decidedanim = "hith";
Symbol 473 MovieClip [mcPlayer] Frame 85
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 86
s_idle = 0;
s_moving = 0;
s_attacking = 0;
s_hit = 1;
s_animbusy = 1;
s_vx = 4;
s_decidedanim = "hitm";
Symbol 473 MovieClip [mcPlayer] Frame 92
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 93
s_idle = 0;
s_moving = 0;
s_attacking = 0;
s_hit = 1;
s_animbusy = 1;
s_vx = 2;
s_decidedanim = "hitl";
Symbol 473 MovieClip [mcPlayer] Frame 99
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 101
s_idle = 0;
s_moving = 7;
s_attacking = 0;
s_hit = 0;
s_animbusy = 0;
s_decidedanim = "run";
Symbol 473 MovieClip [mcPlayer] Frame 121
gotoAndStop ("idle");
Symbol 473 MovieClip [mcPlayer] Frame 124
s_idle = 0;
s_moving = 0;
s_attacking = 0;
s_hit = 1;
s_animbusy = 1;
s_vx = 0;
s_decidedanim = "death";
Symbol 473 MovieClip [mcPlayer] Frame 137
s_idle = 0;
s_moving = 0;
s_attacking = 0;
s_hit = 1;
s_animbusy = 1;
hp = 0;
s_decidedanim = "dead";
Symbol 473 MovieClip [mcPlayer] Frame 142
stop();
Symbol 473 MovieClip [mcPlayer] Frame 144
s_decidedanim = "blank";
Symbol 473 MovieClip [mcPlayer] Frame 148
gotoAndStop ("blank");