--- /dev/null
+/*
+ * Caster.h
+ *
+ * Created on: Sep 19, 2012
+ * Author: holy
+ */
+
+#ifndef LOADER_CASTER_H_
+#define LOADER_CASTER_H_
+
+#include "Interpreter.h"
+
+#include <string>
+
+namespace battle {
+ class Hero;
+ class Monster;
+ class PartyLayout;
+ class Resources;
+}
+
+namespace common {
+ class Item;
+ class Spell;
+}
+
+namespace loader {
+
+class Caster {
+
+public:
+ Caster(Interpreter &intp);
+ ~Caster() { }
+private:
+ Caster(const Caster &);
+ Caster &operator =(const Caster &);
+
+public:
+ battle::Resources *GetBattleResources(const std::string &identifier);
+ battle::Hero *GetHero(const std::string &identifier);
+ common::Item *GetItem(const std::string &identifier);
+ battle::Monster *GetMonster(const std::string &identifier);
+ battle::PartyLayout *GetPartyLayout(const std::string &identifier);
+ common::Spell *GetSpell(const std::string &identifier);
+
+private:
+ Interpreter &intp;
+
+ int battleResourcesId;
+ int heroId;
+ int itemId;
+ int monsterId;
+ int partyLayoutId;
+ int spellId;
+
+};
+
+}
+
+#endif /* LOADER_CASTER_H_ */