예제 #1
0
    def shift_hue(colour: libtcod.Color, shift: float) -> libtcod.Color:
        new_colour = copy.deepcopy(colour)
        h, s, v = libtcod.color_get_hsv(new_colour)
        h += shift
        if h < 0:
            h += 360
        elif h > 360:
            h -= 360
        libtcod.color_set_hsv(new_colour, h, s, v)

        return new_colour
예제 #2
0
파일: ui.py 프로젝트: pwmarcz/madness
def dim_color(color, sanity):
    if sanity < 50:
        h, s, v = T.color_get_hsv(color)
        # 1.0 .. 0.2
        s *= 0.2 + 0.8*(sanity/50.0)
        # 1.0 .. 0.75
        v *= 0.75 + 0.25*(sanity/50.0)
        color2 = T.Color(color.r, color.g, color.b)
        T.color_set_hsv(color2, h, s, v)
        return color2
    else:
        return color
예제 #3
0
def HeightGradMap(
    World,
):  # ------------------------------------------------------------ Print Map (Heightmap Gradient) -------------------------------------------------------------------
    for x in range(WORLD_WIDTH):
        for y in range(WORLD_HEIGHT):
            hm_v = World[x][y].height
            HeightColor = tcod.Color(255, 255, 255)
            tcod.color_set_hsv(
                HeightColor, 0, 0, hm_v
            )  # Set lightness to hm_v so higher heightmap value -> "whiter"
            tcod.console_put_char_ex(
                0,
                x,
                y + SCREEN_HEIGHT / 2 - WORLD_HEIGHT / 2,
                "\333",
                HeightColor,
                tcod.black,
            )
    tcod.console_flush()
    return
예제 #4
0
def test_color():
    color_a = libtcodpy.Color(0, 1, 2)
    assert list(color_a) == [0, 1, 2]
    assert color_a[0] == color_a.r
    assert color_a[1] == color_a.g
    assert color_a[2] == color_a.b

    color_a[1] = 3
    color_a['b'] = color_a['b']
    assert list(color_a) == [0, 3, 2]

    assert color_a == color_a

    color_b = libtcodpy.Color(255, 255, 255)
    assert color_a != color_b

    color = libtcodpy.color_lerp(color_a, color_b, 0.5)
    libtcodpy.color_set_hsv(color, 0, 0, 0)
    libtcodpy.color_get_hsv(color)
    libtcodpy.color_scale_HSV(color, 0, 0)
예제 #5
0
def test_color():
    color_a = libtcodpy.Color(0, 1, 2)
    assert list(color_a) == [0, 1, 2]
    assert color_a[0] == color_a.r
    assert color_a[1] == color_a.g
    assert color_a[2] == color_a.b

    color_a[1] = 3
    color_a['b'] = color_a['b']
    assert list(color_a) == [0, 3, 2]

    assert color_a == color_a

    color_b = libtcodpy.Color(255, 255, 255)
    assert color_a != color_b

    color = libtcodpy.color_lerp(color_a, color_b, 0.5)
    libtcodpy.color_set_hsv(color, 0, 0, 0)
    libtcodpy.color_get_hsv(color)
    libtcodpy.color_scale_HSV(color, 0, 0)