Frame 1
("c" < (b >= undefined)) || (0(false));
_root.FlashTracking = function (Section) {
datenow = new Date();
};
_root.FlashTracking("Game4_Preload_Start");
_root.PauseFor = function () {
var j = 0;
while (j < 1000) {
j++;
}
};
MovieClip.prototype.makeNoise = function (whatNoise) {
mySound = new Sound();
mySound.attachSound(whatNoise);
mySound.start();
};
MovieClip.prototype.stopSound = function () {
mySound.stop();
};
MovieClip.prototype.makeLoop = function (whatNoise, loops) {
mySound = new Sound();
mySound.attachSound(whatNoise);
mySound.start(0, loops);
};
MovieClip.prototype.fadeSound = function (factor) {
myVolume = mySound.getVolume();
if (0 < myVolume) {
mySound.setVolume(myVolume - factor);
} else {
mySound.stop();
}
};
_root.ShowHelpScreen = function () {
_root.attachMovie("HelpScreen", "HelpScreen", 635);
};
_root.LoseHelpScreen = function () {
removeMovieClip(_root.HelpScreen);
};
_root.GameQuit = function () {
getURL ("javascript:window.opener=self; window.close()", _self);
_root.scoreIDtemp = "";
};
_root.GameHighscores = function () {
if (_root.localOJJpage == 1) {
getURL ("javascript:goHighScores()", _self);
} else {
getURL ("http://www.oddjobjack.com/forum/index.php?act=Arcade&do=stats&gameid=4", "_blank");
}
};
_focusrect = false;
_root.xOrigin = _root.loadBar.LBar._x;
_root.total = _root.getBytesTotal();
_root.factor = _root.loadbar.barMeasure._width;
_root.partial = 0;
stop();
Instance of Symbol 77 MovieClip [loaderBar] "loadBar" in Frame 1
onClipEvent (enterFrame) {
_root.partial = _root.getBytesLoaded();
if (_root.partial < _root.total) {
_root.Move = (Number(_root.partial) / Number(_root.total)) * _root.factor;
_root.loadBar.LBar._x = _root.xOrigin + _root.Move;
} else if (_root.partial >= _root.total) {
_root.FlashTracking("Game4_Preload_End");
_root.play();
}
}
Frame 2
("c" < (b >= undefined)) || (0(false));
_root.SendScoreORIGINALBACKUP = function () {
if (0 < _root.totalscore) {
tempRandom1 = random(9) + 1;
tempRandom2 = random(8) + 1;
tempRandom3 = random(7) + 1;
tempRandom4 = random(6) + 1;
tempRandom5 = random(5) + 1;
tempRandom6 = random(4) + 1;
ScoreAddOn = ((((String(tempRandom6) + String(tempRandom5)) + String(tempRandom4)) + String(tempRandom3)) + String(tempRandom2)) + String(tempRandom1);
ScoreAddOnNumber = Number(ScoreAddOn);
scoreToSend = _root.totalscore * ScoreAddOnNumber;
scoreToSendNumber = String(scoreToSend) + String(ScoreAddOnNumber);
loadVariablesNum ((("SGS_add_highscore.asp?viewerid=" + _root.UserID) + "&gameid=1&score=") + scoreToSendNumber, 0);
}
_root.totalscore = 0;
};
_root.SendScore = function () {
if (0 < _root.points) {
var gname = "game4";
var gscore = _root.points;
loadVariablesNum ((("http://www.oddjobjack.com/forum/index.php?act=Arcade&do=newscore&gname=" + gname) + "&gscore=") + gscore, 1);
}
_root.totalscore = 0;
gscore = 0;
};
stop();
Frame 3
("c" < (b >= undefined)) || (0(false));
_root.PuzzleCounter = 1;
_root.TotalGameScore = 0;
_root.MonkeyTotalGameScore = 0;
_root.LastLevelScore = 0;
_root.MonkeyLastLevelScore = 0;
_root.BonusScore = 0;
_root.MonkeyBonusScore = 0;
_root.LevelEnded = 1;
_root.LivesLeft = 2;
_root.Points = 0;
_root.LastLevelScore = 0;
_root.TotalGameScore = 0;
_root.LastTotalGameScore = 0;
_root.MonkeyLastLevelScore = 0;
_root.MonkeyTotalGameScore = 0;
_root.LastMonkeyTotalGameScore = 0;
_root.PuzzleCounterDisplay = 0;
stop();
Frame 4
("c" < (b >= undefined)) || (0(false));
_root.InitVariables = function () {
_root.TangramLifted = 0;
_root.TotalTansPlacedLegal = 0;
_root.NudgeFactor = 1;
_root.NudgePause = 10;
_root.PuzzleOrderArray = ["3", "9", "4", "5", "6", "2", "7", "8", "1"];
_root.MonkeyTimerArray1 = ["5", "20", "35", "50", "65", "80", "95"];
_root.MonkeyTimerArray2 = ["5", "19", "33", "47", "61", "75", "89"];
_root.MonkeyTimerArray3 = ["5", "18", "31", "44", "57", "70", "83"];
_root.MonkeyTimerArray4 = ["5", "17", "29", "41", "53", "65", "77"];
_root.MonkeyTimerArray5 = ["5", "16", "27", "38", "49", "60", "71"];
_root.MonkeyTimerArray6 = ["5", "15", "25", "35", "45", "55", "65"];
_root.MonkeyTimerArray7 = ["5", "14", "23", "32", "41", "50", "59"];
_root.MonkeyTimerArray8 = ["5", "13", "21", "29", "37", "45", "53"];
_root.MonkeyTimerArray9 = ["5", "12", "19", "26", "33", "40", "47"];
_root.MonkeyIndex = 0;
_root.TempHitMade = 0;
_root.IntercheckMax = 30;
_root.TangramNudged = 0;
_root.RotateSegment = 5;
_root.MonkeyDiscardMinimum = 0;
_root.MonkeyDiscardActive = 0;
_root.CheatSelected = 0;
_root.StageFlippedCounter = 0;
_root.PawSpeed = 5;
_root.MonkeyThresholdFactor = 3;
_root.MedicationTimerMax = 30;
_root.MedicationBarStartingPoint = 92.25;
_root.MonkeyTanYBoundary = 164;
_root.TanYBoundary = 164;
_root.TanXBoundary = 311;
var k = 0;
while (k < 7) {
_root["Tan" + k].Size = 0;
_root["MonkeyTan" + k].Size = 0;
k++;
}
_root.DrugDuration = 10;
_root.DrugStart = 0;
_root.DrugAdministered = 0;
_root.DrugStatus = 0;
_root.TextWindowContents = "Begin the test.";
_root.SizeDifficultyFactor = 0.85;
_root.TimeDisplay = 0;
_root.LevelsMax = 10;
_root.MonkeyThreshold = 0;
_root.ScoreFactor = 37;
_root.MonkeySleepFactor = 0;
_root.TangramScaleSound = "none";
};
_root.Drug1 = function () {
_root.TextWindowContents = "Sleepy time for Bobo.";
_root.DrugStart = _root.DateDiff;
_root.DruggedTan = 99;
_root.DrugStatus = 1;
_root.CalculateTotalTansPlacedLegal();
};
_root.MonkeyCheat = function () {
if (_root.CheatSelected == 0) {
_root.SoundHolderMonkeyTangrams.makenoise("MonkeyTakesYourTangram");
if (_root.MonkeyThresholdFactor < _root.MonkeyThreshold) {
_root.CheatSelection = 1;
_root.TangramDrop();
_root.CheatSelected = 1;
_root.MonkeyDiscardActive = 0;
}
} else {
_root.MonkeyDiscard();
}
};
_root.MonkeyDiscard = function () {
if (_root.MonkeyDiscardActive == 0) {
_root.MonkeyDiscardActive = 1;
if (0 < _root.TotalTansPlacedLegal) {
if (_root.MonkeyDiscardMinimum < _root.TotalTansPlacedLegal) {
TanSelected = 0;
randomTan = random(6) - 1;
TanTries = 0;
FoundOne = 0;
do {
randomTan++;
if (6 < randomTan) {
randomTan = 0;
}
if (_root[("Tan" + randomTan) + "Placed"] == 1) {
TanTries = 7;
FoundOne = 1;
}
TanTries++;
} while (TanTries < 6);
}
} else {
_root.CheatSelected = 0;
}
}
if (FoundOne == 1) {
_root["Tan" + randomTan].attachMovie("BoboDiscardHead", "BoboDiscardHead", 635);
_root.MonkeyDiscardMove(randomTan, "Player");
}
};
_root.MonkeyMove = function (TangramNumber, Player) {
if (_root.CheatSelected == 0) {
WhichTan = "MonkeyTan";
WhichHome = ("Puz" + (_root.PuzzleOrderArray[_root.PuzzleCounter - 1] - 1)) + "Tan";
WhichHomeX = ((("Puz" + (_root.PuzzleOrderArray[_root.PuzzleCounter - 1] - 1)) + "Tan") add TangramNumber) add "x";
WhichHomeY = ((("Puz" + (_root.PuzzleOrderArray[_root.PuzzleCounter - 1] - 1)) + "Tan") add TangramNumber) add "y";
WhichPaw = "MonkeyPaw";
xDifference = Math.floor(_root[WhichTan add TangramNumber]._x - _root[WhichHomeX]);
yDifference = Math.floor(_root[WhichTan add TangramNumber]._y - _root[WhichHomeY]);
if (Math.abs(xDifference) < 2) {
setProperty(_root[WhichTan add TangramNumber], _x , _root[WhichHomeX]);
setProperty(_root[WhichTan add TangramNumber], _y , _root[WhichHomeY]);
setProperty(_root[WhichTan add TangramNumber], _rotation , _root[((("Puz" + (_root.PuzzleOrderArray[_root.PuzzleCounter - 1] - 1)) + "Tan") + TangramNumber) + "SolutionRotation"]);
_root.MonkeyIndex++;
_root.CalculateTotalTansPlacedLegal();
} else {
setProperty(_root[WhichTan add TangramNumber], _x , _root[WhichTan add TangramNumber]._x - (xDifference / _root.PawSpeed));
setProperty(_root[WhichTan add TangramNumber], _y , _root[WhichTan add TangramNumber]._y - (yDifference / _root.PawSpeed));
setProperty(_root[WhichTan add TangramNumber], _rotation , _root[((("Puz" + (_root.PuzzleOrderArray[_root.PuzzleCounter - 1] - 1)) + "Tan") + TangramNumber) + "SolutionRotation"] + (xDifference * 2.5));
}
_root.MonitorMonkeyTangrams(TangramNumber, WhichTan, _root[WhichTan add TangramNumber]._y);
}
};
_root.MonkeyDiscardMove = function (TangramNumber, Player) {
_root.MonkeyTangramNumber = TangramNumber;
WhichTan = "Tan";
WhichHome = "Puz0Tan";
WhichHomeX = (WhichTan add TangramNumber) add "xHome";
WhichHomeY = (WhichTan add TangramNumber) add "yHome";
WhichPaw = "MonkeyCheatPaw";
xDifference = Math.floor(_root[WhichTan add TangramNumber]._x - _root[WhichHomeX]);
yDifference = Math.floor(_root[WhichTan add TangramNumber]._y - _root[WhichHomeY]);
if (Math.abs(xDifference) < 2) {
setProperty(_root[WhichTan add TangramNumber], _x , _root[WhichHomeX]);
setProperty(_root[WhichTan add TangramNumber], _y , _root[WhichHomeY]);
setProperty(_root[WhichTan add TangramNumber], _rotation , 0);
_root.DeltaRotation = _root[("Tan" add TangramNumber) add "rotation"];
var j = 1;
while (j < (_root[("Tan" add TangramNumber) add "NumCorners"] + 1)) {
_root.RotatePoints(_root[((("Tan" add TangramNumber) add "Corner") add j) add "x"], _root[((("Tan" add TangramNumber) add "Corner") add j) add "y"], _root[("Tan" add TangramNumber) add "x"], _root[("Tan" add TangramNumber) add "y"], -_root.DeltaRotation);
_root[((("Tan" add TangramNumber) add "Corner") add j) add "x"] = _root.newX;
_root[((("Tan" add TangramNumber) add "Corner") add j) add "y"] = _root.newy;
j++;
}
_root[("Tan" add TangramNumber) add "rotation"] = 0;
_root.CalculateTotalTansPlacedLegal();
_root.MonkeyDiscardActive = 0;
_root.deltax = _root[WhichTan add TangramNumber]._x - _root[(WhichTan add TangramNumber) + "x"];
_root.deltay = _root[WhichTan add TangramNumber]._y - _root[(WhichTan add TangramNumber) + "y"];
_root.CurrentTangram = TangramNumber;
_root.TranslateCentersAndCorners();
_root.CheatSelected = 0;
_root["Tan" + _root.CurrentTangram].gotoAndPlay(1);
_root[("Tan" + _root.CurrentTangram) + "placedcolour"] = 1;
removeMovieClip(_root[WhichTan add TangramNumber].BoboDiscardHead);
_root.CalculateTotalTansPlacedLegal();
} else {
setProperty(_root[WhichTan add TangramNumber], _x , _root[WhichTan add TangramNumber]._x - (xDifference / 5));
setProperty(_root[WhichTan add TangramNumber], _y , _root[WhichTan add TangramNumber]._y - (yDifference / 5));
setProperty(_root[WhichTan add TangramNumber], _rotation , xDifference * 2.5);
}
_root.MonitorTangrams(TangramNumber, "Tan", _root["Tan" + TangramNumber]._y);
};
_root.CalculateScore = function () {
tempbonustime = _root["MonkeyTimerArray" + _root.PuzzleOrderArray[_root.PuzzleCounter - 1]][6];
tempbonustime = Number(tempbonustime) + Number(_root.MonkeySleepFactor);
_root.BonusScore = int(_root.ScoreFactor * ((tempbonustime - _root.DateDiffRaw) + 4));
};
_root.MoveToNextLevel = function () {
_root.SetupPuzzle();
_root.SetupCamios("Jack", "Camio1", "Camio", 400);
_root.InsertRandomDrug();
_root.ResetPuzzleLocations();
_root.InitPuzzleLocations();
_root.InitVariables();
_root.InitTangramLocations();
_root.InitTanLocations();
_root.InitMonkeyTanLocations();
_root.LevelEnded = 0;
_root.CalculateTotalTansPlacedLegal();
_root.Jackpsychout.gotoandstop(1);
_root.Bobopsychout.gotoandstop(1);
};
_root.LevelCompleted = function () {
_root.TotalTansPlacedLegal = 0;
_root.TangramLifted = 0;
_root.CalculateScore();
_root.LastLevelScore = _root.BonusScore;
_root.TotalGameScore = _root.TotalGameScore + _root.LastLevelScore;
_root.LastTotalGameScore = _root.TotalGameScore;
_root.MonkeyLastLevelScore = _root.MonkeyBonusScore;
_root.MonkeyTotalGameScore = _root.MonkeyBonusScore + _root.MonkeyTotalGameScore;
_root.LastMonkeyTotalGameScore = _root.MonkeyTotalGameScore;
_root.MedicationTimer.Bar._x = _root.MedicationBarStartingPoint;
_root.attachMovie("YouWin", "WinLose", 110);
_root.SoundHolderTangrams.makenoise("LevelCompleted");
_root.LevelEnded = 1;
_root.PuzzleCounter++;
};
_root.LifeLost = function () {
_root.LivesLeft = _root.LivesLeft - 1;
_root.TotalTansPlacedLegal = 0;
_root.TangramLifted = 0;
_root.ResetTanSizes();
_root.MedicationTimer.Bar._x = _root.MedicationBarStartingPoint;
_root.LevelEnded = 1;
if (_root.LivesLeft < 0) {
_root.LevelFailed();
}
};
_root.LifeLostOuttro = function () {
_root.WinLose.removeMovieClip();
_root.attachMovie("LevelIntro", "LevelEndClip", 110);
};
_root.LevelWonOuttro = function () {
_root.WinLose.removeMovieClip();
_root.attachMovie("LevelIntro", "LevelEndClip", 110);
};
_root.CalculateTotalTansPlacedLegal = function () {
if (_root.LevelEnded == 0) {
PlacedCounter = 0;
var j = 0;
while (j < 7) {
_root.MonitorMonkeyTangrams(j, "MonkeyTan", _root["MonkeyTan" + j]._y);
_root.MonitorTangrams(j, "Tan", _root["Tan" + j]._y);
if (_root[("tan" + j) + "placedcolour"] == 2) {
_root[("Tan" + j) + "Placed"] = 1;
PlacedCounter++;
} else {
_root[("Tan" + j) + "Placed"] = 0;
}
j++;
}
_root.TotalTansPlacedLegal = PlacedCounter;
_root.TotalGameScore = _root.LastTotalGameScore + (200 * _root.TotalTansPlacedLegal);
_root.MonkeyTotalGameScore = _root.LastMonkeyTotalGameScore + (200 * _root.MonkeyIndex);
if (_root.TotalTansPlacedLegal == 7) {
_root.LevelCompleted();
}
if (_root.MonkeyIndex == 7) {
_root.attachMovie("BoboWins", "WinLose", 110);
}
_root.MonkeyThreshold = _root.TotalTansPlacedLegal - _root.MonkeyIndex;
if (_root.DrugStatus == 1) {
_root.DrugWearOff = Number(_root.DrugStart) + Number(_root.DrugDuration);
if (_root.DateDiff < _root.DrugWearOff) {
_root.MonkeyThreshold = -10;
} else {
_root.DrugStatus = 0;
}
}
if (_root.MonkeyThreshold == 1) {
_root.BoboAnimations.gotoAndPlay(180);
_root.JackAnimation.gotoAndPlay(300);
_root.TextWindowContents = "Bobo is watching you.";
} else if (_root.MonkeyThreshold == 0) {
_root.BoboAnimations.gotoAndPlay(1);
_root.JackAnimation.gotoAndPlay(1);
_root.TextWindowContents = "Evenly matched.";
} else if (_root.MonkeyThreshold == -1) {
_root.BoboAnimations.gotoAndPlay(30);
_root.JackAnimation.gotoAndPlay(210);
_root.TextWindowContents = "Bobo takes the lead.";
} else if (_root.MonkeyThreshold == -10) {
_root.BoboAnimations.gotoAndPlay(150);
_root.JackAnimation.gotoAndPlay(60);
_root.TextWindowContents = "Sleep Bobo.";
} else if (_root.MonkeyThreshold == 2) {
_root.BoboAnimations.gotoAndPlay(361);
_root.JackAnimation.gotoAndPlay(120);
_root.TextWindowContents = "Bobo is getting angry.";
} else if (_root.MonkeyThreshold == 3) {
_root.BoboAnimations.gotoAndPlay(451);
_root.JackAnimation.gotoAndPlay(120);
_root.TextWindowContents = "Bobo is outraged.";
} else if ((_root.MonkeyThreshold < (-1 + _root.MonkeyThreshold)) != -10) {
_root.BoboAnimations.gotoAndPlay(120);
_root.JackAnimation.gotoAndPlay(480);
_root.TextWindowContents = "Bobo is superior.";
}
}
};
_root.RefreshTangramLocations = function () {
var j = 0;
while (j < 7) {
XData = _root[("Tan" + j) + x];
XReal = _root["Tan" + j]._x;
YData = _root[("Tan" + j) + y];
YReal = _root["Tan" + j]._y;
if ((XData == XReal) + (YData == YReal)) {
} else {
_root.CurrentTangram = j;
_root.TangramTranslate();
}
j++;
}
};
_root.CheckRotationArrow = function () {
var k = 0;
while (k < 7) {
_root["Tan" + k].TanArrow.removeMovieClip();
k++;
}
_root.SoundHolderTangrams.makenoise("TangramRotateStopped");
};
_root.MonkeyFlip = function () {
_root.TangramDrop();
_root.choice = random(3);
_root.rotationFactor = 90 + (_root.choice * 90);
setProperty(_root.Puz1, _rotation , _root.Puz1._rotation + _root.rotationFactor);
setProperty(_root.DropArea0, _rotation , _root.DropArea0._rotation + _root.rotationFactor);
var k = 0;
while (k < 7) {
if (_root[("tan" + k) + "placedcolour"] != 1) {
VerticalDistance = _root["Tan" + k]._y - _root.Puz1._y;
HorizontalDistance = _root["Tan" + k]._x - _root.Puz1._x;
if (_root.choice == 0) {
setProperty(_root["Tan" + k], _x , _root.Puz1._x - VerticalDistance);
setProperty(_root["Tan" + k], _y , _root.Puz1._y + HorizontalDistance);
}
if (_root.choice == 1) {
setProperty(_root["Tan" + k], _x , _root.Puz1._x - HorizontalDistance);
setProperty(_root["Tan" + k], _y , _root.Puz1._y - VerticalDistance);
}
if (_root.choice == 2) {
setProperty(_root["Tan" + k], _x , _root.Puz1._x + VerticalDistance);
setProperty(_root["Tan" + k], _y , _root.Puz1._y - HorizontalDistance);
}
_root[("Tan" add k) add "x"] = _root["Tan" + k]._x;
_root[("Tan" add k) add "y"] = _root["Tan" + k]._y;
_root["Tan" + k]._rotation = _root["Tan" + k]._rotation + _root.rotationFactor;
_root[("Tan" + k) + "Rotation"] = _root["Tan" + k]._rotation;
_root.ScaleAny(k, "Tan", "no");
_root.RefreshTangramLocations();
}
k++;
}
};
_root.MonkeyFlipDone = function () {
_root.CheatSelected = 0;
_root.StageFlipped = 1;
_root.StageFlippedCounter++;
};
_root.CheckTimer = function () {
if (_root.LevelEnded == 0) {
_root.ThisTime = new Date();
_root.DateDiffRaw = ((_root.ThisTime - _root.StartTime) / 100) / 10;
_root.DateDiff = int(_root.DateDiffRaw);
if (0 < _root.DateDiff) {
_root.TimeDisplay = _root.formatTime(_root.DateDiff);
} else {
_root.TimeDisplay = 0;
}
tempMonkeyTime = _root["MonkeyTimerArray" + _root.PuzzleOrderArray[_root.PuzzleCounter - 1]][_root.MonkeyIndex];
tempMonkeyTime = Number(tempMonkeyTime) + Number(_root.MonkeySleepFactor);
if (tempMonkeyTime < _root.DateDiff) {
_root.MonkeyMove(_root.MonkeyIndex, "Monkey");
}
if ((_root.MonkeyThresholdFactor < _root.MonkeyThreshold) or (_root.CheatSelected == 1)) {
_root.MonkeyCheat();
}
if ((((_root.ThisTime - _root.StartTime) / 100) / 10) < _root.MedicationTimerMax) {
_root.MedicationTimer.Bar._x = _root.MedicationBarStartingPoint + (((_root.MedicationTimer.bar._width * ((_root.ThisTime - _root.StartTime) / 100)) / 10) / _root.MedicationTimerMax);
} else if (_root.StageFlippedCounter == 0) {
_root.StageFlippedCounter = 1;
_root.title.play();
_root.Medication._x = 358;
_root.Medication._y = 60;
}
_root.CalculateScore();
}
};
_root.SetupPuzzle = function () {
setProperty(_root.Puz1, _rotation , 0);
setProperty(_root.DropArea0, _rotation , 0);
_root.Puz1.attachMovie(["Puzzle" + _root.PuzzleOrderArray[_root.PuzzleCounter - 1]], "Puzzle", 0);
_root.DropArea0.attachMovie(["PuzzleSolution" + _root.PuzzleOrderArray[_root.PuzzleCounter - 1]], "PuzzleSolution", 10);
_root.MonkeyPuz1.attachMovie(["Puzzle" + _root.PuzzleOrderArray[_root.PuzzleCounter - 1]], "MonkeyPuzzle", 0);
_root.MonkeyDropArea0.attachMovie(["PuzzleSolution" + _root.PuzzleOrderArray[_root.PuzzleCounter - 1]], "MonkeyPuzzleSolution", 10);
};
_root.RotatePoints = function (PointX, PointY, LocationX, LocationY, rotateAngle) {
radAngle = (rotateAngle * Math.PI) / 180;
TempX = PointX - LocationX;
TempY = PointY - LocationY;
TempnewX = (TempX * Math.cos(radAngle)) - (TempY * Math.sin(radAngle));
TempnewY = (TempX * Math.sin(radAngle)) + (TempY * Math.cos(radAngle));
_root.newX = TempnewX + LocationX;
_root.newY = TempnewY + LocationY;
};
_root.RotateSetup = function () {
_root.SoundHolderTangrams.makenoise("TangramRotateStarted");
_root.StartMouseXpos = math.floor(_root._xmouse);
_root.StartMouseYpos = math.floor(_root._ymouse);
_root.StartMouseAngle = math.atan2(_root.StartMouseXpos - _root["Tan" add _root.CurrentTangram]._x, _root.StartMouseYpos - _root["Tan" add _root.CurrentTangram]._y);
_root.StartMouseAngle = Math.floor(_root.StartMouseAngle / (Math.PI/180));
_root.TangramStartAngle = _root["tan" + _root.CurrentTangram]._rotation;
};
movieclip.prototype.RotateTangram = function () {
_root.NewMouseAngle = math.atan2(math.floor(_root._xmouse) - _root["Tan" add _root.CurrentTangram]._x, math.floor(_root._ymouse) - _root["Tan" add _root.CurrentTangram]._y);
_root.NewMouseAngle = Math.floor(_root.NewMouseAngle / (Math.PI/180));
_root.DeltaAngle = Math.floor((_root.StartMouseAngle - _root.NewMouseAngle) / _root.RotateSegment) * _root.RotateSegment;
setProperty(_root["Tan" add _root.CurrentTangram], _rotation , _root.DeltaAngle + _root.TangramStartAngle);
};
_root.TangramLift = function () {
if (_root.TangramNudged == 0) {
_root.SoundHolderJack.makenoise("TangramLifted");
}
_root[("Tan" add _root.CurrentTangram) add "xLast"] = math.floor(_root[("Tan" add _root.CurrentTangram) add "x"]);
_root[("Tan" add _root.CurrentTangram) add "yLast"] = math.floor(_root[("Tan" add _root.CurrentTangram) add "y"]);
_root[("Tan" add _root.CurrentTangram) add "RotationLast"] = _root[("Tan" add _root.CurrentTangram) add "Rotation"];
_root.SortTangramLevels();
_root.CalculateTotalTansPlacedLegal();
_root["Tan" + _root.CurrentTangram].gotoandstop(1);
_root[("Tan" + _root.CurrentTangram) + "placedcolour"] = 1;
};
_root.PlaceTanBackHome = function () {
_root["Tan" + _root.CurrentTangram]._rotation = 0;
_root["Tan" + _root.CurrentTangram]._x = _root[("Tan" + _root.CurrentTangram) + "xHome"];
_root["Tan" + _root.CurrentTangram]._y = _root[("Tan" + _root.CurrentTangram) + "yHome"];
_root[("Tan" + _root.CurrentTangram) + "rotation"] = 0;
_root[("Tan" + _root.CurrentTangram) + "x"] = _root[("Tan" + _root.CurrentTangram) + "xHome"];
_root[("Tan" + _root.CurrentTangram) + "y"] = _root[("Tan" + _root.CurrentTangram) + "yHome"];
_root.ScaleAny(_root.CurrentTangram, "Tan", "no");
};
_root.PlaceTangramHere = function () {
if (_root.DruggedTan == _root.CurrentTangram) {
if (_root.DropArea0.hitTest(_root["Tan" add _root.CurrentTangram]._x, _root["Tan" add _root.CurrentTangram]._y, true)) {
_root.Drug1();
_root["Tan" + _root.CurrentTangram].attachMovie("DrugFadeOut", "TanDrug", 635);
_root.bobopsychout.gotoandplay(2);
_root.MonkeySleepFactor = 10;
}
}
};
_root.TangramDrop = function () {
_root.TangramLifted = 0;
_root.TangramRotating = 0;
_root.HitMade = 0;
_root.BorderHitMade = 0;
_root.TangramScaleSound = "none";
if (_root["tan" + _root.CurrentTangram]._y < _root.TanYBoundary) {
_root.PlaceTanBackHome();
} else {
_root[("Tan" + _root.CurrentTangram) + "x"] = _root["Tan" + _root.CurrentTangram]._x;
_root[("Tan" + _root.CurrentTangram) + "y"] = _root["Tan" + _root.CurrentTangram]._y;
_root.ScaleAny(_root.CurrentTangram, "Tan", "no");
_root.CheckPercentIntersection();
if (0 < _root.BorderHitMade) {
tempcommand = "sendhome";
}
if (0 < _root.HitMade) {
if (_root.BorderHitMade == 0) {
tempcommand = "placeillegal";
}
}
if (_root.HitMade == 0) {
if (_root.BorderHitMade == 0) {
tempcommand = "placelegal";
}
}
if (tempcommand == "sendhome") {
_root["Tan" + _root.CurrentTangram]._rotation = _root[("Tan" + _root.CurrentTangram) + "rotationlast"];
_root["Tan" + _root.CurrentTangram]._x = _root[("Tan" + _root.CurrentTangram) + "xlast"];
_root["Tan" + _root.CurrentTangram]._y = _root[("Tan" + _root.CurrentTangram) + "ylast"];
_root[("Tan" + _root.CurrentTangram) + "rotation"] = _root[("Tan" + _root.CurrentTangram) + "rotationlast"];
_root[("Tan" + _root.CurrentTangram) + "x"] = _root[("Tan" + _root.CurrentTangram) + "xlast"];
_root[("Tan" + _root.CurrentTangram) + "y"] = _root[("Tan" + _root.CurrentTangram) + "ylast"];
_root.ScaleAny(_root.CurrentTangram, "Tan", "no");
if (_root.TangramNudged == 0) {
_root.SoundHolderTangrams.makenoise("TangramDroppedBack");
}
_root["Tan" + _root.CurrentTangram].gotoAndStop(1);
_root[("Tan" + _root.CurrentTangram) + "placedcolour"] = 1;
}
if (tempcommand == "placeillegal") {
_root["Tan" + _root.CurrentTangram].gotoAndStop(3);
_root[("Tan" + _root.CurrentTangram) + "placedcolour"] = 3;
_root.PlaceTangramHere();
}
if (tempcommand == "placelegal") {
_root.PlaceTangramHere();
if (_root.TangramNudged == 0) {
_root.SoundHolderTangrams.makenoise("TangramDropped");
}
_root["Tan" + _root.CurrentTangram].gotoAndStop(2);
_root[("Tan" + _root.CurrentTangram) + "placedcolour"] = 2;
}
}
_root.CalculateTotalTansPlacedLegal();
};
_root.CheckPercentIntersection = function () {
if (_root.HitMade == 0) {
var j = 1;
while (j < (_root[("Tan" add _root.CurrentTangram) add "NumCorners"] + 1)) {
x1 = _root[((("Tan" add _root.CurrentTangram) add "Corner") add j) add "x"];
y1 = _root[((("Tan" add _root.CurrentTangram) add "Corner") add j) add "y"];
if (j < _root[("Tan" add _root.CurrentTangram) add "NumCorners"]) {
x2 = _root[((("Tan" add _root.CurrentTangram) add "Corner") add (j + 1)) add "x"];
y2 = _root[((("Tan" add _root.CurrentTangram) add "Corner") add (j + 1)) add "y"];
} else {
x2 = _root[("Tan" add _root.CurrentTangram) add "Corner1x"];
y2 = _root[("Tan" add _root.CurrentTangram) add "Corner1y"];
}
xRange = x2 - x1;
yRange = y2 - y1;
var intercheck = 1;
while (intercheck < _root.IntercheckMax) {
xCheck = x1 + ((intercheck / _root.IntercheckMax) * xRange);
yCheck = y1 + ((intercheck / _root.IntercheckMax) * yRange);
var k = 0;
while (k < 7) {
if (k != _root.CurrentTangram) {
if (_root["Tan" add k].hitTest(xCheck, yCheck, true)) {
_root.HitMade = 1;
}
if (_root.DropArea0.hitTest(xCheck, yCheck, true)) {
} else {
_root.HitMade = 1;
}
}
k++;
}
intercheck++;
}
j++;
}
}
};
_root.NudgeTangram = function (NudgeValue) {
_root.TangramLift();
if (NudgeValue == 37) {
NudgeX = _root[("Tan" add _root.CurrentTangram) add "xLast"] - _root.NudgeFactor;
setProperty(_root["Tan" add _root.CurrentTangram], _x , NudgeX);
}
if (NudgeValue == 38) {
NudgeY = _root[("Tan" add _root.CurrentTangram) add "yLast"] - _root.NudgeFactor;
setProperty(_root["Tan" add _root.CurrentTangram], _y , NudgeY);
}
if (NudgeValue == 39) {
NudgeX = _root[("Tan" add _root.CurrentTangram) add "xLast"] + _root.NudgeFactor;
setProperty(_root["Tan" add _root.CurrentTangram], _x , NudgeX);
}
if (NudgeValue == 40) {
NudgeY = _root[("Tan" add _root.CurrentTangram) add "yLast"] + _root.NudgeFactor;
setProperty(_root["Tan" add _root.CurrentTangram], _y , NudgeY);
}
_root.NudgeFactor = _root.NudgeFactor * 1.2;
_root.TangramDrop();
_root.TangramNudged = 0;
_root.SoundHolderJack.makenoise("TangramNudged");
};
_root.TangramCheckPoints = function () {
_root.DeltaRotation = -(_root[("Tan" add _root.CurrentTangram) add "rotation"] - _root["Tan" add _root.CurrentTangram]._rotation);
var j = 1;
while (j < (_root[("Tan" add _root.CurrentTangram) add "NumCorners"] + 1)) {
_root.RotatePoints(_root[((("Tan" add _root.CurrentTangram) add "Corner") add j) add "x"], _root[((("Tan" add _root.CurrentTangram) add "Corner") add j) add "y"], _root[("Tan" add _root.CurrentTangram) add "x"], _root[("Tan" add _root.CurrentTangram) add "y"], _root.DeltaRotation);
_root[((("Tan" add _root.CurrentTangram) add "Corner") add j) add "x"] = _root.newX;
_root[((("Tan" add _root.CurrentTangram) add "Corner") add j) add "y"] = _root.newy;
if (_root.newX < _root.PlayDivider._x) {
_root.HitMade = 1;
}
if (_root.Puz1.hitTest(_root.newX, _root.newY, true)) {
_root.HitMade = 1;
}
if (_root.newX < _root.TanXBoundary) {
_root.BorderHitMade = 1;
}
if (_root.newY < _root.TanYBoundary) {
_root.BorderHitMade = 1;
}
var k = 0;
while (k < 7) {
if (k != _root.CurrentTangram) {
if (_root["Tan" add k].hitTest(_root.newX, _root.newY, true)) {
_root.HitMade = 1;
}
}
k++;
}
j++;
}
var k = 0;
while (k < 7) {
if (k != _root.CurrentTangram) {
_root.MaxCorners = _root[("Tan" add k) add "NumCorners"];
var m = 1;
while (m < (_root.MaxCorners + 1)) {
if (_root["Tan" add _root.CurrentTangram].hitTest(_root[((("Tan" add k) add "Corner") add m) add "x"], _root[((("Tan" add k) add "Corner") add m) add "y"], true)) {
_root.HitMade = 1;
}
m++;
}
}
k++;
}
};
_root.TangramTranslate = function () {
TanXpos = _root[("Tan" add _root.CurrentTangram) add "x"];
TanYpos = _root[("Tan" add _root.CurrentTangram) add "y"];
Xpos = _root["Tan" add _root.CurrentTangram]._x;
Ypos = _root["Tan" add _root.CurrentTangram]._y;
_root.DeltaX = Xpos - TanXpos;
_root.DeltaY = Ypos - TanYpos;
_root.TranslateCentersAndCorners();
};
_root.TangramTranslateBack = function () {
TanXpos = _root["Tan" add _root.CurrentTangram]._x;
TanYpos = _root["Tan" add _root.CurrentTangram]._y;
Xpos = _root[("Tan" add _root.CurrentTangram) add "xLast"];
Ypos = _root[("Tan" add _root.CurrentTangram) add "yLast"];
_root.DeltaX = Xpos - TanXpos;
_root.DeltaY = Ypos - TanYpos;
_root.TranslateCentersAndCorners();
};
_root.TranslateCentersAndCorners = function () {
_root[("Tan" add _root.CurrentTangram) add "x"] = _root[("Tan" add _root.CurrentTangram) add "x"] + _root.deltax;
_root[("Tan" add _root.CurrentTangram) add "y"] = _root[("Tan" add _root.CurrentTangram) add "y"] + _root.deltay;
var j = 1;
while (j < (_root[("Tan" add _root.CurrentTangram) add "NumCorners"] + 1)) {
_root[((("Tan" add _root.CurrentTangram) add "Corner") add j) add "x"] = _root[((("Tan" add _root.CurrentTangram) add "Corner") add j) add "x"] + _root.DeltaX;
_root[((("Tan" add _root.CurrentTangram) add "Corner") add j) add "y"] = _root[((("Tan" add _root.CurrentTangram) add "Corner") add j) add "y"] + _root.DeltaY;
j++;
}
};
_root.InitTangramLocations = function () {
_root.Tan0NumCorners = 3;
_root.Tan0Rotation = 0;
_root.Tan0RotationLast = _root.Tan0Rotation;
_root.Tan0Placed = 0;
_root.Tan0x = _root.Tan0._x;
_root.Tan0y = _root.Tan0._y;
_root.Tan0xLast = _root.Tan0x;
_root.Tan0yLast = _root.Tan0y;
_root.Tan1NumCorners = 3;
_root.Tan1Rotation = 0;
_root.Tan1RotationLast = _root.Tan1Rotation;
_root.Tan1Placed = 0;
_root.Tan1x = _root.Tan1._x;
_root.Tan1y = _root.Tan1._y;
_root.Tan1xLast = _root.Tan1x;
_root.Tan1yLast = _root.Tan1y;
_root.Tan2NumCorners = 3;
_root.Tan2Rotation = 0;
_root.Tan2RotationLast = _root.Tan2Rotation;
_root.Tan2Placed = 0;
_root.Tan2x = _root.Tan2._x;
_root.Tan2y = _root.Tan2._y;
_root.Tan2xLast = _root.Tan2x;
_root.Tan2yLast = _root.Tan2y;
_root.Tan3NumCorners = 4;
_root.Tan3Rotation = 0;
_root.Tan3RotationLast = _root.Tan3Rotation;
_root.Tan3Placed = 0;
_root.Tan3x = _root.Tan3._x;
_root.Tan3y = _root.Tan3._y;
_root.Tan3xLast = _root.Tan3x;
_root.Tan3yLast = _root.Tan3y;
_root.Tan4NumCorners = 3;
_root.Tan4Rotation = 0;
_root.Tan4RotationLast = _root.Tan4Rotation;
_root.Tan4Placed = 0;
_root.Tan4x = _root.Tan4._x;
_root.Tan4y = _root.Tan4._y;
_root.Tan4xLast = _root.Tan4x;
_root.Tan4yLast = _root.Tan4y;
_root.Tan5NumCorners = 4;
_root.Tan5Rotation = 0;
_root.Tan5RotationLast = _root.Tan5Rotation;
_root.Tan5Placed = 0;
_root.Tan5x = _root.Tan5._x;
_root.Tan5y = _root.Tan5._y;
_root.Tan5xLast = _root.Tan5x;
_root.Tan5yLast = _root.Tan5y;
_root.Tan6NumCorners = 3;
_root.Tan6Rotation = 0;
_root.Tan6RotationLast = _root.Tan6Rotation;
_root.Tan6Placed = 0;
_root.Tan6x = _root.Tan6._x;
_root.Tan6y = _root.Tan6._y;
_root.Tan6xLast = _root.Tan6x;
_root.Tan6yLast = _root.Tan6y;
_root.CalculateTangramCornerLocations();
};
_root.CalculateTangramCornerLocations = function () {
if (_root.Tan0._rotation == 0) {
_root.Tan0Corner1x = _root.Tan0._x - (_root.Tan0._width / 2);
_root.Tan0Corner1y = _root.Tan0._y + (_root.Tan0._height / 2);
_root.Tan0Corner2x = _root.Tan0._x - (_root.Tan0._width / 2);
_root.Tan0Corner2y = _root.Tan0._y - (_root.Tan0._height / 2);
_root.Tan0Corner3x = _root.Tan0._x + (_root.Tan0._width / 2);
_root.Tan0Corner3y = _root.Tan0._y;
}
if (_root.Tan1._rotation == 0) {
_root.Tan1Corner1x = _root.Tan1._x - (_root.Tan1._width / 2);
_root.Tan1Corner1y = _root.Tan1._y - (_root.Tan1._height / 2);
_root.Tan1Corner2x = _root.Tan1._x + (_root.Tan1._width / 2);
_root.Tan1Corner2y = _root.Tan1._y - (_root.Tan1._height / 2);
_root.Tan1Corner3x = _root.Tan1._x;
_root.Tan1Corner3y = _root.Tan1._y + (_root.Tan1._height / 2);
}
if (_root.Tan2._rotation == 0) {
_root.Tan2Corner1x = _root.Tan2._x - (_root.Tan2._width / 2);
_root.Tan2Corner1y = _root.Tan2._y + (_root.Tan2._height / 2);
_root.Tan2Corner2x = _root.Tan2._x;
_root.Tan2Corner2y = _root.Tan2._y - (_root.Tan2._height / 2);
_root.Tan2Corner3x = _root.Tan2._x + (_root.Tan2._width / 2);
_root.Tan2Corner3y = _root.Tan2._y + (_root.Tan2._height / 2);
}
if (_root.Tan3._rotation == 0) {
_root.Tan3Corner1x = _root.Tan3._x - (_root.Tan3._width / 2);
_root.Tan3Corner1y = _root.Tan3._y;
_root.Tan3Corner2x = _root.Tan3._x;
_root.Tan3Corner2y = _root.Tan3._y - (_root.Tan3._height / 2);
_root.Tan3Corner3x = _root.Tan3._x + (_root.Tan3._width / 2);
_root.Tan3Corner3y = _root.Tan3._y;
_root.Tan3Corner4x = _root.Tan3._x;
_root.Tan3Corner4y = _root.Tan3._y + (_root.Tan3._height / 2);
}
if (_root.Tan4._rotation == 0) {
_root.Tan4Corner1x = _root.Tan4._x - (_root.Tan4._width / 2);
_root.Tan4Corner1y = _root.Tan4._y;
_root.Tan4Corner2x = _root.Tan4._x + (_root.Tan4._width / 2);
_root.Tan4Corner2y = _root.Tan4._y - (_root.Tan4._height / 2);
_root.Tan4Corner3x = _root.Tan4._x + (_root.Tan4._width / 2);
_root.Tan4Corner3y = _root.Tan4._y + (_root.Tan4._height / 2);
}
if (_root.Tan5._rotation == 0) {
_root.Tan5Corner1x = _root.Tan5._x - (_root.Tan5._width / 2);
_root.Tan5Corner1y = _root.Tan5._y + (_root.Tan5._height / 2);
_root.Tan5Corner2x = _root.Tan5._x - (_root.Tan5._width / 2);
_root.Tan5Corner2y = _root.Tan5._y - (_root.Tan5._height / 6);
_root.Tan5Corner3x = _root.Tan5._x + (_root.Tan5._width / 2);
_root.Tan5Corner3y = _root.Tan5._y - (_root.Tan5._height / 2);
_root.Tan5Corner4x = _root.Tan5._x + (_root.Tan5._width / 2);
_root.Tan5Corner4y = _root.Tan5._y + (_root.Tan5._height / 6);
}
if (_root.Tan6._rotation == 0) {
_root.Tan6Corner1x = _root.Tan6._x - (_root.Tan6._width / 2);
_root.Tan6Corner1y = _root.Tan6._y + (_root.Tan6._height / 2);
_root.Tan6Corner2x = _root.Tan6._x + (_root.Tan6._width / 2);
_root.Tan6Corner2y = _root.Tan6._y - (_root.Tan6._height / 2);
_root.Tan6Corner3x = _root.Tan6._x + (_root.Tan6._width / 2);
_root.Tan6Corner3y = _root.Tan6._y + (_root.Tan6._height / 2);
}
};
_root.InitPuzzleLocations = function () {
_root.TangramScaleFactor0 = 50;
_root.Puz0Tan0x = 80;
_root.Puz0Tan0y = 275.2;
_root.Puz0Tan0SolutionRotation = 0;
_root.Puz0Tan1x = 125;
_root.Puz0Tan1y = 230.2;
_root.Puz0Tan1SolutionRotation = 0;
_root.Puz0Tan2x = 80;
_root.Puz0Tan2y = 342.7;
_root.Puz0Tan2SolutionRotation = 0;
_root.Puz0Tan3x = 125;
_root.Puz0Tan3y = 320.2;
_root.Puz0Tan3SolutionRotation = 0;
_root.Puz0Tan4x = 147.5;
_root.Puz0Tan4y = 275.2;
_root.Puz0Tan4SolutionRotation = 0;
_root.Puz0Tan5x = 192.5;
_root.Puz0Tan5y = 252.7;
_root.Puz0Tan5SolutionRotation = 0;
_root.Puz0Tan6x = 170;
_root.Puz0Tan6y = 320.2;
_root.Puz0Tan6SolutionRotation = 0;
_root.TangramScaleFactor1 = 31.3;
_root.Puz1Tan0x = 125.1;
_root.Puz1Tan0y = 275.3;
_root.Puz1Tan0SolutionRotation = -135;
_root.Puz1Tan1x = 125.1;
_root.Puz1Tan1y = 355.3;
_root.Puz1Tan1SolutionRotation = -45;
_root.Puz1Tan2x = 155.2;
_root.Puz1Tan2y = 365.3;
_root.Puz1Tan2SolutionRotation = -135;
_root.Puz1Tan3x = 125.1;
_root.Puz1Tan3y = 235.3;
_root.Puz1Tan3SolutionRotation = 45;
_root.Puz1Tan4x = 94.8;
_root.Puz1Tan4y = 265.3;
_root.Puz1Tan4SolutionRotation = 135;
_root.Puz1Tan5x = 145.1;
_root.Puz1Tan5y = 195.3;
_root.Puz1Tan5SolutionRotation = 45;
_root.Puz1Tan6x = 105.1;
_root.Puz1Tan6y = 175.3;
_root.Puz1Tan6SolutionRotation = 45;
_root.TangramScaleFactor2 = 27.6;
_root.Puz2Tan0x = 171;
_root.Puz2Tan0y = 219.3;
_root.Puz2Tan0SolutionRotation = -5;
_root.Puz2Tan1x = 105;
_root.Puz2Tan1y = 237.8;
_root.Puz2Tan1SolutionRotation = -170;
_root.Puz2Tan2x = 126.1;
_root.Puz2Tan2y = 363.9;
_root.Puz2Tan2SolutionRotation = 0;
_root.Puz2Tan3x = 174;
_root.Puz2Tan3y = 281.2;
_root.Puz2Tan3SolutionRotation = 25;
_root.Puz2Tan4x = 159.7;
_root.Puz2Tan4y = 332.4;
_root.Puz2Tan4SolutionRotation = -45;
_root.Puz2Tan5x = 133.3;
_root.Puz2Tan5y = 341.2;
_root.Puz2Tan5SolutionRotation = 135;
_root.Puz2Tan6x = 150.9;
_root.Puz2Tan6y = 306.1;
_root.Puz2Tan6SolutionRotation = 135;
_root.TangramScaleFactor3 = 31.2;
_root.Puz3Tan0x = 138.5;
_root.Puz3Tan0y = 230.1;
_root.Puz3Tan0SolutionRotation = -85;
_root.Puz3Tan1x = 99.9;
_root.Puz3Tan1y = 193.4;
_root.Puz3Tan1SolutionRotation = -225;
_root.Puz3Tan2x = 203.6;
_root.Puz3Tan2y = 326.3;
_root.Puz3Tan2SolutionRotation = 25;
_root.Puz3Tan3x = 53.7;
_root.Puz3Tan3y = 252.1;
_root.Puz3Tan3SolutionRotation = -65;
_root.Puz3Tan4x = 184.5;
_root.Puz3Tan4y = 347.9;
_root.Puz3Tan4SolutionRotation = 130;
_root.Puz3Tan5x = 106.6;
_root.Puz3Tan5y = 281.1;
_root.Puz3Tan5SolutionRotation = -65;
_root.Puz3Tan6x = 144.3;
_root.Puz3Tan6y = 314.2;
_root.Puz3Tan6SolutionRotation = 70;
_root.TangramScaleFactor4 = 28.1;
_root.Puz4Tan0x = 161.3;
_root.Puz4Tan0y = 227.2;
_root.Puz4Tan0SolutionRotation = -135;
_root.Puz4Tan1x = 125.7;
_root.Puz4Tan1y = 262.9;
_root.Puz4Tan1SolutionRotation = -45;
_root.Puz4Tan2x = 162.5;
_root.Puz4Tan2y = 274.4;
_root.Puz4Tan2SolutionRotation = -90;
_root.Puz4Tan3x = 89.9;
_root.Puz4Tan3y = 298.8;
_root.Puz4Tan3SolutionRotation = -45;
_root.Puz4Tan4x = 116.7;
_root.Puz4Tan4y = 289.8;
_root.Puz4Tan4SolutionRotation = 45;
_root.Puz4Tan5x = 54.1;
_root.Puz4Tan5y = 280.8;
_root.Puz4Tan5SolutionRotation = 135;
_root.Puz4Tan6x = 36.2;
_root.Puz4Tan6y = 316.5;
_root.Puz4Tan6SolutionRotation = -45;
_root.TangramScaleFactor5 = 22.4;
_root.Puz5Tan0x = 102.2;
_root.Puz5Tan0y = 331.3;
_root.Puz5Tan0SolutionRotation = -45;
_root.Puz5Tan1x = 144;
_root.Puz5Tan1y = 245.7;
_root.Puz5Tan1SolutionRotation = 45;
_root.Puz5Tan2x = 179.7;
_root.Puz5Tan2y = 224.3;
_root.Puz5Tan2SolutionRotation = 135;
_root.Puz5Tan3x = 144;
_root.Puz5Tan3y = 274.2;
_root.Puz5Tan3SolutionRotation = -45;
_root.Puz5Tan4x = 122.7;
_root.Puz5Tan4y = 262.3;
_root.Puz5Tan4SolutionRotation = -135;
_root.Puz5Tan5x = 129.8;
_root.Puz5Tan5y = 302.7;
_root.Puz5Tan5SolutionRotation = 45;
_root.Puz5Tan6x = 158.3;
_root.Puz5Tan6y = 202.9;
_root.Puz5Tan6SolutionRotation = 135;
_root.TangramScaleFactor6 = 30.4;
_root.Puz6Tan0x = 200.8;
_root.Puz6Tan0y = 293.9;
_root.Puz6Tan0SolutionRotation = 45;
_root.Puz6Tan1x = 162.2;
_root.Puz6Tan1y = 255.3;
_root.Puz6Tan1SolutionRotation = 135;
_root.Puz6Tan2x = 75.3;
_root.Puz6Tan2y = 226.3;
_root.Puz6Tan2SolutionRotation = -135;
_root.Puz6Tan3x = 46.4;
_root.Puz6Tan3y = 216.7;
_root.Puz6Tan3SolutionRotation = 45;
_root.Puz6Tan4x = 94.7;
_root.Puz6Tan4y = 245.6;
_root.Puz6Tan4SolutionRotation = 135;
_root.Puz6Tan5x = 123.6;
_root.Puz6Tan5y = 274.6;
_root.Puz6Tan5SolutionRotation = -45;
_root.Puz6Tan6x = 181.5;
_root.Puz6Tan6y = 313.1;
_root.Puz6Tan6SolutionRotation = 45;
_root.TangramScaleFactor7 = 28.7;
_root.Puz7Tan0x = 130.9;
_root.Puz7Tan0y = 302.2;
_root.Puz7Tan0SolutionRotation = 180;
_root.Puz7Tan1x = 130.9;
_root.Puz7Tan1y = 250.6;
_root.Puz7Tan1SolutionRotation = -90;
_root.Puz7Tan2x = 150.8;
_root.Puz7Tan2y = 366;
_root.Puz7Tan2SolutionRotation = -135;
_root.Puz7Tan3x = 130.9;
_root.Puz7Tan3y = 199;
_root.Puz7Tan3SolutionRotation = 0;
_root.Puz7Tan4x = 143.8;
_root.Puz7Tan4y = 224.8;
_root.Puz7Tan4SolutionRotation = 0;
_root.Puz7Tan5x = 123.4;
_root.Puz7Tan5y = 338.6;
_root.Puz7Tan5SolutionRotation = -45;
_root.Puz7Tan6x = 105.2;
_root.Puz7Tan6y = 375.1;
_root.Puz7Tan6SolutionRotation = -135;
_root.TangramScaleFactor8 = 29.3;
_root.Puz8Tan0x = 125.2;
_root.Puz8Tan0y = 254.9;
_root.Puz8Tan0SolutionRotation = 180;
_root.Puz8Tan1x = 125.2;
_root.Puz8Tan1y = 307.6;
_root.Puz8Tan1SolutionRotation = -90;
_root.Puz8Tan2x = 85.6;
_root.Puz8Tan2y = 333.9;
_root.Puz8Tan2SolutionRotation = -90;
_root.Puz8Tan3x = 151.5;
_root.Puz8Tan3y = 333.9;
_root.Puz8Tan3SolutionRotation = 0;
_root.Puz8Tan4x = 138.4;
_root.Puz8Tan4y = 202.2;
_root.Puz8Tan4SolutionRotation = 180;
_root.Puz8Tan5x = 112;
_root.Puz8Tan5y = 215.3;
_root.Puz8Tan5SolutionRotation = 180;
_root.Puz8Tan6x = 125.2;
_root.Puz8Tan6y = 371.3;
_root.Puz8Tan6SolutionRotation = -135;
};
_root.InitTanLocations = function () {
_root.Tan0xHome = _root.Tan0x;
_root.Tan0yHome = _root.Tan0y;
_root.Tan1xHome = _root.Tan1x;
_root.Tan1yHome = _root.Tan1y;
_root.Tan2xHome = _root.Tan2x;
_root.Tan2yHome = _root.Tan2y;
_root.Tan3xHome = _root.Tan3x;
_root.Tan3yHome = _root.Tan3y;
_root.Tan4xHome = _root.Tan4x;
_root.Tan4yHome = _root.Tan4y;
_root.Tan5xHome = _root.Tan5x;
_root.Tan5yHome = _root.Tan5y;
_root.Tan6xHome = _root.Tan6x;
_root.Tan6yHome = _root.Tan6y;
};
_root.InitMonkeyTanLocations = function () {
_root.MonkeyTan0xHome = _root.MonkeyTan0._x;
_root.MonkeyTan0yHome = _root.MonkeyTan0._y;
_root.MonkeyTan1xHome = _root.MonkeyTan1._x;
_root.MonkeyTan1yHome = _root.MonkeyTan1._y;
_root.MonkeyTan2xHome = _root.MonkeyTan2._x;
_root.MonkeyTan2yHome = _root.MonkeyTan2._y;
_root.MonkeyTan3xHome = _root.MonkeyTan3._x;
_root.MonkeyTan3yHome = _root.MonkeyTan3._y;
_root.MonkeyTan4xHome = _root.MonkeyTan4._x;
_root.MonkeyTan4yHome = _root.MonkeyTan4._y;
_root.MonkeyTan5xHome = _root.MonkeyTan5._x;
_root.MonkeyTan5yHome = _root.MonkeyTan5._y;
_root.MonkeyTan6xHome = _root.MonkeyTan6._x;
_root.MonkeyTan6yHome = _root.MonkeyTan6._y;
};
_root.ResetPuzzleLocations = function () {
var k = 0;
while (k < 7) {
setProperty(_root["Tan" + k], _x , _root[("Tan" + k) + "xHome"]);
setProperty(_root["Tan" + k], _y , _root[("Tan" + k) + "yHome"]);
setProperty(_root["Tan" + k], _rotation , 0);
setProperty(_root["MonkeyTan" + k], _x , _root[("MonkeyTan" + k) + "xHome"]);
setProperty(_root["MonkeyTan" + k], _y , _root[("MonkeyTan" + k) + "yHome"]);
setProperty(_root["MonkeyTan" + k], _rotation , 0);
_root["Tan" + k].gotoandstop(1);
_root[("Tan" + k) + "placedcolour"] = 1;
k++;
}
_root.ResetTanSizes();
};
_root.ResetTanSizes = function () {
var k = 0;
while (k < 7) {
if (_root["MonkeyTan" + k].Size == 1) {
_root.ScaleAny(k, "MonkeyTan", "down");
}
if (_root["Tan" + k].Size == 1) {
_root.ScaleAny(k, "Tan", "down");
}
k++;
}
};
_root.scaleANY = function (TCT, WT, UpDownNo) {
if (UpDownNo == "up") {
ScaleFactor = _root["TangramScaleFactor" + (_root.PuzzleOrderArray[_root.PuzzleCounter - 1] - 1)];
ScaleFactor = ScaleFactor * _root.SizeDifficultyFactor;
_root[WT + TCT].Size = 1;
_root[WT + TCT]._yscale = ScaleFactor;
_root[WT + TCT]._xscale = ScaleFactor;
if (WT == "Tan") {
_root.SoundHolderJack.makenoise("TangramScaleUp");
}
}
if (UpDownNo == "down") {
_root[WT + TCT].Size = 0;
_root[WT + TCT]._yscale = 25;
_root[WT + TCT]._xscale = 25;
if (WT == "Tan") {
_root.SoundHolderJack.makenoise("TangramScaleDown");
}
}
_root[(WT + TCT) + "rotationtemp"] = _root[WT + TCT]._rotation;
_root[WT + TCT]._rotation = 0;
_root[(WT + TCT) + "rotation"] = 0;
_root.CalculateTangramCornerLocations();
var j = 1;
while (j < (_root[(WT + TCT) + "NumCorners"] + 1)) {
_root.RotatePoints(_root[(((WT + TCT) + "Corner") + j) + "x"], _root[(((WT + TCT) + "Corner") + j) + "y"], _root[(WT + TCT) + "x"], _root[(WT + TCT) + "y"], _root[(WT + TCT) + "rotationtemp"]);
_root[(((WT + TCT) + "Corner") + j) + "x"] = _root.newX;
_root[(((WT + TCT) + "Corner") + j) + "y"] = _root.newy;
j++;
}
_root[WT + TCT]._rotation = _root[(WT + TCT) + "rotationtemp"];
_root[(WT + TCT) + "rotation"] = _root[(WT + TCT) + "rotationtemp"];
};
_root.MonitorTangrams = function (TheCurrentTangram, WhichTan, theyMouse) {
if ((Theymouse < _root.TanYBoundary) and (_root[WhichTan + TheCurrentTangram].Size == 1)) {
if ((_root.TangramLifted == 1) and (_root.TangramScaleSound != "down")) {
_root.TangramScaleSound = "down";
_root.ScaleAny(TheCurrentTangram, "Tan", "down");
}
if (_root.MonkeyDiscardActive == 1) {
_root.ScaleAny(TheCurrentTangram, "Tan", "down");
}
}
if ((_root.TanYBoundary < Theymouse) and (_root[WhichTan + TheCurrentTangram].Size == 0)) {
if ((_root.TangramLifted == 1) and (_root.TangramScaleSound != "up")) {
_root.TangramScaleSound = "up";
_root.ScaleAny(TheCurrentTangram, "Tan", "up");
}
if (_root.MonkeyDiscardActive == 1) {
_root.ScaleAny(TheCurrentTangram, "Tan", "up");
}
}
};
_root.MonitorMonkeyTangrams = function (TheCurrentTangram, WhichTan, TheMonkeyymouse) {
if ((TheMonkeyymouse < _root.MonkeyTanYBoundary) + (_root[WhichTan + TheCurrentTangram].Size == 1)) {
_root.ScaleAny(TheCurrentTangram, "MonkeyTan", "down");
}
if ((_root.MonkeyTanYBoundary + (_root[WhichTan + TheCurrentTangram].Size == 0)) < TheMonkeyymouse) {
_root.ScaleAny(TheCurrentTangram, "MonkeyTan", "up");
}
};
_root.SortTangramLevels = function () {
var k = 0;
while (k < 7) {
if (k == _root.CurrentTangram) {
_root["Tan" + k].swapDepths(100);
} else {
_root["Tan" + k].swapDepths(99 - k);
}
k++;
}
};
_root.InsertRandomDrug = function () {
_root.DrugAdministered = 1;
DrugTan = random(6);
var j = 0;
while (j < 2000) {
j++;
}
_root.SoundHolderTangrams.makenoise("TangramDrugInserted");
var k = 0;
while (k < 7) {
if (k == DrugTan) {
_root.DruggedTan = k;
_root["Tan" + k].attachMovie("TanDrug", "TanDrug", 635);
} else {
removeMovieClip(_root["Tan" + k].TanDrug);
}
k++;
}
};
_root.formatTime = function (time) {
m = Math.floor(time / 60);
s = time - (m * 60);
if ((m < 10) && (0 < m)) {
m = "0" + m;
} else if (0 >= m) {
m = "00";
}
if (s < 10) {
s = "0" + s;
}
return((m + ":") + s);
};
_root.formatTo = function (amount) {
var myString = amount.toString();
var myDot = myString.indexOf(".");
var coin = "$";
if (0 >= myDot) {
var myvalue = myString;
var cents = "00";
} else {
var myvalue = myString.substr(0, myDot);
var cents = myString.substr(myDot + 1, myString.length);
}
if (0 < myvalue.length) {
var myLength = myvalue.length;
var divide = (myLength / 3);
if ((myLength % 3) == 0) {
var divide = ((myLength / 3) - 1);
}
var i = 1;
while (divide >= i) {
var myvalue = ((myvalue.substr(0, (myLength - (3 * i)) - (i - 1)) + ",") + myvalue.substr((myLength - (3 * i)) - (i - 1), (3 * i) + (i - 1)));
myLength = myvalue.length;
i++;
}
dollars = myvalue;
}
if (2 < cents.length) {
cents = Math.round((cents.substr(0, 2) + ".") + cents.substr(2, cents.length));
}
if (cents.length == 1) {
cents = cents + "0";
}
if (amount < 0) {
if (dollars.indexOf(",") == 2) {
dollars = "-" + dollars.substring(dollars.indexOf(",") + 1, dollars.length);
}
}
return(((coin + dollars) + ".") + cents);
};
_root.SetupLevelIntro = function () {
_root.LevelEnded = 1;
_root.attachMovie("LevelIntro", "LevelIntro", 110);
};
_root.GameWin = function () {
_root.LevelEnded = 1;
removeMovieClip(_root.LevelEndClip);
_root.CleanUpTans();
_root.Points = _root.TotalGameScore;
_root.gotoAndPlay("gamewin");
};
_root.LevelFailed = function () {
_root.Points = _root.TotalGameScore;
_root.LevelEnded = 1;
_root.ResetTanSizes();
_root.TotalTansPlacedLegal = 0;
_root.TangramLifted = 0;
_root.attachMovie("LevelFailed", "LevelFailed", 110);
_root.SoundHolderTangrams.makenoise("LevelFailedSound");
};
_root.RestartGame = function () {
stopAllSounds();
removeMovieClip(_root.LevelFailed);
_root.CleanUpTans();
_root.gotoAndPlay(3);
};
_root.QuitPlayingGame = function () {
stopAllSounds();
_root.LevelEnded = 1;
this.makenoise("GameScreenQuitButton");
_root.CleanUpTans();
_root.gotoAndPlay(3);
};
_root.CleanUpTans = function () {
_root.ResetTanSizes();
_root.TotalTansPlacedLegal = 0;
_root.TangramLifted = 0;
var j = 0;
while (j < 7) {
_root["Tan" + j].gotoAndStop(1);
_root[("Tan" + j) + "placedcolour"] = 1;
removeMovieClip(_root["Tan" + j].BoboDiscardHead);
removeMovieClip(_root["Tan" + j]);
j++;
}
};
_root.InitVariables();
_root.SetupLevelIntro();
stop();
Instance of Symbol 514 MovieClip "Tan0" in Frame 4
onClipEvent (mouseDown) {
if (_root.CurrentTangram == 0) {
_root.TangramLifted = 1;
_root.TangramLift();
this.startdrag();
}
}
onClipEvent (mouseUp) {
if (_root.CurrentTangram == 0) {
if (_root.TangramRotating == 1) {
_root.TangramRotating = 0;
}
this.stopdrag();
_root.TangramDrop();
}
}
onClipEvent (mouseMove) {
_root.MonitorTangrams(_root.CurrentTangram, "Tan", _root["Tan" + _root.CurrentTangram]._y);
}
onClipEvent (keyDown) {
if (_root.CurrentTangram == 0) {
if (((Key.isDown(37) or Key.isDown(38)) or Key.isDown(39)) or Key.isDown(40)) {
_root.TangramNudged = 1;
_root.NudgeTangram(Key.getCode());
} else if (_root.TangramLifted == 1) {
if (_root.TangramRotating == 0) {
_root.RotateSetup();
_root.TangramRotating = 1;
} else {
this.stopdrag();
this.attachMovie("TheRotArrow", "TanArrow", 100);
this.RotateTangram();
}
}
}
}
onClipEvent (keyUp) {
_root.NudgeFactor = 1;
if ((((Key.getCode() != 37) and (Key.getCode() != 38)) and (Key.getCode() != 39)) and (Key.getCode() != 40)) {
_root.CheckRotationArrow();
}
if (_root.CurrentTangram == 0) {
if (_root.TangramLifted == 1) {
this.startdrag();
}
if (_root.TangramRotating == 1) {
this.startdrag();
_root.TangramRotating = 0;
}
}
}
Instance of Symbol 517 MovieClip "Tan1" in Frame 4
onClipEvent (keyDown) {
if (_root.CurrentTangram == 1) {
if (((Key.isDown(37) or Key.isDown(38)) or Key.isDown(39)) or Key.isDown(40)) {
_root.TangramNudged = 1;
_root.NudgeTangram(Key.getCode());
} else if (_root.TangramLifted == 1) {
if (_root.TangramRotating == 0) {
_root.RotateSetup();
_root.TangramRotating = 1;
} else {
this.stopdrag();
this.attachMovie("TheRotArrow", "TanArrow", 100);
this.RotateTangram();
}
}
}
}
onClipEvent (keyUp) {
_root.NudgeFactor = 1;
if (_root.CurrentTangram == 1) {
if (_root.TangramLifted == 1) {
this.startdrag();
}
if (_root.TangramRotating == 1) {
this.startdrag();
_root.TangramRotating = 0;
}
}
}
onClipEvent (mouseDown) {
if (_root.CurrentTangram == 1) {
_root.TangramLifted = 1;
_root.TangramLift();
this.startdrag();
}
}
onClipEvent (mouseUp) {
if (_root.CurrentTangram == 1) {
if (_root.TangramRotating == 1) {
_root.TangramRotating = 0;
}
this.stopdrag();
_root.TangramDrop();
}
}
Instance of Symbol 520 MovieClip "Tan2" in Frame 4
onClipEvent (keyDown) {
if (_root.CurrentTangram == 2) {
if (((Key.isDown(37) or Key.isDown(38)) or Key.isDown(39)) or Key.isDown(40)) {
_root.TangramNudged = 1;
_root.NudgeTangram(Key.getCode());
} else if (_root.TangramLifted == 1) {
if (_root.TangramRotating == 0) {
_root.RotateSetup();
_root.TangramRotating = 1;
} else {
this.stopdrag();
this.attachMovie("TheRotArrow", "TanArrow", 100);
this.RotateTangram();
}
}
}
}
onClipEvent (keyUp) {
_root.NudgeFactor = 1;
if (_root.CurrentTangram == 2) {
if (_root.TangramLifted == 1) {
this.startdrag();
}
if (_root.TangramRotating == 1) {
this.startdrag();
_root.TangramRotating = 0;
}
}
}
onClipEvent (mouseDown) {
if (_root.CurrentTangram == 2) {
_root.TangramLifted = 1;
_root.TangramLift();
this.startdrag();
}
}
onClipEvent (mouseUp) {
if (_root.CurrentTangram == 2) {
if (_root.TangramRotating == 1) {
_root.TangramRotating = 0;
}
this.stopdrag();
_root.TangramDrop();
}
}
Instance of Symbol 523 MovieClip "Tan3" in Frame 4
onClipEvent (keyDown) {
if (_root.CurrentTangram == 3) {
if (((Key.isDown(37) or Key.isDown(38)) or Key.isDown(39)) or Key.isDown(40)) {
_root.TangramNudged = 1;
_root.NudgeTangram(Key.getCode());
} else if (_root.TangramLifted == 1) {
if (_root.TangramRotating == 0) {
_root.RotateSetup();
_root.TangramRotating = 1;
} else {
this.stopdrag();
this.attachMovie("TheRotArrow", "TanArrow", 100);
this.RotateTangram();
}
}
}
}
onClipEvent (keyUp) {
_root.NudgeFactor = 1;
if (_root.CurrentTangram == 3) {
if (_root.TangramLifted == 1) {
this.startdrag();
}
if (_root.TangramRotating == 1) {
this.startdrag();
_root.TangramRotating = 0;
}
}
}
onClipEvent (mouseDown) {
if (_root.CurrentTangram == 3) {
_root.TangramLifted = 1;
_root.TangramLift();
this.startdrag();
}
}
onClipEvent (mouseUp) {
if (_root.CurrentTangram == 3) {
if (_root.TangramRotating == 1) {
_root.TangramRotating = 0;
}
this.stopdrag();
_root.TangramDrop();
}
}
Instance of Symbol 526 MovieClip "Tan4" in Frame 4
onClipEvent (keyDown) {
if (_root.CurrentTangram == 4) {
if (((Key.isDown(37) or Key.isDown(38)) or Key.isDown(39)) or Key.isDown(40)) {
_root.TangramNudged = 1;
_root.NudgeTangram(Key.getCode());
} else if (_root.TangramLifted == 1) {
if (_root.TangramRotating == 0) {
_root.RotateSetup();
_root.TangramRotating = 1;
} else {
this.stopdrag();
this.attachMovie("TheRotArrow", "TanArrow", 100);
this.RotateTangram();
}
}
}
}
onClipEvent (keyUp) {
_root.NudgeFactor = 1;
if (_root.CurrentTangram == 4) {
if (_root.TangramLifted == 1) {
this.startdrag();
}
if (_root.TangramRotating == 1) {
this.startdrag();
_root.TangramRotating = 0;
}
}
}
onClipEvent (mouseDown) {
if (_root.CurrentTangram == 4) {
_root.TangramLifted = 1;
_root.TangramLift();
this.startdrag();
}
}
onClipEvent (mouseUp) {
if (_root.CurrentTangram == 4) {
if (_root.TangramRotating == 1) {
_root.TangramRotating = 0;
}
this.stopdrag();
_root.TangramDrop();
}
}
Instance of Symbol 529 MovieClip "Tan5" in Frame 4
onClipEvent (keyDown) {
if (_root.CurrentTangram == 5) {
if (((Key.isDown(37) or Key.isDown(38)) or Key.isDown(39)) or Key.isDown(40)) {
_root.TangramNudged = 1;
_root.NudgeTangram(Key.getCode());
} else if (_root.TangramLifted == 1) {
if (_root.TangramRotating == 0) {
_root.RotateSetup();
_root.TangramRotating = 1;
} else {
this.stopdrag();
this.attachMovie("TheRotArrow", "TanArrow", 100);
this.RotateTangram();
}
}
}
}
onClipEvent (keyUp) {
_root.NudgeFactor = 1;
if (_root.CurrentTangram == 5) {
if (_root.TangramLifted == 1) {
this.startdrag();
}
if (_root.TangramRotating == 1) {
this.startdrag();
_root.TangramRotating = 0;
}
}
}
onClipEvent (mouseDown) {
if (_root.CurrentTangram == 5) {
_root.TangramLifted = 1;
_root.TangramLift();
this.startdrag();
}
}
onClipEvent (mouseUp) {
if (_root.CurrentTangram == 5) {
if (_root.TangramRotating == 1) {
_root.TangramRotating = 0;
}
this.stopdrag();
_root.TangramDrop();
}
}
Instance of Symbol 532 MovieClip "Tan6" in Frame 4
onClipEvent (keyDown) {
if (_root.CurrentTangram == 6) {
if (((Key.isDown(37) or Key.isDown(38)) or Key.isDown(39)) or Key.isDown(40)) {
_root.TangramNudged = 1;
_root.NudgeTangram(Key.getCode());
} else if (_root.TangramLifted == 1) {
if (_root.TangramRotating == 0) {
_root.RotateSetup();
_root.TangramRotating = 1;
} else {
this.stopdrag();
this.attachMovie("TheRotArrow", "TanArrow", 100);
this.RotateTangram();
}
}
}
}
onClipEvent (keyUp) {
_root.NudgeFactor = 1;
if (_root.CurrentTangram == 6) {
if (_root.TangramLifted == 1) {
this.startdrag();
}
if (_root.TangramRotating == 1) {
this.startdrag();
_root.TangramRotating = 0;
}
}
}
onClipEvent (mouseDown) {
if (_root.CurrentTangram == 6) {
_root.TangramLifted = 1;
_root.TangramLift();
this.startdrag();
}
}
onClipEvent (mouseUp) {
if (_root.CurrentTangram == 6) {
if (_root.TangramRotating == 1) {
_root.TangramRotating = 0;
}
this.stopdrag();
_root.TangramDrop();
}
}
Frame 5
("c" < (b >= undefined)) || (0(false));
if (0 < _root.points) {
var gname = "game4";
var gscore = _root.points;
loadVariablesNum ((("http://www.oddjobjack.com/forum/index.php?act=Arcade&do=newscore&gname=" + gname) + "&gscore=") + gscore, 1);
}
_root.totalscore = 0;
gscore = 0;
Frame 15
_root.FlashTracking("Game4_Win");
stop();
Symbol 77 MovieClip [loaderBar] Frame 1
stop();
Symbol 167 MovieClip [Bobowins] Frame 1
_root.LifeLost();
Symbol 167 MovieClip [Bobowins] Frame 25
_root.LifeLostOuttro();
stop();
Symbol 170 Button
on (rollOver) {
_root.TextWindowContentsBackup = _root.TextWindowContents;
_root.TextWindowContents = "Put Bobo to sleep.";
gotoAndStop (2);
}
Symbol 172 Button
on (rollOut) {
_root.TextWindowContents = _root.TextWindowContentsBackup;
gotoAndStop (1);
}
Symbol 173 MovieClip Frame 1
stop();
Symbol 173 MovieClip Frame 2
stop();
Symbol 175 MovieClip [DrugFadeOut] Frame 1
this.makenoise("SleepingPillUsed");
Symbol 175 MovieClip [DrugFadeOut] Frame 31
stop();
Symbol 195 MovieClip Frame 25
jumpornot = random(25);
if (jumpornot == 1) {
play();
} else {
gotoAndPlay (24);
}
Symbol 195 MovieClip Frame 49
jumpornot = random(30);
if (jumpornot == 1) {
play();
} else {
gotoAndPlay (48);
}
Symbol 200 MovieClip Frame 20
stop();
Symbol 201 Button
on (release) {
this.makenoise("HelpScreenStartButton");
_root.LoseHelpScreen();
if (_root._currentframe != 4) {
_root.gotoAndPlay(4);
}
}
Symbol 204 MovieClip Frame 20
stop();
Symbol 205 Button
on (release) {
this.makenoise("HelpScreenQuitButton");
_root.LoseHelpScreen();
}
Symbol 221 Button
on (rollOver) {
_root.CurrentTangram = 2;
}
on (rollOut) {
_root.CurrentTangram = 9;
}
Symbol 225 Button
on (rollOver) {
_root.CurrentTangram = 6;
}
on (rollOut) {
_root.CurrentTangram = 9;
}
Symbol 229 Button
on (rollOver) {
_root.CurrentTangram = 5;
}
on (rollOut) {
_root.CurrentTangram = 9;
}
Symbol 233 Button
on (rollOver) {
_root.CurrentTangram = 4;
}
on (rollOut) {
_root.CurrentTangram = 9;
}
Symbol 237 Button
on (rollOver) {
if (_root.TangramLifted == 0) {
_root.CurrentTangram = 3;
}
}
on (rollOut) {
if (_root.TangramLifted == 0) {
_root.CurrentTangram = 9;
}
}
Symbol 241 Button
on (rollOver) {
_root.CurrentTangram = 1;
}
on (rollOut) {
_root.CurrentTangram = 9;
}
Symbol 245 Button
on (rollOver) {
if (_root.TangramLifted == 0) {
_root.CurrentTangram = 0;
}
}
on (rollOut) {
if (_root.TangramLifted == 0) {
_root.CurrentTangram = 9;
}
}
Symbol 251 MovieClip [HelpScreen] Frame 42
gotoAndPlay (1);
Symbol 275 Button
on (release) {
this.makenoise("LevelCompleteNextButton");
if (_root.PuzzleCounter == _root.LevelsMax) {
_root.GameWin();
} else {
_root.LevelEnded = 0;
_root.SetupLevelIntro();
this.unloadMovie();
}
}
Symbol 276 MovieClip [LevelEndClip] Frame 1
_root.PuzzleCounterDisplay = _root.PuzzleCounter - 1;
stop();
Symbol 296 Button
on (release) {
this.makenoise("BoboWinsPlayAgainButton");
_root.RestartGame();
}
Symbol 297 Button
on (release) {
this.makenoise("BoboWinsQuitButton");
_root.FlashTracking("Game4_Quit");
_root.gameQuit();
}
Symbol 300 MovieClip Frame 20
stop();
Symbol 301 Button
on (release) {
this.makenoise("BoboWinsHighScoresButton");
_root.GameHighScores();
}
Symbol 303 MovieClip [LevelFailed] Frame 1
_root.SendScore();
Symbol 303 MovieClip [LevelFailed] Frame 24
_root.FlashTracking("Game4_Lose");
stop();
Symbol 331 MovieClip Frame 1
stop();
Symbol 331 MovieClip Frame 2
stop();
Symbol 331 MovieClip Frame 3
stop();
Symbol 331 MovieClip Frame 4
stop();
Symbol 331 MovieClip Frame 5
stop();
Symbol 331 MovieClip Frame 6
stop();
Symbol 331 MovieClip Frame 7
stop();
Symbol 331 MovieClip Frame 8
stop();
Symbol 331 MovieClip Frame 9
stop();
Symbol 331 MovieClip Frame 10
stop();
Symbol 331 MovieClip Frame 11
stop();
Symbol 333 MovieClip [LevelIntro] Frame 1
totrack = "Game4_Level_" + _root.Puzzlecounter;
_root.FlashTracking(totrack);
TanNumbers.gotoAndStop(_root.Puzzlecounter + 1);
_root.PuzzleCounterDisplay = _root.Puzzlecounter;
Symbol 333 MovieClip [LevelIntro] Frame 71
_root.LevelEnded = 0;
this.makenoise("LevelIntroStartButton");
_root.StartTime = new Date();
_root.MoveToNextLevel();
stopAllSounds();
this.removeMovieClip();
Symbol 337 MovieClip [youwin] Frame 35
_root.attachMovie("LevelEndClip", "LevelEndClip", 110);
this.removeMovieClip();
stop();
Symbol 430 MovieClip Frame 142
_root.gotoAndPlay(3);
Symbol 432 Button
on (release) {
this.makenoise("IntroAnimationStartButton");
gotoAndPlay (3);
}
on (keyPress "<Space>") {
this.makenoise("IntroAnimationStartButton");
gotoAndPlay (3);
}
Symbol 500 MovieClip Frame 20
stop();
Symbol 501 Button
on (release) {
this.makenoise("TitleScreenInstructionsButton");
_root.ShowHelpScreen();
}
Symbol 502 Button
on (release) {
this.makenoise("TitleScreenQuitButton");
_root.gameHighScores();
}
Symbol 503 Button
on (release) {
_root.FlashTracking("Game4_Play");
this.makenoise("TitleScreenStartButton");
_root.gotoAndPlay(4);
}
Symbol 504 Button
on (release) {
this.makenoise("TitleScreenQuitButton");
_root.FlashTracking("Game4_Quit");
_root.GameQuit();
}
Symbol 506 MovieClip Frame 1
_root.CheckTimer();
Symbol 506 MovieClip Frame 2
gotoAndPlay (1);
Symbol 514 MovieClip Frame 1
stop();
Symbol 514 MovieClip Frame 2
stop();
Symbol 514 MovieClip Frame 3
stop();
Symbol 517 MovieClip Frame 1
stop();
Symbol 517 MovieClip Frame 2
stop();
Symbol 517 MovieClip Frame 3
stop();
Symbol 520 MovieClip Frame 1
stop();
Symbol 520 MovieClip Frame 2
stop();
Symbol 520 MovieClip Frame 3
stop();
Symbol 523 MovieClip Frame 1
stop();
Symbol 523 MovieClip Frame 2
stop();
Symbol 523 MovieClip Frame 3
stop();
Symbol 526 MovieClip Frame 1
stop();
Symbol 526 MovieClip Frame 2
stop();
Symbol 526 MovieClip Frame 3
stop();
Symbol 529 MovieClip Frame 1
stop();
Symbol 529 MovieClip Frame 2
stop();
Symbol 529 MovieClip Frame 3
stop();
Symbol 532 MovieClip Frame 1
stop();
Symbol 532 MovieClip Frame 2
stop();
Symbol 532 MovieClip Frame 3
stop();
Symbol 553 MovieClip Frame 1
stop();
Symbol 553 MovieClip Frame 73
_root.CalculateTotalTansPlacedLegal();
Symbol 554 MovieClip Frame 1
stop();
Symbol 554 MovieClip Frame 51
_root.SoundHolderTangrams.makenoise("PuzzleFlipped");
_root.MonkeyFlip();
Symbol 554 MovieClip Frame 53
_root.MonkeyFlipDone();
Symbol 558 MovieClip Frame 29
gotoAndPlay (1);
Symbol 558 MovieClip Frame 89
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (30);
} else {
gotoAndPlay (60);
}
Symbol 558 MovieClip Frame 149
gotoAndPlay (120);
Symbol 558 MovieClip Frame 179
gotoAndPlay (150);
Symbol 558 MovieClip Frame 240
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (180);
} else {
gotoAndPlay (211);
}
Symbol 558 MovieClip Frame 331
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (270);
} else {
gotoAndPlay (301);
}
Symbol 558 MovieClip Frame 420
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (361);
} else {
gotoAndPlay (391);
}
Symbol 558 MovieClip Frame 510
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (451);
} else {
gotoAndPlay (481);
}
Symbol 574 MovieClip Frame 29
gotoAndPlay (1);
Symbol 574 MovieClip Frame 89
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (30);
} else {
gotoAndPlay (60);
}
Symbol 574 MovieClip Frame 179
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (120);
} else {
gotoAndPlay (150);
}
Symbol 574 MovieClip Frame 269
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (210);
} else {
gotoAndPlay (240);
}
Symbol 574 MovieClip Frame 359
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (300);
} else {
gotoAndPlay (330);
}
Symbol 574 MovieClip Frame 449
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (390);
} else {
gotoAndPlay (420);
}
Symbol 574 MovieClip Frame 510
navtemp = random(2);
if (navtemp == 0) {
gotoAndPlay (480);
} else {
gotoAndPlay (510);
}
Symbol 579 Button
on (release) {
this.makenoise("GameScreenHelpButton");
_root.ShowHelpScreen();
}
on (rollOver) {
_root.TextWindowContentsBackup = _root.TextWindowContents;
_root.TextWindowContents = "Click for help screen.";
}
on (rollOut) {
_root.TextWindowContents = _root.TextWindowContentsBackup;
}
Symbol 580 Button
on (release) {
_root.QuitPlayingGame();
}
on (rollOver) {
_root.TextWindowContentsBackup = _root.TextWindowContents;
_root.TextWindowContents = "Click to quit.";
}
on (rollOut) {
_root.TextWindowContents = _root.TextWindowContentsBackup;
}
Symbol 588 Button
on (rollOver) {
_root.TextWindowContentsBackup = _root.TextWindowContents;
_root.TextWindowContents = "Bobo's Score.";
gotoAndStop (2);
}
Symbol 589 Button
on (rollOut) {
_root.TextWindowContents = _root.TextWindowContentsBackup;
gotoAndStop (1);
}
Symbol 590 MovieClip Frame 1
stop();
Symbol 590 MovieClip Frame 2
stop();
Symbol 593 Button
on (rollOver) {
_root.TextWindowContentsBackup = _root.TextWindowContents;
_root.TextWindowContents = "Jack's Score.";
gotoAndStop (2);
}
Symbol 594 Button
on (rollOut) {
_root.TextWindowContents = _root.TextWindowContentsBackup;
gotoAndStop (1);
}
Symbol 595 MovieClip Frame 1
stop();
Symbol 595 MovieClip Frame 2
stop();
Symbol 596 Button
on (rollOver) {
_root.TextWindowContentsBackup = _root.TextWindowContents;
_root.TextWindowContents = "Bobo's Reactions.";
gotoAndStop (2);
}
Symbol 597 Button
on (rollOut) {
_root.TextWindowContents = _root.TextWindowContentsBackup;
gotoAndStop (1);
}
Symbol 598 MovieClip Frame 1
stop();
Symbol 598 MovieClip Frame 2
stop();
Symbol 599 Button
on (rollOver) {
_root.TextWindowContentsBackup = _root.TextWindowContents;
_root.TextWindowContents = "Jack's Reactions.";
gotoAndStop (2);
}
Symbol 600 Button
on (rollOut) {
_root.TextWindowContents = _root.TextWindowContentsBackup;
gotoAndStop (1);
}
Symbol 601 MovieClip Frame 1
stop();
Symbol 601 MovieClip Frame 2
stop();
Symbol 605 Button
on (rollOver) {
_root.TextWindowContentsBackup = _root.TextWindowContents;
_root.TextWindowContents = "Medication Timer.";
gotoAndStop (2);
}
Symbol 606 Button
on (rollOut) {
_root.TextWindowContents = _root.TextWindowContentsBackup;
gotoAndStop (1);
}
Symbol 607 MovieClip Frame 1
stop();
Symbol 607 MovieClip Frame 2
stop();
Symbol 620 MovieClip Frame 1
stop();
Symbol 620 MovieClip Frame 2
this.makenoise("MedicationTimerFinished");
Symbol 620 MovieClip Frame 48
_root.Jackpsychout.gotoandplay(2);
gotoAndStop (1);
Symbol 642 MovieClip Frame 1
stop();
Symbol 643 Button
on (release) {
_root.gameHighScores();
}
Symbol 644 Button
on (release) {
_root.FlashTracking("Game4_PlayAgain");
this.makenoise("BoboWinsPlayAgainButton");
_root.RestartGame();
}
Symbol 645 Button
on (release) {
this.makenoise("TitleScreenQuitButton");
_root.FlashTracking("Game4_Quit");
_root.gameQuit();
}