Пример #1
0
        public static void HandleData(GetDataEventArgs args, MemoryStream data, PvPPlayer player)
        {
            switch (args.MsgID)
            {
            case PacketTypes.PlayerHurtV2:
                if (new PlayerHurtArgs().ExtractData(args, data, player, out var playerhurt))
                {
                    PlayerHurt?.Invoke(typeof(DataHandler), playerhurt);
                }
                return;

            case PacketTypes.TogglePvp:
                if (new TogglePvPArgs().ExtractData(player, out var togglepvp))
                {
                    PvPToggled?.Invoke(typeof(DataHandler), togglepvp);
                }
                return;

            case PacketTypes.PlayerSlot:
                if (new PlayerSlotArgs().ExtractData(data, player, out var playerslot))
                {
                    SlotUpdate?.Invoke(typeof(DataHandler), playerslot);
                }
                return;

            case PacketTypes.PlayerDeathV2:
                if (new PlayerDeathArgs().ExtractData(player, out var playerdeath))
                {
                    PlayerDeath?.Invoke(typeof(DataHandler), playerdeath);
                }
                return;

            case PacketTypes.ProjectileNew:
                if (new ProjectileNewArgs().ExtractData(args, data, player, out var projectilenew))
                {
                    ProjectileNew?.Invoke(typeof(DataHandler), projectilenew);
                }
                return;

            case PacketTypes.ProjectileDestroy:
                if (new ProjectileDestroyArgs().ExtractData(data, out var projectiledestroy))
                {
                    ProjectileDestroyed?.Invoke(typeof(DataHandler), projectiledestroy);
                }
                return;

            case PacketTypes.PlayerUpdate:
                if (new PlayerUpdateArgs().ExtractData(data, player, out var playerupdate))
                {
                    PlayerUpdate?.Invoke(typeof(DataHandler), playerupdate);
                }
                return;
            }
        }
        // GET: TimeSlot/Update
        public ActionResult Edit(int id)
        {
            var service = CreateTimeSlotService();
            var detail  = service.GetTimeSlotById(id);
            var model   =
                new SlotUpdate
            {
                SlotId       = detail.SlotId,
                DayOfWeekNum = detail.DayOfWeekNum,
                Time         = detail.Time,
                MaxPerSlot   = detail.MaxPerSlot
            };

            ViewBag.DayOfWeekNum = BuildDayOfWeekDropdown(detail.DayOfWeekNum);

            return(View(model));
        }
        public ActionResult Edit(int id, SlotUpdate model)
        {
            if (!ModelState.IsValid)
            {
                ViewBag.DayOfWeekNum = BuildDayOfWeekDropdown(model.DayOfWeekNum);
                return(View(model));
            }

            if (TimeSpan.Compare(model.Time, TimeSpan.Zero) < 0 || TimeSpan.Compare(model.Time, new TimeSpan(23, 59, 59)) > 0)
            {
                ModelState.AddModelError("", "Please enter Time using a 24-hour clock in the format HH:MM");
                ViewBag.DayOfWeekNum = BuildDayOfWeekDropdown(model.DayOfWeekNum);
                return(View(model));
            }

            if (model.SlotId != id)
            {
                ModelState.AddModelError("", "Id Mismatch");
                ViewBag.DayOfWeekNum = BuildDayOfWeekDropdown(model.DayOfWeekNum);
                return(View(model));
            }

            var service = CreateTimeSlotService();

            int rtnId = service.GetTimeSlotByDayTime(model.DayOfWeekNum, model.Time).SlotId;

            if (rtnId != id && rtnId != 0)
            {
                ModelState.AddModelError("", "Attempt to change this Time Slot to an existing Time Slot. Please enter a different day or time");
                ViewBag.DayOfWeekNum = BuildDayOfWeekDropdown(model.DayOfWeekNum);
                return(View(model));
            }

            if (service.UpdateTimeSlot(model))
            {
                TempData["SaveResult"] = $"'{((DayOfWeek)model.DayOfWeekNum).ToString()} at {model.Time}' was updated.";
                return(RedirectToAction("Index"));
            }

            ModelState.AddModelError("", $"'{((DayOfWeek)model.DayOfWeekNum).ToString()} at {model.Time}' could not be updated.");
            ViewBag.DayOfWeekNum = BuildDayOfWeekDropdown(model.DayOfWeekNum);
            return(View(model));
        }
Пример #4
0
        public bool UpdateTimeSlot(SlotUpdate model)
        {
            using (var ctx = new ApplicationDbContext())
            {
                var entity =
                    ctx
                    .TimeSlots
                    .Single(e => e.SlotId == model.SlotId);
                entity.DayOfWeekNum = model.DayOfWeekNum;
                entity.Time         = model.Time;
                entity.MaxPerSlot   = model.MaxPerSlot;

                bool success = true;
                try { ctx.SaveChanges(); }
                catch { success = false; }

                return(success);
            }
        }