Best approach for a board game

Greetings everyone. This time I have another conceptual question: I am now writting a board game where the pieces are placed in a matrix-like board. When a piece is clicked, I will present a layer with options and actions that will be applied to it after this layer is hidden.

My question is: which is the proper/best way to create the pieces?

My first attempt was writting my own cc.Sprite descendant class and register mouse and touch listeners. It partially worked, because I still have to understand why the events are still propagating. Honestly, it seems just too much work for such a simple task.

Another possibility would be using buttons instead of sprites and a third one would be creating menu items, one for each piece. But I am not sure which would be the best way for this.

So, I appreciate any guidance.

Thank you in advance.