Skip to content

Commit f5fd4b6

Browse files
committed
Assault Containerization + Framework
Updates Assaults to use the Container framework to allow for global lookups. All existing assaults will continue to perform as expected. This framework will not effect their performance. This commit also aims to simplify the creation and maintenance of assaults by moving all relevant information into 1 instance file, moreover it allows assaults to more easily make use of the dynamic ID system and move away from the need of hardcoded ID definitions. Builds a scalable framework that would allow for easy customization where needed by creating overwritable functions in the container constructor itself. Updates assault Extermination to use the framework as an example Implemented missing framework to Ilrusi Atoll Globalized assault mission giver behavior (save nyzul isle) Added an experimental tag that can be toggled Sanity checks + PR change requests Attempt to fix sanity checks by turning instanceAssault into a local and passed through xi.assault Fixed PR requests - Use zoneID binding instead of getZone():getID() - Typo - Better ID lookups for undead mob spawning Sanity Fixes More Sanity fixes with bad lua styling Move function overrides Move function overrides into the InstanceAssault container itself
1 parent fefc5da commit f5fd4b6

File tree

19 files changed

+776
-559
lines changed

19 files changed

+776
-559
lines changed

scripts/enum/assault.lua

Lines changed: 66 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ xi.assault.mission =
5757
THE_PRICE_IS_RIGHT = 40,
5858
GOLDEN_SALVAGE = 41,
5959
LAMIA_NO_13 = 42,
60-
EXTERMINATION = 43,
60+
EXTERMINATION = 43, -- Experimental
6161
DEMOLITION_DUTY = 44,
6262
SEARAT_SALVATION = 45,
6363
APKALLU_SEIZURE = 46,
@@ -69,6 +69,71 @@ xi.assault.mission =
6969
NYZUL_ISLE_UNCHARTED_AREA_SURVEY = 52,
7070
}
7171

72+
---@enum xi.instanceID
73+
xi.assault.instanceID =
74+
{
75+
-- Ilrusi Atoll
76+
GOLDEN_SALVAGE = 5500,
77+
LAMIA_NO_13 = 5501,
78+
EXTERMINATION = 5502,
79+
DEMOLITION_DUTY = 5503,
80+
SEARAT_SALVATION = 5504,
81+
APKALLU_SEIZURE = 5505,
82+
LOST_AND_FOUND = 5506,
83+
DESERTER = 5507,
84+
DESPERATELY_SEEKING_CEPHALOPODS = 5508,
85+
BELLEROPHONS_BLISS = 5509,
86+
87+
-- Periqia
88+
SEAGULL_GROUNDED = 5601,
89+
REQUIEM = 5602,
90+
SAVING_PRIVATE_RYAAF = 5603,
91+
SHOOTING_DOWN_THE_BARON = 5604,
92+
BUILDING_BRIDGES = 5605,
93+
STOP_THE_BLOODSHED = 5606,
94+
DEFUSE_THE_THREAT = 5607,
95+
OPERATION_SNAKE_EYES = 5608,
96+
WAKE_THE_PUPPET = 5609,
97+
THE_PRICE_IS_RIGHT = 5610,
98+
99+
-- Lebros Cavern
100+
EXCAVATION_DUTY = 6300,
101+
LEBROS_SUPPLIES = 6301,
102+
TROLL_FUGITIVES = 6302,
103+
EVADE_AND_ESCAPE = 6303,
104+
SIEGEMASTER_ASSASSINATION = 6304,
105+
APKALLU_BREEDING = 6305,
106+
WAMOURA_FARM_RAID = 6306,
107+
EGG_CONSERVATION = 6307,
108+
OPERATION_BLACK_PEARL = 6308,
109+
BETTER_THAN_ONE = 6309,
110+
111+
-- Mamool Ja Training Grounds
112+
IMPERIAL_AGENT_RESCUE = 6600,
113+
PREEMPTIVE_STRIKE = 6601,
114+
SAGELORD_ELIMINATION = 6602,
115+
BREAKING_MORALE = 6603,
116+
THE_DOUBLE_AGENT = 6604,
117+
IMPERIAL_TREASURE_RETRIEVAL = 6605,
118+
BLITZKRIEG = 6606,
119+
MARIDS_IN_THE_MIST = 6607,
120+
AZURE_AILMENTS = 6608,
121+
THE_SUSANOO_SHUFFLE = 6609,
122+
123+
-- Leujaoam Sanctum
124+
LEUJAOAM_CLEANSING = 6900,
125+
ORICHALCUM_SURVEY = 6901,
126+
ESCORT_PROFESSOR_CHANOIX = 6902,
127+
SHANARHA_GRASS_CONSERVATION = 6903,
128+
COUNTING_SHEEP = 6904,
129+
SUPPLIES_RECOVERY = 6905,
130+
AZURE_EXPERIMENTS = 6906,
131+
IMPERIAL_CODE = 6907,
132+
RED_VERSUS_BLUE = 6908,
133+
BLOODY_RONDO = 6909,
134+
}
135+
136+
-- TODO: Delete this table after conversion is complete
72137
---@enum xi.missionInfo
73138
xi.assault.missionInfo =
74139
{

0 commit comments

Comments
 (0)