public void Parse(GameClient Session, ClientPacket Packet) { int GroupId = Packet.PopInt(); int UserId = Packet.PopInt(); Group Group = null; if (!ButterflyEnvironment.GetGame().GetGroupManager().TryGetGroup(GroupId, out Group)) { return; } if (Session.GetHabbo().Id != Group.CreatorId || !Group.IsMember(UserId)) { return; } Habbo Habbo = ButterflyEnvironment.GetHabboById(UserId); if (Habbo == null) { return; } Group.MakeAdmin(UserId); Room Room = null; if (ButterflyEnvironment.GetGame().GetRoomManager().TryGetRoom(Group.RoomId, out Room)) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabboId(UserId); if (User != null) { if (!User._statusses.ContainsKey("flatctrl 3")) { User.SetStatus("flatctrl 3", ""); } User.UpdateNeeded = true; if (User.GetClient() != null) { User.GetClient().SendPacket(new YouAreControllerComposer(3)); } } } Session.SendPacket(new GroupMemberUpdatedComposer(GroupId, Habbo, 1)); }
public static UserData GetUserData(int UserId) { DataRow row; DataRow row2; int userID; using (IQueryAdapter queryreactor = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) { queryreactor.SetQuery("SELECT * FROM users WHERE id = @id LIMIT 1"); queryreactor.AddParameter("id", UserId); row = queryreactor.GetRow(); if (row == null) { return((UserData)null); } userID = Convert.ToInt32(row["id"]); if (ButterflyEnvironment.GetGame().GetClientManager().GetClientByUserID(userID) != null) { return((UserData)null); } queryreactor.SetQuery("SELECT * FROM user_stats WHERE id = @id"); queryreactor.AddParameter("id", UserId); row2 = queryreactor.GetRow(); if (row2 == null) { queryreactor.RunQuery("INSERT INTO user_stats (id) VALUES ('" + UserId + "')"); queryreactor.SetQuery("SELECT * FROM user_stats WHERE id = " + UserId); row2 = queryreactor.GetRow(); } } Dictionary <string, UserAchievement> achievements = new Dictionary <string, UserAchievement>(); List <int> favouritedRooms = new List <int>(); List <int> RoomRight = new List <int>(); List <Badge> badges = new List <Badge>(); Dictionary <int, MessengerBuddy> friends = new Dictionary <int, MessengerBuddy>(); Dictionary <int, MessengerRequest> requests = new Dictionary <int, MessengerRequest>(); Dictionary <int, int> quests = new Dictionary <int, int>(); Dictionary <int, Relationship> Relationships = new Dictionary <int, Relationship>(); List <int> MyGroups = new List <int>(); Habbo user = GenerateHabbo(row, row2, false); return(new UserData(userID, achievements, favouritedRooms, badges, friends, requests, quests, MyGroups, user, Relationships, RoomRight)); }
public void Parse(GameClient Session, ClientPacket Packet) { if (Session.GetHabbo() == null) { return; } Room room = ButterflyEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (room == null || !room.CheckRights(Session, true)) { return; } if (room.UsersWithRights.Count == 0) { return; } foreach (int num in room.UsersWithRights) { RoomUser roomUserByHabbo = room.GetRoomUserManager().GetRoomUserByHabboId(num); if (roomUserByHabbo != null) { if (!roomUserByHabbo.IsBot) { roomUserByHabbo.GetClient().SendPacket(new YouAreControllerComposer(0)); roomUserByHabbo.UpdateNeeded = true; } } ServerPacket Response3 = new ServerPacket(ServerPacketHeader.FlatControllerRemovedMessageComposer); Response3.WriteInteger(room.Id); Response3.WriteInteger(num); Session.SendPacket(Response3); } using (IQueryAdapter queryreactor = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) queryreactor.RunQuery("DELETE FROM room_rights WHERE room_id = " + room.Id); room.UsersWithRights.Clear(); ServerPacket Response2 = new ServerPacket(ServerPacketHeader.RoomRightsListMessageComposer); Response2.WriteInteger(room.RoomData.Id); Response2.WriteInteger(0); Session.SendPacket(Response2); }
public void PlaySong() { if (mSongQueuePosition >= mPlaylist.Count) { mSongQueuePosition = 0; } if (mPlaylist.Count == 0) { Stop(); return; } mSong = mPlaylist[mSongQueuePosition]; mStartedPlayingTimestamp = ButterflyEnvironment.GetUnixTimestamp(); mBroadcastNeeded = true; }
public RolePlayer(int pRpId, int pId, int pHealth, int pMoney, int pMunition, int pExp, int pEnergy, int pWeaponGun, int pWeaponCac) { this._rpId = pRpId; this._id = pId; this.Health = pHealth; this.Energy = pEnergy; this.Money = pMoney; this.Munition = pMunition; this.Exp = pExp; this.PvpEnable = true; this.WeaponCac = ButterflyEnvironment.GetGame().GetRoleplayManager().GetWeaponManager().GetWeaponCac(pWeaponCac); this.WeaponGun = ButterflyEnvironment.GetGame().GetRoleplayManager().GetWeaponManager().GetWeaponGun(pWeaponGun); this.GunLoad = 6; this.GunLoadTimer = 0; int Level = 1; for (int i = 1; i < 100; i++) { int expmax = (i * 50) + (i * 10) * i; if (Exp >= expmax && i < 99) { continue; } Level = i; break; } this.Level = Level; this.HealthMax = 90 + (this.Level * 10); this.SendPrison = false; this.PrisonTimer = 0; this.Dead = false; this.DeadTimer = 0; this.AggroTimer = 0; this.SlowTimer = 0; this._inventory = new ConcurrentDictionary <int, RolePlayInventoryItem>(); //this.LoadInventory(); this.TradeId = 0; }
public void BanUser(GameClient Client, string Moderator, double LengthSeconds, string Reason, bool IpBan, bool MachineBan) { if (string.IsNullOrEmpty(Reason)) { Reason = "Ne respect pas les régles"; } string Variable = Client.GetHabbo().Username.ToLower(); string str = "user"; double Expire = (double)ButterflyEnvironment.GetUnixTimestamp() + LengthSeconds; if (IpBan) { //Variable = Client.GetConnection().getIp(); Variable = Client.GetHabbo().IP; str = "ip"; } if (MachineBan) { Variable = Client.MachineId; str = "machine"; } using (IQueryAdapter queryreactor = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) { queryreactor.SetQuery("INSERT INTO bans (bantype,value,reason,expire,added_by,added_date) VALUES (@rawvar, @var, @reason, '" + Expire + "', @mod, UNIX_TIMESTAMP())"); queryreactor.AddParameter("rawvar", str); queryreactor.AddParameter("var", Variable); queryreactor.AddParameter("reason", Reason); queryreactor.AddParameter("mod", Moderator); queryreactor.RunQuery(); } if (MachineBan) { this.BanUser(Client, Moderator, LengthSeconds, Reason, true, false); } else if (IpBan) { this.BanUser(Client, Moderator, LengthSeconds, Reason, false, false); } else { Client.Disconnect(); } }
private int NameAvailable(string username) { username = username.ToLower(); if (username.Length > 15) { return(-2); } if (username.Length < 3) { return(-2); } if (!ButterflyEnvironment.IsValidAlphaNumeric(username)) { return(-1); } return(ButterflyEnvironment.usernameExists(username) ? 0 : 1); }
public void UpdateUser() { GameClient client = ButterflyEnvironment.GetGame().GetClientManager().GetClientByUserID(UserId); if (client != null && client.GetHabbo() != null && client.GetHabbo().GetMessenger() != null && !client.GetHabbo().GetMessenger().AppearOffline) { mIsOnline = true; mLook = client.GetHabbo().Look; mHideInroom = client.GetHabbo().HideInRoom; } else { mIsOnline = false; mLook = ""; mHideInroom = true; } }
public void Parse(GameClient Session, ClientPacket Packet) { if (!Session.GetHabbo().HasFuse("fuse_mod")) { return; } int num = Packet.PopInt(); if (ButterflyEnvironment.GetGame().GetClientManager().GetNameById(num) != "") { Session.SendPacket(ModerationManager.SerializeUserInfo(num)); } else { Session.SendNotification(ButterflyEnvironment.GetLanguageManager().TryGetValue("user.loadusererror", Session.Langue)); } }
public SupportTicket(int Id, int Score, int Type, int SenderId, int ReportedId, string Message, int RoomId, string RoomName, double Timestamp) { this.Id = Id; this.Score = Score; this.Type = Type; this.Status = TicketStatus.OPEN; this.SenderId = SenderId; this.ReportedId = ReportedId; this.ModeratorId = 0; this.Message = Message; this.RoomId = RoomId; this.RoomName = RoomName; this.Timestamp = Timestamp; this.SenderName = ButterflyEnvironment.GetGame().GetClientManager().GetNameById(SenderId); this.ReportedName = ButterflyEnvironment.GetGame().GetClientManager().GetNameById(ReportedId); this.ModName = ButterflyEnvironment.GetGame().GetClientManager().GetNameById(this.ModeratorId); }
internal void SendInstantMessenger() { if (ButterflyEnvironment.SystemMute) { return; } //if the user we are sending an IM to is on IRC, get the IRC client / connection and send the data there instead of here. Then gtfo. uint userId = Request.PopWiredUInt(); string message = ButterflyEnvironment.FilterInjectionChars(Request.PopFixedString()); if (Session.GetHabbo().GetMessenger() == null) { return; } Session.GetHabbo().GetMessenger().SendInstantMessage(userId, message); }
public void Parse(GameClient Session, ClientPacket Packet) { Room room = ButterflyEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (room == null) { return; } Trade userTrade = room.GetUserTrade(Session.GetHabbo().Id); Item userItem = Session.GetHabbo().GetInventoryComponent().GetItem(Packet.PopInt()); if (userTrade == null || userItem == null) { return; } userTrade.OfferItem(Session.GetHabbo().Id, userItem); }
internal RoomAdvertisement GetRandomRoomAdvertisement() { if (RoomAdvertisements.Count <= 0) { return(null); } while (true) { int RndId = ButterflyEnvironment.GetRandomNumber(0, (RoomAdvertisements.Count - 1)); if (RoomAdvertisements[RndId] != null && !RoomAdvertisements[RndId].ExceededLimit) { return(RoomAdvertisements[RndId]); } } }
internal void OpenFlat() { uint Id = Request.PopWiredUInt(); string Password = Request.PopFixedString(); int Junk = Request.PopWiredInt32(); Logging.WriteLine("Loading room [" + Id + "]"); RoomData Data = ButterflyEnvironment.GetGame().GetRoomManager().GenerateRoomData(Id); if (Data == null || Data.Type != "private") { return; } PrepareRoomForUser(Id, Password); }
internal static void SellItem(GameClient Session, uint ItemId, int SellingPrice) { UserItem Item = Session.GetHabbo().GetInventoryComponent().GetItem(ItemId); if (Item == null || SellingPrice > 10000 || !CanSellItem(Item)) { Session.GetMessageHandler().GetResponse().Init(610); Session.GetMessageHandler().GetResponse().AppendBoolean(false); Session.GetMessageHandler().GetResponse(); Session.GetMessageHandler().SendResponse(); return; } int Comission = CalculateComissionPrice(SellingPrice); int TotalPrice = SellingPrice + Comission; int ItemType = 1; if (Item.GetBaseItem().Type == 'i') { ItemType++; } using (IQueryAdapter dbClient = ButterflyEnvironment.GetDatabaseManager().getQueryreactor()) { if (dbClient.dbType == DatabaseType.MSSQL) { dbClient.setQuery("INSERT INTO catalog_marketplace_offers (item_id,user_id,asking_price,total_price,public_name,sprite_id,item_type,timestamp,extra_data,state) VALUES (" + Item.BaseItem + "," + Session.GetHabbo().Id + "," + SellingPrice + "," + TotalPrice + ",@public_name," + Item.GetBaseItem().SpriteId + "," + ItemType + "," + ButterflyEnvironment.GetUnixTimestamp() + ",@extra_data, '1')"); } else { dbClient.setQuery("INSERT INTO catalog_marketplace_offers (item_id,user_id,asking_price,total_price,public_name,sprite_id,item_type,timestamp,extra_data) VALUES (" + Item.BaseItem + "," + Session.GetHabbo().Id + "," + SellingPrice + "," + TotalPrice + ",@public_name," + Item.GetBaseItem().SpriteId + "," + ItemType + "," + ButterflyEnvironment.GetUnixTimestamp() + ",@extra_data)"); } dbClient.addParameter("public_name", Item.GetBaseItem().PublicName); dbClient.addParameter("extra_data", Item.ExtraData); dbClient.runQuery(); } Session.GetHabbo().GetInventoryComponent().RemoveItem(ItemId, false); Session.GetHabbo().GetInventoryComponent().RunDBUpdate(); Session.GetMessageHandler().GetResponse().Init(610); Session.GetMessageHandler().GetResponse().AppendBoolean(true); Session.GetMessageHandler().SendResponse(); }
public void GiveBadge(string Badge, int Slot, bool InDatabase) { if (this.HasBadge(Badge)) { return; } if (InDatabase) { using (IQueryAdapter queryreactor = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) { queryreactor.SetQuery("INSERT INTO user_badges (user_id,badge_id,badge_slot) VALUES (" + this.UserId + ",@badge," + Slot + ")"); queryreactor.AddParameter("badge", Badge); queryreactor.RunQuery(); } } this.Badges.Add(Badge, new Badge(Badge, Slot)); }
internal void CancelQuest(GameClient Session, ClientMessage Message) { Quest Quest = GetQuest(Session.GetHabbo().CurrentQuestId); if (Quest == null) { return; } using (IQueryAdapter dbClient = ButterflyEnvironment.GetDatabaseManager().getQueryreactor()) { dbClient.runFastQuery("DELETE FROM user_quests WHERE user_id = " + Session.GetHabbo().Id + " AND quest_id = " + Quest.Id); } Session.SendMessage(QuestAbortedComposer.Compose()); GetList(Session, null); }
public RoleBot(RPEnemy EnemyConfig) { this.SetConfig(EnemyConfig); this.Dead = false; this.AggroVirtuelId = 0; this.AggroTimer = 0; this.ResetBot = false; this.ResetBotTimer = 0; this.HitCount = 0; this.Dodge = false; this.DodgeTimer = 0; this.GunCharger = 6; this.GunLoadTimer = 0; this.DodgeStartCount = ButterflyEnvironment.GetRandomNumber(2, 4); this.ActionTimer = ButterflyEnvironment.GetRandomNumber(10, 30); }
private string GetSringChoix(JankenEnum Choix, Language langue) { switch (Choix) { case JankenEnum.Ciseaux: return(ButterflyEnvironment.GetLanguageManager().TryGetValue("janken.ciseaux", langue)); case JankenEnum.Feuille: return(ButterflyEnvironment.GetLanguageManager().TryGetValue("janken.feuille", langue)); case JankenEnum.Pierre: return(ButterflyEnvironment.GetLanguageManager().TryGetValue("janken.pierre", langue)); default: return(""); } }
public LoadInventoryRpComposer(ConcurrentDictionary <int, RolePlayInventoryItem> Items) : base(9) { WriteInteger(Items.Count); foreach (RolePlayInventoryItem Item in Items.Values) { RPItem RpItem = ButterflyEnvironment.GetGame().GetRoleplayManager().GetItemManager().GetItem(Item.ItemId); WriteInteger(Item.ItemId); WriteString(RpItem.Name); WriteString(RpItem.Desc); WriteInteger(Item.Count); WriteInteger((int)RpItem.Category); WriteInteger(RpItem.UseType); } }
internal bool HasFuse(string Fuse) { if (ButterflyEnvironment.GetGame().GetRoleManager().RankHasRight(Rank, Fuse)) { return(true); } foreach (string SubscriptionId in GetSubscriptionManager().SubList) { if (ButterflyEnvironment.GetGame().GetRoleManager().SubHasRight(SubscriptionId, Fuse)) { return(true); } } return(false); }
internal void GetRecyclerRewards() { // GzQAQAXtGIsZJKPAPrIsXLKKPJKsY}JsXBKsX~JJPASCsX|JiXBPsZAKs[|JiYBPsZ}JsXAKsYAKsX}JsY|JsY~Js[{JiZAPs[JsZBKIIRAsX@KsYBKsZJs[@Ks[~JsZ|J GetResponse().Init(506); GetResponse().AppendInt32(5); for (uint i = 5; i >= 1; i--) { GetResponse().AppendUInt(i); if (i <= 1) { GetResponse().AppendInt32(0); } else if (i == 2) { GetResponse().AppendInt32(4); } else if (i == 3) { GetResponse().AppendInt32(40); } else if (i == 4) { GetResponse().AppendInt32(200); } else if (i >= 5) { GetResponse().AppendInt32(2000); } List <EcotronReward> Rewards = ButterflyEnvironment.GetGame().GetCatalog().GetEcotronRewardsForLevel(i); GetResponse().AppendInt32(Rewards.Count); foreach (EcotronReward Reward in Rewards) { GetResponse().AppendStringWithBreak(Reward.GetBaseItem().Type.ToString().ToLower()); GetResponse().AppendUInt(Reward.DisplayId); } } SendResponse(); }
public Room(RoomData Data) { RolePlayerManager RPManager = ButterflyEnvironment.GetGame().GetRoleplayManager().GetRolePlay(Data.OwnerId); if (RPManager != null) { this.RpRoom = true; this.Pvp = true; this.RpCycleHourEffect = true; this.RpTimeSpeed = false; this.RpHour = -1; } this.SaveTimer = 0; this.Disposed = false; this.Bans = new Dictionary <int, double>(); this.Mutes = new Dictionary <int, double>(); this.ActiveTrades = new List <Trade>(); this.mCycleEnded = false; this.HeightMapLoaded = false; this.RoomData = Data; this.EveryoneGotRights = Data.AllowRightsOverride; this.IdleTime = 0; this.RoomMuted = false; this.PushPullAllowed = true; this.RoomIngameChat = false; this.gamemap = new Gamemap(this); this.roomItemHandling = new RoomItemHandling(this); this.roomUserManager = new RoomUserManager(this); this.wiredHandler = new WiredHandler(this); this.projecctileManager = new ProjectileManager(this); this.chatMessageManager = new ChatMessageManager(); this.chatMessageManager.LoadRoomChatlogs(this.Id); this.LoadRights(); this.GetRoomItemHandler().LoadFurniture(); if (this.RoomData.OwnerName == "WibboGame") { this.GetRoomItemHandler().LoadFurniture(5400713); } this.GetGameMap().GenerateMaps(); this.LoadBots(); this.InitPets(); this.lastTimerReset = DateTime.Now; }
public bool TryExecute(string[] parameters) { if (parameters.Length != 3) { return(false); } int Userid = 0; if (!int.TryParse(parameters[1], out Userid)) { return(false); } if (Userid == 0) { return(false); } GameClient Client = ButterflyEnvironment.GetGame().GetClientManager().GetClientByUserID(Userid); if (Client == null || Client.GetHabbo() == null) { return(false); } int RoomId = 0; if (!int.TryParse(parameters[2], out RoomId)) { return(false); } if (RoomId == 0) { return(false); } Room room = ButterflyEnvironment.GetGame().GetRoomManager().LoadRoom(RoomId); if (room == null) { return(false); } Client.SendPacket(new GetGuestRoomResultComposer(Client, room.RoomData, false, true)); return(true); }
public static ServerPacket SerializeRoomTool(RoomData Data) { Room room = ButterflyEnvironment.GetGame().GetRoomManager().GetRoom(Data.Id); int i = 0; using (IQueryAdapter queryreactor = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) { try { queryreactor.SetQuery("SELECT id FROM users WHERE username = @owner"); queryreactor.AddParameter("owner", Data.OwnerName); i = Convert.ToInt32(queryreactor.GetRow()[0]); } catch (Exception ex) { Logging.HandleException(ex, "ModerationTool.SerializeRoomTool"); } } ServerPacket serverMessage = new ServerPacket(ServerPacketHeader.ModeratorRoomInfoMessageComposer); serverMessage.WriteInteger(Data.Id); serverMessage.WriteInteger(Data.UsersNow); if (room != null) { serverMessage.WriteBoolean(room.GetRoomUserManager().GetRoomUserByHabbo(Data.OwnerName) != null); } else { serverMessage.WriteBoolean(false); } serverMessage.WriteInteger(i); serverMessage.WriteString(Data.OwnerName); serverMessage.WriteBoolean(room != null); if (room != null) { serverMessage.WriteString(Data.Name); serverMessage.WriteString(Data.Description); serverMessage.WriteInteger(Data.TagCount); foreach (string s in Data.Tags) { serverMessage.WriteString(s); } } return(serverMessage); }
public void Parse(GameClient Session, ClientPacket Packet) { int NumEnable = Packet.PopInt(); if (NumEnable < 0) { return; } if (!ButterflyEnvironment.GetGame().GetEffectsInventoryManager().EffectExist(NumEnable, Session.GetHabbo().HasFuse("fuse_mod"))) { return; } Room Room = Session.GetHabbo().CurrentRoom; if (Room == null) { return; } RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabboId(Session.GetHabbo().Id); if (User == null) { return; } int CurrentEnable = User.CurrentEffect; if (CurrentEnable == 28 || CurrentEnable == 29 || CurrentEnable == 30 || CurrentEnable == 37 || CurrentEnable == 184 || CurrentEnable == 77 || CurrentEnable == 103 || CurrentEnable == 40 || CurrentEnable == 41 || CurrentEnable == 42 || CurrentEnable == 43 || CurrentEnable == 49 || CurrentEnable == 50 || CurrentEnable == 51 || CurrentEnable == 52 || CurrentEnable == 33 || CurrentEnable == 34 || CurrentEnable == 35 || CurrentEnable == 36) { return; } if (User.team != Team.none || User.InGame) { return; } User.ApplyEffect(NumEnable); }
public void TryAuthenticate(string AuthTicket) { if (string.IsNullOrEmpty(AuthTicket)) { return; } string ip = this.GetConnection().getIp(); using (IQueryAdapter queryreactor = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) { queryreactor.SetQuery("SELECT id FROM bans WHERE expire > @nowtime AND (bantype = 'ip' AND value = @IP1) LIMIT 1"); queryreactor.AddParameter("nowtime", ButterflyEnvironment.GetUnixTimestamp()); queryreactor.AddParameter("IP1", ip); DataRow IsBanned = queryreactor.GetRow(); if (IsBanned != null) { return; } queryreactor.SetQuery("SELECT user_id, is_staff, langue FROM user_websocket WHERE auth_ticket = @sso"); queryreactor.AddParameter("sso", AuthTicket); DataRow dUserInfo = queryreactor.GetRow(); if (dUserInfo == null) { return; } this.UserId = Convert.ToInt32(dUserInfo["user_id"]); this._isStaff = ButterflyEnvironment.EnumToBool((string)dUserInfo["is_staff"]); this.Langue = LanguageManager.ParseLanguage(Convert.ToString(dUserInfo["langue"])); queryreactor.RunQuery("UPDATE user_websocket SET auth_ticket = '' WHERE user_id = '" + UserId + "'"); this._sendSettingSound(queryreactor); } ButterflyEnvironment.GetGame().GetClientWebManager().LogClonesOut(UserId); ButterflyEnvironment.GetGame().GetClientWebManager().RegisterClient(this, UserId); this.SendPacket(new AuthOkComposer()); this.SendPacket(new UserIsStaffComposer(this._isStaff)); //this.SendPacket(new NotifTopInitComposer(ButterflyEnvironment.GetGame().GetNotifTopManager().GetAllMessages())); }
public static void InvokeCommand(string inputData) { if (string.IsNullOrEmpty(inputData)) { return; } try { #region Command parsing string[] parameters = inputData.Split(' '); switch (parameters[0].ToLower()) { #region stop case "stop": case "shutdown": Logging.LogMessage("Server exiting at " + DateTime.Now); Logging.DisablePrimaryWriting(true); Console.WriteLine("The server is saving users furniture, rooms, etc. WAIT FOR THE SERVER TO CLOSE, DO NOT EXIT THE PROCESS IN TASK MANAGER!!"); ButterflyEnvironment.PreformShutDown(true); break; case "forceshutdown": ButterflyEnvironment.GetGame().gameLoopEnded = true; break; #endregion case "clear": Console.Clear(); break; default: { Logging.LogMessage(parameters[0].ToLower() + " is an unknown or unsupported command. Type help for more information"); break; } } #endregion } catch (Exception e) { Logging.LogMessage("Error in command [" + inputData + "]: " + e); } }
public void TakeAdmin(int UserId) { if (!this._administrators.Contains(UserId)) { return; } using (IQueryAdapter dbClient = ButterflyEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.SetQuery("UPDATE group_memberships SET `rank` = '0' WHERE user_id = @uid AND group_id = @gid"); dbClient.AddParameter("gid", this.Id); dbClient.AddParameter("uid", UserId); dbClient.RunQuery(); } this._administrators.Remove(UserId); this._members.Add(UserId); }
public void Parse(GameClient Session, ClientPacket Packet) { int GroupId = Packet.PopInt(); Group Group = null; if (!ButterflyEnvironment.GetGame().GetGroupManager().TryGetGroup(GroupId, out Group)) { return; } if (Group.CreatorId != Session.GetHabbo().Id&& !Session.GetHabbo().HasFuse("group_management_override")) { return; } Session.SendPacket(new ManageGroupComposer(Group, Group.Badge.Replace("b", "").Split('s'))); }