qstbak/Questionable/Questionable.Data/AetheryteData.cs
2025-10-09 07:47:19 +10:00

959 lines
25 KiB
C#

using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Numerics;
using Dalamud.Plugin.Services;
using Lumina.Excel.Sheets;
using Questionable.Model.Common;
namespace Questionable.Data;
internal sealed class AetheryteData
{
public ReadOnlyDictionary<EAetheryteLocation, Vector3> Locations { get; } = new Dictionary<EAetheryteLocation, Vector3>
{
{
EAetheryteLocation.Gridania,
new Vector3(32.913696f, 2.670288f, 30.014404f)
},
{
EAetheryteLocation.GridaniaArcher,
new Vector3(166.58276f, -1.7243042f, 86.13721f)
},
{
EAetheryteLocation.GridaniaLeatherworker,
new Vector3(101.27405f, 9.018005f, -111.31464f)
},
{
EAetheryteLocation.GridaniaLancer,
new Vector3(121.23291f, 12.649658f, -229.63306f)
},
{
EAetheryteLocation.GridaniaConjurer,
new Vector3(-145.15906f, 4.9591064f, -11.7647705f)
},
{
EAetheryteLocation.GridaniaBotanist,
new Vector3(-311.0857f, 7.94989f, -177.05048f)
},
{
EAetheryteLocation.GridaniaAmphitheatre,
new Vector3(-73.92999f, 7.9804688f, -140.15417f)
},
{
EAetheryteLocation.CentralShroudBentbranchMeadows,
new Vector3(13.076904f, 0.56451416f, 35.90442f)
},
{
EAetheryteLocation.EastShroudHawthorneHut,
new Vector3(-186.54156f, 3.7994385f, 297.56616f)
},
{
EAetheryteLocation.SouthShroudQuarrymill,
new Vector3(178.60681f, 10.543945f, -68.19263f)
},
{
EAetheryteLocation.SouthShroudCampTranquil,
new Vector3(-230.0603f, 22.62909f, 355.45886f)
},
{
EAetheryteLocation.NorthShroudFallgourdFloat,
new Vector3(-41.58087f, -38.55963f, 233.7528f)
},
{
EAetheryteLocation.Uldah,
new Vector3(-144.51825f, -1.3580933f, -169.6651f)
},
{
EAetheryteLocation.UldahAdventurers,
new Vector3(64.22522f, 4.5318604f, -115.31244f)
},
{
EAetheryteLocation.UldahThaumaturge,
new Vector3(-154.83331f, 14.633362f, 73.07532f)
},
{
EAetheryteLocation.UldahGladiator,
new Vector3(-53.849182f, 10.696533f, 12.222412f)
},
{
EAetheryteLocation.UldahMiner,
new Vector3(33.49353f, 13.229492f, 113.206665f)
},
{
EAetheryteLocation.UldahAlchemist,
new Vector3(-98.25293f, 42.34375f, 88.45642f)
},
{
EAetheryteLocation.UldahWeaver,
new Vector3(89.64673f, 12.924377f, 58.27417f)
},
{
EAetheryteLocation.UldahGoldsmith,
new Vector3(-19.333252f, 14.602844f, 72.03784f)
},
{
EAetheryteLocation.UldahSapphireAvenue,
new Vector3(131.9447f, 4.714966f, -29.800903f)
},
{
EAetheryteLocation.UldahChamberOfRule,
new Vector3(6.6376343f, 30.655273f, -24.826477f)
},
{
EAetheryteLocation.WesternThanalanHorizon,
new Vector3(68.0094f, 48.203125f, -227.039f)
},
{
EAetheryteLocation.CentralThanalanBlackBrushStation,
new Vector3(-16.159302f, 0.32037354f, -166.58276f)
},
{
EAetheryteLocation.EasternThanalanCampDrybone,
new Vector3(-386.3432f, -57.1756f, 142.59558f)
},
{
EAetheryteLocation.SouthernThanalanLittleAlaMhigo,
new Vector3(-159.3805f, 30.105957f, -415.45746f)
},
{
EAetheryteLocation.SouthernThanalanForgottenSprings,
new Vector3(-326.6194f, 10.696533f, 406.63757f)
},
{
EAetheryteLocation.NorthernThanalanCampBluefog,
new Vector3(20.98108f, 8.8349f, 454.0321f)
},
{
EAetheryteLocation.NorthernThanalanCeruleumProcessingPlant,
new Vector3(-26.596497f, 49.881714f, -30.838562f)
},
{
EAetheryteLocation.Limsa,
new Vector3(-84.031494f, 20.767456f, 0.015197754f)
},
{
EAetheryteLocation.LimsaAftcastle,
new Vector3(16.067688f, 40.787354f, 68.80286f)
},
{
EAetheryteLocation.LimsaCulinarian,
new Vector3(-56.50421f, 44.47998f, -131.45648f)
},
{
EAetheryteLocation.LimsaArcanist,
new Vector3(-335.1645f, 12.619202f, 56.381958f)
},
{
EAetheryteLocation.LimsaFisher,
new Vector3(-179.40033f, 4.8065186f, 182.97095f)
},
{
EAetheryteLocation.LimsaMarauder,
new Vector3(-5.1728516f, 44.63257f, -218.06671f)
},
{
EAetheryteLocation.LimsaHawkersAlley,
new Vector3(-213.61108f, 16.739136f, 51.80432f)
},
{
EAetheryteLocation.LowerLaNosceaMorabyDrydocks,
new Vector3(156.11499f, 15.518433f, 673.21277f)
},
{
EAetheryteLocation.MiddleLaNosceaSummerfordFarms,
new Vector3(227.98499f, 115.526f, -257.0382f)
},
{
EAetheryteLocation.EasternLaNosceaCostaDelSol,
new Vector3(489.15845f, 20.828491f, 468.80298f)
},
{
EAetheryteLocation.EasternLaNosceaWineport,
new Vector3(-18.387146f, 72.67859f, 3.829956f)
},
{
EAetheryteLocation.WesternLaNosceaSwiftperch,
new Vector3(651.5449f, 11.734131f, 513.35913f)
},
{
EAetheryteLocation.WesternLaNosceaAleport,
new Vector3(260.94446f, -19.60791f, 218.52441f)
},
{
EAetheryteLocation.UpperLaNosceaCampBronzeLake,
new Vector3(437.4303f, 5.508484f, 94.590576f)
},
{
EAetheryteLocation.OuterLaNosceaCampOverlook,
new Vector3(-117.54028f, 66.02576f, -212.66504f)
},
{
EAetheryteLocation.CoerthasCentralHighlandsCampDragonhead,
new Vector3(223.98718f, 315.7854f, -234.85168f)
},
{
EAetheryteLocation.MorDhona,
new Vector3(40.024292f, 24.002441f, -668.0247f)
},
{
EAetheryteLocation.WolvesDenPier,
new Vector3(40.93994f, 5.4779663f, -14.816589f)
},
{
EAetheryteLocation.GoldSaucer,
new Vector3(-0.015319824f, 3.4942627f, -0.015319824f)
},
{
EAetheryteLocation.GoldSaucerEntranceCardSquares,
new Vector3(-64.74408f, 2.8839111f, 54.33728f)
},
{
EAetheryteLocation.GoldSaucerWonderSquareEast,
new Vector3(59.067627f, 23.88031f, 63.035034f)
},
{
EAetheryteLocation.GoldSaucerWonderSquareWest,
new Vector3(-0.38153076f, 23.88031f, 58.609863f)
},
{
EAetheryteLocation.GoldSaucerEventSquare,
new Vector3(95.47571f, -2.1210327f, -72.3125f)
},
{
EAetheryteLocation.GoldSaucerCactpotBoard,
new Vector3(114.42737f, 13.595764f, -38.864807f)
},
{
EAetheryteLocation.GoldSaucerRoundSquare,
new Vector3(-24.765442f, 6.1798096f, -85.67944f)
},
{
EAetheryteLocation.GoldSaucerChocoboSquare,
new Vector3(-16.037292f, 2.8839111f, -33.432617f)
},
{
EAetheryteLocation.GoldSaucerMinionSquare,
new Vector3(50.736206f, 2.8839111f, 19.912964f)
},
{
EAetheryteLocation.Ishgard,
new Vector3(-63.98114f, 11.154297f, 43.9917f)
},
{
EAetheryteLocation.IshgardForgottenKnight,
new Vector3(45.792236f, 24.551636f, 0.99176025f)
},
{
EAetheryteLocation.IshgardSkysteelManufactory,
new Vector3(-111.436646f, 16.128723f, -27.054321f)
},
{
EAetheryteLocation.IshgardBrume,
new Vector3(49.42395f, -11.154419f, 66.69714f)
},
{
EAetheryteLocation.IshgardAthenaeumAstrologicum,
new Vector3(133.37903f, -8.86554f, -64.77466f)
},
{
EAetheryteLocation.IshgardJeweledCrozier,
new Vector3(-134.6914f, -11.795227f, -15.396423f)
},
{
EAetheryteLocation.IshgardSaintReymanaudsCathedral,
new Vector3(-77.958374f, 10.60498f, -126.54315f)
},
{
EAetheryteLocation.IshgardTribunal,
new Vector3(78.01941f, 11.001709f, -126.51257f)
},
{
EAetheryteLocation.IshgardLastVigil,
new Vector3(0.015197754f, 16.525452f, -32.51703f)
},
{
EAetheryteLocation.Idyllshire,
new Vector3(71.94617f, 211.26111f, -18.905945f)
},
{
EAetheryteLocation.IdyllshireWest,
new Vector3(-75.48645f, 210.22351f, -21.347473f)
},
{
EAetheryteLocation.RhalgrsReach,
new Vector3(78.23291f, 1.9683228f, 97.45935f)
},
{
EAetheryteLocation.RhalgrsReachWest,
new Vector3(-84.275635f, 0.503479f, 9.323181f)
},
{
EAetheryteLocation.RhalgrsReachNorthEast,
new Vector3(101.24353f, 3.463745f, -115.46509f)
},
{
EAetheryteLocation.CoerthasWesternHighlandsFalconsNest,
new Vector3(474.87585f, 217.94458f, 708.5221f)
},
{
EAetheryteLocation.SeaOfCloudsCampCloudtop,
new Vector3(-615.7473f, -118.36426f, 546.5934f)
},
{
EAetheryteLocation.SeaOfCloudsOkZundu,
new Vector3(-613.1533f, -49.485046f, -415.03015f)
},
{
EAetheryteLocation.AzysLlaHelix,
new Vector3(-722.8046f, -182.29956f, -593.40814f)
},
{
EAetheryteLocation.DravanianForelandsTailfeather,
new Vector3(532.6771f, -48.722107f, 30.166992f)
},
{
EAetheryteLocation.DravanianForelandsAnyxTrine,
new Vector3(-304.12756f, -16.70868f, 32.059082f)
},
{
EAetheryteLocation.ChurningMistsMoghome,
new Vector3(259.20496f, -37.70508f, 596.85657f)
},
{
EAetheryteLocation.ChurningMistsZenith,
new Vector3(-584.9546f, 52.84192f, 313.43542f)
},
{
EAetheryteLocation.Kugane,
new Vector3(47.501343f, 8.438171f, -37.30841f)
},
{
EAetheryteLocation.KuganeShiokazeHostelry,
new Vector3(-73.16705f, -6.088379f, -77.77527f)
},
{
EAetheryteLocation.KuganePier1,
new Vector3(-113.57294f, -3.8911133f, 155.41309f)
},
{
EAetheryteLocation.KuganeThavnairianConsulate,
new Vector3(27.17627f, 9.048584f, 141.58838f)
},
{
EAetheryteLocation.KuganeMarkets,
new Vector3(26.687988f, 4.92865f, 73.3501f)
},
{
EAetheryteLocation.KuganeBokairoInn,
new Vector3(-76.00525f, 19.058472f, -161.18109f)
},
{
EAetheryteLocation.KuganeRubyBazaar,
new Vector3(132.40247f, 12.954895f, 83.02429f)
},
{
EAetheryteLocation.KuganeSekiseigumiBarracks,
new Vector3(119.09656f, 13.01593f, -92.881714f)
},
{
EAetheryteLocation.KuganeRakuzaDistrict,
new Vector3(24.64331f, 7.003784f, -152.97174f)
},
{
EAetheryteLocation.FringesCastrumOriens,
new Vector3(-629.11426f, 132.89075f, -509.14783f)
},
{
EAetheryteLocation.FringesPeeringStones,
new Vector3(415.3047f, 117.357056f, 246.75354f)
},
{
EAetheryteLocation.PeaksAlaGannha,
new Vector3(114.579956f, 120.10376f, -747.06647f)
},
{
EAetheryteLocation.PeaksAlaGhiri,
new Vector3(-271.3817f, 259.87634f, 748.86694f)
},
{
EAetheryteLocation.LochsPortaPraetoria,
new Vector3(-652.0333f, 53.391357f, -16.006714f)
},
{
EAetheryteLocation.LochsAlaMhiganQuarter,
new Vector3(612.4512f, 84.45862f, 656.82446f)
},
{
EAetheryteLocation.RubySeaTamamizu,
new Vector3(358.72437f, -118.05908f, -263.4165f)
},
{
EAetheryteLocation.RubySeaOnokoro,
new Vector3(88.181885f, 4.135132f, -583.3677f)
},
{
EAetheryteLocation.YanxiaNamai,
new Vector3(432.66956f, 73.07532f, -90.74542f)
},
{
EAetheryteLocation.YanxiaHouseOfTheFierce,
new Vector3(246.02112f, 9.079041f, -401.3581f)
},
{
EAetheryteLocation.AzimSteppeReunion,
new Vector3(556.1454f, -16.800232f, 340.10828f)
},
{
EAetheryteLocation.AzimSteppeDawnThrone,
new Vector3(78.26355f, 119.37134f, 36.301147f)
},
{
EAetheryteLocation.AzimSteppeDhoroIloh,
new Vector3(-754.63495f, 131.2428f, 116.5636f)
},
{
EAetheryteLocation.DomanEnclave,
new Vector3(42.648926f, 1.4190674f, -14.8776245f)
},
{
EAetheryteLocation.DomanEnclaveNorthern,
new Vector3(8.987488f, 0.8086548f, -105.85187f)
},
{
EAetheryteLocation.DomanEnclaveSouthern,
new Vector3(-61.57019f, 0.77819824f, 90.684326f)
},
{
EAetheryteLocation.DomanEnclaveDocks,
new Vector3(96.269165f, -3.4332886f, 81.01013f)
},
{
EAetheryteLocation.Crystarium,
new Vector3(-65.0188f, 4.5318604f, 0.015197754f)
},
{
EAetheryteLocation.CrystariumMarkets,
new Vector3(-6.149414f, -7.736328f, 148.72961f)
},
{
EAetheryteLocation.CrystariumTemenosRookery,
new Vector3(-107.37775f, -0.015319824f, -58.762512f)
},
{
EAetheryteLocation.CrystariumDossalGate,
new Vector3(64.86609f, -0.015319824f, -18.173523f)
},
{
EAetheryteLocation.CrystariumPendants,
new Vector3(35.477173f, -0.015319824f, 222.58337f)
},
{
EAetheryteLocation.CrystariumAmaroLaunch,
new Vector3(66.60559f, 35.99597f, -131.09033f)
},
{
EAetheryteLocation.CrystariumCrystallineMean,
new Vector3(-52.506348f, 19.97406f, -173.35773f)
},
{
EAetheryteLocation.CrystariumCabinetOfCuriosity,
new Vector3(-54.398438f, -37.70508f, -241.07733f)
},
{
EAetheryteLocation.Eulmore,
new Vector3(0.015197754f, 81.986694f, 0.93078613f)
},
{
EAetheryteLocation.EulmoreMainstay,
new Vector3(10.940674f, 36.087524f, -4.196289f)
},
{
EAetheryteLocation.EulmoreNightsoilPots,
new Vector3(-54.093323f, -0.83929443f, 52.140015f)
},
{
EAetheryteLocation.EulmoreGloryGate,
new Vector3(6.9122925f, 6.240906f, -56.351562f)
},
{
EAetheryteLocation.EulmoreSoutheastDerelict,
new Vector3(71.82422f, -10.391418f, 65.32385f)
},
{
EAetheryteLocation.LakelandFortJobb,
new Vector3(753.7803f, 24.338135f, -28.82434f)
},
{
EAetheryteLocation.LakelandOstallImperative,
new Vector3(-735.01184f, 53.391357f, -230.02979f)
},
{
EAetheryteLocation.KholusiaStilltide,
new Vector3(668.32983f, 29.465088f, 289.17358f)
},
{
EAetheryteLocation.KholusiaWright,
new Vector3(-244.00702f, 20.736938f, 385.45813f)
},
{
EAetheryteLocation.KholusiaTomra,
new Vector3(-426.38287f, 419.27222f, -623.5294f)
},
{
EAetheryteLocation.AmhAraengMordSouq,
new Vector3(246.38745f, 12.985352f, -220.29456f)
},
{
EAetheryteLocation.AmhAraengInnAtJourneysHead,
new Vector3(399.0996f, -24.521301f, 307.97278f)
},
{
EAetheryteLocation.AmhAraengTwine,
new Vector3(-511.3451f, 47.989624f, -212.604f)
},
{
EAetheryteLocation.RaktikaSlitherbough,
new Vector3(-103.4104f, -19.333252f, 297.23047f)
},
{
EAetheryteLocation.RaktikaFanow,
new Vector3(382.77246f, 21.042175f, -194.11005f)
},
{
EAetheryteLocation.IlMhegLydhaLran,
new Vector3(-344.71655f, 48.722046f, 512.2606f)
},
{
EAetheryteLocation.IlMhegPlaEnni,
new Vector3(-72.55664f, 103.95972f, -857.35864f)
},
{
EAetheryteLocation.IlMhegWolekdorf,
new Vector3(380.51416f, 87.20532f, -687.2511f)
},
{
EAetheryteLocation.TempestOndoCups,
new Vector3(561.76074f, 352.62073f, -199.17603f)
},
{
EAetheryteLocation.TempestMacarensesAngle,
new Vector3(-141.74109f, -280.5371f, 218.00562f)
},
{
EAetheryteLocation.OldSharlayan,
new Vector3(0.07623291f, 4.8065186f, -0.10687256f)
},
{
EAetheryteLocation.OldSharlayanStudium,
new Vector3(-291.1574f, 20.004517f, -74.143616f)
},
{
EAetheryteLocation.OldSharlayanBaldesionAnnex,
new Vector3(-92.21033f, 2.304016f, 29.709229f)
},
{
EAetheryteLocation.OldSharlayanRostra,
new Vector3(-36.94214f, 41.367188f, -156.6034f)
},
{
EAetheryteLocation.OldSharlayanLeveilleurEstate,
new Vector3(204.79126f, 21.774597f, -118.73047f)
},
{
EAetheryteLocation.OldSharlayanJourneysEnd,
new Vector3(206.22559f, 1.8463135f, 13.77887f)
},
{
EAetheryteLocation.OldSharlayanScholarsHarbor,
new Vector3(16.494995f, -16.250854f, 127.73328f)
},
{
EAetheryteLocation.RadzAtHan,
new Vector3(25.986084f, 3.250122f, -27.023743f)
},
{
EAetheryteLocation.RadzAtHanMeghaduta,
new Vector3(-365.95715f, 44.99878f, -31.815125f)
},
{
EAetheryteLocation.RadzAtHanRuveydahFibers,
new Vector3(-156.14563f, 35.99597f, 27.725586f)
},
{
EAetheryteLocation.RadzAtHanAirship,
new Vector3(-144.33508f, 27.969727f, 202.2583f)
},
{
EAetheryteLocation.RadzAtHanAlzadaalsPeace,
new Vector3(6.6071167f, -2.02948f, 110.55151f)
},
{
EAetheryteLocation.RadzAtHanHallOfTheRadiantHost,
new Vector3(-141.37488f, 3.982544f, -98.435974f)
},
{
EAetheryteLocation.RadzAtHanMehrydesMeyhane,
new Vector3(-42.61847f, -0.015319824f, -197.61963f)
},
{
EAetheryteLocation.RadzAtHanKama,
new Vector3(129.59485f, 26.993164f, 13.473633f)
},
{
EAetheryteLocation.RadzAtHanHighCrucible,
new Vector3(57.90796f, -24.704407f, -210.6203f)
},
{
EAetheryteLocation.FirmamentMendicantsCourt,
new Vector3(23.941406f, -16.006714f, 169.35986f)
},
{
EAetheryteLocation.FirmamentMattock,
new Vector3(76.035645f, -18.509216f, 10.299805f)
},
{
EAetheryteLocation.FirmamentNewNest,
new Vector3(149.49255f, -50.003845f, 98.55798f)
},
{
EAetheryteLocation.FirmanentSaintRoellesDais,
new Vector3(207.75159f, -40.024475f, -25.589417f)
},
{
EAetheryteLocation.FirmamentFeatherfall,
new Vector3(-78.78235f, -0.015319824f, 75.97461f)
},
{
EAetheryteLocation.FirmamentHoarfrostHall,
new Vector3(-132.55518f, 9.964111f, -14.66394f)
},
{
EAetheryteLocation.FirmamentWesternRisensongQuarter,
new Vector3(-91.722046f, -0.015319824f, -115.19043f)
},
{
EAetheryteLocation.FIrmamentEasternRisensongQuarter,
new Vector3(114.3053f, -20.004639f, -107.43884f)
},
{
EAetheryteLocation.LabyrinthosArcheion,
new Vector3(443.5338f, 170.6416f, -476.18835f)
},
{
EAetheryteLocation.LabyrinthosSharlayanHamlet,
new Vector3(8.377136f, -27.542603f, -46.67737f)
},
{
EAetheryteLocation.LabyrinthosAporia,
new Vector3(-729.18286f, -27.634155f, 302.1438f)
},
{
EAetheryteLocation.ThavnairYedlihmad,
new Vector3(193.49963f, 6.9733276f, 629.2362f)
},
{
EAetheryteLocation.ThavnairGreatWork,
new Vector3(-527.48914f, 4.776001f, 36.75891f)
},
{
EAetheryteLocation.ThavnairPalakasStand,
new Vector3(405.1422f, 5.2643433f, -244.4953f)
},
{
EAetheryteLocation.GarlemaldCampBrokenGlass,
new Vector3(-408.10254f, 24.15503f, 479.9724f)
},
{
EAetheryteLocation.GarlemaldTertium,
new Vector3(518.9136f, -35.324707f, -178.36273f)
},
{
EAetheryteLocation.MareLamentorumSinusLacrimarum,
new Vector3(-566.2471f, 134.66089f, 650.6294f)
},
{
EAetheryteLocation.MareLamentorumBestwaysBurrow,
new Vector3(-0.015319824f, -128.83197f, -512.0165f)
},
{
EAetheryteLocation.ElpisAnagnorisis,
new Vector3(159.96033f, 11.703674f, 126.878784f)
},
{
EAetheryteLocation.ElpisTwelveWonders,
new Vector3(-633.7225f, -19.821533f, 542.56494f)
},
{
EAetheryteLocation.ElpisPoietenOikos,
new Vector3(-529.9001f, 161.24207f, -222.2782f)
},
{
EAetheryteLocation.UltimaThuleReahTahra,
new Vector3(-544.152f, 74.32666f, 269.6421f)
},
{
EAetheryteLocation.UltimaThuleAbodeOfTheEa,
new Vector3(64.286255f, 272.48022f, -657.49603f)
},
{
EAetheryteLocation.UltimaThuleBaseOmicron,
new Vector3(489.2804f, 437.5829f, 333.63843f)
},
{
EAetheryteLocation.Tuliyollal,
new Vector3(-24.093994f, 0.77819824f, 7.583679f)
},
{
EAetheryteLocation.TuliyollalDirigibleLanding,
new Vector3(-413.68738f, 2.9754639f, -45.975464f)
},
{
EAetheryteLocation.TuliyollalTheResplendentQuarter,
new Vector3(-187.1214f, 39.93274f, 6.088318f)
},
{
EAetheryteLocation.TuliyollalTheForardCabins,
new Vector3(-149.73682f, -15.030151f, 198.90125f)
},
{
EAetheryteLocation.TuliyollalBaysideBevyMarketplace,
new Vector3(-14.999634f, -10.025269f, 135.57642f)
},
{
EAetheryteLocation.TuliyollalVollokShoonsa,
new Vector3(-99.13794f, 100.72473f, -222.03406f)
},
{
EAetheryteLocation.TuliyollalWachumeqimeqi,
new Vector3(166.27747f, -17.990417f, 38.742676f)
},
{
EAetheryteLocation.TuliyollalBrightploomPost,
new Vector3(71.7937f, 47.074097f, -333.21124f)
},
{
EAetheryteLocation.SolutionNine,
new Vector3(-0.015319824f, 8.987488f, -0.015319824f)
},
{
EAetheryteLocation.SolutionNineInformationCenter,
new Vector3(-30.441833f, -6.0579224f, 209.3385f)
},
{
EAetheryteLocation.SolutionNineTrueVue,
new Vector3(382.6809f, 59.983154f, 76.67651f)
},
{
EAetheryteLocation.SolutionNineNeonStein,
new Vector3(258.28943f, 50.736206f, 148.72961f)
},
{
EAetheryteLocation.SolutionNineTheArcadion,
new Vector3(374.77686f, 60.01367f, 325.67322f)
},
{
EAetheryteLocation.SolutionNineResolution,
new Vector3(-32.059265f, 38.04065f, -345.2354f)
},
{
EAetheryteLocation.SolutionNineNexusArcade,
new Vector3(-160.05188f, -0.015319824f, 21.591492f)
},
{
EAetheryteLocation.SolutionNineResidentialSector,
new Vector3(-378.13385f, 13.992493f, 136.49194f)
},
{
EAetheryteLocation.UrqopachaWachunpelo,
new Vector3(332.96704f, -160.11298f, -416.22034f)
},
{
EAetheryteLocation.UrqopachaWorlarsEcho,
new Vector3(465.62903f, 114.94617f, 634.9126f)
},
{
EAetheryteLocation.KozamaukaOkHanu,
new Vector3(-169.51251f, 6.576599f, -479.42322f)
},
{
EAetheryteLocation.KozamaukaManyFires,
new Vector3(541.16125f, 117.41809f, 203.60107f)
},
{
EAetheryteLocation.KozamaukaEarthenshire,
new Vector3(-477.53113f, 124.04053f, 311.32983f)
},
{
EAetheryteLocation.KozamaukaDockPoga,
new Vector3(787.59436f, 14.175598f, -236.22491f)
},
{
EAetheryteLocation.YakTelIqBraax,
new Vector3(-397.05505f, 23.5141f, -431.93713f)
},
{
EAetheryteLocation.YakTelMamook,
new Vector3(721.40076f, -132.31104f, 526.1769f)
},
{
EAetheryteLocation.ShaaloaniHhusatahwi,
new Vector3(386.40417f, -0.19836426f, 467.61267f)
},
{
EAetheryteLocation.ShaaloaniShesheneweziSprings,
new Vector3(-291.70673f, 19.08899f, -114.54956f)
},
{
EAetheryteLocation.ShaaloaniMehwahhetsoan,
new Vector3(311.36023f, -14.175659f, -567.74243f)
},
{
EAetheryteLocation.HeritageFoundYyasulaniStation,
new Vector3(514.6105f, 145.86096f, 207.56836f)
},
{
EAetheryteLocation.HeritageFoundTheOutskirts,
new Vector3(-223.0412f, 31.937134f, -584.03906f)
},
{
EAetheryteLocation.HeritageFoundElectropeStrike,
new Vector3(-219.53156f, 32.913696f, 120.77515f)
},
{
EAetheryteLocation.LivingMemoryLeynodeMnemo,
new Vector3(-0.22894287f, 57.175537f, 796.9634f)
},
{
EAetheryteLocation.LivingMemoryLeynodePyro,
new Vector3(657.98413f, 28.976807f, -284.01617f)
},
{
EAetheryteLocation.LivingMemoryLeynodeAero,
new Vector3(-255.26825f, 59.433838f, -397.6654f)
}
}.AsReadOnly();
private ReadOnlyDictionary<EAetheryteLocation, Vector3> AirshipLandingLocations { get; } = new Dictionary<EAetheryteLocation, Vector3>
{
{
EAetheryteLocation.LimsaAirship,
new Vector3(-19.44352f, 91.99999f, -9.892939f)
},
{
EAetheryteLocation.GridaniaAirship,
new Vector3(24.86354f, -19.000002f, 96f)
},
{
EAetheryteLocation.UldahAirship,
new Vector3(-16.954851f, 82.999985f, -9.421141f)
},
{
EAetheryteLocation.KuganeAirship,
new Vector3(-55.72525f, 79.10602f, 46.23109f)
},
{
EAetheryteLocation.IshgardFirmament,
new Vector3(9.92315f, -15.2f, 173.5059f)
}
}.AsReadOnly();
public ReadOnlyDictionary<EAetheryteLocation, ushort> TerritoryIds { get; }
public ReadOnlyDictionary<EAetheryteLocation, ushort> AethernetGroups { get; }
private IReadOnlyList<ushort> TownTerritoryIds { get; set; }
public AetheryteData(IDataManager dataManager)
{
Dictionary<EAetheryteLocation, ushort> territoryIds = new Dictionary<EAetheryteLocation, ushort>();
Dictionary<EAetheryteLocation, ushort> aethernetGroups = new Dictionary<EAetheryteLocation, ushort>();
foreach (Aetheryte item in from x in dataManager.GetExcelSheet<Aetheryte>()
where x.RowId != 0
select x)
{
if (item.Territory.RowId != 0)
{
territoryIds[(EAetheryteLocation)item.RowId] = (ushort)item.Territory.RowId;
}
if (item.AethernetGroup > 0)
{
aethernetGroups[(EAetheryteLocation)item.RowId] = item.AethernetGroup;
}
}
ConfigureAetheryte(EAetheryteLocation.IshgardFirmament, 886, aethernetGroups[EAetheryteLocation.Ishgard]);
ConfigureAetheryteWithAutoGroup(EAetheryteLocation.FirmamentMendicantsCourt, 886);
ConfigureAetheryteWithAutoGroup(EAetheryteLocation.FirmamentMattock, 886);
ConfigureAetheryteWithAutoGroup(EAetheryteLocation.FirmamentNewNest, 886);
ConfigureAetheryteWithAutoGroup(EAetheryteLocation.FirmanentSaintRoellesDais, 886);
ConfigureAetheryteWithAutoGroup(EAetheryteLocation.FirmamentFeatherfall, 886);
ConfigureAetheryteWithAutoGroup(EAetheryteLocation.FirmamentHoarfrostHall, 886);
ConfigureAetheryteWithAutoGroup(EAetheryteLocation.FirmamentWesternRisensongQuarter, 886);
ConfigureAetheryteWithAutoGroup(EAetheryteLocation.FIrmamentEasternRisensongQuarter, 886);
TerritoryIds = territoryIds.AsReadOnly();
AethernetGroups = aethernetGroups.AsReadOnly();
TownTerritoryIds = (from x in dataManager.GetExcelSheet<TerritoryType>()
where x.RowId != 0 && !string.IsNullOrEmpty(x.Name.ToString()) && x.TerritoryIntendedUse.RowId == 0
select (ushort)x.RowId).ToList();
void ConfigureAetheryte(EAetheryteLocation aetheryteLocation, ushort territoryId, ushort aethernetGroup)
{
territoryIds[aetheryteLocation] = territoryId;
aethernetGroups[aetheryteLocation] = aethernetGroup;
}
void ConfigureAetheryteWithAutoGroup(EAetheryteLocation aetheryteLocation, ushort territoryId)
{
ConfigureAetheryte(aetheryteLocation, territoryId, (ushort)((int)aetheryteLocation / 100));
}
}
public float CalculateDistance(Vector3 fromPosition, ushort fromTerritoryType, EAetheryteLocation to)
{
if (!TerritoryIds.TryGetValue(to, out var value) || fromTerritoryType != value)
{
return float.MaxValue;
}
if (!Locations.TryGetValue(to, out var value2))
{
return float.MaxValue;
}
return (fromPosition - value2).Length();
}
public float CalculateAirshipLandingDistance(Vector3 fromPosition, ushort fromTerritoryType, EAetheryteLocation to)
{
if (!TerritoryIds.TryGetValue(to, out var value) || fromTerritoryType != value)
{
return float.MaxValue;
}
if (!AirshipLandingLocations.TryGetValue(to, out var value2))
{
return float.MaxValue;
}
return (fromPosition - value2).Length();
}
public bool IsCityAetheryte(EAetheryteLocation aetheryte)
{
if (aetheryte == EAetheryteLocation.IshgardFirmament)
{
return true;
}
ushort value = TerritoryIds[aetheryte];
return TownTerritoryIds.Contains(value);
}
public bool IsAirshipLanding(EAetheryteLocation aetheryte)
{
return AirshipLandingLocations.ContainsKey(aetheryte);
}
public bool IsGoldSaucerAetheryte(EAetheryteLocation aetheryte)
{
ushort num = TerritoryIds[aetheryte];
if (num == 144 || num == 388)
{
return true;
}
return false;
}
}