According the the pygame.color.Color doc string the alpha portion is
optional: "With the hex color formatting you may optionally include an
alpha value, the formatting is 0xRRGGBBAA. You may also specify a hex
formatted color by starting the string with a '#'." In Pygame a three
element color is understood to have an alpha of 255. This is the case
elsewhere in the package. It is consistent with non per-pixel alpha
colors. A zero alpha is not:
>>> s = pygame.Surface((1, 1), pygame.SRCALPHA, 32)
>>> s.get_at((0, 0))
(0, 0, 0, 0)
>>> s.fill((1, 2, 3))
<rect(0, 0, 1, 1)>
>>> s.get_at((0, 0))
(1, 2, 3, 255)
Also in the doc string: "The color name used is case insensitive and
whitespace is ignored."
pygame.color.Color("red")
(255, 0, 0, 255)
pygame.color.Color("Red")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid color name
So case insensitivity in color names is gone as well.
Finally the add, multiply and subtract functions are missing from the
pygame.color module. These are now operations on the new Color type. Yet
existing game code would still use them. And the functions worked with any
integer sequence type.
Lenard
claudio canepa wrote:
color incompatibility in pygame 1.8.1release versus 1.7.1release
>>> import pygame
>>> print pygame.version.ver
1.8.1release
>>> c=pygame.color.Color('#000000')
>>> print c
(0, 0, 0, 0)
>>>
>>> import pygame
>>> print pygame.version.ver
1.7.1release
>>> c = pygame.color.Color('#000000')
>>> print c
(0, 0, 0, 255)
>>>