
سلام دوستان امروز بازی Car Race را با زبان پایتون و کتابخانه پای گیم نوشتم حالا میخوام براتون کد بازی را بذارم .![]()
برای دیدن ادامه آموزش ادامه مطلب را بزنید.
تصاویری از محیط بازی را زیر مشاهده میکنید:


خب من کد این بازی را براتون در زیر قرار میدم اما قبل استفاده از این کد باید کتابخانه پای گیم را نصب کنید که با دستور زیر نصب میشه:
pip install pygame
کد بازی هم اینه:
# Mohammadamin Mohammadi
import pygame
import time
import random
pygame.init()
crash_sound=pygame.mixer.Sound("lose-m.wav")
pygame.mixer.music.load("world-m.ogg")
# width and height for game window
display_width = 800
display_height = 600
black = (0, 0, 0)
white = (255, 255, 255)
red = (200, 0, 0)
bright_red = (255, 0, 0)
green = (0, 200, 0)
bright_green = (0, 255, 0)
gameDisplay = pygame.display.set_mode((display_width, display_height))
pygame.display.set_caption('Race Car')
clock = pygame.time.Clock()
carImg = pygame.image.load("car.png")
car_width = 48
#ic = inactive color
#ac = active color
def button(msg,x,y,w,h,ic,ac,action=None):
mouse=pygame.mouse.get_pos()
click=pygame.mouse.get_pressed()
# print(click)
if x+w > mouse[0] > x and y+h > mouse[1] > y:
pygame.draw.rect(gameDisplay, ac, (x, y, w, h))
if click[0]==1 and action!= None:
if action == 'play':
game_loop()
elif action == 'quit':
pygame.quit()
quit()
else:
pygame.draw.rect(gameDisplay, ic, (x, y, w, h))
smallText=pygame.font.Font("freesansbold.ttf",20)
TextSurf, TextRect = text_objects(msg, smallText)
TextRect.center=(x+(w/2),y+(h/2))
gameDisplay.blit(TextSurf, TextRect)
def game_intor():
intro = True
while intro:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
quit()
gameDisplay.fill(white)
largeText = pygame.font.Font('freesansbold.ttf', 90)
TextSurf, TextRect = text_objects("Let's Play Game", largeText)
TextRect.center = ((display_width/2), (display_height/2))
gameDisplay.blit(TextSurf, TextRect)
button('Play', 150, 450, 100, 50, green, bright_green,'play')
button('Quit', 550, 450, 100, 50, red, bright_red,'quit')
pygame.display.update()
def stuff_dodged(count):
font = pygame.font.SysFont(None, 25)
text = font.render("score : "+str(count), True, red)
gameDisplay.blit(text, (0, 0))
def stuff(stuffx, stuffy, stuffw, stuffh, color):
pygame.draw.rect(gameDisplay, green, [stuffx, stuffy, stuffw, stuffh])
def car(x, y):
gameDisplay.blit(carImg, (x, y))
def text_objects(text, font):
textSurface = font.render(text, True, black)
return textSurface, textSurface.get_rect()
def message_display(text):
largeText = pygame.font.Font('freesansbold.ttf', 90)
TextSurf, TextRect = text_objects(text, largeText)
TextRect.center = ((display_width/2), (display_height/2))
gameDisplay.blit(TextSurf, TextRect)
pygame.display.update()
time.sleep(2)
game_loop()
def crash():
pygame.mixer.music.stop()
pygame.mixer.Sound.play(crash_sound)
largeText = pygame.font.Font('freesansbold.ttf', 90)
TextSurf, TextRect = text_objects('YOU CRASHED', largeText)
TextRect.center = ((display_width/2), (display_height/2))
gameDisplay.blit(TextSurf, TextRect)
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
quit()
button('Try Again', 150, 450, 100, 50, green, bright_green, 'play')
button('Quit', 550, 450, 100, 50, red, bright_red, 'quit')
pygame.display.update()
def game_loop():
pygame.mixer.music.play(-1)
x = (display_width * 0.45)
y = (display_height * 0.8)
x_change = 0
stuff_startx = random.randrange(0, display_width)
stuff_starty = -700
stuff_speed = 7
stuff_width = 100
stuff_height = 100
dodged = 0
gameExit = False
while not gameExit:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
quit()
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
x_change = -5
elif event.key == pygame.K_RIGHT:
x_change = 5
if event.type == pygame.KEYUP:
if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
x_change = 0
x += x_change
gameDisplay.fill(white)
# stuffx,stuffy,stuffw,stuffh,color
stuff(stuff_startx, stuff_starty, stuff_width, stuff_height, red)
stuff_starty += stuff_speed
stuff_dodged(dodged)
car(x, y)
if x > display_width - car_width or x < 0:
crash()
if stuff_starty > display_height:
stuff_starty = 0 - stuff_height
stuff_startx = random.randrange(0, display_width)
dodged += 1
if (dodged % 5 == 0):
stuff_speed += 2
if y < stuff_starty + stuff_height:
if x > stuff_startx and x < stuff_startx + stuff_width or x + car_width > stuff_startx and x + car_width < stuff_startx + stuff_width:
crash()
pygame.display.update()
clock.tick(60)
game_intor()
game_loop()
pygame.quit()
quit()
نکته: به غیر از این کد پایتونی بالا برای اجرای بازی به یکسری فایل های دیگه هم نیازه که میتونید از لینک دانلود اخر صفحه دانلود کنید.
کد بازی با پیش نیاز ها را میتوانید از لینک زیر دانلود کنید:
رمز فایل : http://moammadamin7.blog.ir
- تاریخ : پنجشنبه ۱۱ آذر ۰۰
- ساعت : ۱۵ : ۴۱
- ادامه مطلب
- |
- نظرات [ ۰ ]