コード例 #1
0
ファイル: PVPArena.cs プロジェクト: tflynt91/TrueUO
        public PVPArena(ArenaDefinition definition)
        {
            Definition = definition;

            PendingDuels = new Dictionary <ArenaDuel, DateTime>();
            BookedDuels  = new List <ArenaDuel>();
            Blockers     = new List <Item>();

            TeamRankings     = new List <ArenaStats>();
            SurvivalRankings = new List <ArenaStats>();
        }
コード例 #2
0
        private ArenaDefinition GetDefinition(string name)
        {
            ArenaDefinition def = ArenaDefinition.Definitions.FirstOrDefault(d => d.Name == name);

            if (def == null)
            {
                return(ArenaDefinition.Definitions[0]);
            }

            return(def);
        }
コード例 #3
0
        public void RemoveBlockedArena(ArenaDefinition def)
        {
            if (BlockedArenas == null)
            {
                return;
            }

            BlockedArenas.Remove(def.Name);

            if (Arenas == null || Arenas.Count == 0)
            {
                Timer.DelayCall(TimeSpan.FromSeconds(1), TimeSpan.FromSeconds(1), () => Instance.OnTick());
            }

            PVPArena arena = new PVPArena(def);

            Instance.Register(arena);
            Utility.WriteConsoleColor(ConsoleColor.Green, "Removing blocked EA PVP Arena: {0}", arena.Definition.Name);
            arena.ConfigureArena();
        }
コード例 #4
0
        private static bool CanInitialize(ArenaDefinition def)
        {
            bool all = true;

            if (Arenas != null)
            {
                for (var index = 0; index < Arenas.Count; index++)
                {
                    var arena = Arenas[index];

                    if (arena.Definition == def)
                    {
                        all = false;
                        break;
                    }
                }
            }

            return(!Instance.IsBlocked(def) && (Arenas == null || all));
        }
コード例 #5
0
        private ArenaDefinition GetDefinition(string name)
        {
            ArenaDefinition def = null;

            for (var index = 0; index < ArenaDefinition.Definitions.Length; index++)
            {
                var d = ArenaDefinition.Definitions[index];

                if (d.Name == name)
                {
                    def = d;
                    break;
                }
            }

            if (def == null)
            {
                return(ArenaDefinition.Definitions[0]);
            }

            return(def);
        }
コード例 #6
0
 private static bool CanInitialize(ArenaDefinition def)
 {
     return(!Instance.IsBlocked(def) && (Arenas == null || !Arenas.Any(arena => arena.Definition == def)));
 }
コード例 #7
0
 public bool IsBlocked(ArenaDefinition def)
 {
     return(BlockedArenas != null && BlockedArenas.Contains(def.Name));
 }
