Commit Graph

382 Commits

Author SHA1 Message Date
Eevee (Evelyn Woods)
55c4c574ec New MS compat flag: Block splashes don't block the player 2024-04-24 03:32:35 -06:00
Eevee (Evelyn Woods)
097a4b04d8 Move Lynx trap ejection to its own mini-step 2024-04-23 02:58:23 -06:00
Eevee (Evelyn Woods)
7e210de5e7 New compat flag for making popwalls actually pop on arrival 2024-04-23 02:56:10 -06:00
Eevee (Evelyn Woods)
991704ee19 Erase animations at decision time, apparently 2024-04-23 02:52:47 -06:00
Eevee (Evelyn Woods)
c5f2728ad0 Fix the Lynx fake-wall flicking behavior 2024-04-23 00:31:56 -06:00
Eevee (Evelyn Woods)
3a9e7c1cd8 Split the adjust tool into rotate/adjust
It was trying to do too many things.  Also, the adjust tool is now free
to operate on actors, and can toggle the form of a number of them.

- Rearranged the palette to put colored tiles in canonical key order,
  finally

- Expanded the size of the SVG overlay slightly so hover effects don't
  get cut off at the level border

- Fixed some MouseOperation nonsense by simply using the same object
  when the same operation is bound to both mouse buttons

- Added a verb and preview to the adjust tool, in the hopes of making it
  slightly more clear what it might do

- Enhanced the adjust tool to place individual thin walls and frame
  arrows
2024-04-22 00:24:07 -06:00
Eevee (Evelyn Woods)
abbda898c7 Add support for gray buttons to the adjust tool 2024-04-21 03:53:57 -06:00
Eevee (Evelyn Woods)
39f0f20dc6 Update implicit button connections when editing, I hope 2024-04-21 02:30:34 -06:00
Eevee (Evelyn Woods)
04d6b3dddb Refactor circuit-tracing to be more in algorithms
This should make it more usable in the editor.
2024-04-21 00:39:23 -06:00
Eevee (Evelyn Woods)
b360fa3998 Change sand slowdown from 100% to 50%, and give it the gravel sound 2024-04-20 03:34:14 -06:00
Eevee (Evelyn Woods)
17f4e77054 Fix force-proof players to still bonk on force floors
Fixes the replay of Chaos to Metastable, my white whale!
2024-04-19 21:41:57 -06:00
Eevee (Evelyn Woods)
3cf81b53ad Improve the connection tool somewhat; show implicit connections
For example, you can now make connections with the connection tool.
Remarkable.

Unfortunately, implicit connections aren't updated as you edit the level
yet.

Also came with some refactors for searching a level and whatnot.
2024-04-18 00:56:20 -06:00
Eevee (Evelyn Woods)
e9650db4d8 Hardcode green toggles a bit less, and shrink the undo size 2024-04-17 19:46:29 -06:00
Eevee (Evelyn Woods)
e11a5956bd Make hearts and mines transmogrify into each other 2024-04-17 03:51:47 -06:00
Eevee (Evelyn Woods)
618f292ec9 Add an xray view and a "matching button" sprite for the sokoban blocks 2024-04-17 03:51:11 -06:00
Eevee (Evelyn Woods)
849010fc75 Add some saturation to the palette
Opinions are mixed, but not mine.  I like this.
2024-04-17 03:50:19 -06:00
Eevee (Evelyn Woods)
e1e99e73e7 Fix circuit blocks; distinguish floor wiring from black button wiring 2024-04-16 21:09:46 -06:00
Eevee (Evelyn Woods)
3802b10956 Visually indicate when a floor is in an odd wiring state
This distinguished a regular crossed floor from what you get when
blowing up e.g. a blue or red teleporter.

