Commit Graph

153 Commits

Author SHA1 Message Date
Eevee (Evelyn Woods)
f6ee09b6c7 Added a new auto-fix for actors atop bombs in CCL levels
This fixes CCLP5 level 25 (and I think one or two others) by introducing
a new item, the dormant bomb, which turns into a regular bomb when
something moves off of it.

Other accumulated tileset touchups that snuck in:

- Recolored the canopy to hopefully look more like a tent
- Lightened slime by one shade
- Made the custom green floor colors clash less, and lightened the
  yellow floor grout
- Removed the shadow from the pause stopwatch, and lightened the other
  two, to better distinguish their different behavior
- Added little rivets to steel walls
- Made the symbols on the sokoban blocks easier to see
- Lightened the blue and red keys to match the shade of the other two,
  and also hopefully make them easier to see atop water and thieves
- Shrank the railroad crossing sign slightly
- Added laces to the hiking boots
- Added shading to the bowling ball
- Removed the shadows from the actor versions of the bowling ball and
  dynamite
- Darkened the dynamite item to better distinguish it from active
  dynamite
- Lightened the blue teleporter exit so it doesn't look too much like an
  inactive red teleporter
- Improved the gradient on the beetle
- Made the hint tile look recessed like CC2, to better convey that it
  blocks some actors
- Added art for some possible tiles: rainbow teleporter, toll gate, nega
  heart, phantom ring, feather
2024-05-04 12:09:48 -06:00
Eevee (Evelyn Woods)
9763ceaa1c Revamp tileset options; refactor drawing a bit; work on tileset conversion
Tileset options now identify the tilesets by their appearance, rather
than the fairly useless "custom 1" or whatever.

At last you can draw a tile without creating a renderer.  Truly this is
the future.

