What you want, is '2D' array. It's not coming anytime soon, sorry.

I advise against using 'ComboData' as an identifier. That's a pointer, in the alphas of 2.54.

Other than those points, the for loops in your functions seem extraneous: +16 pixels isn't needed when you are using combo positions. In fact, your function calls are wrong, too, as you're calling a setter, but expecting a return.

Thankfully, the actual combodata datatype, and the mapdata datatype, make it much easier to do what it looks like you are trying to accomplish.