Skip to content
This repository was archived by the owner on Dec 4, 2020. It is now read-only.

Commit 67fe2a5

Browse files
authored
Merge pull request #938 from tankfest/trial-prime-balancing
Fixes trial fight avatars to use their astral flow only once per fight
2 parents 3af913c + 06d5394 commit 67fe2a5

File tree

15 files changed

+174
-72
lines changed

15 files changed

+174
-72
lines changed

scripts/zones/Cloister_of_Flames/mobs/Ifrit_Prime.lua renamed to scripts/zones/Cloister_of_Flames/mobs/Ifrit_Prime_ASA.lua

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
-----------------------------------
22
-- Area: Cloister of Flames
33
-- Mob: Ifrit Prime
4-
-- Involved in Quest: Trial by Fire, Trial Size Trial by Fire
54
-- Involved in Mission: ASA-4 Sugar Coated Directive
65
-----------------------------------
76
require("scripts/globals/settings")
@@ -11,15 +10,13 @@ require("scripts/globals/status")
1110

1211
function onMobSpawn(mob)
1312
-- ASA-4: Avatar is Unkillable Until Its Used Astral Flow At Least 5 times At Specified Intervals
14-
if mob:getBattlefieldID() == 547 then
15-
mob:setLocalVar("astralflows", 0)
16-
mob:setUnkillable(true)
17-
end
13+
mob:setLocalVar("astralflows", 0)
14+
mob:setUnkillable(true)
1815
end
1916

2017
function onMobFight(mob, target)
2118
-- ASA-4: Astral Flow Behavior - Guaranteed to Use At Least 5 times before killable, at specified intervals.
22-
if mob:getBattlefieldID() == 547 and mob:getCurrentAction() == tpz.act.ATTACK then
19+
if mob:getCurrentAction() == tpz.act.ATTACK then
2320
local astralFlows = mob:getLocalVar("astralflows")
2421
if (astralFlows == 0 and mob:getHPP() <= 80)
2522
or (astralFlows == 1 and mob:getHPP() <= 60)
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
-----------------------------------
2+
-- Area: Cloister of Flames
3+
-- Mob: Ifrit Prime
4+
-- Involved in Quest: Trial by Fire, Trial Size Trial by Fire
5+
-----------------------------------
6+
mixins = {require("scripts/mixins/job_special")}
7+
-----------------------------------
8+
9+
function onMobSpawn(mob)
10+
tpz.mix.jobSpecial.config(mob, {
11+
specials =
12+
{
13+
{id = 848, hpp = math.random(30,55)}, -- uses Inferno once while near 50% HPP.
14+
},
15+
})
16+
end
17+
18+
function onMobFight(mob, target)
19+
end
20+
21+
function onMobDeath(mob, player, isKiller)
22+
end

scripts/zones/Cloister_of_Frost/mobs/Shiva_Prime.lua renamed to scripts/zones/Cloister_of_Frost/mobs/Shiva_Prime_ASA.lua

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
-----------------------------------
22
-- Area: Cloister of Frost
33
-- Mob: Shiva Prime
4-
-- Involved in Quest: Trial by Ice, Trial Size Trial by Ice
54
-- Involved in Mission: ASA-4 Sugar Coated Directive
65
-----------------------------------
76
require("scripts/globals/keyitems")
@@ -11,15 +10,13 @@ require("scripts/globals/status")
1110

1211
function onMobSpawn(mob)
1312
-- ASA-4: Avatar is Unkillable Until Its Used Astral Flow At Least 5 times At Specified Intervals
14-
if mob:getBattlefieldID() == 484 then
15-
mob:setLocalVar("astralflows", 0)
16-
mob:setUnkillable(true)
17-
end
13+
mob:setLocalVar("astralflows", 0)
14+
mob:setUnkillable(true)
1815
end
1916

