Example #1
0
def main(x=HALF_WIDTH // 4, y=HALF_HEIGHT - 50, heart=100, eat=100, energy=100, money=0, *inventory):
    player = Player(sprites, sc, x, y, heart, eat, energy, inventory, money)
    drawing = Drawing(sc, sc_map)
    pygame.mouse.set_visible(False)
    pygame.mixer.music.load('sound\\music\\Free Zen Spirit — Zen Spirit Music.mp3')
    pygame.mixer.music.play()
    while True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                exit()
        player.movement()
        sc.fill(BLACK)

        drawing.background(player.angle)
        walls = ray_casting_walls(player, drawing.textures)
        drawing.world(walls + [obj.object_locate(player) for obj in sprites.list_of_objects])
        drawing.fps(clock)
        pygame.draw.rect(sc, BLACK, (WIDTH - 400, 0, 700, HEIGHT))
        pygame.draw.rect(sc, BLACK, (0, 0, WIDTH, 30))
        pygame.draw.rect(sc, BLACK, (0, HEIGHT - 50, WIDTH, 100))
        pygame.draw.rect(sc, WHITE, (WIDTH - 400, 0, 700, HEIGHT - 300), 3)
        pygame.draw.rect(sc, WHITE, (WIDTH - 400, HEIGHT - 300, 700, 300), 3)
        player.draw_hp()

        pygame.display.flip()
        clock.tick(FPS)
        '''
Example #2
0
import pygame
from settings import *
from player import Player
import math
from map import *
from ray_casting import *
from drawing import Drawing

pygame.init()
sc = pygame.display.set_mode((WIDTH, HEIGHT))
sc_map = pygame.Surface((WIDTH //MAP_SCALE, HEIGHT//MAP_SCALE))
clock = pygame.time.Clock()
player = Player()
drawing = Drawing(sc, sc_map)

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()

    player.movement()
    sc.fill(BLACK)

    drawing.background()
    drawing.world(player.pos, player.angle)
    drawing.fps(clock)
    drawing.mini_map(player)

    pygame.display.flip()
    clock.tick()
Example #3
0
# отрисовка меню
drawing.menu()
# запуск музыки
interaction.play_music()

while True:
    pygame.mouse.set_visible(False)
    player.movement()  # анализ нажатия клавиш
    drawing.background(player.angle)  # отрисовка неба и пола
    walls, wall_shot = ray_casting_walls(
        player, drawing.textures)  # улавливание стен лучами
    drawing.world(
        walls + [obj.object_locate(player)
                 for obj in sprites.list_of_objects])  # отрисовка мира
    drawing.fps(clock)  # счетчик фпс
    drawing.mini_map(player)  # миникарта
    drawing.player_weapon([wall_shot, sprites.sprite_shot])  # отрисовка оружия

    interaction.interaction_objects()
    interaction.npc_action(
    )  # анализ действия нпс. на данный момент бесполезно без ии
    interaction.clear_world(
    )  # удаление мертвых объектов из списка для анализа

    pygame.draw.circle(sc, (0, 255, 0), (HALF_WIDTH, HALF_HEIGHT), 5,
                       1)  # прицел

    interaction.check_win()

    pygame.display.flip()