rendered paste body#pragma once
#include <string>
#include "CharClass.h"
using namespace CharClass;
class CharacterFactory
{
public:
CharacterFactory(std::string name, CharClass::Enum myFirstClass, CharClass::Enum mySecondClass);
~CharacterFactory(void);
private:
CharClass::Enum currentClass;
Character myCharacter;
CharacterArgs CharacterArgs;
}
---------------------------------------------------------------------------
#include "CharacterFactory.h"
#include "Character.h"
#include "Mage.h"
#include "Warrior.h"
#include "Rogue.h"
#include "CharClass.h"
#include "CharacterArgs.h"
#include <string>
using namespace CharClass;
CharacterFactory::CharacterFactory(std::string name_, CharClass::Enum myFirstClass_, CharClass::Enum mySecondClass_)
{
for (int i = 1; i <= 2; i++)
{
if (i == 1)
currentClass = myFirstClass_;
else
currentClass = mySecondClass_;
CharacterArgs = new CharacterArgs(name_);
switch (currentClass)
{
case CharClass::Warrior: {
myCharacter = new Warrior(CharacterArgs);
}
case CharClass::Mage: {
myCharacter = new Mage(CharacterArgs);
}
case CharClass::Rogue: {
myCharacter = new Rogue(CharacterArgs);
}
default:
return null;
}
}
}
CharacterFactory::~CharacterFactory(void)
{
}