Browse Source

Initial commit

main v1.0.0
Jo Jerrica Decker 6 months ago
parent
commit
19ddfad658
  1. 3
      .gitignore
  2. 27
      README.md
  3. 528
      beamclsh.p8

3
.gitignore

@ -40,4 +40,7 @@ luac.out
*.x86_64
*.hex
# Pico-8 Carts
*.p8.png

27
README.md

@ -1,3 +1,26 @@
# beam-clash
# BEAM CLASH - A LIGHT CYCLES STYLE 2-PLAYER GAME
A Light Cycles style game for the Pico-8
This is my first attempt at a PICO-8 game, and in fact my first full project with Lua altogether.
It's a simple Light Cycles type game, in that the goal is to not crash into the walls or either trail, and I tried to be fancy by having a running starfield in the background (Not really an original idea, if I'm honest, I've seen it in an Amiga light cycles game years ago).
## The Rules
* Don't crash into a wall or either trail (That's the yellow or blue lines. Either way, both hurt!)
* The survivor gains a point.
* If both players crash at the same time, that's a draw and nobody gets a point. :(
* The first to 5 points is the winner! Sadly, you don't get a brand new car or Caribbean holiday.
## Behind the Scenes
I probably overshot myself by making this my first game, admittedly. In lieu of a layer system, I used the spritesheet as the arena layer, where the cycle lines were drawn, allowing me to maintain the moving starfield without losing those lines or having to work out how to redraw them. It basically means I can't use sprites, but then the nature of this game doesn't really demand them. Probably not the best way to do it, but it's how I figured it out. ^_^'
## The controls
UP, DOWN, LEFT, RIGHT - Change direction (WARNING: pressing the opposite of your current direction is not a good idea!)
O - UI functions (Start the game, start a new round, return to title after the game is over.)
## TODO?
* A prettier title screen, somehow.
* Maybe preventing players from reversing into themselves.
* Some swanky effects.
* AI for Player 2.
* Configurable score limit.
* Music? O_O

528
beamclsh.p8

