public MoodlightConfigComposer(MoodlightData MoodlightData) : base(ServerPacketHeader.MoodlightConfigMessageComposer) { base.WriteInteger(MoodlightData.Presets.Count); base.WriteInteger(MoodlightData.CurrentPreset); int i = 1; foreach (MoodlightPreset Preset in MoodlightData.Presets) { base.WriteInteger(i); base.WriteInteger(Preset.BackgroundOnly ? 2 : 1); base.WriteString(Preset.ColorCode); base.WriteInteger(Preset.ColorIntensity); i++; } }
public void Dispose() { SendMessage(new CloseConnectionComposer()); if (!mDisposed) { isCrashed = false; mDisposed = true; try { if (ProcessTask != null && ProcessTask.IsCompleted) ProcessTask.Dispose(); } catch { } GetRoomItemHandler().SaveFurniture(); using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.RunQuery("UPDATE `rooms` SET `users_now` = '0' WHERE `id` = '" + Id + "' LIMIT 1"); } if (this._roomUserManager.PetCount > 0) this._roomUserManager.UpdatePets(); this.SaveAI(); UsersNow = 0; RoomData.UsersNow = 0; UsersWithRights.Clear(); Bans.Clear(); MutedUsers.Clear(); Tents.Clear(); this.TonerData = null; this.MoodlightData = null; this._filterComponent.Cleanup(); this._wiredComponent.Cleanup(); if (this._gameItemHandler != null) this._gameItemHandler.Dispose(); if (this._gameManager != null) this._gameManager.Dispose(); if (this._freeze != null) this._freeze.Dispose(); if (this._banzai != null) this._banzai.Dispose(); if (this._soccer != null) this._soccer.Dispose(); if (this._gamemap != null) this._gamemap.Dispose(); if (this._roomUserManager != null) this._roomUserManager.Dispose(); if (this._roomItemHandling != null) this._roomItemHandling.Dispose(); if (ActiveTrades.Count > 0) ActiveTrades.Clear(); } }