Primaries prototype 02.
To control the selection box of a grid, the grid must be active. A grid is active when its border is brighter than the others. Only one grid may be active at a time. Press r to make the red grid active, g to make the green grid active, and b to make the blue grid active.
When a grid is active you may move the selection box around by using the arrow keys. The selection will wrap to the other side of the grid when you reach the edge.
At any time you may press s to swap the selected tiles clockwise or a to swap the selected tiles counter-clockwise.
Points are scored by matching three or more tiles of the same color either horizontally or vertically. However, you can only match red tiles in the grid with the red border, blue tiles in the grid with the blue border, and green tiles in the grid with the green border. When tiles are successfully matched, they clear and the tiles above them drop down. New tiles appear at the top of the grid.
If you swap the selected tiles and it results in a match in two or more grids, it results in a mixing of the colors and some tiles of the mixed color will appear at the top of the grid. For example, if you swap clockwise and it results in a match in the red grid and the blue grid, it will cause magenta tiles to appear at the top of the red and blue grids, along with the other primary colors If you matched three blue and three red, you might get a magenta tile, a red tile, and a green tile at the top of the blue grid and two magenta tiles, and a green tile at the top of the red grid. These mixed colors are called Secondaries and they may be matched in either of the grids that produced them. In other words, magenta tiles can be matched in the red grid and the blue grid. Mixing three Primaries (RGB) or two Secondaries (CMY) creates a White tile. White tiles can be matched in any of the grids.
Primaries are worth 5 points, Secondaries 10 points, and Whites 20. You get a x2 score multiplier when you create a Secondary and a x3 multiplier when you create a White.
Built with Processing