summaryrefslogtreecommitdiffhomepage
path: root/games/skully_escape/skully_escape.c
diff options
context:
space:
mode:
Diffstat (limited to 'games/skully_escape/skully_escape.c')
-rw-r--r--games/skully_escape/skully_escape.c408
1 files changed, 0 insertions, 408 deletions
diff --git a/games/skully_escape/skully_escape.c b/games/skully_escape/skully_escape.c
deleted file mode 100644
index 1bb598ea..00000000
--- a/games/skully_escape/skully_escape.c
+++ /dev/null
@@ -1,408 +0,0 @@
-/*******************************************************************************************
-*
-* SKULLY ESCAPE [KING GAME JAM 2015]
-*
-* A scary graphic adventure in an old mansion
-*
-* This game has been created using raylib 1.6 (www.raylib.com)
-* raylib is licensed under an unmodified zlib/libpng license (View raylib.h for details)
-*
-* Copyright (c) 2015 Ramon Santamaria (@raysan5)
-*
-********************************************************************************************/
-
-#include "raylib.h"
-#include "screens/screens.h" // NOTE: Defines global variable: currentScreen
-
-#include "player.h"
-
-#if defined(PLATFORM_WEB)
- #include <emscripten/emscripten.h>
-#endif
-
-//----------------------------------------------------------------------------------
-// Global Variables Definition (local to this module)
-//----------------------------------------------------------------------------------
-const int screenWidth = 1280;
-const int screenHeight = 720;
-
-// Required variables to manage screen transitions (fade-in, fade-out)
-float transAlpha = 0;
-bool onTransition = false;
-bool transFadeOut = false;
-int transFromScreen = -1;
-int transToScreen = -1;
-
-static int framesCounter = 0;
-
-Music music;
-
-//----------------------------------------------------------------------------------
-// Local Functions Declaration
-//----------------------------------------------------------------------------------
-void TransitionToScreen(int screen);
-void ChangeToScreen(int screen); // No transition effect
-void UpdateTransition(void);
-void DrawTransition(void);
-
-void UpdateDrawFrame(void); // Update and Draw one frame
-
-//----------------------------------------------------------------------------------
-// Main entry point
-//----------------------------------------------------------------------------------
-int main(void)
-{
- // Initialization (Note windowTitle is unused on Android)
- //---------------------------------------------------------
- InitWindow(screenWidth, screenHeight, "SKULLY ESCAPE [KING GAMEJAM 2015]");
-
- // Global data loading (assets that must be available in all screens, i.e. fonts)
- InitAudioDevice();
-
- music = LoadMusicStream("resources/audio/come_play_with_me.ogg");
- PlayMusicStream(music);
-
- font = LoadFont("resources/textures/alagard.png");
- doors = LoadTexture("resources/textures/doors.png");
- sndDoor = LoadSound("resources/audio/door.ogg");
- sndScream = LoadSound("resources/audio/scream.ogg");
-
- InitPlayer();
-
- // Setup and Init first screen
- currentScreen = LOGO;
- InitLogoScreen();
-
-#if defined(PLATFORM_WEB)
- emscripten_set_main_loop(UpdateDrawFrame, 0, 1);
-#else
- SetTargetFPS(60); // Set our game to run at 60 frames-per-second
- //--------------------------------------------------------------------------------------
-
- // Main game loop
- while (!WindowShouldClose()) // Detect window close button or ESC key
- {
- UpdateDrawFrame();
- }
-#endif
-
- // De-Initialization
- //--------------------------------------------------------------------------------------
-
- // Unload all global loaded data (i.e. fonts) here!
- UnloadPlayer();
- UnloadFont(font);
- UnloadTexture(doors);
- UnloadSound(sndDoor);
- UnloadSound(sndScream);
-
- UnloadMusicStream(music);
-
- CloseAudioDevice();
-
- CloseWindow(); // Close window and OpenGL context
- //--------------------------------------------------------------------------------------
-
- return 0;
-}
-
-void TransitionToScreen(int screen)
-{
- onTransition = true;
- transFromScreen = currentScreen;
- transToScreen = screen;
-}
-
-void ChangeToScreen(int screen)
-{
- switch (currentScreen)
- {
- case LOGO: UnloadLogoScreen(); break;
- case LOGO_RL: rlUnloadLogoScreen(); break;
- case TITLE: UnloadTitleScreen(); break;
- case ATTIC: UnloadAtticScreen(); break;
- case AISLE01: UnloadAisle01Screen();break;
- case AISLE02: UnloadAisle02Screen();break;
- case ARMORY: UnloadArmoryScreen();break;
- case LIVINGROOM: UnloadLivingroomScreen();break;
- case KITCHEN: UnloadKitchenScreen(); break;
- case BATHROOM: UnloadBathroomScreen(); break;
- case ENDING: UnloadEndingScreen(); break;
- default: break;
- }
-
- switch (screen)
- {
- case LOGO: InitLogoScreen(); break;
- case LOGO_RL: rlInitLogoScreen(); break;
- case TITLE: InitTitleScreen(); break;
- case ATTIC: InitAtticScreen(); break;
- case AISLE01: InitAisle01Screen();break;
- case AISLE02: InitAisle02Screen();break;
- case ARMORY: InitArmoryScreen();break;
- case LIVINGROOM: InitLivingroomScreen();break;
- case KITCHEN: InitKitchenScreen(); break;
- case BATHROOM: InitBathroomScreen(); break;
- case ENDING: InitEndingScreen(); break;
- default: break;
- }
-
- currentScreen = screen;
-}
-
-void UpdateTransition(void)
-{
- if (!transFadeOut)
- {
- transAlpha += 0.05f;
-
- if (transAlpha >= 1.0)
- {
- transAlpha = 1.0;
-
- switch (transFromScreen)
- {
- case LOGO: UnloadLogoScreen(); break;
- case LOGO_RL: rlUnloadLogoScreen(); break;
- case TITLE: UnloadTitleScreen(); break;
- case ATTIC: UnloadAtticScreen(); break;
- case AISLE01: UnloadAisle01Screen();break;
- case AISLE02: UnloadAisle02Screen();break;
- case ARMORY: UnloadArmoryScreen();break;
- case LIVINGROOM: UnloadLivingroomScreen();break;
- case KITCHEN: UnloadKitchenScreen(); break;
- case BATHROOM: UnloadBathroomScreen(); break;
- case ENDING: UnloadEndingScreen(); break;
- default: break;
- }
-
- switch (transToScreen)
- {
- case LOGO:
- {
- InitLogoScreen();
- currentScreen = LOGO;
- } break;
- case LOGO_RL:
- {
- rlInitLogoScreen();
- currentScreen = LOGO_RL;
- } break;
- case TITLE:
- {
- InitTitleScreen();
- currentScreen = TITLE;
- } break;
- case ATTIC:
- {
- InitAtticScreen();
- currentScreen = ATTIC;
- } break;
- case AISLE01:
- {
- InitAisle01Screen();
- currentScreen = AISLE01;
- } break;
- case AISLE02:
- {
- InitAisle02Screen();
- currentScreen = AISLE02;
- } break;
- case BATHROOM:
- {
- InitBathroomScreen();
- currentScreen = BATHROOM;
- } break;
- case LIVINGROOM:
- {
- InitLivingroomScreen();
- currentScreen = LIVINGROOM;
- } break;
- case KITCHEN:
- {
- InitKitchenScreen();
- currentScreen = KITCHEN;
- } break;
- case ARMORY:
- {
- InitArmoryScreen();
- currentScreen = ARMORY;
- } break;
- case ENDING:
- {
- InitEndingScreen();
- currentScreen = ENDING;
- } break;
- default: break;
- }
-
- transFadeOut = true;
- }
- }
- else // Transition fade out logic
- {
- transAlpha -= 0.05f;
-
- if (transAlpha <= 0)
- {
- transAlpha = 0;
- transFadeOut = false;
- onTransition = false;
- transFromScreen = -1;
- transToScreen = -1;
- }
- }
-}
-
-void DrawTransition(void)
-{
- DrawRectangle(0, 0, GetScreenWidth(), GetScreenHeight(), Fade(BLACK, transAlpha));
-}
-
-// Update and draw game frame
-void UpdateDrawFrame(void)
-{
- // Update
- //----------------------------------------------------------------------------------
- if (!onTransition)
- {
- if (player.dead)
- {
- framesCounter++;
-
- if (framesCounter > 80)
- {
- framesCounter = 0;
- player.dead = false;
- player.numLifes = 4;
-
- TransitionToScreen(TITLE);
- }
- }
-
- switch(currentScreen)
- {
- case LOGO:
- {
- UpdateLogoScreen();
-
- if (FinishLogoScreen()) ChangeToScreen(LOGO_RL);
-
- } break;
- case LOGO_RL:
- {
- rlUpdateLogoScreen();
-
- if (rlFinishLogoScreen()) TransitionToScreen(TITLE);
-
- } break;
- case TITLE:
- {
- UpdateTitleScreen();
-
- if (FinishTitleScreen() == 1) TransitionToScreen(ATTIC);
-
- } break;
- case ATTIC:
- {
- UpdateAtticScreen();
-
- if (FinishAtticScreen() == 1) TransitionToScreen(AISLE01);
-
- } break;
- case AISLE01:
- {
- UpdateAisle01Screen();
-
- if (FinishAisle01Screen() == 1) TransitionToScreen(BATHROOM);
- else if(FinishAisle01Screen() == 2) TransitionToScreen(KITCHEN);
- else if(FinishAisle01Screen() == 3) TransitionToScreen(LIVINGROOM);
-
- } break;
- case BATHROOM:
- {
- UpdateBathroomScreen();
-
- if (FinishBathroomScreen() == 1) TransitionToScreen(AISLE01);
-
- } break;
- case LIVINGROOM:
- {
- UpdateLivingroomScreen();
-
- if (FinishLivingroomScreen() == 1) TransitionToScreen(AISLE01);
- else if(FinishLivingroomScreen() == 2)TransitionToScreen(AISLE02);
-
- } break;
- case AISLE02:
- {
- UpdateAisle02Screen();
-
- if (FinishAisle02Screen() == 1) TransitionToScreen(KITCHEN);
-
- } break;
- case KITCHEN:
- {
- UpdateKitchenScreen();
-
- if (FinishKitchenScreen() == 1) TransitionToScreen(ARMORY);
- else if(FinishKitchenScreen() == 2)TransitionToScreen(AISLE02);
-
- } break;
- case ARMORY:
- {
- UpdateArmoryScreen();
-
- if(FinishArmoryScreen() == 1) TransitionToScreen(ENDING);
- else if(FinishArmoryScreen() == 2) TransitionToScreen(KITCHEN);
-
- } break;
- case ENDING:
- {
- UpdateEndingScreen();
-
- if (FinishEndingScreen()) TransitionToScreen(TITLE);
-
- } break;
- default: break;
- }
- }
- else
- {
- // Update transition (fade-in, fade-out)
- UpdateTransition();
- }
-
- UpdateMusicStream(music);
- //----------------------------------------------------------------------------------
-
- // Draw
- //----------------------------------------------------------------------------------
- BeginDrawing();
-
- ClearBackground(RAYWHITE);
-
- switch(currentScreen)
- {
- case LOGO: DrawLogoScreen(); break;
- case LOGO_RL: rlDrawLogoScreen(); break;
- case TITLE: DrawTitleScreen(); break;
- case ATTIC: DrawAtticScreen(); break;
- case AISLE01: DrawAisle01Screen();break;
- case AISLE02: DrawAisle02Screen();break;
- case BATHROOM: DrawBathroomScreen();break;
- case LIVINGROOM: DrawLivingroomScreen();break;
- case KITCHEN: DrawKitchenScreen();break;
- case ARMORY: DrawArmoryScreen();break;
- case ENDING: DrawEndingScreen(); break;
- default: break;
- }
-
- if (onTransition) DrawTransition();
-
- //DrawFPS(10, 10);
-
- EndDrawing();
- //----------------------------------------------------------------------------------
-}
-