Commit Graph

  • fef5885293 full removal of SDL rework-fundamentals Quinn 2025-09-10 11:52:58 +02:00
  • 2309bd86eb add GLAD "library" Quinn 2025-09-10 10:31:15 +02:00
  • 2e36c53d4e rewrite makefile Quinn 2025-09-10 10:19:08 +02:00
  • baf680ee3c differentiate between out-of-bounds intersection and regular intersection. Quinn 2025-09-10 09:56:37 +02:00
  • a827c84223 add a tad more documentation about how we encode our data. Quinn 2025-09-09 23:06:56 +02:00
  • f8eb814a4a fix: stored I tetrominos read as empty. Quinn 2025-09-09 22:51:43 +02:00
  • 42b9e9b10c fix: add out of bounds checks to tetris_intersect Quinn 2025-09-09 21:57:58 +02:00
  • 7ccc679d54 fix: rotation mask incorrect Quinn 2025-09-09 19:36:54 +02:00
  • e9226e4a39 rework shape handelling, placement and play field management Quinn 2025-09-09 19:29:42 +02:00
  • d471c42388 rework error script Quinn 2025-09-09 16:31:17 +02:00
  • a9be2c06a6 remove needless headers Quinn 2025-09-09 16:28:12 +02:00
  • fa32d78ed7 rework attributes.h as atrb.h Quinn 2025-09-09 16:27:44 +02:00
  • fed9333642 rename types.h to intdef.h, and make some minor changes Quinn 2025-09-09 16:26:57 +02:00
  • cfad7f6fdc update pointer alignment rule main Quinn 2025-09-09 16:17:02 +02:00
  • c339accedc rework clear rows function to be more efficient, and shorter. Quinn 2025-09-08 12:51:24 +02:00
  • 7583da2ad3 remove TODOs Quinn 2025-07-07 10:57:02 +02:00
  • 507066d1a9 close window when loss Quinn 2025-07-03 13:51:04 +02:00
  • 9cafbedad8 rename TETROMINO_* fields to TET*, to be shorter Quinn 2025-07-03 13:27:45 +02:00
  • baf59fa84e refactor: comments and small semantic fixes Quinn 2025-07-03 13:32:17 +02:00
  • ede32b4ff7 function name changes for clairity Quinn 2025-07-03 12:27:21 +02:00
  • c889dee588 execute new formatter Quinn 2025-07-03 09:56:50 +02:00
  • ffd423331a add error handling for debugging when id is invalid with shape acquisition Quinn 2025-07-03 09:49:19 +02:00
  • b89fc62513 remove the lookup table / binary-encoded logic. Quinn 2025-07-03 09:46:40 +02:00
  • 6a807b59d7 implement logic-based function in placing Quinn 2025-07-03 09:44:59 +02:00
  • 3cbb090a29 implement logic-based function in rendering Quinn 2025-07-03 09:38:16 +02:00
  • edcd5d30d3 reduce memory footprint of tetromino plock location data Quinn 2025-07-03 01:02:11 +02:00
  • af43c9162a implement logic-based function in collision Quinn 2025-07-03 00:14:51 +02:00
  • 13e21cb79d write function for the new logic-based tetromino shape definitions Quinn 2025-07-02 22:38:41 +02:00
  • fb280c1359 rewrite clang-format Quinn 2025-07-02 23:55:22 +02:00
  • 84439a56f6 remove comments from clang-format Quinn 2025-07-02 23:58:06 +02:00
  • 27cacb055c fix: S and Z shapes were inverted Quinn 2025-07-02 22:38:03 +02:00
  • b5b51ae555 fix: input dropping sometimes Quinn 2025-07-02 15:12:14 +02:00
  • 97f7f05a5c refactor comments Quinn 2025-07-02 10:08:14 +02:00
  • 00db0cda7e fix: double input issue Quinn 2025-07-01 12:04:30 +02:00
  • f124076037 code cleanup Quinn 2025-07-01 11:43:26 +02:00
  • 9d7d82a9b6 fix: rotation feels rather funky. Quinn 2025-06-30 12:51:16 +02:00
  • 43ecb1e0e6 (micro)optimise downwards movement Quinn 2025-06-30 11:00:06 +02:00
  • 1ae6d936eb seperate rotation timeout Quinn 2025-06-30 10:59:28 +02:00
  • 63f8260140 add input timeout and input keypresses Quinn 2025-06-27 13:01:28 +02:00
  • d42e5c25f4 (re)add placing sound effect Quinn 2025-06-27 12:40:42 +02:00
  • 21aca01cba rework audio system to be able to call it from anywhere, rather than having to have access to the audio data. Quinn 2025-06-27 12:39:04 +02:00
  • c4905f2da3 fix: i8vec2 is 4 bytes wide, rather than 2. Quinn 2025-06-27 12:35:44 +02:00
  • 7b3b09ebe7 fix: a tetromino can't appear twice in a row, and rotation is no longer preserved Quinn 2025-06-27 12:30:11 +02:00
  • 699bc7a547 add comments to pdat Quinn 2025-06-26 14:12:36 +02:00
  • dd8fc37494 re-implement shape dropping Quinn 2025-06-26 14:08:34 +02:00
  • d852eb2283 add capability of VI keybindings Quinn 2025-06-26 13:33:51 +02:00
  • 378e5cfd22 fix: shuffle algorithm; was messing up the data Quinn 2025-06-26 13:23:34 +02:00
  • 402ef330de optimise Y axis updating Quinn 2025-06-26 12:00:55 +02:00
  • f41f5d3a6e don't use vectorised addition in the parameter; it's not necessary Quinn 2025-06-26 11:50:07 +02:00
  • 0f4c9411b0 write constants VX, VY, to make vector component selection more readable Quinn 2025-06-26 11:48:15 +02:00
  • 390ca02172 fix: inverted rotation/movement Quinn 2025-06-26 11:27:58 +02:00
  • dba2e102ab fix: moving into collisions, rather than preventing them Quinn 2025-06-26 11:27:22 +02:00
  • 7af2bb0050 fix: update roll caused SEGV, also optimised it using XOR Quinn 2025-06-26 11:26:22 +02:00
  • 29b190e0f5 simplify movement logic a bit further Quinn 2025-06-26 11:09:01 +02:00
  • 0a0e03a769 fix: not initialising TTF module Quinn 2025-06-26 11:04:55 +02:00
  • c1d7f71a02 make window freeing more manual Quinn 2025-06-26 11:02:14 +02:00
  • a94e2d147b fix: memory leak on exit Quinn 2025-06-26 10:54:58 +02:00
  • d7989c5918 fix: wasn't initialising the window properly Quinn 2025-06-26 10:54:52 +02:00
  • 937ecedfe3 implement new code, and remove deprecated old code. Overal optimisation. Quinn 2025-06-25 15:51:27 +02:00
  • a202442853 write some TODO comments Quinn 2025-06-25 15:44:17 +02:00
  • 94cfbdcaad write code for a timing Quinn 2025-06-24 22:43:46 +02:00
  • a7d5f1bb2a write code for input handling Quinn 2025-06-24 19:51:45 +02:00
  • 046f7affaf write code for window handling Quinn 2025-06-24 19:52:00 +02:00
  • fc2924d128 add a type definition for SMID-style vectors Quinn 2025-06-24 19:52:20 +02:00
  • 9fbc9e0f9a use common integer type in shapes.c/shapes.h, for decreasing namespace pollution Quinn 2025-06-24 19:51:06 +02:00
  • a50b39307a define type definitions for common integer types Quinn 2025-06-24 10:04:52 +02:00
  • 6a1b4104cf rework audio handling, since it was flawed Quinn 2025-06-23 12:50:10 +02:00
  • b446a43738 use tabs over spaces Quinn 2025-06-18 15:48:56 +02:00
  • 3b306288e9 rename "renderer" to "render" Quinn 2025-06-24 10:21:19 +02:00
  • 7c20704990 rename window io Quinn 2025-06-24 09:58:52 +02:00
  • bf62a60710 remove broke option code Quinn 2025-06-18 15:41:09 +02:00
  • 18243a23eb clean up code Quinn 2025-06-18 15:35:51 +02:00
  • 8449c58ab5 rewrite string accumilation to use a dynamic array instead of many reallocations Quinn 2025-04-29 21:44:19 +02:00
  • d925462c4d add some default options for testing Quinn 2025-04-23 16:54:06 +02:00
  • 37d3a8e77f improve error handling Quinn 2025-04-23 16:53:49 +02:00
  • df249f1c35 fix: checking incorrect memory adresses Quinn 2025-04-23 16:51:50 +02:00
  • 9f6f20f36c fix: invalid memory access due to dereferencing after indexing Quinn 2025-04-23 16:50:53 +02:00
  • f64db135a9 use loaded options for selecting the colour Quinn 2025-04-23 16:50:02 +02:00
  • 7ed37afdc5 add some options and loading logic Quinn 2025-04-23 16:49:30 +02:00
  • aee02e3293 fix path initialization Quinn 2025-04-23 16:46:57 +02:00
  • 7c32e884f1 fix: inverting compat access returns; not the expected return value Quinn 2025-04-23 16:45:01 +02:00
  • 0fd2a88e0f add path initialization to main Quinn 2025-04-23 16:44:33 +02:00
  • e723dd63ff fix: when working with a partial buffer, returned pointers become invalid Quinn 2025-04-20 13:40:53 +02:00
  • c3406ca031 add some notes Quinn 2025-04-19 19:58:56 +02:00
  • 9f97d6b9fc ref: moved buffer processing into it's own function. Quinn 2025-04-19 19:52:18 +02:00
  • a7de449b9d fix: parsing fails for long comment lines Quinn 2025-04-19 19:18:03 +02:00
  • cd8e0ec68e fix: extra loops when val is found Quinn 2025-04-19 18:26:13 +02:00
  • cf64cb078e add option parsing code Quinn 2025-04-19 18:14:16 +02:00
  • 45e5ec9764 begin adding options Quinn 2025-04-18 21:38:09 +02:00
  • 45d4f91bd9 write code to improve handling of paths, to be more consistent. Quinn 2025-04-18 21:27:39 +02:00
  • 2ef2586112 add more nuanced platform flags to faccess Quinn 2025-04-19 18:13:25 +02:00
  • c01ce06307 add macros for writing inline platform-specific expressions Quinn 2025-04-18 21:22:16 +02:00
  • abbb43ab50 expand compatibility header to include path seperators Quinn 2025-04-18 21:19:21 +02:00
  • e1915429ca move pkg-config usage to be inside architecture definitions Quinn 2025-04-18 18:32:44 +02:00
  • 76762dcc8e rename ARCH options to x86, rather than x86_64, since that's more accurate now Quinn 2025-04-18 18:26:59 +02:00
  • 6583a9f5e0 fix: include -fuse-ld for windows to handle dll's properly Quinn 2025-04-18 18:19:54 +02:00
  • 1b36a53b24 fix: remove duplicate architecture argument setting Quinn 2025-04-18 18:22:04 +02:00
  • da59b64a0b move compatibility code for file access from audio.c to compat.h Quinn 2025-04-18 15:42:26 +02:00
  • 5145e43eaa make rotation movement seperate from regular movement Quinn 2025-04-17 09:59:30 +02:00
  • 38cb8011ef move timer data to static variables in the update function, rather than storing it in the gamedata. Quinn 2025-04-17 09:53:07 +02:00