public void ReadFromStream(SerializationReader r) { MatchId = r.ReadUInt16(); InProgress = r.ReadBoolean(); MultiType = (MultiTypes)r.ReadByte(); ActiveMods = (Mods)r.ReadUInt32(); GameName = r.ReadString(); GamePassword = r.ReadString(); BeatmapName = r.ReadString(); BeatmapId = r.ReadInt32(); BeatmapChecksum = r.ReadString(); for (int i = 0; i < Constants.MultiplayerMaxPlayers; i++) { MultiSlotStatus[i] = (MultiSlotStatus)r.ReadByte(); } for (int i = 0; i < Constants.MultiplayerMaxPlayers; i++) { SlotTeam[i] = (SlotTeams)r.ReadByte(); } for (int i = 0; i < Constants.MultiplayerMaxPlayers; i++) { SlotId[i] = (MultiSlotStatus[i] & (MultiSlotStatus)0b01111100) > 0 ? r.ReadInt32() : -1; } HostId = r.ReadInt32(); PlayMode = (GameMode)r.ReadByte(); MultiWinCondition = (MultiWinConditions)r.ReadByte(); MultiTeamType = (MultiTeamTypes)r.ReadByte(); SpecialModes = (MultiSpecialModes)r.ReadByte(); if (GameName.Length > 50) { GameName = GameName.Remove(50); } if ((SpecialModes & MultiSpecialModes.FreeMod) > 0) { for (int i = 0; i < Constants.MultiplayerMaxPlayers; i++) { SlotMods[i] = (Mods)r.ReadInt32(); } } Seed = r.ReadInt32(); }
public void SetupItem(XmlNode items = null) { Parameters = new Dictionary <string, object>(); if (items == null) { items = Items; } XmlDocument doc = new XmlDocument(); XmlNode root = doc.CreateElement("MultiTypes"); doc.AppendChild(root); XmlNode xsltItem, xsltAlias; XmlAttribute xsltSort; if (items.HasChildNodes) { foreach (XmlNode xmlNode in items.ChildNodes) { if (MultiTypes.ContainsKey(xmlNode.Name)) { xsltAlias = doc.CreateElement(xmlNode.Name); xsltItem = doc.CreateElement("Name"); xsltItem.InnerText = MultiTypes[xmlNode.Name].Name; xsltAlias.AppendChild(xsltItem); xsltSort = doc.CreateAttribute("sortId"); xsltSort.Value = MultiTypes[xmlNode.Name].SortId.ToString(); xsltAlias.Attributes.Append(xsltSort); xsltItem = doc.CreateElement("Value"); xsltItem.InnerText = xmlNode.InnerText; xsltAlias.AppendChild(xsltItem); root.AppendChild(xsltAlias); } } Parameters.Add("MultiTypes", root.SelectSingleNode("/MultiTypes")); pnlMultiTypeItems.Controls.Add(new Literal() { Text = umbraco.macro.GetXsltTransformResult(new XmlDocument(), umbraco.macro.getXslt(new Macro(MacroId).Xslt), Parameters) }); } }