Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Linq;
- using System.Net;
- using System.Net.Sockets;
- using System.Collections.Generic;
- using log4net;
- using Unicorn.Core;
- using System.Text;
- using Unicorn.HabboHotel.Rooms;
- using Unicorn.HabboHotel.GameClients;
- using Unicorn.Communication.Packets.Outgoing.Catalog;
- using Unicorn.Communication.Packets.Outgoing.Moderation;
- using Unicorn.Communication.Packets.Outgoing.Inventory.Purse;
- using Unicorn.Communication.Packets.Outgoing.Inventory.Badges;
- using Unicorn.Communication.Packets.Outgoing.Rooms.Engine;
- using Unicorn.Database.Interfaces;
- using Unicorn.Communication.Packets.Outgoing.Rooms.Session;
- using Unicorn.HabboHotel.Camera;
- using Unicorn.HabboHotel.Catalog;
- using Unicorn.HabboHotel.Items;
- using Unicorn.HabboHotel.Catalog.Utilities;
- using Unicorn.Communication.Packets.Outgoing.Inventory.Furni;
- using Unicorn.HabboHotel.Items.Wired;
- namespace Unicorn.Messages.Net
- {
- public class MusConnection
- {
- private Socket _socket;
- private byte[] _buffer = new byte[1024];
- private static readonly ILog log = LogManager.GetLogger("Unicorn.Messages.Net.MusConnection");
- public MusConnection(Socket Socket)
- {
- this._socket = Socket;
- try
- {
- this._socket.BeginReceive(_buffer, 0, _buffer.Length, SocketFlags.None, OnEvent_RecieveData, _socket);
- }
- catch { this.tryClose(); }
- }
- public void tryClose()
- {
- try
- {
- this._socket.Shutdown(SocketShutdown.Both);
- this._socket.Close();
- this._socket.Dispose();
- }
- catch
- {
- }
- this._socket = null;
- this._buffer = null;
- }
- public void OnEvent_RecieveData(IAsyncResult iAr)
- {
- try
- {
- int bytes = 0;
- try
- {
- bytes = _socket.EndReceive(iAr);
- }
- catch
- {
- tryClose();
- return;
- }
- String data = Encoding.Default.GetString(_buffer, 0, bytes);
- if (data.Length > 0)
- processCommand(data);
- }
- catch (Exception e)
- {
- Console.WriteLine(e.ToString());
- }
- tryClose();
- }
- public void processCommand(String data)
- {
- GameClient Client = null;
- String header = data.Split(Convert.ToChar(1))[0];
- String param = data.Split(Convert.ToChar(1))[1];
- string[] Params = param.ToString().Split(':');
- switch (header.ToLower())
- {
- #region User Related
- #region :reload_credits <UserID>
- case "websocket":
- {
- // Console.WriteLine(param + "UID:" + Params[0]);
- int uid = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(uid);
- if (Client == null || Client.GetHabbo() == null)
- break;
- GameClient Session = Client;
- //Session.SendNotification(param);
- string[] args = param.Replace(uid + ":","").Split('|');
- switch (int.Parse(args[0]))
- {
- case 6:
- {
- try
- {
- Room outroom;
- if (UnicornEnvironment.GetGame().GetRoomManager().TryGetRoom(int.Parse(args[1]), out outroom))
- {
- if (!Session.GetHabbo().InRoom)
- Session.SendMessage(new RoomForwardComposer(outroom.Id));
- else
- Session.GetHabbo().PrepareRoom(outroom.Id, "");
- }
- }
- catch { }
- break;
- }
- case 10101:
- {
- try
- {
- if (Session.GetHabbo().isInJail != 2)
- {
- Session.SendNotification("<font color = '#B40404'><font size= '16'><b>Nicht im Gefängnis!</b></font></font>\n\nDu bist nicht im Gefängnis, um dich freikaufen zu können!\n");
- break;
- }
- int time_caution = int.Parse(args[1]); // Kaution in Sek
- if (time_caution <= 0) break;
- int rest_knast = 0;
- if (time_caution >= Session.GetHabbo().jailtime)
- {
- rest_knast = 0;
- time_caution = Session.GetHabbo().jailtime;
- }
- else
- rest_knast = Session.GetHabbo().jailtime - time_caution;
- int preis = ((time_caution * 5000) / 60); // Preis berechnen 5.000Taler pro Min
- if (preis > Session.GetHabbo().Credits)
- {
- Session.SendNotification("<font color = '#B40404'><font size= '16'><b>Nicht genügend Taler!</b></font></font>\n\nDu hast leider nicht genug Taler, um dich aus dem Gefängnis freikaufen zu können.\n");
- break;
- }
- if (rest_knast == 0)
- {
- Session.GetHabbo().Credits -= preis;
- Session.SendMessage(new CreditBalanceComposer(Session.GetHabbo().Credits));
- Session.GetHabbo().isInJail = 0;
- Session.GetHabbo().health = 100;
- Session.GetHabbo().jailtime = 0;
- // Update MySQL Database
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("UPDATE users SET is_jail = '0', jailtime = '0', health = '100' WHERE id = @userId LIMIT 1");
- dbClient.AddParameter("userId", Session.GetHabbo().Id);
- dbClient.RunQuery();
- }
- Room TargetRoom;
- if (!UnicornEnvironment.GetGame().GetRoomManager().TryGetRoom(134, out TargetRoom))
- { }
- else
- TargetRoom.GetRoomUserManager().RemoveUserFromRoom(Session, true, false);
- Session.SendNotification("<font color = '#008000'><font size= '16'><b>Erfolgreich freigekauft!</b></font></font>\n\nDu hast für " + time_caution + " Sekunden " + preis + " Taler gezahlt!");
- try
- {
- //UnicornEnvironment.GetWebSocketManager().getWebSocketByName(Session.GetHabbo().Username).Send("kautionclose");
- Session.sendAjax("kautionclose");
- }
- catch { }
- break;
- }
- else
- {
- Session.GetHabbo().Credits -= preis;
- Session.SendMessage(new CreditBalanceComposer(Session.GetHabbo().Credits));
- Session.GetHabbo().jailtime = rest_knast;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("UPDATE users SET jailtime = @restzeit WHERE id = @userId LIMIT 1");
- dbClient.AddParameter("userId", Session.GetHabbo().Id);
- dbClient.AddParameter("restzeit", rest_knast);
- dbClient.RunQuery();
- }
- Session.SendNotification("<font color = '#008000'><font size= '16'><b>Kaution bezahlt!</b></font></font>\n\nDu hast für " + time_caution + " Sekunden " + preis + " Taler gezahlt!");
- try
- {
- //UnicornEnvironment.GetWebSocketManager().getWebSocketByName(Session.GetHabbo().Username).Send("kautionclose");
- Session.sendAjax("kautionclose");
- }
- catch { }
- break;
- }
- }
- catch
- {
- }
- break;
- }
- case 32:
- {
- if (Session.GetHabbo().CurrentRoom.CheckRights(Session, true))
- {
- try
- {
- int itemid = Convert.ToInt32(args[1]);
- Unicorn.HabboHotel.Items.Item ri = Session.GetHabbo().CurrentRoom.GetRoomItemHandler().GetItem(itemid);
- if (ri != null && ri.GetBaseItem().WiredType == Unicorn.HabboHotel.Items.Wired.WiredBoxType.EffectYoutubeWired)
- {
- IWiredItem Box = null;
- if (ri.GetRoom().GetWired().TryGet(ri.Id, out Box))
- {
- string ytlink = args[2].Split('=')[1];
- Box.StringData = ytlink;
- ri.ExtraData = "1";
- ri.UpdateState(true, true);
- ri.RequestUpdate(2, true);
- }
- }
- }
- catch { }
- }
- break;
- }
- default:
- break;
- }
- break;
- }
- case "update_angelpass":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- int angeltime = 0;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `angeltime` FROM `users` WHERE `id` = @id LIMIT 1");
- dbClient.AddParameter("id", UserId);
- angeltime = dbClient.getInteger();
- }
- Client.GetHabbo().angelpass = angeltime;
- break;
- }
- case "update_angelstatus":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- int angelstatus = 0;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `angelstatus` FROM `users` WHERE `id` = @id LIMIT 1");
- dbClient.AddParameter("id", UserId);
- angelstatus = dbClient.getInteger();
- }
- Client.GetHabbo().angelstatus = angelstatus;
- break;
- }
- case "update_wurm":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- int wurm = 0;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `count` FROM `cms_usernpcitems` WHERE `user_id` = @id AND `item_name` = 'wurm' LIMIT 1;");
- dbClient.AddParameter("id", UserId);
- wurm = dbClient.getInteger();
- }
- Client.GetHabbo().wurm = wurm;
- break;
- }
- case "credits_indb":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.runFastQuery("UPDATE `users` SET `credits` = "+ Client.GetHabbo().Credits + " WHERE `id` = "+ Client.GetHabbo().Id + " LIMIT 1");
- }
- break;
- }
- case "reload_credits":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- int Credits = 0;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `credits` FROM `users` WHERE `id` = @id LIMIT 1");
- dbClient.AddParameter("id", UserId);
- Credits = dbClient.getInteger();
- }
- Client.GetHabbo().Credits = Credits;
- Client.SendMessage(new CreditBalanceComposer(Client.GetHabbo().Credits));
- break;
- }
- #endregion
- #region :reload_pixels <UserID>
- case "reload_pixels":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- int Pixels = 0;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `activity_points` FROM `users` WHERE `id` = @id LIMIT 1");
- dbClient.AddParameter("id", UserId);
- Pixels = dbClient.getInteger();
- }
- Client.GetHabbo().Duckets = Pixels;
- Client.SendMessage(new HabboActivityPointNotificationComposer(Client.GetHabbo().Duckets, Pixels));
- break;
- }
- #endregion
- #region :reload_diamonds <UserID>
- case "reload_diamonds":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- int Diamonds = 0;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `vip_points` FROM `users` WHERE `id` = @id LIMIT 1");
- dbClient.AddParameter("id", UserId);
- Diamonds = dbClient.getInteger();
- }
- Client.GetHabbo().Diamonds = Diamonds;
- Client.SendMessage(new HabboActivityPointNotificationComposer(Diamonds, 0, 5));
- break;
- }
- #endregion
- #region :reload_gotw <UserID>
- case "reload_gotw":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- int GOTWPoints = 0;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `gotw_points` FROM `users` WHERE `id` = @id LIMIT 1");
- dbClient.AddParameter("id", UserId);
- GOTWPoints = dbClient.getInteger();
- }
- Client.GetHabbo().GOTWPoints = GOTWPoints;
- Client.SendMessage(new HabboActivityPointNotificationComposer(GOTWPoints, 0, 103));
- break;
- }
- #endregion
- #region :reload_user_rank userID
- case "reload_user_rank":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `rank` FROM `users` WHERE `id` = @userID LIMIT 1");
- dbClient.AddParameter("userID", UserId);
- Client.GetHabbo().Rank = dbClient.getInteger();
- }
- break;
- }
- #endregion
- #region :reload_user_vip userID
- case "reload_user_vip":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `rank_vip` FROM `users` WHERE `id` = @userID LIMIT 1");
- dbClient.AddParameter("userID", UserId);
- Client.GetHabbo().VIPRank = dbClient.getInteger();
- }
- break;
- }
- #endregion
- #region :reload_motto userID
- case "reload_motto":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `motto` FROM `users` WHERE `id` = @userID LIMIT 1");
- dbClient.AddParameter("userID", UserId);
- Client.GetHabbo().Motto = dbClient.getString();
- }
- if (Client.GetHabbo().InRoom)
- {
- Room Room = Client.GetHabbo().CurrentRoom;
- if (Room == null)
- return;
- RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Client.GetHabbo().Id);
- if (User == null || User.GetClient() == null)
- return;
- Room.SendMessage(new UserChangeComposer(User, false));
- }
- break;
- }
- #endregion
- #region :alert_user <userid> <message>
- case "alert":
- case "alert_user":
- {
- int UserId = Convert.ToInt32(Params[0]);
- string alertMessage = Convert.ToString(Params[1]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- Client.SendMessage(new BroadcastMessageAlertComposer(alertMessage));
- break;
- }
- #endregion
- #region :whisper_user <userid> <message>
- case "whisper_user":
- {
- int UserId = Convert.ToInt32(Params[0]);
- string whisperMessage = Convert.ToString(Params[1]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- Client.SendWhisper(whisperMessage, 1);
- break;
- }
- #endregion
- #region :whisper_all <message>
- case "whisper_all":
- {
- string whisperMessage = Convert.ToString(Params[0]);
- UnicornEnvironment.GetGame().GetClientManager().Gc(whisperMessage);
- break;
- }
- #endregion
- #region :whisper_staff <message>
- case "whisper_staff":
- {
- string whisperMessage = Convert.ToString(Params[0]);
- UnicornEnvironment.GetGame().GetClientManager().Whispersa(whisperMessage);
- break;
- }
- #endregion
- #region :gift_item <userid> <pageid> <itemid> <giftid> <ribbon> <color> <message>
- case "gift_item":
- {
- int UserId = Convert.ToInt32(Params[0]);
- int PageId = Convert.ToInt32(Params[1]);
- int ItemId = Convert.ToInt32(Params[2]);
- int GiftId = Convert.ToInt32(Params[3]);
- string Ribbon = Convert.ToString(Params[4]);
- string Color = Convert.ToString(Params[5]);
- string Message = Convert.ToString(Params[6]);
- CatalogPage Page = null;
- if (!UnicornEnvironment.GetGame().GetCatalog().TryGetPage(PageId, out Page))
- break;
- CatalogItem Item = null;
- if (!Page.Items.TryGetValue(ItemId, out Item))
- {
- if (Page.ItemOffers.ContainsKey(ItemId))
- {
- Item = (CatalogItem)Page.ItemOffers[ItemId];
- if (Item == null)
- break;
- }
- else
- break;
- }
- if (!ItemUtility.CanGiftItem(Item))
- break;
- ItemData PresentData = null;
- if (!UnicornEnvironment.GetGame().GetItemManager().GetGift(GiftId, out PresentData) || PresentData.InteractionType != InteractionType.GIFT)
- break;
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client.GetHabbo() == null)
- {
- break;
- }
- string ED = Client.GetHabbo().Id + Convert.ToChar(5) + Message + Convert.ToChar(5) + Client.GetHabbo().Id + Convert.ToChar(5) + Item.Data.Id + Convert.ToChar(5) + GiftId + Convert.ToChar(5) + Ribbon + Convert.ToChar(5) + Color;
- int NewItemId = 0;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- //Insert the dummy item.
- dbClient.SetQuery("INSERT INTO `items` (`base_item`,`user_id`,`extra_data`) VALUES ('" + PresentData.Id + "', '" + Client.GetHabbo().Id + "', @extra_data)");
- dbClient.AddParameter("extra_data", ED);
- NewItemId = Convert.ToInt32(dbClient.InsertQuery());
- string ItemExtraData = null;
- dbClient.SetQuery("INSERT INTO `user_presents` (`item_id`,`base_id`,`extra_data`) VALUES ('" + NewItemId + "', '" + Item.Data.Id + "', @extra_data)");
- dbClient.AddParameter("extra_data", (string.IsNullOrEmpty(ItemExtraData) ? "" : ItemExtraData));
- dbClient.RunQuery();
- }
- Item GiveItem = ItemFactory.CreateGiftItem(PresentData, Client.GetHabbo(), ED, ED, NewItemId, 0, 0);
- if (GiveItem != null)
- {
- GameClient Receiver = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(Client.GetHabbo().Id);
- if (Receiver != null)
- {
- if (Receiver.GetHabbo().Rank <= 5)
- {
- Receiver.SendNotification("<font color = '#008000'><font size= '16'><b>Geschenk vom System</b></font></font>\n\nDu hast gerade ein Geschenk erhalten! Schaue in deinem Inventar nach, um es auszupacken.");
- }
- {
- Receiver.GetHabbo().GetInventoryComponent().TryAddItem(GiveItem);
- Receiver.SendMessage(new FurniListNotificationComposer(GiveItem.Id, 1));
- Receiver.SendMessage(new PurchaseOKComposer());
- Receiver.SendMessage(new FurniListAddComposer(GiveItem));
- Receiver.SendMessage(new FurniListUpdateComposer());
- }
- }
- break;
- }
- break;
- }
- #endregion
- #region :reload_badges <UserID>
- case "update_badges":
- case "reload_badges":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client != null)
- {
- if (Client.GetHabbo() != null)
- {
- Client.SendMessage(new BadgesComposer(Client));
- }
- }
- break;
- }
- #endregion
- #region :givebadge <UserID> <badge>
- case "givebadge":
- {
- int UserId = Convert.ToInt32(Params[0]);
- string badgeCode = Convert.ToString(Params[1]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client != null)
- {
- if (Client.GetHabbo() != null)
- {
- UnicornEnvironment.GetGame().GetBadgeManager().Init();
- Client.GetHabbo().GetBadgeComponent().GiveBadge(badgeCode, true, Client);
- }
- }
- break;
- }
- #endregion
- #region :disconnect <username>
- case "disconnect":
- {
- try
- {
- GameClient TargetClient = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(Convert.ToInt32(Params[0]));
- if (TargetClient != null && TargetClient.GetConnection() != null)
- TargetClient.GetConnection().Dispose();
- }
- catch
- {
- log.Error("Error disconnecting user using MUS");
- }
- return;
- }
- #endregion
- #region :reload_last_change userID
- case "reload_last_change":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- using (IQueryAdapter dbClient = UnicornEnvironment.GetDatabaseManager().GetQueryReactor())
- {
- dbClient.SetQuery("SELECT `last_change` FROM `users` WHERE `id` = @userID LIMIT 1");
- dbClient.AddParameter("userID", UserId);
- Client.GetHabbo().LastNameChange = dbClient.getInteger();
- }
- break;
- }
- #endregion
- #region :goto <UserID> <RoomID>
- case "goto":
- {
- int UserId = Convert.ToInt32(Params[0]);
- int RoomId = Convert.ToInt32(Params[1]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- if (!int.TryParse(Params[1], out RoomId))
- break;
- else
- {
- Room _room = UnicornEnvironment.GetGame().GetRoomManager().LoadRoom(RoomId);
- if (_room == null)
- Client.SendNotification("Failed to find the requested room!");
- else
- {
- if (!Client.GetHabbo().InRoom)
- Client.SendMessage(new RoomForwardComposer(_room.Id));
- else
- Client.GetHabbo().PrepareRoom(_room.Id, "");
- }
- }
- }
- break;
- #endregion
- #endregion
- #region Fastfood
- #region :progress_achievement
- case "progress_achievement":
- {
- int UserId = Convert.ToInt32(Params[0]);
- Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- if (Client == null || Client.GetHabbo() == null)
- break;
- string Achievement = Convert.ToString(Params[1]);
- int Progress = Convert.ToInt32(Params[2]);
- UnicornEnvironment.GetGame().GetAchievementManager().ProgressAchievement(Client, Achievement, Progress);
- break;
- }
- #endregion
- #endregion
- #region Settings related
- #region :reload_filter/:update_filter
- case "update_filter":
- case "reload_filter":
- case "recache_filter":
- case "refresh_filter":
- {
- UnicornEnvironment.GetGame().GetChatManager().GetFilter().InitWords();
- UnicornEnvironment.GetGame().GetChatManager().GetFilter().InitCharacters();
- break;
- }
- #endregion
- #region :reload_badgedef/:update_badgedef
- case "update_badgedef":
- case "reload_badgedef":
- {
- UnicornEnvironment.GetGame().GetBadgeManager().Init();
- break;
- }
- #endregion
- #region :reload_catalog/:reload_catalog
- case "update_catalog":
- case "reload_catalog":
- case "recache_catalog":
- case "refresh_catalog":
- case "update_catalogue":
- case "reload_catalogue":
- case "recache_catalogue":
- case "refresh_catalogue":
- {
- UnicornEnvironment.GetGame().GetCatalog().Init(UnicornEnvironment.GetGame().GetItemManager());
- UnicornEnvironment.GetGame().GetClientManager().SendMessage(new CatalogUpdatedComposer());
- break;
- }
- #endregion
- #region :reload_items/:update_items
- case "update_items":
- case "reload_items":
- case "recache_items":
- case "refresh_items":
- {
- UnicornEnvironment.GetGame().GetItemManager().Init();
- break;
- }
- #endregion
- #region :reload_navigator/:update_navigator
- case "update_navigator":
- case "reload_navigator":
- case "recache_navigator":
- case "refresh_navigator":
- {
- UnicornEnvironment.GetGame().GetNavigator().Init();
- break;
- }
- #endregion
- #region :reload_ranks/:update_ranks
- case "update_ranks":
- case "reload_ranks":
- case "recache_ranks":
- case "refresh_ranks":
- {
- UnicornEnvironment.GetGame().GetPermissionManager().Init();
- foreach (GameClient C in UnicornEnvironment.GetGame().GetClientManager().GetClients.ToList())
- {
- if (C == null || C.GetHabbo() == null || C.GetHabbo().GetPermissions() == null)
- continue;
- C.GetHabbo().GetPermissions().Init(Client.GetHabbo());
- }
- break;
- }
- #endregion
- #region :reload_settings/:update_settings
- case "update_settings":
- case "reload_settings":
- case "recache_settings":
- case "refresh_settings":
- {
- UnicornEnvironment.ConfigData = new ConfigData();
- break;
- }
- #endregion
- #region :reload_quests/:update_quests
- case "reload_quests":
- case "update_quests":
- {
- UnicornEnvironment.GetGame().GetQuestManager().Init();
- break;
- }
- #endregion
- #region :reload_vouchers/:update_vouchers
- case "reload_vouchers":
- case "update_vouchers":
- {
- UnicornEnvironment.GetGame().GetCatalog().GetVoucherManager().Init();
- break;
- }
- #endregion
- #region :reload_bans/:update_bans
- case "update_bans":
- case "reload_bans":
- {
- UnicornEnvironment.GetGame().GetModerationManager().ReCacheBans();
- break;
- }
- #endregion
- #endregion
- //#region Camera related
- // #region :add_preview <photo_id> <user_id> <created_at>
- // case "add_preview":
- // {
- // int PhotoId = Convert.ToInt32(Params[0]);
- // int UserId = Convert.ToInt32(Params[1]);
- // long CreatedAt = Convert.ToInt64(Params[2]);
- // Client = UnicornEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId);
- // if (Client == null || Client.GetHabbo() == null || Client.GetHabbo().CurrentRoomId < 1)
- // break;
- // UnicornEnvironment.GetGame().GetCameraManager().AddPreview(new CameraPhotoPreview(PhotoId, UserId, CreatedAt));
- // break;
- // }
- // #endregion
- // #endregion
- default:
- {
- log.Error("Nicht erkannter MUS-Command erreicht: '" + header + "'");
- return;
- }
- }
- log.Info("MUS-Command erfolgreich ausgeführt: '" + header + "'");
- }
- }
- }
Add Comment
Please, Sign In to add comment