예제 #1
0
        public bool Reborn(MsgInformationEx MsgDTO, object[] param)
        {
            var aimQQ = (long)param[0];

            var cache = AliveStateSvc.GetState(MsgDTO.FromGroup, aimQQ);

            if (cache == null)
            {
                MsgSender.PushMsg(MsgDTO, "该成员不需要复活!", true);
                return(false);
            }

            if (!WaiterSvc.WaitForConfirm_Gold(MsgDTO, 100))
            {
                MsgSender.PushMsg(MsgDTO, "操作取消!");
                return(false);
            }

            var osPerson = OSPerson.GetPerson(MsgDTO.FromQQ);

            osPerson.Golds -= 100;
            osPerson.Update();

            cache.RebornTime = DateTime.Now;
            AliveStateSvc.Cache(cache);

            MsgSender.PushMsg(MsgDTO, $"复活成功!你当前剩余金币:{osPerson.Golds}", true);
            return(true);
        }
예제 #2
0
        private void DoSkill(MsgInformationEx MsgDTO, long aimQQ, DateTime rebornTime, string skillName)
        {
            var cache = new AliveStateCache
            {
                QQNum      = aimQQ,
                GroupNum   = MsgDTO.FromGroup,
                Name       = skillName,
                RebornTime = rebornTime
            };

            AliveStateSvc.Cache(cache);

            MsgSender.PushMsg(MsgDTO, $"成功对 {CodeApi.Code_At(aimQQ)} 使用了 {skillName}!他将于 {rebornTime.ToString(CultureInfo.CurrentCulture)} 后复活!");
        }