-
Notifications
You must be signed in to change notification settings - Fork 0
Description
We intend to render game dialog as speech bubbles, to evoke text messages. Game dialog is defined in the Emoji Quest spreadsheets:
To implement the dialog, we will need to flow text in a bubble, with interpolated emojis. Since we can’t use an emoji font, we’ll have to roll our own text flow.
The first chore is to convert the dialog spreadsheet into lobster code. The lobster code will drive the renderer. The second core is the renderer.
The driver code might look like:
func dialog_gym_0():
first_person(gym_emoji_id)
write("Hi, I’m ")
bold(): write("Gym")
write("!")
func dialog_apple_tree_hardwood_10():
render(axe_emoji_id)
write(" ")
bold(): write("Axe")
write(" me no more questions!")
var apple_tree_dialog_funcs = [dialog_apple_tree_hardwood_1, ...]
My intention is that the player will keep track of the dialog number for each entity or entity type and each time the player bumps into a tile without invoking another recipe, the dialog number will advance modulo the number of dialogs for that entity, and display the corresponding message. Some recipes will also effect dialogs, based on the corresponding column of the Morphs or Recipes sheets.
Whether the dialog number resets when the player breaks a sequence of bumps (as would feel natural with conversations with people) or never resets (as would be good to rotate through bump dialogs for all the trees in a forest) may need to become a parameter on the Tile sheet.