internal override void OnUserShout(Rooms.RoomUser User, string Message) { if (PiciEnvironment.GetRandomNumber(0, 10) >= 5) { GetRoomUser().Chat(null, LanguageLocale.GetValue("onusershout"), true); // shout nag } }
internal override void OnUserEnterRoom(Rooms.RoomUser User) { if (User.GetClient() != null && User.GetClient().GetHabbo() != null) { if (User.GetClient().GetHabbo().Username.ToLower() == "tim") { GetRoomUser().Chat(null, "TIM IN DA HOUSE!!!", true); } } }
internal override void OnUserEnterRoom(Rooms.RoomUser User) { if (User.GetClient().GetRoleplay().JobId == 3) { base.GetRoomUser().Chat(null, "Shit! It's the cops! I am out of here!", false, 1); base.GetRoomUser().Chat(null, "*Calls Taxi to place unknown*", true, 1); base.GetRoomUser().X = 14; base.GetRoomUser().Y = 1; base.GetRoomUser().Z = 0; base.GetRoomUser().UpdateNeeded = true; muteChat = true; numCops += 1; } }
internal override void OnUserSay(Rooms.RoomUser User, string Message) { if (Gamemap.TileDistance(GetRoomUser().X, GetRoomUser().Y, User.X, User.Y) > 8) { return; } BotResponse Response = GetBotData().GetResponse(Message); if (Response == null) { return; } switch (Response.ResponseType.ToLower()) { case "say": GetRoomUser().Chat(null, Response.ResponseText, false); break; case "shout": GetRoomUser().Chat(null, Response.ResponseText, true); break; case "whisper": ServerMessage TellMsg = new ServerMessage(Outgoing.Whisp); TellMsg.AppendInt32(GetRoomUser().VirtualId); TellMsg.AppendString(Response.ResponseText); TellMsg.AppendInt32(0); TellMsg.AppendInt32(0); TellMsg.AppendInt32(-1); User.GetClient().SendMessage(TellMsg); break; } if (Response.ServeId >= 1) { User.CarryItem(Response.ServeId); } }
internal override void OnUserShout(Rooms.RoomUser User, string Message) { }
internal override void OnUserEnterRoom(Rooms.RoomUser User) { }
internal override void OnUserSay(Rooms.RoomUser User, string Message) { if (muteChat) { return; } if (User.IsBot || User.GetClient() == null) { return; } if (User.GetClient().GetHabbo() == null) { return; } if (!User.GetClient().GetHabbo().CurrentRoom.RoomData.Description.Contains("DRUGDEPOT")) { return; } if (Message != "buy weed" && Message != "weed buy" && Message != "buy weed please") { return; } GameClients.GameClient Session = User.GetClient(); if (Session.GetRoleplay().Weed < 100) { Random rnd = new Random(); int buyWeed = rnd.Next(1, 15); int multipleCost = rnd.Next(1, 3); multipleCost = multipleCost * buyWeed; if (Session.GetHabbo().Credits >= multipleCost) { base.GetRoomUser().Chat(null, "Hmm lets see, I have got " + buyWeed + "g of weed to sell.. The cost is $" + multipleCost + ", here you go.", true, 1); Session.GetHabbo().Credits -= multipleCost; Session.GetHabbo().UpdateCreditsBalance(); Session.GetRoleplay().Weed += buyWeed; } else { base.GetRoomUser().Chat(null, "Dawg, who you playin? I got " + buyWeed + "g of weed to sell.. The cost is $" + multipleCost + ", and you aint even got that!", true, 1); } return; } else { base.GetRoomUser().Chat(null, "You trying to get me arrested? You already have over 100g of weed! Get outta here!", true, 1); } return; /* * if (Gamemap.TileDistance(GetRoomUser().X, GetRoomUser().Y, User.X, User.Y) > 8) * { * return; * } * * BotResponse Response = GetBotData().GetResponse(Message); * * if (Response == null) * { * return; * } * * switch (Response.ResponseType.ToLower()) * { * case "say": * * GetRoomUser().Chat(null, Response.ResponseText, false, 0); * break; * * case "shout": * * GetRoomUser().Chat(null, Response.ResponseText, true, 0); * break; * * case "whisper": * * User.GetClient().SendMessage(new WhisperComposer(GetRoomUser(), Response.ResponseText, 0, 0)); * break; * } * * if (Response.ServeId >= 1) * { * User.CarryItem(Response.ServeId); * }*/ }
internal override void OnUserSay(Rooms.RoomUser User, string Message) { RoomUser Pet = GetRoomUser(); if (Pet.PetData.DBState != Pets.DatabaseUpdateState.NeedsInsert) { Pet.PetData.DBState = Pets.DatabaseUpdateState.NeedsUpdate; } if (Message.ToLower().Equals(Pet.PetData.Name.ToLower())) { Pet.SetRot(Rotation.Calculate(Pet.X, Pet.Y, User.X, User.Y), false); return; } if ((Message.ToLower().StartsWith(Pet.PetData.Name.ToLower() + " ") && User.GetClient().GetHabbo().Username.ToLower() == GetRoomUser().PetData.OwnerName.ToLower()) || (Message.ToLower().StartsWith(Pet.PetData.Name.ToLower() + " ") && PetCommandHandeler.TryInvoke(Message.Substring(Pet.PetData.Name.ToLower().Length + 1)) == 8)) { string Command = Message.Substring(Pet.PetData.Name.ToLower().Length + 1); int r = FirewindEnvironment.GetRandomNumber(1, 8); // Made Random if (Pet.PetData.Energy > 10 && r < 6 || Pet.PetData.Level > 15 || PetCommandHandeler.TryInvoke(Command) == 8) { RemovePetStatus(); // Remove Status switch (PetCommandHandeler.TryInvoke(Command)) { // TODO - Level you can use the commands at... #region free case 1: RemovePetStatus(); //int randomX = FirewindEnvironment.GetRandomNumber(0, GetRoom().Model.MapSizeX); //int randomY = FirewindEnvironment.GetRandomNumber(0, GetRoom().Model.MapSizeY); Point nextCoord = GetRoom().GetGameMap().getRandomWalkableSquare(); Pet.MoveTo(nextCoord.X, nextCoord.Y); Pet.PetData.AddExpirience(10); // Give XP break; #endregion #region here case 2: RemovePetStatus(); int NewX = User.X; int NewY = User.Y; ActionTimer = 30; // Reset ActionTimer #region Rotation if (User.RotBody == 4) { NewY = User.Y + 1; } else if (User.RotBody == 0) { NewY = User.Y - 1; } else if (User.RotBody == 6) { NewX = User.X - 1; } else if (User.RotBody == 2) { NewX = User.X + 1; } else if (User.RotBody == 3) { NewX = User.X + 1; NewY = User.Y + 1; } else if (User.RotBody == 1) { NewX = User.X + 1; NewY = User.Y - 1; } else if (User.RotBody == 7) { NewX = User.X - 1; NewY = User.Y - 1; } else if (User.RotBody == 5) { NewX = User.X - 1; NewY = User.Y + 1; } #endregion Pet.PetData.AddExpirience(10); // Give XP Pet.MoveTo(NewX, NewY); break; #endregion #region sit case 3: // Remove Status RemovePetStatus(); Pet.PetData.AddExpirience(10); // Give XP // Add Status Pet.Statusses.Add("sit", TextHandling.GetString(Pet.Z)); ActionTimer = 25; EnergyTimer = 10; break; #endregion #region lay case 4: // Remove Status RemovePetStatus(); // Add Status Pet.Statusses.Add("lay", TextHandling.GetString(Pet.Z)); Pet.PetData.AddExpirience(10); // Give XP ActionTimer = 30; EnergyTimer = 5; break; #endregion #region dead case 5: // Remove Status RemovePetStatus(); // Add Status Pet.Statusses.Add("ded", TextHandling.GetString(Pet.Z)); Pet.PetData.AddExpirience(10); // Give XP // Don't move to speak for a set amount of time. SpeechTimer = 45; ActionTimer = 30; break; #endregion #region sleep case 6: // Remove Status RemovePetStatus(); Pet.Chat(null, "ZzzZZZzzzzZzz", false); Pet.Statusses.Add("lay", TextHandling.GetString(Pet.Z)); Pet.PetData.AddExpirience(10); // Give XP // Don't move to speak for a set amount of time. EnergyTimer = 5; SpeechTimer = 30; ActionTimer = 45; break; #endregion #region jump case 7: // Remove Status RemovePetStatus(); // Add Status Pet.Statusses.Add("jmp", TextHandling.GetString(Pet.Z)); Pet.PetData.AddExpirience(10); // Give XP // Don't move to speak for a set amount of time. EnergyTimer = 5; SpeechTimer = 10; ActionTimer = 5; break; #endregion default: string[] Speech = PetLocale.GetValue("pet.unknowncommand"); Random RandomSpeech = new Random(); Pet.Chat(null, Speech[RandomSpeech.Next(0, Speech.Length - 1)], false); break; } Pet.PetData.PetEnergy(false); // Remove Energy Pet.PetData.PetEnergy(false); // Remove Energy } else { RemovePetStatus(); // Remove Status if (Pet.PetData.Energy < 10) { string[] Speech = PetLocale.GetValue("pet.tired"); Random RandomSpeech = new Random(); Pet.Chat(null, Speech[RandomSpeech.Next(0, Speech.Length - 1)], false); Pet.Statusses.Add("lay", TextHandling.GetString(Pet.Z)); SpeechTimer = 50; ActionTimer = 45; EnergyTimer = 5; } else { string[] Speech = PetLocale.GetValue("pet.lazy"); Random RandomSpeech = new Random(); Pet.Chat(null, Speech[RandomSpeech.Next(0, Speech.Length - 1)], false); Pet.PetData.PetEnergy(false); // Remove Energy } } } //Pet = null; }
internal override void OnUserSay(Rooms.RoomUser User, string Message) { string[] special = { "pedir panquecas", "pedir bife", "pedir batata", "pedir ovos", "pedir spaghetti", "pedir milkshakes" }; bool SpecialMsg = false; string specialMsg = ""; foreach (string spe in special) { if (Message.ToLower() == spe.ToLower()) { SpecialMsg = true; specialMsg = spe; } } /* * if (Gamemap.TileDistance(GetRoomUser().X, GetRoomUser().Y, User.X, User.Y) > 8 && SpecialMsg) * { * User.GetClient().SendWhisper("You must get closer to do this!"); * return; * }*/ #region Ammunation if (base.GetRoom().RoomData.Description.Contains("AMMUNATION")) { if (SpecialMsg) { bool HasWeapon = false; foreach (KeyValuePair <string, Weapon> Wep in User.GetClient().GetRoleplay().Weapons) { if (HabboHotel.Roleplay.Combat.WeaponManager.GetWeaponName(Wep.Key) == specialMsg) { HasWeapon = true; } } if (HasWeapon) { User.GetClient().SendWhisper("You already have a " + specialMsg + "!"); return; } User.GetClient().GetRoleplay().OfferData.Clear(); User.GetClient().SendWhisper("You were offered a " + specialMsg + " for $" + WeaponManager.WeaponsData[specialMsg].Price + ". Type #accept to accept or #deny to deny!"); base.GetRoomUser().Chat(null, "*Offers " + User.GetClient().GetHabbo().UserName + " a " + specialMsg + " for $" + WeaponManager.WeaponsData[specialMsg].Price + "*", false, 1); User.GetClient().GetRoleplay().OfferData.Add(specialMsg, new Offer(null, specialMsg, 1, WeaponManager.WeaponsData[specialMsg].Price)); } } #endregion #region Phone Shop if (base.GetRoom().RoomData.Description.Contains("PHONE")) { if (SpecialMsg) { if (User.GetClient().GetRoleplay().Phone == 1) { User.GetClient().SendWhisper("You already have a phone!"); return; } base.GetRoomUser().Chat(null, "*Offers " + User.GetClient().GetHabbo().UserName + "a Nokia phone for $50*", true, 1); User.GetClient().SendWhisper("You are being offered a phone for $50. Type #accept to accept or #deny to deny!"); User.GetClient().GetRoleplay().OfferData.Add("phone", new Offer(null, "phone", 1, 50)); } } #endregion #region Store Rob if (base.GetRoom().RoomData.Description.Contains("STORE")) { #region Activate Store Robbing if (Message == "activate") { if (RoleplayManager.BypassRights(User.GetClient())) { lastRobbed = 5001; User.GetClient().SendWhisper("Store robbing re-activated!"); } } #endregion #region Stop Store Robbing if (Message == "stop") { if (RoleplayManager.BypassRights(User.GetClient())) { robber = null; beingRobbed = false; User.GetClient().GetRoleplay().robbingStore = 0; User.GetClient().SendWhisper("Store robbing de-activated/restarted!"); } } #endregion #region Faster if (Message == "faster") { if (beingRobbed) { if (robber.GetHabbo().Id == User.GetClient().GetHabbo().Id) { RoleplayManager.Shout(User.GetClient(), "Go faster or else ill blow you to bits!"); User.GetClient().GetHabbo().GetRoomUser().ApplyEffect(164); base.GetRoomUser().Chat(null, "I'm sorry, please wait, im going my fastest!!", true, 1); gatherSpeed = 2; } } } #endregion #region Rob if (Message == "rob") { if (beingRobbed) { User.GetClient().SendWhisper("This place is currently being robbed!"); return; } else { if (disableRob) { User.GetClient().SendWhisper("This place was recently robbed!"); return; } else { if (!base.GetRoom().RoomData.Description.Contains("STOREROB")) { User.GetClient().SendWhisper("This cannot rob this place!"); return; } else { if (robberCount > 0) { User.GetClient().SendWhisper("This place is already being robbed!"); return; } else { robber = User.GetClient(); RoleplayManager.Shout(User.GetClient(), "Give me all your cash, before I blow your head to bits!"); robber.GetRoleplay().robbingStore = Convert.ToInt32(robber.GetHabbo().CurrentRoomId); if (!RoleplayManager.PurgeTime) { robber.GetRoleplay().Wanted = 10; robber.GetRoleplay().SaveQuickStat("wanted", "" + 10); if (!RoleplayManager.WantedListData.ContainsKey(robber.GetHabbo().UserName.ToLower())) { RoleplayManager.WantedListData.TryAdd(robber.GetHabbo().UserName.ToLower(), 10 + "|" + Convert.ToInt32(robber.GetHabbo().CurrentRoomId)); } robber.SendWhisper("You are now wanted for store robbery!"); lock (Plus.GetGame().GetClientManager().Clients.Values) { foreach (GameClient client in Plus.GetGame().GetClientManager().Clients.Values) { if (client == null) { continue; } if (client.GetRoleplay() == null) { continue; } if (!JobManager.validJob(client.GetRoleplay().JobId, client.GetRoleplay().JobRank)) { continue; } if (!client.GetRoleplay().JobHasRights("police")) { continue; } if (!client.GetRoleplay().Working) { continue; } client.GetHabbo().GetRoomUser().LastBubble = 30; client.SendWhisper("<b>[Police Radio]:</b> " + robber.GetHabbo().UserName + " is robbing the store at " + robber.GetHabbo().CurrentRoomId + ", get there fast!"); client.GetHabbo().GetRoomUser().LastBubble = 0; } } } base.GetRoomUser().Chat(null, "Okay, okay! Hold on please!!", true, 1); gatherSpeed = 0; gatherMsg = 20; gatherNum = 1; beingRobbed = true; attack = new Random().Next(1, 10); } } } } } #endregion #endregion #region Eatery if (base.GetRoom().RoomData.Description.Contains("EATERY")) { if (!event_serving) { if (SpecialMsg) { if (!User.GetClient().GetRoleplay().MultiCoolDown.ContainsKey("order_cooldown")) { User.GetClient().GetRoleplay().MultiCoolDown.Add("order_cooldown", 0); } if (User.GetClient().GetRoleplay().MultiCoolDown["order_cooldown"] > 0) { User.GetClient().SendWhisper("Você recentemente pediu algo, por favor, aguarde um pouco para encomendar novamente!"); return; } if (specialMsg.Contains("pedir")) { if (OriginalPosition == null) { OriginalPosition = new Vector2D(GetRoomUser().X, GetRoomUser().Y); } serving = User.GetClient(); string food = ""; string[] sp = specialMsg.Split(' '); foreach (string param in sp) { food = sp[1]; } event_serving_plate = retrieveItem("diner_tray_0", true, User); if (event_serving_plate == null) { User.GetClient().SendWhisper("Você precisa se sentar perto de um prato vazio!"); return; } if (User.GetClient().GetRoleplay().Hunger <= 0) { User.GetClient().SendWhisper("Parece que você já está cheio, você não precisa mais de comida!"); return; } GetRoomUser().Chat(null, "Olá " + serving.GetHabbo().UserName + ", uma porção de " + food + " chegando!", true, 0); event_serving_orderPlaced = true; event_serving_fooditem = food; event_serving = true; //User.GetClient().GetRoleplay().MultiCoolDown["order_cooldown"] = 30; } } } else { if (SpecialMsg) { User.GetClient().SendWhisper("Alguém está fazendo o pedido, por favor, aguarde a sua vez!"); #region Delete Serve Session if (serving == null) { event_serving = false; return; } if (serving.GetHabbo() == null) { event_serving = false; return; } if (serving.GetRoleplay() == null) { event_serving = false; return; } if (serving.GetHabbo().CurrentRoom == null) { event_serving = false; return; } if (serving.GetHabbo().CurrentRoom != GetRoom()) { event_serving = false; return; } #endregion } } } #endregion } }
internal override void OnUserSay(Rooms.RoomUser User, string Message) { if (User.IsBot || User.GetClient() == null) { return; } if (User.GetClient().GetHabbo() == null) { return; } if (!User.GetClient().GetHabbo().CurrentRoom.RoomData.Description.Contains("HOSP")) { return; } if (Message != "curar" && Message != "medkit" && Message != "kit") { return; } GameClients.GameClient Session = User.GetClient(); if (Session.GetRoleplay().CurHealth < Session.GetRoleplay().MaxHealth || Session.GetRoleplay().Dead) { if (!Session.GetRoleplay().Dead) { if (Session.GetRoleplay().BeingHealed) { Session.SendWhisper("Você já está sendo curado!"); return; } else { base.GetRoomUser().Chat(null, "*Aplica algumas bandagens em " + User.GetClient().GetHabbo().UserName + "curando suas feridas*", true, 1); } } else { int yolo = (RoleplayManager.PurgeTime == true) ? 2 : 1; if (Session.GetRoleplay().DeadTimer <= yolo) { base.GetRoomUser().Chat(null, "*Descarrega " + Session.GetHabbo().UserName + " para o hospital*", true, 1); Session.GetRoleplay().DeadTimer = 0; Session.GetRoleplay().DeadSeconds = 0; Session.GetRoleplay().SaveStatusComponents("dead"); Session.GetRoleplay().healTimer = new healTimer(Session); Session.GetRoleplay().BeingHealed = true; User.ApplyEffect(23); return; } else { Session.SendWhisper("Você deve esperar pelo menos 1 minuto antes de poder pedir para ser liberado do hospital!"); return; } } Session.GetRoleplay().healTimer = new healTimer(Session); Session.GetRoleplay().BeingHealed = true; User.ApplyEffect(23); return; } else { User.GetClient().SendWhisper("Sua saúde já está cheia!"); } return; /* * if (Gamemap.TileDistance(GetRoomUser().X, GetRoomUser().Y, User.X, User.Y) > 8) * { * return; * } * * BotResponse Response = GetBotData().GetResponse(Message); * * if (Response == null) * { * return; * } * * switch (Response.ResponseType.ToLower()) * { * case "say": * * GetRoomUser().Chat(null, Response.ResponseText, false, 0); * break; * * case "shout": * * GetRoomUser().Chat(null, Response.ResponseText, true, 0); * break; * * case "whisper": * * User.GetClient().SendMessage(new WhisperComposer(GetRoomUser(), Response.ResponseText, 0, 0)); * break; * } * * if (Response.ServeId >= 1) * { * User.CarryItem(Response.ServeId); * }*/ }