Eevee (Evelyn Woods)
aed96c8e41
Add a bunch of minor rendering stuff
...
- Added the active player background
- Added bomb fuses (though LL doesn't use them)
- Added CC2-style double-size blob and walker (though LL doesn't use them)
- Added the rover's directional overlay
- Added custom push animations
- Added custom bouncing heart animations
- Added a puff when opening a door or socket, or revealing a fake floor
- Fixed the rover's animations being a bit mixed up
- Fixed player walk animations occasionally being glitchy
- Touched up the fake floor x-ray tile
- Touched up the canopy x-ray tile
- Touched up the purple ball's shadows
- Touched up the transmogrifier and transmogrify flash
2021-01-05 17:10:21 -07:00
Eevee (Evelyn Woods)
31a1049655
Fix x-ray glasses breaking the renderer
2021-01-04 17:59:24 -07:00
Eevee (Evelyn Woods)
fda1c6c66e
Fix drag and drop with directories; improve drop zone
2021-01-04 12:56:30 -07:00
Eevee (Evelyn Woods)
f03144ba91
Fix editing wire tunnels
2021-01-03 19:45:34 -07:00
Eevee (Evelyn Woods)
a72ec8c476
Fix undoing dropping a bowling ball; make bowling balls explode at level edge
2021-01-03 19:31:59 -07:00
Eevee (Evelyn Woods)
a4c1aa869b
LAYER => LAYERS, oops
2021-01-03 19:15:38 -07:00
Eevee (Evelyn Woods)
683ab6a2c9
Fix some fallout from all that editor rendering stuff
2021-01-03 18:43:24 -07:00
Eevee (Evelyn Woods)
1ce704864c
Teach the editor to do partial redraws
2021-01-03 18:21:52 -07:00
Eevee (Evelyn Woods)
90fa352a50
Split out editor drawing and slightly speed up normal drawing
2021-01-03 18:03:58 -07:00
Eevee (Evelyn Woods)
6fc4f6b58f
Change StoredCell to also be layered, and update the editor to match
2021-01-03 17:44:16 -07:00
Eevee (Evelyn Woods)
323ed3ee18
Refactor to using cells with fixed slots
...
This better matches CC2 behavior and also makes some very common
operations, like grabbing a cell's actor or terrain, way faster.
It also allows me to efficiently implement CC2's layer order when
checking for collisions; thin walls are checked before terrain, and
actors only afterwards. The upshot is that bowling balls no longer
destroy stuff on the other side of a thin wall!
I also did some minor optimizing, mostly by turning loops over an entire
cell's contents into checks for a single layer; Chromium now performs a
bulk test about 30% faster.
Downsides of this change:
- All kinds of stuff may have broken!
- It'll be a little difficult to ever emulate MSCC's curious behavior
when stacking terrain on top of items or other terrain. But not
impossible.
- It'll be far more difficult to emulate buggy Lynx (or maybe it's just
Tile World?) behavior where some combination of cloners and teleports
allow a ton of monsters to accumulate in a few cells. I guess I
wasn't planning on doing that anyway.
2021-01-03 17:19:27 -07:00
Eevee (Evelyn Woods)
cff756597c
Fix a few places where two tiles on the same layer could coexist in a cell
2021-01-03 15:18:53 -07:00
Eevee (Evelyn Woods)
fe7731efe7
Fix minor issues: ghosts don't affect popwalls, voodoo tiles shouldn't crash, on_bump is unused
2021-01-03 14:06:41 -07:00
Eevee (Evelyn Woods)
c6c3ff2d71
Fix losing slide mode when teleporting on a yellow teleport you just dropped
2021-01-03 14:06:04 -07:00
Eevee (Evelyn Woods)
0f1afbb877
Teach format_duration to handle negative durations
2021-01-03 13:48:23 -07:00
Eevee (Evelyn Woods)
9cf2b82c8e
Change the bulk test results into a (slightly more compact) table
2021-01-03 13:48:11 -07:00
Eevee (Evelyn Woods)
d1646532d5
Draw the countdown frames for the time bomb, and improve its artwork
2021-01-03 13:20:28 -07:00
Eevee (Evelyn Woods)
0e1bd91075
Add a bunch more sound effects
2021-01-03 13:07:15 -07:00
Eevee (Evelyn Woods)
6446a4654b
Fix the order of operations for slide mode, again
...
This fixes an obscure bug where you could redirect a block that was in
the process of sliding off of ice onto floor, because its slide mode had
not yet been cleared.
2021-01-02 23:47:49 -07:00
Eevee (Evelyn Woods)
b08750696e
Implement replay-compatible blob transmogrifying
2021-01-02 19:50:03 -07:00
Eevee (Evelyn Woods)
ed6a98392d
Fix the fix for bowling balls destroying players
2021-01-02 17:42:39 -07:00
Eevee (Evelyn Woods)
656d124c89
Fix a crash when blowing up a pink button
2021-01-02 17:42:07 -07:00
Eevee (Evelyn Woods)
6c2602246e
Allow rovers to enter popwalls and fake walls
2021-01-02 17:16:27 -07:00
Eevee (Evelyn Woods)
c9bcc92bdf
Prevent ghosts from toggling swivels
2021-01-02 16:59:20 -07:00
Eevee (Evelyn Woods)
6d519cfa0a
Handle a player blowing themselves up with dynamite
2021-01-02 12:23:53 -07:00
Eevee (Evelyn Woods)
69d62f8266
Fix collision masks for dynamite and bowling balls
2021-01-02 12:19:52 -07:00
Eevee (Evelyn Woods)
a657682035
Disable zlibbed level URLs since they'll break gliderbot
2021-01-01 22:26:29 -07:00
Eevee (Evelyn Woods)
29df283f80
Add support for zlib-compressed levels in URLs
2021-01-01 22:09:49 -07:00
Eevee (Evelyn Woods)
e277a1363e
Add a transmogrify sparkle
2021-01-01 21:27:10 -07:00
Eevee (Evelyn Woods)
a41baee3fc
Fix this fix to player fixing whatever
2021-01-01 20:18:03 -07:00
Eevee (Evelyn Woods)
2673f7f9f8
Don't switch players when a non-active player exits
2021-01-01 20:10:00 -07:00
Eevee (Evelyn Woods)
d77b25c7c1
Wildly guess about how blob transmogrification might use the PRNG
2021-01-01 20:09:44 -07:00
Eevee (Evelyn Woods)
c55a415099
Support drag and drop with a single CCL or ZIP
2021-01-01 18:25:20 -07:00
Eevee (Evelyn Woods)
1b55e82061
Add CC2LP1; streamline the splash page, moving most of the text to the GitHub wiki
2021-01-01 18:18:50 -07:00
Eevee (Evelyn Woods)
1b48c291c9
Implement the pgchip clone block ice cloning hack
2021-01-01 17:30:50 -07:00
Eevee (Evelyn Woods)
aac1e09c72
Add support for pgchip's magic number and ice block encoding
2021-01-01 17:11:11 -07:00
Eevee (Evelyn Woods)
0d35274d6a
Add support for loading CC2 ZIPs, and parse out C2G game titles
2021-01-01 15:26:33 -07:00
Eevee (Evelyn Woods)
f5b1b4a83d
Make multi-hints readable by CC2
2021-01-01 14:46:05 -07:00
Eevee (Evelyn Woods)
044c08c3fc
Add support for downloading an entire pack as a zipped C2G
2021-01-01 14:44:48 -07:00
Eevee (Evelyn Woods)
83793603d3
Improve interactions between turn-based mode and tic navigation
2021-01-01 13:10:48 -07:00
Eevee (Evelyn Woods)
adac6774a4
Remove duplicate code in Tileset drawing
2021-01-01 12:47:54 -07:00
Eevee (Evelyn Woods)
c8686f9d66
Copy a level's title to the right places in the editor so it shows in the level browser
2021-01-01 12:44:20 -07:00
Eevee (Evelyn Woods)
4454970564
Split up the Steam loop into begin/finish parts to match what turn-based mode expects
2020-12-31 18:01:40 -07:00
Eevee
f0cd4d3c5a
Merge pull request #22 from Patashu/master
...
fix turn-based mode
2020-12-31 17:23:24 -07:00
Eevee (Evelyn Woods)
18b9fd6d4d
Add support for a floating selection
2020-12-31 14:49:37 -07:00
Eevee (Evelyn Woods)
2183e7de3c
Fix some copy/paste errors in editor tooltips
2020-12-30 18:50:17 -07:00
Eevee (Evelyn Woods)
130b917c81
Lazily load the level in the player and editor, so an unplayable level doesn't break the editor too
2020-12-30 18:21:21 -07:00
Eevee (Evelyn Woods)
93d77ea297
Add support for "rotating" through letter tiles. Fixes #21
2020-12-30 17:57:07 -07:00
Eevee (Evelyn Woods)
2109e4f4fa
Fix paths to rotation buttons
2020-12-30 17:50:34 -07:00
Eevee (Evelyn Woods)
15a37457de
Add physical rotation buttons
2020-12-30 17:47:29 -07:00
Eevee (Evelyn Woods)
fb2f79823c
Stub out a selection tool for the editor
2020-12-30 17:28:41 -07:00
Eevee (Evelyn Woods)
d700561c0f
Add a cursor to the editor
2020-12-30 11:52:27 -07:00
Eevee (Evelyn Woods)
09d220b2a3
Improve ergonomics of the level props dialog a bit
2020-12-30 11:30:50 -07:00
Eevee (Evelyn Woods)
48803b1483
Add tooltip help for most tiles in the editor
2020-12-30 11:08:38 -07:00
Eevee (Evelyn Woods)
de53582d47
Fix perception and use it to implement the xray eye
2020-12-29 20:42:53 -07:00
Eevee (Evelyn Woods)
746300a514
Add support for encoding thin walls/canopies; add them to the editor; add support for additive drawing
2020-12-29 20:12:54 -07:00
Eevee (Evelyn Woods)
b9a311a18c
Merge thin walls into a single tile; split "overlay" layer into correct CC2 parts
2020-12-29 19:29:22 -07:00
Timothy Stiles
f6a79456e9
fix turn-based mode
2020-12-30 13:01:01 +11:00
Eevee (Evelyn Woods)
1c5f63b61b
Add a new experimental tile: sand
2020-12-29 17:08:51 -07:00
Eevee (Evelyn Woods)
6b0bb9cb3d
Prevent pushing a block that's already moving due to a slide push
2020-12-29 12:30:08 -07:00
Eevee (Evelyn Woods)
c475500bdb
Add in a single-tic delay after a failed teleport
2020-12-29 11:42:41 -07:00
Eevee (Evelyn Woods)
be769b7dc8
Clean up doppelganger collision; monsters block doppelgangers, but players and dopps don't block each other
2020-12-29 11:34:51 -07:00
Eevee (Evelyn Woods)
819a2e2203
Make actors bonk on ice even if they weren't already sliding
2020-12-29 10:16:10 -07:00
Eevee (Evelyn Woods)
a32b29976e
Fix occasionally displaying times as 1:010
2020-12-29 10:15:57 -07:00
Eevee (Evelyn Woods)
6c99752f37
Allow the hook to block monster movement at decision time
2020-12-29 09:03:40 -07:00
Eevee (Evelyn Woods)
41ab804f79
Prevent blocks from pushing sliding blocks, except frame blocks pushing dirt blocks
2020-12-29 08:30:55 -07:00
Eevee (Evelyn Woods)
63f09283ea
Make actors explode when starting the level on a bomb
2020-12-29 07:21:18 -07:00
Eevee (Evelyn Woods)
0561e15d0a
Move hooking to decision time while fixing the swivel following problem
2020-12-29 07:04:55 -07:00
Eevee (Evelyn Woods)
2c1d047f4b
Don't let animations block actors with helmets
2020-12-28 15:03:40 -07:00
Eevee (Evelyn Woods)
f54edf8692
Fix the way force floors alter actors' movement when flipping under CC2 rules
2020-12-28 15:03:25 -07:00
Eevee (Evelyn Woods)
f6f83a45f1
Add a teleport flash
2020-12-28 14:21:28 -07:00
Eevee (Evelyn Woods)
1e79704f70
Add more experimental tiles: gates and a skeleton key (also some tileset touchups)
2020-12-28 14:00:47 -07:00
Eevee (Evelyn Woods)
fa47c28136
Fix some omissions with saving stats for custom level packs
2020-12-28 10:20:08 -07:00
Eevee (Evelyn Woods)
dee46b77df
Fix black buttons to /always/ separate horizontal and vertical wires
2020-12-28 06:53:19 -07:00
Eevee (Evelyn Woods)
b72e20a4a5
Round the bonus down when halving it
2020-12-27 18:26:49 -07:00
Eevee (Evelyn Woods)
a2914cc291
In Lynx update mode, only tick an actor's cooldown after an extra move if that move succeeded
2020-12-27 17:32:55 -07:00
Eevee (Evelyn Woods)
d10cba7935
Make bowling balls not detonate if bumped by an actor who can't enter the cell
2020-12-27 09:33:02 -07:00
Eevee (Evelyn Woods)
2c9fbbba50
Make ghosts bonk on ice corners too
2020-12-27 09:32:37 -07:00
Eevee (Evelyn Woods)
b9f31b4170
Attempt to fix the swap button flickering like mad
2020-12-27 08:51:12 -07:00
Eevee (Evelyn Woods)
1fc8e35843
Run on_ready in reverse order, mostly so initial RFF directions are correct
2020-12-27 08:33:03 -07:00
Eevee (Evelyn Woods)
66ca5f5fff
Prevent pickup up a fifth tool when unable to drop one (because it's a yellow teleport and you're not on floor)
2020-12-27 08:05:38 -07:00
Eevee (Evelyn Woods)
f30b9b34dd
Prevent bumping tiles in a cell that's blocked by thin walls
2020-12-27 08:05:03 -07:00
Eevee (Evelyn Woods)
bf952433f1
Allow anything to pull blocks with the hook
2020-12-27 07:41:11 -07:00
Eevee (Evelyn Woods)
6ab3ff9b0b
Fix treating a tile as wired if it had an adjacent wire with a tunnel running under it
2020-12-27 07:32:28 -07:00
Eevee (Evelyn Woods)
8211da6cc3
Make gravel and dirt also block doppelganger Cerise
2020-12-27 07:28:38 -07:00
Eevee (Evelyn Woods)
4e5b2f02d9
Make yellow tanks remember a yellow button press made while they were sliding
2020-12-27 07:20:33 -07:00
Eevee (Evelyn Woods)
934a2ec1fa
Switch railroad tracks when an actor with the RR sign makes a legal move
2020-12-27 07:08:23 -07:00
Eevee (Evelyn Woods)
d4fab4fba2
Restart a "waiting" level when changing compat mode; adjust player state when navigating with debug panel
2020-12-27 07:07:55 -07:00
Eevee (Evelyn Woods)
46a84e80b8
Fix some visual bugs with tracks in the editor
2020-12-27 07:07:23 -07:00
Eevee (Evelyn Woods)
f798bd2c9c
Move blobs' slime-spreading to happen instantly, not on arrival (and fix some typos)
2020-12-27 06:17:52 -07:00
Eevee (Evelyn Woods)
6470575a7b
Populate movement_cooldown for lit dynamite; guard against NaNs; check for moving blocks in bump mode
2020-12-27 05:41:03 -07:00
Eevee (Evelyn Woods)
c7815ba841
Move teleporter overriding to decision time; treat teleporting as a kind of slide; decouple speed from sliding
2020-12-27 05:40:06 -07:00
Eevee (Evelyn Woods)
adb0c4c869
Fix the search radius for orange buttons
2020-12-26 04:34:24 -07:00
Eevee (Evelyn Woods)
059a523347
Make ghosts erase fire even if they just got the boots from the same cell
2020-12-26 04:23:23 -07:00
Eevee (Evelyn Woods)
8fbd454059
Fix rendering in CC2 mode
2020-12-26 04:08:54 -07:00
Eevee (Evelyn Woods)
30b4b89a95
Change traps to not eject their contents when opened by wire
2020-12-26 03:59:21 -07:00
Eevee (Evelyn Woods)
a45a0138b9
Fix flipping force floors with something on them
...
Using `this` here doesn't work because the type just changed!
2020-12-26 03:58:40 -07:00
Eevee (Evelyn Woods)
ab22c6ff3f
Fix actors trying to reverse when bonking on normal force floors
2020-12-26 03:41:58 -07:00
Eevee (Evelyn Woods)
9c2809be29
Fix interpolation after the tic -> frame change
2020-12-26 03:41:35 -07:00
Eevee (Evelyn Woods)
0500518537
Move sliding back to arrive time, but force floor bonking to movement time
2020-12-26 03:15:00 -07:00
Eevee (Evelyn Woods)
0bb3f78a33
Give flame jets their own mini-pass
2020-12-26 02:03:39 -07:00
Eevee (Evelyn Woods)
09c1976608
Make the bulk tester more aggressive (any more shows no further time gain)
2020-12-26 02:02:24 -07:00
Eevee (Evelyn Woods)
86bf90ee89
Don't let the last player walk back out of the exit
2020-12-24 10:18:45 -07:00
Eevee (Evelyn Woods)
a0b34217b4
Implement the goofy CC2 "open trap" tile
2020-12-24 09:44:29 -07:00
Eevee (Evelyn Woods)
019f6a78bc
Move hook-pulling code to fix several ordering issues
2020-12-24 09:29:25 -07:00
Eevee (Evelyn Woods)
7b54f88981
Let dynamite blow up even wired floor
2020-12-24 09:20:14 -07:00
Eevee (Evelyn Woods)
d3067173d6
Don't search for an exit direction from the red teleporter you entered
2020-12-24 08:01:43 -07:00
Eevee (Evelyn Woods)
afe68e1b20
Fix fire to not kill ghosts, again
2020-12-24 07:57:18 -07:00
Eevee (Evelyn Woods)
1727df4e38
Allow ghosts to pass through chip sockets at any time
2020-12-24 07:08:12 -07:00
Eevee (Evelyn Woods)
effa166c67
Prevent bestowal of red keys
2020-12-24 07:06:04 -07:00
Eevee (Evelyn Woods)
0e1e577281
Allow doppelgangers to also erase animations
2020-12-24 07:03:26 -07:00
Eevee (Evelyn Woods)
d567a2553e
Disallow pulling unpushable blocks; play a sound on bowling ball collision
2020-12-24 06:55:50 -07:00
Eevee (Evelyn Woods)
1a7dc3e737
Implement a couple more compat flags and fix some typos with the dialog
2020-12-24 06:30:22 -07:00
Eevee (Evelyn Woods)
1968420027
Improve the pack handling experience somewhat
...
- Include links for the stock packs
- Show completion amount and total time for played packs
- Expose a list of all other packs the player has played
- Allow forgetting a pack
- Jump to the current level when reopening a pack
- Highlight the current level in the level browser, and scroll to it
2020-12-24 05:36:57 -07:00
Eevee (Evelyn Woods)
a8800838d4
Add a loading and error screen; also include compat CSS oops
2020-12-24 03:38:13 -07:00
Eevee (Evelyn Woods)
756a563135
Add a (working!) compatibility dialog, and a ruleset dropdown to the bulk tester
2020-12-24 01:51:27 -07:00
Eevee (Evelyn Woods)
2381bd38b9
Add compat switches for using the CC2 timing and update order
...
Other gameplay changes/fixes that crept in:
- Ghosts no longer pick up red keys
- Doppelgangers now read their movement directly from players, so no
intermediate variables are necessary
- Spring mining is no longer possible
- Push recursion is detected and prevented
- Bowling balls will also blow up anything that runs into them
2020-12-23 04:30:10 -07:00
Eevee (Evelyn Woods)
1aa406fc7b
Move sliding effects to decision time
2020-12-21 03:50:03 -07:00
Eevee (Evelyn Woods)
bf743caee5
Fix regression with dropping items on force floors
2020-12-21 00:34:31 -07:00
Eevee (Evelyn Woods)
6ea46c238c
Fix doppelganger moves lingering after a player switch/transmog
2020-12-21 00:29:14 -07:00
Eevee (Evelyn Woods)
42dd4b9ce6
Make ghosts with fire boots erase fire and blobs not move between canopies
2020-12-21 00:21:32 -07:00
Eevee (Evelyn Woods)
151f66a0fb
Make blobs spread slime onto floor
2020-12-21 00:05:12 -07:00
Eevee (Evelyn Woods)
b0aeee6ff0
Allow swapping and cycling even while sliding
2020-12-21 00:04:51 -07:00
Eevee (Evelyn Woods)
077a809168
Possibly fix update rate to be more consistent
2020-12-20 20:23:59 -07:00
Eevee (Evelyn Woods)
74eaab3fde
Allow disabling undo for circuitry, too
2020-12-19 21:21:28 -07:00
Andrew Ekstedt
8986a497fd
Disable undo during bulk testing
...
Undo generates a lot of garbage. Faster not to.
CC1 bulk test on my laptop:
Firefox 77 speeds up from 61s to 41s
Chrome barely moves, from 34s to 28s
2020-12-19 19:12:28 -08:00
Eevee (Evelyn Woods)
99af6025ee
Fix ice blocks to play an animation when destroyed by fire
2020-12-19 19:50:20 -07:00
Eevee (Evelyn Woods)
53838cbdd5
Fix ghosts to ignore force floors too
2020-12-19 19:44:57 -07:00
Eevee (Evelyn Woods)
a413d1afc2
Fix bowling balls to start rolling immediately
2020-12-19 19:25:32 -07:00
Eevee (Evelyn Woods)
296d1a356b
Fix wired cloner rotation to be permanent
2020-12-19 19:17:14 -07:00
Eevee (Evelyn Woods)
9391052011
Fix a typo and make Cerise block players
2020-12-19 18:48:45 -07:00
Eevee (Evelyn Woods)
86c4561647
Add a basic implementation of the hook
2020-12-19 18:43:30 -07:00
Eevee (Evelyn Woods)
f6bf33274f
Fix some collision issues with ghosts and timing of dynamite
2020-12-19 18:24:30 -07:00
Eevee (Evelyn Woods)
78800214d0
Rovers can pick up items and push blocks
2020-12-19 17:39:20 -07:00
Eevee (Evelyn Woods)
aa0bb5cbc2
Bowling balls still blow up actors when sliding
2020-12-19 17:33:26 -07:00
Eevee (Evelyn Woods)
148beb7d74
Implement all-players-exit behavior; touch up locks, buttons, logic gates; fix demo saving
2020-12-19 17:16:50 -07:00
Eevee (Evelyn Woods)
78f59b38c1
Rewrite wiring code and fix basically all issues with it; faster, undoable, etc.
2020-12-18 19:58:12 -07:00
Eevee (Evelyn Woods)
48f085d0df
Remove Level.cells in favor of linear_cells
2020-12-17 15:51:57 -07:00
Eevee (Evelyn Woods)
2fa35336cb
Allow running in debug mode automatically when run from localhost
2020-12-17 14:47:30 -07:00
Andrew Ekstedt
cf90c7ac67
Minor quality of life improvements for the bulk tester
...
- Jump to result by clicking on the progress bar
- Include level titles in the progress bar hover text
Makes it a little easier to navigate lengthy test results.
2020-12-16 21:51:14 -08:00
Eevee (Evelyn Woods)
afec553961
Flame jets only kill actors that aren't moving
2020-12-16 21:25:01 -07:00
Eevee (Evelyn Woods)
7e262feeb6
Delete some old code
2020-12-16 21:24:03 -07:00
Eevee (Evelyn Woods)
6aed1fa38e
Improve rotation of frame blocks on railroads
2020-12-16 21:23:37 -07:00
Eevee (Evelyn Woods)
4d5c1b4332
Flame jets destroy anything on them when turned on
2020-12-16 21:01:47 -07:00
Eevee (Evelyn Woods)
cace6d4180
Allow CC2 actions anytime the player can move, including on force floors
2020-12-16 20:53:42 -07:00
Eevee (Evelyn Woods)
c3889399fd
Add support for wired transmogrifiers
2020-12-16 20:19:38 -07:00
Eevee (Evelyn Woods)
d4da572940
Fix rovers once and for all; make helmet work more often; rename some stuff; simplify attempt_step
2020-12-16 20:05:36 -07:00
Eevee (Evelyn Woods)
7cf92f7841
Set slide mode twice, to handle the obscure case of grabbing cleats on ice
2020-12-16 14:59:40 -07:00
Eevee (Evelyn Woods)
408e4cd9f6
Yellow tanks give up if blocked
2020-12-16 14:28:11 -07:00
Eevee (Evelyn Woods)
2eb7c4cff9
Fix some bugs in rover collision (and let them go on dirt/gravel); very very close now
2020-12-16 14:18:00 -07:00
Eevee (Evelyn Woods)
b42b091181
Fix yellow tank timing; make ghosts go through doors, not stamp dirt
2020-12-16 14:15:32 -07:00
Eevee (Evelyn Woods)
6587cbf7f0
Fix detecting presses of action keys, again
2020-12-16 01:39:17 -07:00
Eevee (Evelyn Woods)
af7d2c741b
Give the bulk tester a category for early exit
2020-12-16 01:38:45 -07:00
Eevee (Evelyn Woods)
a91d7f24a1
Fix when we remember the player's move
2020-12-16 01:14:49 -07:00
Eevee (Evelyn Woods)
1021f30fb8
Partially fix rendering of crossed wires
2020-12-16 00:21:28 -07:00
Eevee (Evelyn Woods)
f0e702e397
Fix display of errored levels in bulk tester
2020-12-16 00:12:43 -07:00
Eevee (Evelyn Woods)
e48c2ed457
Doppelgangers block other doppelgangers, and cannot exit
2020-12-16 00:09:45 -07:00
Eevee (Evelyn Woods)
1273843f26
Add CC2's single-frame delay after a light switch is pressed
2020-12-15 23:43:21 -07:00
Eevee
341296dc3f
Merge pull request #11 from magical/grade
...
Add grade report to the bulk tester
2020-12-15 23:00:56 -07:00
Eevee (Evelyn Woods)
55f0d51e1c
Borrow some comments from magical's PR that they did at the same time
2020-12-15 23:00:22 -07:00
Eevee (Evelyn Woods)
62eb1a86e4
Fix some minor wire bugs: NOT/counter/pink button power drawing, circuit block motion, nested wire tunnels
2020-12-15 22:57:32 -07:00
Eevee (Evelyn Woods)
3790e0f07e
Allow wired cloners to try other directions
2020-12-15 21:27:58 -07:00
Eevee (Evelyn Woods)
daa3581be0
Fix pressing CC2 actions while moving
2020-12-15 21:14:38 -07:00
Andrew Ekstedt
55bf250c63
Add grade report to the bulk tester
2020-12-15 20:08:35 -08:00
Eevee (Evelyn Woods)
eec7ab2e1a
Fix rover behavior at last; lesson 5 now syncs
2020-12-15 17:50:13 -07:00
Eevee (Evelyn Woods)
25b4b32f94
Add teleport overriding and seriously clean up teleport code
2020-12-15 16:44:37 -07:00
Eevee (Evelyn Woods)
7c82a4cdf9
Only do CC2 actions per press, not per held tic
2020-12-15 01:07:02 -07:00
Eevee (Evelyn Woods)
0f02e270f2
Catch level parse errors in the bulk test dialog
2020-12-15 00:55:40 -07:00
Eevee (Evelyn Woods)
07c9a83f75
Fix crash with teeth and Cerise
2020-12-15 00:48:28 -07:00
Eevee (Evelyn Woods)
bf81738e19
Partly implement helmet; get rover very close to correct (?)
2020-12-15 00:44:07 -07:00
Eevee (Evelyn Woods)
55abe8b53a
Allow the bowling ball to slide normally
2020-12-15 00:26:00 -07:00
Eevee (Evelyn Woods)
f858668ca8
Clumsily teach bowling balls to destroy actors
2020-12-15 00:10:23 -07:00
Eevee (Evelyn Woods)
2d7df413ee
Allow ghosts to pass through thin walls
2020-12-14 23:59:38 -07:00
Eevee (Evelyn Woods)
dae66de160
Thieves will, however, take bribes from anyone
2020-12-14 23:49:47 -07:00
Eevee (Evelyn Woods)
8b60a44b09
Fix loading of the initial entry direction for railroads
2020-12-14 23:39:07 -07:00
Eevee (Evelyn Woods)
2103c649f6
Implement a few quirks of ghost movement
2020-12-14 23:35:11 -07:00
Eevee (Evelyn Woods)
6d4326fe5b
Thieves only steal from the player
2020-12-14 23:29:05 -07:00
Eevee (Evelyn Woods)
3e18e38f15
Add rough implementations of dynamite and bowling ball
2020-12-14 23:25:48 -07:00
Eevee (Evelyn Woods)
9ade84c6fe
Generally only lose if the real player dies, not a doppelganger
2020-12-14 23:20:46 -07:00
Eevee (Evelyn Woods)
bf3c501353
Fix yellow tank behavior to be faux simultaneous
2020-12-14 23:14:31 -07:00
Eevee (Evelyn Woods)
a529414e42
Cycle an RFF after a failed override; move slide turnaround to move phase
2020-12-14 22:06:42 -07:00
Eevee (Evelyn Woods)
e4ab7dde86
Fix loading custom floors with junk in their modifier's high nybble
2020-12-14 22:06:01 -07:00
Eevee (Evelyn Woods)
a865647eae
Non-players move instantly while sliding
2020-12-14 17:52:59 -07:00
Eevee (Evelyn Woods)
f02fa1a9bb
Split up the wiring updates
2020-12-14 17:42:31 -07:00
Eevee (Evelyn Woods)
fea93aa9ec
Fix wire tool only working in the upper-left quadrant
2020-12-14 17:32:48 -07:00
Eevee (Evelyn Woods)
00ac94ac8c
Add a further hack atop the cooldown delay hack to fix adjacent trap release
2020-12-14 17:25:15 -07:00
Eevee (Evelyn Woods)
c34aaadf06
Attempt, unsuccessfully, to implement ice block melting
2020-12-14 17:07:35 -07:00
Eevee (Evelyn Woods)
efd25294ac
Restore the notion of an out-of-turn move
...
This fixes a lot of replay sync issues with cloners; in CC2, actors
advance only one frame (1/3 tic) at a time, so when a cloned object
happens to get a turn later in the same tic that it was cloned, it only
ends up 1 frame ahead of everything else. Since actors can only begin
moves on tic-aligned frames, even though it does get where it was going
sooner, it has to wait for a frame before moving, so the advantage
doesn't change anything.
The problem is that LL counts movement in tics, not frames, so that kind
of bonus turn puts the clone an entire tic ahead which can gum things
up.
This is still not perfect, but it's much closer.
2020-12-14 17:05:01 -07:00
Eevee (Evelyn Woods)
beb5a5c743
Change the debug mode trigger to a regular click
2020-12-14 17:02:14 -07:00
Eevee (Evelyn Woods)
f3f73a5e41
Move input handling into Level and clean it up a ton; add a bulk test gizmo
2020-12-14 17:02:14 -07:00
Eevee (Evelyn Woods)
189ab96e3c
C2G strings can be empty
2020-12-13 23:56:13 -07:00
Eevee (Evelyn Woods)
16f11f3a9b
Exits block CC1 blocks
2020-12-13 22:22:22 -07:00
Eevee (Evelyn Woods)
c8ed4b9fba
Fix the spelling of Chuck Sommerville's name lol whoops
2020-12-13 20:43:01 -07:00
Eevee (Evelyn Woods)
1c9dee1213
Add support for recording replays, with a bunch of refactoring along the way
2020-12-13 20:36:12 -07:00
Eevee (Evelyn Woods)
85a81878cc
Add a button to download a level from the editor
2020-12-13 16:23:45 -07:00
Eevee (Evelyn Woods)
df14b62b94
Auto-grow the map save buffer when necessary; do less slicing
2020-12-13 16:09:04 -07:00
Eevee (Evelyn Woods)
5e6784c235
Fix encoding and decoding of swivels
2020-12-13 15:56:24 -07:00
Eevee (Evelyn Woods)
0f5b8098f6
Split teleporting into its own pass, like Lynx
2020-12-13 02:23:14 -07:00
Eevee (Evelyn Woods)
93954135d2
Set splash delay back to 6; is correct after all I guess
2020-12-13 01:54:52 -07:00
Eevee (Evelyn Woods)
90008c3a89
Make the player push blocks at decision time
...
It turns out the player explores all their decisions in a very physical
way, which is the real source of block slapping and also means the
player can push blocks before anything else can move, regardless of
actor order.
This fixes at least half a dozen CC1 replays, which is just
mindboggling.
2020-12-13 00:39:36 -07:00
Eevee (Evelyn Woods)
bd4c04c1d8
Fix wiring order; relax player/monster collision
2020-12-12 21:00:28 -07:00
Eevee (Evelyn Woods)
f95913b6d8
Teeth chase the player's apparent position
2020-12-12 20:24:28 -07:00
Eevee (Evelyn Woods)
3a04b6276c
Go back to toggling green objects instantly
2020-12-12 19:22:04 -07:00
Eevee (Evelyn Woods)
4d23acb27e
Add on_approach; use it to erase animations and fix popdown floors
2020-12-12 19:00:58 -07:00
Eevee (Evelyn Woods)
077ac65650
Restore turn-based mode
2020-12-12 18:16:52 -07:00
Eevee (Evelyn Woods)
299b1578a7
Mostly revert actor loop reorg
...
I was right the first time, and I've proven it to myself now. I
originally made the change because I couldn't see any other way to fix
the ICEBERG replay from Steam CC1, but now, I do!
2020-12-12 17:57:47 -07:00
Eevee (Evelyn Woods)
413fdce590
Rejigger input parsing to be stateless and better match CC2; syncs SCAVENGER HUNT!
2020-12-12 01:08:08 -07:00
Eevee (Evelyn Woods)
cfdbe0705a
Add even faster playback options; fix some demo decoding bugs
2020-12-12 00:22:51 -07:00
Eevee (Evelyn Woods)
769d424dde
Fix rendering breakage caused by a couple more out-of-turn moves
2020-12-11 22:54:01 -07:00
Eevee (Evelyn Woods)
8671bee08b
Run wiring thrice per tic; recognize some tiles have odd propagation rules
2020-12-11 22:49:23 -07:00
Eevee (Evelyn Woods)
c17169f49d
Rearranged debug panel a bit; added progress bar for replay playback
2020-12-11 22:15:39 -07:00
Eevee (Evelyn Woods)
fde7d9a11c
Remove some old stuff; stub out replay progress bar
2020-12-11 21:40:40 -07:00
Eevee (Evelyn Woods)
fec09c03ba
Support running the game at ludicrous speed
2020-12-11 21:31:07 -07:00
Eevee (Evelyn Woods)
0f0c7437a6
Allow rewinding a replay without desyncing it
2020-12-11 21:14:19 -07:00
Eevee (Evelyn Woods)
410af788fc
Fix teleporters, and more generally out-of-turn movement
2020-12-11 20:58:50 -07:00
Eevee (Evelyn Woods)
a96c089d7f
Move the debug panel to a sidebar
2020-12-11 19:43:22 -07:00
Eevee (Evelyn Woods)
b8dd0ae41e
Add a delay before restarting a failed level by tapping the viewport
2020-12-11 14:39:14 -07:00
Eevee (Evelyn Woods)
75e981335f
Restore the input viewer
2020-12-11 14:25:02 -07:00
Eevee (Evelyn Woods)
6c2afd7e32
Fix flicker when pushing a block across multiple cells
2020-12-11 13:59:23 -07:00
Eevee (Evelyn Woods)
2f130861d6
Remove animation_{progress,speed} and fix interpolation
2020-12-11 13:56:41 -07:00
Eevee (Evelyn Woods)
5572b3e692
Implement viewport size override debug setting
2020-12-10 18:53:23 -07:00
Eevee (Evelyn Woods)
b75253a249
Rearrange actor loop to put movement advancement at the end
...
I don't know why I ever thought this was a separate pass; I think it was
just the easiest way to make smooth scrolling work when I first
implemented it on like day 2. Turns out it wasn't ever correct and has
all manner of subtle implications I'll be sorting out for ages.
This does make the turn-based stuff //way// simpler, though.
2020-12-10 18:51:40 -07:00
Eevee (Evelyn Woods)
831a9392e3
Fix debug icon URL in prod
2020-12-10 13:54:59 -07:00
Eevee (Evelyn Woods)
81f7e7fd64
Add encodings for the gift bow and circuit block
2020-12-10 13:51:15 -07:00
Eevee (Evelyn Woods)
823fe4de37
bestowal_bow => gift_bow, directional_block => frame_block
2020-12-10 13:28:40 -07:00
Eevee (Evelyn Woods)
bd4cc10b16
Implement foil
2020-12-10 12:48:01 -07:00
Eevee (Evelyn Woods)
ef78085e40
Ghosts turn left, not right!
2020-12-10 12:45:15 -07:00
Eevee (Evelyn Woods)
422c702777
Allow blocks to reverse on railroads; partially implement teleporter wiring
2020-12-10 12:25:49 -07:00
Eevee (Evelyn Woods)
6063ea9fba
Wired tracks only switch on pulse; wired red teleports only work when powered
2020-12-09 21:07:14 -07:00
Eevee (Evelyn Woods)
db2a24319d
Fix lightning bolt; implement speed boots
2020-12-09 20:52:58 -07:00
Eevee (Evelyn Woods)
b01d50c7e8
Move replay support into the debug panel
2020-12-09 20:36:13 -07:00
Eevee (Evelyn Woods)
b2ff27f241
New LL tile: circuit block, which overrides any wiring below it
2020-12-09 20:23:27 -07:00
Eevee (Evelyn Woods)
235cc79e8b
Add LL-specific exit poses for Lexy and Cerise
2020-12-09 20:22:35 -07:00
Eevee (Evelyn Woods)
e6d7876679
Fix directional blocks losing their arrows after being cloned
2020-12-08 19:00:50 -07:00
Eevee (Evelyn Woods)
a23afe3d90
Editor: Disallow erasing the floor (!)
2020-12-08 18:58:59 -07:00
Eevee (Evelyn Woods)
ed58cbac6b
Editor: Add a (glitchy) wire tool; add right-click support to existing tools (hurrah)
2020-12-08 18:56:49 -07:00
Eevee (Evelyn Woods)
829184056e
Fix activating debug mode before loading a level
2020-12-08 17:54:21 -07:00
Eevee (Evelyn Woods)
35bbac9c99
Change the debug trigger to something more accessible
2020-12-08 17:46:48 -07:00
Eevee (Evelyn Woods)
a44ed295a2
Fix ball animation
2020-12-08 17:23:27 -07:00
Eevee (Evelyn Woods)
90b583df44
In CC2 (and Lynx, for different reasons), clones are immediately nudged out of the cloner
2020-12-08 17:22:20 -07:00
Eevee (Evelyn Woods)
f521bd6d2d
New debug options: disable interpolation, show actor bboxes
2020-12-08 16:40:35 -07:00
Eevee (Evelyn Woods)
4ee56fad01
Briefly reveal invisible walls, as in CC2
2020-12-08 12:48:25 -07:00
Eevee (Evelyn Woods)
9735ef93e9
Fix being unable to click the CC2 action buttons more than once
2020-12-08 11:24:59 -07:00
Eevee (Evelyn Woods)
6d39fd3831
Allow "rotating" a counter tile to alter its value
2020-12-07 22:07:20 -07:00
Eevee (Evelyn Woods)
35f040c8d7
Implement saving of logic gates and directional blocks
2020-12-07 21:15:18 -07:00
Eevee (Evelyn Woods)
2849260672
Add swivels and stopwatches to the palette
2020-12-07 12:50:03 -07:00
Eevee (Evelyn Woods)
f462ae3394
Add some more complex tiles to the palette; add ,/. shortcuts
2020-12-07 12:45:21 -07:00
Eevee (Evelyn Woods)
c4bb1f3df1
Editor: Add a dedicated level browser with previews, and a button to add a new level
2020-12-06 20:57:02 -07:00
Eevee (Evelyn Woods)
e754e483ec
Update the pack name when changing it in the editor
2020-12-06 19:23:19 -07:00
Eevee (Evelyn Woods)
aeac5c285b
Finally add and wire up most of the debug panel
2020-12-06 18:51:12 -07:00
Eevee (Evelyn Woods)
c1ba299e9f
Fix collision for socket and exit
2020-12-06 17:01:47 -07:00
Eevee (Evelyn Woods)
90b6498ff9
Make wires and gray buttons affect swivel doors
2020-12-06 16:57:07 -07:00
Eevee (Evelyn Woods)
30261a106f
Mostly implement rover
2020-12-06 16:51:24 -07:00
Eevee (Evelyn Woods)
8428572def
Step in reverse order; allow pushing blocks on railroads; gliders ignore turtles
2020-12-06 16:29:07 -07:00
Eevee (Evelyn Woods)
4838bb189b
Fix keys accumulating while paused
2020-12-06 16:23:43 -07:00
Eevee (Evelyn Woods)
54381370c0
Add timid teeth; move movement decisions onto tile types; improve doppelganger behavior
2020-12-06 16:16:04 -07:00
Eevee (Evelyn Woods)
d981a0a4be
Fix some interactions that differ between players/doppelgangers; add Cerise doppelganger movement
2020-12-06 14:59:54 -07:00
Eevee (Evelyn Woods)
076aa9133a
Improve splash page slightly; add pack saving in editor
2020-12-06 14:03:36 -07:00
Eevee (Evelyn Woods)
70df85187f
Toggle force floors when powered
2020-12-06 11:13:37 -07:00
Eevee (Evelyn Woods)
f7080a2697
Editor: Fix shift-pencilling a tile with properties
2020-12-03 22:51:07 -07:00
Eevee (Evelyn Woods)
cb62786470
Fix yellow teleport behavior (you pick up even if it itself is not blocked); play pickup sound
2020-12-03 22:43:24 -07:00
Eevee (Evelyn Woods)
caf4906176
Fix a crash when trying to drop from an empty inventory
2020-12-03 22:21:44 -07:00
Eevee (Evelyn Woods)
564d247657
Play the thief sound even if you only lost bonus points
2020-12-03 21:58:45 -07:00
Eevee (Evelyn Woods)
30062485ab
Fix hint saving
2020-12-03 21:38:39 -07:00
Eevee (Evelyn Woods)
87ac6f94a3
Editor: More tiles; more metadata; save hints, more or less
2020-12-03 21:19:47 -07:00
Eevee (Evelyn Woods)
700d3898ab
Add a half-baked notion of perception level to tile rendering
2020-12-03 21:18:46 -07:00
Eevee (Evelyn Woods)
8505b132bb
Fix some minor bugs introduced into turn-based mode
2020-12-03 21:17:50 -07:00
Eevee (Evelyn Woods)
b97aaa81a9
Slime doesn't kill blobs; implement bribe; fix player size on level restart
2020-12-03 20:52:43 -07:00
Eevee (Evelyn Woods)
0cd1ea342d
Implement yellow teleport pickup behavior
2020-12-03 20:52:00 -07:00
Eevee (Evelyn Woods)
3c43b8d7cd
Respect a level's intended viewport size
2020-12-03 17:49:02 -07:00
Eevee (Evelyn Woods)
0885bfc9d2
Make hook load, canopy work, and force floors reverse with gray button
2020-12-03 17:48:24 -07:00
Eevee (Evelyn Woods)
411005eaa6
Editor: Stub out support for actually saving levels
2020-12-03 15:40:44 -07:00
Eevee (Evelyn Woods)
89ae9aa4a3
Fix C2M compression occasionally losing the last byte
2020-12-03 15:39:11 -07:00
Eevee (Evelyn Woods)
c1452e005f
Disable action buttons when appropriate; add inv overflow; partial CC1 support
2020-12-02 17:23:55 -07:00
Eevee (Evelyn Woods)
e51665b612
Add basic support for drop/cycle/swap
2020-12-02 17:18:54 -07:00
Eevee (Evelyn Woods)
8d197ce479
Add a basic implementation of doppelgangers
2020-12-02 15:03:13 -07:00
Eevee (Evelyn Woods)
f0680ce0c4
Cleaned up several tile properties; added railroad adjusting
2020-12-02 13:54:32 -07:00
Eevee (Evelyn Woods)
72cba627a8
Add a prototype railroad track tool
2020-12-02 12:23:09 -07:00
Eevee (Evelyn Woods)
aa41336b90
Add more tiles and more kinds of adjustment
2020-12-02 11:54:15 -07:00
Eevee (Evelyn Woods)
ec5d9f7b12
Editor: Add selected tile, tool help, and hint editing; clean up toolbar style
2020-12-02 11:34:46 -07:00
Eevee (Evelyn Woods)
0d376e003e
Editor: Teach the adjust tool to edit individual tiles
2020-12-02 09:05:20 -07:00
Eevee (Evelyn Woods)
560a89cfd3
Fix using the wrong tile for the railroad switch
2020-11-30 09:09:21 -07:00
Eevee (Evelyn Woods)
e7c9bbe846
Implement most of the railroad behavior
2020-11-30 09:08:55 -07:00
Eevee (Evelyn Woods)
8d26de6915
Implement railroad rendering
2020-11-28 12:56:08 -07:00
Eevee (Evelyn Woods)
14061dec0e
Fix the editor's viewport size to match the level
2020-11-28 12:36:35 -07:00
Eevee (Evelyn Woods)
4218657c28
Use consistent drawing behavior in the editor; add shift, ctrl pencil modifiers
2020-11-28 11:59:57 -07:00
Eevee (Evelyn Woods)
dff3081194
Editor: center/pad the level, fix some bugs with pencil drawing
2020-11-28 11:07:02 -07:00
Eevee (Evelyn Woods)
349af15e05
Fix being stuck in rewind mode forever when using the button
2020-11-25 03:59:57 -07:00
Eevee (Evelyn Woods)
50c81c5c96
Add directed blob + walker sprites and a custom slime splash (btw slime now destroys stuff)
2020-11-25 03:37:58 -07:00
Eevee (Evelyn Woods)
3a454d77f5
Implement the remaining logic gates and /most/ of their rendering!
2020-11-25 03:14:06 -07:00
Eevee (Evelyn Woods)
ac6e33bb6c
Simplify blitting; fix arrow blitting; impl light switch; load more items
2020-11-25 01:14:15 -07:00
Eevee (Evelyn Woods)
6c6ce8f344
Fix fireballs being blocked by fire
2020-11-24 23:13:25 -07:00
Eevee (Evelyn Woods)
4b6a8e49ae
Fix errors when drawing outside the level in the editor
2020-11-24 01:31:09 -07:00
Eevee (Evelyn Woods)
5cb29c8f7d
Overhaul collision
...
Collision now uses bits and masks. The main upshot is that ghost and
ice/directional blocks collide much more correctly, now. And turtles
block fireballs.
Also, monsters can now move over "no" signs, and can trample the player
if she's standing on top of an item.
While I was at it, I finished implementing the "bestowal bow", an item
mod (same layer as the "no" sign) that allows any actor to pick up the
item in that tile.
2020-11-23 23:41:32 -07:00
Eevee (Evelyn Woods)
fb301b3b3e
Initialize direction when placing actor tiles in the editor
2020-11-23 22:18:40 -07:00
Eevee (Evelyn Woods)
ca4eaa86cb
Fix some minor aesthetic issues with the editor
2020-11-23 21:54:53 -07:00
Eevee (Evelyn Woods)
39d463932b
Remove the "stuck" flag and fix all the repercussions of that
2020-11-23 21:35:28 -07:00
Eevee (Evelyn Woods)
e803af2fd2
Handle actors starting on force floors; partially implement item bestowal
2020-11-23 19:22:59 -07:00
Eevee (Evelyn Woods)
37072fa003
Add three new music tracks from notchris
2020-11-03 14:07:25 -07:00
Eevee (Evelyn Woods)
81c7f97d72
Improve behavior on mobile
...
- Hide the key hints in portrait mode
- Make auto-scaling more robust; it now handles when the player root is
wider than the actual play area, it better understands the inventory
behavior in portrait mode, and it recognizes when it needs to shrink;
with these changes, the game actually fills the screen on both Firefox
and Chrome on my phone!
- Replace the text buttons with SVG icons
- Add a little more contrast to button edges
- Fix alignment of the heart/time/score counters in portrait mode
- Detect movement based on where the touch is relative to the level
viewport, not the entire play area (oof)
2020-11-03 13:50:34 -07:00
Eevee (Evelyn Woods)
1b6bd68879
Bump undo buffer size to 30 seconds
2020-11-03 12:09:12 -07:00
Eevee (Evelyn Woods)
8ff0bd803a
Use a ring buffer for undo; don't pause when running out of undo during rewind
2020-11-03 11:57:16 -07:00
Eevee (Evelyn Woods)
350ac08d4d
Shrink size of undo buffer by 40%
...
Using simple maps of changed properties, rather than a big pile of
closures, takes up significantly less space.
2020-11-03 11:48:51 -07:00
Eevee (Evelyn Woods)
84840d2b02
Consider turn-based mode to be aid; switch back to realtime correctly
2020-11-03 10:32:25 -07:00
Eevee (Evelyn Woods)
e7e02281a2
Clean up turn-based code
...
Mostly style nits, but also:
- Renamed some stuff in anticipation of removing GameEnded.
- Actor decisions are independent, so there's no need to do most of them
in the first part of a tic and the player in the second part; they can
all happen together in the second part.
- waiting_for_input was merged into turn_based, which I think makes it
easier to follow what's going on between tics. Although I just
realized it introduces a bug, so, better fix that next.
- The canvas didn't need to know if we were waiting or not if we just
force the tic offset to 1 while waiting. This also fixed some slight
jitter with force floors.
2020-11-03 09:50:37 -07:00
Eevee (Evelyn Woods)
83a1dd23ff
Merge branch 'master' of github.com:eevee/lexys-labyrinth
2020-11-02 15:40:09 -07:00
Eevee (Evelyn Woods)
49ff0d9723
Clean up wiring drawing and logic (zero gates is now a no-op!); begin implementing logic gates
2020-11-01 11:36:17 -07:00
Eevee (Evelyn Woods)
060dfdc7d7
Implement drawing and correctly pushing directional blocks
2020-10-28 00:17:41 -06:00
Timothy Stiles
f670224460
forgot to change a continue to a return
2020-10-26 16:08:29 +11:00
Timothy Stiles
32b4399683
Merge remote-tracking branch 'upstream/master'
2020-10-26 16:05:34 +11:00
Eevee (Evelyn Woods)
dedaa45d07
Fix pushing sliding blocks
2020-10-24 22:30:18 -06:00
Eevee (Evelyn Woods)
368e4676fd
Mostly implement orange buttons and flame jets
2020-10-24 21:33:11 -06:00
Timothy Stiles
509b3ca3b7
Merge remote-tracking branch 'upstream/master'
2020-10-25 14:31:32 +11:00
Eevee (Evelyn Woods)
0c9a7e3d07
Implement all three blob modes and fix up some minor details
...
This makes the replays from the Steam copies of Blobnet and Nice Day
play back correctly! Neato!
2020-10-24 20:49:14 -06:00
Eevee (Evelyn Woods)
a07e10218e
Monsters always attempt their last candidate direction, even if blocked
2020-10-24 20:32:22 -06:00
Eevee (Evelyn Woods)
f1b040f176
Implement green teleports and the Lynx/CC2 PRNG
2020-10-23 21:09:31 -06:00
Eevee (Evelyn Woods)
603a74a751
Show a hint the player starts on
2020-10-23 17:44:26 -06:00
Eevee (Evelyn Woods)
2820c067c5
Implement the CC2 "no sign"
2020-10-23 17:37:50 -06:00
Timothy Stiles
a0e37422b9
Merge remote-tracking branch 'upstream/master'
2020-10-23 20:26:39 +11:00
Eevee (Evelyn Woods)
8c2f71294f
Fix crash caused by last fix dammit ( fixes #9 )
2020-10-22 14:44:05 -06:00
Timothy Stiles
fedbd200fc
Merge remote-tracking branch 'upstream/master'
2020-10-22 18:04:43 +11:00
Eevee (Evelyn Woods)
d03d61516f
Fix NaNs sneaking into the save file
2020-10-21 23:34:59 -06:00
Eevee (Evelyn Woods)
09eb03dad6
Iterate actors in reverse order to match Lynx/CC2 ( fixes #7 )
2020-10-21 21:24:59 -06:00
Eevee (Evelyn Woods)
8073604271
Add... error handling... sort of... for levels at least
2020-10-21 21:07:50 -06:00
Eevee (Evelyn Woods)
edbe32c148
Add support for drag/drop, dir upload, C2G, AND lazy level loading!
2020-10-21 20:47:07 -06:00
Timothy Stiles
9e53aa75a0
I tried 'snappier' and it was a bad idea, so now you don't have to
...
it basically skips the first frame of each turn-based movement. it's not TERRIBLE but the smooth movement is already really nice, we don't need to change it
2020-10-14 23:13:38 +11:00
Timothy Stiles
4388402850
Merge remote-tracking branch 'upstream/master'
2020-10-14 22:43:35 +11:00
Timothy Stiles
e3de4d59c7
spaceify
2020-10-14 22:34:00 +11:00
Timothy Stiles
f7e83342a0
fix a turn based rewinding visual bug
2020-10-14 22:33:45 +11:00
Timothy Stiles
be5cc7f97f
spaceify
2020-10-14 22:23:13 +11:00
Timothy Stiles
e9d542f438
fix a bug when undoing while waiting for input
...
need to unset it (we used to do this but it got lost in the refactor)
2020-10-14 22:22:27 +11:00
Timothy Stiles
a7c38ae0af
fix 'keys held for less than a frame are ignored' bug
...
this was annoying me!
2020-10-14 22:17:07 +11:00
Timothy Stiles
bb168d7e1e
fix force arrows in turn based mode
...
if you got misaligned in tic_counter then you'd force arrow forever.
also, turn_based is no longer passed in! yay!
2020-10-14 22:07:29 +11:00
Timothy Stiles
e53f00a432
I broke force arrows, in fact!
...
so much for tooting my own horn
2020-10-14 21:54:13 +11:00
Timothy Stiles
a8ce3bca11
fix bugs
...
we're back at parity now, it looks like
2020-10-14 21:42:51 +11:00
Timothy Stiles
2e1a87199a
code refactor part 1: advance_tic is now two parts
...
seems to work so far
2020-10-14 21:24:46 +11:00
Eevee (Evelyn Woods)
36b9f2efd7
Make (most) actors pick up blue keys
2020-10-07 15:28:51 -06:00
Eevee (Evelyn Woods)
197113c842
Add two new tracks from jneen
2020-10-07 15:16:20 -06:00
Eevee (Evelyn Woods)
b20e2cac8c
Tanks in traps turn around
2020-10-04 09:52:59 -06:00
Eevee (Evelyn Woods)
5c2fc32546
Tanks always decide to move in their given direction, even when blocked
2020-10-04 09:47:03 -06:00
Eevee (Evelyn Woods)
7f8efaa4e0
Fix flicker when moving in sync with a N/W actor at the edge of the viewport
2020-10-04 09:40:52 -06:00
Eevee (Evelyn Woods)
8adb630862
Add partial wiring support
2020-10-01 06:46:07 -06:00
Eevee (Evelyn Woods)
4cd0585d0b
Revert the blue wall compat fix and replace them with popwalls instead ( fixes #5 )
2020-10-01 03:22:49 -06:00
Eevee (Evelyn Woods)
4f5d169d06
Reduce SFX volume in levels with a lot of off-screen button presses
2020-10-01 03:08:54 -06:00
Eevee (Evelyn Woods)
9b873764fb
Shim around several compat issues that affect CCLP levels
...
- CCLP1 #81 requires pushing blocks off of blue walls, which is
impossible in CC2 but allowed in TW Lynx (unclear if this is a lynx
behavior or a tw bug)
- CCLP1 #89 has a tank start on a recessed wall and drive off of it,
expecting the recessed wall to be left alone, but under CC2 rules it
becomes a wall; such walls are now automatically converted to a new
tile, the "doubly recessed wall", which restores the expected behavior
without changing how recessed walls work in general
- CCLP4 #135 expects pressing a blue button to not affect blue tanks
that are currently in mid-slide
In addition, the behavior of blue buttons now matches the Lynx/Steam
behavior: the press is stored as a flag and queued until the tank is
next able to move.
2020-10-01 03:08:25 -06:00
Eevee (Evelyn Woods)
8326b42bc7
Pad "real time" seconds to two places; allow tied scores without aid to replace scores with aid
2020-09-30 02:37:43 -06:00
Eevee (Evelyn Woods)
f99b9826be
Detect trap buttons that are held down when the level begins
2020-09-30 02:20:33 -06:00
Eevee (Evelyn Woods)
f4363b8fda
Rewrite how connections work
...
- Teleporters now connect on the fly, rather than having fixed
connections (important because dynamite can destroy teleporters!)
- If custom connections are present, red and brown buttons ONLY use
those, rather than falling back to CC2 connection rules
- Multiple brown buttons connected to the same trap should now work
correctly
2020-09-30 02:11:17 -06:00
Eevee (Evelyn Woods)
db3af69ff7
Make gray buttons undoable
2020-09-28 20:44:46 -06:00
Eevee (Evelyn Woods)
dfa0fa4a9e
Add gray buttons to the C2M implementation
2020-09-28 20:43:22 -06:00