2015-05-03 22:02:39 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <string>
|
|
|
|
#include <vector>
|
|
|
|
#include <memory>
|
|
|
|
|
|
|
|
namespace ace {
|
2015-05-03 22:32:44 +00:00
|
|
|
namespace medical {
|
2015-05-03 22:02:39 +00:00
|
|
|
|
2015-05-03 22:32:44 +00:00
|
|
|
namespace injuries {
|
|
|
|
class DamageType;
|
|
|
|
class InjuryType;
|
|
|
|
class OpenWound;
|
|
|
|
}
|
2015-05-03 22:02:39 +00:00
|
|
|
|
2015-05-03 22:32:44 +00:00
|
|
|
class handleDamage
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
~handleDamage();
|
2015-05-03 22:02:39 +00:00
|
|
|
|
2015-05-03 22:32:44 +00:00
|
|
|
/**
|
|
|
|
*
|
|
|
|
*/
|
2015-05-14 14:23:01 +00:00
|
|
|
static std::vector<injuries::OpenWound> HandleDamageWounds(const std::string& selectionName, double amountOfDamage, const std::string& typeOfDamage);
|
2015-05-03 22:02:39 +00:00
|
|
|
|
2015-05-03 22:32:44 +00:00
|
|
|
/**
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
static void AddDamageType(const std::vector<std::string>& sqfDamageTypeDefinition);
|
2015-05-03 22:02:39 +00:00
|
|
|
|
2015-05-03 22:32:44 +00:00
|
|
|
/**
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
static void AddInjuryType(const std::vector<std::string>& sqfInjuryDefinition);
|
2015-05-03 22:02:39 +00:00
|
|
|
|
2015-05-03 22:32:44 +00:00
|
|
|
/**
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
static std::string SetInjuryTypeData(const std::string& data);
|
2015-05-03 22:02:39 +00:00
|
|
|
|
|
|
|
|
2015-05-03 22:32:44 +00:00
|
|
|
/**
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
static int SelectionToNumber(const std::string& selectionName);
|
2015-05-03 22:02:39 +00:00
|
|
|
|
2015-05-03 22:32:44 +00:00
|
|
|
/**
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
static std::vector<std::shared_ptr<injuries::InjuryType>> GetInjuryInfoFor(const std::string& damageType);
|
2015-05-03 22:02:39 +00:00
|
|
|
|
2015-05-03 22:32:44 +00:00
|
|
|
/**
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
static void FinalizeDefinitions();
|
2015-05-03 22:02:39 +00:00
|
|
|
|
2015-05-03 22:32:44 +00:00
|
|
|
private:
|
|
|
|
handleDamage();
|
|
|
|
|
|
|
|
static std::vector<std::shared_ptr<injuries::DamageType>> damageTypes;
|
|
|
|
static std::vector<std::shared_ptr<injuries::InjuryType>> injuryTypes;
|
|
|
|
static std::vector<std::string> selections;
|
|
|
|
static std::vector<std::string> hitPoints;
|
|
|
|
};
|
|
|
|
}
|
2015-05-03 22:02:39 +00:00
|
|
|
}
|