151 lines
3.8 KiB
Lua
151 lines
3.8 KiB
Lua
liturgy={
|
|
holy_book=gsv[[rood 1`1,2,3
|
|
rood 2`4,5,6,7
|
|
rood 3`8,9,10
|
|
rood 4`11,12,13
|
|
rood 5`14,15,16,17,18
|
|
rood 6`19,20
|
|
rood 7`21,22,23
|
|
rood 8`24,25,26]],
|
|
sacred_text_lines=gsv
|
|
[[1`one meerkat, one day
|
|
1`stood on two legs. it said:
|
|
1`'come into this thicket.
|
|
1` i have a bright wreath.
|
|
1` my laurel is vibrant.'
|
|
2`all sweet things tolerated,
|
|
2`those who came when called
|
|
2`were sheared of their fur.
|
|
2`this was the first day:
|
|
2`the dandelions blown.
|
|
3`the hollow,
|
|
3`which opens to a key: music.
|
|
3`the meerkats were led there.
|
|
3`where they stood.
|
|
4`now even the water
|
|
4`knows how to talk.
|
|
4`their leader, first to stand,
|
|
4`calls them to choir.
|
|
5`a dulcimer's sweet harmony and,
|
|
5`pretending to weep,
|
|
5`it announces the title of
|
|
5`a scroll: 'the fate.'
|
|
6`now they are a regiment.
|
|
6`gather them.
|
|
6`pour oil.
|
|
7`catching a leaf, ride it.
|
|
7`suture its veins.
|
|
7`scatter glass in the vineyard.
|
|
8`lanias came in silver.
|
|
8`he milled the wheat and barley.
|
|
8`he took oranges from the trees.
|
|
8`meerkats dashed to the ferns.
|
|
8`he raised his bow and screamed.
|
|
9`the bolt became the wind.
|
|
9`the silver sails lashed.
|
|
9`the silver ospreys swarmed.
|
|
9`the silver shadow wailed.
|
|
10`burning oil from bay to sky.
|
|
10`scampering keas in bags!
|
|
10`there was no one in the field.
|
|
10`lanias came and went in silver.
|
|
11`ravens are an old people.
|
|
11`but the mandate is new.
|
|
11`the spry one turns in the egg.
|
|
12`it reads 'the fate':
|
|
12`'man is woman'
|
|
12`'a house in heaven
|
|
12` is bought on earth.'
|
|
12`and not by hatching.
|
|
13`the egg turns. it cracks.
|
|
13`a meerkat tumbles out.
|
|
13`cold, it breathes its last.
|
|
14`when lanias drags down stars
|
|
14`in his net, he cannot
|
|
14`take down one: beauty.
|
|
15`he cannot envy the vain,
|
|
15`so lanias wrote this rood:
|
|
15`the vain will not have it.
|
|
16`no longer is 'the fate':
|
|
16`there are many fates.
|
|
16`the music is over now.
|
|
16`it is quiet in the garden.
|
|
17`where are you? a small bird,
|
|
17`divine. you are in the fences.
|
|
17`you are seedling, little one.
|
|
17`the gorgeous lily blooms.
|
|
18`a star in the sky shines
|
|
18`and you are born.
|
|
18`accept its blessing: caw,
|
|
18`do not sing.
|
|
19`you have your room.
|
|
19`i have mine.
|
|
19`let's dig a river,
|
|
19`and build a bridge.
|
|
20`let's dig a trap.
|
|
20`let's line it with spikes.
|
|
20`let's cover it with a sheet,
|
|
20`and bury it in soil.
|
|
21`a cuckoo stole an egg.
|
|
21`in the nest it left its young.
|
|
21`the summer was so lean
|
|
21`and the snow so deep.
|
|
22`it was plump as a berry
|
|
22`and it hatched.
|
|
22`meerkats were in the trees.
|
|
23`lanias said: old men suffer
|
|
23`and die for nothing. listen:
|
|
23`when you grow: you won't
|
|
23`understand it. you want what
|
|
23`you cannot have.
|
|
24`night is here.
|
|
24`you're asleep.
|
|
24`you leave this body.
|
|
24`you won't want to come back.
|
|
25`cross your eyes: 'the fate'
|
|
25`is in them, their tears,
|
|
25`their music, their silence.
|
|
26`our rood is the final one.
|
|
26`those we killed have been
|
|
26`planted like seeds. this rood,
|
|
26`like this city, will not
|
|
26`be destroyed.]]
|
|
}
|
|
|
|
function liturgy:init()
|
|
local verse_lines={}
|
|
for line in all(self.sacred_text_lines) do
|
|
local verse=tonum(line[1])
|
|
if (not verse_lines[verse]) verse_lines[verse]={}
|
|
add(verse_lines[verse], line[2])
|
|
end
|
|
|
|
local annotated_verses={}
|
|
for bookdata in all(self.holy_book) do
|
|
local name=bookdata[1]
|
|
local ix=1
|
|
for verse in all(split(bookdata[2])) do
|
|
local annotated_verse_name=name
|
|
local lines=verse_lines[verse]
|
|
annotated_verse_name..=":"..ix.."-"
|
|
ix+=#lines
|
|
annotated_verse_name..=ix-1
|
|
local annotated_verse=""
|
|
for l in all(lines) do
|
|
if (annotated_verse!="") annotated_verse..="\n"
|
|
annotated_verse..=l
|
|
end
|
|
annotated_verses[verse]={annotated_verse_name,annotated_verse}
|
|
end
|
|
end
|
|
self.annotated_verses=annotated_verses
|
|
end
|
|
|
|
liturgy:init()
|
|
|
|
function liturgy:suggest_verse(ruleset,card)
|
|
local meta=ruleset.deck.cards[card]
|
|
local i=2+meta.rank
|
|
if (meta.suit!="a") i=ruleset.preferred_verse or i
|
|
return i, unpack(liturgy.annotated_verses[i])
|
|
end |