From 2cc887d287fb2c9d2fb580978805a2a9e49344c0 Mon Sep 17 00:00:00 2001 From: mattyx14 Date: Mon, 14 Aug 2023 00:18:22 -0600 Subject: [PATCH] more clean now work --- data-otxserver/lib/core/storages.lua | 2253 +---------------- .../actions/other/construction_kits.lua | 54 - .../scripts/actions/other/destroy.lua | 15 - .../scripts/actions/other/enchanting.lua | 17 - data-otxserver/scripts/actions/other/food.lua | 4 - data-otxserver/scripts/actions/other/gems.lua | 139 +- .../scripts/actions/other/music.lua | 29 - .../scripts/actions/tools/skinning.lua | 24 - data-otxserver/scripts/actions/worldboard.lua | 32 +- .../creaturescripts/customs/freequests.lua | 347 +-- .../creaturescripts/others/player_death.lua | 4 - .../eventcallbacks/monster/on_spawn.lua | 28 - .../scripts/globalevents/others/startup.lua | 6 - .../scripts/lib/register_actions.lua | 689 +---- 14 files changed, 30 insertions(+), 3611 deletions(-) diff --git a/data-otxserver/lib/core/storages.lua b/data-otxserver/lib/core/storages.lua index 4af0bb051..1b01f82cf 100644 --- a/data-otxserver/lib/core/storages.lua +++ b/data-otxserver/lib/core/storages.lua @@ -80,84 +80,17 @@ Reserved player action storage key ranges (const.h) Storage = { -- General storages IsTraining = 30000, - -- Reserved in Global.Storage.NpcExhaust = 30001 - Dragonfetish = 30003, - EdronRopeQuest = 30004, - GhostShipQuest = 30005, - OrcKingGreeting = 30006, - MarkwinGreeting = 30007, - -- EmoteSpells Storage cannot be changed, it is set in source code EmoteSpells = 30008, - WagonTicket = 30009, - BloodHerbQuest = 30010, - FirstMageWeapon = 30011, - ToOutfoxAFoxQuest = 30012, - KawillBlessing = 30014, RentedHorseTimer = 30015, - FountainOfLife = 30016, - KnightwatchTowerDoor = 30017, - -- Promotion Storage cannot be changed, it is set in source code Promotion = 30018, - RookgaardHints = 30019, - RookgaardDestiny = 30020, - EruaranGreeting = 30021, - MaryzaCookbook = 30022, - -- Reserved in Global.Storage.CombatProtectionStorage = 30023 Factions = 30024, - -- Reserved in Global.Storage.BlockMovementStorage = 30025 - -- Reserved in Global.Storage.FamiliarSummon = 30026 - -- unused TrainerRoom = 30027, - -- unused NpcSpawn = 30028, ExerciseDummyExhaust = 30029, - SamsOldBackpack = 30030, - SamsOldBackpackDoor = 30031, - StrawberryCupcake = 30032, - ChayenneReward = 30033, - SwampDiggingTimeout = 30034, - HydraEggQuest = 30035, - Atrad = 30036, - ElementalistQuest1 = 30037, - ElementalistQuest2 = 30038, - ElementalistQuest3 = 30039, - ElementalistOutfitStart = 30040, - WayfarerOutfit = 30041, - DreamOutfit = 30042, - Percht1 = 30043, - Percht2 = 30044, - Percht3 = 30045, - Irmana1 = 30046, - Irmana2 = 30047, - Navigator = 30048, - DwarvenLegs = 30049, - PrinceDrazzakTime = 30050, - -- Reserved in Global.Storage.StoreExaust = 30051 + SwampDiggingTimeout = 30034, -- check LemonCupcake = 30052, BlueberryCupcake = 30053, - -- Reserved in Global.Storage.FamiliarSummonEvent10 = 30054 - -- Reserved in Global.Storage.FamiliarSummonEvent60 = 30055 - ChayenneKeyTime = 30056, FreeQuests = 30057, PremiumAccount = 30058, - BattleAxeQuest = 30059, - ShrineEntrance = 30060, - --[[ - Old storages - Over time, this will be dropped and replaced by the table above - ]] - DeeplingsWorldChange = { - -- Reserved storage from 50000 - 50009 - Questline = 50000, - FirstStage = 50001, - SecondStage = 50002, - ThirdStage = 50003, - Crystal = 50004 - }, - LiquidBlackQuest = { - -- Reserved storage from 50010 - 50014 - Questline = 50010, - Visitor = 50011 - }, Kilmaresh = { -- Reserved storage from 50015 - 50049 Questline = 50015, @@ -227,141 +160,6 @@ Storage = { TheOrderOfTheFalcon = { OberonTimer = 50050 }, - LiquidDeath = 50051, - Mota = 50052, - MotaDoor = 50053, - BasinDoor = 50054, - SkullDoor = 50055, - TheLament = 50056, - GreenTel = 50057, - BlueTel = 50058, - BlackTel = 50059, - PinkTel = 50060, - Peacock = 50061, - HighDry = 50062, - FalconBastionAccess = 50063, - FalconBastionChestsTimer = { - Key0909 = 50064 - }, - MiniBosses = { - GrandCommanderSoeren = 50065, - PreceptorLazare = 50066, - GrandChaplainGaunder = 50067, - GrandCanonDominus = 50068, - DazedLeafGolem = 50069 - }, - LowerBastionAccess = 50070, - UndergroundBastionAccess = 50071, - OberonAccess = 50072, - ShortcutToBastion = 50073 - }, - DeeplingBosses = { - -- Reserved storage from 50075 - 50079 - Jaul = 50075, - Tanjis = 50076, - Obujos = 50077, - DeeplingStatus = 50078 - }, - DangerousDepths = { - -- Reserved storage from 50080 - 50199 - Questline = 50080, - Dwarves = { - Status = 50081, - Home = 50082, -- Mission - Subterranean = 50083, -- Mission - LostExiles = 50084, - Prisoners = 50085, - Organisms = 50086, - TimeTaskHome = 50087, - TimeTaskSubterranean = 50088 - }, - Scouts = { - Status = 50090, - Diremaw = 50091, -- Mission - Growth = 50092, -- Mission - DiremawsCount = 50093, - GnomishChest = 50094, - BarrelCount = 50095, - FirstBarrel = 50096, - SecondBarrel = 50097, - ThirdBarrel = 50098, - FourthBarrel = 50099, - FifthBarrel = 50100, - TimeTaskDiremaws = 50101, - TimeTaskGrowth = 50102, - Barrel = 50103, - BarrelTimer = 50104 - }, - Gnomes = { - Status = 50115, - Ordnance = 50116, -- Mission - Measurements = 50117, -- Mission - Charting = 50118, -- Mission - GnomeChartChest = 50119, -- Measurements - GnomeChartPaper = 50120, -- Charting - GnomesCount = 50121, -- Ordnance - CrawlersCount = 50122, -- Ordnance - LocationA = 50123, -- Measurements - LocationB = 50124, -- Measurements - LocationC = 50125, -- Measurements - LocationD = 50126, -- Measurements - LocationE = 50127, -- Measurements - LocationCount = 50128, -- Measurements - OldGate = 50129, -- Charting - TheGaze = 50130, -- Charting - LostRuin = 50131, -- Charting - Outpost = 50132, -- Charting - Bastion = 50133, - -- Charting - BrokenTower = 50134, -- Charting - ChartingCount = 50135, -- Contador - TimeTaskOrdnance = 50136, - TimeTaskMeasurements = 50137, - TimeTaskCharting = 50138 - }, - Access = { - LavaPumpWarzoneVI = 50139, - TimerWarzoneVI = 50140, - LavaPumpWarzoneV = 50141, - TimerWarzoneV = 50142, - LavaPumpWarzoneIV = 50143, - TimerWarzoneIV = 50144 - }, - Crystals = { - WarzoneVI = { - BigCrystal1 = 50155, - BigCrystal2 = 50156, - MediumCrystal1 = 50157, - MediumCrystal2 = 50158, - SmallCrystal1 = 50159, - SmallCrystal2 = 50160 - }, - WarzoneV = { - BigCrystal1 = 50165, - BigCrystal2 = 50166, - MediumCrystal1 = 50167, - MediumCrystal2 = 50168, - SmallCrystal1 = 50169, - SmallCrystal2 = 50170 - }, - WarzoneIV = { - BigCrystal1 = 50175, - BigCrystal2 = 50176, - MediumCrystal1 = 50177, - MediumCrystal2 = 50178, - SmallCrystal1 = 50179, - SmallCrystal2 = 50180 - } - }, - Bosses = { - TheCountOfTheCore = 50185, - TheDukeOfTheDepths = 50186, - TheBaronFromBelow = 50187, - TheCountOfTheCoreAchiev = 50188, - TheDukeOfTheDepthsAchiev = 50189, - TheBaronFromBelowAchiev = 50190, - LastAchievement = 50191 - } }, CultsOfTibia = { -- Reserved storage from 50200 - 50269 @@ -455,19 +253,8 @@ Storage = { }, Grimvale = { -- Reserved storage from 50380 - 50399 - SilverVein = 50380, WereHelmetEnchant = 50381 }, - HeroRathleton = { - -- Reserved storage from 50400 - 50419 - QuestLine = 50400, - VotesCasted = 50401, - Rank = 50402, - AccessDoor = 50403, - AccessTeleport1 = 50404, - AccessTeleport2 = 50405, - AccessTeleport3 = 50406 - }, FerumbrasAscension = { -- Reserved storage from 50420 - 50469 RiftRunner = 50420, -- Scroll @@ -554,89 +341,6 @@ Storage = { SpiderWeb = 50508, LloydEvent = 50509 }, - SweetyCyclops = { - -- Reserved storage from 50520 - 50529 - AmuletTimer = 50520, - AmuletStatus = 50521 - }, - ExplorerSociety = { - -- Reserved storage from 50530 - 50599 - QuestLine = 50530, - SpectralStone = 50531, - SkullOfRatha = 50532, - GiantSmithHammer = 50533, - JoiningTheExplorers = 505344, - TheIceDelivery = 50535, - TheButterflyHunt = 50536, - ThePlantCollection = 50537, - TheLizardUrn = 50538, - TheBonelordSecret = 50539, - TheOrcPowder = 50540, - CalassaQuest = 50541, - TheMemoryStone = 50542, - TheRuneWritings = 50543, - TheEctoplasm = 50544, - TheSpectralDress = 50545, - TheSpectralStone = 50546, - TheAstralPortals = 50547, - TheIslandofDragons = 50548, - TheIceMusic = 50549, - BansheeDoor = 50550, - BonelordsDoor = 50551, - CalassaDoor = 50552, - MemoryStoneDoor = 50553, - ElvenDoor = 50554, - OrcDoor = 50555, - ChorurnDoor = 50556, - DwacatraDoor = 50557, - FamilyBroochDoor = 50558, - TheElvenPoetry = 50559, - SpectralStoneDoor = 50560, - IceMusicDoor = 50561 - }, - TravellingTrader = { - -- Reserved storage from 50600 - 50619 - Mission01 = 50600, - Mission02 = 50601, - Mission03 = 50602, - Mission04 = 50603, - Mission05 = 50604, - Mission06 = 50605, - Mission07 = 50606, - -- unused packageDoor = 50607 - }, - DjinnWar = { - -- Reserved storage from 50620 - 50649 - Faction = { - Greeting = 50620, - MaridDoor = 50621, - EfreetDoor = 50622 - }, - RecievedLamp = 50625, - -- Blue djinn - MaridFaction = { - Start = 50630, - Mission01 = 50631, - Mission02 = 50632, - RataMari = 50633, - Mission03 = 50634, - DoorToLamp = 50635, - DoorToEfreetTerritory = 50636 - }, - -- Green djinn - EfreetFaction = { - Start = 50640, - Mission01 = 50641, - Mission02 = 50642, - Mission03 = 50643, - DoorToLamp = 50644, - DoorToMaridTerritory = 50645 - } - }, - VampireHunter = { - -- Reserved storage from 50650 - 50659 - Rank = 50650 - }, BigfootBurden = { -- Reserved storage from 50660 - 50719 QuestLine = 50660, @@ -691,965 +395,21 @@ Storage = { BossWarzone3 = 50709, GnomedixMsg = 50710 }, - TheirMastersVoice = { - -- Reserved storage from 50720 - 50739 - SlimeGobblerTimeout = 50720, - SlimeGobblerReceived = 50721 - }, - KosheiTheDeathless = { - -- Reserved storage from 50740 - 50749 - RewardDoor = 50740 - }, - ElementalSphere = { - -- Reserved storage from 50750 - 50759 - QuestLine = 50750, - BossStorage = 50751, - MachineGemCount = 50752 - }, - GravediggerOfDrefia = { - -- Reserved storage from 50760 - 50849 - QuestStart = 50760, - Mission01 = 50761, - Mission02 = 50762, - Mission03 = 50763, - Mission04 = 50764, - Mission05 = 50765, - Mission06 = 50766, - Mission07 = 50767, - Mission08 = 50768, - Mission09 = 50769, - Mission10 = 50770, - Mission11 = 50771, - Mission12 = 50772, - Mission13 = 50773, - Mission14 = 50774, - Mission15 = 50775, - Mission16 = 50776, - Mission17 = 50777, - Mission18 = 50778, - Mission19 = 50779, - Mission20 = 50780, - Mission21 = 50781, - Mission22 = 50782, - Mission23 = 50783, - Mission24 = 50784, - Mission25 = 50785, - Mission26 = 50786, - Mission27 = 50787, - Mission28 = 50788, - Mission29 = 50789, - Mission30 = 50790, - Mission31 = 50791, - Mission32 = 50792, - Mission32a = 50793, - Mission32b = 50794, - Mission33 = 50795, - Mission34 = 50796, - Mission35 = 50797, - Mission36 = 50798, - Mission36a = 50799, - Mission37 = 50800, - Mission38 = 50801, - Mission38a = 50802, - Mission38b = 50803, - Mission38c = 50804, - Mission39 = 50805, - Mission40 = 50806, - Mission41 = 50807, - Mission42 = 50808, - Mission43 = 50809, - Mission44 = 50810, - Mission45 = 50811, - Mission46 = 50812, - Mission47 = 50813, - Mission48 = 50814, - Mission49 = 50815, - Mission50 = 50816, - Mission51 = 50817, - Mission52 = 50818, - Mission53 = 50819, - Mission54 = 50820, - Mission55 = 50821, - Mission56 = 50822, - Mission57 = 50823, - Mission58 = 50824, - Mission59 = 50825, - Mission60 = 50826, - Mission61 = 50827, - Mission62 = 50828, - Mission63 = 50829, - Mission64 = 50830, - Mission65 = 50831, - Mission66 = 50832, - Mission67 = 50833, - Mission68 = 50834, - Mission69 = 50835, - Mission70 = 50836, - Mission71 = 50837, - Mission72 = 50838, - Mission73 = 50839, - Mission74 = 50840, - Bookcase = 50841 - }, - Oramond = { - -- Reserved storage from 50850 - 50879 - QuestLine = 50850, - VotingPoints = 50851, - MissionToTakeRoots = 50852, - HarvestedRootCount = 50853, - TaskProbing = 50854, - DoorBeggarKing = 50855, - MissionAbandonedSewer = 50856, - DoorAbandonedSewer = 50857 - }, - DarkTrails = { - -- Reserved storage from 50880 - 50909 - Mission01 = 50881, - Mission02 = 50882, - Mission03 = 50883, - Mission04 = 50884, - Mission05 = 50885, - Mission06 = 50886, - Mission07 = 50887, - Mission08 = 50888, - Mission09 = 50889, - Mission10 = 50890, - Mission11 = 50891, - Mission12 = 50892, - Mission13 = 50893, - Mission14 = 50894, - Mission15 = 50895, - Mission16 = 50896, - Mission17 = 50897, - Mission18 = 50898, - Outfit = 50899, -- final storage - DoorQuandon = 50901, - DoorHideout = 50902 - }, - SpikeTaskQuest = { - -- Reserved storage from 50910 - 50959 - QuestLine = 50910, - Gnomilly = 50911, - Gnombold = { - Points = 50912, - Nests = 50913, - Fertilise = 50914, - Kill = 50915, - Charges = 50916 - }, - Gnomargery = { - Points = 50920, - Deliver = 50921, - Undercover = 50922, - Temperature = 50923, - Kill = 50924 - } - }, OutfitQuest = { -- Reserved storage from 50960 - 51039 -- Until all outfit quests are completed DefaultStart = 50960, Ref = 50961, - Afflicted = { - Outfit = 50962, - AddonPlagueMask = 50963, - AddonPlagueBell = 50964 - }, - Citizen = { - -- Mission storages for temporary questlog entries - MissionHat = 50966, - AddonHat = 50967, - MissionBackpack = 50968, - AddonBackpack = 50969, - AddonBackpackTimer = 50970 - }, - -- Begger Outfit Quest - BeggarFirstAddonDoor = 50975, -- Staff quest - BeggarSecondAddon = 50976, - -- Druid-outfit Quest - DruidHatAddon = 50977, - DruidBodyAddon = 50978, - DruidAmuletDoor = 50979, - -- Barbarian-outfit Quest - BarbarianAddon = 50980, - BarbarianAddonWaitTimer = 50981, - -- Beggar - BeggarOutfit = 50982, - BeggarOutfitTimer = 50983, - -- Hunter-outfit Quest - HunterMusicSheet01 = 50984, - HunterMusicSheet02 = 50985, - HunterMusicSheet03 = 50986, - HunterMusicSheet04 = 50987, - HunterBodyAddon = 50988, - HunterHatAddon = 50989, - Hunter = { - AddonGlove = 50990, - AddonHat = 50991 - }, - Knight = { - AddonSword = 50992, - MissionHelmet = 50993, - AddonHelmet = 50994, - AddonHelmetTimer = 50995, - RamsaysHelmetDoor = 50996 - }, - MageSummoner = { - AddonWand = 50997, - AddonBelt = 50998, - MissionHatCloak = 50999, - AddonHatCloak = 51000, - AddonWandTimer = 51001 - }, - -- Nobleman Outfit - NoblemanFirstAddon = 51002, - NoblemanSecondAddon = 51003, - -- Norseman-outfit Quest - NorsemanAddon = 51004, - -- Warrior-outfit Quest - WarriorShoulderAddon = 51005, - WarriorSwordAddon = 51006, - WarriorShoulderTimer = 51007, - -- Wizard-outfit Quest - WizardAddon = 51008, - -- Pirate-outfit Quest - PirateBaseOutfit = 51009, - PirateSabreAddon = 51010, - PirateHatAddon = 51011, - -- Assassin Outfit - AssassinBaseOutfit = 51012, - AssassinFirstAddon = 51013, - AssassinSecondAddon = 51014, -- Golden Outfit - GoldenOutfit = 51015, - NightmareOutfit = 51016, - NightmareDoor = 51017, - BrotherhoodOutfit = 51018, - BrotherhoodDoor = 51019, - Shaman = { - AddonStaffMask = 51020, - MissionStaff = 51021, - MissionMask = 51022 - }, - DeeplingAnchor = 51023, - FirstOrientalAddon = 51024, - SecondOrientalAddon = 51025 - }, - TheAncientTombs = { - -- Reserved storage from 50940 - 51059 - DefaultStart = 50940, - VashresamunInstruments = 50941, - VashresamunsDoor = 50942, - MorguthisBlueFlameStorage1 = 50943, - MorguthisBlueFlameStorage2 = 50944, - MorguthisBlueFlameStorage3 = 50945, - MorguthisBlueFlameStorage4 = 50946, - MorguthisBlueFlameStorage5 = 50947, - MorguthisBlueFlameStorage6 = 50948, - MorguthisBlueFlameStorage7 = 50949, - - OmrucsTreasure = 50950, - ThalasTreasure = 50951, - DiphtrahsTreasure = 50952, - MahrdisTreasure = 50953, - VashresamunsTreasure = 50954, - MorguthisTreasure = 50955, - RahemosTreasure = 50956 - }, - TheApeCity = { - -- Reserved storage from 51060 - 51079 - Started = 51060, - Questline = 51061, - DworcDoor = 51062, - ChorDoor = 51063, - ParchmentDecyphering = 51064, - FibulaDoor = 51065, - WitchesCapSpot = 51066, - CasksDoor = 51067, - Casks = 51068, - HolyApeHair = 51069, - SnakeDestroyer = 51070, - ShamanOufit = 51071 - }, - TheInquisition = { - -- Reserved storage from 51110 - 51139 - Questline = 51110, - Mission01 = 51111, - Mission02 = 51112, - Mission03 = 51113, - Mission04 = 51114, - Mission05 = 51115, - Mission06 = 51116, - Mission07 = 51117, - RewardDoor = 51118, - GrofGuard = 51120, - KulagGuard = 51121, - MilesGuard = 51122, - TimGuard = 51123, - WalterGuard = 51124, - StorkusVampiredust = 51125, - EnterTeleport = 51126, - Reward = 51127, - RewardRoomText = 51128 - }, - BarbarianTest = { - -- Reserved storage from 51140 - 51159 - Questline = 51140, - Mission01 = 51141, - Mission02 = 51142, - Mission03 = 51143, - MeadTotalSips = 51144, - MeadSuccessSips = 51145 - }, - TheIceIslands = { - -- Reserved storage from 51160 - 51199 - Questline = 51160, - Mission01 = 51161, -- Befriending the Musher - Mission02 = 51162, -- Nibelor 1: Breaking the Ice - Mission03 = 51163, -- Nibelor 2: Ecological Terrorism - Mission04 = 51164, -- Nibelor 3: Artful Sabotage - Mission05 = 51165, -- Nibelor 4: Berserk Brewery - Mission06 = 51166, -- Nibelor 5: Cure the Dogs - Mission07 = 51167, -- The Secret of Helheim - Mission08 = 51168, -- The Contact - Mission09 = 51169, -- Formorgar Mines 1: The Mission - Mission10 = 51170, -- Formorgar Mines 2: Ghostwhisperer - Mission11 = 51171, -- Formorgar Mines 3: The Secret - Mission12 = 51172, -- Formorgar Mines 4: Retaliation - PickAmount = 51173, - PaintSeal = 51174, - SulphurLava = 51175, - SporesMushroom = 51176, - FrostbiteHerb = 51177, - FlowerCactus = 51178, - FlowerBush = 51179, - MemoryCrystal = 51180, - Obelisk01 = 51181, - Obelisk02 = 51182, - Obelisk03 = 51183, - Obelisk04 = 51184, - yakchalDoor = 51185, - HuskyKill = 51186, - HuskyKillStatus = 51187 - }, - TheWayToYalahar = { - -- Reserved storage from 51200 - 51209 - QuestLine = 51200 - }, - InServiceofYalahar = { - -- Reserved storage from 51210 - 51259 - Questline = 51210, - Mission01 = 51211, - Mission02 = 51212, - Mission03 = 51213, - Mission04 = 51214, - Mission05 = 51215, - Mission06 = 51216, - Mission07 = 51217, - Mission08 = 51218, - Mission09 = 51219, - Mission10 = 51220, - SewerPipe01 = 51221, - SewerPipe02 = 51222, - SewerPipe03 = 51223, - SewerPipe04 = 51224, - DiseasedDan = 51225, - DiseasedBill = 55226, - DiseasedFred = 55227, - AlchemistFormula = 51228, - BadSide = 51229, - GoodSide = 55230, - MrWestDoor = 51231, - MrWestStatus = 51232, - TamerinStatus = 55233, - MorikSummon = 51234, - QuaraState = 51235, - QuaraSplasher = 51236, - QuaraSharptooth = 51237, - QuaraInky = 51238, - MatrixState = 51239, - SideDecision = 51240, - MatrixReward = 51241, - NotesPalimuth = 51242, - NotesAzerus = 51243, - DoorToAzerus = 51244, - DoorToBog = 55136, - DoorToLastFight = 55137, - DoorToMatrix = 51247, - DoorToQuara = 51248, - DoorToReward = 51249 - }, - ChildrenoftheRevolution = { - -- Reserved storage from 55145 - 51279 - Questline = 55145, - Mission00 = 55146, -- Prove Your Worzz! - Mission01 = 51262, - Mission02 = 51263, - Mission03 = 51264, - Mission04 = 55148, - Mission05 = 51266, - SpyBuilding01 = 51267, - SpyBuilding02 = 51268, - SpyBuilding03 = 51269, - StrangeSymbols = 55154, - teleportAccess = 55155 - }, - UnnaturalSelection = { - -- Reserved storage from 55159 - 51299 - Questline = 55159, - Mission01 = 51281, - Mission02 = 51282, - Mission03 = 51283, - Mission04 = 51284, - Mission05 = 51285, - Mission06 = 51286, - DanceStatus = 51287 - }, - WrathoftheEmperor = { - -- Reserved storage from 51300 - 51339 - Questline = 51300, - Mission01 = 51301, - Mission02 = 51302, - Mission03 = 51303, - Mission04 = 51304, - Mission05 = 51305, - Mission06 = 51306, - Mission07 = 51307, - Mission08 = 51308, - Mission09 = 51309, - Mission10 = 51310, - Mission11 = 51311, - Mission12 = 51312, - Message = 51313, --1068 - GuardcaughtYou = 51314, --1062 - ZumtahStatus = 51315, --1066 - PrisonReleaseStatus = 51316, --1067 - GhostOfAPriest01 = 51317, --1070 - GhostOfAPriest02 = 51318, --1071 - GhostOfAPriest03 = 51319, --1072 - InterdimensionalPotion = 51320, --1084 - BossStatus = 51321, --1090 - -- unused platinumReward = 51322, - -- unused backpackReward = 51323, - MainReward = 51324, - TeleportAccess = { - Rebel = 51325, - Zlak = 51326, - Zizzle = 51327, - SleepingDragon = 51328, - InnerSanctum = 51329, - AwarnessEmperor = 51330, - Wote10 = 51331, - BossRoom = 51332 - } - }, - FriendsandTraders = { - -- Reserved storage from 51340 - 51359 - DefaultStart = 51340, - TheSweatyCyclops = 51341, - TheMermaidMarina = 51342, - TheBlessedStake = 51343, - TheBlessedStakeWaitTime = 51344 - }, - Postman = { - -- Reserved storage from 51360 - 51389 - Mission01 = 51360, - Mission02 = 51361, - Mission03 = 51362, - Mission04 = 51363, - Mission05 = 51364, - Mission06 = 51365, - Mission07 = 51366, - Mission08 = 51367, - Mission09 = 51368, - Mission10 = 51369, - Rank = 51370, - Door = 51371, - TravelCarlin = 51372, - TravelEdron = 51373, - TravelVenore = 51374, - TravelCormaya = 51375, - MeasurementsBenjamin = 51376, - MeasurementsKroox = 51377, - MeasurementsDove = 51378, - MeasurementsLiane = 51379, - MeasurementsChrystal = 51380, - MeasurementsOlrik = 51381 - }, - ThievesGuild = { - -- Reserved storage from 515206 - 51409 - Quest = 515206, - Mission01 = 515207, - Mission02 = 515208, - Mission03 = 515209, - Mission04 = 51394, - Mission05 = 56395, - Mission06 = 51396, - Mission07 = 51397, - Mission08 = 51398, - Door = 51399, - Reward = 51400, - TheatreScript = 51401 - }, - TheHuntForTheSeaSerpent = { - -- Reserved storage from 51410 - 51419 - }, - SecretService = { - -- Reserved storage from 51420 - 51449 - Quest = 51420, - TBIMission01 = 51421, - AVINMission01 = 51422, - CGBMission01 = 51423, - TBIMission02 = 51424, - AVINMission02 = 51425, - CGBMission02 = 51426, - TBIMission03 = 51427, - AVINMission03 = 51428, - CGBMission03 = 51429, - TBIMission04 = 51430, - AVINMission04 = 51431, - CGBMission04 = 51432, - TBIMission05 = 51433, - AVINMission05 = 51434, - CGBMission05 = 51435, - TBIMission06 = 51436, - AVINMission06 = 51437, - CGBMission06 = 51438, - Mission07 = 51439, - RottenTree = 51440 - }, - HiddenCityOfBeregar = { - -- Reserved storage from 51450 - 51479 - DefaultStart = 51450, - WayToBeregar = 51451, - OreWagon = 51452, - GoingDown = 51453, - JusticeForAll = 51454, - GearWheel = 51455, - SweetAsChocolateCake = 51456, - RoyalRescue = 51457, - TheGoodGuard = 51458, - PythiusTheRotten = 51459, - DoorNorthMine = 51460, - DoorWestMine = 51461, - DoorSouthMine = 51462, - BrownMushrooms = 51463, - TunnellingGuide = 51464 - }, - TibiaTales = { - -- Reserved storage from 51480 - 51539 - DefaultStart = 51480, - UltimateBoozeQuest = 51481, - AgainstTheSpiderCult = 51482, - AnInterestInBotany = 51483, - AnInterestInBotanyChestDoor = 51484, - AritosTask = 51485, - ToAppeaseTheMightyQuest = 51486, - IntoTheBonePit = 51487, - TheExterminator = 51488, - AritosTaskDoor = 51489, - RestInHallowedGround = { - Questline = 51495, - HolyWater = 51496, - Graves = { - Grave1 = 51501, - Grave2 = 51502, - Grave3 = 51503, - Grave4 = 51504, - Grave5 = 51505, - Grave6 = 51506, - Grave7 = 51507, - Grave8 = 51508, - Grave9 = 51509, - Grave10 = 51510, - Grave11 = 51511, - Grave12 = 51512, - Grave13 = 51513, - Grave14 = 51514, - Grave15 = 51515, - Grave16 = 51516 - } - }, - JackFutureQuest = { - QuestLine = 51520, - Furniture01 = 51521, - Furniture02 = 51522, - Furniture03 = 51523, - Furniture04 = 51524, - Furniture05 = 51525, - Mother = 51526, - Sister = 51527, - Statue = 51528, - LastMissionState = 51529 - }, - TheCursedCrystal = { - Oneeyedjoe = 51530, - MedusaOil = 51531, - Questline = 51532 - } - }, - TheShatteredIsles = { - -- Reserved storage from 51540 - 51589 - DefaultStart = 51540, - TheGovernorDaughter = 51541, - TheErrand = 51542, - AccessToMeriana = 51543, - APoemForTheMermaid = 51544, - ADjinnInLove = 51545, - AccessToLagunaIsland = 51546, - AccessToGoroma = 51547, - Shipwrecked = 51548, - DragahsSpellbook = 51549, - TheCounterspell = 51550, - ReputationInSabrehaven = 51551, - RaysMission1 = 51552, - RaysMission2 = 51553, - RaysMission3 = 51554, - RaysMission4 = 51555, - AccessToNargor = 51556, - TortoiseEggNargorDoor = 51557, - TortoiseEggNargorTime = 51558, - YavernDoor = 51559, - TavernMap1 = 51560, - TavernMap2 = 51561, - TavernMap3 = 51562 - }, - SearoutesAroundYalahar = { - -- Reserved storage from 51590 - 51609 - TownsCounter = 51590, - AbDendriel = 51591, - Darashia = 51592, - Venore = 51593, - Ankrahmun = 51594, - PortHope = 51595, - Thais = 51596, - LibertyBay = 51597, - Carlin = 51598 - }, - KillingInTheNameOf = { - -- Reserved storage from 51610 - 51629 - LugriNecromancers = 51610, - BudrikMinos = 51611, - MissionTiquandasRevenge = 51612, - MissionDemodras = 51613, - BossPoints = 51614, - QuestLogEntry = 51615, - PawAndFurRank = 51616, - GreenDjinnTask = 51617, - BlueDjinnTask = 51618, - PirateTask = 51619, - TrollTask = 51620, - GoblinTask = 51621, - RotwormTask = 51622, - CyclopsTask = 51623 - }, - HotCuisineQuest = { - -- Reserved storage from 51650 - 51659 - QuestStart = 51650, - CurrentDish = 51651, - QuestLog = 51652, - CookbookDoor = 51653 - }, - RookgaardTutorialIsland = { - -- Reserved storage from 51660 - 51679 - TutorialHintsStorage = 51665, - SantiagoNpcGreetStorage = 51666, - SantiagoQuestLog = 51667, - -- unused cockroachKillStorage = 51668, - -- unused cockroachLegsMsgStorage = 51669, - -- unused cockroachBodyMsgStorage = 51670, - ZirellaNpcGreetStorage = 51671, - ZirellaQuestLog = 51672, - CarlosNpcTradeStorage = 51673, - CarlosNpcGreetStorage = 51677, - CarlosQuestLog = 51678 + GoldenOutfit = 51015 }, TheRookieGuard = { --Reserved storage 52360 - 52395 - Questline = 52360, - Mission01 = 52361, - Mission02 = 52362, - Mission03 = 52363, - Mission04 = 52364, - Mission05 = 52365, - Mission06 = 52366, - Mission07 = 52367, - Mission08 = 52368, - Mission09 = 52369, - Mission10 = 52370, - Mission11 = 52371, - Mission12 = 52372, - StonePileTimer = 52373, - Catapults = 52374, - RatKills = 52375, - PoacherCorpse = 52376, - LibraryChest = 52377, - TrollChests = 52378, - TunnelPillars = 52379, - Sarcophagus = 52380, - AcademyChest = 52381, - KraknaknorkChests = 52382, - TutorialDelay = 52383, - LibraryDoor = 52384, - UnholyCryptDoor = 52385, - AcademyDoor = 52386, - AcademyChestTimer = 52387, - WarWolfDenChest = 52388, - UnholyCryptChests = 52389, - OrcFortressChests = 52390, - Level8Warning = 52391 - }, - BanutaSecretTunnel = { - -- Reserved storage from 51680 - 51689 - DeeperBanutaShortcut = 51680, - }, - DemonOak = { - -- Reserved storage from 51700 - 51709 - Done = 51700, - Progress = 51701, - Squares = 51702, - AxeBlowsBird = 51703, - AxeBlowsLeft = 51704, - AxeBlowsRight = 51705, - AxeBlowsFace = 51706 - }, - SvargrondArena = { - -- Reserved storage from 51710 - 51729 - Arena = 51710, - PitDoor = 51711, - QuestLogGreenhorn = 51712, - QuestLogScrapper = 51713, - QuestLogWarlord = 51714, - RewardGreenhorn = 51715, - RewardScrapper = 51716, - RewardWarlord = 51717, - TrophyGreenhorn = 51718, - TrophyScrapper = 51719, - TrophyWarlord = 51720, - GreenhornDoor = 51721, - ScrapperDoor = 51722, - WarlordDoor = 51723 - }, - QuestChests = { - -- Reserved storage from 51730 - 51999 - KosheiTheDeathlessLegs = 51730, - KosheiTheDeathlessGold = 51731, - TutorialShovel = 51732, - TutorialRope = 51733, - FormorgarMinesHoistSkeleton = 51737, - FormorgarMinesHoistChest = 51738, - -- Custom Quests, currently not using system.lua (aid 2000) - BlackKnightTreeCrownShield = 51739, - BlackKnightTreeCrownArmor = 51740, - BlackKnightTreeKey = 51741, - KosheiAmulet1 = 51742, - KosheiAmulet2 = 51743, - SilverBrooch = 51744, - FamilyBrooch = 51745, - DCQGhoul = 51746, - FirewalkerBoots = 51747, - DeeperFibulaKey = 51748, - SixRubiesQuest = 51749, - ParchmentRoomQuest = 51750, - WarzoneReward1 = 51751, - WarzoneReward2 = 51752, - WarzoneReward3 = 51753, - FathersBurdenWood = 51754, - FathersBurdenIron = 51755, - FathersBurdenRoot = 5176, - FathersBurdenCrystal = 51757, - FathersBurdenSilk = 51758, - FathersBurdenCloth = 51759, - OutlawCampKey1 = 51760, - OutlawCampKey2 = 51761, - OutlawCampKey3 = 51762, - DoubletQuest = 51763, - HoneyFlower = 51764, - BananaPalm = 51765, - WhisperMoss = 51766, - OldParchment = 51767, - DragahsSpellbook = 51768, - StealFromThieves = 51769 - }, - PitsOfInferno = { - -- Reserved storage from 52000 - 52019 - ShortcutHubDoor = 52000, - ShortcutLeverDoor = 52001, - Pumin = 52002, - WeaponReward = 52003, - ThroneInfernatil = 52004, - ThroneTafariel = 52005, - ThroneVerminor = 52006, - ThroneApocalypse = 52007, - ThroneBazir = 52008, - ThroneAshfalor = 52009, - ThronePumin = 52010 - }, - HorestisTomb = { - -- Reserved storage from 52020 - 52029 - JarFloor1 = 52020, - JarFloor2 = 52021, - JarFloor3 = 52022, - JarFloor4 = 52023, - JarFloor5 = 52024 - }, - WhiteRavenMonastery = { - -- Reserved storage from 52030 - 52039 - QuestLog = 52030, - Passage = 52031, - Diary = 52032, - Door = 52033 - }, - FathersBurden = { - -- Reserved storage from 52040 - 52059 - QuestLog = 52040, - Progress = 52041, - Status = 52042, - Sinew = 52043, - Wood = 52044, - Cloth = 52045, - Silk = 52046, - Crystal = 52047, - Root = 52048, - Iron = 52049, - Scale = 52050, - Corpse = { - Scale = 52051, - Sinew = 52052 - } - }, - WhatAFoolish = { - -- Reserved storage from 52060 - 52099 - Questline = 52060, - Mission1 = 52061, - Mission2 = 52062, - Mission3 = 52063, - Mission4 = 52064, - Mission5 = 52065, - Mission6 = 52066, - Mission7 = 52067, - Mission8 = 52068, - Mission9 = 52069, - Mission10 = 52070, - Mission11 = 52071, - PieBuying = 52072, - PieBoxTimer = 52073, - TriangleTowerDoor = 52074, - EmperorBeardShave = 52075, - JesterOutfit = 52076, - WhoopeeCushion = 52077, - QueenEloiseCatDoor = 52078, - CatBasket = 52079, - ScaredCarina = 52080, - InflammableSulphur = 52081, - SpecialLeaves = 52082, - Cigar = 52083, - Contract = 52084, - CookieDelivery = { - SimonTheBeggar = 52085, - Markwin = 52086, - Ariella = 52087, - Hairycles = 52088, - Djinn = 52089, - AvarTar = 52090, - OrcKing = 52091, - Lorbas = 52092, - Wyda = 52093, - Hjaern = 52094 - }, - OldWornCloth = 52095, - LostDisguise = 52096, - ScaredKazzan = 52097 - }, - SpiritHunters = { - -- Reserved storage from 52100 - 52109 - Mission01 = 52100, - TombUse = 52101, - CharmUse = 52102, - NightstalkerUse = 52103, - SouleaterUse = 52104, - GhostUse = 52105 - }, - SeaOfLight = { - -- Reserved storage from 52110 - 52119 - Questline = 52110, - Mission1 = 52111, - Mission2 = 52112, - Mission3 = 52113, - StudyTimer = 52114, - LostMinesCrystal = 52115 - }, - Diapason = { - -- Reserved storage from 52120 - 52129 - Lyre = 52120, - LyreTimer = 52121, - Edala = 52122, - EdalaTimer = 52123 + Mission05 = 52365 }, AdventurersGuild = { -- Reserved storage from 52130 - 52159 - Stone = 52130, - MagicDoor = 52131, - CharosTrav = 52132, - FreeStone = { - Alia = 52133, - Amanda = 52134, - Brewster = 52135, - Isimov = 52136, - Kasmir = 52137, - Kjesse = 52138, - Lorietta = 52139, - Maealil = 52140, - Quentin = 52141, - RockWithASoftSpot = 52142, - Tyrias = 52143, - Yberius = 52144, - Rahkem = 52145 - }, - GreatDragonHunt = { - WarriorSkeleton = 52146, - DragonCounter = 52147 - } - }, - DreamersChallenge = { - -- Reserved storage from 52160 - 52199 - LeverNightmare1 = 52160, - LeverNightmare2 = 52161, - LeverNightmare3 = 52162, - LeverBrotherhood1 = 52163, - LeverBrotherhood2 = 52164, - LeverBrotherhood3 = 52165, - TicTac = 52166, - Reward = 52167 - }, - HallsOfHope = { - -- Reserved storage from 52200 - 52219 - Questline = 52200, - Reward1 = 52201, - Reward2 = 52202, - Reward3 = 52203, - Reward4 = 52204, - Reward5 = 52205 - }, - InsectoidCell = { - -- Reserved storage from 52220 - 52249 - Questline = 52220, - Reward1 = 52221, - Reward2 = 52222, - Reward3 = 52223, - Reward4 = 52224, - Reward5 = 52225, - Reward6 = 52226, - Reward7 = 52227, - Reward8 = 52228, - Reward9 = 52229, - Reward10 = 52230, - Reward11 = 52231, - Reward12 = 52232, - Reward13 = 52233, - Reward14 = 52234, - Reward15 = 52235, - Reward16 = 52236 + Stone = 52130 }, Dawnport = { -- Reserved storage from 52250 - 52289 @@ -1684,24 +444,6 @@ Storage = { Lever = 52278, Mainland = 52279 }, - LionsRock = { - -- Reserved storage from 52290 - 52309 - Questline = 52290, - OuterSanctum = { - Skeleton = 52291, - LionsStrength = 52292, - LionsBeauty = 52293, - LionsTears = 52294, - }, - InnerSanctum = { - SnakeSign = 52295, - LizardSign = 52296, - ScorpionSign = 52297, - HyenaSign = 52298, - Message = 52299 - }, - Time = 52300 - }, GraveDanger = { -- Reserved storage from 52310 - 52339 Questline = 52310, @@ -1710,22 +452,6 @@ Storage = { ScarlettTimer = 52312 } }, - RottinWoodAndMaried = { - -- Reserved storage from 52340 - 52349 - Questline = 52340, - RottinStart = 52341, - Trap = 52342, - Corpse = 52343, - Time = 52344, - Mission03 = 52345, - }, - TheMummysCurse = { - -- Reserved storage from 52350 - 52359 - Time1 = 52351, - Time2 = 52352, - Time3 = 52353, - Time4 = 52354, - }, TheOrderOfTheLion = { -- Reserved storage 52360-52395 (TheRookieGuard) -- Reserved storage 52396-52410 (TheOrderOfTheLion) @@ -1740,439 +466,10 @@ Storage = { -- These new structure will reserve ranges for each version. Please use accordingly. -- New storages Quest = { - Key = { - ID0010 = 103, - ID0808 = 808, - ID0909 = 909, - ID3001 = 3001, - ID3002 = 3002, - ID3003 = 3003, - ID3004 = 3004, - ID3005 = 3005, - ID3006 = 3006, - ID3007 = 3007, - ID3008 = 3008, - ID3012 = 3012, - ID3600 = 3600, - ID3620 = 3620, - ID3666 = 3666, - ID3702 = 3702, - ID3800 = 3800, - ID3801 = 3801, - ID3802 = 3802, - ID3899 = 3899, - ID3940 = 3940, - ID3980 = 3980, - ID4055 = 4055, - ID4502 = 4502, - ID5010 = 5010, - ID6010 = 6010 - }, -- Start of quests per version -- Use the reserved storage keys accordingly KeysUpdate = 40000, - PreU6_0 = { -- update pre-6.0 - Reserved Storages 40001 - 40020 - DeeperFibula = { - Rewards = { - TowerShield = 40001, - WarriorHelmet = 40002, - DwarvenRing = 40003, - ElvenAmulet = 40004, - KnightAxe = 40005 - } - }, - OrnamentedShield = { - Rewards = { - OrnamentedShield = 40006, - TimeRing = 40007 - } - }, - ShortSword = { - Rewards = { - Book = 40008 - } - }, - ThaisLighthouse = { - Rewards = { - BattleHammer = 40009, - DarkShield = 40010 - } - }, - }, - U6_0 = { -- update 6.0 - Reserved Storages 40021 - 40030 - StuddedShield = { - Rewards = { - BananaFree = 40021, - BananaPremium = 40022 - } - }, - }, - U6_1 = { -- update 6.1 - Reserved Storages 40031 - 40050 - EmperorsCookies = { - Rewards = { - Cookies = 40031, - } - }, - ExplorerBrooch = { - Brooch = 40032 - }, - OrcFortress = { - Rewards = { - KnightAxe = 40033, - KnightArmor = 40034, - FireSword = 40035 - } - }, - Panpipe = { - Rewards = { - Panpipe = 40036 - } - }, - }, - U6_2 = { -- update 6.2 - Reserved Storages 40051 - 40070 - Draconia = { - Rewards = { - BagWithWeapons = 40051, - BagWithAmulets = 40052 - } - }, - }, - U6_4 = { -- update 6.4 - Reserved Storages 40071 - 40110 - AdornedUHRune = { - Rewards = { - SilverRuneEmblem = 40071 - } - }, - BarbarianAxe = { - Rewards = { - BarbarianAxe = 40072, - Scimitar = 40073 - } - }, - BerserkerTreasure = { - Rewards = { - WhitePearls = 40074 - } - }, - DarkArmor = { - Rewards = { - Armor = 40075 - } - }, - DemonHelmet = { - Rewards = { - SteelBoots = 40076, - DemonHelmet = 40077, - DemonShield = 40078 - } - }, - DoubleHero = { - Rewards = { - RedGem = 40079, - ClubRing = 40080 - } - }, - EdronGoblin = { - Rewards = { - SilverAmulet = 40081, - SteelShield = 40082 - } - }, - FireAxe = { - Rewards = { - Bag = 40083, - FireAxe = 40084 - } - }, - PoisonDaggers = { - Rewards = { - BackpackReward = 40085 - } - }, - ShamanTreasure = { - Rewards = { - BlankRunes = 40086 - } - }, - TrollCave = { - Rewards = { - GarlicNecklace = 40087, - BrassLegs = 40088 - } - }, - VampireShield = { - Rewards = { - StrangeSymbol = 40089, - DragonLance = 40090, - VampireShield = 40091 - } - }, - WeddingRing = { - Rewards = { - DragonNecklace = 40092, - WeedingRing = 40093 - } - }, - }, - U6_5 = { -- update 6.5 - Reserved Storages 40111 - 40120 - AlawarsVault = { - Rewards = { - WhitePearl = 40111, - Broadsword = 40112 - } - }, - }, - U7_1 = { -- update 7.1 - Reserved Storages 40121 - 40140 - BlackKnight = { - Rewards = { - CrownArmor = 40121, - CrownShield = 40122 - } - }, - DragonTower = { - Rewards = { - Backpack1 = 40123, - Backpack2 = 40124 - } - }, - Ring = { - Rewards = { - TimeRing = 40125, - SwordRing = 40126 - } - }, - TimeRing = { - Rewards = { - CrystallBall = 40127, - TimeRing = 40128, - ElvenAmulet = 40129 - } - }, - }, - U7_2 = { -- update 7.2 - Reserved Storages 40141 - 40200 - Behemoth = { - Bag = 10061, - GuardianHalberd = 10062, - DemonShield = 10063, - GoldenArmor = 10064 - }, - ParchmentRoom = { - Bag = 10065 - }, - TheQueenOfTheBanshees = { - Reward = { - StoneSkinAmulet = 10066, - StealthRing = 10067, - TowerShield = 10068, - GiantSword = 10069, - BootsOfHaste = 10070, - PlatinumCoin = 10071 - }, - QuestLine = 10072, - FirstSeal = 10073, - FirstSealDoor = 10074, - SecondSeal = 10075, - SecondSealDoor = 10076, - ThirdSeal = 10077, - ThirdSealDoor = 10078, - ThirdSealWarlocks = 10079, - FourthSeal = 10080, - FourthSealDoor = 10081, - FifthSeal = 10082, - FifthSealDoor = 10083, - FifthSealTile = 10084, - SixthSeal = 10085, - SixthSealDoor = 10086, - LastSeal = 10087, - LastSealDoor = 10088, - BansheeDoor = 10089, - FinalBattle = 10090 - }, - }, - U7_24 = { -- update 7.24 - Reserved Storages 40201 - 40350 - FamilyBrooch = { - Brooch = 9000 - }, - GiantSmithhammer = { - QuestLine = 10091, - Talon = 10092, - Hammer = 10093, - GoldCoin = 10094 - }, - MadMageRoom = { - QuestLine = 10095, - APrisoner = 10096, - StarAmulet = 10097, - Hat = 10098, - StoneSkinAmulet = 10099 - }, - SkullOfRatha = { - Bag1 = 10100, - Bag2 = 10101 - }, - TheAnnihilator = { - Reward = 10102 - }, - TheParadoxTower = { - QuestLine = 10103, - TheFearedHugo = 10104, - FirstParadoxAcess = 10105, - FavoriteColour = 10106, - Mathemagics = 10107, - Reward = { - Egg = 10108, - Gold = 10109, - Talon = 10110, - Wand = 10111 - } - }, - ThePostmanMissions = {}, - TheWhiteRavenMonastery = {}, - VoodooDoll = {}, - }, - U7_3 = { -- update 7.3 - Reserved Storages 40351 - 40400 - MedusaShield = {}, - SerpentineTower = {}, - WhitePearl = {}, - }, - U7_4 = { -- update 7.4 - Reserved Storages 40401 - 40600 - TheAncientTombs = {}, - TheDjinnWarEfreetFaction = {}, - TheDjinnWarMaridFaction = {}, - }, - U7_5 = { -- update 7.5 - Reserved Storages 40601 - 40610 - ElephantTusk = {}, - SamsOldBackpack = {}, - }, - U7_6 = { -- update 7.6 - Reserved Storages 40611 - 40760 - HydraEgg = {}, - TheApeCity = {}, - TheExplorerSociety = {}, - }, - U7_8 = { -- update 7.8 - Reserved Storages 40761 - 41000 - AssassinOutfits = {}, - BarbarianOutfits = {}, - BeggarOutfits = {}, - CitizenOutfits = {}, - CitizenOutfitsRook = {}, - DruidOutfits = {}, - DruidOutfitsRook = {}, - HunterOutfits = {}, - KnightOutfits = {}, - MageOutfits = {}, - MarlinTrophy = {}, - Meriana = {}, - NoblemanOutfits = {}, - ObsidianKnife = {}, - OrientalOutfits = {}, - PirateOutfits = {}, - ShamanOutfits = {}, - SummonerOutfits = {}, - TheBlessedStake = {}, - TheMermaidMarina = {}, - TheShatteredIsles = {}, - TheSweatyCyclops = {}, - TreasureIsland = {}, - WarriorOutfits = {}, - WizardOutfits = {}, - }, - U7_9 = { -- update 7.9 - Reserved Storages 41001 - 41150 - DreamersChallenge = {}, - ThePitsOfInferno = {}, - }, - U8_0 = { -- update 8.0 - Reserved Storages 41151 - 41350 - BarbarianArena = {}, - BarbarianTest = {}, - BerserkPotion = {}, - FishingBox = {}, - FormorgarMinesHoist = {}, - FormorgarMines = {}, - FrostDragon = {}, - Inukaya = {}, - LionTrophy = {}, - MastermindPotion = {}, - NorsemanOutfits = {}, - Sinatuki = {}, - SkeletonDecoration = {}, - TheIceIslands = {}, - WaterskinOfMead = {}, - }, - U8_1 = { -- update 8.1 - Reserved Storages 41351 - 41650 - AgainstTheSpiderCult = {}, - AritosTask = {}, - BrotherhoodOutfits = {}, - OutfitBrotherhoodMaleAddon = {}, - IntoTheBonePit = {}, - KissingAPig = {}, - KosheiTheDeathless = {}, - NightmareOutfits = {}, - OutfitNightmareMaleAddon = {}, - NomadsLand = {}, - RestInHallowedGround = {}, - SecretService = {}, - StealFromThieves = {}, - StrongPotions = { - Reward = 10043 - }, - TheExterminator = {}, - TheTravellingTrader = {}, - TheUltimateBooze = {}, - ToAppeaseTheMighty = {}, - ToBlindTheEnemy = {}, - ToOutfoxAFox = {}, - TowerDefence = {}, - Waterfall = {}, - WhatAFoolish = {}, - }, - U8_2 = { -- update 8.2 - Reserved Storages 41651 - 41900 - ElementalSpheres = {}, - MachineryOfWar = {}, - TheBeginning = {}, - TheDemonOak = {}, - FishForASerpent = { - QuestLine = 41651 - }, - TheHuntForTheSeaSerpent = { - QuestLine = 41652, - SuccessSwitch = 41653, - Bait = 41654, - Direction = 41655, - Access = 41656 - }, - TheInquisition = {}, - TheThievesGuild = {}, - TrollSabotage = { - Questline = 41840, - JumpTimer = 41841 - }, - VampireHunter = {}, - }, - U8_4 = { -- update 8.4 - Reserved Storages 41901 - 42145 - BloodBrothers = { - QuestLine = 41901, - Mission01 = 41902, - GarlicBread = 41903, - Mission02 = 41904, - Cookies = { - Serafin = 41905, - Lisander = 41906, - Ortheus = 41907, - Maris = 41908, - Armenius = 41909 - }, - Mission03 = 41910, - Mission04 = 41911, - VengothAccess = 41912 - }, - InServiceOfYalahar = {}, - TheHiddenCityOfBeregar = {}, - TopOfTheCity = {}, - YalaharianOutfits = {}, - }, U8_5 = { -- update 8.5 - Reserved Storages 42146 - 42550 - Braindeath = {}, - DarashiaDragon = {}, - HotCuisine = {}, KillingInTheNameOf = { MonsterKillCount = { KillCount = 42150, @@ -2342,193 +639,7 @@ Storage = { CyclopsDroneCount = 42501, CyclopsSmithCount = 42502 } - }, - LoneMedusa = {}, - PilgrimageOfAshes = {}, - ShadowsOfYalahar = {}, - TheIsleOfEvil = {}, - TheLightbearer = {}, - TheScatterbrainedSorcerer = {}, - TreasureHunt = {}, - }, - U8_54 = { -- update 8.54 - Reserved Storages 42551 - 42950 - AnUneasyAlliance = { - Questline = 42551, - QuestDoor = 42552 - }, -- 42551 - 42600 - ChildrenOfTheRevolution = {}, -- 42601 - 42650 - SeaOfLight = {}, -- 42651 - 42700 - TheNewFrontier = { -- 42701 - 42750 - Questline = 42701, - FarmineFirstTravel = 42702, - Mission01 = 42703, - Mission02 = { - 42704, - Beaver1 = 42705, - Beaver2 = 42706, - Beaver3 = 42707, - }, - Mission03 = 42708, - Mission04 = 42709, - Mission05 = { - 42710, - KingTibianus = 42711, - Leeland = 42712, - Angus = 42713, - Wyrdin = 42714, - Telas = 42715, - Humgolf = 42716, - LeelandKeyword = 42841, - AngusKeyword = 42842, - WyrdinKeyword = 42843, - TelasKeyword = 42844, - HumgolfKeyword = 42845, - }, - Mission06 = 42717, - Mission07 = { - 42718, - HiddenNote = 42719, - }, - Mission08 = 42720, - Mission09 = { - 42721, - ArenaDoor = 42722, - RewardDoor = 42723, - }, - Mission10 = { - 42724, - MagicCarpetDoor = 42725, - }, - Reward = { - Potions = 42726, - GoldIngot = 42727, - PigBank = 42728 - }, - TomeofKnowledge = 42729, - ZaoPalaceDoors = 42730, -- 10th Tome: Zao Palace - SnakeHeadTeleport = 42731, -- 7th Tome: Snake Head Teleport - CorruptionHole = 42732 -- 8th Tome: Corruption Hole - }, - TomesOfKnowledge = { - OrcCamp = 42751, - TheNewFrontier = 42752, - UneasyAlliance = 42753, - LizardCamp = 42754, - TopTower = 42755, - MortalCombat = 42756, - Hills = 42757, - ChildrenoftheRevolution = 42758, - Arena = 42759, - CobraHead = 42760, - OrcRaid = 42761, - ZaoPalace = 42762 - }, - UnnaturalSelection = {}, -- 42781 - 42830 - WarmasterOutfits = {}, -- 42831 - 42840 - }, - U8_6 = { -- update 8.6 - Reserved Storages 42951 - 43200 - AFathersBurden = {}, - AnInterestInBotany = {}, - TheSpiritWillGetYou = {}, - WayfarerOutfits = {}, - WrathOfTheEmperor = {}, - }, - U8_61 = { -- update 8.61 - Reserved Storages 43201 - 43230 - RiseOfDevovorga = {}, - }, - U8_7 = { -- update 8.7 - Reserved Storages 43231 - 43350 - APieceOfCake = {}, - APiratesDeathToMe = {}, - AnnualAutumnVintage = {}, - Bewitched = {}, - DemonsLullaby = {}, - JackToTheFuture = {}, - LastCreepStanding = {}, - ResearchAndDevelopment = {}, - RottinWoodAndTheMarriedMen = {}, - Spirithunters = {}, - TheColoursOfMagic = {}, - }, - U9_1 = { --update 9.1 - Reserved Storages 43351 - 43550 - AfflictedOutfits = {}, - AwashWorldChange = {}, - DemonWarsWorldChange = {}, - ElementalistOutfits = {}, - HorseStationWorldChange = {}, - InsectoidInvasionWorldChange = {}, - LooseEnds = {}, - OverhuntingWorldChange = {}, - SteamshipWorldChange = {}, - SwampFeverWorldChange = {}, - TheMagesTowerWorldChange = {}, - TheMummysCurseWorldChange = {}, - TheRookieGuard = {}, - TheirMastersVoiceWorldChange = {}, - ThornfireWorldChange = {}, - TwistedWatersWorldChange = {}, - }, - U9_4 = { -- update 9.4 - Reserved Storages 43551 - 43750 - BankRobberyMiniWorldChange = {}, - BoredMiniWorldChange = {}, - DeeplingsWorldChange = {}, - DownTheDrainMiniWorldChange = {}, - FireFromTheEarthMiniWorldChange = {}, - HiveBornWorldChange = {}, - InsectoidOutfits = {}, - KingsdayMiniWorldChange = {}, - LiquidBlack = {}, - LumberjackMiniWorldChange = {}, - NomadsMiniWorldChange = {}, - NoodlesIsGoneMiniWorldChange = {}, - OrientalTraderMiniWorldChange = {}, - RiverRunsDeepMiniWorldChange = {}, - StampedeMiniWorldChange = {}, - ThawingMiniWorldChange = {}, - WarAgainstTheHive = {}, - }, - U9_5 = { -- update 9.5 - Reserved Storages 43751 - 43850 - SpringIntoLife = {}, - }, - U9_60 = { -- update 9.60 - Reserved Storages 43851 - 44000 - BigfootsBurden = {}, - CrystalWarlordOutfits = {}, - DevovorgasEssenceMiniWorldChange = {}, - SoilGuardianOutfits = {}, - SpiderNestMiniWorldChange = {}, - WarpathMiniWorldChange = {}, - }, - U9_80 = { -- update 9.80 - Reserved Storages 44001 - 44100 - ChildOfDestiny = {}, - DemonOutfits = {}, - GoblinMerchant = {}, - VenoreDailyTasks = {}, - }, - U10_10 = { -- update 10.10 - Reserved Storages 44101 - 44300 - FuryGatesMiniWorldChange = {}, - HuntingForTokens = {}, - OpticordingSphere = {}, - SmallSapphire = {}, - TheGravediggerOfDrefia = {}, - TheRepenters = {}, - }, - U10_20 = { -- update 10.20 - Reserved Storages 44301 - 44400 - CaveExplorerOutfits = {}, - SpikeTasks = {}, - SpiritGroundsMiniWorldChange = {}, - }, - U10_30 = { -- update 10.30 - Reserved Storages 44401 - 44500 - DreamWardenOutfits = {}, - Roshamuul = {}, - }, - U10_37 = { -- update 10.37 - Reserved Storages 44501 - 44550 - TinderBox = {}, - ChyllfroestMiniWorldChange = {}, - }, - U10_50 = { -- update 10.50 - Reserved Storages 44551 - 44750 - DarkTrails = {}, - GloothEngineerOutfits = {}, - Oramond = {}, - Rathleton = {}, + } }, U10_55 = { -- update 10.55 - Reserved Storages 44751 - 44800 Dawnport = { @@ -2548,18 +659,7 @@ Storage = { MorrisGoblinCount = 20013, MorrisMinos = 20014, MorrisMinosCount = 20015 - }, - SanctuaryOfTheLizardGod = { - LizardGodTeleport = 20020, - LegionHelmet = 20021 - }, - }, - U10_70 = { -- update 10.70 - Reserved Storages 44801 - 44950 - HeroOfRathleton = {}, - LionsRock = {}, - TheCursedCrystal = {}, - TheFireFeatheredSerpentWorldChange = {}, - TwentyMilesBeneathTheSea = {}, + } }, U10_80 = { -- update 10.80 - Reserved Storages 44951 - 45200 AsuraPalace = {}, @@ -2588,160 +688,11 @@ Storage = { TheLostBrother = {}, TheTaintedSouls = {}, }, - U10_90 = { -- update 10.90 - Reserved Storages 45201 - 45350 - FerumbrasAscension = {}, - Krailos = {}, - RiftWarriorOutfits = {}, - }, - U10_94 = { -- update 10.94 - Reserved Storages 45351 - 45450 - HeartOfDestruction = {}, - }, - U11_02 = { -- update 11.02 - Reserved Storages 45451 - 45650 - FestiveOutfits = {}, - FirstDragon = {}, - ForgottenKnowledge = {}, - }, - U11_40 = { -- update 11.40 - Reserved Storages 45651 - 45850 - CultsOfTibia = {}, -- 45651 - 45750 - ThreatenedDreams = { -- 45751 - 45850 - QuestLine = 45751, - Mission01 = { - 45752, -- Troubled Animals - PoacherChest = 45753, - PoacherNotes = 45754, - FeathersCount = 45755, - Feathers1 = 45756, - Feathers2 = 45757, - Feathers3 = 45758, - Feathers4 = 45759, - Feathers5 = 45760 - }, - Mission02 = { - 45761, -- Nightmare Intruders - FrazzlemawsCount = 45762, - EnfeebledCount = 45763, - KroazurAccess = 45764, - KroazurTimer = 45765, - KroazurKill = 45766, - DarkMoonMirror = 45767, - FairiesCounter = 45768, - Fairy01 = 45769, - Fairy02 = 45770, - Fairy03 = 45771, - Fairy04 = 45772, - Fairy05 = 45773, - ChargedMoonMirror = 45774, - MoonMirrorPos01 = 45775, - MoonMirrorPos02 = 45776, - MoonMirrorPos03 = 45777, - MoonMirrorPos04 = 45778, - MoonMirrorPos05 = 45779, - ChargedSunCatcher = 45780, - SunCatcherPos01 = 45781, - SunCatcherPos02 = 45782, - SunCatcherPos03 = 45783, - SunCatcherPos04 = 45784, - SunCatcherPos05 = 45785, - ChargedStarlightVial = 45786, - StarlightPos01 = 45787, - StarlightPos02 = 45788, - StarlightPos03 = 45789, - StarlightPos04 = 45790, - StarlightPos05 = 45791 - }, - Mission03 = { - 45792, -- An Unlikely Couple - UnlikelyCouple = 45793, - PanpipesTimer = 45794, - RavenHerbTimer = 45795, - DarkSunCatcher = 45796, - EmptyStarlightVial = 45797 - }, - Mission04 = { - 45798, - }, - Mission05 = 45799 - }, - }, - U11_50 = { -- update 11.50 - Reserved Storages 45851 - 46000 - DangerousDepths = {}, - HiddenThreats = { - QuestLine = 45971, - RatterDoor = 45972, - ServantDoor = 45973, - CorymWorksDoor01 = 45974, - CorymWorksDoor02 = 45975, - CorymWorksDoor03 = 45976, - Rewards = { - metalFile = 45977, - keyFragment01 = 45978, - keyFragment02 = 45979 - }, - CorymRescued01 = 45980, - CorymRescued02 = 45981, - CorymRescued03 = 45982, - CorymRescued04 = 45983, - CorymRescued05 = 45984, - CorymRescued06 = 45985, - CorymRescued07 = 45986, - CorymRescued08 = 45987, - CorymRescueMission = 45988 - }, - MakeshiftWarriorOutfits = {}, - }, - U11_80 = { -- update 11.80 - Reserved Storages 46001 - 46300 - BattleMageOutfits = {}, - DiscovererOutfits = {}, - MeasuringTibia = {}, - TheSecretLibrary = { - FalconBastionChestsTimer = { - Coast = 46281, - Island = 46282, - ThroneHall = 46283, - Shortcut = 46284, - LowerBastion = 46285, - UndergroundBastion = 46286 - }, - GhuloshTimer = 46015, - GhuloshKilled = 46016, - GorzindelTimer = 46017, - GorzindelKilled = 46018, - LokathmorTimer = 46019, - LokathmorKilled = 46020, - MazzinorTimer = 46021, - MazzinorKilled = 46022, - ScourgeOfOblivionDoor = 46023, - ScourgeOfOblivionTimer = 46024, - ScourgeOfOblivionKilled = 46025 - }, - }, U12_00 = { -- update 12.00 - Reserved Storages 46301 - 46600 - DreamWarriorOutfits = {}, TheDreamCourts = { - QuestLine = 46401, - HauntedHouseAccess = 46402, - BuriedCathedralAccess = 46403, - DreamScarAccess = 46404, - AndrewDoor = 14900, - FacelessBaneTime = 50283, - AccessDoors = 46309, - ArenaTimer = 46310, - PlaguerootKilled = 46311, - MalofurKilled = 46312, - MaxxeniusKilled = 46313, - AlptramunKilled = 46314, - IzcandarKilled = 46315, - NightmareBeastTimer = 46316, - NightmareBeastKilled = 46317 + FacelessBaneTime = 50283 }, }, - U12_02 = { -- update 12.02 - Reserved Storages 46601 - 46800 - TibiaAnniversary = {}, - WinterlightSolstice = {}, - }, - U12_15 = { -- update 12.15.8659 - Reserved Storages 46801 - 46850 - GoldenOutfits = {}, - }, U12_20 = { -- update 12.20 - Reserved Storages 46851 - 47000 GraveDanger = { QuestLine = 46851, @@ -2804,7 +755,6 @@ Storage = { } }, U12_40 = { -- update 12.40 - Reserved Storages 47201 - 47500 - RevenantOutfits = {}, TheOrderOfTheLion = { QuestLine = 47401, AccessEastSide = 47402, @@ -2836,19 +786,12 @@ Storage = { TentuglyTimer = 47515, RatmiralTimer = 47516, }, - RascoohanOutfits = {} }, U12_70 = { -- update 12.70 - Reserved Storages 47601 - 47800 AdventuresOfGalthen = { AccessDoor = 47601, MegasylvanYseldaTimer = 47602, }, - CitizenOfIssaviOutfits = {}, - RoyalBounaceanAdvisorOutfits = {}, - TooHotToHandle = {} - }, - U12_80 = { -- update 12.80 - Reserved Storages 47801 - 47850 - RoyalCostumeOutfits = {} }, U12_90 = { -- update 12.90 - Reserved Storages 47851 - 47900 PrimalOrdeal = { @@ -2865,47 +808,6 @@ Storage = { }, }, }, - U13_10 = { -- update 13.10 - Reserved Storages 47901 - 47951 - CradleOfMonsters = { - QuestLine = 47901, - Access = { - Ingol = 47902, - LowerIngol = 47903, - Monster = 47904, - MutatedAbomination = 47905, - }, - } - } - }, - -- Reserved storage from 63951 - 63999 - ThaisExhibition = { - FriendshipAmulet = 63951, - HandPuppets = 63952, - EpaminondasDoll = 63953, - NorsemanDoll = 63954, - BookwormDoll = 63955, - GoldenNewspaper = 63956, - TibiacityEncyclopedia = 63957, - GoldenFalcon = 63958, - DragonGoblet = 63959, - FerumbrasDoll = 63960, - FrozenHeart = 63961, - DrakenDoll = 63962, - MusicBox = 63963, - DurinTheAlmighty = 63964, - DragonEye = 63965, - MemoryBox = 63966, - NobleSword = 63967, - MedusaSkull = 63968, - MathmasterShield = 63969, - Imortus = 63970, - OldRadio = 63971, - EpicWisdom = 63972, - DreadDoll = 63973, - PhoenixStatue = 63974, - OrcsJawShredder = 63975, - BagOfOrientalSpices = 63976, - TibiorasBox = 63977 }, -- Reserved storage from 64000 - 64099 @@ -3001,149 +903,8 @@ Storage = { } GlobalStorage = { - DangerousDepths = { - -- Reserved storage from 60001 - 60009 - Geodes = { - WarzoneVI = 60001, - WarzoneV = 60002, - WarzoneIV = 60003 - } - }, - TheirMastersVoice = { - -- Reserved storage from 60010 - 60019 - CurrentServantWave = 60010, - ServantsKilled = 60011 - }, - Feroxa = { - -- Reserved storage from 60020 - 60029 - Chance = 60020, - Active = 60021 - }, - FerumbrasAscendant = { - -- Reserved storage from 60030 - 60069 - ZamuloshSummon = 60030, - FerumbrasEssence = 60031, - DesperateSoul = 60032, - Crystals = { - Crystal1 = 60040, - Crystal2 = 60041, - Crystal3 = 60042, - Crystal4 = 60043, - Crystal5 = 60044, - Crystal6 = 60045, - Crystal7 = 60046, - Crystal8 = 60047, - AllCrystals = 60048 - }, - Habitats = { - Roshamuul = 60050, - Grass = 60051, - Mushroom = 60052, - Desert = 60053, - Venom = 60054, - Ice = 60055, - Corrupted = 60056, - Dimension = 60057, - AllHabitats = 60058 - }, - Elements = { - First = 60060, - Second = 60061, - Third = 60062, - Four = 60063, - Active = 60064, - Done = 60065 - } - }, - HeroRathleton = { - -- Reserved storage from 60070 - 60089 - FirstMachines = 60070, - SecondMachines = 60071, - ThirdMachines = 60072, - FourthMachines = 60073, - DeepRunning = 60074, - HorrorRunning = 60075, - LavaRunning = 60076, - LavaCounter = 60077, - MaxxenRunning = 60078, - TentacleWave = 60079, - DevourerWave = 60080, - GloothWave = 60081, - LavaChange = 60082 - }, - ForgottenKnowledge = { - -- Reserved storage from 60090 - 60099 - ActiveTree = 60090, - MechanismGolden = 60091, - MechanismDiamond = 60092, - GoldenServant = 60093, - DiamondServant = 60094, - AstralPowerCounter = 60095, - AstralGlyph = 60096 - }, - InServiceOfYalahar = { - -- Reserved storage from 60100 - 60109 - LastFight = 60100, - WarGolemsMachine1 = 60101, - WarGolemsMachine2 = 60102 - }, - BigfootBurden = { - -- Reserved storage from 60110 - 60119 - Warzones = 60110, - Weeper = 60111, - Versperoth = { - Battle = 60112, - Health = 60113 - }, - Mouthpiece = 60114 - }, - WrathOfTheEmperor = { - -- Reserved storage from 60120 - 60139 - Light01 = 60120, - Light02 = 60121, - Light03 = 60122, - Light04 = 60123, - Bosses = { - Fury = 60130, - Wrath = 60131, - Scorn = 60132, - Spite = 60133 - } - }, - ElementalSphere = { - -- Reserved storage from 60140 - 60159 - BossRoom = 60140, - KnightBoss = 60141, - SorcererBoss = 60142, - PaladinBoss = 60143, - DruidBoss = 60144, - Machine1 = 60145, - Machine2 = 60146, - Machine3 = 60147, - Machine4 = 60148 - }, - TheAncientTombs = { - -- Reserved storage from 60160 - 60169 - ThalasSwitchesGlobalStorage = 60160, - DiprathSwitchesGlobalStorage = 60161, - AshmunrahSwitchesGlobalStorage = 60162 - }, - FuryGates = 65000, - Yakchal = 65001, - PitsOfInfernoLevers = 65002, - NaginataStone = 65003, ExpBoost = 65004, - SwordOfFury = 65005, - LionsRockFields = 65007, - TheMummysCurse = 65008, - OberonEventTime = 65009, - PrinceDrazzakEventTime = 65010, - ScarlettEtzelEventTime = 65011, CobraBastionFlask = 65012, - Inquisition = 65013, - Yasir = 65014, - NightmareIsle = 65015, - IceCrack = 65016, UglyMonster = 65017, KeysUpdate = 40000, -- Reserved storage from 40000 - 40000 } diff --git a/data-otxserver/scripts/actions/other/construction_kits.lua b/data-otxserver/scripts/actions/other/construction_kits.lua index 52d194a14..07520ca03 100644 --- a/data-otxserver/scripts/actions/other/construction_kits.lua +++ b/data-otxserver/scripts/actions/other/construction_kits.lua @@ -59,63 +59,9 @@ local constructionKits = { [17977] = 18019 } -local jackToTheFuture_Kits = { - [2775] = { - itemId = 2374, - kitMessage = "The red cushioned chair looks quite comfy in that corner.", - jackSay = "Jack: Yeah uhm... impressive chair. Now would you please remove it? Thanks.", - storage = Storage.TibiaTales.JackFutureQuest.Furniture01 - }, - [2797] = { - itemId = 2979, - kitMessage = "A globe like this should be in every household.", - jackSay = "Jack: What the... what do I need a 'globe' for? Take this away.", - storage = Storage.TibiaTales.JackFutureQuest.Furniture02 - }, - [2799] = { - itemId = 3485, - kitMessage = "The telescope just looks like it was the one thing missing from this room.", - jackSay = "Jack: Nice, a... what is this actually?", - storage = Storage.TibiaTales.JackFutureQuest.Furniture03 - }, - [2800] = { - itemId = 2998, - kitMessage = "What a cute horse - and just the right thing to place into this cute room.", - jackSay = "Jack: A rocking horse? What's wrong with you.", - storage = Storage.TibiaTales.JackFutureQuest.Furniture04 - }, - [2805] = { - itemId = 2904, - kitMessage = "There seems to be no better place for this amphora than right here.", - jackSay = "Jack: Trying to get rid of your junk in my house? Do I look like I need such a... 'vase'?", - storage = Storage.TibiaTales.JackFutureQuest.Furniture05 - } -} - -local jackToTheFuture_House = { - beginPos = Position(33273, 31754, 7), - finalPos = Position(33278, 31759, 7) -} - local constructionKit = Action() function constructionKit.onUse(player, item, fromPosition, target, toPosition, isHotkey) - if player:getPosition():isInRange(jackToTheFuture_House.beginPos, jackToTheFuture_House.finalPos) then - if player:getStorageValue(Storage.TibiaTales.JackFutureQuest.QuestLine) == 3 then - local setting = jackToTheFuture_Kits[item.itemid] - if setting then - if player:getStorageValue(setting.storage) < 1 then - item:remove() - Game.createItem(setting.itemId, 1, player:getPosition()) - player:say(setting.jackSay, TALKTYPE_MONSTER_SAY) - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, setting.kitMessage) - player:setStorageValue(setting.storage, 1) - return true - end - end - end - end - local kit = constructionKits[item.itemid] if not kit then return false diff --git a/data-otxserver/scripts/actions/other/destroy.lua b/data-otxserver/scripts/actions/other/destroy.lua index a350a7d5a..a01d54e4c 100644 --- a/data-otxserver/scripts/actions/other/destroy.lua +++ b/data-otxserver/scripts/actions/other/destroy.lua @@ -20,21 +20,6 @@ end local destroy = Action() function destroy.onUse(player, item, fromPosition, target, toPosition, isHotkey) - -- Tibia tales quest, Aritos task - if (item:getId() == scimitarItemId) then - if (toPosition == Position(scimitarPos.x, scimitarPos.y, scimitarPos.z)) then - local scimitarPlaced = Tile(scimitarPos):getItemById(placedSimitarItemId) - if not scimitarPlaced then - if player:getStorageValue(Storage.TibiaTales.AritosTask) >= 0 then - item:remove() - Game.createItem(placedSimitarItemId, 1, scimitarPos) - addEvent(removeEntrance, 1 * 60 * 1000) - return true - end - end - end - end - return onDestroyItem(player, item, fromPosition, target, toPosition, isHotkey) end for id = 3264, 3292 do diff --git a/data-otxserver/scripts/actions/other/enchanting.lua b/data-otxserver/scripts/actions/other/enchanting.lua index 62ed50b87..4e8fb7384 100644 --- a/data-otxserver/scripts/actions/other/enchanting.lua +++ b/data-otxserver/scripts/actions/other/enchanting.lua @@ -44,23 +44,6 @@ local enchantedItems = { local enchanting = Action() function enchanting.onUse(player, item, fromPosition, target, toPosition, isHotkey) - - if table.contains({33268, 33269}, toPosition.x) - and toPosition.y == 31830 and toPosition.z == 10 - and player:getStorageValue(Storage.ElementalSphere.QuestLine) > 0 then - if not table.contains(spheres[item.itemid], player:getVocation():getBaseId()) then - return false - elseif table.contains({842, 843}, target.itemid) then - player:say('Turn off the machine first.', TALKTYPE_MONSTER_SAY) - return true - else - player:setStorageValue(Storage.ElementalSphere.MachineGemCount, math.max(1, player:getStorageValue(Storage.ElementalSphere.MachineGemCount) + 1)) - toPosition:sendMagicEffect(CONST_ME_PURPLEENERGY) - item:transform(item.itemid, item.type - 1) - return true - end - end - if item.itemid == 3030 and target.itemid == 3229 then target:transform(3230) target:decay() diff --git a/data-otxserver/scripts/actions/other/food.lua b/data-otxserver/scripts/actions/other/food.lua index cba9ad35d..ac493054d 100644 --- a/data-otxserver/scripts/actions/other/food.lua +++ b/data-otxserver/scripts/actions/other/food.lua @@ -125,7 +125,6 @@ local foods = { local food = Action() function food.onUse(player, item, fromPosition, target, toPosition, isHotkey) - local bloodBrothersStorage = Storage.Quest.U8_4.BloodBrothers local itemFood = foods[item.itemid] local effect = itemFood[3] if not itemFood then @@ -136,9 +135,6 @@ function food.onUse(player, item, fromPosition, target, toPosition, isHotkey) player:sendTextMessage(MESSAGE_FAILURE, "You are full.") return true end - if item.itemid == 8194 and player:getStorageValue(bloodBrothersStorage.GarlicBread) == 0 then - player:setStorageValue(bloodBrothersStorage.GarlicBread, 1) - end player:feed(itemFood[1] * 12) player:say(itemFood[2], TALKTYPE_MONSTER_SAY) item:remove(1) diff --git a/data-otxserver/scripts/actions/other/gems.lua b/data-otxserver/scripts/actions/other/gems.lua index aeadce873..eb852f412 100644 --- a/data-otxserver/scripts/actions/other/gems.lua +++ b/data-otxserver/scripts/actions/other/gems.lua @@ -1,8 +1,5 @@ -local lionsRockSanctuaryPos = Position(33073, 32300, 9) -local lionsRockSanctuaryRockId = 1852 -local lionsRockSanctuaryFountainId = 6389 - local shrine = { +--[[ -- ice shrine [3029] = { targetAction = 15001, @@ -30,66 +27,12 @@ local shrine = { destination = {x = 33527, y = 32301, z = 4}, effect = CONST_ME_ENERGYHIT } -} - -local lionsRock = { - [25006] = { - itemId = 21442, - itemPos = {x = 33069, y = 32298, z = 9}, - storage = Storage.LionsRock.Questline, - value = 9, - item = 3030, - fieldId = 2123, - message = "You place the ruby on the small socket. A red flame begins to burn.", - effect = CONST_ME_MAGIC_RED - }, - [25007] = { - itemId = 21442, - itemPos = {x = 33069, y = 32302, z = 9}, - storage = Storage.LionsRock.Questline, - value = 9, - item = 3029, - fieldId = 21463, - message = "You place the sapphire on the small socket. A blue flame begins to burn.", - effect = CONST_ME_MAGIC_BLUE - }, - [25008] = { - itemId = 21440, - itemPos = {x = 33077, y = 32302, z = 9}, - storage = Storage.LionsRock.Questline, - value = 9, - item = 3033, - fieldId = 7465, - message = "You place the amethyst on the small socket. A violet flame begins to burn.", - effect = CONST_ME_PURPLESMOKE - }, - [25009] = { - itemId = 21437, - itemPos = {x = 33077, y = 32298, z = 9}, - storage = Storage.LionsRock.Questline, - value = 9, - item = 9057, - fieldId = 21465, - message = "You place the topaz on the small socket. A yellow flame begins to burn.", - effect = CONST_ME_BLOCKHIT - } +]] } local gems = Action() function gems.onUse(player, item, fromPosition, target, toPosition, isHotkey) - -- Small emerald for Kilmaresh quest - -- see data\scripts\quests\kilmaresh\1-fafnars-wrath\7-four-masks.lua - if item.itemid == 3032 and target.uid == 40032 - and player:getStorageValue(Storage.Kilmaresh.Sixth.Favor) >= 1 - and not testFlag(player:getStorageValue(Storage.Kilmaresh.Sixth.FourMasks), 4) then - player:addItem(31371, 1) -- Ivory mask - item:remove(1) - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You hear a *click*. You can now lift the floor tile and discover a secret compartment. A mask made of ivory lies in it.") - player:setStorageValue(Storage.Kilmaresh.Sixth.Favor, player:getStorageValue(Storage.Kilmaresh.Sixth.Favor) + 1) - player:setStorageValue(Storage.Kilmaresh.Sixth.FourMasks, setFlag(player:getStorageValue(Storage.Kilmaresh.Sixth.FourMasks), 4)) - return true - -- Enchanted helmet of the ancients - elseif player:getItemCount(3030) >= 1 and target.itemid == 3229 then + if player:getItemCount(3030) >= 1 and target.itemid == 3229 then target:transform(3230) target:decay() item:remove(1) @@ -97,82 +40,6 @@ function gems.onUse(player, item, fromPosition, target, toPosition, isHotkey) toPosition:sendMagicEffect(CONST_ME_MAGIC_RED) return true end - - -- Gems teleport to feyrist - local ThreatenedDreams = Storage.Quest.U11_40.ThreatenedDreams - for index, value in pairs(shrine) do - if target.actionid == value.targetAction then - if player:getStorageValue(ThreatenedDreams.Mission01[1]) == 16 then - if item.itemid == index then - player:teleportTo(value.destination) - player:getPosition():sendMagicEffect(value.effect) - item:remove(1) - return true - else - player:sendCancelMessage(RETURNVALUE_NOTPOSSIBLE) - return true - end - else - player:say("When the time comes, '" ..item:getName() .. "' will be accepted at this shrine.") - return true - end - end - end - - -- Use gems in the tile of lions rock quest - local setting = lionsRock[target.uid] - if not setting then - return false - end - - -- Reset lion's fields - local function lionsRockFieldReset() - local gemSpot = Tile(setting.itemPos):getItemById(setting.fieldId) - if gemSpot then - Game.setStorageValue(GlobalStorage.LionsRockFields, Game.getStorageValue(GlobalStorage.LionsRockFields) - 1) - gemSpot:remove() - return true - end - end - - -- Check if all lion's fields are set - local function checkLionsRockFields(storage) - if Game.getStorageValue(GlobalStorage.LionsRockFields) == 3 then - local stone = Tile(lionsRockSanctuaryPos):getItemById(lionsRockSanctuaryRockId) - if stone then - stone:transform(lionsRockSanctuaryFountainId) - lionsRockSanctuaryPos:sendMagicEffect(CONST_ME_THUNDER) - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, 'Something happens at the center of the room ...') - player:setStorageValue(storage, 10) - return true - end - end - end - - -- Delay to create lion's field - local function lionsRockCreateField(itemPos, fieldId, storage) - local gemSpot = Tile(itemPos):getItemById(fieldId) - if not gemSpot then - Game.createItem(fieldId, 1, itemPos) - Game.setStorageValue(GlobalStorage.LionsRockFields, Game.getStorageValue(GlobalStorage.LionsRockFields) + 1) - checkLionsRockFields(storage) - return true - end - end - - if player:getStorageValue(setting.storage) >= setting.value then - if setting.item == item.itemid then - local gemSpot = Tile(setting.itemPos):getItemById(setting.fieldId) - if not gemSpot then - toPosition:sendMagicEffect(setting.effect) - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, setting.message) - item:remove(1) - addEvent(lionsRockCreateField, 2 * 1000, setting.itemPos, setting.fieldId, setting.storage) - addEvent(lionsRockFieldReset, 60 * 1000) - return true - end - end - end return false end diff --git a/data-otxserver/scripts/actions/other/music.lua b/data-otxserver/scripts/actions/other/music.lua index a150c8998..ef81896bb 100644 --- a/data-otxserver/scripts/actions/other/music.lua +++ b/data-otxserver/scripts/actions/other/music.lua @@ -34,35 +34,6 @@ local MusicEffect = { local music = Action() function music.onUse(player, item, fromPosition, target, toPosition, isHotkey) - - if item.itemid == 2949 then - if isInRange(player:getPosition(), Position(32695, 31717, 2), Position(32699, 31719, 2)) then - local lyreProgress = player:getStorageValue(Storage.Diapason.Lyre) - if lyreProgress < 7 - and player:getStorageValue(Storage.Diapason.Edala) ~= 1 - and player:getStorageValue(Storage.Diapason.LyreTimer) < os.time() then - player:setStorageValue(Storage.Diapason.Lyre, math.max(0, lyreProgress) + 1) - player:setStorageValue(Storage.Diapason.Edala, 1) - player:setStorageValue(Storage.Diapason.LyreTimer, os.time() + 86400) - end - end - elseif item.itemid == 2953 then - if isInRange(player:getPosition(), Position(33540, 32245, 7), Position(33542, 32247, 7)) then - local ThreatenedDreams = Storage.Quest.U11_40.ThreatenedDreams - local UnlikelyCouple = player:getStorageValue(ThreatenedDreams.Mission03.UnlikelyCouple) - local PanpipesTimer = player:getStorageValue(ThreatenedDreams.Mission03.PanpipesTimer) - if UnlikelyCouple >= 2 and PanpipesTimer < os.time() then - if UnlikelyCouple == 2 then - player:setStorageValue(ThreatenedDreams.Mission03.UnlikelyCouple, 3) - end - player:setStorageValue(ThreatenedDreams.Mission03.PanpipesTimer, os.time() + 20 * 3600) - player:setStorageValue(ThreatenedDreams.Mission03[1], 2) - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Mysteriously some colourful music notes fall of the panpipes. - Hurry, they will fade away quickly.") - player:addItem(25782, 1) - end - end - end - player:addAchievementProgress('Rockstar', 10000) item:getPosition():sendMagicEffect(MusicEffect[item.itemid]) return true diff --git a/data-otxserver/scripts/actions/tools/skinning.lua b/data-otxserver/scripts/actions/tools/skinning.lua index 5a922ac3a..271c8b6fc 100644 --- a/data-otxserver/scripts/actions/tools/skinning.lua +++ b/data-otxserver/scripts/actions/tools/skinning.lua @@ -113,30 +113,6 @@ function skinning.onUse(player, item, fromPosition, target, toPosition, isHotkey player:addItem(33780, 1) end return true - -- Wrath of the emperor quest - elseif target.itemid == 11339 then - target:transform(11331) - player:say("You carve a solid bowl of the chunk of wood.", TALKTYPE_MONSTER_SAY) - return true - -- An Interest In Botany Quest - elseif target.itemid == 10735 and player:getItemCount(11699) > 0 and player:getStorageValue(Storage.TibiaTales.AnInterestInBotany) == 1 then - player:say("The plant feels cold but dry and very soft. You streak the plant gently with your knife and put a fragment in the almanach.", TALKTYPE_MONSTER_SAY) - player:setStorageValue(Storage.TibiaTales.AnInterestInBotany, 2) - return true - elseif target.itemid == 10697 and player:getItemCount(11699) > 0 and player:getStorageValue(Storage.TibiaTales.AnInterestInBotany) == 2 then - player:say("You cut a leaf from a branch and put it in the almanach. It smells strangely sweet and awfully bitter at the same time.", TALKTYPE_MONSTER_SAY) - player:setStorageValue(Storage.TibiaTales.AnInterestInBotany, 3) - return true - elseif target.itemid == 8181 and player:getStorageValue(789100) <= 1 then - player:say("You got Neutral matter.", TALKTYPE_MONSTER_SAY) - player:addItem(954, 1) - player:setStorageValue(789100, 1) - return true - elseif target.itemid == 8182 and player:getStorageValue(789100) <= 1 then - player:say("You got Neutral matter.", TALKTYPE_MONSTER_SAY) - player:addItem(954, 1) - player:setStorageValue(789100, 2) - return true end end diff --git a/data-otxserver/scripts/actions/worldboard.lua b/data-otxserver/scripts/actions/worldboard.lua index 71c62e570..9ca1ca7ba 100644 --- a/data-otxserver/scripts/actions/worldboard.lua +++ b/data-otxserver/scripts/actions/worldboard.lua @@ -1,21 +1,23 @@ local worldBoard = Action() local communicates = { --- Fury Gates -[1] = { - globalStorage=65000, - communicate = "A fiery fury gate has opened near one of the major cities somewhere in Tibia." -}, --- Yasir -[2] = { - globalStorage = 65014, - communicate = "Oriental ships sighted! A trader for exotic creature products may currently be visiting Carlin, Ankrahmun or Liberty Bay." -}, --- Nightmare Isle -[3] = { - globalStorage = 65015, - communicate = "A sandstorm travels through Darama, leading to isles full of deadly creatures inside a nightmare. Avoid the river near Drefia/northernmost coast/Ankhramun tar pits!" -} +--[[ + -- Fury Gates + [1] = { + globalStorage=65000, + communicate = "A fiery fury gate has opened near one of the major cities somewhere in Tibia." + }, + -- Yasir + [2] = { + globalStorage = 65014, + communicate = "Oriental ships sighted! A trader for exotic creature products may currently be visiting Carlin, Ankrahmun or Liberty Bay." + }, + -- Nightmare Isle + [3] = { + globalStorage = 65015, + communicate = "A sandstorm travels through Darama, leading to isles full of deadly creatures inside a nightmare. Avoid the river near Drefia/northernmost coast/Ankhramun tar pits!" + } +]] } function worldBoard.onUse(player, item, fromPosition, target, toPosition, isHotkey) diff --git a/data-otxserver/scripts/creaturescripts/customs/freequests.lua b/data-otxserver/scripts/creaturescripts/customs/freequests.lua index 7ab71eeed..3d40bc39e 100644 --- a/data-otxserver/scripts/creaturescripts/customs/freequests.lua +++ b/data-otxserver/scripts/creaturescripts/customs/freequests.lua @@ -1,352 +1,7 @@ local stage = configManager.getNumber(configKeys.FREE_QUEST_STAGE) local questTable = { - {storage = Storage.BigfootBurden.QuestLine, storageValue = 2}, - {storage = Storage.BigfootBurden.QuestLine, storageValue = 4}, - {storage = Storage.BigfootBurden.QuestLine, storageValue = 7}, - {storage = Storage.BigfootBurden.QuestLine, storageValue = 9}, - {storage = Storage.BigfootBurden.QuestLine, storageValue = 12}, - {storage = Storage.BigfootBurden.Shooting, storageValue = 5}, - {storage = Storage.BigfootBurden.QuestLine, storageValue = 16}, - {storage = Storage.BigfootBurden.QuestLine, storageValue = 20}, - {storage = Storage.BigfootBurden.QuestLine, storageValue = 23}, - {storage = Storage.BigfootBurden.QuestLineComplete, storageValue = 2}, - {storage = Storage.BigfootBurden.Rank, storageValue = 1440}, - {storage = Storage.BigfootBurden.Warzone1Access, storageValue = 2}, - {storage = Storage.BigfootBurden.Warzone2Access, storageValue = 2}, - {storage = Storage.BigfootBurden.Warzone3Access, storageValue = 2}, - {storage = Storage.DangerousDepths.Questline, storageValue = 10}, - {storage = Storage.DangerousDepths.Access.LavaPumpWarzoneVI, storageValue = 10}, - {storage = Storage.DangerousDepths.Access.LavaPumpWarzoneV, storageValue = 10}, - {storage = Storage.DangerousDepths.Access.LavaPumpWarzoneIV, storageValue = 30}, - {storage = Storage.DangerousDepths.Dwarves.Status, storageValue = 10}, - {storage = Storage.DangerousDepths.Scouts.Status, storageValue = 10}, - {storage = Storage.DangerousDepths.Gnomes.Status, storageValue = 10}, - {storage = Storage.InServiceofYalahar.Questline, storageValue = 51}, - {storage = Storage.InServiceofYalahar.Mission01, storageValue = 6}, - {storage = Storage.InServiceofYalahar.Mission02, storageValue = 8}, - {storage = Storage.InServiceofYalahar.Mission03, storageValue = 6}, - {storage = Storage.InServiceofYalahar.Mission04, storageValue = 6}, - {storage = Storage.InServiceofYalahar.Mission05, storageValue = 8}, - {storage = Storage.InServiceofYalahar.Mission06, storageValue = 5}, - {storage = Storage.InServiceofYalahar.Mission07, storageValue = 5}, - {storage = Storage.InServiceofYalahar.Mission08, storageValue = 4}, - {storage = Storage.InServiceofYalahar.Mission09, storageValue = 2}, - {storage = Storage.InServiceofYalahar.Mission10, storageValue = 1}, - {storage = Storage.InServiceofYalahar.SewerPipe01, storageValue = 1}, - {storage = Storage.InServiceofYalahar.SewerPipe02, storageValue = 1}, - {storage = Storage.InServiceofYalahar.SewerPipe03, storageValue = 1}, - {storage = Storage.InServiceofYalahar.SewerPipe04, storageValue = 1}, - {storage = Storage.InServiceofYalahar.DiseasedDan, storageValue = 1}, - {storage = Storage.InServiceofYalahar.DiseasedBill, storageValue = 1}, - {storage = Storage.InServiceofYalahar.DiseasedFred, storageValue = 1}, - {storage = Storage.InServiceofYalahar.AlchemistFormula, storageValue = 1}, - {storage = Storage.InServiceofYalahar.BadSide, storageValue = 1}, - {storage = Storage.InServiceofYalahar.GoodSide, storageValue = 1}, - {storage = Storage.InServiceofYalahar.MrWestDoor, storageValue = 1}, - {storage = Storage.InServiceofYalahar.MrWestStatus, storageValue = 1}, - {storage = Storage.InServiceofYalahar.TamerinStatus, storageValue = 1}, - {storage = Storage.InServiceofYalahar.MorikSummon, storageValue = 1}, - {storage = Storage.InServiceofYalahar.QuaraState, storageValue = 1}, - {storage = Storage.InServiceofYalahar.QuaraSplasher, storageValue = 1}, - {storage = Storage.InServiceofYalahar.QuaraSharptooth, storageValue = 1}, - {storage = Storage.InServiceofYalahar.QuaraInky, storageValue = 1}, - {storage = Storage.InServiceofYalahar.MatrixState, storageValue = 1}, - {storage = Storage.InServiceofYalahar.NotesPalimuth, storageValue = 1}, - {storage = Storage.InServiceofYalahar.NotesAzerus, storageValue = 1}, - {storage = Storage.InServiceofYalahar.DoorToAzerus, storageValue = 1}, - {storage = Storage.InServiceofYalahar.DoorToBog, storageValue = 1}, - {storage = Storage.InServiceofYalahar.DoorToLastFight, storageValue = 1}, - {storage = Storage.InServiceofYalahar.DoorToMatrix, storageValue = 1}, - {storage = Storage.InServiceofYalahar.DoorToQuara, storageValue = 1}, - {storage = Storage.CultsOfTibia.Questline, storageValue = 7}, - {storage = Storage.CultsOfTibia.Minotaurs.jamesfrancisTask, storageValue = 1}, - {storage = Storage.CultsOfTibia.Minotaurs.Mission, storageValue = 1}, - {storage = Storage.CultsOfTibia.Minotaurs.bossTimer, storageValue = 1}, - {storage = Storage.CultsOfTibia.MotA.Mission, storageValue = 1}, - {storage = Storage.CultsOfTibia.MotA.Pedra1, storageValue = 1}, - {storage = Storage.CultsOfTibia.MotA.Pedra2, storageValue = 1}, - {storage = Storage.CultsOfTibia.MotA.Pedra3, storageValue = 1}, - {storage = Storage.CultsOfTibia.MotA.Respostas, storageValue = 1}, - {storage = Storage.CultsOfTibia.MotA.Perguntaid, storageValue = 1}, - {storage = Storage.CultsOfTibia.Barkless.Mission, storageValue = 1}, - {storage = Storage.CultsOfTibia.Barkless.sulphur, storageValue = 4}, - {storage = Storage.CultsOfTibia.Barkless.tar, storageValue = 3}, - {storage = Storage.CultsOfTibia.Barkless.ice, storageValue = 3}, - {storage = Storage.CultsOfTibia.Barkless.Objects, storageValue = 1}, - {storage = Storage.CultsOfTibia.Barkless.Temp, storageValue = 1}, - {storage = Storage.CultsOfTibia.Barkless.bossTimer, storageValue = 1}, - {storage = Storage.CultsOfTibia.Orcs.Mission, storageValue = 1}, - {storage = Storage.CultsOfTibia.Orcs.lookType, storageValue = 1}, - {storage = Storage.CultsOfTibia.Orcs.bossTimer, storageValue = 1}, - {storage = Storage.CultsOfTibia.Life.Mission, storageValue = 7}, - {storage = Storage.CultsOfTibia.Life.bossTimer, storageValue = 1}, - {storage = Storage.CultsOfTibia.Humans.Mission, storageValue = 1}, - {storage = Storage.CultsOfTibia.Humans.Vaporized, storageValue = 1}, - {storage = Storage.CultsOfTibia.Humans.Decaying, storageValue = 1}, - {storage = Storage.CultsOfTibia.Humans.bossTimer, storageValue = 1}, - {storage = Storage.CultsOfTibia.Misguided.Mission, storageValue = 1}, - {storage = Storage.CultsOfTibia.Misguided.Monsters, storageValue = 1}, - {storage = Storage.CultsOfTibia.Misguided.Exorcisms, storageValue = 1}, - {storage = Storage.CultsOfTibia.Misguided.Time, storageValue = 1}, - {storage = Storage.CultsOfTibia.Misguided.bossTimer, storageValue = 1}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 1}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 4}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 7}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 16}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 26}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 29}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 32}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 35}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 38}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 41}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 43}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 46}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 47}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 50}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 55}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 56}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 58}, - {storage = Storage.ExplorerSociety.QuestLine, storageValue = 61}, - {storage = Storage.ExplorerSociety.CalassaQuest, storageValue = 2}, - {storage = Storage.ForgottenKnowledge.Tomes, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.LastLoreKilled, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.TimeGuardianKilled, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.HorrorKilled, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.DragonkingKilled, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.ThornKnightKilled, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.LloydKilled, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.LadyTenebrisKilled, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.AccessMachine, storageValue = 1}, - {storage = Storage.BarbarianTest.Questline, storageValue = 8}, - {storage = Storage.BarbarianTest.Mission01, storageValue = 3}, - {storage = Storage.BarbarianTest.Mission02, storageValue = 3}, - {storage = Storage.BarbarianTest.Mission03, storageValue = 3}, - {storage = Storage.ChildrenoftheRevolution.Questline, storageValue = 21}, - {storage = Storage.ChildrenoftheRevolution.Mission00, storageValue = 2}, - {storage = Storage.ChildrenoftheRevolution.Mission01, storageValue = 3}, - {storage = Storage.ChildrenoftheRevolution.Mission02, storageValue = 5}, - {storage = Storage.ChildrenoftheRevolution.Mission03, storageValue = 3}, - {storage = Storage.ChildrenoftheRevolution.Mission04, storageValue = 6}, - {storage = Storage.ChildrenoftheRevolution.Mission05, storageValue = 3}, - {storage = Storage.ChildrenoftheRevolution.SpyBuilding01, storageValue = 1}, - {storage = Storage.ChildrenoftheRevolution.SpyBuilding02, storageValue = 1}, - {storage = Storage.ChildrenoftheRevolution.SpyBuilding03, storageValue = 1}, - {storage = Storage.ChildrenoftheRevolution.StrangeSymbols, storageValue = 1}, - {storage = Storage.DjinnWar.Faction.Greeting, storageValue = 2}, - {storage = Storage.DjinnWar.Faction.MaridDoor, storageValue = 2}, - {storage = Storage.DjinnWar.Faction.EfreetDoor, storageValue = 2}, - {storage = Storage.DjinnWar.EfreetFaction.Start, storageValue = 1}, - {storage = Storage.DjinnWar.EfreetFaction.Mission01, storageValue = 3}, - {storage = Storage.DjinnWar.EfreetFaction.Mission02, storageValue = 3}, - {storage = Storage.DjinnWar.EfreetFaction.Mission03, storageValue = 3}, - {storage = Storage.DjinnWar.MaridFaction.Start, storageValue = 1}, - {storage = Storage.DjinnWar.MaridFaction.Mission01, storageValue = 2}, - {storage = Storage.DjinnWar.MaridFaction.Mission02, storageValue = 2}, - {storage = Storage.DjinnWar.MaridFaction.RataMari, storageValue = 2}, - {storage = Storage.DjinnWar.MaridFaction.Mission03, storageValue = 3}, - {storage = Storage.TheWayToYalahar.Questline, storageValue = 1}, - {storage = Storage.SearoutesAroundYalahar.TownsCounter, storageValue = 1}, - {storage = Storage.SearoutesAroundYalahar.AbDendriel, storageValue = 1}, - {storage = Storage.SearoutesAroundYalahar.Darashia, storageValue = 1}, - {storage = Storage.SearoutesAroundYalahar.Venore, storageValue = 1}, - {storage = Storage.SearoutesAroundYalahar.Ankrahmun, storageValue = 1}, - {storage = Storage.SearoutesAroundYalahar.PortHope, storageValue = 1}, - {storage = Storage.SearoutesAroundYalahar.Thais, storageValue = 1}, - {storage = Storage.SearoutesAroundYalahar.LibertyBay, storageValue = 1}, - {storage = Storage.SearoutesAroundYalahar.Carlin, storageValue = 1}, - {storage = Storage.HiddenCityOfBeregar.DefaultStart, storageValue = 1}, - {storage = Storage.HiddenCityOfBeregar.GoingDown, storageValue = 1}, - {storage = Storage.TheIceIslands.Questline, storageValue = 12}, - {storage = Storage.TheIceIslands.Mission01, storageValue = 3}, - {storage = Storage.TheIceIslands.Mission02, storageValue = 5}, - {storage = Storage.TheIceIslands.Mission03, storageValue = 3}, - {storage = Storage.TheIceIslands.Mission04, storageValue = 2}, - {storage = Storage.TheIceIslands.Mission05, storageValue = 6}, - {storage = Storage.TheIceIslands.Mission06, storageValue = 8}, - {storage = Storage.TheIceIslands.Mission07, storageValue = 3}, - {storage = Storage.TheIceIslands.Mission08, storageValue = 4}, - {storage = Storage.TheIceIslands.Mission09, storageValue = 2}, - {storage = Storage.TheIceIslands.Mission10, storageValue = 2}, - {storage = Storage.TheIceIslands.Mission11, storageValue = 2}, - {storage = Storage.TheIceIslands.Mission12, storageValue = 6}, - {storage = Storage.TheInquisition.Questline, storageValue = 25}, - {storage = Storage.TheInquisition.Mission01, storageValue = 7}, - {storage = Storage.TheInquisition.Mission02, storageValue = 3}, - {storage = Storage.TheInquisition.Mission03, storageValue = 6}, - {storage = Storage.TheInquisition.Mission04, storageValue = 3}, - {storage = Storage.TheInquisition.Mission05, storageValue = 3}, - {storage = Storage.TheInquisition.Mission06, storageValue = 3}, - {storage = Storage.TheInquisition.Mission07, storageValue = 1}, - {storage = Storage.TheInquisition.GrofGuard, storageValue = 1}, - {storage = Storage.TheInquisition.KulagGuard, storageValue = 1}, - {storage = Storage.TheInquisition.TimGuard, storageValue = 1}, - {storage = Storage.TheInquisition.WalterGuard, storageValue = 1}, - {storage = Storage.TheInquisition.StorkusVampiredust, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Questline, storageValue = 29}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission01, storageValue = 3}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission02[1], storageValue = 4}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission03, storageValue = 3}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission04, storageValue = 2}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission05[1], storageValue = 2}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission06, storageValue = 5}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission07[1], storageValue = 2}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission08, storageValue = 2}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission09[1], storageValue = 3}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission10[1], storageValue = 2}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission10.MagicCarpetDoor, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.TomeofKnowledge, storageValue = 12}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission02.Beaver1, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission02.Beaver2, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission02.Beaver3, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission05.KingTibianus, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission05.Leeland, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission05.Angus, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission05.Wydrin, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission05.Telas, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.Mission05.Humgolf, storageValue = 1}, - {storage = Storage.TheShatteredIsles.DefaultStart, storageValue = 3}, - {storage = Storage.TheShatteredIsles.TheGovernorDaughter, storageValue = 3}, - {storage = Storage.TheShatteredIsles.TheErrand, storageValue = 2}, - {storage = Storage.TheShatteredIsles.AccessToMeriana, storageValue = 1}, - {storage = Storage.TheShatteredIsles.APoemForTheMermaid, storageValue = 3}, - {storage = Storage.TheShatteredIsles.ADjinnInLove, storageValue = 5}, - {storage = Storage.TheShatteredIsles.AccessToLagunaIsland, storageValue = 1}, - {storage = Storage.TheShatteredIsles.AccessToGoroma, storageValue = 1}, - {storage = Storage.TheShatteredIsles.Shipwrecked, storageValue = 2}, - {storage = Storage.TheShatteredIsles.DragahsSpellbook, storageValue = 1}, - {storage = Storage.TheShatteredIsles.TheCounterspell, storageValue = 4}, - {storage = Storage.ThievesGuild.Quest, storageValue = 1}, - {storage = Storage.ThievesGuild.Mission01, storageValue = 2}, - {storage = Storage.ThievesGuild.Mission02, storageValue = 3}, - {storage = Storage.ThievesGuild.Mission03, storageValue = 3}, - {storage = Storage.ThievesGuild.Mission04, storageValue = 8}, - {storage = Storage.ThievesGuild.Mission05, storageValue = 2}, - {storage = Storage.ThievesGuild.Mission06, storageValue = 4}, - {storage = Storage.ThievesGuild.Mission07, storageValue = 2}, - {storage = Storage.ThievesGuild.Mission08, storageValue = 1}, - {storage = Storage.TravellingTrader.Mission01, storageValue = 1}, - {storage = Storage.TravellingTrader.Mission01, storageValue = 2}, - {storage = Storage.TravellingTrader.Mission02, storageValue = 5}, - {storage = Storage.TravellingTrader.Mission03, storageValue = 3}, - {storage = Storage.TravellingTrader.Mission04, storageValue = 3}, - {storage = Storage.TravellingTrader.Mission05, storageValue = 3}, - {storage = Storage.TravellingTrader.Mission06, storageValue = 2}, - {storage = Storage.TravellingTrader.Mission07, storageValue = 1}, - {storage = Storage.SvargrondArena.QuestLogGreenhorn, storageValue = 1}, - {storage = Storage.TibiaTales.DefaultStart, storageValue = 1}, - {storage = Storage.TibiaTales.ToAppeaseTheMightyQuest, storageValue = 1}, - {storage = 12450, storageValue = 6}, - {storage = 12330, storageValue = 1}, - {storage = 12332, storageValue = 13}, - {storage = 12333, storageValue = 3}, - {storage = Storage.FriendsandTraders.DefaultStart, storageValue = 1}, - {storage = Storage.FriendsandTraders.TheSweatyCyclops, storageValue = 2}, - {storage = Storage.FriendsandTraders.TheMermaidMarina, storageValue = 2}, - {storage = Storage.FriendsandTraders.TheBlessedStake, storageValue = 12}, - {storage = 100157, storageValue = 1}, - {storage = Storage.WrathoftheEmperor.Questline, storageValue = 29}, - {storage = Storage.WrathoftheEmperor.Mission01, storageValue = 3}, - {storage = Storage.WrathoftheEmperor.Mission02, storageValue = 3}, - {storage = Storage.WrathoftheEmperor.Mission03, storageValue = 3}, - {storage = Storage.WrathoftheEmperor.Mission04, storageValue = 3}, - {storage = Storage.WrathoftheEmperor.Mission05, storageValue = 3}, - {storage = Storage.WrathoftheEmperor.Mission06, storageValue = 4}, - {storage = Storage.WrathoftheEmperor.Mission07, storageValue = 6}, - {storage = Storage.WrathoftheEmperor.Mission08, storageValue = 2}, - {storage = Storage.WrathoftheEmperor.Mission09, storageValue = 2}, - {storage = Storage.WrathoftheEmperor.Mission10, storageValue = 1}, - {storage = Storage.TheApeCity.Started, storageValue = 1}, - {storage = Storage.TheApeCity.Questline, storageValue = 18}, - {storage = Storage.Oramond.QuestLine, storageValue = 1}, - {storage = Storage.Oramond.MissionToTakeRoots, storageValue = 3000}, - {storage = Storage.DangerousDepths.Questline, storageValue = 1}, - {storage = Storage.DangerousDepths.Dwarves.Home, storageValue = 2}, - {storage = Storage.DangerousDepths.Dwarves.Subterranean, storageValue = 2}, - {storage = Storage.DangerousDepths.Gnomes.Measurements, storageValue = 2}, - {storage = Storage.DangerousDepths.Gnomes.Ordnance, storageValue = 3}, - {storage = Storage.DangerousDepths.Gnomes.Charting, storageValue = 2}, - {storage = Storage.DangerousDepths.Scouts.Growth, storageValue = 2}, - {storage = Storage.DangerousDepths.Scouts.Diremaw, storageValue = 2}, - {storage = Storage.Quest.U11_40.ThreatenedDreams.QuestLine, storageValue = 1}, - {storage = Storage.Quest.U11_40.ThreatenedDreams.Mission01[1], storageValue = 16}, - {storage = Storage.AdventurersGuild.GreatDragonHunt.WarriorSkeleton, storageValue = 1}, - {storage = Storage.AdventurersGuild.GreatDragonHunt.WarriorSkeleton, storageValue = 2}, - {storage = Storage.Quest.U10_55.Dawnport.Questline, storageValue = 1}, - {storage = Storage.Quest.U10_55.Dawnport.GoMain, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.AccessDeath, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.AccessViolet, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.AccessEarth, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.AccessFire, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.AccessIce, storageValue = 1}, - {storage = Storage.ForgottenKnowledge.AccessGolden, storageValue = 1}, - {storage = Storage.Quest.U10_80.Grimvale.AncientFeudDoors, storageValue = 1}, - {storage = Storage.Quest.U10_80.Grimvale.AncientFeudShortcut, storageValue = 1}, - {storage = Storage.Kilmaresh.AccessDoor, storageValue = 1}, - {storage = Storage.Kilmaresh.CatacombDoors, storageValue = 1}, - {storage = Storage.Quest.U12_00.TheDreamCourts.AccessDoors, storageValue = 1}, - {storage = Storage.Quest.U12_00.TheDreamCourts.HauntedHouseAccess, storageValue = 1}, - {storage = Storage.Quest.U12_00.TheDreamCourts.BuriedCathedralAccess, storageValue = 1}, - {storage = Storage.Quest.U12_00.TheDreamCourts.DreamScarAccess, storageValue = 1}, - {storage = Storage.Quest.U12_40.TheOrderOfTheLion.AccessEastSide, storageValue = 1}, - {storage = Storage.Quest.U12_40.TheOrderOfTheLion.AccessSouthernSide, storageValue = 1}, - {storage = Storage.Quest.U12_60.APiratesTail.TentuglyDoor, storageValue = 1}, - {storage = Storage.Quest.U12_60.APiratesTail.RascacoonShortcut, storageValue = 1}, - {storage = Storage.Quest.U12_70.AdventuresOfGalthen.AccessDoor, storageValue = 1}, - - {storage = Storage.CultsOfTibia.Barkless.AccessDoor, storageValue = 1}, - {storage = Storage.CultsOfTibia.Barkless.TrialAccessDoor, storageValue = 1}, - {storage = Storage.CultsOfTibia.Barkless.TarAccessDoor, storageValue = 1}, - {storage = Storage.CultsOfTibia.Barkless.BossAccessDoor, storageValue = 1}, - {storage = Storage.CultsOfTibia.Life.AccessDoor, storageValue = 1}, - {storage = Storage.CultsOfTibia.Misguided.AccessDoor, storageValue = 1}, - {storage = Storage.CultsOfTibia.FinalBoss.AccessDoor, storageValue = 1}, - - {storage = Storage.FerumbrasAscension.FirstDoor, storageValue = 1}, - {storage = Storage.FerumbrasAscension.MonsterDoor, storageValue = 1}, - {storage = Storage.FerumbrasAscension.TarbazDoor, storageValue = 1}, - {storage = Storage.FerumbrasAscension.HabitatsAccess, storageValue = 1}, - {storage = Storage.FerumbrasAscension.TheLordOfTheLiceAccess, storageValue = 1}, - - {storage = Storage.Quest.U12_00.TheDreamCourts.AndrewDoor, storageValue = 1}, - - {storage = Storage.WrathoftheEmperor.TeleportAccess.AwarnessEmperor, storageValue = 1}, - {storage = Storage.WrathoftheEmperor.TeleportAccess.BossRoom, storageValue = 1}, - {storage = Storage.WrathoftheEmperor.TeleportAccess.InnerSanctum, storageValue = 1}, - {storage = Storage.WrathoftheEmperor.TeleportAccess.Rebel, storageValue = 1}, - {storage = Storage.WrathoftheEmperor.TeleportAccess.SleepingDragon, storageValue = 1}, - {storage = Storage.WrathoftheEmperor.TeleportAccess.Wote10, storageValue = 1}, - {storage = Storage.WrathoftheEmperor.TeleportAccess.Zizzle, storageValue = 1}, - {storage = Storage.WrathoftheEmperor.TeleportAccess.Zlak, storageValue = 1}, - - {storage = Storage.TheSecretLibrary.FalconBastionAccess, storageValue = 1}, - {storage = Storage.TheSecretLibrary.LowerBastionAccess, storageValue = 1}, - {storage = Storage.TheSecretLibrary.UndergroundBastionAccess, storageValue = 1}, - {storage = Storage.TheSecretLibrary.OberonAccess, storageValue = 1}, - {storage = Storage.TheSecretLibrary.MotaDoor, storageValue = 1}, - {storage = Storage.TheSecretLibrary.BasinDoor, storageValue = 1}, - {storage = Storage.TheSecretLibrary.SkullDoor, storageValue = 1}, - {storage = Storage.TheSecretLibrary.Mota, storageValue = 1}, - {storage = Storage.TheSecretLibrary.MiniBosses.PreceptorLazare, storageValue = 1}, - {storage = Storage.TheSecretLibrary.MiniBosses.GrandCanonDominus, storageValue = 1}, - {storage = Storage.TheSecretLibrary.MiniBosses.GrandChaplainGaunder, storageValue = 1}, - {storage = Storage.TheSecretLibrary.MiniBosses.GrandCommanderSoeren, storageValue = 1}, - {storage = Storage.TheSecretLibrary.MiniBosses.DazedLeafGolem, storageValue = 1}, - - {storage = Storage.DjinnWar.EfreetFaction.DoorToLamp, storageValue = 1}, - {storage = Storage.DjinnWar.EfreetFaction.DoorToMaridTerritory, storageValue = 1}, - {storage = Storage.DjinnWar.MaridFaction.DoorToLamp, storageValue = 1}, - {storage = Storage.DjinnWar.MaridFaction.DoorToEfreetTerritory, storageValue = 1}, - - {storage = Storage.Quest.U12_20.GraveDanger.QuestLine, storageValue = 14}, - {storage = Storage.Quest.U12_20.GraveDanger.Bosses.KingZelosDoor, storageValue = 1}, - - {storage = Storage.Quest.U13_10.CradleOfMonsters.Access.Ingol, storageValue = 1}, - {storage = Storage.Quest.U13_10.CradleOfMonsters.Access.LowerIngol, storageValue = 1}, - {storage = Storage.Quest.U13_10.CradleOfMonsters.Access.Monster, storageValue = 1}, - {storage = Storage.Quest.U13_10.CradleOfMonsters.Access.MutatedAbomination, storageValue = 1}, - {storage = Storage.Quest.U8_54.TheNewFrontier.SnakeHeadTeleport, storageValue = 1}, - {storage = Storage.LiquidBlackQuest.Visitor, storageValue = 5}, + -- } local function playerFreeQuestStart(playerId, index) diff --git a/data-otxserver/scripts/creaturescripts/others/player_death.lua b/data-otxserver/scripts/creaturescripts/others/player_death.lua index 526f2efff..d3f12f3ce 100644 --- a/data-otxserver/scripts/creaturescripts/others/player_death.lua +++ b/data-otxserver/scripts/creaturescripts/others/player_death.lua @@ -2,10 +2,6 @@ local deathListEnabled = true local playerDeath = CreatureEvent("PlayerDeath") function playerDeath.onDeath(player, corpse, killer, mostDamageKiller, unjustified, mostDamageUnjustified) - if player:getStorageValue(Storage.SvargrondArena.PitDoor) > 0 then - player:setStorageValue(Storage.SvargrondArena.PitDoor, 0) - end - if not deathListEnabled then return end diff --git a/data-otxserver/scripts/eventcallbacks/monster/on_spawn.lua b/data-otxserver/scripts/eventcallbacks/monster/on_spawn.lua index 88a74af45..0bb9e94df 100644 --- a/data-otxserver/scripts/eventcallbacks/monster/on_spawn.lua +++ b/data-otxserver/scripts/eventcallbacks/monster/on_spawn.lua @@ -8,34 +8,6 @@ local function handleCobra(monster) end end -local function handleIronServantReplica(monster) - if monster:getName():lower() ~= 'iron servant replica' then - return - end - - local chance = math.random(100) - if Game.getStorageValue(GlobalStorage.ForgottenKnowledge.MechanismDiamond) >= 1 - and Game.getStorageValue(GlobalStorage.ForgottenKnowledge.MechanismGolden) >= 1 then - if chance > 30 then - local monsterType = math.random(2) == 1 and 'diamond servant replica' or 'golden servant replica' - Game.createMonster(monsterType, monster:getPosition(), false, true) - monster:remove() - end - return - end - - if Game.getStorageValue(GlobalStorage.ForgottenKnowledge.MechanismDiamond) >= 1 and chance > 30 then - Game.createMonster('diamond servant replica', monster:getPosition(), false, true) - monster:remove() - return - end - - if Game.getStorageValue(GlobalStorage.ForgottenKnowledge.MechanismGolden) >= 1 and chance > 30 then - Game.createMonster('golden servant replica', monster:getPosition(), false, true) - monster:remove() - end -end - local callback = EventCallback() function callback.monsterOnSpawn(monster, position) diff --git a/data-otxserver/scripts/globalevents/others/startup.lua b/data-otxserver/scripts/globalevents/others/startup.lua index 6b2d3ab3b..43afa32a3 100644 --- a/data-otxserver/scripts/globalevents/others/startup.lua +++ b/data-otxserver/scripts/globalevents/others/startup.lua @@ -105,12 +105,6 @@ function serverstartup.onStartup() Result.free(banResultId) end - -- Ferumbras Ascendant quest - for i = 1, #GlobalStorage.FerumbrasAscendant.Habitats do - local storage = GlobalStorage.FerumbrasAscendant.Habitats[i] - Game.setStorageValue(storage, 0) - end - -- Check house auctions local resultId = db.storeQuery('SELECT `id`, `highest_bidder`, `last_bid`, (SELECT `balance` FROM \z `players` WHERE `players`.`id` = `highest_bidder`) AS `balance` FROM `houses` WHERE `owner` = 0 AND \z diff --git a/data-otxserver/scripts/lib/register_actions.lua b/data-otxserver/scripts/lib/register_actions.lua index 73dd6ddb9..5a5de0b71 100644 --- a/data-otxserver/scripts/lib/register_actions.lua +++ b/data-otxserver/scripts/lib/register_actions.lua @@ -23,54 +23,7 @@ local fruits = { } local lava = { - Position(32808, 32336, 11), - Position(32809, 32336, 11), - Position(32810, 32336, 11), - Position(32808, 32334, 11), - Position(32807, 32334, 11), - Position(32807, 32335, 11), - Position(32807, 32336, 11), - Position(32807, 32337, 11), - Position(32806, 32337, 11), - Position(32805, 32337, 11), - Position(32805, 32338, 11), - Position(32805, 32339, 11), - Position(32806, 32339, 11), - Position(32806, 32338, 11), - Position(32807, 32338, 11), - Position(32808, 32338, 11), - Position(32808, 32337, 11), - Position(32809, 32337, 11), - Position(32810, 32337, 11), - Position(32811, 32337, 11), - Position(32811, 32338, 11), - Position(32806, 32338, 11), - Position(32810, 32338, 11), - Position(32810, 32339, 11), - Position(32809, 32339, 11), - Position(32809, 32338, 11), - Position(32811, 32336, 11), - Position(32811, 32335, 11), - Position(32810, 32335, 11), - Position(32809, 32335, 11), - Position(32808, 32335, 11), - Position(32809, 32334, 11), - Position(32809, 32333, 11), - Position(32810, 32333, 11), - Position(32811, 32333, 11), - Position(32806, 32338, 11), - Position(32810, 32334, 11), - Position(32811, 32334, 11), - Position(32812, 32334, 11), - Position(32813, 32334, 11), - Position(32814, 32334, 11), - Position(32812, 32333, 11), - Position(32810, 32334, 11), - Position(32812, 32335, 11), - Position(32813, 32335, 11), - Position(32814, 32335, 11), - Position(32814, 32333, 11), - Position(32813, 32333, 11) + -- } local function revertItem(position, itemId, transformId) @@ -228,32 +181,6 @@ local cutItems = { [25800] = 0 } --- Ferumbras ascendant ring reward -local function addFerumbrasAscendantReward(player, target, toPosition) - local stonePos = Position(32648, 32134, 10) - if (toPosition == stonePos) then - local tile = Tile(stonePos) - local stone = tile:getItemById(1772) - if stone then - stone:remove(1) - toPosition:sendMagicEffect(CONST_ME_POFF) - addEvent(function() - Game.createItem(1772, 1, stonePos) - end, 20000) - return true - end - end - - if target.itemid == 10551 and target.actionid == 53803 then - if player:getStorageValue(Storage.FerumbrasAscendant.Ring) >= 1 then - return false - end - - player:addItem(22170, 1) - player:setStorageValue(Storage.FerumbrasAscendant.Ring, 1) - end -end - function onDestroyItem(player, item, fromPosition, target, toPosition, isHotkey) if not target or target == nil or type(target) ~= "userdata" or not target:isItem() then return false @@ -275,49 +202,6 @@ function onDestroyItem(player, item, fromPosition, target, toPosition, isHotkey) end end - local watt = ItemType(item.itemid):getAttack() - if math.random(1, 80) <= (watt and watt > 10 and watt or 10) then - -- Against The Spider Cult (Spider Eggs) - if target.itemid == 233 then - local eggStorage = player:getStorageValue(Storage.TibiaTales.AgainstTheSpiderCult) - if eggStorage >= 1 and eggStorage < 5 then - player:setStorageValue(Storage.TibiaTales.AgainstTheSpiderCult, math.max(1, eggStorage) + 1) - end - - Game.createMonster("Giant Spider", Position(33181, 31869, 12)) - end - - -- Move items outside the container - if target:isContainer() then - for i = target:getSize() - 1, 0, -1 do - local containerItem = target:getItem(i) - if containerItem then - containerItem:moveTo(toPosition) - end - end - end - - -- Being better than cipsoft - if target:getFluidType() ~= 0 then - local fluid = Game.createItem(2886, target:getFluidType(), toPosition) - if fluid ~= nil then - fluid:decay() - end - end - - target:remove(1) - - local itemDestroy = Game.createItem(destroyId, 1, toPosition) - if itemDestroy ~= nil then - itemDestroy:decay() - end - - -- Energy barrier na threatned dreams quest (feyrist) - if target.itemid == 25798 or target.itemid == 25800 then - addEvent(Game.createItem, math.random(13000, 17000), target.itemid, 1, toPosition) - end - end - toPosition:sendMagicEffect(CONST_ME_POFF) return true end @@ -328,15 +212,7 @@ function onUseRope(player, item, fromPosition, target, toPosition, isHotkey) end local tile = Tile(toPosition) - if tile:isRopeSpot() then - player:teleportTo(toPosition:moveUpstairs()) - if target.itemid == 7762 then - if player:getStorageValue(Storage.RookgaardTutorialIsland.TutorialHintsStorage) < 22 then - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, - "You have successfully used your rope to climb out of the hole. Congratulations! Now continue to the east.") - end - end - elseif table.contains(holeId, target.itemid) then + if table.contains(holeId, target.itemid) then toPosition.z = toPosition.z + 1 tile = Tile(toPosition) if tile then @@ -356,34 +232,6 @@ function onUseRope(player, item, fromPosition, target, toPosition, isHotkey) end function onUseShovel(player, item, fromPosition, target, toPosition, isHotkey) - addFerumbrasAscendantReward(player, target, toPosition) - --Dawnport quest (Morris amulet task) - local sandPosition = Position(32099, 31933, 7) - if (toPosition == sandPosition) then - local sandTile = Tile(sandPosition) - local amuletId = sandTile:getItemById(19401) - if amuletId then - if player:getStorageValue(Storage.Quest.U10_55.Dawnport.TheLostAmulet) == 1 then - local rand = math.random(100) - if rand <= 10 then - player:addItem(21379, 1) - player:setStorageValue(Storage.Quest.U10_55.Dawnport.TheLostAmulet, 2) - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You have found an ancient amulet. Strange engravings cover it. Maybe Morris can make them out.") - elseif rand <= 80 then - player:addItem(21395, 1) - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You dig up sand and sea shells.") - elseif rand > 95 then - player:addItem(3976, math.random(1, 10)) - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You dig up some worms. But you are confident that you'll find the amulet here, somewhere.") - end - toPosition:sendMagicEffect(CONST_ME_POFF) - else - return false - end - end - return true - end - if table.contains(holes, target.itemid) then target:transform(target.itemid + 1) target:decay() @@ -394,8 +242,6 @@ function onUseShovel(player, item, fromPosition, target, toPosition, isHotkey) return true end player:teleportTo(toPosition, false) - elseif target.itemid == 1822 and target:getPosition() == Position(33222, 31100, 7) then - player:teleportTo(Position(33223, 31100, 8)) elseif table.contains({231, 231}, target.itemid) then local rand = math.random(100) if target.actionid == 100 and rand <= 20 then @@ -407,94 +253,6 @@ function onUseShovel(player, item, fromPosition, target, toPosition, isHotkey) Game.createMonster("Scarab", toPosition) end toPosition:sendMagicEffect(CONST_ME_POFF) - -- Rookgaard tutorial island - elseif target.itemid == 351 and target.actionid == 8024 then - player:addItem(11341, 1) - player:say("You dig out a handful of earth from this sacred place.", TALKTYPE_MONSTER_SAY) - elseif target.itemid == 7749 and player:getStorageValue(Storage.RookgaardTutorialIsland.TutorialHintsStorage) < 20 then - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, - "You dug a hole! Walk onto it as long as it is open to jump down into the forest cave." - ) - player:setStorageValue(Storage.RookgaardTutorialIsland.TutorialHintsStorage, 19) - Position(32070, 32266, 7):sendMagicEffect(CONST_ME_TUTORIALARROW) - Position(32070, 32266, 7):sendMagicEffect(CONST_ME_TUTORIALSQUARE) - target:transform(594) - addEvent(revertItem, 30 * 1000, toPosition, 594, 7749) - elseif target.actionid == 4654 and player:getStorageValue(Storage.GravediggerOfDrefia.Mission49) == 1 - and player:getStorageValue(Storage.GravediggerOfDrefia.Mission50) < 1 then - -- Gravedigger Quest - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You found a piece of the scroll. You pocket it quickly.") - player:getPosition():sendMagicEffect(CONST_ME_POFF) - player:addItem(18933, 1) - player:setStorageValue(Storage.GravediggerOfDrefia.Mission50, 1) - elseif target.actionid == 4668 and player:getStorageValue(Storage.GravediggerOfDrefia.Mission69) == 1 - and player:getStorageValue(Storage.GravediggerOfDrefia.Mission70) < 1 then - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "A torn scroll piece emerges. Probably gnawed off by rats.") - player:getPosition():sendMagicEffect(CONST_ME_POFF) - player:addItem(18933, 1) - player:setStorageValue(Storage.GravediggerOfDrefia.Mission70, 1) - elseif target.actionid == 50118 then - local wagonItem = Tile(Position(32717, 31492, 11)):getItemById(7131) - if wagonItem then - if Tile(Position(32717, 31492, 11)):getItemById(7921) then - return true - end - Game.createItem(7921, 1, wagonItem:getPosition()):setActionId(40023) - toPosition:sendMagicEffect(CONST_ME_POFF) - end - elseif target.itemid == 7921 then - local coalItem = Tile(Position(32699, 31492, 11)):getItemById(7921) - if coalItem then - coalItem:remove(1) - toPosition:sendMagicEffect(CONST_ME_POFF) - Tile(Position(32699, 31492, 11)):getItemById(7131):setActionId(40023) - local crucibleItem = Tile(Position(32699, 31494, 11)):getItemById(7814) - if crucibleItem then - crucibleItem:setActionId(50119) - end - end - elseif table.contains({8716, 17950, 15047, 16306, 16300}, target.itemid) then - if player:getStorageValue(Storage.SwampDiggingTimeout) >= os.time() then - toPosition:sendMagicEffect(CONST_ME_POFF) - return false - end - - local config = { - {from = 1, to = 39, itemId = 3998}, - {from = 40, to = 79, itemId = 3028}, - {from = 80, to = 100, itemId = 17858} - } - - local chance = math.random(100) - for i = 1, #config do - local randItem = config[i] - if chance >= randItem.from and chance <= randItem.to then - player:addItem(randItem.itemId, 1) - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "You dug up a " .. ItemType(randItem.itemId):getName() .. ".") - player:setStorageValue(Storage.SwampDiggingTimeout, os.time() + 604800) - toPosition:sendMagicEffect(CONST_ME_GREEN_RINGS) - break - end - end - elseif target.itemid == 103 and target.actionid == 4205 then - if player:getStorageValue(Storage.TibiaTales.IntoTheBonePit) ~= 1 then - return false - end - - local remains = Game.createItem(3133, 1, toPosition) - if remains then - remains:setActionId(4206) - end - toPosition:sendMagicEffect(CONST_ME_HITAREA) - addEvent(removeRemains, 60000, toPosition) - elseif target.itemid == 5730 then - if not player:removeItem(5090, 1) then - return false - end - - target:transform(5731) - target:decay() - toPosition:sendMagicEffect(CONST_ME_POFF) else return false end @@ -502,39 +260,6 @@ function onUseShovel(player, item, fromPosition, target, toPosition, isHotkey) end function onUsePick(player, item, fromPosition, target, toPosition, isHotkey) - local stonePos = Position(32648, 32134, 10) - if (toPosition == stonePos) then - local tile = Tile(stonePos) - local stone = tile:getItemById(1772) - if stone then - stone:remove(1) - toPosition:sendMagicEffect(CONST_ME_POFF) - addEvent(function() - Game.createItem(1772, 1, stonePos) - end, 20000) - return true - end - end - - -- The Rookie Guard Quest - Mission 09: Rock 'n Troll - -- Path: data\scripts\actions\quests\the_rookie_guard\mission09_rock_troll.lua - -- Damage tunnel pillars - if player:getStorageValue(Storage.TheRookieGuard.Mission09) ~= -1 and target.itemid == 1600 then - return onUsePickAtTunnelPillar(player, item, fromPosition, target, toPosition) - end - - --Dawnport some cracks down - local crackPosition = Position(32099, 31930, 7) - if (toPosition == crackPosition) then - local tile = Tile(crackPosition) - local crack = tile:getItemById(6298) - if crack then - player:teleportTo({x = 32099, y = 31930, z = 8}) - player:getPosition():sendMagicEffect(CONST_ME_TELEPORT) - return true - end - end - if table.contains({354, 355}, target.itemid) and target.actionid == 101 then target:transform(394) target:decay() @@ -584,217 +309,9 @@ function onUsePick(player, item, fromPosition, target, toPosition, isHotkey) target:transform(868) target:decay() toPosition:sendMagicEffect(CONST_ME_HITAREA) - elseif target.itemid == 7806 then - -- Sea of light quest - if player:getStorageValue(Storage.SeaOfLight.Questline) ~= 4 then - return false - end - - if toPosition == Position(33031, 31758, 8) then - if math.random(100) <= 30 then - if player:getStorageValue(Storage.SeaOfLight.Questline) == 4 then - player:addItem(9697, 1) - player:setStorageValue(Storage.SeaOfLight.Questline, player:getStorageValue(Storage.SeaOfLight.Questline) + 1) - player:say("*crush*", TALKTYPE_MONSTER_SAY) - end - else - player:getPosition():sendMagicEffect(CONST_ME_POFF) - end - end - elseif target.itemid == 22075 then - -- Grimvale quest - if player:getStorageValue(Storage.Grimvale.SilverVein) < os.time() then - local chance = math.random(1, 10) - if chance >= 5 then - player:sendTextMessage( - MESSAGE_EVENT_ADVANCE, - "Even after a thorough and frustrating \z - search you could not find enough liquified silver in this vein to fill a flask." - ) - elseif chance <= 4 then - player:sendTextMessage( - MESSAGE_EVENT_ADVANCE, - "Carefully you gather some of the liquified \z - silver from this vein in a small flask. You now feel strangely affected to the moon." - ) - player:addItem(22058) - target:transform(4464) - addEvent(revertItem, 10 * 60 * 1000, toPosition, 4464, 22075) - end - player:setStorageValue(Storage.Grimvale.SilverVein, os.time() + 2 * 60) - else - player:sendTextMessage( - MESSAGE_EVENT_ADVANCE,"You are still exhausted from earlier attempts. \z - Getting liquid silver out of the mountain needs concentration and a steady hand.") - end - elseif target.itemid == 7185 then - --The Ice Islands Quest, Nibelor 1: Breaking the Ice - local missionProgress = player:getStorageValue(Storage.TheIceIslands.Mission02) - local pickAmount = player:getStorageValue(Storage.TheIceIslands.PickAmount) - if missionProgress < 1 or pickAmount >= 3 or player:getStorageValue(Storage.TheIceIslands.Questline) ~= 3 then - return false - end - - player:setStorageValue(Storage.TheIceIslands.PickAmount, math.max(0, pickAmount) + 1) - -- Questlog The Ice Islands Quest, Nibelor 1: Breaking the Ice - player:setStorageValue(Storage.TheIceIslands.Mission02, missionProgress + 1) - - if pickAmount >= 2 then - player:setStorageValue(Storage.TheIceIslands.Questline, 4) - -- Questlog The Ice Islands Quest, Nibelor 1: Breaking the Ice - player:setStorageValue(Storage.TheIceIslands.Mission02, 4) - end - - local crackItem = Tile(toPosition):getItemById(7185) - if crackItem then - crackItem:transform(7186) - toPosition:sendMagicEffect(CONST_ME_POFF) - addEvent(revertItem, 60 * 1000, toPosition, 7186, 7185) - end - local chakoyas = {"chakoya toolshaper", "chakoya tribewarden", "chakoya windcaller"} - if toPosition == Position(32399, 31051, 7) then - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32397, 31048, 7)) - Position(32397, 31048, 7):sendMagicEffect(CONST_ME_TELEPORT) - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32399, 31048, 7)) - Position(32399, 31048, 7):sendMagicEffect(CONST_ME_TELEPORT) - elseif toPosition == Position(32394, 31062, 7) then - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32388, 31059, 7)) - Position(32388, 31059, 7):sendMagicEffect(CONST_ME_TELEPORT) - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32390, 31062, 7)) - Position(32390, 31062, 7):sendMagicEffect(CONST_ME_TELEPORT) - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32389, 31062, 7)) - Position(32389, 31062, 7):sendMagicEffect(CONST_ME_TELEPORT) - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32387, 31064, 7)) - Position(32387, 31064, 7):sendMagicEffect(CONST_ME_TELEPORT) - elseif toPosition == Position(32393, 31072, 7) then - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32391, 31071, 7)) - Position(32391, 31071, 7):sendMagicEffect(CONST_ME_TELEPORT) - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32390, 31069, 7)) - Position(32390, 31069, 7):sendMagicEffect(CONST_ME_TELEPORT) - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32389, 31069, 7)) - Position(32389, 31069, 7):sendMagicEffect(CONST_ME_TELEPORT) - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32388, 31074, 7)) - Position(32388, 31074, 7):sendMagicEffect(CONST_ME_TELEPORT) - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32386, 31073, 7)) - Position(32386, 31073, 7):sendMagicEffect(CONST_ME_TELEPORT) - Game.createMonster(chakoyas[math.random(#chakoyas)], Position(32387, 31072, 7)) - Position(32387, 31072, 7):sendMagicEffect(CONST_ME_TELEPORT) - end - elseif target.itemid == 1791 then - -- The Pits of Inferno Quest - if toPosition == Position(32808, 32334, 11) then - for i = 1, #lava do - Game.createItem(5815, 1, lava[i]) - end - target:transform(3141) - toPosition:sendMagicEffect(CONST_ME_SMOKE) - elseif target.actionid == 50058 then - -- naginata quest - local stoneStorage = Game.getStorageValue(GlobalStorage.NaginataStone) - if stoneStorage ~= 5 then - Game.setStorageValue(GlobalStorage.NaginataStone, math.max(0, stoneStorage) + 1) - elseif stoneStorage == 5 then - target:remove(1) - Game.setStorageValue(GlobalStorage.NaginataStone) - end - toPosition:sendMagicEffect(CONST_ME_POFF) - doTargetCombatHealth(0, player, COMBAT_PHYSICALDAMAGE, -31, -39, CONST_ME_NONE) - end - elseif target.itemid == 355 and target.actionid == 101 then - -- The Banshee Quest - target:transform(394) - target:decay() - toPosition:sendMagicEffect(CONST_ME_POFF) - elseif target.actionid == 50090 then - -- The Hidden City of Beregar Quest - if player:getStorageValue(Storage.hiddenCityOfBeregar.WayToBeregar) == 1 then - player:teleportTo(Position(32566, 31338, 10)) - end - elseif target.actionid == 40028 then - if Tile(Position(32617, 31513, 9)):getItemById(1272) - and Tile(Position(32617, 31514, 9)):getItemById(1624) then - local rubbleItem = Tile(Position(32619, 31514, 9)):getItemById(5709) - if rubbleItem then - rubbleItem:remove(1) - end - else - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, - "You can't remove this pile since it's currently holding up the tunnel.") - end - elseif target.actionid == 50127 then - -- Pythius The Rotten (Firewalker Boots) - if player:getStorageValue(Storage.QuestChests.FirewalkerBoots) == 1 then - return false - end - target:remove(1) - - local stoneItem = Tile(toPosition):getItemById(1791) - if stoneItem then - stoneItem:remove(1) - end - - iterateArea(function(position) - local groundItem = Tile(position):getGround() - if groundItem and groundItem.itemid == 21477 then - groundItem:transform(5815) - end - end, Position(32550, 31373, 15), Position(32551, 31379, 15)) - - iterateArea(function(position) - position:sendMagicEffect(CONST_ME_POFF) - end, Position(32551, 31374, 15), Position(32551, 31379, 15) ) - - local portal = Game.createItem(1949, 1, Position(32551, 31376, 15)) - if portal then - portal:setActionId(50126) - end - elseif target.actionid == 50091 then - -- The Asure - player:teleportTo(Position(32960, 32676, 4)) - elseif target.itemid == 11340 then - -- Wrath of the emperor quest - player:addItem(11339, 1) - player:say("The cracked part of the table lets you cut out a large chunk of wood with your pick.", - TALKTYPE_MONSTER_SAY ) - elseif target.itemid == 372 then - target:transform(394) - target:decay() - elseif target.itemid == 2071 then - -- Jack to the Future Quest - if player:getStorageValue(Storage.TibiaTales.JackFutureQuest.Statue) ~= 1 then - return false - end - - if toPosition == Position(33277, 31754, 7) then - if player:getStorageValue(Storage.TibiaTales.JackFutureQuest.Statue) == 1 then - target:transform(2066) - toPosition:sendMagicEffect(CONST_ME_POFF) - player:addItem(10426, 1) - player:setStorageValue(Storage.TibiaTales.JackFutureQuest.Statue, 2) - player:setStorageValue(Storage.TibiaTales.JackFutureQuest.QuestLine, player:getStorageValue(Storage.TibiaTales.JackFutureQuest.QuestLine) + 1) - addEvent(revertItem, 2 * 60 * 1000, {x = 33277, y = 31754, z = 7}, 2066, 2071) - end - end else return false end - if (target ~= nil) and target:isItem() and (target:getId() == 20135) then - --Lower Roshamuul - if math.random(100) > 50 then - player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Crushing the stone produces some fine gravel.") - target:transform(20133) - target:decay() - else - Game.createMonster("Frazzlemaw", toPosition) - player:sendTextMessage( - MESSAGE_EVENT_ADVANCE, - "Crushing the stone yields nothing but slightly finer, yet still unusable rubber." - ) - target:transform(20134) - target:decay() - end - return true - end return true end @@ -815,132 +332,9 @@ function onUseMachete(player, item, fromPosition, target, toPosition, isHotkey) end function onUseCrowbar(player, item, fromPosition, target, toPosition, isHotkey) - if not table.contains({3304, 9598}, item.itemid) then - return false - end - - if target.uid == 3071 then - -- In service of yalahar quest - if player:getStorageValue(Storage.InServiceofYalahar.SewerPipe01) < 1 then - doSetMonsterOutfit(player, "skeleton", 3 * 1000) - fromPosition:sendMagicEffect(CONST_ME_ENERGYHIT) - player:setStorageValue(Storage.InServiceofYalahar.SewerPipe01, 1) - -- StorageValue for Questlog "Mission 01: Something Rotten" - player:setStorageValue(Storage.InServiceofYalahar.Mission01, - player:getStorageValue(Storage.InServiceofYalahar.Mission01) + 1) - local position = player:getPosition() - for x = -1, 1 do - for y = -1, 1 do - position = position + Position(x, y, 0) - position:sendMagicEffect(CONST_ME_YELLOWENERGY) - end - end - end - elseif target.uid == 3072 then - if player:getStorageValue(Storage.InServiceofYalahar.SewerPipe02) < 1 then - player:setStorageValue(Storage.InServiceofYalahar.SewerPipe02, 1) - -- StorageValue for Questlog "Mission 01: Something Rotten" - player:setStorageValue(Storage.InServiceofYalahar.Mission01, - player:getStorageValue(Storage.InServiceofYalahar.Mission01) + 1) - local position = player:getPosition() - for x = -1, 1 do - for y = -1, 1 do - if math.random(2) == 2 then - position = position + Position(x, y, 0) - Game.createMonster("rat", position) - position:sendMagicEffect(CONST_ME_TELEPORT) - end - end - end - end - elseif target.uid == 3073 then - if player:getStorageValue(Storage.InServiceofYalahar.SewerPipe03) < 1 then - player:say("You have used the crowbar on a grate.", TALKTYPE_MONSTER_SAY) - player:setStorageValue(Storage.InServiceofYalahar.SewerPipe03, 1) - -- StorageValue for Questlog "Mission 01: Something Rotten" - player:setStorageValue(Storage.InServiceofYalahar.Mission01, - player:getStorageValue(Storage.InServiceofYalahar.Mission01) + 1) - end - elseif target.uid == 3074 then - if player:getStorageValue(Storage.InServiceofYalahar.SewerPipe04) < 1 then - doSetMonsterOutfit(player, "bog raider", 5 * 1000) - player:say("You have used the crowbar on a knot.", TALKTYPE_MONSTER_SAY) - player:setStorageValue(Storage.InServiceofYalahar.SewerPipe04, 1) - -- StorageValue for Questlog "Mission 01: Something Rotten" - player:setStorageValue(Storage.InServiceofYalahar.Mission01, - player:getStorageValue(Storage.InServiceofYalahar.Mission01) + 1) - end - elseif target.actionid == 100 then - if target.itemid == 3501 then - -- Postman quest - if player:getStorageValue(Storage.Postman.Mission02) == 1 then - player:setStorageValue(Storage.Postman.Mission02, 2) - toPosition:sendMagicEffect(CONST_ME_MAGIC_BLUE) - end - elseif target.itemid == 4848 then - -- The ape city - mission 7 - local apeCityStorage = player:getStorageValue(Storage.TheApeCity.Casks) - if apeCityStorage < 3 then - player:setStorageValue(Storage.TheApeCity.Casks, math.max(0, apeCityStorage) + 1) - target:transform(3134) - toPosition:sendMagicEffect(CONST_ME_EXPLOSIONAREA) - addEvent(revertCask, 3 * 60 * 1000, toPosition) - end - end - elseif target.actionid == 12566 and player:getStorageValue(Storage.SecretService.TBIMission06) == 1 then - -- Secret service quest - local yellPosition = Position(32204, 31157, 8) - -- Amazon lookType - if player:getOutfit().lookType == 137 then - player:setStorageValue(Storage.SecretService.TBIMission06, 2) - Game.createMonster("barbarian skullhunter", yellPosition) - player:say("Nooooo! What have you done??", TALKTYPE_MONSTER_SAY, false, 0, yellPosition) - yellPosition.y = yellPosition.y - 1 - Game.createMonster("barbarian skullhunter", yellPosition) - end - else - return false - end - return true end function onUseSpoon(player, item, fromPosition, target, toPosition, isHotkey) - if target.itemid == 390 then - --The ice islands quest - if player:getStorageValue(Storage.TheIceIslands.Questline) >= 21 then - if player:getStorageValue(Storage.TheIceIslands.SulphurLava) < 1 then - -- Fine sulphur - player:addItem(7247, 1) - player:setStorageValue(Storage.TheIceIslands.SulphurLava, 1) - toPosition:sendMagicEffect(CONST_ME_YELLOW_RINGS) - player:say("You retrive a fine sulphur from a lava hole.", TALKTYPE_MONSTER_SAY) - end - end - elseif target.itemid == 3920 then - --The ice islands quest - if player:getStorageValue(Storage.TheIceIslands.Questline) >= 21 then - if player:getStorageValue(Storage.TheIceIslands.SporesMushroom) < 1 then - player:addItem(7251, 1) - player:setStorageValue(Storage.TheIceIslands.SporesMushroom, 1) - toPosition:sendMagicEffect(CONST_ME_MAGIC_GREEN) - player:say("You retrive spores from a mushroom.", TALKTYPE_MONSTER_SAY) - end - end - elseif target.itemid == 7743 or target.itemid == 390 then - -- What a foolish quest - mission 8 (sulphur) - if player:getStorageValue(Storage.WhatAFoolishQuest.Questline) ~= 21 - or player:getStorageValue(Storage.WhatAFoolishQuest.InflammableSulphur) == 1 then - return false - end - - player:setStorageValue(Storage.WhatAFoolishQuest.InflammableSulphur, 1) - -- Easily inflammable sulphur - player:addItem(124, 1) - toPosition:sendMagicEffect(CONST_ME_YELLOW_RINGS) - else - return false - end - return true end function onUseScythe(player, item, fromPosition, target, toPosition, isHotkey) @@ -956,9 +350,6 @@ function onUseScythe(player, item, fromPosition, target, toPosition, isHotkey) target:transform(3651) target:decay() Game.createItem(3605, 1, toPosition) - -- The secret library - elseif toPosition == Position(32177, 31925, 7) then - player:teleportTo({x = 32515, y = 32535, z = 12}) else return false end @@ -966,82 +357,6 @@ function onUseScythe(player, item, fromPosition, target, toPosition, isHotkey) end function onUseKitchenKnife(player, item, fromPosition, target, toPosition, isHotkey) - if not table.contains({3469, 9594, 9598}, item.itemid) then - return false - end - - -- The ice islands quest - if target.itemid == 7261 then - if player:getStorageValue(Storage.TheIceIslands.Questline) >= 21 then - if player:getStorageValue(Storage.TheIceIslands.FrostbiteHerb) < 1 then - player:addItem(7248, 1) - player:setStorageValue(Storage.TheIceIslands.FrostbiteHerb, 1) - toPosition:sendMagicEffect(CONST_ME_HITBYPOISON) - player:say("You cut a leaf from a frostbite herb.", TALKTYPE_MONSTER_SAY) - end - end - elseif target.itemid == 3647 then - if player:getStorageValue(Storage.TheIceIslands.Questline) >= 21 then - if player:getStorageValue(Storage.TheIceIslands.FlowerCactus) < 1 then - player:addItem(7245, 1) - player:setStorageValue(Storage.TheIceIslands.FlowerCactus, 1) - target:transform(3637) - addEvent(revertItem, 60 * 1000, toPosition, 3637, 3647) - toPosition:sendMagicEffect(CONST_ME_MAGIC_GREEN) - player:say("You cut a flower from a cactus.", TALKTYPE_MONSTER_SAY) - end - end - elseif target.itemid == 3753 then - if player:getStorageValue(Storage.TheIceIslands.Questline) >= 21 then - if player:getStorageValue(Storage.TheIceIslands.FlowerBush) < 1 then - player:addItem(7249, 1) - player:setStorageValue(Storage.TheIceIslands.FlowerBush, 1) - target:transform(3750) - addEvent(revertItem, 60 * 1000, toPosition, 3750, 3753) - toPosition:sendMagicEffect(CONST_ME_MAGIC_GREEN) - player:say("You cut a flower from a bush.", TALKTYPE_MONSTER_SAY) - end - end - -- What a foolish Quest (Mission 1) - elseif target.actionid == 4200 then - if toPosition.x == 32349 and toPosition.y == 32361 and toPosition.z == 7 then - player:addItem(102, 1) - player:say( - "The stubborn flower has ruined your knife but at least you got it.", - TALKTYPE_MONSTER_SAY, false, player, toPosition) - item:remove(1) - else - player:say("This flower is too pathetic.", TALKTYPE_MONSTER_SAY, false, player, toPosition) - end - -- What a foolish quest (mission 5) - elseif target.itemid == 114 then - if player:getStorageValue(Storage.WhatAFoolishQuest.EmperorBeardShave) == 1 then - player:say("God shave the emperor. Some fool already did it.", TALKTYPE_MONSTER_SAY) - return true - end - - player:setStorageValue(Storage.WhatAFoolishQuest.EmperorBeardShave, 1) - player:say("This is probably the most foolish thing you've ever done!", TALKTYPE_MONSTER_SAY) - player:addItem(113, 1) - Game.createMonster("dwarf guard", Position(32656, 31853, 13)) - -- What a foolish quest (mission 8) - elseif target.itemid == 3744 then - if player:getStorageValue(Storage.WhatAFoolishQuest.Questline) ~= 22 or - player:getStorageValue(Storage.WhatAFoolishQuest.SpecialLeaves) == 1 then - return false - end - - player:setStorageValue(Storage.WhatAFoolishQuest.SpecialLeaves, 1) - player:addItem(3129, 1) - toPosition:sendMagicEffect(CONST_ME_BLOCKHIT) - elseif table.contains(fruits, target.itemid) and player:removeItem(6277, 1) then - target:remove(1) - player:addItem(6278, 1) - player:getPosition():sendMagicEffect(CONST_ME_MAGIC_GREEN) - else - return false - end - return true end function onGrindItem(player, item, fromPosition, target, toPosition)