|
|
c99999c0c9
|
fix calculated distance for helpGetRightwardsPath (reused same distance calculate as in helpGetUpwardsPath before)
|
2025-01-18 13:52:21 +00:00 |
|
|
|
d59b6eab82
|
code functioln to get rightwards path
|
2025-01-18 13:29:56 +00:00 |
|
|
|
00a9f22151
|
keep track of visited nodes to prevent infinite recursion
|
2025-01-18 10:09:08 +00:00 |
|
|
|
f796f2f858
|
have functiokn to get upwards path semi-working
|
2025-01-18 00:25:27 +00:00 |
|
|
|
560ef3f99a
|
add function to get ID of first item found at location in quad tree (returns ~1 instead of NONE if no item is found)
|
2025-01-17 21:48:18 +00:00 |
|
|
|
cbddc03a88
|
progress towards implementing follow slime (slime only tries jumping when platform is reachable now)
|
2025-01-17 13:18:02 +00:00 |
|
|
|
20e34ca0d5
|
add function that returns true if we can jump on platform
|
2025-01-17 12:29:07 +00:00 |
|
|
|
c7bd95e5d7
|
distinguish between standing on wall vs standing on platform (platform can be jumped on but wall cannot)
|
2025-01-17 11:49:34 +00:00 |
|
|
|
67a4ad5664
|
start implementing patches to follow player (basic; shouldn't use path finding like Dijkstra's algorithm)
|
2025-01-17 11:43:49 +00:00 |
|
|
|
a05f211428
|
pass player record as argument for enemy filtering functiokns, so enemy can react to player state (position, etc.)
|
2025-01-16 08:15:29 +00:00 |
|
|
|
0c01b224d0
|
slight refactoring to help with extensibility of adding enemy variants later
|
2025-01-14 11:50:27 +00:00 |
|
|
|
90c29ebe24
|
make enemy's speed slightly slower than player's speed
|
2025-01-13 12:53:50 +00:00 |
|
|
|
2c643a1500
|
change speed that projectile moves at (should be faster than player)
|
2025-01-13 12:46:10 +00:00 |
|
|
|
2a940a9392
|
done with patroll function, successfully making enemy switch directions while patrolling
|
2025-01-13 12:40:23 +00:00 |
|
|
|
ee5f3c628d
|
progress towards having enemy patrol area when on wall/platform
|
2025-01-13 11:28:49 +00:00 |
|
|
|
690bfe75da
|
make plan for writing how enemy should patrol on wall/platform
|
2025-01-13 11:02:34 +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 |
|
|
|
4484eb0ef0
|
functorise environment collision patches
|
2025-01-13 09:42:32 +00:00 |
|
|
|
7290d9865d
|
have enemy physics working and applied to enemy
|
2025-01-12 23:58:21 +00:00 |
|
|
|
ce7520ce81
|
derive EnemyPhysics module from functor
|
2025-01-12 23:33:20 +00:00 |
|
|
|
27fbe1c12e
|
create enemy patch structure
|
2025-01-12 23:28:03 +00:00 |
|
|
|
ca6b0b2160
|
done refactoring player-specific logic, and also enemy-specific logic, from player-enemy.sml (which now just calls different functions from the player.sml and enemy.sml modules, to help player-enemy.sml maintain a high level overview)
|
2025-01-12 22:14:36 +00:00 |
|
|
|
3dddd096f7
|
a bit of additional refactoring
|
2025-01-12 22:10:58 +00:00 |
|
|
|
8052ad53f7
|
a bit of refactoring and clearer naming
|
2025-01-12 21:59:33 +00:00 |
|
|
|
442c489af7
|
remove unused 'enemyTree' value returned from player-enemy.sml function
|
2025-01-12 19:31:29 +00:00 |
|
|
|
8906d244eb
|
extract player patch types and functions to its own module
|
2025-01-12 19:25:05 +00:00 |
|
|
|
e280274ed0
|
add xAxis and yAxis fields to enemy type
|
2025-01-12 13:07:32 +00:00 |
|
|
|
c4989711df
|
refactor constants out of enemy.sml
|
2025-01-12 12:53:41 +00:00 |
|
|
|
9280a12911
|
functorise physics for player
|
2025-01-12 12:36:26 +00:00 |
|
|
|
ec44dd9966
|
refactor constants out from player.sml
|
2025-01-12 11:46:32 +00:00 |
|
|
|
a7c2e2ef01
|
progress moving constant values into own module
|
2025-01-12 07:18:44 +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 |
|
|
|
8498eacde2
|
a little bit of refactoring
|
2025-01-11 21:58:34 +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 |
|
|
|
f9f56e3b38
|
make sure projectiles are shot from the same x/y coordinates they are spinning at from the player
|
2025-01-09 15:00:56 +00:00 |
|
|
|
06bc691c7f
|
done drawing player projectiles
|
2025-01-09 12:11:41 +00:00 |
|
|
|
2433797caf
|
progress drawing projectiles
|
2025-01-09 11:52:39 +00:00 |
|
|
|
011fadb9f1
|
move projectiles in every frame
|
2025-01-09 11:08:15 +00:00 |
|
|
|
941d90b6be
|
ensure that we do not draw field over player when player is throwing
|
2025-01-09 10:38:34 +00:00 |
|
|
|
a2dc00704c
|
add 'facing' field to player projectiles, so it is known which direction projectile should travel in
|
2025-01-08 20:26:53 +00:00 |
|
|
|
bd946bf635
|
require attack button to be pressed twice in order to trigger throwing of defeated enemies
|
2025-01-08 13:18:35 +00:00 |
|
|
|
f7ee3e9e29
|
when attack is pressed and more than one enemy has been defeated, place defeated enemies into projectiles vector, and make the vector of defeated enemies an empty vector
|
2025-01-08 12:49:29 +00:00 |
|
|
|
29de4ea4b6
|
progress shooting off enemies as projectiles
|
2025-01-07 13:31:17 +00:00 |
|
|
|
c080398dd5
|
multiply defeatedSize by ratio to ensure that pellets change size along with other objects when window is resized
|
2025-01-07 13:03: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 |
|
|
|
61bb214150
|
change size and distance of pellets (defeatedSize and defeatedDistance bindings)
|
2025-01-06 11:26:20 +00:00 |
|