Python 在指定车道上生成车辆的方法和重复功能

Python 在指定车道上生成车辆的方法和重复功能,python,python-3.x,pygame,Python,Python 3.x,Pygame,我正在使用pygame制作一个车道驾驶游戏。我需要一种方法在指定的车道上繁殖敌人的汽车,并不断重复该功能,以便敌人可以不断繁殖,直到它检测到碰撞。我正在使用一种非常糟糕的方法来繁殖我的敌车,我需要帮助来修复它。我有三条车道,我已经指定了我的计算机的坐标。我需要一种方法,以产卵2辆车在2个单独的车道或1辆车,这是随机发生的 import pygame import random pygame.init() screen = pygame.display.set_mode((500, 800))

我正在使用pygame制作一个车道驾驶游戏。我需要一种方法在指定的车道上繁殖敌人的汽车,并不断重复该功能,以便敌人可以不断繁殖,直到它检测到碰撞。我正在使用一种非常糟糕的方法来繁殖我的敌车,我需要帮助来修复它。我有三条车道,我已经指定了我的计算机的坐标。我需要一种方法,以产卵2辆车在2个单独的车道或1辆车,这是随机发生的

import pygame
import random

pygame.init()

screen = pygame.display.set_mode((500, 800))

pygame.display.set_caption("road game")

# background
background = pygame.image.load('roadgame.png')

# player
playerimg = pygame.image.load('player.png')
playerx = 220
playery = 660
playerx_change = 0

# enemy or car

num_of_car = 2
cary = 10
car_state = "parked"
car_change = -5



index = random.randint(0,2)
inde = index

randx = [312, 215, 120]
for i in randx:
    carx = randx[inde]


carimg = pygame.image.load('mycar.png')


# functions

def player(x, y):
    screen.blit(playerimg, (x, y))


def car(x, y):
    screen.blit(carimg, (x, y))

#enemy movement

def carmove(x, y):
    global car_state
    if car_state == "parked":
        screen.blit(carimg, (x + 0, y + 10))
       # car_state = "moving"


# game loop

running = True
while running:
    screen.fill((0, 0, 0))
    screen.blit(background, (0, 0))

    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_LEFT:
                playerx_change = -2
            if event.key == pygame.K_RIGHT:
                playerx_change = +2  # right = +

        if event.type == pygame.KEYUP:
            if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
                playerx_change = 0

    playerx += playerx_change

    # boundaries for player
    if playerx <= 114:
        playerx = 114
    elif playerx >= 325:
        playerx = 325


    if car_state == "parked":
        carmove(carx, cary)
        cary -= car_change


    if cary == 600:
        car_state ="parked"




    # updates
    carmove(carx, cary)
    car(carx, cary)
    player(playerx, playery)
    pygame.display.update()
导入pygame
随机输入
pygame.init()
screen=pygame.display.set_模式((500800))
pygame.display.set_标题(“公路游戏”)
#背景
background=pygame.image.load('roadgame.png')
#玩家
playerimg=pygame.image.load('player.png')
playerx=220
playery=660
playerx_change=0
#敌人还是汽车
车的数量=2
卡里=10
汽车状态=“已停放”
汽车零钱=-5
索引=random.randint(0,2)
inde=索引
randx=[312215120]
对于randx中的我:
carx=randx[inde]
carimg=pygame.image.load('mycar.png')
#功能
def播放器(x,y):
屏幕光点(playerimg,(x,y))
def汽车(x,y):
屏幕光点(carimg,(x,y))
#敌军运动
def carmove(x,y):
全球汽车状态
如果车辆状态==“已停放”:
屏幕光点(carimg,(x+0,y+10))
#车辆状态=“正在移动”
#游戏循环
运行=真
运行时:
屏幕填充((0,0,0))
屏幕光点(背景,(0,0))
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
运行=错误
如果event.type==pygame.KEYDOWN:
如果event.key==pygame.K_左:
playerx_change=-2
如果event.key==pygame.K_RIGHT:
playerx#u change=+2#right=+
如果event.type==pygame.KEYUP:
如果event.key==pygame.K_左或event.key==pygame.K_右:
playerx_change=0
playerx+=playerx\u更改
#玩家的边界
如果playerx=325:
playerx=325
如果车辆状态==“已停放”:
卡莫(卡克斯,卡里)
cary-=换车
如果cary==600:
汽车状态=“已停放”
#更新
卡莫(卡克斯,卡里)
汽车(卡克斯,卡里)
玩家(playerx,playery)
pygame.display.update()