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

71 lines
1.8 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 UnitConfigCategory : ConfigSingleton<UnitConfigCategory>, IMerge
{
[BsonElement]
[BsonDictionaryOptions(DictionaryRepresentation.ArrayOfArrays)]
private Dictionary<int, UnitConfig> dict = new Dictionary<int, UnitConfig>();
public void Merge(object o)
{
UnitConfigCategory s = o as UnitConfigCategory;
foreach (var kv in s.dict)
{
this.dict.Add(kv.Key, kv.Value);
}
}
public UnitConfig Get(int id)
{
this.dict.TryGetValue(id, out UnitConfig item);
if (item == null)
{
throw new Exception($"配置找不到,配置表名: {nameof (UnitConfig)}配置id: {id}");
}
return item;
}
public bool Contain(int id)
{
return this.dict.ContainsKey(id);
}
public Dictionary<int, UnitConfig> GetAll()
{
return this.dict;
}
public UnitConfig GetOne()
{
if (this.dict == null || this.dict.Count <= 0)
{
return null;
}
return this.dict.Values.GetEnumerator().Current;
}
}
public partial class UnitConfig: ProtoObject, IConfig
{
/// <summary>Id</summary>
public int Id { get; set; }
/// <summary>Type</summary>
public int Type { get; set; }
/// <summary>名字</summary>
public string Name { get; set; }
/// <summary>位置</summary>
public int Position { get; set; }
/// <summary>身高</summary>
public int Height { get; set; }
}
}