Tileset conversion is still incredibly jank, but it does a fairly decent
job (at least at LL -> CC2) without too much custom fiddling yet.
2024-04-25 05:22:18 -06:00
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)
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)
b4ebdf069d Add a MegaZeux-like ambient animation to ice tiles 2021-12-22 21:37:46 -07:00
Eevee (Evelyn Woods)
bcbb536bdc Fix a couple bugs with drawing double-size tiles 2021-12-22 21:13:19 -07:00
Eevee (Evelyn Woods)
34e430e8a1 Fix a typo in tileset detection 2021-11-28 22:47:20 -07:00
Timothy Stiles
073aba65ab glass block with a heart shouldn't crash (fixes #84) 2021-11-21 14:47:40 +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)
3e7390ffc0 Fix rendering of actors zooming through traps in Lynx 2021-06-03 02:03:25 -06:00
Eevee (Evelyn Woods)
7c0335a24d Update tileset: minor touchups, lighter popwalls, killer indicator, some experiments 2021-05-25 17:41:23 -06:00
Eevee (Evelyn Woods)
5384561413 Add a new tile, the one-way thin wall 2021-03-13 18:05:13 -07:00
Eevee (Evelyn Woods)
56611958f7 Draw actor facing directions in the editor (fixes #38) 2021-03-10 20:47:07 -07:00
Eevee (Evelyn Woods)
dd10236b22 Implement "hide logic", and actually save options (fixes #52) 2021-03-08 21:04:23 -07:00
Eevee (Evelyn Woods)
1e5160b40d Use kill_actor when appropriate; fix some bowling ball behavior 2021-03-08 20:02:23 -07:00
Eevee (Evelyn Woods)
2cf6afa590 Slow down force floors and animated chips slightly 2021-03-08 18:53:36 -07:00
Eevee (Evelyn Woods)
cf2f399371 Fix some subtle issues caused by 60 FPS updating 2021-03-08 18:53:11 -07:00
Eevee (Evelyn Woods)
a36862e65b Revamp the halo into an ankh 2021-03-07 19:36:48 -07:00
Eevee (Evelyn Woods)
db34ca72f9 Make turntables slide actors out of them and toggle on edge flip
Also fix the default display of unpowered tiles while I'm in here.
2021-03-07 18:05:55 -07:00
Eevee (Evelyn Woods)
59d26e6a00 Add a vfx for falling into a hole 2021-03-07 00:56:11 -07:00
Eevee (Evelyn Woods)
e69ac492c7 Remove the item lock tile 2021-03-07 00:43:56 -07:00
Eevee (Evelyn Woods)
ada36e8d61 Implement sokoban blocks 2021-03-07 00:07:18 -07:00
Eevee (Evelyn Woods)
fbe10e90a2 Fix p >= 1 in steam-strict, again 2021-03-06 19:01:45 -07:00
Eevee (Evelyn Woods)
26c66d6857 Make animations explicit, and fix almost every rendering problem
- `Tileset.animation_slowdown` is gone!
- Actors are now free to animate every move or every two moves, and have
  been configured to do so appropriately.  This fixes the appearance of
  blobs, most noticeably.  (Also fixes #36.)
- Actors that are always animated in CC2 are now always animated in LL.
- Lilypads/turtles now bob randomly.  More randomly than CC2, even.
- Players no longer appear to be swimming when stepping off of lilypads.
- Invisible walls no longer temporarily reveal themselves when you have
  the x-ray glasses (secret eye).
- There's a new option for using the CC2 animation timing, though god
  knows why you would want to.
2021-03-06 18:41:49 -07:00
Eevee (Evelyn Woods)
4c9afe5a9f Fix some typos in the new LL tile layout 2021-03-05 13:55:07 -07:00
Eevee (Evelyn Woods)
b7e05f2eb9 Fix backwards trap tiles 2021-03-04 13:38:40 -07:00
Eevee (Evelyn Woods)
821bc4201f Unhardcode the placement of counter numbers on the tilesheet 2021-03-02 21:46:57 -07:00
Eevee (Evelyn Woods)
5443514583 Revert handling of negative animation time, which should never happen 2021-03-02 21:34:28 -07:00
Eevee (Evelyn Woods)
e3443b73d8 Correctly erase the background when loading a custom CC2 tileset 2021-03-02 21:33:42 -07:00
Eevee (Evelyn Woods)
751b6b92c3 Rearrange the Lexy tileset 2021-03-02 21:33:42 -07:00
Timothy.Stiles
7c35782079 fix glass blocks vs mines and pseudo-items (fixes #63, 59) 2021-03-03 13:25:46 +11:00
Timothy.Stiles
4037cdf86b don't crash in _draw_standard if p < 0 (fixes #58) 2021-03-03 13:04:55 +11:00
Timothy Stiles
4ee724030c Implement Glass block
Similar to a dirt block, but stores the first item it moves over, dropping it when destroyed and cloning it in a cloning machine. Has ice block/frame block collision. Turns into floor in water. Doesn't have dirt block immunities.
2021-02-19 18:21:29 +11:00
Timothy Stiles
c7af08b694 nix global cycler, terraformer and dormant lava 2021-02-19 08:48:21 +11:00
Timothy Stiles
e866710af6 turntables can have wires run to them like blue teles 2021-02-16 16:44:38 +11:00
Timothy Stiles
62a3ed99aa Implement Blue teleporter exit
A blue teleporter for all intents and purposes except it can only be exited, not entered.
2021-02-16 16:21:12 +11:00
Timothy Stiles
e0004fb840 Implement Dash Floor
Anything walking on it moves at double speed.
2021-02-16 15:10:05 +11:00
Timothy Stiles
8cbba99c0c Implement Item Lock
When placed atop an item, you must have that item to enter the tile. When you do, pay the item and destroy the item lock. Also can be placed on top of a bonus, and you must pay that amount of bonus to enter.
2021-02-15 21:27:56 +11:00
Timothy Stiles
11747f0d6e Implement Diode
Emits power only when receiving power. (Effectively, this delays power by one frame.)

Also I made it so circuit blocks clone properly
2021-02-14 19:54:53 +11:00
Timothy Stiles
20dad5c76a Implement Boulder
Similar to a dirt block, but rolls when pushed. Boulders transfer momentum to each other. Has ice block/frame block collision. Turns into gravel in water. Spreads slime.
2021-02-14 18:38:56 +11:00
Timothy Stiles
7bcb1ac018 Implement Spikes
Stops players (and doppelgangers) unless they have hiking boots. Everything else can pass.
2021-02-14 17:04:21 +11:00
Timothy Stiles
dece34f365 implement x5 Bonus
also make it so bonuses of 1mil+ are rendered reasonably in-game
(100bil+ starts breaking the results screen but I think that's lower priority)
2021-02-14 16:43:59 +11:00
Timothy Stiles
f64302f324 Implement Cracked Ice
Cracked Ice: Turns into water when something steps off of it (except ghosts).
Also had to implement slide_ignores/item_slide_ignores since I needed a way to ignore static aspects of the tile without preventing its functions from being called. there's probably a better way IDK
2021-02-14 15:48:20 +11:00
Timothy Stiles
c27af789cb Implement Hole and Cracked Floor
Hole: A bottomless pit. Destroys everything (except ghosts).
Cracked Floor: Turns into a hole when something steps off of it (except ghosts).
2021-02-14 15:12:21 +11:00
Timothy Stiles
1f6c86c146 Implement Electrified Floor
Conducts power (like a blue teleporter). While powered, destroys anything not wearing lightning boots (except dirt blocks).
2021-02-14 14:22:28 +11:00
Timothy Stiles
1040646393 implement the Turntable
Rotates anything entering this tile (counter)clockwise. Frame blocks are rotated too. If connected to wire, only functions while receiving power.
2021-02-07 21:47:52 +11:00
Timothy Stiles
0100f1e12c spaceify 2021-02-06 16:07:40 +11:00