A brand new game
for Windows, Linux, Mac, HTML5, 3DS Homebrew and more
29th March, 2019
Couple of issues.
I've forgotten to include "players on the same square" functionality in my board game engine.
The image above shows "Red" at square 1, but should also show "Blue" and "Green" there, too.
But it doesn't, because it only has space in the array for one object per grid reference.
My default DrawBoard(layer) function makes the whole thing MUCH simpler. In the above image, the code is as simple as ..
Which draws the board (layer 1 using the "only loaded for this game" Snakes and Ladders board spritesheet), draws the players (layer 1 using the default "Tokens" spritesheet), and handles the scrolling and zooming.
I'll need to add a "AddToBoard" function which lets me draw additional objects on top, after the fact, which can manage to handle the players a little bit better, and allow for more than one player per square.
I hadn't previously considered that I'd need to do that. Checkers, Chess, and other games I've had in mind, tend not to allow for more than one piece per square.
Luckily, I've stumbled upon this issue fairly early on in the building of the framework, so it'll be a moderately easy fix to make.
The "Load this asset specifically for this game" function is now working nicely, hence the Snakes and Ladders board showing up nicely.
The asset loader easily works with the previous DrawBoard() functions, and everything scales nicely.
.. Except when you zoom right in close.
My art looks bad enough, but when you zoom in, it starts to look horrific.
I personally think the None-Antialiased happens to look a little bit better. It's crisper, and a little more defined. The Antialiased version is all blurry, and not at all what you'd expect from a modern game.
But the art style needs to be drawn to match the scaling, rather than being full of giant noticeable pixels as it currently is.
.. That means having to redraw all those elements from scratch!
Expect Snakes and Ladders to appear at some point in the next day or so. I've still got a bunch more tweaks to add to the framework before it's ready to go.