@ -0,0 +1,528 @@
pico-8 cartridge // http://www.pico-8.com
version 42
__lua__
-- beam clash
-- by trolldecker
function _init()
-- states:
-- 0: title
-- 1: action
-- 2: score
-- 3: over
if debounce==nil then
debounce=0
end
cur_state=0
init_field()
init_player()
init_scores()
end
function _update()
if cur_state==0 then
ply:title_input()
elseif cur_state==1 then
for p in all(plys) do
p:input()
p:update()
p:check()
end
elseif cur_state==2 then
scores:update()
ply:score_input()
elseif cur_state==3 then
ply:end_input()
end
ply:tick_debounce()
end
function _draw()
cls(0)
upd_bg()
draw_field()
for p in all(plys) do
p:draw()
end
draw_hud()
end
-->8
-- field/bg
function init_field()
srand(42)
field={
x1=0,
y1=8,
x2=127,
y2=127
}
function field:width()
return self.x2-self.x1
end
function field.height()
return self.y2-self.y1
end
pfield=copy(field)
pfield.x1=3
pfield.y1=11
pfield.x2=124
pfield.y2=124
function pfield:clear()
for y=0,127 do
for x=0,127 do
sset(x,y,0)
end
end
end
stars={}
for i=1,10 do
stars[i]={
x=rndint(pfield.x2-pfield.x1),
y=rndint(pfield.y2),
len=rndint(10),
spd=rndint(5)
}
end
for i=11,50 do
stars[i]={
x=rndint(128),
y=rndint(field.y2)+8,
len=0,
spd=0
}
end
end
function upd_bg()
for i=1,50 do
stars[i].x-=stars[i].spd
if stars[i].x<(pfield.x1-stars[i].len) then
stars[i].x=pfield.x2
stars[i].y=rndint(pfield.y2)
end
line(
stars[i].x,
stars[i].y+pfield.y1,
stars[i].x+stars[i].len,
stars[i].y+pfield.y1,
13
)
end
end
function draw_field()
rect(0,8,127,127,12)
rect(1,9,126,126,13)
rect(2,10,125,125,1)
spr(0,0,0,32,32)
end
-->8
-- player
function init_player()
winner=0
win_limit=5
ply={
id=1,
scrx=10,
scry=1,
x=pfield.x1,
y=63,
xspd=1,
yspd=0,
col=10,
crash=0,
}
function ply:input()
id=self.id-1
if btn(⬅️,id) then
self:redirect(-1,0)
elseif btn(➡️,id) then
self:redirect(1,0)
elseif btn(⬆️,id) then
self:redirect(0,-1)
elseif btn(⬇️,id) then
self:redirect(0,1)
end
end
function ply:score_input()
if btn(🅾️) and debounce==0 then
next_round()
debounce=10
end
end
function ply:title_input()
if btn(🅾️) and debounce==0 then
cur_state=1
debounce=10
end
end
function ply:end_input()
if btn(🅾️) and debounce==0 then
_init()
debounce=10
end
end
function ply:tick_debounce()
debounce-=1
if debounce<0 then
debounce=0
end
end
function ply:redirect(x,y)
self.xspd=x
self.yspd=y
end
function ply:update()
self.x+=self.xspd
self.y+=self.yspd
end
function ply:check()
if self.x<pfield.x1 or
self.x>pfield.x2 or
self.y<pfield.y1 or
self.y>pfield.y2 then
self:halt()
end
if sget(self.x,self.y)!=0 then
self:halt()
end
end
function ply:halt()
self.x-=self.xspd
self.y-=self.yspd
self.crash+=1
cur_state=2
sfx(0)
end
function ply:draw()
sset(self.x,self.y,self.col)
end
plys={
copy(ply),
copy(ply)
}
p2=plys[2]
p2.scrx=74
p2.id=2
p2.x=pfield.x2
p2.xspd=-1
p2.col=12
for p in all(plys) do
p:draw()
end
end
function init_scores()
scores={0,0}
function scores:update()
for p in all(plys) do
if p.crash==0 then
scores[p.id]+=1
p.crash-=1
winner=p.id
end
end
end
end
function next_round()
pfield:clear()
init_field()
init_player()
cur_state=1
for p in all(plys) do
if scores[p.id]>=win_limit then
winner=p.id
cur_state=3
end
end
end
-->8
-- helpers
-- table copy
-- src: https://www.lexaloffle.com/bbs/?tid=2951
function copy(o)
local c
if type(o) == 'table' then
c = {}
for k, v in pairs(o) do
c[k] = copy(v)
end
else
c = o
end
return c
end
function rndint(x)
return ceil(rnd(x))
end
-->8
-- ui
function draw_hud()
for p in all(plys) do
print(scores[p.id],p.scrx,p.scry,p.col)
end
if cur_state==0 then
draw_title()
elseif cur_state==2 then
report_winner(winner)
elseif cur_state==3 then
declare_winner(winner)
end
end
function report_winner(id)
line2y=64+3
rectfill(64-(4*8),64-8,64+(4*8),64+16,0)
rect(64-(4*8),64-8,64+(4*8),64+16,7)
print("crash!",64-(4*3),64-3,7)
if id==0 then
print("draw :(",64-(4*3)-2,line2y,7)
else
print(("ply"..winner).." scores!",64-(4*6),line2y,7)
end
end
function draw_title()
print("beam",64-(4*4),60,11)
print("clash",64-(4*2),70,12)
print("press 🅾️",64-(4*4),80,7)
end
function declare_winner(id)
print(("p"..id).." wins!",64-(4*4),60,7)
print("press 🅾️",64-(4*4),66,7)
end
__label__
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000aaa0000000000000000000000000000000000000000000000000000000000000ccc000000000000000000000000000000000000000000000000000
0000000000a0a0000000000000000000000000000000000000000000000000000000000000c0c000000000000000000000000000000000000000000000000000
0000000000a0a0000000000000000000000000000000000000000000000000000000000000c0c000000000000000000000000000000000000000000000000000
0000000000a0a0000000000000000000000000000000000000000000000000000000000000c0c000000000000000000000000000000000000000000000000000
0000000000aaa0000000000000000000000000000000000000000000000000000000000000ccc000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
cddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddc
cd1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dddddd1dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000ddddddddd000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000dddd00000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d00000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000d00000000000000000000000000000000000000000000000000000000000000000001dc
cd10000000000000000000000000000000000000000000000000000000000000000000000000000000d0000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd100000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d00000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dddd0000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000d000000000000000d0000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d00001dc
cd100000000000000000000000000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000bbb0bbb0bbb0bbb000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000b0b0b000b0b0bbb000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000bb00bb00bbb0b0b000000000000000000000000000000000000000000000000000000000000001dc
cd1a00000000000000000000000000000000000000000000b0b0b000b0b0b0b0000000000000000000000000000000000000000000000000000000000000c1dc
cd1000000000000000000000000000000000000000000000bbb0bbb0b0b0b0b000000000000000000000000000000000000000000000000000000000000001dc
cd100000000000000000000000d000000000000000000000000000000000000d00000000000000000000000000000000000000000000000000000000000001dc
cd100000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000cc0c000ccc00cc0c0c000000000000000000000000000000000000000000000000001dc
cd100000000000000000000000000000000000000000000000000000c000c000c0c0c000c0c000000000000000000000000000000000000000000000000001dc
cd100000000000000000000000000000000000000000000000000000c000c000ccc0ccc0ccc0000000000000000000000000000000000000dddd0000000001dc
cd100000000000000000000000000000000000000000000000000000c000c000c0c000c0c0c000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000cc0ccc0c0c0cc00c0c000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d0000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000777077707770077007700000077777000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000707070707000700070000000770007700000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000777077007700777077700000770707700000000000000d00000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000700070707000007000700000770007700000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000d00000000000700070707770770077000000077777000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d00000001dc
cd10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000d00000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000d00000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ddddd00000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd100000000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000d00000000000000000000000000000000000000001dc
cd10000000000000000000000000000000000000000000000000000000000000000000000000000000d0000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd100000000000000000000000000000000000ddd0000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d0000000000000000000001dc
cd100000000000000000000000d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd10000000000d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd10000000000000000000000000000000000000000000000ddddd000000000000000ddddddddd000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000d00d00000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001dc
cd1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111dc
cddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddc
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
__map__
0000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
__sfx__
1a060000216502b65030650326502c6502665034600156301f6302463026630206301a630006000962013620186201a620146200e620306000961013610186101a610146100e610306002f6002f6002e6002d600
001000000d6000d6000d6000d6000d6000d6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
002000001885000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Loading…
Cancel
Save