如何解决PyCharm中Python的问题,即上下窗口的黑色部分?

问题描述

这是代码:

import pygame
import random
import sys

from pygame import display

pygame.init()   #pokrecemo modul pygame

screen = pygame.display.set_mode((round(800),(600))) #varijabla koju smo nazvali screen #definisemo na rezoluciju 800x600

#pozadina

background = pygame.image.load('background.png') #<a href='https://pngtree.com/so/background'>background png from pngtree.com</a>
pygame.display.set_caption("Osvoji Svemir") # naziv prozora
icon = pygame.image.load('ufo.png') # definisemo ikonicu
pygame.display.set_icon(icon) #pozivamo ikonicu da se pojavi

pygame.display.update()
# Igrac

playerImg = pygame.image.load('spaceship1.png')

playerX = 370
playerY = 500
playerX_change = 0

# Neprijatelj

enemyImg = pygame.image.load('enemy.png')
enemyX = random.randint(0,800) # ubacio sam random modul kako bi se neprijatelj pojavljivao na drugom mestu uvek
enemyY = random.randint(50,150) # gornje kordinate su za X,a ove- donje za Y osu- da se na "random"- nasumicno pojavljuju
# defininisemo pozicije igraca naseg malog spejsatla
playerX_change = 0
playerY_change = 1

# definisemo pokrete neprijatelja,malih (u nasem slucaju- plavih)

enemyX_change = 0.4
enemyY_change = 40
def player(x,y):
    screen.blit(playerImg,(x,y))

def enemy(x,y):
    screen.blit(enemyImg,y))

# Petlja igre (game loop)

running = True
while running:

screen.fill((0,0)) # prva i osnovna pozadina ekrana  ako redom idemo to je (CRVENA,PLAVA,ZELENA) u kodu
#pozadina za igricu (interaktivna pozadina koja je velicine ekrana kojeg smo definisali (800x600) u pixelima

#    screen.blit(background,(0,0))
screen.blit(background,0))
for event in pygame.event.get():
    if event.type == pygame.QUIT:
        running = False

    # Provera za pritisnute tastere na tastaturi
    if event.type == pygame.KEYDOWN:
        if event.key == pygame.K_LEFT:
            playerX_change = -3
        #                print("Sistem je registrovao da je pritisnuta leva strelica")
        if event.key == pygame.K_RIGHT:
            playerX_change = 3
    #                print("Sistem je registrovao da je pritisnuta desna strelica")
    if event.type == pygame.KEYUP:
        if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
            playerX_change = 0
#               print("Sistem ceka unos sa tastature")

 # <-- ovaj deo,i ispod definise nas brod i neprijatelje da ne izlaze van ekrana

playerX += playerX_change

if playerX <- 0:
    playerX = 0
elif playerX >= 736:
    playerX = 736

enemyX += enemyX_change

if enemyX <- 0:
    enemyX_change = 0.4
    enemyY += enemyY_change
elif enemyX >= 736:
    enemyX_change = -0.4
    enemyY += enemyY_change

player(playerX,playerY)
enemy(enemyX,enemyY)
pygame.display.update()

到目前为止,我在做错了什么,以致无法从窗户上下来并抬起大约2厘米的黑色皮带... 塞尔维亚语上有注释,例如IGRAC = PLAYER,NEPRIJATELJ = ENEMY,但是代码相同...

到目前为止,如果有错误或不知道是什么,我不想继续讲下去。我使用了800x600的屏幕,在3种情况下带有64像素的图标,应用程序图标,播放器图标和敌人。另外,有时敌人(neprijatelj)的移动非常奇怪和缓慢,并且我在编译时收到错误消息:

home/boris/Downloads/Python-3.8.5/python /home/boris/Desktop/OsvajacSvemira/main.py
pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html
/home/boris/Desktop/OsvajacSvemira/main.py:38: DeprecationWarning: an integer is required         (got type float).  Implicit conversion to integers using __int__ is deprecated,and may be removed in a future version of Python.
  screen.blit(enemyImg,y))

以退出代码0结束的过程

我有新的KINGSTONE 4GB RAM和i686处理器。因此,我不是x64或最先进的开发人员,至少在技术使用方面我是个老派,但是,只要它们是x86,我就会使用最先进的技术。

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...