I created a simple game in python using the pygame library. Compiled the code into an executable using Pyinstaller (pyinstaller –onefile –add-data “images;images” –add-data “fonts;fonts” main.py).
# -*- coding: utf-8 -*-
import os
import pygame
from time import sleep
clock = pygame.time.Clock()
pygame.init()
pygame.mixer.init()
screen = pygame.display.set_mode((618, 359),) #flags = pygame.NOFRANE
running = True
pygame.display.set_caption('ЕБААААААААААТЬ')
images_folder = os.path.join(os.path.dirname(__file__), "images")
icon = pygame.image.load(os.path.join(images_folder, "icon.png")).convert_alpha()
vrag = pygame.image.load(os.path.join(images_folder, "vrag.png")).convert_alpha()
losescreen = pygame.image.load(os.path.join(images_folder, "lose.png")).convert_alpha()
bg = pygame.image.load(os.path.join(images_folder, "bg.png")).convert()
losescreen1 = pygame.image.load(os.path.join(images_folder, "lose1.png")).convert_alpha()
bullet = pygame.image.load(os.path.join(images_folder, "brheart.png")).convert_alpha()
pygame.display.set_icon(icon)
sounds = [
pygame.mixer.Sound(os.path.join(images_folder, "Lofi1.mp3")),
pygame.mixer.Sound(os.path.join(images_folder, "porno.mp3")),
pygame.mixer.Sound(os.path.join(images_folder, "hueta.mp3")),
pygame.mixer.Sound(os.path.join(images_folder, "hui.mp3"))
]
nihua = pygame.mixer.Sound(os.path.join(images_folder, "nihua.mp3"))
current_sound_index = 0
def play_next_sound():
global current_sound_index
sounds[current_sound_index].play()
current_sound_index = (current_sound_index + 1) % len(sounds)
play_next_sound()
lesha = pygame.image.load(os.path.join(images_folder, "lesha.png")).convert()
screen.blit(lesha, (0,0))
pygame.display.update()
sleep(5)
ebat = pygame.image.load(os.path.join(images_folder, "ebat.png")).convert()
screen.blit(ebat, (0,0))
pygame.display.update()
sleep(5)
win = pygame.image.load(os.path.join(images_folder, "win.png")).convert()
heart1 = pygame.image.load(os.path.join(images_folder, "heart1.png")).convert_alpha()
heart2 = pygame.image.load(os.path.join(images_folder, "heart2.png")).convert_alpha()
heart3 = pygame.image.load(os.path.join(images_folder, "heart3.png")).convert_alpha()
heart4 = pygame.image.load(os.path.join(images_folder, "heart4.png")).convert_alpha()
heart5 = pygame.image.load(os.path.join(images_folder, "heart5.png")).convert_alpha()
heart6 = pygame.image.load(os.path.join(images_folder, "heart6.png")).convert_alpha()
heart7 = pygame.image.load(os.path.join(images_folder, "heart7.png")).convert_alpha()
heart8 = pygame.image.load(os.path.join(images_folder, "heart8.png")).convert_alpha()
heart9 = pygame.image.load(os.path.join(images_folder, "heart9.png")).convert_alpha()
heart10 = pygame.image.load(os.path.join(images_folder, "heart10.png")).convert_alpha()
heart11 = pygame.image.load(os.path.join(images_folder, "heart11.png")).convert_alpha()
heart12 = pygame.image.load(os.path.join(images_folder, "heart12.png")).convert_alpha()
player_speed = 10
player_x = 150
player_y = 253
is_jump = False
jump_count = 9
walk_left = [
heart1,
heart2,
heart3,
heart4,
heart5,
heart6,
heart6,
heart5,
heart4,
heart3,
heart2,
heart1,
heart7,
heart8,
heart9,
heart10,
heart11,
heart12,
heart12,
heart11,
heart10,
heart9,
heart8,
heart7
]
walk_right = [
heart1,
heart2,
heart3,
heart4,
heart5,
heart6,
heart6,
heart5,
heart4,
heart3,
heart2,
heart1,
heart7,
heart8,
heart9,
heart10,
heart11,
heart12,
heart12,
heart11,
heart10,
heart9,
heart8,
heart7
]
vraglistingame = []
player_anim_count = 0
fonts_folder = os.path.join(os.path.dirname(__file__), "fonts")
bg_x=0
vragtimer = pygame.USEREVENT + 1
pygame.time.set_timer(vragtimer, 2500)
###############################
font_path = os.path.join(fonts_folder, "Nunito.ttf")
label = pygame.font.Font(font_path, 40)
labell = pygame.font.Font(font_path, 20)
lose_label = label.render(u'Ты проиграл, ЕБАТЬ ЛОХ АХХАХАХААХАХХАХВХАВХАВХАХВ', False, (255, 0, 0))
restart_label = label.render(u'ЕбНУТЬ СНАЧЛА', False, (255, 255, 255))
restart_label_rect = restart_label.get_rect(topleft = (40, 190))
close_label = label.render(u'Закончить пытку', False, (255, 255, 255))
close_label_rect = close_label.get_rect(topleft = (40, 240))
bullets_left = 5
label1 = labell.render(u'Количество пуль:', False, (255, 255, 255))
gameplay = True
bullets = []
losescreenrect = lose_label.get_rect(topleft = (0,0))
points = 0
while running:
if not pygame.mixer.get_busy():
play_next_sound()
labullet = labell.render(u'Количество пуль: ' + str(bullets_left), False, (255, 255, 255))
huibly = labell.render(u'Количество очка: ' + str(points), False, (255, 255, 255))
if gameplay:
screen.blit(bg, (bg_x, 0))
screen.blit(bg, (bg_x + 618, 0))
keys = pygame.key.get_pressed()
###############
player_rect = walk_left[0].get_rect(topleft=(player_x, player_y))
if vraglistingame:
for (i, el) in enumerate(vraglistingame):
screen.blit(vrag, el)
el.x-=10
if el.x <-10:
vraglistingame.pop()
if player_rect.colliderect(el):
gameplay = False
if keys[pygame.K_a]:
screen.blit(walk_left[player_anim_count], (player_x, player_y))
else:
screen.blit(walk_right[player_anim_count], (player_x, player_y))
###
if not is_jump:
if keys[pygame.K_SPACE]:
is_jump = True
else:
if jump_count >=-9:
if jump_count > 0:
player_y-=(jump_count ** 2)/2
else:
player_y+=(jump_count ** 2)/2
jump_count-=1
else:
is_jump = False
jump_count = 9
if keys[pygame.K_a] and player_x >50:
player_x -= player_speed
elif keys[pygame.K_d] and player_x<500:
player_x += player_speed
if bullets:
for (i, el) in enumerate(bullets):
screen.blit(bullet, (el.x, el.y))
el.x+=8
if el.x > 630:
bullets.pop(i)
if vraglistingame:
for (index, vragg) in enumerate(vraglistingame):
if el.colliderect(vragg):
vraglistingame.pop(index)
bullets.pop(i)
points+=1
pointss = str(points)
screen.blit(labullet, (150,10))
screen.blit(huibly, (400, 10))
###
#############################
else:
points = 0
bullets_left = 5
screen.blit(lose_label, (40, 130))
screen.blit(restart_label, restart_label_rect)
screen.blit(close_label, close_label_rect)
# ыыфф
for event in pygame.event.get():
if event.type == pygame.MOUSEBUTTONDOWN:
if restart_label_rect.collidepoint(event.pos):
gameplay = True
player_x = 150
vraglistingame = []
bullets = []
if close_label_rect.collidepoint(event.pos):
running=False
pygame.display.update()
if player_anim_count == 11:
player_anim_count=0
else:
player_anim_count+=1
bg_x-=2
if bg_x==-618:
bg_x=0
for event in pygame.event.get():
if gameplay and bullets_left == 0 and event.type == pygame.MOUSEBUTTONUP and event.button == 3:
keys = pygame.key.get_pressed()
if keys[pygame.K_r] and keys[pygame.K_t]:
bullets_left=5
# ваш код здесь
if event.type == pygame.QUIT:
pygame.quit()
running = False
if event.type == vragtimer:
vraglistingame.append(vrag.get_rect(topleft=(620,250)))
if gameplay and event.type == pygame.MOUSEBUTTONDOWN and event.button == 1 and bullets_left>0:
# код, который должен выполняться во время нажатия левой кнопки мыши
bullets_left-=1
bullets.append(bullet.get_rect(topleft=(player_x + 30, player_y + 10)))
if points == 15:
screen.blit(win, (0,0))
pygame.display.update()
pygame.mixer.stop()
nihua.play()
sleep(9)
running = False
clock.tick(8)
I transferred the file to another PC, nothing starts. I would like to note that the code included an mp3 download. Then I uploaded the file without sounds, and, lo and behold, it launched. What to do? Can you recommend a different compiler, or something else?
Кефирчик is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.