public override void OnClick() { var from = Owner.From; if (from != null) { var vault = AccountVault.GetVault(from); if (vault != null && from.Region.IsPartOf(Manager.Region)) { if (from.Criminal) { from.SendLocalizedMessage(1158195); // Thou art a criminal and cannot access thy vault. } else if (!from.InRange(vault.GetWorldLocation(), 2)) { vault.MoveTo(from); } else { vault.OnDoubleClick(from); } } } }
public override void AddCustomContextEntries(Mobile from, List <ContextMenuEntry> list) { base.AddCustomContextEntries(from, list); if (SystemSettings.Enabled && from.Alive && from.InRange(Location, 8)) { var vault = AccountVault.GetVault(from); var inRange = vault != null && from.Region.IsPartOf(this.Region); var open = new OpenVaultEntry(this); open.Enabled = vault != null && inRange && !from.Criminal; list.Add(open); var rent = new RentVaultEntry(this); rent.Enabled = vault == null; list.Add(rent); var claim = new ClaimVaultEntry(this); claim.Enabled = vault != null && inRange; list.Add(claim); var actions = new VaultActionsEntry(this, vault); actions.Enabled = vault != null && inRange; list.Add(actions); var locations = new VaultLocationsEntry(this); list.Add(locations); } }
public override void OnClick() { if (Owner.From is PlayerMobile pm) { var vault = AccountVault.GetVault(pm); if (vault != null) { /*Are you sure you want to claim this vault? Doing so will forfeit any rental * time remaining and place your vault contents in your backpack.*/ BaseGump.SendGump(new PetTrainingStyleConfirmGump(pm, 1074974, 1158037, () => { vault.ClaimVault(pm); })); } else { pm.SendLocalizedMessage(1158034); // You don’t have a vault to claim. } } }