Exemplo n.º 1
0
 def draw_bricks(self,
                 brick_width=BRICK_WIDTH,
                 brick_height=BRICK_HEIGHT,
                 brick_offset=BRICK_OFFSET,
                 brick_spacing=BRICK_SPACING):
     """
     When player enter game page, this method called by main function, it will displays bricks from left top corner until
     all bricks displayed. It also give bricks different colors depends on which row the brick exactly occupy. Moreover,
     at the moment brick generated, it will be store in list in order to be used later.
     """
     for i in range(12):
         for j in range(10):
             brick = GRect(brick_width,
                           brick_height,
                           x=(brick_width + brick_spacing) * j,
                           y=brick_offset +
                           (brick_height + brick_spacing) * i)
             brick.filled = True
             if i < 2:
                 brick.fill_color = '#204051'
                 self.bricks_box.append(brick)
                 self.window.add(brick)
             elif 2 <= i < 5:
                 brick.fill_color = '#3b6978'
                 self.bricks_box.append(brick)
                 self.window.add(brick)
             elif 5 <= i < 8:
                 brick.fill_color = '#84a9ac'
                 self.bricks_box.append(brick)
                 self.window.add(brick)
             elif 8 <= i < 12:
                 brick.fill_color = '#e4e3e3'
                 self.bricks_box.append(brick)
                 self.window.add(brick)
Exemplo n.º 2
0
 def refill_bricks(self):
     """
     Refill the bricks when game restart.
     """
     for x in range(self.__brick_rows):
         for y in range(self.__brick_cols):
             __x_coordinate = x * (self.__brick_width + self.__brick_spacing)
             __y_coordinate = self.__brick_offset + y * (self.__brick_height + self.__brick_spacing)
             if self.__window.get_object_at(__x_coordinate, __y_coordinate) is None:
                 __brick = GRect(self.__brick_width, self.__brick_height)
                 __brick.filled = True
                 if y < 2:
                     __brick.fill_color = (RED_R, RED_G, RED_B)
                 elif y < 4:
                     __brick.fill_color = (ORANGE_R, ORANGE_G, ORANGE_B)
                 elif y < 6:
                     __brick.fill_color = (YELLOW_R, YELLOW_G, YELLOW_B)
                 elif y < 8:
                     __brick.fill_color = (GREEN_R, GREEN_G, GREEN_B)
                 else:
                     __brick.fill_color = (BLUE_R, BLUE_G, BLUE_B)
                 __brick.color = (0, 0, 0)
                 # if y == 9: (This line switch for building only one row of bricks.)
                 #     self.__window.add(__brick, __x_coordinate, __y_coordinate)
                 #     self.__brick_nums += 1
                 self.__window.add(__brick, __x_coordinate, __y_coordinate)
                 self.__brick_nums += 1
Exemplo n.º 3
0
def build_s():
    # Create word: S.
    global window
    rect_l = 100
    rect_s = 20
    rect1 = GRect(rect_l, rect_s, x=100, y=150)
    rect2 = GRect(rect_s, rect_l, x=100, y=150)
    rect3 = GRect(rect_l, rect_s, x=100, y=230)
    rect4 = GRect(rect_s, rect_l, x=180, y=230)
    rect5 = GRect(rect_l, rect_s, x=100, y=310)
    rect1.filled = True
    rect1.fill_color = 'tomato'
    rect1.color = 'tomato'
    rect2.filled = True
    rect2.fill_color = 'tomato'
    rect2.color = 'tomato'
    rect3.filled = True
    rect3.fill_color = 'tomato'
    rect3.color = 'tomato'
    rect4.filled = True
    rect4.fill_color = 'tomato'
    rect4.color = 'tomato'
    rect5.filled = True
    rect5.fill_color = 'tomato'
    rect5.color = 'tomato'
    window.add(rect1)
    window.add(rect2)
    window.add(rect3)
    window.add(rect4)
    window.add(rect5)
