Frame 1
function Center(MC) {
MC._x = (Stage.width / 2) - (MC._width / 2);
MC._y = (Stage.height / 2) - (MC._height / 2);
}
function toggleFullScreen() {
if (Stage.displayState == "normal") {
Stage.displayState = "fullScreen";
} else {
Stage.displayState = "normal";
}
}
function goWalfas() {
getURL ("http://www.walfas.org/", "_blank");
}
function addCMItem(S, F) {
var _local1 = new ContextMenuItem(S, F);
myContextMenu.customItems.push(_local1);
}
Stage.scaleMode = "noScale";
Stage.align = "TL";
_root.attachMovie("Preloader", "preloader", 10);
preloader.onEnterFrame = function () {
if (_root.getBytesLoaded() == _root.getBytesTotal()) {
gotoAndStop (3);
} else {
var _local2 = Math.floor((_root.getBytesLoaded() / _root.getBytesTotal()) * 100);
preloader.percent.text = String(_local2) + "%";
preloader.loaderBar._xscale = _local2;
}
};
var myContextMenu = new ContextMenu();
addCMItem("Full Screen Mode!", toggleFullScreen);
addCMItem("http://www.walfas.org", goWalfas);
_root.menu = myContextMenu;
stop();
Frame 3
function newPreset(N, B, E, M, H1, H2, A, S, I, W, Ac) {
GameData.Presets[N] = new Object();
GameData.Presets[N].bodyFrame = B;
GameData.Presets[N].eyeFrame = E;
GameData.Presets[N].mouthFrame = M;
GameData.Presets[N].headFrame = H1;
GameData.Presets[N].hatFrame = H2;
GameData.Presets[N].armFrame = A;
GameData.Presets[N].shoeFrame = S;
GameData.Presets[N].itemFrame = I;
GameData.Presets[N].wingFrame = W;
GameData.Presets[N].accFrame = Ac;
}
function ScaleMenu(MC) {
MC._xscale = GameData.Menus.Size;
MC._yscale = GameData.Menus.Size;
}
function PositionMenu(MC, H, V, X, Y, Xclip, Yclip) {
GameData.Menus.Targets[MC._name] = MC;
MC.Valign = V;
MC.Halign = H;
MC.Xmod = X;
MC.Ymod = Y;
MC.XClip = Xclip;
MC.YClip = Yclip;
}
function resetBoxingChen() {
if (stage["Boxing Chen"].Target) {
stage["Boxing Chen"]._xscale = 100;
stage["Boxing Chen"]._yscale = 100;
stage["Boxing Chen"].Target._rotation = stage["Boxing Chen"].TR;
stage["Boxing Chen"].Target.eyes.gotoAndStop(GameData.Parts.Eyes[GameData.Characters[stage["Boxing Chen"].Target._name].eyeFrame][1]);
if (GameData.Characters[stage["Boxing Chen"].Target._name].mouthFrame) {
stage["Boxing Chen"].Target.mouth.gotoAndStop(GameData.Parts.Mouth[GameData.Characters[stage["Boxing Chen"].Target._name].mouthFrame][1]);
stage["Boxing Chen"].Target.mouth._visible = true;
} else {
stage["Boxing Chen"].Target.mouth._visible = false;
}
stage["Boxing Chen"].Target = undefined;
}
}
function makeChar(T) {
var _local2 = "Char" + (GameData.CharID++);
stage.attachMovie("Char", _local2, GameData.DMax++);
stage[_local2].Spin = 0;
var _local6 = T.split("-");
if ((_local6.length > 1) && (_local6[0] == "DNA")) {
var _local4 = _local6[1].split(":");
var _local15 = _local4[1];
var _local5 = _local4[2];
var _local8 = _local4[3];
var _local11 = _local4[4];
var _local9 = _local4[5];
var _local7 = _local4[6];
var _local10 = _local4[7];
var _local18 = _local4[8];
var _local14 = _local4[9];
var _local17 = _local4[10];
var _local16 = _local4[11];
var _local19 = _local4[12];
var _local12 = stage["Clone Capsule"]._x;
var _local13 = stage["Clone Capsule"]._y;
if (!_local15) {
_local15 = "Mutant Clone";
}
} else if (T == "Capsule Clone") {
var _local15 = GameData.Toys["Clone Capsule"].Char.Name;
var _local9 = GameData.Toys["Clone Capsule"].Char.bodyFrame;
var _local18 = GameData.Toys["Clone Capsule"].Char.eyeFrame;
var _local14 = GameData.Toys["Clone Capsule"].Char.mouthFrame;
var _local8 = GameData.Toys["Clone Capsule"].Char.hatFrame;
var _local11 = GameData.Toys["Clone Capsule"].Char.headFrame;
var _local7 = GameData.Toys["Clone Capsule"].Char.armFrame;
var _local10 = GameData.Toys["Clone Capsule"].Char.shoeFrame;
var _local19 = GameData.Toys["Clone Capsule"].Char.wingFrame;
var _local17 = GameData.Toys["Clone Capsule"].Char.itemFrame;
var _local16 = GameData.Toys["Clone Capsule"].Char.accFrame;
var _local5 = GameData.Toys["Clone Capsule"].Char.Scale;
var _local12 = stage["Clone Capsule"]._x;
var _local13 = stage["Clone Capsule"]._y;
} else if (GameData.Presets[T]) {
var _local15 = T;
var _local9 = GameData.Presets[T].bodyFrame;
var _local18 = GameData.Presets[T].eyeFrame;
var _local14 = GameData.Presets[T].mouthFrame;
var _local8 = GameData.Presets[T].hatFrame;
var _local11 = GameData.Presets[T].headFrame;
var _local7 = GameData.Presets[T].armFrame;
var _local10 = GameData.Presets[T].shoeFrame;
var _local19 = GameData.Presets[T].wingFrame;
if (GameData.PresetWithItems) {
var _local17 = GameData.Presets[T].itemFrame;
var _local16 = GameData.Presets[T].accFrame;
} else {
var _local17 = 0;
var _local16 = 0;
}
var _local5 = 100;
var _local12 = Stage.width / 2;
var _local13 = (Stage.height / 2) + 50;
} else {
var _local15 = _local2;
var _local9 = random(GameData.Parts.Body.length);
var _local18 = random(GameData.Parts.Eyes.length);
var _local14 = random(GameData.Parts.Mouth.length);
var _local8 = random(GameData.Parts.Hats.length);
var _local11 = random(GameData.Parts.Hair.length);
var _local7 = random(GameData.Parts.Arms.length);
var _local10 = random(GameData.Parts.Shoes.length);
var _local19 = random(GameData.Parts.Back.length);
var _local17 = random(GameData.Parts.Items.length);
var _local16 = random(GameData.Parts.Acc.length);
var _local5 = 100;
var _local12 = Stage.width / 2;
var _local13 = (Stage.height / 2) + 50;
}
GameData.Characters[_local2] = new Object();
RootPartSwap(stage[_local2].eyes, "Eyes", String(_local18));
RootPartSwap(stage[_local2].mouth, "Mouth", String(_local14));
RootPartSwap(stage[_local2].hat, "Hats", String(_local8));
RootPartSwap(stage[_local2].item, "Items", String(_local17));
RootPartSwap(stage[_local2].wings, "Back", String(_local19));
RootPartSwap(stage[_local2].accessory, "Acc", String(_local16));
RootPartSwap(stage[_local2].head, "Hair", String(_local11));
RootPartSwap(stage[_local2].body, "Body", String(_local9));
RootPartSwap(stage[_local2].arms, "Arms", String(_local7));
RootPartSwap(stage[_local2].legs, "Shoes", String(_local10));
GameData.Characters[_local2].Name = _local15;
GameData.Characters[_local2].Scale = _local5;
GameData.Characters[_local2].Locks = new Object();
GameData.Characters[_local2].Locks.Mouth = false;
GameData.Characters[_local2].Locks.Eyes = false;
GameData.Characters[_local2].Locks.Hair = false;
GameData.Characters[_local2].Locks.Body = false;
GameData.Characters[_local2].Locks.Arms = false;
GameData.Characters[_local2].Locks.Shoes = false;
GameData.Characters[_local2].Locks.Back = false;
GameData.Characters[_local2].Locks.Accessory = false;
GameData.Characters[_local2].Locks.Items = false;
GameData.Characters[_local2].Locks.Hats = false;
stage[_local2]._x = _local12;
stage[_local2]._y = _local13;
stage[_local2]._xscale = _local5;
stage[_local2]._yscale = _local5;
stage[_local2].XFace = 1;
stage[_local2].YFace = 1;
stage[_local2].head.onPress = function () {
clickCheck(this._parent, "rotate");
};
stage[_local2].head2.onPress = function () {
clickCheck(this._parent, "rotate");
};
setActionRelease(stage[_local2].head);
setActionRelease(stage[_local2].head2);
stage[_local2].body.onPress = function () {
clickCheck(this._parent, "drag");
};
setActionRelease(stage[_local2].body);
return(stage[_local2]);
}
function makeSpeechBubble() {
var _local1 = "Bubble" + (GameData.BubbleID++);
stage.attachMovie("SpeechBubble", _local1, GameData.DMax++);
GameData.SpeechBubbles[_local1] = new Object();
GameData.SpeechBubbles[_local1].Scale = 100;
GameData.SpeechBubbles[_local1].XScale = 100;
GameData.SpeechBubbles[_local1].YScale = 100;
stage[_local1]._x = 200;
stage[_local1]._y = 200;
stage[_local1].XFace = 1;
stage[_local1].YFace = 1;
stage[_local1].D.text = "\n\n\nDouble click this to edit text.";
setBubbleClickHandlers(stage[_local1]);
return(stage[stage[_local1]]);
}
function setBubbleClickHandlers(MC) {
MC.Bubble.head.onPress = function () {
clickCheck(this._parent._parent, "rotate");
};
setActionRelease(MC.Bubble.head);
MC.Bubble.body.onPress = function () {
clickCheck(this._parent._parent, "drag");
};
setActionRelease(MC.Bubble.body);
MC.D.onSetFocus = function () {
GameData.KeyLock = true;
};
MC.D.onKillFocus = function () {
GameData.KeyLock = false;
setBubble(GameData.Target);
Interface.BubbleTargetFrame.preview.D.text = GameData.Target.D.text;
};
}
function SwapColor(MC, P, C) {
var _local1 = new Color(MC);
_local1.setRGB(GameData.Palette[P][C]);
}
function fixScales() {
var _local3 = Math.round((Stage.width * 100) / 550);
var _local4 = Math.round((Stage.height * 100) / 400);
if (_local3 < _local4) {
_local4 = _local3;
} else {
_local3 = _local4;
}
if (GameData.BGAutoScale) {
Interface.BGMenu.sX.text = _local3;
Interface.BGMenu.sY.text = _local4;
bg._xscale = _local3;
bg._yscale = _local4;
}
Dimmer._width = Stage.width;
Dimmer._height = Stage.height;
if (GameData.Menus.AutoScale) {
_local3 = Math.floor(_local3 / 5) * 5;
GameData.Menus.Size = _local3;
var _local1 = new Array();
for (m in GameData.Menus.Targets) {
_local1.push(m);
}
var _local2 = 0;
while (_local1.length > 0) {
if (tFMC(_local1, GameData.Menus.Targets[_local1[_local2]].XClip._name) || (tFMC(_local1, GameData.Menus.Targets[_local1[_local2]].YClip._name))) {
_local2++;
} else {
fixMenuScale(_local1[_local2]);
_local1.splice(_local2, 1);
}
if (_local2 >= _local1.length) {
_local2 = 0;
}
}
}
}
function tFMC(tAr, tM) {
j = 0;
while (j < tAr.length) {
if (tAr[j] == tM) {
return(true);
}
j++;
}
return(false);
}
function fixMenuScale(m) {
ScaleMenu(GameData.Menus.Targets[m]);
if (GameData.Menus.Targets[m].Valign == "T") {
GameData.Menus.Targets[m]._y = Math.round(GameData.Menus.Targets[m].Ymod * (GameData.Menus.Size / 100));
} else if (GameData.Menus.Targets[m].Valign == "B") {
GameData.Menus.Targets[m]._y = (Stage.height - GameData.Menus.Targets[m]._height) + Math.round(GameData.Menus.Targets[m].Ymod * (GameData.Menus.Size / 100));
} else if (GameData.Menus.Targets[m].Valign == "C") {
GameData.Menus.Targets[m]._y = GameData.Menus.Targets[m].YClip._y + Math.round(GameData.Menus.Targets[m].Ymod * (GameData.Menus.Size / 100));
} else {
GameData.Menus.Targets[m]._y = ((Stage.height / 2) - (GameData.Menus.Targets[m]._height / 2)) + Math.round(GameData.Menus.Targets[m].Ymod * (GameData.Menus.Size / 100));
}
if (GameData.Menus.Targets[m].Halign == "L") {
GameData.Menus.Targets[m]._x = Math.round(GameData.Menus.Targets[m].Xmod * (GameData.Menus.Size / 100));
} else if (GameData.Menus.Targets[m].Halign == "R") {
GameData.Menus.Targets[m]._x = (Stage.height - GameData.Menus.Targets[m]._height) + Math.round(GameData.Menus.Targets[m].Xmod * (GameData.Menus.Size / 100));
} else if (GameData.Menus.Targets[m].Halign == "C") {
GameData.Menus.Targets[m]._x = GameData.Menus.Targets[m].XClip._x + Math.round(GameData.Menus.Targets[m].Xmod * (GameData.Menus.Size / 100));
} else {
GameData.Menus.Targets[m]._x = ((Stage.height / 2) - (GameData.Menus.Targets[m]._height / 2)) + Math.round(GameData.Menus.Targets[m].Xmod * (GameData.Menus.Size / 100));
}
}
function makeButton(T, N, L, D) {
T.attachMovie("Button", N, D);
Center(T[N]);
T[N].bName.text = L;
setButtonStyle(T[N]);
}
function clickCheck(MC, A) {
if (GameData.ClickStopsSpin) {
MC.Spin = 0;
}
MC.XMov = 0;
MC.YMov = 0;
if (Key.isDown(16)) {
Target(MC);
if (GameData.TargetType == "Character") {
MC.OldScale = GameData.Characters[MC._name].Scale;
GameData.Xmod = _root._xmouse;
GameData.Ymod = _root._ymouse;
GameData.Action = "scale";
} else if (GameData.TargetType == "SpeechBubble") {
MC.OldScale = GameData.SpeechBubbles[MC._name].Scale;
MC.OldXScale = GameData.SpeechBubbles[MC._name].XScale;
MC.OldYScale = GameData.SpeechBubbles[MC._name].YScale;
GameData.Xmod = _root._xmouse;
GameData.Ymod = _root._ymouse;
GameData.Action = "scale";
}
} else if (Key.isDown(17)) {
Target(MC);
if (GameData.TargetType == "SpeechBubble") {
GameData.Target.Bubble.startDrag();
}
} else if ((GameData.DoubleClick > 0) && (GameData.Target == MC)) {
if (GameData.Target._name == "Grouchy Reimu") {
HaxSignBE();
} else if (GameData.Target._name == "Clone Capsule") {
if (stage["Clone Capsule"].char._visible) {
activateCloneCapsule();
} else {
openDNAInput();
}
} else if (GameData.TargetType == "SpeechBubble") {
if (GameData.Target.D.type == "dynamic") {
editBubble(GameData.Target);
} else {
setBubble(GameData.Target);
}
} else if (GameData.TargetType == "Character") {
openCOMenu();
}
} else {
GameData.DoubleClick = GameData.DCrate;
GameData.Action = A;
GameData.Xmod = _root._xmouse - MC._x;
GameData.Ymod = _root._ymouse - MC._y;
Target(MC);
}
}
function editBubble(MC) {
MC.D.type = "input";
MC.D.selectable = true;
Selection.setFocus(MC.D);
}
function setBubble(MC) {
MC.D.type = "dynamic";
MC.D.selectable = false;
}
function openDNAInput() {
OpenMenu(1, Interface.DNAMenu);
Interface.DNAMenu.DNAdata.text = "Enter DNA";
Interface.DNAMenu.OK.bName.text = "Spawn";
Interface.DNAMenu.OK.onRelease = function () {
SwapColor(MC.BG, "Buttons", 1);
makeFromDNA(Interface.DNAMenu.DNAdata.text);
CloseMenus(1);
};
}
function showDNAstrand() {
OpenMenu(1, Interface.DNAMenu);
Interface.DNAMenu.DNAdata.text = getDNA();
Interface.DNAMenu.OK.bName.text = "Close";
Interface.DNAMenu.OK.onRelease = function () {
SwapColor(MC.BG, "Buttons", 1);
CloseMenus(1);
};
}
function makeFromDNA(X) {
var _local1 = makeChar("DNA-" + X);
injectCloneCapsule(_local1);
}
function getDNA() {
var _local1 = GameData.Version + ":";
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.Name + ":");
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.Scale + ":");
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.hatFrame + ":");
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.headFrame + ":");
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.bodyFrame + ":");
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.armFrame + ":");
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.shoeFrame + ":");
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.eyeFrame + ":");
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.mouthFrame + ":");
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.itemFrame + ":");
_local1 = _local1 + (GameData.Toys["Clone Capsule"].Char.accFrame + ":");
_local1 = _local1 + GameData.Toys["Clone Capsule"].Char.wingFrame;
return(_local1);
}
function injectCloneCapsule(MC) {
playSound("Pop");
GameData.Toys["Clone Capsule"].Char = GameData.Characters[MC._name];
GameData.Toys["Clone Capsule"].Target = MC;
setCloneLook(stage["Clone Capsule"].char);
stage["Clone Capsule"].char._visible = true;
MC._visible = false;
Target(stage["Clone Capsule"]);
}
function ejectCloneCapsule() {
stage["Clone Capsule"].char._visible = false;
Interface.ToyTargetFrame.preview.char._visible = false;
GameData.Toys["Clone Capsule"].Target._visible = true;
GameData.Toys["Clone Capsule"].Target._x = stage["Clone Capsule"]._x;
GameData.Toys["Clone Capsule"].Target._y = stage["Clone Capsule"]._y;
GameData.Toys["Clone Capsule"].Target.XMov = random(10) + 20;
GameData.Toys["Clone Capsule"].Target.YMov = random(5) + 10;
}
function activateCloneCapsule() {
if (GameData.Toys["Clone Capsule"].Mode == 1) {
var _local1 = makeChar("Capsule Clone");
_local1.XMov = random(10) + 20;
_local1.YMov = random(5) + 10;
} else if (GameData.Toys["Clone Capsule"].Mode == 2) {
c = 0;
while (c < 6) {
var _local1 = makeChar("Capsule Clone");
_local1.XMov = random(10) + 20;
_local1.YMov = random(5) + 10;
_local1._xscale = GameData.ScaleLimit;
_local1._yscale = GameData.ScaleLimit;
GameData.Characters[_local1._name].Scale = GameData.ScaleLimit;
c++;
}
} else if (GameData.Toys["Clone Capsule"].Mode == 3) {
ejectCloneCapsule();
GameData.Toys["Clone Capsule"].Target._xscale = 100;
GameData.Toys["Clone Capsule"].Target._yscale = 100;
GameData.Characters[GameData.Toys["Clone Capsule"].Target._name].Scale = 100;
Scramble(GameData.Toys["Clone Capsule"].Target);
CloseMenus(1);
} else {
var _local1 = makeChar("Capsule Clone");
_local1.XMov = random(10) + 20;
_local1.YMov = random(5) + 10;
Scramble(_local1);
}
}
function setActionRelease(MC) {
MC.onRelease = function () {
releaseHandler();
};
MC.onReleaseOutside = function () {
releaseHandler();
};
}
function releaseHandler() {
if (GameData.TargetType == "Character") {
if ((stage["Clone Capsule"]._visible && (getDist(stage["Clone Capsule"], _root._xmouse, _root._ymouse) < 50)) && (!stage["Clone Capsule"].char._visible)) {
injectCloneCapsule(GameData.Target);
} else if ((bg.fusionlab && (getDist(bg.fusionlab.fusion1, _root._xmouse, _root._ymouse) < 50)) && (!bg.fusionlab.fusion1.char._visible)) {
injectFusionTank(1, GameData.Target);
} else if ((bg.fusionlab && (getDist(bg.fusionlab.fusion2, _root._xmouse, _root._ymouse) < 50)) && (!bg.fusionlab.fusion2.char._visible)) {
injectFusionTank(2, GameData.Target);
}
} else if (GameData.TargetType == "SpeechBubble") {
GameData.Target.Bubble.stopDrag();
} else if (GameData.Target._name == "Boxing Chen") {
BoxingChenAttack();
}
_root.GameData.Action = "";
}
function injectFusionTank(N, T) {
playSound("Pop");
setCharLook(bg.fusionlab["fusion" + N].char, GameData.Characters[T._name]);
bg.fusionlab["fusion" + N].char._visible = true;
bg.fusionlab["fusion" + N].lights.gotoAndStop(1);
fixFusionLights();
bg.fusionlab["fusion" + N].Target = T;
T._visible = false;
Target();
}
function fixFusionLights() {
if (bg.fusionlab.fusion1.char._visible && (bg.fusionlab.fusion2.char._visible)) {
bg.fusionlab.fusion3.lights.gotoAndStop(1);
} else if (bg.fusionlab.fusion1.char._visible || (bg.fusionlab.fusion2.char._visible)) {
bg.fusionlab.fusion3.lights.gotoAndStop(2);
} else {
bg.fusionlab.fusion3.lights.gotoAndStop(3);
}
}
function activateFusion() {
if (bg.fusionlab.fusion3.char._visible) {
ejectFusionTank(3);
} else {
var _local1 = GameData.Version + ":";
var _local3 = GameData.Characters[bg.fusionlab.fusion1.Target._name].Name;
var _local2 = GameData.Characters[bg.fusionlab.fusion2.Target._name].Name;
n = 0;
while (n < GameData.Fusion.Names.length) {
if (((_local3 == GameData.Fusion.Names[n][0]) && (_local2 == GameData.Fusion.Names[n][1])) || ((_local2 == GameData.Fusion.Names[n][0]) && (_local3 == GameData.Fusion.Names[n][1]))) {
var _local4 = GameData.Fusion.Names[n][2];
} else {
var _local4 = _local3 + _local2;
}
n++;
}
_local1 = _local1 + (_local4 + ":");
var _local7 = Number(GameData.Characters[bg.fusionlab.fusion1.Target._name].Scale);
var _local6 = Number(GameData.Characters[bg.fusionlab.fusion2.Target._name].Scale);
var _local8 = (_local7 + _local6) / 2;
_local1 = _local1 + (_local8 + ":");
if (random(2)) {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion1.Target._name].hatFrame + ":");
} else {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion2.Target._name].hatFrame + ":");
}
if (random(2)) {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion1.Target._name].headFrame + ":");
} else {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion2.Target._name].headFrame + ":");
}
if (random(2)) {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion1.Target._name].bodyFrame + ":");
} else {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion2.Target._name].bodyFrame + ":");
}
if (random(2)) {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion1.Target._name].armFrame + ":");
} else {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion2.Target._name].armFrame + ":");
}
if (random(2)) {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion1.Target._name].shoeFrame + ":");
} else {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion2.Target._name].shoeFrame + ":");
}
if (random(2)) {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion1.Target._name].eyeFrame + ":");
} else {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion2.Target._name].eyeFrame + ":");
}
if (random(2)) {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion1.Target._name].mouthFrame + ":");
} else {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion2.Target._name].mouthFrame + ":");
}
if (random(2)) {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion1.Target._name].itemFrame + ":");
} else {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion2.Target._name].itemFrame + ":");
}
if (random(2)) {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion1.Target._name].accFrame + ":");
} else {
_local1 = _local1 + (GameData.Characters[bg.fusionlab.fusion2.Target._name].accFrame + ":");
}
if (random(2)) {
_local1 = _local1 + GameData.Characters[bg.fusionlab.fusion1.Target._name].wingFrame;
} else {
_local1 = _local1 + GameData.Characters[bg.fusionlab.fusion2.Target._name].wingFrame;
}
var _local5 = makeChar("DNA-" + _local1);
injectFusionTank(3, _local5);
}
}
function ejectFusionTank(N) {
bg.fusionlab["fusion" + N].char._visible = false;
bg.fusionlab["fusion" + N].lights.gotoAndStop(3);
bg.fusionlab["fusion" + N].Target._visible = true;
fixFusionLights();
bg.fusionlab["fusion" + N].Target._x = bg.fusionlab["fusion" + N]._x;
bg.fusionlab["fusion" + N].Target._y = bg.fusionlab["fusion" + N]._y;
Scramble(bg.fusionlab["fusion" + N].Target);
}
function playSound(T) {
if (!GameData.Mute) {
_root.GameData.Sounds[T].start();
}
}
function BoxingChenAttack() {
var _local5 = new Array();
for (c in GameData.Characters) {
var _local1 = getDist(stage["Boxing Chen"], stage[c]._x, stage[c]._y);
if (stage[c]._visible && (_local1 < (GameData.Toys["Boxing Chen"].Range * (GameData.Characters[c].Scale / 100)))) {
_local5.push({ID:c, Dist:_local1});
}
}
_local5.sortOn(["Dist", "ID"]);
var _local2 = stage[_local5[0].ID];
if (_local2) {
playSound("Boxing");
stage["Boxing Chen"].Spin = 0;
stage["Boxing Chen"].XMov = 0;
stage["Boxing Chen"].YMov = 0;
stage["Boxing Chen"].AttackRoll = 85;
stage["Boxing Chen"].Target = _local2;
stage["Boxing Chen"].TR = _local2._rotation;
stage["Boxing Chen"]._x = _local2._x + ((30 * Math.abs(_local2._xscale)) / 100);
stage["Boxing Chen"]._y = _local2._y - ((20 * Math.abs(_local2._yscale)) / 100);
stage["Boxing Chen"]._xscale = Math.abs(_local2._xscale);
stage["Boxing Chen"]._yscale = Math.abs(_local2._yscale);
if (_local2._yscale < 0) {
_local2._rotation = 270;
} else {
_local2._rotation = 90;
}
_local2.eyes.gotoAndStop(9);
_local2.mouth.gotoAndStop(27);
_local2.mouth._visible = true;
if (stage["Boxing Chen"].getDepth() < _local2.getDepth()) {
stage["Boxing Chen"].swapDepths(_local2);
}
}
}
function makeMenu(T, N, D, MI, X, Y) {
T.createEmptyMovieClip(N, D);
ScaleMenu(T[N]);
i = 0;
while (i < MI.length) {
T[N].attachMovie("MenuItem", "ID" + i, i);
T[N]["ID" + i]._x = X;
T[N]["ID" + i]._y = i * -20;
T[N]["ID" + i].bName.text = MI[i];
if (MI[i] != "QuickChange") {
setButtonStyle(T[N]["ID" + i]);
}
i++;
}
T[N]._y = Y - T[N]._height;
T[N]._visible = false;
}
function getDist(MC, X, Y) {
if (MC._parent._name == "fusionlab") {
var _local3 = X - (((MC._x + MC._parent._x) + MC._parent._parent._x) * (bg._xscale / 100));
var _local2 = Y - (((MC._y + MC._parent._y) + MC._parent._parent._y) * (bg._yscale / 100));
return(Math.sqrt((_local3 * _local3) + (_local2 * _local2)));
}
return(Math.sqrt(((X - MC._x) * (X - MC._x)) + ((Y - MC._y) * (Y - MC._y))));
}
function getMouseAngle(X, Y) {
var _local3 = X - _root._xmouse;
var _local2 = Y - _root._ymouse;
angle = (-Math.atan2(_local3, _local2)) / (Math.PI/180);
return(angle);
}
function setCloneLook(T) {
T.head.gotoAndStop(GameData.Parts.Hair[GameData.Toys["Clone Capsule"].Char.headFrame][1]);
T.body.gotoAndStop(GameData.Parts.Hair[GameData.Toys["Clone Capsule"].Char.bodyFrame][1]);
T.arms.gotoAndStop(GameData.Parts.Hair[GameData.Toys["Clone Capsule"].Char.armFrame][1]);
T.legs.gotoAndStop(GameData.Parts.Hair[GameData.Toys["Clone Capsule"].Char.shoeFrame][1]);
T.eyes.gotoAndStop(GameData.Parts.Hair[GameData.Toys["Clone Capsule"].Char.eyeFrame][1]);
if (GameData.Parts.Hair[GameData.Toys["Clone Capsule"].Char.headFrame][5]) {
T.head2.gotoAndStop(GameData.Parts.Hair[GameData.Toys["Clone Capsule"].Char.headFrame][5]);
T.head2._visible = true;
} else {
T.head2._visible = false;
}
if (GameData.Parts.Hats[GameData.Toys["Clone Capsule"].Char.hatFrame] != "none") {
T.hat.gotoAndStop(GameData.Parts.Hair[GameData.Toys["Clone Capsule"].Char.hatFrame][1] - 1);
T.hat._visible = true;
} else {
T.hat._visible = false;
}
if (GameData.Parts.Mouth[GameData.Toys["Clone Capsule"].Char.mouthFrame] != "none") {
T.mouth.gotoAndStop(GameData.Parts.Mouth[GameData.Toys["Clone Capsule"].Char.mouthFrame][1]);
T.mouth._visible = true;
} else {
T.mouth._visible = false;
}
if (GameData.Parts.Acc[GameData.Toys["Clone Capsule"].Char.accFrame] != "none") {
T.accessory.gotoAndStop(GameData.Parts.Acc[GameData.Toys["Clone Capsule"].Char.accFrame][1]);
T.accessory._visible = true;
} else {
T.accessory._visible = false;
}
if (GameData.Parts.Back[GameData.Toys["Clone Capsule"].Char.wingFrame] != "none") {
T.wings.gotoAndStop(GameData.Parts.Back[GameData.Toys["Clone Capsule"].Char.wingFrame][1]);
T.wings._visible = true;
} else {
T.wings._visible = false;
}
if (GameData.Parts.Items[GameData.Toys["Clone Capsule"].Char.itemFrame] != "none") {
T.item.gotoAndStop(GameData.Parts.Items[GameData.Toys["Clone Capsule"].Char.itemFrame][1]);
T.item._visible = true;
} else {
T.item._visible = false;
}
}
function makePresetChar(T, P, N, D) {
T.attachMovie("Char", N, D);
T[N].head.gotoAndStop(GameData.Parts.Hair[GameData.Presets[P].headFrame][1]);
T[N].body.gotoAndStop(GameData.Parts.Body[GameData.Presets[P].bodyFrame][1]);
T[N].arms.gotoAndStop(GameData.Parts.Arms[GameData.Presets[P].armFrame][1]);
T[N].legs.gotoAndStop(GameData.Parts.Shoes[GameData.Presets[P].shoeFrame][1]);
T[N].eyes.gotoAndStop(GameData.Parts.Eyes[GameData.Presets[P].eyeFrame][1]);
if (GameData.Parts.Hair[GameData.Presets[P].headFrame][5]) {
T[N].head2.gotoAndStop(GameData.Parts.Hair[GameData.Presets[P].headFrame][5]);
T[N].head2._visible = true;
} else {
T[N].head2._visible = false;
}
if (GameData.Parts.Hats[GameData.Presets[P].hatFrame] != "none") {
T[N].hat.gotoAndStop(GameData.Parts.Hair[GameData.Presets[P].hatFrame][1] - 1);
T[N].hat._visible = true;
} else {
T[N].hat._visible = false;
}
if (GameData.Parts.Mouth[GameData.Presets[P].mouthFrame] != "none") {
T[N].mouth.gotoAndStop(GameData.Parts.Mouth[GameData.Presets[P].mouthFrame][1]);
T[N].mouth._visible = true;
} else {
T[N].mouth._visible = false;
}
if (GameData.Parts.Acc[GameData.Presets[P].accFrame] != "none") {
T[N].accessory.gotoAndStop(GameData.Parts.Acc[GameData.Presets[P].accFrame][1]);
T[N].accessory._visible = true;
} else {
T[N].accessory._visible = false;
}
if (GameData.Parts.Back[GameData.Presets[P].wingFrame] != "none") {
T[N].wings.gotoAndStop(GameData.Parts.Back[GameData.Presets[P].wingFrame][1]);
T[N].wings._visible = true;
} else {
T[N].wings._visible = false;
}
if (GameData.Parts.Items[GameData.Presets[P].itemFrame] != "none") {
T[N].item.gotoAndStop(GameData.Parts.Items[GameData.Presets[P].itemFrame][1]);
T[N].item._visible = true;
} else {
T[N].item._visible = false;
}
}
function Scramble(MC) {
MC.Spin = random(200) - 100;
MC.XMov = random(200) - 100;
MC.YMov = random(200) - 100;
}
function resetHelp() {
Interface.HelpWindow.Next._visible = false;
Interface.HelpWindow.TellMore._visible = false;
Interface.HelpWindow.WalfasLink._visible = false;
Interface.HelpWindow.BasicHelpMenu._visible = true;
Interface.HelpWindow.EirinTalk.D.text = GameData.Help.Intro;
}
function setMenuListener(MC, T, L) {
if (MC._parent._name == "PartsMenu") {
MC.onRelease = function () {
if (GameData.Locks[this.bName.text] || (GameData.Characters[GameData.Target._name].Locks[this.bName.text])) {
OpenMenu(L, Interface.HelpWindow, this.BG);
resetHelp();
Interface.HelpWindow.BasicHelpMenu._visible = false;
Interface.HelpWindow.EirinTalk.D.text = GameData.Help.Locks;
Interface.HelpWindow.Next._visible = true;
Interface.HelpWindow.Next.onRelease = function () {
Interface.HelpWindow._visible = false;
};
} else if (T._visible) {
CloseMenus(L);
SwapColor(this.BG, "Buttons", 1);
} else {
OpenMenu(L, T, this.BG);
SwapColor(this.BG, "Buttons", 2);
}
};
} else if (T._name == "PresetMenu") {
MC.onRelease = function () {
i = 0;
while (i < 13) {
TMFix(Interface.PresetMenu.Ops["ID" + i], "PresetList");
i++;
}
if (T._visible) {
CloseMenus(L);
SwapColor(this.BG, "Buttons", 1);
} else {
OpenMenu(L, T, this.BG);
SwapColor(this.BG, "Buttons", 2);
}
};
} else {
MC.onRelease = function () {
if (T._visible) {
CloseMenus(L);
SwapColor(this.BG, "Buttons", 1);
} else {
OpenMenu(L, T, this.BG);
SwapColor(this.BG, "Buttons", 2);
}
};
}
MC.onReleaseOutside = function () {
if (T._visible) {
SwapColor(this.BG, "Buttons", 2);
} else {
SwapColor(this.BG, "Buttons", 0);
}
};
MC.onRollOut = function () {
if (T._visible) {
SwapColor(this.BG, "Buttons", 2);
} else {
SwapColor(this.BG, "Buttons", 0);
}
};
}
function HaxSignBE() {
stage["Grouchy Reimu"]._visible = false;
_root.attachMovie("HaxSign", "HaxSign", 9999);
GameData.Chat.Doom = 120;
HaxSign.clock = 60;
HaxSign._xscale = (Stage.width * 100) / 550;
HaxSign._yscale = (Stage.height * 100) / 400;
HaxSign.onEnterFrame = function () {
if (this.clock > 0) {
this.clock--;
} else {
this.removeMovieClip();
}
};
for (c in GameData.Characters) {
if (stage[c]._visible) {
stage[c].Doom = random(100) + 100;
}
}
Target();
}
function tinkerCloneCapsule() {
GameData.Toys["Clone Capsule"].Mode = random(4) + 1;
if (GameData.Toys["Clone Capsule"].Mode == 4) {
stage["Clone Capsule"].lights.play();
if (Interface.ToyTargetFrame.preview.lights) {
Interface.ToyTargetFrame.preview.lights.play();
}
} else {
stage["Clone Capsule"].lights.gotoAndStop(GameData.Toys["Clone Capsule"].Mode);
if (Interface.ToyTargetFrame.preview.lights) {
Interface.ToyTargetFrame.preview.lights.gotoAndStop(GameData.Toys["Clone Capsule"].Mode);
}
}
}
function Delete(MC) {
GameData.Characters[MC._name] = undefined;
MC.removeMovieClip();
Target();
}
function RandomizeAll(MC) {
if ((!GameData.Characters[MC._name].Locks.Hats) && (!GameData.Locks.Hats)) {
RootPartSwap(MC.hat, "Hats", "random");
}
if ((!GameData.Characters[MC._name].Locks.Back) && (!GameData.Locks.Back)) {
RootPartSwap(MC.wings, "Back", "random");
}
if ((!GameData.Characters[MC._name].Locks.Items) && (!GameData.Locks.Items)) {
RootPartSwap(MC.item, "Items", "random");
}
if ((!GameData.Characters[MC._name].Locks.Accessory) && (!GameData.Locks.Accessory)) {
RootPartSwap(MC.accessory, "Acc", "random");
}
if ((!GameData.Characters[MC._name].Locks.Hair) && (!GameData.Locks.Hair)) {
RootPartSwap(MC.head, "Hair", "random");
}
if ((!GameData.Characters[MC._name].Locks.Body) && (!GameData.Locks.Body)) {
RootPartSwap(MC.body, "Body", "random");
}
if ((!GameData.Characters[MC._name].Locks.Arms) && (!GameData.Locks.Arms)) {
RootPartSwap(MC.arms, "Arms", "random");
}
if ((!GameData.Characters[MC._name].Locks.Shoes) && (!GameData.Locks.Shoes)) {
RootPartSwap(MC.legs, "Shoes", "random");
}
if ((!GameData.Characters[MC._name].Locks.Eyes) && (!GameData.Locks.Eyes)) {
RootPartSwap(MC.eyes, "Eyes", "random");
}
if ((!GameData.Characters[MC._name].Locks.Mouth) && (!GameData.Locks.Mouth)) {
RootPartSwap(MC.mouth, "Mouth", "random");
}
}
function RootPartSwap(MC, T, N) {
if (N == "random") {
var _local2 = SwapPart(MC, T, GameData.Parts[T].length - 1);
} else {
var _local2 = SwapPart(MC, T, Number(N));
}
if (T == "Hats") {
GameData.Characters[MC._parent._name].hatFrame = _local2;
} else if (T == "Acc") {
GameData.Characters[MC._parent._name].accFrame = _local2;
} else if (T == "Back") {
GameData.Characters[MC._parent._name].wingFrame = _local2;
} else if (T == "Items") {
GameData.Characters[MC._parent._name].itemFrame = _local2;
} else if (T == "Hair") {
GameData.Characters[MC._parent._name].headFrame = _local2;
} else if (T == "Arms") {
GameData.Characters[MC._parent._name].armFrame = _local2;
} else if (T == "Shoes") {
GameData.Characters[MC._parent._name].shoeFrame = _local2;
} else if (T == "Body") {
GameData.Characters[MC._parent._name].bodyFrame = _local2;
} else if (T == "Eyes") {
GameData.Characters[MC._parent._name].eyeFrame = _local2;
} else if (T == "Mouth") {
GameData.Characters[MC._parent._name].mouthFrame = _local2;
}
if (GameData.Target == MC._parent) {
if (T == "Hats") {
SwapPart(Interface.TargetFrame.preview.hat, T, _local2);
} else if (T == "Acc") {
SwapPart(Interface.TargetFrame.preview.accessory, T, _local2);
} else if (T == "Hair") {
SwapPart(Interface.TargetFrame.preview.hair, T, _local2);
} else if (T == "Eyes") {
SwapPart(Interface.TargetFrame.preview.eyes, T, _local2);
} else if (T == "Mouth") {
SwapPart(Interface.TargetFrame.preview.mouth, T, _local2);
}
}
}
function checkLocks(T, M) {
l = 0;
while (l < 10) {
if (T.Locks[M["ID" + l].bName.text]) {
M["ID" + l].checkbox.gotoAndStop(2);
} else {
M["ID" + l].checkbox.gotoAndStop(1);
}
l++;
}
}
function setButtonStyle(MC) {
SwapColor(MC.BG, "Buttons", 0);
MC.BG._alpha = GameData.Buttons.Opacity;
var _local3 = new TextFormat();
_local3.color = GameData.Palette.Buttons[3];
MC.bName.setTextFormat(_local3);
MC.onRollOver = function () {
SwapColor(this.BG, "Buttons", 1);
};
MC.onRollOut = function () {
SwapColor(this.BG, "Buttons", 0);
};
MC.onPress = function () {
SwapColor(this.BG, "Buttons", 2);
};
MC.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
};
MC.onReleaseOutside = function () {
SwapColor(this.BG, "Buttons", 0);
};
}
function Target(MC) {
if (GameData.TargetType == "Character") {
Interface.TargetFrame._visible = false;
} else if (GameData.TargetType == "Toy") {
Interface.ToyTargetFrame._visible = false;
} else if (GameData.TargetType == "SpeechBubble") {
Interface.BubbleTargetFrame._visible = false;
}
if (GameData.Characters[MC._name]) {
if (MC == stage["Boxing Chen"].Target) {
resetBoxingChen();
}
CloseMenus(1);
GameData.Target = MC;
GameData.TargetType = "Character";
Interface.TargetFrame._visible = true;
Interface.TargetFrame.bName.text = GameData.Characters[MC._name].Name;
SwapPart(Interface.TargetFrame.preview.hat, "Hats", GameData.Characters[MC._name].hatFrame);
SwapPart(Interface.TargetFrame.preview.accessory, "Acc", GameData.Characters[MC._name].accFrame);
SwapPart(Interface.TargetFrame.preview.hair, "Hair", GameData.Characters[MC._name].headFrame);
SwapPart(Interface.TargetFrame.preview.eyes, "Eyes", GameData.Characters[MC._name].eyeFrame);
SwapPart(Interface.TargetFrame.preview.mouth, "Mouth", GameData.Characters[MC._name].mouthFrame);
} else if (GameData.Toys[MC._name]) {
CloseMenus(1);
GameData.Target = MC;
GameData.TargetType = "Toy";
Interface.ToyTargetFrame._visible = true;
Interface.ToyTargetFrame.bName.text = MC._name;
Interface.ToyTargetFrame.preview.gotoAndStop(GameData.Toys[MC._name].frame);
if (GameData.Target._name == "Clone Capsule") {
if (GameData.Toys["Clone Capsule"].Mode == 4) {
Interface.ToyTargetFrame.preview.lights.play();
} else {
Interface.ToyTargetFrame.preview.lights.gotoAndStop(GameData.Toys["Clone Capsule"].Mode);
}
if (GameData.Target.char._visible) {
setCloneLook(Interface.ToyTargetFrame.preview.char);
Interface.ToyTargetFrame.preview.char._visible = true;
} else {
Interface.ToyTargetFrame.preview.char._visible = false;
}
}
} else if (GameData.SpeechBubbles[MC._name]) {
CloseMenus(1);
GameData.Target = MC;
GameData.TargetType = "SpeechBubble";
Interface.BubbleTargetFrame._visible = true;
Interface.BubbleTargetFrame.bName.text = MC._name;
Interface.BubbleTargetFrame.preview.D.text = MC.D.text;
} else {
GameData.Target = "";
Interface.TargetFrame._visible = false;
Interface.ToyTargetFrame._visible = false;
}
}
function SwapPart(T, A, N) {
if (GameData.Parts[A][N] == "none") {
T._visible = false;
} else {
T._visible = true;
if ((GameData.Parts[A][N] == "random") || (N >= GameData.Parts[A].length)) {
N = SwapPart(T, A, random(GameData.Parts[A].length));
} else {
T.gotoAndStop(GameData.Parts[A][N][1]);
if (A == "Hair") {
if (GameData.Parts[A][N][5] > 0) {
T._parent.head2._visible = true;
T._parent.head2.gotoAndStop(GameData.Parts[A][N][5]);
} else {
T._parent.head2._visible = false;
}
}
}
}
return(N);
}
function makeThumbMenu(MC, T, pT, pX, pY, pS, X, Y, sT) {
if (T == "BGs") {
var _local3 = 250;
} else {
var _local3 = 200;
}
MC.SMod = 0;
MC.attachMovie("BGBox", "DaMask", 5);
MC.DaMask._width = _local3;
MC.DaMask._height = 240;
MC.createEmptyMovieClip("Ops", 10);
MC.Ops.Roll = false;
MC.Ops.Scrolled = 0;
MC.Ops.Type = sT;
MC.Ops.ScrolledT = 0;
MC.Ops.Top = 0;
if (GameData[T]) {
MC.Ops.Max = (GameData[T].length - 12) * 20;
} else {
MC.Ops.Max = (GameData.Parts[T].length - 12) * 20;
}
MC.Ops.setMask(MC.DaMask);
i = 0;
while (i < 13) {
MC.Ops.attachMovie("ObjMenuItem", "ID" + i, i);
MC.Ops["ID" + i].ID = i;
MC.Ops["ID" + i].BG._width = _local3;
MC.Ops["ID" + i].bName._width = _local3;
MC.Ops["ID" + i]._y = (i * 20) - 2;
MC.Ops["ID" + i]._x = 30;
MC.Ops["ID" + i].pX = pX;
MC.Ops["ID" + i].pY = pY;
MC.Ops["ID" + i].pS = pS;
MC.Ops["ID" + i].attachMovie(pT, "preview", 10);
if (T == "Hair") {
MC.Ops["ID" + i].attachMovie("Hair2", "preview2", 11);
}
TMFix(MC.Ops["ID" + i], T);
setButtonStyle(MC.Ops["ID" + i]);
MC.Ops["ID" + i].onRollOver = function () {
MC.Ops.Roll = true;
SwapColor(this.BG, "Buttons", 1);
};
MC.Ops["ID" + i].onRollOut = function () {
MC.Ops.Roll = false;
SwapColor(this.BG, "Buttons", 0);
};
if (T == "BGs") {
MC.Ops["ID" + i].onRelease = function () {
SwapBG(this.ID);
SwapColor(this.BG, "Buttons", 1);
};
} else if (T == "PresetList") {
MC.Ops["ID" + i].onRelease = function () {
makeChar(GameData.PresetList[this.ID]);
SwapColor(this.BG, "Buttons", 1);
};
} else {
MC.Ops["ID" + i].onRelease = function () {
RootPartSwap(GameData.Target[this._parent.Type], T, this.ID);
SwapColor(this.BG, "Buttons", 1);
};
}
i++;
}
MC.Ops.onEnterFrame = function () {
if (this.Roll) {
this.ScrollRate = Math.round(((_root._ymouse - ((120 + this._parent.SMod) * (GameData.Menus.Size / 100))) - this._parent._y) / GameData.MSRate);
if (Key.isDown(16)) {
this.ScrollRate = this.ScrollRate * 2;
}
if ((this.ScrolledT + this.ScrollRate) < 0) {
this._y = this._y - (this.ScrolledT * -1);
this.Scrolled = this.Scrolled + (this.ScrolledT * -1);
this.ScrolledT = 0;
} else if ((this.ScrolledT + this.ScrollRate) > this.Max) {
this._y = this._y - (this.Max - this.ScrolledT);
this.Scrolled = this.Scrolled + (this.Max - this.ScrolledT);
this.ScrolledT = this.Max;
} else {
this._y = this._y - this.ScrollRate;
this.Scrolled = this.Scrolled + this.ScrollRate;
this.ScrolledT = this.ScrolledT + this.ScrollRate;
}
if (this.Scrolled > 20) {
this["ID" + this.Top]._y = this["ID" + this.Top]._y + 260;
this["ID" + this.Top].ID = this["ID" + this.Top].ID + 13;
TMFix(this["ID" + this.Top], T);
this.Scrolled = this.Scrolled - 20;
this.Top++;
if (this.Top == 13) {
this.Top = 0;
}
} else if (this.Scrolled < 0) {
this.Top--;
if (this.Top < 0) {
this.Top = 12;
}
this["ID" + this.Top]._y = this["ID" + this.Top]._y - 260;
this["ID" + this.Top].ID = this["ID" + this.Top].ID - 13;
TMFix(this["ID" + this.Top], T);
this.Scrolled = this.Scrolled + 20;
}
}
};
if (MC._name == "BGMenu") {
PositionMenu(MC, "C", "C", X, Y, Interface.MainMenu, Interface.MainMenu);
} else {
PositionMenu(MC, "C", "C", X, Y, Interface.TargetFrame, Interface.TargetFrame);
}
MC._visible = false;
}
function setBGProperties() {
bg._x = Number(Interface.BGMenu.lX.text);
bg._y = Number(Interface.BGMenu.lY.text);
bg._xscale = Number(Interface.BGMenu.sX.text);
bg._yscale = Number(Interface.BGMenu.sX.text);
bg._rotation = Number(Interface.BGMenu.rD.text);
Dimmer._alpha = 100 - Number(Interface.BGMenu.Br.text);
GameData.Friction = 1 - (Number(Interface.BGMenu.Fr.text) / 100);
}
function SwapBG(ID) {
c = 1;
while (c <= 3) {
if (bg.fusionlab["fusion" + c].char._visible) {
ejectFusionTank(c);
}
c++;
}
if (GameData.BGs[ID] == "none") {
bg._visible = false;
GameData.BG = 0;
} else {
bg._visible = true;
if (GameData.BGs[ID] == "random") {
SwapBG(random(GameData.BGs.length));
} else {
bg.gotoAndStop(GameData.BGs[ID][1]);
GameData.BG = ID;
}
}
}
function TMFix(MC, T) {
if (GameData.Parts[T]) {
MC.preview._x = MC.pX + GameData.Parts[T][MC.ID][2];
MC.preview._y = MC.pY + GameData.Parts[T][MC.ID][3];
MC.preview._xscale = MC.pS + GameData.Parts[T][MC.ID][4];
MC.preview._yscale = MC.pS + GameData.Parts[T][MC.ID][4];
if (T == "Hair") {
MC.preview2._x = MC.pX + GameData.Parts[T][MC.ID][2];
MC.preview2._y = MC.pY + GameData.Parts[T][MC.ID][3];
MC.preview2._xscale = MC.pS + GameData.Parts[T][MC.ID][4];
MC.preview2._yscale = MC.pS + GameData.Parts[T][MC.ID][4];
}
MC.swapDepths(MC.ID);
if ((MC.ID < 0) || (MC.ID >= GameData.Parts[T].length)) {
MC._visible = false;
} else {
MC._visible = true;
if (GameData.Parts[T][MC.ID] == "none") {
MC.bName.text = "None";
MC.preview.gotoAndStop(1);
MC.preview._visible = false;
MC.preview2._visible = false;
} else {
MC.preview._visible = true;
if (GameData.Parts[T][MC.ID] == "random") {
MC.bName.text = "Random";
MC.preview.play();
} else {
MC.bName.text = GameData.Parts[T][MC.ID][0];
MC.preview.gotoAndStop(GameData.Parts[T][MC.ID][1]);
if (T == "Hair") {
if (GameData.Parts[T][MC.ID][5]) {
MC.preview2._visible = true;
MC.preview2.gotoAndStop(GameData.Parts[T][MC.ID][5]);
} else {
MC.preview2._visible = false;
}
}
}
}
}
} else {
MC.preview._x = MC.pX;
MC.preview._y = MC.pY;
MC.preview._xscale = MC.pS;
MC.preview._yscale = MC.pS;
MC.swapDepths(MC.ID);
if ((MC.ID < 0) || (MC.ID >= GameData[T].length)) {
MC._visible = false;
} else {
MC._visible = true;
if (GameData[T][MC.ID] == "none") {
MC.bName.text = "None";
MC.preview.gotoAndStop(1);
MC.preview._visible = false;
} else {
MC.preview._visible = true;
if (T == "PresetList") {
MC.bName.text = GameData[T][MC.ID];
if (GameData.Parts.Hats[GameData.Presets[GameData[T][MC.ID]].hatFrame][1]) {
MC.preview.hat.gotoAndStop(GameData.Parts.Hats[GameData.Presets[GameData[T][MC.ID]].hatFrame][1]);
MC.preview.hat._visible = true;
} else {
MC.preview.hat._visible = false;
}
MC.preview.hair.gotoAndStop(GameData.Parts.Hair[GameData.Presets[GameData[T][MC.ID]].headFrame][1]);
if (GameData.Parts.Hair[GameData.Presets[GameData[T][MC.ID]].headFrame][5]) {
MC.preview.head2.gotoAndStop(GameData.Parts.Hair[GameData.Presets[GameData[T][MC.ID]].headFrame][5]);
MC.preview.head2._visible = true;
} else {
MC.preview.head2._visible = false;
}
MC.preview.eyes.gotoAndStop(GameData.Parts.Eyes[GameData.Presets[GameData[T][MC.ID]].eyeFrame][1]);
if (GameData.Parts.Mouth[GameData.Presets[GameData[T][MC.ID]].mouthFrame][1]) {
MC.preview.mouth.gotoAndStop(GameData.Parts.Mouth[GameData.Presets[GameData[T][MC.ID]].mouthFrame][1]);
MC.preview.mouth._visible = true;
} else {
MC.preview.mouth._visible = false;
}
if (GameData.Parts.Acc[GameData.Presets[GameData[T][MC.ID]].accFrame][1]) {
MC.preview.accessory.gotoAndStop(GameData.Parts.Acc[GameData.Presets[GameData[T][MC.ID]].accFrame][1]);
MC.preview.accessory._visible = true;
} else {
MC.preview.accessory._visible = false;
}
} else if (GameData[T][MC.ID] == "random") {
MC.bName.text = "Random";
MC.preview.play();
} else {
MC.bName.text = GameData[T][MC.ID][0];
MC.preview.gotoAndStop(GameData[T][MC.ID][1]);
}
}
}
}
}
function fixOpsMenu() {
if (GameData.ClickStopsSpin) {
Interface.OpsMenu.ID0.gotoAndStop(2);
} else {
Interface.OpsMenu.ID0.gotoAndStop(1);
}
if (GameData.Mute) {
Interface.OpsMenu.ID1.gotoAndStop(2);
} else {
Interface.OpsMenu.ID1.gotoAndStop(1);
}
if (GameData.PresetWithItems) {
Interface.OpsMenu.ID2.gotoAndStop(2);
} else {
Interface.OpsMenu.ID2.gotoAndStop(1);
}
if (GameData.MassLocking) {
Interface.OpsMenu.ID3.gotoAndStop(2);
} else {
Interface.OpsMenu.ID3.gotoAndStop(1);
}
}
function openCOMenu() {
setCharLook(Interface.COMenu.char, GameData.Characters[GameData.Target._name]);
l = 0;
while (l < GameData.PartsArray.length) {
if (GameData.Characters[GameData.Target._name].Locks[GameData.PartsArray[l]]) {
Interface.COMenu["Prev" + l]._visible = false;
Interface.COMenu["Next" + l]._visible = false;
Interface.COMenu["Lock" + l].gotoAndStop(2);
} else {
Interface.COMenu["Prev" + l]._visible = true;
Interface.COMenu["Next" + l]._visible = true;
Interface.COMenu["Lock" + l].gotoAndStop(1);
}
l++;
}
Interface.COMenu.cName.text = GameData.Characters[GameData.Target._name].Name;
Interface.COMenu.cScale.text = GameData.Characters[GameData.Target._name].Scale;
Interface.COMenu.cRot.text = GameData.Target._rotation;
Interface.COMenu.cX.text = GameData.Target._x;
Interface.COMenu.cY.text = GameData.Target._y;
CloseMenus(1);
OpenMenu(1, Interface.COMenu, Interface.EditMenu.ID0.BG);
}
function updateCOMenu() {
if ((GameData.TargetType == "Character") && (Interface.COMenu._visible)) {
Interface.COMenu.cName.text = GameData.Characters[GameData.Target._name].Name;
Interface.COMenu.cScale.text = GameData.Characters[GameData.Target._name].Scale;
Interface.COMenu.cRot.text = GameData.Target._rotation;
Interface.COMenu.cX.text = GameData.Target._x;
Interface.COMenu.cY.text = GameData.Target._y;
}
}
function setCharLook(T, S) {
if (GameData.Parts.Hats[S.hatFrame][1]) {
T.hat._visible = true;
T.hat.gotoAndStop(GameData.Parts.Hats[S.hatFrame][1]);
} else {
T.hat._visible = false;
}
T.head.gotoAndStop(GameData.Parts.Hair[S.headFrame][1]);
if (GameData.Parts.Hair[S.headFrame][5]) {
T.head2._visible = true;
T.head2.gotoAndStop(GameData.Parts.Hair[S.headFrame][5]);
} else {
T.head2._visible = false;
}
T.body.gotoAndStop(GameData.Parts.Body[S.bodyFrame][1]);
T.arms.gotoAndStop(GameData.Parts.Arms[S.armFrame][1]);
T.legs.gotoAndStop(GameData.Parts.Shoes[S.shoeFrame][1]);
T.eyes.gotoAndStop(GameData.Parts.Eyes[S.eyeFrame][1]);
if (GameData.Parts.Items[S.itemFrame][1]) {
T.item._visible = true;
T.item.gotoAndStop(GameData.Parts.Items[S.itemFrame][1]);
} else {
T.item._visible = false;
}
if (GameData.Parts.Back[S.wingFrame][1]) {
T.wings._visible = true;
T.wings.gotoAndStop(GameData.Parts.Back[S.wingFrame][1]);
} else {
T.wings._visible = false;
}
if (GameData.Parts.Acc[S.accFrame][1]) {
T.accessory._visible = true;
T.accessory.gotoAndStop(GameData.Parts.Acc[S.accFrame][1]);
} else {
T.accessory._visible = false;
}
if (GameData.Parts.Mouth[S.mouthFrame][1]) {
T.mouth._visible = true;
T.mouth.gotoAndStop(GameData.Parts.Mouth[S.mouthFrame][1]);
} else {
T.mouth._visible = false;
}
}
function QuickSwap(MC, N, T) {
if ((!GameData.Characters[MC._name].Locks.Hats) && ((T == "Hats") || (T == "All"))) {
var _local5 = GameData.Characters[MC._name].hatFrame + N;
if (_local5 < 1) {
_local5 = GameData.Parts.Hats.length - 2;
} else if (_local5 > (GameData.Parts.Hats.length - 2)) {
_local5 = 1;
}
RootPartSwap(MC.hat, "Hats", String(_local5));
}
if ((!GameData.Characters[MC._name].Locks.Eyes) && ((T == "Eyes") || (T == "All"))) {
var _local11 = GameData.Characters[MC._name].eyeFrame + N;
if (_local11 < 1) {
_local11 = GameData.Parts.Eyes.length - 2;
} else if (_local11 > (GameData.Parts.Eyes.length - 2)) {
_local11 = 1;
}
RootPartSwap(MC.eyes, "Eyes", String(_local11));
}
if ((!GameData.Characters[MC._name].Locks.Mouth) && ((T == "Mouth") || (T == "All"))) {
var _local8 = GameData.Characters[MC._name].mouthFrame + N;
if (_local8 < 1) {
_local8 = GameData.Parts.Mouth.length - 2;
} else if (_local8 > (GameData.Parts.Mouth.length - 2)) {
_local8 = 1;
}
RootPartSwap(MC.mouth, "Mouth", String(_local8));
}
if ((!GameData.Characters[MC._name].Locks.Hair) && ((T == "Hair") || (T == "All"))) {
var _local7 = GameData.Characters[MC._name].headFrame + N;
if (_local7 < 0) {
_local7 = GameData.Parts.Hair.length - 2;
} else if (_local7 > (GameData.Parts.Hair.length - 2)) {
_local7 = 0;
}
RootPartSwap(MC.head, "Hair", String(_local7));
}
if ((!GameData.Characters[MC._name].Locks.Arms) && ((T == "Arms") || (T == "All"))) {
var _local4 = GameData.Characters[MC._name].armFrame + N;
if (_local4 < 0) {
_local4 = GameData.Parts.Arms.length - 2;
} else if (_local4 > (GameData.Parts.Arms.length - 2)) {
_local4 = 0;
}
RootPartSwap(MC.arms, "Arms", String(_local4));
}
if ((!GameData.Characters[MC._name].Locks.Shoes) && ((T == "Shoes") || (T == "All"))) {
var _local13 = GameData.Characters[MC._name].shoeFrame + N;
if (_local13 < 0) {
_local13 = GameData.Parts.Shoes.length - 2;
} else if (_local4 > (GameData.Parts.Shoes.length - 2)) {
_local13 = 0;
}
RootPartSwap(MC.legs, "Shoes", String(_local13));
}
if ((!GameData.Characters[MC._name].Locks.Body) && ((T == "Body") || (T == "All"))) {
var _local6 = GameData.Characters[MC._name].bodyFrame + N;
if (_local6 < 0) {
_local6 = GameData.Parts.Body.length - 2;
} else if (_local6 > (GameData.Parts.Body.length - 2)) {
_local6 = 0;
}
RootPartSwap(MC.body, "Body", String(_local6));
}
if ((!GameData.Characters[MC._name].Locks.Items) && ((T == "Items") || (T == "All"))) {
var _local9 = GameData.Characters[MC._name].itemFrame + N;
if (_local9 < 0) {
_local9 = GameData.Parts.Items.length - 2;
} else if (_local9 > (GameData.Parts.Items.length - 2)) {
_local9 = 0;
}
RootPartSwap(MC.item, "Items", String(_local9));
}
if ((!GameData.Characters[MC._name].Locks.Back) && ((T == "Back") || (T == "All"))) {
var _local12 = GameData.Characters[MC._name].wingFrame + N;
if (_local12 < 0) {
_local12 = GameData.Parts.Back.length - 2;
} else if (_local12 > (GameData.Parts.Back.length - 2)) {
_local12 = 0;
}
RootPartSwap(MC.wings, "Back", String(_local12));
}
if ((!GameData.Characters[MC._name].Locks.Accessory) && ((T == "Accessory") || (T == "All"))) {
var _local10 = GameData.Characters[MC._name].accFrame + N;
if (_local10 < 0) {
_local10 = GameData.Parts.Acc.length - 2;
} else if (_local10 > (GameData.Parts.Acc.length - 2)) {
_local10 = 0;
}
RootPartSwap(MC.accessory, "Acc", String(_local10));
}
}
function Find(MC) {
if (MC) {
MC._visible = true;
trace((("X: " + MC._x) + " Y:") + MC._y);
} else {
trace("Uh oh! It's really gone.");
}
}
function OpenMenu(L, M, S) {
if (GameData[("L" + L) + "Menu"] != M) {
CloseMenus(L);
}
GameData[("L" + L) + "Menu"] = M;
GameData[("L" + L) + "MenuS"] = S;
M._visible = true;
}
function CloseMenus(L) {
while (L <= GameData.Menus.Max) {
if (GameData[("L" + L) + "Menu"]) {
GameData[("L" + L) + "Menu"]._visible = false;
SwapColor(GameData[("L" + L) + "MenuS"], "Buttons", 0);
}
L++;
}
}
function fixMenuDepths(Mar) {
i = 0;
while (i < Mar.length) {
GameData.Menus.Targets[Mar[i]].swapDepths((GameData.Menus.DMax - 1) - i);
i++;
}
}
GameData = new Object();
GameData.Version = 3;
GameData.Action = "";
GameData.Target = "";
GameData.Friction = 0.9;
GameData.ScaleLimit = 10;
GameData.DCrate = 15;
GameData.ClickStopsSpin = true;
GameData.PresetWithItems = true;
GameData.CharID = 0;
GameData.BubbleID = 0;
GameData.BG = 0;
GameData.DMax = 0;
GameData.MSRate = 15;
GameData.GameOn = false;
GameData.BGAutoScale = false;
GameData.MassLocking = false;
GameData.Mute = false;
GameData.Menus = new Object();
GameData.Menus.Max = 3;
GameData.Menus.AutoScale = true;
GameData.Menus.DMax = 0;
GameData.Menus.Size = 100;
GameData.Menus.Targets = new Object();
GameData.Buttons = new Object();
GameData.Buttons.Opacity = 85;
GameData.Keys = new Object();
GameData.Keys.Space = false;
GameData.Keys.G = false;
GameData.Locks = new Object();
GameData.Locks.Mouth = false;
GameData.Locks.Eyes = false;
GameData.Locks.Hair = false;
GameData.Locks.Body = false;
GameData.Locks.Arms = false;
GameData.Locks.Shoes = false;
GameData.Locks.Back = false;
GameData.Locks.Accessory = false;
GameData.Locks.Items = false;
GameData.Locks.Hats = false;
GameData.Help = new Object();
GameData.Help.WalfasLinkX = -40;
GameData.Help.WalfasLinkY = 50;
GameData.Help.Locks = "That part is locked!\n\n";
GameData.Help.Locks = GameData.Help.Locks + "Go to target character's\nlock settings to unlock it.\n\n";
GameData.Help.Locks = GameData.Help.Locks + "If the character's lock for this part is unchecked, then try the global lock settings under the main menu.\n\n";
GameData.Help.Locks = GameData.Help.Locks + "The global lock and unlock all will also affect each character's locks.";
GameData.Help.Intro = "Hello, Eirin here to\nhelp you with learning\nhow to use this program.\n\n";
GameData.Help.Intro = GameData.Help.Intro + "What would you like to know?";
GameData.Help.Basics = "Click \"New Character\"\nto spawn a new character.\n";
GameData.Help.Basics = GameData.Help.Basics + "You can click on characters\nto select them. ";
GameData.Help.Basics = GameData.Help.Basics + "Dragging their body will move them. ";
GameData.Help.Basics = GameData.Help.Basics + "Dragging their head will rotate them. ";
GameData.Help.Basics = GameData.Help.Basics + "Holding shift while dragging will scale them.\n\n";
GameData.Help.Basics = GameData.Help.Basics + "When you click on a character, a target frame will appear on the bottom. ";
GameData.Help.Basics = GameData.Help.Basics + "Clicking this will bring up more options.";
GameData.Help.Keyboard = "\nPressing spacebar will\ntoggle the interface.\n\n";
GameData.Help.Keyboard = GameData.Help.Keyboard + "Holding shift while scrolling menus will double the scroll speed.\n\n";
GameData.Help.Keyboard = GameData.Help.Keyboard + "Pressing G while the Gravity Well is out will make it stick to your cursor.";
GameData.Help.StageOps = "Stage options will\naffect all characters on\nthe stage.\n\n";
GameData.Help.StageOps = GameData.Help.StageOps + "Shrink all will scale everyone to 40% size. ";
GameData.Help.StageOps = GameData.Help.StageOps + "Scramble will toss everyone in random directions. ";
GameData.Help.StageOps = GameData.Help.StageOps + "Randomize all will randomize everyone's parts. ";
GameData.Help.About = ("This is version " + GameData.Version) + " of\ncreate.swf.\n\n";
GameData.Help.About = GameData.Help.About + "This program is property of\n\n\n\nand was originally created by KirbyM. ";
GameData.Help.About = GameData.Help.About + "The new version was coded by Thefre.";
GameData.Help.Rumors = new Array();
GameData.Help.Rumors.push("\n\n\n\nI hear Nitori is researching cloning technology.");
GameData.Help.Rumors.push("\n\n\n\nSuika has been playing tricks on people lately.");
GameData.Help.Rumors.push("\n\n\n\nBetter not get Reimu angry!");
GameData.Help.Rumors.push("\n\n\n\nI heard there's been a mysterious gap floating around Gensokyo.");
GameData.Help.Rumors.push("\n\n\n\nI think Chen is lurking around somewhere.");
GameData.Help.Rumors.push("\n\n\n\nI hear some of the backgrounds are interactive!");
GameData.Help.Rumors.push("\n\n\n\nI think Marisa stole some of my...\"Precious Things\".");
GameData.Help.Rumors.push("\n\n\n\nThis is only a demo! There's still lots more features planned.");
GameData.Chat = new Object();
GameData.Chat.Active = true;
GameData.Chat.D = 0;
GameData.Chat.L = 0;
GameData.Chat.Delay = 15;
GameData.Chat.Doom = 0;
GameData.Chat.Users = new Object();
GameData.Chat.Users.LOLSpark = new Array();
GameData.Chat.Users.LOLSpark.push("Hey Reimu!");
GameData.Chat.Users.LOLSpark.push("Hey Reimu!!");
GameData.Chat.Users.LOLSpark.push("Hey Reimu!!!!");
GameData.Chat.Users.LOLSpark.push("Reimu!!");
GameData.Chat.Users.LOLSpark.push("Reimuuuuu!!");
GameData.Chat.Users.LOLSpark.push("Raymoooooo!!");
GameData.Chat.Users.LOLSpark.push("Reimu Reimu Reimu");
GameData.Chat.Users.LOLSpark.push("Reimu!! Are you there???");
GameData.Chat.Users.WakiMiko = new Array();
GameData.Chat.Users.WakiMiko.push("stop it please");
GameData.Chat.Users.WakiMiko.push("STOOOOOOOOOOP");
GameData.Chat.Users.WakiMiko.push("SHUT THE HELL UP ALREADY");
GameData.Chat.Users.Cirno9 = new Array();
GameData.Chat.Users.Cirno9.push("Hooray!");
GameData.Chat.Users.Cirno9.push("I AM A GENIUS");
GameData.Chat.Users.Cirno9.push("I AM THE STRONGEST");
GameData.Chat.Users.Patchy = new Array();
GameData.Chat.Users.Patchy.push("Please stop spamming.");
GameData.Chat.Users.Patchy.push("Marisa, when are you returning my book?");
GameData.Chat.Users.Patchy.push("You are all a bunch of noobs...");
GameData.Chat.Users.Patchy.push("So I have this idea for a rocket...");
GameData.Chat.Users.YuKaRi = new Array();
GameData.Chat.Users.YuKaRi.push("HeY gUyS wAtS gOiNg On?!!1!");
GameData.Chat.Users.YuKaRi.push("OmG mY cAt Is StUcK uP a TrEe AgAiN!!!1!");
GameData.Chat.Users.YuKaRi.push("LOLOL DiD yOu SeE tHe ViD oF rEiMu In K1???");
GameData.Chat.Users.YuKaRi.push("OMG MY SHIFT BUTTON IS STUCK");
GameData.Chat.Users.YuKaRi.push("MaRiSa Is On DrUgS LOL");
GameData.Chat.Users.YuKaRi.push("I nUkEd YuKa LOLOL");
GameData.Chat.UserList = new Array();
for (u in GameData.Chat.Users) {
GameData.Chat.UserList.push(u);
}
GameData.Palette = new Object();
GameData.Palette.Skin = new Array();
GameData.Palette.Skin.push("0xFFF1DD");
GameData.Palette.Skin.push("0xFFE7DD");
GameData.Palette.Skin.push("0xDED4BB");
GameData.Palette.Skin.push("0xCC9900");
GameData.Palette.Skin.push("0x663300");
GameData.Palette.Skin.push("0xFFFFCC");
GameData.Palette.Skin.push("0xFFCCFF");
GameData.Palette.Skin.push("0xCCCCFF");
GameData.Palette.Buttons = new Array();
GameData.Palette.Buttons.push("0xFFFFFF");
GameData.Palette.Buttons.push("0xCCCCCC");
GameData.Palette.Buttons.push("0x999999");
GameData.Palette.Buttons.push("0x000000");
GameData.Sounds = new Object();
GameData.Sounds.Boom = new Sound();
GameData.Sounds.Boom.attachSound("Fire");
GameData.Sounds.ChatBeep = new Sound();
GameData.Sounds.ChatBeep.attachSound("IMbeep");
GameData.Sounds.Boxing = new Sound();
GameData.Sounds.Boxing.attachSound("Owned");
GameData.Sounds.KO = new Sound();
GameData.Sounds.KO.attachSound("KOsound");
GameData.Sounds.Meow = new Sound();
GameData.Sounds.Meow.attachSound("Meow");
GameData.Sounds.Cash = new Sound();
GameData.Sounds.Cash.attachSound("Cash");
GameData.Sounds.Pop = new Sound();
GameData.Sounds.Pop.attachSound("Bubble");
GameData.Fusion = new Object();
GameData.Fusion.Names = new Array();
GameData.Fusion.Names.push(["Alice", "Marisa", "Malice"]);
GameData.Parts = new Object();
GameData.Parts.Hats = new Array();
GameData.Parts.Hats.push("none");
GameData.Parts.Hats.push(["China Hat", 1, 0, 0, 0]);
GameData.Parts.Hats.push(["Red Ribbon", 2, 0, 0, 0]);
GameData.Parts.Hats.push(["Witch Hat", 3, 0, 0, 0]);
GameData.Parts.Hats.push(["Maid Band", 4, 0, 0, 0]);
GameData.Parts.Hats.push(["Yukari Cap", 5, 0, 0, 0]);
GameData.Parts.Hats.push(["Flandre Cap", 6, 0, 0, 0]);
GameData.Parts.Hats.push(["Yuyuko Cap", 7, 0, 0, 0]);
GameData.Parts.Hats.push(["Headphones", 8, 0, 0, 0]);
GameData.Parts.Hats.push(["Blue Ribbon", 9, 0, 0, 0]);
GameData.Parts.Hats.push(["Eirin Hat", 10, 0, 0, 0]);
GameData.Parts.Hats.push(["Youmu Band", 11, 0, 0, 0]);
GameData.Parts.Hats.push(["Patchy Cap", 12, 0, 0, 0]);
GameData.Parts.Hats.push(["Hairband", 13, 0, 0, 0]);
GameData.Parts.Hats.push(["Reisen's Ears", 14, 0, 0, 0]);
GameData.Parts.Hats.push(["Mokou's Bow", 15, 0, 0, 0]);
GameData.Parts.Hats.push(["Sparrow Cap", 16, 0, 0, 0]);
GameData.Parts.Hats.push(["Bunny Ears", 17, 0, 0, 0]);
GameData.Parts.Hats.push(["Bento Hat", 18, 0, 0, 0]);
GameData.Parts.Hats.push(["Ran's Cap", 19, 0, 0, 0]);
GameData.Parts.Hats.push(["Letty's Cap", 20, 0, 0, 0]);
GameData.Parts.Hats.push(["Chen's Cap", 21, 0, 0, 0]);
GameData.Parts.Hats.push(["Suika's Horns", 22, 0, 0, 0]);
GameData.Parts.Hats.push(["Remilia's Cap", 23, 0, 0, 0]);
GameData.Parts.Hats.push(["Lily White's Cap", 24, 0, 0, 0]);
GameData.Parts.Hats.push(["Lily Black's Cap", 25, 0, 0, 0]);
GameData.Parts.Hats.push(["Hair Beads", 26, 0, 0, 0]);
GameData.Parts.Hats.push(["Kappa Cap", 27, 0, 0, 0]);
GameData.Parts.Hats.push(["Judgement Helm", 28, 0, 0, 0]);
GameData.Parts.Hats.push(["Bug Feelers", 29, 0, 0, 0]);
GameData.Parts.Hats.push(["Rumia's Ribbon", 30, 0, 0, 0]);
GameData.Parts.Hats.push(["Tengu Hat", 31, 0, 0, 0]);
GameData.Parts.Hats.push(["Mini Tengu Hat", 32, 0, 0, 0]);
GameData.Parts.Hats.push(["Devil Wings", 33, 0, 0, 0]);
GameData.Parts.Hats.push(["Lunasa's Hat", 34, 0, 0, 0]);
GameData.Parts.Hats.push(["Merlin's Hat", 35, 0, 0, 0]);
GameData.Parts.Hats.push(["Lyrica's Hat", 36, 0, 0, 0]);
GameData.Parts.Hats.push(["Yellow Ribbon", 37, 0, 0, 0]);
GameData.Parts.Hats.push(["Medicine's Knot", 38, 0, 0, 0]);
GameData.Parts.Hats.push(["EX-Keine's Horns", 39, 0, 0, 0]);
GameData.Parts.Hats.push(["Top Hat", 40, 0, 0, 0]);
GameData.Parts.Hats.push(["The Frog God", 41, 0, 0, 0]);
GameData.Parts.Hats.push(["Hina Ribbon", 42, 0, 0, 0]);
GameData.Parts.Hats.push(["Frog Clip", 43, 0, 0, 0]);
GameData.Parts.Hats.push(["Rope Bandana", 44, 0, 0, 0]);
GameData.Parts.Hats.push(["Harvest Cap", 45, 0, 0, 0]);
GameData.Parts.Hats.push(["Maple Leaves", 46, 0, 0, 0]);
GameData.Parts.Hats.push(["Shinki's Beads", 47, 0, 0, 0]);
GameData.Parts.Hats.push(["Mima Cap", 48, 0, 0, 0]);
GameData.Parts.Hats.push(["Safety Hat", 49, 0, 0, 0]);
GameData.Parts.Hats.push(["Tokiko's Clip", 50, 0, 0, 0]);
GameData.Parts.Hats.push(["Sunny Band", 51, 0, 0, 0]);
GameData.Parts.Hats.push(["Star Ribbon", 52, 0, 0, 0]);
GameData.Parts.Hats.push(["Luna Cap", 53, 0, 0, 0]);
GameData.Parts.Hats.push(["Flower Clip", 54, 0, 0, 0]);
GameData.Parts.Hats.push(["Fedora", 55, 0, 0, 0]);
GameData.Parts.Hats.push(["Maribel's Cap", 56, 0, 0, 0]);
GameData.Parts.Hats.push(["Sailor Hat", 57, 0, 0, 0]);
GameData.Parts.Hats.push(["Yumemi's Hat", 58, 0, 0, 0]);
GameData.Parts.Hats.push(["Old Red Ribbon", 59, 0, 0, 0]);
GameData.Parts.Hats.push(["Black Ribbon", 60, 0, 0, 0]);
GameData.Parts.Hats.push(["Peach Hat", 61, 0, 0, 0]);
GameData.Parts.Hats.push(["Iku's Hat", 62, 0, 0, 0]);
GameData.Parts.Hats.push("random");
GameData.Parts.Items = new Array();
GameData.Parts.Items.push("none");
GameData.Parts.Items.push(["Miko Stick", 1, -20, 0, 0]);
GameData.Parts.Items.push(["Broom", 2, 0, 0, -10]);
GameData.Parts.Items.push(["Knife", 3, -20, 0, 0]);
GameData.Parts.Items.push(["Gap", 4, 0, 0, 0]);
GameData.Parts.Items.push(["Squiggly Spear", 5, 0, 0, 0]);
GameData.Parts.Items.push(["MEAT", 6, -20, 0, 2]);
GameData.Parts.Items.push(["Popsicle", 7, -20, 0, 2]);
GameData.Parts.Items.push(["Pet Frog", 8, -20, -18, 0]);
GameData.Parts.Items.push(["Bow", 9, 0, -2, -3]);
GameData.Parts.Items.push(["Youmu Set", 10, 6, 10, -13]);
GameData.Parts.Items.push(["Book", 11, -15, -15, 10]);
GameData.Parts.Items.push(["Alice's Grimoire", 12, -15, -15, 10]);
GameData.Parts.Items.push(["Pet Bunny", 13, -20, -15, 0]);
GameData.Parts.Items.push(["Mallet", 14, -6, 0, -5]);
GameData.Parts.Items.push(["Cleaver", 15, -20, 0, 1]);
GameData.Parts.Items.push(["Cell Phone", 16, -20, -10, 10]);
GameData.Parts.Items.push(["Arm Cannon", 17, -20, -10, 10]);
GameData.Parts.Items.push(["Pink Gloves", 18, 0, -10, 10]);
GameData.Parts.Items.push(["Bunny Doll", 19, -13, -10, 1]);
GameData.Parts.Items.push(["Plunger", 20, -20, 0, 0]);
GameData.Parts.Items.push(["Magic Staff", 21, -13, 0, -5]);
GameData.Parts.Items.push(["Sword & Shield", 22, 0, 7, -9]);
GameData.Parts.Items.push(["Amulet", 23, -8, -8, 0]);
GameData.Parts.Items.push(["Meat Cleaver", 24, -20, -2, 0]);
GameData.Parts.Items.push(["Kite", 25, -20, 33, -5]);
GameData.Parts.Items.push(["Shanghai", 26, -17, 20, -9]);
GameData.Parts.Items.push(["Water Gun", 27, -7, -3, -5]);
GameData.Parts.Items.push(["Fork and Knife", 28, 0, -2, 0]);
GameData.Parts.Items.push(["Dual Fans", 29, 0, -10, -5]);
GameData.Parts.Items.push(["Mic", 30, -5, 0, 0]);
GameData.Parts.Items.push(["Mic Stand", 31, -15, 0, 0]);
GameData.Parts.Items.push(["Carrot", 32, -10, 0, 0]);
GameData.Parts.Items.push(["Carrot Stick", 33, -13, 8, -5]);
GameData.Parts.Items.push(["Fried Eggs", 34, -17, 3, -3]);
GameData.Parts.Items.push(["Baseball Bat", 35, -22, 0, -2]);
GameData.Parts.Items.push(["Truck", 36, -10, -8, 0]);
GameData.Parts.Items.push(["Flames of Fury!!", 37, 0, 0, 0]);
GameData.Parts.Items.push(["W-Melon Blade", 38, -8, 7, -8]);
GameData.Parts.Items.push(["Chen", 39, -26, -10, 0]);
GameData.Parts.Items.push(["Chen 83", 40, -26, -10, 0]);
GameData.Parts.Items.push(["Suika Shackles", 41, 0, -4, 0]);
GameData.Parts.Items.push(["Suika's Gourd", 42, -10, -10, 0]);
GameData.Parts.Items.push(["Beer", 43, -10, -10, 0]);
GameData.Parts.Items.push(["Gungnir", 44, -10, 0, -10]);
GameData.Parts.Items.push(["Parasol", 45, -6, 2, -10]);
GameData.Parts.Items.push(["FOE", 46, -30, 10, 0]);
GameData.Parts.Items.push(["Scythe", 47, 0, 3, -10]);
GameData.Parts.Items.push(["Wrench", 48, 1, -2, -3]);
GameData.Parts.Items.push(["Judgement Stick", 49, -5, -7, 0]);
GameData.Parts.Items.push(["Icebreaker Chen", 50, -26, -10, 0]);
GameData.Parts.Items.push(["Fishing Pole", 51, -17, 8, -5]);
GameData.Parts.Items.push(["Flashlight", 52, -10, 12, -15]);
GameData.Parts.Items.push(["Camera", 53, -10, -5, 0]);
GameData.Parts.Items.push(["Leaf Fan", 54, -10, -5, 0]);
GameData.Parts.Items.push(["Momizi's Gear", 55, 0, 2, -5]);
GameData.Parts.Items.push(["Tea", 56, -10, 0, 0]);
GameData.Parts.Items.push(["Violin", 57, -25, 0, 0]);
GameData.Parts.Items.push(["Trumpet", 58, -25, 3, 0]);
GameData.Parts.Items.push(["Keyboard", 59, -25, 0, 0]);
GameData.Parts.Items.push(["Flower", 60, -15, 0, 0]);
GameData.Parts.Items.push(["Boxing Gloves", 61, 0, 0, 0]);
GameData.Parts.Items.push(["Suzuran", 62, -15, 0, 0]);
GameData.Parts.Items.push(["Another flower", 63, -5, -2, -5]);
GameData.Parts.Items.push(["Sunflower", 64, -5, 3, -8]);
GameData.Parts.Items.push(["Robot!", 65, -12, 2, -8]);
GameData.Parts.Items.push(["Cardboard Box", 66, -18, -5, -5]);
GameData.Parts.Items.push(["Chair", 67, -8, 2, -12]);
GameData.Parts.Items.push(["Leek", 68, -18, 0, 0]);
GameData.Parts.Items.push(["Sub Sandwich", 69, -15, -8, 0]);
GameData.Parts.Items.push(["Spatula", 70, -15, -8, 0]);
GameData.Parts.Items.push(["Crescent Staff", 71, -4, 5, -10]);
GameData.Parts.Items.push(["Warhead", 72, 0, 3, -10]);
GameData.Parts.Items.push(["Water Buckets", 73, 0, -8, 0]);
GameData.Parts.Items.push(["Thick Book", 74, -8, -5, 0]);
GameData.Parts.Items.push(["Milk", 75, -6, -5, 0]);
GameData.Parts.Items.push(["Ice Cream", 76, -8, 2, 0]);
GameData.Parts.Items.push(["Banana", 77, -8, -5, 0]);
GameData.Parts.Items.push(["Frozen Frog", 78, -20, -5, -3]);
GameData.Parts.Items.push(["Paintbrush", 79, -5, 2, -8]);
GameData.Parts.Items.push(["Scroll", 80, -2, -3, -10]);
GameData.Parts.Items.push(["Dual Swords", 81, 6, 10, -13]);
GameData.Parts.Items.push(["Watermelon", 82, -22, -11, 0]);
GameData.Parts.Items.push(["Chair (equip)", 83, -5, 0, -10]);
GameData.Parts.Items.push(["Cross", 84, 0, 3, -10]);
GameData.Parts.Items.push(["Staff", 85, 0, 3, -10]);
GameData.Parts.Items.push(["Sanae's Stick", 86, -13, 0, 0]);
GameData.Parts.Items.push("random");
GameData.Parts.Back = new Array();
GameData.Parts.Back.push("none");
GameData.Parts.Back.push(["Flandres Wings", 1, 0, 0, 0]);
GameData.Parts.Back.push(["Ice Fairy Wings", 2, 0, -10, 0]);
GameData.Parts.Back.push(["Dark Wings", 3, 0, 0, 0]);
GameData.Parts.Back.push(["Night Bird Wings", 4, 0, 0, 0]);
GameData.Parts.Back.push(["Blue Bird Wings", 5, 0, 0, 0]);
GameData.Parts.Back.push([" Pixie Wings", 6, 0, -10, 0]);
GameData.Parts.Back.push(["Phoenix Wings", 7, 0, 0, 0]);
GameData.Parts.Back.push(["Pink Cape", 8, 2, -10, 0]);
GameData.Parts.Back.push(["Nine Tails", 9, 0, -10, 0]);
GameData.Parts.Back.push(["Twin Cat Tails", 10, -5, -46, 10]);
GameData.Parts.Back.push(["Remilia's Wings", 11, -5, -10, 0]);
GameData.Parts.Back.push(["Lily Wings", 12, -3, -10, 0]);
GameData.Parts.Back.push(["Backpack", 13, 4, -12, 2]);
GameData.Parts.Back.push(["Wriggle Cape", 14, 4, -12, 0]);
GameData.Parts.Back.push(["Tengu Wings", 15, 0, 0, 0]);
GameData.Parts.Back.push(["Wolf Tail", 16, 0, -46, 10]);
GameData.Parts.Back.push(["Devil Set", 17, 0, -10, 0]);
GameData.Parts.Back.push(["Golden Wings", 18, 0, -5, 0]);
GameData.Parts.Back.push(["EX-Keine's Tail", 19, -5, -85, 20]);
GameData.Parts.Back.push(["Sacred Ring", 20, 5, 10, -5]);
GameData.Parts.Back.push(["Shinki's Wings", 21, 7, 8, -5]);
GameData.Parts.Back.push(["Tokiko's Wings", 22, 0, 0, 0]);
GameData.Parts.Back.push(["Sunny Wings", 23, 3, -5, -2]);
GameData.Parts.Back.push(["Starry Wings", 24, 3, -5, -2]);
GameData.Parts.Back.push(["Lunar Wings", 25, 3, -5, -2]);
GameData.Parts.Back.push(["Myon", 26, -10, 14, 0]);
GameData.Parts.Back.push(["The Gap", 27, 0, 10, -5]);
GameData.Parts.Back.push(["Yuyuko's Fan", 28, 0, 10, -5]);
GameData.Parts.Back.push(["Gravity Well", 29, -10, 2, -2]);
GameData.Parts.Back.push(["Hang Rope", 30, 0, -30, 2]);
GameData.Parts.Back.push(["Evil Eye Sigma", 31, 15, 20, -5]);
GameData.Parts.Back.push(["Iku's Shawl", 32, 5, 10, -5]);
GameData.Parts.Back.push("random");
GameData.Parts.Acc = new Array();
GameData.Parts.Acc.push("none");
GameData.Parts.Acc.push(["Glasses", 1, 0, 0, 0]);
GameData.Parts.Acc.push(["Monocle", 2, -6, -4, 0]);
GameData.Parts.Acc.push(["Black Mask", 3, 0, -10, 0]);
GameData.Parts.Acc.push(["Flu Mask", 4, 0, -6, 0]);
GameData.Parts.Acc.push(["Amulet", 5, 0, 8, 0]);
GameData.Parts.Acc.push(["GAR Shades", 6, 0, 0, 0]);
GameData.Parts.Acc.push(["Sun Glasses", 7, 0, 0, 0]);
GameData.Parts.Acc.push(["Rectangle Glasses", 8, 0, 0, 0]);
GameData.Parts.Acc.push(["Blush", 9, -4, -10, 6]);
GameData.Parts.Acc.push(["3D Glasses", 10, 0, 0, 0]);
GameData.Parts.Acc.push(["Knife", 11, 0, 22, 0]);
GameData.Parts.Acc.push(["Mustache", 12, 0, 0, 0]);
GameData.Parts.Acc.push(["Eye Patch", 13, 0, 3, 0]);
GameData.Parts.Acc.push(["Cross Scar", 14, 0, 0, 0]);
GameData.Parts.Acc.push(["Big Glasses 1", 15, 0, 0, 0]);
GameData.Parts.Acc.push(["Big Glasses 2", 16, 0, 0, 0]);
GameData.Parts.Acc.push(["Big Glasses 3", 17, 0, 0, 0]);
GameData.Parts.Acc.push(["Pink Scarf", 18, 10, -18, 0]);
GameData.Parts.Acc.push(["Knight Visor", 19, 5, 2, -5]);
GameData.Parts.Acc.push(["Melody", 20, -15, 10, -5]);
GameData.Parts.Acc.push(["Flames", 21, 8, 5, -10]);
GameData.Parts.Acc.push(["Stylish Glasses", 22, 0, -3, 0]);
GameData.Parts.Acc.push(["Happiness", 23, -5, 10, -10]);
GameData.Parts.Acc.push(["Censored", 24, 0, 0, 0]);
GameData.Parts.Acc.push(["Power Up!", 25, 10, 5, -14]);
GameData.Parts.Acc.push(["Twirly", 26, -20, 13, 0]);
GameData.Parts.Acc.push(["Wanted", 27, 11, 5, -13]);
GameData.Parts.Acc.push(["Eyebrows", 28, 0, 3, 0]);
GameData.Parts.Acc.push(["Happy Mask", 29, 0, 0, 0]);
GameData.Parts.Acc.push(["Faceguard", 30, 3, 0, -3]);
GameData.Parts.Acc.push(["Mole", 31, -5, 0, 0]);
GameData.Parts.Acc.push(["Cross Bands", 32, 10, 0, 0]);
GameData.Parts.Acc.push(["Darkness", 33, 10, 5, -15]);
GameData.Parts.Acc.push(["Crow", 34, 0, 23, 0]);
GameData.Parts.Acc.push(["Tengu Scarf 1", 35, 4, -13, -5]);
GameData.Parts.Acc.push(["Tengu Scarf 2", 36, 4, -13, -5]);
GameData.Parts.Acc.push(["Wolf Ears", 37, 2, 15, -3]);
GameData.Parts.Acc.push(["Scouter", 38, -7, 3, 0]);
GameData.Parts.Acc.push(["Gundam", 39, 5, -4, -10]);
GameData.Parts.Acc.push(["Doll", 40, 7, 23, 0]);
GameData.Parts.Acc.push(["Camo Make-up", 41, 0, -3, 0]);
GameData.Parts.Acc.push(["Clever Disguise", 42, 0, 0, 0]);
GameData.Parts.Acc.push(["Worry Brows", 43, 0, 4, 0]);
GameData.Parts.Acc.push(["Marisa", 44, -10, 10, -8]);
GameData.Parts.Acc.push(["Zap!", 45, 10, 5, -14]);
GameData.Parts.Acc.push(["Basket", 46, 4, -25, 0]);
GameData.Parts.Acc.push(["Visor", 47, 2, 10, 0]);
GameData.Parts.Acc.push(["More Glasses", 48, 0, 0, 0]);
GameData.Parts.Acc.push(["White Beard", 49, 0, -13, 0]);
GameData.Parts.Acc.push(["Bandit Mask", 50, 0, -11, 0]);
GameData.Parts.Acc.push(["Sunny", 51, -12, 7, -9]);
GameData.Parts.Acc.push(["Sweat Drop", 52, 13, 0, 0]);
GameData.Parts.Acc.push(["Toast", 53, 0, -15, 0]);
GameData.Parts.Acc.push(["Fish", 54, -3, -17, 0]);
GameData.Parts.Acc.push(["Rain Cloud", 55, -5, 12, -10]);
GameData.Parts.Acc.push(["Bandaid", 56, 2, 6, 0]);
GameData.Parts.Acc.push(["Shout", 57, -7, 0, -10]);
GameData.Parts.Acc.push("random");
GameData.Parts.Body = new Array();
GameData.Parts.Body.push(["Meiling", 1, 0, 0, 0]);
GameData.Parts.Body.push(["Reimu", 2, 0, 0, 0]);
GameData.Parts.Body.push(["Marisa", 3, 0, 0, 0]);
GameData.Parts.Body.push(["Sakuya", 4, 0, 0, 0]);
GameData.Parts.Body.push(["Yukari", 5, 0, 0, 0]);
GameData.Parts.Body.push(["Flandre", 6, 0, 0, 0]);
GameData.Parts.Body.push(["Yuyuko", 7, 0, 0, 0]);
GameData.Parts.Body.push(["Kaguya", 8, 0, 0, 0]);
GameData.Parts.Body.push(["Cirno", 9, 0, 0, 0]);
GameData.Parts.Body.push(["Eirin", 10, 0, 0, 0]);
GameData.Parts.Body.push(["Youmu", 11, 0, 0, 0]);
GameData.Parts.Body.push(["Patchouli", 12, 0, 0, 0]);
GameData.Parts.Body.push(["Alice", 13, 0, 0, 0]);
GameData.Parts.Body.push(["Reisen", 14, 0, 0, 0]);
GameData.Parts.Body.push(["Mokou", 15, 0, 0, 0]);
GameData.Parts.Body.push(["Mystia", 16, 0, 0, 0]);
GameData.Parts.Body.push(["Tewi", 17, 0, 0, 0]);
GameData.Parts.Body.push(["Keine", 18, 0, 0, 0]);
GameData.Parts.Body.push(["Ran", 19, 0, 0, 0]);
GameData.Parts.Body.push(["Letty", 20, 0, 0, 0]);
GameData.Parts.Body.push(["Chen", 21, 0, 0, 0]);
GameData.Parts.Body.push(["Suika", 22, 0, 0, 0]);
GameData.Parts.Body.push(["Remilia", 23, 0, 0, 0]);
GameData.Parts.Body.push(["Lily White", 24, 0, 0, 0]);
GameData.Parts.Body.push(["Lily Black", 25, 0, 0, 0]);
GameData.Parts.Body.push(["Komachi", 26, 0, 0, 0]);
GameData.Parts.Body.push(["Nitori", 27, 0, 0, 0]);
GameData.Parts.Body.push(["Sikieiki", 28, 0, 0, 0]);
GameData.Parts.Body.push(["Wriggle", 29, 0, 0, 0]);
GameData.Parts.Body.push(["Rumia", 30, 0, 0, 0]);
GameData.Parts.Body.push(["Aya", 31, 0, 0, 0]);
GameData.Parts.Body.push(["Momizi", 32, 0, 0, 0]);
GameData.Parts.Body.push(["Koakuma", 33, 0, 0, 0]);
GameData.Parts.Body.push(["Lunasa", 34, 0, 0, 0]);
GameData.Parts.Body.push(["Merlin", 35, 0, 0, 0]);
GameData.Parts.Body.push(["Lyrica", 36, 0, 0, 0]);
GameData.Parts.Body.push(["Daiyousei", 37, 0, 0, 0]);
GameData.Parts.Body.push(["Medicine", 38, 0, 0, 0]);
GameData.Parts.Body.push(["EX-Keine", 39, 0, 0, 0]);
GameData.Parts.Body.push(["Yuka", 40, 0, 0, 0]);
GameData.Parts.Body.push(["Suwako", 41, 0, 0, 0]);
GameData.Parts.Body.push(["Hina", 42, 0, 0, 0]);
GameData.Parts.Body.push(["Sanae", 43, 0, 0, 0]);
GameData.Parts.Body.push(["Kanako", 44, 0, 0, 0]);
GameData.Parts.Body.push(["Minoriko", 45, 0, 0, 0]);
GameData.Parts.Body.push(["Shizuha", 46, 0, 0, 0]);
GameData.Parts.Body.push(["Shinki", 47, 0, 0, 0]);
GameData.Parts.Body.push(["Mima", 48, 0, 0, 0]);
GameData.Parts.Body.push(["Rinnosuke", 49, 0, 0, 0]);
GameData.Parts.Body.push(["Tokiko", 50, 0, 0, 0]);
GameData.Parts.Body.push(["Sunny Milk", 51, 0, 0, 0]);
GameData.Parts.Body.push(["Star Sapphire", 52, 0, 0, 0]);
GameData.Parts.Body.push(["Luna Child", 53, 0, 0, 0]);
GameData.Parts.Body.push(["Akyu", 54, 0, 0, 0]);
GameData.Parts.Body.push(["Renko", 55, 0, 0, 0]);
GameData.Parts.Body.push(["Maribel", 56, 0, 0, 0]);
GameData.Parts.Body.push(["Chiyuri", 57, 0, 0, 0]);
GameData.Parts.Body.push(["Yumemi", 58, 0, 0, 0]);
GameData.Parts.Body.push(["PC-98 Reimu", 59, 0, 0, 0]);
GameData.Parts.Body.push(["Yamame", 60, 0, 0, 0]);
GameData.Parts.Body.push(["Tenshi", 61, 0, 0, 0]);
GameData.Parts.Body.push(["Iku", 62, 0, 0, 0]);
GameData.Parts.Body.push("random");
GameData.Parts.Shoes = new Array();
GameData.Parts.Shoes.push(["Meiling", 1, 0, 0, 0]);
GameData.Parts.Shoes.push(["Reimu", 2, 0, 0, 0]);
GameData.Parts.Shoes.push(["Marisa", 3, 0, 0, 0]);
GameData.Parts.Shoes.push(["Sakuya", 4, 0, 0, 0]);
GameData.Parts.Shoes.push(["Yukari", 5, 0, 0, 0]);
GameData.Parts.Shoes.push(["Flandre", 6, 0, 0, 0]);
GameData.Parts.Shoes.push(["Yuyuko", 7, 0, 0, 0]);
GameData.Parts.Shoes.push(["Kaguya", 8, 0, 0, 0]);
GameData.Parts.Shoes.push(["Cirno", 9, 0, 0, 0]);
GameData.Parts.Shoes.push(["Eirin", 10, 0, 0, 0]);
GameData.Parts.Shoes.push(["Youmu", 11, 0, 0, 0]);
GameData.Parts.Shoes.push(["Patchouli", 12, 0, 0, 0]);
GameData.Parts.Shoes.push(["Alice", 13, 0, 0, 0]);
GameData.Parts.Shoes.push(["Reisen", 14, 0, 0, 0]);
GameData.Parts.Shoes.push(["Mokou", 15, 0, 0, 0]);
GameData.Parts.Shoes.push(["Mystia", 16, 0, 0, 0]);
GameData.Parts.Shoes.push(["Tewi", 17, 0, 0, 0]);
GameData.Parts.Shoes.push(["Keine", 18, 0, 0, 0]);
GameData.Parts.Shoes.push(["Ran", 19, 0, 0, 0]);
GameData.Parts.Shoes.push(["Letty", 20, 0, 0, 0]);
GameData.Parts.Shoes.push(["Chen", 21, 0, 0, 0]);
GameData.Parts.Shoes.push(["Suika", 22, 0, 0, 0]);
GameData.Parts.Shoes.push(["Remilia", 23, 0, 0, 0]);
GameData.Parts.Shoes.push(["Lily White", 24, 0, 0, 0]);
GameData.Parts.Shoes.push(["Lily Black", 25, 0, 0, 0]);
GameData.Parts.Shoes.push(["Komachi", 26, 0, 0, 0]);
GameData.Parts.Shoes.push(["Nitori", 27, 0, 0, 0]);
GameData.Parts.Shoes.push(["Sikieiki", 28, 0, 0, 0]);
GameData.Parts.Shoes.push(["Wriggle", 29, 0, 0, 0]);
GameData.Parts.Shoes.push(["Rumia", 30, 0, 0, 0]);
GameData.Parts.Shoes.push(["Aya", 31, 0, 0, 0]);
GameData.Parts.Shoes.push(["Momizi", 32, 0, 0, 0]);
GameData.Parts.Shoes.push(["Koakuma", 33, 0, 0, 0]);
GameData.Parts.Shoes.push(["Lunasa", 34, 0, 0, 0]);
GameData.Parts.Shoes.push(["Merlin", 35, 0, 0, 0]);
GameData.Parts.Shoes.push(["Lyrica", 36, 0, 0, 0]);
GameData.Parts.Shoes.push(["Daiyousei", 37, 0, 0, 0]);
GameData.Parts.Shoes.push(["Medicine", 38, 0, 0, 0]);
GameData.Parts.Shoes.push(["EX-Keine", 39, 0, 0, 0]);
GameData.Parts.Shoes.push(["Yuka", 40, 0, 0, 0]);
GameData.Parts.Shoes.push(["Suwako", 41, 0, 0, 0]);
GameData.Parts.Shoes.push(["Hina", 42, 0, 0, 0]);
GameData.Parts.Shoes.push(["Sanae", 43, 0, 0, 0]);
GameData.Parts.Shoes.push(["Kanako", 44, 0, 0, 0]);
GameData.Parts.Shoes.push(["Minoriko", 45, 0, 0, 0]);
GameData.Parts.Shoes.push(["Shizuha", 46, 0, 0, 0]);
GameData.Parts.Shoes.push(["Shinki", 47, 0, 0, 0]);
GameData.Parts.Shoes.push(["Mima", 48, 0, 0, 0]);
GameData.Parts.Shoes.push(["Rinnosuke", 49, 0, 0, 0]);
GameData.Parts.Shoes.push(["Tokiko", 50, 0, 0, 0]);
GameData.Parts.Shoes.push(["Sunny Milk", 51, 0, 0, 0]);
GameData.Parts.Shoes.push(["Star Sapphire", 52, 0, 0, 0]);
GameData.Parts.Shoes.push(["Luna Child", 53, 0, 0, 0]);
GameData.Parts.Shoes.push(["Akyu", 54, 0, 0, 0]);
GameData.Parts.Shoes.push(["Renko", 55, 0, 0, 0]);
GameData.Parts.Shoes.push(["Maribel", 56, 0, 0, 0]);
GameData.Parts.Shoes.push(["Chiyuri", 57, 0, 0, 0]);
GameData.Parts.Shoes.push(["Yumemi", 58, 0, 0, 0]);
GameData.Parts.Shoes.push(["PC-98 Reimu", 59, 0, 0, 0]);
GameData.Parts.Shoes.push(["Yamame", 60, 0, 0, 0]);
GameData.Parts.Shoes.push(["Tenshi", 61, 0, 0, 0]);
GameData.Parts.Shoes.push(["Iku", 62, 0, 0, 0]);
GameData.Parts.Shoes.push("random");
GameData.Parts.Arms = new Array();
GameData.Parts.Arms.push(["Meiling", 1, 0, 0, 0]);
GameData.Parts.Arms.push(["Reimu", 2, 0, 0, 0]);
GameData.Parts.Arms.push(["Marisa", 3, 0, 0, 0]);
GameData.Parts.Arms.push(["Sakuya", 4, 0, 0, 0]);
GameData.Parts.Arms.push(["Yukari", 5, 0, 0, 0]);
GameData.Parts.Arms.push(["Flandre", 6, 0, 0, 0]);
GameData.Parts.Arms.push(["Yuyuko", 7, 0, 0, 0]);
GameData.Parts.Arms.push(["Kaguya", 8, 0, 0, 0]);
GameData.Parts.Arms.push(["Cirno", 9, 0, 0, 0]);
GameData.Parts.Arms.push(["Eirin", 10, 0, 0, 0]);
GameData.Parts.Arms.push(["Youmu", 11, 0, 0, 0]);
GameData.Parts.Arms.push(["Patchouli", 12, 0, 0, 0]);
GameData.Parts.Arms.push(["Alice", 13, 0, 0, 0]);
GameData.Parts.Arms.push(["Reisen", 14, 0, 0, 0]);
GameData.Parts.Arms.push(["Mokou", 15, 0, 0, 0]);
GameData.Parts.Arms.push(["Mystia", 16, 0, 0, 0]);
GameData.Parts.Arms.push(["Tewi", 17, 0, 0, 0]);
GameData.Parts.Arms.push(["Keine", 18, 0, 0, 0]);
GameData.Parts.Arms.push(["Ran", 19, 0, 0, 0]);
GameData.Parts.Arms.push(["Letty", 20, 0, 0, 0]);
GameData.Parts.Arms.push(["Chen", 21, 0, 0, 0]);
GameData.Parts.Arms.push(["Suika", 22, 0, 0, 0]);
GameData.Parts.Arms.push(["Remilia", 23, 0, 0, 0]);
GameData.Parts.Arms.push(["Lily White", 24, 0, 0, 0]);
GameData.Parts.Arms.push(["Lily Black", 25, 0, 0, 0]);
GameData.Parts.Arms.push(["Komachi", 26, 0, 0, 0]);
GameData.Parts.Arms.push(["Nitori", 27, 0, 0, 0]);
GameData.Parts.Arms.push(["Sikieiki", 28, 0, 0, 0]);
GameData.Parts.Arms.push(["Wriggle", 29, 0, 0, 0]);
GameData.Parts.Arms.push(["Rumia", 30, 0, 0, 0]);
GameData.Parts.Arms.push(["Aya", 31, 0, 0, 0]);
GameData.Parts.Arms.push(["Momizi", 32, 0, 0, 0]);
GameData.Parts.Arms.push(["Koakuma", 33, 0, 0, 0]);
GameData.Parts.Arms.push(["Lunasa", 34, 0, 0, 0]);
GameData.Parts.Arms.push(["Merlin", 35, 0, 0, 0]);
GameData.Parts.Arms.push(["Lyrica", 36, 0, 0, 0]);
GameData.Parts.Arms.push(["Daiyousei", 37, 0, 0, 0]);
GameData.Parts.Arms.push(["Medicine", 38, 0, 0, 0]);
GameData.Parts.Arms.push(["EX-Keine", 39, 0, 0, 0]);
GameData.Parts.Arms.push(["Yuka", 40, 0, 0, 0]);
GameData.Parts.Arms.push(["Suwako", 41, 0, 0, 0]);
GameData.Parts.Arms.push(["Hina", 42, 0, 0, 0]);
GameData.Parts.Arms.push(["Sanae", 43, 0, 0, 0]);
GameData.Parts.Arms.push(["Kanako", 44, 0, 0, 0]);
GameData.Parts.Arms.push(["Minoriko", 45, 0, 0, 0]);
GameData.Parts.Arms.push(["Shizuha", 46, 0, 0, 0]);
GameData.Parts.Arms.push(["Shinki", 47, 0, 0, 0]);
GameData.Parts.Arms.push(["Mima", 48, 0, 0, 0]);
GameData.Parts.Arms.push(["Rinnosuke", 49, 0, 0, 0]);
GameData.Parts.Arms.push(["Tokiko", 50, 0, 0, 0]);
GameData.Parts.Arms.push(["Sunny Milk", 51, 0, 0, 0]);
GameData.Parts.Arms.push(["Star Sapphire", 52, 0, 0, 0]);
GameData.Parts.Arms.push(["Luna Child", 53, 0, 0, 0]);
GameData.Parts.Arms.push(["Akyu", 54, 0, 0, 0]);
GameData.Parts.Arms.push(["Renko", 55, 0, 0, 0]);
GameData.Parts.Arms.push(["Maribel", 56, 0, 0, 0]);
GameData.Parts.Arms.push(["Chiyuri", 57, 0, 0, 0]);
GameData.Parts.Arms.push(["Yumemi", 58, 0, 0, 0]);
GameData.Parts.Arms.push(["PC-98 Reimu", 59, 0, 0, 0]);
GameData.Parts.Arms.push(["Yamame", 60, 0, 0, 0]);
GameData.Parts.Arms.push(["Tenshi", 61, 0, 0, 0]);
GameData.Parts.Arms.push(["Iku", 62, 0, 0, 0]);
GameData.Parts.Arms.push("random");
GameData.Parts.Hair = new Array();
GameData.Parts.Hair.push(["Meiling", 1, 0, 0, 0, 2]);
GameData.Parts.Hair.push(["Reimu", 2, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Marisa", 3, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Sakuya", 4, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Yukari", 5, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Flandre", 6, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Yuyuko", 7, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Kaguya", 8, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Cirno", 9, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Eirin", 10, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Youmu", 11, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Patchouli", 12, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Alice", 13, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Reisen", 14, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Mokou", 15, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Mystia", 16, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Tewi", 17, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Keine", 18, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Ran", 19, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Letty", 20, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Chen", 21, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Suika", 22, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Remilia", 23, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Lily White", 24, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Lily Black", 25, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Komachi", 26, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Nitori", 27, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Sikieiki", 28, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Wriggle", 29, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Rumia", 30, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Aya", 31, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Momizi", 32, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Koakuma", 33, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Lunasa", 34, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Merlin", 35, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Lyrica", 36, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Daiyousei", 37, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Medicine", 38, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["EX-Keine", 39, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Yuka", 40, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Suwako", 41, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Hina", 42, 0, 0, 0, 1]);
GameData.Parts.Hair.push(["Sanae", 43, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Kanako", 44, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Minoriko", 45, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Shizuha", 46, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Shinki", 47, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Mima", 48, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Rinnosuke", 49, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Tokiko", 50, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Sunny Milk", 51, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Star Sapphire", 52, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Luna Child", 53, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Akyu", 54, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Renko", 55, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Maribel", 56, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Chiyuri", 57, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Yumemi", 58, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["PC-98 Reimu", 59, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Yamame", 60, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Tenshi", 61, 0, 0, 0, 0]);
GameData.Parts.Hair.push(["Iku", 62, 0, 0, 0, 0]);
GameData.Parts.Hair.push("random");
GameData.Parts.Eyes = new Array();
GameData.Parts.Eyes.push(["Eye 1", 1, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 2", 2, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 3", 3, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 4", 4, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 5", 5, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 6", 6, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 7", 7, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 8", 8, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 9", 9, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 10", 10, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 11", 11, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 12", 12, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 13", 13, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 14", 14, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 15", 15, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 16", 16, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 17", 17, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 18", 18, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 19", 19, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 20", 20, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 21", 21, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 22", 22, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 23", 23, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 24", 24, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 25", 25, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 26", 26, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 27", 27, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 28", 28, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 29", 29, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 30", 30, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 31", 31, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 32", 32, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 33", 33, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 34", 34, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 35", 35, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 36", 36, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 37", 37, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 38", 38, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 39", 39, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 40", 40, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 41", 41, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 42", 42, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 43", 43, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 44", 44, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 45", 45, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 46", 46, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 47", 47, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 48", 48, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 49", 49, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 50", 50, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 51", 51, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 52", 52, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 53", 53, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 54", 54, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 55", 55, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 56", 56, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 57", 57, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 58", 58, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 59", 59, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 60", 60, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 61", 61, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 62", 62, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 63", 63, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 64", 64, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 65", 65, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 66", 66, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 67", 67, 0, 0, 0]);
GameData.Parts.Eyes.push(["Eye 68", 68, 0, 0, 0]);
GameData.Parts.Eyes.push("random");
GameData.Parts.Mouth = new Array();
GameData.Parts.Mouth.push("none");
GameData.Parts.Mouth.push(["Mouth 1", 1, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 2", 2, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 3", 3, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 4", 4, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 5", 5, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 6", 6, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 7", 7, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 8", 8, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 9", 9, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 10", 10, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 11", 11, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 12", 12, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 13", 13, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 14", 14, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 15", 15, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 16", 16, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 17", 17, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 18", 18, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 19", 19, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 20", 20, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 21", 21, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 22", 22, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 23", 23, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 24", 24, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 25", 25, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 26", 26, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 27", 27, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 28", 28, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 29", 29, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 30", 30, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 31", 31, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 32", 32, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 33", 33, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 34", 34, 0, 0, 0]);
GameData.Parts.Mouth.push(["Mouth 35", 35, 0, 0, 0]);
GameData.Parts.Mouth.push("random");
GameData.BGs = new Array();
GameData.BGs.push("none");
GameData.BGs.push(["Scarlet Mansion", 1]);
GameData.BGs.push(["Flandre's Room", 2]);
GameData.BGs.push(["Yukari's Bedroom", 3]);
GameData.BGs.push(["Yukari's House", 4]);
GameData.BGs.push(["Yukari's Yard", 5]);
GameData.BGs.push(["Scarlet Library", 6]);
GameData.BGs.push(["Night Mountain", 7]);
GameData.BGs.push(["Magic Forest", 8]);
GameData.BGs.push(["Marisa's House", 9]);
GameData.BGs.push(["Hakurei Shrine", 10]);
GameData.BGs.push(["Alice's Room", 11]);
GameData.BGs.push(["Alice's House", 12]);
GameData.BGs.push(["Yuyuko's Hallway", 13]);
GameData.BGs.push(["Yuyuko's Kitchen", 14]);
GameData.BGs.push(["Sakura Tree 1", 15]);
GameData.BGs.push(["Sakura Tree 2", 16]);
GameData.BGs.push(["Shrine Day", 25]);
GameData.BGs.push(["Shrine Night", 17]);
GameData.BGs.push(["Bamboo Forest", 18]);
GameData.BGs.push(["K-1 Classroom 1", 19]);
GameData.BGs.push(["K-1 Classroom 2", 20]);
GameData.BGs.push(["K-1 Classroom 3", 21]);
GameData.BGs.push(["K-1 Classroom 4", 22]);
GameData.BGs.push(["Snow Field", 23]);
GameData.BGs.push(["Bar", 24]);
GameData.BGs.push(["Reimu Burger Register", 26]);
GameData.BGs.push(["Reimu Burger Kitchen", 27]);
GameData.BGs.push(["Reimu Burger Diner", 28]);
GameData.BGs.push(["Reimu Burger Dead End", 30]);
GameData.BGs.push(["Reimu Burger Hallway", 31]);
GameData.BGs.push(["Cruise Ship Entrance", 32]);
GameData.BGs.push(["Cruise Ship Room", 33]);
GameData.BGs.push(["Cruise Ship Deck", 34]);
GameData.BGs.push(["The Dock", 35]);
GameData.BGs.push(["More Forest", 36]);
GameData.BGs.push(["Bamboo Forest Zoom!", 37]);
GameData.BGs.push(["Desktop", 38]);
GameData.BGs.push(["Fusion Lab", 40]);
GameData.BGs.push(["Open Field", 41]);
GameData.BGs.push(["Open Field Dusk", 42]);
GameData.BGs.push(["Aya's House", 43]);
GameData.BGs.push(["Random Field", 44]);
GameData.BGs.push(["Scarlet X-Mas Tree", 45]);
GameData.BGs.push(["Reimu's Room", 46]);
GameData.BGs.push(["Reimu Burger X-Mas", 47]);
GameData.BGs.push(["Reimu's X-Mas Room", 48]);
GameData.BGs.push(["Empty Room", 49]);
GameData.BGs.push(["Sketchy Room", 50]);
GameData.BGs.push(["Sketchy Boxing Ring", 51]);
GameData.BGs.push(["Sketchy Field", 52]);
GameData.BGs.push(["Sketchy Snowfield", 53]);
GameData.BGs.push(["Sketchy BG", 54]);
GameData.BGs.push(["Sketchy Reimu's Room", 55]);
GameData.BGs.push(["Moriya Shrine Steps", 56]);
GameData.BGs.push(["Moriya Shrine Room", 57]);
GameData.BGs.push(["Moriya Shrine Yard", 58]);
GameData.BGs.push(["Moriya Shrine Opening", 59]);
GameData.BGs.push(["Moriya Shrine Room", 60]);
GameData.BGs.push(["It's a forest again", 61]);
GameData.BGs.push(["And another forest!", 62]);
GameData.BGs.push(["End of Gensokyo", 63]);
GameData.BGs.push(["Yuka Fight!!", 64]);
GameData.BGs.push(["Reimu's Door", 65]);
GameData.BGs.push(["Reimu's Door Open", 75]);
GameData.BGs.push(["Moriya Shrine Door", 66]);
GameData.BGs.push(["Alice in the Forest", 67]);
GameData.BGs.push(["Boxing Ring", 68]);
GameData.BGs.push(["Island", 69]);
GameData.BGs.push(["Saigyou Ayakashi", 70]);
GameData.BGs.push(["Imageboard", 71]);
GameData.BGs.push(["Yard with Chairs", 72]);
GameData.BGs.push(["Moriya Kotatsu", 73]);
GameData.BGs.push(["Hakurei Shrine Door", 74]);
GameData.BGs.push("random");
GameData.Characters = new Object();
GameData.SpeechBubbles = new Object();
GameData.Presets = new Object();
newPreset("Meiling", 0, 0, 0, 0, 1, 0, 0, 0, 0, 0);
newPreset("Reimu", 1, 0, 11, 1, 2, 1, 1, 1, 0, 0);
newPreset("Marisa", 2, 0, 0, 2, 3, 2, 2, 2, 0, 0);
newPreset("Sakuya", 3, 0, 0, 3, 4, 3, 3, 3, 0, 0);
newPreset("Yukari", 4, 0, 0, 4, 5, 4, 4, 4, 27, 0);
newPreset("Flandre", 5, 0, 1, 5, 6, 5, 5, 5, 1, 0);
newPreset("Yuyuko", 6, 0, 0, 6, 7, 6, 6, 0, 28, 0);
newPreset("Kaguya", 7, 0, 0, 7, 0, 7, 7, 0, 0, 0);
newPreset("Cirno", 8, 0, 1, 8, 9, 8, 8, 0, 2, 0);
newPreset("Eirin", 9, 0, 0, 9, 10, 9, 9, 0, 0, 0);
newPreset("Ran", 18, 0, 0, 18, 19, 18, 18, 0, 9, 0);
newPreset("Chen", 20, 6, 4, 20, 21, 20, 20, 0, 10, 0);
newPreset("Momizi", 31, 0, 0, 31, 32, 31, 31, 55, 16, 37);
newPreset("Youmu", 10, 0, 11, 10, 11, 10, 10, 10, 0, 0);
newPreset("Patchouli", 11, 0, 0, 11, 12, 11, 11, 11, 0, 0);
newPreset("Alice", 12, 0, 0, 12, 13, 12, 12, 26, 0, 0);
newPreset("Reisen", 13, 0, 0, 13, 14, 13, 13, 0, 0, 0);
newPreset("Mokou", 14, 0, 0, 14, 15, 14, 14, 0, 7, 0);
newPreset("Mystia", 15, 0, 0, 15, 16, 15, 15, 0, 4, 0);
newPreset("Tewi", 16, 0, 0, 16, 17, 16, 16, 0, 0, 0);
newPreset("Keine", 17, 0, 0, 17, 18, 17, 17, 0, 0, 0);
newPreset("Letty", 19, 0, 0, 19, 20, 19, 19, 0, 0, 0);
newPreset("Suika", 21, 33, 13, 21, 22, 21, 21, 41, 0, 0);
newPreset("Remilia", 22, 0, 0, 22, 23, 22, 22, 44, 11, 0);
newPreset("Lily White", 23, 0, 0, 23, 24, 23, 23, 0, 12, 0);
newPreset("Lily Black", 24, 0, 0, 24, 25, 24, 24, 0, 12, 0);
newPreset("Komachi", 25, 42, 22, 25, 26, 25, 25, 47, 0, 0);
newPreset("Nitori", 26, 0, 0, 26, 27, 26, 26, 48, 13, 0);
newPreset("Sikieiki", 27, 0, 0, 27, 28, 27, 27, 49, 0, 0);
newPreset("Wriggle", 28, 0, 0, 28, 29, 28, 28, 0, 14, 0);
newPreset("Rumia", 29, 0, 0, 29, 30, 29, 29, 0, 0, 33);
newPreset("Aya", 30, 0, 0, 30, 31, 30, 30, 54, 15, 36);
newPreset("Koakuma", 32, 0, 0, 32, 33, 32, 32, 0, 17, 0);
newPreset("Lunasa", 33, 0, 0, 33, 34, 33, 33, 57, 0, 0);
newPreset("Merlin", 34, 0, 0, 34, 35, 34, 34, 58, 0, 0);
newPreset("Lyrica", 35, 0, 0, 35, 36, 35, 35, 59, 0, 0);
newPreset("Daiyousei", 36, 0, 0, 36, 37, 36, 36, 0, 18, 0);
newPreset("Medicine", 37, 0, 0, 37, 38, 37, 37, 0, 0, 40);
newPreset("EX-Keine", 38, 0, 0, 38, 39, 38, 38, 0, 19, 0);
newPreset("Yuka", 39, 0, 0, 39, 0, 39, 39, 45, 0, 0);
newPreset("Suwako", 40, 0, 0, 40, 41, 40, 40, 0, 0, 0);
newPreset("Hina", 41, 0, 0, 41, 42, 41, 41, 0, 0, 0);
newPreset("Sanae", 42, 0, 0, 42, 43, 42, 42, 0, 0, 0);
newPreset("Kanako", 43, 0, 0, 43, 44, 43, 43, 0, 20, 0);
newPreset("Minoriko", 44, 0, 0, 44, 45, 44, 44, 0, 0, 0);
newPreset("Shizuha", 45, 0, 0, 45, 46, 45, 45, 0, 0, 0);
newPreset("Shinki", 46, 0, 0, 46, 47, 46, 46, 0, 21, 0);
newPreset("Mima", 47, 0, 0, 47, 48, 47, 47, 0, 0, 0);
newPreset("Rinnosuke", 48, 0, 0, 48, 0, 48, 48, 0, 0, 1);
newPreset("Tokiko", 49, 0, 0, 49, 50, 49, 49, 0, 22, 0);
newPreset("Sunny Milk", 50, 0, 0, 50, 51, 50, 50, 0, 23, 0);
newPreset("Star Sapphire", 51, 0, 0, 51, 52, 51, 51, 0, 24, 0);
newPreset("Luna Child", 52, 0, 0, 52, 53, 52, 52, 0, 25, 0);
newPreset("Akyu", 53, 0, 0, 53, 54, 53, 53, 80, 0, 0);
newPreset("Renko", 54, 0, 0, 54, 55, 54, 54, 0, 0, 0);
newPreset("Maribel", 55, 0, 0, 55, 56, 55, 55, 0, 0, 0);
newPreset("Chiyuri", 56, 0, 0, 56, 57, 56, 56, 0, 0, 0);
newPreset("Yumemi", 57, 0, 0, 57, 58, 57, 57, 0, 0, 0);
newPreset("PC-98 Reimu", 58, 0, 0, 58, 59, 58, 58, 0, 0, 0);
newPreset("Tenshi", 60, 0, 0, 60, 61, 60, 60, 0, 0, 0);
newPreset("Iku", 61, 0, 0, 61, 62, 61, 61, 0, 32, 0);
newPreset("Yamame", 59, 0, 0, 59, 60, 59, 59, 0, 30, 0);
GameData.PresetList = new Array();
for (a in GameData.Presets) {
GameData.PresetList.push(a);
}
GameData.PresetList.sort();
GameData.Toys = new Object();
GameData.Toys["Grouchy Reimu"] = new Object();
GameData.Toys["Grouchy Reimu"].frame = 1;
GameData.Toys["Gravity Well"] = new Object();
GameData.Toys["Gravity Well"].frame = 2;
GameData.Toys["Gravity Well"].Power = 5;
GameData.Toys["Gravity Well"].Friction = 1;
GameData.Toys["Mystery Gap"] = new Object();
GameData.Toys["Mystery Gap"].frame = 3;
GameData.Toys["Clone Capsule"] = new Object();
GameData.Toys["Clone Capsule"].frame = 4;
GameData.Toys["Clone Capsule"].Mode = 1;
GameData.Toys["Clone Capsule"].Delay = 0;
GameData.Toys["Clone Capsule"].Char = new Object();
GameData.Toys["Boxing Chen"] = new Object();
GameData.Toys["Boxing Chen"].frame = 5;
GameData.Toys["Boxing Chen"].Range = 120;
_root.attachMovie("Background", "bg", 1);
_root.createEmptyMovieClip("stage", 10);
_root.attachMovie("BGBox", "Dimmer", 99);
SwapColor(Dimmer, "Buttons", 4);
Dimmer._width = Stage.width;
Dimmer._height = Stage.height;
Dimmer._alpha = 0;
_root.createEmptyMovieClip("Interface", 100);
bg.gotoAndStop(1);
bg._visible = false;
MenuMaker = new Array();
MenuMaker.push(["BubbleTargetFrame", "ObjMenuItem"]);
MenuMaker.push(["ToyTargetFrame", "ObjMenuItem"]);
MenuMaker.push(["TargetFrame", "ObjMenuItem"]);
MenuMaker.push(["HatMenu", ""]);
MenuMaker.push(["ItemMenu", ""]);
MenuMaker.push(["AccMenu", ""]);
MenuMaker.push(["BackMenu", ""]);
MenuMaker.push(["ShoesMenu", ""]);
MenuMaker.push(["ArmsMenu", ""]);
MenuMaker.push(["BodyMenu", ""]);
MenuMaker.push(["HairMenu", ""]);
MenuMaker.push(["EyesMenu", ""]);
MenuMaker.push(["MouthMenu", ""]);
MenuMaker.push(["PresetMenu", ""]);
MenuMaker.push(["RenameMenu", "RenameMenu"]);
MenuMaker.push(["BGMenu", "BGMenu"]);
MenuMaker.push(["COMenu", "CharOptionsMenu"]);
MenuMaker.push(["OpsMenu", "OptionsMenu"]);
MenuMaker.push(["DNAMenu", "DNAMenu"]);
MenuMaker.push(["HelpWindow", ""]);
i = 0;
while (i < MenuMaker.length) {
if (MenuMaker[i][1]) {
Interface.attachMovie(MenuMaker[i][1], MenuMaker[i][0], GameData.Menus.DMax++);
} else {
Interface.createEmptyMovieClip(MenuMaker[i][0], GameData.Menus.DMax++);
}
ScaleMenu(Interface[MenuMaker[i][0]]);
Interface[MenuMaker[i][0]]._visible = false;
i++;
}
Interface.attachMovie("BGBox", "ClickBlocker", 9000);
Interface.ClickBlocker._width = Stage.width;
Interface.ClickBlocker._height = Stage.height;
Interface.ClickBlocker._alpha = 70;
SwapColor(Interface.ClickBlocker, "Buttons", 3);
Interface.ClickBlocker.onPress = function () {
};
Interface.ClickBlocker._visible = false;
for (t in GameData.Toys) {
stage.attachMovie("Toys", t, GameData.DMax++);
stage[t].gotoAndStop(GameData.Toys[t].frame);
stage[t]._x = 200;
stage[t]._y = 200;
stage[t]._visible = false;
}
stage["Grouchy Reimu"].onPress = function () {
this.startDrag();
clickCheck(this, "");
};
stage["Grouchy Reimu"].onRelease = function () {
this.stopDrag();
};
stage["Grouchy Reimu"].onReleaseOutside = function () {
this.stopDrag();
};
stage["Gravity Well"].swapDepths(-10000);
stage["Gravity Well"].onPress = function () {
clickCheck(this, "drag");
};
setActionRelease(stage["Gravity Well"]);
stage["Clone Capsule"].char._visible = false;
stage["Clone Capsule"].lights.gotoAndStop(1);
stage["Clone Capsule"].onPress = function () {
clickCheck(this, "drag");
};
setActionRelease(stage["Clone Capsule"]);
stage["Boxing Chen"].onPress = function () {
resetBoxingChen();
clickCheck(this, "drag");
};
setActionRelease(stage["Boxing Chen"]);
var myListener = new Object();
myListener.onResize = function () {
fixScales();
};
Stage.addListener(myListener);
Interface.onEnterFrame = function () {
if (!GameData.KeyLock) {
if (Key.isDown(32)) {
if (!GameData.Keys.Space) {
if (Interface._visible) {
Interface._visible = false;
} else {
Interface._visible = true;
}
GameData.Keys.Space = true;
}
} else {
GameData.Keys.Space = false;
}
if (Key.isDown(71)) {
if (!GameData.Keys.G) {
if (stage["Gravity Well"]._visible) {
stage["Gravity Well"]._x = _root._xmouse;
stage["Gravity Well"]._y = _root._ymouse;
clickCheck(stage["Gravity Well"], "drag");
GameData.DoubleClick = 0;
}
GameData.Keys.G = true;
}
} else {
GameData.Keys.G = false;
}
}
if (GameData.DoubleClick > 0) {
GameData.DoubleClick--;
}
if (GameData.Toys["Clone Capsule"].Delay > 0) {
GameData.Toys["Clone Capsule"].Delay--;
} else if (((GameData.Toys["Clone Capsule"].Mode == 4) && (stage["Clone Capsule"]._visible)) && (stage["Clone Capsule"].char._visible)) {
activateCloneCapsule();
GameData.Toys["Clone Capsule"].Delay = 30;
}
if (stage["Boxing Chen"].AttackRoll > 0) {
stage["Boxing Chen"].AttackRoll--;
if (stage["Boxing Chen"].AttackRoll == 55) {
_root.attachMovie("KO", "KO", 6000);
KO._xscale = GameData.Menus.Size * 0.9;
KO._yscale = GameData.Menus.Size * 0.9;
} else if (stage["Boxing Chen"].AttackRoll == 0) {
KO.removeMovieClip();
}
}
if (bg.chatW._visible && (GameData.Chat.Active)) {
if (GameData.Chat.D > 0) {
GameData.Chat.D--;
} else {
if (GameData.Chat.L < 5) {
var _local5 = "LOLSpark";
GameData.Chat.L++;
} else {
var _local5 = GameData.Chat.UserList[random(GameData.Chat.UserList.length)];
GameData.Chat.L = 0;
}
playSound("ChatBeep");
bg.chatW.chat.text = bg.chatW.chat.text + (((_local5 + ": ") + GameData.Chat.Users[_local5][random(GameData.Chat.Users[_local5].length)]) + newline);
bg.chatW.chat.scroll = bg.chatW.chat.maxscroll;
GameData.Chat.D = random(GameData.Chat.Delay) + 3;
}
if (GameData.Chat.Doom > 0) {
GameData.Chat.Doom--;
if (GameData.Chat.Doom == 0) {
u = 0;
while (u < GameData.Chat.UserList.length) {
var _local2 = GameData.Chat.UserList[u];
if (_local2 != "WakiMiko") {
bg.chatW.chat.text = bg.chatW.chat.text + (_local2 + " has disconnected.\n");
bg.chatW.chat.scroll = bg.chatW.chat.maxscroll;
}
u++;
}
GameData.Chat.Active = false;
}
}
}
if (GameData.Action == "rotate") {
if (GameData.TargetType == "Character") {
GameData.Target.OldR = GameData.Target._rotation;
if (GameData.Target._yscale < 0) {
GameData.Target._rotation = getMouseAngle(GameData.Target._x, GameData.Target._y) + 180;
} else {
GameData.Target._rotation = getMouseAngle(GameData.Target._x, GameData.Target._y);
}
GameData.Target.Spin = Math.floor(GameData.Target._rotation - GameData.Target.OldR);
} else if (GameData.TargetType == "SpeechBubble") {
if (GameData.Target._yscale < 0) {
GameData.Target.Bubble._rotation = getMouseAngle(GameData.Target._x, GameData.Target._y);
} else {
GameData.Target.Bubble._rotation = getMouseAngle(GameData.Target._x, GameData.Target._y) + 180;
}
}
} else if (GameData.Action == "drag") {
GameData.Target.OldX = GameData.Target._x;
GameData.Target.OldY = GameData.Target._y;
GameData.Target._x = _root._xmouse - GameData.Xmod;
GameData.Target._y = _root._ymouse - GameData.Ymod;
GameData.Target.XMov = Math.floor(GameData.Target._x - GameData.Target.OldX);
GameData.Target.YMov = Math.floor(GameData.Target._y - GameData.Target.OldY);
} else if (GameData.Action == "scale") {
if (GameData.TargetType == "Character") {
var _local6 = (_root._xmouse - GameData.Xmod) + (_root._ymouse - GameData.Ymod);
if ((GameData.Target.OldScale + _local6) < GameData.ScaleLimit) {
GameData.Characters[GameData.Target._name].Scale = GameData.ScaleLimit;
} else {
GameData.Characters[GameData.Target._name].Scale = GameData.Target.OldScale + _local6;
}
GameData.Target._xscale = GameData.Characters[GameData.Target._name].Scale * GameData.Target.XFace;
GameData.Target._yscale = GameData.Characters[GameData.Target._name].Scale * GameData.Target.YFace;
} else if (GameData.TargetType == "SpeechBubble") {
if (Key.isDown(17)) {
var _local8 = _root._xmouse - GameData.Xmod;
var _local7 = _root._ymouse - GameData.Ymod;
if ((GameData.Target.OldXScale + _local8) < GameData.ScaleLimit) {
GameData.SpeechBubbles[GameData.Target._name].XScale = GameData.ScaleLimit;
} else {
GameData.SpeechBubbles[GameData.Target._name].XScale = GameData.Target.OldXScale + _local8;
}
if ((GameData.Target.OldYScale + _local7) < GameData.ScaleLimit) {
GameData.SpeechBubbles[GameData.Target._name].YScale = GameData.ScaleLimit;
} else {
GameData.SpeechBubbles[GameData.Target._name].YScale = GameData.Target.OldYScale + _local7;
}
GameData.Target.Bubble._xscale = GameData.SpeechBubbles[GameData.Target._name].XScale * GameData.Target.XFace;
GameData.Target.Bubble._yscale = GameData.SpeechBubbles[GameData.Target._name].YScale * GameData.Target.YFace;
} else {
var _local6 = (_root._xmouse - GameData.Xmod) + (_root._ymouse - GameData.Ymod);
if ((GameData.Target.OldScale + _local6) < GameData.ScaleLimit) {
GameData.SpeechBubbles[GameData.Target._name].Scale = GameData.ScaleLimit;
} else {
GameData.SpeechBubbles[GameData.Target._name].Scale = GameData.Target.OldScale + _local6;
}
GameData.Target._xscale = GameData.SpeechBubbles[GameData.Target._name].Scale * GameData.Target.XFace;
GameData.Target._yscale = GameData.SpeechBubbles[GameData.Target._name].Scale * GameData.Target.YFace;
}
}
}
for (c in stage) {
if ((stage["Gravity Well"]._visible && (stage[c]._visible)) && (GameData.Characters[stage[c]._name])) {
if (stage[c]._x < stage["Gravity Well"]._x) {
stage[c].XMov = stage[c].XMov + GameData.Toys["Gravity Well"].Power;
} else {
stage[c].XMov = stage[c].XMov - GameData.Toys["Gravity Well"].Power;
}
if (stage[c]._y < stage["Gravity Well"]._y) {
stage[c].YMov = stage[c].YMov + GameData.Toys["Gravity Well"].Power;
} else {
stage[c].YMov = stage[c].YMov - GameData.Toys["Gravity Well"].Power;
}
var _local3 = getDist(stage["Gravity Well"], stage[c]._x, stage[c]._y);
if (_local3 < 90) {
var _local4 = 90 - _local3;
if (stage[c].Spin < _local4) {
stage[c].Spin = stage[c].Spin + GameData.Toys["Gravity Well"].Power;
}
}
}
if (stage[c].Doom > 0) {
if (stage[c].Doom > 30) {
if (stage[c].eyes._currentframe != 30) {
stage[c].eyes.gotoAndStop(31);
}
if (stage[c].mouth._currentframe != 14) {
stage[c].mouth.gotoAndStop(14);
}
} else if ((!stage[c].accessory._visible) || (stage[c].accessory._currentframe != 21)) {
playSound("Boom");
stage[c].accessory._visible = true;
stage[c].accessory.gotoAndStop(21);
}
stage[c].Doom--;
if (stage[c].Doom == 0) {
Delete(stage[c]);
}
}
if (((stage[c].Spin != 0) && (GameData.Target != stage[c])) || ((stage[c].Spin != 0) && (GameData.Action != "rotate"))) {
if (stage[c].Spin) {
stage[c]._rotation = stage[c]._rotation + stage[c].Spin;
}
if (stage[c].Spin > 0) {
stage[c].Spin = Math.floor(stage[c].Spin * GameData.Friction);
} else {
stage[c].Spin = Math.ceil(stage[c].Spin * GameData.Friction);
}
}
if (((stage[c].XMov != 0) && (GameData.Target != stage[c])) || ((stage[c].XMov != 0) && (GameData.Action != "drag"))) {
if (stage[c].XMov) {
if ((stage[c]._x + stage[c].XMov) < 0) {
stage[c]._x = 0;
stage[c].XMov = stage[c].XMov * -1;
} else if ((stage[c]._x + stage[c].XMov) > Stage.width) {
stage[c]._x = Stage.width;
stage[c].XMov = stage[c].XMov * -1;
} else {
stage[c]._x = stage[c]._x + stage[c].XMov;
}
}
if (stage[c]._name == "Gravity Well") {
if (stage[c].XMov > 0) {
stage[c].XMov = Math.floor(stage[c].XMov * GameData.Toys["Gravity Well"].Friction);
} else {
stage[c].XMov = Math.ceil(stage[c].XMov * GameData.Toys["Gravity Well"].Friction);
}
} else if (stage[c].XMov > 0) {
stage[c].XMov = Math.floor(stage[c].XMov * GameData.Friction);
} else {
stage[c].XMov = Math.ceil(stage[c].XMov * GameData.Friction);
}
}
if (((stage[c].YMov != 0) && (GameData.Target != stage[c])) || ((stage[c].YMov != 0) && (GameData.Action != "drag"))) {
if (stage[c].YMov) {
if ((stage[c]._y + stage[c].YMov) < 0) {
stage[c]._y = 0;
stage[c].YMov = stage[c].YMov * -1;
} else if ((stage[c]._y + stage[c].YMov) > Stage.height) {
stage[c]._y = Stage.height;
stage[c].YMov = stage[c].YMov * -1;
} else {
stage[c]._y = stage[c]._y + stage[c].YMov;
}
}
if (stage[c]._name == "Gravity Well") {
if (stage[c].YMov > 0) {
stage[c].YMov = Math.floor(stage[c].YMov * GameData.Toys["Gravity Well"].Friction);
} else {
stage[c].YMov = Math.ceil(stage[c].YMov * GameData.Toys["Gravity Well"].Friction);
}
} else if (stage[c].YMov > 0) {
stage[c].YMov = Math.floor(stage[c].YMov * GameData.Friction);
} else {
stage[c].YMov = Math.ceil(stage[c].YMov * GameData.Friction);
}
}
}
};
makeChar("Reimu");
Interface.HelpWindow.attachMovie("SpeechBubble", "EirinTalk", 1);
makePresetChar(Interface.HelpWindow, "Eirin", "Eirin", 2);
Interface.HelpWindow.Eirin.mouth._visible = true;
Interface.HelpWindow.Eirin.mouth.gotoAndStop(1);
makeMenu(Interface.HelpWindow, "BasicHelpMenu", 3, ["Nevermind", "The Basics", "Keyboard Shortcuts", "Stage Options", "Got Any Rumors?", "About This Program"], 0, 0);
Interface.HelpWindow.Eirin._xscale = -50;
Interface.HelpWindow.Eirin._yscale = 50;
Interface.HelpWindow.Eirin._x = 320;
Interface.HelpWindow.Eirin._y = 200;
Interface.HelpWindow.Eirin.onPress = function () {
this._parent.startDrag();
};
Interface.HelpWindow.Eirin.onRelease = function () {
this._parent.stopDrag();
};
Interface.HelpWindow.Eirin.onReleaseOutside = function () {
this._parent.stopDrag();
};
Interface.HelpWindow.EirinTalk.D.text = GameData.Help.Intro;
Interface.HelpWindow.EirinTalk.D._y = -25;
Interface.HelpWindow.EirinTalk.D._x = -225;
Interface.HelpWindow.EirinTalk.D._height = 300;
Interface.HelpWindow.EirinTalk.Bubble._rotation = 270;
Interface.HelpWindow.EirinTalk.Bubble._xscale = 120;
Interface.HelpWindow.EirinTalk.Bubble._yscale = 130;
Interface.HelpWindow.EirinTalk.Bubble._x = -110;
Interface.HelpWindow.EirinTalk.Bubble._y = 80;
Interface.HelpWindow.EirinTalk._x = 170;
PositionMenu(Interface.HelpWindow, "L", "T", 130, 100, null, null);
Interface.HelpWindow.attachMovie("Arrow", "Next", 4);
Interface.HelpWindow.Next._xscale = -50;
Interface.HelpWindow.Next._yscale = 50;
Interface.HelpWindow.Next._x = 75;
Interface.HelpWindow.Next._y = 190;
Interface.HelpWindow.Next._visible = false;
Interface.HelpWindow.attachMovie("WalfasLink", "WalfasLink", 5);
Interface.HelpWindow.WalfasLink._x = GameData.Help.WalfasLinkX;
Interface.HelpWindow.WalfasLink._y = GameData.Help.WalfasLinkY;
Interface.HelpWindow.WalfasLink._visible = false;
Interface.HelpWindow.attachMovie("MenuItem", "TellMore", 6);
Interface.HelpWindow.TellMore.bName.text = "Tell me more";
Interface.HelpWindow.TellMore.BG._width = 112;
Interface.HelpWindow.TellMore.bName._width = 112;
Interface.HelpWindow.TellMore._x = 0;
Interface.HelpWindow.TellMore._y = 160;
Interface.HelpWindow.TellMore._visible = false;
setButtonStyle(Interface.HelpWindow.TellMore);
Interface.HelpWindow.TellMore.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
Interface.HelpWindow.EirinTalk.D.text = GameData.Help.Rumors[random(GameData.Help.Rumors.length)];
};
Interface.HelpWindow.BasicHelpMenu._y = 160;
Interface.HelpWindow.BasicHelpMenu._x = -28;
Interface.HelpWindow.BasicHelpMenu._visible = true;
for (b in Interface.HelpWindow.BasicHelpMenu) {
Interface.HelpWindow.BasicHelpMenu[b].BG._width = 200;
Interface.HelpWindow.BasicHelpMenu[b].bName._width = 200;
}
Interface.HelpWindow.BasicHelpMenu.ID0.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
CloseMenus(2);
};
Interface.HelpWindow.BasicHelpMenu.ID1.onRelease = function () {
this._parent._visible = false;
Interface.HelpWindow.Next._visible = true;
SwapColor(this.BG, "Buttons", 1);
Interface.HelpWindow.EirinTalk.D.text = GameData.Help.Basics;
Interface.HelpWindow.Next.onRelease = function () {
resetHelp();
};
};
Interface.HelpWindow.BasicHelpMenu.ID2.onRelease = function () {
this._parent._visible = false;
Interface.HelpWindow.Next._visible = true;
SwapColor(this.BG, "Buttons", 1);
Interface.HelpWindow.EirinTalk.D.text = GameData.Help.Keyboard;
Interface.HelpWindow.Next.onRelease = function () {
resetHelp();
};
};
Interface.HelpWindow.BasicHelpMenu.ID3.onRelease = function () {
this._parent._visible = false;
Interface.HelpWindow.Next._visible = true;
SwapColor(this.BG, "Buttons", 1);
Interface.HelpWindow.EirinTalk.D.text = GameData.Help.StageOps;
Interface.HelpWindow.Next.onRelease = function () {
resetHelp();
};
};
Interface.HelpWindow.BasicHelpMenu.ID4.onRelease = function () {
this._parent._visible = false;
Interface.HelpWindow.Next._visible = true;
Interface.HelpWindow.TellMore._visible = true;
SwapColor(this.BG, "Buttons", 1);
Interface.HelpWindow.EirinTalk.D.text = GameData.Help.Rumors[random(GameData.Help.Rumors.length)];
Interface.HelpWindow.Next.onRelease = function () {
resetHelp();
};
};
Interface.HelpWindow.BasicHelpMenu.ID5.onRelease = function () {
this._parent._visible = false;
Interface.HelpWindow.Next._visible = true;
Interface.HelpWindow.WalfasLink._visible = true;
SwapColor(this.BG, "Buttons", 1);
Interface.HelpWindow.EirinTalk.D.text = GameData.Help.About;
Interface.HelpWindow.Next.onRelease = function () {
resetHelp();
};
};
makeButton(Interface, "MainMenu", "Menu", GameData.Menus.DMax++);
ScaleMenu(Interface.MainMenu);
makeMenu(Interface, "MainMenuItems", GameData.Menus.DMax++, ["Help Me Eirin!", "New Character", "Load Preset", "Toys", "Backgrounds", "Stage", "Global Locks", "Insert", "Options"], 0, Interface.MainMenu._y + 210);
makeMenu(Interface, "ToyMenu", GameData.Menus.DMax++, ["Grouchy Reimu", "Gravity Well", "Clone Capsule", "Boxing Chen"], 0, 0);
makeMenu(Interface, "StageMenu", GameData.Menus.DMax++, ["Shrink All", "Scramble!", "Randomize All"], 0, 0);
makeMenu(Interface, "GlobalLockMenu", GameData.Menus.DMax++, ["Unlock All", "Lock All", "Hats", "Items", "Accessory", "Back", "Shoes", "Arms", "Body", "Hair", "Eyes", "Mouth"], 0, 0);
makeMenu(Interface, "InsertMenu", GameData.Menus.DMax++, ["Speech Bubble"], 0, 0);
PositionMenu(Interface.MainMenu, "L", "B", 0, 3, null, null);
makeThumbMenu(Interface.PresetMenu, "PresetList", "HeadPreview", 20, 15, 20, 100, 100, "char");
PositionMenu(Interface.PresetMenu, "C", "C", 117, -238, Interface.MainMenu, Interface.MainMenu);
PositionMenu(Interface.StageMenu, "C", "C", 147, -80, Interface.MainMenu, Interface.MainMenu);
Interface.StageMenu.ID0.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
for (c in GameData.Characters) {
GameData.Characters[c].Scale = 40;
stage[c]._xscale = 40 * stage[c].XFace;
stage[c]._yscale = 40 * stage[c].YFace;
}
};
Interface.StageMenu.ID1.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
for (c in GameData.Characters) {
Scramble(stage[c]);
}
};
Interface.StageMenu.ID2.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
for (c in GameData.Characters) {
RandomizeAll(stage[c]);
}
};
PositionMenu(Interface.InsertMenu, "C", "C", 147, -160, Interface.MainMenu, Interface.MainMenu);
Interface.InsertMenu.ID0.onRelease = function () {
makeSpeechBubble();
SwapColor(this.BG, "Buttons", 1);
};
PositionMenu(Interface.GlobalLockMenu, "C", "C", 147, -20, Interface.MainMenu, Interface.MainMenu);
b = 0;
while (b < 12) {
Interface.GlobalLockMenu["ID" + b].BG._width = 120;
Interface.GlobalLockMenu["ID" + b].bName._width = 120;
if (b > 1) {
Interface.GlobalLockMenu["ID" + b].attachMovie("checkbox", "checkbox", 10);
Interface.GlobalLockMenu["ID" + b].checkbox.gotoAndStop(1);
Interface.GlobalLockMenu["ID" + b].checkbox._xscale = 75;
Interface.GlobalLockMenu["ID" + b].checkbox._yscale = 75;
Interface.GlobalLockMenu["ID" + b].checkbox._y = 10;
Interface.GlobalLockMenu["ID" + b].checkbox._x = 110;
Interface.GlobalLockMenu["ID" + b].onRelease = function () {
if (GameData.Locks[this.bName.text]) {
GameData.Locks[this.bName.text] = false;
this.checkbox.gotoAndStop(1);
} else {
GameData.Locks[this.bName.text] = true;
this.checkbox.gotoAndStop(2);
}
};
}
b++;
}
Interface.GlobalLockMenu.ID0.onRelease = function () {
l = 2;
while (l < 12) {
Interface.GlobalLockMenu["ID" + l].checkbox.gotoAndStop(1);
GameData.Locks[Interface.GlobalLockMenu["ID" + l].bName.text] = false;
if (GameData.MassLocking) {
for (i in GameData.Characters) {
GameData.Characters[i].Locks[Interface.GlobalLockMenu["ID" + l].bName.text] = false;
}
}
l++;
}
SwapColor(this.BG, "Buttons", 1);
};
Interface.GlobalLockMenu.ID1.onRelease = function () {
l = 2;
while (l < 12) {
Interface.GlobalLockMenu["ID" + l].checkbox.gotoAndStop(2);
GameData.Locks[Interface.GlobalLockMenu["ID" + l].bName.text] = true;
if (GameData.MassLocking) {
for (i in GameData.Characters) {
GameData.Characters[i].Locks[Interface.GlobalLockMenu["ID" + l].bName.text] = true;
}
}
l++;
}
SwapColor(this.BG, "Buttons", 1);
};
PositionMenu(Interface.ToyMenu, "C", "C", 147, -40, Interface.MainMenu, Interface.MainMenu);
Interface.ToyMenu.ID0.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
if (stage["Grouchy Reimu"]._visible) {
stage["Grouchy Reimu"]._visible = false;
if (GameData.Target == stage["Grouchy Reimu"]) {
Target();
}
} else {
stage["Grouchy Reimu"]._visible = true;
stage["Grouchy Reimu"].swapDepths(GameData.DMax - 1);
}
};
Interface.ToyMenu.ID1.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
if (stage["Gravity Well"]._visible) {
stage["Gravity Well"]._visible = false;
if (GameData.Target == stage["Gravity Well"]) {
Target();
}
} else {
Center(stage["Gravity Well"]);
stage["Gravity Well"]._visible = true;
stage["Gravity Well"]._x = random(300) + 100;
stage["Gravity Well"]._y = random(200) + 100;
stage["Gravity Well"].XMov = 0;
stage["Gravity Well"].YMov = 0;
}
};
Interface.ToyMenu.ID2.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
if (stage["Clone Capsule"]._visible) {
stage["Clone Capsule"]._visible = false;
if (GameData.Target == stage["Clone Capsule"]) {
Target();
}
} else {
GameData.Toys["Clone Capsule"].Mode = 1;
stage["Clone Capsule"].lights.gotoAndStop(1);
stage["Clone Capsule"]._visible = true;
stage["Clone Capsule"].swapDepths(GameData.DMax - 1);
}
};
Interface.ToyMenu.ID3.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
if (stage["Boxing Chen"]._visible) {
stage["Boxing Chen"]._visible = false;
resetBoxingChen();
if (GameData.Target == stage["Boxing Chen"]) {
Target();
}
} else {
playSound("Meow");
stage["Boxing Chen"]._visible = true;
stage["Boxing Chen"].swapDepths(GameData.DMax - 1);
}
};
PositionMenu(Interface.MainMenuItems, "C", "C", 0, -20, Interface.MainMenu, Interface.MainMenu);
setMenuListener(Interface.MainMenuItems.ID0, Interface.HelpWindow, 2);
Interface.MainMenuItems.ID0.onRelease = function () {
if (Interface.HelpWindow._visible) {
CloseMenus(2);
SwapColor(this.BG, "Buttons", 1);
} else {
resetHelp();
OpenMenu(2, Interface.HelpWindow, this.BG);
SwapColor(this.BG, "Buttons", 2);
}
};
Interface.MainMenuItems.ID1.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
makeChar();
};
setMenuListener(Interface.MainMenuItems.ID2, Interface.PresetMenu, 2);
setMenuListener(Interface.MainMenuItems.ID3, Interface.ToyMenu, 2);
setMenuListener(Interface.MainMenuItems.ID4, Interface.BGMenu, 2);
setMenuListener(Interface.MainMenuItems.ID5, Interface.StageMenu, 2);
setMenuListener(Interface.MainMenuItems.ID6, Interface.GlobalLockMenu, 2);
setMenuListener(Interface.MainMenuItems.ID7, Interface.InsertMenu, 2);
Interface.MainMenuItems.ID8.onRelease = function () {
OpenMenu(1, Interface.OpsMenu, this.BG);
fixOpsMenu();
SwapColor(this.BG, "Buttons", 1);
};
makeMenu(Interface, "Grouchy ReimuMenu", GameData.Menus.DMax++, ["Pay Money", "Hey Reimu!"], 0, Stage.height - 20);
makeMenu(Interface, "Gravity WellMenu", GameData.Menus.DMax++, ["Dismiss"], 0, Stage.height - 20);
makeMenu(Interface, "Clone CapsuleMenu", GameData.Menus.DMax++, ["Disassemble", "Activate!", "Eject", "Tinker", "DNA Data"], 0, Stage.height - 20);
makeMenu(Interface, "Clone CapsuleEmptyMenu", GameData.Menus.DMax++, ["Disassemble", "Input DNA", "Tinker"], 0, Stage.height - 20);
makeMenu(Interface, "Boxing ChenMenu", GameData.Menus.DMax++, ["Send Home"], 0, Stage.height - 20);
makeMenu(Interface, "BubbleMenu", GameData.Menus.DMax++, ["Delete", "Edit Text", "Bring Forward", "Send Backwards"], 0, Stage.height - 20);
PositionMenu(Interface.BubbleTargetFrame, "C", "C", 200, -5, Interface.MainMenu, Interface.MainMenu);
Interface.BubbleTargetFrame.BG._width = 180;
Interface.BubbleTargetFrame.bName._width = 180;
Interface.BubbleTargetFrame.attachMovie("SpeechBubble", "preview", 10);
Interface.BubbleTargetFrame.preview._x = 10;
Interface.BubbleTargetFrame.preview._y = 10;
Interface.BubbleTargetFrame.preview._xscale = 10;
Interface.BubbleTargetFrame.preview._yscale = 10;
Interface.BubbleTargetFrame._visible = false;
setButtonStyle(Interface.BubbleTargetFrame);
setMenuListener(Interface.BubbleTargetFrame, Interface.BubbleMenu, 1);
PositionMenu(Interface.BubbleMenu, "C", "C", 30, -20, Interface.BubbleTargetFrame, Interface.BubbleTargetFrame);
Interface.BubbleMenu.ID0.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
CloseMenus(1);
GameData.SpeechBubbles[GameData.Target] = undefined;
GameData.Target.removeMovieClip();
Target();
};
Interface.BubbleMenu.ID1.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
CloseMenus(1);
editBubble(GameData.Target);
};
Interface.BubbleMenu.ID2.onRelease = function () {
if (GameData.Target.getDepth() < (GameData.DMax - 1)) {
GameData.Target.swapDepths(GameData.Target.getDepth() + 1);
}
SwapColor(this.BG, "Buttons", 1);
};
Interface.BubbleMenu.ID3.onRelease = function () {
if (GameData.Target.getDepth() > 0) {
GameData.Target.swapDepths(GameData.Target.getDepth() - 1);
}
SwapColor(this.BG, "Buttons", 1);
};
PositionMenu(Interface.ToyTargetFrame, "C", "C", 200, -5, Interface.MainMenu, Interface.MainMenu);
Interface.ToyTargetFrame.BG._width = 180;
Interface.ToyTargetFrame.bName._width = 180;
Interface.ToyTargetFrame.attachMovie("Toys", "preview", 10);
Interface.ToyTargetFrame.preview._x = 10;
Interface.ToyTargetFrame.preview._y = 10;
Interface.ToyTargetFrame.preview._xscale = 20;
Interface.ToyTargetFrame.preview._yscale = 20;
Interface.ToyTargetFrame._visible = false;
setButtonStyle(Interface.ToyTargetFrame);
setMenuListener(Interface.ToyTargetFrame, Interface, 1);
Interface.ToyTargetFrame.onRelease = function () {
if (Interface[GameData.Target._name + "Menu"]._visible) {
CloseMenus(1);
SwapColor(this.BG, "Buttons", 1);
} else if (Interface[GameData.Target._name + "EmptyMenu"]._visible) {
CloseMenus(1);
SwapColor(this.BG, "Buttons", 1);
} else {
if ((GameData.Target._name == "Clone Capsule") && (!stage["Clone Capsule"].char._visible)) {
OpenMenu(1, Interface[GameData.Target._name + "EmptyMenu"], this.BG);
} else {
OpenMenu(1, Interface[GameData.Target._name + "Menu"], this.BG);
}
SwapColor(this.BG, "Buttons", 2);
}
};
Interface.ToyTargetFrame.onRollOut = function () {
if (Interface[GameData.Target._name + "Menu"]._visible) {
SwapColor(this.BG, "Buttons", 2);
} else {
SwapColor(this.BG, "Buttons", 0);
}
};
PositionMenu(Interface["Grouchy ReimuMenu"], "C", "C", 30, -20, Interface.ToyTargetFrame, Interface.ToyTargetFrame);
Interface["Grouchy ReimuMenu"].ID0.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
playSound("Cash");
stage["Grouchy Reimu"]._visible = false;
CloseMenus(1);
Target();
};
Interface["Grouchy ReimuMenu"].ID1.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
HaxSignBE();
CloseMenus(1);
};
PositionMenu(Interface["Gravity WellMenu"], "C", "C", 30, -20, Interface.ToyTargetFrame, Interface.ToyTargetFrame);
Interface["Gravity WellMenu"].ID0.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
stage["Gravity Well"]._visible = false;
CloseMenus(1);
Target();
};
PositionMenu(Interface["Boxing ChenMenu"], "C", "C", 30, -20, Interface.ToyTargetFrame, Interface.ToyTargetFrame);
Interface["Boxing ChenMenu"].ID0.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
stage["Boxing Chen"]._visible = false;
resetBoxingChen();
CloseMenus(1);
Target();
};
PositionMenu(Interface["Clone CapsuleMenu"], "C", "C", 30, -20, Interface.ToyTargetFrame, Interface.ToyTargetFrame);
PositionMenu(Interface["Clone CapsuleEmptyMenu"], "C", "C", 30, -20, Interface.ToyTargetFrame, Interface.ToyTargetFrame);
Interface["Clone CapsuleMenu"].ID0.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
stage["Clone Capsule"]._visible = false;
CloseMenus(1);
Target();
};
Interface["Clone CapsuleEmptyMenu"].ID0.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
stage["Clone Capsule"]._visible = false;
CloseMenus(1);
Target();
};
Interface["Clone CapsuleMenu"].ID1.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
activateCloneCapsule();
};
Interface["Clone CapsuleMenu"].ID2.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
ejectCloneCapsule();
CloseMenus(1);
};
Interface["Clone CapsuleMenu"].ID3.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
tinkerCloneCapsule();
};
Interface["Clone CapsuleMenu"].ID4.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
showDNAstrand();
};
Interface["Clone CapsuleEmptyMenu"].ID1.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
openDNAInput();
};
Interface["Clone CapsuleEmptyMenu"].ID2.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
tinkerCloneCapsule();
};
makeMenu(Interface, "TargetMenu", GameData.Menus.DMax++, ["Delete", "Randomize", "Edit", "Change Parts", "Lock Parts"], 0, Stage.height - 20);
makeMenu(Interface, "PartsMenu", GameData.Menus.DMax++, ["Hats", "Items", "Accessory", "Back", "Shoes", "Arms", "Body", "Hair", "Eyes", "Mouth"], 85, Stage.height - 60);
makeMenu(Interface, "LockMenu", GameData.Menus.DMax++, ["Hats", "Items", "Accessory", "Back", "Shoes", "Arms", "Body", "Hair", "Eyes", "Mouth"], 85, Stage.height - 60);
makeMenu(Interface, "EditMenu", GameData.Menus.DMax++, ["Options", "Bring Forward", "Send Backwards", "Vertical Flip", "Horizontal Flip", "Rename"], 0, Stage.height);
PositionMenu(Interface.TargetFrame, "C", "C", 200, -5, Interface.MainMenu, Interface.MainMenu);
Interface.TargetFrame._visible = false;
setButtonStyle(Interface.TargetFrame);
PositionMenu(Interface.TargetMenu, "C", "C", 30, -20, Interface.TargetFrame, Interface.TargetFrame);
Interface.TargetMenu.ID0.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
Delete(GameData.Target);
CloseMenus(1);
};
Interface.TargetMenu.ID1.onRelease = function () {
RandomizeAll(GameData.Target);
SwapColor(Interface.TargetFrame.BG, "Buttons", 1);
};
setMenuListener(Interface.TargetMenu.ID2, Interface.EditMenu, 2);
setMenuListener(Interface.TargetMenu.ID3, Interface.PartsMenu, 2);
setMenuListener(Interface.TargetMenu.ID4, Interface.LockMenu, 2);
Interface.TargetMenu.ID4.onRelease = function () {
if (Interface.LockMenu._visible) {
CloseMenus(2);
SwapColor(this.BG, "Buttons", 1);
} else {
checkLocks(GameData.Characters[GameData.Target._name], Interface.LockMenu);
OpenMenu(2, Interface.LockMenu, this.BG);
SwapColor(this.BG, "Buttons", 2);
}
};
PositionMenu(Interface.LockMenu, "C", "C", 90, -20, Interface.TargetFrame, Interface.TargetFrame);
b = 0;
while (b < 10) {
Interface.LockMenu["ID" + b].BG._width = 120;
Interface.LockMenu["ID" + b].bName._width = 120;
Interface.LockMenu["ID" + b].attachMovie("checkbox", "checkbox", 10);
Interface.LockMenu["ID" + b].checkbox.gotoAndStop(1);
Interface.LockMenu["ID" + b].checkbox._xscale = 75;
Interface.LockMenu["ID" + b].checkbox._yscale = 75;
Interface.LockMenu["ID" + b].checkbox._y = 10;
Interface.LockMenu["ID" + b].checkbox._x = 110;
Interface.LockMenu["ID" + b].onRelease = function () {
if (GameData.Characters[GameData.Target._name].Locks[this.bName.text]) {
GameData.Characters[GameData.Target._name].Locks[this.bName.text] = false;
this.checkbox.gotoAndStop(1);
} else {
GameData.Characters[GameData.Target._name].Locks[this.bName.text] = true;
this.checkbox.gotoAndStop(2);
}
};
b++;
}
PositionMenu(Interface.DNAMenu, "C", "C", -140, -230, Interface.TargetFrame, Interface.TargetFrame);
Interface.DNAMenu.BG._alpha = GameData.Buttons.Opacity;
makeButton(Interface.DNAMenu, "OK", "test", 50);
setButtonStyle(Interface.DNAMenu.OK);
Interface.DNAMenu.OK._x = 140;
Interface.DNAMenu.OK._y = 53;
PositionMenu(Interface.PartsMenu, "C", "C", -155, -60, Interface.TargetFrame, Interface.TargetFrame);
b = 0;
while (b < 10) {
Interface.PartsMenu["ID" + b].BG._width = 100;
Interface.PartsMenu["ID" + b].bName._width = 100;
b++;
}
setMenuListener(Interface.PartsMenu.ID0, Interface.HatMenu, 3);
setMenuListener(Interface.PartsMenu.ID1, Interface.ItemMenu, 3);
setMenuListener(Interface.PartsMenu.ID2, Interface.AccMenu, 3);
setMenuListener(Interface.PartsMenu.ID3, Interface.BackMenu, 3);
setMenuListener(Interface.PartsMenu.ID4, Interface.ShoesMenu, 3);
setMenuListener(Interface.PartsMenu.ID5, Interface.ArmsMenu, 3);
setMenuListener(Interface.PartsMenu.ID6, Interface.BodyMenu, 3);
setMenuListener(Interface.PartsMenu.ID7, Interface.HairMenu, 3);
setMenuListener(Interface.PartsMenu.ID8, Interface.EyesMenu, 3);
setMenuListener(Interface.PartsMenu.ID9, Interface.MouthMenu, 3);
makeThumbMenu(Interface.HatMenu, "Hats", "Hats", 10, 70, 20, 146, -238, "hat");
makeThumbMenu(Interface.ItemMenu, "Items", "Items", 10, 0, 20, 146, -238, "item");
makeThumbMenu(Interface.AccMenu, "Acc", "Acc", 5, 0, 20, 146, -238, "accessory");
makeThumbMenu(Interface.BackMenu, "Back", "Wings", -5, -20, 14, 146, -238, "wings");
makeThumbMenu(Interface.ShoesMenu, "Shoes", "Shoes", 20, 10, 30, 146, -238, "legs");
makeThumbMenu(Interface.ArmsMenu, "Arms", "Arms", 20, 26, 20, 146, -238, "arms");
makeThumbMenu(Interface.BodyMenu, "Body", "Body", 20, 20, 14, 146, -238, "body");
makeThumbMenu(Interface.HairMenu, "Hair", "Hair", 20, 30, 8, 146, -238, "head");
makeThumbMenu(Interface.EyesMenu, "Eyes", "Eyes", 20, 35, 15, 146, -238, "eyes");
makeThumbMenu(Interface.MouthMenu, "Mouth", "Mouth", 20, 35, 15, 146, -238, "mouth");
SwapColor(Interface.BGMenu.BG, "Buttons", 0);
Interface.BGMenu.BG._alpha = GameData.Buttons.Opacity;
makeThumbMenu(Interface.BGMenu, "BGs", "Background", 0, 0, 5, 100, -370, "");
Interface.BGMenu.SMod = 50;
Interface.BGMenu.Ops._x = -20;
Interface.BGMenu.DaMask._x = -20;
Interface.BGMenu.Ops._y = 50;
Interface.BGMenu.DaMask._y = 50;
Interface.BGMenu.sX.text = 100;
Interface.BGMenu.sY.text = 100;
Interface.BGMenu.Fr.text = (1 - GameData.Friction) * 100;
Interface.BGMenu.Br.text = 100;
if (GameData.BGAutoScale) {
Interface.BGMenu.AScheck.gotoAndStop(2);
} else {
Interface.BGMenu.AScheck.gotoAndStop(1);
}
Interface.BGMenu.AScheck.onRelease = function () {
if (GameData.BGAutoScale) {
GameData.BGAutoScale = false;
Interface.BGMenu.AScheck.gotoAndStop(1);
} else {
GameData.BGAutoScale = true;
Interface.BGMenu.AScheck.gotoAndStop(2);
}
};
makeButton(Interface.BGMenu, "BGSetButton", "Set", 50);
Interface.BGMenu.BGSetButton._x = 280;
Interface.BGMenu.BGSetButton._y = 270;
Interface.BGMenu.BGSetButton.onRelease = function () {
setBGProperties();
SwapColor(this.BG, "Buttons", 1);
};
makeButton(Interface.BGMenu, "BGDefButton", "Default", 51);
Interface.BGMenu.BGDefButton._x = 280;
Interface.BGMenu.BGDefButton._y = 250;
Interface.BGMenu.BGDefButton.onRelease = function () {
this._parent.lX.text = 0;
this._parent.lY.text = 0;
this._parent.sX.text = 100;
this._parent.sY.text = 100;
this._parent.rD.text = 0;
this._parent.Fr.text = 10;
this._parent.Br.text = 100;
setBGProperties();
SwapColor(this.BG, "Buttons", 1);
};
Interface.BGMenu.Prev.onRelease = function () {
if ((GameData.BG - 1) < 0) {
SwapBG(GameData.BGs.length - 2);
} else {
SwapBG(GameData.BG - 1);
}
};
Interface.BGMenu.Next.onRelease = function () {
if ((GameData.BG + 1) > (GameData.BGs.length - 2)) {
SwapBG(0);
} else {
SwapBG(GameData.BG + 1);
}
};
PositionMenu(Interface.OpsMenu, "C", "C", 150, -300, Interface.MainMenu, Interface.MainMenu);
Interface.OpsMenu.BG._alpha = GameData.Buttons.Opacity;
Interface.OpsMenu.BG.onPress = function () {
this._parent.startDrag();
};
Interface.OpsMenu.BG.onRelease = function () {
this._parent.stopDrag();
};
Interface.OpsMenu.BG.onReleaseOutside = function () {
this._parent.stopDrag();
};
i = 0;
while (i < 4) {
Interface.OpsMenu.attachMovie("checkbox", "ID" + i, i);
Interface.OpsMenu["ID" + i]._x = 30;
Interface.OpsMenu["ID" + i]._y = (i * 21) + 70;
i++;
}
Interface.OpsMenu.ID0.onRelease = function () {
if (GameData.ClickStopsSpin) {
GameData.ClickStopsSpin = false;
this.gotoAndStop(1);
} else {
GameData.ClickStopsSpin = true;
this.gotoAndStop(2);
}
};
Interface.OpsMenu.ID1.onRelease = function () {
if (GameData.Mute) {
GameData.Mute = false;
this.gotoAndStop(1);
} else {
GameData.Mute = true;
this.gotoAndStop(2);
}
};
Interface.OpsMenu.ID2.onRelease = function () {
if (GameData.PresetWithItems) {
GameData.PresetWithItems = false;
this.gotoAndStop(1);
} else {
GameData.PresetWithItems = true;
this.gotoAndStop(2);
}
};
Interface.OpsMenu.ID3.onRelease = function () {
if (GameData.MassLocking) {
GameData.MassLocking = false;
this.gotoAndStop(1);
} else {
GameData.MassLocking = true;
this.gotoAndStop(2);
}
};
makeButton(Interface.OpsMenu, "Close", "close", 151);
Interface.OpsMenu.Close._x = 70;
Interface.OpsMenu.Close._y = 150;
setButtonStyle(Interface.OpsMenu.Close);
Interface.OpsMenu.Close.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
CloseMenus(1);
};
PositionMenu(Interface.COMenu, "C", "C", -100, -350, Interface.TargetFrame, Interface.TargetFrame);
Interface.COMenu.BG._alpha = GameData.Buttons.Opacity;
Interface.COMenu.BG.onPress = function () {
this._parent.startDrag();
};
Interface.COMenu.BG.onRelease = function () {
this._parent.stopDrag();
};
Interface.COMenu.BG.onReleaseOutside = function () {
this._parent.stopDrag();
};
Interface.COMenu.cName.onSetFocus = function () {
GameData.KeyLock = true;
};
Interface.COMenu.cName.onKillFocus = function () {
GameData.KeyLock = false;
};
Interface.COMenu.Prev.onRelease = function () {
QuickSwap(GameData.Target, -1, "All");
setCharLook(this._parent.char, GameData.Characters[GameData.Target._name]);
};
Interface.COMenu.Next.onRelease = function () {
QuickSwap(GameData.Target, 1, "All");
setCharLook(this._parent.char, GameData.Characters[GameData.Target._name]);
};
GameData.PartsArray = new Array("Hats", "Eyes", "Mouth", "Hair", "Body", "Arms", "Shoes", "Back", "Accessory", "Items");
i = 0;
while (i < GameData.PartsArray.length) {
Interface.COMenu.attachMovie("Arrow", "Prev" + i, i * 3);
Interface.COMenu["Prev" + i]._xscale = 35;
Interface.COMenu["Prev" + i]._yscale = 35;
Interface.COMenu["Prev" + i]._y = (i * 21) + 9;
Interface.COMenu["Prev" + i]._x = 250;
Interface.COMenu["Prev" + i].ID = GameData.PartsArray[i];
Interface.COMenu["Prev" + i].onRelease = function () {
QuickSwap(GameData.Target, -1, this.ID);
setCharLook(this._parent.char, GameData.Characters[GameData.Target._name]);
};
Interface.COMenu.attachMovie("Arrow", "Next" + i, (i * 3) + 2);
Interface.COMenu["Next" + i]._xscale = -35;
Interface.COMenu["Next" + i]._yscale = 35;
Interface.COMenu["Next" + i]._y = (i * 21) + 9;
Interface.COMenu["Next" + i]._x = 385;
Interface.COMenu["Next" + i].ID = GameData.PartsArray[i];
Interface.COMenu["Next" + i].onRelease = function () {
QuickSwap(GameData.Target, 1, this.ID);
setCharLook(this._parent.char, GameData.Characters[GameData.Target._name]);
};
Interface.COMenu.attachMovie("checkbox", "Lock" + i, (i * 3) + 1);
Interface.COMenu["Lock" + i]._xscale = 75;
Interface.COMenu["Lock" + i]._yscale = 75;
Interface.COMenu["Lock" + i]._y = (i * 21) + 17;
Interface.COMenu["Lock" + i]._x = 363;
Interface.COMenu["Lock" + i].ID = GameData.PartsArray[i];
Interface.COMenu["Lock" + i].IDnum = i;
Interface.COMenu["Lock" + i].onRelease = function () {
if (GameData.Characters[GameData.Target._name].Locks[this.ID]) {
GameData.Characters[GameData.Target._name].Locks[this.ID] = false;
this._parent["Prev" + this.IDnum]._visible = true;
this._parent["Next" + this.IDnum]._visible = true;
this.gotoAndStop(1);
} else {
GameData.Characters[GameData.Target._name].Locks[this.ID] = true;
this._parent["Prev" + this.IDnum]._visible = false;
this._parent["Next" + this.IDnum]._visible = false;
this.gotoAndStop(2);
}
};
i++;
}
makeButton(Interface.COMenu, "Set", "set", 150);
Interface.COMenu.Set._x = 140;
Interface.COMenu.Set._y = 250;
setButtonStyle(Interface.COMenu.Set);
Interface.COMenu.Set.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
GameData.Characters[GameData.Target._name].Name = Interface.COMenu.cName.text;
Interface.TargetFrame.bName.text = Interface.COMenu.cName.text;
if (Interface.COMenu.cScale.text < GameData.ScaleLimit) {
Interface.COMenu.cScale.text = GameData.ScaleLimit;
}
GameData.Characters[GameData.Target._name].Scale = Interface.COMenu.cScale.text;
GameData.Target._xscale = GameData.Characters[GameData.Target._name].Scale * GameData.Target.XFace;
GameData.Target._yscale = GameData.Characters[GameData.Target._name].Scale * GameData.Target.YFace;
GameData.Target._rotation = Interface.COMenu.cRot.text;
GameData.Target._x = Interface.COMenu.cX.text;
GameData.Target._y = Interface.COMenu.cY.text;
};
makeButton(Interface.COMenu, "Close", "close", 151);
Interface.COMenu.Close._x = -20;
Interface.COMenu.Close._y = 250;
setButtonStyle(Interface.COMenu.Close);
Interface.COMenu.Close.onRelease = function () {
SwapColor(this.BG, "Buttons", 1);
CloseMenus(1);
};
makeMenu(Interface.COMenu, "SideOps", 152, ["Bring Forward", "Send Backwards", "Vertical Flip", "Horizontal Flip", "Unlock All", "Lock All", "Randomize"], 0, 0);
Interface.COMenu.SideOps._x = -20;
Interface.COMenu.SideOps._y = 170;
Interface.COMenu.SideOps._visible = true;
Interface.COMenu.SideOps.ID0.onRelease = function () {
if (GameData.Target.getDepth() < (GameData.DMax - 1)) {
GameData.Target.swapDepths(GameData.Target.getDepth() + 1);
}
SwapColor(this.BG, "Buttons", 1);
};
Interface.COMenu.SideOps.ID1.onRelease = function () {
if (GameData.Target.getDepth() > 0) {
GameData.Target.swapDepths(GameData.Target.getDepth() - 1);
}
SwapColor(this.BG, "Buttons", 1);
};
Interface.COMenu.SideOps.ID2.onRelease = function () {
GameData.Target._yscale = GameData.Target._yscale * -1;
GameData.Target.YFace = GameData.Target.YFace * -1;
SwapColor(this.BG, "Buttons", 1);
};
Interface.COMenu.SideOps.ID3.onRelease = function () {
GameData.Target._xscale = GameData.Target._xscale * -1;
GameData.Target.XFace = GameData.Target.XFace * -1;
SwapColor(this.BG, "Buttons", 1);
};
Interface.COMenu.SideOps.ID4.onRelease = function () {
i = 0;
while (i < GameData.PartsArray.length) {
GameData.Characters[GameData.Target._name].Locks[GameData.PartsArray[i]] = false;
Interface.COMenu["Prev" + i]._visible = true;
Interface.COMenu["Next" + i]._visible = true;
Interface.COMenu["Lock" + i].gotoAndStop(1);
i++;
}
};
Interface.COMenu.SideOps.ID5.onRelease = function () {
i = 0;
while (i < GameData.PartsArray.length) {
GameData.Characters[GameData.Target._name].Locks[GameData.PartsArray[i]] = true;
Interface.COMenu["Prev" + i]._visible = false;
Interface.COMenu["Next" + i]._visible = false;
Interface.COMenu["Lock" + i].gotoAndStop(2);
i++;
}
};
Interface.COMenu.SideOps.ID6.onRelease = function () {
RandomizeAll(GameData.Target);
setCharLook(Interface.COMenu.char, GameData.Characters[GameData.Target._name]);
};
PositionMenu(Interface.EditMenu, "C", "C", 177, -20, Interface.TargetFrame, Interface.TargetFrame);
Interface.EditMenu.ID0.onRelease = function () {
openCOMenu();
};
Interface.EditMenu.ID1.onRelease = function () {
if (GameData.Target.getDepth() < (GameData.DMax - 1)) {
GameData.Target.swapDepths(GameData.Target.getDepth() + 1);
}
SwapColor(this.BG, "Buttons", 1);
};
Interface.EditMenu.ID2.onRelease = function () {
if (GameData.Target.getDepth() > 0) {
GameData.Target.swapDepths(GameData.Target.getDepth() - 1);
}
SwapColor(this.BG, "Buttons", 1);
};
Interface.EditMenu.ID3.onRelease = function () {
GameData.Target._yscale = GameData.Target._yscale * -1;
GameData.Target.YFace = GameData.Target.YFace * -1;
SwapColor(this.BG, "Buttons", 1);
};
Interface.EditMenu.ID4.onRelease = function () {
GameData.Target._xscale = GameData.Target._xscale * -1;
GameData.Target.XFace = GameData.Target.XFace * -1;
SwapColor(this.BG, "Buttons", 1);
};
setMenuListener(Interface.EditMenu.ID5, Interface.RenameMenu, 3);
Interface.EditMenu.ID5.onRelease = function () {
if (Interface.RenameMenu._visible) {
CloseMenus(3);
SwapColor(this.BG, "Buttons", 1);
} else {
Interface.RenameMenu.iName.text = GameData.Characters[GameData.Target._name].Name;
Selection.setFocus(Interface.RenameMenu.iName);
OpenMenu(3, Interface.RenameMenu, this.BG);
SwapColor(this.BG, "Buttons", 2);
}
};
PositionMenu(Interface.RenameMenu, "C", "C", 0, -200, Interface.TargetFrame, Interface.TargetFrame);
Interface.RenameMenu.BG._alpha = GameData.Buttons.Opacity;
makeButton(Interface.RenameMenu, "OK", "OK", 10);
Interface.RenameMenu.OK._x = 50;
Interface.RenameMenu.OK._y = 35;
Interface.RenameMenu.OK.onRelease = function () {
Interface.TargetFrame.bName.text = Interface.RenameMenu.iName.text;
GameData.Characters[GameData.Target._name].Name = Interface.RenameMenu.iName.text;
SwapColor(this.BG, "Buttons", 1);
CloseMenus(3);
};
Interface.RenameMenu.iName.onSetFocus = function () {
GameData.KeyLock = true;
};
Interface.RenameMenu.iName.onKillFocus = function () {
GameData.KeyLock = false;
};
fixScales();
setMenuListener(Interface.MainMenu, Interface.MainMenuItems, 1);
fixMenuDepths(["BGMenu", "HatMenu", "EyesMenu", "BodyMenu", "ShoesMenu", "ArmsMenu", "AccMenu", "ItemMenu", "HairMenu", "BackMenu", "MouthMenu", "RenameMenu"]);
Interface.TargetFrame.BG._width = 147;
Interface.TargetFrame.attachMovie("HeadPreview", "preview", 10);
Interface.TargetFrame.preview._x = 10;
Interface.TargetFrame.preview._y = 10;
Interface.TargetFrame.preview._xscale = 40;
Interface.TargetFrame.preview._yscale = 40;
setMenuListener(Interface.TargetFrame, Interface.TargetMenu, 1);
Symbol 10 Button
on (release) {
getURL ("http://www.walfas.org/", "_blank");
}
Instance of Symbol 77 MovieClip [BGBox] "closeB" in Symbol 78 MovieClip Frame 1
onClipEvent (load) {
this._alpha = 0;
}
on (release) {
_parent._visible = false;
}
Instance of Symbol 77 MovieClip [BGBox] "dragBar" in Symbol 78 MovieClip Frame 1
onClipEvent (load) {
this._alpha = 0;
}
on (press) {
_parent.startDrag();
}
on (release) {
_parent.stopDrag();
}
on (releaseOutside) {
_parent.stopDrag();
}
Instance of Symbol 111 MovieClip in Symbol 115 MovieClip [Wings] Frame 29
onClipEvent (enterFrame) {
this._rotation = this._rotation - 30;
}
Instance of Symbol 360 MovieClip in Symbol 419 MovieClip [Items] Frame 46
onClipEvent (enterFrame) {
this._rotation = this._rotation + 10;
}
Instance of Symbol 745 MovieClip in Symbol 763 MovieClip [Acc] Frame 51
onClipEvent (enterFrame) {
this._rotation = this._rotation + 7.5;
}
Instance of Symbol 747 MovieClip in Symbol 763 MovieClip [Acc] Frame 51
onClipEvent (enterFrame) {
this._rotation = this._rotation - 5;
}
Instance of Symbol 485 MovieClip [Hair2] "head2" in Symbol 764 MovieClip [Char] Frame 1
onClipEvent (enterFrame) {
this.gotoAndStop(_root.char.head._currentframe);
}
Instance of Symbol 764 MovieClip [Char] "char" in Symbol 774 MovieClip [Toys] Frame 1
onClipEvent (load) {
head.gotoAndStop(2);
head2._visible = false;
mouth._visible = false;
legs.gotoAndStop(2);
body.gotoAndStop(2);
arms.gotoAndStop(2);
item.gotoAndStop(23);
hat.gotoAndStop(2);
eyes.gotoAndStop(14);
accessory._visible = false;
wings._visible = false;
this._xscale = 50;
this._yscale = 50;
}
Instance of Symbol 111 MovieClip in Symbol 774 MovieClip [Toys] Frame 2
onClipEvent (enterFrame) {
this._rotation = this._rotation - 30;
}
Instance of Symbol 774 MovieClip [Toys] "fusion1" in Symbol 775 MovieClip Frame 1
onClipEvent (load) {
this.gotoAndStop(4);
this.lights.gotoAndStop(3);
this.char._visible = false;
}
onClipEvent (enterFrame) {
if (this.DB > 0) {
this.DB--;
}
}
on (press) {
if (this.DB > 0) {
_root.ejectFusionTank(1);
this.DB = 0;
} else {
this.DB = _root.GameData.DCrate;
}
}
Instance of Symbol 774 MovieClip [Toys] "fusion2" in Symbol 775 MovieClip Frame 1
onClipEvent (load) {
this.gotoAndStop(4);
this.lights.gotoAndStop(3);
this.char._visible = false;
}
onClipEvent (enterFrame) {
if (this.DB > 0) {
this.DB--;
}
}
on (press) {
if (this.DB > 0) {
_root.ejectFusionTank(2);
this.DB = 0;
} else {
this.DB = _root.GameData.DCrate;
}
}
Instance of Symbol 774 MovieClip [Toys] "fusion3" in Symbol 775 MovieClip Frame 1
onClipEvent (load) {
this.gotoAndStop(4);
this.lights.gotoAndStop(3);
this.char._visible = false;
}
onClipEvent (enterFrame) {
if (this.DB > 0) {
this.DB--;
}
}
on (press) {
if (this.DB > 0) {
if (_parent.fusion1.char._visible && (_parent.fusion2.char._visible)) {
_root.activateFusion();
}
this.DB = 0;
} else {
this.DB = _root.GameData.DCrate;
}
}
Symbol 838 MovieClip [Background] Frame 23
amount = 100;
mWidth = Stage.width;
mHeight = Stage.height;
var i = 0;
while (i < amount) {
this.attachMovie("flake", "flake" + i, i);
this["flake" + i]._x = Math.random() * mWidth;
this["flake" + i]._y = Math.random() * mHeight;
this["flake" + i]._xscale = (this["flake" + i]._yscale = (this["flake" + i]._alpha = 40 + (Math.random() * 60)));
this["flake" + i].yspeed = (Math.random() * 2) + 0.1;
this["flake" + i].increment = -0.025 + (Math.random() * 0.05);
this["flake" + i].onEnterFrame = function () {
if (_root.bg._currentframe == 23) {
this.radians = this.radians + this.increment;
this._y = this._y + this.yspeed;
this._x = this._x + Math.sin(this.radians);
if (this._y >= mHeight) {
this._y = -10;
this._x = -10 + (Math.random() * mWidth);
}
if ((this._x >= mWidth) || (this._x <= 0)) {
this._y = -10;
this._x = -10 + (Math.random() * mWidth);
}
} else {
this._x = 0;
this._y = 0;
}
};
i++;
}
Instance of Symbol 69 MovieClip in Symbol 838 MovieClip [Background] Frame 38
onClipEvent (enterFrame) {
if (this.DB > 0) {
this.DB--;
}
}
on (press) {
if (this.DB > 0) {
k = 0;
while (k < 9) {
var MC = _root.makeChar("Cirno");
_root.GameData.Characters[MC._name].Scale = 40;
MC._xscale = 40;
MC._yscale = 40;
_root.Scramble(MC);
k++;
}
this.DB = 0;
} else {
this.DB = _root.GameData.DCrate;
}
}
Instance of Symbol 71 MovieClip in Symbol 838 MovieClip [Background] Frame 38
onClipEvent (enterFrame) {
if (this.DB > 0) {
this.DB--;
}
}
on (press) {
if (this.DB > 0) {
if (!_parent.chatW._visible) {
_parent.chatW._visible = true;
_parent.chatW.chat.text = "";
_root.GameData.Chat.Active = true;
_root.GameData.Chat.Doom = 0;
}
this.DB = 0;
} else {
this.DB = _root.GameData.DCrate;
}
}
Instance of Symbol 73 MovieClip in Symbol 838 MovieClip [Background] Frame 38
onClipEvent (enterFrame) {
if (this.DB > 0) {
this.DB--;
}
}
on (press) {
if (this.DB > 0) {
_root.stage["Grouchy Reimu"]._visible = true;
_root.stage["Grouchy Reimu"].swapDepths(_root.GameData.DMax - 1);
this.DB = 0;
} else {
this.DB = _root.GameData.DCrate;
}
}
Instance of Symbol 78 MovieClip "chatW" in Symbol 838 MovieClip [Background] Frame 38
onClipEvent (load) {
this._visible = false;
}
Symbol 838 MovieClip [Background] Frame 39
myColor = Math.round(Math.random() * 16777215);
myColoredObject = new Color(this.square);
myColoredObject.setRGB(myColor);
Instance of Symbol 485 MovieClip [Hair2] "head2" in Symbol 847 MovieClip [HeadPreview] Frame 1
onClipEvent (enterFrame) {
this.gotoAndStop(_root.char.head._currentframe);
}
Instance of Symbol 763 MovieClip [Acc] "accessory" in Symbol 847 MovieClip [HeadPreview] Frame 1
onClipEvent (load) {
this.gotoAndStop(Math.round(Math.random() * this._totalframes));
}
Instance of Symbol 77 MovieClip [BGBox] "head" in Symbol 853 MovieClip Frame 1
onClipEvent (load) {
this._alpha = 0;
}
Instance of Symbol 857 MovieClip in Symbol 867 MovieClip Frame 1
onClipEvent (enterFrame) {
if (this._y <= (-this._height)) {
this._y = (400 + (Math.random() * 100)) + 200;
this._yscale = (Math.random() * 50) + 100;
} else {
this._y = this._y - 100;
}
}
Instance of Symbol 857 MovieClip in Symbol 867 MovieClip Frame 1
onClipEvent (enterFrame) {
if (this._y <= (-this._height)) {
this._y = (400 + (Math.random() * 100)) + 200;
this._yscale = (Math.random() * 50) + 100;
} else {
this._y = this._y - 100;
}
}
Instance of Symbol 857 MovieClip in Symbol 867 MovieClip Frame 1
onClipEvent (enterFrame) {
if (this._y <= (-this._height)) {
this._y = (400 + (Math.random() * 100)) + 200;
this._yscale = (Math.random() * 50) + 100;
} else {
this._y = this._y - 100;
}
}
Instance of Symbol 857 MovieClip in Symbol 867 MovieClip Frame 1
onClipEvent (enterFrame) {
if (this._y <= (-this._height)) {
this._y = (400 + (Math.random() * 100)) + 200;
this._yscale = (Math.random() * 50) + 100;
} else {
this._y = this._y - 100;
}
}
Instance of Symbol 857 MovieClip in Symbol 867 MovieClip Frame 1
onClipEvent (enterFrame) {
if (this._y <= (-this._height)) {
this._y = (400 + (Math.random() * 100)) + 200;
this._yscale = (Math.random() * 50) + 100;
} else {
this._y = this._y - 100;
}
}
Symbol 867 MovieClip Frame 55
stop();
Symbol 903 MovieClip [KO] Frame 1
_root.playSound("KO");
Symbol 903 MovieClip [KO] Frame 19
_root.playSound("KO");
Symbol 903 MovieClip [KO] Frame 27
stop();