Commit Graph

136 Commits

Author SHA1 Message Date
Eevee (Evelyn Woods)
eff62a9765 Merge trap/cloner connections; round-trip them through C2M; stub out connect tool 2021-04-28 22:05:01 -06:00
Eevee (Evelyn Woods)
7f90ee5f7d Give the blue and green walls better names 2021-04-28 19:46:39 -06:00
Eevee (Evelyn Woods)
58cc6ff61e Consolidate editor export buttons into a menu 2021-04-28 19:25:49 -06:00
Eevee (Evelyn Woods)
c1bf88d3dd Add rudimentary support for CCL export 2021-04-28 18:44:01 -06:00
Eevee (Evelyn Woods)
4077bd0de3 Center the canvas independently along each axis 2021-04-26 10:24:01 -06:00
Eevee (Evelyn Woods)
167360f596 Add a zoom control 2021-04-24 11:43:28 -06:00
Eevee (Evelyn Woods)
e3a128df60 Add the cursor position to the editor's fledgling status bar 2021-04-23 14:37:20 -06:00
Eevee (Evelyn Woods)
ea9cc5ef07 Make editor zoom preserve the cursor point; allow wider panning 2021-04-23 14:27:52 -06:00
Eevee (Evelyn Woods)
a7553457ad Add mousewheel zooming to the editor 2021-04-23 13:28:20 -06:00
Eevee (Evelyn Woods)
9e090f967d Make erasing thin walls undoable; fix ctrl key sometimes not being recognized 2021-03-14 16:57:41 -06:00
Eevee (Evelyn Woods)
29fb8791e5 Fix using shift with the adjust tool 2021-03-14 15:16:30 -06:00
Eevee (Evelyn Woods)
2ab983ec0a Swap ctrl with right click for most editor tools; add bg tile
Also merges hover with mouse operations proper, which simplifies some
things.
2021-03-14 15:08:19 -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)
fa06eb8d7a Allow editing level comments; touch up level props dialog (fixes #47) 2021-03-13 18:02:49 -07:00
Eevee (Evelyn Woods)
0b957cfeb1 Preserve wires when drawing a wireable tile in the editor; light switches don't propagate 2021-03-10 23:20:00 -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)
28a26cdc14 Add modification tracking to the editor and wire it into undo/redo 2021-03-10 20:28:26 -07:00
Eevee (Evelyn Woods)
9c5b241cae Add editor keyboard shortcuts for select all and deselect all 2021-03-10 19:27:49 -07:00
Eevee (Evelyn Woods)
58deed916c Add editor keyboard shortcuts for undo and selecting (some) tools 2021-03-10 19:19:08 -07:00
Eevee (Evelyn Woods)
a0f282fb8e Add mouse preview to the editor; implement the fill tool 2021-03-10 19:08:19 -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)
028fc016b0 Add an ankh description in the editor 2021-03-08 20:16:14 -07:00
Eevee (Evelyn Woods)
a36862e65b Revamp the halo into an ankh 2021-03-07 19:36:48 -07:00
Eevee (Evelyn Woods)
c6c904ca68 Abandon the .mjs naming scheme
Browsers refuse to load a JS module if the mimetype is wrong, and even
Python's http.server doesn't recognize this extension yet.
2021-03-07 18:06:42 -07:00
Eevee (Evelyn Woods)
662787c287 Add palette support for sokoban tiles 2021-03-07 00:46:01 -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)
1f2a58d21c Add support for headless bulk testing 2021-03-06 12:39:16 -07: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
c463b83ce1 oops one more fire_sticks mention 2021-02-19 08:54:11 +11:00
Timothy Stiles
c7af08b694 nix global cycler, terraformer and dormant lava 2021-02-19 08:48:21 +11:00
Timothy Stiles
3ea7a045da revamp electric floor, perf improvement for circuitry recalculation
Now reads:
Conducts power (like a 4-way wire). While powered, destroys anything not wearing lightning boots (except dirt blocks)
And when you step on it with lightning boots it conducts power
And it's not on by default if it's just sitting on its own somewhere
2021-02-16 17:18:49 +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
b7cedc2426 refactor speed shoes so they stack with dash floor/sand instead of overriding 2021-02-16 15:59:34 +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
3c6bff77d6 re-arrange experimental tab in a more natural order 2021-02-15 14:25:08 +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
5cc5370817 Global Cyclers can cycle actors now too 2021-02-07 23:19:33 +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
4f0ff2b346 Terraformer alt behaviour when it has an item on top
When activated, if there's an item on its tile, copies the item to the tile in front of it. Otherwise, copies the item AND terrain BEHIND it to the tile in front of it.
2021-02-06 23:08:39 +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