Ok. I'll get you added on github.
Yes, I've been having an inner debate, and I think I agree- the game is turning more into a physics puzzle platformer than I originally was thinking. I used box2d for my last game, it certainly would work well for most objects. My only thought is for character movement might do a few things unique there as I hate the way true physics feels for jumping and character movement! But probably can get it close with some tuning. When I started I was thinking more traditional platforming, less physics and interactions!
What I did in my last game was get the "platforms" tile layer and based on the flags turn those into box2d static objects in the world, then did a simple common method for taking the sprites bounding box (roughly) and creating the body with that. I'll grab some code from my old project and give it a try quick. I'll try to do one more push with whatever I get done on this tonight at some point.
I'm traveling for work, I won't probably get back online (coding wise) on this until later in the week.
Here's a few tips on reading the code:
Anything in the gamelib package is really my re-usable game library code I framed up on top of libGDX. A lot like Scene2d in some ways - layers, etc.
The game itself for the most part is in the gameoff package and right now is only a few files.
gameoff.java is where things boot up, it then adds the SplashScreenLayer and runs that, then does the TitleScreenLayer, then from there it loads up MainLayer.java where in loadLevel is the magic where it loads the tmx file and builds and has the game logic/main game loop. MainLayer is where we'd step the world etc for Box2D.
You can see in loadLevel I grab the "objects" layer from the tmx file/Tiled level, then for each object, I use the Type property and reflection to instantiate an instance of the object- for example "Platform" or "Block". Then I call init on it with the properties from the object in tiled, and it initializes. Then in each objects update is it's main logic. I had the idea that all the game objects would inherit from GameMapObject - which is where the physics live for most objects currently and other common things.
I'll have a look at Discord, I've ever used it, but I can get it installed. I probably can't jump on a call until later this week.
- Grant