public void GetQueue_Item_shield(Vector2 _position, FarmingPoint _point) { if (queue_f_shield.Count != 0) { _farmItem = queue_f_shield.Dequeue(); GetQueue_ItemSpawn(_position, _point); } }
public void OnTrigger(GameClient Session, Item Item, int Request, bool HasRights) { RoomUser roomUser = null; if (Session != null && Session.GetRoleplay() != null) { roomUser = Item.GetRoom().GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); } if (roomUser == null) { return; } if (Item.FarmingData == null) { Session.SendWhisper("Desculpe, este item não tem dados agrícolas!", 1); return; } FarmingItem FarmingItem = FarmingManager.GetFarmingItem(Item.GetBaseItem().ItemName); if (FarmingItem == null) { Session.SendWhisper("Desculpe, este não é um item agrícola!", 1); return; } if (Item.FarmingData.OwnerId != 0 && Item.FarmingData.OwnerId != Session.GetHabbo().Id) { Session.SendWhisper("Alguém mais possui essa planta!", 1); return; } if (Session.GetRoleplay().TryGetCooldown("farming", false)) { return; } #region Check Rentable Space if (Item.GetRoom().GetRoomItemHandler() != null && Item.GetRoom().GetRoomItemHandler().GetFloor != null) { lock (Item.GetRoom().GetRoomItemHandler().GetFloor) { List <Item> OwnedRentableSpaces = Item.GetRoom().GetRoomItemHandler().GetFloor.Where(x => x.GetBaseItem().InteractionType == InteractionType.RENTABLE_SPACE && x.RentableSpaceData != null && x.RentableSpaceData.FarmingSpace != null && x.RentableSpaceData.FarmingSpace.OwnerId == Session.GetHabbo().Id).ToList(); if (OwnedRentableSpaces.Count <= 0) { Session.SendWhisper("Você não possui esse terreno para cultivar!", 1); Session.GetRoleplay().CooldownManager.CreateCooldown("farming", 500); return; } Item SpaceItem = OwnedRentableSpaces.FirstOrDefault(); List <Point> SpacePoints = SpaceItem.GetAffectedTiles; if (!SpacePoints.Contains(Item.Coordinate)) { Session.SendWhisper("YVocê não possui esse terreno para cultivar!!", 1); Session.GetRoleplay().CooldownManager.CreateCooldown("farming", 500); return; } } } #endregion if (Item.FarmingData.BeingFarmed) { if (Item.ExtraData != "0") { Session.SendWhisper("Esta planta foi regada recentemente", 1); } else { Session.SendWhisper("Esta semente foi plantada!", 1); } return; } if (!Session.GetRoleplay().WateringCan&& Item.ExtraData != "8") { Session.SendWhisper("Você não tem água na sua mão!", 1); Session.GetRoleplay().CooldownManager.CreateCooldown("farming", 500); return; } if (RoleplayManager.FarmingCAPTCHABox) { if (Session.GetRoleplay().CaptchaSent) { Session.SendWhisper("Você deve inserir o código no código AFK para continuar cultivando!", 1); Session.GetRoleplay().CooldownManager.CreateCooldown("farming", 500); return; } } CryptoRandom Random = new CryptoRandom(); if (Gamemap.TilesTouching(Item.GetX, Item.GetY, roomUser.X, roomUser.Y)) { if (Item.ExtraData == "4") { if (!Session.GetRoleplay().FarmingStats.HasPlantSatchel) { Session.SendWhisper("Você precisa de uma sacola da planta para pegar esta planta!", 1); Session.GetRoleplay().CooldownManager.CreateCooldown("farming", 500); return; } if (Item.GetRoom() != null) { Item.GetRoom().GetRoomItemHandler().RemoveFurniture(null, Item.Id); FarmingManager.AddEXP(Session, Random.Next(FarmingItem.MaxExp, (FarmingItem.MaxExp + 4))); FarmingManager.IncreaseSatchelCount(Session, FarmingItem, 1, true); Session.Shout("*Colhe o " + Item.GetBaseItem().PublicName + " e a coloca em sua mochila*", 4); PlusEnvironment.GetGame().GetAchievementManager().ProgressAchievement(Session, "ACH_Farming", 1); Session.GetRoleplay().CooldownManager.CreateCooldown("farming", 500); return; } } else { var cracks = 0; int.TryParse(Item.ExtraData, out cracks); cracks++; Item.FarmingData.BeingFarmed = true; Session.Shout("*Põe um pouco de água na " + Item.GetBaseItem().PublicName + " e espera que ele cresça*", 4); FarmingManager.AddEXP(Session, Random.Next(FarmingItem.MinExp, (FarmingItem.MaxExp + 1))); Session.GetRoleplay().CooldownManager.CreateCooldown("farming", 500); #region Timer new Thread(() => { int count = 0; while (Session != null && Item != null && Item.FarmingData != null) { if (Session == null || Item == null || Item.FarmingData == null) { break; } count++; Thread.Sleep(1000); if (count >= 10) { break; } } if (count >= 10 && Session != null && Item != null && Item.FarmingData != null) { Item.ExtraData = Convert.ToString(cracks); Item.UpdateState(false, true); if (Item.ExtraData != "4") { Session.SendWhisper("A planta(s) " + Item.GetBaseItem().PublicName + " que você regou amadureceu um pouco!", 1); } else { Session.SendWhisper("A planta(s)" + Item.GetBaseItem().PublicName + " você regou amadureceu completamente!", 1); } } if (Item != null && Item.FarmingData != null) { Item.FarmingData.BeingFarmed = false; } }).Start(); #endregion } Session.GetRoleplay().CooldownManager.CreateCooldown("farming", 500); } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length < 3) { Session.SendWhisper("Comando inválido, Use ':oferecer usuário item [e talvez preço]'.", 1); return; } GameClient Target = PlusEnvironment.GetGame().GetClientManager().GetClientByUsername(Params[1]); if (Target == null) { Session.SendWhisper("Opa, usuário não encontrado!", 1); return; } RoomUser TargetUser = Room.GetRoomUserManager().GetRoomUserByHabbo(Target.GetHabbo().Username); if (TargetUser == null) { Session.SendWhisper("Ocorreu um erro ao encontrar esse usuário, talvez ele não esteja online ou nesta sala.", 1); return; } string Type = Params[2]; if (CommandManager.MergeParams(Params, 2) == "Saco de Sementes") { Type = "sacodesementes"; } else if (CommandManager.MergeParams(Params, 2) == "Saco de Plantas") { Type = "sacodeplantas"; } #region Weapon Check Weapon weapon = null; foreach (Weapon Weapon in WeaponManager.Weapons.Values) { if (Type.ToLower() == Weapon.Name.ToLower()) { Type = "armas"; weapon = Weapon; } } #endregion #region Car/Phone Upgrade Check if (Type.ToLower() == "upar") { lock (GroupManager.Jobs) { Group CarJob = GroupManager.Jobs.Values.FirstOrDefault(x => x.Ranks.Count > 0 && x.Ranks.Values.FirstOrDefault().HasCommand("carro")); Group PhoneJob = GroupManager.Jobs.Values.FirstOrDefault(x => x.Ranks.Count > 0 && x.Ranks.Values.FirstOrDefault().HasCommand("celular")); if (CarJob != null && CarJob.Ranks.Values.FirstOrDefault().CanWorkHere(Room.Id)) { Type = "uparcarro"; } if (PhoneJob != null && PhoneJob.Ranks.Values.FirstOrDefault().CanWorkHere(Room.Id)) { Type = "uparcel"; } } } #endregion switch (Type.ToLower()) { #region Weapon case "weapon": case "armas": case "arma": case "gun": { if (weapon == null) { Session.SendWhisper("'" + Type + "' não é um tipo de oferta válida!"); break; } if (weapon.Stock < 1) { Session.SendWhisper("Não há " + weapon.PublicName + " no estoque! Por favor, use o comando ':pedirentrega' para lotar o estoque!", 1); return; } if (!GroupManager.HasJobCommand(Session, "weapon") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything") && Session.GetHabbo().VIPRank < 2) { Session.SendWhisper("Desculpe, você não trabalha na empresa de Armas!", 1); break; } if (Target.GetRoleplay().OwnedWeapons.ContainsKey(weapon.Name) && Target.GetRoleplay().OwnedWeapons[weapon.Name].CanUse) { Session.SendWhisper("Desculpe, esse cidadão já possui um(a) " + weapon.PublicName + "!", 1); break; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything") && Session.GetHabbo().VIPRank < 2) { Session.SendWhisper("Você deve estar trabalhando para oferecer a alguém um(a) " + weapon.PublicName + "!", 1); break; } else { int Cost = (!Target.GetRoleplay().OwnedWeapons.ContainsKey(weapon.Name) ? weapon.Cost : weapon.CostFine); bool HasOffer = false; if (Target.GetHabbo().Credits >= Cost) { foreach (var Offer in Target.GetRoleplay().OfferManager.ActiveOffers.Values) { if (WeaponManager.Weapons.ContainsKey(Offer.Type.ToLower())) { HasOffer = true; } } if (!HasOffer) { Session.Shout("*Oferece um(a) " + weapon.PublicName + " para " + Target.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", 4); Target.GetRoleplay().OfferManager.CreateOffer(weapon.Name.ToLower(), Session.GetHabbo().Id, Cost); Target.SendWhisper("Você recebeu uma oferta de um(a) " + weapon.PublicName + " por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar arma' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já recebeu uma arma!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar um(a) " + weapon.PublicName + "!", 1); break; } } } #endregion #region Phone case "phone": case "celular": case "cel": case "telefone": { if (!GroupManager.HasJobCommand(Session, "phone") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Desculpe, você não trabalha na empresa de celular!", 1); break; } if (Target.GetRoleplay().PhoneType > 0) { Session.SendWhisper("Desculpe, esse cidadão já tem um celular!", 1); break; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Você deve estar trabalhando para oferecer a alguém um telefone!", 1); break; } else { int Cost = 50; bool HasOffer = false; if (Target.GetHabbo().Credits >= Cost) { foreach (var Offer in Target.GetRoleplay().OfferManager.ActiveOffers.Values) { if (Offer.Type.ToLower() == Type.ToLower()) { HasOffer = true; } } if (!HasOffer) { Session.Shout("*Oferece um Nokia Tijolao para " + Target.GetHabbo().Username + " por $50*", 4); Target.GetRoleplay().OfferManager.CreateOffer("celular", Session.GetHabbo().Id, Cost); Target.SendWhisper("Você recebeu uma oferta de um Nokia Tijolão! Digite ':aceitar celular' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já recebeu uma oferta de Celular!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar um telefone!", 1); break; } } } #endregion #region Phone Upgrade case "phoneupgrade": case "uparcel": case "upartelefone": case "uparcelular": case "attcel": case "atualizarcel": case "attcelular": { if (!GroupManager.HasJobCommand(Session, "phone") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Desculpe, você não trabalha na empresa do telefone!", 1); break; } if (Target.GetRoleplay().PhoneType < 1) { Session.SendWhisper("Desculpe, esse cidadão não possui um telefone para atualizar!", 1); break; } if (Target.GetRoleplay().PhoneType > 2) { Session.SendWhisper("Desculpe, esse cidadão já tem o telefone mais alto que pode obter!", 1); break; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Você deve estar trabalhando para oferecer a alguém um telefone!", 1); break; } else { int Cost = Target.GetRoleplay().PhoneType == 1 ? 400 : 1000; bool HasOffer = false; string PhoneName = RoleplayManager.GetPhoneName(Target, true); if (Target.GetHabbo().Credits >= Cost) { foreach (var Offer in Target.GetRoleplay().OfferManager.ActiveOffers.Values) { if (Offer.Type.ToLower() == "uparcel") { HasOffer = true; } } if (!HasOffer) { Session.Shout("*Oferece uma atualização para o " + PhoneName + " de " + Target.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", 4); Target.GetRoleplay().OfferManager.CreateOffer("uparcel", Session.GetHabbo().Id, Cost); Target.SendWhisper("Você recebeu uma oferta para atualizar o seu " + PhoneName + " por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar uparcel' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já recebeu uma atualização para o telefone!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar uma atualização por telefone!", 1); break; } } } #endregion #region Phone Credit case "credit": case "credits": case "phonecredit": case "phonecredits": case "creditos": case "celcreditos": { if (!GroupManager.HasJobCommand(Session, "phone") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Desculpe, você não trabalha na empresa de telefone!", 1); break; } if (Params.Length == 3) { Session.SendWhisper("Digite o valor do crédito do telefone que você gostaria de oferecer ao cidadão!", 1); return; } int Amount; if (!int.TryParse(Params[3], out Amount)) { Session.SendWhisper("Digite uma quantidade válida de crédito do telefone que você gostaria de oferecer ao cidadão!", 1); break; } if (Amount < 10) { Session.SendWhisper("Você precisa oferecer ao cidadão pelo menos 10 créditos de celular por vez!", 1); break; } if (Target.GetRoleplay().PhoneType < 1) { Session.SendWhisper("Desculpe, esse cidadão não tem telefone!", 1); break; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Você deve estar trabalhando para oferecer créditos para alguém!", 1); break; } else { int Cost = Convert.ToInt32(Math.Floor((double)Amount / 2)); bool HasOffer = false; if (Target.GetHabbo().Credits >= Cost) { foreach (var Offer in Target.GetRoleplay().OfferManager.ActiveOffers.Values) { if (Offer.Type.ToLower() == "creditos") { HasOffer = true; } } if (!HasOffer) { Session.Shout("*Oferece " + String.Format("{0:N0}", Amount) + " créditos de celular para " + Target.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", 4); Target.GetRoleplay().OfferManager.CreateOffer("creditos", Session.GetHabbo().Id, Amount); Target.SendWhisper("Você recebeu uma oferta de " + String.Format("{0:N0}", Amount) + " créditos de celular por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar creditos' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já recebeu créditos de telefone!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar créditos de telefone!", 1); break; } } } #endregion #region Bullets case "bullets": case "ammo": case "balas": { if (!GroupManager.HasJobCommand(Session, "weapon") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Desculpe, você não trabalha na empresa de Armas!", 1); break; } if (Params.Length == 3) { Session.SendWhisper("Digite a quantidade de balas que você gostaria de oferecer ao cidadão!", 1); return; } int Amount; if (!int.TryParse(Params[3], out Amount)) { Session.SendWhisper("Digite uma quantidade válida de balas que você gostaria de oferecer ao cidadão!", 1); break; } if (Amount < 10) { Session.SendWhisper("Você precisa oferecer ao cidadão pelo menos 10 balas por vez!", 1); break; } if (Target.GetRoleplay().PhoneType < 1) { Session.SendWhisper("Este Cidadão precisa de um Celular para ter uma Arma, em caso de Multas!", 1); break; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Você deve estar trabalhando para oferecer balas de alguém!", 1); break; } else { int Cost = Convert.ToInt32(Math.Floor((double)Amount / 1)); bool HasOffer = false; if (Target.GetHabbo().Credits >= Cost) { foreach (var Offer in Target.GetRoleplay().OfferManager.ActiveOffers.Values) { if (Offer.Type.ToLower() == "balas") { HasOffer = true; } } if (!HasOffer) { Session.Shout("*Oferece " + String.Format("{0:N0}", Amount) + " balas para " + Target.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", 4); Target.GetRoleplay().OfferManager.CreateOffer("balas", Session.GetHabbo().Id, Amount); Target.SendWhisper("Você recebeu uma oferta de " + String.Format("{0:N0}", Amount) + " balas por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar balas' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já recebeu balas!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar balas!", 1); break; } } } #endregion #region Seeds case "seed": case "seeds": case "sementes": { if (!GroupManager.HasJobCommand(Session, "supermarket") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Desculpe, você não trabalha na empresa do supermercado!", 1); break; } if (Params.Length < 5) { Session.SendWhisper("Digite o comando: ':oferecer <usuário> semente <id> <quantidade>'!", 1); return; } int Id; if (!int.TryParse(Params[3], out Id)) { Session.SendWhisper("Digite um ID de semente válido para oferecer ao cidadão!", 1); return; } FarmingItem Item = FarmingManager.GetFarmingItem(Id); if (Item == null) { Session.SendWhisper("Desculpe, mas este ID de semente não pôde ser encontrado!", 1); return; } ItemData Furni; if (!PlusEnvironment.GetGame().GetItemManager().GetItem(Item.BaseItem, out Furni)) { Session.SendWhisper("Desculpe, mas esta semente não pôde ser encontrada!", 1); return; } int Amount; if (!int.TryParse(Params[4], out Amount)) { Session.SendWhisper("Insira uma quantidade válida de sementes que você gostaria de oferecer ao cidadão!", 1); break; } if (!Target.GetRoleplay().FarmingStats.HasSeedSatchel) { Session.SendWhisper("Desculpe, esse cidadão não tem um Saco de Sementes!", 1); break; } int Cost = (Amount * Item.BuyPrice); if (Item.LevelRequired > Target.GetRoleplay().FarmingStats.Level) { Session.SendWhisper("Desculpe, mas esse cidadão não tem um nível de cultivo suficientemente alto para esta semente!", 1); return; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Você deve estar trabalhando para oferecer sementes", 1); break; } else { if (Target.GetHabbo().Credits >= Cost) { if (Target.GetRoleplay().OfferManager.ActiveOffers.Values.Where(x => x.Type.ToLower() == "seeds").ToList().Count <= 0) { Session.Shout("*Oferece " + String.Format("{0:N0}", Amount) + " sementes " + Furni.PublicName + " para " + Target.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", 4); Target.GetRoleplay().OfferManager.CreateOffer("sementes", Session.GetHabbo().Id, Amount, Item); Target.SendWhisper("Você recebeu uma oferta de Sementes " + String.Format("{0:N0}", Amount) + " " + Furni.PublicName + " por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar sementes' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já recebeu uma oferta de sementes!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar a oferta de sementes!", 1); break; } } } #endregion #region Seed Satchel case "seedsatchel": case "sacosementes": case "sacodesementes": case "sds": { if (!GroupManager.HasJobCommand(Session, "supermarket") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Desculpe, você não trabalha na empresa de supermercados!", 1); break; } if (Target.GetRoleplay().FarmingStats.HasSeedSatchel) { Session.SendWhisper("Desculpe, esse cidadão já possui um Saco de Sementes!", 1); break; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Você deve estar trabalhando para oferecer a alguém um Saco de Sementes!", 1); break; } else { int Cost = Convert.ToInt32(RoleplayData.GetData("farming", "seedsatchelcost")); bool HasOffer = false; if (Target.GetHabbo().Credits >= Cost) { foreach (var Offer in Target.GetRoleplay().OfferManager.ActiveOffers.Values) { if (Offer.Type.ToLower() == Type.ToLower()) { HasOffer = true; } } if (!HasOffer) { Session.Shout("*Oferece um Saco de Sementes para " + Target.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", 4); Target.GetRoleplay().OfferManager.CreateOffer("sacodesementes", Session.GetHabbo().Id, Cost); Target.SendWhisper("Você recebeu uma oferta de Saco de Sementes por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar sacodesementes' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já foi oferecido um Saco de Sementes!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar um Saco de Sementes!", 1); break; } } } #endregion #region Plant Satchel case "plantsatchel": case "sacodeplanta": case "sacoplanta": case "sp": case "sdp": { if (!GroupManager.HasJobCommand(Session, "supermarket") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Desculpe, você não trabalha na empresa do supermercado!", 1); break; } if (Target.GetRoleplay().FarmingStats.HasPlantSatchel) { Session.SendWhisper("Desculpe, esse cidadão já possui um Saco de Plantas!", 1); break; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Você deve estar trabalhando para oferecer a alguém um Saco de Plantas!", 1); break; } else { int Cost = Convert.ToInt32(RoleplayData.GetData("farming", "plantsatchelcost")); bool HasOffer = false; if (Target.GetHabbo().Credits >= Cost) { foreach (var Offer in Target.GetRoleplay().OfferManager.ActiveOffers.Values) { if (Offer.Type.ToLower() == Type.ToLower()) { HasOffer = true; } } if (!HasOffer) { Session.Shout("*Oferece um Saco de Plantas para " + Target.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", 4); Target.GetRoleplay().OfferManager.CreateOffer("sacodeplantas", Session.GetHabbo().Id, Cost); Target.SendWhisper("Você recebeu uma oferta de Saco de Plantas por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar sacodeplantas' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já recebeu uma oferta de Saco de Plantas!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar um Saco de Plantas!", 1); break; } } } #endregion #region Car case "car": case "carro": { if (!GroupManager.HasJobCommand(Session, "car") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Desculpe, você não trabalha na empresa de automóveis!", 1); break; } if (Target.GetRoleplay().CarType > 0) { Session.SendWhisper("Desculpe, esse cidadão já tem um carro!", 1); break; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Você deve estar trabalhando para oferecer a alguém um carro!", 1); break; } else { int Cost = 800; bool HasOffer = false; if (Target.GetHabbo().Credits >= Cost) { foreach (var Offer in Target.GetRoleplay().OfferManager.ActiveOffers.Values) { if (Offer.Type.ToLower() == Type.ToLower()) { HasOffer = true; } } if (!HasOffer) { Session.Shout("*Oferece um Toyota Corolla para " + Target.GetHabbo().Username + " por R$800,00*", 4); Target.GetRoleplay().OfferManager.CreateOffer("carro", Session.GetHabbo().Id, Cost); Target.SendWhisper("Você recebeu uma oferta de um Toyota Corolla por R$800,00! Digite ':aceitar carro' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já recebeu uma oferta de carro!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar um carro!", 1); break; } } } #endregion #region Car Upgrade case "carupgrade": case "uparcarro": case "attcarro": case "atualizarcarro": { if (!GroupManager.HasJobCommand(Session, "car") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Desculpe, você não trabalha na empresa de automóveis!", 1); break; } if (Target.GetRoleplay().CarType < 1) { Session.SendWhisper("Desculpe, esse cidadão não possui carro para atualizar!", 1); break; } if (Target.GetRoleplay().CarType > 2) { Session.SendWhisper("Desculpe, esse cidadão já tem o carro mais alto que pode comprar!", 1); break; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Você deve estar trabalhando para oferecer uma atualização de carro!", 1); break; } else { int Cost = Target.GetRoleplay().CarType == 1 ? 800 : 1500; bool HasOffer = false; string CarName = RoleplayManager.GetCarName(Target, true); if (Target.GetHabbo().Credits >= Cost) { foreach (var Offer in Target.GetRoleplay().OfferManager.ActiveOffers.Values) { if (Offer.Type.ToLower() == "uparcarro") { HasOffer = true; } } if (!HasOffer) { Session.Shout("*Oferece uma atualização do " + CarName + " para " + Target.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", 4); Target.GetRoleplay().OfferManager.CreateOffer("uparcarro", Session.GetHabbo().Id, Cost); Target.SendWhisper("Você recebeu uma oferta para atualizar o seu " + CarName + " por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar uparcarro' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já recebeu uma oferta de atualização de carro!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar uma atualização de carro!", 1); break; } } } #endregion #region Fuel case "fuel": case "gasolina": case "combustivel": case "diesel": { if (!GroupManager.HasJobCommand(Session, "car") && !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Desculpe, você não trabalha na empresa Carros!", 1); break; } if (Params.Length == 3) { Session.SendWhisper("Insira a quantidade de combustível para oferecer ao cidadão!", 1); return; } int Amount; if (!int.TryParse(Params[3], out Amount)) { Session.SendWhisper("Insira uma quantidade válida de combustível para oferecer ao cidadão!", 1); break; } if (Amount < 10) { Session.SendWhisper("Você precisa oferecer ao cidadão pelo menos 10 galões de combustível por vez!", 1); break; } if (Target.GetRoleplay().CarType < 1) { Session.SendWhisper("Desculpe, esse cidadão não tem um carro!", 1); break; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("offer_anything")) { Session.SendWhisper("Você deve estar trabalhando para oferecer a alguém combustível!", 1); break; } else { int Cost = Convert.ToInt32(Math.Floor((double)(Amount * 2) / 3)); bool HasOffer = false; if (Target.GetHabbo().Credits >= Cost) { foreach (var Offer in Target.GetRoleplay().OfferManager.ActiveOffers.Values) { if (Offer.Type.ToLower() == "gasolina") { HasOffer = true; } } if (!HasOffer) { Session.Shout("*Oferece " + String.Format("{0:N0}", Amount) + " galões de gasolina para " + Target.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", 4); Target.GetRoleplay().OfferManager.CreateOffer("gasolina", Session.GetHabbo().Id, Amount); Target.SendWhisper("Você recebeu uma oferta de " + String.Format("{0:N0}", Amount) + " galões de gasolina por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar gasolina' para comprar!", 1); break; } else { Session.SendWhisper("Este usuário já recebeu combustível!", 1); break; } } else { Session.SendWhisper("Este cidadão não pode pagar combustível!", 1); break; } } } #endregion #region Default default: { Session.SendWhisper("'" + Type + "' não é um tipo de oferta válida!", 1); break; } #endregion } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { #region Conditions if (Params.Length == 1 && Params[0].ToLower() != "explodir" && Params[0].ToLower() != "reparar") { if (Params[0].ToLower() == "plantar") { Session.SendWhisper("Digite o ID da planta que você deseja usar! Digite ':agricultura' para ver os IDs da planta.", 1); return; } else { Session.SendWhisper("Digite o item que deseja colocar para baixo!", 1); return; } } string Type; if (Params[0].ToLower() == "explodir") { Type = "dinamite"; } else if (Params[0].ToLower() == "reparar") { Type = "grade"; } else if (Params[0].ToLower() == "plantar") { Type = "planta"; } else { Type = Params[1].ToLower(); } #endregion switch (Type) { #region Dynamite case "dynamite": case "dinamite": { if (Session.GetRoleplay().Dynamite < 1) { Session.SendWhisper("Você não tem nenhuma dinamite para colocar!", 1); return; } if (JailbreakManager.JailbreakActivated) { Session.SendWhisper("Uma fuga da prisão já está em andamento!", 1); JailbreakManager.JailbreakActivated = false; return; } int RoomId = Convert.ToInt32(RoleplayData.GetData("jail", "outsideroomid")); int X = Convert.ToInt32(RoleplayData.GetData("jailbreak", "xposition")); int Y = Convert.ToInt32(RoleplayData.GetData("jailbreak", "yposition")); double Z = Convert.ToDouble(RoleplayData.GetData("jailbreak", "zposition")); int Rot = Convert.ToInt32(RoleplayData.GetData("jailbreak", "rotation")); if (Session.GetRoomUser() == null) { return; } if (Room.Id != RoomId) { Session.SendWhisper("Você não está fora da prisão para iniciar uma fuga!", 1); return; } Item BTile = Room.GetRoomItemHandler().GetFloor.FirstOrDefault(x => x.GetBaseItem().ItemName.ToLower() == "bb_rnd_tele" && x.Coordinate == Session.GetRoomUser().Coordinate); if (BTile == null) { Session.SendWhisper("Você deve estar parado em um tele banzai da prisao para começar a explosão e causar a fuga!", 1); return; } List <GameClient> CurrentJailedUsers = PlusEnvironment.GetGame().GetClientManager().GetClients.Where(x => x != null && x.GetHabbo() != null && x.GetRoleplay() != null && x.GetRoleplay().IsJailed).ToList(); if (CurrentJailedUsers == null || CurrentJailedUsers.Count <= 0) { Session.SendWhisper("Não há ninguém na prisão agora!", 1); return; } Session.GetRoleplay().Dynamite--; JailbreakManager.JailbreakActivated = true; Session.Shout("*Coloca uma dinamite na parede, tentando explodir e libertar os prisioneiros*", 4); if (!Session.GetRoleplay().WantedFor.Contains("fugindo da prisão")) { Session.GetRoleplay().WantedFor = Session.GetRoleplay().WantedFor + "fugindo da prisão, "; } Item Item = RoleplayManager.PlaceItemToRoom(null, 6088, 0, X, Y, Z, Rot, false, Room.Id, false, "0"); Item Item2 = RoleplayManager.PlaceItemToRoom(null, 3011, 0, X, Y, 0, Rot, false, Room.Id, false, "0"); object[] Items = { Session, Item, Item2 }; RoleplayManager.TimerManager.CreateTimer("dinamite", 500, false, Items); break; } #endregion #region Fence Repair case "repair": case "reparar": { if (!JailbreakManager.FenceBroken) { Session.SendWhisper("Não há grade que precise de reparo!", 1); return; } if (!GroupManager.HasJobCommand(Session, "guide") && !Session.GetHabbo().GetPermissions().HasRight("corporation_rights")) { Session.SendWhisper("Apenas um policial tem o equipamento certo para reparar essa grade!", 1); return; } if (!Session.GetRoleplay().IsWorking&& !Session.GetHabbo().GetPermissions().HasRight("corporation_rights")) { Session.SendWhisper("Você deve estar trabalhando para reparar essa grade!", 1); return; } if (Session.GetRoleplay().TimerManager.ActiveTimers.ContainsKey("reparar")) { Session.SendWhisper("Você já está reparando a grade!", 1); return; } Item BTile = Room.GetRoomItemHandler().GetFloor.FirstOrDefault(x => x.GetBaseItem().ItemName.ToLower() == "bb_rnd_tele" && x.Coordinate == Session.GetRoomUser().Coordinate); if (BTile == null) { Session.SendWhisper("Você deve estar parado em um tele banzai para começar a reparar a grade!", 1); return; } Session.Shout("*Comece a reparar a grade*", 4); Session.SendWhisper("Você tem 2 minutos até você reparar essa grade!", 1); Session.GetRoleplay().TimerManager.CreateTimer("reparar", 1000, false, BTile.Id); if (Session.GetRoomUser().CurrentEffect != 59) { Session.GetRoomUser().ApplyEffect(59); } break; } #endregion #region Plant case "plant": case "plantar": { int Id; if (!int.TryParse(Params[1], out Id)) { Session.SendWhisper("Digite o ID da planta que você deseja usar! Digite ':agricultura' para ver os IDs das plantas.", 1); break; } if (!Session.GetRoleplay().FarmingStats.HasSeedSatchel) { Session.SendWhisper("Você não tem uma bolsa de sementes para transportar sementes!", 1); return; } if (Id == 0) { Session.SendWhisper("Você guardou todas as suas sementes de volta ao seu saco de sementes", 1); Session.GetRoleplay().FarmingItem = null; break; } FarmingItem Item = FarmingManager.GetFarmingItem(Id); ItemData Furni; if (Item.BaseItem == null) { Session.SendWhisper("Desculpe, mas este ID da planta não existe! Digite ':agricultura' para ver os IDs das planta.", 1); return; } if (!PlusEnvironment.GetGame().GetItemManager().GetItem(Item.BaseItem, out Furni) || Item == null) { Session.SendWhisper("Desculpe, mas este ID da planta não existe! Digite ':agricultura' para ver os IDs das planta.", 1); return; } if (Item.LevelRequired > Session.GetRoleplay().FarmingStats.Level) { Session.SendWhisper("Desculpe, mas você não tem um nível de agricultura alto suficiente para esta semente!", 1); return; } Session.GetRoleplay().FarmingItem = Item; int Amount; if (FarmingManager.GetSatchelAmount(Session, false, out Amount)) { if (Amount <= 0) { Session.SendWhisper("Você não tem nenhuma semente para plantar! Compre alguma no supermercado.", 1); Session.GetRoleplay().FarmingItem = null; break; } else { Session.SendWhisper("Você preparou sua semente " + Amount + " " + Furni.PublicName + " para a plantação!", 1); break; } } else { Session.SendWhisper("Você não tem sementes para plantar! Compre alguma no supermercado.", 1); Session.GetRoleplay().FarmingItem = null; break; } } #endregion #region Default default: { Session.SendWhisper("Desculpe, mas este item não pode ser encontrado!", 1); break; } #endregion } }
public void OutputAuraItem(FarmingItem _item) // 고정 아이템 획득 시 { _nowAuraActiveItem.Remove(_item); }
private Vector2 _underPos, _topPos; // 보간 최대좌표 private void Awake() { _farmingitem = GetComponentInParent <FarmingItem>(); }
public void InputAuraItem(FarmingItem _item) // 고정 아이템 활성화 시 { _nowAuraActiveItem.Add(_item); }
public void OutputItem(FarmingItem _item) // 아이템 획득 시 { _nowactiveItem.Remove(_item); }
public void InputItem(FarmingItem _item) // 아이템 활성화 시 { _nowactiveItem.Add(_item); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { StringBuilder Message = new StringBuilder().Append("<----- Ofertas ativas atualmente ----->\n\n"); if (Session.GetRoleplay().OfferManager.ActiveOffers.Count <= 0) { Message.Append("Você atualmente não tem ofertas ativas!\n"); } else { Message.Append("Digite ':aceitar OFERTA' (As OFERTAS são [celular/casamento/gangue/roupa, e outras]!\n\n"); } lock (Session.GetRoleplay().OfferManager.ActiveOffers.Values) { foreach (var Offer in Session.GetRoleplay().OfferManager.ActiveOffers.Values) { if (Offer == null) { continue; } string Name = ""; if (Offer.Params != null && Offer.Params.Length > 0) { if (Offer.Type.ToLower() == "sementes" && Offer.Params.ToList().Count == 1) { var OffererCache = PlusEnvironment.GetGame().GetCacheManager().GenerateUser(Offer.OffererId); Name = OffererCache.Username; } else { RoleplayBotAI Bot = (RoleplayBotAI)Offer.Params[0]; Name = "[BOT] " + Bot.GetBotRoleplay().Name; } } else { var OffererCache = PlusEnvironment.GetGame().GetCacheManager().GenerateUser(Offer.OffererId); Name = OffererCache.Username; } string PhoneName = RoleplayManager.GetPhoneName(Session, true); string CarName = RoleplayManager.GetCarName(Session, true); if (Offer.Type.ToLower() == "casamento") { Message.Append("Casamento: " + Name + " pediu sua mão em casamento!\n\n"); } else if (Offer.Type.ToLower() == "sacodesementes") { Message.Append("Saco de Sementes: Um Saco de Sementes por R$" + String.Format("{0:N0}", Offer.Cost) + " de " + Name + "!\n\n"); } else if (Offer.Type.ToLower() == "sacodeplantas") { Message.Append("Saco de Plantas: Um Saco de Plantas por R$" + String.Format("{0:N0}", Offer.Cost) + " de " + Name + "!\n\n"); } else if (Offer.Type.ToLower() == "sementes") { FarmingItem Item = (FarmingItem)Offer.Params[1]; ItemData Furni; if (PlusEnvironment.GetGame().GetItemManager().GetItem(Item.BaseItem, out Furni)) { Message.Append("Sementes: " + Name + " ofereceu para você " + Offer.Cost + " " + Furni.PublicName + " sementes por R$" + String.Format("{0:N0}", (Offer.Cost * Item.BuyPrice)) + "!\n\n"); } } else if (Offer.Type.ToLower() == "desconto") { Message.Append("Roupas: Desconto de 5% para comprar roupas de " + Name + "!\n\n"); } else if (Offer.Type.ToLower() == "celular") { Message.Append("Celular: Um Nokia Tijolão por " + Name + "!\n\n"); } else if (Offer.Type.ToLower() == "carro") { Message.Append("Carro: Um Toyota Corolla por $1,000 from " + Name + "!\n\n"); } else if (Offer.Type.ToLower() == "cheques") { Message.Append("Cheques: Uma conta de Cheques no branco grátis de " + Name + "!\n\n"); } else if (Offer.Type.ToLower() == "poupanca") { Message.Append("Poupança: Uma conta Poupança por R$" + String.Format("{0:N0}", Offer.Cost) + " de " + Name + "!\n\n"); } else if (Offer.Type.ToLower() == "uparcel") { Message.Append("Atualização de Celular: Uma atualização para o seu " + PhoneName + " por R$" + String.Format("{0:N0}", Offer.Cost) + " de " + Name + "!\n\n"); } else if (Offer.Type.ToLower() == "uparcarro") { Message.Append("Atualização de Carro: Uma atualização para o seu " + CarName + " por R$" + String.Format("{0:N0}", Offer.Cost) + " de " + Name + "!\n\n"); } else if (Offer.Type.ToLower() == "gangue") { var Gang = Groups.GroupManager.GetGang(Offer.Cost); if (Gang != null) { Message.Append("Gangue: Convidado para se juntar à gangue '" + Gang.Name + "' por " + Name + "!\n\n"); } } else if (Offer.Type.ToLower() == "emprego") { var Job = Groups.GroupManager.GetJob(Offer.Cost); var JobRank = Groups.GroupManager.GetJobRank(Job.Id, 1); if (Job != null) { Message.Append("Emprego: Convidado para se juntar a Empresa '" + Job.Name + "' como um '" + JobRank.Name + "' por " + Name + "!\n\n"); } } else if (WeaponManager.Weapons.ContainsKey(Offer.Type.ToLower())) { Weapon weapon = WeaponManager.Weapons[Offer.Type.ToLower()]; if (weapon != null) { Message.Append("Armas: Uma " + weapon.PublicName + " por R$" + String.Format("{0:N0}", weapon.Cost) + " de " + Name + "!\n\n"); } } } } Session.SendMessage(new MOTDNotificationComposer(Message.ToString())); }
public override void HandleRequest(GameClient Client, string Message) { if (!OnDuty) { return; } if (GetBotRoleplay().WalkingToItem) { return; } if (RespondToSpeech(Client, Message)) { return; } string Name = GetBotRoleplay().Name.ToLower(); string[] Params = Message.Split(' '); #region Satchel if (Message.ToLower() == "saco") { string WhisperMessage = "Por favor digite 'saco de sementes' para comprar uma sacola de sementes, ou 'saco de plantas' para comprar!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } #endregion #region Plant Satchel if (Message.StartsWith("sacodeplantas")) { if (Client.GetRoleplay().FarmingStats.HasPlantSatchel) { string WhisperMessage = "Desculpe, você já tem um Saco de Plantas!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } if (Client.GetRoleplay().OfferManager.ActiveOffers.Values.Where(x => x.Type.ToLower() == "plantsatchel").ToList().Count > 0) { string WhisperMessage = "Desculpe, mas você já recebeu uma oferta de sacola de plantas!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } int Cost = Convert.ToInt32(RoleplayData.GetData("farming", "plantsatchelcost")); if (Client.GetHabbo().Credits < Cost) { string WhisperMessage = "Desculpe, você não tem R$" + String.Format("{0:N0}", Cost) + " para comprar o Saco de Plantas!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } GetRoomUser().Chat("*Oferece um Saco de Plantas para " + Client.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", true); Client.GetRoleplay().OfferManager.CreateOffer("sacodeplantas", 0, Cost, this); Client.SendWhisper("Você recebeu uma oferta de Saco de Plantas por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar sacodeplantas' para comprar!", 1); return; } #endregion #region Seed Satchel if (Message.StartsWith("sacodesementes")) { if (Client.GetRoleplay().FarmingStats.HasSeedSatchel) { string WhisperMessage = "Desculpe, você já possui um Saco de sementes!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } if (Client.GetRoleplay().OfferManager.ActiveOffers.Values.Where(x => x.Type.ToLower() == "seedsatchel").ToList().Count > 0) { string WhisperMessage = "Desculpe, mas você já recebeu uma oferta de Saco de sementes!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } int Cost = Convert.ToInt32(RoleplayData.GetData("farming", "seedsatchelcost")); if (Client.GetHabbo().Credits < Cost) { string WhisperMessage = "Desculpe, você não tem R$" + String.Format("{0:N0}", Cost) + " para comprar um Saco de Sementes!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } GetRoomUser().Chat("*Oferece um Saco de sementes para " + Client.GetHabbo().Username + " por R$" + String.Format("{0:N0}", Cost) + "*", true); Client.GetRoleplay().OfferManager.CreateOffer("sacodesementes", 0, Cost, this); Client.SendWhisper("Você recebe uma oferta de Saco de Sementes por R$" + String.Format("{0:N0}", Cost) + "! Digite ':aceitar sacodesementes' para comprar!", 1); return; } #endregion #region Seeds if (Message.ToLower() == "seeds" || Message.ToLower() == "seed") { GetRoomUser().Chat("Welcome " + Client.GetHabbo().Username + " to the supermarket!", true); StringBuilder FarmingList = new StringBuilder().Append("--- Seeds For Sale ---\n"); FarmingList.Append("To buy any of the following, type 'seed <id> <amount>'!\n\n"); foreach (FarmingItem Item in FarmingManager.FarmingItems.Values.OrderBy(x => x.Id)) { if (Item != null) { ItemData Furni; if (PlusEnvironment.GetGame().GetItemManager().GetItem(Item.BaseItem, out Furni)) { FarmingList.Append("--- " + Furni.PublicName + " [" + Item.Id + "] ---\n"); FarmingList.Append("Farming Level Required: " + Item.LevelRequired + "\n"); FarmingList.Append("Cost: $" + String.Format("{0:N0}", Item.BuyPrice) + "\n\n"); } } } Client.SendMessage(new MOTDNotificationComposer(FarmingList.ToString())); return; } #endregion #region Buying Seeds if (Params[0].ToLower() == "seed" && Params.Length > 2) { int Id; if (!int.TryParse(Params[1], out Id)) { string WhisperMessage = "Please type 'seed <id> <amount>' to buy some seeds, or type 'seeds' to see what I have for sale!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } FarmingItem Item = FarmingManager.GetFarmingItem(Id); ItemData Furni; if (!PlusEnvironment.GetGame().GetItemManager().GetItem(Item.BaseItem, out Furni) || Item == null) { string WhisperMessage = "Sorry, but there is no seed for sale with that id!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } int Amount; if (!int.TryParse(Params[2], out Amount)) { string WhisperMessage = "Please type 'seed <id> <amount>' to buy some seeds, or type 'seeds' to see what I have for sale!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } if (Client.GetRoleplay().OfferManager.ActiveOffers.Values.Where(x => x.Type.ToLower() == "seed").ToList().Count > 0) { string WhisperMessage = "Sorry, but you already been offered some seeds!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } if (!Client.GetRoleplay().FarmingStats.HasSeedSatchel) { string WhisperMessage = "You don't have a seed satchel to carry any seeds! Type 'seed satchel' to buy one."; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } if (Item.LevelRequired > Client.GetRoleplay().FarmingStats.Level) { string WhisperMessage = "Sorry, but you do not have a high enough farming level for this seed type!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } int Cost = (Amount * Item.BuyPrice); if (Client.GetHabbo().Credits < Cost) { string WhisperMessage = "You don't have $" + String.Format("{0:N0}", Cost) + " to buy " + Amount + " " + Furni.PublicName + "'s!"; Client.SendMessage(new WhisperComposer(GetRoomUser().VirtualId, WhisperMessage, 0, 2)); return; } object[] Objects = new object[] { this, Item }; GetRoomUser().Chat("*Offers " + Amount + " " + Furni.PublicName + " seeds to " + Client.GetHabbo().Username + " for $" + String.Format("{0:N0}", Cost) + "*", true); Client.GetRoleplay().OfferManager.CreateOffer("sementes", 0, Amount, Objects); Client.SendWhisper("You have just been offered " + Amount + " " + Furni.PublicName + " seeds for $" + String.Format("{0:N0}", Cost) + "! Type ':accept seeds' to buy them!", 1); return; } #endregion }