1 | #ifndef TRAITS_H__ |
1 | #ifndef TRAITS_H__ |
2 | #define TRAITS_H__ |
2 | #define TRAITS_H__ |
3 | |
3 | |
|
|
4 | struct client_socket; |
4 | struct player; |
5 | struct player; |
5 | struct object; |
6 | struct object; |
6 | struct maptile; |
7 | struct maptile; |
7 | struct archetype; |
8 | struct archetype; |
8 | struct region; |
9 | struct region; |
… | |
… | |
20 | DT_DOUBLE, |
21 | DT_DOUBLE, |
21 | DT_STRING, // 0-terminated string |
22 | DT_STRING, // 0-terminated string |
22 | DT_DATA, // string + length |
23 | DT_DATA, // string + length |
23 | DT_OBJECT, |
24 | DT_OBJECT, |
24 | DT_MAP, |
25 | DT_MAP, |
|
|
26 | DT_SOCKET, |
25 | DT_PLAYER, |
27 | DT_PLAYER, |
26 | DT_ARCH, |
28 | DT_ARCH, |
27 | DT_PARTY, |
29 | DT_PARTY, |
28 | DT_REGION, |
30 | DT_REGION, |
29 | |
31 | |
… | |
… | |
57 | struct cftype<object> { |
59 | struct cftype<object> { |
58 | static const data_type dt = DT_OBJECT; |
60 | static const data_type dt = DT_OBJECT; |
59 | }; |
61 | }; |
60 | |
62 | |
61 | template<> |
63 | template<> |
|
|
64 | struct cftype<client_socket> { |
|
|
65 | static const data_type dt = DT_SOCKET; |
|
|
66 | }; |
|
|
67 | |
|
|
68 | template<> |
62 | struct cftype<player> { |
69 | struct cftype<player> { |
63 | static const data_type dt = DT_PLAYER; |
70 | static const data_type dt = DT_PLAYER; |
64 | }; |
71 | }; |
65 | |
72 | |
66 | template<> |
73 | template<> |