public Room(SpecialEventParam e) { try{ this.name = e.GetString("RoomName"); this.tag = e.GetString("RoomTag"); this.id = e.GetInt("RoomId"); userList = new List <User>(); string[] userArray = e.GetString("Users").Split(new string[] { "''" }, StringSplitOptions.None); for (int ii = 0; ii < userArray.Length; ii++) { string[] userDataParts = userArray[ii].Split(new string[] { "^^" }, StringSplitOptions.None); SpecialEventParam userParams = new SpecialEventParam(); userParams.PutVariable("userName", userDataParts[0]); userParams.PutVariable("userId", userDataParts[1]); userParams.PutVariable("isMe", false); userParams.PutVariable("userVariables", userDataParts[2]); User u = new User(userParams); userList.Add(u); } }catch (System.NullReferenceException) { }catch (System.IndexOutOfRangeException) {} }
public User(SpecialEventParam e) { this.name = e.GetString("userName"); this.id = e.GetInt("userId"); this.isMe = bool.Parse(e.GetString("isMe")); this.lastJoinedRoom = null; this.userVariables = new List <UserVariable>(); string userVariables = e.GetString("userVariables"); string[] userVars = userVariables.Split('§'); foreach (string userVar in userVars) { string[] variableParts = userVar.Split('½'); if (variableParts.Length == 2) { this.userVariables.Add(new UserVariable(variableParts[0], variableParts[1])); } } UserManager.allUserInGame.Add(this); }