|
|
a6d84f093f
|
add falling sprites
|
2025-08-30 00:55:58 +01:00 |
|
|
|
a016832233
|
remove dead code
|
2025-08-29 10:42:46 +01:00 |
|
|
|
aaaa79cdc0
|
bring over attack projectile frames
|
2025-08-29 01:00:08 +01:00 |
|
|
|
25293876ed
|
begin portin attack
|
2025-08-29 00:16:58 +01:00 |
|
|
|
ee5ccf77a0
|
update/port over right-walking frames
|
2025-08-28 23:08:30 +01:00 |
|
|
|
f3cb7b7546
|
port over left-walking frames/sprites
|
2025-08-28 23:02:03 +01:00 |
|
|
|
69992b5a8d
|
convert whip-attack sprites to new dotscape format
|
2025-08-09 14:22:04 +01:00 |
|
|
|
54a4ed6d64
|
code box locations of right frames for whip attack
|
2025-02-28 13:18:42 +00:00 |
|
|
|
321200139b
|
draw animation frames for whip attack
|
2025-02-28 12:03:23 +00:00 |
|
|
|
b697eaf8e0
|
add sprites for when player jumps while facing left, and add code to handle this case
|
2025-02-24 12:43:08 +00:00 |
|
|
|
0353c47f27
|
add jumping/falling sprites when player is facing right (todo: add sprites mirrored to face left)
|
2025-02-23 13:47:41 +00:00 |
|
|
|
4c853c1843
|
add animation for player walking leftwards
|
2025-02-23 07:43:23 +00:00 |
|
|
|
cc01ee7ec9
|
remove player-walk-right-10 and player-walk-right-11 from walk cycle animation (looks better without those frames)
|
2025-02-23 07:30:44 +00:00 |
|
|
|
9286c26231
|
add a couple of frames to walk animation, and change colour of walls back from white to black (changed to white temporarily so we can see walk animation isolated from any other objects)
|
2025-02-22 19:22:48 +00:00 |
|
|
|
bd49877cf7
|
add code for going through right-walk cycle in draw/vector code (for player)
|
2025-02-22 19:02:28 +00:00 |
|
|
|
bf40a2b6e6
|
create assets for player walking rightwards (but they are not implemented in code yet)
|
2025-02-22 13:44:01 +00:00 |
|
|
|
f8ed79c81f
|
small improvement to player's sprite (and create subdirectory for player's sprites too, as I expect there will be quite a few)
|
2025-02-22 06:02:28 +00:00 |
|
|
|
20338996b8
|
add back files with annotations to mlb (took them out before because smlfmt can't parse vector expressions, and also can't parse mlton's ffi syntax)
|
2025-02-21 13:37:41 +00:00 |
|
|
|
40fff7729f
|
add 'newKeys' field (list of key codes pressed in frame) to frame input type, so we can change key bindings at runtime later
|
2025-02-21 11:57:29 +00:00 |
|
|
|
6cd7edb5ab
|
draw options screen when that is selected
|
2025-02-20 14:25:20 +00:00 |
|
|
|
9feae2bb0f
|
add function to make text vec to its own module so it can be reused across different modes
|
2025-02-20 06:13:33 +00:00 |
|
|
|
6d39c17a11
|
when play button is focused on title screen and either attack or jump button is pressed, start level
|
2025-02-20 05:46:00 +00:00 |
|
|
|
dab81e3904
|
begin function for drawing title screen
|
2025-02-19 04:07:27 +00:00 |
|
|
|
6ca2d379f7
|
bring in cozette-sml so we can draw text
|
2025-02-19 03:48:38 +00:00 |
|
|
|
25b2c41355
|
begin title screen by adding title screen type
|
2025-02-19 03:39:36 +00:00 |
|
|
|
6b4b637624
|
done adding LevelType.level_type as a field of GameType.game_type, and having main loop go through GameUpdate.game_type -> LevelUpdate.update
|
2025-02-18 13:48:17 +00:00 |
|
|
|
afe878c05d
|
begin parameterising level so that it fits into larger type (with different modes like TITLE, LEVEL, SETTINGS, etc.)
|
2025-02-18 13:16:52 +00:00 |
|
|
|
d3200745d0
|
allow player to have a different width/height that is not a perfect square, (now we have Constants.playerWidth and Constants.playerHeight, having deleted the previous size in Constants.playerSize)
|
2025-02-18 12:31:22 +00:00 |
|
|
|
18495a0cca
|
successfully parse controls from file (but todo: save controls imperative shell on load)
|
2025-02-17 03:48:31 +00:00 |
|
|
|
99669dd0b6
|
add function to convert string to CoreKey.key_code (for parsing/loading controls from files)
|
2025-02-17 01:39:41 +00:00 |
|
|
|
f2f1eeab8e
|
additional scaffolding of user's key mappings in imperative shell
|
2025-02-16 13:17:14 +00:00 |
|
|
|
47bda26da5
|
begin coding functionality for remapping keys
|
2025-02-16 12:45:29 +00:00 |
|
|
|
e758a5a13c
|
refactor falling_enemy to be contained in FallingEnemyMap, instead of a plain vector
|
2025-02-15 01:42:29 +00:00 |
|
|
|
b239dfa04d
|
add functionality to have enemies tract to player's attack
|
2025-02-14 12:59:22 +00:00 |
|
|
|
e00db5d8a3
|
make enemies move per loop (calling update EnemyMap by calling EnemyBehaviour)
|
2025-02-14 10:43:27 +00:00 |
|
|
|
46a1836ae2
|
additional refactoring, moving player type into its own directory
|
2025-02-14 10:13:03 +00:00 |
|
|
|
93aebe5fa1
|
a bit of refactoring with regards to enemy's structures and files
|
2025-02-14 09:06:32 +00:00 |
|
|
|
c5cea8dcb3
|
partial refactoring so we use EnemyMap.t for collection of enemies
|
2025-02-13 13:36:30 +00:00 |
|
|
|
265c8db88a
|
implement EnemyMap functor (todo: migrate from 'enemy vector' type to 'EnemyMap.t' type)
|
2025-02-13 12:14:50 +00:00 |
|
|
|
f1521acec1
|
refactor file order in preparation for adding GapMap for enemy
|
2025-02-13 11:24:44 +00:00 |
|
|
|
51401231e1
|
update state of falling enemies per loop
|
2025-02-08 09:49:32 +00:00 |
|
|
|
1c105193e2
|
extract a couple of collision functions to a separate module for reuse
|
2025-02-08 08:39:04 +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 |
|
|
|
1be44335cb
|
add asset for ChainEdge (attack)
|
2025-02-07 13:42:38 +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 |
|
|
|
e1e1228983
|
delete pointer quad tree because it is twice as slow to construct as the vector-based implementation
|
2025-02-01 10:11:32 +00:00 |
|
|
|
bf3f0b3927
|
done implementing pointer quad tree (next: benchmark the two)
|
2025-02-01 09:54:35 +00:00 |
|
|
|
28380957b3
|
start implementing new quad tree that only uses pointers (just to test performance between vector-using implementation and only-pointer-using implementation)
|
2025-02-01 09:44:22 +00:00 |
|
|
|
9e9675aaab
|
decrease memory consumption of quad tree by refraining from storing bounding box metadata (except for the global root which stores the width and height)
|
2025-02-01 01:03:57 +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 |
|