GlobalData.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. //设备的连接模式
  5. public enum DeviceMode {
  6. //弓箭设备
  7. Archery,
  8. //枪械设备
  9. Gun
  10. }
  11. /** 全局游戏数据 */
  12. public class GlobalData
  13. {
  14. public static PKMatchType pkMatchType = PKMatchType.None;
  15. //本地双人PK,双方选择的角色ID
  16. public static int[] localPK_playerRoleIDs = new int[] {1, 2};
  17. public static string roomKey;
  18. public static int matchGameType;
  19. public static int playerIndexInRoom;
  20. public static List<MatchPlayerInfo> matchPlayerInfos;
  21. //单机游戏的gameType
  22. public static int singlePlayerGameType;
  23. //模式类型,区分设备
  24. public static DeviceMode MyDeviceMode { get; set; } = DeviceMode.Archery;// DeviceMode.Gun;
  25. }
  26. /**接收别人的PK邀请时,会设置GlobalData的数据,如果这时候主页存在层级页面,接收PK邀请但又突然要返回,
  27. 这时候层级页面设置过的GlobalData可能会被好友邀请修改过,因此主页用GlobalDataTemp存储可能会被干涉的数据,
  28. 在最后一步才把GlobalDataTemp数据赋值给GlobalData */
  29. public class GlobalDataTemp
  30. {
  31. public static PKMatchType pkMatchType = PKMatchType.None;
  32. public static int matchGameType;
  33. }
  34. public enum PKMatchType {
  35. None, //不是PK,就是单击单人
  36. LocalPK, //本地PK
  37. OnlinePK //联网PK4444
  38. }
  39. public class MatchPlayerInfo {
  40. public int playerID;
  41. public int avatarID;
  42. public string avatarUrl = "";
  43. public string nickname;
  44. public MatchPlayerInfo() {}
  45. public MatchPlayerInfo(int playerID, int avatarID, string avatarUrl, string nickname) {
  46. this.playerID = playerID;
  47. this.avatarID = avatarID;
  48. this.avatarUrl = avatarUrl;
  49. this.nickname = nickname;
  50. }
  51. }