Commit Graph

29 Commits

Author SHA1 Message Date
c5cea8dcb3 partial refactoring so we use EnemyMap.t for collection of enemies 2025-02-13 13:36:30 +00:00
07d31119a7 code functionality to filter out falling enemy from list if falling enemy is colliding with player 2025-02-08 11:05:58 +00:00
51401231e1 update state of falling enemies per loop 2025-02-08 09:49:32 +00:00
38640b14a2 add falling_enemies type to game (these enemies can be picked up and thrown), and thread fallingEnemies through enemy.sml to set up scaffolding for them 2025-02-08 09:20:10 +00:00
23cf480dad reimplement enemy-filter loop (now enemy's reaction, and decision to possibly filter, is fully under enemy's control - physics, damage reaction, whether to filter or update enemy's state, etc.) 2025-02-08 01:05:39 +00:00
e1e20230d6 rip out player-enemy.sml and let player react to enemy collisions independently of enemy reaction to player 2025-02-06 17:37:48 +00:00
e23e2f0997 precompute graph to be used for dijkstra's algorithm, resulting in CPU usage that never exceed 7/home/humza/Downloads/sml/oh-my-stars/fcore/path-finding.sml with 5 enemies and eliminating lag 2025-01-31 04:32:53 +00:00
50238b8dac done getting physics + environment to work on enemy as well, in addition to player 2025-01-13 09:52:25 +00:00
442c489af7 remove unused 'enemyTree' value returned from player-enemy.sml function 2025-01-12 19:31:29 +00:00
49282887e3 remove enemyTree (quad tree holding enemies) from game type as this is not static geometry and, since enemies are moving every frame, this should also be regenerated on every frame 2025-01-11 22:06:08 +00:00
75e28b892e done getting player's projectiles to collide with enemies successfully, and tested (although the code of the enemy reacting to the player is not the best) 2025-01-11 21:35:55 +00:00
0367b3a23c progress detecting collision between enemy and player's projectile, and decrementing enemy's health once detected 2025-01-11 13:45:29 +00:00
df0926195d decide on a different structure/module for each collision 2025-01-10 10:12:59 +00:00
29de4ea4b6 progress shooting off enemies as projectiles 2025-01-07 13:31:17 +00:00
f54fa1bf02 move projectile type into player type 2025-01-07 12:57:15 +00:00
8d81a4f354 remove player projectile tree from game type 2025-01-07 11:23:22 +00:00
60c93f54cc add player projectiles to game type 2025-01-07 11:05:53 +00:00
097d1502ad have pellets fly around player when player has attacked enemy 2025-01-01 14:17:42 +00:00
8e75d09fc1 add defeated enemies to player record 2025-01-01 09:53:30 +00:00
f199da790d add ability to charge for attack 2024-12-31 10:04:40 +00:00
7d09661e98 use different collision size when player is attacking 2024-12-28 04:11:29 +00:00
8804847d7a use binary search to find enemy with ID in 'GameUpdate.checkEnemies' function, because we previously relied on the enemy's index 2024-12-27 18:26:57 +00:00
ada63d54ce progress on player-enemy collisions when player is attacking enemy 2024-12-27 18:12:42 +00:00
01bc91e201 return (player, enemies vector) tuple from function to check player-enemy collisions, because we will later want to update both player and enemy in the event that both collide 2024-12-27 17:32:42 +00:00
8e29bad5a3 restore player-enemy collisions (this time in fcore/game-update.sml) 2024-12-24 19:00:11 +00:00
77c2ed4e62 a little refactoring 2024-12-24 12:05:44 +00:00
05cc1d3a46 begin coding enemy 2024-12-19 03:08:26 +00:00
ddd58fd534 add platform vector and platform quadtree to game type 2024-12-17 21:42:06 +00:00
cc7f30f718 add GameType.game_type which stores player and wall types, add GameUpdate.update function which takes a game type and returns a new game type, and refactor player/wall files, and gl-draw file, in light of these changes 2024-12-15 09:10:19 +00:00