public DeleteTimer(StaffTool stone) : base(TimeSpan.FromSeconds(5.0)) { me = stone; }
protected override void OnTarget(Mobile from, object o) { IPoint3D p = o as IPoint3D; m_Object = o; if (p != null) { if (m_Object is Mobile) { Mobile m = (Mobile)m_Object; Account acc = (Account)m.Account; StaffTool stone = null; StaffTool nstn = new StaffTool(); Container pack = from.Backpack; if (pack != null) m_Item = pack.FindItemByType(typeof(StaffTool), true); if (m_Item != null) stone = m_Item as StaffTool; StaffTool thing = m.Backpack.FindItemByType(typeof(StaffTool), true) as StaffTool; if (thing != null) { thing.deleting = true; thing.DoDelete(thing); } if (stone != null) { m_SLevel = stone.GumpChoice; } if (!m.Deleted && m.Player) { if (SLevel == 0) { if (from.AccessLevel == AccessLevel.Player) { from.SendMessage("You can Not Change someones accesslevel who is equal to yours!"); return; } else if (from.AccessLevel < AccessLevel.Player) { from.SendMessage("You can Not Change someones accesslevel who is greater than yours!"); return; } else { from.SendMessage("You Changed someones accesslevel to a Player!"); acc.AccessLevel = m.AccessLevel = AccessLevel.Player; } } if (SLevel == 1) { if (from.AccessLevel == AccessLevel.Counselor) { from.SendMessage("You can Not Change someones accesslevel who is equal to yours!"); return; } else if (from.AccessLevel < AccessLevel.Counselor) { from.SendMessage("You can Not Change someones accesslevel who is greater than yours!"); return; } else { from.SendMessage("You Changed someones accesslevel to a Counselor!"); acc.AccessLevel = m.AccessLevel = AccessLevel.Counselor; nstn.Owner = m; nstn.Name = m.Name + "'s Staff Stone"; nstn.StaffLevel = m.AccessLevel; nstn.LootType = LootType.Blessed; nstn.HomeLocation = m.Location; nstn.HomeMap = m.Map; if (m.Title != null) nstn.Title = m.Title; m.AddToBackpack(nstn); //m.BoltEffect( 0 ); } } if (SLevel == 2) { if (from.AccessLevel == AccessLevel.Seer) { from.SendMessage("You can Not Change someones accesslevel who is equal to yours!"); return; } else if (from.AccessLevel < AccessLevel.Seer) { from.SendMessage("You can Not Change someones accesslevel who is greater than yours!"); return; } else { from.SendMessage("You Changed someones accesslevel to a Seer!"); acc.AccessLevel = m.AccessLevel = AccessLevel.Seer; nstn.Owner = m; nstn.Name = m.Name + "'s Staff Stone"; nstn.StaffLevel = m.AccessLevel; nstn.LootType = LootType.Blessed; nstn.HomeLocation = m.Location; nstn.HomeMap = m.Map; if (m.Title != null) nstn.Title = m.Title; m.AddToBackpack(nstn); //m.BoltEffect( 0 ); } } if (SLevel == 3) { if (from.AccessLevel == AccessLevel.EventMaster) { from.SendMessage("You can Not Change someones accesslevel who is equal to yours!"); return; } else if (from.AccessLevel < AccessLevel.EventMaster) { from.SendMessage("You can Not Change someones accesslevel who is greater than yours!"); return; } else { from.SendMessage("You Changed someones accesslevel to a EventMaster!"); acc.AccessLevel = m.AccessLevel = AccessLevel.EventMaster; nstn.Owner = m; nstn.Name = m.Name + "'s Staff Stone"; nstn.StaffLevel = m.AccessLevel; nstn.LootType = LootType.Blessed; nstn.HomeLocation = m.Location; nstn.HomeMap = m.Map; if (m.Title != null) nstn.Title = m.Title; m.AddToBackpack(nstn); //m.BoltEffect( 0 ); } } if (SLevel == 4) { if (from.AccessLevel == AccessLevel.GameMaster) { from.SendMessage("You can Not Change someones accesslevel who is equal to yours!"); return; } else if (from.AccessLevel < AccessLevel.GameMaster) { from.SendMessage("You can Not Change someones accesslevel who is greater than yours!"); return; } else { from.SendMessage("You Changed someones accesslevel to a GameMaster!"); acc.AccessLevel = m.AccessLevel = AccessLevel.GameMaster; nstn.Owner = m; nstn.Name = m.Name + "'s Staff Stone"; nstn.StaffLevel = m.AccessLevel; nstn.LootType = LootType.Blessed; nstn.HomeLocation = m.Location; nstn.HomeMap = m.Map; if (m.Title != null) nstn.Title = m.Title; m.AddToBackpack(nstn); //m.BoltEffect( 0 ); } } if (SLevel == 5) { if (from.AccessLevel == AccessLevel.Lead) { from.SendMessage("You can Not Change someones accesslevel who is equal to yours!"); return; } else if (from.AccessLevel < AccessLevel.Lead) { from.SendMessage("You can Not Change someones accesslevel who is greater than yours!"); return; } else { from.SendMessage("You Changed someones accesslevel to a Lead!"); acc.AccessLevel = m.AccessLevel = AccessLevel.Lead; nstn.Owner = m; nstn.Name = m.Name + "'s Staff Stone"; nstn.StaffLevel = m.AccessLevel; nstn.LootType = LootType.Blessed; nstn.HomeLocation = m.Location; nstn.HomeMap = m.Map; if (m.Title != null) nstn.Title = m.Title; m.AddToBackpack(nstn); //m.BoltEffect( 0 ); } } if (SLevel == 6) { if (from.AccessLevel < AccessLevel.Administrator) { from.SendMessage("You can Not Change someones accesslevel who is greater than yours!"); return; } else { from.SendMessage("You Changed someones accesslevel to an Administrator!"); acc.AccessLevel = m.AccessLevel = AccessLevel.Administrator; nstn.Owner = m; nstn.Name = m.Name + "'s Staff Stone"; nstn.StaffLevel = m.AccessLevel; nstn.LootType = LootType.Blessed; nstn.HomeLocation = m.Location; nstn.HomeMap = m.Map; if (m.Title != null) nstn.Title = m.Title; m.AddToBackpack(nstn); //m.BoltEffect( 0 ); } } if (SLevel == 7) { if (from.AccessLevel < AccessLevel.Developer) { from.SendMessage("You can Not Change someones accesslevel who is greater than yours!"); return; } else { from.SendMessage("You Changed someones accesslevel to a Developer!"); acc.AccessLevel = m.AccessLevel = AccessLevel.Developer; nstn.Owner = m; nstn.Name = m.Name + "'s Staff Stone"; nstn.StaffLevel = m.AccessLevel; nstn.LootType = LootType.Blessed; nstn.HomeLocation = m.Location; nstn.HomeMap = m.Map; if (m.Title != null) nstn.Title = m.Title; m.AddToBackpack(nstn); //m.BoltEffect( 0 ); } } if (SLevel == 8) { if (from.AccessLevel < AccessLevel.Owner) { from.SendMessage("You can Not Change someones accesslevel who is greater than yours!"); return; } else { from.SendMessage("You Changed someones accesslevel to an Owner!"); acc.AccessLevel = m.AccessLevel = AccessLevel.Owner; nstn.Owner = m; nstn.Name = m.Name + "'s Staff Stone"; nstn.StaffLevel = m.AccessLevel; nstn.LootType = LootType.Blessed; nstn.HomeLocation = m.Location; nstn.HomeMap = m.Map; if (m.Title != null) nstn.Title = m.Title; m.AddToBackpack(nstn); //m.BoltEffect( 0 ); } } } else if (!m.Player) { from.SendMessage("This can only be used on Players!"); return; } } } }
public ToggleVisEntry(Mobile from, Item item) : base(0510) // uses "Toggle Vis" entry { m_Item = item as StaffTool; m_Mobile = from; }
public void DoDelete(StaffTool me) { if (deleting) { me.Say(String.Format("Oh what a cruel world we live in! They are purging me from the system!")); new DeleteTimer(me).Start(); } }
public SetTitleEntry(Mobile from, Item item) : base(0165) // uses "Title" entry { m_Item = (StaffTool)item; m_Mobile = from; }
public MenuEntry(Mobile from, Item item) : base(2132) // uses "Configure" entry { m_Item = item as StaffTool; m_Mobile = from; }
public SetHomeEntry(Mobile from, Item item) : base(2055) // uses "Mark" entry { m_Item = (StaffTool)item; m_Mobile = from; }
public GoHomeEntry(Mobile from, Item item) : base(5134) // uses "Goto Loc" entry { m_Item = (StaffTool)item; m_Mobile = from; }
// uses "Mark" entry public SetHomeEntry(Mobile from, Item item) : base(2055) { m_Item = (StaffTool)item; m_Mobile = from; }
// uses "Configure" entry public MenuEntry(Mobile from, Item item) : base(2132) { m_Item = item as StaffTool; m_Mobile = from; }
// uses "Goto Loc" entry public GoHomeEntry(Mobile from, Item item) : base(5134) { m_Item = (StaffTool)item; m_Mobile = from; }