All pastes #2134626 Raw Edit

Miscellany

public text v1 · immutable
#2134626 ·published 2012-04-01 23:33 UTC
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)
{
}