Commit Graph

1504 Commits

Author SHA1 Message Date
7ac676e621 add textLineWidth value to text-constants.sml, which we can use to calculate functionality of centering on screen 2025-08-31 01:00:31 +01:00
83e062eb60 fix visual bug resulting from 'TextBuilder.buildTextStringSearch' function. When we have a search string 'abc' and a file 'abcabc', there are two matches and it should also look like there are two matches, but it did not look like there were two matches prior to this commit. This commit fixes that by advancing the search position before adding to the text accumulator. 2025-08-31 00:05:48 +01:00
659a1d2585 change buildRange length from 777 to 1111 2025-08-30 23:36:14 +01:00
2b3f0405c6 reimplement search-range functionality to scan range from the string from left to right 2025-08-30 23:31:55 +01:00
de46376e4e reimplement search list functionality (when building whole search list, not from range) to start from index 0, to get rid of edge cases resulting from reading the string backwards 2025-08-30 23:05:11 +01:00
148b72835b move buffer to start before creating searchMsg 2025-08-30 18:21:47 +01:00
7497dc7e7a add code for clojure-style persistent vectors 2025-08-30 18:12:47 +01:00
0647589f13 handle edge case in searching: when we look for 'abba' in the text 'abbabba', it looks like we should have two matches, but to be consistent with other programs, we only have one match 2025-08-30 17:16:02 +01:00
a1b88b9d3b add fall sprite for dvd (to be used after a jump) 2025-08-30 00:24:25 +01:00
efe921df1f organise dvd attack files a bit, and also mirror them (creating horizontally-flipped versions) 2025-08-28 15:29:05 +01:00
0073509176 minor edits to dvd attack projectiles (making sure that only 2 pixels are in the centre of the mini dvd at most) 2025-08-28 15:09:49 +01:00
4b39da3ace add individual attack projectile frames 2025-08-28 15:04:21 +01:00
cd0d8cfdcb create some attack-projectile frames 2025-08-28 13:58:09 +01:00
e016afd1d2 add attack discs 2025-08-28 13:10:50 +01:00
f877806fb6 add alternate pattern for attack background (only in dsc files though) 2025-08-28 12:30:32 +01:00
2157536179 begin making attack files 2025-08-28 11:38:19 +01:00
ab1c86b3c8 add attack pose 2025-08-28 11:17:34 +01:00
cfec1ccdf8 finish walk cycle for dvd 2025-08-28 10:16:46 +01:00
832c1913d3 add walk3 and walk4 frames 2025-08-28 01:44:32 +01:00
1a61f03a5f add walk1 frame for dvd 2025-08-26 23:23:33 +01:00
f306501a68 remove code that became dead as a result of the previous refactoring (to make files loadable from terminal) 2025-08-26 16:29:11 +01:00
4a8ff38a66 in generated export string, use structure name which is based on the name of the input file 2025-08-26 16:21:52 +01:00
2de690f325 done with functionality relating to performing file operations on terminal 2025-08-26 16:15:40 +01:00
dcd3c3117e initialise app with a file path, for the functionality of loading different files from the terminal 2025-08-26 15:56:52 +01:00
a98ca50cf5 remove browse mode and code that became dead as a result of its removal, because the new plan is to launch the program from the terminal (and terminal navigation is okay) 2025-08-26 15:36:39 +01:00
6c9149bfaa when converting file name from kebab case to pascal case, remove extension if there is any 2025-08-26 15:21:59 +01:00
060e3779f5 add a function to convert from kebab case (expectation for file names) to pascal case (convention used for structures) 2025-08-26 15:17:10 +01:00
8e4f2f4820 done with implementing conversion of each .dsc file in a directory, to an .sml export string (may need to adapt later) 2025-08-26 14:53:19 +01:00
2070b30c7d progress with converter, as we now visit each directory and file path recursively 2025-08-26 14:35:35 +01:00
2080118568 progress with conversion functionality 2025-08-26 14:27:39 +01:00
868e066295 progress parsing command line args 2025-08-26 13:58:42 +01:00
d3d7955727 add install and uninstall options to Makefile 2025-08-26 13:43:27 +01:00
894cd50073 restructure a bit to make the GLFW-initialisation code its own separate structure/file, and so we can use shell.sml for running program in different ways 2025-08-26 13:00:18 +01:00
8f3250c514 done with jumping frames for dvd 2025-08-26 11:41:53 +01:00
cb253c8a01 add jump4 frames to dvd 2025-08-26 10:28:33 +01:00
e2c551ba59 move jump1/jump2 frames horizontally by 1 pixel, to align with jump3 frame 2025-08-26 09:13:03 +01:00
a143faaf21 add jump3-left/right frames for dvd 2025-08-26 09:07:57 +01:00
54412a909c improve raster dvd jump frames 2025-08-25 23:03:27 +01:00
b96f2712f1 add a couple of jump frames 2025-08-25 16:24:11 +01:00
127ab2fc70 begin converting dvd from png to dsc (only have standing pose converted right now) 2025-08-25 14:12:54 +01:00
2be6e1c9b1 add attack projectiles and background to dvd folder 2025-08-25 13:34:05 +01:00
7375182a23 added attack-projectile pieces (need to assemble next) 2025-08-25 12:51:47 +01:00
4113934010 add attack frame 2025-08-25 12:07:16 +01:00
e2a9542b08 improve dvd's walk cycle by adding head bobbing 2025-08-25 10:08:47 +01:00
b89dddcb9b add raster dvd sprites (stand, walk, jump) 2025-08-24 11:45:51 +01:00
9051717213 remove 'gl_samples' parameter (it was used from antialiasing, but we have a bitmap font, so we don't want antialiasing) 2025-08-20 14:01:24 +01:00
cd21f87732 fix compile error in shell/shell.sml (had to pass an additional parameter: 'Time.now ()') 2025-08-20 13:53:31 +01:00
4d77aed6ef done refactoring tests 2025-08-20 13:50:57 +01:00
0dd7a69777 propagate 'time' value throughout normal mode updating 2025-08-20 13:12:07 +01:00
f97a2944ae pass time parameter in normal-delete.sml 2025-08-20 13:00:36 +01:00