Last active
December 18, 2015 04:19
-
-
Save PetterKraabol/5724471 to your computer and use it in GitHub Desktop.
This is one of my old Tic-Tac-Toe game code in ActionScript3. I suggest not to use it, as it is horrible and repeating.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import flash.events.MouseEvent; | |
stop(); | |
var currentPlayer = "x"; | |
//Initial | |
var newSymbol; | |
var ownerA1 = "none"; | |
var ownerA2 = "none"; | |
var ownerA3 = "none"; | |
var ownerB1 = "none"; | |
var ownerB2 = "none"; | |
var ownerB3 = "none"; | |
var ownerC1 = "none"; | |
var ownerC2 = "none"; | |
var ownerC3 = "none"; | |
/* | |
A1 A2 A3 | |
B1 B2 B3 | |
C1 C2 C3 | |
*/ | |
A1.addEventListener(MouseEvent.CLICK, checkA1); | |
A2.addEventListener(MouseEvent.CLICK, checkA2); | |
A3.addEventListener(MouseEvent.CLICK, checkA3); | |
B1.addEventListener(MouseEvent.CLICK, checkB1); | |
B2.addEventListener(MouseEvent.CLICK, checkB2); | |
B3.addEventListener(MouseEvent.CLICK, checkB3); | |
C1.addEventListener(MouseEvent.CLICK, checkC1); | |
C2.addEventListener(MouseEvent.CLICK, checkC2); | |
C3.addEventListener(MouseEvent.CLICK, checkC3); | |
function testAvailable(){ | |
if (ownerA1 == "none" || ownerA2 == "none" || ownerA3 == "none" || | |
ownerB1 == "none" || ownerB2 == "none" || ownerB3 == "none" || | |
ownerC1 == "none" || ownerC2 == "none" || ownerC3 == "none"){ | |
trace("Continue"); | |
}else{ | |
trace("No more"); | |
gotoAndStop(4); //It is a draw! | |
} | |
} | |
function testWin(){ | |
//Horizontal | |
if (ownerA1 == "x" && ownerA2 == "x" && ownerA3 == "x"){ | |
trace("Player X won A1-A3"); | |
gotoAndStop(2); // Player x win page | |
}else | |
if (ownerA1 == "o" && ownerA2 == "o" && ownerA3 == "o"){ | |
trace("Player O won A1-A3"); | |
gotoAndStop(3); // Player o win page | |
}else | |
// | |
if (ownerB1 == "x" && ownerB2 == "x" && ownerB3 == "x"){ | |
trace("Player X won B1-B3"); | |
gotoAndStop(2); | |
}else | |
if (ownerB1 == "o" && ownerB2 == "o" && ownerB3 == "o"){ | |
trace("Player O won B1-B3"); | |
gotoAndStop(3); | |
}else | |
// | |
if (ownerC1 == "x" && ownerC2 == "x" && ownerC3 == "x"){ | |
trace("Player X won C1-C3"); | |
gotoAndStop(2); | |
}else | |
if (ownerC1 == "o" && ownerC2 == "o" && ownerC3 == "o"){ | |
trace("Player O won C1-C3"); | |
gotoAndStop(3); | |
}else | |
//Vertical | |
//1 | |
if (ownerA1 == "x" && ownerB1 == "x" && ownerC1 == "x"){ | |
trace("Player X won A1-C1"); | |
gotoAndStop(2); | |
}else | |
if (ownerA1 == "o" && ownerB1 == "o" && ownerC1 == "o"){ | |
trace("Player O won A1-C1"); | |
gotoAndStop(3); | |
}else | |
//2 | |
if (ownerA2 == "x" && ownerB2 == "x" && ownerC2 == "x"){ | |
trace("Player X won A2-C2"); | |
gotoAndStop(2); | |
}else | |
if (ownerA2 == "o" && ownerB2 == "o" && ownerC2 == "o"){ | |
trace("Player O won A2-C2"); | |
gotoAndStop(3); | |
}else | |
//3 | |
if (ownerA3 == "x" && ownerB3 == "x" && ownerC3 == "x"){ | |
trace("Player X won A3-C3"); | |
gotoAndStop(2); | |
}else | |
if (ownerA3 == "o" && ownerB3 == "o" && ownerC3 == "o"){ | |
trace("Player O won A2-C2"); | |
gotoAndStop(3); | |
}else | |
//Diagonal | |
//1 | |
if (ownerA1 == "x" && ownerB2 == "x" && ownerC3 == "x"){ | |
trace("Player X won A1-C3"); | |
gotoAndStop(2); | |
}else | |
if (ownerA1 == "o" && ownerB2 == "o" && ownerC3 == "o"){ | |
trace("Player O won A1-C3"); | |
gotoAndStop(3); | |
}else | |
//2 | |
if (ownerA3 == "x" && ownerB2 == "x" && ownerC1 == "x"){ | |
trace("Player X won A3-C1"); | |
gotoAndStop(2); | |
}else | |
if (ownerA3 == "o" && ownerB2 == "o" && ownerC1 == "o"){ | |
trace("Player O won A3-C1"); | |
gotoAndStop(3); | |
}else{ | |
testAvailable(); //Check if any space available. | |
} | |
} | |
//A | |
function checkA1(evt:MouseEvent){ | |
if (ownerA1 == "none"){ | |
if (currentPlayer == "x"){ | |
var newSymbol = new PlayerX; | |
currentPlayer = "o"; | |
ownerA1 = "x"; | |
trace ("Player X now owns A1"); | |
}else if (currentPlayer == "o"){ | |
newSymbol = new PlayerO; | |
currentPlayer = "x"; | |
ownerA1 = "o"; | |
trace ("Player O now owns A1"); | |
} | |
newSymbol.x = A1.x; | |
newSymbol.y = A1.y; | |
addChild(newSymbol); | |
//Check if win | |
testWin(); | |
}else{ | |
trace ("A1 is already taken!"); | |
} | |
} | |
function checkA2(evt:MouseEvent){ | |
if (ownerA2 == "none"){ | |
if (currentPlayer == "x"){ | |
var newSymbol = new PlayerX; | |
currentPlayer = "o"; | |
ownerA2 = "x"; | |
trace ("Player X now owns A2"); | |
}else if (currentPlayer == "o"){ | |
newSymbol = new PlayerO; | |
currentPlayer = "x"; | |
ownerA2 = "o"; | |
trace ("Player O now owns A2"); | |
} | |
newSymbol.x = A2.x; | |
newSymbol.y = A2.y; | |
addChild(newSymbol); | |
//Check if win | |
testWin(); | |
}else{ | |
trace ("A2 is already taken!"); | |
} | |
} | |
function checkA3(evt:MouseEvent){ | |
if (ownerA3 == "none"){ | |
if (currentPlayer == "x"){ | |
newSymbol = new PlayerX; | |
currentPlayer = "o"; | |
ownerA3 = "x"; | |
trace ("Player X now owns A3"); | |
}else if (currentPlayer == "o"){ | |
newSymbol = new PlayerO; | |
currentPlayer = "x"; | |
ownerA3 = "o"; | |
trace ("Player O now owns A3"); | |
} | |
newSymbol.x = A3.x; | |
newSymbol.y = A3.y; | |
addChild(newSymbol); | |
//Check if win | |
testWin(); | |
}else{ | |
trace ("A3 is already taken!"); | |
} | |
} | |
//B | |
function checkB1(evt:MouseEvent){ | |
if (ownerB1 == "none"){ | |
if (currentPlayer == "x"){ | |
newSymbol = new PlayerX; | |
currentPlayer = "o"; | |
ownerB1 = "x"; | |
trace ("Player X now owns B1"); | |
}else if (currentPlayer == "o"){ | |
newSymbol = new PlayerO; | |
currentPlayer = "x"; | |
ownerB1 = "o"; | |
trace ("Player O now owns B1"); | |
} | |
newSymbol.x = B1.x; | |
newSymbol.y = B1.y; | |
addChild(newSymbol); | |
//Check if win | |
testWin(); | |
}else{ | |
trace ("B1 is already taken!"); | |
} | |
} | |
function checkB2(evt:MouseEvent){ | |
if (ownerB2 == "none"){ | |
if (currentPlayer == "x"){ | |
newSymbol = new PlayerX; | |
currentPlayer = "o"; | |
ownerB2 = "x"; | |
trace ("Player X now owns B2"); | |
}else if (currentPlayer == "o"){ | |
newSymbol = new PlayerO; | |
currentPlayer = "x"; | |
ownerB2 = "o"; | |
trace ("Player O now owns B2"); | |
} | |
newSymbol.x = B2.x; | |
newSymbol.y = B2.y; | |
addChild(newSymbol); | |
//Check if win | |
testWin(); | |
}else{ | |
trace ("B2 is already taken!"); | |
} | |
} | |
function checkB3(evt:MouseEvent){ | |
if (ownerB3 == "none"){ | |
if (currentPlayer == "x"){ | |
newSymbol = new PlayerX; | |
currentPlayer = "o"; | |
ownerB3 = "x"; | |
trace ("Player X now owns B3"); | |
}else if (currentPlayer == "o"){ | |
newSymbol = new PlayerO; | |
currentPlayer = "x"; | |
ownerB3 = "o"; | |
trace ("Player O now owns B3"); | |
} | |
newSymbol.x = B3.x; | |
newSymbol.y = B3.y; | |
addChild(newSymbol); | |
//Check if win | |
testWin(); | |
}else{ | |
trace ("B3 is already taken!"); | |
} | |
} | |
//C | |
//B | |
function checkC1(evt:MouseEvent){ | |
if (ownerC1 == "none"){ | |
if (currentPlayer == "x"){ | |
newSymbol = new PlayerX; | |
currentPlayer = "o"; | |
ownerC1 = "x"; | |
trace ("Player X now owns C1"); | |
}else if (currentPlayer == "o"){ | |
newSymbol = new PlayerO; | |
currentPlayer = "x"; | |
ownerC1 = "o"; | |
trace ("Player O now owns C1"); | |
} | |
newSymbol.x = C1.x; | |
newSymbol.y = C1.y; | |
addChild(newSymbol); | |
//Check if win | |
testWin(); | |
}else{ | |
trace ("C1 is already taken!"); | |
} | |
} | |
function checkC2(evt:MouseEvent){ | |
if (ownerC2 == "none"){ | |
if (currentPlayer == "x"){ | |
newSymbol = new PlayerX; | |
currentPlayer = "o"; | |
ownerC2 = "x"; | |
trace ("Player X now owns C2"); | |
}else if (currentPlayer == "o"){ | |
newSymbol = new PlayerO; | |
currentPlayer = "x"; | |
ownerC2 = "o"; | |
trace ("Player O now owns C2"); | |
} | |
newSymbol.x = C2.x; | |
newSymbol.y = C2.y; | |
addChild(newSymbol); | |
//Check if win | |
testWin(); | |
}else{ | |
trace ("C2 is already taken!"); | |
} | |
} | |
function checkC3(evt:MouseEvent){ | |
if (ownerC3 == "none"){ | |
if (currentPlayer == "x"){ | |
newSymbol = new PlayerX; | |
currentPlayer = "o"; | |
ownerC3 = "x"; | |
trace ("Player X now owns C3"); | |
}else if (currentPlayer == "o"){ | |
newSymbol = new PlayerO; | |
currentPlayer = "x"; | |
ownerC3 = "o"; | |
trace ("Player O now owns C3"); | |
} | |
newSymbol.x = C3.x; | |
newSymbol.y = C3.y; | |
addChild(newSymbol); | |
//Check if win | |
testWin(); | |
}else{ | |
trace ("C3 is already taken!"); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment