MergeGameComponent.cs 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. using System.Collections.Generic;
  2. using MongoDB.Bson.Serialization.Attributes;
  3. using MongoDB.Bson.Serialization.Options;
  4. namespace ET
  5. {
  6. /// <summary>
  7. /// 合成小游戏组件
  8. /// </summary>
  9. public class MergeGameComponent : Entity, IAwake, IDestroy, ITransfer, IUnitCache, IConfigHotLoad
  10. {
  11. public string StrId;
  12. //游戏子类型当前处于的关卡id (合成小游戏子类型, 所处于的关卡id)
  13. [BsonDictionaryOptions(DictionaryRepresentation.ArrayOfArrays)]
  14. public Dictionary<int, int> SubCurLevelDic = new Dictionary<int, int>();
  15. //已经通关的关卡id列表 (子类型-关卡id, 是否通关0未通 1已通)
  16. [BsonDictionaryOptions(DictionaryRepresentation.ArrayOfArrays)]
  17. public Dictionary<string, int> PassLevelDic = new Dictionary<string, int>();
  18. //展示区 (子类型,材料id-材料id-材料id-...)-----位置上没有材料就用0填充
  19. [BsonDictionaryOptions(DictionaryRepresentation.ArrayOfArrays)]
  20. public Dictionary<int, string> ShowLatticeDic = new Dictionary<int, string>();
  21. //为new的材料ids, 用来处理合成路线new样式.(子类型, 材料id-材料id-...)
  22. [BsonDictionaryOptions(DictionaryRepresentation.ArrayOfArrays)]
  23. public Dictionary<int, string> NewItemDic = new Dictionary<int, string>();
  24. //获得过的材料id,永远记录 (子类型, 材料id-材料id-...)
  25. [BsonDictionaryOptions(DictionaryRepresentation.ArrayOfArrays)]
  26. public Dictionary<int, string> ObtainedItemDic = new Dictionary<int, string>();
  27. //临时背包
  28. [BsonIgnore] public Dictionary<int, int> TempBag = new Dictionary<int, int>();
  29. [BsonIgnore] public List<int> TempObtainedBag = new List<int>();
  30. [BsonIgnore] public List<int> TempNewBag = new List<int>();
  31. [BsonIgnore] public List<int> TempShowListBag = new List<int>();
  32. }
  33. /// <summary>
  34. /// 购买材料的类型
  35. /// </summary>
  36. public enum ExchangeTypeEnum
  37. {
  38. /// <summary>
  39. /// 1.左边的豆包
  40. /// </summary>
  41. LeftDouBao = 1,
  42. /// <summary>
  43. /// 2.右边的阿福
  44. /// </summary>
  45. RightAfu = 2
  46. }
  47. /// <summary>
  48. /// PassLevelDic的val值,也是通关状态
  49. /// </summary>
  50. public enum PassLevelValStatusEnum
  51. {
  52. /// <summary>
  53. /// 未通过
  54. /// </summary>
  55. NoPass = 0,
  56. /// <summary>
  57. /// 已通过
  58. /// </summary>
  59. Pass = 1
  60. }
  61. }