Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- define([], function() {
- var a = 2007210801,
- b = FF.ns.battle,
- c = b.ai.stateSnippet.HpRateTransition,
- d = "1",
- e = "2",
- f = "3",
- g = "4",
- h = "5",
- i = "6",
- j = "7",
- k = "8",
- l = "9",
- m = "01",
- n = "deformation_01",
- o = "deformation_02",
- p = "deformation_03",
- q = "deformation_04",
- r = "deformation_05",
- s = "deformation_06",
- t = "deformation_07",
- u = "vortex",
- v = "suction",
- w = "suction_damage",
- x = "soul_steal",
- y = "soul_steal_damage",
- z = {
- useVortexFlg: !1
- },
- A = function(a, b, c) {
- return {
- _deformTag: c,
- paramSuffixNo: a,
- hpRateAiArg: b
- }
- },
- B = [{
- paramSuffixNo: d
- }, 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), {
- _isFinalPhase: !0,
- paramSuffixNo: k,
- hpRateAiArg: "hp_rate_to_phase_8"
- }, {
- _isFinalAbyssGatePhase: !0,
- paramSuffixNo: l,
- hpRate: -1,
- multipleAttackCnt: 2,
- interruptAbilityConfs: [{
- abilityId: b.Conf.ABILITY_ID_OF.DEFORM_MULTI,
- abilityOptions: {
- sequence: [
- [{
- deformTag: t
- }],
- [{
- messageSuffixNo: m
- }],
- [{
- builtin: "SET_SA",
- sa: b.Conf.STATUS_AILMENTS_TYPE.REGEN
- }]
- ]
- }
- }]
- }],
- C = function(a, c, d, e) {
- e ? a.registerInterruptAbility(b.Conf.ABILITY_ID_OF.BUILTIN_ENEMY_MULTIPLE_ABILITY, {
- multipleAbilitySettings: d
- }) : b.ai.AiUtil.registerMultipleAbiityWithCastTime(a, c, d)
- },
- D = function(a, c) {
- var d = a.getAbilityIdByTag(x);
- C(a, d, [{
- abilityId: a.getAbilityIdByTag(x)
- }, {
- abilityId: a.getAbilityIdByTag(y),
- abilityOptions: b.ai.AiUtil.makeAbilityOptionsForSubEffect(),
- conditions: {
- targetType: b.Conf.ENEMY_BUILTIN_MULTIPLE_TARGET_TYPE.SAME_CAN_HIT
- }
- }], c)
- },
- E = function(a, c) {
- var d = a.getAbilityIdByTag(v);
- C(a, d, [{
- abilityId: a.getAbilityIdByTag(v)
- }, {
- abilityId: a.getAbilityIdByTag(w),
- abilityOptions: b.ai.AiUtil.makeAbilityOptionsForSubEffect(),
- conditions: {
- targetType: b.Conf.ENEMY_BUILTIN_MULTIPLE_TARGET_TYPE.SAME_CAN_HIT
- }
- }], c)
- },
- F = {
- _isFinalBattlePhase: function(a) {
- var b = a.parent.globalRegister,
- c = b.conf.battlePhaseConfs;
- return c[b.currBattlePhaseIdx]._isFinalPhase
- },
- getInterruptAbilityConfsForChangeParam: function(a, d) {
- var e = a.parent.globalRegister,
- f = e.conf.battlePhaseConfs,
- g = e.currBattlePhaseIdx;
- if (!f[d]._isFinalAbyssGatePhase) {
- for (var h = [], i = g + 1; d >= i; i++) {
- var j = f[i]._deformTag;
- j && h.push([{
- deformTag: j
- }])
- }
- return [{
- abilityId: b.Conf.ABILITY_ID_OF.DEFORM_MULTI,
- abilityOptions: {
- sequence: h
- }
- }]
- }
- return c.helper.getInterruptAbilityConfsForChangeParam(a, d)
- },
- updateEveryFrame: function(a) {
- var b = a.parent.globalRegister,
- d = a._executer;
- if (!b.useVortexFlg && this._isFinalBattlePhase(a) && this.countupSnippet().check(a)) {
- var e = d.getLastAbility(),
- f = e ? e.get("abilityId") : null;
- f === d.getAbilityIdByTag(u) && (b.useVortexFlg = !0)
- }
- c.helper.updateEveryFrame(a)
- },
- getNextBattlePhaseIndex: function(a) {
- var b = a.parent.globalRegister;
- return this._isFinalBattlePhase(a) && b.useVortexFlg ? this.getCurrBattlePhaseIdx(a) + 1 : c.helper.getNextBattlePhaseIndex(a)
- },
- getAbilityWithoutListForLot: function(a) {
- return this._isFinalBattlePhase(a) ? [] : c.helper.getAbilityWithoutListForLot(a)
- },
- registerAbility: function(a) {
- var b = a._executer,
- c = b.lotAbility();
- c === b.getAbilityIdByTag(x) ? D(b, !1) : c === b.getAbilityIdByTag(v) ? E(b, !1) : b.registerAbility(c)
- },
- multipleAttack: function(a) {
- var b = a._executer,
- c = a.parent.globalRegister,
- d = c.conf.battlePhaseConfs,
- e = d[c.currBattlePhaseIdx],
- f = b.getWithoutAbilityList({
- forceIgnoresReflection: !1
- });
- _.times(e.multipleAttackCnt - 1, function() {
- var a = b.lotAbilityWithout(f);
- a === b.getAbilityIdByTag(x) ? D(b, !0) : a === b.getAbilityIdByTag(v) ? E(b, !0) : b.registerInterruptAbility(a)
- })
- }
- },
- G = {
- initGlobalRegister: z,
- battlePhaseConfs: B,
- helper: F
- };
- FF.ns.battle.ai.conf[a] = c.makeJson(G)
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement