- Saved searches
- Use saved searches to filter your results more quickly
- License
- JustCircleProd/RaceGame
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- About
- Игра гонки на Python
- Создание игры гонки на Python
- Использование библиотек Python в игре гонки
- Добавление игроков и препятствий
- Логика игры гонки на Python
- Отрисовка игры на Python
- Полный код игры гонки на Python
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
🏎 Аркадная гоночная игра на PyGame 🐍
License
JustCircleProd/RaceGame
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
Игра Race Game посвящена гонкам с видом сверху. В данной игре вам предстоит уклоняться от едущих навстречу машин.
Главная цель — набрать как можно больше очков. За каждую встречную машину будет начисляться по 1 баллу. Но не всё так просто. При достижении определённого количества очков скорость машин будет возрастать, так что будьте осторожны. Ваш лучший результат будет сохранён. Приятной игры и больших рекордов!
Игра написана на PyGame и использует многие его функции. Помимо этого в игре используются возможности Python и его встроенных модулей, таких как random, time, sys.
Управление по меню осуществляется с помощью мыши, а управление вашей машиной производится с помощью стрелок на клавиатуре.
Для запуска игры вам необходимо перенести все файлы в одну директорию. Все программные файлы, необходимые для работы были объединены в один exe-файл. Поэтому вы можете открыть файл Race Game.exe. Важно лишь не разделять файл Race Game.exe и директорию resources Для вашего удобства можно создать ярлык данного файла и перенести в любое удобное вам место.
Звуки и картинки взяты из открытых источников. Фоновая музыка: Sferro — Blitz
Copyright 2022 JustCircle Prod. (Vadim Karchagin) Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
About
🏎 Аркадная гоночная игра на PyGame 🐍
Игра гонки на Python
Игра гонки на Python – это простой и захватывающий способ изучить базовые принципы программирования на языке Python. В этой игре два игрока должны проехать по дороге, преодолевая препятствия и достигая финиша первым. В этой статье мы рассмотрим пример игры гонки на Python и посмотрим, как можно использовать ее для изучения программирования.
Создание игры гонки на Python
Для начала нам понадобится некоторый код для нашей игры. Начнем с импорта библиотеки «pygame», которая позволит нам создать игровое поле и добавить в него объекты.
#python import pygame # Инициализация игры pygame.init() # Создание игрового поля screen = pygame.display.set_mode((800, 600)) # Загрузка изображений для игровых объектов player_image = pygame.image.load('player.png') # Запуск игрового цикла while True: # Обработка ввода игрока for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.quit() quit() # Обновление игровой логики # Отрисовка игровых объектов screen.blit(player_image, (100, 100)) # Обновление экрана pygame.display.update()
Использование библиотек Python в игре гонки
Теперь, когда мы импортировали библиотеку «pygame» и создали игровое поле, мы можем добавить игровые объекты и логику игры. Для начала добавим двух игроков и препятствия на дороге. Для этого мы добавим два класса – «Player» и «Obstacle». Класс «Player» будет отвечать за логику игрока, а класс «Obstacle» будет отвечать за логику препятствия.
#python
# Класс игрока
class Player:
def __init__(self, x, y):
self.x = x
self.y = y
self.speed = 5
def update(self):
self.x += self.speed
# Класс препятствия
class Obstacle:
def __init__(self, x, y):
self.x = x
self.y = y
self.width = 50
self.height = 50
Добавление игроков и препятствий
Теперь мы можем добавить игроков и препятствия в игру. Для этого мы добавим два списка – «players» и «obstacles». Каждый элемент этих списков будет содержать экземпляр класса «Player» или «Obstacle» соответственно.
#python
# Список игроков
players = [
Player(100, 100),
Player(200, 200)
]
# Список препятствий
obstacles = [
Obstacle(300, 300),
Obstacle(400, 400)
]
Логика игры гонки на Python
Теперь мы можем добавить логику игры. Для этого мы добавим два цикла в игровой цикл. Один цикл будет обновлять положение игроков, а другой – проверять, не столкнулись ли игроки с препятствиями.
#python
# Обновление игровой логики
for player in players:
player.update()
for player in players:
for obstacle in obstacles:
if player.x == obstacle.x and player.y == obstacle.y:
print('Game Over!')
Отрисовка игры на Python
Наконец, мы можем добавить отрисовку игровых объектов, как в игре Марио на Python. Для этого мы добавим два цикла в блок «Отрисовка игровых объектов». Один цикл будет отрисовывать игроков, а другой – препятствия.
#python
# Отрисовка игровых объектов
for player in players:
screen.blit(player_image, (player.x, player.y))
for obstacle in obstacles:
pygame.draw.rect(screen, (255, 0, 0), (obstacle.x, obstacle.y, obstacle.width, obstacle.height))
Теперь мы можем запустить игру и посмотреть, как она работает. В этой игре два игрока должны проехать по дороге, преодолевая препятствия и достигая финиша первым. Это простой и захватывающий способ изучить базовые принципы программирования на языке Python.
Полный код игры гонки на Python
import pygame
# инициализация pygame
pygame.init()
# размеры экрана
display_width = 800
display_height = 600
# цвета
black = (0, 0, 0)
white = (255, 255, 255)
# создание игрового экрана
gameDisplay = pygame.display.set_mode((display_width, display_height))
pygame.display.set_caption('Гонки')
# изображение автомобиля
carImg = pygame.image.load('racecar.png')
# позиция автомобиля
def car(x, y):
gameDisplay.blit(carImg, (x, y))
# основная программа
def game_loop():
x = (display_width * 0.45)
y = (display_height * 0.8)
x_change = 0
gameExit = False
while not gameExit:
for event in pygame.event.get():
if event.type == pygame.QUIT:
gameExit = True
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
x_change = -5
if 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)
car(x, y)
if x > display_width - carImg.get_width() or x < 0:
gameExit = True
pygame.display.update()
game_loop()
pygame.quit()
quit()