Commit Graph
100 Commits
Author SHA1 Message Date
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
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) 6df0c96d1b Make the green key and lock more colorblind-friendly 2020-09-29 10:58:37 -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
Eevee (Evelyn Woods) 4a0ba44116 Restore floors under thin walls in CCL maps 2020-09-26 04:49:58 -06:00
Eevee (Evelyn Woods) 967520c1bd Change fake floors to not be blocking; causes bad visual/audio feedback 2020-09-26 03:15:01 -06:00
Eevee (Evelyn Woods) b40805c02e Take a rough swing at phone support 2020-09-26 02:55:39 -06:00
Eevee (Evelyn Woods) a2e1ed4820 Remove unused sound effect 2020-09-26 02:55:23 -06:00
Eevee (Evelyn Woods) fb71dd1ff1 Fix conundrum, which I accidentally corrupted a bit 2020-09-26 01:44:06 -06:00
Eevee (Evelyn Woods) 12066072ec Disable the big ol cheat whoops 2020-09-26 00:17:15 -06:00
Eevee (Evelyn Woods) d5cd52d100 Call them, well, not "chips" 2020-09-25 23:15:55 -06:00
Eevee (Evelyn Woods) 58473bbd17 (very minor splash changes) 2020-09-25 23:11:31 -06:00
Eevee (Evelyn Woods) 68de70743f Fix, partially, stopping yourself on force floors 2020-09-25 20:45:01 -06:00
Eevee (Evelyn Woods) 55014fa1ca Use ceil, not floor, when converting the timer to seconds 2020-09-25 20:02:53 -06:00
Eevee (Evelyn Woods) fcf65836ca Update README a bit; we now have assets! 2020-09-25 20:01:44 -06:00
Eevee (Evelyn Woods) 5e2c8ee65e Add a background; hide some broken stuff 2020-09-25 19:55:34 -06:00
Eevee (Evelyn Woods) 7a6370c9e9 Fix spurious floors in parsed CCL files 2020-09-25 19:09:24 -06:00
Eevee (Evelyn Woods) f0bfa12083 Clear connections when editing a new level 2020-09-25 05:39:15 -06:00
Eevee (Evelyn Woods) 0c7a2ce6e5 Fill in Lexy's leftward swim 2020-09-25 05:15:24 -06:00
Eevee (Evelyn Woods) 5c93b5f199 Only let the player pick up keys for now 2020-09-25 05:11:30 -06:00
Eevee (Evelyn Woods) 26f9e917a8 Support the remaining invalid tile, which slipped into CCLXP2 2020-09-25 04:51:59 -06:00
Eevee (Evelyn Woods) 537e011f2a Track scores, including your total score for a pack 2020-09-25 03:47:18 -06:00
Eevee (Evelyn Woods) ac59f7b15d Add "kinda song", by glip 2020-09-25 01:29:48 -06:00
Eevee (Evelyn Woods) 40aa845e92 Add sound effects! 2020-09-25 01:28:31 -06:00
Eevee (Evelyn Woods) 6aee8ed622 Overhaul the UI to be more good pretty; add CCLP2+4 2020-09-24 20:28:16 -06:00
Eevee (Evelyn Woods) c231e7fc53 Add the Lexy tileset and make it the default, finally! 2020-09-24 19:20:29 -06:00
Eevee (Evelyn Woods) 19fd4273f1 Add three more songs; make music track deterministic 2020-09-24 17:23:31 -06:00
Eevee (Evelyn Woods) 8adb249925 Steam Teeth pursue the player's image 2020-09-23 23:38:10 -06:00
Eevee (Evelyn Woods) 7817a8ebdd Revert previous commit; auto-eject is Lynx behavior 2020-09-23 22:56:27 -06:00
Eevee (Evelyn Woods) 459120313e Eject actors from open traps immediately 2020-09-23 22:55:12 -06:00
Eevee (Evelyn Woods) 787cd0d3a7 Fix tile rendering with the TW tileset 2020-09-23 22:49:44 -06:00
Eevee (Evelyn Woods) 5e70df77a6 Fix block behavior, again 2020-09-23 22:41:07 -06:00
Eevee (Evelyn Woods) 958a2768d7 Fix clicking in the editor lol 2020-09-23 22:10:45 -06:00
Eevee (Evelyn Woods) 02f7f19275 Use flex-end instead of end, which Chrome doesn't support 2020-09-23 22:10:35 -06:00
Eevee (Evelyn Woods) f583fe3b10 Rewind at 2× speed 2020-09-23 21:43:24 -06:00
Eevee (Evelyn Woods) a631b0f0e2 Fix demo playback (faucet was being created too early and immediately destroyed) 2020-09-23 21:42:05 -06:00
Eevee (Evelyn Woods) 8d0ea0c60e Use image-rendering values that work in Chrome, too (oops) 2020-09-23 21:35:29 -06:00
Eevee (Evelyn Woods) e859afe0b5 Change hint behavior to match Steam: hint shows as you approach 2020-09-23 21:31:56 -06:00
Eevee (Evelyn Woods) 67504e436e Draw the player's blocked/pushing frame (at last) 2020-09-23 21:09:57 -06:00
Eevee (Evelyn Woods) c63e1384dc Ignore Tile World's .dac files 2020-09-21 02:08:26 -06:00
Eevee (Evelyn Woods) b7ceafc5a1 Add a first pass at a soundtrack, with 5 tracks wow! 2020-09-21 02:08:03 -06:00
Eevee (Evelyn Woods) 0535cbc0bf Stub out drawing connections in the editor 2020-09-20 21:17:18 -06:00
Eevee (Evelyn Woods) 8ac70f8ee6 Add some more obits and remove "player" from them 2020-09-20 21:17:01 -06:00
Eevee (Evelyn Woods) 362c18d6e2 Remove ||=, which is also really new! 2020-09-20 01:09:42 -06:00
Eevee (Evelyn Woods) ad615e5caf Teleporters with an actor on them are blocked 2020-09-20 01:08:47 -06:00
Eevee (Evelyn Woods) 2dc18a98db Finally fix pushing a sliding block 2020-09-20 01:05:24 -06:00
Eevee (Evelyn Woods) c8a24d0e4b Avoid ??= for now, it's extremely new 2020-09-20 00:30:07 -06:00
Eevee (Evelyn Woods) 72a44429af Animate CC2 force floors 2020-09-20 00:02:08 -06:00
Eevee (Evelyn Woods) ddfa7f562a Extend the CC2 tile definition with some custom stuff 2020-09-19 23:32:13 -06:00
Eevee (Evelyn Woods) 9e66bc46bb Restore fireballs going through fire 2020-09-19 23:32:00 -06:00
Eevee (Evelyn Woods) ec8992a0fc Support separate poses for ice and force floors, and spin on ice 2020-09-19 22:59:50 -06:00
Eevee (Evelyn Woods) 582a875c52 Don't use "ignores" to override blocking; it breaks ice corners 2020-09-19 22:53:38 -06:00
Eevee (Evelyn Woods) 16f87bf6e0 Fix hot blocks appearing to move backwards on death 2020-09-19 22:47:04 -06:00
Eevee (Evelyn Woods) 2fc0648333 Slow animations down by half 2020-09-19 22:43:47 -06:00
Eevee (Evelyn Woods) 32be0d0d71 Overhaul inventory: taking items is now undoable; inventory UI is correct, shows key counts 2020-09-19 22:43:04 -06:00
Eevee (Evelyn Woods) 4edc83ae4f Restore bumping solid tiles 2020-09-19 20:35:12 -06:00
Eevee (Evelyn Woods) fcbd2b17be Fix dirt block direction in DAT; remove clone block, which serves no purpose for us 2020-09-18 22:22:38 -06:00
Eevee (Evelyn Woods) 569a3c0f3d Fix wired drawing of teleports 2020-09-17 00:02:01 -06:00
Eevee (Evelyn Woods) bc08ec4ceb Lazy-initialize the editor (to keep the TW tileset working in the player) 2020-09-16 23:34:52 -06:00
Eevee (Evelyn Woods) e0bfb0aadf Standardize visual state, and use it instead of transmuting a dead player 2020-09-16 21:08:43 -06:00
Eevee (Evelyn Woods) 171c52acb5 Fix rewind effect to go up, not down 2020-09-16 19:57:17 -06:00
Eevee (Evelyn Woods) ede7dbf424 Take inventory into account when auto-scaling the game 2020-09-16 19:46:39 -06:00
Eevee (Evelyn Woods) 063d9f9ef9 Implement rewind, add a key for it, and suggest keys in general 2020-09-16 19:40:38 -06:00
Eevee (Evelyn Woods) 57810da581 Add obituaries, and get them out of the game itself 2020-09-16 19:21:32 -06:00
Eevee (Evelyn Woods) fe12c599bc Abort the tic and draw a final frame after the game ends; fix dead player appearance 2020-09-16 18:14:06 -06:00
Eevee (Evelyn Woods) 1d809601ae Clumsily add support for the player's swimming sprite 2020-09-16 14:57:29 -06:00
Eevee (Evelyn Woods) e70e92b931 Move responsibility for drawing out of Tileset and into the renderer 2020-09-16 14:10:10 -06:00
Eevee (Evelyn Woods) 2e0519f802 Get rid of the Level.tic_offset hack and stop passing level to Tileset.draw 2020-09-16 13:29:57 -06:00
Eevee (Evelyn Woods) 529b87ab23 Attempt to support some invalid MSCC tiles 2020-09-16 01:51:38 -06:00
Eevee (Evelyn Woods) 5f6e820b14 Exits block non-players 2020-09-16 01:18:39 -06:00
Eevee (Evelyn Woods) 1dd617bbd0 Fix the editor's cell sort direction 2020-09-16 01:18:14 -06:00
Eevee (Evelyn Woods) 39a7985c1e Add support for map compression; use URL-safe base64 2020-09-16 01:08:08 -06:00
Eevee (Evelyn Woods) a7f00d6ec4 Get level encoding and URL sharing just barely working! 2020-09-16 00:11:52 -06:00
Eevee (Evelyn Woods) fed52c42ab Update CCL parser to also use tile templates containing types 2020-09-15 22:48:59 -06:00
Eevee (Evelyn Woods) cce28c2d7e Rearrange C2M tile definitions to make saving easier
Also, tile templates no longer use name or carry format-specific
modifiers; they have the same properties as real tiles.
2020-09-15 22:45:15 -06:00
Eevee (Evelyn Woods) 325960b609 Allow only players, ice blocks, directional blocks, and rovers to reveal walls 2020-09-15 00:32:24 -06:00
Eevee (Evelyn Woods) 6d26362cb0 Remove the hesitation check from sliding teeth 2020-09-14 22:30:12 -06:00