Last active
April 25, 2021 18:06
LD48: Earigator
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pico-8 cartridge // http://www.pico-8.com | |
version 30 | |
__lua__ | |
-- ld48: earigator | |
-- by: alec t | |
-- framework | |
------------------------------- | |
--------- tiny ecs ---------- | |
-- by katrinakitten | |
------------------------------- | |
function ent(t) | |
local cmpt={} | |
t=t or {} | |
setmetatable(t,{ | |
__index=cmpt, | |
__add=function(self,cmp) | |
assert(cmp._cn) | |
self[cmp._cn]=cmp | |
return self | |
end, | |
__sub=function(self,cn) | |
self[cn]=nil | |
return self | |
end | |
}) | |
return t | |
end | |
function cmp(cn,t) | |
t=t or {} | |
t._cn=cn | |
return t | |
end | |
function sys(cns,f) | |
return function(ents,...) | |
for e in all(ents) do | |
for cn in all(cns) do | |
if(not e[cn]) goto _ | |
end | |
f(e,...) | |
::_:: | |
end | |
end | |
end | |
------------------------------- | |
--------- components ---------- | |
------------------------------- | |
function pos(x,y) | |
return cmp("pos",{ x=x,y=y }) | |
end | |
function vel(x,y) | |
return cmp("vel",{ x=x,y=y }) | |
end | |
function speed(x,y) | |
return cmp("speed",{ x=x,y=y }) | |
end | |
function fric(v) | |
return cmp("fric",{ v=v }) | |
end | |
function anim(cur,sts) | |
return cmp("anim",{ | |
tick=0, | |
frame=1, | |
current=cur, | |
states=sts | |
}) | |
end | |
function image(x,y,w,h,t) | |
return cmp("image", | |
{ x=x,y=y, | |
w=w,h=h, | |
t=t --type: "sprite" or "map" | |
}) | |
end | |
function col(w,h,f,ox,oy,b,s) | |
if not s then | |
s=false | |
end | |
return cmp("col", | |
{ w=w,h=h, | |
flags=f, | |
ox=ox,oy=oy, | |
bounce=b, | |
shake=s }) | |
end | |
function timer(int,cb) | |
return cmp("timer", | |
{interval=int,callback=cb}) | |
end | |
function mk_timer(int,cb) | |
e=ent() | |
e+=timer(int,cb) | |
return e | |
end | |
------------------------------- | |
--------- systems ---------- | |
------------------------------- | |
move=sys({ "pos","vel","col" }, | |
function(e) | |
local new_pos=map_collision( | |
e.pos,e.vel,e.col) | |
e.pos.x=new_pos.x | |
e.pos.y=new_pos.y | |
e.col.hit=new_pos.hit | |
if new_pos.hit then | |
if e.col.bounce then | |
e.vel.x*=-1 | |
e.vel.y*=-1 | |
end | |
if e.col.shake then | |
screenshake:start(4) | |
end | |
end | |
end) | |
friction=sys({ "vel","fric" }, | |
function(e) | |
e.vel.x*=e.fric.v | |
e.vel.y*=e.fric.v | |
end) | |
anim_u=sys({ "anim" }, | |
function(e) | |
local a=e.anim | |
local s=a.states[a.current] | |
a.tick=(a.tick+1)%s.speed | |
if a.tick==0 then | |
a.frame=(a.frame+1)%#s.frames | |
end | |
end) | |
anim_d=sys({ "anim","pos" }, | |
function(e) | |
local p=e.pos | |
local a=e.anim | |
local f=a | |
.states[a.current] | |
.frames[a.frame+1] | |
spr(f,p.x,p.y,1,1,a.flip) | |
end) | |
image_d=sys({ "pos","image" }, | |
function(e) | |
i=e.image | |
p=e.pos | |
if i.t=="sprite" then | |
sspr(i.x,i.y,i.w,i.h,p.x,p.y) | |
end | |
if i.t=="map" then | |
map(i.x,i.y,p.x,p.y,i.w,i.h) | |
end | |
end) | |
timer_u=sys({ "timer" }, | |
function(e,w) | |
if e.timer.interval==0 then | |
e.timer:callback() | |
del(w,e) | |
else | |
e.timer.interval-=1 | |
end | |
end) | |
------------------------------- | |
--------- game state ---------- | |
------------------------------- | |
-- each state has init, | |
-- update, draw funcs | |
------------------------------- | |
gstate={ current="" } | |
function gstate:add(name, s) | |
self[name]=s | |
end | |
function gstate:switch(n) | |
self.current=n | |
self[n]:init() | |
end | |
function gstate:update() | |
self[self.current]:update() | |
end | |
function gstate:draw() | |
self[self.current]:draw() | |
end | |
-------------------------------- | |
-------- screen shake ---------- | |
-------------------------------- | |
screenshake={ | |
duration=0, | |
intensity=2 | |
} | |
function screenshake:start(d,i) | |
self.duration=d | |
if i!=nil then | |
self.intensity=i | |
end | |
end | |
function screenshake:update() | |
if self.duration>0 then | |
local i=self.intensity | |
local sx=flr(rnd(i)-i/2) | |
local sy=flr(rnd(i)-i/2) | |
camera(sx,sy) | |
self.duration-=1 | |
end | |
if self.duration==0 then | |
camera(0,0) | |
end | |
end | |
------------------------------- | |
-------- 2d vector ----------- | |
------------------------------- | |
vec2d = {} | |
function vec2d:new(x,y) | |
o={x=x,y=y} | |
self.__index=self | |
return setmetatable(o, self) | |
end | |
function vec2d:len() | |
return sqrt(self.x^2+self.y^2) | |
end | |
function vec2d:norm() | |
local l = self:len() | |
return vec2d:new( | |
self.x/l, | |
self.y/l) | |
end | |
function vec2d:minus(vec) | |
return vec2d:new( | |
self.x-vec.x, | |
self.y-vec.y | |
) | |
end | |
function sqr(a) | |
return a*a | |
end | |
function round(a) | |
return flr(a+0.5) | |
end | |
function dist(p1, p2) | |
local dx=p2.x-p1.x | |
local dy=p2.y-p1.y | |
return sqrt(dx*dx+dy*dy) | |
end | |
------------------------------- | |
-------- collision ----------- | |
-- detect if box a and b overlap. | |
-- both a and b must have comps | |
-- col, pos | |
-- original: https://mboffin.itch.io/pico8-overlap | |
------------------------------- | |
function overlap(a,newx,newy,b) | |
assert(a.col) | |
assert(a.pos) | |
assert(b.col) | |
assert(b.pos) | |
return not ( | |
newx>=b.pos.x+b.col.w | |
or newy>=b.pos.y+b.col.h | |
or newx+a.col.w<=b.pos.x | |
or newy+a.col.h<=b.pos.y) | |
end | |
map_offset={x=0,y=0} | |
function map_collision(p,v,c) | |
local newx=p.x+v.x | |
local newy=p.y+v.y | |
local dx=v.x>0 and 1 or -1 | |
local dy=v.y>0 and 1 or -1 | |
local w_hit=false | |
-- check x direction | |
for i=p.x+c.ox,p.x+v.x+c.ox,dx do | |
local x=dx>0 and i+c.w-1 or i | |
local hit=false | |
for y=p.y+c.oy,p.y+c.h+c.oy,c.h/3 do | |
local flag=fget(mget( | |
(x/8)-map_offset.x, | |
(y/8)-map_offset.y)) | |
for f in all(c.flags) do | |
if f==flag then | |
hit=true | |
end | |
end | |
end | |
if not hit then | |
w_hit=true | |
newx=i | |
end | |
end | |
-- now y direction | |
for i=p.y+c.oy,p.y+v.y+c.oy,dy do | |
local y=dy>0 and i+c.h-1 or i | |
local hit=false | |
for x=p.x+c.ox,p.x+c.w+c.ox,c.w/3 do | |
local flag=fget(mget( | |
(x/8)-map_offset.x, | |
(y/8)-map_offset.y)) | |
for f in all(c.flags) do | |
if f==flag then | |
hit=true | |
end | |
end | |
end | |
if not hit then | |
w_hit=true | |
newy=i | |
end | |
end | |
return {x=newx,y=newy, | |
hit=w_hit} | |
end | |
------------------------------- | |
---------- physics ------------ | |
------------------------------- | |
function new_physics() | |
return { | |
particles = {}, | |
springs = {}, | |
ax = 0, | |
ay = 0, | |
dt = 0.1, | |
setforce = function(this, _ax, _ay) | |
this.ax = _ax | |
this.ay = _ay | |
end, | |
reset = function(this) | |
this.particles = {} | |
this.springs = {} | |
end, | |
addparticle = function(this, p) | |
add(this.particles, p) | |
end, | |
addspring = function(this, s) | |
add(this.springs, s) | |
end, | |
update = function(this) | |
for p in all(this.particles) do | |
p:update(this.ax, this.ay, this.dt) | |
end | |
for s in all(this.springs) do | |
s:update() | |
end | |
end | |
} | |
end | |
function spring(_p1, _p2, _length, _stiffness) | |
return { | |
p1 = _p1, | |
p2 = _p2, | |
length = _length, | |
stiffness = _stiffness, | |
update = function(this) | |
dx = this.p2.x - this.p1.x | |
dy = this.p2.y - this.p1.y | |
d2 = sqrt(dx*dx + dy*dy) | |
d3 = (d2 - this.length)/d2 | |
if (not(this.p1.locked)) then | |
this.p1.x += 0.5*dx*d3*this.stiffness | |
this.p1.y += 0.5*dy*d3*this.stiffness | |
end | |
if (not(this.p2.locked)) then | |
this.p2.x -= 0.5*dx*d3*this.stiffness | |
this.p2.y -= 0.5*dy*d3*this.stiffness | |
end | |
end | |
} | |
end | |
function particle(_x,_y) | |
return { | |
x = _x, | |
y = _y, | |
x1 = _x, | |
y1 = _y, | |
locked = false, | |
shake = false, | |
lock = function(this) | |
this.locked = true | |
end, | |
unlock = function(this) | |
this.locked = false | |
end, | |
shakeit = function(this) | |
this.shake=true | |
end, | |
update = function(this, ax, ay, dt) | |
if (not(this.locked)) then | |
this.tempx = this.x | |
this.tempy = this.y | |
local pos={x=this.x,y=this.y} | |
local vel={ | |
x=this.x-this.x1+ax*dt*dt, | |
y=this.y-this.y1+ay*dt*dt | |
} | |
local col={ | |
w=2,h=2, | |
flags={0}, | |
ox=0,oy=0, | |
bounce=true} | |
-- colision with map | |
new_pos=map_collision(pos,vel,col) | |
this.x=new_pos.x | |
this.y=new_pos.y | |
if new_pos.hit then | |
if this.shake then | |
screenshake:start(4) | |
end | |
end | |
this.x1 = this.tempx | |
this.y1 = this.tempy | |
end | |
end | |
} | |
end | |
------------------------------- | |
---------- textbox ------------ | |
------------------------------- | |
-- call this before you start using dtb. | |
-- optional parameter is the number of lines that are displayed. default is 3. | |
function dtb_init(numlines) | |
dtb_queu={} | |
dtb_queuf={} | |
dtb_numlines=3 | |
if numlines then | |
dtb_numlines=numlines | |
end | |
_dtb_clean() | |
end | |
-- this will add a piece of text to the queu. the queu is processed automatically. | |
function dtb_disp(txt,callback) | |
local lines={} | |
local currline="" | |
local curword="" | |
local curchar="" | |
local upt=function() | |
if #curword+#currline>29 then | |
add(lines,currline) | |
currline="" | |
end | |
currline=currline..curword | |
curword="" | |
end | |
for i=1,#txt do | |
curchar=sub(txt,i,i) | |
curword=curword..curchar | |
if curchar==" " then | |
upt() | |
elseif #curword>28 then | |
curword=curword.."-" | |
upt() | |
end | |
end | |
upt() | |
if currline~="" then | |
add(lines,currline) | |
end | |
add(dtb_queu,lines) | |
if callback==nil then | |
callback=0 | |
end | |
add(dtb_queuf,callback) | |
end | |
-- functions with an underscore prefix are ment for internal use, don't worry about them. | |
function _dtb_clean() | |
dtb_dislines={} | |
for i=1,dtb_numlines do | |
add(dtb_dislines,"") | |
end | |
dtb_curline=0 | |
dtb_ltime=0 | |
end | |
function _dtb_nextline() | |
dtb_curline+=1 | |
for i=1,#dtb_dislines-1 do | |
dtb_dislines[i]=dtb_dislines[i+1] | |
end | |
dtb_dislines[#dtb_dislines]="" | |
sfx(2) | |
end | |
function _dtb_nexttext() | |
if dtb_queuf[1]~=0 then | |
dtb_queuf[1]() | |
end | |
del(dtb_queuf,dtb_queuf[1]) | |
del(dtb_queu,dtb_queu[1]) | |
_dtb_clean() | |
sfx(2) | |
end | |
-- make sure that this function is called each update. | |
function dtb_update() | |
if #dtb_queu>0 then | |
if dtb_curline==0 then | |
dtb_curline=1 | |
end | |
local dislineslength=#dtb_dislines | |
local curlines=dtb_queu[1] | |
local curlinelength=#dtb_dislines[dislineslength] | |
local complete=curlinelength>=#curlines[dtb_curline] | |
if complete and dtb_curline>=#curlines then | |
if btnp(4) then | |
_dtb_nexttext() | |
return | |
end | |
elseif dtb_curline>0 then | |
dtb_ltime-=1 | |
if not complete then | |
if dtb_ltime<=0 then | |
local curchari=curlinelength+1 | |
local curchar=sub(curlines[dtb_curline],curchari,curchari) | |
dtb_ltime=1 | |
if curchar~=" " then | |
sfx(rnd({0,1,2})) | |
end | |
if curchar=="." then | |
dtb_ltime=6 | |
end | |
dtb_dislines[dislineslength]=dtb_dislines[dislineslength]..curchar | |
end | |
if btnp(4) then | |
dtb_dislines[dislineslength]=curlines[dtb_curline] | |
end | |
else | |
if btnp(4) then | |
_dtb_nextline() | |
end | |
end | |
end | |
end | |
end | |
-- make sure to call this function everytime you draw. | |
function dtb_draw() | |
if #dtb_queu>0 then | |
local dislineslength=#dtb_dislines | |
local offset=0 | |
if dtb_curline<dislineslength then | |
offset=dislineslength-dtb_curline | |
end | |
palt(0, false) | |
palt(11, true) | |
map(0,28,0,0,32,5) | |
palt(0, true) | |
palt(11, false) | |
if dtb_curline>0 and #dtb_dislines[#dtb_dislines]==#dtb_queu[1][dtb_curline] then | |
print("\x8e",114,28,7) | |
end | |
for i=1,dislineslength do | |
print( | |
dtb_dislines[i], | |
6, | |
i*8+23-(dislineslength+offset)*8,7) | |
end | |
end | |
end | |
------------------------------- | |
--------- transition ---------- | |
------------------------------- | |
transition={ | |
r=0,g=0,x=0,y=0,a=false | |
} | |
function transition:start(x,y) | |
self.r=0 | |
self.g=8 | |
self.x=x | |
self.y=y | |
self.a=true | |
end | |
function transition:update() | |
if not self.a then | |
return | |
end | |
if self.r<128 and self.g>0 then | |
self.r+=self.g | |
elseif self.r>=127 and self.g>0 then | |
self.g*=-1 | |
elseif self.r>0 and self.g<0 then | |
self.r+=self.g | |
elseif self.r<=1 and self.g<0 then | |
self.a=false | |
end | |
end | |
function transition:draw() | |
if self.a then | |
circfill( | |
self.x,self.y,self.r,0) | |
end | |
end | |
-->8 | |
-- built ins | |
physics=new_physics() | |
physics2=new_physics() | |
function _init() | |
dtb_init() | |
physics:reset() | |
physics2:reset() | |
physics:setforce(40,0) | |
physics2:setforce(0,0) | |
gstate:add("game",gs_game) | |
gstate:add("start",gs_start) | |
gstate:add("over",gs_over) | |
gstate:add("title",gs_title) | |
gstate:switch("title") | |
end | |
function _update60() | |
screenshake:update() | |
dtb_update() | |
physics:update() | |
physics2:update() | |
gstate:update() | |
transition:update() | |
end | |
function _draw() | |
gstate:draw() | |
transition:draw() | |
dtb_draw() | |
end | |
-->8 | |
-- main game | |
------------------------------- | |
--------- components ---------- | |
------------------------------- | |
function control() | |
return cmp("control",{}) | |
end | |
function qtip(c,l,sx,sy) | |
assert(c>1) | |
local points={} | |
for i=1,c do | |
local p=particle(sx+l*i,sy) | |
if (i==c) then p:shakeit() end | |
if (i==1) then p:lock() end | |
physics:addparticle(p) | |
add(points,p) | |
if i>1 then | |
local p1=points[i-1] | |
local p2=points[i] | |
local s=spring(p1,p2,l,1) | |
physics:addspring(s) | |
end | |
end | |
return cmp("qtip", | |
{ points=points, | |
tip=points[c], | |
atch={}, | |
hide=false }) | |
end | |
function earwax(sx,sy) | |
local points={} | |
local num=2 | |
for i=1,num do | |
local rx=rnd()*5+sx | |
local ry=rnd()*5+sy | |
local p=particle(rx,ry) | |
if (i==1) then p:lock() end | |
p.ro=rnd() | |
p.rs=rnd() | |
p.c=rnd({4,9}) | |
physics2:addparticle(p) | |
add(points,p) | |
end | |
for x=1,num do | |
for y=1,num do | |
if (x > y) then | |
local s=spring( | |
points[x], | |
points[y], | |
dist(points[x],points[y]), | |
0.5) | |
physics2:addspring(s) | |
end | |
end | |
end | |
return cmp("earwax", | |
{ points=points, | |
num=num, | |
attached=false }) | |
end | |
function texture_circ( | |
rmin,rmax,f,s,of,c) | |
return cmp("texture_circ", | |
{ rmin=rmin, | |
rmax=rmax, | |
fill=f, | |
speed=s, | |
offset=of, | |
c=c}) | |
end | |
------------------------------- | |
--------- systems ---------- | |
------------------------------- | |
controlable=sys( | |
{ "control","vel","speed" }, | |
function(e) | |
if not cleaning and #dtb_queu==0 then | |
local s=e.speed | |
if btn(⬆️) and q_tip.pos.y>20 then | |
e.vel.y=-s.y | |
end | |
if btn(⬇️) and q_tip.pos.y<100 then | |
e.vel.y=s.y | |
end | |
if btn(⬅️) and q_tip.pos.x>30 then | |
e.vel.x=-s.x | |
end | |
if btn(➡️) then | |
e.vel.x=s.y | |
end | |
end | |
end) | |
control_cleaning=sys( | |
{ "control","vel","speed" }, | |
function(e,w) | |
if not cleaning and | |
#dtb_queu==0 then | |
if btnp(❎) or btnp(🅾️) then | |
q_tip.qtip.hide=true | |
cleaning=true | |
add(w,mk_timer(60,function() | |
q_tip.speed.x=ogs.x | |
q_tip.speed.y=ogs.y | |
start_minigame() | |
end)) | |
end | |
end | |
end | |
) | |
qtip_u=sys( | |
{ "qtip","pos","speed","vel" }, | |
function(e) | |
if e.qtip.hide and e.pos.x>0 then | |
e.vel.x-=0.5 | |
e.vel.y=0 | |
elseif e.qtip.hide and e.pos.x<-70 then | |
e.vel.x=0 | |
end | |
e.qtip.points[1].x=e.pos.x | |
e.qtip.points[1].y=e.pos.y | |
end) | |
camera_follow=sys( | |
{ "qtip","pos" }, | |
function(e) | |
local cam_x=peek2(0x5f28) | |
local cam_y=peek2(0x5f2a) | |
local offset_x=e.pos.x-24 | |
if offset_x>0 then | |
camera(offset_x+cam_x,cam_y) | |
end | |
end) | |
qtip_d=sys( | |
{ "qtip","pos" }, | |
function(e) | |
local pos=e.pos | |
local points=e.qtip.points | |
-- qtip | |
for i,p in pairs(points) do | |
if i>1 then | |
local x_offset=0 | |
if i==2 then | |
x_offset=6 | |
end | |
pb=points[i-1] | |
for j=0,7 do | |
tline(pb.x+x_offset,pb.y+j-3, | |
p.x,p.y+j-3, | |
1/8,j/8) | |
end | |
end | |
if i==#points then | |
map(0,1,p.x-4,p.y-3,2,1) | |
end | |
end | |
-- arm | |
map(0,6,pos.x-126,pos.y-3,12,1) | |
-- hand | |
map(2,2,pos.x-30,pos.y-19,5,4) | |
end) | |
earwax_u=sys( | |
{ "earwax","pos" }, | |
function(e) | |
local tip=q_tip.qtip.tip | |
if e.earwax.attached then | |
e.pos.x=tip.x+4 | |
e.pos.y=tip.y | |
elseif time()>1 then | |
local q_touch=overlap( | |
e,e.pos.x,e.pos.y, | |
{pos={x=tip.x,y=tip.y}, | |
col={w=10,h=10}} | |
) | |
if q_touch then | |
sfx(3,3) | |
e.earwax.attached=true | |
add(q_tip.qtip.atch,e) | |
e.vel.x=0 | |
e.vel.y=0 | |
q_tip.speed.x=max( | |
0.1,q_tip.speed.x-0.1) | |
q_tip.speed.y=max( | |
0.1,q_tip.speed.y-0.1) | |
end | |
end | |
e.earwax.points[1].x=e.pos.x | |
e.earwax.points[1].y=e.pos.y | |
end) | |
earwax_d=sys( | |
{ "earwax","col","pos" }, | |
function(e) | |
local t=time() | |
local points=e.earwax.points | |
for i,p in pairs(points) do | |
r=(4+p.ro*1.5)+sin(t*p.rs)/2 | |
circfill(p.x,p.y,r,p.c) | |
end | |
-- rect(e.pos.x,e.pos.y, | |
-- e.pos.x+e.col.w, | |
-- e.pos.y+e.col.h,8) | |
end) | |
texture_circ_u=sys( | |
{ "texture_circ" }, | |
function(e) | |
local tc=e.texture_circ | |
e.texture_circ.r=tc.rmin | |
+(sin((tc.offset+time())*tc.speed) | |
*tc.rmax) | |
end) | |
texture_circ_d=sys( | |
{ "pos","texture_circ" }, | |
function(e) | |
local p=e.pos | |
local tc=e.texture_circ | |
fillp(e.texture_circ.fill) | |
circfill(p.x,p.y,tc.r,tc.c) | |
fillp(█) | |
end) | |
function draw_ui() | |
local cam_x=peek2(0x5f28) | |
-- box | |
palt(0, false) | |
palt(11, true) | |
map(0,24,cam_x,106,32,3) | |
palt(0, true) | |
palt(11, false) | |
circfill(128+cam_x,0,21,9) | |
circfill(128+cam_x,0,20,0) | |
print( | |
"\^p"..wax_count.."\^-p", | |
114+cam_x,2,9) | |
-- attached wax count | |
if cleaning and minigame then | |
minigame:draw(cam_x) | |
else | |
print( | |
"\^t ● weight: \^-t", | |
4+cam_x,113,9) | |
local ach=#q_tip.qtip.atch | |
local c=11 | |
if (ach>1) c=10 | |
if (ach>2) c=9 | |
if (ach>3) c=8 | |
circfill(55+cam_x,117,ach,c) | |
-- time | |
local t=flr(score/60) | |
print( | |
"\^t ⧗ time: \f7"..t.."\-f \^-t", | |
65+cam_x,113,9) | |
end | |
end | |
------------------------------- | |
--------- factories ---------- | |
------------------------------- | |
ogs={x=1.2,y=0.9} | |
function mk_qtip(x,y,l) | |
local q=ent() | |
q+=pos(x,y) | |
q+=qtip(2,l,x+20,y,false) | |
q+=vel(0,0) | |
q+=speed(ogs.x,ogs.y) | |
q+=fric(0.95) | |
q+=control() | |
q+=col(8,8,{0},0,0) | |
return q | |
end | |
function mk_earwax(xs,ys,xw,yw) | |
local e=ent() | |
local x=xs+rnd(xw) | |
local y=ys+rnd(yw) | |
e+=pos(x,y) | |
e+=col(4,4,{0},0,0,true) | |
e+=vel((rnd()-0.5)/5,(rnd()-0.5)/1) | |
e+=earwax(x,y) | |
return e | |
end | |
function mk_bg_circ() | |
local e=ent() | |
local x=rnd(128) | |
local y=rnd(128) | |
e+=pos(x,y) | |
local f=rnd({…,∧,░,ˇ}) | |
local s=0.02 | |
local of=rnd(100) | |
local c=rnd({8,8,8,14}) | |
e+=texture_circ(10,20,f,s,of,c) | |
return e | |
end | |
-- gamestate | |
gs_game={world={}} | |
score=0 | |
function gs_game:init() | |
physics:reset() | |
physics2:reset() | |
music(6) | |
score=0 | |
self.world={} | |
cleaning=false | |
wax_count=30 | |
ogs={x=1.2,y=0.9} | |
map_offset={x=0,y=-7} | |
init_minigames() | |
q_tip=mk_qtip(-20,45,48) | |
add(self.world,q_tip) | |
for i=1,wax_count do | |
add(self.world,mk_earwax( | |
64,32,32*8,64)) | |
end | |
for i=1,8 do | |
add(self.world,mk_bg_circ()) | |
end | |
end | |
function gs_game:update() | |
score+=1 | |
timer_u(self.world,self.world) | |
move(self.world) | |
controlable(self.world) | |
control_cleaning(self.world,self.world) | |
friction(self.world) | |
anim_u(self.world) | |
qtip_u(self.world) | |
earwax_u(self.world) | |
texture_circ_u(self.world) | |
if cleaning and minigame then | |
minigame:update(self.world) | |
end | |
if wax_count==0 then | |
if not transition.a then | |
transition:start(64,64) | |
add(self.world, | |
mk_timer(20,function() | |
gstate:switch("over") | |
end)) | |
end | |
end | |
end | |
function gs_game:draw() | |
cls(1) | |
texture_circ_d(self.world) | |
anim_d(self.world) | |
image_d(self.world) | |
camera_follow(self.world) | |
qtip_d(self.world) | |
earwax_d(self.world) | |
map(0,7,0,0,32*4,32) | |
draw_ui() | |
end | |
-->8 | |
-- minigame utils | |
colors={3,4,5,6,7,8,9,10,11,12,13,14,15} | |
buttons={⬅️,➡️,⬆️,⬇️,❎,🅾️} | |
buttons_chr={"⬅️","➡️","⬆️","⬇️","❎","🅾️"} | |
minigames={"mashit","pmatch","timeit"} | |
minigame=nil | |
minigame_done=true | |
function init_minigames() | |
minigame=nil | |
minigame_done=true | |
end | |
function start_minigame() | |
local choice=rnd(minigames) | |
minigame_done=false | |
if choice=="mashit" then | |
minigame=mashit | |
elseif choice=="pmatch" then | |
minigame=pmatch | |
elseif choice=="timeit" then | |
minigame=timeit | |
else | |
minigame=mashit | |
end | |
minigame:init() | |
end | |
function complete_minigame(w) | |
if minigame_done then | |
return | |
end | |
minigame_done=true | |
sfx(5) | |
for e in all(q_tip.qtip.atch) do | |
del(w,e) | |
wax_count-=1 | |
end | |
q_tip.qtip.atch={} | |
q_tip.qtip.hide=false | |
q_tip.vel.x=5 | |
add(w,mk_timer(40,function() | |
cleaning=false | |
minigame=nil | |
end)) | |
end | |
-->8 | |
-- minigames | |
mashit={} | |
function mashit:complete() | |
return self.count>=self.need | |
end | |
function mashit:init() | |
self.c=rnd(colors) | |
self.need=10 | |
self.count=0 | |
self.choice=rnd({1,2,3,4,5,6}) | |
self.button=buttons[self.choice] | |
self.button_chr=buttons_chr[self.choice] | |
end | |
function mashit:update(w) | |
if self:complete() then | |
complete_minigame(w) | |
elseif btnp(self.button) then | |
self.count+=1 | |
self.c=rnd(colors) | |
screenshake:start(4) | |
sfx(3,3) | |
end | |
end | |
function mashit:draw(cam_x) | |
local togo=self.need-self.count | |
print( | |
"\^t mash "..self.button_chr.."!! "..togo.."\^-t", | |
4+cam_x,113,self.c) | |
end | |
timeit={v=0,seed=0,go=true} | |
function timeit:init() | |
self.go=true | |
self.seed=rnd(60) | |
self.v=0 | |
self.pick=nil | |
self.d=20+rnd(20) | |
end | |
function timeit:update(w) | |
if self.go then | |
self.v=30+sin((self.seed+time())/3)*30 | |
end | |
if btnp(❎) then | |
if self.v>self.d-5 and | |
self.v<self.d+5 then | |
self.go=false | |
complete_minigame(w) | |
screenshake:start(4) | |
sfx(4,3) | |
end | |
end | |
end | |
function timeit:draw(cam_x) | |
print( | |
"\^t hit ❎ in\^-t", | |
4+cam_x,113,9) | |
rectfill( | |
47+cam_x,114, | |
47+8+cam_x,114+8,11) | |
rect(60,113,120,122,7) | |
rectfill( | |
60+self.d-5,113, | |
60+self.d+5,122,11) | |
line( | |
60+self.v,112, | |
60+self.v,123,7) | |
end | |
pmatch={} | |
function pmatch:complete() | |
return self.i>#self.pattern | |
end | |
function pmatch:init() | |
self.pattern={} | |
self.pattern_chr={} | |
self.i=1 | |
for i=1,5 do | |
local j=rnd({1,2,3,4,5,6}) | |
add(self.pattern,buttons[j]) | |
add(self.pattern_chr,buttons_chr[j]) | |
end | |
end | |
function pmatch:update(w) | |
if self:complete() then | |
complete_minigame(w) | |
elseif btnp(self.pattern[self.i]) then | |
self.i+=1 | |
screenshake:start(4) | |
sfx(4,3) | |
end | |
end | |
function pmatch:draw(cam_x) | |
print( | |
"\^t match: \^-t", | |
4+cam_x,113,9) | |
for i,p in pairs(self.pattern_chr) do | |
local c=9 | |
if self.i>i then | |
c=11 | |
end | |
print( | |
"\^t\^w"..p.."\^-t\^w", | |
20+cam_x+(i*16),113,c) | |
end | |
end | |
-->8 | |
-- starting screen | |
gs_start={world={}} | |
head_u=sys({"head"}, | |
function(e,w) | |
local t=q_tip.qtip.tip | |
local d=dist(e.head,t) | |
if d<16 then | |
if not transition.a and time()>1then | |
transition:start(e.head.x,e.head.y) | |
add(w,mk_timer(40,function() | |
gstate:switch("game") | |
end)) | |
end | |
end | |
end) | |
function mk_head(x,y,sx) | |
local h=ent() | |
h+=pos(x,y) | |
h+=cmp("head",{x=74,y=90}) | |
h+=image(sx,24,8,8,"map") | |
return h | |
end | |
function gs_start:init() | |
music(2) | |
self.world={} | |
map_offset={x=20,y=32} | |
add(self.world,mk_head(64,64,17)) | |
q_tip=mk_qtip(0,90,20) | |
add(self.world,q_tip) | |
dtb_disp("well hello there. you're probably wondering why im so sad.") | |
dtb_disp("it's these darn ears. they're soooo itchy!! no matter how hard and deep i scratch them, i can never get the itch..") | |
dtb_disp("i dig deeper and deeper, but nothing works.. it's like the itch is on my brain!. i fear this will be the end of me :(") | |
dtb_disp("wait a minute.. you could help me!") | |
dtb_disp("would you help me?...") | |
dtb_disp("you would?!..") | |
dtb_disp("thank you!..") | |
dtb_disp("when you're ready use the d-pad to move your q-tip into my ear.. no need to be shy.") | |
dtb_disp("be sure to collect all the wax.") | |
dtb_disp("press ❎/🅾️ to clear the junk and reload your q-tip. you may have to complete some sort of minigame though... oh also, be sure to watch your q-tip's weight, as gunk will slow you down!") | |
dtb_disp("i'll score you based on how fast you get all the junk in my ears.") | |
dtb_disp("good luck!") | |
end | |
function gs_start:update() | |
timer_u(self.world,self.world) | |
move(self.world) | |
controlable(self.world,self.world) | |
friction(self.world) | |
qtip_u(self.world) | |
timer_u(self.world,self.world) | |
head_u(self.world,self.world) | |
if q_tip.pos.x>100 then | |
q_tip.vel.x=-0.1 | |
end | |
end | |
function gs_start:draw() | |
cls(1) | |
image_d(self.world) | |
qtip_d(self.world) | |
print("insert q-tip into ear",22,10,9) | |
end | |
-->8 | |
-- game over | |
gs_over={world={}} | |
function gs_over:init() | |
music(15) | |
self.world={} | |
local t=flr(score/60) | |
dtb_disp("aaahhh, much better..") | |
dtb_disp("your final time was \^i"..t.."\^-i") | |
dtb_disp("i honestly have no idea if thats good or bad!") | |
dtb_disp("press 🅾️ to get the other ear") | |
add(self.world,mk_head(32,64,26)) | |
end | |
function gs_over:update() | |
timer_u(self.world,self.world) | |
if #dtb_queu==0 then | |
if btnp(🅾️) then | |
if not transition.a then | |
transition:start(64,64) | |
add(self.world, | |
mk_timer(20,function() | |
gstate:switch("game") | |
end)) | |
end | |
end | |
end | |
end | |
function gs_over:draw() | |
cls(1) | |
image_d(self.world) | |
end | |
-->8 | |
-- title | |
gs_title={world={}} | |
function gs_title:init() | |
self.world={} | |
music(0) | |
for i=1,5 do | |
add(self.world,mk_earwax( | |
4,25,30*4,10)) | |
end | |
for i=1,5 do | |
add(self.world,mk_earwax( | |
4,85,30*4,10)) | |
end | |
end | |
function gs_title:update() | |
timer_u(self.world,self.world) | |
if btnp(🅾️) or btnp(❎) then | |
if not transition.a then | |
transition:start(64,64) | |
add(self.world, | |
mk_timer(20,function() | |
gstate:switch("start") | |
end)) | |
end | |
end | |
end | |
function gs_title:draw() | |
cls(1) | |
map(53,24,0,0,32,32) | |
map(36,26,-5,42,32,32) | |
earwax_d(self.world) | |
print("press ❎/🅾️",75,72,9) | |
end | |
__gfx__ | |
00000000222222222222222222222222222222221121211211111111121211210000000000000000000000000000004444444444440000000000000000000000 | |
000000002eeeee2ee2eeee2e2eeeee2eee2eeee22111112111111111211221110000000000000000000044444444444444444444444440000000000000000000 | |
007007002eeee22ee2eeee2e2eeee22eee22eee21121211111111111122212120000000000000000004444444444444444444444444440000000000000000000 | |
00077000222ee2eeeeeeeeee222ee2eeeee2eee21212121211111111212121110000000000000000044444444444444444444444444444400000000000000000 | |
000770002eeee22eeee2eeee2eeee22eeeeeeee22221222211111111222112120000000000000000444444444444444444444444444444440000000000000000 | |
007007002eeeeeeee222e2ee2ee2eeeeeeee22e22122212111111111121221110000000000000000444444444444444444444444444444444000000000000000 | |
000000002ee2eeeee2eeee2e222eee2ee2eee2222228222211111111222211210000000000000004444444444444444444444444444444444000000000000000 | |
0000000022222222222222222eeeeee22eeeeee28282282811111111221221120000000000000004444444444444444444444444444444444000000000000000 | |
00000000222eeee22eeeeee22eeeeee22eeeeee2282888282828882800099bbb0000000000000004444444444444444444444444444444444440000000000000 | |
000000002eeeeee22ee2ee222eeeee2ee22eeee2888228828882288200099bbb0000000000000044444444444444444444444444444444444440000000000000 | |
000000002eeee2222ee2eee22eeee22eee2ee222282888882828888200099bbb000000000000004444444444ffffffffffffffffffff44444444000000000000 | |
999999992eee2ee2222eeee2222ee2eeeeee2ee2888882888888828800099bbb0000000000004444444ffffff77fffffffffffffffff44444444000000000000 | |
999999992eeeeee22eeeeee22eeee22eeeeeeee2888888888828282800099bbb000000000000444444fffff7777fffff77ffffffffffff444444000000000000 | |
bbbbbbbb2ee2eee22eeeeee22eeeeeeeeee2eee2888888888888288200099bbb000000000000444444fff77fffff7777777ffffffffffff44444000000000000 | |
bbbbbbbb2e22eee22eee22222ee2eeeeee22eee2828882882888882800099bbb00000000000044444fffffffff777777777ffffffffffff44444000000000000 | |
bbbbbbbb222222222eeeeee22222222222222222202220222288288200099bbb04444444000044444ffffffff7777777fffffffffffffff44444000444444400 | |
0000000022222222bbbbbbbbbbbbbbbbbbbbbbbb20222022288882828222112104ffffff440044444ffffff77777777777777ffffffffff44444004fff77ff40 | |
00000000ee2eeee2bbb99bbbbbbbbbbbbbb99bbb8288828802888888221221114ffff7ffff4444444fffffff7777ff7ff777fffffffffff4444404ff7777ff40 | |
00000000ee22eee2bbb99bbbbbbbbbbbbbb99bbb8888888828888282822212124ff7777fffff44444ffffffffffffffffffffffffffffff444444fffff777f40 | |
00000000eee2eee2b9999999999999999999999b8888888828888828282121114fff77777fff44444fffffff44fffffffffffffffffffff444444ffffff77f40 | |
00000000eeeeeee2b9999999999999999999999b8888828828888828222212124ffffff777ff44444ffffff44fffffffffffff4fffffff4444444ffffff77f40 | |
00000000eeee22e2bbb999000000000000999bbb2828888802882888821221114fffffff77fff44444ffff444fffffffffffff444fffff444444fffffff7ff40 | |
00000000eeeee2e2bbb990000000000000099bbb8882288228888882222211214fffffff777ff44444fff444ffffffffffffff444444ff444444ffffffffff40 | |
0000000022222222bbb990000000000000099bbb2828882828888828821221124ffffffff77ff44444ff444fffffffffffffffff444444444444ffff44ffff40 | |
0000000022222222bbb99000bbb9900000099bbb8282282822888282221221214fffffffff7ff44444f444fffffffffffffffffffff444444444ffff444fff40 | |
000000002eee2ee2bbb99000bbb9900000099bbb2222822228888888222212124fff4ffffffff44444444ff444444ffffff44444444ff44f4444fffff44fff40 | |
000000002eee2ee2bbb99900bbb9900000999bbb1212221288828282121222114fff4ffffffff444fffff4444444444ffff444444444ffff4444fff7f44fff40 | |
0000000022eeeee2b9999999bbb990009999999b2222122288888828222112224fff4ff7fffff444fffff4444444444fffff44444444fffff444ff77f44ff400 | |
000000002eeeeee2b9999999bbb990009999999b21212121282288282121212104ff4477fffff444fffffff44444f44fffffffff444fffffff44ff77f44ff400 | |
000000002ee222e2bbb99bbbbbb99000bbb99bbb12111211888828881112121104ff44f7fffff444fffffffffffff44ffffffffffffffffffff4ffffff4ff400 | |
000000002ee2e222bbb99bbbbbb99000bbb99bbb11121111828288821211111204ff444774fff44fffff44fffffff44ffff44ffffff4fffffff4ffffff4ff400 | |
000000002eeeeee2bbbbbbbbbbb99000bbbbbbbb12111212282882282112121104ff444ff4fff4fffffff44444444447ffff44444444ffffff444f44ff4ff400 | |
000000000000000000000000000000000000000000000000000000000000000004ff444f44fff4fffffffffffffff4477fff44ffffffffffff444f444ffff400 | |
000000000000000000000000000000000000000000000000000000000000000004ff4ff444fff4fffffffffffffff4f77fff44ffffffffffff444f444ffff400 | |
777777770000000000000ff0000000000000000000000000000000000000000004fffff44ffff4ffffffffffffff44f77ffff4ffffffffffff444ff444fff400 | |
77777777000000ff0000fff00000000000000000000000000000000000000000004ffff44ffff4ffffffffffff444f777ffff4444fffffffff444fff44fff400 | |
6666766600000fff0000fff00000000000000000000000000000000000000000004fff444ffff4fffffffffff4444f777ffff44444ffffffff444ffff4fff400 | |
0000000000000fff0000ff000000000000000000000000000000000000000000004ffffffffff4ffffffffff444f777777fffff444ffffffff444ffffffff400 | |
0000000000000fff000fff000000000000000000000000000000000000000000004ffffffffff4ffffffffff44ffffffffffffff44ffffffff444ffffffff400 | |
0000000000000fff000fff000000000000000000000000000000000000000000004ffffffffff4ffffffffff44ffffffffffffff44ffffffff444ffffffff400 | |
00000000000000ff000ff0000000000000000000444ffffffffffff444ffffff0044ffffffff44ffffffffff444ffffffffffff444fffffff4444ffffffff400 | |
0000000000ff00fff0fff000ffff000000000000f444444ffffff444ffffffff0044ffffffff44fffffffffff444444ffffff444fffffffff44444fffffff400 | |
0000000000fff00ff0ff4fffffffff0000000000ffffffffffffffffffffffff0044fffffff444fffffffffffffffffffffffffffffffffff444044ffffff400 | |
0000000000fffffff4ffffffffffffff00000000ffffffffffffffffffffffff0004fffff444004ffffffffffffffffffffffffffffffffff400004fffff4400 | |
00000000000ffffff4fffffff000ffff00000000ffffffffffffffffffffffff000444444440004fffffffffff44444444444444fffffffff400004444440000 | |
000000000000044fffffff00000000ff00000000ff44fffffffffff44fffffff000044444000004ffffffffff44444ffffff444444fffffff400000000000000 | |
000000000000000fffffff00000000ff00000000ff44444fffff44444fffffff0000000000000004ffffffff4fffffffffffffffff4ffffff400000000000000 | |
0000000000000000ffffff00000000fff0000000ff444444444444444fffffff0000000000000004ffffffffffffff444444ffffff4ffffff400000000000000 | |
00000000000000004fffff00000777fff6000000fff4444444444444ffffffff0000000000000004ffffffff4ffffff444ffffffffffffff4400000000000000 | |
00000000ffffffffffffff000077777777700000ffffff4444444ffffffffff400000000000000004ffffffffffffff444fffffffffffff44000000000000000 | |
00000000ffffffffffffff000777777777770000fffffffffffffffffffffff4000000000000000004ffffffffffffff44fffffffffffff40000000000000000 | |
00000000ffffffffffffff000777777777760000fffffff44444fffffffff440000000000000000000444ffffffffffffffffffffffff4400000000000000000 | |
00000000ffffffffffffff0007777777777600004fffffffffffffffff4442200000000000000000222244444fffffffffffffffff4442200000000000000000 | |
0000000044444444ffffff000077777777760000444444444444444422222222000000000000022222ee22244444444444444444222222222200000000000000 | |
000000000000000044ffff000077777776600000ffffffffffffffff2222222200000000000222ee22ee2222ffffffffffffffff222222222222200000000000 | |
00000000000000000000ff0000066666600000002ffffffffffffff22222ee22000000000222eeee222eee222ffffffffffffff22222ee2222eee20000000000 | |
00000067777770000000ff000000fffff6000000000000670000000000000000000000022eeeeeeee22eeee222fffffffffffff222eeee222eeeee2000000000 | |
00007777777777000000fff00000ffff777000000000777700000000000000000000002eeeeeeeeeee2eeee22222fffffffff2222eeeee22eeeeeee200000000 | |
000077777777777000004ff0000fff0077777777777777770000000000000000000002eeeeeeeeeeee2eeeeee2222ffffff22222eeeee22eeeeeeee200000000 | |
000067777777777000000fff00ffff007776777777776777000000000000000000002eeeeeeeeeeeeeeeeeeeee2222222222222eeeeeeeeeeeeeeeee20000000 | |
0000677777777770000004fffffff0007776666666666777000000000000000000002eeeeeeeeeeeeeeeeeeeeee222222222eeeeeeeeeeeeeeeeeeee20000000 | |
000067777777770000000044ffff00007776000000006777000000000000000000002eeeeeeeeeee222eeeeeeeeeeeeeeeeeeeeeeeeeeeee2eeeeeeee2000000 | |
00000667777777000000000000000000766000000000066700000000000000000002eeeeeeeeeeee222eeeeeeeeeeeeeeeeeeeeeeeeeee222eeeeeeeee200000 | |
00000006666660000000000000000000600000000000000600000000000000000002eeeeeeeeeeee2222eeeeeeeeeeeeeeeeeeeeeeeee2222eeeeeeeee200000 | |
23010101010101010101010101010143000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
50505050505050505050505050505050500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
51515151515151515151515151515151510000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
000c1c2c3c4c5c6c7c8c9cacbcccdcecfc0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
000d1d2d3d4d5d6d7d8d9dadbdcdddedfd0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
000e1e2e3e4e5e6e7e8e9eaebecedeeefe0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
000f1f2f3f4f5f6f7f8f9fafbfcfdfefff0000000000000000000000000000000000000000000000000000000000000000000000525252525252525252525252 | |
52525252520000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000535353535353535353535353 | |
53535353530000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00000000000ff0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000ff0000fff0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
000fff0000fff0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
000fff0000ff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
000fff000fff00000000000000000000000000000000000000000000777000000000000000000000000000000000000000000000000000000000000000000000 | |
000fff000fff00000000000000000000000000000000000000000007777000000000000000070000000000000000000000000000000000000000000000000000 | |
0000ff000ff000000000000000000000000000000000000000000007777000000000000000000700770000000000000000000000000000000000000000000000 | |
ff00fff0fff000ffff00000000000000000000000077000000000007770000000000000000077070770000000000000000000000000000000000000000000000 | |
fff00ff0ff4fffffffff000000000077770000077777007700000000000000000000000077777077770007777770000077000000000000000000000000000000 | |
fffffff4ffffffffffffff0000000777777000777777007770000000770000077770000777777067777700077777000077700000000000000000000000000000 | |
0ffffff4fffffff000ffff0000000777777007777077007777077000770007777777007777077000776777000777700077770770000000000067777770000000 | |
00044fffffff00000000ff0000007770077077770077007777777000770007777777077770077000770677700007770077777770000000007777777777000000 | |
00000fffffff00000000ff0000007770077077700077007707777000770077700077077700077000770067700000770077077770000077777777777777700000 | |
000000ffffff00000000fff000007700077077000077007700077007770077000077077000077007770770000000770077000770007777776777777777700000 | |
0000004fffff00000777fff600007700777077000077007700077007770077000077077000077007770770000000770077000770077766666777777777700000 | |
ffffffffffff00007777777770007707777077000077007700770007770077000077077000077007700770000000770077007700077600006777777777000000 | |
ffffffffffff00077777777777007777770077000777007700770007770077000777077000777007707770000000770077007700077000000667777777000000 | |
ffffffffffff00077777777777777767600076007777077700770007700077007777077007777077707770000007770777007700776000000006666660000000 | |
ffffffffffff00077777777777777776000077777770077000770007700077777777077777770077777777000007700770007700776000000000000000000000 | |
444444ffffff00007777777776667777000777776770777000677077707777666667077777670777766067700077777770007777770000000000000000000000 | |
00000044ffff00007777777660000677777776660777760000067777777766600077777660677766660067777777677600000777760000000000000000000000 | |
0000000000ff00000666666000000066666600000666600000066666666600007776666000066600000006666666666000000666600000000000000000000000 | |
0000000000ff000000fffff000000000000000000000000000000000000000077777000000000000000000000000000000000000000000000000000000000000 | |
0000000000fff00000ffff0099999999999999999999999999999999999900777067099999999999999999999999999999999999000000000000000000000000 | |
00000000004ff0000fff000999999999999999999999999999999999999007770077099999999999999999999999999999999990000000000000000000000000 | |
00000000000fff00ffff000444444444444444444444444444444444440077700077044444444444444444444444444444444400000000000000000000000000 | |
000000000004fffffff0000000000000000000000000000000000000000077000077000000000000000000000000000000000000000000000000000000000000 | |
00000000000044ffff00000000000000000000000000000000000000000077700776000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000067777760000000000000000000000000000000000000000000000000000000000000 | |
00000000000000000000000000000000000000000000000000000000000006666600000000000000000000000000000000000000000000000000000000000000 | |
__label__ | |
11212112112121121121211211212112112121121121211211212112112121121121211211212112112121121121211211212112112121121121211211212112 | |
21111121211111212111112121111121211111212111112121111121211111212111112121111121211111212111112121111121211111212111112121111121 | |
11212111112121111121211111212111112121111121211111212111112121111121211111212111112121111121211111212111112121111121211111212111 | |
12121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212 | |
22212222222122222221222222212222222122222221222222212222222122222221222222212222222122222221222222212222222122222221222222212222 | |
21222121212221212122212121222121212221212122212121222121212221212122212121222121212221212122212121222121212221212122212121222121 | |
22282222222822222228222222282222222822222228222222282222222822222228222222282222222822222228222222282222222822222228222222282222 | |
82822828828228288282282882822828828228288282282882822828828228288282282882822828828228288282282882822828828228288282282882822828 | |
28288828282888282828882828288828282888282828882828288828282888282828882828288828282888282828882828288828282888282828882828288828 | |
88822882888228828882288288822882888228828882288288822882888228828882288288822882888228828882288288822882888228828882288288822882 | |
28288888282888882828888828288888282888882828888828288888282888882828888828288888282888882828888828288888282888882828888828288888 | |
88888288888882888888828888888288888882888888828888888288888882888888828888888288888882888888828888888288888882888888828888888288 | |
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888 | |
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888 | |
82888288828882888288828882888288828882888288828882888288828882888288828882888288828882888288828882888288828882888288828882888288 | |
21222122212221222122212221222122212221222122212221222122212221222122212221222122212221222122212221222122212221222122212221222122 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111144444111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111444444411111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111114444444441111111111111111111111111111111111111 | |
11111111111111111111111111111111111999111111111111111111111111111111111111111111144444444444111111111111111111111111111111111111 | |
11111111111111111111111111111111199999991111111111111111111111111111111111111111144444444444111111111111111111111111111111111111 | |
11111111111111111111111111111111199999991111111111111111111111111111111111111111144444444444111111111111111111111111111111111111 | |
11111111111111111111111111111111999999999111111111111111111111111111111111111111144444444444111111111111111111111111111111111111 | |
11111111111111111111111111111111999999999411111111111111999991111111111111111111144444444444111111111111111111111111111111111111 | |
11111111111111111111111111114444499999999411111111111119999999911111111111111111114444444441111111111111111111111111111144411111 | |
11111111111111111111111111144444449999994411111111111199999999911111111111111111111444444411111111111111111111111111114444444111 | |
11111111111111111111111111444444444999994111111111111999999999991111111111111111111144444111111111111111111111111111114444444111 | |
11111111111111111111111114444444444499441111111111111999999999991111111111111111111111111111111111111111111111111111144444444491 | |
11111111111111111111111114444444444411111111111111111999999999991111111111111111111111111111111111111111111111111111144444444491 | |
11111111111111111111111114444444444411111111111111111999999999991111111111111111111111111111111111111111111111111111144444444499 | |
11111111111111111111111114444444444411111111111111111999999999991111111111111111111111111111111111111111111111111111114444444999 | |
11111111111111111111111114444444444411111111111111111199999999911111111111111111111111111111111111111111111111111111114444444999 | |
11111111111111111111111111444444444111111111111111111119999999111111111111111111111111111111111111111111111111111111111144499991 | |
11111111111111111111111111444444441111111111111111111111999991111111111111111111111111111111111111111111111111111111111199999991 | |
11111111111111111111111111114444411111111111111111111111111111111111111111111111111111111111111111111111111111111111111111999111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111ff1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
1111111ff1111fff1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
111111fff1111fff1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
111111fff1111ff11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
111111fff111fff11111111111111111111111111111111111111111111777111111111111111111111111111111111111111111111111111111111111111111 | |
111111fff111fff11111111111111111111111111111111111111111117777111111111111111171111111111111111111111111111111111111111111111111 | |
1111111ff111ff111111111111111111111111111111111111111111117777111111111111111111711771111111111111111111111111111111111111111111 | |
111ff11fff1fff111ffff11111111111111111111111177111111111117771111111111111111177171771111111111111111111111111111111111111111111 | |
111fff11ff1ff4fffffffff111111111177771111177777117711111111111111111111111177777177771117777771111177111111111111111111111111111 | |
111fffffff4ffffffffffffff1111111777777111777777117771111111771111177771111777777167777711177777111177711111111111111111111111111 | |
1111ffffff4fffffff111ffff1111111777777117777177117777177111771117777777117777177111776777111777711177771771111111111167777771111 | |
11111144fffffff11111111ff1111117771177177771177117777777111771117777777177771177111771677711117771177777771111111117777777777111 | |
11111111fffffff11111111ff1111117771177177711177117717777111771177711177177711177111771167711111771177177771111177777777777777711 | |
111111111ffffff11111111fff111117711177177111177117711177117771177111177177111177117771771111111771177111771117777776777777777711 | |
1111111114fffff11111777fff611117711777177111177117711177117771177111177177111177117771771111111771177111771177766666777777777711 | |
fffffffffffffff11117777777771117717777177111177117711771117771177111177177111177117711771111111771177117711177611116777777777111 | |
fffffffffffffff11177777777777117777771177111777117711771117771177111777177111777117717771111111771177117711177111111667777777111 | |
fffffffffffffff11177777777777777767611176117777177711771117711177117777177117777177717771111117771777117711776111111116666661111 | |
fffffffffffffff11177777777777777776111177777771177111771117711177777777177777771177777777111117711771117711776111111111111111111 | |
444444444ffffff11117777777776667777111777776771777111677177717777666667177777671777766167711177777771117777771111111111111111111 | |
11111111144ffff11117777777661111677777776661777761111167777777766611177777661677766661167777777677611111777761111111111111111111 | |
1111111111111ff11111666666111111166666611111666611111166666666611117776666111166611111116666666666111111666611111111111111111111 | |
1111111111111ff111111fffff111111111111111111111111111111111111111177777111111111111111111111111111111111111111111111111111111111 | |
1111111111111fff11111ffff1199999999999999999999999999999999999911777167199999999999999999999999999999999999111111111111111111111 | |
11111111111114ff1111fff111999999999999999999999999999999999999117771177199999999999999999999999999999999991111111111111111111111 | |
11111111111111fff11ffff111444444444444444444444444444444444441177711177144444444444444444444444444444444411111111111111111111111 | |
111111111111114fffffff1111111111111111111111111111111111111111177111177111111111111111111111111111111111111111111111111111111111 | |
11111111111111144ffff11111111111111111111111111111111111111111177711776111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111167777761111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111116666611111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111119999911111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111199999991111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111999999999111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111119999999999911111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111119999999999911111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111119999999999911111111111111111111111111111111111111111111111111144411111111111111111111111111111111111111 | |
11111111111111111111111119999999999911111111111111111111111111111111111111111111111114444444111111111111111111111111111111111111 | |
11111111111111111111111119999999999911111111111111111111111111111111111111111111111114444444999111111111111111111111111111111111 | |
11111111111111111111111111999999999111111111111111111111111111111111111111111111111144444444499991111111111111111111111111111111 | |
11111111111111111111111114499999991111111111111111111999111111111111111114444411111144444444499991111111111111111111111111111111 | |
11111111111111111111111444449999941111111111111111199999991111111111111144444441111144444444499999111111111111111111111111111111 | |
11111111111111111111111444444444441111111111111111199999991111111111111444444444111114444444999999111111111111111111111111111111 | |
11111111111111111111114444444444411111111111111111999999999111111111114444444444491114444444999999111111111111111111111111111111 | |
11111111111111111111444444444444411111111111111111999999999111111111114444444444491111144499999991111111111111111111111111111111 | |
11111111111111111111444444444441111111111111111111999999999111111111114444444444499111111199999991111111111111111111111111111111 | |
11111111111111111114444444444411111111111111111111199999991111111111114444444444499111111111999111111111111111111111111111111111 | |
11111111111111111114444444444411111111111111111111199999991111111111114444444444499111111111111111111111111111111111111111111111 | |
11111111111111111114444444441111111111111111111111111999111111111111111444444444991111111111111111111111111111111111111111111111 | |
11111111111111111111444444411111111111111111111111111111111111111111111144444449991111111111111111111111111111111111111111111111 | |
11111111111111111111444444411111111111111111111111111111111111111111111114444499111111111111111111111111111111111111111111111111 | |
11111111111111111111114441111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 | |
21222122212221222122212221222122212221222122212221222122212221222122212221222122212221222122212221222122212221222122212221222122 | |
82888288828882888288828882888288828882888288828882888288828882888288828882888288828882888288828882888288828882888288828882888288 | |
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888 | |
88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888 | |
88888288888882888888828888888288888882888888828888888288888882888888828888888288888882888888828888888288888882888888828888888288 | |
28288888282888882828888828288888282888882828888828288888282888882828888828288888282888882828888828288888282888882828888828288888 | |
88822882888228828882288288822882888228828882288288822882888228828882288288822882888228828882288288822882888228828882288288822882 | |
28288828282888282828882828288828282888282828882828288828282888282828882828288828282888282828882828288828282888282828882828288828 | |
82822828828228288282282882822828828228288282282882822828828228288282282882822828828228288282282882822828828228288282282882822828 | |
22228222222282222222822222228222222282222222822222228222222282222222822222228222222282222222822222228222222282222222822222228222 | |
12122212121222121212221212122212121222121212221212122212121222121212221212122212121222121212221212122212121222121212221212122212 | |
22221222222212222222122222221222222212222222122222221222222212222222122222221222222212222222122222221222222212222222122222221222 | |
21212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121 | |
12111211121112111211121112111211121112111211121112111211121112111211121112111211121112111211121112111211121112111211121112111211 | |
11121111111211111112111111121111111211111112111111121111111211111112111111121111111211111112111111121111111211111112111111121111 | |
12111212121112121211121212111212121112121211121212111212121112121211121212111212121112121211121212111212121112121211121212111212 | |
__gff__ | |
0001010101010101000000000000000000010101010101000000000000000000000100000001010100000000000000000001000000010101000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
__map__ | |
4040404040404040404040404040400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
7071000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000004142000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000005152530000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
6161616162636400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000072730000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
6161616161616161616161616161616161000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
1515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515162706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010221262706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000000003101020204262706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000000001201210314262706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000000011403041304262706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000003020412120314262706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000012311212121321262706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000013141212130221262706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000000001212030204262706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000114110114262706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
2525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525362706060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
3535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353706060606060606060606060600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
222323232323232323232323232323240008090a0b0c0d0e0f0008090a0b0c0d0e0f0f000000000000000000000000000000000005050505050505050505050505050505050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
332020202020202020202020202020170018191a1b1c1d1e1f0018191a1b1c1d1e1f00000000000000000000000000000000000015151515151515151515151515151515150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
321010101010101010101010101010340028292a2b2c2d2e2f0028292a2b2c2d2e2f000000c0c1c2c3c4c5c6c7c8c9cacbcccdcecf000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
000000000000000000000000000000000038393a3b3c3d3e3f0038393a3b3c3d3e3f000000d0d1d2d3d4d5d6d7d8d9dadbdcdddedf000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
222323232323232323232323232323240048494a4b4c4d4e4f0048494a4b4c4d4e4f000061e0e1e2e3e4e5e6e7e8e9eaebecedeeef000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
332020202020202020202020202020170058595a5b5c5d5e5f0058595a5556575e5f000000f0f1f2f3f4f5f6f7f8f9fafbfcfdfeff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
332020202020202020202020202020170068696a6b6c6d6e6f0068696a6566676e6f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
332020202020202020202020202020170078797a7b7c7d7e7f0078797a7b7c7d7e7f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
__sfx__ | |
000100002a5402e54038540000002300033000130000d0000800005000200001a00016000100000f0000e0000e0000d0000c0000b000000000000000000000000000000000000000000000000000000000000000 | |
00010000225402a540365400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
000100001854021540305400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
120100003d6203c630336401c64019640196401d640246302b6302e6202f6202e6202b62026610206101b610166100c610016502e600346000000000000000000000000000000000000000000000000000000000 | |
290200002c0502c0502c0502c05038050380503805038050380000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
00090000305502b540265302b52030540325503456034575000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
0120000000055345211d62500055070551d625345000705500055000001d6250705500000070551d6250705500055345211d62500055070551d625000000705500055000001d62507055000001d6251d62507055 | |
012000001b1511c1511c1521c1550000000000000001f154221512215222156211502115021155180001e1511f1511c1511815024151241522415122141221502215022140221350000000000000000000000000 | |
5510002030755307153575535715367553671537755377153a7553a7153775537715347553471530755307152e7552e715307552e715347553471530755307152e7552e715307552e71534755347153775537715 | |
a11000200000030755307153575535715367553671537755377153a7553a7153775537715347553471530755307152e7552e715307552e715347553471530755307152e7552e715307552e715347553471537755 | |
0120000005055345211d625050550c0551d625345000c05505055000001d6250c055000000c0551d6250c05505055345211d625050550c0551d625345000c05505055000001d6250c055000000c0550b0550a055 | |
012000001d1511d1512115024150271512715227155000002915129151291512d1512715127152261512415123150241501d15121150241512715127152271502714027132271252210000000000000000000000 | |
911c00000235500000000000000000000000000000000000000000235500000000000235500000023550000002355023000000000000000000000002300023000000002355000000000002355000000235500000 | |
911c00002135500000000000000000000000000000000000000002135500000000002135500000213550000022355023000000000000000000000002300023000000022355000000000024355000002235500000 | |
911c00002a355000000000000000000000000000000000000000026355000000000026355000002a355000002b35502300000000000000000000000230002300000002e35500000000002c355000002935500000 | |
911c00000035500000000000000000000000000000000000000000035500000000000035500000003550000000355023000000000000000000000002300023000000000355000000000000355000000135500000 | |
911c00001f35500000000000000000000000000000000000000001f35500000000001f355000001f355000001f355023000000000000000000000002300023000000022355000000000021355000002035500000 | |
911c0000283550000000000000000000000000000000000000000243550000000000283550000024355000002935502300000000000000000000000230002300000002b355000000000029355000002635500000 | |
920d002010610156301a6401e640226302562027620276402665025640216201e6201a64016620136101161010610106101063011640166501b6402264026620296102a6102861027630246401f6401a63012620 | |
011800000c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b4550c0231b455 | |
01180000003501f655073501f655003501f655073501f655003501f655073501f655003501f655073501f655003501f655073501f655003501f655073501f655003501f655073501f655003501f655073501f655 | |
01180000000002b5553053527555305352b5553053527555305352b5553053527555305352b5553053527555305352b5553053527555305352b5553053527555305352b5553053527555305352b5553053527555 | |
01180000053501f655053501f655053501f655053501f655023501f655023501f655023501f655023501f655073501f655073501f655073501f655073501f655073501f655053501f655033501f655023501f655 | |
011800000c023204550c023204550c023204550c023204550c0231d4550c0231d4550c0231d4550c0231d4550c0231b4550c0231b4550c0231b4550c0231b4550c0231a4550c0231a4550c0231a4550c0231a455 | |
491800003015132151301503015030152301523015500000291502b1512c1512f1523015229152261512715026152241522315024151201511e1501f1521f1521f1321f12500000000000000000000000002f151 | |
491800003515035152351523315132151301502f1522f1562f1513015232152331503215130151301522f15230140301323013230135000000000000000000003015130156321523215233156331563515237152 | |
491800003715237152371523714237142371423713237132371323712237122371223711237112371123711500000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
01180000083501f655083501f655083501f655083501f655053501f655053501f655053501f655053501f655073501f655073501f655073501f655073501f655033501f655033501f655033501f655033501f655 | |
01180000053501f655053501f655053501f655053501f655023501f655023501f655023501f655023501f655073501f655073501f655073501f655073501f655003501f655023501f655033501f655073501f655 | |
011800000c023274550c023274550c023274550c02327455130232e4550c0232e4550c0232e4550c0232e4550c023264550c023264550c023264550c023264550c0232e4550c0232e4550c0232e4550c0232e455 | |
0118000018255302551825530255182553025518255302551a255322551a255322551a255322551a25532255232553b255232553b255232553b25523255322551f255372551f255372551f255372551f25537255 | |
011800001825530255182553025518255302551825530255172552f255172552f255172552f255172552f2551b255332551b255332551b255332551b255332551f255372551f255372551f255372551f25537255 | |
4918000024151241522615226156271522b1513015032150331503315233155371513715235150331523215037152371423713500000351543315132152301522e1522e1522e1552f10000000000003015037150 | |
4918000038152381523815500000381513715035155331563215232152321500000037154351513315132150331553313533125331253311533151301513015232151321512f1512f15230152301323012230115 | |
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 | |
111400001d0501d0501d0501d0501d0501d0521d0521d0551f0501f0501f0521f0551f0501f0501f0551f05521050210502105021050210502105021050210502105021050210402104021032210322102221015 | |
0114000024050240502405024050210502104221042210452605026050260522605523050230502305523055250502505025050250502505025050280502d05028050250402d04028030250322d0322802225015 | |
3114000029555295252d5552d555305553055535555355552b0552b0252f0552f025320553202537055370252d5552d5553155531555345553455538555385553905539025390453902539035395153951539515 | |
011400000502005020050200502005020050220502205025070200702007022070250702007020070250702509020090200902009020090200902009020090200902009020090200902009022090120901209015 | |
__music__ | |
01 08090a0b | |
02 0c0d0a0b | |
01 0e0f1014 | |
00 0e0f1014 | |
00 11121314 | |
02 11121314 | |
01 5c161517 | |
00 1a161517 | |
00 1b181917 | |
00 1c161517 | |
00 1d201f57 | |
00 1e211957 | |
00 221d1f17 | |
00 231e1917 | |
02 5c161517 | |
00 28292a2b | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment