57 Commits

Author SHA1 Message Date
7a778b1a34 Update README 2025-10-22 11:42:50 +01:00
6aec397072 Make shots self-destruct after 4 seconds 2025-10-19 18:41:06 +01:00
cc5c118582 Make shots faster and lighter 2025-10-19 17:53:07 +01:00
f8a8edaa46 Make everything 2x smaller 2025-10-19 17:53:02 +01:00
50f5cb4347 Write README 2025-10-18 17:43:22 +01:00
f8bb2e0737 Add license (Komorebi 2.0.0) 2025-10-18 17:43:22 +01:00
6345479a18 Add armour items 2025-10-18 17:43:22 +01:00
cb0d7e67f1 Handle wrapping in physics_separation() 2025-10-18 17:43:22 +01:00
93ba6f4a04 Refactor into more modular architecture 2025-10-18 17:43:22 +01:00
26b9e1da94 Make aspect global 2025-10-18 17:43:22 +01:00
5604675ca6 Add pausing 2025-10-18 17:43:22 +01:00
07616120d3 Add score 2025-10-18 17:43:22 +01:00
4da5437715 Add levelling 2025-10-18 17:43:22 +01:00
2078eb07da Only display "clear" message for a short time 2025-10-18 17:43:22 +01:00
1f2fd1ce0e Don't spawn small asteroids 2025-10-18 17:43:22 +01:00
8cbe1b0431 Add huge asteroids 2025-10-18 17:43:22 +01:00
79ac5a489d Add "clear" text when all asteroids destroyed 2025-10-18 17:43:22 +01:00
88f49dab91 Create text module for displaying messages 2025-10-18 17:43:22 +01:00
d6ec24ae5d Add restart and handle quitting with callback 2025-10-18 17:43:22 +01:00
10be5ec391 Add game over message 2025-10-18 17:43:22 +01:00
7ed120899c Track asteroid count 2025-10-18 17:43:22 +01:00
bd6161505c Add shooting recoil 2025-10-18 17:43:22 +01:00
b964c277a7 Add renderer function to clear rectangle 2025-10-18 17:43:22 +01:00
450fdd8afe Tweak some parameters 2025-10-18 17:43:22 +01:00
fe3c615517 Wrap all entities and shapes 2025-10-18 17:43:22 +01:00
8d13b862c5 Replace big asteroids with smaller ones when shot 2025-10-18 17:43:22 +01:00
a1f289ef9d Prevent asteroids from spawning overlapped 2025-10-18 17:43:22 +01:00
4ce86ec405 Increase min distance asteroids spawn at 2025-10-18 17:43:22 +01:00
e9cb65534c Implement asteroid bouncing 2025-10-18 17:43:22 +01:00
1b3bc21026 Rename collision_radius to just radius 2025-10-18 17:43:22 +01:00
64b7fc60fc Handle collisions 2025-10-18 17:43:22 +01:00
1053d61fda Implement collision detection 2025-10-18 17:43:22 +01:00
9ed14e07e5 Add collision info to entities 2025-10-18 17:43:22 +01:00
da6a56b0b5 Refactor asteroid generation 2025-10-18 17:43:22 +01:00
0b4f014b33 Add more vector operations 2025-10-18 17:43:22 +01:00
1907d00782 Add asteroids 2025-10-18 17:43:22 +01:00
79dc3c1256 Move all input handling into input module 2025-10-18 17:43:22 +01:00
f992dd3d39 Create RNG module 2025-10-18 17:43:22 +01:00
c1f339484b Factor game logic into own module 2025-10-18 17:43:22 +01:00
cbe0d42c3c Increase max shapes and entities 2025-10-18 17:43:22 +01:00
7aa582f04b Allow display wrapping to be specified per shape 2025-10-18 17:43:22 +01:00
5da6b00fc8 Add shooting 2025-10-18 17:43:22 +01:00
10b675618f Add random jitter to fire 2025-10-18 17:43:22 +01:00
b4b46623da Move ship vertices so origin is closer to visual centre 2025-10-18 17:43:22 +01:00
ce0636aea6 Refactor to seperate shapes and physics 2025-10-18 17:43:22 +01:00
66e9dcbf8e Rename MAX_VERTS_PER_DRAW to MAX_VERTS 2025-10-18 17:43:22 +01:00
7d6be1eb14 Grab input device to stop key events reaching terminal 2025-10-18 17:43:22 +01:00
ed09a335d4 Add fire when thrust is active 2025-10-18 17:43:22 +01:00
e4a7c2e665 Use warning flags in build script 2025-10-18 17:43:22 +01:00
7db0c66920 Add control / update logic 2025-10-18 17:43:22 +01:00