Info_NewMap.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. <?php
  2. namespace loyalsoft;
  3. /**
  4. * Description of Info_NewMap
  5. * 玩家地图数据
  6. * @author gwang
  7. * @version
  8. * 2022.3.11 改版 据点 >> 大地图 >> 世界地图模式
  9. */
  10. class Info_NewMap extends Object_ext {
  11. /**
  12. * 当前所在据点id
  13. * @var type
  14. */
  15. public $curMapId;
  16. /**
  17. * 已解锁据点列表
  18. * @var dic< 据点id, Ins_FootHold >
  19. */
  20. public $unlockedFootholds;
  21. /**
  22. * 已经解锁的地图上的区域、npc、道具等等信息
  23. * @var type
  24. */
  25. public $unlockMapTypeList;
  26. /**
  27. * 回城券使用的传送阵记录
  28. * @var type
  29. */
  30. public $huichengquanRecord = null;
  31. /**
  32. * 当前地图所在区里面的回城券使用地的mapid
  33. * @var type
  34. */
  35. public $lastMapId = 0;
  36. /**
  37. * 当前据点id
  38. * @var type
  39. */
  40. public $curFootholdId = 0;
  41. function __construct($arg = null) {
  42. if (null === $arg) {
  43. // 直接初始化8个大陆的基本数据
  44. $initMapid = 503099; # 新手村的id
  45. $this->lastMapId = $initMapid;
  46. $this->curMapId = $initMapid; # 当前位置为新手村
  47. $this->curFootholdId = $initMapid; # 当前据点id
  48. $this->unlockedFootholds = ObjectInit();
  49. $gateZonemo = GameConfig::gate_zone_getItem(501007);
  50. if($gateZonemo!=null){
  51. $list = explode(',',$gateZonemo->contains);
  52. foreach ($list as $id) {
  53. $mo = GameConfig::gate_getItem($id);
  54. $footHold = new Ins_FootHold();
  55. $footHold->mapId = $mo->gateId;
  56. $footHold->curMapType = $mo->mapType;
  57. $this->unlockedFootholds->$id = $footHold;
  58. }
  59. }
  60. // $mo = GameConfig::gate_getItem($initMapid);
  61. // $footHold = new Ins_FootHold();
  62. // $footHold->mapId = $mo->gateId;
  63. // $footHold->curMapType = $mo->mapType;
  64. // $this->unlockedFootholds->$initMapid = $footHold; # 初始化解锁新手村据点数据
  65. #
  66. // 把2号据点也解锁
  67. // $initMapid = 503100; # 新手村的id
  68. // // $this->curMapId = $initMapid; # 当前位置为新手村
  69. // // $this->unlockedFootholds = ObjectInit();
  70. // $mo = GameConfig::gate_getItem($initMapid);
  71. // $footHold = new Ins_FootHold();
  72. // $footHold->mapId = $mo->gateId;
  73. // $footHold->curMapType = $mo->mapType;
  74. // $this->unlockedFootholds->$initMapid = $footHold; # 初始化解锁新手村据点数据
  75. //
  76. // $dixiachengId = 503001;
  77. // $mo = GameConfig::gate_getItem($dixiachengId);
  78. // $footHold = new Ins_FootHold();
  79. // $footHold->mapId = $mo->gateId;
  80. // $footHold->curMapType = $mo->mapType;
  81. // $this->unlockedFootholds->$dixiachengId = $footHold;
  82. //
  83. // $dixiachengId = 503002;
  84. // $mo = GameConfig::gate_getItem($dixiachengId);
  85. // $footHold = new Ins_FootHold();
  86. // $footHold->mapId = $mo->gateId;
  87. // $footHold->curMapType = $mo->mapType;
  88. // $this->unlockedFootholds->$dixiachengId = $footHold;
  89. $this->unlockMapTypeList = ObjectInit(); #初始化--已经解锁的地图上的区域、npc、道具等等信息
  90. $this->huichengquanRecord = ObjectInit(); #
  91. } else {
  92. parent::__construct($arg);
  93. }
  94. }
  95. }