feat(packages): ludic.hints - a rail of things that are true now and can be acted on now: cards as an open registry (urgency, a glyph or an item's picture, the chip's line, three steps and how not to be here again) asked through a port whether each is true, the most urgent few once a pass in registry order within an urgency, a card opened off the rail, walked along it and put down when its subject stops being true, and "I know this" muting kept by the card's key (a key this build lacks is carried through); opened, closed, muted and unmuted as facts
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
1005a677f2
commit
fe9d28bf4e
12 changed files with 540 additions and 0 deletions
39
packages/ludic.hints/defs.ludic
Normal file
39
packages/ludic.hints/defs.ludic
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
# defs.ludic - a card as the game writes it, how much it matters, and the facts
|
||||
export const HINTS_TIP: int = 0 # worth knowing
|
||||
export const HINTS_NOTE: int = 1 # worth doing soon
|
||||
export const HINTS_WARN: int = 2 # worth doing now
|
||||
export const HINTS_URGENT: int = 3 # do it or lose the day
|
||||
|
||||
# The words are the lesson's text keys (the game translates them where it draws). Pictures are
|
||||
# the game's: `icon` / `picN` name a glyph, `item` / `itemN` a thing's picture instead (-1: none).
|
||||
export property HintCard {
|
||||
key: string = ""
|
||||
urgency: int = HINTS_TIP
|
||||
icon: string = ""
|
||||
item: int = -1
|
||||
line: string = "" # the chip on the rail: five or six words
|
||||
title: string = "" # the card's heading
|
||||
s1: string = "" # three steps, each with a picture
|
||||
s2: string = ""
|
||||
s3: string = ""
|
||||
pic1: string = ""
|
||||
pic2: string = ""
|
||||
pic3: string = ""
|
||||
item1: int = -1
|
||||
item2: int = -1
|
||||
item3: int = -1
|
||||
later: string = "" # how not to be here next time
|
||||
}
|
||||
|
||||
# the game's cards; a card's mute is kept by its key, so their order is free
|
||||
export open registry Hints of HintCard as HINT
|
||||
|
||||
export const HINTS_F_OPENED: int = 0 # a card was opened, or the arrows moved to another
|
||||
export const HINTS_F_CLOSED: int = 1 # put down by the player (not when it stopped being true)
|
||||
export const HINTS_F_MUTED: int = 2 # "I know this": off the rail for good
|
||||
export const HINTS_F_UNMUTED: int = 3 # every muted card given back (card -1)
|
||||
|
||||
export property HintsFact {
|
||||
what: int = 0
|
||||
card: int = -1
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue