Sky Zone Omega - PC Version
 All Classes Namespaces Files Functions Variables Macros
S_Game.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <SDL.h>
4 #include <time.h>
5 #include <iostream>
6 #include <vector>
7 #include "S_State.h"
8 #include "S_StateManager.h"
9 #include "../Core/C_Texture.h"
10 #include "../Core/C_Audio.h"
11 #include "../Core/C_Music.h"
12 #include "../Core/C_Text.h"
13 #include "../BackgroundSystem/B_BackgroundManager.h"
14 #include "../Enitites/Player/EP_Player.h"
15 #include "../Enitites/E_EntityManager.h"
16 #include "../Gameplay/G_Gameplay.h"
17 #include "Menus/SM_MainMenu.h"
18 #include "Menus/SM_EndGame.h"
19 #include "Menus/SM_Help.h"
20 #include "../UI/UI_Button.h"
21 
26 class S_Game : public S_State
27 {
28 public:
37 
41  ~S_Game();
42 
47  bool input();
48 
53  void update(float dt);
54 
58  void draw();
59 
60 private:
85  SDL_Colour minFireTint;
87  SDL_Colour maxFireTint;
98 
102  void resetGame();
103 };
Creates a Button object that inherits Entity.
Definition: UI_Button.h:11
E_EntityManager * entityManager
The EntityManager.
Definition: S_Game.h:73
B_BackgroundManager * background
The Background.
Definition: S_Game.h:66
EP_Player * player
The Player.
Definition: S_Game.h:68
C_Texture * playerSprite
The Player textures.
Definition: S_Game.h:70
C_Vec2 dimensions
The screen dimensions.
Definition: S_State.h:53
UI_Button * helpButton
The Help button.
Definition: S_Game.h:93
Creates a Text Texture for use with a renderer using the Text formating.
Definition: C_Text.h:13
S_Game(S_StateManager *stateManager, SDL_Renderer *renderer, C_Vec2 dimensions, C_Music *backgroundMusic)
Constructs the Game State object.
Definition: S_Game.cpp:3
C_Music * backgroundMusic
The background music.
Definition: S_Game.h:64
Contains State functions and data to be inherited by all other states.
Definition: S_State.h:14
void update(float dt)
A function to update the Game State.
Definition: S_Game.cpp:147
void draw()
A function to draw the Game State to the screen.
Definition: S_Game.cpp:180
C_Texture * fireArrowButtonSpritesheet
The fire arrow button spritesheet.
Definition: S_Game.h:97
Contains the data and functions for the Gameplay.
Definition: G_Gameplay.h:13
SDL_Colour minFireTint
The min tint colour for use with the fire effect.
Definition: S_Game.h:85
Contains the Vec2 structure with functions and overloaded operators.
Definition: C_Vec2.h:7
UI_Button * fireArrowButton
The fire arrow button.
Definition: S_Game.h:91
C_Texture * fireSprite
The Fire Effect texture.
Definition: S_Game.h:83
void resetGame()
A function to reset the Game.
Definition: S_Game.cpp:240
SDL_Colour maxFireTint
The max tint colour for use with the fire effect.
Definition: S_Game.h:87
S_StateManager * stateManager
A pointer to the state manager.
Definition: S_State.h:49
C_Texture * playerArcherSprite
Definition: S_Game.h:71
~S_Game()
Destructs the Game State object.
Definition: S_Game.cpp:59
A class that manages all of the entities in the game with the exception of the player.
Definition: E_EntityManager.h:27
Handles music using SDL_Mixer.
Definition: C_Music.h:12
Contains the data and functions for the player.
Definition: EP_Player.h:16
C_Texture * helpButtonSpritesheet
The help button spritesheet.
Definition: S_Game.h:95
Handles the functions for all State objects.
Definition: S_StateManager.h:11
bool input()
Handles the Game State input.
Definition: S_Game.cpp:78
C_Vec2 mousePos
The mouse position.
Definition: S_Game.h:62
G_Gameplay * gameplay
The Gameplay.
Definition: S_Game.h:75
Contains the functions to manage the background objects.
Definition: B_BackgroundManager.h:12
A State that contains and runs the Game.
Definition: S_Game.h:26
SDL_Renderer * renderer
A pointer to the renderer.
Definition: S_State.h:51
C_Texture * scoreScroll
The texture for the scoreScroll.
Definition: S_Game.h:77
C_Texture * healthScroll
The texture for the healthScroll.
Definition: S_Game.h:79
Creates a Texture for use with a renderer.
Definition: C_Texture.h:13
C_Text * numOfCoins
The number of coins text to be displayed.
Definition: S_Game.h:81
float * universalSpeed
A pointer for the universal speed of the game.
Definition: S_Game.h:89