Example #1
0
        public void Use(L2Player player, int reply)
        {
            if (player.ViewingAdminTeleportGroup == -1 || !_groups.ContainsKey(player.ViewingAdminTeleportGroup))
            {
                player.sendMessage("teleport group #" + player.ViewingAdminTeleportGroup + " was not found.");
                player.sendActionFailed();
                return;
            }

            ab_teleport_group gr = _groups[player.ViewingAdminTeleportGroup];
            ab_teleport_entry e  = gr._teles[reply];

            player.teleport(e.x, e.y, e.z);
        }
Example #2
0
        public void reload()
        {
            XElement xml = XElement.Parse(File.ReadAllText(@"scripts\admin\abteleport.xml"));
            XElement ex  = xml.Element("list");

            foreach (var m in ex.Elements())
            {
                if (m.Name == "group")
                {
                    ab_teleport_group ab = new ab_teleport_group();
                    ab.id    = int.Parse(m.Attribute("id").Value);
                    ab.str   = m.Attribute("str").Value;
                    ab.name  = m.Attribute("name").Value;
                    ab.level = int.Parse(m.Attribute("level").Value);

                    foreach (var e in m.Elements())
                    {
                        if (e.Name == "entry")
                        {
                            ab_teleport_entry ae = new ab_teleport_entry();
                            ae.name = e.Attribute("name").Value;
                            ae.x    = int.Parse(e.Attribute("x").Value);
                            ae.y    = int.Parse(e.Attribute("y").Value);
                            ae.z    = int.Parse(e.Attribute("z").Value);
                            ae.id   = ab._teles.Count;

                            ab._teles.Add(ae.id, ae);
                        }
                    }

                    _groups.Add(ab.id, ab);
                }
            }

            CLogger.info("AdminPlugin(Teleport): loaded " + _groups.Count + " groups.");
        }