コード例 #8
0
        static ArenaDefinition()
        {
            LostLandsTrammel = new ArenaDefinition("Lostland (T)", 1,
                                                   new Point3D(6102, 3721, 25),
                                                   new Point3D(6097, 3730, 20),
                                                   new Point3D(6081, 3713, 26),
                                                   new Point3D(6087, 3713, 26),
                                                   17101,
                                                   17099,
                                                   new Rectangle2D[]
            {
                new Rectangle2D(6072, 3718, 24, 1),
                new Rectangle2D(6072, 3723, 24, 1),
                new Rectangle2D(6075, 3714, 1, 14),
                new Rectangle2D(6083, 3713, 1, 16),
                new Rectangle2D(6091, 3714, 1, 14),
            },
                                                   new Rectangle2D[]
            {
                new Rectangle2D(6071, 3719, 4, 3),
                new Rectangle2D(6092, 3719, 4, 3),
                new Rectangle2D(6077, 3713, 5, 4),
                new Rectangle2D(6084, 3713, 5, 4),
                new Rectangle2D(6076, 3724, 5, 4),
                new Rectangle2D(6084, 3724, 5, 4),
                new Rectangle2D(6073, 3716, 1, 1),
                new Rectangle2D(6073, 3724, 1, 1),
                new Rectangle2D(6091, 3714, 2, 2),
                new Rectangle2D(6091, 3724, 2, 2),
            },
                                                   new Point3D(6100, 3721, 25),
                                                   new Rectangle2D[]
            {
                new Rectangle2D(6070, 3713, 27, 16)
            },
                                                   new Rectangle2D[]
            {
                new Rectangle2D(6059, 3697, 53, 56)
            },
                                                   new Rectangle2D(6099, 3718, 5, 7),
                                                   new Rectangle2D(6097, 3729, 2, 2));

            LostLandsFelucca = new ArenaDefinition("Lostland (F)", 0,
                                                   new Point3D(6102, 3721, 25),
                                                   new Point3D(6097, 3730, 20),
                                                   new Point3D(6081, 3713, 26),
                                                   new Point3D(6087, 3713, 26),
                                                   17101,
                                                   17099,
                                                   new Rectangle2D[]
            {
                new Rectangle2D(6072, 3718, 24, 1),
                new Rectangle2D(6072, 3723, 24, 1),
                new Rectangle2D(6075, 3714, 1, 14),
                new Rectangle2D(6083, 3713, 1, 16),
                new Rectangle2D(6090, 3713, 1, 16),
            },
                                                   new Rectangle2D[]
            {
                new Rectangle2D(6071, 3719, 4, 3),
                new Rectangle2D(6092, 3719, 4, 3),
                new Rectangle2D(6077, 3713, 5, 4),
                new Rectangle2D(6084, 3713, 5, 4),
                new Rectangle2D(6076, 3724, 5, 4),
                new Rectangle2D(6084, 3724, 5, 4),
                new Rectangle2D(6073, 3716, 1, 1),
                new Rectangle2D(6073, 3724, 1, 1),
                new Rectangle2D(6091, 3714, 2, 2),
                new Rectangle2D(6091, 3724, 2, 2),
            },
                                                   new Point3D(6100, 3721, 25),
                                                   new Rectangle2D[]
            {
                new Rectangle2D(6070, 3713, 27, 16)
            },
                                                   new Rectangle2D[]
            {
                new Rectangle2D(6059, 3697, 53, 56)
            },
                                                   new Rectangle2D(6099, 3718, 5, 7),
                                                   new Rectangle2D(6097, 3729, 2, 2));

            HavenTrammel = new ArenaDefinition("New Haven (T)", 1,
                                               new Point3D(3793, 2770, 6),
                                               new Point3D(3790, 2783, 6),
                                               new Point3D(3760, 2769, 12),
                                               new Point3D(3783, 2761, 10),
                                               17102,
                                               17099,
                                               new Rectangle2D[]
            {
                new Rectangle2D(3760, 2766, 25, 1),
                new Rectangle2D(3760, 2772, 25, 1),
                new Rectangle2D(3765, 2761, 1, 16),
                new Rectangle2D(3772, 2761, 1, 16),
                new Rectangle2D(3780, 2761, 1, 16),
            },
                                               new Rectangle2D[]
            {
                new Rectangle2D(3760, 2767, 4, 4),
                new Rectangle2D(3781, 2767, 3, 4),
                new Rectangle2D(3766, 2761, 4, 4),
                new Rectangle2D(3773, 2761, 4, 4),
                new Rectangle2D(3766, 2773, 4, 4),
                new Rectangle2D(3773, 2773, 4, 4),
                new Rectangle2D(3760, 2761, 3, 3),
                new Rectangle2D(3781, 2761, 3, 3),
                new Rectangle2D(3781, 2773, 3, 3),
                new Rectangle2D(3760, 2773, 3, 3),
            },
                                               new Point3D(3792, 2768, 6),
                                               new Rectangle2D[]
            {
                new Rectangle2D(3760, 2761, 25, 16)
            },
                                               new Rectangle2D[]
            {
                new Rectangle2D(3740, 2747, 63, 51)
            },
                                               new Rectangle2D(3791, 2766, 4, 9),
                                               new Rectangle2D(3790, 2781, 2, 5));

            HavenFelucca = new ArenaDefinition("New Haven (F)", 0,
                                               new Point3D(3782, 2766, 5),
                                               new Point3D(3779, 2778, 5),
                                               new Point3D(3749, 2765, 12),
                                               new Point3D(3772, 2757, 10),
                                               17102,
                                               17099,
                                               new Rectangle2D[]
            {
                new Rectangle2D(3749, 2762, 25, 1),
                new Rectangle2D(3749, 2768, 25, 1),
                new Rectangle2D(3754, 2757, 1, 16),
                new Rectangle2D(3761, 2757, 1, 16),
                new Rectangle2D(3769, 2757, 1, 16),
            },
                                               new Rectangle2D[]
            {
                new Rectangle2D(3749, 2763, 4, 4),
                new Rectangle2D(3770, 2763, 3, 4),
                new Rectangle2D(3755, 2757, 4, 4),
                new Rectangle2D(3762, 2757, 4, 4),
                new Rectangle2D(3755, 2769, 4, 4),
                new Rectangle2D(3762, 2769, 4, 4),
                new Rectangle2D(3749, 2757, 3, 3),
                new Rectangle2D(3770, 2757, 3, 3),
                new Rectangle2D(3770, 2769, 3, 3),
                new Rectangle2D(3759, 2769, 3, 3),
            },
                                               new Point3D(3781, 2764, 5),
                                               new Rectangle2D[]
            {
                new Rectangle2D(3749, 2757, 25, 16)
            },
                                               new Rectangle2D[]
            {
                new Rectangle2D(3735, 2747, 68, 51)
            },
                                               new Rectangle2D(3780, 2763, 4, 9),
                                               new Rectangle2D(3779, 2776, 2, 5));

            _Definitions[0] = LostLandsTrammel;
            _Definitions[1] = LostLandsFelucca;
            _Definitions[2] = HavenTrammel;
            _Definitions[3] = HavenFelucca;
        }