Exemplo n.º 4
0
    def __draw_bricks(self):
        for i in range(self.__brick_rows):
            for j in range(self.__brick_cols):
                br1 = GRect(self.__brick_width, self.__brick_height)
                br1.filled = True

                br1.x = (self.__brick_width + self.__brick_spacing) * j
                br1.y = self.__brick_offset + (self.__brick_height +
                                               self.__brick_spacing) * i

                rows_in_sec = self.__brick_rows / BRICK_SECTION

                if i <= rows_in_sec - 1:  # Section 1
                    br1.fill_color = 'red'
                    br1.color = 'red'
                elif rows_in_sec - 1 < i <= rows_in_sec * 2 - 1:  # Section 2
                    br1.fill_color = 'orange'
                    br1.color = 'orange'
                elif rows_in_sec * 2 - 1 < i <= rows_in_sec * 3 - 1:  # Section 3
                    br1.fill_color = 'yellow'
                    br1.color = 'yellow'
                elif rows_in_sec * 3 - 1 < i <= rows_in_sec * 4 - 1:  # Section 4
                    br1.fill_color = 'green'
                    br1.color = 'green'
                else:  # Section 5 and so on.
                    br1.fill_color = 'lightseagreen'
                    br1.color = 'lightseagreen'

                self.__window.add(br1)
Exemplo n.º 5
0
def eiffel_tower_middle_top():
    """
    This function will draw the middle upper part of the
    Eiffel tower
    """
    big_square = GRect(130, 245, x=535, y=320)
    big_square.filled = True
    big_square.fill_color = 'gray'
    big_square.color = 'gray'
    window.add(big_square)
    for i in range(30):
        rect = GRect(30, 30, x=538-i*1.15, y=250+i*10)
        rect.filled = True
        rect.fill_color = 'white'
        rect.color = 'white'
        window.add(rect)
    for i in range(30):
        rect = GRect(30, 30, x=632 + i * 1.15, y=250 + i * 10)
        rect.filled = True
        rect.fill_color = 'white'
        rect.color = 'white'
        window.add(rect)
    for i in range(14):
        triangle = GRect(40-i, 13, x=570+i, y=545-i*13)
        triangle.filled = True
        triangle.fill_color = 'white'
        triangle.color = 'white'
        window.add(triangle)
    for i in range(14):
        triangle = GRect(40-i, 13, x=593-i/2, y=545-i*13)
        triangle.filled = True
        triangle.fill_color = 'white'
        triangle.color = 'white'
        window.add(triangle)
Exemplo n.º 6
0
def build_blocks():
    """
    This function builds the blocks of the drawing
    """
    block_1 = GRect(375, 80, x=20, y=330)
    block_1.filled = True
    block_1.color = 'firebrick'
    block_1.fill_color = 'firebrick'
    window.add(block_1)
    block_2 = GRect(375, 80, x=405, y=330)
    block_2.filled = True
    block_2.color = 'steelblue'
    block_2.fill_color = 'steelblue'
    window.add(block_2)
    block_3 = GRect(375, 80, x=20, y=420)
    block_3.filled = True
    block_3.color = 'goldenrod'
    block_3.fill_color = 'goldenrod'
    window.add(block_3)
    block_4 = GRect(375, 80, x=405, y=420)
    block_4.filled = True
    block_4.color = 'forestgreen'
    block_4.fill_color = 'forestgreen'
    window.add(block_4)
    block_5 = GRect(60, 40, x=720, y=120)
    block_5.filled = True
    block_5.color = 'dodgerblue'
    block_5.fill_color = 'dodgerblue'
    window.add(block_5)
    circle_1 = GOval(90, 90, x=20, y=170)
    circle_1.filled = True
    circle_1.color = 'blueviolet'
    circle_1.fill_color = 'blueviolet'
    window.add(circle_1)
