int main(int nNumberofArgs, char pszArgs[])
-
Автор темы
- #1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
короче, вот вам код:
смотрим на 75 строчку кода. Мне нужно сделать так, чтоб при истинности условия отрисовывалось фото game_over, а оно блять не отрисовывается(вся остальная часть кода работает нормально)
upd. у меня еще почему-то не меняется название окна, хз с чем связано
Код:
import pygame
class Sprite(sprite.Sprite):
def __init__(self, player_image, s_x, s_y, speed):
self.player_image = transform.scale(image.load(player_image), (80, 80))
self.speed = player_speed
self.rect = self.player_image.get_rect()
self.rect.x = s_x
self.rect.y = s_y
def reset(self):
window.blit(self.player_image, (self.rect.x, self.rect.y))
class Player(Sprite):
def update(self):
keys = key.get_pressed()
if keys[K_LEFT]:
self.rect.x -= self.speed
if keys[K_RIGHT]:
self.rect.x += self.speed
if keys[K_UP]:
self.rect.y -= self.speed
if keys[K_DOWN]:
self.rect.y += self.speed
class Walls(sprite.Sprite):
def __init__(self, wall_x, wall_y, wigth_wall, heigh_wall):
self.wall_x = wall_x
self.wall_y = wall_y
self.wigth_wall = wigth_wall
self.heigh_wall = heigh_wall
self.image = Surface([self.wigth_wall, self.heigh_wall])
self.rect = self.image.get_rect()
def update_wall(self):
draw.rect(window, (255,255,255), (self.wall_x, self.wall_y, self.wigth_wall, self.heigh_wall))
class Enemy(Sprite):
pass
width = 700
height = 500
display.set_caption("game suka")
window = display.set_mode((width, height))
player_speed = 5
#player_image = transform.scale(image.load('pacman.png'), (100, 100))
s_x = 60
s_y = 40
speed = 5
local_player = Player('pacman.png', s_x, s_y, speed)
wall_x = 250
wall_y = 60
wigth_wall = 10
heigh_wall = 300
wall = Walls(wall_x, wall_y, wigth_wall, heigh_wall)
run = 1
close = 1
while run:
for e in event.get():
if e.type == KEYDOWN:
if e.key == QUIT:
run = 0
if close:
window.fill((0, 0, 0))
local_player.update()
local_player.reset()
wall.update_wall()
display.update()
time.delay(100)
if sprite.collide_rect(local_player, wall): ##вот тут проблема предположительно
close = 0
image = transform.scale(image.load('game-over.png'), (700, 500))
game_over = image.load('game-over.png')
window.blit(game_over, (700, 500))
display.update()
upd. у меня еще почему-то не меняется название окна, хз с чем связано
Последнее редактирование: