ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/cf.schmorp.de/dclient/src/backend/communicator/message_logger.cpp
Revision: 1.3
Committed: Mon Oct 18 16:38:01 2010 UTC (15 years, 11 months ago) by sf-pippijn
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +7 -4 lines
Log Message:
support msg colours

File Contents

# User Rev Content
1 sf-pippijn 1.1 #include "deliantra/message_logger.h"
2    
3     #include "deliantra/data/fx.h"
4     #include "deliantra/data/item.h"
5    
6     #include <json/json.h>
7    
8     template<typename T, typename C>
9     static std::vector<T>
10     vector (C const &c)
11     {
12     return std::vector<T> (c.begin (), c.end ());
13     }
14    
15     template<typename T>
16 sf-pippijn 1.2 static logstream const &
17     operator , (logstream const &os, T const &v)
18 sf-pippijn 1.1 {
19     return os << ',' << v;
20     }
21    
22     template<typename T>
23 sf-pippijn 1.2 logstream const &
24     operator << (logstream const &os, std::vector<T> const &v)
25 sf-pippijn 1.1 {
26     os << '[';
27     for (auto it = v.begin (), et = v.end (); it != et; ++it)
28     {
29     os << *it;
30     if (it + 1 != et)
31     os << ',';
32     }
33     os << ']';
34     return os;
35     }
36    
37 sf-pippijn 1.2 static logstream const &
38     operator << (logstream const &os, data::fx const &fx)
39 sf-pippijn 1.1 {
40     os << "\n fx{";
41     os << fx.type
42     , fx.facenum
43     , vector<int> (vector<unsigned char> (fx.name))
44     ;
45     os << '}';
46     return os;
47     }
48    
49 sf-pippijn 1.2 static logstream const &
50     operator << (logstream const &os, data::item const &item)
51 sf-pippijn 1.1 {
52     os << "\n item{";
53     os << item.singular
54     , item.plural
55     , item.tag
56     , item.flags
57     , item.weight
58     , item.face
59     , item.nrof
60     , item.anim
61     , item.type
62     , int (item.animspeed)
63     ;
64     os << '}';
65     return os;
66     }
67    
68     template<typename K, typename V>
69 sf-pippijn 1.2 static logstream const &
70     operator << (logstream const &os, std::pair<K, V> const &pair)
71 sf-pippijn 1.1 {
72     os << "\n pair{";
73     os << pair.first
74     , pair.second
75     ;
76     os << '}';
77     return os;
78     }
79    
80     void
81     message_logger::addme_success ()
82     {
83 sf-pippijn 1.2 LOG ("server") << __func__ << "\n";
84 sf-pippijn 1.1 }
85    
86     void
87     message_logger::addspell ()
88     {
89 sf-pippijn 1.2 LOG ("server") << __func__ << "\n";
90 sf-pippijn 1.1 }
91    
92     void
93     message_logger::delinv (u32 tag)
94     {
95 sf-pippijn 1.2 LOG ("server") << __func__ << " (" << tag << ")\n";
96 sf-pippijn 1.1 }
97    
98     void
99     message_logger::delitem (std::vector<u32> const &items)
100     {
101 sf-pippijn 1.2 LOG ("server") << __func__ << " (" << items << ")\n";
102 sf-pippijn 1.1 }
103    
104     void
105 sf-pippijn 1.3 message_logger::drawinfo (int level, std::string const &msg)
106 sf-pippijn 1.1 {
107 sf-pippijn 1.3 auto const &logs = LOG;
108     logs ("server") << __func__ << " (";
109     logs << level, msg;
110     logs << ")\n";
111 sf-pippijn 1.1 }
112    
113     void
114     message_logger::ext (Json::Value const &ext)
115     {
116 sf-pippijn 1.2 LOG ("server") << __func__ << " (" << ext << ")\n";
117 sf-pippijn 1.1 }
118    
119     void
120     message_logger::fx (std::vector<data::fx> const &faces)
121     {
122 sf-pippijn 1.2 LOG ("server") << __func__ << " (" << faces << ")\n";
123 sf-pippijn 1.1 }
124    
125     void
126     message_logger::item2 (u32 location, std::vector<data::item> const &items)
127     {
128 sf-pippijn 1.2 auto const &logs = LOG;
129     logs ("server") << __func__ << " (";
130 sf-pippijn 1.1 logs << location, items;
131     logs << ")\n";
132     }
133    
134     void
135     message_logger::map (data::map const &map)
136     {
137 sf-pippijn 1.2 //LOG ("server") << __func__ << "\n";
138 sf-pippijn 1.1 }
139    
140     void
141     message_logger::map_scroll (int dx, int dy)
142     {
143 sf-pippijn 1.2 auto const &logs = LOG;
144     logs ("server") << __func__ << " (";
145 sf-pippijn 1.1 logs << dx, dx;
146     logs << ")\n";
147     }
148    
149     void
150 sf-pippijn 1.3 message_logger::msg (int level, std::string const &channel, std::string const &msg)
151 sf-pippijn 1.1 {
152 sf-pippijn 1.2 auto const &logs = LOG;
153     logs ("server") << __func__ << " (";
154 sf-pippijn 1.3 logs << level, channel, msg;
155 sf-pippijn 1.1 logs << ")\n";
156     }
157    
158     void
159     message_logger::player (u32 tag, u32 weight, u32 face, std::string const &name)
160     {
161 sf-pippijn 1.2 auto const &logs = LOG;
162     logs ("server") << __func__ << " (";
163 sf-pippijn 1.1 logs << tag, weight, face, name;
164     logs << ")\n";
165     }
166    
167     void
168     message_logger::replyinfo (std::string const &title, std::vector<std::pair<int, std::string>> const &info)
169     {
170 sf-pippijn 1.2 auto const &logs = LOG;
171     logs ("server") << __func__ << " (";
172 sf-pippijn 1.1 logs << title, info;
173     logs << ")\n";
174     }
175    
176     void
177     message_logger::query (int flags, std::string const &prompt)
178     {
179 sf-pippijn 1.2 auto const &logs = LOG;
180     logs ("server") << __func__ << " (";
181 sf-pippijn 1.1 logs << flags, prompt;
182     logs << ")\n";
183     }
184    
185     void
186     message_logger::stats (data::statistics const &stats)
187     {
188 sf-pippijn 1.2 LOG ("server") << __func__ << "\n";
189 sf-pippijn 1.1 }
190    
191     void
192     message_logger::upditem (u08 flags, u32 location, data::item const &item)
193     {
194 sf-pippijn 1.2 auto const &logs = LOG;
195     logs ("server") << __func__ << " (";
196 sf-pippijn 1.1 logs << int (flags), location, item;
197     logs << ")\n";
198     }
199    
200     void
201     message_logger::version (Json::Value const &server_version)
202     {
203 sf-pippijn 1.2 LOG ("server") << __func__ << " (" << server_version << ")\n";
204 sf-pippijn 1.1 }