Commit Graph

143 Commits

Author SHA1 Message Date
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
Timothy Stiles
e134b4cbd9 Implement the Dormant Lava
Acts like dirt. However, fireballs will enter it and turn it into Fire in the process.
2021-02-06 16:07:10 +11:00
Timothy Stiles
8ffc6e1127 implement the Halo
Protects the player from death once, destroying the would-be killer in the process.
2021-02-06 12:00:45 +11:00
Timothy Stiles
9b76c6b9ce implement the Terraformer
The Terraformer is like a clone machine for everything that isn't an actor. It copies the terrain (and item) behind it to in front of it when powered.
2021-02-05 14:41:11 +11:00
Eevee (Evelyn Woods)
0b6ea68a7b Fix rendering of crossed wires 2021-01-22 09:30:12 -07:00
Eevee (Evelyn Woods)
6a2d6d608d Disable animation on inactive red teleporters and transmogrifiers (fixes #28) 2021-01-16 20:53:30 -07:00
Eevee (Evelyn Woods)
bb7c468174 Finish special-ization of tileset defs; add depressed versions of buttons 2021-01-13 03:33:43 -07:00
Eevee (Evelyn Woods)
b6ed3b6502 Change the Lexy loop to be more Lynx-like
This simplifies the renderer by having movement cooldowns only work one
way, and thus removes the jank from Steam rendering.

This commit also applies cooldowns for animations at decision time, as
Lynx does, which eliminates a weird special case from their spawning.

Also, Lexy mode now explicitly does not allow an actor to get cooled
twice in one tic.  However, this change does make clone machines no
longer be aligned with the thing that pressed the button to clone them,
which is unfortunate.
2021-01-13 01:34:08 -07:00
Eevee (Evelyn Woods)
9efe3d00ef Fix perception 2021-01-10 14:44:42 -07:00
Eevee (Evelyn Woods)
8f40f575bf Introduce a DrawPacket to consolidate draw arguments; fix blurriness of double-size monsters 2021-01-08 16:28:08 -07:00
Eevee (Evelyn Woods)
560fd93c8b Reveal popdown floors when there's an item on them, too 2021-01-08 15:01:30 -07:00