ContinuumGame/continuum.p8

586 lines
34 KiB
Lua
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

pico-8 cartridge // http://www.pico-8.com
version 36
__lua__
-- continuum
-- by lightmotif
poke(0x5f2c,3)
function _init_rain()
rain={}
rainminx=cam_x
rainminy=cam_y+6
rainmaxx=cam_x+64
rainmaxy=cam_y+64
israining=false
cool={1,12,7}
raintohit = 15
local totalrain=48
for i=1,totalrain do
local rndspd=flr(rnd(3)+1)
add(rain,{
x=rnd(64),
y=rnd(64),
spd=rndspd
})
end
end
--<<<=======init========>>>
function _init()
cam_x=0
cam_y=0
_init_rain()
make_player()
sx = 0 sy = 13
px = 28 py = 28
sun = {}
sun.sprt = 14
sun.tmr = 1
sun.x = sx
sun.y = sy
wthr_tmr=1
d20 = 0
day = true
crossbar = false
crossbarnum = 0
skyclr1 = 1
skyclr2 = 12
shake=0
confirm_trigger=false
cancel_trigger=false
menu_cor = cocreate(open_menu)
close_menu_cor = cocreate(close_menu)
palt(0,0)
end
--<<<=====update======>>>
function _update()
-- camx = peek2(0x5f28)
-- camy = peek2(0x5f2a)
wthr_tmr+=1
d20 = flr(rnd(20))
if (israining) then raintohit=3 else raintohit=15 end
if ((wthr_tmr%201)==0 and d20>=raintohit) then
_toggle_rain()
end
if (btnp(4) and costatus(close_menu_cor) ~= "dead") then coresume(close_menu_cor) end --🅾️
if (btnp(4) and costatus(close_menu_cor) == "dead") then close_menu_cor = cocreate(close_menu) coresume(close_menu_cor) end --🅾️
if (crossbar==false) then
move_player()
if (btnp(5) and costatus(menu_cor) ~= "dead") then coresume(menu_cor) end --❎
if (btnp(5) and costatus(menu_cor) == "dead") then menu_cor = cocreate(open_menu) coresume(menu_cor) end --❎
end
if (crossbar and (btnp(0) or btnp(1) or btnp(2) or btnp(3))) then
coresume(menu_cor)
end
if (crossbarnum>0 and (btnp(0) or btnp(1) or btnp(2) or btnp(3))) then
coresume(menu_cor)
end
-- if btnp(5) then sfx(0,3,-2) end
-- if btnp(4) then sfx(1,3,-2) end --shake+=1
--if (crossbarnum==4 and btnp(3)) then sfx(0,3,0) crossbarnum=0 crossbar=false end
local dayfactor=160 --320
sun.x = sun.tmr/6
if sun.tmr<=dayfactor then
sun.y = sun.y-8/dayfactor
end
if sun.tmr>dayfactor then
sun.y = sun.y+8/dayfactor
end
_update_rain()
end
--<<<====draw======>>>
function _draw()
cls()
pal()
--center camera on player
camera_follow()
--do the shaking
-- doshake()
--map
rectfill(0,15,476,256,1)
map(0,0,0,8,33,18)
--sky
rectfill(cam_x,cam_y+5,cam_x+64,cam_y+15,skyclr2)
rectfill(cam_x,cam_y+5,cam_x+64,cam_y+7,skyclr1)
spr(sun.sprt,sun.x+cam_x,sun.y+cam_y)
map(0,0,0,12+cam_y,33,1)
--player
spr(p.sprt,p.x,p.y,1,1,p.flp)
--celestial bodies
sun.tmr = sun.tmr+1
if sun.tmr>=320 then --64
sun.x = 0
sun.y = 13
if day then
sun.sprt = 24
skyclr1 = 0
skyclr2 = 1
day = false
else
sun.sprt = 14
skyclr1 = 1
skyclr2 = 12
day = true
end
sun.tmr = 0
end
--player anim
p.tmr = p.tmr+1
if p.tmr>=5 then
p.sprt = panim.f1
end
if p.tmr>=10 then
p.sprt = panim.f2
p.tmr = 0
end
--crossbar
if crossbar then
--outlines
rect(p.x-1,p.y-9,p.x+8,p.y-1,10)
rect(p.x+8,p.y-1,p.x+16,p.y+8,11)
rect(p.x-1,p.y+8,p.x+8,p.y+16,12)
rect(p.x-9,p.y-1,p.x-1,p.y+8,8)
if (crossbarnum==0) then --mainmenu
spr(0,p.x,p.y-8)
spr(2,p.x+8,p.y)
spr(1,p.x,p.y+8)
spr(18,p.x-8,p.y)
end
if (crossbarnum==1) then --measure
spr(13,p.x,p.y-8)
spr(15,p.x+8,p.y)
spr(20,p.x,p.y+8)
spr(5,p.x-8,p.y)
end
if (crossbarnum==2) then --act
spr(9,p.x,p.y-8)
spr(5,p.x+8,p.y)
spr(19,p.x,p.y+8)
spr(26,p.x-8,p.y)
end
if (crossbarnum==3) then --build
spr(6,p.x,p.y-8)
spr(16,p.x+8,p.y)
spr(11,p.x,p.y+8)
spr(5,p.x-8,p.y)
end
if (crossbarnum==4) then --plant
spr(17,p.x,p.y-8)
spr(21,p.x+8,p.y)
spr(22,p.x,p.y+8)
spr(23,p.x-8,p.y)
end
--colors 10,11,12,8
end
--draw rain
if(israining) then _draw_rain() end
--menu
rectfill(cam_x,cam_y,cam_x+64,cam_y+4,0)
spr(48,0+cam_x,0+cam_y)
line(5+cam_x,2+cam_y,14+cam_x,2+cam_y,10)
spr(49,16+cam_x,0+cam_y)
line(21+cam_x,2+cam_y,30+cam_x,2+cam_y,8)
spr(50,32+cam_x,0+cam_y)
line(37+cam_x,2+cam_y,46+cam_x,2+cam_y,12)
print(crossbarnum,48+cam_x,cam_y,10)
-- print(camy,56+cam_x,cam_y,11)
end
function doshake()
local shakex=16-rnd(32)
local shakey=16-rnd(32)
shakex*=shake
shakey*=shake
camera(shakex,shakey)
shake=shake*0.95
if (shake<0.05) then shake=0 end
end
function _toggle_rain()
if (israining) then israining=false
else israining=true
end
end
function _update_rain()
for drp in all(rain) do
drp.y+=drp.spd+2
if(drp.y>=rainmaxy+cam_y) then
drp.y=rainminy+cam_y
drp.x=(flr(rnd(64))+cam_x)
drp.spd=flr(rnd(3)+1)
end
end
end
function _close_menu()
crossbar=false
crossbarnum=0
sfx(0,3,-1)
end
-- 2,1,3,0 Up,Right,Down,Left
function _build(button)
--israining=true
-- print(tostring(button),0,16,10)
--energy
--battery
--house
--water
end
function _act(button)
--gather
--water
--remove
--upgrade
end
function _plant(button)
--crops
--grass
--shrub
--tree
end
function _measure(button)
--temp
--wind
--soil
--water
end
function _draw_rain()
for drp in all(rain) do
if(drp.spd==3) then
line(drp.x,drp.y-3,drp.x,drp.y-5,cool[1])
line(drp.x,drp.y-1,drp.x,drp.y-3,cool[2])
pset(drp.x,drp.y,cool[3])
end
if(drp.spd==2) then
line(drp.x,drp.y-1,drp.x,drp.y-2,cool[1])
pset(drp.x,drp.y,cool[2])
end
if(drp.spd==1) then
line(drp.x,drp.y-1,drp.x,drp.y-1,cool[1])
pset(drp.x,drp.y,cool[2])
end
end
end
-->8
--player functions
function make_player()
p={}
p.x=28
p.y=28
p.dx=0
p.dy=0
p.w=7
p.h=7
p.tmr=1
p.flp=false
p.ymov=false
panim={}
panim.f1=32
panim.f2=33
p.sprt=32
end
function move_player()
if (btn()) p.dx-=1 panim.f1=34 panim.f2=35 p.flp=true p.ymov=false
if (btn()) p.dx+=1 panim.f1=34 panim.f2=35 p.flp=false p.ymov=false
if (btn()) p.dy-=1 panim.f1=36 panim.f2=52 p.flp=false p.ymov=true
if (btn()) p.dy+=1 panim.f1=33 panim.f2=51 p.flp=false p.ymov=true
if (can_move(p.x+p.dx,p.y,p.w,p.h)) then
p.x+=p.dx
end
if (can_move(p.x,p.y+p.dy,p.w,p.h)) then
p.y+=p.dy
end
p.dx,p.dy=0,0
end
-->8
--collision functions
function can_move(x,y,w,h)
if (solid(x,y-8)) return false
if (solid(x+w,y-8)) return false
if (solid(x,y+h-8)) return false
if (solid(x+w,y+h-8)) return false
return true
end
function solid(x,y)
local map_x=flr(x/8)
local map_y=flr(y/8)
local map_sprite=mget(map_x,map_y)
local flag=fget(map_sprite)
return flag==1
end
-->8
--camera follow functions
function camera_follow()
cam_x=p.x-28
cam_y=p.y-28
cam_x=mid(0,cam_x,476)
cam_y=mid(0,cam_y,76)
--change the camera position
camera(cam_x,cam_y)
end
-->8
--menu coroutines
function open_menu()
crossbar = true
sfx(0,3,0)
yield()
if (crossbarnum == 0) then
if (btn(0)) then crossbarnum=1 end --⬅️ Measure
if (btn(1)) then crossbarnum=2 end --➡Act
if (btn(2)) then crossbarnum=3 end --⬆Build
if (btn(3)) then crossbarnum=4 end --⬇Plant
end
sfx(0,3,0)
yield()
if (crossbarnum>0) then
if btn(0) then i=0 end
if btn(1) then i=1 end
if btn(2) then i=2 end
if btn(3) then i=3 end
if (crossbarnum==1) then _measure(i) end
if (crossbarnum==2) then _act(i) end
if (crossbarnum==3) then _build(i) end
if (crossbarnum==4) then _plant(i) end
end
sfx(0,3,0)
yield()
if (crossbarnum==4 and btnp(2)) then mset(flr(p.x+3)/8,flr(p.y+5)/8-1,46) close_menu() end --crops
if (crossbarnum==4 and btnp(1)) then mset(flr(p.x+3)/8,flr(p.y+5)/8-1,42) close_menu() end --grass
if (crossbarnum==4 and btnp(3)) then mset(flr(p.x+3)/8,flr(p.y+5)/8-1,44) close_menu() end --shrubs
if (crossbarnum==4 and btnp(0)) then mset(flr(p.x+3)/8,flr(p.y+5)/8-1,46) close_menu() end --trees
sfx(0,3,0)
coresume(close_menu_cor)
if (costatus(close_menu_cor)=="dead") then close_menu_cor = cocreate(close_menu) end
yield()
end
function close_menu()
crossbar = false
crossbarnum = 0
sfx(1,3,0)
yield()
end
__gfx__
65566600000003b0004400000007000070000070000c000000007a9000007770000800000666650077777777000880000011110000007000000a900000006d00
6666656000003b3004ff4440000700000700070000c6c0000007a9000007777700088008000056d0711111110888888001999910000766000a0000900006d000
655650560003b3b04f444ff4000700000070700000c66c00007a900007c7777700008800000005657171717c11111111179899e10007650000099000006d0660
00045000003b3b004ffff44400757000000700000cc666c007aaaaa0777c77c7000089800000505571111ccc8888888817789ee100078500a09aa90906d06dd6
00045000003b30004fff4ff40705070000070000ccc66cc000000a90c777777c0808998000050005717c7c7c8884488817778ee100068500909aa90a06d000d6
00045000044400004ffff4407005007000070000ccccccc00000a9000cccccc0008aaa9800500005777777770884488017778ee1000585000009900006dd60d6
0004500004f200004fff4f4000050000000500000ccccc00000a900000101010008a7a80050000010220022008814880171111e1005e8e50090000a000660d60
000450000222000004fff000001510000015100000ccc000000a000000c0c0c000088800500000001111111108844880011111100005e5000009a0000000d600
0000000000003b0000011000008888000000000000000000000000000033b330000aaa0000000000000cc0000033b330ff33b33f000060004444444400000000
000000000000b300001771000877788000000000000000000000000003b3331300a9999000a0000000c77c0003b33813f3b33313500666004406566400000000
566666600088320001777610877788881444f44100000000003bb300033131310a999009000000000c7777c003813138f3313131556666654650050600000000
53b3b3b608ee88200177761087788878144444410000b000037b33103b3311030a990000000000a0c777777c3b3318033b3311f3533366336500066000000000
13b3b3b508e888200016610087888778144444f10b0b303003b33b30030440000a9900000000a000ccc77ccc03044000f3f44fff333333336656005400000000
1111111008888220000110008888777814f44441003b3b000333b130000420000a999009000a9a0000c77c0000042000fff42fff333333334660560600000000
00000000008822000006500008877780014444100000000003b3331000042000009999900000a00000c77c000004200011142111333333334005650400000000
0000000000022000000650000088880000111100000000000031310000242200000999000000000000cccc000024220011242211444444444460004400000000
000dd000000dd000000ddd0000000000000dd000fffff9ffcccccccc444444443333333344244444444444444444444444444444444444444444444444444444
005dd500005dd50000d5ddd0000ddd00005dd500ff9fffffcc77cc77222222223b3b333344444244414141414b434b4b4121412143b343b34444444444444344
085cc580085cc5800d585dc000d5ddd0085dd5809ffffff977cc77cc4444444433b33b33244444444444444444444444423141313b313b31444444444b434b44
015dd510015dd51001d5ddd00d585dc0001dd100ffff9fffcccccccc222222223333333344424424414141414343434b41124112431443144444444444b44b43
001dd100001dd1000011110001d5ddd00d5555d8ff9fffffcccccccc4444444433333333424444444444444444444444444444444444444444444444439444b4
0d5555d000d555800005d5000011558080555500fffff9ff7cc77cc722222222333b3b334444444441414141434b43434112421143b343b34131413144944494
8011110808011000000185000081111000111100f9ffffffc77cc77c444444443b33b333244442444444444444444444423141323b313b314131413141414141
0080080000008000000118800088008800000800fff9ff9fcccccccc22222222333333334424444241414141434b434b41124121431443144414441444144414
000a0000003300000c000000000dd000000dd0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00a000000e30000000c00000005dd500005dd5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0aaa00008ee200000c6c0000085cc580085dd5800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00a0000088820000cc6c0000015dd510001dd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0a000000082000000cc00000001dd1008d5555d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000008555d00005555080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000011080001111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000080000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
__label__
000000aa0000000000000000000000000000333300000000000000000000000000cc000000000000000000000000000000000000000000000000000000000000
000000aa0000000000000000000000000000333300000000000000000000000000cc000000000000000000000000000000000000000000000000000000000000
0000aa0000000000000000000000000000ee33000000000000000000000000000000cc0000000000000000000000000000000000000000000000000000000000
0000aa0000000000000000000000000000ee33000000000000000000000000000000cc0000000000000000000000000000000000000000000000000000000000
00aaaaaa00aaaaaaaaaaaaaaaaaaaa0088eeee2200888888888888888888880000cc66cc00cccccccccccccccccccc0000000000000000000000000000000000
00aaaaaa00aaaaaaaaaaaaaaaaaaaa0088eeee2200888888888888888888880000cc66cc00cccccccccccccccccccc0000000000000000000000000000000000
0000aa0000000000000000000000000088888822000000000000000000000000cccc66cc00000000000000000000000000000000000000000000000000000000
0000aa0000000000000000000000000088888822000000000000000000000000cccc66cc00000000000000000000000000000000000000000000000000000000
00aa00000000000000000000000000000088220000000000000000000000000000cccc0000000000000000000000000000000000000000000000000000000000
00aa00000000000000000000000000000088220000000000000000000000000000cccc0000000000000000000000000000000000000000000000000000000000
111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111cc111111111111
111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111cc111111111111
111111111111111111111111cc111111111111111111111111111111cc1111111111111111111111111111111111111111111111111111111177111111111111
111111111111111111111111cc111111111111111111111111111111cc1111111111111111111111111111111111111111111111111111111177111111111111
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc11cccccccccccccccccccc11cccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc11cccccccccccccccccccc11cccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc11cccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc11cccccccccccccccccccccccccccccccccccccccccccccccccccc
ccccccccccccccccccccaa99cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
ccccccccccccccccccccaa99cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cccccccc77cc7711aacccccccc99cccccccccccccccccccccccc11cc11cccccccccccccccccc77cccccccccccccccccccccccc77cccccccccccccccccccccccc
cccccccc77cc7711aacccccccc99cccccccccccccccccccccccc11cc11cccccccccccccccccc77cccccccccccccccccccccccc77cccccccccccccccccccccccc
cccccccccccccc11cccc9999cccccc66cccccccccccccc6611cc11cc11cccc66cccccccccccccc66cc11cccccccccc66cccccccccccccc66cccccccccccccc66
cccccccccccccc11cccc9999cccccc66cccccccccccccc6611cc11cc11cccc66cccccccccccccc66cc11cccccccccc66cccccccccccccc66cccccccccccccc66
66cccc55cccc66cc6699aa5599cc666666cccc55cccc666611cccc55cccc666666cccc55cccc66666611cc55cccc666666cccc55cccc666666cccc55cccc6666
66cccc55cccc66cc6699aa5599cc666666cccc55cccc666611cccc55cccc666666cccc55cccc66666611cc55cccc666666cccc55cccc666666cccc55cccc6666
66665555556666cc66665555556666666666555555666666cc66cc55cc666666666655555566666666cc55555566666666665555556666666666555555666666
66665555556666cc66665555556666666666555555666666cc66cc55cc666666666655555566666666cc55555566666666665555556666666666555555666666
66333355333333cc663333553333336666333355333333666633cc55cc3333666633335533333366663333553333336666333355333333666633335533333366
66333355333333cc663333553333336666333355333333666633cc55cc3333666633335533333366663333553333336666333355333333666633335533333366
33333333333333773333333333333333333333333333333333337733773333333333333333333333333333333333333333333333333333333333333333333333
33333333333333773333333333333333333333333333333333337733773333333333333333333333333333333333333333333333333333333333333333333333
33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
444444444444444444444444444444444444444444444444444444aaaaaaaaaaaaaaaaaaaa444444444444444444444444444444444444444444444444444444
444444444444444444444444444444444444444444444444444444aaaaaaaaaaaaaaaaaaaa444444444444444444444444444444444444444444444444444444
444422444422444444442244442244444444224444224444444422aa66555566666622ffaaff99ffff99ffffffff99ffff99ffffffff99ffff99ffffffff99ff
444422444422444444442244442244444444224444224444444422aa66555566666622ffaaff99ffff99ffffffff99ffff99ffffffff99ffff99ffffffff99ff
444444444422444444444444442244444444444444224444444444aa66666666665566ffaaffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff
444444444422444444444444442244444444444444224444444444aa66666666665566ffaaffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff
224444444444444422444444444444442244444444444444224444aa6655556655445566aa99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffff
224444444444444422444444444444442244444444444444224444aa6655556655445566aa99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffff
444444224444444444444422444444441144442244444444444444aa4444444455444499aaffffffffff9999ffffffffffff9999ffffffffffff9999ffffffff
444444224444444444444422444444441144442244444444444444aa4444444455444499aaffffffffff9999ffffffffffff9999ffffffffffff9999ffffffff
44224444444422444411444444442244cc22444444442244442244aa44442244552244ffaaffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99
44224444444422444411444444442244cc22444444442244442244aa44442244552244ffaaffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99
444444442244444444114444224444444444444422444444444444aa22444444554444ffaa99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffff
444444442244444444114444224444444444444422444444444444aa22444444554444ffaa99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffff
444444441144444444cc4444444444444444444444114444444444aa44444444554444ffaaffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff
444444441144444444cc4444444444444444444444114444444444aa44444444554444ffaaffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff
22444422cc44444422444422444444442244448888cc888888888888aaaaaa4455aaaaaabbbbbbbbbbbbbbbbbbffffffffffffff99ffffffffffffff99ffffff
22444422cc44444422444422444444442244448888cc888888888888aaaaaa4455aaaaaabbbbbbbbbbbbbbbbbbffffffffffffff99ffffffffffffff99ffffff
44442244442244444444224444224444444422884422441111442288442244dddd4422ffbbff4444ff99ffffbbff99ffff99ffffffff99ffff99ffffffff99ff
44442244442244444444224444224444444422884422441111442288442244dddd4422ffbbff4444ff99ffffbbff99ffff99ffffffff99ffff99ffffffff99ff
99ffffffffffffff99ffffffffffffff99ffff88ffff11777711ff88ffff55dddd55ffffbb44ffff444444ffbbffffff99ffffffffffffff99ffffffffffffff
99ffffffffffffff99ffffffffffffff99ffff88ffff11777711ff88ffff55dddd55ffffbb44ffff444444ffbbffffff99ffffffffffffff99ffffffffffffff
ffffffffff99ffffffffffffff99ffffffffff88ff11777777661188ff8855cccc5588ff44ff444444ffff44bb99ffffffffffffff99ffffffffffffff99ffff
ffffffffff99ffffffffffffff99ffffffffff88ff11777777661188ff8855cccc5588ff44ff444444ffff44bb99ffffffffffffff99ffffffffffffff99ffff
ffff9999ffffffffffff9999ffffffffffff9988ff11777777661188111155dddd55119944ffffffff444444bbffffffffff9999ffffffffffff9999ffffffff
ffff9999ffffffffffff9999ffffffffffff9988ff11777777661188111155dddd55119944ffffffff444444bbffffffffff9999ffffffffffff9999ffffffff
ffffffffffffff99ff11ffffffffff99ffffff88ffff11666611ff8811ff11dddd11ffff44ffffff44ffff11bbffff99ffffffffffffff99ffffffffffffff99
ffffffffffffff99ff11ffffffffff99ffffff88ffff11666611ff8811ff11dddd11ffff44ffffff44ffff11bbffff99ffffffffffffff99ffffffffffffff99
ffffffffff99ffffff11ffffff99ffffffffff88ff99ff1111ffff88cc88555555ddffff44ffffffff444411bb99ffffffffffffff99ffffffffffffff99ffff
ffffffffff99ffffff11ffffff99ffffffffff88ff99ff1111ffff88cc88555555ddffff44ffffffff444411bb99ffffffffffffff99ffffffffffffff99ffff
99ffffffffffffff99ccffffffffffff99ffff88ffffff6655ffff88ccffff1111ff88ff44ffffff44ff44ccbbffffff99ffffffffffffff99ffffffffffffff
99ffffffffffffff99ccffffffffffff99ffff88ffffff6655ffff88ccffff1111ff88ff44ffffff44ff44ccbbffffff99ffffffffffffff99ffffffffffffff
ffffffff99ffffffffffffff99ffffffffffff8899ffff6655ffff88ccffff88ffffff11bb44ffffffffffffbbffffffffffffff99ffffffffffffff99ffffff
ffffffff99ffffffffffffff99ffffffffffff8899ffff6655ffff88ccffff88ffffff11bb44ffffffffffffbbffffffffffffff99ffffffffffffff99ffffff
ff99ffffffff99ffff99ffffffff99ff1199ff88118888888888888877cccccccc33bbccccbbbbbbbbbbbbbbbbff99ffff99ffffffff99ffff99ffffffff99ff
ff99ffffffff99ffff99ffffffff99ff1199ff88118888888888888877cccccccc33bbccccbbbbbbbbbbbbbbbbff99ffff99ffffffff99ffff99ffffffff99ff
99ffffffffffffff99ffffffffffffff11ffffff11ffffff99ffffccffffffff33bb33ffccffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff
99ffffffffffffff99ffffffffffffff11ffffff11ffffff99ffffccffffffff33bb33ffccffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff
ffffffffff99ffffffffffffff99ffffccffffffcc99ffffffffffccff99ff33bb33bbffcc99ffffffffffffff99ffffffffff11ff9911ffffffffffff99ffff
ffffffffff99ffffffffffffff99ffffccffffffcc99ffffffffffccff99ff33bb33bbffcc99ffffffffffffff99ffffffffff11ff9911ffffffffffff99ffff
ffff9999ffffffffffff9999ffffffffccff9999ffffffffffff99ccffff33bb33bb9999ccffffffffff9999ffffffffffff99ccffffccffffff9999ffffffff
ffff9999ffffffffffff9999ffffffffccff9999ffffffffffff99ccffff33bb33bb9999ccffffffffff9999ffffffffffff99ccffffccffffff9999ffffffff
ffffffffffffff99ffffffffffffff99ccffffffffffff11ffffffccffff33bb33ffffffccffff99ffffffffffffff99ffffffffffffff99ff11ffffffffff99
ffffffffffffff99ffffffffffffff99ccffffffffffff11ffffffccffff33bb33ffffffccffff99ffffffffffffff99ffffffffffffff99ff11ffffffffff99
ffffffffff99ffffffff11ffff99ffff77ffffffff99ff11ffffffccff444444ff11ffffcc99ffffffffffffff99ffffffffffffff99ffffff11ffffff99ffff
ffffffffff99ffffffff11ffff99ffff77ffffffff99ff11ffffffccff444444ff11ffffcc99ffffffffffffff99ffffffffffffff99ffffff11ffffff99ffff
99ffffffffffffff99ffccffffffffff99ffffffffffffcc99ffffccff44ff2299ccffffccffffff99ffffffffffffff99ffffffffffffff99ccffffffffffff
99ffffffffffffff99ffccffffffffff99ffffffffffffcc99ffffccff44ff2299ccffffccffffff99ffffffffffffff99ffffffffffffff99ccffffffffffff
ffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffcc99222222ffffffffccffffffffffffff99ffffffffffffff99ffffffffffffff99ffffff
ffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffcc99222222ffffffffccffffffffffffff99ffffffffffffff99ffffffffffffff99ffffff
ff99ffffffff99ffff99ffffffff99ffff99ffffffff99ffff99ffccccccccccccccccccccff99ff1199ffffffff99ffff99ffffffff99ffff99ffffffff99ff
ff99ffffffff99ffff99ffffffff99ffff99ffffffff99ffff99ffccccccccccccccccccccff99ff1199ffffffff99ffff99ffffffff99ffff99ffffffff99ff
99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff11ffffffffffffff99ffffffffffffff99ffffffffffffff
99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff11ffffffffffffff99ffffffffffffff99ffffffffffffff
ffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffccffffffff99ffffffffffffff11ffffffffffffff99ffff
ffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffccffffffff99ffffffffffffff11ffffffffffffff99ffff
ffff9999ffff11ffffff9999ffffffffffff9999ffffffffffff9999ffffffffffff9999ffffffffff119999ffffffffffff99991111ffffffff9999ffffffff
ffff9999ffff11ffffff9999ffffffffffff9999ffffffffffff9999ffffffffffff9999ffffffffff119999ffffffffffff99991111ffffffff9999ffffffff
ffff11ffffffcc99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffccffffffffff99ffffffffccccff99ffffffffffffff99
ffff11ffffffcc99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffccffffffffff99ffffffffccccff99ffffffffffffff99
ffff11ffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffffccffffffffffffff99ffff
ffff11ffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffffccffffffffffffff99ffff
99ffccffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ff11ffffffffff99ffffffffccffff99ffffffffffffff
99ffccffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ff11ffffffffff99ffffffffccffff99ffffffffffffff
ffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffccff99ffffffffffffff9977ffffffffffff99ffffff
ffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffffff99ffffffffffccff99ffffffffffffff9977ffffffffffff99ffffff
ff99ffffffff99ffff99ffffffff99ffff99ffffffff99ffff99ffffffff99ffff99ffffffff99ffff9911ffffff99ffff99ffffff1199ffff99ffff11ff99ff
ff99ffffffff99ffff99ffffffff99ffff99ffffffff99ffff99ffffffff99ffff99ffffffff99ffff9911ffffff99ffff99ffffff1199ffff99ffff11ff99ff
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc11cccccccccccc11cccccc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc11cccccccccccc11cccccc
cc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc77cccccc7777cccc7777cccccc77cccc7777cccc7777cc
cc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc77cccccc7777cccc7777cccccc77cccc7777cccc7777cc
77cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc77
77cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc77
cccccccccccccccccccccccccccccccccc11cccccccccccccccccccccccccccccccccccccccccccccccc7711cccccccccccccccccc77cccccccccccccccccccc
cccccccccccccccccccccccccccccccccc11cccccccccccccccccccccccccccccccccccccccccccccccc7711cccccccccccccccccc77cccccccccccccccccccc
cccccccccccccccccccccccccccccccccc11cccccccccccccccccccccccccccccccccccccccccccccccccc11cccccccccccccccccccccccccccccccccccccccc
cccccccccccccccccccccccccccccccccc11cccccccccccccccccccccccccccccccccccccccccccccccccc11cccccccccccccccccccccccccccccccccccccccc
cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc77cccccc7777cccc7777cccc7777cccc7777cccc7777
cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc77cccccc7777cccc7777cccc7777cccc7777cccc7777
7777cccc7777cccc7777cccc7777cccc77cccccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc
7777cccc7777cccc7777cccc7777cccc77cccccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc
cccc11cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc11cccccccc
cccc11cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc11cccccccc
cccc11cccccccccccccccccccccccccccc77cccccccccccccccccccccccccccccccccccccccccccccccccc77cccccccccccccccccccccccccccccc11cccccccc
cccc11cccccccccccccccccccccccccccc77cccccccccccccccccccccccccccccccccccccccccccccccccc77cccccccccccccccccccccccccccccc11cccccccc
cc77cccccc7777cccc7777cccc7777cccc1177cccc7777cccc7777cccc7777cccc7711cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cc
cc77cccccc7777cccc7777cccc7777cccc1177cccc7777cccc7777cccc7777cccc7711cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cc
77cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc77
77cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc7777cccc77
__gff__
0000000000000000000000000000000000000000000000000000000000010000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
__map__
1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252525252525252525252525252525252525252525252525252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252525252525252525252525252525252525252525252525252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252529292929292925252525292925252525252525252525252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252929292929292929252529292925252525252525252525252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252929292929292929292929292525252525252529292525252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252529292929292929292929252525252525252929292925252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252525252929292929292929252525252525252929292925252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252525252929292929292929252525252525252929292925252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252525292929292929292929292525252525252929292925252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252529292929292929292929292925252525252929292925252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252929292929292929292929292925252525252529292525252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252529292925252525252525252525252525252525252525252525262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252525252525252525252525252525252525252525252525252526262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
1d25252525252525252525252525252525252525252525252525252626262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2626262626262626262626262626262626262626262626262626262626262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2626262626262626262626262626262626262626262626262626262626262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2626262626262626262626262626262626262626262626262626262626262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2626262626262626262626262626262626262626262626262626262626262626262600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000026260000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
__sfx__
010200003327036271362750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
010c00002927526200262750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000