Posted January 12, 2020 by bogdanas
As I thought this weeks update will be weak, practically what I did is code and structure refactor. However now project has something what looks like pretty good and maintainable structure.
Now all the code in gdscript is type hinted:
func create_enemy() -> void: if get_parent().enemies > max_enemies: return var _enemy : Enemy = enemy.instance() _enemy.position = global_position _enemy.connect("tree_exited", get_parent(), "enemy_removed") _enemy.connect("tree_entered", get_parent(), "enemy_added") get_parent().call_deferred('add_child', _enemy)
And project folder structure is separated to logical units:
├───Components │ ├───Bullet │ ├───Enemies │ │ ├───Bullet │ │ └───Factories │ ├───GUI │ │ ├───HUD │ │ └───Joystick │ ├───Level │ ├───Pickups │ └───Player │ └───MainCannon ├───font ├───images │ ├───energybar │ ├───joystick │ ├───players │ │ └───saisho │ └───stars ├───Scenes │ ├───Game │ ├───Garage │ ├───HQ │ ├───Menu │ └───Settings └───Scripts
On the game design side of things I started to write design document for the game and working on the story. Player will play as a mercenary doing different missions (most of them will be destroy everything what moves, any ideas are welcome) for different factions. After completed mission player will get rewards which could be used to upgrade Your ship. Ships will be modular (upgradable), not decided how much upgrades there will be, but what I came up with (any ideas are welcome too):
Some changes implemented in code base or gameplay mechanics:
That's it, I believe next week I will finish first normal playable level (haven't decided yet if levels will be random/procedural generated, or hand crafted, or mixed bag). As I said, any ideas are welcome and till the next Sunday.