Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 22, 2019 18:36:30

Magister6239
Зарегистрирован: 2019-08-13
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

pygame функция

Плиз подскажите, почему не рисуется второй зелёный прямоугольник? Кажется, функция думает, что draw_enemy в самом низу - ее часть. Если это так, то как отделить?


import pygame

pygame.init()

win_width = 500
win_height = 500
win = pygame.display.set_mode((win_width , win_height))

width = 30
height = 40
x = 50
y = win_height - height - 50
speed = 4
jump_count = 10
IsJump = False

en_width = 20
en_height = 30
en_y = win_height - en_height - 50
en_x = win_width - en_width - 50

pygame.display.set_caption("MGame")

running = True

while running :
pygame.time.delay(30)
clock = pygame.time.Clock()
clock = 30
pygame.display.update()
win.fill((0 , 0 , 0))

for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
key = pygame.key.get_pressed()
if key[pygame.K_LEFT] and x > 0 :
x -= speed
if key[pygame.K_RIGHT] and x < 500 - width:
x += speed
if key[pygame.K_UP]:
IsJump = True
if IsJump:
if jump_count >= - 10:
if jump_count > 0:
y -= (jump_count ** 2) // 2
jump_count -= 1
else:
y += (jump_count ** 2) // 2
jump_count -= 1
else:
jump_count = 10
IsJump = False

pygame.draw.rect(win , (0 , 0 , 255) , (x , y , width , height))

def drawEnemy():
global en_x, en_y, en_width, en_height
if en_x >= -en_width:
pygame.draw.rect(win, (0, 255, 0), (en_x, en_y, en_width, en_height))
en_x -= 4
else:
en_x = win_width - en_width

drawEnemy()
[code]

Отредактировано Magister6239 (Сен. 22, 2019 19:14:17)

Офлайн

#2 Сен. 22, 2019 21:03:29

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

pygame функция

 #
def drawEnemy():
    global en_x, en_y, en_width, en_height
    if en_x >= -en_width:
        pygame.draw.rect(win, (0, 255, 0), (en_x, en_y, en_width, en_height))
        en_x -= 4
    else:
        en_x = win_width - en_width
drawEnemy()



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Сен. 22, 2019 21:04:00)

Офлайн

#3 Сен. 23, 2019 20:23:09

Magister6239
Зарегистрирован: 2019-08-13
Сообщения: 29
Репутация: +  0  -
Профиль   Отправить e-mail  

pygame функция

Не работает, функция не вызывается

Офлайн

#4 Сен. 24, 2019 07:42:02

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

pygame функция

 import pygame
pygame.init()
win_width = 500
win_height = 500
win = pygame.display.set_mode((win_width , win_height))
width = 30
height = 40
x = 50
y = win_height - height - 50
speed = 4
jump_count = 10
IsJump = False
en_width = 20
en_height = 30
en_y = win_height - en_height - 50
en_x = win_width - en_width - 50
pygame.display.set_caption("MGame")
def drawEnemy():
    global en_x, en_y, en_width, en_height
    if en_x >= -en_width:
        pygame.draw.rect(win, (0, 255, 0), (en_x, en_y, en_width, en_height))
        en_x -= 4
    else:
        en_x = win_width - en_width
running = True
while running :
    drawEnemy()
    pygame.time.delay(30)
    clock = pygame.time.Clock()
    clock = 30
    pygame.display.update()
    win.fill((0 , 0 , 0))
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
                running = False
    key = pygame.key.get_pressed()
    if key[pygame.K_LEFT] and x > 0 :
        x -= speed
    if key[pygame.K_RIGHT] and x < 500 - width:
        x += speed
    if key[pygame.K_UP]:
        IsJump = True
    if IsJump:
        if jump_count >= - 10:
            if jump_count > 0:
                y -= (jump_count ** 2) // 2
                jump_count -= 1
            else:
                y += (jump_count ** 2) // 2
                jump_count -= 1
        else:
            jump_count = 10
            IsJump = False
    pygame.draw.rect(win , (0 , 0 , 255) , (x , y , width , height))
if __name__ == "__main__":
    exit()



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Сен. 24, 2019 08:07:48)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version