python - Galaga game not running due to an empty range - Stack Overflow
I am following a tutorial on how to create a Galaga clone, and after finishing the enemy spawner, I tried to run it and I'm receiving a ValueError saying that:
empty range in randrange(0,-131).
I don't know what's wrong, since I followed the tutorial to the letter and it worked there.
I tried rewatching and checking for typos but nothing
Main code:
import pygame
from ship import Ship
import constants as c
from background import BG
from enemy_spanner import EnemySpanner
#Display setup
display = pygame.display.set_mode(c.DISPLAY_SIZE)
fps = 60
clock = pygame.time.Clock()
black = (0,0,0)
#Object setup
bg = BG()
player = Ship()
bg_group = pygame.sprite.Group()
bg_group.add(bg)
sprite_group = pygame.sprite.Group()
sprite_group.add(player)
enemy_spanner = EnemySpanner()
running = True
while running:
clock.tick(fps) #Tick clock
#Handle events
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
quit()
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_RIGHT:
player.velocity_x = player.speed
elif event.key == pygame.K_LEFT:
player.velocity_x = -player.speed
if event.key == pygame.K_SPACE:
player.shoot()
if event.type == pygame.KEYUP:
if event.key == pygame.K_RIGHT:
player.velocity_x = 0
elif event.key == pygame.K_LEFT:
player.velocity_x = 0
#Update all the objects
sprite_group.update()
bg_group.update()
enemy_spanner.update()
#Render the display
display.fill(black)
bg_group.draw(display)
sprite_group.draw(display)
player.bullets.draw(display)
enemy_spanner.enemy_group.draw(display)
pygame.display.update()
Enemy Spanwer code:
import pygame
from enemy import Enemy
import random
class EnemySpanner:
def __init__(self):
self.enemy_group = pygame.sprite.Group()
self.spawn_timer = random.randrange(30,120)
def update(self):
self.enemy_group.update()
if self.spawn_timer == 0:
self.spawn_enemy()
self.spawn_timer = random.randrange(30,120)
else:
self.spawn_timer -= 1
def spawn_enemy(self):
new_enemy = Enemy()
self.enemy_group.add(new_enemy)
最新文章
- Win10、安卓手机实现打通:拖拽即可互传文件
- 2014年IT五大发展趋势
- 运动类穿戴设备今年迎爆发 繁荣背后的陷阱
- Youtube APi Fetching Gender Percentage of my channel - Stack Overflow
- uart - MH-z19b stop working after 999999 millis (NodeMCU v3 ESP8266 12F) - Stack Overflow
- sql - PostgreSQL ERROR: cannot accumulate arrays of different dimensionality - Stack Overflow
- ggplot2 - alluvial diagram in R, Error: Data not in recognizable format - Stack Overflow
- node.js - Electron app with CRA failing child process creation - Stack Overflow
- c# - How to add image as an input to a ChatMessage with Microsoft.Extensions.AI - Stack Overflow
- javascript - Is there any way of getting an error message from the browsers XslProcessor object when using xsl:message terminate
- python - Four MLX90640 thermal cameras on 4 custom buses in Rasberry Pi 5B - Stack Overflow
- java - Spring FileNotFoundException when accessing a file from another lab - Stack Overflow
- GitHub disallow merge and rebase commits for multiple repositories - Stack Overflow
- connecting Shopify to external Stripe checkout script - Stack Overflow
- google cloud platform - Java application unable to find ADC when Workload Identity is enabled on GKE cluster - Stack Overflow
- Generic Trait Parameters in Rust - Stack Overflow
- command prompt - byobu - how to disable byobu_prompt_runtime - Stack Overflow