55 lines
1.3 KiB
C#
55 lines
1.3 KiB
C#
|
using System.Collections;
|
|||
|
using System.Collections.Generic;
|
|||
|
using Thousandto.Code.Logic.Network;
|
|||
|
using UnityEngine;
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 消息拓展类
|
|||
|
/// </summary>
|
|||
|
public class MsgExtend
|
|||
|
{
|
|||
|
static MsgExtend _sharedInstance = null;
|
|||
|
|
|||
|
public static MsgExtend Instance
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return SharedInstance;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
public static MsgExtend SharedInstance
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
if (_sharedInstance == null)
|
|||
|
{
|
|||
|
_sharedInstance = new MsgExtend();
|
|||
|
}
|
|||
|
return _sharedInstance;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//lua消息ID表
|
|||
|
public HashSet<uint> ResLuaMsgIDMap = new HashSet<uint>();
|
|||
|
public HashSet<uint> ResLuaExtendMsgIDMap = new HashSet<uint>();
|
|||
|
private HashSet<uint> ResCSMsgIDMap = new HashSet<uint>();
|
|||
|
private bool isInitMsg = false;
|
|||
|
|
|||
|
//这个消息是否走lua端
|
|||
|
public bool IsGoLuaMsg(uint msgId)
|
|||
|
{
|
|||
|
if (!isInitMsg)
|
|||
|
{
|
|||
|
isInitMsg = true;
|
|||
|
}
|
|||
|
return !ResCSMsgIDMap.Contains(msgId) && (ResLuaMsgIDMap.Contains(msgId) || msgId >= 500000);
|
|||
|
}
|
|||
|
|
|||
|
//这个消息是否是lua扩展消息,lua和C#同时处理
|
|||
|
public bool IsGoLuaExtendMsg(uint msgId)
|
|||
|
{
|
|||
|
return ResLuaExtendMsgIDMap.Contains(msgId);
|
|||
|
}
|
|||
|
}
|