66 lines
1.8 KiB
Python
66 lines
1.8 KiB
Python
import pygame
|
|
import os
|
|
from pathlib import Path
|
|
import pocket_friends
|
|
from pocket_friends.game_files.surfaces import title
|
|
|
|
# FPS for the entire game to run at.
|
|
game_fps = 16
|
|
# The resolution the game is rendered at.
|
|
game_res = 80
|
|
script_dir = os.path.dirname(os.path.abspath(__file__))
|
|
save_dir = os.path.join(Path.home(), '.pocket_friends')
|
|
resources_dir = script_dir + '/surfaces/resources'
|
|
starting_surface = 'title'
|
|
|
|
|
|
# Gets the directory of the script for importing and the save directory
|
|
|
|
|
|
def game():
|
|
"""
|
|
Starts the game.
|
|
"""
|
|
pygame.init()
|
|
|
|
# The game is normally rendered at 80 pixels and upscaled from there. If changing displays, change the
|
|
# screen_size to reflect what the resolution of the new display is.
|
|
screen_size = 320
|
|
|
|
pygame.mouse.set_visible(False)
|
|
pygame.display.set_caption('Pocket Friends {0}'.format(pocket_friends.__version__))
|
|
window = pygame.display.set_mode((screen_size, screen_size))
|
|
surface = globals()[starting_surface].Surface((game_res, game_res), resources_dir)
|
|
|
|
# Add an icon to the pygame window.
|
|
icon = pygame.image.load(script_dir + '/icon/icon.png').convert_alpha()
|
|
pygame.display.set_icon(icon)
|
|
|
|
clock = pygame.time.Clock()
|
|
|
|
# Default game state when the game first starts.
|
|
running = True
|
|
|
|
# A group of all the sprites on screen. Used to update all sprites at onc
|
|
all_sprites = pygame.sprite.Group()
|
|
|
|
# Time since last input. Used to help regulate double presses of buttons.
|
|
last_input_tick = 0
|
|
|
|
while running:
|
|
clock.tick(game_fps)
|
|
surface.update()
|
|
frame = pygame.transform.scale(surface, (screen_size, screen_size))
|
|
window.blit(frame, frame.get_rect())
|
|
|
|
pygame.display.flip()
|
|
|
|
|
|
def main():
|
|
"""
|
|
Calls the game() function to start the game.
|
|
"""
|
|
game()
|
|
|
|
pygame.quit()
|