Fixes #60.
2024-04-16 20:48:50 -06:00
Eevee (Evelyn Woods)
933d20d559 Factor out the list of pushable tiles 2024-04-13 22:06:00 -06:00
Eevee (Evelyn Woods)
52bc2bdf8e Show the entire blast radius of dynamite 2024-04-12 01:08:16 -06:00
Eevee (Evelyn Woods)
ebe848ec99 Fix trap timing on Lynx
CC2's goofy `on_stand` on arrival behavior made them extra extra fast,
which is too fast.
2024-04-11 02:24:34 -06:00
Eevee (Evelyn Woods)
9bf418258f Convert several uses of on_begin to on_ready 2024-04-11 02:24:34 -06:00
Eevee (Evelyn Woods)
65664bba7b Simplify dynamite spawn code 2024-04-11 02:24:34 -06:00
Eevee (Evelyn Woods)
d7e1b969e8 Fix this errant comma and shame myself 2024-04-11 02:24:34 -06:00
Eevee (Evelyn Woods)
f417162f6f Refactor bombs to use on_stand instead of on_begin 2024-04-11 02:24:34 -06:00
Eevee (Evelyn Woods)
f896e1bdfd Fix Lynx's no-backwards-overriding; remove the force-floor-on-arrive flag
Not sure the latter one is even correct at all; it completely breaks
ICEHOUSE, for one.  I guess it made more sense with the previous hacky
implementation of force floors applying at the start of the game.
2024-04-11 02:24:34 -06:00
Eevee (Evelyn Woods)
64ca8f008c Restore standing on arrival
A few CC2LP1 replays desynced, so, I guess this is right actually.
2024-04-11 02:24:34 -06:00
Eevee (Evelyn Woods)
2ee86b50d2 Remove slide_automatically
Since sliding happens either on cell arrival or in the actor's idle
phase, the actor will always have a pending slide by the end of a tic,
so this code doesn't actually do anything.
2024-04-11 02:24:34 -06:00
Eevee (Evelyn Woods)
f140804713 Don't on_stand() on arrival; fix the CC1 force-floor compat flag 2024-04-11 02:24:34 -06:00
Eevee (Evelyn Woods)
a1f357f317 Make sliding be the tiles' responsibility
This seems to simplify things and also explain the CC2 semantics: force
floors activate while being stood on (which happens, I guess, during
idle), so it applies to objects that start the level on force floors.
This was probably done to make force floor flipping work, too.  On the
other hand, ice still only activates when being stepped on.
2024-04-11 02:24:34 -06:00
Eevee (Evelyn Woods)
15a8be1c15 Play sounds very near the player at full volume, but spatialize chip pickups 2021-12-22 23:58:14 -07:00
Eevee (Evelyn Woods)
1e02c6aa6f Complete the pgchip ice block emulation (fixes #34) 2021-12-22 22:30:59 -07:00
Eevee (Evelyn Woods)
2c95c7eacd Update MS compat so bugs and walkers still avoid fire (fixes #69) (nice) 2021-12-22 22:09:13 -07:00
Eevee (Evelyn Woods)
6d580af817 Use the inactive tile for electrified floors by default (fixes #67) 2021-12-22 21:25:01 -07:00
Eevee (Evelyn Woods)
4ebe5c1149 Preserve the color of sokoban blocks on cloning 2021-11-28 22:47:20 -07:00
Timothy Stiles
6f27332cce Cerise doesn't break cracked tiles (because she's dainty)
Teal Knight suggestion. It's a purely backwards compatible way to distinguish the two characters a little more, and fits her theme, but it's up to you.
2021-11-28 18:26:18 +11:00
Timothy Stiles
71abc13330 let any actor with a key unlock gates (unlike doors) 2021-11-20 12:57:58 +11:00
Timothy Stiles
8feb732a8f boulders are pushed in the movement not facing direction (fixes #81) 2021-11-18 20:53:56 +11:00
Timothy Stiles
a87db67d84 lexy w/ skates and cerise now crack but don't slide on cracked ice (fixes #82) 2021-11-18 20:22:00 +11:00
Timothy Stiles
d675cddafb spaceify 2021-11-18 18:40:15 +11:00
Timothy Stiles
2df4dc5829 fix 'blowing up electric floors doesn't remove the wiring' regression 2021-11-18 18:39:46 +11:00
Timothy Stiles
42d543b235 fix an electric floor visual bug (fixes #80) 2021-11-18 18:35:06 +11:00
Timothy Stiles
94a7ec5a2c dropping 2 ankhs in a row shouldn't crash (fixes #79) 2021-11-18 18:27:28 +11:00
Eevee (Evelyn Woods)
51bc3dfe83 Add support for TW large tilesets, real MS tilesets, better tileset detection, and an attempted fix for CC1 thin wall tiles 2021-06-03 02:15:45 -06:00
Eevee (Evelyn Woods)
ca1a48c0fe Fix sokoban buttons to count being pressed at level start 2021-05-26 22:49:29 -06:00
Eevee (Evelyn Woods)
3752902663 Move gates to the canopy layer 2021-05-25 17:42:13 -06:00
Eevee (Evelyn Woods)
e8cb95a60b Fix double-ejecting from traps in Lynx 2021-05-11 17:39:19 -06:00
Eevee (Evelyn Woods)
fc1f85dac9 Fix Lynx force floor compat switch; ensure monsters can't turn in traps 2021-05-11 16:31:28 -06:00
Eevee (Evelyn Woods)
9369b2b167 Partially restore Lynx force floor behavior 2021-05-10 20:46:19 -06:00
Eevee (Evelyn Woods)
08c86c6129 Refactor sliding handling
Eliminates a number of annoying little hacks by getting rid of
`slide_mode` and instead trusting the terrain, live, like CC2 seems to
do (and Lynx definitely does).
2021-05-10 20:23:02 -06:00