public override void OnDoubleClick(Mobile from) { if (!IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it. } else if (from.AccessLevel >= AccessLevel.GameMaster) { from.SendLocalizedMessage( 503248); // Your godly powers allow you to place this vendor whereever you wish. Mobile v = new PlayerVendor(from, BaseHouse.FindHouseAt(from)); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, 503246); // Ah! it feels good to be working again. Delete(); } else { BaseHouse house = BaseHouse.FindHouseAt(from); if (house == null) { from.SendLocalizedMessage(503240); // Vendors can only be placed in houses. } else if (!house.IsFriend(from)) { from.SendLocalizedMessage( 503242); // You must ask the owner of this building to name you a friend of the household in order to place a vendor here. } else if (!house.Public) { from.SendLocalizedMessage( 503241); // You cannot place this vendor or barkeep. Make sure the house is public and has sufficient storage available. } else { bool vendor = BaseHouse.IsThereVendor(from.Location, from.Map); if (vendor) { from.SendLocalizedMessage(1062677); // You cannot place a vendor or barkeep at this location. } else { Mobile v = new PlayerVendor(from, house); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, 503246); // Ah! it feels good to be working again. Delete(); } } } }
protected override void OnTarget(Mobile from, object targeted) { //from.SendMessage(targeted.ToString()); IPoint3D p = (IPoint3D)targeted; Point3D point = new Point3D(p.X, p.Y, p.Z); if (Region.Find(point, Map.Felucca) is MarcheHurlevent) { Mobile v = new PlayerVendor(from, BaseHouse.FindHouseAt(from)); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(point, from.Map); v.SayTo(from, "Je suis a votre service."); m_Item.Delete(); //v.SayTo(from, 503246); } else { from.SendMessage("Vous pouvez seulement placer un marchand dans une zone commercial."); } }
public override void OnDoubleClick(Mobile from) { if (!IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it. } else if (from.Region.Name == "Magincia") { //from.SendLocalizedMessage( 503248 ); // Your godly powers allow you to place this vendor whereever you wish. Mobile v = new PlayerVendor(from, BaseHouse.FindHouseAt(from)); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, 503246); // Ah! it feels good to be working again. this.Delete(); } else { from.SendLocalizedMessage(1062677); // You cannot place a vendor or barkeep at this location. } }
public override void OnDoubleClick(Mobile from) { if (!IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it. } else if (from.AccessLevel >= AccessLevel.GameMaster) { from.SendLocalizedMessage(503248); // Your godly powers allow you to place this vendor whereever you wish. Mobile v = new PlayerVendor(from, BaseHouse.FindHouseAt(from)) { Direction = from.Direction & Direction.Mask }; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, 503246); // Ah! it feels good to be working again. EventSink.InvokePlacePlayerVendor(new PlacePlayerVendorEventArgs(from, v)); Delete(); } else { BaseHouse house = BaseHouse.FindHouseAt(from); if (house == null) { from.SendLocalizedMessage(503240); // Vendors can only be placed in houses. } else if (!BaseHouse.NewVendorSystem && !house.IsFriend(from)) { from.SendLocalizedMessage(503242); // You must ask the owner of this building to name you a friend of the household in order to place a vendor here. } else if (BaseHouse.NewVendorSystem && !house.IsOwner(from)) { from.SendLocalizedMessage(1062423); // Only the house owner can directly place vendors. Please ask the house owner to offer you a vendor contract so that you may place a vendor in this house. } else if (!house.Public || !house.CanPlaceNewVendor()) { from.SendLocalizedMessage(503241); // You cannot place this vendor or barkeep. Make sure the house is public and has sufficient storage available. } else { BaseHouse.IsThereVendor(from.Location, from.Map, out bool vendor, out bool contract); if (vendor) { from.SendLocalizedMessage(1062677); // You cannot place a vendor or barkeep at this location. } else if (contract) { from.SendLocalizedMessage(1062678); // You cannot place a vendor or barkeep on top of a rental contract! } else { Mobile v = new PlayerVendor(from, house) { Direction = from.Direction & Direction.Mask }; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, 503246); // Ah! it feels good to be working again. EventSink.InvokePlacePlayerVendor(new PlacePlayerVendorEventArgs(from, v)); Delete(); } } } }
public override void OnDoubleClick(Mobile from) { if (!IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it. } else if (from.AccessLevel >= AccessLevel.GameMaster) { from.SendLocalizedMessage(503248); // Your godly powers allow you to place this vendor whereever you wish. Mobile v = new PlayerVendor(from, BaseHouse.FindHouseAt(from)); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, 503246); // Ah! it feels good to be working again. Delete(); } else { bool canplace = false; BaseHouse house = BaseHouse.FindHouseAt(from); CustomRegion cR; if ((cR = from.Region as CustomRegion) != null && !cR.Controller.CanPlaceVendors) { if (house == null) { from.SendAsciiMessage("Vendors can only be placed in houses or specified areas."); } else { from.SendAsciiMessage("You cannot place a vendor in this region"); } } else if ((cR = from.Region as CustomRegion) != null && cR.Controller.CanPlaceVendors) { canplace = true; try { foreach (Mobile mob in cR.GetMobiles()) { if (mob is PlayerVendor && (mob as PlayerVendor).Owner.Account == from.Account) { from.SendAsciiMessage("You alread have a vendor placed in this region."); canplace = false; return; } } } catch (Exception e) { Console.WriteLine(e.ToString()); } } else if (house == null) { from.SendAsciiMessage("Vendors can only be placed in houses or specified areas."); } else if (!BaseHouse.NewVendorSystem && !house.IsFriend(from)) { from.SendLocalizedMessage(503242); // You must ask the owner of this building to name you a friend of the household in order to place a vendor here. } else if (BaseHouse.NewVendorSystem && !house.IsOwner(from)) { from.SendLocalizedMessage(1062423); // Only the house owner can directly place vendors. Please ask the house owner to offer you a vendor contract so that you may place a vendor in this house. } else if (!house.Public || !house.CanPlaceNewVendor()) { from.SendLocalizedMessage(503241); // You cannot place this vendor or barkeep. Make sure the house is public and has sufficient storage available. } else { canplace = true; } if (canplace) { bool vendor, contract; BaseHouse.IsThereVendor(from.Location, from.Map, out vendor, out contract); if (vendor) { from.SendLocalizedMessage(1062677); // You cannot place a vendor or barkeep at this location. } else if (contract) { from.SendLocalizedMessage(1062678); // You cannot place a vendor or barkeep on top of a rental contract! } else { Mobile v = new PlayerVendor(from, house); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, 503246); // Ah! it feels good to be working again. Delete(); } } } }
public override void OnDoubleClick(Mobile from) { if (!IsChildOf(from.Backpack)) { from.SendMessage("O item precisa estar na sua bag"); // That must be in your pack for you to use it. } else if (from.AccessLevel >= AccessLevel.GameMaster) { from.SendMessage("Voce e GM e pode colocar o vendedor onde quiser."); // Your godly powers allow you to place this vendor whereever you wish. Mobile v = new PlayerVendor(from, BaseHouse.FindHouseAt(from)); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, "Ah! Como e bom voltar ao trabalho..."); // Ah! it feels good to be working again. this.Delete(); } else { BaseHouse house = BaseHouse.FindHouseAt(from); if (house == null) { from.SendMessage("Vendedores so podem ser colocados dentro de casa"); // Vendors can only be placed in houses. } else if (!BaseHouse.NewVendorSystem && !house.IsFriend(from)) { from.SendMessage("Apenas o dono, sócios e amigos podem colocar vendedores nesta casa"); // You must ask the owner of this building to name you a friend of the household in order to place a vendor here. } else if (BaseHouse.NewVendorSystem && !house.IsOwner(from)) { from.SendMessage("Apenas o dono pode colocar vendedores diretamente."); // Only the house owner can directly place vendors. Please ask the house owner to offer you a vendor contract so that you may place a vendor in this house. } else if (!house.Public || !house.CanPlaceNewVendor()) { from.SendMessage("Voce nao pode colocar este vendedor aqui. Verifique se a casa e publica e tem espaco suficiente."); // You cannot place this vendor or barkeep. Make sure the house is public and has sufficient storage available. } else { bool vendor, contract; BaseHouse.IsThereVendor(from.Location, from.Map, out vendor, out contract); if (vendor) { from.SendMessage("Voce nao pode colocar um vendedor aqui"); // You cannot place a vendor or barkeep at this location. } else if (contract) { from.SendMessage("Voce nao pode colocar este vendedor aqui, verifique o contrato."); // You cannot place a vendor or barkeep on top of a rental contract! } else { Mobile v = new PlayerVendor(from, house); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, "Ah! Como e bom voltar ao trabalho..."); // Ah! it feels good to be working again. this.Delete(); } } } }
public override void OnDoubleClick(Mobile from) { if (!IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it. } else if (from.AccessLevel >= AccessLevel.GameMaster) { from.SendLocalizedMessage(503248); //Your godly powers allow you to place this vendor whereever you wish. Mobile v = new PlayerVendor(from, BaseHouse.FindHouseAt(from)); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, 503246); // Ah! it feels good to be working again. this.Delete(); } else { //find the house there at BaseHouse house = BaseHouse.FindHouseAt(from); // wea: allow placement within tents if (house == null) { if (from.Region != null) { // is there a tent belonging to the person's account here though? if (from.Region is HouseRegion) { HouseRegion hr = (HouseRegion)from.Region; if ((hr.House is Tent || hr.House is SiegeTent) && hr.House.Owner.Account == from.Account) { house = ((HouseRegion)from.Region).House; } } } } if (house == null) { from.SendLocalizedMessage(503240); //Vendors can only be placed in houses. } else if (!house.IsFriend(from)) { from.SendLocalizedMessage(503242); //You must ask the owner of this house to make you a friend in order to place this vendor here, } else if (!house.Public) { from.SendLocalizedMessage(503241); //You cannot place this vendor. Make sure the building is public and you have not reached your vendor limit. } else if (!house.CanPlaceNewVendor()) { from.SendLocalizedMessage(503241); // You cannot place this vendor or barkeep. Make sure the house is public or a shop and has sufficient storage available. } //else if (house.FindTownshipNPC() != null) else if (house.CanPlacePlayerVendorInThisTownshipHouse() == false) { from.SendMessage("You cannot place a vendor in a house with the township NPCs present."); } else { Mobile v = new PlayerVendor(from, house); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, 503246); // Ah! it feels good to be working again. this.Delete(); } } }
public override void OnDoubleClick(Mobile from) { if (!IsChildOf(from.Backpack)) { from.SendAsciiMessage("That must be in your pack for you to use it."); // That must be in your pack for you to use it. } else if (from.AccessLevel >= AccessLevel.GameMaster) { from.SendAsciiMessage("Your godly powers allow you to place this vendor whereever you wish."); // Your godly powers allow you to place this vendor whereever you wish. Mobile v = new PlayerVendor(from, BaseHouse.FindHouseAt(from)); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, true, "Ah! it feels good to be working again."); // Ah! it feels good to be working again. this.Delete(); } else { BaseHouse house = BaseHouse.FindHouseAt(from); if (house == null) { from.SendAsciiMessage("Vendors can only be placed in houses."); // Vendors can only be placed in houses. } else if (!Key.ContainsKey(from.Backpack, house.keyValue)) { from.SendAsciiMessage("You can only place this in a house that you own!"); } /*else if ( !BaseHouse.NewVendorSystem && !house.IsFriend( from ) ) * { * from.SendAsciiMessage("You can only place this in a house that you own!"); // You must ask the owner of this building to name you a friend of the household in order to place a vendor here. * } * else if ( BaseHouse.NewVendorSystem && !house.IsOwner( from ) ) * { * from.SendAsciiMessage("You can only place this in a house that you own!"); // Only the house owner can directly place vendors. Please ask the house owner to offer you a vendor contract so that you may place a vendor in this house. * } * else if ( !house.Public || !house.CanPlaceNewVendor() ) * { * from.SendAsciiMessage( "You cannot place this vendor or barkeep. Make sure the house is public and has sufficient storage available." ); // You cannot place this vendor or barkeep. Make sure the house is public and has sufficient storage available. * }*/ else { bool vendor, contract; BaseHouse.IsThereVendor(from.Location, from.Map, out vendor, out contract); if (vendor) { from.SendAsciiMessage("You cannot place a vendor at this location."); // You cannot place a vendor or barkeep at this location. } else if (contract) { from.SendLocalizedMessage(1062678); // You cannot place a vendor or barkeep on top of a rental contract! } else { Mobile v = new PlayerVendor(from, house); v.Direction = from.Direction & Direction.Mask; v.MoveToWorld(from.Location, from.Map); v.SayTo(from, true, "Ah! it feels good to be working again."); // Ah! it feels good to be working again. this.Delete(); } } } }