Exemple #1
0
    def change_num_btn(self, n1):
        if n1 == -1:
            if self.number > self.rng[0]:
                self.number -= 1
        elif n1 == 1:
            if self.number < self.rng[1]:
                self.number += 1

        color1 = self.temp2col(self.number)
        hsv_col = ex.rgb_to_hsv(color1[0], color1[1], color1[2])
        bd_color1 = ex.hsv_to_rgb(hsv_col[0], 187, 200)

        self.thermometer.update_colors(color1, bd_color1)
        self.nm1.set_value(str(self.number)+"°C")
        self.thermometer.update_values(self.number)
        self.ther_canvas.painting = self.thermometer.get_canvas().copy()
        self.ther_canvas.update_me = True

        for each in self.board.ships:
            each.set_tint_color(bd_color1)
            each.update_me = True

        self.nm1.font_color = bd_color1
        self.nm1.update_me = True

        self.mainloop.redraw_needed[0] = True
Exemple #2
0
    def __init__(self, kbrd, data_list, init_color, highlight_color):
        # data_list = [x, y, w, h, top_left, bottom_left, middle, letter, right_top, right_bottom,color_group]
        pygame.sprite.Sprite.__init__(self)
        self.kbrd = kbrd
        self.id = len(kbrd.keys)
        kbrd_w = self.kbrd.kbrd_w-10
        self.x = (kbrd_w * data_list[0] // 445)+5
        self.y = (kbrd_w * data_list[1] // 445)+5
        self.w = (kbrd_w * data_list[2] // 445)
        self.h = (kbrd_w * data_list[3] // 445)
        self.data_list = data_list
        self.labels = [data_list[4], data_list[5], data_list[6],data_list[7],data_list[8],data_list[9]]
        self.color = init_color
        self.init_color = init_color
        self.highlight_color = highlight_color
        hsv = ex.rgb_to_hsv(highlight_color[0],highlight_color[1],highlight_color[2])
        self.outline_color = ex.hsv_to_rgb(hsv[0],hsv[1],hsv[2]-50)
        self.font_1 = self.kbrd.kbrd_font[0]
        self.font_2 = self.kbrd.kbrd_font[1]

        self.image = pygame.Surface([self.w, self.h])

        self.rect = self.image.get_rect()
        self.rect.topleft = [self.x,self.y]

        self.draw_key()
Exemple #3
0
    def __init__(self, kbrd, data_list, init_color, highlight_color):
        # data_list = [x, y, w, h, top_left, bottom_left, middle, letter, right_top, right_bottom,color_group]
        pygame.sprite.Sprite.__init__(self)
        self.kbrd = kbrd
        self.id = len(kbrd.keys)
        kbrd_w = self.kbrd.kbrd_w - 10
        self.x = (kbrd_w * data_list[0] // 445) + 5
        self.y = (kbrd_w * data_list[1] // 445) + 5
        self.w = (kbrd_w * data_list[2] // 445)
        self.h = (kbrd_w * data_list[3] // 445)
        self.data_list = data_list
        self.labels = [
            data_list[4], data_list[5], data_list[6], data_list[7],
            data_list[8], data_list[9]
        ]
        self.color = init_color
        self.init_color = init_color
        self.highlight_color = highlight_color
        hsv = ex.rgb_to_hsv(highlight_color[0], highlight_color[1],
                            highlight_color[2])
        self.outline_color = ex.hsv_to_rgb(hsv[0], hsv[1], hsv[2] - 50)
        self.font_1 = self.kbrd.kbrd_font[0]
        self.font_2 = self.kbrd.kbrd_font[1]

        self.image = pygame.Surface([self.w, self.h])

        self.rect = self.image.get_rect()
        self.rect.topleft = [self.x, self.y]

        self.draw_key()
Exemple #4
0
    def create_game_objects(self, level=1):
        self.max_size = 99
        self.board.draw_grid = False

        # self.rng = (random.randrange(-30, -5, 5), random.randrange(5, 30, 5))
        self.rng = [-30, 30]
        self.number = random.randint(self.rng[0], self.rng[1])

        if self.mainloop.scheme is not None:
            white = self.mainloop.scheme.u_color
            h1 = 170
            color1 = ex.hsv_to_rgb(h1, 255, 255)
            bd_color1 = ex.hsv_to_rgb(h1, 127, 155)
        else:
            white = (255, 255, 255)
            color1 = self.temp2col(self.number)
            hsv_col = ex.rgb_to_hsv(color1[0], color1[1], color1[2])
            bd_color1 = ex.hsv_to_rgb(hsv_col[0], 187, 200)
        transp = (0, 0, 0, 0)

        data = [7, 10]
        self.data = data

        self.vis_buttons = [0, 0, 0, 0, 1, 1, 1, 0, 0]

        self.mainloop.info.hide_buttonsa(self.vis_buttons)

        self.layout.update_layout(data[0], data[1])
        scale = self.layout.scale
        self.board.level_start(data[0], data[1], scale)
        self.board.board_bg.update_me = True

        self.board.board_bg.line_color = (20, 20, 20)
        self.points = int(round((self.board.scale * 72 / 96) * 1.2, 0))
        self.t_font = pygame.font.Font(os.path.join('res', 'fonts', 'FreeSans', 'FreeSans.ttf'),
                                       (int(self.points / (self.board.scale / (60 * self.board.scale * 3 / 500.0)))))

        self.board.add_unit(0, 0, 3, data[1], classes.board.Label, "", white, "", 0)
        self.ther_canvas = self.board.units[-1]

        self.thermometer = classes.drw.thermometer.Thermometer(self, 3, self.data[1], self.board.scale,
                                                               color1, bd_color1, self.rng, self.number, 5)
        self.ther_canvas.painting = self.thermometer.get_canvas().copy()

        self.board.add_unit(4, 6, 2, 2, classes.board.ImgCenteredShip, "", transp,
                            img_src='nav_d_mts.png', alpha=True)
        self.board.ships[-1].set_tint_color(bd_color1)

        self.board.add_unit(3, 4, 4, 2, classes.board.Label, str(self.number)+"°C", white, "", 31)
        self.nm1 = self.board.units[-1]
        self.board.units[-1].font_color = bd_color1

        self.board.add_unit(4, 2, 2, 2, classes.board.ImgCenteredShip, "", transp,
                            img_src='nav_u_mts.png', alpha=True)
        self.board.ships[-1].set_tint_color(bd_color1)

        for each in self.board.ships:
            each.readable = False
            each.immobilize()
Exemple #5
0
 def set_outline(self, color=[255, 0, 0], width=2):
     'enables the draw_outline and sets line color and width'
     self.perm_outline = True
     if color == 0 and hasattr(self, "door_outline") is False:  # if color is 0 calculate colour from base colour
         # convert to hsv
         c = self.color
         h, s, v = ex.rgb_to_hsv(c[0], c[1], c[2])
         outline_color = ex.hsv_to_rgb(h, s + 50, v - 50)
         self.perm_outline_color = outline_color
     elif color == 1:
         c = self.color
         h, s, v = ex.rgb_to_hsv(c[0], c[1], c[2])
         outline_color = ex.hsv_to_rgb(h, s + 20, v - 20)
         self.perm_outline_color = outline_color
     elif hasattr(self, "door_outline") is False:
         self.perm_outline_color = color
     else:
         pass
     self.perm_outline_width = width
     self.init_pow = width