public override void OnSpeech(SpeechEventArgs e) { base.OnSpeech(e); Mobile from = e.Mobile; Item sign = m_House.Sign; bool isOwner = m_House.IsOwner(from); bool isCoOwner = isOwner || m_House.IsCoOwner(from); bool isFriend = isCoOwner || m_House.IsFriend(from); if (!isFriend) { return; } if (!from.Alive) { return; } if (Core.ML && Insensitive.Equals(e.Speech, "I wish to resize my house")) { if (from.Map != sign.Map || !from.InRange(sign, 0)) { from.SendLocalizedMessage(500295); // you are too far away to do that. } else if (DateTime.Now <= m_House.BuiltOn.AddHours(1)) { from.SendLocalizedMessage(1080178); // You must wait one hour between each house demolition. } else if (isOwner) { from.CloseGump(typeof(ConfirmHouseResize)); from.CloseGump(typeof(HouseGumpAOS)); from.SendGump(new ConfirmHouseResize(from, m_House)); } else { from.SendLocalizedMessage(501320); // Only the house owner may do this. } } if (!m_House.IsInside(from) || !m_House.IsActive) { return; } else if (e.HasKeyword(0x33)) // remove thyself { if (isFriend) { from.SendLocalizedMessage(501326); // Target the individual to eject from this house. from.Target = new HouseKickTarget(m_House); } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x34)) // I ban thee { if (!isFriend) { from.SendLocalizedMessage(502094); // You must be in your house to do this. } else if (!m_House.Public && m_House.IsAosRules) { from.SendLocalizedMessage(1062521); // You cannot ban someone from a private house. Revoke their access instead. } else { from.SendLocalizedMessage(501325); // Target the individual to ban from this house. from.Target = new HouseBanTarget(true, m_House); } } else if (e.HasKeyword(0x23)) // I wish to lock this down { if (isCoOwner) { from.SendLocalizedMessage(502097); // Lock what down? from.Target = new LockdownTarget(false, m_House); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x24)) // I wish to release this { if (isCoOwner) { from.SendLocalizedMessage(502100); // Choose the item you wish to release from.Target = new LockdownTarget(true, m_House); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x25)) // I wish to secure this { if (isOwner) { from.SendLocalizedMessage(502103); // Choose the item you wish to secure from.Target = new SecureTarget(false, m_House); } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x26)) // I wish to unsecure this { if (isOwner) { from.SendLocalizedMessage(502106); // Choose the item you wish to unsecure from.Target = new SecureTarget(true, m_House); } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x27)) // I wish to place a strongbox { if (isOwner) { from.SendLocalizedMessage(502109); // Owners do not get a strongbox of their own. } else if (isCoOwner) { m_House.AddStrongBox(from); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x28)) // trash barrel { if (isCoOwner) { m_House.AddTrashBarrel(from); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } }
// emulate house region if there is a house here public override void OnSpeech(SpeechEventArgs e) { //plasma: add base call in as was preventing players calling the guards! base.OnSpeech(e); if (m_Controller.IsHouseRegion == true) { BaseHouse house = BaseHouse.FindHouseAt(e.Mobile); if (house != null) { Mobile from = e.Mobile; if (!from.Alive || !house.IsInside(from)) { return; } bool isOwner = house.IsOwner(from); bool isCoOwner = isOwner || house.IsCoOwner(from); bool isFriend = isCoOwner || house.IsFriend(from); if (!isFriend) { return; } if (e.HasKeyword(0x33)) // remove thyself { if (isFriend) { from.SendLocalizedMessage(501326); // Target the individual to eject from this house. from.Target = new HouseKickTarget(house); } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.Speech.ToLower() == "i wish to make this decorative") // i wish to make this decorative { if (!isFriend) { from.SendLocalizedMessage(502094); // You must be in your house to do this. } else { from.SendMessage("Make what decorative?"); // from.Target = new HouseDecoTarget(true, house); } } else if (e.Speech.ToLower() == "i wish to make this functional") // i wish to make this functional { if (!isFriend) { from.SendLocalizedMessage(502094); // You must be in your house to do this. } else { from.SendMessage("Make what functional?"); // from.Target = new HouseDecoTarget(false, house); } } else if (e.HasKeyword(0x34)) // I ban thee { if (!isFriend) { from.SendLocalizedMessage(502094); // You must be in your house to do this. } //Adam: no AOS rules here /*else if ( !house.Public && house.IsAosRules ) * { * from.SendLocalizedMessage( 1062521 ); // You cannot ban someone from a private house. Revoke their access instead. * }*/ else { from.SendLocalizedMessage(501325); // Target the individual to ban from this house. from.Target = new HouseBanTarget(true, house); } } else if (e.HasKeyword(0x23)) // I wish to lock this down { if (isCoOwner) { from.SendLocalizedMessage(502097); // Lock what down? from.Target = new LockdownTarget(false, house); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x24)) // I wish to release this { if (isCoOwner) { from.SendLocalizedMessage(502100); // Choose the item you wish to release from.Target = new LockdownTarget(true, house); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x25)) // I wish to secure this { if (isCoOwner) { from.SendLocalizedMessage(502103); // Choose the item you wish to secure from.Target = new SecureTarget(false, house); } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x26)) // I wish to unsecure this { if (isOwner) { from.SendLocalizedMessage(502106); // Choose the item you wish to unsecure from.Target = new SecureTarget(true, house); } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x27)) // I wish to place a strong box { if (isOwner) { from.SendLocalizedMessage(502109); // Owners do not get a strongbox of their own. } else if (isFriend) { house.AddStrongBox(from); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } /* weaver: disallowed trash barrel placement by command * * else if ( e.HasKeyword( 0x28 ) ) // I wish to place a trash barrel * { * if ( isCoOwner ) * { * house.AddTrashBarrel( from ); * } * else if ( isFriend ) * { * from.SendLocalizedMessage( 1010587 ); // You are not a co-owner of this house. * } * else * { * from.SendLocalizedMessage( 502094 ); // You must be in your house to do this. * } * } */ else if (e.Speech.ToLower() == "i wish to place my guild stone") // I wish to place a guild stone { if (isCoOwner) { // ask the playermobile to deal with this item request Item item = from.RequestItem(typeof(Server.Items.Guildstone)); if (item == null) { from.SendMessage("You do not seem to have one of those."); } else { // ask the player mobile to place this guild stone from.ProcessItem(item); } } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } } } }
public override void OnSpeech(SpeechEventArgs e) { Mobile from = e.Mobile; if (!from.Alive || !m_House.IsInside(from) || !m_House.IsActive) { return; } bool isOwner = m_House.IsOwner(from); bool isCoOwner = isOwner || m_House.IsCoOwner(from); bool isFriend = isCoOwner || m_House.IsFriend(from); if (!isFriend) { return; } if (e.HasKeyword(0x33)) // remove thyself { if (isFriend) { from.SendLocalizedMessage(501326); // Target the individual to eject from this house. from.Target = new HouseKickTarget(m_House); } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x34)) // I ban thee { if (!isFriend) { from.SendLocalizedMessage(502094); // You must be in your house to do this. } else if (!m_House.Public && m_House.IsAosRules) { from.SendLocalizedMessage(1062521); // You cannot ban someone from a private house. Revoke their access instead. } else { from.SendLocalizedMessage(501325); // Target the individual to ban from this house. from.Target = new HouseBanTarget(true, m_House); } } else if (e.HasKeyword(0x23)) // I wish to lock this down { if (isCoOwner) { from.SendLocalizedMessage(502097); // Lock what down? from.Target = new LockdownTarget(false, m_House); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x24)) // I wish to release this { if (isCoOwner) { from.SendLocalizedMessage(502100); // Choose the item you wish to release from.Target = new LockdownTarget(true, m_House); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x25)) // I wish to secure this { if (isOwner) { from.SendLocalizedMessage(502103); // Choose the item you wish to secure from.Target = new SecureTarget(false, m_House); } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x26)) // I wish to unsecure this { if (isOwner) { from.SendLocalizedMessage(502106); // Choose the item you wish to unsecure from.Target = new SecureTarget(true, m_House); } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x27)) // I wish to place a strong box { if (isOwner) { from.SendLocalizedMessage(502109); // Owners do not get a strongbox of their own. } else if (isCoOwner) { m_House.AddStrongBox(from); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } else if (e.HasKeyword(0x28)) { if (isCoOwner) { m_House.AddTrashBarrel(from); } else if (isFriend) { from.SendLocalizedMessage(1010587); // You are not a co-owner of this house. } else { from.SendLocalizedMessage(502094); // You must be in your house to do this. } } }