Commit Graph

176 Commits

Author SHA1 Message Date
Eevee (Evelyn Woods)
296d1a356b Fix wired cloner rotation to be permanent 2020-12-19 19:17:14 -07:00
Eevee (Evelyn Woods)
9391052011 Fix a typo and make Cerise block players 2020-12-19 18:48:45 -07:00
Eevee (Evelyn Woods)
f6bf33274f Fix some collision issues with ghosts and timing of dynamite 2020-12-19 18:24:30 -07:00
Eevee (Evelyn Woods)
78800214d0 Rovers can pick up items and push blocks 2020-12-19 17:39:20 -07:00
Eevee (Evelyn Woods)
aa0bb5cbc2 Bowling balls still blow up actors when sliding 2020-12-19 17:33:26 -07:00
Eevee (Evelyn Woods)
148beb7d74 Implement all-players-exit behavior; touch up locks, buttons, logic gates; fix demo saving 2020-12-19 17:16:50 -07:00
Eevee (Evelyn Woods)
78f59b38c1 Rewrite wiring code and fix basically all issues with it; faster, undoable, etc. 2020-12-18 19:58:12 -07:00
Eevee (Evelyn Woods)
48f085d0df Remove Level.cells in favor of linear_cells 2020-12-17 15:51:57 -07:00
Eevee (Evelyn Woods)
afec553961 Flame jets only kill actors that aren't moving 2020-12-16 21:25:01 -07:00
Eevee (Evelyn Woods)
6aed1fa38e Improve rotation of frame blocks on railroads 2020-12-16 21:23:37 -07:00
Eevee (Evelyn Woods)
4d5c1b4332 Flame jets destroy anything on them when turned on 2020-12-16 21:01:47 -07:00
Eevee (Evelyn Woods)
c3889399fd Add support for wired transmogrifiers 2020-12-16 20:19:38 -07:00
Eevee (Evelyn Woods)
d4da572940 Fix rovers once and for all; make helmet work more often; rename some stuff; simplify attempt_step 2020-12-16 20:05:36 -07:00
Eevee (Evelyn Woods)
408e4cd9f6 Yellow tanks give up if blocked 2020-12-16 14:28:11 -07:00
Eevee (Evelyn Woods)
2eb7c4cff9 Fix some bugs in rover collision (and let them go on dirt/gravel); very very close now 2020-12-16 14:18:00 -07:00
Eevee (Evelyn Woods)
b42b091181 Fix yellow tank timing; make ghosts go through doors, not stamp dirt 2020-12-16 14:15:32 -07:00
Eevee (Evelyn Woods)
e48c2ed457 Doppelgangers block other doppelgangers, and cannot exit 2020-12-16 00:09:45 -07:00
Eevee (Evelyn Woods)
1273843f26 Add CC2's single-frame delay after a light switch is pressed 2020-12-15 23:43:21 -07:00
Eevee (Evelyn Woods)
62eb1a86e4 Fix some minor wire bugs: NOT/counter/pink button power drawing, circuit block motion, nested wire tunnels 2020-12-15 22:57:32 -07:00
Eevee (Evelyn Woods)
3790e0f07e Allow wired cloners to try other directions 2020-12-15 21:27:58 -07:00
Eevee (Evelyn Woods)
eec7ab2e1a Fix rover behavior at last; lesson 5 now syncs 2020-12-15 17:50:13 -07:00
Eevee (Evelyn Woods)
25b4b32f94 Add teleport overriding and seriously clean up teleport code 2020-12-15 16:44:37 -07:00
Eevee (Evelyn Woods)
07c9a83f75 Fix crash with teeth and Cerise 2020-12-15 00:48:28 -07:00
Eevee (Evelyn Woods)
bf81738e19 Partly implement helmet; get rover very close to correct (?) 2020-12-15 00:44:07 -07:00
Eevee (Evelyn Woods)
55abe8b53a Allow the bowling ball to slide normally 2020-12-15 00:26:00 -07:00
Eevee (Evelyn Woods)
f858668ca8 Clumsily teach bowling balls to destroy actors 2020-12-15 00:10:23 -07:00
Eevee (Evelyn Woods)
2d7df413ee Allow ghosts to pass through thin walls 2020-12-14 23:59:38 -07:00
Eevee (Evelyn Woods)
dae66de160 Thieves will, however, take bribes from anyone 2020-12-14 23:49:47 -07:00
Eevee (Evelyn Woods)
2103c649f6 Implement a few quirks of ghost movement 2020-12-14 23:35:11 -07:00
Eevee (Evelyn Woods)
6d4326fe5b Thieves only steal from the player 2020-12-14 23:29:05 -07:00
Eevee (Evelyn Woods)
3e18e38f15 Add rough implementations of dynamite and bowling ball 2020-12-14 23:25:48 -07:00
Eevee (Evelyn Woods)
9ade84c6fe Generally only lose if the real player dies, not a doppelganger 2020-12-14 23:20:46 -07:00
Eevee (Evelyn Woods)
bf3c501353 Fix yellow tank behavior to be faux simultaneous 2020-12-14 23:14:31 -07:00
Eevee (Evelyn Woods)
c34aaadf06 Attempt, unsuccessfully, to implement ice block melting 2020-12-14 17:07:35 -07:00
Eevee (Evelyn Woods)
16f11f3a9b Exits block CC1 blocks 2020-12-13 22:22:22 -07:00
Eevee (Evelyn Woods)
1c9dee1213 Add support for recording replays, with a bunch of refactoring along the way 2020-12-13 20:36:12 -07:00
Eevee (Evelyn Woods)
5e6784c235 Fix encoding and decoding of swivels 2020-12-13 15:56:24 -07:00
Eevee (Evelyn Woods)
93954135d2 Set splash delay back to 6; is correct after all I guess 2020-12-13 01:54:52 -07:00
Eevee (Evelyn Woods)
90008c3a89 Make the player push blocks at decision time
It turns out the player explores all their decisions in a very physical
way, which is the real source of block slapping and also means the
player can push blocks before anything else can move, regardless of
actor order.

