1856 Commits

Author SHA1 Message Date
ee3764b253 code additional merging functions, which merge vertically and horizontally as much as possible 2025-07-08 03:18:57 +01:00
12cfe7a04e rewrite merge functions which query grid instead of quad tree (only partially) 2025-07-08 03:07:24 +01:00
aca7acc232 done writing merge function 2025-07-08 00:42:46 +01:00
9bf5e2e68b write all preparatory merging functions; only need to write top level merge function now. 2025-07-08 00:25:52 +01:00
0464dd1ce3 implement functions to get leftmost and rightmost x coordinates with mergeable items 2025-07-07 23:52:24 +01:00
fb2bc76c10 code search function to query quad tree 2025-07-07 23:08:47 +01:00
ab9e1e23d0 make odd-number-division case more explicit when building quad tree 2025-07-07 22:37:01 +01:00
6b5c0d9ba1 preparation for functorising quad tree 2025-07-07 02:36:29 +01:00
bd97aeceac clean up quad tree code, deleting unused functions and removing intermediate some data structures 2025-07-07 02:18:15 +01:00
9b2f3e90cb amend bug relating to being unable to select on quad tree, related to dividing odd numbers by 2 (because performing integer division on an odd number by 2 results in rounding, which we don't want) 2025-07-07 01:48:15 +01:00
dc2a52bcc8 improve graph lines 2025-07-06 17:50:46 +01:00
6a6a36a277 fix bug regarding squares not updating properly, and remove debugging code for that functionality 2025-07-06 15:54:08 +01:00
bba293d406 fix bug in not properly updating squares vector 2025-07-06 15:52:10 +01:00
270481a0ba done refactoring (next: need to do some bug fixing) 2025-07-06 15:14:19 +01:00
dd291096d5 refactor file thread 2025-07-06 15:06:00 +01:00
2e0549097e begin merging files which were previously in temp-squares directory into main 2025-07-06 14:56:54 +01:00
395d6002d8 done refactoring functional core (mostly); next, need to move folders in temp-squares directory into main 2025-07-06 14:45:20 +01:00
1c34bd715f finished with normal nmode for app-update refactoring 2025-07-06 14:26:11 +01:00
11052e801f port function to handlw window resizing event 2025-07-06 14:08:44 +01:00
d231edda6a modify ClickPoints.getClickPos function to detect click for square/pixel, not for triangle. (Checking if mouse is between two click points instead of if mouse is around one click point.) 2025-07-06 14:01:03 +01:00
4a87b0f16e port 'addCoordinates' function to app-update.sml 2025-07-06 13:52:38 +01:00
833005703b a bit of refactoring for quad tree's 'toTriangles' function 2025-07-06 13:26:33 +01:00
1ce3a36db4 remove unused parameter from quad tree 2025-07-06 13:23:14 +01:00
0bdf5064d8 port arrow movement (involving functional core) 2025-07-06 03:58:45 +01:00
20c02814e4 refactoring progress 2025-07-06 03:53:26 +01:00
a919e3d3d4 add function to convert from absolute pixel value to NDC 2025-07-06 03:35:36 +01:00
ed64b464c8 progress with refactoring 2025-07-06 03:21:18 +01:00
df5f326e36 begin refactoring AppUpdate structure 2025-07-06 02:49:38 +01:00
e8e090a19d add refactored message types to temp folder 2025-07-06 02:30:15 +01:00
441e5fdd69 add graph lines to refactored version 2025-07-06 02:15:16 +01:00
79be94bcbd begin refactoring to use square pixels instead of triangles, focusing on functional core first 2025-07-06 01:38:02 +01:00
513cbd3dba code a quad tree decomposition algorithm 2025-07-06 00:32:28 +01:00
4b6d917be9 fix a purely visual bug: do not transition to 'DROP_BELOW_PLATFORM state when player is touching ground wall 2025-06-10 13:01:05 +01:00
aa068ea48e remove some opaque signature ascriptions 2025-04-22 20:49:56 +01:00
e59a1c67d8 begin scaffolding for adding deletion tests 2025-03-23 07:47:38 +00:00
cbc1359de1 add tests for cursor movement 'gg', which means all cursor movements have tests now. Next: add tests for delete motions. 2025-03-22 20:58:39 +00:00
dc3c1340bf add tests for 'F' motion 2025-03-22 13:50:24 +00:00
8fa5677d4d add tests for 'f' motion 2025-03-22 13:41:50 +00:00
87272a2667 add tests for 'T' motion 2025-03-22 13:09:50 +00:00
9eae0c2d48 begin adding multi-char tests (for motions such as 't<char>') 2025-03-22 06:13:01 +00:00
884c5fa08d pull new update from lib/brolib-sml 2025-03-22 05:31:58 +00:00
649bcb66e1 a bit of refactoring to allow addition of more tests 2025-03-22 05:18:25 +00:00
da86e79115 make player's heatth decrement when attacked, and when player's health reaches 0, boot player back to title screen 2025-03-21 10:58:10 +00:00
f784244e81 make left-attack frames smoother, just as right-attack frames were made smoother in previous commit 2025-03-21 10:37:19 +00:00
a0aac81b6c make whip attack smoother when facing right (by doubling frames and manually coding interpolations) 2025-03-21 10:17:40 +00:00
a84490c86c use parametric polymorphism for value in gap_map.sml, instead of specifying value via functor. This is more flexible because a type which is defined after the functor can be used with the map. (The key in gap_map.sml is still specified by functor, though, which is necessary because the structure uses comparison functions which work with the key.) 2025-03-12 23:25:29 +00:00
0d34db359c accuracy improvement for Whip.leftFrames 2025-03-01 02:13:36 +00:00
3e9933bdd0 fix exception with attacking fallingEnemies, by regenerating fallingTree on each collision 2025-03-01 01:53:30 +00:00
e9e9d80a78 add leftFrames for whip attack 2025-03-01 01:48:15 +00:00
693630a655 add collision detection for whip attack 2025-03-01 01:31:18 +00:00