private void GameCycle() { while (this._cycleActive) { this._cycleEnded = false; PlusEnvironment.GetGame().GetRoomManager().OnCycle(); PlusEnvironment.GetGame().GetClientManager().OnCycle(); RoleplayGameManager.CheckAutomaticGames(); this._cycleEnded = true; Thread.Sleep(this._cycleSleepTime); } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Session.GetRoleplay().TexasHoldEmPlayer > 0) { Session.Shout("*Sai do Texas Hold 'Em *", 4); TexasHoldEmManager.RemovePlayer(Session.GetHabbo().Id); return; } if (Session.GetRoleplay().Game == null) { Session.SendWhisper("Você não está dentro de um evento!", 1); return; } if (Session.GetRoleplay().Game.IsGameStarting() && !Session.GetRoleplay().Game.HasGameStarted()) { Session.SendWhisper("Você não pode deixar um jogo enquanto está começando!", 1); return; } if (RoleplayGameManager.RunningGames.ContainsKey(Session.GetRoleplay().Game.GetGameMode())) { if (Session.GetRoleplay().Game.GetGameMode() == GameMode.Brawl || Session.GetRoleplay().Game.GetGameMode() == GameMode.SoloQueue || Session.GetRoleplay().Game.GetGameMode() == GameMode.SoloQueueGuns) { if (Session.GetRoomUser() != null) { Session.GetRoomUser().ClearMovement(true); } RoleplayGameManager.GetGame(Session.GetRoleplay().Game.GetGameMode()).RemovePlayerFromGame(Session); RoleplayManager.SpawnChairs(Session, "es_bench"); } else { RoleplayGameManager.GetGame(Session.GetRoleplay().Game.GetGameMode()).RemovePlayerFromGame(Session); } Session.GetRoleplay().Game = null; Session.GetRoleplay().Team = null; return; } else { Session.SendWhisper("Um erro ocorreu!", 1); return; } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.SoloQueue)) { if (Session.GetRoleplay().Game != null && Session.GetRoleplay().Game.GetGameMode() == GameMode.SoloQueue) { Session.SendWhisper("Você já está no evento SoloQueue!", 1); return; } else { if (RoleplayGameManager.AddPlayerToGame(RoleplayGameManager.GetGame(GameMode.SoloQueue), Session, "") != "OK") { return; } if (Session.GetRoleplay().EquippedWeapon != null) { Session.GetRoleplay().EquippedWeapon = null; } if (Session.GetRoleplay().IsWorking) { Session.GetRoleplay().IsWorking = false; } if (Session.GetRoleplay().InsideTaxi) { Session.GetRoleplay().InsideTaxi = false; } } } else { return; } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Digite um tipo de evento: [briga] - [brigadetimes/bt] - [guerradecores/gc] - [guerrademafias/gm] - [purga]!", 1); return; } string Message = Params[1].ToString().ToLower(); switch (Message) { #region Brawl case "brawl": case "briga": { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.Brawl)) { IGame Game = RoleplayGameManager.GetGame(GameMode.Brawl); Game.Start(); Session.Shout("*Inicia um evento de brigas*", 23); } else { Session.SendWhisper("Não há nenhum evento de briga ativo! Use ':ievento briga' para começar um.", 1); } break; } #endregion #region Team Brawl case "teambrawl": case "tbrawl": case "tb": case "brigatimes": case "brigadetimes": case "bt": { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.TeamBrawl)) { IGame Game = RoleplayGameManager.GetGame(GameMode.TeamBrawl); Game.Start(); Session.Shout("*Inicia um evento de " + Game.GetName() + "*", 23); } else { Session.SendWhisper("Não há nenhum evento Briga de Times ativo! Use ':ievento bt' para começar um.", 1); } break; } #endregion #region Colour Wars case "colorwars": case "colourwars": case "cw": case "guerradecores": case "gc": case "guerracores": { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.ColourWars)) { IGame Game = RoleplayGameManager.GetGame(GameMode.ColourWars); Game.Start(); Session.Shout("*Inicia um evento de " + Game.GetName() + "*", 23); } else { Session.SendWhisper("Não há nenhum evento Guerra de Cores ativo! Use ':ievento gc' para começar um.", 1); } break; } #endregion #region Mafia Wars case "mafiawars": case "mwars": case "mw": case "gm": case "guerramafias": case "guerrademafias": { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.MafiaWars)) { IGame Game = RoleplayGameManager.GetGame(GameMode.MafiaWars); Game.Start(); Session.Shout("*Force inicia um jogo de " + Game.GetName() + "*", 23); } else { Session.SendWhisper("Não há nenhum evento Guerra de Máfias ativo! Use ':ievento gm' para começar um.", 1); } break; } #endregion #region Purge case "purge": case "purga": { if (RoleplayManager.PurgeStarted) { Session.SendWhisper("Evento de Purga já começou!"); break; } try { lock (PlusEnvironment.GetGame().GetClientManager().GetClients.ToList()) { foreach (GameClient client in PlusEnvironment.GetGame().GetClientManager().GetClients.ToList()) { if (client == null) { continue; } if (client.GetHabbo() == null) { continue; } if (client.GetHabbo().CurrentRoom == null) { continue; } if (client.GetRoomUser() == null) { continue; } if (client.GetRoleplay() == null) { continue; } int Counter = 11; new Thread(() => { while (Counter > 0) { if (client != null) { if (Counter == 11) { client.SendWhisper("O evento PURGA começará em alguns segundos!", 1); } else { client.SendWhisper("A Purga começará em " + Counter + " segundos!", 1); } } Counter--; Thread.Sleep(1000); if (Counter == 0) { client.SendWhisper("O tempo de Purga foi ativado! [TODOS CRIMES SÃO LEGAIS].", 34); RoleplayManager.WantedList.Clear(); if (client.GetRoleplay().IsJailed) { client.GetRoleplay().IsJailed = false; client.GetRoleplay().JailedTimeLeft = 0; } if (GroupManager.HasJobCommand(client, "guide")) { WorkManager.RemoveWorkerFromList(client); client.GetRoleplay().IsWorking = false; client.GetHabbo().Poof(); PlusEnvironment.GetGame().GetGuideManager().RemoveGuide(client); client.SendMessage(new HelperToolConfigurationComposer(client)); #region End Existing Calls if (client.GetRoleplay().GuideOtherUser != null) { client.GetRoleplay().GuideOtherUser.SendMessage(new OnGuideSessionDetachedComposer(0)); client.GetRoleplay().GuideOtherUser.SendMessage(new OnGuideSessionDetachedComposer(1)); if (client.GetRoleplay().GuideOtherUser.GetRoleplay() != null) { client.GetRoleplay().GuideOtherUser.GetRoleplay().Sent911Call = false; client.GetRoleplay().GuideOtherUser.GetRoleplay().GuideOtherUser = null; } client.GetRoleplay().GuideOtherUser = null; client.SendMessage(new OnGuideSessionDetachedComposer(0)); client.SendMessage(new OnGuideSessionDetachedComposer(1)); } #endregion } RoleplayManager.PurgeStarted = true; // let the fun begin } } }).Start(); } } break; } catch (Exception e) { lock (PlusEnvironment.GetGame().GetClientManager().GetClients.ToList()) { foreach (var client in PlusEnvironment.GetGame().GetClientManager().GetClients.ToList()) { if (client == null) { continue; } if (client.GetHabbo() == null) { continue; } if (client.GetHabbo().CurrentRoom == null) { continue; } if (client.GetRoomUser() == null) { continue; } client.SendWhisper("Desculpe, ocorreu um erro ao iniciar 'Tempo de Purga' - Será investigado pela equipe de técnicos do HabboRPG!"); } } Logging.LogRPGamesError("Erro em iniciar a Purga: " + e); break; } } #endregion default: { Session.SendWhisper("Esse tipo de evento não existe ou está desativado!", 1); break; } } }
public void OnTrigger(GameClient Session, Item Item, int Request, bool HasRights) { if (Session == null) { return; } RoomUser User = Item.GetRoom().GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (Item == null || User == null) { return; } if (Item.InteractingUser2 != User.UserId) { Item.InteractingUser2 = User.UserId; } if (Item.GetBaseItem().InteractionType == InteractionType.ONE_WAY_GATE) { if (Item.GetBaseItem().ItemName == "one_way_door*2") { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.Brawl)) { Session.SendWhisper("Não há nenhum evento de briga no momento!", 1); return; } } else if (Item.GetBaseItem().ItemName == "one_way_door*5") { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.SoloQueue)) { RoleplayGameManager.CreateGame("soloqueue"); } } else if (Item.GetBaseItem().ItemName == "one_way_door*6") { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.SoloQueueGuns)) { RoleplayGameManager.CreateGame("soloqueueguns"); } } if (User.Coordinate != Item.SquareInFront && User.CanWalk) { User.MoveTo(Item.SquareInFront); return; } if (!Item.GetRoom().GetGameMap().ValidTile(Item.SquareBehind.X, Item.SquareBehind.Y) || !Item.GetRoom().GetGameMap().CanWalk(Item.SquareBehind.X, Item.SquareBehind.Y, false) || !Item.GetRoom().GetGameMap().SquareIsOpen(Item.SquareBehind.X, Item.SquareBehind.Y, false)) { return; } if ((User.LastInteraction - PlusEnvironment.GetUnixTimestamp() < 0) && User.InteractingGate && User.GateId == Item.Id) { User.InteractingGate = false; User.GateId = 0; } if (!Item.GetRoom().GetGameMap().CanWalk(Item.SquareBehind.X, Item.SquareBehind.Y, User.AllowOverride)) { return; } if (Item.InteractingUser == 0) { #region Brawl if (Item.GetBaseItem().ItemName == "one_way_door*2") { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.Brawl)) { if (Session.GetRoleplay().Game != null && Session.GetRoleplay().Game.GetGameMode() == GameMode.Brawl) { Session.SendWhisper("Você já está no evento Briga!", 1); return; } else { if (Session.GetRoleplay().IsWorking) { Session.GetRoleplay().IsWorking = false; } if (RoleplayGameManager.AddPlayerToGame(RoleplayGameManager.GetGame(GameMode.Brawl), Session, "") != "OK") { return; } if (Session.GetRoleplay().EquippedWeapon != null) { Session.GetRoleplay().EquippedWeapon = null; } if (Session.GetRoleplay().InsideTaxi) { Session.GetRoleplay().InsideTaxi = false; } } } else { return; } } #endregion #region SoloQueue else if (Item.GetBaseItem().ItemName == "one_way_door*5") { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.SoloQueue)) { if (Session.GetRoleplay().Game != null && Session.GetRoleplay().Game.GetGameMode() == GameMode.SoloQueue) { Session.SendWhisper("Você já está no Evento SoloQueue!", 1); return; } else if (Session.GetRoleplay().IsWanted) { Session.SendWhisper("Você não pode completar esta ação enquanto você é procurado!", 1); return; } else { if (Session.GetRoleplay().IsWorking) { Session.GetRoleplay().IsWorking = false; } if (RoleplayGameManager.AddPlayerToGame(RoleplayGameManager.GetGame(GameMode.SoloQueue), Session, "") != "OK") { return; } if (Session.GetRoleplay().EquippedWeapon != null) { Session.GetRoleplay().EquippedWeapon = null; } if (Session.GetRoleplay().InsideTaxi) { Session.GetRoleplay().InsideTaxi = false; } } } else { return; } } #endregion #region SoloQueue Guns else if (Item.GetBaseItem().ItemName == "one_way_door*6") { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.SoloQueueGuns)) { if (Session.GetRoleplay().Game != null && Session.GetRoleplay().Game == RoleplayGameManager.GetGame(GameMode.SoloQueueGuns)) { Session.SendWhisper("Você já está no evento SoloQueue!", 1); return; } else if (Session.GetRoleplay().IsWanted) { Session.SendWhisper("Você não pode completar esta ação enquanto você é procurado!", 1); return; } else { if (Session.GetRoleplay().IsWorking) { Session.GetRoleplay().IsWorking = false; } if (RoleplayGameManager.AddPlayerToGame(RoleplayGameManager.GetGame(GameMode.SoloQueueGuns), Session, "") != "OK") { return; } if (Session.GetRoleplay().InsideTaxi) { Session.GetRoleplay().InsideTaxi = false; } } } else { return; } } #endregion User.InteractingGate = true; User.GateId = Item.Id; Item.InteractingUser = User.HabboId; User.CanWalk = false; if (User.IsWalking && (User.GoalX != Item.SquareInFront.X || User.GoalY != Item.SquareInFront.Y)) { User.ClearMovement(true); } User.AllowOverride = true; User.MoveTo(Item.Coordinate); Item.RequestUpdate(4, true); } } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Você deve incluir uma coisa para atualizar, e.x. :atualizar catalogo", 1); return; } string UpdateVariable = Params[1]; switch (UpdateVariable.ToLower()) { case "cata": case "catalog": case "catalogue": case "catalogo": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_catalog")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_catalog'.", 1); break; } PlusEnvironment.GetGame().GetCatalog().Init(PlusEnvironment.GetGame().GetItemManager()); PlusEnvironment.GetGame().GetClientManager().SendMessage(new CatalogUpdatedComposer()); Session.SendWhisper("Catálogo atualizado com sucesso.", 1); break; } case "items": case "furni": case "furniture": case "mobis": case "mobi": case "mobilias": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_furni")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_furni'.", 1); break; } PlusEnvironment.GetGame().GetItemManager().Init(); Session.SendWhisper("Itens/Mobis atualizados com sucesso.", 1); break; } case "models": case "modelos": case "model": case "quartos": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_models")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_models'.", 1); break; } PlusEnvironment.GetGame().GetRoomManager().LoadModels(); Session.SendWhisper("Modelos de quartos atualizados com sucesso.", 1); break; } case "promotions": case "promocoes": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_promotions")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_promotions'.", 1); break; } PlusEnvironment.GetGame().GetLandingManager().LoadPromotions(); Session.SendWhisper("Landing view promotions successfully updated.", 1); break; } case "youtube": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_youtube")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_youtube'", 1); break; } PlusEnvironment.GetGame().GetTelevisionManager().Init(); Session.SendWhisper("A lista de televisões do Youtube foi atualizada com sucesso. ", 1); break; } case "filter": case "filtro": case "filtros": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_filter")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_filter'", 1); break; } PlusEnvironment.GetGame().GetChatManager().GetFilter().Init(); Session.SendWhisper("Definições de filtro atualizadas com sucesso.", 1); break; } case "navigator": case "navegador": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_navigator")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_navigator'.", 1); break; } PlusEnvironment.GetGame().GetNavigator().Init(); Session.SendWhisper("Itens do navegador atualizados com sucesso.", 1); break; } case "ranks": case "rights": case "permissions": case "cargos": case "permissao": case "permissoes": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_permissions")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_rights'.", 1); break; } PlusEnvironment.GetGame().GetPermissionManager().Init(); foreach (GameClient Client in PlusEnvironment.GetGame().GetClientManager().GetClients.ToList()) { if (Client == null || Client.GetHabbo() == null || Client.GetHabbo().GetPermissions() == null) { continue; } Client.GetHabbo().GetPermissions().Init(Client.GetHabbo()); } Session.SendWhisper("Definições de Cargo atualizadas com sucesso.", 1); break; } case "config": case "settings": case "configuracoes": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_configuration")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_configuration'.", 1); break; } PlusEnvironment.ConfigData = new ConfigData(); Session.SendWhisper("Configuração do servidor atualizada com sucesso.", 1); break; } case "bans": case "ban": case "banimentos": case "banidos": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_bans")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_bans'.", 1); break; } PlusEnvironment.GetGame().GetModerationManager().ReCacheBans(); Session.SendWhisper("A lista de banidos foi atualizada com sucesso.", 1); break; } case "quests": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_quests")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_quests'.", 1); break; } PlusEnvironment.GetGame().GetQuestManager().Init(); Session.SendWhisper("Definições de Tarefas atualizadas com êxito.", 1); break; } case "achievements": case "conquistas": case "conquista": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_achievements")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_achievements'.", 1); break; } PlusEnvironment.GetGame().GetAchievementManager().LoadAchievements(); Session.SendWhisper("Definições de conquistas atualizadas com êxito.", 1); break; } case "clothing": case "visuais": case "roupas": case "visual": case "roupa": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_clothing")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_clothing'.", 1); break; } PlusEnvironment.GetGame().GetCatalog().GetClothingManager().Init(); Session.SendWhisper("Mobiliário de vestuário e preços recarregados.", 1); break; } case "moderation": case "moderacao": case "mods": case "moderadores": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_moderation")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_moderation'.", 1); break; } PlusEnvironment.GetGame().GetModerationManager().Init(); PlusEnvironment.GetGame().GetClientManager().ModAlert("As predefinições de moderação foram atualizadas. Recarregue o cliente para ver as novas predefinições."); Session.SendWhisper("Configuração de moderação atualizada com sucesso.", 1); break; } case "tickets": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_tickets")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_tickets'.", 1); break; } if (PlusEnvironment.GetGame().GetModerationTool().Tickets.Count > 0) { PlusEnvironment.GetGame().GetModerationTool().Tickets.Clear(); } PlusEnvironment.GetGame().GetClientManager().ModAlert("Os ingressos foram atualizados. Recarregue o cliente."); Session.SendWhisper("Os ingressos foram atualizados com sucesso.", 1); break; } case "vouchers": case "brindes": case "codigos": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_vouchers")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_vouchers'.", 1); break; } PlusEnvironment.GetGame().GetCatalog().GetVoucherManager().Init(); Session.SendWhisper("Vouchers/Códigos brinde atualizado com sucesso.", 1); break; } case "polls": case "perguntas": case "quiz": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_polls")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_polls'.", 1); break; } int PollLoaded; PlusEnvironment.GetGame().GetPollManager().Init(out PollLoaded); Session.SendWhisper("Polls successfully updated.", 1); break; } case "gamecenter": case "centrodejogos": case "cjogos": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_game_center")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_game_center'.", 1); break; } PlusEnvironment.GetGame().GetGameDataManager().Init(); Session.SendWhisper("Cache do Centro de Jogos atualizado com sucesso.", 1); break; } case "pet_locale": case "lpet": case "petl": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_pet_locale")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_pet_locale'.", 1); break; } PlusEnvironment.GetGame().GetChatManager().GetPetLocale().Init(); Session.SendWhisper("Pet locale cache successfully updated.", 1); break; } case "locale": case "local": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_locale")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_locale'.", 1); break; } PlusEnvironment.GetGame().GetLanguageLocale().Init(); Session.SendWhisper("Local cache atualizado com sucesso.", 1); break; } case "mutant": case "mutante": case "mutantes": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_anti_mutant")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_anti_mutant'.", 1); break; } PlusEnvironment.GetGame().GetAntiMutant().Init(); Session.SendWhisper("Anti mutante recarregado com sucesso.", 1); break; } case "bots": case "bot": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_bots")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_bots'.", 1); break; } PlusEnvironment.GetGame().GetBotManager().Init(); Session.SendWhisper("O gerenciador de Bots foi recarregado com sucesso", 1); break; } case "bots_speech": case "bots speech": case "speech": case "speeches": case "response": case "responses": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_bots")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_bots'", 1); break; } RoleplayBotManager.FetchCachedSpeeches(); Session.SendWhisper("Bots speech and responses successfully reloaded", 1); break; } case "rewards": case "premios": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_rewards")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_rewards'.", 1); break; } PlusEnvironment.GetGame().GetRewardManager().Reload(); Session.SendWhisper("O Gerenciador de recompensas foi recarregado com sucesso.", 1); break; } case "chat_styles": case "echats": case "estilos": case "estilo": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_chat_styles")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_chat_styles'.", 1); break; } PlusEnvironment.GetGame().GetChatManager().GetChatStyles().Init(); Session.SendWhisper("Estilos de bate-papo recarregados com sucesso.", 1); break; } case "badges": case "badge_definitions": case "emblemas": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_badge_definitions")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_badge_definitions'.", 1); break; } PlusEnvironment.GetGame().GetBadgeManager().Init(); Session.SendWhisper("Definições de emblemas recarregadas com sucesso.", 1); break; } case "rpdata": case "roleplaydata": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_roleplay_data")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_roleplaydata'.", 1); break; } RoleplayData.Initialize(); RoleplayManager.UpdateRPData(); Session.SendWhisper("Dados do Roleplay recarregados com sucesso.", 1); break; } case "blacklist": case "listanegra": case "ln": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_blacklist")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_blacklist'.", 1); break; } BlackListManager.Initialize(); Session.SendWhisper("Lista negra recarregada com sucesso.", 1); break; } case "farming": case "agricultura": case "agricolas": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_farming")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_farming'.", 1); break; } FarmingManager.Initialize(); Session.SendWhisper("Artigos agrícolas recarregados com sucesso.", 1); break; } case "events": case "games": case "jogos": case "eventos": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_events")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_events'.", 1); break; } RoleplayGameManager.Initialize(); Session.SendWhisper("Eventos recarregados com sucesso.", 1); break; } case "corps": case "jobs": case "corporations": case "gangs": case "gangues": case "empregos": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_jobs")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_jobs'.", 1); break; } PlusEnvironment.GetGame().GetGroupManager().Initialize(); Session.SendWhisper("Trabalhos e Gangues recarregados com sucesso.", 1); break; } case "turfs": case "turfcaptures": case "gangcaptures": case "territorio": case "territorios": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_turfs")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_turfs'.", 1); break; } TurfManager.Initialize(); Session.SendWhisper("Territórios e Zona de Captura recarregados com sucesso.", 1); break; } case "weapons": case "guns": case "armas": case "arma": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_weapons")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_weapons'.", 1); break; } WeaponManager.Initialize(); #region Refresh User Weapons lock (PlusEnvironment.GetGame().GetClientManager().GetClients) { foreach (GameClient Client in PlusEnvironment.GetGame().GetClientManager().GetClients.ToList()) { if (Client == null || Client.GetHabbo() == null || Client.GetRoleplay() == null) { continue; } if (Client.GetRoleplay().EquippedWeapon == null) { continue; } Client.GetRoleplay().EquippedWeapon = null; Client.GetRoleplay().OwnedWeapons = null; Client.GetRoleplay().OwnedWeapons = Client.GetRoleplay().LoadAndReturnWeapons(); Client.SendWhisper("Um administrador atualizou as armas, sua arma foi retirada, equipe de novo!", 1); } } #endregion Session.SendWhisper("Armas recarregadas com sucesso.", 1); break; } case "food": case "drinks": case "bebidas": case "bebida": case "alimentos": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_food")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_food'.", 1); break; } FoodManager.Initialize(); Session.SendWhisper("Alimentos e bebidas recarregados com sucesso.", 1); break; } case "houses": case "house": case "casas": case "casa": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_houses")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_houses'.", 1); break; } PlusEnvironment.GetGame().GetHouseManager().Init(); Session.SendWhisper("Casas recarregadas com sucesso.", 1); break; } case "crafting": case "construir": case "construcao": case "craft": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_crafting")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_crafting'.", 1); break; } CraftingManager.Initialize(); Session.SendWhisper("Áreas de construção recarregadas com sucesso..", 1); break; } case "lottery": case "loteria": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_lottery")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_lottery'.", 1); break; } LotteryManager.Initialize(); Session.SendWhisper("Loteria recarregados com sucesso.", 1); break; } case "todo": case "tarefas": case "tarefa": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_todo")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_todo'.", 1); break; } ToDoManager.Initialize(); Session.SendWhisper("Lista de Tarefas recarregada com sucesso.", 1); break; } case "bounty": case "bl": case "bounties": case "recompensa": case "recompensas": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_bounty")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_bounty'.", 1); break; } BountyManager.Initialize(); Session.SendWhisper("Lista de recompensas recarregada com sucesso.", 1); break; } case "court": case "jury": case "juiz": case "politica": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_court")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_court'.", 1); break; } RoleplayManager.CourtVoteEnabled = false; RoleplayManager.InnocentVotes = 0; RoleplayManager.GuiltyVotes = 0; RoleplayManager.CourtJuryTime = 0; RoleplayManager.CourtTrialIsStarting = false; RoleplayManager.CourtTrialStarted = false; RoleplayManager.Defendant = null; RoleplayManager.InvitedUsersToJuryDuty.Clear(); Session.SendWhisper("Juiz atualizado com sucesso.", 1); break; } case "chat": case "chats": case "chatroom": case "chatrooms": case "batepapos": case "batepapo": case "whatsapps": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_websocket_chat")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_websocket_chat'.", 1); break; } HabboRoleplay.Web.Util.ChatRoom.WebSocketChatManager.Initialiaze(); Session.SendWhisper("Salas de chat atualizadas com sucesso.", 1); break; } case "gambling": case "texash": case "texas": case "texasholdem": { if (!Session.GetHabbo().GetPermissions().HasCommand("command_update_gambling")) { Session.SendWhisper("Opa, você não tem permissão em 'command_update_gambling'.", 1); break; } TexasHoldEmManager.Initialize(); Session.SendWhisper("Jogos do Texas Holdem atualizados com sucesso.", 1); break; } default: Session.SendWhisper("'" + UpdateVariable + "' não é uma coisa válida para recarregar.", 1); break; } }
public Game() { this._packetManager = new PacketManager(); this._clientManager = new GameClientManager(); this._modManager = new ModerationManager(); this._moderationTool = new ModerationTool(); this._itemDataManager = new ItemDataManager(); this._itemDataManager.Init(); this._catalogManager = new CatalogManager(); this._catalogManager.Init(this._itemDataManager); this._televisionManager = new TelevisionManager(); this._navigatorManager = new NavigatorManager(); this._roomManager = new RoomManager(); this._chatManager = new ChatManager(); this._questManager = new QuestManager(); this._achievementManager = new AchievementManager(); this._talentTrackManager = new TalentTrackManager(); this._landingViewManager = new LandingViewManager(); this._gameDataManager = new GameDataManager(); this._globalUpdater = new ServerStatusUpdater(); this._globalUpdater.Init(); this._languageLocale = new LanguageLocale(); this._antiMutant = new AntiMutant(); this._botManager = new BotManager(); this._cacheManager = new CacheManager(); this._rewardManager = new RewardManager(); this._badgeManager = new BadgeManager(); this._badgeManager.Init(); this._permissionManager = new PermissionManager(); this._permissionManager.Init(); this._subscriptionManager = new SubscriptionManager(); this._subscriptionManager.Init(); this._guideManager = new GuideManager(); int pollLoaded; this._pollManager = new PollManager(); this._pollManager.Init(out pollLoaded); #region Roleplay Section RoleplayData.Initialize(); EventManager.Initialize(); CombatManager.Initialize(); RoleplayGameManager.Initialize(); this._groupManager = new GroupManager(); this._groupManager.Initialize(); TexasHoldEmManager.Initialize(); TurfManager.Initialize(); WeaponManager.Initialize(); FoodManager.Initialize(); FarmingManager.Initialize(); CraftingManager.Initialize(); LotteryManager.Initialize(); ToDoManager.Initialize(); BlackListManager.Initialize(); BountyManager.Initialize(); WebSocketChatManager.Initialiaze(); this._houseManager = new HouseManager(); this._houseManager.Init(); this._webEventManager = new WebEventManager(); this._webEventManager.Init(); #endregion }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1 && Params[0] != "checarloteria") { Session.SendWhisper("Digite um tipo de evento!", 1); return; } string Message; if (Params[0] == "checarloteria") { Message = "lottery"; } else { Message = Params[1].ToString().ToLower(); } switch (Message) { #region Brawl case "brawl": case "briga": { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.Brawl)) { Session.SendWhisper("Não há evento de Briga acontecendo!", 1); } else { var Game = RoleplayGameManager.GetGame(GameMode.Brawl); if (Game.GetPlayers().Count > 0) { while (Game.GetPlayers().Count > 0) { foreach (var player in Game.GetPlayers()) { var Client = PlusEnvironment.GetGame().GetClientManager().GetClientByUserID(player); if (Client != null) { if (Client.GetRoomUser() != null) { Client.GetRoomUser().ClearMovement(true); } RoleplayManager.SpawnChairs(Client, "es_bench"); Game.RemovePlayerFromGame(Client); } if (Game.GetPlayers().Contains(player)) { Game.GetPlayers().Remove(player); } break; } if (Game.GetPlayers().Count <= 0) { break; } } } RoleplayGameManager.StopGame(GameMode.Brawl); Session.SendWhisper("Você parou o Evento de Briga!", 1); } break; } #endregion #region Team Brawl case "teambrawl": case "tbrawl": case "tb": case "brigatimes": case "bt": case "brigadetimes": { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.TeamBrawl)) { Session.SendWhisper("Não há um evento de Briga de Times acontecendo!", 1); } else { var Game = RoleplayGameManager.GetGame(GameMode.TeamBrawl); if (Game.GetPlayers().Count > 0) { while (Game.GetPlayers().Count > 0) { foreach (var Player in Game.GetPlayers()) { var Client = PlusEnvironment.GetGame().GetClientManager().GetClientByUserID(Player); if (Client != null) { Game.RemovePlayerFromGame(Client); RoleplayManager.SpawnChairs(Client, "es_bench"); } if (Game.GetPlayers().Contains(Player)) { Game.GetPlayers().Remove(Player); } break; } if (Game.GetPlayers().Count <= 0) { break; } } } RoleplayGameManager.StopGame(GameMode.TeamBrawl); Session.SendWhisper("Você parou o Evento Briga de Times!", 1); } break; } #endregion #region Colour Wars case "colorwars": case "colourwars": case "cw": case "guerradecores": case "guerracores": case "gc": { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.ColourWars)) { Session.SendWhisper("Não há nenhum evento de Guerra de Cores acontecendo!", 1); } else { var Game = RoleplayGameManager.GetGame(GameMode.ColourWars); if (Game.GetPlayers().Count > 0) { while (Game.GetPlayers().Count > 0) { foreach (var Player in Game.GetPlayers()) { var Client = PlusEnvironment.GetGame().GetClientManager().GetClientByUserID(Player); if (Client != null) { Game.RemovePlayerFromGame(Client); } if (Game.GetPlayers().Contains(Player)) { Game.GetPlayers().Remove(Player); } break; } if (Game.GetPlayers().Count <= 0) { break; } } } RoleplayGameManager.StopGame(GameMode.ColourWars); Session.SendWhisper("Você parou o Evento Guerra de Cores!", 1); } break; } #endregion #region Mafia Wars case "mafiawars": case "mwars": case "mw": case "gm": case "guerramafia": case "guerrademafias": case "guerrademafia": { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.MafiaWars)) { Session.SendWhisper("Não há um evento de Guerra de Máfias acontecendo!", 1); } else { var Game = RoleplayGameManager.GetGame(GameMode.MafiaWars); if (Game.GetPlayers().Count > 0) { while (Game.GetPlayers().Count > 0) { foreach (var Player in Game.GetPlayers()) { var Client = PlusEnvironment.GetGame().GetClientManager().GetClientByUserID(Player); if (Client != null) { Game.RemovePlayerFromGame(Client); } if (Game.GetPlayers().Contains(Player)) { Game.GetPlayers().Remove(Player); } break; } if (Game.GetPlayers().Count <= 0) { break; } } } RoleplayGameManager.StopGame(GameMode.MafiaWars); Session.SendWhisper("Você parou o Evento Guerra de Máfias!", 1); } break; } #endregion #region Purge case "purge": case "purga": case "tempodepurga": case "purg": { if (!RoleplayManager.PurgeStarted) { Session.SendWhisper("Este não há um evento de Purga acontecendo agora!"); break; } try { lock (PlusEnvironment.GetGame().GetClientManager().GetClients) { foreach (GameClient client in PlusEnvironment.GetGame().GetClientManager().GetClients.ToList()) { if (client == null) { continue; } if (client.GetHabbo() == null) { continue; } client.SendWhisper("Um membro da Equipe terminou o Evento de Purga. Nós esperamos que você tenha aproveitado! ;)", 34); } } RoleplayManager.PurgeStarted = false; } catch (Exception e) { Logging.LogCriticalException("Erro ao parar a purga: " + e); } break; } #endregion #region Lottery case "lottery": case "loteria": { if (!LotteryManager.LotteryFull()) { Session.SendWhisper("Nem todos os bilhetes foram vendidos! [" + LotteryManager.LotteryTickets.Count + "/" + LotteryManager.TicketLimit + "]", 1); break; } else { int Winner = LotteryManager.GetWinner(); LotteryManager.GivePrize(Winner); LotteryManager.ClearLottery(); Session.SendWhisper("A loteria foi limpa com sucesso!", 1); } break; } #endregion default: { Session.SendWhisper("Este tipo de evento não existe ou está desabilitado!", 1); break; } } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length != 4 && Params[2].ToLower() != "briga" && Params[2].ToLower() != "bg") { Session.SendWhisper("Digite o usuário, jogo e equipe (se necessário) que deseja atribuir.", 1); return; } GameClient TargetClient = PlusEnvironment.GetGame().GetClientManager().GetClientByUsername(Params[1]); if (TargetClient == null || TargetClient.GetRoleplay() == null) { Session.SendWhisper("Ocorreu um erro ao tentar encontrar esse usuário, talvez ele esteja offline.", 1); return; } if (TargetClient.GetRoleplay().Game != null || TargetClient.GetRoleplay().Team != null) { Session.SendWhisper("Este usuário já está dentro de um evento!", 1); return; } if (TargetClient.GetRoleplay().IsDead) { Session.SendWhisper("Você não pode colocar esse usuário em um evento enquanto ele está morto!", 1); return; } if (TargetClient.GetRoleplay().IsJailed) { Session.SendWhisper("Você não pode colocar esse usuário em um evento enquanto ele está preso!", 1); return; } if (TargetClient.GetRoleplay().IsNoob) { Session.SendWhisper("Você não pode atribuir esse usuário a um evento enquanto ele é novato!", 1); return; } string Game = Params[2].ToString().ToLower(); List <string> ValidTeams = new List <string>(); ValidTeams.Add("blue"); ValidTeams.Add("green"); ValidTeams.Add("pink"); ValidTeams.Add("yellow"); switch (Game) { #region Brawl case "brawl": case "br": case "briga": { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.Brawl)) { Session.SendWhisper("Não há nenhum evento de Briga atualmente ativo!", 1); break; } if (TargetClient.GetRoleplay().IsWorking) { TargetClient.GetRoleplay().IsWorking = false; } if (TargetClient.GetRoleplay().EquippedWeapon != null) { TargetClient.GetRoleplay().EquippedWeapon = null; } RoleplayGameManager.AddPlayerToGame(RoleplayGameManager.GetGame(GameMode.Brawl), TargetClient, "", true); Session.SendWhisper("Sucesso, você colocou " + TargetClient.GetHabbo().Username + " no evento de Briga!", 1); break; } #endregion #region Colour Wars case "cw": case "color": case "colourwars": case "colorwars": case "gc": case "guerradecores": case "guerracores": { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.ColourWars)) { Session.SendWhisper("Não há nenhum evento de Guerra de Cores atualmente ativo!", 1); break; } string Team = Params[3].ToString().ToLower(); if (Params.Length != 4 || !ValidTeams.Contains(Team)) { Session.SendWhisper("Você escolheu uma equipe inválida. Aqui estão as equipes disponíveis: " + string.Join(", ", ValidTeams.ToArray()), 1); break; } if (TargetClient.GetRoleplay().IsWorking) { TargetClient.GetRoleplay().IsWorking = false; } if (TargetClient.GetRoleplay().EquippedWeapon != null) { TargetClient.GetRoleplay().EquippedWeapon = null; } RoleplayGameManager.AddPlayerToGame(RoleplayGameManager.GetGame(GameMode.ColourWars), TargetClient, Team, true); Session.SendWhisper("Sucesso, você colocou " + TargetClient.GetHabbo().Username + " no evento Guerra de Cores!", 1); break; } #endregion #region Team Brawl case "tb": case "teambrawl": case "tbrawl": case "teamb": case "brigatimes": case "bt": case "brigatime": { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.TeamBrawl)) { Session.SendWhisper("Não há um evento Briga de Times atualmente ativo!", 1); break; } string Team = Params[3].ToString().ToLower(); if (Params.Length != 4 || !ValidTeams.Contains(Team)) { Session.SendWhisper("Você escolheu uma equipe inválida. Aqui estão as equipes disponíveis: " + string.Join(", ", ValidTeams.ToArray()), 1); break; } if (TargetClient.GetRoleplay().IsWorking) { TargetClient.GetRoleplay().IsWorking = false; } if (TargetClient.GetRoleplay().EquippedWeapon != null) { TargetClient.GetRoleplay().EquippedWeapon = null; } RoleplayGameManager.AddPlayerToGame(RoleplayGameManager.GetGame(GameMode.TeamBrawl), TargetClient, Team, true); Session.SendWhisper("Sucesso, você colocou " + TargetClient.GetHabbo().Username + " no evento Briga de Times!", 1); break; } #endregion #region Mafia Wars case "mw": case "mafia": case "mariawars": case "gm": case "guerramafia": case "guerrademafias": case "guerramafias": { if (!RoleplayGameManager.RunningGames.ContainsKey(GameMode.MafiaWars)) { Session.SendWhisper("Não há um evento Guerra de Máfias atualmente ativo!", 1); break; } string Team = Params[3].ToString().ToLower(); if (Params.Length != 4 || !ValidTeams.Contains(Team)) { Session.SendWhisper("Você escolheu uma equipe inválida. Aqui estão as equipes disponíveis: " + string.Join(", ", ValidTeams.ToArray()), 1); break; } if (TargetClient.GetRoleplay().IsWorking) { TargetClient.GetRoleplay().IsWorking = false; } if (TargetClient.GetRoleplay().EquippedWeapon != null) { TargetClient.GetRoleplay().EquippedWeapon = null; } RoleplayGameManager.AddPlayerToGame(RoleplayGameManager.GetGame(GameMode.MafiaWars), TargetClient, Team, true); Session.SendWhisper("Sucesso, você colocou " + TargetClient.GetHabbo().Username + " no evento Guerra de Máfias!", 1); break; } #endregion default: { Session.SendWhisper("O jogo que você escolheu não existe. Aqui estão os eventos disponíveis: briga, guerradecores/gc, brigadetimes/bt, guerrademafias/gm.", 1); break; } } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Digite um tipo de evento!", 1); return; } string Message = Params[1].ToString().ToLower(); switch (Message) { #region Brawl case "brawl": case "briga": { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.Brawl)) { Session.SendWhisper("Já existe um evento de Briga!", 1); } else { RoleplayGameManager.CreateGame("brawl"); Session.SendWhisper("Você começou um evento de Briga!", 1); } break; } #endregion #region Team Brawl case "teambrawl": case "tbrawl": case "tb": case "bt": case "brigadetimes": case "brigatimes": { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.TeamBrawl)) { Session.SendWhisper("Já existe um evento de Briga de Times!", 1); } else { RoleplayGameManager.CreateGame("teambrawl"); Session.SendWhisper("Você começou um evento de Briga de Times!", 1); } break; } #endregion #region Colour Wars case "colorwars": case "colourwars": case "cw": case "gc": case "guerradecores": case "guerracores": { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.ColourWars)) { Session.SendWhisper("Já existe um evento de Guerra de Cores!", 1); } else { RoleplayGameManager.CreateGame("colourwars"); Session.SendWhisper("Você começou um evento de Guerra de Cores!", 1); } break; } #endregion #region Mafia Wars case "mafiawars": case "mwars": case "mw": case "gm": case "guerrademafias": case "guerrademafia": case "guerramafia": { if (RoleplayGameManager.RunningGames.ContainsKey(GameMode.MafiaWars)) { Session.SendWhisper("Já existe um evento de Guerra de Máfias!", 1); } else { RoleplayGameManager.CreateGame("mafiawars"); Session.SendWhisper("Você começou um evento de Guerra de Máfias!", 1); } break; } #endregion default: { Session.SendWhisper("Esse tipo de evento não existe ou está desativado!", 1); break; } } }