Exemplo n.º 7
0
def build_karel4():
    """
    This function builds the fourth karel
    """
    add = 3
    head = GOval(80, 55, x=190 + 120 * add, y=167)
    head.filled = True
    head.color = 'black'
    head.fill_color = 'gray'
    window.add(head)
    hair1 = GLine(590, 167, 590, 161)
    hair2 = GLine(588, 168, 585, 162)
    hair3 = GLine(592, 168, 595, 162)
    hair4 = GLine(585, 168, 582, 162)
    hair5 = GLine(595, 168, 598, 162)
    window.add(hair1)
    window.add(hair2)
    window.add(hair3)
    window.add(hair4)
    window.add(hair5)
    r_eye = GOval(14, 14, x=212 + 120 * add, y=189)
    r_eye.filled = True
    r_eye.color = 'black'
    r_eye.fill_color = 'blue'
    window.add(r_eye)
    l_eye = GOval(14, 14, x=235 + 120 * add, y=189)
    l_eye.filled = True
    l_eye.color = 'black'
    l_eye.fill_color = 'blue'
    window.add(l_eye)
    hands = GRect(105, 45, x=177 + 120 * add, y=237)
    hands.filled = True
    hands.color = 'black'
    hands.fill_color = 'lime'
    window.add(hands)
    body_1 = GRect(60, 65, x=201 + 120 * add, y=223)
    body_1.filled = True
    body_1.color = 'black'
    body_1.fill_color ='blue'
    window.add(body_1)
    body_2 = GRect(80, 60, x=190 + 120 * add, y=230)
    body_2.filled = True
    body_2.color = 'black'
    body_2.fill_color = 'blue'
    window.add(body_2)
    r_foot = GOval(29, 24, x=190 + 120 * add, y=290)
    r_foot.filled = True
    r_foot.color = 'black'
    r_foot.fill_color = 'red'
    window.add(r_foot)
    l_foot = GOval(29, 24, x=241 + 120 * add, y=290)
    l_foot.filled = True
    l_foot.color = 'black'
    l_foot.fill_color = 'red'
    window.add(l_foot)
    label = GRect(20, 20, x=218+120*add, y=130)
    label.filled = True
    label.fill_color = 'forestgreen'
    label.color = 'forestgreen'
    window.add(label)
Exemplo n.º 8
0
def arch_triomphe_body():
    """
    This function will draw the body part of the
    Arch de Triomphe.
    """
    body = GRect(280,280, x=860, y=520)
    body.filled = True
    body.fill_color = 'white'
    body.color = 'white'
    window.add(body)
    arch = GOval(170,290,x=915,y=610)
    arch.filled = True
    arch.fill_color = 'red'
    arch.color = 'red'
    window.add(arch)
    middle_line = GRect(280, 15, x=860, y=660)
    middle_line.filled = True
    middle_line.fill_color = 'red'
    middle_line.color = 'red'
    window.add(middle_line)
    upper_line = GRect(280, 15, x=860, y=600)
    upper_line.filled = True
    upper_line.fill_color = 'red'
    upper_line.color = 'red'
    window.add(upper_line)
    top_line = GRect(280, 20, x=860, y=550)
    top_line.filled = True
    top_line.fill_color = 'red'
    top_line.color = 'red'
    window.add(top_line)
Exemplo n.º 9
0
def eiffel_tower_bottom():
    """
    This function will draw the eiffel tower's bottom on the canvas.
    """
    bottom = GRect(398, 100, x=401, y=705)
    bottom.filled = True
    bottom.fill_color = 'gray'
    bottom.color = 'gray'
    window.add(bottom)
    for i in range(20):
        rect = GRect(90-(i*5), 10, x=401, y=700+i*5)
        rect.filled=True
        rect.fill_color = 'white'
        rect.color = 'white'
        window.add(rect)
    for i in range(20):
        rect = GRect(90-(i*5), 10, x=709+i*5, y=700+i*5)
        rect.filled = True
        rect.fill_color = 'white'
        rect.color = 'white'
        window.add(rect)
    arch = GOval(150, 150, x=523, y=730)
    arch.filled = True
    arch.fill_color = 'white'
    arch.color = 'white'
    window.add(arch)
Exemplo n.º 10
0
def background(w):
    for i in range(127):
        'red to yellow'
        r = GRect(2, 500, x=0 + i * 2, y=0)
        r.fill_color = (255, 0 + i * 2, 0)
        r.color = (255, 0 + i * 2, 0)
        r.filled = True
        w.add(r)
    for k in range(127):
        'yellow to green'
        y = GRect(2, 500, x=254 + k * 2, y=0)
        y.fill_color = (255 - k * 2, 255, 0)
        y.color = (255 - k * 2, 255, 0)
        y.filled = True
        w.add(y)
    for j in range(127):
        'green to blue'
        b = GRect(2, 500, x=508 + j * 2, y=0)
        b.fill_color = (0, 255 - j * 2, 0 + j * 2)
        b.color = (0, 255 - j * 2, 0 + j * 2)
        b.filled = True
        w.add(b)
    for a in range(127):
        'blue to purple'
        p = GRect(2, 500, x=762 + a * 2, y=0)
        p.fill_color = (0 + a * 2, 0, 255)
        p.color = (0 + a * 2, 0, 255)
        p.filled = True
        w.add(p)
