forked from pyrex/chameleonic
		
	main #21
| @@ -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 | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user