add bg for held and next

This commit is contained in:
adrienmalin 2019-10-02 00:01:02 +02:00
parent 4c44089f41
commit b8e20199af
4 changed files with 19 additions and 4 deletions

View File

@ -65,7 +65,8 @@ CONF_PATH = os.path.join(USER_PROFILE_DIR, "TetrArcade.ini")
TEXT_COLOR = arcade.color.BUBBLES TEXT_COLOR = arcade.color.BUBBLES
FONT_NAME = "joystix monospace.ttf" FONT_NAME = "joystix monospace.ttf"
STATS_TEXT_MARGIN = 40 STATS_TEXT_MARGIN = 40
STATS_TEXT_SIZE = 16 STATS_TEXT_SIZE = 14
STATS_TEXT_WIDTH = 150
HIGHLIGHT_TEXT_COLOR = arcade.color.BUBBLES HIGHLIGHT_TEXT_COLOR = arcade.color.BUBBLES
HIGHLIGHT_TEXT_SIZE = 20 HIGHLIGHT_TEXT_SIZE = 20
@ -160,6 +161,10 @@ class TetrArcade(tetrislogic.TetrisLogic, arcade.Window):
self.bg = arcade.Sprite(WINDOW_BG_PATH) self.bg = arcade.Sprite(WINDOW_BG_PATH)
self.matrix_bg = arcade.Sprite(MATRIX_SPRITE_PATH) self.matrix_bg = arcade.Sprite(MATRIX_SPRITE_PATH)
self.matrix_bg.alpha = MATRIX_BG_ALPHA self.matrix_bg.alpha = MATRIX_BG_ALPHA
self.held_bg = arcade.Sprite("images/held.png")
self.held_bg.alpha = MATRIX_BG_ALPHA
self.next_bg = arcade.Sprite("images/next.png")
self.next_bg.alpha = MATRIX_BG_ALPHA
self.matrix.sprites = MatrixSprites(self.matrix) self.matrix.sprites = MatrixSprites(self.matrix)
self.on_resize(self.init_width, self.init_height) self.on_resize(self.init_width, self.init_height)
@ -314,6 +319,8 @@ AGAIN""".format(
if self.state in (tetrislogic.State.PLAYING, tetrislogic.State.OVER): if self.state in (tetrislogic.State.PLAYING, tetrislogic.State.OVER):
self.matrix_bg.draw() self.matrix_bg.draw()
self.held_bg.draw()
self.next_bg.draw()
self.matrix.sprites.draw() self.matrix.sprites.draw()
for tetromino in [self.held, self.current, self.ghost] + self.next: for tetromino in [self.held, self.current, self.ghost] + self.next:
@ -334,7 +341,7 @@ AGAIN""".format(
): ):
arcade.draw_text( arcade.draw_text(
text = text, text = text,
start_x = self.matrix_bg.left - STATS_TEXT_MARGIN*self.scale - self.matrix_bg.width, start_x = self.matrix_bg.left - self.scale*(STATS_TEXT_MARGIN + STATS_TEXT_WIDTH),
start_y = self.matrix_bg.bottom + 1.5*(2*y+1)*font_size, start_y = self.matrix_bg.bottom + 1.5*(2*y+1)*font_size,
color = TEXT_COLOR, color = TEXT_COLOR,
font_size = font_size, font_size = font_size,
@ -406,6 +413,14 @@ AGAIN""".format(
self.matrix_bg.left = int(self.matrix_bg.left) self.matrix_bg.left = int(self.matrix_bg.left)
self.matrix_bg.top = int(self.matrix_bg.top) self.matrix_bg.top = int(self.matrix_bg.top)
self.held_bg.scale = self.scale
self.held_bg.right = self.matrix_bg.left
self.held_bg.top = self.matrix_bg.top
self.next_bg.scale = self.scale
self.next_bg.left = self.matrix_bg.right
self.next_bg.top = self.matrix_bg.top
self.matrix.sprites.resize(self.scale) self.matrix.sprites.resize(self.scale)
for tetromino in [self.held, self.current, self.ghost] + self.next: for tetromino in [self.held, self.current, self.ghost] + self.next:

BIN
images/held.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 499 B

BIN
images/next.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 475 B

View File

@ -17,7 +17,7 @@ AUTOREPEAT_PERIOD = 0.010 # Official : 0.010
# Piece init coord # Piece init coord
CURRENT_COORD = Coord(4, NB_LINES) CURRENT_COORD = Coord(4, NB_LINES)
NEXT_COORDS = [ NEXT_COORDS = [
Coord(NB_COLS+6, NB_LINES-4*n-3) Coord(NB_COLS+4, NB_LINES-4*n-3)
for n in range(NB_NEXT) for n in range(NB_NEXT)
] ]
HELD_COORD = Coord(-7, NB_LINES-3) HELD_COORD = Coord(-5, NB_LINES-3)