Config.h 2.71 KiB
#pragma once
#include <SFML/Graphics.hpp>
namespace config {
	// :
	const unsigned int FRAME_RATE_LIMIT = 60;
	// :
	const sf::Vector2f BUTTON_SIZE = { 250, 70 };
	const size_t BUTTON_FONT_SIZE = static_cast<size_t>(BUTTON_SIZE.y / 1.5f);
	const size_t NAME_FONT_SIZE = static_cast<size_t>(1.5f* BUTTON_SIZE.y);
	const float BUTTON_FRAME_THICKNESS = 3.0f;
	const char SELECT_LEVEL_TITLE[] = "Pacman and caves";
	const char MENU_NAME[] = "Pacman and caves";
	const char TUTOR_NAME[] = "Enter to tutorial ?";
	const sf::VideoMode SELECT_LEVEL_VIDEO_MODE{ 1080, 720 };
	const char BUTTON_TEXT_EASY[] = "Easy";
	const char BUTTON_TEXT_MEDIUM[] = "Medium";
	const char BUTTON_TEXT_HARD[] = "Hard";
	const char BUTTON_TEXT_EXIT[] = "Exit";
	// :
	const sf::VideoMode GAME_VIDEO_MODE{ 1080, 720 };
	const char EASY_GAME_TITLE[] = "Level: Easy";
	const char MEDIUM_GAME_TITLE[] = "Level: Medium";
	const char HARD_GAME_TITLE[] = "Level: Hard";
	const char TUTOR_TEXT[] = "Push SPACE for launch fireball: 50MP\nPush E for use ultimate skill: 70MP\nPush Q for use magnit: 100MP";
	const float EASY_GAME_ENEMY_RATIO = 0.0f;
	const float MEDIUM_GAME_ENEMY_RATIO = 0.03f;
	const float HARD_GAME_ENEMY_RATIO = 0.07f;
	const float ROOM_SIZE = 50;
	const float GAME_ENEMY_SIZE = ROOM_SIZE * 0.7;
	const float GAME_FOOD_SIZE = ROOM_SIZE * 0.2;
	const sf::Vector2f BAR_SIZE = { 200, 15 };
	const float PACMAN_MAX_MP = 300;
	const float PACMAN_START_MP = 50;
	const float FIREBALL_COST = 20;
	const float ULTIMATE_COST = 70;
	const float MAGNIT_COST = PACMAN_MAX_MP;
	const float MP_REGEN = 2.0f/60;
	const float POTION_MP = 10;
	const float SPAWN_INV = 5;
	const size_t POTION_RATE = 900;
	// :
	const float GAME_PACMAN_SIZE = ROOM_SIZE * 0.8;
	const sf::Keyboard::Key KEY_LEFT = sf::Keyboard::A;
	const sf::Keyboard::Key KEY_RIGHT = sf::Keyboard::D;
	const sf::Keyboard::Key KEY_UP = sf::Keyboard::W;
	const sf::Keyboard::Key KEY_DOWN = sf::Keyboard::S;
	// :
	const sf::Color BUTTON_COLOR_TEXT{ 255, 255, 255 };
	const sf::Color BUTTON_COLOR_FILL{ 90, 90, 180, 0};
	const sf::Color BUTTON_COLOR_SELECTION{ 90, 90, 180, 50 };
	const sf::Color BUTTON_COLOR_FRAME{ 0, 0, 0 };
	const sf::Color SELECT_LEVEL_BACKGROUND_COLOR{ 230,230,230 };
	const sf::Color GAME_COLOR_BACKGROUND_INGAME{ 20,20,20 };
	const sf::Color GAME_COLOR_BACKGROUND_WIN{ 0, 255, 0 };
	const sf::Color GAME_COLOR_BACKGROUND_LOST{ 255, 0, 0 };
	const sf::Color GAME_COLOR_PACMAN{ 250, 150, 0 };
	const sf::Color GAME_COLOR_ROOM{ 0, 0, 0 };
	const sf::Color GAME_COLOR_WALL{ 80, 190, 255 };
	const sf::Color GAME_COLOR_TELEPORT{ 255, 0, 0 };
	const sf::Color GAME_FOOD_COLOR{ 0, 200, 100 };
	const sf::Color GAME_ENEMY_COLOR{ 255, 50, 0 };
enum Direction { INVALID = -1, LEFT, RIGHT, UP, DOWN };