XmdsManager.ice 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. // **********************************************************************
  2. //
  3. // Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved.
  4. //
  5. // **********************************************************************
  6. #pragma once
  7. module BattleIce
  8. {
  9. /**onFinishPickItem*/
  10. class FinishPickItem {
  11. string itemIcon;
  12. int quality;
  13. int num;
  14. string instanceId;
  15. int objectId;
  16. };
  17. /**getPlayerPKInfoData*/
  18. class PlayerPKInfoData {
  19. int pkMode;
  20. int pkValue;
  21. int pkLevel;
  22. };
  23. /**canTalkWithNpc*/
  24. class CanTalkWithNpc {
  25. int templateId;
  26. bool canTalk;
  27. };
  28. /**refreshPlayerPropertyChange*/
  29. class RefreshPlayerPropertyChange {
  30. string key;
  31. int changeType;
  32. int valueType;
  33. int value;
  34. int duration;
  35. long timestamp;
  36. };
  37. /**getPlayerData*/
  38. class SkillDataICE {
  39. int skillId;
  40. long skillTime;
  41. };
  42. sequence<SkillDataICE> SkillDataSeq;
  43. class GetPlayerData {
  44. float x;
  45. float y;
  46. float direction;
  47. int hp;
  48. int mp;
  49. int pkMode;
  50. int pkValue;
  51. int pkLevel;
  52. SkillDataSeq skillData;
  53. int combatState;
  54. };
  55. /**canTalkWithNpc*/
  56. class CanTalkWithNpcResult{
  57. int templateId;
  58. bool canTalk;
  59. };
  60. ["amd"] interface XmdsManager
  61. {
  62. //游戏服通知战斗服数据
  63. void notifyBattleServer(string instanceId, string name, string data);
  64. //获取场景副本实例静态数据
  65. string getZoneStaticData(string instanceId);
  66. //(异步) 获取场景副本中有效的刷新区域
  67. string getZoneRegions(string instanceId);
  68. // 获取跨场景出生坐标
  69. string getBornPlace(string instanceId, int areaId, string pointId);
  70. //(异步) 获取场景副本所有的单位信息
  71. string getAllUnitInfo(string instanceId);
  72. //获取场景副本所有的npc信息
  73. string getAllNpcInfo(string instanceId);
  74. //获取所有玩家UUID信息
  75. string getAllPlayerUUID();
  76. // 获取玩家数据
  77. string getPlayerData(string playerId,bool changeArea);
  78. // 怪物死亡掉落
  79. void onMonsterDiedDrops(string instanceId,string data);
  80. // 拾取道具 data{itemIcon, quality, num}
  81. //void onPickItem(string playerId,string data);
  82. // 帮助复活角色
  83. void helpRevivePlayer(string playerId, string revivePlayerId, int time);
  84. // 复活角色
  85. void revivePlayer(string playerId, string data);
  86. // 角色坐骑
  87. void refreshSummonMount(string playerId, int time, int isUp);
  88. // 玩家战斗信息同步
  89. void refreshPlayerBasicData(string playerId, string basic);
  90. // 玩家组队信息同步
  91. void refreshPlayerTeamData(string playerId, string uuidList);
  92. // 玩家背包剩余格子数量信息同步
  93. void refreshPlayerRemainBagCountData(string playerId, int remainCount);
  94. // 玩家背包剩余格子数量信息同步
  95. void refreshPlayerRemainTeamBagCountData(string playerId, int remainCount);
  96. // 玩家宠物基础信息变更
  97. void refreshPlayerPetBaseInfoChange(string playerId, string data);
  98. // 玩家宠物全部信息变更
  99. int refreshPlayerPetDataChange(string playerId, int type, string data);
  100. // 玩家战斗信息同步
  101. void refreshPlayerBattleEffect(string playerId, string effects);
  102. // 添加玩家属性
  103. void addPlayerAtt(string playerId, string notifyPlayerIds, string key, int value);
  104. // 玩家技能信息同步
  105. void refreshPlayerSkill(string playerId, int operateID , string skills);
  106. //技能
  107. void playerChangeSkill(string playerId, int oldSkillID, int newSkillID, string data);
  108. // 玩家时装信息同步
  109. void refreshPlayerAvatar(string playerId, string avatars);
  110. // 获取玩家PK信息
  111. string getPlayerPKInfoData(string playerId);
  112. // 获取玩家技能cd信息
  113. string getPlayerSkillCDTime(string playerId);
  114. // 获取玩家技能cd信息
  115. string canTalkWithNpc(string playerId, int npcId);
  116. // 角色关联属性变更
  117. void refreshPlayerPropertyChange(string playerId, string data);
  118. // 玩家pk模式同步,同createZoneRequest返回
  119. int refreshPlayerPKMode(string playerId, bool isLook, int mode);
  120. // 玩家pk值同步
  121. void refreshPlayerPKValue(string playerId, int value);
  122. // 玩家pk等级同步
  123. void refreshPlayerPKLevel(string playerId, int level);
  124. // 拾取道具 data{itemIcon, quality, num}
  125. void onFinishPickItem(string playerId, string data);
  126. // 宠物技能信息同步
  127. void refreshPlayerPetSkillChange(string playerId, int operateID , string skills);
  128. // 宠物加血判断
  129. bool canUseItem(string playerId);
  130. //玩家指定路点传送
  131. bool transferToPointPos(string instanceId, string playerId, string point, bool setDirection, float direction);
  132. // 宠物加血
  133. void refreshPlayerPetPropertyChange(string playerId, string data);
  134. // 获取玩家数据
  135. string getPlayerPetData(string playerId);
  136. // 触发特殊战斗事件
  137. void triggrBattleFunction(string playerId, int eventId, int value1, int valu2, int valu3, int valu4, int value5, int value6);
  138. // 往场景内种怪(Unit), 只创建一个怪物时,返回怪物ObjectId; 多个返回0;失败-1
  139. int addUnits(string instanceId, string data);
  140. // 切换宠物pk模式
  141. void refreshPlayerPetFollowModeChange(string playerId, int mode);
  142. // 玩家准备就绪
  143. void playerReady(string playerId);
  144. // 刷新队伍数据
  145. void refreshTeamData(string playerId, string data);
  146. // 设置自动战斗
  147. void autoBattle(string instanceId, string playerId, bool enable);
  148. // 获取玩家统计
  149. string getPlayerStatistic(string instanceId, string playerId, int flag);
  150. // 获取场景统计
  151. string getInstanceStatistic(string instanceId);
  152. //刷NPC(Item)
  153. int addUnit(string instanceId, int unitTemplateID, string data);
  154. //移除NPC(item), 固定unitId
  155. void removeUnit(string instanceId, int unitId);
  156. //移除单位,战斗服创建的unit
  157. void removePointUnit(string instanceId, int unitObjectId);
  158. //传送Unit到指定位置
  159. void transferUnit(string instanceId, int unitObjectId, float x, float y);
  160. //移除物品
  161. void removeItem(string instanceId, int itemId);
  162. //切换玩家状态, 14-传功,15-打坐
  163. //time锁定时间,秒
  164. void changePlayerState(string instanceId, string playerId, byte status, int time);
  165. //独立打坐功能,服务器处理
  166. void playerChuanGong(string instanceId, string playerIdA, string playerIdB);
  167. //山大王死亡,通知事件
  168. void mountainKingRefreshNotify(string instanceId, string data);
  169. };
  170. };