]> git.localhorst.tv Git - l2e.git/blob - src/loader/Caster.h
added Caster class to simplify the code in main()
[l2e.git] / src / loader / Caster.h
1 /*
2  * Caster.h
3  *
4  *  Created on: Sep 19, 2012
5  *      Author: holy
6  */
7
8 #ifndef LOADER_CASTER_H_
9 #define LOADER_CASTER_H_
10
11 #include "Interpreter.h"
12
13 #include <string>
14
15 namespace battle {
16         class Hero;
17         class Monster;
18         class PartyLayout;
19         class Resources;
20 }
21
22 namespace common {
23         class Item;
24         class Spell;
25 }
26
27 namespace loader {
28
29 class Caster {
30
31 public:
32         Caster(Interpreter &intp);
33         ~Caster() { }
34 private:
35         Caster(const Caster &);
36         Caster &operator =(const Caster &);
37
38 public:
39         battle::Resources *GetBattleResources(const std::string &identifier);
40         battle::Hero *GetHero(const std::string &identifier);
41         common::Item *GetItem(const std::string &identifier);
42         battle::Monster *GetMonster(const std::string &identifier);
43         battle::PartyLayout *GetPartyLayout(const std::string &identifier);
44         common::Spell *GetSpell(const std::string &identifier);
45
46 private:
47         Interpreter &intp;
48
49         int battleResourcesId;
50         int heroId;
51         int itemId;
52         int monsterId;
53         int partyLayoutId;
54         int spellId;
55
56 };
57
58 }
59
60 #endif /* LOADER_CASTER_H_ */