updates
This commit is contained in:
@@ -316,10 +316,10 @@ class coord:
|
||||
|
||||
def make_next_board():
|
||||
next_board = [
|
||||
[0, 0, 0, 0],
|
||||
[1, 1, 1, 1],
|
||||
[0, 0, 0, 0],
|
||||
[0, 0, 0, 0],
|
||||
[0, 1, 0, 0],
|
||||
[1, 1, 1, 0],
|
||||
]
|
||||
return next_board
|
||||
|
||||
@@ -384,42 +384,109 @@ lime = color("#5fdf5f")
|
||||
colors = [
|
||||
black,
|
||||
cyan,
|
||||
blue,
|
||||
orange,
|
||||
yellow,
|
||||
green,
|
||||
purple,
|
||||
red
|
||||
green,
|
||||
red,
|
||||
blue,
|
||||
orange
|
||||
]
|
||||
|
||||
colors2 = [
|
||||
black,
|
||||
color("#0086f3"),
|
||||
color("#3d4fdc"),
|
||||
color("#fdab01"),
|
||||
color("#abcb04"),
|
||||
color("#02bdcd"),
|
||||
color("#d20f63"),
|
||||
color("#fe4b0f"),
|
||||
]
|
||||
I=1
|
||||
O=2
|
||||
T=3
|
||||
S=4
|
||||
Z=5
|
||||
J=6
|
||||
L=7
|
||||
|
||||
colors2 = colors
|
||||
# colors2 = [
|
||||
# black,
|
||||
# color("#0086f3"),
|
||||
# color("#3d4fdc"),
|
||||
# color("#fdab01"),
|
||||
# color("#abcb04"),
|
||||
# color("#02bdcd"),
|
||||
# color("#d20f63"),Z
|
||||
# color("#fe4b0f"),
|
||||
# ]
|
||||
|
||||
|
||||
text_bg = black
|
||||
|
||||
next_board = make_next_board()
|
||||
# next_board = make_next_board()
|
||||
next_board = [
|
||||
[0, 0, T, 0],
|
||||
[0, T, T, T],
|
||||
[0, 0, 0, 0],
|
||||
[0, 0, 0, 0],
|
||||
]
|
||||
nb1 = coord(88, 104, 128, 128)
|
||||
next_board1 = make_next_board()
|
||||
# next_board1 = make_next_board()
|
||||
next_board1 = [
|
||||
[0, 0, 0, L],
|
||||
[0, L, L, L],
|
||||
[0, 0, 0, 0],
|
||||
[0, 0, 0, 0],
|
||||
]
|
||||
nb2 = coord(1064, 104, 128, 128)
|
||||
|
||||
board_height, board_width, board = make_board(len(colors))
|
||||
board_height, board_width, _ = make_board(len(colors))
|
||||
board = [
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,J,J,0],
|
||||
[0,0,0,0,0,0,0,J,0,0],
|
||||
[0,0,0,0,0,0,0,J,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,I,0,0,0,0,0,0,0],
|
||||
[O,O,I,I,I,0,0,0,0,0],
|
||||
[O,O,I,I,I,L,L,0,L,0],
|
||||
[O,O,I,I,I,I,L,0,L,0]
|
||||
]
|
||||
b1 = coord(304, 40, 320, 640)
|
||||
board2_height, board2_width, board2 = make_board(len(colors2))
|
||||
board2_height, board2_width, _ = make_board(len(colors2))
|
||||
board2 = [
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,Z,0,0,0,0,0,0],
|
||||
[0,0,Z,Z,0,0,0,0,0,0],
|
||||
[0,0,Z,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[0,0,0,0,0,0,0,0,0,0],
|
||||
[O,O,0,0,0,O,O,J,J,J],
|
||||
[O,O,0,O,O,O,O,Z,Z,J],
|
||||
[J,0,S,S,Z,Z,I,I,I,I],
|
||||
[S,Z,Z,T,I,J,J,Z,Z,0],
|
||||
[S,S,Z,Z,I,J,0,0,Z,Z]
|
||||
]
|
||||
b2 = coord(656, 40, 320, 640)
|
||||
|
||||
score0 = make_score()
|
||||
# score0 = make_score()
|
||||
score0 = 299
|
||||
score1 = 298
|
||||
s1 = coord(84, 332, 136, 32)
|
||||
sn1 = coord(74, 368, 156, 20)
|
||||
score1 = make_score()
|
||||
# score1 = make_score()
|
||||
s2 = coord(1060, 332, 136, 32)
|
||||
sn2 = coord(1050, 368, 156, 20)
|
||||
|
||||
@@ -443,7 +510,28 @@ img = Image.new("RGB", (width, height))
|
||||
|
||||
pixels = img.load()
|
||||
|
||||
menu = 1
|
||||
menu = 0
|
||||
|
||||
menu_active0 = [1,0,0,0]
|
||||
menu_active1 = [0,1,0,0]
|
||||
menu_active2 = [1,0]
|
||||
|
||||
def menu_get (side, i) -> tuple[int, int, int] | color | None:
|
||||
if side == "left":
|
||||
if menu_active0[i] == 0:
|
||||
return white.get()
|
||||
else:
|
||||
return red.get()
|
||||
elif side == "right":
|
||||
if menu_active1[i] == 0:
|
||||
return white.get()
|
||||
else:
|
||||
return red.get()
|
||||
elif side == "middle":
|
||||
if menu_active2[i] == 0:
|
||||
return white
|
||||
else:
|
||||
return yellow
|
||||
|
||||
for y in range(height):
|
||||
for x in range(width):
|
||||
@@ -460,9 +548,9 @@ for y in range(height):
|
||||
ys = yd >> 3
|
||||
if x > mm0.x+3 and y>mm0.y+3 and xd<mm0.width-4 and yd<mm0.height-4:
|
||||
if xs <ys*2 and xs<((mm0.width-8 >> 3)-ys)<<1 and xs >2:
|
||||
pixels[x, y] = (255,255,255)
|
||||
pixels[x, y] = menu_get ("middle", 0).get()
|
||||
elif (xs == ys*2 or xs==((mm0.width-8 >> 3)-ys)<<1) and xs >2 and xs <14:
|
||||
pixels[x, y] = (32,32,32)
|
||||
pixels[x, y] = menu_get("middle", 0).shiftr(3)
|
||||
else:
|
||||
pixels[x, y] = black.get()
|
||||
else:
|
||||
@@ -476,30 +564,30 @@ for y in range(height):
|
||||
if x > mm1.x+3 and y>mm1.y+3 and xd<mm1.width-8 and yd<mm1.height-8:
|
||||
# vert/horizontal
|
||||
if xs == 2 and ys < 10 and ys > 4: # left
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("middle", 1).get()
|
||||
elif xs == 11 and ys < 8 and ys > 4: # right
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("middle", 1).get()
|
||||
elif ys == 2 and xs < 10 and xs > 4: # top
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("middle", 1).get()
|
||||
elif ys == 12 and xs < 10 and xs > 4: # bot
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("middle", 1).get()
|
||||
# Orthogonal
|
||||
elif xs+ys == 7 and xs >1 and ys >1: # top left
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("middle", 1).get()
|
||||
elif xs+ys == 21 and xs >8 and ys >9: # bot right
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("middle", 1).get()
|
||||
elif ys-xs == 7 and xs < 6 and ys > 8: # bot left
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("middle", 1).get()
|
||||
elif xs-ys == 7 and xs > 8 and ys < 5: # top right
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("middle", 1).get()
|
||||
# Arrow Head
|
||||
elif xs-ys == 4 and xs > 8 and xs < 12: # left
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("middle", 1).get()
|
||||
elif xs+ys == 18 and xs > 10 and xs <14: # right
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("middle", 1).get()
|
||||
# Aliasing
|
||||
elif (xs==ys==11) or (xs==ys==3) or (xs==11 and ys==3) or (xs==3 and ys==11):
|
||||
pixels[x, y] = (32,32,32)
|
||||
pixels[x, y] = menu_get("middle", 1).shiftr(3)
|
||||
else:
|
||||
pixels[x, y] = black.get()
|
||||
else:
|
||||
@@ -590,33 +678,33 @@ for y in range(height):
|
||||
yd = y-lm0.y
|
||||
xs = xd-34
|
||||
if xd < (24) and a_p[yd>>2][xd>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("left", 0)
|
||||
elif xd > (33) and a_1[yd>>2][xs>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("left", 0)
|
||||
elif x >= lm1.x and x < (lm1.x + lm1.width) and y >= lm1.y and y < (lm1.y + lm1.height):
|
||||
xd = x-lm1.x
|
||||
yd = y-lm1.y
|
||||
xs = xd-34
|
||||
if xd < (24) and a_p[yd>>2][xd>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("left", 1)
|
||||
elif xd > (33) and a_2[yd>>2][xs>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("left", 1)
|
||||
elif x >= lm2.x and x < (lm2.x + lm2.width) and y >= lm2.y and y < (lm2.y + lm2.height):
|
||||
xd = x-lm2.x
|
||||
yd = y-lm2.y
|
||||
xs = xd-28
|
||||
if xd < (24) and a_s[yd>>2][xd>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("left", 2)
|
||||
elif xd > (27) and a_w[yd>>2][xs>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("left", 2)
|
||||
elif x >= lm3.x and x < (lm3.x + lm3.width) and y >= lm3.y and y < (lm3.y + lm3.height):
|
||||
xd = x-lm3.x
|
||||
yd = y-lm3.y
|
||||
xs = xd-28
|
||||
if xd < (24) and a_h[yd>>2][xd>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("left", 3)
|
||||
elif xd > (27) and a_w[yd>>2][xs>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("left", 3)
|
||||
####################### Right Board
|
||||
### Board
|
||||
elif x>=b2.x and x<b2.x+b2.width and y>=b2.y and y<b2.y+b2.height:
|
||||
@@ -702,33 +790,33 @@ for y in range(height):
|
||||
yd = y-rm0.y
|
||||
xs = xd-34
|
||||
if xd < (24) and a_p[yd>>2][xd>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("right", 0)
|
||||
elif xd > (33) and a_1[yd>>2][xs>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("right", 0)
|
||||
elif x >= rm1.x and x < (rm1.x + rm1.width) and y >= rm1.y and y < (rm1.y + rm1.height):
|
||||
xd = x-rm1.x
|
||||
yd = y-rm1.y
|
||||
xs = xd-34
|
||||
if xd < (24) and a_p[yd>>2][xd>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("right", 1)
|
||||
elif xd > (33) and a_2[yd>>2][xs>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("right", 1)
|
||||
elif x >= rm2.x and x < (rm2.x + rm2.width) and y >= rm2.y and y < (rm2.y + rm2.height):
|
||||
xd = x-rm2.x
|
||||
yd = y-rm2.y
|
||||
xs = xd-28
|
||||
if xd < (24) and a_s[yd>>2][xd>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("right", 2)
|
||||
elif xd > (27) and a_w[yd>>2][xs>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("right", 2)
|
||||
elif x >= rm3.x and x < (rm3.x + rm3.width) and y >= rm3.y and y < (rm3.y + rm3.height):
|
||||
xd = x-rm3.x
|
||||
yd = y-rm3.y
|
||||
xs = xd-28
|
||||
if xd < (24) and a_h[yd>>2][xd>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("right", 3)
|
||||
elif xd > (27) and a_w[yd>>2][xs>>2]:
|
||||
pixels[x, y] = white.get()
|
||||
pixels[x, y] = menu_get("right", 3)
|
||||
|
||||
img.save("output/alpha.png")
|
||||
img.show()
|
||||
|
||||
Reference in New Issue
Block a user