200 protocol_version], |
207 protocol_version], |
201 Bye(msg) => msg!["BYE", msg], |
208 Bye(msg) => msg!["BYE", msg], |
202 Nick(nick) => msg!["NICK", nick], |
209 Nick(nick) => msg!["NICK", nick], |
203 Proto(proto) => msg!["PROTO", proto], |
210 Proto(proto) => msg!["PROTO", proto], |
204 LobbyLeft(nick, msg) => msg!["LOBBY:LEFT", nick, msg], |
211 LobbyLeft(nick, msg) => msg!["LOBBY:LEFT", nick, msg], |
205 LobbyJoined(nicks) => { |
212 LobbyJoined(nicks) => |
206 let mut v = vec!["LOBBY:JOINED"]; |
213 construct_message(&["LOBBY:JOINED"], &nicks), |
207 v.extend(nicks.iter().map(|n| { &n[..] })); |
214 ClientFlags(flags, nicks) => |
208 construct_message(v) |
215 construct_message(&["CLIENT_FLAGS", flags], &nicks), |
209 }, |
216 Rooms(info) => |
210 ClientFlags(flags, nicks) |
217 construct_message(&["ROOMS"], &info), |
211 => { |
218 RoomAdd(info) => |
212 let mut v = vec!["CLIENT_FLAGS"]; |
219 construct_message(&["ROOM", "ADD"], &info), |
213 v.push(&flags[..]); |
220 RoomJoined(nicks) => |
214 v.extend(nicks.iter().map(|n| { &n[..] })); |
221 construct_message(&["JOINED"], &nicks), |
215 construct_message(v) |
|
216 }, |
|
217 Rooms(info) => { |
|
218 let mut v = vec!["ROOMS"]; |
|
219 v.extend(info.iter().map(|n| { &n[..] })); |
|
220 construct_message(v) |
|
221 }, |
|
222 RoomAdd(info) => { |
|
223 let mut v = vec!["ROOM", "ADD"]; |
|
224 v.extend(info.iter().map(|n| { &n[..] })); |
|
225 construct_message(v) |
|
226 }, |
|
227 RoomJoined(nicks) => { |
|
228 let mut v = vec!["JOINED"]; |
|
229 v.extend(nicks.iter().map(|n| { &n[..] })); |
|
230 construct_message(v) |
|
231 }, |
|
232 RoomLeft(nick, msg) => msg!["LEFT", nick, msg], |
222 RoomLeft(nick, msg) => msg!["LEFT", nick, msg], |
233 RoomRemove(name) => msg!["ROOM", "DEL", name], |
223 RoomRemove(name) => msg!["ROOM", "DEL", name], |
234 RoomUpdated(name, info) => { |
224 RoomUpdated(name, info) => |
235 let mut v = vec!["ROOM", "UPD", name]; |
225 construct_message(&["ROOM", "UPD", name], &info), |
236 v.extend(info.iter().map(|n| { &n[..] })); |
226 TeamAdd(info) => |
237 construct_message(v) |
227 construct_message(&["ADD_TEAM"], &info), |
238 } |
228 TeamRemove(name) => msg!["REMOVE_TEAM", name], |
|
229 TeamAccepted(name) => msg!["TEAM_ACCEPTED", name], |
|
230 TeamColor(name, color) => msg!["TEAM_COLOR", name, color], |
|
231 HedgehogsNumber(name, number) => msg!["HH_NUM", name, number], |
239 ChatMsg(nick, msg) => msg!["CHAT", nick, msg], |
232 ChatMsg(nick, msg) => msg!["CHAT", nick, msg], |
240 ServerMessage(msg) => msg!["SERVER_MESSAGE", msg], |
233 ServerMessage(msg) => msg!["SERVER_MESSAGE", msg], |
241 Warning(msg) => msg!["WARNING", msg], |
234 Warning(msg) => msg!["WARNING", msg], |
242 Error(msg) => msg!["ERROR", msg], |
235 Error(msg) => msg!["ERROR", msg], |
243 _ => msg!["ERROR", "UNIMPLEMENTED"], |
236 _ => msg!["ERROR", "UNIMPLEMENTED"], |