]> git.localhorst.tv Git - l2e.git/blob - Tile.cpp
2b7e0f23bb2a56117b63166fe572605581dca548
[l2e.git] / Tile.cpp
1 #include "Tile.h"
2
3 #include "../loader/Interpreter.h"
4 #include "../loader/TypeDescription.h"
5
6 using loader::FieldDescription;
7 using loader::Interpreter;
8 using loader::TypeDescription;
9
10 namespace map {
11
12 Tile::Tile()
13 : battlebg(0)
14 , flags(0)
15 , frames(1) {
16
17 }
18
19
20 void Tile::CreateTypeDescription() {
21         Tile t;
22
23         TypeDescription &td(TypeDescription::Create(TYPE_ID, "Tile"));
24         td.SetConstructor(&Construct);
25         td.SetSize(sizeof(Tile));
26
27         td.AddField("battlebg", FieldDescription(((char *)&t.battlebg) - ((char *)&t), Interpreter::IMAGE_ID).SetReferenced());
28         td.AddField("t", FieldDescription(((char *)&t.offset) - ((char *)&t), Interpreter::VECTOR_ID));
29         td.AddField("flags", FieldDescription(((char *)&t.flags) - ((char *)&t), Interpreter::NUMBER_ID));
30         td.AddField("frames", FieldDescription(((char *)&t.frames) - ((char *)&t), Interpreter::NUMBER_ID));
31
32 }
33
34 void Tile::Construct(void *data) {
35         new (data) Tile;
36 }
37
38 }