我在ytube上跟了一段Tech Tim制作pygame的视频,我不明白为什么我的游戏会崩溃,当我按RCTRL或LCTRL时,所有其他键都像WASD键一样工作,一切都运行良好。但当我按下rctrl或lctrl时,它就会崩溃。
我的代码和Tims完全一样,他的运行很好,我不明白。我知道当你用collidrect
编写子弹时,两个争论都必须是rect()
而且它们都是,所以我不明白问题是什么。同时使用vscode和最新的python
Traceback (most recent call last):
line 127, in <module> main()
line 104, in main
bullet = pygame.Rect(
TypeError: Argument must be rect style object
编辑:还有一点需要补充的是,我的所有pygame函数都有pylint错误,比如K_A、K_s等等。但WASD都可以在游戏中工作,即使有错误。但是LCTRL和RCTRL只会在我按下键的时候使游戏崩溃。(这里也没有全部的代码,这是我对WASD键进行编码的下半部分。
def main (): #this is the main game while loop
red = pygame.Rect(700, 300, SPACESHIP_WIDTH, SPACESHIP_HEIGHT) #These define where the spaceship
is, ((X, Y, Width, Height) of the object))
yellow = pygame.Rect(100, 300, SPACESHIP_WIDTH, SPACESHIP_HEIGHT) #we already have width/heigth as
a variable so we can use that here.
red_bullets = []
yellow_bullets = []
clock = pygame.time.Clock()
run = True
while run:
clock.tick(FPS) #im pretty sure anything that happens ingame has to be within clock.tick
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LCTRL and len(yellow_bullets) < MAX_BULLETS:
bullet = pygame.Rect(
yellow.x, yellow.width, yellow.y, yellow.height//2 - 2, 10, 5) #size and
placement of bullet.
yellow_bullets.append(bullet)
if event.key == pygame.K_RCTRL and len(red_bullets) < MAX_BULLETS:
bullet = pygame.Rect(
red.x, red.y, red.height//2 - 2, 10, 5) #size and placement of bullet.
red_bullets.append(bullet)
keys_pressed = pygame.key.get_pressed() #you must use this code to be able to press multiple keys
at a time.
yellow_handle_movement(keys_pressed, yellow)
red_handle_movement(keys_pressed, red)
handle_bullets(yellow_bullets, red_bullets, yellow, red)
draw_window(red, yellow, red_bullets, yellow_bullets)
pygame.rect
对象由4个参数(x、y、width和height)构造。代码中的第5个参数是什么?删除它:
bullet=pygame.rect(yellow.x,yellow.width,yellow.y,yellow.height//2-2,10,5)
bullet = pygame.Rect(yellow.x, yellow.width, yellow.y, yellow.height//2 - 2, 10)
有人能找出为什么我的不能工作。也许我错过了什么。我意识到这可能是愚蠢的没有任何更多的上下文比我所展示的,但请您询问,我将很乐意提供更多。 这是一段很大的代码,所以我不知道如何用它生成SSCE。您正在查看的是子类的构造函数,它包含3个面板。此时,只是一个。方法打开一个filechooser,然后加载选定的图像,该图像被绘制到上。图像显示良好,一切正常,除了我调整窗口大小时,没有滚动条。
我今天想使用,但出现了如下错误: 所以我想我应该清除并重新安装(如下所示)https://www.rosehosting.com/blog/how-to-install-pip-on-ubuntu-16-04/)但仍然得到: 我怎样才能提高我的水平
问题内容: 首先,创建数据库。 我将“南”添加到已安装的应用程序中。然后,我转到本教程:http : //south.aeracode.org/docs/tutorial/part1.html 本教程告诉我要这样做: 太好了,现在我迁移了。 但这给了我这个错误… 因此,我使用Google(它永远都行不通。因此我在Stackoverflow上问了870个问题),并得到以下页面:http : //gr
我正在构建一个鼓机,我已经存储了一个带有kick声音的示例头文件,它的值介于0和170之间。我想通过SPI将其发送到10位MCP4811 DAC,然后将其输出到3.5毫米音频插孔。 我有我的MISO,MOSI,SCK和复位引脚连接到我的USB编程器以及DAC。 这里是存储在"samples. h"中的音频文件的片段。 因此,它是2221位的样本。我想用SPI发送到DAC,频率=22 kHz。 我使
我正在尝试为Xamarin.Forms创建一个自定义的ButtonRenderer。下面是一个简单的测试,我一直在尝试根据一些教程组合起来,但我似乎可以使它工作。