Frame 1
stop();
_global.buttonOverSFX = new Sound(this);
_global.buttonOverSFX.attachSound("buttonOverSFX");
_global.buttonDownSFX = new Sound(this);
_global.buttonDownSFX.attachSound("buttonDownSFX");
Frame 11
Ellipse = function (width, height) {
var _local2 = this;
_local2.width = width;
_local2.height = height;
var _local1 = width >> 1;
var _local3 = height >> 1;
_local2.focus = Math.sqrt((_local1 * _local1) - (_local3 * _local3));
return(_local2);
};
Ellipse.prototype.pointInEllipse = function (x, y) {
var _local2 = x - this.focus;
var _local1 = x + this.focus;
var _local3 = y * y;
var focus1Dist = Math.sqrt((_local2 * _local2) + _local3);
var focus2Dist = Math.sqrt((_local1 * _local1) + _local3);
return((focus1Dist + focus2Dist) < this.width);
};
Object.registerClass("Ellipse", Ellipse);
Game = function () {
var _local1 = this;
var _local2 = _global;
_local1.innings;
_local1.mc;
_local1.state;
_local1.userScore;
_local1.total;
_local1.overs;
_local1.ballNum;
_local1.wickets;
_local1.lastInnings;
_local1.inningsNum;
_local1.batsman;
_local1.bowler;
_local1.fielders;
_local1.counter;
_local1.mouseListener;
_local1.caughtOut;
_local1.ballWithinBoundary;
_local1.ballOverBoundaryValue;
_local1.numSixes;
_local1.numFours;
_local1.numBalls;
_local1.numOuts;
_local1.bowlDuration = 15;
_local1.battingLeeway = 5;
_local1.teamSize = 11;
_local1.fielderSpread = [3, 3, 3, 1];
_local1.maxOvers = 4;
_local1.friction = 0.96;
_local1.minPitchScale = 37;
_local1.ring1 = new Ellipse(740, 556);
_local1.ring2 = new Ellipse(1054, 792);
_local1.pitchEllipse = new Ellipse(1278, 1003);
_local1.boundaryEllipse = new Ellipse(1648, 1373);
_local1.creaseEllipse = new Ellipse(500, 260);
_local1.previousAngle = null;
_local2.teamScore = 0;
_local2.teamWickets = 0;
_local2.opponentScore = 0;
_local2.opponentWickets = 0;
_local2.userSixes = 0;
_local2.userFours = 0;
_local2.strikeRate = 0;
_local2.battingRate = 0;
_local1.fielderPositions = [[], [], [], []];
_local1.fielderPositions[0].push([[35, -453], [101, -430], [167, -443], [204, -415], [251, -429], [251, -382]]);
_local1.fielderPositions[0].push([[-327, -410], [-346, -371], [-386, -332], [-457, -275], [-489, -217]]);
_local1.fielderPositions[0].push([[-489, 195], [-467, 235], [-423, 271], [-373, 302], [-327, 332]]);
_local1.fielderPositions[0].push([[18, 424], [56, 392], [106, 401], [139, 379], [221, 379]]);
_local1.fielderPositions[1].push([[160, -288], [159, -365], [56, -382], [85, -315], [144, -332]]);
_local1.fielderPositions[1].push([[-305, -328], [-360, -282], [-411, -207], [-397, -151], [-337, -193]]);
_local1.fielderPositions[1].push([[-294, 282], [-287, 208], [-360, 192], [-344, 145], [-454, 172]]);
_local1.fielderPositions[1].push([[158, 248], [125, 284], [104, 324], [75, 271], [35, 353]]);
_local1.fielderPositions[2].push([[44, -257], [85, -125], [106, -193], [-60, -193], [21, -179]]);
_local1.fielderPositions[2].push([[-78, 150], [80, 149], [58, 234], [18, 184], [154, 184]]);
_local1.fielderPositions[2].push([[-164, -189], [-114, -145], [-277, -84], [-255, 62], [-190, 115], [-154, 184]]);
_local1.fielderPositions[3].push([[226, 0]]);
};
Game.prototype.init = function (mc, innings) {
var _local1 = this;
_local1.mc = mc;
_local1.innings = innings;
_local1.batsman = mc.pitch.batsman;
_local1.bowler = mc.pitch.bowler;
_local1.fielders = [];
var _local3 = 0;
while (_local3 < (_local1.teamSize - 1)) {
var _local2 = mc.pitch["fielder" + _local3];
_local2.faceTarget();
if (innings == "field") {
_local2.hat.gotoAndStop(_global.teamColour);
} else {
_local2.hat.gotoAndStop(_global.opponentColour);
}
_local1.fielders.push(_local2);
_local3++;
}
_local1.total = 0;
_local1.overs = 1;
_local1.ballNum = 1;
_local1.wickets = 0;
_local1.numSixes = 0;
_local1.numFours = 0;
_local1.numBalls = 0;
_local1.numOuts = 0;
_local1.lastInnings = 0;
_local1.inningsNum = 1;
_local1.xStep = 0;
_local1.yStep = 0;
_local1.mc.pitch.x0 = _local1.mc.pitch._x;
_local1.mc.pitch.y0 = _local1.mc.pitch._y;
_local1.ballRadius = mc.pitch.ball._width / 2;
_local1.randomiseFielderPositions();
_local1.updateScoreboard();
_local1.updateSmallPitch();
_local1.mc.message.gotoAndStop("hidden");
_local1.mc.playButton._visible = false;
_local1.mc.changeFieldersButton._visible = false;
_local1.mc.pitch.ball._visible = false;
_local1.mc.pitch.sixAreas._alpha = 0;
_local1.batsman.marker._xscale = (_local1.batsman.marker._yscale = 1);
_local1.lightHitAudio = new Sound(_local1.mc);
_local1.lightHitAudio.attachSound("lightHit");
_local1.mediumHitAudio = new Sound(_local1.mc);
_local1.mediumHitAudio.attachSound("mediumHit");
_local1.hardHitAudio = new Sound(_local1.mc);
_local1.hardHitAudio.attachSound("hardHit");
_local1.heavyHitAudio = new Sound(_local1.mc);
_local1.heavyHitAudio.attachSound("heavyHit");
_local1.caughtAudio = new Sound(_local1.mc);
_local1.caughtAudio.attachSound("caught");
_local1.bowledAudio = new Sound(_local1.mc);
_local1.bowledAudio.attachSound("bowled");
_local1.inningsAudio = new Sound(_local1.mc);
_local1.inningsAudio.attachSound("innings");
_local1.bgAudio = new Sound(_local1.mc);
_local1.bgAudio.attachSound("bgLoop");
_local1.bgAudio.start(0, 10000);
if (innings == "field") {
_local1.batsman.batsmanGraphic.ani.hat.gotoAndStop(_global.opponentColour);
_local1.zoomTo(_local1.minPitchScale);
_local1.state = 1;
} else if (innings == "bat") {
_local1.batsman.batsmanGraphic.ani.hat.gotoAndStop(_global.teamColour);
_local1.state = 3;
}
var callback = _local1;
_local1.mc.onEnterFrame = function () {
callback.update();
};
_global.gameInited = true;
_global.scoreSubmitted = false;
};
Game.prototype.update = function () {
var _local1 = this;
switch (_local1.state) {
case -1 :
_local1.killEventLoop();
return;
case 0 :
return;
case 1 :
_local1.initFielders();
return;
case 2 :
_local1.updateFielders();
return;
case 3 :
_local1.autoInitFielders();
return;
case 4 :
_local1.initBowler();
return;
case 5 :
_local1.initBatsman();
return;
case 6 :
_local1.bowl();
return;
case 7 :
_local1.initBall();
return;
case 8 :
_local1.updateBall();
return;
case 9 :
_local1.followBall();
return;
case 10 :
_local1.finishBall();
}
};
Game.prototype.initFielders = function () {
var _local1 = this;
var callback = _local1;
var _local3 = _local1.fielders.length - 2;
var rings = [_local1.creaseEllipse, _local1.ring1, _local1.ring2, _local1.pitchEllipse];
var _local2 = 0;
while (_local2 < (_local1.fielderSpread.length - 1)) {
var j = 0;
while (j < _local1.fielderSpread[_local2]) {
_local1.fielders[_local3].innerRing = rings[_local2];
_local1.fielders[_local3].outerRing = rings[_local2 + 1];
_local1.fielders[_local3].init(1);
_local3--;
j++;
}
_local2++;
}
if (((_local1.wickets == 0) && (_local1.overs == 1)) && (_local1.ballNum == 1)) {
_local1.mc.message.gotoAndStop("setFielders");
_local1.zoomTo(_local1.minPitchScale);
} else {
_local1.mc.changeFieldersButton._visible = true;
_local1.mc.changeFieldersButton.onRelease = function () {
callback.zoomTo(callback.minPitchScale);
this._visible = false;
};
}
_local1.mc.pitch.ball._visible = false;
_local1.bowler.init();
if (_local1.outMessageShowing) {
_local1.outMessageShowing = false;
_local1.mc.message.gotoAndStop("hidden");
}
_local1.messageTimer = setInterval(function () {
callback.mc.message.gotoAndStop("hidden");
clearInterval(callback.messageTimer);
}, 2400);
_local1.state = 2;
_local1.mc.playButton._visible = true;
_local1.mc.playButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
_local1.mc.playButton.onPress = function () {
_global.buttonDownSFX.start();
};
_local1.mc.playButton.onRelease = function () {
callback.state = 4;
};
};
Game.prototype.updateFielders = function () {
this.updateSmallPitch();
};
Game.prototype.autoInitFielders = function () {
var _local1 = this;
_local1.randomiseFielderPositions();
if (((_local1.wickets == 0) && (_local1.overs == 1)) && (_local1.ballNum == 1)) {
_local1.mc.message.gotoAndStop("setBatsman");
var _local2 = 3200;
} else {
_local1.mc.message.gotoAndStop("ready");
if (_local1.caughtOut) {
var _local2 = 5000;
_local1.caughtOut = false;
} else {
var _local2 = 1700;
}
}
_local1.mc.pitch.ball._visible = false;
_local1.bowler.init();
var mouseListener = new Object();
var callback = _local1;
_local1.messageTimer = setInterval(function () {
callback.mc.message.gotoAndStop("hidden");
callback.state = 5;
clearInterval(callback.messageTimer);
}, _local2);
_local1.updateSmallPitch();
_local1.state = 0;
};
Game.prototype.initBowler = function () {
var _local2 = this;
_local2.caughtOut = false;
_local2.mc.playButton._visible = false;
_local2.mc.changeFieldersButton._visible = false;
if (((_local2.wickets == 0) && (_local2.overs == 1)) && (_local2.ballNum == 1)) {
_local2.mc.message.gotoAndStop("setBowler");
var _local3 = new Object();
var callback = _local2;
Mouse.addListener(_local3);
_local3.onMouseDown = function () {
callback.mc.message.gotoAndStop("hidden");
Mouse.removeListener(this);
delete this;
};
}
var _local1 = 0;
while (_local1 < _local2.fielders.length) {
_local2.fielders[_local1].state = 3;
_local1++;
}
_local2.zoomTo(100);
_local2.bowler.init(1);
_local2.state = 0;
};
Game.prototype.initBatsman = function () {
var _local1 = this;
_local1.numBalls++;
_local1.caughtOut = false;
var _local2 = new Object();
var callback = _local1;
Mouse.addListener(_local2);
_local2.onMouseDown = function () {
callback.state = 6;
Mouse.removeListener(this);
delete this;
};
_local1.zoomTo(100);
_local1.batsman.init(1);
_local1.state = 0;
};
Game.prototype.bowl = function () {
this.bowler.init(4);
this.state = 0;
};
Game.prototype.initBall = function () {
var _local1 = this;
if (_local1.innings == "field") {
var _local2 = {x:0, y:0};
_local1.batsman.init(4);
if (random(100) < 10) {
_local1.batsmanTrigger = (_local1.bowlDuration - _local1.batsman.numFramesToBat) + 1;
} else {
var _local3 = random(3);
_local1.batsmanTrigger = _local1.batsman.numFramesToBat + _local3;
}
} else if (_local1.innings == "bat") {
var _local2 = {x:0, y:17};
}
_local1.ballWithinBoundary = true;
_local1.bowler.bowlerGraphic.localToGlobal(_local2);
_local1.mc.pitch.globalToLocal(_local2);
_local1.mc.pitch.ball._visible = true;
_local1.mc.pitch.ball._x = _local2.x;
_local1.mc.pitch.ball._y = _local2.y;
_local1.xGoal = 125;
_local1.yGoal = 0;
_local1.xStep = (_local1.xGoal - _local2.x) / _local1.bowlDuration;
_local1.yStep = (_local1.yGoal - _local2.y) / _local1.bowlDuration;
_local1.updateSmallPitch(_local1.mc.pitch.ball);
_local1.counter = 0;
_local1.state = 8;
};
Game.prototype.updateBall = function () {
var _local1 = this;
_local1.mc.pitch.ball._x = _local1.mc.pitch.ball._x + _local1.xStep;
_local1.mc.pitch.ball._y = _local1.mc.pitch.ball._y + _local1.yStep;
_local1.mc.pitch.ball.gfx._rotation = _local1.mc.pitch.ball.gfx._rotation + 14;
_local1.updateSmallPitch(_local1.mc.pitch.ball);
if ((_local1.counter == (_local1.bowlDuration - _local1.batsmanTrigger)) && (_local1.innings == "field")) {
_local1.batsman.state = 5;
}
if ((++_local1.counter) == (_local1.bowlDuration + 1)) {
_local1.goingOut = true;
_local1.numOuts++;
_local1.mc.pitch.wicket.gotoAndPlay(2);
if (_local1.innings == "bat") {
_local1.mc.cutMask.showMovie("bowled");
} else {
_local1.outMessageShowing = true;
_local1.mc.message.gotoAndStop("out");
}
} else if (_local1.counter == (_local1.bowlDuration + 50)) {
if (_local1.goingOut) {
_local1.bowledAudio.start();
_local1.goingOut = false;
_local1.wickets++;
_local1.updateScoreboard();
_local1.xStep = 0;
_local1.yStep = 0;
_local1.counter = 0;
_local1.state = 10;
} else {
_local1.state = 3;
}
}
};
Game.prototype.checkHit = function (speed, angle, maxAngle) {
var _local1 = this;
var _local2 = _local1.bowlDuration - _local1.counter;
if ((_local2 < _local1.battingLeeway) && (_local2 >= 0)) {
var impactPenalty = (3 * _local2);
var maxSpeed = 30;
if (speed > 0.75) {
_local1.heavyHitAudio.start();
} else if (speed > 0.5) {
_local1.hardHitAudio.start();
} else if (speed > 0.25) {
_local1.mediumHitAudio.start();
} else {
_local1.lightHitAudio.start();
}
var radAngle = ((Math.PI * maxAngle) / 180);
var meanSpeed = ((maxSpeed - impactPenalty) * speed);
var _local3 = radAngle * angle;
_local1.xStep = (-meanSpeed) * Math.cos(_local3);
_local1.yStep = (-meanSpeed) * Math.sin(_local3);
_local1.previousAngle = maxAngle * angle;
_local1.zoomTo(80);
_local1.state = 9;
}
};
Game.prototype.followBall = function () {
var _local1 = this;
var _local2 = _local1.mc.pitch.ball;
var _local3 = _local1.mc.pitchMask;
if (!_local1.caughtOut) {
_local2._x = _local2._x + _local1.xStep;
_local2._y = _local2._y + _local1.yStep;
_local2.gfx._rotation = _local2.gfx._rotation + (6 * (_local1.xStep + _local1.yStep));
_local1.checkFielders(_local2._x, _local2._y);
if (_local1.ballWithinBoundary && (!_local1.pitchEllipse.pointInEllipse(_local2._x, _local2._y))) {
var damping = 0.1;
_local1.xStep = damping * (-_local1.xStep);
_local1.yStep = damping * (-_local1.yStep);
_local1.ballWithinBoundary = false;
var pt = {x:_local2._x, y:_local2._y};
_local1.mc.pitch.localToGlobal(pt);
if (_local1.mc.pitch.sixAreas.hitTest(pt.x, pt.y, true)) {
trace("SIX!");
_local1.caughtAudio.start();
_local1.ballOverBoundaryValue = 6;
if (_local1.innings == "bat") {
_local1.mc.cutMask.showMovie("six");
_local1.numSixes++;
}
} else {
trace("FOUR!");
_local1.bowledAudio.start();
_local1.ballOverBoundaryValue = 4;
if (_local1.innings == "bat") {
_local1.mc.cutMask.showMovie("four");
_local1.numFours++;
}
}
}
} else {
_local2._x = _local2._x + (0.3 * (_local1.xCatchingFielder - _local2._x));
_local2._y = _local2._y + (0.3 * (_local1.yCatchingFielder - _local2._y));
}
var xGoal = ((0.5 * _local3._width) - _local2._x);
var yGoal = ((0.5 * _local3._height) - _local2._y);
var xPitch = (_local1.mc.pitch._x + (0.3 * (xGoal - _local1.mc.pitch._x)));
var yPitch = (_local1.mc.pitch._y + (0.3 * (yGoal - _local1.mc.pitch._y)));
var pw = ((_local1.mc.pitch._xscale * _local1.mc.pitch.bg._width) / 200);
var ph = ((_local1.mc.pitch._yscale * _local1.mc.pitch.bg._height) / 200);
var leftEdge = (_local3._x + pw);
var topEdge = (_local3._y + ph);
var rightEdge = ((_local3._x + _local3._width) - pw);
var bottomEdge = ((_local3._y + _local3._height) - ph);
xPitch = Math.min(xPitch, leftEdge);
xPitch = Math.max(xPitch, rightEdge);
yPitch = Math.min(yPitch, topEdge);
yPitch = Math.max(yPitch, bottomEdge);
_local1.mc.pitch._x = xPitch;
_local1.mc.pitch._y = yPitch;
_local1.updateSmallPitch(_local1.mc.pitch.ball);
_local1.xStep = _local1.xStep * _local1.friction;
_local1.yStep = _local1.yStep * _local1.friction;
if ((Math.abs(_local1.xStep) < 0.2) && (Math.abs(_local1.yStep) < 0.2)) {
if (!_local1.caughtOut) {
var numRuns = 3;
if (_local1.ballWithinBoundary) {
if (_local1.ring1.pointInEllipse(_local2._x, _local2._y)) {
numRuns = 1;
} else if (_local1.ring2.pointInEllipse(_local2._x, _local2._y)) {
numRuns = 2;
}
} else {
numRuns = _local1.ballOverBoundaryValue;
}
if (((_local1.total < 100) && ((_local1.total + numRuns) >= 100)) && (_local1.innings == "bat")) {
_local1.mc.cutMask.showMovie("century");
}
_local1.total = _local1.total + numRuns;
}
_local1.updateScoreboard();
_local1.xStep = (_local1.mc.pitch.x0 - _local1.mc.pitch._x) / 30;
_local1.yStep = (_local1.mc.pitch.y0 - _local1.mc.pitch._y) / 30;
_local1.counter = 0;
_local1.state = 10;
}
};
Game.prototype.checkFielders = function (x, y) {
var _local1 = this;
var bL = (x - _local1.ballRadius);
var bR = (x + _local1.ballRadius);
var bT = (y - _local1.ballRadius);
var bB = (y + _local1.ballRadius);
var i = -1;
while (i < _local1.fielders.length) {
var _local2 = ((i == -1) ? (_local1.bowler) : (_local1.fielders[i]));
var _local3 = 25;
var fL = (_local2._x - _local3);
var fR = (_local2._x + _local3);
var fT = (_local2._y - _local3);
var fB = (_local2._y + _local3);
var dx = (x - _local2._x);
var dy = (y - _local2._y);
var dist = Math.sqrt((dx * dx) + (dy * dy));
var minDist = (_local3 + _local1.ballRadius);
if ((dist < 150) && (i != -1)) {
var angle = ((180 * Math.atan2(dy, dx)) / Math.PI);
var r = _local2._rotation;
if (Math.abs(angle - r) > 180) {
if (angle < 0) {
angle = 360 + angle;
} else {
r = 360 + r;
}
}
_local2._rotation = _local2._rotation + (0.1 * (angle - r));
_local2.setShadow();
}
if ((!_local1.caughtOut) && (dist < minDist)) {
var pt = {x:24, y:0};
_local2.localToGlobal(pt);
_local1.mc.pitch.globalToLocal(pt);
_local1.xCatchingFielder = pt.x;
_local1.yCatchingFielder = pt.y;
_local1.xStep = 0.4;
_local1.yStep = 0.4;
_local1.caughtOut = true;
_local1.wickets++;
_local1.numOuts++;
_local1.updateScoreboard();
_local1.caughtAudio.start();
if (_local1.innings == "field") {
_local1.outMessageShowing = true;
_local1.mc.message.gotoAndStop("out");
}
}
i++;
}
};
Game.prototype.finishBall = function () {
var _local1 = this;
if (_local1.caughtOut && (_local1.innings == "bat")) {
if (_local1.counter == 0) {
_local1.mc.cutMask.showMovie("caught");
} else if (_local1.counter == 10) {
_local1.mc.pitch._x = _local1.mc.pitch._x + (30 * _local1.xStep);
_local1.mc.pitch._y = _local1.mc.pitch._y + (30 * _local1.yStep);
_local1.counter = 29;
}
} else {
_local1.mc.pitch._x = _local1.mc.pitch._x + _local1.xStep;
_local1.mc.pitch._y = _local1.mc.pitch._y + _local1.yStep;
}
if ((_local1.counter++) == 30) {
_local1.ballNum++;
if (_local1.ballNum == 7) {
_local1.overs++;
_local1.ballNum = 1;
}
if ((_local1.overs > _local1.maxOvers) || (_local1.wickets == _local1.teamSize)) {
if ((++_local1.inningsNum) > 2) {
_local1.endGame();
} else {
_local1.setNextInnings();
}
} else if (_local1.innings == "bat") {
_local1.state = 3;
} else {
_local1.state = 1;
}
_local1.mc.pitch._x = _local1.pitch.x0;
_local1.mc.pitch._y = _local1.pitch.y0;
_local1.updateScoreboard();
}
};
Game.prototype.endGame = function () {
var _local1 = this;
var _local2 = _global;
if (_local1.innings == "bat") {
_local2.teamScore = _local1.total;
_local2.teamWickets = _local1.wickets;
_local2.userSixes = _local1.numSixes;
_local2.userFours = _local1.numFours;
var _local3 = _local1.total / _local1.numBalls;
var br = (_local1.total / _local1.numOuts);
_local2.strikeRate = Math.round(_local3 * 10) / 10;
_local2.battingRate = Math.round(br * 10) / 10;
} else {
_local2.opponentScore = _local1.total;
_local2.opponentWickets = _local1.wickets;
}
_local1.mc.message.gotoAndStop("gameOver");
_local1.state = -1;
};
Game.prototype.setNextInnings = function () {
var _local1 = this;
var _local2 = _global;
_local1.inningsAudio.start();
_local1.mc.message.gotoAndStop("nextInnings");
if (_local1.innings == "bat") {
_local2.teamScore = _local1.total;
_local2.teamWickets = _local1.wickets;
_local2.userSixes = _local1.numSixes;
_local2.userFours = _local1.numFours;
var _local3 = _local1.total / _local1.numBalls;
var br = (_local1.total / _local1.numOuts);
_local2.strikeRate = Math.round(_local3 * 10) / 10;
_local2.battingRate = Math.round(br * 10) / 10;
_local1.innings = "field";
} else {
_local2.opponentScore = _local1.total;
_local2.opponentWickets = _local1.wickets;
_local1.innings = "bat";
}
_local1.previousAngle = null;
_local1.state = 0;
};
Game.prototype.randomiseFielderPositions = function () {
var _local1 = this;
var seed;
var temp;
var pos;
var sixAreasOrder;
var i = 0;
while (i < _local1.fielderPositions.length) {
var _local2 = 0;
while (_local2 < _local1.fielderPositions[i].length) {
var _local3 = 0;
while (_local3 < _local1.fielderPositions[i][_local2].length) {
seed = _local3 + random(_local1.fielderPositions[i][_local2].length - _local3);
temp = _local1.fielderPositions[i][_local2][seed];
_local1.fielderPositions[i][_local2][seed] = _local1.fielderPositions[i][_local2][_local3];
_local1.fielderPositions[i][_local2][_local3] = temp;
_local3++;
}
_local2++;
}
i++;
}
sixAreasOrder = [0, 1, 2, 3];
var i = 0;
while (i < sixAreasOrder.length) {
seed = i + random(sixAreasOrder.length - i);
temp = sixAreasOrder[seed];
sixAreasOrder[seed] = sixAreasOrder[i];
sixAreasOrder[i] = temp;
i++;
}
seed = random(_local1.fielderPositions[0][sixAreasOrder[0]].length);
pos = _local1.fielderPositions[0][sixAreasOrder[0]][seed];
_local1.fielders[0]._x = pos[0];
_local1.fielders[0]._y = pos[1];
seed = random(_local1.fielderPositions[0][sixAreasOrder[1]].length);
pos = _local1.fielderPositions[0][sixAreasOrder[1]][seed];
_local1.fielders[1]._x = pos[0];
_local1.fielders[1]._y = pos[1];
seed = random(_local1.fielderPositions[0][sixAreasOrder[2]].length);
pos = _local1.fielderPositions[0][sixAreasOrder[2]][seed];
_local1.fielders[2]._x = pos[0];
_local1.fielders[2]._y = pos[1];
seed = random(_local1.fielderPositions[1][sixAreasOrder[0]].length);
pos = _local1.fielderPositions[1][sixAreasOrder[0]][seed];
_local1.fielders[3]._x = pos[0];
_local1.fielders[3]._y = pos[1];
seed = random(_local1.fielderPositions[1][sixAreasOrder[1]].length);
pos = _local1.fielderPositions[1][sixAreasOrder[1]][seed];
_local1.fielders[4]._x = pos[0];
_local1.fielders[4]._y = pos[1];
seed = random(_local1.fielderPositions[1][sixAreasOrder[3]].length);
pos = _local1.fielderPositions[1][sixAreasOrder[3]][seed];
_local1.fielders[5]._x = pos[0];
_local1.fielders[5]._y = pos[1];
seed = random(_local1.fielderPositions[2][0].length);
pos = _local1.fielderPositions[2][0][seed];
_local1.fielders[6]._x = pos[0];
_local1.fielders[6]._y = pos[1];
seed = random(_local1.fielderPositions[2][1].length);
pos = _local1.fielderPositions[2][1][seed];
_local1.fielders[7]._x = pos[0];
_local1.fielders[7]._y = pos[1];
seed = random(_local1.fielderPositions[2][2].length);
pos = _local1.fielderPositions[2][2][seed];
_local1.fielders[8]._x = pos[0];
_local1.fielders[8]._y = pos[1];
seed = random(_local1.fielderPositions[3][0].length);
pos = _local1.fielderPositions[3][0][seed];
_local1.fielders[9]._x = pos[0];
_local1.fielders[9]._y = pos[1];
var i = 0;
while (i < _local1.fielders.length) {
_local1.fielders[i].faceTarget();
i++;
}
};
Game.prototype.updateScoreboard = function () {
var _local1 = this;
var _local2 = _local1.total;
if (_local1.total < 10) {
_local2 = "0" + _local2;
}
if (_local1.total < 100) {
_local2 = "0" + _local2;
}
var w = _local1.wickets;
if (_local1.wickets < 10) {
w = "0" + w;
}
var _local3 = _local1.overs - 1;
if (_local3 < 10) {
_local3 = "0" + _local3;
}
_local3 = _local3 + ("." + (_local1.ballNum - 1));
var li = _local1.lastInnings;
if (_local1.lastInnings < 10) {
li = "0" + li;
}
if (_local1.lastInnings < 100) {
li = "0" + li;
}
_local1.mc.scoreboard.total.text = _local2;
_local1.mc.scoreboard.wickets.text = w;
_local1.mc.scoreboard.overs.text = _local3;
_local1.mc.scoreboard.lastInnings.text = li;
};
Game.prototype.updateSmallPitch = function (mc) {
var _local1 = this;
var _local3 = mc;
if (_local3 != undefined) {
var _local2 = _local1.mc.scoreboard.pitch[_local3._name];
_local2._x = 0.66 * _local3._x;
_local2._y = 0.66 * _local3._y;
_local2._rotation = _local3._rotation;
_local2._visible = _local3._visible;
} else {
for (var i in _local1.mc.pitch) {
var _local2 = _local1.mc.scoreboard.pitch[_local1.mc.pitch[i]._name];
_local2._x = 0.66 * _local1.mc.pitch[i]._x;
_local2._y = 0.66 * _local1.mc.pitch[i]._y;
_local2._rotation = _local1.mc.pitch[i]._rotation;
_local2._visible = _local1.mc.pitch[i]._visible;
}
}
};
Game.prototype.zoomTo = function (scale) {
var _local1 = this;
_local1.mc.pitch.goalScale = scale;
_local1.mc.pitch.onEnterFrame = function () {
var _local1 = this;
_local1._xscale = _local1._xscale + (0.2 * (_local1.goalScale - _local1._xscale));
_local1._yscale = _local1._yscale + (0.2 * (_local1.goalScale - _local1._yscale));
if (Math.abs(_local1._xscale - _local1.goalScale) < 0.3) {
_local1._xscale = (_local1._yscale = _local1.goalScale);
delete _local1.onEnterFrame;
}
};
};
Game.prototype.killEventLoop = function () {
delete this.mc.onEnterFrame;
this.state = 0;
};
_global.game = new Game();
Symbol 8 MovieClip Frame 1
_visible = false;
Symbol 26 MovieClip Frame 1
stop();
Symbol 27 MovieClip Frame 1
stop();
Symbol 29 MovieClip [batsman] Frame 1
#initclip 3
Batsman = function () {
var _local1 = this;
_local1.maxAngle = 120;
_local1.maxRadius = 180;
_local1.minAngle = -_local1.maxAngle;
_local1.minSpeed = 0.1;
_local1.numFramesToBat = 5;
_local1.angle;
_local1.speed;
_local1.counter;
_local1.state;
};
Batsman.prototype = new MovieClip();
Batsman.prototype.init = function (startState) {
var _local1 = this;
_local1.state = startState;
_local1.angle = 0;
_local1.speed = 0;
_local1.counter = 0;
_local1.radar._visible = false;
_local1.marker._visible = true;
_local1.markerMask._rotation = 180;
_local1.batsmanGraphic._rotation = 0;
_local1.marker._xscale = (_local1.marker._yscale = 1);
_local1.onEnterFrame = _local1.update;
};
Batsman.prototype.update = function () {
var _local1 = this;
switch (_local1.state) {
case -1 :
_local1.killEventLoop();
return;
case 0 :
return;
case 1 :
_local1.initUserInteraction();
return;
case 2 :
_local1.handleUserInteraction();
return;
case 3 :
_local1.initBat();
return;
case 4 :
_local1.initAutoBat();
return;
case 5 :
_local1.doBat();
}
};
Batsman.prototype.initUserInteraction = function () {
var _local1 = this;
var callback = _local1;
_local1.hotSpot.onPress = function () {
callback.state = 2;
};
_local1.hotSpot.onRelease = function () {
callback.state = 3;
};
_local1.hotSpot.onReleaseOutside = function () {
callback.state = 3;
};
};
Batsman.prototype.handleUserInteraction = function () {
var _local1 = this;
_local1.radar._visible = true;
var x = _local1._xmouse;
var y = _local1._ymouse;
var _local3 = Math.sqrt((x * x) + (y * y));
_local3 = Math.min(_local3, _local1.maxRadius);
var _local2 = (180 * Math.atan2(y, x)) / Math.PI;
_local2 = Math.min(_local2, _local1.maxAngle);
_local2 = Math.max(_local2, _local1.minAngle);
_local1.markerMask._rotation = _local2 + 180;
_local1.batsmanGraphic._rotation = _local2;
_local1.marker._width = _local1.marker._width + (0.3 * ((2 * _local3) - _local1.marker._width));
_local1.marker._height = _local1.marker._width;
_local1.angle = _local2 / _local1.maxAngle;
_local1.speed = _local3 / _local1.maxRadius;
_local1.speed = Math.max(_local1.minSpeed, _local1.speed);
};
Batsman.prototype.initBat = function () {
var _local1 = this;
_local1.radar._visible = false;
if (_global.game.state == 0) {
_local1.init(1);
} else {
delete _local1.hotSpot.onPress;
delete _local1.hotSpot.onRelease;
delete _local1.hotSpot.onReleaseOutside;
_local1.counter = 0;
_local1.state = 5;
}
_local1.batsmanGraphic.ani.play();
};
Batsman.prototype.doBat = function () {
var _local1 = this;
var _local3 = 0.3 * _local1.batsmanGraphic._rotation;
_local1.markerMask._rotation = _local3 + 180;
_local1.batsmanGraphic._rotation = _local3;
var _local2 = 0.5 * _local1.marker._width;
_local1.marker._width = (_local1.marker._height = _local2);
if (_local2 < 1) {
_local1.markerMask._rotation = 180;
_local1.batsmanGraphic._rotation = 0;
delete _local1.onEnterFrame;
}
if ((++_local1.counter) == _local1.numFramesToBat) {
_local1.checkHit();
}
};
Batsman.prototype.initAutoBat = function () {
var _local3 = this;
if (random(100) < 10) {
trace("random angle");
_local3.angle = Math.random();
_local3.speed = (0.7 * Math.random()) + 0.3;
} else {
var _local2 = [[-3, 9]];
if (_global.game.previousAngle != null) {
trace(("_global.game.previousAngle[" + _global.game.previousAngle) + "]");
_local2.push([_global.game.previousAngle, _global.game.previousAngle]);
}
var i = 0;
while (i < _global.game.fielders.length) {
var fielderRadius = 27;
var x = (_global.game.fielders[i]._x - _local3._x);
var y = (_global.game.fielders[i]._y - _local3._y);
var dist = Math.sqrt((x * x) + (y * y));
var rad = Math.atan2(-y, -x);
var spread = Math.atan(fielderRadius / dist);
var rMin = int((180 * (rad - spread)) / Math.PI);
var rMax = int((180 * (rad + spread)) / Math.PI);
_local2.push([rMin, rMax]);
i++;
}
var goodAngles = [];
var i = _local3.minAngle;
while (i <= _local3.maxAngle) {
var isGood = true;
var _local1 = 0;
while (_local1 < _local2.length) {
if ((i >= _local2[_local1][0]) && (i <= _local2[_local1][1])) {
isGood = false;
break;
}
_local1++;
}
if (isGood) {
goodAngles.push(i);
}
i++;
}
if (goodAngles.length == 0) {
trace("no good angles - picking random angle");
_local3.angle = Math.random();
_local3.speed = (0.7 * Math.random()) + 0.3;
} else {
var gaps = [];
var prev = (goodAngles[0] - 1);
var currGap = [];
var i = 0;
while (i < goodAngles.length) {
if (goodAngles[i] == (prev + 1)) {
currGap.push(goodAngles[i]);
} else {
gaps.push(currGap);
currGap = [];
}
prev = goodAngles[i];
i++;
}
if (currGap.length > 0) {
gaps.push(currGap);
}
var bigGapRef;
var bigGapSize = 0;
var i = 0;
while (i < gaps.length) {
if (gaps[i].length > bigGapSize) {
bigGapSize = gaps[i].length;
bigGapRef = i;
}
i++;
}
var midPosition = Math.round(gaps[bigGapRef].length / 2);
var midAngle = gaps[bigGapRef][midPosition];
_local3.angle = midAngle / _local3.maxAngle;
_local3.speed = 1;
}
}
_local3.batsmanGraphic._rotation = _local3.minAngle + (_local3.angle * (_local3.maxAngle - _local3.minAngle));
_local3.marker._visible = false;
_local3.marker._width = (_local3.marker._height = _local3.speed * _local3.maxRadius);
_local3.counter = 0;
_local3.state = 0;
_local3.batsmanGraphic.ani.play();
};
Batsman.prototype.checkHit = function () {
var _local1 = this;
_global.game.checkHit(_local1.speed, _local1.angle, _local1.maxAngle);
};
Batsman.prototype.killEventLoop = function () {
delete this.onEnterFrame;
this.state = 0;
};
Object.registerClass("batsman", batsman);
#endinitclip
Symbol 38 MovieClip Frame 1
stop();
Symbol 43 MovieClip [bowler] Frame 1
#initclip 1
Bowler = function () {
var _local1 = this;
_local1.maxRadius = 140;
_local1.maxAngle = 25;
_local1.minAngle = -25;
_local1.minSpeed = 0.1;
_local1.numFramesToBowl = 6;
_local1.bowlStep;
_local1.angle;
_local1.speed;
_local1.counter;
_local1.state;
_local1.bowlerGraphic.ball._y = 17;
_local1.marker._xscale = (_local1.marker._yscale = 1);
};
Bowler.prototype = new MovieClip();
Bowler.prototype.init = function (startState) {
var _local1 = this;
_local1.state = startState;
_local1.angle = 0;
_local1.speed = 0;
_local1.counter = 0;
_local1.markerMask._rotation = 180;
_local1.batsmanGraphic._rotation = 0;
_local1.bowlerGraphic.ball._x = 0;
_local1.bowlerGraphic.ball._y = 17;
_local1.marker._xscale = (_local1.marker._yscale = 10);
_local1.onEnterFrame = _local1.update;
};
Bowler.prototype.update = function () {
var _local1 = this;
switch (_local1.state) {
case -1 :
_local1.killEventLoop();
return;
case 0 :
return;
case 1 :
_local1.initUserInteraction();
return;
case 2 :
_local1.handleUserInteraction();
return;
case 3 :
_local1.initBowl();
return;
case 4 :
_local1.initAutoBowl();
return;
case 5 :
_local1.doBowl();
return;
case 6 :
_local1.autoBowl();
}
};
Bowler.prototype.initUserInteraction = function () {
var _local1 = this;
_local1.bowlerGraphic.ball._visible = true;
_local1.marker._visible = true;
var callback = _local1;
_local1.hotSpot.onPress = function () {
callback.state = 2;
};
_local1.hotSpot.onRelease = function () {
callback.state = 3;
};
_local1.hotSpot.onReleaseOutside = function () {
callback.state = 3;
};
};
Bowler.prototype.handleUserInteraction = function () {
var _local1 = this;
var x = _local1._xmouse;
var y = _local1._ymouse;
var _local3 = Math.sqrt((x * x) + (y * y));
_local3 = Math.min(_local3, _local1.maxRadius);
_local1.markerMask._rotation = 0;
var _local2 = (180 * Math.atan2(-y, -x)) / Math.PI;
_local2 = Math.min(_local2, _local1.maxAngle);
_local2 = Math.max(_local2, _local1.minAngle);
_local1.markerMask._rotation = _local2;
_local1.bowlerGraphic._rotation = _local2;
_local1.bowlerGraphic.ball._y = 0;
_local1.marker._width = _local1.marker._width + (0.3 * ((2 * _local3) - _local1.marker._width));
_local1.marker._height = _local1.marker._width;
_local1.bowlerGraphic.ball._x = -0.5 * _local1.marker._height;
_local1.angle = (-_local2) / _local1.maxAngle;
_local1.speed = _local3 / _local1.maxRadius;
_local1.speed = Math.max(_local1.minSpeed, _local1.speed);
};
Bowler.prototype.initBowl = function () {
var _local1 = this;
delete _local1.hotSpot.onPress;
delete _local1.hotSpot.onRelease;
delete _local1.hotSpot.onReleaseOutside;
_local1.counter = 0;
_local1.bowlStep = (-_local1.bowlerGraphic.ball._x) / _local1.numFramesToBowl;
_local1.state = 5;
_local1.bowlerGraphic.ani.play();
};
Bowler.prototype.doBowl = function () {
var _local1 = this;
var _local3 = 0.3 * _local1.bowlerGraphic._rotation;
_local1.markerMask._rotation = _local3;
_local1.bowlerGraphic._rotation = _local3;
var _local2 = 0.5 * _local1.marker._width;
_local1.marker._width = (_local1.marker._height = _local2);
_local1.bowlerGraphic.ball._x = _local1.bowlerGraphic.ball._x + _local1.bowlStep;
if ((++_local1.counter) == _local1.numFramesToBowl) {
_local1.launchBall();
}
if ((_local2 < 1) && (_local1.counter >= _local1.numFramesToBowl)) {
_local1.markerMask._rotation = 180;
_local1.bowlerGraphic._rotation = 0;
delete _local1.onEnterFrame;
}
};
Bowler.prototype.initAutoBowl = function () {
var _local1 = this;
_local1.bowlerGraphic.ball._visible = true;
_local1.angle = 0.5 + (0.5 * Math.random());
_local1.speed = (0.7 * Math.random()) + 0.3;
_local1.marker._visible = false;
_local1.marker._width = (_local1.marker._height = _local1.speed * _local1.maxRadius);
_local1.counter = 0;
_local1.bowlStep = 0;
_local1.state = 6;
_local1.bowlerGraphic.ani.play();
};
Bowler.prototype.launchBall = function () {
this.bowlerGraphic.ball._visible = false;
_global.game.state = 7;
};
Bowler.prototype.autoBowl = function () {
var _local1 = this;
var _local2 = _local1.bowlerGraphic._rotation;
var _local3 = _local1.minAngle + (_local1.angle * (_local1.maxAngle - _local1.minAngle));
var angle = (_local2 + (0.08 * (_local3 - _local2)));
_local1.markerMask._rotation = angle;
_local1.bowlerGraphic._rotation = angle;
if (Math.abs(_local3 - _local2) < 0.1) {
_local1.state = 5;
}
};
Bowler.prototype.killEventLoop = function () {
delete this.onEnterFrame;
this.state = 0;
};
Object.registerClass("Bowler", Bowler);
#endinitclip
Symbol 48 MovieClip [teamButton] Frame 10
stop();
Symbol 52 MovieClip [fielder] Frame 1
#initclip 2
Fielder = function () {
var _local1 = this;
_local1.xTarget = 100;
_local1.yTarget = 0;
_local1.innerRing;
_local1.outerRing;
_local1.state;
};
Fielder.prototype = new MovieClip();
Fielder.prototype.init = function (startState) {
var _local1 = this;
_local1.state = startState;
_local1.faceTarget();
_local1.onEnterFrame = _local1.update;
};
Fielder.prototype.update = function () {
var _local1 = this;
switch (_local1.state) {
case -1 :
_local1.killEventLoop();
return;
case 0 :
return;
case 1 :
_local1.initUserInteraction();
return;
case 2 :
_local1.handleUserInteraction();
return;
case 3 :
_local1.disableUserInteraction();
}
};
Fielder.prototype.initUserInteraction = function () {
var _local1 = this;
_local1.onPress = function () {
this.state = 2;
};
_local1.onRelease = function () {
this.state = 0;
};
_local1.onReleaseOutside = function () {
this.state = 0;
};
};
Fielder.prototype.handleUserInteraction = function () {
var _local1 = this;
var _local2 = _local1._parent._xmouse;
var _local3 = _local1._parent._ymouse;
if (_local1.checkCollision(_local2, _local3)) {
_local1._x = _local2;
_local1._y = _local3;
_local1.faceTarget();
}
};
Fielder.prototype.checkCollision = function (x, y) {
var innerRingOK = true;
var outerRingOK = true;
var overlapping = false;
if (this.innerRing != undefined) {
innerRingOK = !this.innerRing.pointInEllipse(x, y);
}
if (this.outerRing != undefined) {
outerRingOK = this.outerRing.pointInEllipse(x, y);
}
for (var i in this._parent) {
var _local1 = this._parent[i];
if ((_local1 instanceof Fielder) && (_local1 != this)) {
var _local3 = _local1._x - x;
var _local2 = _local1._y - y;
if (((_local3 * _local3) + (_local2 * _local2)) < 2500) {
overlapping = true;
break;
}
}
}
return((innerRingOK && (outerRingOK)) && (!overlapping));
};
Fielder.prototype.disableUserInteraction = function () {
var _local1 = this;
delete _local1.onPress;
delete _local1.onRelease;
delete _local1.onReleaseOutside;
};
Fielder.prototype.faceTarget = function () {
var _local1 = this;
var _local3 = _local1.xTarget - _local1._x;
var _local2 = _local1.yTarget - _local1._y;
var angle = ((180 * Math.atan2(_local2, _local3)) / Math.PI);
_local1._rotation = angle;
_local1.setShadow();
};
Fielder.prototype.setShadow = function () {
var _local1 = (Math.PI * this._rotation) / 180;
var _local2 = 5.49778714378214;
var _local3 = 5 * Math.sin(_local1 + _local2);
var yShadow = (5 * Math.cos(_local1 + _local2));
this.shadow._x = _local3;
this.shadow._y = yShadow;
};
Fielder.prototype.killEventLoop = function () {
delete this.onEnterFrame;
this.state = 0;
};
Object.registerClass("Fielder", Fielder);
#endinitclip
Symbol 75 MovieClip Frame 1
init = function () {
var _local1 = this;
stop();
_local1.postLoadPause = 1000;
_local1.postLoadTimer;
_local1.onEnterFrame = updatePreloader;
};
updatePreloader = function () {
var _local2 = this;
var _local3 = _local2._parent.getBytesLoaded();
var bt = _local2._parent.getBytesTotal();
var cf = _local2._currentframe;
var _local1 = Math.floor((100 * _local3) / bt);
if (_local1 < 10) {
_local1 = "0" + _local1;
}
_local2.loadingBoard.percent.text = _local1;
if (_local1 == 100) {
_local2.loadingBoard.percent.text = "99";
_local2.gotoAndPlay(2);
delete _local2.onEnterFrame;
}
};
init();
Symbol 75 MovieClip Frame 32
stop();
this._parent.gotoAndStop("intro");
Symbol 86 MovieClip Frame 1
stop();
init = function () {
var _local1 = this;
getScoreURL = _root.basepath + "GetScoreXML.php";
var callback = _local1;
dataHandler = new LoadVars();
dataHandler.onLoad = function (success) {
if (success) {
callback.displayScores(this);
} else {
trace("failed to receive data");
}
delete this;
};
dataHandler.sendAndLoad(getScoreURL, dataHandler, "POST");
};
displayScores = function (scores) {
var numDecimalPlaces = 1;
var _local2 = Math.pow(10, numDecimalPlaces);
var _local1 = new XML();
_local1.ignoreWhite = true;
_local1.parseXML(unescape(scores));
var englandData = _local1.childNodes[0].childNodes[0].childNodes[0].attributes.avgScore;
var australiaData = _local1.childNodes[0].childNodes[0].childNodes[1].attributes.avgScore;
var englandScore = (Math.round(Number(englandData) * _local2) / _local2);
if (englandScore == int(englandScore)) {
englandScore = englandScore + ".0";
}
var _local3 = Math.round(Number(australiaData) * _local2) / _local2;
if (_local3 == int(_local3)) {
_local3 = _local3 + ".0";
}
currentScores.text = (("England " + englandScore) + "\nAustralia ") + _local3;
if (Number(australiaData) > Number(englandData)) {
gotoAndStop ("australia");
} else {
gotoAndStop ("england");
}
};
init();
Symbol 100 MovieClip Frame 1
stop();
Symbol 101 MovieClip Frame 64
stop();
Symbol 107 MovieClip Frame 1
stop();
Symbol 111 MovieClip Frame 1
stop();
Symbol 114 MovieClip Frame 1
stop();
Symbol 120 MovieClip Frame 1
stop();
Symbol 121 MovieClip Frame 1
init = function () {
var _local1 = new XML("<game><teams><team name='ENGLAND' colour='BLUE' id='1' /><team name='AUSTRALIA' colour='GREEN' id='2' /></teams></game>");
parseTeamData(_local1);
};
parseTeamData = function (teamData) {
var _local1 = new XML(unescape(teamData));
_local1 = _local1.childNodes[0].childNodes[0].childNodes[0];
_global.teamData = [];
while (_local1 != null) {
var _local3 = _local1.attributes.name.toUpperCase();
var _local2 = _local1.attributes.colour.toUpperCase();
var tID = _local1.attributes.id;
_global.teamData.push({name:_local3, colour:_local2, id:tID});
_local1 = _local1.nextSibling;
}
};
init();
if (_parent.introViewed) {
gotoAndStop ("end");
}
Symbol 121 MovieClip Frame 44
rocker.player.gotoAndStop("blue");
Symbol 121 MovieClip Frame 85
init = function () {
var _local1 = _global;
stop();
var root = this._parent;
playButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
playButton.onPress = function () {
_global.buttonDownSFX.start();
};
playButton.onRelease = function () {
root.gotoAndStop("team");
};
instructionsButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
instructionsButton.onPress = function () {
_global.buttonDownSFX.start();
};
instructionsButton.onRelease = function () {
root.gotoAndStop("instructions");
};
leaderboardButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
leaderboardButton.onPress = function () {
_global.buttonDownSFX.start();
};
leaderboardButton.onRelease = function () {
root.gotoAndStop("leaderboard");
};
tellFriendButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
tellFriendButton.onPress = function () {
_global.buttonDownSFX.start();
};
tellFriendButton.onRelease = function () {
root.gotoAndStop("fgf");
};
bonusButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
bonusButton.onPress = function () {
_global.buttonDownSFX.start();
};
bonusButton.onRelease = function () {
root.bonusPanel.show();
};
};
init();
if (_parent.introViewed) {
rocker.player.gotoAndStop("blue");
rocker._xscale = (rocker._yscale = 4);
rocker._y = 174.9;
rocker.currStep = 0;
rocker.scales = [3.9, 27.9, 51.9, 76, 100, 103.2, 106.5, 104.3, 102.2, 100];
rocker.yVals = [174.9, 139.75, 104.65, 69.5, 33.9, 29.15, 24.4, 27.55, 30.7, 33.9];
rocker.onEnterFrame = function () {
var _local1 = this;
_local1._xscale = (_local1._yscale = _local1.scales[_local1.currStep]);
_local1._y = _local1.yVals[_local1.currStep];
if ((++_local1.currStep) == _local1.scales.length) {
delete _local1.onEnterFrame;
}
};
} else {
_parent.introViewed = true;
}
Symbol 124 Button
on (release) {
getURL ("http://switch.atdmt.com/action/pmlcan_fromcricketgametocantorspreadfairhomepag_6", "cantor");
}
Symbol 138 MovieClip Frame 1
hide = function () {
var _local1 = this;
if (_local1._parent.gameMC != undefined) {
_local1._parent.gameMC.state = gameState;
_local1._parent.gameMC.pitch.bowler.state = bowlerState;
_local1._parent.gameMC.pitch.batsman.state = batsmanState;
}
disableScrollbar();
_local1.gotoAndStop("hidden");
};
show = function () {
var _local1 = this;
_local1.gotoAndStop("showing");
backButton.onRelease = function () {
hide();
};
dummyButton.onRelease = function () {
};
dummyButton.useHandCursor = false;
gameState = _local1._parent.gameMC.state;
bowlerState = _local1._parent.gameMC.pitch.bowler.state;
batsmanState = _local1._parent.gameMC.pitch.batsman.state;
initScrollbar();
};
initScrollbar = function () {
var _local1 = this;
var yMinHandle = -105.2;
var yMaxHandle = 83.4;
var yMinContent = -106.9;
var yMaxContent = -338.3;
handle.onPress = function () {
var _local1 = this;
_local1.startDrag(false, _local1._x, yMinHandle, _local1._x, yMaxHandle);
};
handle.onRelease = (handle.onReleaseOutside = function () {
this.stopDrag();
});
handle.useHandCursor = false;
_local1.onEnterFrame = function () {
var _local1 = (handle._y - yMinHandle) / (yMaxHandle - yMinHandle);
content._y = yMinContent + (_local1 * (yMaxContent - yMinContent));
};
};
disableScrollbar = function () {
delete this.onEnterFrame;
handle.enabled = false;
};
gameState = 0;
bowlerState = 0;
batsmanState = 0;
this.gotoAndStop("hidden");
Symbol 144 MovieClip Frame 1
marker._visible = false;
Symbol 145 MovieClip Frame 1
marker._visible = false;
Symbol 182 MovieClip Frame 1
stop();
Symbol 185 MovieClip Frame 1
stop();
Symbol 191 MovieClip Frame 1
initBowlerAnimation = function () {
rotationStep = 1;
scaleStep = 5;
counter = 0;
markerBowler._xscale = 5;
markerBowler._yscale = 5;
bowlerGraphic.ball._y = 0;
markerBatsman._xscale = 5;
markerBatsman._yscale = 5;
batsmanGraphic._rotation = 0;
markerMaskBatsman._rotation = 180;
this.onEnterFrame = animateBowler;
};
animateBowler = function () {
markerMaskBowler._rotation = markerMaskBowler._rotation + (rotationStep >> 2);
bowlerGraphic._rotation = bowlerGraphic._rotation + (rotationStep >> 2);
markerBowler._xscale = markerBowler._xscale + scaleStep;
markerBowler._yscale = markerBowler._yscale + scaleStep;
bowlerGraphic.ball._x = (-markerBowler._width) / 2;
var _local1 = {x:0, y:0};
bowlerGraphic.ball.localToGlobal(_local1);
this.globalToLocal(_local1);
cursor._x = _local1.x;
cursor._y = _local1.y;
if (counter == 40) {
rotationStep = -2 * rotationStep;
scaleStep = -scaleStep;
}
if ((++counter) == 90) {
initCursorToBatsman();
}
};
initCursorToBatsman = function () {
var _local2 = batsmanGraphic._x;
var _local1 = batsmanGraphic._y;
stepX = (_local2 - cursor._x) / 30;
stepY = (_local1 - cursor._y) / 30;
counter = 0;
this.onEnterFrame = moveCursorToBatsman;
};
moveCursorToBatsman = function () {
cursor._x = cursor._x + stepX;
cursor._y = cursor._y + stepY;
if ((++counter) == 30) {
initBatsmanAnimation();
}
};
initBatsmanAnimation = function () {
rotationStep = -1;
scaleStep = 5;
counter = 0;
markerBatsman._xscale = 5;
markerBatsman._yscale = 5;
markerBowler._xscale = 5;
markerBowler._yscale = 5;
bowlerGraphic._rotation = 0;
markerMaskBowler._rotation = 0;
radar._visible = true;
this.onEnterFrame = animateBatsman;
};
animateBatsman = function () {
markerMaskBatsman._rotation = markerMaskBatsman._rotation + rotationStep;
markerBatsman._xscale = markerBatsman._xscale + scaleStep;
markerBatsman._yscale = markerBatsman._yscale + scaleStep;
batsmanGraphic._rotation = batsmanGraphic._rotation + rotationStep;
var _local2 = markerBatsman._width / 2;
var _local1 = {x:_local2, y:0};
batsmanGraphic.localToGlobal(_local1);
this.globalToLocal(_local1);
cursor._x = _local1.x;
cursor._y = _local1.y;
if (counter == 40) {
rotationStep = -2 * rotationStep;
scaleStep = -scaleStep;
}
if ((++counter) == 90) {
initCursorToBowler();
}
};
initCursorToBowler = function () {
radar._visible = false;
var _local2 = bowlerGraphic._x;
var _local1 = bowlerGraphic._y;
stepX = (_local2 - cursor._x) / 30;
stepY = (_local1 - cursor._y) / 30;
counter = 0;
this.onEnterFrame = moveCursorToBowler;
};
moveCursorToBowler = function () {
cursor._x = cursor._x + stepX;
cursor._y = cursor._y + stepY;
if ((++counter) == 30) {
initBowlerAnimation();
}
};
initBowlerAnimation();
Symbol 198 MovieClip Frame 38
stop();
backButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
backButton.onPress = function () {
_global.buttonDownSFX.start();
};
backButton.onRelease = function () {
gotoAndPlay ("out");
};
nextButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
nextButton.onPress = function () {
_global.buttonDownSFX.start();
};
nextButton.onRelease = function () {
nextFrame();
};
Symbol 198 MovieClip Frame 87
_parent.gotoAndStop("INTRO");
Symbol 200 Button
on (release) {
gotoAndPlay ("instructions");
}
Symbol 202 MovieClip Frame 80
stop();
Symbol 210 MovieClip Frame 1
stop();
Symbol 211 MovieClip Frame 1
init = function () {
userTeamSet = false;
var root = this._parent;
bonusButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
bonusButton.onPress = function () {
_global.buttonDownSFX.start();
};
bonusButton.onRelease = function () {
root.bonusPanel.show();
};
};
parseTeamData = function (teamData, callback) {
var _local1 = new XML(unescape(teamData));
_local1 = _local1.childNodes[0].childNodes[0].childNodes[0];
_global.teamData = [];
while (_local1 != null) {
var _local3 = _local1.attributes.name.toUpperCase();
var _local2 = _local1.attributes.colour.toUpperCase();
var tID = _local1.attributes.id;
_global.teamData.push({name:_local3, colour:_local2, id:tID});
_local1 = _local1.nextSibling;
}
callback.play();
};
layoutTeamButton = function (team, num) {
var _local2 = num;
var _local3 = _global;
if (team == undefined) {
} else {
var y0 = 28;
var yStep = 40;
var x = (((_local2 % 2) == 0) ? -110 : 34);
var y = (y0 + (yStep * int(_local2 / 2)));
var _local1 = this.attachMovie("teamButton", "team" + _local2, _local2, {_x:x, _y:y});
_local1.labelMC.label.text = _local3.teamData[_local2].name;
_local1.colour = _local3.teamData[_local2].colour;
_local1.id = _local3.teamData[_local2].id;
_local1.onRollOver = function () {
_global.buttonOverSFX.start();
this.labelMC.label.textColor = 16763904 /* 0xFFCC00 */;
};
_local1.onRollOut = function () {
this.labelMC.label.textColor = 16737792 /* 0xFF6600 */;
};
_local1.onDragOut = _local1.onRollOut;
_local1.onPress = function () {
_global.buttonDownSFX.start();
};
_local1.onRelease = function () {
pickTeam(this);
};
}
};
pickTeam = function (btn) {
var _local1 = _global;
var _local3 = btn;
if (userTeamSet) {
_local1.opponent = _local3.labelMC.label.text;
_local1.opponentColour = _local3.colour;
_local1.opponentID = _local3.id;
setupMatch();
} else {
_local1.team = _local3.labelMC.label.text;
_local1.teamColour = _local3.colour;
_local1.teamID = _local3.id;
if (_local1.teamData.length > 2) {
teamText.gotoAndStop("opponent");
gotoAndStop ("opponentsTeam");
} else if (_local1.teamData.length == 2) {
var _local2 = 0;
while (_local2 < _local1.teamData.length) {
if (_local1.teamData[_local2].name != _local3.labelMC.label.text) {
_local1.opponent = _local1.teamData[_local2].name;
_local1.opponentColour = _local1.teamData[_local2].colour;
_local1.opponentID = _local1.teamData[_local2].id;
setupMatch();
break;
}
_local2++;
}
}
}
userTeamSet = true;
_local3.enabled = false;
};
setupMatch = function () {
var _local1 = this;
var _local3 = _global;
for (var _local2 in _local1) {
if (typeof(_local1[_local2]) == "movieclip") {
removeMovieClip(_local1[_local2]);
}
}
if (_local3.teamData.length == 2) {
gotoAndPlay ("out");
} else {
teamText.gotoAndStop("match");
gotoAndStop ("match");
userTeam.labelMC.label.text = _local3.team;
opponentsTeam.labelMC.label.text = _local3.opponent;
_local1.moveOnTimer = setInterval(_local1, "moveOn", 1400);
}
};
moveOn = function () {
clearInterval(this.moveOnTimer);
gotoAndPlay ("out");
};
init();
rockerL.player.gotoAndStop("blue");
if (_global.gameInited) {
gotoAndPlay ("pickTeam");
}
Symbol 211 MovieClip Frame 13
rockerR.player.gotoAndStop("green");
Symbol 211 MovieClip Frame 15
layoutTeamButton(_global.teamData[0], 0);
Symbol 211 MovieClip Frame 17
layoutTeamButton(_global.teamData[1], 1);
Symbol 211 MovieClip Frame 19
layoutTeamButton(_global.teamData[2], 2);
Symbol 211 MovieClip Frame 21
layoutTeamButton(_global.teamData[3], 3);
Symbol 211 MovieClip Frame 23
if (_global.gameInited) {
rockerR.player.gotoAndStop("green");
layoutTeamButton(_global.teamData[0], 0);
layoutTeamButton(_global.teamData[1], 1);
layoutTeamButton(_global.teamData[2], 2);
layoutTeamButton(_global.teamData[3], 3);
}
Symbol 211 MovieClip Frame 25
stop();
Symbol 211 MovieClip Frame 68
this._parent.gotoAndStop("toss");
Symbol 217 MovieClip Frame 1
stop();
Symbol 220 MovieClip Frame 1
stop();
Symbol 250 MovieClip Frame 1
stop();
Symbol 250 MovieClip Frame 2
stop();
Symbol 257 MovieClip Frame 1
stop();
Symbol 260 MovieClip Frame 1
stop();
Symbol 266 MovieClip Frame 14
init = function () {
var _local1 = _global;
stop();
headsButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
headsButton.onPress = function () {
_global.buttonDownSFX.start();
};
headsButton.onRelease = function () {
doToss("heads");
};
tailsButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
tailsButton.onPress = function () {
_global.buttonDownSFX.start();
};
tailsButton.onRelease = function () {
doToss("tails");
};
};
doToss = function (userCall) {
userChoice = userCall;
if (System.capabilities.playerType == "External") {
coinToss = userChoice;
} else {
coinToss = ((random(2) == 0) ? "heads" : "tails");
}
play();
};
checkWin = function () {
if (userChoice == coinToss) {
gotoAndPlay ("batOrBowlUser");
} else {
gotoAndPlay ("batOrBowlAuto");
var _local1 = ((random(2) == 0) ? "bat" : "field");
_global.innings = _local1;
this.moveOnTimer = setInterval(this, "moveOn", 3000);
}
};
setBatOrBowlButtons = function () {
var _local1 = _global;
batButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
batButton.onPress = function () {
_global.buttonDownSFX.start();
};
batButton.onRelease = function () {
_global.innings = "bat";
gotoAndPlay ("out");
};
bowlButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
bowlButton.onPress = function () {
_global.buttonDownSFX.start();
};
bowlButton.onRelease = function () {
_global.innings = "field";
gotoAndPlay ("out");
};
};
moveOn = function () {
clearInterval(this.moveOnTimer);
gotoAndPlay ("out");
};
init();
Symbol 266 MovieClip Frame 50
hand.coin.gotoAndStop(((coinToss == "heads") ? 1 : 2));
Symbol 266 MovieClip Frame 76
checkWin();
Symbol 266 MovieClip Frame 96
stop();
setBatOrBowlButtons();
Symbol 266 MovieClip Frame 110
gotoAndPlay ("out");
Symbol 266 MovieClip Frame 116
var batBowl = ((_global.innings == "bat") ? "batting" : "bowling");
var opp = _global.opponent.substring(1).toLowerCase();
opp = _global.opponent.charAt(0).toUpperCase() + opp;
tossText.txt.text = ((("Too bad. It looks like " + opp) + " wants you to be ") + batBowl) + " first.";
Symbol 266 MovieClip Frame 121
bowlingLabel._visible = _global.innings == "field";
battingLabel._visible = _global.innings == "bat";
Symbol 266 MovieClip Frame 130
stop();
Symbol 266 MovieClip Frame 163
grounds.bowler.ball._y = 17;
var col = ((_global.innings == "bat") ? (_global.teamColour) : (_global.opponentColour));
grounds.batsman.ani.hat.gotoAndStop(col);
Symbol 266 MovieClip Frame 172
stop();
this._parent.gotoAndStop("game");
Symbol 273 MovieClip Frame 1
stop();
Symbol 296 MovieClip Frame 1
stop();
Symbol 299 MovieClip Frame 1
stop();
Symbol 299 MovieClip Frame 54
inningsOverTxt.text = "END OF INNINGS. CLICK NEXT TO START THE SECOND INNINGS";
var callback = _global.game;
nextButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
nextButton.onPress = function () {
_global.buttonDownSFX.start();
};
nextButton.onRelease = function () {
if (callback.innings == "bat") {
callback.state = 3;
} else {
callback.state = 1;
}
callback.overs = 1;
callback.wickets = 0;
callback.lastInnings = callback.total;
callback.total = 0;
callback.updateScoreboard();
};
var root = this._parent._parent;
bonusButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
bonusButton.onPress = function () {
_global.buttonDownSFX.start();
};
bonusButton.onRelease = function () {
root.bonusPanel.show();
};
Symbol 299 MovieClip Frame 64
var winLose;
if (_global.teamScore > _global.opponentScore) {
_global.winLose = "won";
} else if (_global.teamScore < _global.opponentScore) {
_global.winLose = "lost";
} else if (_global.opponentWickets > _global.teamWickets) {
_global.winLose = "won";
} else if (_global.opponentWickets < _global.teamWickets) {
_global.winLose = "lost";
} else {
_global.winLose = "drew";
}
gameOverTxt.text = ("GAME OVER - YOU " + _global.winLose.toUpperCase()) + "!\nCLICK NEXT TO CONTINUE.";
nextButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
nextButton.onPress = function () {
_global.buttonDownSFX.start();
};
nextButton.onRelease = function () {
this._parent._parent._parent.gotoAndStop("leaderboard");
};
var root = this._parent._parent;
bonusButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
bonusButton.onPress = function () {
_global.buttonDownSFX.start();
};
bonusButton.onRelease = function () {
root.bonusPanel.show();
};
Symbol 302 MovieClip Frame 1
stop();
Symbol 307 MovieClip Frame 1
stop();
Symbol 315 MovieClip Frame 1
stop();
gotoAndStop(_global.teamColour);
Symbol 320 MovieClip Frame 100
this._parent._parent.play();
this._parent._parent.mask.play();
stop();
Symbol 326 MovieClip Frame 78
this._parent._parent.play();
this._parent._parent.mask.play();
stop();
Symbol 334 MovieClip Frame 1
stop();
gotoAndStop(_global.teamColour);
Symbol 338 MovieClip Frame 80
this._parent._parent.play();
this._parent._parent.mask.play();
stop();
Symbol 354 MovieClip Frame 78
this._parent._parent.play();
this._parent._parent.mask.play();
stop();
Symbol 359 MovieClip Frame 78
this._parent._parent.play();
this._parent._parent.mask.play();
stop();
Symbol 360 MovieClip Frame 1
stop();
Symbol 361 MovieClip Frame 1
stop();
content.gotoAndStop("hidden");
showMovie = function (mov) {
content.gotoAndStop(mov);
mask.play();
play();
};
Symbol 361 MovieClip Frame 14
stop();
mask.stop();
Symbol 361 MovieClip Frame 27
gotoAndStop (1);
Symbol 370 MovieClip Frame 1
stop();
_global.game.init(this, _global.innings);
Symbol 374 MovieClip Frame 1
stop();
Symbol 377 MovieClip Frame 1
stop();
Symbol 380 MovieClip Frame 1
stop();
Symbol 399 MovieClip Frame 1
stop();
Symbol 418 MovieClip Frame 1
stop();
Symbol 432 MovieClip Frame 1
stop();
Symbol 442 MovieClip Frame 1
init = function () {
var _local1 = _global;
var _local2 = this;
sendScoreURL = _root.basepath + "SendScore.php";
getScoreURL = _root.basepath + "GetScoreXML.php";
stopAllSounds();
gamesTab.tabButton.onRelease = function () {
selectTab(gamesTab);
};
averagesTab.tabButton.onRelease = function () {
selectTab(averagesTab);
};
recordsTab.tabButton.onRelease = function () {
selectTab(recordsTab);
};
gamesTab.tabButton.gotoAndStop("_on");
gamesTab.tabButton.enabled = false;
if (_local1.gameInited) {
if (_local1.scoreSubmitted != true) {
submitButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
submitButton.onPress = function () {
_global.buttonDownSFX.start();
};
submitButton.onRelease = function () {
submitData();
};
submitButton.enabled = true;
submitMask._visible = false;
Selection.setFocus(userName);
}
tellAFriendButton._visible = true;
tellAFriendButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
tellAFriendButton.onPress = function () {
_global.buttonDownSFX.start();
};
tellAFriendButton.onRelease = function () {
this._parent._parent.gotoAndStop("fgf");
};
playAgainButton._visible = true;
playAgainButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
playAgainButton.onPress = function () {
_global.buttonDownSFX.start();
};
playAgainButton.onRelease = function () {
this._parent._parent.gotoAndStop("team");
};
playGameButton._visible = false;
} else {
submitMask._visible = true;
submitButton.enabled = false;
playGameButton._visible = true;
playGameButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
playGameButton.onPress = function () {
_global.buttonDownSFX.start();
};
playGameButton.onRelease = function () {
this._parent._parent.gotoAndStop("intro");
};
playAgainButton._visible = false;
tellAFriendButton._visible = false;
}
getScores();
};
selectTab = function (t) {
var _local3 = t;
var _local2 = [gamesTab.tabButton, averagesTab.tabButton, recordsTab.tabButton];
var _local1 = 0;
while (_local1 < _local2.length) {
_local2[_local1].enabled = true;
_local2[_local1].gotoAndStop("_up");
_local1++;
}
_local3.swapDepths(1000);
_local3.tabButton.gotoAndStop("_on");
_local3.tabButton.enabled = false;
};
getScores = function () {
var _local1 = this;
var callback = _local1;
dataHandler = new LoadVars();
dataHandler.onLoad = function (success) {
if (success) {
callback.displayScores(this);
} else {
trace("failed to receive data");
}
delete this;
};
dataHandler.sendAndLoad(getScoreURL, dataHandler, "POST");
};
displayScores = function (scores) {
var _local1 = _global;
var numDecimalPlaces = 1;
var dp = Math.pow(10, numDecimalPlaces);
var averagesData = [];
var scoresXML = new XML(unescape(scores));
trace(scoresXML);
averagesTab.team.text = "";
averagesTab.averageScore.text = "";
averagesTab.wicketsTaken.text = "";
averagesTab.battingAverage.text = "";
averagesTab.strikeRate.text = "";
var av = scoresXML.firstChild.childNodes[1];
var i = 0;
while (i < av.childNodes.length) {
if (av.childNodes[i].nodeType != 1) {
} else {
var teamName = "";
var _local2 = 0;
while (_local2 < _local1.teamData.length) {
if (_local1.teamData[_local2].id == av.childNodes[i].attributes.UserTeamId) {
teamName = _local1.teamData[_local2].name;
break;
}
_local2++;
}
var score = (Math.round(av.childNodes[i].attributes.avgScore * dp) / dp);
if (score == int(score)) {
score = score + ".0";
}
var wickets = (Math.round(av.childNodes[i].attributes.avguserWickets * dp) / dp);
if (wickets == int(wickets)) {
wickets = wickets + ".0";
}
var batting = (Math.round(av.childNodes[i].attributes.UserBattingRate * dp) / dp);
if (batting == int(batting)) {
batting = batting + ".0";
}
var strike = (Math.round(av.childNodes[i].attributes.avgUserStrikeRate * dp) / dp);
if (strike == int(strike)) {
strike = strike + ".0";
}
averagesTab.team.text = averagesTab.team.text + (teamName + newline);
averagesTab.averageScore.text = averagesTab.averageScore.text + (score + newline);
averagesTab.wicketsTaken.text = averagesTab.wicketsTaken.text + (wickets + newline);
averagesTab.battingAverage.text = averagesTab.battingAverage.text + (batting + newline);
averagesTab.strikeRate.text = averagesTab.strikeRate.text + (strike + newline);
averagesData.push([teamName, score]);
}
i++;
}
var bestScore = 0;
var bestTeam = "";
var i = 0;
while (i < averagesData.length) {
if (averagesData[i][1] > bestScore) {
bestScore = averagesData[i][1];
bestTeam = averagesData[i][0];
}
i++;
}
_local1.bestTeam = bestTeam;
_local1.bestScore = bestScore;
gamesTab.players.text = "";
gamesTab.team.text = "";
gamesTab.teamScore.text = "";
gamesTab.opponents.text = "";
gamesTab.opponentsScore.text = "";
var _local3 = scoresXML.firstChild.childNodes[3];
var i = 0;
while (i < _local3.childNodes.length) {
if (_local3.childNodes[i].nodeType != 1) {
} else {
var userScore = _local3.childNodes[i].attributes.UserScore;
var userWickets = _local3.childNodes[i].attributes.UserWickets;
var opponentScore = _local3.childNodes[i].attributes.OpponentScore;
var opponentWickets = _local3.childNodes[i].attributes.OpponentWickets;
var teamName = "";
var _local2 = 0;
while (_local2 < _local1.teamData.length) {
if (_local1.teamData[_local2].id == _local3.childNodes[i].attributes.UserTeamId) {
teamName = _local1.teamData[_local2].name;
break;
}
_local2++;
}
var opponentName = "";
_local2 = 0;
while (_local2 < _local1.teamData.length) {
if (_local1.teamData[_local2].id == _local3.childNodes[i].attributes.OpponentTeamId) {
opponentName = _local1.teamData[_local2].name;
break;
}
_local2++;
}
gamesTab.team.text = gamesTab.team.text + (teamName + newline);
gamesTab.opponents.text = gamesTab.opponents.text + (opponentName + newline);
gamesTab.teamScore.text = gamesTab.teamScore.text + (((userScore + " for ") + userWickets) + newline);
gamesTab.opponentsScore.text = gamesTab.opponentsScore.text + (((opponentScore + " for ") + opponentWickets) + newline);
gamesTab.players.text = gamesTab.players.text + (unescape(_local3.childNodes[i].attributes.UserName) + newline);
}
i++;
}
recordsTab.score.text = "";
recordsTab.team.text = "";
recordsTab.player.text = "";
var rc = scoresXML.firstChild.childNodes[5];
var i = 0;
while (i < rc.childNodes.length) {
if (rc.childNodes[i].nodeType != 1) {
} else {
var teamName = "";
var _local2 = 0;
while (_local2 < _local1.teamData.length) {
if (_local1.teamData[_local2].id == rc.childNodes[i].attributes.UserTeamId) {
teamName = _local1.teamData[_local2].name;
break;
}
_local2++;
}
recordsTab.team.text = recordsTab.team.text + (teamName + newline);
recordsTab.score.text = recordsTab.score.text + (rc.childNodes[i].attributes.score + newline);
recordsTab.player.text = recordsTab.player.text + (unescape(rc.childNodes[i].attributes.UserName) + newline);
}
i++;
}
gamesTab.cover._visible = false;
averagesTab.cover._visible = false;
recordsTab.cover._visible = false;
};
submitData = function () {
var _local1 = _global;
var _local3 = this;
var callback = _local3;
dataHandler = new LoadVars();
dataResult = new LoadVars();
dataHandler.UserName = escape(userName.text);
dataHandler.UserTeamId = escape(_local1.teamID.toString());
dataHandler.UserScore = escape(_local1.teamScore.toString());
dataHandler.UserStrikeRate = escape(_local1.strikeRate.toString());
dataHandler.UserBattingRate = escape(_local1.battingRate.toString());
dataHandler.UserWickets = escape(_local1.teamWickets.toString());
dataHandler.UserSixes = escape(_local1.userSixes.toString());
dataHandler.UserFours = escape(_local1.userFours.toString());
dataHandler.OpponentTeamId = escape(_local1.opponentID.toString());
dataHandler.OpponentScore = escape(_local1.opponentScore.toString());
dataHandler.OpponentWickets = escape(_local1.opponentWickets.toString());
for (var _local2 in datahandler) {
trace(((("[" + _local2) + "][") + datahandler[_local2]) + "]");
}
dataResult.onLoad = function (success) {
var _local1 = this;
trace(("success [" + success) + "]");
if (_local1.result == 1) {
trace("score data sent successfully!");
_global.scoreSubmitted = true;
callback.getScores();
} else {
trace(("failed to send score data. Error code [" + _local1.result) + "]");
}
};
dataHandler.sendAndLoad(sendScoreURL, dataResult, "POST");
submitButton.enabled = false;
submitMask._visible = true;
};
init();
Symbol 457 MovieClip Frame 1
init = function () {
var _local1 = _global;
stop();
fgfURL = _root.basepath + "TellAFriend.php";
normalLabelColour = 16750848 /* 0xFF9900 */;
hiliteLabelColour = 16763904 /* 0xFFCC00 */;
uNameLabel.text = "your name:";
fNameLabel.text = "friend's name:";
fEmailLabel.text = "friend's email address:";
feedback.text = "Please fill in the fields above and press submit.";
if (userName == undefined) {
userName = "";
}
if (friendName == undefined) {
friendName = "";
}
if (friendEmail == undefined) {
friendEmail = "";
}
uName.text = userName;
fName.text = friendName;
fEmail.text = friendEmail;
uNameLabel.textColor = normalLabelColour;
fNameLabel.textColor = normalLabelColour;
fEmailLabel.textColor = normalLabelColour;
submitButton.onRelease = function () {
checkData();
};
keyListener = new Object();
keyListener.onKeyDown = function () {
if (Key.getCode() == 13) {
checkData();
}
};
Key.addListener(keyListener);
Selection.setFocus(uName);
var root = this._parent;
playAgainButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
playAgainButton.onPress = function () {
_global.buttonDownSFX.start();
};
playAgainButton.onRelease = function () {
root.gotoAndStop("team");
};
leaderboardButton.onRollOver = function () {
_global.buttonOverSFX.start();
};
leaderboardButton.onPress = function () {
_global.buttonDownSFX.start();
};
leaderboardButton.onRelease = function () {
root.gotoAndStop("leaderboard");
};
};
checkData = function () {
userName = uName.text;
friendName = fName.text;
friendEmail = fEmail.text;
var _local2 = userName != "";
var _local3 = friendName != "";
var _local1 = checkEmail(friendEmail);
uNameLabel.textColor = (_local2 ? (normalLabelColour) : (hiliteLabelColour));
fNameLabel.textColor = (_local3 ? (normalLabelColour) : (hiliteLabelColour));
fEmailLabel.textColor = (_local1 ? (normalLabelColour) : (hiliteLabelColour));
if ((_local2 && (_local3)) && (_local1)) {
feedback.text = "Please wait while we send your information.";
submitButton.enabled = false;
sendData();
} else {
feedback.text = "Please check the highlighted fields and press submit again.";
}
};
checkEmail = function (str) {
return((str.indexOf(".") > 2) && (str.indexOf("@") > 0));
};
sendData = function () {
var _local1 = _global;
dataHandler = new LoadVars();
dataHandler.SENDERNAME = userName;
dataHandler.RECEIPIENTNAME = friendName;
dataHandler.RECEIPIENTEMAIL = friendEmail;
dataHandler.RUNVALUE = escape(_local1.teamScore.toString());
dataHandler.WICKETS = escape(_local1.teamWickets.toString());
dataHandler.SENDERTEAMNAME = escape(_local1.team);
dataHandler.OPPONENTTEAMNAME = escape(_local1.opponent);
dataHandler.WONLOST = escape(_local1.winLose);
dataHandler.LEADINGTEAM = escape(_local1.bestTeam);
dataHandler.LEADINGSCORE = escape(_local1.bestScore);
dataResult = new LoadVars();
dataResult.onLoad = function (success) {
if (success) {
trace("fgf data sent successfully!");
feedback.text = "Thank you! Your friend should receive an email shortly";
} else {
trace("failed to send fgf data");
feedback.text = "Sorry, there was a problem sending your email.\nPlease try again later.";
}
delete this;
};
dataHandler.sendAndLoad(fgfURL, dataResult, "POST");
};
init();