Skip to content

Latest commit

 

History

History
138 lines (114 loc) · 2.76 KB

README.md

File metadata and controls

138 lines (114 loc) · 2.76 KB

ProGuidesOOP

About

This App is a demonstration of OOP/DB Design using World of Warcraft player characters and items.

Each item has a specific slot it can be equipped to:
  • Helm
  • Shoulder
  • Cloak
  • Chest
  • Bracer
  • Glove
  • Belt
  • Legs
  • Ring (2 slots)
  • Trinket (2 slots)
  • Weapon (2 hander)
These items give a non-negative amount of:
  • Health
  • Stamina
  • Critical Strike Rating
  • Haste Rating
  • Mastery Rating
  • Versatility Rating

Database Design

The database tables created for this project have the following schema:

StatTypes

Column Value
ID INT
Name STRING

SlotTypes

Column Value
ID INT
Name STRING
SlotNums INT

Item

Column Value
ID INT
Name STRING
SlotTypeID INT (Foreign Key)

ItemStat

Column Value
ID INT
ItemID INT (Foreign Key)
StatTypeID INT (Foreign Key)
Value INT
BaseAttr BOOL
TimeActive INT

Character

Column Value
ID INT
Name STRING

CharacterSlot

Column Value
ID INT
CharacterID INT (Foreign Key)
SlotTypeID INT (Foreign Key)
ItemID INT (Foreign Key)
Active BOOL

Event

Column Value
ID INT
Name STRING

CharacterEvents

Column Value
ID INT
CharacterID INT (Foreign Key)
EventID INT (Foreign Key)
TimeStamp DATETIME

Installation

A sql dump can be found in the exports folder under the app directory

A postman export can be found in the postman folder under the app directory

Server

Install MySQL and start

$ brew install mysql
$ brew services start mysql
# navigate to server folder and 
install dependencies
$ cd server
$ npm install
$ npm run start

Client

# navigate to client folder and install dependencies
$ cd client
$ npm install
$ node script.js