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