Made some progress on the shoot ’em up game I’m working on. We got bats, explosions, and somewhat of a level... what else do we need in there? 🤔 #screenshotsaturday #gamedev #pico8
gamedev
Oh, I've also replaced one large if-else statement with a switch statement. I think that might help with performance. Contrary to popular belief, a switch statement and an if-else statement do not compile the same way. if-else uses branching instructions (constantly checking for and calculating conditions) while a switch statement uses a lookup table.
@10grans beg
gamedev
Maybe it did fix the lag, but only slightly. I've also rearranged some if-statements, which also seemed to help.
Regardless, if you drive slowly enough, eventually all the cars in the level will appear on-screen at once because the only start moving once they are fully onscreen and will only disappear once they are on the bottom of the screen. So you will eventually get lag. But nobody is going to play the game that way so who cares?
Unlike my previous game, enemies do have some sort of AI, as opposed to just having patterns. Naturally, there are a few state machines and lot of if-statements even for this basic AI, but that's also because of poor planning. Some could be turned into switch statements.
Also, having a mine car does increase difficulty, a little bit. So, I probably won't need that much more cars on screen.
Anyway, the game is coming along nicely and quickly regardless. Like the last game, don't expect anything ground-breaking, just something that would be fun for a couple of minutes.