Jaidyn Ann
a5d4179607
Simpler and more intelligent line-breaking
...
✎:RENDER-STRING(-PARTIALLY) now is in a lot better
shape! They’ll only line-break on spaces, ain’t
that swell?
2023-06-30 19:58:34 -05:00
Jaidyn Ann
eaa42ab2d8
Move 📋 :RENDER-STRING* & 📋 :RENDER-LINE to ✎
...
Also add new function, ✎:RENDER-STRING-VERBATIM
2023-06-30 13:52:50 -05:00
Jaidyn Ann
e2652abf60
Begin “intermission” screens
2023-06-30 13:48:17 -05:00
Jaidyn Ann
3b32b1f809
Make-recipe for making FIGlet lisp code
2023-06-30 13:41:22 -05:00
Jaidyn Ann
6550cfb68a
_Actually_ finish FIGlet support
...
Now, text’ll be rendered with correct-ish smushing,
and fonts can be saved as Lisp source-code, just
like Tiled maps.
2023-06-30 12:50:43 -05:00
Jaidyn Ann
24d8c4a225
“Finish” the Figlet parser-&-renderer
...
Problem: There is no text-smushing. Without that,
any line takes up too much space!
2023-06-29 21:38:20 -05:00
Jaidyn Ann
919dcd4d9a
Base parsing of Figlet fonts
...
Will be used later to fancy-print text!
2023-06-29 15:50:15 -05:00
Jaidyn Ann
d0cb621320
Split package definitions into packages.lisp
2023-06-28 10:15:23 -05:00
Jaidyn Ann
b38d4ca436
Fix mis-uses of the 'player symbol
2023-06-28 09:56:25 -05:00
Jaidyn Ann
06e875b271
Create the scaffodling for an inventory menu
...
All it does right now is print your raw list of
items. That’s OK for now! =w=
2023-06-27 21:36:13 -05:00
Jaidyn Ann
6c8f84afe8
Finish 'childhood-friend' prologue!
...
Wooooot! Antaŭludo finita c:<
2023-06-27 20:00:37 -05:00
Jaidyn Ann
c177e1b2d2
Begin the 'childhood-friend' prologue
2023-06-27 14:15:16 -05:00
Jaidyn Ann
6849968528
Abstract the semantic meaning of key from the char
...
This lets us do cool looking stuff, like '⌨:🆗
2023-06-27 11:54:52 -05:00
Jaidyn Ann
bc74f43f9a
Gitignore for lisp-ified maps
2023-06-26 21:50:58 -05:00
Jaidyn Ann
51c913a700
Create and ASDF system for the game
...
This might help cool stuff get working, later!
Maybe! :D
2023-06-26 21:49:34 -05:00
Jaidyn Ann
74d713b76d
Convert TMX maps to a parseable list
...
This allows embedding the map data directly
into the game system, instead of relying on
external files!
This’ll make distribution easier, for sure. =w=
2023-06-26 20:25:02 -05:00
Jaidyn Ann
c0d2099ae8
Support for the passage of time
2023-06-26 15:43:01 -05:00
Jaidyn Ann
2a78737d28
Support for taking items
...
That is, directly moving an entity from the map
into the player’s pocket. Real simple
implementation, it’s just another
interact-function for use with your entities.
2023-06-26 11:12:06 -05:00
Jaidyn Ann
738239f50a
Persistent data between maps! How exciting!
...
I spent a good chunk of time trying to get rid of
the maps’ global variables, instead packing each
map into a :map variable in a “game” hash-table…
but, wow, that took a while. And also made things
a bit more complicated. And also… we could just
do this. From this commit. So much easier! @-@
2023-06-26 09:33:51 -05:00
Jaidyn Ann
766f2dedee
Whoops, too invisible! I fyixed it uwu
2023-06-26 09:08:45 -05:00
Jaidyn Ann
9ee7597772
Invisible and/or weird interactible entities! =w=
2023-06-25 19:59:34 -05:00
Jaidyn Ann
67019e9afb
Moving between maps: Doorways! ♥
2023-06-25 14:40:12 -05:00
Jaidyn Ann
4deace5af5
Fix dialogue-printing for players’ lines
2023-06-24 22:29:56 -05:00
Jaidyn Ann
b61739aa24
Support for events triggered by moving to point
...
That is, a new “Trigger” Tiled object-type has
been made, which is just a rectangle with an
associated function. If the rectangle is stepped
upon (uwu step on me owo), the function is
triggered. Y’know, standard RPG stuffs.
2023-06-24 22:17:42 -05:00
Jaidyn Ann
1c2a371b38
Add casino attendant and bartender
2023-06-24 20:12:18 -05:00
Jaidyn Ann
67e2ca0404
Tweak interact-radius again!
2023-06-24 20:04:52 -05:00
Jaidyn Ann
90223f4a4c
Flexibly edit entity data in dialogue
...
… including way better ^_^ dialogue :D
face! \o/ editing!
2023-06-24 19:49:47 -05:00
Jaidyn Ann
1a44f2bcac
Begin the Casino map!
...
… including the gambler-dude story arc.
2023-06-24 17:01:12 -05:00
Jaidyn Ann
37eacc43f5
Tweak interaction range
2023-06-24 16:12:16 -05:00
Jaidyn Ann
d7c978dc39
Tweak dialogue positioning
2023-06-24 16:12:05 -05:00
Jaidyn Ann
b4cde1ea16
Add top-level layer, renders above player
2023-06-24 14:13:01 -05:00
Jaidyn Ann
346d9d3a9d
Begin proper dialogue with Sasha!
2023-06-23 22:25:16 -05:00
Jaidyn Ann
4d4b65da9c
Split off STATE-LOOP into an engine package (⚙)
...
… while making generic state-function-creators for
both dialogues and overworld maps. This should
make game-specific code more pretty-like!
2023-06-23 13:29:09 -05:00
Jaidyn Ann
e21d16069b
Translations of menu-items ^_^
2023-06-23 12:54:29 -05:00
Jaidyn Ann
dafccb17a1
Language-specific map layers
2023-06-23 12:41:47 -05:00
Jaidyn Ann
495ed87f09
Baseline support for translations! :D
...
It’s not using gettext or anything, just a simple
system I cooked up for having the translations
hard-coded in, side-by-side.
… it’s easier for me this way when writing, and
it’ll make things easier later on, during
distribution :P
2023-06-23 11:28:34 -05:00
Jaidyn Ann
b617e92aba
Add `move` directive to dialogues — for moving! :D
2023-06-22 19:20:20 -05:00
Jaidyn Ann
c7c0ed6d65
Menu state-function creator: #' 📋 :make-menu-state
2023-06-22 11:31:49 -05:00
Jaidyn Ann
6eb5596263
“Chunk” entities like map tiles
...
Now :entities of the map hash-table is no longer a
flat list of entity plists, but a “chunked” alist
of these entity plists. Each alist is dedicated to
a different “chunk” (screenfull) of the map.
This (hypothetically) makes finding on-screen
entities more speedy.
2023-06-21 23:47:54 -05:00
Jaidyn Ann
666c155f95
Legiblify : 💬 ; finish dialogue-printing with ENTER
...
Like with RPGs!
2023-06-21 20:31:29 -05:00
Jaidyn Ann
fe9b74a600
Vary dialogue-position by speaker/etc
2023-06-20 22:00:36 -05:00
Jaidyn Ann
9c5892f2f8
Orient dialogue vertically! How exciting!
2023-06-20 20:43:27 -05:00
Jaidyn Ann
82254570b1
Orienting dialogue to the left or right of entity
2023-06-20 20:04:13 -05:00
Jaidyn Ann
6467d9bec3
Don’t over-:use packages (hee-hee)
2023-06-19 14:58:12 -05:00
Jaidyn Ann
b8faba4c6a
When printing dialogue, show chars one-at-a-time
...
Y’know, RPG-style! ‘Cause we’re cool kids! c:<
… and this is a real RPG! This is legit!
This is legit! … this is legit… =,w,=
It _will_ be legit!
2023-06-19 14:43:46 -05:00
Jaidyn Ann
95442b39db
Change entity faces while they’re talking
...
What a cool effect ^w^ ^o^ ^w^
2023-06-19 08:47:45 -05:00
Jaidyn Ann
218dcdc465
Start basic dialogue state, etc?
...
This is so bad, I wanna dieee :w:
2023-06-17 22:47:30 -05:00
Jaidyn Ann
6f60c76f4b
Reorder overworld.tiled functions; overworld.util
...
No functional changes.
Re-order functions in overworld.tiled so SBCL
doesn't complain at me.
Split some functions from overworld.tiled into
a new overworld.util package. Also rename the
files in a nice way!
2023-06-17 10:12:23 -05:00
Jaidyn Ann
d664996190
Re-order functions (no functional change)
2023-06-16 20:11:47 -05:00
Jaidyn Ann
3db5cdcdd6
Minor refactoring; add accessors
2023-06-16 20:09:35 -05:00