Advertisement
Guest User

saga ultimate

a guest
May 26th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.20 KB | None | 0 0
  1. define([], function() {
  2. var a = 2007210801,
  3. b = FF.ns.battle,
  4. c = b.ai.stateSnippet.HpRateTransition,
  5. d = "1",
  6. e = "2",
  7. f = "3",
  8. g = "4",
  9. h = "5",
  10. i = "6",
  11. j = "7",
  12. k = "8",
  13. l = "9",
  14. m = "01",
  15. n = "deformation_01",
  16. o = "deformation_02",
  17. p = "deformation_03",
  18. q = "deformation_04",
  19. r = "deformation_05",
  20. s = "deformation_06",
  21. t = "deformation_07",
  22. u = "vortex",
  23. v = "suction",
  24. w = "suction_damage",
  25. x = "soul_steal",
  26. y = "soul_steal_damage",
  27. z = {
  28. useVortexFlg: !1
  29. },
  30. A = function(a, b, c) {
  31. return {
  32. _deformTag: c,
  33. paramSuffixNo: a,
  34. hpRateAiArg: b
  35. }
  36. },
  37. B = [{
  38. paramSuffixNo: d
  39. }, A(e, "hp_rate_to_phase_2", n), A(f, "hp_rate_to_phase_3", o), A(g, "hp_rate_to_phase_4", p), A(h, "hp_rate_to_phase_5", q), A(i, "hp_rate_to_phase_6", r), A(j, "hp_rate_to_phase_7", s), {
  40. _isFinalPhase: !0,
  41. paramSuffixNo: k,
  42. hpRateAiArg: "hp_rate_to_phase_8"
  43. }, {
  44. _isFinalAbyssGatePhase: !0,
  45. paramSuffixNo: l,
  46. hpRate: -1,
  47. multipleAttackCnt: 2,
  48. interruptAbilityConfs: [{
  49. abilityId: b.Conf.ABILITY_ID_OF.DEFORM_MULTI,
  50. abilityOptions: {
  51. sequence: [
  52. [{
  53. deformTag: t
  54. }],
  55. [{
  56. messageSuffixNo: m
  57. }],
  58. [{
  59. builtin: "SET_SA",
  60. sa: b.Conf.STATUS_AILMENTS_TYPE.REGEN
  61. }]
  62. ]
  63. }
  64. }]
  65. }],
  66. C = function(a, c, d, e) {
  67. e ? a.registerInterruptAbility(b.Conf.ABILITY_ID_OF.BUILTIN_ENEMY_MULTIPLE_ABILITY, {
  68. multipleAbilitySettings: d
  69. }) : b.ai.AiUtil.registerMultipleAbiityWithCastTime(a, c, d)
  70. },
  71. D = function(a, c) {
  72. var d = a.getAbilityIdByTag(x);
  73. C(a, d, [{
  74. abilityId: a.getAbilityIdByTag(x)
  75. }, {
  76. abilityId: a.getAbilityIdByTag(y),
  77. abilityOptions: b.ai.AiUtil.makeAbilityOptionsForSubEffect(),
  78. conditions: {
  79. targetType: b.Conf.ENEMY_BUILTIN_MULTIPLE_TARGET_TYPE.SAME_CAN_HIT
  80. }
  81. }], c)
  82. },
  83. E = function(a, c) {
  84. var d = a.getAbilityIdByTag(v);
  85. C(a, d, [{
  86. abilityId: a.getAbilityIdByTag(v)
  87. }, {
  88. abilityId: a.getAbilityIdByTag(w),
  89. abilityOptions: b.ai.AiUtil.makeAbilityOptionsForSubEffect(),
  90. conditions: {
  91. targetType: b.Conf.ENEMY_BUILTIN_MULTIPLE_TARGET_TYPE.SAME_CAN_HIT
  92. }
  93. }], c)
  94. },
  95. F = {
  96. _isFinalBattlePhase: function(a) {
  97. var b = a.parent.globalRegister,
  98. c = b.conf.battlePhaseConfs;
  99. return c[b.currBattlePhaseIdx]._isFinalPhase
  100. },
  101. getInterruptAbilityConfsForChangeParam: function(a, d) {
  102. var e = a.parent.globalRegister,
  103. f = e.conf.battlePhaseConfs,
  104. g = e.currBattlePhaseIdx;
  105. if (!f[d]._isFinalAbyssGatePhase) {
  106. for (var h = [], i = g + 1; d >= i; i++) {
  107. var j = f[i]._deformTag;
  108. j && h.push([{
  109. deformTag: j
  110. }])
  111. }
  112. return [{
  113. abilityId: b.Conf.ABILITY_ID_OF.DEFORM_MULTI,
  114. abilityOptions: {
  115. sequence: h
  116. }
  117. }]
  118. }
  119. return c.helper.getInterruptAbilityConfsForChangeParam(a, d)
  120. },
  121. updateEveryFrame: function(a) {
  122. var b = a.parent.globalRegister,
  123. d = a._executer;
  124. if (!b.useVortexFlg && this._isFinalBattlePhase(a) && this.countupSnippet().check(a)) {
  125. var e = d.getLastAbility(),
  126. f = e ? e.get("abilityId") : null;
  127. f === d.getAbilityIdByTag(u) && (b.useVortexFlg = !0)
  128. }
  129. c.helper.updateEveryFrame(a)
  130. },
  131. getNextBattlePhaseIndex: function(a) {
  132. var b = a.parent.globalRegister;
  133. return this._isFinalBattlePhase(a) && b.useVortexFlg ? this.getCurrBattlePhaseIdx(a) + 1 : c.helper.getNextBattlePhaseIndex(a)
  134. },
  135. getAbilityWithoutListForLot: function(a) {
  136. return this._isFinalBattlePhase(a) ? [] : c.helper.getAbilityWithoutListForLot(a)
  137. },
  138. registerAbility: function(a) {
  139. var b = a._executer,
  140. c = b.lotAbility();
  141. c === b.getAbilityIdByTag(x) ? D(b, !1) : c === b.getAbilityIdByTag(v) ? E(b, !1) : b.registerAbility(c)
  142. },
  143. multipleAttack: function(a) {
  144. var b = a._executer,
  145. c = a.parent.globalRegister,
  146. d = c.conf.battlePhaseConfs,
  147. e = d[c.currBattlePhaseIdx],
  148. f = b.getWithoutAbilityList({
  149. forceIgnoresReflection: !1
  150. });
  151. _.times(e.multipleAttackCnt - 1, function() {
  152. var a = b.lotAbilityWithout(f);
  153. a === b.getAbilityIdByTag(x) ? D(b, !0) : a === b.getAbilityIdByTag(v) ? E(b, !0) : b.registerInterruptAbility(a)
  154. })
  155. }
  156. },
  157. G = {
  158. initGlobalRegister: z,
  159. battlePhaseConfs: B,
  160. helper: F
  161. };
  162. FF.ns.battle.ai.conf[a] = c.makeJson(G)
  163. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement