public Task ModifyForcedStats(Action <ModifyForcedStatContext> action = null)
        {
            var context = new ModifyForcedStatContext(ForcedStat);

            action?.Invoke(context);
            ValidateStat();

            if (!Socket.IsInstantiated)
            {
                return(Task.CompletedTask);
            }
            using (var p = new Packet(SendPacketOperations.ForcedStatSet))
            {
                context.Encode(p);
                return(SendPacket(p));
            }
        }
Exemple #2
0
        public async Task ModifyForcedStats(Action <IModifyForcedStatContext> action = null, bool exclRequest = false)
        {
            var context = new ModifyForcedStatContext(ForcedStats as ForcedStats);

            action?.Invoke(context);
            await UpdateStats();

            var statPacket = new UnstructuredOutgoingPacket(context.Flag > 0
                ? PacketSendOperations.ForcedStatSet
                : PacketSendOperations.ForcedStatReset);

            if (context.Flag > 0)
            {
                statPacket.Write(context);
            }

            await Dispatch(statPacket);
        }