Files
TEngine/Assets/GameScripts/DotNet/Model/Generate/ClientServer/Config/StartSceneConfig.cs
ALEXTANG 336d4b2eb9 [+] 接入ET8服务端
[+] 接入ET8服务端
2023-07-13 12:23:48 +08:00

73 lines
1.9 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using MongoDB.Bson.Serialization.Attributes;
using MongoDB.Bson.Serialization.Options;
namespace ET
{
[Config]
public partial class StartSceneConfigCategory : ConfigSingleton<StartSceneConfigCategory>, IMerge
{
[BsonElement]
[BsonDictionaryOptions(DictionaryRepresentation.ArrayOfArrays)]
private Dictionary<int, StartSceneConfig> dict = new Dictionary<int, StartSceneConfig>();
public void Merge(object o)
{
StartSceneConfigCategory s = o as StartSceneConfigCategory;
foreach (var kv in s.dict)
{
this.dict.Add(kv.Key, kv.Value);
}
}
public StartSceneConfig Get(int id)
{
this.dict.TryGetValue(id, out StartSceneConfig item);
if (item == null)
{
throw new Exception($"配置找不到,配置表名: {nameof (StartSceneConfig)}配置id: {id}");
}
return item;
}
public bool Contain(int id)
{
return this.dict.ContainsKey(id);
}
public Dictionary<int, StartSceneConfig> GetAll()
{
return this.dict;
}
public StartSceneConfig GetOne()
{
if (this.dict == null || this.dict.Count <= 0)
{
return null;
}
return this.dict.Values.GetEnumerator().Current;
}
}
public partial class StartSceneConfig: ProtoObject, IConfig
{
/// <summary>Id</summary>
public int Id { get; set; }
/// <summary>所属进程</summary>
public int Process { get; set; }
/// <summary>所属区</summary>
public int Zone { get; set; }
/// <summary>类型</summary>
public string SceneType { get; set; }
/// <summary>名字</summary>
public string Name { get; set; }
/// <summary>外网端口</summary>
public int Port { get; set; }
}
}