forked from pyrex/chameleonic
hints through room 3; two line hints (#19)
most hints need to be 2 lines due to limited space. Reviewed-on: pyrex/chameleonic#19 Co-authored-by: Kistaro Windrider <kistaro@gmail.com> Co-committed-by: Kistaro Windrider <kistaro@gmail.com>
This commit is contained in:
parent
693cdaa11d
commit
a6debc3974
@ -1743,20 +1743,41 @@ function rot13(s)
|
|||||||
end
|
end
|
||||||
return chr(unpack(sord))
|
return chr(unpack(sord))
|
||||||
end
|
end
|
||||||
|
|
||||||
--hint file format:
|
--hint file format:
|
||||||
-- each row is one hint. 4 columns per row
|
-- each row is one hint.
|
||||||
-- separated with a grave (`) character
|
-- 4 or 5 columns
|
||||||
-- room# ` X (screen px) ` Y (screen px) ` message
|
-- separated with a
|
||||||
-- message is ROT13d; works for a-zA-Z
|
-- grave (`) character
|
||||||
|
-- [1] room#
|
||||||
|
-- [2] x coord
|
||||||
|
-- [3] y coord
|
||||||
|
-- [4] message line 1 (rot13)
|
||||||
|
-- [5] message llne 2 (rot13)
|
||||||
|
-- row 5 can be omitted
|
||||||
|
-- for a 1-line hint
|
||||||
|
--
|
||||||
|
-- multiple hints for the same
|
||||||
|
-- room are revealed in order
|
||||||
|
|
||||||
hints = {}
|
hints = {}
|
||||||
add(real_modules,hints)
|
add(real_modules,hints)
|
||||||
|
|
||||||
function hints:init()
|
function hints:init()
|
||||||
local h = gsv[[0`64`64`zYRZ
|
local h = gsv[[0`42`57`🅾️ yVPX` ■
|
||||||
0`32`32`fCYHOC]]
|
0`42`73`❎, ❎ cHYY
|
||||||
|
1`35`34`⁘ sVYY
|
||||||
|
1`99`82`■ cHYY
|
||||||
|
1`42`98`⁘`VTABER
|
||||||
|
2`75`65`i <`⁘
|
||||||
|
2`104`73` ■`cHYY
|
||||||
|
2`27`42`⁘
|
||||||
|
3`51`106`■ cHYY
|
||||||
|
3`27`81`⁘ HAOYBPX ZR
|
||||||
|
3`91`33`■ FGNAQ` URER]]
|
||||||
for rec in all(h) do
|
for rec in all(h) do
|
||||||
rec[4]=rot13(rec[4])
|
rec[4]=rot13(rec[4])
|
||||||
|
if(rec[5]) rec[5]=rot13(rec[5])
|
||||||
local lh = self[rec[1]]
|
local lh = self[rec[1]]
|
||||||
if lh then
|
if lh then
|
||||||
add(lh,rec)
|
add(lh,rec)
|
||||||
@ -1770,6 +1791,11 @@ function hints:init()
|
|||||||
poke(0x5f2d,1)
|
poke(0x5f2d,1)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function shdprint(txt,x,y,c)
|
||||||
|
print(txt,x-1,y+1,1)
|
||||||
|
print(txt,x,y,c)
|
||||||
|
end
|
||||||
|
|
||||||
hintflicker={7,10,9,8,8,9,10,7}
|
hintflicker={7,10,9,8,8,9,10,7}
|
||||||
function hints:draw2()
|
function hints:draw2()
|
||||||
pal()
|
pal()
|
||||||
@ -1783,9 +1809,9 @@ function hints:draw2()
|
|||||||
|
|
||||||
for i,h in ipairs(self[level.ix]) do
|
for i,h in ipairs(self[level.ix]) do
|
||||||
if (i > level.hintlevel) return
|
if (i > level.hintlevel) return
|
||||||
local _,x,y,txt=unpack(h)
|
local _,x,y,txt,txt2=unpack(h)
|
||||||
print(txt,x-1,y+1,1)
|
shdprint(txt,x,y,c)
|
||||||
print(txt,x,y,c)
|
if (txt2) shdprint(txt2,x,y+8,c)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user