FieldEvent.cs 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace YLBattle
  6. {
  7. /// <summary>
  8. /// 消息定义
  9. /// 消息不能被持有,处理完成后会自动回收
  10. /// </summary>
  11. public class FieldEvent
  12. {
  13. /// <summary>
  14. /// 事件序号
  15. /// </summary>
  16. public int id = 0;
  17. /// <summary>
  18. /// 发生时间
  19. /// </summary>
  20. public long ts = 0;
  21. /// <summary>
  22. /// 事件类型
  23. /// </summary>
  24. public EFieldEventType type = EFieldEventType.EFIELD_EVENT_NONE;
  25. /// <summary>
  26. /// 附加参数
  27. /// </summary>
  28. private Dictionary<string, string> values = new Dictionary<string, string>();
  29. /// <summary>
  30. /// 参数压入
  31. /// </summary>
  32. /// <param name="key">键</param>
  33. /// <param name="val">值</param>
  34. public void PutValue(string key, string val)
  35. {
  36. this.values.Add(key, val);
  37. }
  38. /// <summary>
  39. /// 获取指定参数
  40. /// </summary>
  41. /// <param name="key">键</param>
  42. /// <returns>失败string.empty</returns>
  43. public string GetValue(string key)
  44. {
  45. if (this.values.ContainsKey(key))
  46. {
  47. return this.values[key];
  48. }
  49. return string.Empty;
  50. }
  51. }
  52. }