diff --git a/public/404.html b/public/404.html new file mode 100644 index 0000000..829eda8 --- /dev/null +++ b/public/404.html @@ -0,0 +1,33 @@ + + + + + + Page Not Found + + + + +
+

404

+

Page Not Found

+

The specified file was not found on this website. Please check the URL for mistakes and try again.

+

Why am I seeing this?

+

This page was generated by the Firebase Command-Line Interface. To modify it, edit the 404.html file in your project's configured public directory.

+
+ + diff --git a/public/GUI/Controls Screen Controller.png b/public/GUI/Controls Screen Controller.png new file mode 100644 index 0000000..c9db899 Binary files /dev/null and b/public/GUI/Controls Screen Controller.png differ diff --git a/public/GUI/Controls Screen Keyboard.png b/public/GUI/Controls Screen Keyboard.png new file mode 100644 index 0000000..ff673ca Binary files /dev/null and b/public/GUI/Controls Screen Keyboard.png differ diff --git a/public/GUI/In-Game Screen Final Stage.png b/public/GUI/In-Game Screen Final Stage.png new file mode 100644 index 0000000..cd93031 Binary files /dev/null and b/public/GUI/In-Game Screen Final Stage.png differ diff --git a/public/GUI/In-Game Screen.png b/public/GUI/In-Game Screen.png new file mode 100644 index 0000000..992e82a Binary files /dev/null and b/public/GUI/In-Game Screen.png differ diff --git a/public/GUI/Level Selection Screen.png b/public/GUI/Level Selection Screen.png new file mode 100644 index 0000000..f8a55db Binary files /dev/null and b/public/GUI/Level Selection Screen.png differ diff --git a/public/GUI/Logo.png b/public/GUI/Logo.png new file mode 100644 index 0000000..82f3d4c Binary files /dev/null and b/public/GUI/Logo.png differ diff --git a/public/GUI/Main Menu.png b/public/GUI/Main Menu.png new file mode 100644 index 0000000..9d032db Binary files /dev/null and b/public/GUI/Main Menu.png differ diff --git a/public/GUI/Splash Screen.png b/public/GUI/Splash Screen.png new file mode 100644 index 0000000..19e6c08 Binary files /dev/null and b/public/GUI/Splash Screen.png differ diff --git a/public/ShatteredSwordGameDesignDocument.html b/public/ShatteredSwordGameDesignDocument.html new file mode 100644 index 0000000..d98b9f5 --- /dev/null +++ b/public/ShatteredSwordGameDesignDocument.html @@ -0,0 +1,231 @@ + + + + + + + + Shattered Sword Game Design + + + + + + + + + + + + + + + + +

+ Shattered Sword
+ Game Design Document +

+ + +

+ by Henry Chen, Kelly Peng, Xinyu Xu +

+ +
+

INTRODUCTION

+

+ This document describes a game called β€œShattered Sword, ” which is designed to be a simple, 2D platformer, roguelike game. The game will employ sprite-based animation, tiled backgrounds, collision detection, physics, AI, gravity, efficient memory management, render threading, and more basic 2D game techniques. +

+
+

TECHNOLOGY

+

+ Shattered Sword will be developed for the Windows Platform using the McKilla's Gorilla game engine, which is a bare-bones engine developed by Richard McKenna for rapid prototyping 2D games. DirectX will be used as the underlying rendering technology. Aseprite will be used to create sprites and tiles. +

+
+

BACK STORY

+

+ Hiro (hero) is the prince of a fallen kingdom that was destroyed by an evil monster. The monster has shattered the legendary royal greatsword, the only weapon powerful enough to slay the monster. The first piece of the greatsword was given to Hiro as the weapon. Hiro must go on a journey to retrieve the five pieces of the greatsword to slay the evil monster and bring prosperity back to his kingdom. +

+
+

OBJECTIVE

+