Exemplo n.º 11
0
def main():
    # background
    background_color = ['ivory', 'lightblue', 'skyblue']

    for i in range(0, 3):
        background = GRect(window.width,
                           window.height / 3,
                           x=0,
                           y=window.height / 3 * i)
        background.filled = True
        background.fill_color = '' + background_color[i]
        background.color = '' + background_color[i]
        window.add(background)

    # pyramid
    pyramid_color = [
        'saddlebrown', 'darkgoldenrod', 'goldenrod', 'orange', 'gold',
        'palegoldenrod', 'lemonchiffon'
    ]

    for i in range(0, 7):
        # pyramid Grect
        pyramid = GRect(FIRST_X - REDUCE * i,
                        FIRST_Y,
                        x=5 + REDUCE / 2 * i,
                        y=window.height - FIRST_Y * (1 + i))
        pyramid.filled = True
        pyramid.fill_color = '' + pyramid_color[i]
        window.add(pyramid)

        # pyramid GLabel
        # pyramid_label = GLabel('STAGE '+str(i+1), x=260, y=window.height - FIRST_Y * i -10)
        # pyramid_label.font = '-24'
        # pyramid_label.color = 'darkgrey'
        # window.add(pyramid_label)

    # flag
    flagstaff = GRect(5, 100, x=280, y=50)
    flagstaff.filled = True
    flagstaff.fill_color = 'brown'
    window.add(flagstaff)

    flag = GRect(100, 40, x=285, y=50)
    flag.filled = True
    flag.fill_color = 'silver'
    window.add(flag)

    flag_label = GLabel('GOAL!!!', x=290, y=85)
    flag_label.font = '-26'
    flag_label.color = 'red'
    window.add(flag_label)

    # sun
    sun()

    # robot
    robot_face()
    robot_body()
Exemplo n.º 12
0
def ear():
    ear0 = GRect(20, 40, x=85, y=170)
    window.add(ear0)
    ear0.filled = True
    ear0.fill_color = 'grey'
    ear1 = GRect(20, 40, x=245, y=170)
    ear1.filled = True
    ear1.fill_color = 'grey'
    window.add(ear1)
Exemplo n.º 13
0
def build_karel1():
    """
    This function builds the first karel
    """
    head = GOval(80, 55, x=190, y=167)
    head.filled = True
    head.color = 'black'
    head.fill_color = 'gray'
    window.add(head)
    r_eye = GRect(13, 13, x=212, y=189)
    r_eye.filled = True
    r_eye.color = 'black'
    r_eye.fill_color = 'blue'
    window.add(r_eye)
    l_eye = GRect(13, 13, x=235, y=189)
    l_eye.filled = True
    l_eye.color = 'black'
    l_eye.fill_color = 'blue'
    window.add(l_eye)
    r_eyeb = GLine(212, 185, 225, 185)
    window.add(r_eyeb)
    l_eyeb = GLine(235, 185, 248, 185)
    window.add(l_eyeb)
    hands = GRect(105, 45, x=177, y=237)
    hands.filled = True
    hands.color = 'black'
    hands.fill_color = 'lime'
    window.add(hands)
    body_1 = GRect(60, 65, x=201, y=223)
    body_1.filled = True
    body_1.color = 'black'
    body_1.fill_color = 'blue'
    window.add(body_1)
    body_2 = GRect(80, 60, x=190, y=230)
    body_2.filled = True
    body_2.color = 'black'
    body_2.fill_color = 'blue'
    window.add(body_2)
    r_foot = GOval(29, 24, x=190, y=290)
    r_foot.filled = True
    r_foot.color = 'black'
    r_foot.fill_color = 'red'
    window.add(r_foot)
    l_foot = GOval(29, 24, x=241, y=290)
    l_foot.filled = True
    l_foot.color = 'black'
    l_foot.fill_color = 'red'
    window.add(l_foot)
    label = GPolygon()
    label.add_vertex((230, 130))
    label.add_vertex((218, 150))
    label.add_vertex((242, 150))
    label.filled = True
    label.fill_color = 'firebrick'
    label.color = 'firebrick'
    window.add(label)
