You could do the same with a 8x8 2D array, and a wider range of values for the different pieces. I wonder, why the 4-35 range for your pieces ? You could also store piece values as strings, like "BK" for "black king" or "WQ" for "white queen". Doesn't change anything but makes your events easier to read ! ;)
Basically, you'll have to create one set of event for each different kind of piece. You could do it with a function that receive 3 parameters : xPos, yPos and pieceType. Depending on the pieceType and the positions, you highlight the tiles that can be moved on.
How familiar are you with functions and array manipulation ?