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)
3e18e38f15
Add rough implementations of dynamite and bowling ball
2020-12-14 23:25:48 -07:00
Eevee (Evelyn Woods)
299b1578a7
Mostly revert actor loop reorg
...
I was right the first time, and I've proven it to myself now. I
originally made the change because I couldn't see any other way to fix
the ICEBERG replay from Steam CC1, but now, I do!
2020-12-12 17:57:47 -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)
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)
b2ff27f241
New LL tile: circuit block, which overrides any wiring below it
2020-12-09 20:23:27 -07:00
Eevee (Evelyn Woods)
235cc79e8b
Add LL-specific exit poses for Lexy and Cerise
2020-12-09 20:22:35 -07:00
Eevee (Evelyn Woods)
a44ed295a2
Fix ball animation
2020-12-08 17:23:27 -07:00
Eevee (Evelyn Woods)
4ee56fad01
Briefly reveal invisible walls, as in CC2
2020-12-08 12:48:25 -07:00
Eevee (Evelyn Woods)
30261a106f
Mostly implement rover
2020-12-06 16:51:24 -07:00
Eevee (Evelyn Woods)
54381370c0
Add timid teeth; move movement decisions onto tile types; improve doppelganger behavior
2020-12-06 16:16:04 -07:00
Eevee (Evelyn Woods)
700d3898ab
Add a half-baked notion of perception level to tile rendering
2020-12-03 21:18:46 -07:00
Eevee (Evelyn Woods)
0885bfc9d2
Make hook load, canopy work, and force floors reverse with gray button
2020-12-03 17:48:24 -07:00
Eevee (Evelyn Woods)
8d197ce479
Add a basic implementation of doppelgangers
2020-12-02 15:03:13 -07:00
Eevee (Evelyn Woods)
f0680ce0c4
Cleaned up several tile properties; added railroad adjusting
2020-12-02 13:54:32 -07:00
Eevee (Evelyn Woods)
ec5d9f7b12
Editor: Add selected tile, tool help, and hint editing; clean up toolbar style
2020-12-02 11:34:46 -07:00
Eevee (Evelyn Woods)
560a89cfd3
Fix using the wrong tile for the railroad switch
2020-11-30 09:09:21 -07:00
Eevee (Evelyn Woods)
8d26de6915
Implement railroad rendering
2020-11-28 12:56:08 -07:00
Eevee (Evelyn Woods)
50c81c5c96
Add directed blob + walker sprites and a custom slime splash (btw slime now destroys stuff)
2020-11-25 03:37:58 -07:00
Eevee (Evelyn Woods)
3a454d77f5
Implement the remaining logic gates and /most/ of their rendering!
2020-11-25 03:14:06 -07:00
Eevee (Evelyn Woods)
ac6e33bb6c
Simplify blitting; fix arrow blitting; impl light switch; load more items
2020-11-25 01:14:15 -07:00
Eevee (Evelyn Woods)
e803af2fd2
Handle actors starting on force floors; partially implement item bestowal
2020-11-23 19:22:59 -07:00
Eevee (Evelyn Woods)
49ff0d9723
Clean up wiring drawing and logic (zero gates is now a no-op!); begin implementing logic gates
2020-11-01 11:36:17 -07:00
Eevee (Evelyn Woods)
060dfdc7d7
Implement drawing and correctly pushing directional blocks
2020-10-28 00:17:41 -06:00
Eevee (Evelyn Woods)
2820c067c5
Implement the CC2 "no sign"
2020-10-23 17:37:50 -06:00
Eevee (Evelyn Woods)
8adb630862
Add partial wiring support
2020-10-01 06:46:07 -06:00
Eevee (Evelyn Woods)
9b873764fb
Shim around several compat issues that affect CCLP levels
...
- CCLP1 #81 requires pushing blocks off of blue walls, which is
impossible in CC2 but allowed in TW Lynx (unclear if this is a lynx
behavior or a tw bug)
- CCLP1 #89 has a tank start on a recessed wall and drive off of it,
expecting the recessed wall to be left alone, but under CC2 rules it
becomes a wall; such walls are now automatically converted to a new
tile, the "doubly recessed wall", which restores the expected behavior
without changing how recessed walls work in general
- CCLP4 #135 expects pressing a blue button to not affect blue tanks
that are currently in mid-slide
In addition, the behavior of blue buttons now matches the Lynx/Steam
behavior: the press is stored as a flag and queued until the tank is
next able to move.
2020-10-01 03:08:25 -06:00
Eevee (Evelyn Woods)
684021f93d
Fix typo in drowned player tile
2020-09-27 04:03:15 -06:00
Eevee (Evelyn Woods)
78bb1f2dc1
Populate player 2 state sprites so she can actually be drawn
2020-09-26 20:38:50 -06:00
Eevee (Evelyn Woods)
26f9e917a8
Support the remaining invalid tile, which slipped into CCLXP2
2020-09-25 04:51:59 -06:00
Eevee (Evelyn Woods)
787cd0d3a7
Fix tile rendering with the TW tileset
2020-09-23 22:49:44 -06:00
Eevee (Evelyn Woods)
67504e436e
Draw the player's blocked/pushing frame (at last)
2020-09-23 21:09:57 -06:00
Eevee (Evelyn Woods)
72a44429af
Animate CC2 force floors
2020-09-20 00:02:08 -06:00
Eevee (Evelyn Woods)
ddfa7f562a
Extend the CC2 tile definition with some custom stuff
2020-09-19 23:32:13 -06:00
Eevee (Evelyn Woods)
ec8992a0fc
Support separate poses for ice and force floors, and spin on ice
2020-09-19 22:59:50 -06:00
Eevee (Evelyn Woods)
2fc0648333
Slow animations down by half
2020-09-19 22:43:47 -06:00
Eevee (Evelyn Woods)
fcbd2b17be
Fix dirt block direction in DAT; remove clone block, which serves no purpose for us
2020-09-18 22:22:38 -06:00
Eevee (Evelyn Woods)
569a3c0f3d
Fix wired drawing of teleports
2020-09-17 00:02:01 -06:00
Eevee (Evelyn Woods)
e0bfb0aadf
Standardize visual state, and use it instead of transmuting a dead player
2020-09-16 21:08:43 -06:00
Eevee (Evelyn Woods)
1d809601ae
Clumsily add support for the player's swimming sprite
2020-09-16 14:57:29 -06:00
Eevee (Evelyn Woods)
e70e92b931
Move responsibility for drawing out of Tileset and into the renderer
2020-09-16 14:10:10 -06:00
Eevee (Evelyn Woods)
2e0519f802
Get rid of the Level.tic_offset hack and stop passing level to Tileset.draw
2020-09-16 13:29:57 -06:00
Eevee (Evelyn Woods)
529b87ab23
Attempt to support some invalid MSCC tiles
2020-09-16 01:51:38 -06:00
Eevee (Evelyn Woods)
48e03f3225
Restore the splash when pushing a block into water; fix splash/explosion in TW tileset
2020-09-14 21:52:27 -06:00
Eevee (Evelyn Woods)
468a1d44ba
Get wire rendering correctly, at least for floors
2020-09-14 19:34:48 -06:00
Eevee (Evelyn Woods)
b88d42582c
Stub out enough stuff to get CC2 Lesson 5 loading
...
- Wire is... well, ignored
- Pink and black buttons load but don't do anything
- Railroad is loaded but doesn't do anything
- Bowling ball, purple toggle wall/floor, rover... you get the idea
- Railroad sign would work if railroad did, though
2020-09-14 17:25:30 -06:00
Eevee (Evelyn Woods)
ec41139960
Stub out enough to get CC2 Lesson 4 loading
...
- Gender signs: implemented
- Transmogrifier: basically implemented
- Yellow tank: basically implemented
- Directional blocks: load but don't draw or behave correctly
- Floor mimic: moves at hyperspeed
- Secret eye: no effect
2020-09-14 16:03:35 -06:00
Eevee (Evelyn Woods)
afa132bd4c
Undo GCing the actor list
2020-09-12 20:36:11 -06:00
Eevee (Evelyn Woods)
d3e60b88fa
Stub out enough for CC2's Lesson 3 to load
2020-09-10 21:21:30 -06:00
Eevee (Evelyn Woods)
16bfe22593
Implement score flags and the stopwatches
2020-09-10 17:45:14 -06:00
Eevee (Evelyn Woods)
a3928b2865
Implement splashes and explosions, at least partially
2020-09-08 15:16:35 -06:00
Eevee (Evelyn Woods)
8097339886
Implement green bombs/chips, ice blocks, and custom walls/floors
2020-09-08 14:42:38 -06:00
Eevee (Evelyn Woods)
88ec9f89e7
Fix turtles and implement swivels; CC2 LESSON 1 now replays correctly!
2020-09-08 14:23:55 -06:00
Eevee (Evelyn Woods)
2096c42dbf
Add clone blocks to the Tile World layout
2020-09-05 18:43:59 -06:00
Eevee (Evelyn Woods)
b01601fab6
Correctly identify DAT files; don't render editor when not in use
2020-09-05 17:17:59 -06:00
Eevee (Evelyn Woods)
dea7a7b754
Add a splash screen and the beginning of an editor
2020-09-05 16:21:31 -06:00
Eevee (Evelyn Woods)
15d3d43b76
Let's just guarantee that tic_offset is never 1
2020-09-03 10:31:46 -06:00
Eevee (Evelyn Woods)
bd57f686c7
Fix walk animation speed; fix occasional camera hiccups
2020-09-03 10:28:34 -06:00
Eevee (Evelyn Woods)
2df8607243
Fixed several issues with animation and movement; quick stab at replay UI
...
- Animation now has its own timer and isn't linked to movement cooldown,
which is good for blocks since they don't have movement cooldown
- Destroyed actors don't crash the game again (oops)
- Slide and cooldown handling was reshuffled to better support the CC2
approach of landing on tiles with a delay; in particular, you move at
double speed on sliding tiles again!
- Demo playback got some rough UI so I don't have to keep editing the
source code to decide whether to play a demo
2020-09-03 09:46:37 -06:00
Eevee (Evelyn Woods)
13dc5f73b1
Start to split out the renderer and add support for smooth scrolling
2020-09-03 07:36:05 -06:00
Eevee (Evelyn Woods)
0ba5ecc7e3
Implement (PARTIAL) undo; remove 'doomed'; fix a few small tile bugs
2020-09-02 05:20:23 -06:00
Eevee (Evelyn Woods)
060895c5ba
Fix rendering of thin walls using a CC2 tileset
2020-09-01 07:36:14 -06:00
Eevee (Evelyn Woods)
8309ff37a8
Add an incredibly crappy restart button
2020-08-31 12:18:09 -06:00
Eevee (Evelyn Woods)
730824e697
Define clone blocks and teeth in the CC2 tile layout
2020-08-31 12:06:58 -06:00
Eevee (Evelyn Woods)
070d276e8a
Implement green/blue buttons, tanks, monster death; stub out remaining CC1 objects; easy restart on death
2020-08-31 11:03:14 -06:00
Eevee (Evelyn Woods)
101b68c017
Map out most of the parts of the CC2 tile layout that I can actually draw
2020-08-30 04:52:47 -06:00
Eevee (Evelyn Woods)
b3a0ff963c
Begrudgingly support letter tiles
2020-08-29 02:10:27 -06:00
Eevee (Evelyn Woods)
a2e1a4fd9a
Stop parsing a C2M at END; fix CC2 force floor tiles
2020-08-29 01:31:05 -06:00
Eevee (Evelyn Woods)
ec872d93d2
Implement implicit terrain for C2M; implement thin walls
2020-08-29 01:14:59 -06:00
Eevee (Evelyn Woods)
576a7b0c26
Finish specifying the Tile World tileset layout
2020-08-29 00:25:28 -06:00
Eevee (Evelyn Woods)
bbfa0a6e8f
Split out CC2 tile bytes; stub out enough for Lesson 1 to load; show inventory; implement misc bits
2020-08-28 07:01:28 -06:00
Eevee (Evelyn Woods)
0dd190fc5a
Finish CC1 parser; show hints; improve ice
2020-08-28 05:24:25 -06:00
Eevee (Evelyn Woods)
3084ca7b49
Initial commit: a game that plays through some of CCLP1
2020-08-28 04:02:03 -06:00