Commit Graph

77 Commits

Author SHA1 Message Date
Lephenixnoir bca71726db
items on the floor 2022-02-16 17:42:05 +01:00
Lephenixnoir e87fa3b6ec
GUI transition when entering level 2022-02-16 14:54:26 +01:00
Lephenixnoir 33b8fda4da
bats now back off after an attack 2022-02-13 17:07:24 +01:00
Lephenixnoir d330c22d66
cap player knockback when swarmed 2022-02-13 16:03:16 +01:00
Lephenixnoir bf1f585889
fix asynchronous stack corruption from main menu timer 2022-02-13 16:03:15 +01:00
Lephenixnoir 70cac4ccf3
add level names in main menu 2022-02-13 12:09:35 +01:00
Lephenixnoir aced4c28be
basic main menu with transitions 2022-02-13 10:03:14 +01:00
Lephenixnoir 3c3883b076
animated tileset 2022-02-11 20:42:20 +01:00
Lephenixnoir 5d6b313d96
reduce time frame for Judgement damage 2022-02-09 11:11:58 +01:00
Lephenixnoir 8d3a0994c5
performance improvements with pathfinding
* Less queuing in Dijkstra by using distance[] to indicate the lowest
  queued distance (dir[] still doubles down as "seen" array). Drops
  iterations from ~350 to ~150, 5.5 ms -> 2.0 ms
* Less raycast attempts in the shortcut method, barely noticeable but
  avoids massive spikes from 7 to 35/75 ms in Lab with 40 entities (!!)
* General optimizations with -O3 instead of -Os (0.5-1.0 ms gained per
  frame for ~6 kB increase in size)
* Compute pathfinding every 4th frame for each entity, instead of every
  frame

Now basically a fairly 30 FPS, and that's 30 ms rendering + 3 ms
simulation.
2022-02-08 22:48:08 +01:00
Lephenixnoir 7bd5163dd6
stun/invulnerability, buffed shock skill 2022-02-07 20:41:39 +01:00
Lephenixnoir c58c976c24
beautifully-animated hud XP bar 2022-02-07 09:11:20 +01:00
Lephenixnoir 93c1028123
dijkstra-based pathfinding, avoids crowded areas 2022-02-06 09:32:54 +01:00
Lephenixnoir 70874e6808
skills, cooldowns for player & enemies, 2 bug fixes
Bugs fixed:
* AOEs whose origin died without recognizing them as their current
  attack would keep referencing a dead entity
* Entities without dash could be considered dashing when knocked back
  (still fragile)
2022-02-05 14:38:26 +01:00
Lephenixnoir e748684e08
add cooldown to player skills 2022-02-04 10:32:10 +01:00
Lephenixnoir f5a9d796be
handle dash cooldown as normal skill cooldown 2022-02-04 10:12:00 +01:00
Lephenixnoir 69baa8d319
ranged attackers + more versatile AI setup 2022-02-03 17:39:57 +01:00
Lephenixnoir b04333ddda
screenshake during major attacks 2022-02-02 10:16:59 +01:00
Lephenixnoir 45b13d898c
basic status screen by pressing F6 2022-01-18 13:52:45 +01:00
Lephenixnoir 65b23e83f2
bullet time and basic UI 2022-01-18 09:45:23 +01:00
Lephenixnoir fdde4809d3
add XP and player leveling
XP only lasts for one level/arena.
2022-01-17 18:29:05 +01:00
Lephenixnoir 1b2f0fbc15
add support for palette variations of sprites 2021-12-30 10:20:10 +01:00
Lephenixnoir b15d6fd71c
finalize stats model, add level 2 with "main menu" 2021-12-29 12:02:51 +01:00
Lephenixnoir b9e478d97b
preview next wave 2021-12-28 22:23:09 +01:00
Lephenixnoir c452bcabde
proper handling of enemy data and levels 2021-12-28 21:12:33 +01:00
Lephenixnoir 53d4281eb8
improve HUD 2021-12-28 21:01:20 +01:00
Lephenixnoir ce0959f3f6
fix rendering order + clean up old files 2021-12-28 20:28:17 +01:00
Lephenixnoir 0a759b3541
revamp maps and waves, now much cleaner 2021-12-28 17:53:16 +01:00
Lephenixnoir d942e1ffa7
particles as ECS entities, proper tilesets/maps (WIP) 2021-12-27 21:54:55 +01:00
Lephenixnoir 8ca3d6f22f
Add the new enemies and tilesets 2021-12-25 18:21:31 +01:00
Lephenixnoir cb3f363cfe
switch engine to ECS and rewrite just about everything 2021-12-25 11:48:53 +01:00
Lephenixnoir 228dec623e
minor code improvements, including renamed geometry types 2021-12-25 11:48:53 +01:00
Lephenixnoir f28231ff22
apply enemy walking animations 2021-10-23 17:23:24 +02:00
Lephenixnoir aba7fed1e9
apply new slime animations 2021-10-23 16:46:33 +02:00
Lephenixnoir 8bca321d0f
more test waves, preparing skills, better HUD 2021-10-23 15:10:35 +02:00
Lephenixnoir 6da57985fc
add bullet skill 2021-10-17 18:43:38 +02:00
Lephenixnoir a2e35698fe
add judgement skill, improve anim format 2021-10-17 16:22:09 +02:00
Lephenixnoir 59c7a9282d
refined HUD 2021-08-30 19:07:22 +02:00
Lephenixnoir 10b289d5eb
minor adjustments 2021-08-30 18:29:04 +02:00
Lephenixnoir dc37d1f533
add the shock mechanic 2021-08-30 14:53:02 +02:00
Lephenixnoir 59a26e0d1d
add shock anim, fix anims again 2021-08-30 11:39:14 +02:00
Lephenixnoir bcf6958049
fix anims and icons 2021-08-29 09:44:38 +02:00
Lephenixnoir d59f7f8870
parse actual Aseprite anims in converters 2021-08-28 13:53:22 +02:00
Lephenixnoir 361bb4832c
add a 2-hit combo for the player 2021-08-16 13:53:53 +02:00
Lephenixnoir 35718b93ac
prepare more attacks (skills/combos) 2021-08-16 13:31:28 +02:00
Lephenixnoir 89ee5234ea
add HUD and skill icons 2021-08-15 18:19:48 +02:00
Lephenixnoir 8e19f72a73
add player damage animations 2021-08-15 11:49:04 +02:00
Lephenixnoir 198371e529
add enemy damage animations 2021-08-15 11:05:04 +02:00
Lephenixnoir 90f43a2b7e
improve fixed point notation 2021-07-16 18:49:58 +02:00
Lephenixnoir 72e154a618
waves and enemy spawn sequences 2021-07-16 15:51:39 +02:00