2022-07-31 10:15:47 +08:00
|
|
|
|
|
2021-04-08 20:09:59 +08:00
|
|
|
|
using System;
|
|
|
|
|
using System.Numerics;
|
|
|
|
|
using MongoDB.Bson.Serialization;
|
|
|
|
|
|
|
|
|
|
#if SERVER
|
|
|
|
|
using Cal;
|
|
|
|
|
#endif
|
|
|
|
|
#if UNITY_EDITOR
|
|
|
|
|
using UnityEditor;
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
namespace ET
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Bson序列化反序列化辅助类
|
|
|
|
|
/// </summary>
|
|
|
|
|
#if UNITY_EDITOR
|
|
|
|
|
[InitializeOnLoad]
|
|
|
|
|
#endif
|
|
|
|
|
public static class BsonHelper
|
|
|
|
|
{
|
|
|
|
|
static BsonHelper()
|
|
|
|
|
{
|
|
|
|
|
Log.Info("执行了BsonHelper初始化");
|
|
|
|
|
RegisterStructSerializer();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 注册所有需要使用Bson序列化反序列化的结构体
|
|
|
|
|
/// </summary>
|
|
|
|
|
public static void RegisterStructSerializer()
|
|
|
|
|
{
|
|
|
|
|
#if UNITY
|
|
|
|
|
BsonSerializer.RegisterSerializer(typeof(UnityEngine.Vector2), new StructBsonSerialize<UnityEngine.Vector2>());
|
|
|
|
|
#endif
|
|
|
|
|
#if UNITY_EDITOR
|
|
|
|
|
#endif
|
|
|
|
|
#if SERVER
|
|
|
|
|
BsonSerializer.RegisterSerializer(typeof(Vector2), new StructBsonSerialize<Vector2>());
|
|
|
|
|
BsonSerializer.RegisterSerializer(typeof(ModifierId), new StructBsonSerialize<ModifierId>());
|
|
|
|
|
BsonSerializer.RegisterSerializer(typeof(CastParam), new StructBsonSerialize<CastParam>());
|
|
|
|
|
#endif
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 初始化BsonHelper
|
|
|
|
|
/// </summary>
|
|
|
|
|
public static void Init()
|
|
|
|
|
{
|
|
|
|
|
//调用这个是为了执行静态构造方法
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|