Skip to content

mruiz42/TacticalRPGdemo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tactical RPG demo

alt text

CIS 29 Group 2 (Winter 2020)

  • Michael Ruiz (Group lead)
  • Lai Chi (Lychee) C.
  • Michael E.
  • Casey N.

About

A simple turn based tactical rpg game. The point of the game is to eliminate the opposing team's units to claim victory.

Controls

Keyboard:

WSAD - move cursor Enter - select Backspace - back - mute volume + raise volume

Controller:

DPad - move cursor A - select B - back

Getting started

Mac OS & Linux

Requirements:
  • SFML

official download: https://www.sfml-dev.org/tutorials/2.5/
Mac OS: brew install sfml

Ubuntu: apt-get install sfml-dev

Arch Linux: pacman -S sfml

  • GCC & GNU Make

Mac OS: brew install gcc
Ubuntu: apt-get install build-essential

Arch Linux: pacman -S base-devel

How to run:

make && make run or make clean && make run

Windows

Due to the annoying nature of developing on windows, it is not officially supported. However, it should run fine if you are able to get gcc make on some sort of windows bash shell or compile the source files yourself.

Requirements:

Gameplay

Style Guidelines

    1. Class attribute and methods are lowercase and words separated by underscore, to differentiate SFML camelcase methods.
    1. File paths are const strings in their respective class headers.
    1. Brackets are inline with the function definition.
    1. Variables declared at beginning of each function and initialized to some default value.
    1. Class accessor/mutator functions are inline header functions if they are only one line.
    1. Use define guards in header files as #CIS29GROUP2GAME_(CLASSNAME)_H
    1. Include headers in the following order: C++ library headers, SFML headers, project headers, const definitions.
    1. Do not use 'using-directives', with few exceptions the game's classes should be in it's own namespace.
    1. Each call on new should have a comment listing which function(s) triggers it's deletion. Furthermore, each deletion should assign that pointer to nullptr.
    1. Class data members should be private or protected, unless they are constant.

Credit