This fixes at least half a dozen CC1 replays, which is just
mindboggling.
2020-12-13 00:39:36 -07:00
Eevee (Evelyn Woods)
f95913b6d8 Teeth chase the player's apparent position 2020-12-12 20:24:28 -07:00
Eevee (Evelyn Woods)
3a04b6276c Go back to toggling green objects instantly 2020-12-12 19:22:04 -07:00
Eevee (Evelyn Woods)
4d23acb27e Add on_approach; use it to erase animations and fix popdown floors 2020-12-12 19:00:58 -07:00
Eevee (Evelyn Woods)
769d424dde Fix rendering breakage caused by a couple more out-of-turn moves 2020-12-11 22:54:01 -07:00
Eevee (Evelyn Woods)
8671bee08b Run wiring thrice per tic; recognize some tiles have odd propagation rules 2020-12-11 22:49:23 -07:00
Eevee (Evelyn Woods)
410af788fc Fix teleporters, and more generally out-of-turn movement 2020-12-11 20:58:50 -07:00
Eevee (Evelyn Woods)
2f130861d6 Remove animation_{progress,speed} and fix interpolation 2020-12-11 13:56:41 -07:00
Eevee (Evelyn Woods)
b75253a249 Rearrange actor loop to put movement advancement at the end
I don't know why I ever thought this was a separate pass; I think it was
just the easiest way to make smooth scrolling work when I first
implemented it on like day 2.  Turns out it wasn't ever correct and has
all manner of subtle implications I'll be sorting out for ages.

This does make the turn-based stuff //way// simpler, though.
2020-12-10 18:51:40 -07:00
Eevee (Evelyn Woods)
823fe4de37 bestowal_bow => gift_bow, directional_block => frame_block 2020-12-10 13:28:40 -07:00
Eevee (Evelyn Woods)
bd4cc10b16 Implement foil 2020-12-10 12:48:01 -07:00
Eevee (Evelyn Woods)
ef78085e40 Ghosts turn left, not right! 2020-12-10 12:45:15 -07:00