From e15c46500ca4fac5737ebca83f7b00a46b79bb13 Mon Sep 17 00:00:00 2001 From: Mordred Admin Date: Wed, 7 Mar 2018 08:14:42 +0100 Subject: [PATCH] Moved scripts out of server_zone scope --- src/servers/CMakeLists.txt | 1 + src/servers/Scripts/CMakeLists.txt | 81 +++ src/servers/Scripts/ScriptLoader.cpp.in | 14 + src/servers/Scripts/ScriptObject.h | 91 +++ src/servers/Scripts/action/ActionSprint3.cpp | 15 + src/servers/Scripts/action/ScriptLoader.cpp | 15 + src/servers/Scripts/common/Aethernet.cpp | 47 ++ src/servers/Scripts/common/Aetheryte.cpp | 71 +++ .../Scripts/common/CmnDefCutSceneReplay.cpp | 38 ++ src/servers/Scripts/common/CmnDefInnBed.cpp | 58 ++ .../Scripts/common/CmnDefLinkShell.cpp | 60 ++ .../Scripts/common/HouFurOrchestrion.cpp | 20 + src/servers/Scripts/common/ScriptLoader.cpp | 25 + .../Scripts/instances/ScriptLoader.cpp | 547 ++++++++++++++++++ .../ThePalaceoftheDeadFloors101110.cpp | 29 + .../ThePalaceoftheDeadFloors110.cpp | 27 + .../ThePalaceoftheDeadFloors111120.cpp | 27 + .../ThePalaceoftheDeadFloors1120.cpp | 27 + .../ThePalaceoftheDeadFloors121130.cpp | 27 + .../ThePalaceoftheDeadFloors131140.cpp | 27 + .../ThePalaceoftheDeadFloors141150.cpp | 27 + .../ThePalaceoftheDeadFloors151160.cpp | 27 + .../ThePalaceoftheDeadFloors161170.cpp | 27 + .../ThePalaceoftheDeadFloors171180.cpp | 27 + .../ThePalaceoftheDeadFloors181190.cpp | 27 + .../ThePalaceoftheDeadFloors191200.cpp | 27 + .../ThePalaceoftheDeadFloors2130.cpp | 27 + .../ThePalaceoftheDeadFloors3140.cpp | 35 ++ .../ThePalaceoftheDeadFloors4150.cpp | 35 ++ .../ThePalaceoftheDeadFloors5160.cpp | 27 + .../ThePalaceoftheDeadFloors6170.cpp | 27 + .../ThePalaceoftheDeadFloors7180.cpp | 27 + .../ThePalaceoftheDeadFloors8190.cpp | 29 + .../ThePalaceoftheDeadFloors91100.cpp | 29 + .../Scripts/instances/dungeons/AlaMhigo.cpp | 25 + .../instances/dungeons/AmdaporKeep.cpp | 148 +++++ .../instances/dungeons/AmdaporKeepHard.cpp | 65 +++ .../instances/dungeons/BaelsarsWall.cpp | 57 ++ .../instances/dungeons/BardamsMettle.cpp | 25 + .../instances/dungeons/BrayfloxsLongstop.cpp | 48 ++ .../dungeons/BrayfloxsLongstopHard.cpp | 54 ++ .../instances/dungeons/CastrumAbania.cpp | 25 + .../instances/dungeons/CastrumMeridianum.cpp | 95 +++ .../instances/dungeons/CopperbellMines.cpp | 79 +++ .../dungeons/CopperbellMinesHard.cpp | 71 +++ .../Scripts/instances/dungeons/CuttersCry.cpp | 65 +++ .../Scripts/instances/dungeons/DomaCastle.cpp | 25 + .../instances/dungeons/DzemaelDarkhold.cpp | 125 ++++ .../Scripts/instances/dungeons/Halatali.cpp | 76 +++ .../instances/dungeons/HalataliHard.cpp | 81 +++ .../instances/dungeons/HaukkeManor.cpp | 69 +++ .../instances/dungeons/HaukkeManorHard.cpp | 95 +++ .../Scripts/instances/dungeons/HellsLid.cpp | 25 + .../instances/dungeons/HullbreakerIsle.cpp | 93 +++ .../dungeons/HullbreakerIsleHard.cpp | 56 ++ .../instances/dungeons/KuganeCastle.cpp | 25 + .../Scripts/instances/dungeons/Neverreap.cpp | 25 + .../instances/dungeons/PharosSirius.cpp | 60 ++ .../instances/dungeons/PharosSiriusHard.cpp | 57 ++ .../dungeons/SaintMociannesArboretum.cpp | 25 + .../Scripts/instances/dungeons/Sastasha.cpp | 77 +++ .../instances/dungeons/SastashaHard.cpp | 65 +++ .../dungeons/ShisuioftheVioletTides.cpp | 25 + .../Scripts/instances/dungeons/Snowcloak.cpp | 71 +++ .../Scripts/instances/dungeons/SohmAl.cpp | 25 + .../Scripts/instances/dungeons/SohmAlHard.cpp | 25 + .../Scripts/instances/dungeons/SohrKhai.cpp | 25 + .../Scripts/instances/dungeons/TheAery.cpp | 25 + .../TheAetherochemicalResearchFacility.cpp | 25 + .../instances/dungeons/TheAntitower.cpp | 25 + .../instances/dungeons/TheAurumVale.cpp | 47 ++ .../dungeons/TheDrownedCityofSkalla.cpp | 25 + .../instances/dungeons/TheDuskVigil.cpp | 25 + .../dungeons/TheFractalContinuum.cpp | 25 + .../dungeons/TheFractalContinuumHard.cpp | 25 + .../dungeons/TheGreatGubalLibrary.cpp | 25 + .../dungeons/TheGreatGubalLibraryHard.cpp | 25 + .../instances/dungeons/TheKeeperoftheLake.cpp | 60 ++ .../dungeons/TheLostCityofAmdapor.cpp | 80 +++ .../dungeons/TheLostCityofAmdaporHard.cpp | 71 +++ .../instances/dungeons/ThePraetorium.cpp | 141 +++++ .../instances/dungeons/TheSirensongSea.cpp | 25 + .../instances/dungeons/TheStoneVigil.cpp | 62 ++ .../instances/dungeons/TheStoneVigilHard.cpp | 55 ++ .../dungeons/TheSunkenTempleofQarn.cpp | 88 +++ .../dungeons/TheSunkenTempleofQarnHard.cpp | 79 +++ .../dungeons/TheTamTaraDeepcroft.cpp | 56 ++ .../dungeons/TheTamTaraDeepcroftHard.cpp | 103 ++++ .../instances/dungeons/TheTempleoftheFist.cpp | 25 + .../dungeons/TheThousandMawsofTotoRak.cpp | 78 +++ .../Scripts/instances/dungeons/TheVault.cpp | 25 + .../instances/dungeons/TheWanderersPalace.cpp | 79 +++ .../dungeons/TheWanderersPalaceHard.cpp | 60 ++ .../Scripts/instances/dungeons/Xelphatol.cpp | 25 + .../instances/events/TheHauntedManor.cpp | 42 ++ .../events/TheValentionesCeremony.cpp | 70 +++ .../guildhests/AllsWellthatEndsintheWell.cpp | 28 + .../instances/guildhests/AnnoytheVoid.cpp | 25 + .../guildhests/BasicTrainingEnemyParties.cpp | 25 + .../BasicTrainingEnemyStrongholds.cpp | 29 + .../FlickingSticksandTakingNames.cpp | 26 + .../guildhests/HeroontheHalfShell.cpp | 25 + .../instances/guildhests/LongLivetheQueen.cpp | 42 ++ .../instances/guildhests/MorethanaFeeler.cpp | 25 + .../guildhests/PullingPoisonPosies.cpp | 25 + .../instances/guildhests/ShadowandClaw.cpp | 42 ++ .../instances/guildhests/SolemnTrinity.cpp | 25 + .../instances/guildhests/StingingBack.cpp | 28 + .../instances/guildhests/UndertheArmor.cpp | 26 + .../Scripts/instances/guildhests/WardUp.cpp | 25 + .../AccrueEnmityfromMultipleTargets.cpp | 35 ++ .../AssistAlliesinDefeatingaTarget.cpp | 35 ++ .../AvoidAreaofEffectAttacks.cpp | 35 ++ .../hallofthenovice/AvoidEngagedTargets.cpp | 35 ++ .../DefeatanOccupiedTarget.cpp | 35 ++ .../EngageEnemyReinforcements.cpp | 35 ++ .../hallofthenovice/EngageMultipleTargets.cpp | 35 ++ .../hallofthenovice/ExecuteaComboinBattle.cpp | 35 ++ .../ExecuteaCombotoIncreaseEnmity.cpp | 35 ++ .../ExecuteaRangedAttacktoIncreaseEnmity.cpp | 35 ++ .../hallofthenovice/FinalExercise.cpp | 28 + .../hallofthenovice/HealMultipleAllies.cpp | 35 ++ .../instances/hallofthenovice/HealanAlly.cpp | 35 ++ .../InteractwiththeBattlefield.cpp | 35 ++ .../Scripts/instances/pvp/Astragalos.cpp | 39 ++ .../Scripts/instances/pvp/SealRockSeize.cpp | 25 + .../pvp/TheBorderlandRuinsSecure.cpp | 50 ++ .../instances/pvp/TheFeast4on4LightParty.cpp | 29 + .../instances/pvp/TheFeast4on4Ranked.cpp | 27 + .../instances/pvp/TheFeast4on4Training.cpp | 27 + .../pvp/TheFeastCustomMatchCrystalTower.cpp | 31 + .../TheFeastCustomMatchFeastingGrounds.cpp | 29 + .../pvp/TheFeastCustomMatchLichenweed.cpp | 27 + .../Scripts/instances/pvp/TheFeastRanked.cpp | 31 + .../instances/pvp/TheFeastTeamRanked.cpp | 31 + .../instances/pvp/TheFeastTraining.cpp | 31 + .../instances/pvp/TheFieldsofGloryShatter.cpp | 25 + .../instances/questbattles/ABloodyReunion.cpp | 25 + .../questbattles/ASpectaclefortheAges.cpp | 42 ++ .../instances/questbattles/BloodDragoon.cpp | 25 + .../instances/questbattles/BloodontheDeck.cpp | 27 + .../CuriousGorgeMeetsHisMatch.cpp | 28 + .../instances/questbattles/DarkwingDragon.cpp | 25 + .../instances/questbattles/InThalsName.cpp | 27 + .../questbattles/InterdimensionalRift.cpp | 25 + .../questbattles/ItsProbablyaTrap.cpp | 25 + .../instances/questbattles/MatsubaMayhem.cpp | 25 + .../Scripts/instances/questbattles/Naadam.cpp | 25 + .../questbattles/OneLifeforOneWorld.cpp | 30 + .../instances/questbattles/OurCompromise.cpp | 25 + .../questbattles/OurUnsungHeroes.cpp | 71 +++ .../questbattles/RaisingtheSword.cpp | 27 + .../questbattles/ReturnoftheBull.cpp | 25 + .../questbattles/TheBattleonBekko.cpp | 25 + .../TheCarteneauFlatsHeliodrome.cpp | 50 ++ .../questbattles/TheFaceofTrueEvil.cpp | 25 + .../questbattles/TheHeartoftheProblem.cpp | 25 + .../TheOrphansandtheBrokenBlade.cpp | 25 + .../instances/questbattles/TheResonant.cpp | 25 + .../questbattles/WhenClansCollide.cpp | 25 + .../questbattles/WithHeartandSteel.cpp | 25 + .../raids/AlexanderTheArmoftheFather.cpp | 25 + .../AlexanderTheArmoftheFatherSavage.cpp | 25 + .../raids/AlexanderTheArmoftheSon.cpp | 25 + .../raids/AlexanderTheArmoftheSonSavage.cpp | 25 + .../raids/AlexanderTheBreathoftheCreator.cpp | 25 + .../AlexanderTheBreathoftheCreatorSavage.cpp | 25 + .../raids/AlexanderTheBurdenoftheFather.cpp | 25 + .../AlexanderTheBurdenoftheFatherSavage.cpp | 25 + .../raids/AlexanderTheBurdenoftheSon.cpp | 25 + .../AlexanderTheBurdenoftheSonSavage.cpp | 25 + .../raids/AlexanderTheCuffoftheFather.cpp | 25 + .../AlexanderTheCuffoftheFatherSavage.cpp | 25 + .../raids/AlexanderTheCuffoftheSon.cpp | 25 + .../raids/AlexanderTheCuffoftheSonSavage.cpp | 25 + .../raids/AlexanderTheEyesoftheCreator.cpp | 25 + .../AlexanderTheEyesoftheCreatorSavage.cpp | 25 + .../raids/AlexanderTheFistoftheFather.cpp | 25 + .../AlexanderTheFistoftheFatherSavage.cpp | 25 + .../raids/AlexanderTheFistoftheSon.cpp | 25 + .../raids/AlexanderTheFistoftheSonSavage.cpp | 25 + .../raids/AlexanderTheHeartoftheCreator.cpp | 25 + .../AlexanderTheHeartoftheCreatorSavage.cpp | 25 + .../raids/AlexanderTheSouloftheCreator.cpp | 25 + .../AlexanderTheSouloftheCreatorSavage.cpp | 25 + .../Scripts/instances/raids/DeltascapeV10.cpp | 25 + .../instances/raids/DeltascapeV10Savage.cpp | 25 + .../Scripts/instances/raids/DeltascapeV20.cpp | 25 + .../instances/raids/DeltascapeV20Savage.cpp | 25 + .../Scripts/instances/raids/DeltascapeV30.cpp | 25 + .../instances/raids/DeltascapeV30Savage.cpp | 25 + .../Scripts/instances/raids/DeltascapeV40.cpp | 25 + .../instances/raids/DeltascapeV40Savage.cpp | 25 + .../Scripts/instances/raids/DunScaith.cpp | 25 + .../Scripts/instances/raids/SigmascapeV10.cpp | 25 + .../instances/raids/SigmascapeV10Savage.cpp | 25 + .../Scripts/instances/raids/SigmascapeV20.cpp | 25 + .../instances/raids/SigmascapeV20Savage.cpp | 25 + .../Scripts/instances/raids/SigmascapeV30.cpp | 25 + .../instances/raids/SigmascapeV30Savage.cpp | 25 + .../Scripts/instances/raids/SigmascapeV40.cpp | 25 + .../instances/raids/SigmascapeV40Savage.cpp | 25 + .../Scripts/instances/raids/SyrcusTower.cpp | 93 +++ .../raids/TheBindingCoilofBahamutTurn1.cpp | 62 ++ .../raids/TheBindingCoilofBahamutTurn2.cpp | 63 ++ .../raids/TheBindingCoilofBahamutTurn3.cpp | 73 +++ .../raids/TheBindingCoilofBahamutTurn4.cpp | 42 ++ .../raids/TheBindingCoilofBahamutTurn5.cpp | 35 ++ .../raids/TheFinalCoilofBahamutTurn1.cpp | 50 ++ .../raids/TheFinalCoilofBahamutTurn2.cpp | 60 ++ .../raids/TheFinalCoilofBahamutTurn3.cpp | 33 ++ .../raids/TheFinalCoilofBahamutTurn4.cpp | 33 ++ .../raids/TheLabyrinthoftheAncients.cpp | 106 ++++ .../raids/TheRoyalCityofRabanastre.cpp | 25 + .../TheSecondCoilofBahamutSavageTurn1.cpp | 41 ++ .../TheSecondCoilofBahamutSavageTurn2.cpp | 41 ++ .../TheSecondCoilofBahamutSavageTurn3.cpp | 104 ++++ .../TheSecondCoilofBahamutSavageTurn4.cpp | 40 ++ .../raids/TheSecondCoilofBahamutTurn1.cpp | 41 ++ .../raids/TheSecondCoilofBahamutTurn2.cpp | 41 ++ .../raids/TheSecondCoilofBahamutTurn3.cpp | 104 ++++ .../raids/TheSecondCoilofBahamutTurn4.cpp | 40 ++ .../TheUnendingCoilofBahamutUltimate.cpp | 34 ++ .../Scripts/instances/raids/TheVoidArk.cpp | 25 + .../instances/raids/TheWeepingCityofMhach.cpp | 25 + .../instances/raids/TheWorldofDarkness.cpp | 142 +++++ .../instances/treasurehunt/TheAquapolis.cpp | 127 ++++ .../treasurehunt/TheHiddenCanalsofUznair.cpp | 25 + .../treasurehunt/TheLostCanalsofUznair.cpp | 25 + .../trials/ARelicReborntheChimera.cpp | 42 ++ .../instances/trials/ARelicReborntheHydra.cpp | 76 +++ .../trials/AkhAfahAmphitheatreExtreme.cpp | 39 ++ .../trials/AkhAfahAmphitheatreHard.cpp | 39 ++ .../instances/trials/BattleintheBigKeep.cpp | 148 +++++ .../instances/trials/BattleontheBigBridge.cpp | 37 ++ .../Scripts/instances/trials/CapeWestwind.cpp | 29 + .../instances/trials/ContainmentBayP1T6.cpp | 25 + .../trials/ContainmentBayP1T6Extreme.cpp | 25 + .../instances/trials/ContainmentBayS1T7.cpp | 25 + .../trials/ContainmentBayS1T7Extreme.cpp | 25 + .../instances/trials/ContainmentBayZ1T9.cpp | 25 + .../trials/ContainmentBayZ1T9Extreme.cpp | 25 + .../Scripts/instances/trials/Emanation.cpp | 25 + .../instances/trials/EmanationExtreme.cpp | 25 + .../instances/trials/SpecialEventI.cpp | 28 + .../instances/trials/SpecialEventII.cpp | 25 + .../instances/trials/SpecialEventIII.cpp | 25 + .../instances/trials/TheBowlofEmbers.cpp | 30 + .../trials/TheBowlofEmbersExtreme.cpp | 30 + .../instances/trials/TheBowlofEmbersHard.cpp | 30 + .../Scripts/instances/trials/TheChrysalis.cpp | 58 ++ .../instances/trials/TheDragonsNeck.cpp | 81 +++ .../instances/trials/TheFinalStepsofFaith.cpp | 31 + .../instances/trials/TheHowlingEye.cpp | 36 ++ .../instances/trials/TheHowlingEyeExtreme.cpp | 36 ++ .../instances/trials/TheHowlingEyeHard.cpp | 36 ++ .../Scripts/instances/trials/TheJadeStoa.cpp | 25 + .../instances/trials/TheJadeStoaExtreme.cpp | 25 + .../trials/TheLimitlessBlueExtreme.cpp | 25 + .../instances/trials/TheLimitlessBlueHard.cpp | 25 + .../trials/TheMinstrelsBalladNidhoggsRage.cpp | 31 + .../TheMinstrelsBalladShinryusDomain.cpp | 25 + .../TheMinstrelsBalladThordansReign.cpp | 25 + .../trials/TheMinstrelsBalladUltimasBane.cpp | 34 ++ .../Scripts/instances/trials/TheNavel.cpp | 28 + .../instances/trials/TheNavelExtreme.cpp | 28 + .../Scripts/instances/trials/TheNavelHard.cpp | 28 + .../instances/trials/ThePoolofTribute.cpp | 25 + .../trials/ThePoolofTributeExtreme.cpp | 25 + .../instances/trials/TheRoyalMenagerie.cpp | 25 + .../trials/TheSingularityReactor.cpp | 25 + .../instances/trials/TheStepsofFaith.cpp | 52 ++ .../trials/TheStrikingTreeExtreme.cpp | 28 + .../instances/trials/TheStrikingTreeHard.cpp | 28 + .../instances/trials/TheWhorleaterExtreme.cpp | 33 ++ .../instances/trials/TheWhorleaterHard.cpp | 33 ++ .../instances/trials/ThokastThokExtreme.cpp | 25 + .../instances/trials/ThokastThokHard.cpp | 25 + .../instances/trials/ThornmarchExtreme.cpp | 28 + .../instances/trials/ThornmarchHard.cpp | 28 + .../Scripts/instances/trials/UrthsFount.cpp | 28 + .../Scripts/opening/OpeningGridania.cpp | 92 +++ src/servers/Scripts/opening/OpeningLimsa.cpp | 100 ++++ src/servers/Scripts/opening/OpeningUldah.cpp | 93 +++ src/servers/Scripts/opening/ScriptLoader.cpp | 19 + src/servers/Scripts/quest/ManFst001.cpp | 107 ++++ src/servers/Scripts/quest/ManFst002.cpp | 225 +++++++ src/servers/Scripts/quest/ManFst003.cpp | 24 + src/servers/Scripts/quest/ManFst004.cpp | 255 ++++++++ src/servers/Scripts/quest/ManSea001.cpp | 162 ++++++ src/servers/Scripts/quest/ManSea002.cpp | 152 +++++ src/servers/Scripts/quest/ManWil001.cpp | 145 +++++ src/servers/Scripts/quest/ManWil002.cpp | 159 +++++ src/servers/Scripts/quest/ScriptLoader.cpp | 37 ++ .../quest/subquest/gridania/SubFst001.cpp | 87 +++ .../quest/subquest/gridania/SubFst002.cpp | 79 +++ .../quest/subquest/gridania/SubFst010.cpp | 59 ++ .../quest/subquest/gridania/SubFst013.cpp | 187 ++++++ src/servers/sapphire_zone/CMakeLists.txt | 3 - 299 files changed, 13331 insertions(+), 3 deletions(-) create mode 100644 src/servers/Scripts/CMakeLists.txt create mode 100644 src/servers/Scripts/ScriptLoader.cpp.in create mode 100644 src/servers/Scripts/ScriptObject.h create mode 100644 src/servers/Scripts/action/ActionSprint3.cpp create mode 100644 src/servers/Scripts/action/ScriptLoader.cpp create mode 100644 src/servers/Scripts/common/Aethernet.cpp create mode 100644 src/servers/Scripts/common/Aetheryte.cpp create mode 100644 src/servers/Scripts/common/CmnDefCutSceneReplay.cpp create mode 100644 src/servers/Scripts/common/CmnDefInnBed.cpp create mode 100644 src/servers/Scripts/common/CmnDefLinkShell.cpp create mode 100644 src/servers/Scripts/common/HouFurOrchestrion.cpp create mode 100644 src/servers/Scripts/common/ScriptLoader.cpp create mode 100644 src/servers/Scripts/instances/ScriptLoader.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors101110.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors110.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors111120.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors1120.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors121130.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors131140.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors141150.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors151160.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors161170.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors171180.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors181190.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors191200.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors2130.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors3140.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors4150.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors5160.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors6170.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors7180.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors8190.cpp create mode 100644 src/servers/Scripts/instances/deepdungeon/ThePalaceoftheDeadFloors91100.cpp create mode 100644 src/servers/Scripts/instances/dungeons/AlaMhigo.cpp create mode 100644 src/servers/Scripts/instances/dungeons/AmdaporKeep.cpp create mode 100644 src/servers/Scripts/instances/dungeons/AmdaporKeepHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/BaelsarsWall.cpp create mode 100644 src/servers/Scripts/instances/dungeons/BardamsMettle.cpp create mode 100644 src/servers/Scripts/instances/dungeons/BrayfloxsLongstop.cpp create mode 100644 src/servers/Scripts/instances/dungeons/BrayfloxsLongstopHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/CastrumAbania.cpp create mode 100644 src/servers/Scripts/instances/dungeons/CastrumMeridianum.cpp create mode 100644 src/servers/Scripts/instances/dungeons/CopperbellMines.cpp create mode 100644 src/servers/Scripts/instances/dungeons/CopperbellMinesHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/CuttersCry.cpp create mode 100644 src/servers/Scripts/instances/dungeons/DomaCastle.cpp create mode 100644 src/servers/Scripts/instances/dungeons/DzemaelDarkhold.cpp create mode 100644 src/servers/Scripts/instances/dungeons/Halatali.cpp create mode 100644 src/servers/Scripts/instances/dungeons/HalataliHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/HaukkeManor.cpp create mode 100644 src/servers/Scripts/instances/dungeons/HaukkeManorHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/HellsLid.cpp create mode 100644 src/servers/Scripts/instances/dungeons/HullbreakerIsle.cpp create mode 100644 src/servers/Scripts/instances/dungeons/HullbreakerIsleHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/KuganeCastle.cpp create mode 100644 src/servers/Scripts/instances/dungeons/Neverreap.cpp create mode 100644 src/servers/Scripts/instances/dungeons/PharosSirius.cpp create mode 100644 src/servers/Scripts/instances/dungeons/PharosSiriusHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/SaintMociannesArboretum.cpp create mode 100644 src/servers/Scripts/instances/dungeons/Sastasha.cpp create mode 100644 src/servers/Scripts/instances/dungeons/SastashaHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/ShisuioftheVioletTides.cpp create mode 100644 src/servers/Scripts/instances/dungeons/Snowcloak.cpp create mode 100644 src/servers/Scripts/instances/dungeons/SohmAl.cpp create mode 100644 src/servers/Scripts/instances/dungeons/SohmAlHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/SohrKhai.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheAery.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheAetherochemicalResearchFacility.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheAntitower.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheAurumVale.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheDrownedCityofSkalla.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheDuskVigil.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheFractalContinuum.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheFractalContinuumHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheGreatGubalLibrary.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheGreatGubalLibraryHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheKeeperoftheLake.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheLostCityofAmdapor.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheLostCityofAmdaporHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/ThePraetorium.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheSirensongSea.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheStoneVigil.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheStoneVigilHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheSunkenTempleofQarn.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheSunkenTempleofQarnHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheTamTaraDeepcroft.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheTamTaraDeepcroftHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheTempleoftheFist.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheThousandMawsofTotoRak.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheVault.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheWanderersPalace.cpp create mode 100644 src/servers/Scripts/instances/dungeons/TheWanderersPalaceHard.cpp create mode 100644 src/servers/Scripts/instances/dungeons/Xelphatol.cpp create mode 100644 src/servers/Scripts/instances/events/TheHauntedManor.cpp create mode 100644 src/servers/Scripts/instances/events/TheValentionesCeremony.cpp create mode 100644 src/servers/Scripts/instances/guildhests/AllsWellthatEndsintheWell.cpp create mode 100644 src/servers/Scripts/instances/guildhests/AnnoytheVoid.cpp create mode 100644 src/servers/Scripts/instances/guildhests/BasicTrainingEnemyParties.cpp create mode 100644 src/servers/Scripts/instances/guildhests/BasicTrainingEnemyStrongholds.cpp create mode 100644 src/servers/Scripts/instances/guildhests/FlickingSticksandTakingNames.cpp create mode 100644 src/servers/Scripts/instances/guildhests/HeroontheHalfShell.cpp create mode 100644 src/servers/Scripts/instances/guildhests/LongLivetheQueen.cpp create mode 100644 src/servers/Scripts/instances/guildhests/MorethanaFeeler.cpp create mode 100644 src/servers/Scripts/instances/guildhests/PullingPoisonPosies.cpp create mode 100644 src/servers/Scripts/instances/guildhests/ShadowandClaw.cpp create mode 100644 src/servers/Scripts/instances/guildhests/SolemnTrinity.cpp create mode 100644 src/servers/Scripts/instances/guildhests/StingingBack.cpp create mode 100644 src/servers/Scripts/instances/guildhests/UndertheArmor.cpp create mode 100644 src/servers/Scripts/instances/guildhests/WardUp.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/AccrueEnmityfromMultipleTargets.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/AssistAlliesinDefeatingaTarget.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/AvoidAreaofEffectAttacks.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/AvoidEngagedTargets.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/DefeatanOccupiedTarget.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/EngageEnemyReinforcements.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/EngageMultipleTargets.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/ExecuteaComboinBattle.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/ExecuteaCombotoIncreaseEnmity.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/ExecuteaRangedAttacktoIncreaseEnmity.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/FinalExercise.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/HealMultipleAllies.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/HealanAlly.cpp create mode 100644 src/servers/Scripts/instances/hallofthenovice/InteractwiththeBattlefield.cpp create mode 100644 src/servers/Scripts/instances/pvp/Astragalos.cpp create mode 100644 src/servers/Scripts/instances/pvp/SealRockSeize.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheBorderlandRuinsSecure.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheFeast4on4LightParty.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheFeast4on4Ranked.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheFeast4on4Training.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheFeastCustomMatchCrystalTower.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheFeastCustomMatchFeastingGrounds.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheFeastCustomMatchLichenweed.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheFeastRanked.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheFeastTeamRanked.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheFeastTraining.cpp create mode 100644 src/servers/Scripts/instances/pvp/TheFieldsofGloryShatter.cpp create mode 100644 src/servers/Scripts/instances/questbattles/ABloodyReunion.cpp create mode 100644 src/servers/Scripts/instances/questbattles/ASpectaclefortheAges.cpp create mode 100644 src/servers/Scripts/instances/questbattles/BloodDragoon.cpp create mode 100644 src/servers/Scripts/instances/questbattles/BloodontheDeck.cpp create mode 100644 src/servers/Scripts/instances/questbattles/CuriousGorgeMeetsHisMatch.cpp create mode 100644 src/servers/Scripts/instances/questbattles/DarkwingDragon.cpp create mode 100644 src/servers/Scripts/instances/questbattles/InThalsName.cpp create mode 100644 src/servers/Scripts/instances/questbattles/InterdimensionalRift.cpp create mode 100644 src/servers/Scripts/instances/questbattles/ItsProbablyaTrap.cpp create mode 100644 src/servers/Scripts/instances/questbattles/MatsubaMayhem.cpp create mode 100644 src/servers/Scripts/instances/questbattles/Naadam.cpp create mode 100644 src/servers/Scripts/instances/questbattles/OneLifeforOneWorld.cpp create mode 100644 src/servers/Scripts/instances/questbattles/OurCompromise.cpp create mode 100644 src/servers/Scripts/instances/questbattles/OurUnsungHeroes.cpp create mode 100644 src/servers/Scripts/instances/questbattles/RaisingtheSword.cpp create mode 100644 src/servers/Scripts/instances/questbattles/ReturnoftheBull.cpp create mode 100644 src/servers/Scripts/instances/questbattles/TheBattleonBekko.cpp create mode 100644 src/servers/Scripts/instances/questbattles/TheCarteneauFlatsHeliodrome.cpp create mode 100644 src/servers/Scripts/instances/questbattles/TheFaceofTrueEvil.cpp create mode 100644 src/servers/Scripts/instances/questbattles/TheHeartoftheProblem.cpp create mode 100644 src/servers/Scripts/instances/questbattles/TheOrphansandtheBrokenBlade.cpp create mode 100644 src/servers/Scripts/instances/questbattles/TheResonant.cpp create mode 100644 src/servers/Scripts/instances/questbattles/WhenClansCollide.cpp create mode 100644 src/servers/Scripts/instances/questbattles/WithHeartandSteel.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheArmoftheFather.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheArmoftheFatherSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheArmoftheSon.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheArmoftheSonSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheBreathoftheCreator.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheBreathoftheCreatorSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheBurdenoftheFather.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheBurdenoftheFatherSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheBurdenoftheSon.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheBurdenoftheSonSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheCuffoftheFather.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheCuffoftheFatherSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheCuffoftheSon.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheCuffoftheSonSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheEyesoftheCreator.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheEyesoftheCreatorSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheFistoftheFather.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheFistoftheFatherSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheFistoftheSon.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheFistoftheSonSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheHeartoftheCreator.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheHeartoftheCreatorSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheSouloftheCreator.cpp create mode 100644 src/servers/Scripts/instances/raids/AlexanderTheSouloftheCreatorSavage.cpp create mode 100644 src/servers/Scripts/instances/raids/DeltascapeV10.cpp create mode 100644 src/servers/Scripts/instances/raids/DeltascapeV10Savage.cpp create mode 100644 src/servers/Scripts/instances/raids/DeltascapeV20.cpp create mode 100644 src/servers/Scripts/instances/raids/DeltascapeV20Savage.cpp create mode 100644 src/servers/Scripts/instances/raids/DeltascapeV30.cpp create mode 100644 src/servers/Scripts/instances/raids/DeltascapeV30Savage.cpp create mode 100644 src/servers/Scripts/instances/raids/DeltascapeV40.cpp create mode 100644 src/servers/Scripts/instances/raids/DeltascapeV40Savage.cpp create mode 100644 src/servers/Scripts/instances/raids/DunScaith.cpp create mode 100644 src/servers/Scripts/instances/raids/SigmascapeV10.cpp create mode 100644 src/servers/Scripts/instances/raids/SigmascapeV10Savage.cpp create mode 100644 src/servers/Scripts/instances/raids/SigmascapeV20.cpp create mode 100644 src/servers/Scripts/instances/raids/SigmascapeV20Savage.cpp create mode 100644 src/servers/Scripts/instances/raids/SigmascapeV30.cpp create mode 100644 src/servers/Scripts/instances/raids/SigmascapeV30Savage.cpp create mode 100644 src/servers/Scripts/instances/raids/SigmascapeV40.cpp create mode 100644 src/servers/Scripts/instances/raids/SigmascapeV40Savage.cpp create mode 100644 src/servers/Scripts/instances/raids/SyrcusTower.cpp create mode 100644 src/servers/Scripts/instances/raids/TheBindingCoilofBahamutTurn1.cpp create mode 100644 src/servers/Scripts/instances/raids/TheBindingCoilofBahamutTurn2.cpp create mode 100644 src/servers/Scripts/instances/raids/TheBindingCoilofBahamutTurn3.cpp create mode 100644 src/servers/Scripts/instances/raids/TheBindingCoilofBahamutTurn4.cpp create mode 100644 src/servers/Scripts/instances/raids/TheBindingCoilofBahamutTurn5.cpp create mode 100644 src/servers/Scripts/instances/raids/TheFinalCoilofBahamutTurn1.cpp create mode 100644 src/servers/Scripts/instances/raids/TheFinalCoilofBahamutTurn2.cpp create mode 100644 src/servers/Scripts/instances/raids/TheFinalCoilofBahamutTurn3.cpp create mode 100644 src/servers/Scripts/instances/raids/TheFinalCoilofBahamutTurn4.cpp create mode 100644 src/servers/Scripts/instances/raids/TheLabyrinthoftheAncients.cpp create mode 100644 src/servers/Scripts/instances/raids/TheRoyalCityofRabanastre.cpp create mode 100644 src/servers/Scripts/instances/raids/TheSecondCoilofBahamutSavageTurn1.cpp create mode 100644 src/servers/Scripts/instances/raids/TheSecondCoilofBahamutSavageTurn2.cpp create mode 100644 src/servers/Scripts/instances/raids/TheSecondCoilofBahamutSavageTurn3.cpp create mode 100644 src/servers/Scripts/instances/raids/TheSecondCoilofBahamutSavageTurn4.cpp create mode 100644 src/servers/Scripts/instances/raids/TheSecondCoilofBahamutTurn1.cpp create mode 100644 src/servers/Scripts/instances/raids/TheSecondCoilofBahamutTurn2.cpp create mode 100644 src/servers/Scripts/instances/raids/TheSecondCoilofBahamutTurn3.cpp create mode 100644 src/servers/Scripts/instances/raids/TheSecondCoilofBahamutTurn4.cpp create mode 100644 src/servers/Scripts/instances/raids/TheUnendingCoilofBahamutUltimate.cpp create mode 100644 src/servers/Scripts/instances/raids/TheVoidArk.cpp create mode 100644 src/servers/Scripts/instances/raids/TheWeepingCityofMhach.cpp create mode 100644 src/servers/Scripts/instances/raids/TheWorldofDarkness.cpp create mode 100644 src/servers/Scripts/instances/treasurehunt/TheAquapolis.cpp create mode 100644 src/servers/Scripts/instances/treasurehunt/TheHiddenCanalsofUznair.cpp create mode 100644 src/servers/Scripts/instances/treasurehunt/TheLostCanalsofUznair.cpp create mode 100644 src/servers/Scripts/instances/trials/ARelicReborntheChimera.cpp create mode 100644 src/servers/Scripts/instances/trials/ARelicReborntheHydra.cpp create mode 100644 src/servers/Scripts/instances/trials/AkhAfahAmphitheatreExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/AkhAfahAmphitheatreHard.cpp create mode 100644 src/servers/Scripts/instances/trials/BattleintheBigKeep.cpp create mode 100644 src/servers/Scripts/instances/trials/BattleontheBigBridge.cpp create mode 100644 src/servers/Scripts/instances/trials/CapeWestwind.cpp create mode 100644 src/servers/Scripts/instances/trials/ContainmentBayP1T6.cpp create mode 100644 src/servers/Scripts/instances/trials/ContainmentBayP1T6Extreme.cpp create mode 100644 src/servers/Scripts/instances/trials/ContainmentBayS1T7.cpp create mode 100644 src/servers/Scripts/instances/trials/ContainmentBayS1T7Extreme.cpp create mode 100644 src/servers/Scripts/instances/trials/ContainmentBayZ1T9.cpp create mode 100644 src/servers/Scripts/instances/trials/ContainmentBayZ1T9Extreme.cpp create mode 100644 src/servers/Scripts/instances/trials/Emanation.cpp create mode 100644 src/servers/Scripts/instances/trials/EmanationExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/SpecialEventI.cpp create mode 100644 src/servers/Scripts/instances/trials/SpecialEventII.cpp create mode 100644 src/servers/Scripts/instances/trials/SpecialEventIII.cpp create mode 100644 src/servers/Scripts/instances/trials/TheBowlofEmbers.cpp create mode 100644 src/servers/Scripts/instances/trials/TheBowlofEmbersExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/TheBowlofEmbersHard.cpp create mode 100644 src/servers/Scripts/instances/trials/TheChrysalis.cpp create mode 100644 src/servers/Scripts/instances/trials/TheDragonsNeck.cpp create mode 100644 src/servers/Scripts/instances/trials/TheFinalStepsofFaith.cpp create mode 100644 src/servers/Scripts/instances/trials/TheHowlingEye.cpp create mode 100644 src/servers/Scripts/instances/trials/TheHowlingEyeExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/TheHowlingEyeHard.cpp create mode 100644 src/servers/Scripts/instances/trials/TheJadeStoa.cpp create mode 100644 src/servers/Scripts/instances/trials/TheJadeStoaExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/TheLimitlessBlueExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/TheLimitlessBlueHard.cpp create mode 100644 src/servers/Scripts/instances/trials/TheMinstrelsBalladNidhoggsRage.cpp create mode 100644 src/servers/Scripts/instances/trials/TheMinstrelsBalladShinryusDomain.cpp create mode 100644 src/servers/Scripts/instances/trials/TheMinstrelsBalladThordansReign.cpp create mode 100644 src/servers/Scripts/instances/trials/TheMinstrelsBalladUltimasBane.cpp create mode 100644 src/servers/Scripts/instances/trials/TheNavel.cpp create mode 100644 src/servers/Scripts/instances/trials/TheNavelExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/TheNavelHard.cpp create mode 100644 src/servers/Scripts/instances/trials/ThePoolofTribute.cpp create mode 100644 src/servers/Scripts/instances/trials/ThePoolofTributeExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/TheRoyalMenagerie.cpp create mode 100644 src/servers/Scripts/instances/trials/TheSingularityReactor.cpp create mode 100644 src/servers/Scripts/instances/trials/TheStepsofFaith.cpp create mode 100644 src/servers/Scripts/instances/trials/TheStrikingTreeExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/TheStrikingTreeHard.cpp create mode 100644 src/servers/Scripts/instances/trials/TheWhorleaterExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/TheWhorleaterHard.cpp create mode 100644 src/servers/Scripts/instances/trials/ThokastThokExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/ThokastThokHard.cpp create mode 100644 src/servers/Scripts/instances/trials/ThornmarchExtreme.cpp create mode 100644 src/servers/Scripts/instances/trials/ThornmarchHard.cpp create mode 100644 src/servers/Scripts/instances/trials/UrthsFount.cpp create mode 100644 src/servers/Scripts/opening/OpeningGridania.cpp create mode 100644 src/servers/Scripts/opening/OpeningLimsa.cpp create mode 100644 src/servers/Scripts/opening/OpeningUldah.cpp create mode 100644 src/servers/Scripts/opening/ScriptLoader.cpp create mode 100644 src/servers/Scripts/quest/ManFst001.cpp create mode 100644 src/servers/Scripts/quest/ManFst002.cpp create mode 100644 src/servers/Scripts/quest/ManFst003.cpp create mode 100644 src/servers/Scripts/quest/ManFst004.cpp create mode 100644 src/servers/Scripts/quest/ManSea001.cpp create mode 100644 src/servers/Scripts/quest/ManSea002.cpp create mode 100644 src/servers/Scripts/quest/ManWil001.cpp create mode 100644 src/servers/Scripts/quest/ManWil002.cpp create mode 100644 src/servers/Scripts/quest/ScriptLoader.cpp create mode 100644 src/servers/Scripts/quest/subquest/gridania/SubFst001.cpp create mode 100644 src/servers/Scripts/quest/subquest/gridania/SubFst002.cpp create mode 100644 src/servers/Scripts/quest/subquest/gridania/SubFst010.cpp create mode 100644 src/servers/Scripts/quest/subquest/gridania/SubFst013.cpp diff --git a/src/servers/CMakeLists.txt b/src/servers/CMakeLists.txt index 82613bd6..28e43594 100644 --- a/src/servers/CMakeLists.txt +++ b/src/servers/CMakeLists.txt @@ -12,3 +12,4 @@ include_directories("${PROJECT_SOURCE_DIR}") add_subdirectory(${PROJECT_SOURCE_DIR}/sapphire_lobby) add_subdirectory(${PROJECT_SOURCE_DIR}/sapphire_api) add_subdirectory(${PROJECT_SOURCE_DIR}/sapphire_zone) +add_subdirectory(${PROJECT_SOURCE_DIR}/Scripts) diff --git a/src/servers/Scripts/CMakeLists.txt b/src/servers/Scripts/CMakeLists.txt new file mode 100644 index 00000000..2647b366 --- /dev/null +++ b/src/servers/Scripts/CMakeLists.txt @@ -0,0 +1,81 @@ +cmake_minimum_required(VERSION 3.0) +project(Sapphire_Script) + +file(GLOB SCRIPT_INCLUDE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*.h") + +include_directories("${CMAKE_SOURCE_DIR}/src/servers/") + +message("exec: ${EXECUTABLE_OUTPUT_DIRECTORY}") + +set(SCRIPT_LIB_DIR "${EXECUTABLE_OUTPUT_DIRECTORY}/compiledscripts/" ) +set(EXECUTABLE_OUTPUT_PATH "${SCRIPT_LIB_DIR}") +set(LIBRARY_OUTPUT_PATH "${SCRIPT_LIB_DIR}") +set(RUNTIME_OUTPUT_DIRECTORY "${SCRIPT_LIB_DIR}") + + +file(GLOB children "${CMAKE_CURRENT_SOURCE_DIR}/*" ) +foreach(_scriptDir ${children}) + get_filename_component(_name "${_scriptDir}" NAME_WE) + if(IS_DIRECTORY ${_scriptDir} AND NOT ${_name} MATCHES "CMakeFiles") + message("discovered plugin lib: ${_scriptDir} (${_name})") + + file(GLOB_RECURSE SCRIPT_BUILD_FILES "${_scriptDir}/*.cpp") + file(GLOB_RECURSE SCRIPT_FILES RELATIVE "${_scriptDir}" "${_name}/*.cpp") + + # build file list + foreach(_script ${SCRIPT_FILES}) + get_filename_component( _scriptname "${_script}" NAME_WE) + + if(NOT ${_scriptname} MATCHES "ScriptLoader") + if(ScriptIncludes) + set(ScriptIncludes "${ScriptIncludes}\n#include \"${_script}\"") + else() + set(ScriptIncludes "#include \"${_script}\"") + endif() + + set(ScriptNames "${ScriptNames} static_cast< ScriptObject* >( new ${_scriptname} ),\n") + endif() + endforeach() + + add_library("script_${_name}" MODULE ${SCRIPT_BUILD_FILES} "${SCRIPT_INCLUDE_FILES}" "${_scriptDir}/ScriptLoader.cpp") + target_link_libraries("script_${_name}" sapphire_zone) + + if(MSVC) + target_link_libraries("script_${_name}" ${Boost_LIBRARIES}) + endif() + + if(MSVC) + set_target_properties("script_${_name}" PROPERTIES + CXX_STANDARD 14 + CXX_STANDARD_REQUIRED ON + CXX_EXTENSIONS ON + LIBRARY_OUTPUT_DIRECTORY_DEBUG "${SCRIPT_LIB_DIR}" + LIBRARY_OUTPUT_DIRECTORY_RELEASE "${SCRIPT_LIB_DIR}" + LIBRARY_OUTPUT_DIRECTORY_RELWITHDEBINFO "${SCRIPT_LIB_DIR}" + LIBRARY_OUTPUT_DIRECTORY_MINSIZEREL "${SCRIPT_LIB_DIR}" + ) + endif() + target_include_directories("script_${_name}" PUBLIC "${CMAKE_SOURCE_DIR}/src/servers/sapphire_zone/") + target_include_directories("script_${_name}" PUBLIC "${CMAKE_SOURCE_DIR}/src/servers/sapphire_zone/Script") + target_include_directories("script_${_name}" PUBLIC "${CMAKE_SOURCE_DIR}/src/servers/sapphire_zone/Script/Scripts") + target_include_directories("script_${_name}" PUBLIC "${CMAKE_SOURCE_DIR}/src/") + target_include_directories("script_${_name}" PUBLIC "${CMAKE_SOURCE_DIR}/src/common") + target_include_directories("script_${_name}" PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}") + target_include_directories("script_${_name}" PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/Scripts") + + configure_file("${CMAKE_CURRENT_SOURCE_DIR}/ScriptLoader.cpp.in" "${_scriptDir}/ScriptLoader.cpp") + + cotire("script_${_name}") + + if(MSVC) + add_custom_command(TARGET "script_${_name}" POST_BUILD + COMMAND ${CMAKE_COMMAND} -E remove "${SCRIPT_LIB_DIR}/script_${_name}.exp" + COMMAND ${CMAKE_COMMAND} -E remove "${SCRIPT_LIB_DIR}/script_${_name}.lib" + COMMAND ${CMAKE_COMMAND} -E remove "${SCRIPT_LIB_DIR}/script_${_name}.ilk" + ) + endif() + + unset(ScriptIncludes) + unset(ScriptNames) + endif() +endforeach() diff --git a/src/servers/Scripts/ScriptLoader.cpp.in b/src/servers/Scripts/ScriptLoader.cpp.in new file mode 100644 index 00000000..739b32af --- /dev/null +++ b/src/servers/Scripts/ScriptLoader.cpp.in @@ -0,0 +1,14 @@ +#include