Copernican Revolution for Players

It looks like my unification of players and enemies under base_entity went in little steps, but it was always satisfying when I could send large chunks of logic up the ancestry chain and make the player less “special” as an entity in the game world.

Mentioned here are two enemy types that I haven’t implemented yet at the time of writing, but I’m hoping to soon: fighters/avatars are meant to function like the player, having shields, engines, and powerup inventories (plus special powers for fun); platforms I envisioned as concentric circles of rotating weapon/shield/armour modules surrounding a core. As I expand the code to accommodate multi-object entities, the latter will become an imminent goal.

2021-12-22 7:45 PM I just finished a massive refactor of the bullet collision code in order to move it out of the player and base_enemy to base_entity. And, creepily, it seems to have worked on my first try.

This is a huge step towards making the player ship “just another entity”, unlocking the ability for multiplayer and player-like behaviour when fighting fighters/avatars.

  • Another step here will be to give base_player its own powerup inventory, score… there’s a lot of stuff to move out of global variables and into the player object instances. From there, we can have multiple players playing at once.