Time for action – store the essentials
There are a few crucial values we need to remember throughout our game. Let's declare some variables at the very top of the GameScript (remember that typing the comments is optional, but the comments may help you understand the code).
import System.Collections.Generic; var cols:int = 4; // the number of columns in the card grid var rows:int = 4; // the number of rows in the card grid var totalCards:int = 16; var matchesNeededToWin:int = totalCards * 0.5; // If there are 16 cards, the player needs to find 8 matches to clear the board var matchesMade:int = 0; // At the outset, the player has not made any matches var cardW:int = 100; // Each card's width and height is 100 pixels var aCards:List.<Card>; // We'll store all the cards we create in this List var aGrid:Card[,]; // This 2d array will keep track of the shuffled,dealt cards var aCardsFlipped:List.<Card>; // This generic array list will store the two cards that the player flips over...