Rip*_*ace 5 python variables floating-point pygame draw
当我尝试使用变量创建一个形状时,我不断收到此错误消息:
"TypeError:期望整数参数,浮点数"
import pygame._view
import pygame, sys
from pygame.locals import *
import random
pygame.init()
Run Code Online (Sandbox Code Playgroud)
...
barrel = pygame.image.load("images\Barrel.gif")
barrel_create = 0
barrelx = screen.get_height()- barrel.get_height()
barrely = screen.get_width()/2 - barrel.get_width()/2
barrel_exist = 0
explosion_delay = 0
Run Code Online (Sandbox Code Playgroud)
...
while running:
if barrel_exist == 0:
if barrel_create == 500:
barrely = 200
barrelx = random.randint(0,400)
barrel_exist = 1
if barrel_exist == 1:
barrely = barrely + 0.1
if barrely > 400:
barrel_exist = 0
if explosion_delay > 0:
pygame.draw.circle(screen, (0,255,0), (barrelx, barrely), 64, 0)
explosion_delay = explosion_delay + 1
if explosion_delay == 100:
explosion_delay = 0
Run Code Online (Sandbox Code Playgroud)
枪管"射击"时,explosion_delay> 0.
barrely = barrely + 0.1
barrely 由于这条线,在某些时候必须是浮点数.
我认为你应该pygame.draw.circle(screen, (0,255,0), (int(barrelx), int(barrely)), 64, 0)按照函数的要求将变量截断为整数.