npcHelper.ts 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. import { AssetsHelper } from "../framework/asset/AssetsHelper";
  2. import JsonManager from "../framework/json/JsonManager";
  3. import Utils from "../framework/utils/utils";
  4. import buffDtManager from "./buffDtManager";
  5. import itemDtManager from "./itemDtManager";
  6. import modelDtlManager from "./modelDtlManager";
  7. import npcDtManager from "./npcDtManager";
  8. const { ccclass, property } = cc._decorator;
  9. @ccclass
  10. class npcHelper {
  11. //获取模型属性 id:角色ID
  12. public getModelAttrByID(id: number) {
  13. let modelDt = modelDtlManager.getDataByID(id);
  14. if (modelDt) {
  15. return modelDt;
  16. }
  17. return undefined
  18. }
  19. //获取物品 id:角色ID
  20. public getItemByID(id: number) {
  21. let npcDt = npcDtManager.getDataByID(id);
  22. let itemId = npcDt.itemId;
  23. if (itemId == 0) {
  24. return undefined
  25. }
  26. let ItemlDt = itemDtManager.getDataByID(itemId)
  27. if (ItemlDt) {
  28. return ItemlDt;
  29. }
  30. return undefined
  31. }
  32. //获取远程武器物品 id:角色ID
  33. public getRemoteItemByID(id: number) {
  34. let npcDt = npcDtManager.getDataByID(id);
  35. let itemId = npcDt.remoteItemID;
  36. if (itemId == 0) {
  37. return undefined
  38. }
  39. let ItemlDt = itemDtManager.getDataByID(itemId)
  40. if (ItemlDt) {
  41. return ItemlDt;
  42. }
  43. return undefined
  44. }
  45. //获取Buff id:角色ID
  46. public getBuffByID(id: number) {
  47. let npcDt = npcDtManager.getDataByID(id);
  48. let buffId = npcDt.buffID;
  49. let ItemlDt = buffDtManager.getDataByID(buffId)
  50. if (ItemlDt) {
  51. return ItemlDt;
  52. }
  53. return undefined
  54. }
  55. /**获取随机普通玩家角色id */
  56. public getRandomComPlayerId() {
  57. return Utils.random(1, 10);
  58. }
  59. /**
  60. * 获取特殊玩家ID
  61. */
  62. public getRandomSpecialPlayerID() {
  63. return Utils.random(11, 21);
  64. }
  65. //根据id判断是否是英雄
  66. public isHero(viewID) {
  67. if (viewID >= 49 && viewID <= 52) {
  68. return true
  69. }
  70. return false;
  71. }
  72. /**获取随机普通僵尸角色id */
  73. public getRandomZombieId() {
  74. return Utils.random(43, 45);
  75. }
  76. /**获取随机高级僵尸角色id */
  77. public getRandomSeniorZombieId() {
  78. return Utils.random(46, 48);
  79. }
  80. /**获取对应角色生成的僵尸id */
  81. public getZombieIdByPlayerId(player_id: number) {
  82. return player_id + 21;
  83. }
  84. /**随机获取bossID
  85. */
  86. public getRandomBossId() {
  87. return Utils.random(53, 56);
  88. }
  89. //根据id判断是否是boss
  90. public isBoss(viewID) {
  91. if (viewID >= 53 && viewID <= 56) {
  92. return true
  93. }
  94. return false;
  95. }
  96. //根据id判断是否是高级僵尸
  97. public isSeniorZombie(viewID) {
  98. if (viewID >= 46 && viewID <= 48) {
  99. return true
  100. }
  101. return false;
  102. }
  103. //根据id判断是否是普通僵尸
  104. public isComZombie(viewID) {
  105. if (viewID <= 45) {
  106. return true
  107. }
  108. return false;
  109. }
  110. }
  111. export default new npcHelper()