2017
function onMobFight(mob, target)
2118
-- ASA-4: Astral Flow Behavior - Guaranteed to Use At Least 5 times before killable, at specified intervals.
22-
if mob:getBattlefieldID() == 484 and mob:getCurrentAction() == tpz.act.ATTACK then
19+
if mob:getCurrentAction() == tpz.act.ATTACK then
2320
local astralFlows = mob:getLocalVar("astralflows")
2421
if (astralFlows == 0 and mob:getHPP() <= 80)
2522
or (astralFlows == 1 and mob:getHPP() <= 60)
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
-----------------------------------
2+
-- Area: Cloister of Frost
3+
-- Mob: Shiva Prime
4+
-- Involved in Quest: Trial by Ice, Trial Size Trial by Ice
5+
-----------------------------------
6+
mixins = {require("scripts/mixins/job_special")}
7+
-----------------------------------
8+
9+
function onMobSpawn(mob)
10+
tpz.mix.jobSpecial.config(mob, {
11+
specials =
12+
{
13+
{id = 884, hpp = math.random(30,55)}, -- uses Diamond Dust once while near 50% HPP.
14+
},
15+
})
16+
end
17+
18+
function onMobFight(mob, target)
19+
end
20+
21+
function onMobDeath(mob, player, isKiller)
22+
end

scripts/zones/Cloister_of_Gales/mobs/Garuda_Prime.lua renamed to scripts/zones/Cloister_of_Gales/mobs/Garuda_Prime_ASA.lua

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
-----------------------------------
22
-- Area: Cloister of Gales
33
-- Mob: Garuda Prime
4-
-- Involved in Quest: Trial by Wind, Trial Size Trial by Wind
54
-- Involved in Mission: ASA-4 Sugar Coated Directive
65
-----------------------------------
76
require("scripts/globals/keyitems")
@@ -11,15 +10,13 @@ require("scripts/globals/status")
1110

1211
function onMobSpawn(mob)
1312
-- ASA-4: Avatar is Unkillable Until Its Used Astral Flow At Least 5 times At Specified Intervals
14-
if mob:getBattlefieldID() == 420 then
15-
mob:setLocalVar("astralflows", 0)
16-
mob:setUnkillable(true)
17-
end
13+
mob:setLocalVar("astralflows", 0)
14+
mob:setUnkillable(true)
1815
end
1916

2017
function onMobFight(mob, target)
2118
-- ASA-4: Astral Flow Behavior - Guaranteed to Use At Least 5 times before killable, at specified intervals.
22-
if mob:getBattlefieldID() == 420 and mob:getCurrentAction() == tpz.act.ATTACK then
19+
if mob:getCurrentAction() == tpz.act.ATTACK then
2320
local astralFlows = mob:getLocalVar("astralflows")
2421
if (astralFlows == 0 and mob:getHPP() <= 80)
2522
or (astralFlows == 1 and mob:getHPP() <= 60)
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
-----------------------------------
2+
-- Area: Cloister of Gales
3+
-- Mob: Garuda Prime
4+
-- Involved in Quest: Trial by Wind, Trial Size Trial by Wind
5+
-----------------------------------
6+
mixins = {require("scripts/mixins/job_special")}
7+
-----------------------------------
8+
9+
function onMobSpawn(mob)
10+
tpz.mix.jobSpecial.config(mob, {
11+
specials =
12+
{
13+
{id = 875, hpp = math.random(30,55)}, -- uses Aerial Blast once while near 50% HPP.
14+
},
15+
})
16+
end
17+
18+
function onMobFight(mob, target)
19+
end
20+
21+
function onMobDeath(mob, player, isKiller)
22+
end

scripts/zones/Cloister_of_Storms/mobs/Ramuh_Prime.lua renamed to scripts/zones/Cloister_of_Storms/mobs/Ramuh_Prime_ASA.lua

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
-----------------------------------
22
-- Area: Cloister of Storms
33
-- Mob: Ramuh Prime
4-
-- Involved in Quest: Trial by Lightning, Trial Size Trial by Lightning
54
-- Involved in Mission: ASA-4 Sugar Coated Directive
65
-----------------------------------
76
require("scripts/globals/keyitems")
@@ -11,15 +10,13 @@ require("scripts/globals/status")
1110

1211
function onMobSpawn(mob)
1312
-- ASA-4: Avatar is Unkillable Until Its Used Astral Flow At Least 5 times At Specified Intervals
14-
if mob:getBattlefieldID() == 452 then
15-
mob:setLocalVar("astralflows", 0)
16-
mob:setUnkillable(true)
17-
end
13+
mob:setLocalVar("astralflows", 0)
14+
mob:setUnkillable(true)
1815
end
1916

2017
function onMobFight(mob, target)
2118
-- ASA-4: Astral Flow Behavior - Guaranteed to Use At Least 5 times before killable, at specified intervals.
22-
if mob:getBattlefieldID() == 452 and mob:getCurrentAction() == tpz.act.ATTACK then
19+
if mob:getCurrentAction() == tpz.act.ATTACK then
2320
local astralFlows = mob:getLocalVar("astralflows")
2421
if (astralFlows == 0 and mob:getHPP() <= 80)
2522
or (astralFlows == 1 and mob:getHPP() <= 60)
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
-----------------------------------
2+
-- Area: Cloister of Storms
3+
-- Mob: Ramuh Prime
4+
-- Involved in Quest: Trial by Lightning, Trial Size Trial by Lightning
5+
-----------------------------------
6+
mixins = {require("scripts/mixins/job_special")}
7+
-----------------------------------
8+
9+
function onMobSpawn(mob)
10+
tpz.mix.jobSpecial.config(mob, {
11+
specials =
12+
{
13+
{id = 893, hpp = math.random(30,55)}, -- uses Judgment Bolt once while near 50% HPP.
14+
},
15+
})
16+
end
17+
18+
function onMobFight(mob, target)
19+
end
20+
21+
function onMobDeath(mob, player, isKiller)
22+
end

scripts/zones/Cloister_of_Tides/mobs/Leviathan_Prime.lua renamed to scripts/zones/Cloister_of_Tides/mobs/Leviathan_Prime_ASA.lua

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
-----------------------------------
22
-- Area: Cloister of Tides
33
-- Mob: Leviathan Prime
4-
-- Involved in Quest: Trial by Water, Trial Size Trial by Water
54
-- Involved in Mission: ASA-4 Sugar Coated Directive
65
-----------------------------------
76
require("scripts/globals/keyitems")
@@ -11,15 +10,13 @@ require("scripts/globals/status")
1110

1211
function onMobSpawn(mob)
1312
-- ASA-4: Avatar is Unkillable Until Its Used Astral Flow At Least 5 times At Specified Intervals
14-
if mob:getBattlefieldID() == 611 then
15-
mob:setLocalVar("astralflows", 0)
16-
mob:setUnkillable(true)
17-
end
13+
mob:setLocalVar("astralflows", 0)
14+
mob:setUnkillable(true)
1815
end
1916

2017
function onMobFight(mob, target)
2118
-- ASA-4: Astral Flow Behavior - Guaranteed to Use At Least 5 times before killable, at specified intervals.
22-
if mob:getBattlefieldID() == 611 and mob:getCurrentAction() == tpz.act.ATTACK then
19+
if mob:getCurrentAction() == tpz.act.ATTACK then
2320
local astralFlows = mob:getLocalVar("astralflows")
2421
if (astralFlows == 0 and mob:getHPP() <= 80)
2522
or (astralFlows == 1 and mob:getHPP() <= 60)
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
-----------------------------------
2+
-- Area: Cloister of Tides
3+
-- Mob: Leviathan Prime
4+
-- Involved in Quest: Trial by Water, Trial Size Trial by Water
5+
-----------------------------------
6+
mixins = {require("scripts/mixins/job_special")}
7+
-----------------------------------
8+
9+
function onMobSpawn(mob)
10+
tpz.mix.jobSpecial.config(mob, {
11+
specials =
12+
{
13+
{id = 866, hpp = math.random(30,55)}, -- uses Tidal Wave once while near 50% HPP.
14+
},
15+
})
16+
end
17+
18+
function onMobFight(mob, target)
19+
end
20+
21+
function onMobDeath(mob, player, isKiller)
22+
end

0 commit comments

Comments
 (0)