Exemplo n.º 14
0
def back(window):
    """
    :param window:window
    """
    blue = GRect(800, 500)
    blue.color = 'PaleTurquoise'
    blue.filled = True
    blue.fill_color = 'PaleTurquoise'
    window.add(blue)
    back = GOval(300, 300, x=100, y=50)
    back.color = 'white'
    back.filled = True
    back.fill_color = 'gray'
    window.add(back)
    back_1 = GOval(150, 150)
    back_1.color = 'gray'
    back_1.filled = True
    back_1.fill_color = 'gray'
    window.add(back_1)
    back_2 = GOval(150, 150)
    back_2.color = 'gray'
    back_2.filled = True
    back_2.fill_color = 'gray'
    window.add(back_2, x=150 + 200, y=0)
    neck = GRect(50, 70, x=back.width // 2 + 70, y=300)
    neck.color = 'gray'
    neck.filled = True
    neck.fill_color = 'gray'
    window.add(neck)
    body1 = GOval(400, 300, x=50, y=360)
    body1.color = 'pink'
    body1.filled = True
    body1.fill_color = 'pink'
    window.add(body1)
    body2 = GOval(50, 100, x=150, y=400)
    body2.color = 'Light yellow'
    body2.filled = True
    body2.fill_color = 'Light yellow'
    window.add(body2)
    body3 = GOval(50, 100, x=250, y=400)
    body3.color = 'Light yellow'
    body3.filled = True
    body3.fill_color = 'Light yellow'
    window.add(body3)
    tree1 = GRect(70, 300, x=600, y=230)
    tree1.color = 'PaleGoldenrod'
    tree1.filled = True
    tree1.fill_color = 'PaleGoldenrod'
    window.add(tree1)
    tree2 = GOval(170, 170, x=550, y=150)
    tree2.color = 'Pale green'
    tree2.filled = True
    tree2.fill_color = 'Pale green'
    window.add(tree2)
Exemplo n.º 15
0
def karel_eye():
    # Build Karel's eyes.
    global eye_l, eye_r
    eye_l = GRect(10, 10, x=235, y=35)
    eye_r = GRect(10, 10, x=255, y=35)
    eye_l.filled = True
    eye_r.filled = True
    eye_l.fill_color = 'blue'
    eye_r.fill_color = 'blue'
    window.add(eye_l)
    window.add(eye_r)
Exemplo n.º 16
0
def enter_tie_fighter():
    # create opening effect when tie_fighter enter the canvas
    cover = GRect(w.width, w.height, x=0, y=0)
    cover.filled = True
    cover.fill_color = "red"
    w.add(cover)
    pause(100)
    cover.filled = True
    cover.fill_color = "black"
    pause(100)
    w.remove(cover)
Exemplo n.º 17
0
def draw(mouse):
	stroke = GRect(SIZE, SIZE, x = mouse.x-SIZE/2, y = mouse.y-SIZE/2)
	if (mouse.x -SIZE/2) < (WINDOW_WIDTH/2):
		stroke.filled = True
		stroke.color = COLOR
		stroke.fill_color = COLOR
	else:
		stroke.filled = True
		stroke.color = COLOR2
		stroke.fill_color = COLOR2
	window.add(stroke)
    def set_game(self):
        """
        This method set up the starting interface for the game.
        Including materials such as: paddle, window, score sign and bricks.
        """
        # Create a paddle.
        self.window.add(self.paddle)

        # Center a filled ball in the graphical window.
        self.window.add(self.ball)

        # Build the score sign
        self.score_sign = GLabel(f'SCORE : {self.__score}')
        self.score_sign.color = 'crimson'
        self.score_sign.font = 'Mamelon-20'
        self.window.add(self.score_sign, x=8, y=self.window.height - 8)

        # Build lives sign
        self.live_2.filled = True
        self.live_2.color = 'crimson'
        self.live_2.fill_color = 'crimson'
        self.window.add(self.live_2)

        self.live_1.filled = True
        self.live_1.color = 'crimson'
        self.live_1.fill_color = 'crimson'
        self.window.add(self.live_1)

        # Draw bricks.
        for i in range(BRICK_ROWS):
            for j in range(BRICK_COLS):
                brick = GRect(BRICK_WIDTH,
                              BRICK_HEIGHT,
                              x=i * (BRICK_WIDTH + BRICK_SPACING),
                              y=BRICK_OFFSET + j *
                              (BRICK_HEIGHT + BRICK_SPACING))
                brick.filled = True
                if j == 0 or j == 1:
                    brick.color = 'darkslategrey'
                    brick.fill_color = 'darkslategrey'
                elif j == 2 or j == 3:
                    brick.color = 'teal'
                    brick.fill_color = 'teal'
                elif j == 4 or j == 5:
                    brick.color = 'cadetblue'
                    brick.fill_color = 'cadetblue'
                elif j == 6 or j == 7:
                    brick.color = 'lightseagreen'
                    brick.fill_color = 'lightseagreen'
                else:
                    brick.color = 'mediumturquoise'
                    brick.fill_color = 'mediumturquoise'
                self.window.add(brick)
Exemplo n.º 19
0
def body_line():
    line0 = GRect(50, 3, x=520, y=370)
    line0.filled = True
    line0.fill_color = 'black'
    window.add(line0)
    line1 = GRect(50, 3, x=520, y=400)
    line1.filled = True
    line1.fill_color = 'black'
    window.add(line1)
    line2 = GRect(50, 3, x=520, y=430)
    line2.filled = True
    line2.fill_color = 'black'
    window.add(line2)
Exemplo n.º 20
0
def robot_face():
    # head
    head = GOval(60, 60, x=ROBOT_FACE_X + 25, y=ROBOT_FACE_Y - 15)
    head.filled = True
    head.fill_color = 'slateblue'
    window.add(head)

    # ear
    ear = GOval(120, 60, x=ROBOT_FACE_X - 5, y=ROBOT_FACE_Y + 5)
    ear.filled = True
    ear.fill_color = 'magenta'
    window.add(ear)

    # face
    face = GRect(110, 75, x=ROBOT_FACE_X, y=ROBOT_FACE_Y)
    face.filled = True
    face.fill_color = 'lightgray'
    window.add(face)

    # eye
    l_eye_outer = GOval(30, 30, x=ROBOT_FACE_X + 10, y=ROBOT_FACE_Y + 5)
    l_eye_outer.filled = True
    l_eye_outer.fill_color = 'white'
    window.add(l_eye_outer)

    l_eye_inner = GOval(25, 25, x=ROBOT_FACE_X + 10, y=ROBOT_FACE_Y + 5)
    l_eye_inner.filled = True
    l_eye_inner.fill_color = 'gold'
    window.add(l_eye_inner)

    r_eye_outer = GOval(30, 30, x=ROBOT_FACE_X + 70, y=ROBOT_FACE_Y + 5)
    r_eye_outer.filled = True
    r_eye_outer.fill_color = 'white'
    window.add(r_eye_outer)

    r_eye_inner = GOval(25, 25, x=ROBOT_FACE_X + 70, y=ROBOT_FACE_Y + 5)
    r_eye_inner.filled = True
    r_eye_inner.fill_color = 'gold'
    window.add(r_eye_inner)

    # nose
    nose = GOval(20, 20, x=ROBOT_FACE_X + 45, y=ROBOT_FACE_Y + 22)
    nose.filled = True
    nose.fill_color = 'steelblue'
    window.add(nose)

    # mouth
    mouth = GRect(80, 15, x=ROBOT_FACE_X + 15, y=ROBOT_FACE_Y + 50)
    mouth.filled = True
    mouth.fill_color = 'ivory'
    window.add(mouth)
Exemplo n.º 21
0
def body(window):
    """
    :param window:window
    """
    x = 0
    for i in range(5):
        body_square = GRect(40, 200, x=300 + x, y=300)
        body_square.filled = True
        if i % 2 != 0:
            body_square.fill_color = 'white'
        else:
            body_square.fill_color = 'red'
        window.add(body_square)
        x += 40
Exemplo n.º 22
0
def build_karel3():
    """
    This function builds the third karel
    """
    add = 2
    head = GOval(80, 55, x=190 + 120 * add, y=167)
    head.filled = True
    head.color = 'black'
    head.fill_color = 'gray'
    window.add(head)
    r_eye = GRect(13, 13, x=212 + 120 * add, y=189)
    r_eye.filled = True
    r_eye.color = 'black'
    r_eye.fill_color = 'blue'
    window.add(r_eye)
    l_eye = GRect(13, 13, x=235 + 120 * add, y=189)
    l_eye.filled = True
    l_eye.color = 'black'
    l_eye.fill_color = 'blue'
    window.add(l_eye)
    hands = GRect(105, 45, x=177 + 120 * add, y=237)
    hands.filled = True
    hands.color = 'black'
    hands.fill_color = 'lime'
    window.add(hands)
    body_1 = GRect(60, 65, x=201 + 120 * add, y=223)
    body_1.filled = True
    body_1.color = 'black'
    body_1.fill_color = 'blue'
    window.add(body_1)
    body_2 = GRect(80, 60, x=190 + 120 * add, y=230)
    body_2.filled = True
    body_2.color = 'black'
    body_2.fill_color = 'blue'
    window.add(body_2)
    r_foot = GOval(29, 24, x=190 + 120 * add, y=290)
    r_foot.filled = True
    r_foot.color = 'black'
    r_foot.fill_color = 'red'
    window.add(r_foot)
    l_foot = GOval(29, 24, x=241 + 120 * add, y=290)
    l_foot.filled = True
    l_foot.color = 'black'
    l_foot.fill_color = 'red'
    window.add(l_foot)
    label = GOval(22, 22, x=218+120*add, y=130)
    label.filled = True
    label.fill_color = 'goldenrod'
    label.color = 'goldenrod'
    window.add(label)
Exemplo n.º 23
0
def flag():
    """
    This function will draw the flag of France.
    """
    # blue part
    blue_flag=GRect(400, 800, x=0, y=0)
    blue_flag.filled=True
    blue_flag.fill_color='dark_blue'
    blue_flag.color='dark_blue'
    window.add(blue_flag)
    # red part
    red_flag=GRect(400, 800, x=800, y=0)
    red_flag.filled = True
    red_flag.fill_color = 'red'
    red_flag.color = 'red'
    window.add(red_flag)
Exemplo n.º 24
0
def eiffel_tower_top():
    """
    This function will draw the top part of the
    Eiffel tower.
    """
    for i in range(3):
        square = GRect((65-i*15), 25, x=568+(i*7), y=290-(i*30))
        square.filled = True
        square.fill_color = 'gray'
        square.color = 'gray'
        window.add(square)
    pin= GRect(10, 50, x=595, y=175)
    pin.filled = True
    pin.fill_color = 'gray'
    pin.color = 'gray'
    window.add(pin)
Exemplo n.º 25
0
    def breed(self):
        """
        This method create three circle and one rectangle to compose a cloud shape.
        Every time the cloud shape will be displayed in random position of window.
        """
        dx = random.randint(10, window.width - 10)
        dy = random.randint(10, window.height - 10)

        rect = GRect(70, 30)
        rect.color = 'mintcream'
        rect.filled = True
        rect.fill_color = 'mintcream'
        self.list.append(rect)

        for i in range(3):
            circle = GOval(60, 60)
            circle.color = 'mintcream'
            circle.filled = True
            circle.fill_color = 'mintcream'
            self.list.append(circle)

        window.add(self.list[0], window.width + 45 + dx, 55 + dy)
        window.add(self.list[1], window.width + 10 + dx, 25 + dy)
        window.add(self.list[2], window.width + 45 + dx, 0 + dy)
        window.add(self.list[3], window.width + 80 + dx, 25 + dy)
Exemplo n.º 26
0
def karel_body():
    # Build Karel's body.
    global body
    body = GRect(60, 50, x=220, y=62)
    body.filled = True
    body.fill_color = 'blue'
    window.add(body)
Exemplo n.º 27
0
def opening():
    black_cover = GRect(w.width, w.height, x=0, y=0)
    black_cover.filled = True
    black_cover.fill_color = "black"
    w.add(black_cover)
    far = GLabel("A long time ago in a galaxy far, \nfar away...")
    far.color = "blue"
    far.font = "-20"
    w.add(far, x=w.width / 2 - far.width / 2 + 60, y=w.height / 2)
    pause(1200)
    w.remove(far)
    main_title = GLabel("STAR\nWARS")
    main_title.color = "yellow"
    for i in range(20):
        size = (160 // (int(i) + 1))
        size = -size
        main_title.font = str(size)
        w.add(main_title, x=w.width / 2 - main_title.width / 4, y=w.height / 2)
        pause(FRAME_RATE * 6)
        w.remove(main_title)
    opening_crawl = GLabel("It   is   a   period  of   civil   war\n"
                           "Princess Leia races home abroad\n"
                           "her   spaceship   but   was   later\n"
                           "captured   by   Empires's  agents\n"
                           "Use  your  lightsaber  to destroy\n"
                           "the   force   field   to   save  the\n"
                           "princess")
    opening_crawl.color = "yellow"
    opening_crawl.font = "-15"
    w.add(opening_crawl, x=w.width / 2 - 130, y=w.height + 1)
    for i in range(50):
        opening_crawl.move(0, -10)
        pause(FRAME_RATE * 6)
    w.remove(black_cover)
    w.remove(opening_crawl)
Exemplo n.º 28
0
def set_up_rect():
    cx = (WINDOW_WIDTH - SIZE) / 2
    cy = (WINDOW_HEIGHT - SIZE) / 2
    rect = GRect(SIZE, SIZE, x=cx, y=cy)
    rect.filled = True
    rect.fill_color = 'dodgerblue'
    return rect
Exemplo n.º 29
0
def draw_rect(level, width, center_x, center_y):
	if level == 0:
		pass
	else:
		# rect = GRect(width, width, x = center_x - width/2, y = center_y - width/2)
		# rect.filled = True
		# rect.color = 'black'
		# rect.fill_color = 'snow'
		# window.add(rect)
		#
		# # upper left
		# draw_rect(level - 1, width/2, center_x - width/2, center_y - width/2)
		# # upper right
		# draw_rect(level - 1, width / 2, center_x + width / 2, center_y - width / 2)
		# # down left
		# draw_rect(level - 1, width / 2, center_x - width / 2, center_y + width / 2)
		# # down right
		# draw_rect(level - 1, width / 2, center_x + width / 2, center_y + width / 2)

		rect = GRect(width, width, x=center_x - width / 2, y=center_y - width / 2)
		rect.filled = True
		rect.color = 'black'
		rect.fill_color = 'snow'

		# upper left
		draw_rect(level - 1, width / 2, center_x - width / 2, center_y - width / 2)
		# down right
		draw_rect(level - 1, width / 2, center_x + width / 2, center_y + width / 2)

		window.add(rect)
		# upper right
		draw_rect(level - 1, width / 2, center_x + width / 2, center_y - width / 2)
		# down left
		draw_rect(level - 1, width / 2, center_x - width / 2, center_y + width / 2)
 def draw_bricks_and_ball(self):
     """
     set the bricks and balls
     """
     self.window.add(self.score_label, x=0, y=15)
     self.window.add(self.ball)
     self.ball.filled = True
     color_num = BRICK_COLS / 5
     for i in range(BRICK_ROWS):
         for j in range(BRICK_COLS):
             if j // color_num == 0:
                 color = 'red'
             elif j // color_num == 1:
                 color = 'orange'
             elif j // color_num == 2:
                 color = 'yellow'
             elif j // color_num == 3:
                 color = 'green'
             else:
                 color = 'blue'
             bricks = GRect(BRICK_WIDTH, BRICK_HEIGHT)
             self.window.add(bricks,
                             x=0 + i * (BRICK_WIDTH + BRICK_SPACING),
                             y=BRICK_OFFSET + j *
                             (BRICK_HEIGHT + BRICK_SPACING))
             bricks.filled = True
             bricks.fill_color = color
             self.total_bricks += 1