+ Hiro must travel the five regions in which the sword shards are scattered to collect the pieces to reassemble the sword. Each shard is guarded by enemies, and a boss that will seek to stop Hiro. Enemies have the chance to drop buffs or amulets that will strengthen Hiro on his journey. Once Hiro has obtained a shard, the enemies in the other regions will become stronger since they have had more time to absorb the energy of the sword shard they are guarding. Once Hiro has reassembled all six pieces of the sword, he will finally be able to face the final boss. +

+
+

GAMEPLAY

+

+ The game will work like a platformer, with Hiro able to run left and right, and jump up or down onto platforms and other surfaces such that we may scroll up and down. Hiro will have to be careful with the enemies that he encountered along the way. By completing each level, Hiro gains back one pieces of the sword shard at a time. After passing the first 5 levels, Hiro will be able to defeat the final boss with the completed sword. +

+

+ There are three types of enemies besides the final boss: +

+ +

Possible buffs gain from defeating elite enemies:

+ +

+ Besides the temporal buffs above, the player can also gain permanant buff from killing mini bosses. + After killing each boss, the main character can gain: +

+ +
+

CONTROLS

+

+ This game will be played using either a keyboard or a xbox controller. Once started, use the following: Keybord (xbox controller) - function +

+ +
+

GRAPHICAL USER INTERFACE

+

+

+ + + + + + + + + + + + + + +

+
+

ARTWORK

+

All artwork in the game will be original. The following needs to be created:

+ + + +

SOUND EFFECTS

+

All sound effects will be original. Sounds must be made to coincide with each of the following events:

+ +
+

MUSIC

+

+ Game Music will be added when time permits. +

+
+ + \ No newline at end of file diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..9b6b645 --- /dev/null +++ b/public/index.html @@ -0,0 +1,89 @@ + + + + + + Welcome to Firebase Hosting + + + + + + + + + + + + + + + + + + + +
+

Welcome

+

Firebase Hosting Setup Complete

+

You're seeing this because you've successfully setup Firebase Hosting. Now it's time to go build something extraordinary!

+ Open Hosting Documentation +
+

Firebase SDK Loading…

+ + + + diff --git a/src/main.ts b/src/main.ts index 502e330..467153a 100644 --- a/src/main.ts +++ b/src/main.ts @@ -11,6 +11,19 @@ import MainMenu from "./shattered_sword/Scenes/MainMenu"; let options = { canvasSize: {x: 1200, y: 800}, // The size of the game clearColor: {r: 0, g: 0, b: 0}, // The color the game clears to + inputs: [ + {name: "left", keys: ["a"]}, //TODO - add arrow keys + {name: "right", keys: ["d"]}, + {name: "up", keys: ["w"]}, + {name: "down", keys: ["s"]}, + {name: "jump", keys: ["x","space"]}, + {name: "attack", keys: ["j","z","enter"]}, + {name: "dash", keys: ["k","z"]}, + {name: "skill", keys: ["l","v"]}, + {name: "inventory", keys: ["i","b"]}, + {name: "pause", keys: ["escape"]}, + {name: "tab", keys: ["tab"]} + ], useWebGL: false, // Tell the game we want to use webgl showDebug: true // Whether to show debug messages. You can change this to true if you want } @@ -19,7 +32,9 @@ import MainMenu from "./shattered_sword/Scenes/MainMenu"; const game = new Game(options); // Start our game - game.start(MainMenu, {}); + game.start(MainMenu, {}); + //TODO - change to splash screen once available + //game.start(SplashScreen,{}); })(); function runTests(){}; \ No newline at end of file diff --git a/src/shattered_sword/Scenes/MainMenu.ts b/src/shattered_sword/Scenes/MainMenu.ts index c8cd4bf..7c964ef 100644 --- a/src/shattered_sword/Scenes/MainMenu.ts +++ b/src/shattered_sword/Scenes/MainMenu.ts @@ -76,7 +76,7 @@ export default class MainMenu extends Scene { const aboutHeader =