public virtual void TeleportToSpawnPoint(PvPTeam team, PlayerMobile pm)
 {
     if (pm != null && !pm.Deleted && team != null && !team.Deleted && team.IsMember(pm))
     {
         Teleport(pm, team.SpawnPoint, Options.Locations.Map);
     }
 }
Example #2
0
        public bool UpdateStatistics(PvPTeam t, PlayerMobile pm, Action <PvPProfileHistoryEntry> update)
        {
            if (t == null || t.Deleted || pm == null || update == null)
            {
                return(false);
            }

            var s = t.GetStatistics(pm);

            if (s == null)
            {
                return(false);
            }

            var success = true;

            VitaNexCore.TryCatch(
                update,
                s,
                x =>
            {
                AutoPvP.CMOptions.ToConsole(x);
                success = false;
            });

            if (t.IsMember(pm))
            {
                t.UpdateActivity(pm);
            }

            return(success);
        }
Example #3
0
        public virtual void TeleportToSpawnPoint(PvPTeam team, PlayerMobile pm)
        {
            if (pm == null || pm.Deleted || team == null || team.Deleted || !team.IsMember(pm))
            {
                return;
            }

            var p = team.SpawnPoint;

            if (team.RespawnRangeMin > 0 && team.RespawnRangeMax > 0)
            {
                var i = 10;

                while (--i >= 0)
                {
                    p = team.SpawnPoint.GetRandomPoint3D(team.RespawnRangeMin, team.RespawnRangeMax);

                    if (Options.Locations.Map.CanSpawnMobile(p))
                    {
                        break;
                    }
                }

                if (i < 0)
                {
                    p = team.SpawnPoint;
                }
            }

            Teleport(pm, p, Options.Locations.Map);
        }
Example #4
0
        public virtual int GetAwardPoints(PvPTeam team, PlayerMobile pm)
        {
            if (!IsRunning || team == null || team.Deleted || (pm != null && !team.IsMember(pm)))
            {
                return(0);
            }

            return(PointsBase);
        }