home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Champak 112
/
jogo-disk-112.iso
/
Games
/
parking_zone.swf
/
scripts
/
frame_1
/
DoAction.as
Wrap
Text File
|
2010-07-14
|
9KB
|
339 lines
function prepareBoard(boardNum, resetMoves)
{
msg.swapDepths(13600);
msg.gotoAndPlay("stagePass");
var i = 0;
while(i <= 5)
{
var j = 1;
while(j <= 5)
{
this["bridge" + i + j]._visible = false;
j++;
}
i++;
}
bridgesArray = this["bridges" + boardNum].split(",");
var i = 0;
while(i < bridgesArray.length)
{
if(bridgesArray[i].substr(0,1) > bridgesArray[i].substr(1,1))
{
bridgesArray[i] = bridgesArray[i].substr(1,1) + bridgesArray[i].substr(0,1);
}
this["bridge" + bridgesArray[i]]._visible = true;
this["bridge" + bridgesArray[i]].swapDepths(1000 + i * 100);
i++;
}
positionsArray = this["positions" + boardNum].split(",");
carOnParking = new Array();
var i = 1;
while(i <= 5)
{
this["car" + positionsArray[i - 1]]._x = this["parking" + i]._x;
this["car" + positionsArray[i - 1]]._y = this["parking" + i]._y;
carOnParking[i] = positionsArray[i - 1];
i++;
}
if(resetMoves == true)
{
moves = 0;
}
freeParking = 0;
checkPositions();
rotateAllConnectedCars();
}
function clearBoard()
{
var i = 0;
while(i <= 5)
{
var j = 1;
while(j <= 5)
{
this["bridge" + i + j]._visible = false;
j++;
}
i++;
}
var i = 1;
while(i <= 5)
{
this["car" + i].gotoAndStop(6);
i++;
}
var i = 1;
while(i <= 6)
{
this["parking" + i].gotoAndStop(7);
i++;
}
msg.gotoAndStop(1);
}
function connectionExists(fromTo)
{
if(fromTo.substr(0,1) > fromTo.substr(1,1))
{
fromTo = fromTo.substr(1,1) + fromTo.substr(0,1);
}
var i = 0;
while(i < bridgesArray.length)
{
if(fromTo == bridgesArray[i])
{
return true;
}
i++;
}
return false;
}
function rotateAllConnectedCars()
{
var i = 0;
while(i <= 5)
{
if(connectionExists(i.toString() + freeParking))
{
this["car" + carOnParking[i]].rotateCarToFree();
}
else
{
carStoppedRotating();
}
i++;
}
}
function crossBridge(parkingNum)
{
carToMove = carOnParking[parkingNum];
if(animation)
{
buttonsBlocked(true);
if(parkingNum > freeParking)
{
bridgeToCross = freeParking.toString() + parkingNum;
}
else
{
bridgeToCross = parkingNum.toString() + freeParking;
}
_root["car" + carToMove].swapDepths(_root["bridge" + bridgeToCross].getDepth() + 1);
this["car" + carToMove]._rotation = this["car" + carToMove].targetAngle;
this["car" + carToMove].gas.play();
xStartDistance = _root["parking" + freeParking]._x - _root["car" + carToMove]._x;
yStartDistance = _root["parking" + freeParking]._y - _root["car" + carToMove]._y;
carMover.onEnterFrame = function()
{
xDistance = _root["parking" + freeParking]._x - _root["car" + carToMove]._x;
yDistance = _root["parking" + freeParking]._y - _root["car" + carToMove]._y;
_root["car" + carToMove]._x += xStartDistance / 30;
_root["car" + carToMove]._y += yStartDistance / 30;
if(Math.abs(xDistance) < 5 and Math.abs(yDistance) < 5)
{
_root["car" + carToMove]._x = _root["parking" + freeParking]._x;
_root["car" + carToMove]._y = _root["parking" + freeParking]._y;
carOnParking[parkingNum] = 0;
carOnParking[freeParking] = carToMove;
freeParking = parkingNum;
moves++;
checkPositions();
stoppedRotatingCars = 0;
rotateAllConnectedCars();
delete this.onEnterFrame;
}
};
}
else
{
_root["car" + carToMove]._x = _root["parking" + freeParking]._x;
_root["car" + carToMove]._y = _root["parking" + freeParking]._y;
carOnParking[parkingNum] = 0;
carOnParking[freeParking] = carToMove;
freeParking = parkingNum;
moves++;
checkPositions();
stoppedRotatingCars = 0;
rotateAllConnectedCars();
}
}
function checkPositions()
{
totalCorrects = 0;
var i = 1;
while(i <= 5)
{
if(carOnParking[i] == i)
{
this["parking" + i].correctCar._visible = true;
totalCorrects++;
}
else
{
this["parking" + i].correctCar._visible = false;
}
i++;
}
if(totalCorrects == 5)
{
BoardFinished();
}
}
function BoardFinished()
{
boardScore = (maxMoves - moves) * 10;
if(boardScore < 0)
{
boaedScore = 0;
}
addScore(boardScore);
boardScoreBlinker.gotoAndPlay("blink");
blowup.gotoAndPlay("blow");
currentBoard++;
prepareBoard(currentBoard,true);
}
function buttonsBlocked(bulian)
{
var i = 0;
while(i <= 5)
{
this["parking" + i].btn._visible = !bulian;
i++;
}
}
function carStoppedRotating()
{
stoppedRotatingCars++;
if(stoppedRotatingCars == 6)
{
buttonsBlocked(false);
stoppedRotatingCars = 0;
var i = 0;
while(i <= 5)
{
if(connectionExists(i.toString() + freeParking))
{
this["parking" + i].btn._visible = true;
}
else
{
this["parking" + i].btn._visible = false;
}
i++;
}
}
}
function addScore(points)
{
score += points;
scoreText = thousandsDot(score);
}
function thousandsDot(scoreNum)
{
textualNum = scoreNum.toString();
if(scoreNum > 1000)
{
last3figures = textualNum.substr(-3);
Thousendsfigures = textualNum.substring(0,textualNum.length - 3);
textualNum = Thousendsfigures + "." + last3figures;
}
return textualNum;
}
function gameOver()
{
buttonsBlocked(true);
msg.gotoAndPlay("enterScore");
}
function submitScore()
{
myScore = Number(_root.scoreText);
if(scoreText.indexOf(".") > -1)
{
myScore *= 1000;
}
top10Vars.send("submitScore.asp?name=" + msg.myName + "&carNum =" + msg.myCar + "&score=" + myScore);
}
positions1 = "2,3,5,1,4";
bridges1 = "10,12,23,34,45,50,30,14,25";
positions2 = "5,4,2,3,1";
bridges2 = "10,20,40,50,15,23,34";
positions3 = "3,4,5,1,2";
bridges3 = "20,30,40,13,14,25,35";
positions4 = "4,3,5,2,1";
bridges4 = "30,10,50,15,14,25,24,23,34";
positions5 = "5,4,2,1,3";
bridges5 = "10,50,12,13,14,23,24,25,34,35,45";
positions6 = "5,3,4,2,1";
bridges6 = "10,12,14,15,23,24,25,34,45,50";
positions7 = "4,5,1,2,3";
bridges7 = "13,14,15,20,24,25,30,35,40";
positions8 = "3,5,4,2,1";
bridges8 = "10,12,15,23,24,34,30,45,50";
positions9 = "4,5,1,2,3";
bridges9 = "12,13,14,20,25,35,30,45,40";
positions10 = "2,4,5,1,3";
bridges10 = "10,12,23,24,30,34,45,50";
positions11 = "3,4,2,5,1";
bridges11 = "12,13,14,20,25,35,45,40";
positions12 = "3,4,5,2,1";
bridges12 = "10,12,13,20,23,31,34,35,45,40,50";
positions13 = "3,5,4,1,2";
bridges13 = "10,12,15,20,23,34,45,40,50";
positions14 = "5,3,4,1,2";
bridges14 = "10,12,13,23,30,34,35,45,50";
positions15 = "3,5,2,1,4";
bridges15 = "10,12,20,23,24,34,40,45,50";
positions16 = "4,1,5,3,2";
bridges16 = "10,13,20,23,34,35,40,50";
positions17 = "5,4,2,3,1";
bridges17 = "12,13,15,20,24,30,35,40,45";
positions18 = "3,5,4,1,2";
bridges18 = "10,12,13,15,20,23,24,34,35,40,45,50";
positions19 = "4,3,2,5,1";
bridges19 = "13,14,15,20,25,30,35,40";
positions20 = "2,5,4,1,3";
bridges20 = "10,12,14,23,25,34,45,50";
positions21 = "2,4,1,5,3";
bridges21 = "01,05,12,13,14,25,35,45";
positions22 = "5,4,2,1,3";
bridges22 = "01,03,05,12,15,23,34,45";
positions23 = "2,3,4,5,1";
bridges23 = "01,03,05,14,23,24,25,34";
positions24 = "5,4,1,2,3";
bridges24 = "01,02,04,05,12,13,35,45";
positions25 = "4,3,5,1,2";
bridges25 = "02,04,13,14,15,24,25,35";
positions26 = "5,1,4,3,2";
bridges26 = "01,02,03,04,05,12,23,34,45";
positions27 = "4,3,5,2,1";
bridges27 = "02,03,04,12,13,24,35,45";
positions28 = "5,1,4,2,3";
bridges28 = "01,03,05,14,15,23,25,34";
positions29 = "3,1,2,5,4";
bridges29 = "02,03,04,13,14,24,25,35";
positions30 = "3,4,5,1,2";
bridges30 = "01,05,14,15,23,24,25,34";
positions31 = "3,5,2,1,4";
bridges31 = "01,05,12,15,23,34,45";
positions32 = "4,3,5,2,1";
bridges32 = "01,03,05,12,23,34,45";
positions33 = "5,4,3,2,1";
bridges33 = "01,05,12,15,23,24,34,45";
positions34 = "5,4,1,3,2";
bridges34 = "02,03,04,12,13,15,35,45";
positions35 = "5,4,2,3,1";
bridges35 = "01,05,12,13,23,34,35,45";
positions36 = "2,3,4,5,1";
bridges36 = "02,04,12,13,15,24,35,45";
positions37 = "3,4,2,5,1";
bridges37 = "01,03,05,14,23,25,34";
positions38 = "4,3,5,2,1";
bridges38 = "01,05,12,23,24,34,45";
positions39 = "3,4,5,1,2";
bridges39 = "01,05,13,14,24,25,35";
positions40 = "5,3,2,1,4";
bridges40 = "01,05,14,15,23,25,34";
totalBoards = 40;
this.createEmptyMovieClip("carMover",2000);
top10Vars = new LoadVars();
stop();