diff --git a/build/BeagleRescue b/build/BeagleRescue new file mode 100755 index 0000000..64debd5 Binary files /dev/null and b/build/BeagleRescue differ diff --git a/src/config/credits.json b/src/config/credits.json index 74e2dfd..55cd60b 100644 --- a/src/config/credits.json +++ b/src/config/credits.json @@ -1,6 +1,6 @@ { "GameName":"Graveyard Shift", -"Developers": "Alan Youngblood", +"Developers": "Alan Youngblood, Simon Zaleski", "LibraryDevelopers": "Sam Lantinga, Dave Gamble, Carl Birch, Job Vranish, David Lafreniere", "SpecialThanks":"Nic Allen, Brian Lhota" } diff --git a/src/fsm/ConcreteGMStates.cpp b/src/fsm/ConcreteGMStates.cpp deleted file mode 100644 index 4dfd000..0000000 --- a/src/fsm/ConcreteGMStates.cpp +++ /dev/null @@ -1,95 +0,0 @@ -#include "ConcreteGMStates.h" -#include - -void TitleScreen::toggle(GameManager* gamemgr) -{ - // TitleScreen -> LoadingScreen - printf("Entering TitleScreen state \n"); - gamemgr->setState(LoadingScreen::getInstance()); - printf("Transition from TitleScreen to LoadingScreen\n"); -} - -GameManagerState & TitleScreen::getInstance() -{ - static TitleScreen singleton; - return singleton; -} - -void LoadingScreen::toggle(GameManager* gamemgr) -{ - // LoadingScreen -> DayTime - printf("Entering LoadingScreen state \n"); - gamemgr->setState(DayTime::getInstance()); - printf("Transition from LoadingScreen to DayTime\n"); -} - -GameManagerState & LoadingScreen::getInstance() -{ - static LoadingScreen singleton; - return singleton; -} - -void DayTime::toggle(GameManager* gamemgr) -{ - // DayTime -> NightTime - printf("Entering DayTime state \n"); - gamemgr->setState(NightTime::getInstance()); - printf("Transition from DayTime to NightTime\n"); -} - -GameManagerState & DayTime::getInstance() -{ - static DayTime singleton; - return singleton; -} - -void NightTime::toggle(GameManager* gamemgr) -{ - if(!gameOver) - { - // NightTime -> DayTime - printf("Entering NightTime state \n"); - gamemgr->setState(DayTime::getInstance()); - printf("Transition from NightTime to DayTime\n"); - } else - { - // NightTime -> GameOver - printf("Entering NightTime state \n"); - gamemgr->setState(GameOver::getInstance()); - printf("Transitioning from NightTime to GameOver \n"); - } -} - -GameManagerState & NightTime::getInstance() -{ - static NightTime singleton; - return singleton; -} - -void PauseScreen::toggle(GameManager* gamemgr) -{ - // PauseScreen -> DayTime - printf("Entering PauseScreen state \n"); - gamemgr->setState(DayTime::getInstance()); - printf("Transition from TitleScreen to LoadingScreen\n"); -} - -GameManagerState & PauseScreen::getInstance() -{ - static PauseScreen singleton; - return singleton; -} - -void GameOver::toggle(GameManager* gamemgr) -{ - // GameOver -> TitleScreen - printf("Entering TitleScreen state \n"); - gamemgr->setState(TitleScreen::getInstance()); - printf("Transition from TitleScreen to LoadingScreen\n"); -} - -GameManagerState & GameOver::getInstance() -{ - static GameOver singleton; - return singleton; -} diff --git a/src/fsm/ConcreteGMStates.h b/src/fsm/ConcreteGMStates.h deleted file mode 100644 index f7216f5..0000000 --- a/src/fsm/ConcreteGMStates.h +++ /dev/null @@ -1,82 +0,0 @@ -#pragma once -#include "GameManagerState.h" -#include "GameManager.h" - -class TitleScreen : public GameManagerState -{ -public: - void enter(GameManager * gamemgr) {}; - void toggle(GameManager * gamemgr); - void exit(GameManager* gamemgr) {} - static GameManagerState& getInstance(); -private: - TitleScreen(){} - TitleScreen(const TitleScreen& other); - TitleScreen& operator=(const TitleScreen& other); -}; - -class LoadingScreen : public GameManagerState -{ -public: - void enter(GameManager * gamemgr) {}; - void toggle(GameManager * gamemgr); - void exit(GameManager* gamemgr) {} - static GameManagerState& getInstance(); -private: - LoadingScreen(){} - LoadingScreen(const LoadingScreen& other); - LoadingScreen& operator=(const LoadingScreen& other); -}; - -class DayTime : public GameManagerState -{ -public: - void enter(GameManager * gamemgr) {}; - void toggle(GameManager * gamemgr); - void exit(GameManager* gamemgr) {} - static GameManagerState& getInstance(); -private: - DayTime(){} - DayTime(const DayTime& other); - DayTime& operator=(const DayTime& other); -}; - -class NightTime : public GameManagerState -{ -public: - void enter(GameManager * gamemgr) {}; - void toggle(GameManager * gamemgr); - void exit(GameManager* gamemgr) {} - bool gameOver; - static GameManagerState& getInstance(); -private: - NightTime(){} - NightTime(const NightTime& other); - NightTime& operator=(const NightTime& other); -}; - -class GameOver : public GameManagerState -{ -public: - void enter(GameManager * gamemgr) {}; - void toggle(GameManager * gamemgr); - void exit(GameManager* gamemgr) {} - static GameManagerState& getInstance(); -private: - GameOver(){} - GameOver(const GameOver& other); - GameOver& operator=(const GameOver& other); -}; - -class PauseScreen : public GameManagerState -{ -public: - void enter(GameManager * gamemgr) {}; - void toggle(GameManager * gamemgr); - void exit(GameManager* gamemgr) {} - static GameManagerState& getInstance(); -private: - PauseScreen(){} - PauseScreen(const PauseScreen& other); - PauseScreen& operator=(const PauseScreen& other); -}; diff --git a/src/fsm/GameManager.cpp b/src/fsm/GameManager.cpp deleted file mode 100644 index a678495..0000000 --- a/src/fsm/GameManager.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include "GameManager.h" -#include "ConcreteGMStates.h" - -GameManager::GameManager() -{ - currentState = &TitleScreen::getInstance(); -} - -void GameManager::setState(GameManagerState& newState) -{ - currentState->exit(this); // do stuff before changing states - currentState = &newState; // change the states - currentState->enter(this); // do stuff after changing states -} - -void GameManager::toggle() -{ - currentState->toggle(this); -} - diff --git a/src/fsm/GameManager.h b/src/fsm/GameManager.h deleted file mode 100644 index f2512e0..0000000 --- a/src/fsm/GameManager.h +++ /dev/null @@ -1,19 +0,0 @@ -#pragma once -#include "GameManagerState.h" - -// Forward declaration to resolve circular dependency/include -class GameManagerState; - -class GameManager -{ -public: - GameManager(); - - inline GameManagerState* getCurrentState() const { return currentState; } - void toggle(); - - void setState(GameManagerState& newState); - -private: - GameManagerState* currentState; -}; diff --git a/src/fsm/GameManagerState.h b/src/fsm/GameManagerState.h deleted file mode 100644 index ceeba31..0000000 --- a/src/fsm/GameManagerState.h +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once -#include "GameManager.h" - -// Forward declaration to resolve circular dependency/include -class GameManager; - -class GameManagerState -{ -public: - virtual void enter(GameManager* gamemgr) = 0; - virtual void toggle(GameManager* gamemgr) = 0; - virtual void exit(GameManager* gamemgr) = 0; - virtual ~GameManagerState() {} -}; diff --git a/src/game/Game.cpp b/src/game/Game.cpp index 8ea7506..9bb5c59 100644 --- a/src/game/Game.cpp +++ b/src/game/Game.cpp @@ -21,9 +21,6 @@ #include "../ui/UIText.h" #include "../ui/UINineSlice.h" #include "../cjson/cJSON.h" -#include "../fsm/GameManager.h" -#include "../fsm/GameManagerState.h" -// #include "../fsm/ConcreteGMStates.h" Map* map; Manager manager; @@ -103,14 +100,14 @@ void Game::init(const char *title, int width, int height, bool fullscreen, int g assets->AddTexture("textBox", "assets/textures/ui/ui-element-tombstone.png"); assets->AddTexture("tree","assets/textures/objects/tree.png"); assets->AddTexture("jewel","assets/textures/objects/jewel.png"); - assets->AddTexture("3","assets/textures/ui/day-night-icon.png"); + assets->AddTexture("daynighticon","assets/textures/ui/day-night-icon.png"); assets->AddTexture("robber","assets/textures/actors/robberrodent.png"); assets->AddMusicTrack("simonZ","assets/audio/music/sailing16.ogg"); assets->AddSoundClip("bwoop","assets/audio/sfx/bwoop.wav"); map = new Map("terrain",globalScale,16); - const char* myText = "Graveyard Shift"; + const char* myText = "Beagle Rescue"; text = new UIText(myText, "font", 0, 0, 8, 12, globalScale); text->ParseString(myText, 12, 22, globalScale); SDL_Rect myDestRect = SDL_Rect(); @@ -163,18 +160,6 @@ void Game::init(const char *title, int width, int height, bool fullscreen, int g enemy.addComponent("robber", SpriteComponent::spriteAnimation, "assets/textures/actors/robberrodent.json"); enemy.addGroup(groupEnemies); - printf("Starting up GameManager\n"); - GameManager gamemgr = GameManager(); - gamemgr.toggle(); - gamemgr.toggle(); - gamemgr.toggle(); - gamemgr.toggle(); - gamemgr.toggle(); - gamemgr.toggle(); - gamemgr.toggle(); - -// gamemgr.setState(GameManager::setState(GameManagerState::enter(&PauseScreen))); - printf("GameManager Demo Completed.\n"); } else { SDL_LogError(SDL_LOG_CATEGORY_APPLICATION, "Couldn't Initialize SDL: %s", SDL_GetError()); isRunning = false; @@ -214,10 +199,9 @@ void Game::update() if (Mix_PlayingMusic() == 0) { // std::cout << "Play Music Now" << std::endl; -// Mix_PlayMusic(assets->GetMusicTrack("simonZ"), -1); + Mix_PlayMusic(assets->GetMusicTrack("simonZ"), -1); } - manager.refresh(); manager.update(); @@ -292,12 +276,12 @@ void Game::render() { letter->draw(); } - Vector2D origPt; - Vector2D destPt; - origPt.Zero(); - destPt.x = 320.0*gScale; - destPt.y = 240.0*gScale; - drawLine(origPt,destPt,255,0,0); +// Vector2D origPt; +// Vector2D destPt; +// origPt.Zero(); +// destPt.x = 320.0*gScale; +// destPt.y = 240.0*gScale; +// drawLine(origPt,destPt,255,0,0); SDL_RenderPresent(renderer); } @@ -317,8 +301,8 @@ void Game::printDebug(char* debugInfo) printf("\n"); } -void Game::drawLine(Vector2D srcpt, Vector2D destpt, int red, int green, int blue) -{ - SDL_SetRenderDrawColor(renderer, red, green, blue, 255); - SDL_RenderDrawLine(renderer, srcpt.x, srcpt.y, destpt.x, destpt.y); -} +// void Game::drawLine(Vector2D srcpt, Vector2D destpt, int red, int green, int blue) +// { +// SDL_SetRenderDrawColor(renderer, red, green, blue, 255); +// SDL_RenderDrawLine(renderer, srcpt.x, srcpt.y, destpt.x, destpt.y); +// } diff --git a/src/game/Game.hpp b/src/game/Game.hpp index 6c48908..45f836a 100644 --- a/src/game/Game.hpp +++ b/src/game/Game.hpp @@ -29,7 +29,7 @@ public: void render(); void clean(); void printDebug(char* debugInfo); - void drawLine(Vector2D srcpt, Vector2D destpt, int red, int green, int blue); +// void drawLine(Vector2D srcpt, Vector2D destpt, int red, int green, int blue); bool running() { return isRunning; } // static void AddTile(int srcX, int srcY, int xpos, int ypos); static SDL_Renderer *renderer;