Commit Graph

137 Commits (3036ccd1e875e8d93d0000bd0689a7c49cff1033)

Author SHA1 Message Date
Louis Pearson 3036ccd1e8 Allow spawn outside of first room 2022-08-09 16:34:05 -06:00
Louis Pearson b4282c42a9 Update nix lock 2022-08-09 16:33:54 -06:00
Louis Pearson 26c59d7b06 Remove visited buffer from circuit fill
Looks like this could have been done sooner. Wonder why I bothered with
a visited buffer in the first place.
2022-08-09 00:33:58 -06:00
Louis Pearson 8fc64bcae4 Place player better on move, fix coin saving 2022-08-09 00:11:34 -06:00
Louis Pearson 68bdf13c89 Save switch state 2022-08-08 23:29:16 -06:00
Louis Pearson 797c21a80b Save wires, fix deletion 2022-08-08 23:07:40 -06:00
Louis Pearson cfbee44872 Delete wires from database after loading 2022-08-08 22:19:28 -06:00
Louis Pearson af85ae5ae7 Add wires to database 2022-08-08 21:56:26 -06:00
Louis Pearson 1404d6067e Persist collection of coins to memory 2022-08-08 18:22:56 -06:00
Louis Pearson 240587344d Database now handles entities 2022-08-08 18:00:25 -06:00
Louis Pearson a35d481b15 Improve switch node, recursive circuit eval
- Switches now have two possible states, stored in a u8. This is either
on/off in the case of vertical switches, or a toggle between the two
SwitchOutlets for Tee switches
- Circuit is now recursively evaluated to make sure every node was
updated after their parent node.
2022-08-08 15:50:05 -06:00
Louis Pearson c179f234dd Prototype switch circuitnode implementation 2022-08-08 14:39:33 -06:00
Louis Pearson b4cc068efa Separate sockets/plugs, fix join search function 2022-08-08 12:45:34 -06:00
Louis Pearson 8c26b29ca6 Get wires connecting
Unforunately this has exposed my circuit analysis is incomplete
2022-08-07 23:46:16 -06:00
Louis Pearson ae51861c6e Format circuit 2022-08-07 21:23:13 -06:00
Louis Pearson 55c12f4828 Update state of circuit graph 2022-08-07 21:20:22 -06:00
Louis Pearson 76d50ce508 Begin adding global circuit sim 2022-08-07 16:37:37 -06:00
Louis Pearson 020e6f3615 Read and write circuit nodes 2022-08-07 15:56:26 -06:00
Louis Pearson c086c6d9de Add coordinate type, formatting functions 2022-08-07 14:40:08 -06:00
Louis Pearson 2df39b45f3 Copy And code to Xor 2022-08-07 12:51:20 -06:00
Louis Pearson 37051fe1eb Connect both inputs of And gate 2022-08-07 12:47:44 -06:00
Louis Pearson 5f6393fef7 Fix coordinate bug with circuit analyzer 2022-08-07 00:51:08 -06:00
Louis Pearson 99b49dabd4 Initial draft of circuit analysis 2022-08-07 00:16:00 -06:00
Louis Pearson 376e001a69 Remove memory leaks from switching levels 2022-08-06 17:37:25 -06:00
Louis Pearson 6bfead54cc Allow movement between screens 2022-08-06 17:30:06 -06:00
Louis Pearson 109b3aade7 Implement proof of concept screen movement 2022-08-06 02:48:16 -06:00
Louis Pearson 7482a917ac Get world database working 2022-08-06 02:15:04 -06:00
Louis Pearson 03bf16cba4 Remove debug statements 2022-08-06 01:18:55 -06:00
Louis Pearson f5691e45f1 Import multiple levels 2022-08-06 01:15:38 -06:00
Louis Pearson 3fcd7e0942 Flesh out world data format, make parseLevel fn 2022-08-05 21:55:07 -06:00
Louis Pearson 9655abc120 Fix is_door 2022-08-05 19:47:33 -06:00
Louis Pearson c137c88cef Plan world data structure 2022-08-05 19:11:36 -06:00
Louis Pearson 4c51c52d05 Remove the other sources of off-by-one 2022-08-05 18:34:08 -06:00
Louis Pearson d81c1f5ab1 Use world for isSolid in map
For some reason, I made all my map tile constants have to be shifted by
one. It's very annoying.
2022-08-05 17:53:27 -06:00
Louis Pearson c4663deb1f Put tile constants in one place 2022-08-05 17:48:55 -06:00
Louis Pearson d2d25b4e56 Add doors back in 2022-08-05 16:58:57 -06:00
Louis Pearson cce79b4d90 Uncomment door code
Still doesn't work because I decided to do doors differently. My next
step is to make the door entities add and remove tiles
2022-08-05 16:42:24 -06:00
Louis Pearson 3c0f4580b5 Fix bug where some tiles were not showing up
Turns out I was shifting a u7 thinking it was u8, and this caused the
high bit to be chopped off of some values. I also made the high bit
indicate the type instead of the low bit.
2022-08-05 15:23:22 -06:00
Louis Pearson 83bd4d9aec Attempt to solve invisible rocks
They are on the map, but the wrong tile is getting selected
2022-08-05 00:18:22 -06:00
Louis Pearson 638440f619 Fix switch toggling 2022-08-04 22:32:20 -06:00
Louis Pearson e8ebe43de6 Partially fix circuits and wires 2022-08-04 22:16:33 -06:00
Louis Pearson dd26d1f093 Iron out wrinkles with one way platforms 2022-08-04 20:48:27 -06:00
Louis Pearson 8ad6d20fbd Initial implementation of one way platforms 2022-08-04 20:39:28 -06:00
Louis Pearson d799830ad9 Get the game running again 2022-08-04 19:02:11 -06:00
Louis Pearson 280d73ae59 Game is compiling 2022-08-04 17:56:32 -06:00
Louis Pearson 84b5e4cb41 Begin converting game.zig to use ldtk data 2022-08-04 17:18:34 -06:00
Louis Pearson b5ca48e1b3 Render one-way platforms 2022-08-04 14:48:29 -06:00
Louis Pearson 8d3f69af03 Rearrange tiles, add one way platform tiles
- Update autotile to work based off of offset
- Update wired.ldtk to use new tiles
- Regenerate tiles.zig
- Remove hard-coded autotiles
2022-08-04 14:41:15 -06:00
Louis Pearson 0c79bfe575 Simplify world types 2022-08-04 13:11:20 -06:00
Louis Pearson 8c7a6b096f Remove bounded array 2022-08-04 12:11:29 -06:00