2015-10-08 5 views
0

Я хочу знать, как я могу изменить цвет черных блоков, которые используются, чтобы игрок не попадал в мир.Как я могу изменить цвет своих блоков

им разместить этот код я думаю, относится к нему, если вам нужно больше, пожалуйста, скажите мне

я хочу, чтобы они были зеленые, как мой фоном цвет немного темнее я знаю, как цвет, просто не знаю, где И.Г., чтобы изменить его, потому что блоки являются черными, и я не вижу их определяют как цвет в любом месте

class Block: 
    def __init__ (self, x, y): 
     self.x = x 
     self.y = y 
     self.width = 32 
     self.height = 32 

    def render(self,screen): 
     pygame.draw.rect(screen,(0,0,0),(self.x, self.y, self.width, self.height)) 



gravity = -0.5 

black = (0,0,0) 
white = (255,255,255) 
blue = (50,60,200) 

clock = pygame.time.Clock() 

player = player(0,0) 

# 25 colums and 19 rows 
level1 = [ 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0], 
    [1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1] 
] 

blockList = [] 

for y in range (0,len(level1)): 
    for x in range (0,len(level1[y])): 
     if (level1[y][x] == 1): 
      blockList.append(Block(x*32, y*32)) 

ответ

1

в PARAMATERS для pygame.draw.rect являются (Surface, color, Rect, width=0) так что вам нужно настроить второй параметр для того, чтобы иметь цвет, который вы хотите на любой прямоугольник, который вы рисуете в то время. Вы можете изменить свой Block класс следующим образом:

class Block: 
    def __init__ (self, x, y, color = (0,0,0)): 
     self.x = x 
     self.y = y 
     self.width = 32 
     self.height = 32 
     self.color = color 

    def render(self,screen): 
     pygame.draw.rect(screen,self.color,(self.x, self.y, self.width, self.height)) 

Это будет по умолчанию черный, если вы не передать его любой другой цвет. Я не уверен, что понял, где вы хотите, чтобы блоки были зелеными, но везде, где это необходимо, вам просто нужно передать переменную цвета, которую вы хотите, в создаваемый вами блок.

+0

wow im dumb я знал, что только я искал черный не 0,0,0 – GeeZillion

+0

происходит со всеми;) –

+0

Знаете ли вы, как я могу изменить его на изображение? я думаю, что это будет выглядеть лучше – GeeZillion

Смежные вопросы