import pygame as pyg
pyg.init()
fps = pyg.time.Clock() #база
info = pyg.display.Info()
W, H = info.current_w, info.current_h
screen = pyg.display.set_mode((W, H))
pyg.display.set_caption("Ходить кубиком.")
x = W//2 #все что связанно с движением куба
y = H//2
shagX = 0
shagY = 0
y2 = H #шип
ckoko_ix = 0
run = True #флаги
left = False
right = False
ship = False
while run: #основноц цикл игры
for event in pyg.event.get():
if event.type == pyg.QUIT:
run = False
#управление снизу √√
if event.type == pyg.FINGERDOWN:#√
if (300<=event.x*W<=600)and(0<=event.y*H<=300):
left = True #Ход влево
if event.type == pyg.FINGERDOWN:#√
if (300<=event.x*W<=600)and(600<=event.y*H<=900):
right = True #Ход вправо
if event.type == pyg.FINGERDOWN:#√
if (600<=event.x*W<=900)and(300<=event.y*H<=600):
shagX =100 #Прыжок
if event.type == pyg.FINGERDOWN:#√
if (0<=event.x*W<=300)and(300<=event.y*H<=600):
x = 0
if event.type == pyg.FINGERDOWN:
if (W-200<=event.x*W<=W)and(H-500<=event.y*H<=H):
ship = True #движение шипа
y2 = H
ckoko_ix += 1
if event.type== pyg.FINGERUP:#∆∆
if (300<=event.x*W<=600)and(0<=event.y*H<=300):
left = False #Ход, убрал палец
if (300<=event.x*W<=600)and(600<=event.y*H<=900):
right = False #Ход, убрал палец
if ship: #движение шипика
y2 -= 10
if (y<=y2+300<=y+350)and(x<=150): # когда попали в шип
run = False
x += shagX #Гравитация
shagX -= 10
if x<0: #Если за экраном, то....
x=0
if y > H: #Связываем левый и правый край экрана
y = -350
elif y < -350:
y = H
if left: #куда идëт прям щас
y -= 20
if right:
y += 20
screen.fill((0, 255, 0)) #РИСУЕМ
pyg.draw.rect(screen, (255, 0, 0), (x, y, 350, 350))#Кубик
pyg.draw.rect(screen, (255, 255, 0), (300, 0, 300, 300)) #4 кнопки жëлтые
pyg.draw.rect(screen, (255, 255, 0), (600, 300, 300, 300))
pyg.draw.rect(screen, (255, 255, 0), (300, 600, 300, 300))
pyg.draw.rect(screen, (255, 255, 0), (0, 300, 300, 300))
pyg.draw.rect(screen, (40, 255, 255), (W-200, H-500, 200, 200))#кнопка шипа
if ship:
pyg.draw.rect(screen, (0, 255, 255), (0, y2, 150, 300))
pyg.display.update() #вывод картинки и фпс
fps.tick(60)