3 #[mt_derive(to = "clt")]
11 #[mt_derive(to = "clt", repr = "u8")]
33 #[mt_derive(to = "clt", repr = "u8", tag = "type", content = "data")]
36 serialize_version: u8,
37 #[mt(const16 = 1)] // compression
39 auth_methods: EnumSet<AuthMethod>,
46 sudo_auth_methods: EnumSet<AuthMethod>,
49 sudo_auth_methods: EnumSet<AuthMethod>,
52 Kick(KickReason) = 10,
76 flags: EnumSet<CsmRestrictionFlag>,
90 msg_type: ChatMsgType,
95 timestamp: i64, // unix time
121 transition_time: f32,
130 files: Vec<MediaPayload>, // FIXME: can we use a HashMap for this?
136 files: Vec<MediaAnnounce>, // FIXME: can we use a HashMap for this?
141 #[mt(const8 = 0)] // version
143 aliases: HashMap<String, String>,
149 src_type: SoundSrcType,
152 #[serde(rename = "loop")]
162 privs: HashSet<String>,
195 expiration_time: f32,
202 anim_params: TileAnim,
215 expiration_time: [f32; 2],
223 attached_obj_id: u16,
224 anim_params: TileAnim,
243 flags: EnumSet<HudFlag>,
244 mask: EnumSet<HudFlag>,
246 SetHotbarParam(HotbarParam) = 77,
252 OverrideDayNightRatio {
253 #[serde(rename = "override")]
254 ratio_override: bool,
268 RemoveParticleSpawner {
273 diffuse_color: ArgbColor,
274 ambient_color: ArgbColor,
285 update_type: PlayerListUpdateType,
286 players: HashSet<String>,
297 NodeMetasChanged(#[mt(size32)] HashMap<[i16; 3], NodeMeta>) = 89,
325 MinimapModes(MinimapModePkt) = 98,