NerfUS game coordinator for the Nerf gun firing range

Dependencies:   HardwareInterface mbed-rtos mbed

Fork of NerfUS by NerfUS

source/PlayableGame.cpp

Committer:
Ismael Balafrej
Date:
2017-03-17
Branch:
PlayableGame
Revision:
17:48474266a361
Child:
18:469c8b2a9af9

File content as of revision 17:48474266a361:

#include "PlayableGame.hpp"

PlayableGame::PlayableGame(RandomNumberGenerator& random_number_generator) :
    random_number_generator(random_number_generator)
{
}

bool PlayableGame::IsWeaponValid(int weaponId)
{
    return true;
}

TargetInfo PlayableGame::GetRandomTarget(int timeout_ms)
{
    TargetInfo new_target;

    new_target.id = random_number_generator.get(0, NUMBER_OF_TARGETS);
    new_target.type = random_number_generator.get(0, 1) == 0 ? TARGET_TYPE_ALLY : TARGET_TYPE_ENEMY;
    new_target.timeout_ms = timeout_ms;

    return new_target;
}

int PlayableGame::GetPoints()
{
    return points;
}

GameStats PlayableGame::GetStats()
{
    stats.accuracy = stats.numberOfHits * 10000 / (stats.numberOfHits + stats.numberOfMiss);
    return stats;
}