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
Eevee (Evelyn Woods)
325a06395d
Partly implement gray buttons; expose them and green stuff in the editor
2020-09-28 04:09:24 -06:00
Eevee (Evelyn Woods)
76051870b7
Basically finish the camera region editing tool; add save/load support for it
2020-09-28 04:00:55 -06:00
Eevee (Evelyn Woods)
432bb881e6
Split out mouse operations; add camera regions, our first custom feature
2020-09-28 02:58:11 -06:00
Eevee (Evelyn Woods)
8711d87a36
Split the editor into its own module
2020-09-28 00:58:31 -06:00
Eevee (Evelyn Woods)
ade135514b
Undo actor animation ( fixes #4 )
2020-09-28 00:38:24 -06:00
Eevee (Evelyn Woods)
684021f93d
Fix typo in drowned player tile
2020-09-27 04:03:15 -06:00
Eevee (Evelyn Woods)
78bb1f2dc1
Populate player 2 state sprites so she can actually be drawn
2020-09-26 20:38:50 -06:00
Eevee (Evelyn Woods)
70d6739465
Ice blocks splash in water
2020-09-26 20:21:00 -06:00
Eevee (Evelyn Woods)
760ca374ce
Fall back to webkitAudioContext if necessary, sigh
2020-09-26 19:47:51 -06:00
Timothy Stiles
c8d80dfc63
another spaceify (oops)
...
I literally tried to change the setting for this in notepad++ but it crashes every time I do
ha ha
2020-09-26 23:48:47 +10:00
Timothy Stiles
ccfd5c30ce
fix animation ugliness in turn-based mode
...
Uguhughugh it looks SO SMOOTH NOW. I can go to bed happy.
2020-09-26 23:45:53 +10:00
Timothy Stiles
e908434a20
only restart on fresh press of spacebar
2020-09-26 23:01:42 +10:00
Timothy Stiles
5b7273e9d9
Turn-Based: add space to wait
2020-09-26 22:40:38 +10:00
Timothy Stiles
e6a4e88935
spaceify previous commit
2020-09-26 22:32:01 +10:00