Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="client"></param>
        /// <param name="optType"></param>
        /// <param name="optTag"></param>
        /// <param name="logRecordType"></param>
        /// <param name="args"></param>
        public static void AddRoleEvent(GameClient client, OpTypes optType, OpTags optTag, LogRecordType logRecordType, params object[] args)
        {
            try
            {
                if (!GameManager.FlagEnableOperatorEventLog)
                {
                    return;
                }

                string eventMsg = string.Format("{0}\t{1}\t{2}\t{3}\t{4}\t{5}\t{6}",
                                                (int)logRecordType,
                                                client.ServerId,
                                                client.ClientData.ZoneID,
                                                client.strUserID,
                                                client.ClientData.RoleID,
                                                (int)optType,
                                                (int)optTag
                                                );

                foreach (var arg in args)
                {
                    eventMsg += "\t" + arg;
                }

                SystemRoleEvents[(int)RoleEvent.OperatorEvent].AddEvent(eventMsg, EventLevels.Important);
            }
            catch (System.Exception ex)
            {
                LogManager.WriteLog(LogTypes.Exception, ex.ToString());
            }
        }
Example #2
0
        /// <summary>
        /// 添加货币、代币日志
        /// </summary>
        /// <param name="client">角色对象</param>
        /// <param name="optType">操作类型</param>
        /// <param name="optTag"></param>
        /// <param name="addValue">正负值</param>
        /// <param name="curValue">如果不知道,可以传-1</param>
        /// <param name="msg">附加消息</param>
        public static void AddMoneyEvent(GameClient client, OpTypes optType, OpTags optTag, MoneyTypes moneyType, long addValue, long curValue = -1, string msg = "none")
        {
            try
            {
                if (!GameManager.FlagEnableMoneyEventLog)
                {
                    return;
                }

                //不变化不记录
                if (optType == OpTypes.AddOrSub && addValue == 0)
                {
                    return;
                }

                //获取当前值
                if (curValue == -1)
                {
                    switch (moneyType)
                    {
                    case MoneyTypes.YuanBao:
                        curValue = client.ClientData.UserMoney;
                        break;

                    case MoneyTypes.YinLiang:
                        curValue = client.ClientData.YinLiang;
                        break;

                    case MoneyTypes.TongQian:
                        curValue = client.ClientData.Money1;
                        break;

                    case MoneyTypes.BindYuanBao:
                        curValue = client.ClientData.Money2;
                        break;

                    case MoneyTypes.BangGong:
                        curValue = client.ClientData.BangGong;
                        break;

                    case MoneyTypes.XingHun:
                        curValue = client.ClientData.StarSoul;
                        break;

                    case MoneyTypes.Exp:
                        curValue = client.ClientData.Experience;
                        break;
                    }
                }

                AddMoneyEvent(client.ServerId, client.ClientData.ZoneID, client.strUserID, client.ClientData.RoleID, optType, optTag, moneyType, addValue, curValue, msg);
            }
            catch (System.Exception ex)
            {
                LogManager.WriteLog(LogTypes.Exception, ex.ToString());
            }
        }
Example #3
0
        public static void AddGoodsEvent(GameClient client, OpTypes optType, OpTags optTag, int goodsId, long dbId, int addValue, int curValue, string msg)
        {
            try
            {
                //暂时不计变化量为0的日志(如整理背包产生的)
                if (addValue == 0)
                {
                    return;
                }

                if (!GameManager.FlagEnableGoodsEventLog)
                {
                    return;
                }

                if (!LogFilterConfig.LogGoodsIdLog(goodsId))
                {
                    return;
                }

                int    serverId = client.ServerId;
                string userID   = client.strUserID;
                long   roleId   = client.ClientData.RoleID;
                int    zoneId   = client.ClientData.ZoneID;

                string eventMsg = string.Format("{0}\t{1}\t{2}\t{3}\t{4}\t{5}\t{6}\t{7}\t{8}\t{9}\t{10}\t{11}",
                                                (int)LogRecordType.GoodsEvent,
                                                serverId,
                                                zoneId,
                                                userID,
                                                roleId,
                                                (int)optType,
                                                (int)optTag,
                                                goodsId,
                                                dbId,
                                                addValue,
                                                curValue,
                                                msg
                                                );

                SystemRoleEvents[(int)RoleEvent.GoodsEvent].AddEvent(eventMsg, EventLevels.Important);
            }
            catch (System.Exception ex)
            {
                LogManager.WriteLog(LogTypes.Exception, ex.ToString());
            }
        }
Example #4
0
        /// <summary>
        /// 添加货币、代币日志
        /// </summary>
        /// <param name="serverId"></param>
        /// <param name="userId"></param>
        /// <param name="roleId"></param>
        /// <param name="optType"></param>
        /// <param name="optTag"></param>
        /// <param name="addValue"></param>
        /// <param name="curValue"></param>
        /// <param name="msg"></param>
        public static void AddMoneyEvent(int serverId, int zoneId, string userId, long roleId, OpTypes optType, OpTags optTag, MoneyTypes moneyType, long addValue, long curValue, string msg)
        {
            try
            {
                if (!GameManager.FlagEnableMoneyEventLog)
                {
                    return;
                }

                if (!LogFilterConfig.LogMoneyTypeLog((int)moneyType))
                {
                    return;
                }

                if (zoneId == 0)
                {
                    zoneId = CacheManager.GetZoneIdByRoleId(roleId, serverId);
                }

                string eventMsg = string.Format("{0}\t{1}\t{2}\t{3}\t{4}\t{5}\t{6}\t{7}\t{8}\t{9}\t{10}",
                                                (int)LogRecordType.MoneyEvent,
                                                serverId,
                                                zoneId,
                                                userId,
                                                roleId,
                                                (int)moneyType,
                                                (int)optType,
                                                (int)optTag,
                                                addValue,
                                                curValue,
                                                msg
                                                );

                SystemRoleEvents[(int)RoleEvent.MoneyEvent].AddEvent(eventMsg, EventLevels.Important);
            }
            catch (System.Exception ex)
            {
                LogManager.WriteLog(LogTypes.Exception, ex.ToString());
            }
        }