From edb23d3285bc9c9dbf215d4edbba5c6f41746a46 Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Fri, 8 Sep 2017 17:33:31 +0000 Subject: [PATCH] Several braces code format. --- .../scripts/ai/areas/BeastFarm/BeastFarm.java | 8 + .../LargeCocoon/LargeCocoon.java | 60 ++++++ .../areas/ForgeOfTheGods/ForgeOfTheGods.java | 4 + .../ai/areas/ForgeOfTheGods/Rooney.java | 10 + .../ai/areas/GuillotineFortress/Spirit.java | 6 + .../KetraOrcSupport/KetraOrcSupport.java | 30 +++ .../PlainsOfLizardman/PlainsOfLizardman.java | 10 + .../ai/areas/Rune/RuneCastle/Venom/Venom.java | 17 +- .../ai/areas/SeedOfAnnihilation/Maguen.java | 24 +++ .../ai/areas/SilentValley/SilentValley.java | 10 + .../ai/areas/StakatoNest/StakatoNest.java | 14 ++ .../ai/areas/TalkingIsland/Toyron/Toyron.java | 4 + .../areas/TalkingIsland/Trandon/Trandon.java | 2 + .../VarkaSilenosSupport.java | 30 +++ .../ai/bosses/Istina/IstinaCavern.java | 16 ++ .../ai/bosses/QueenShyeed/QueenShyeed.java | 4 + .../ai/bosses/Teredor/TeredorWarzone.java | 8 + .../data/scripts/ai/bosses/Tiat/Stage1.java | 14 ++ .../CastleChamberlain/CastleChamberlain.java | 64 +++++++ .../CastleTeleporter/CastleTeleporter.java | 19 +- .../CastleWarehouse/CastleWarehouse.java | 10 + .../ClanHallManager/ClanHallManager.java | 4 + .../data/scripts/ai/others/EnergySeeds.java | 20 ++ .../ai/others/ManorManager/ManorManager.java | 16 ++ .../data/scripts/ai/others/StarStones.java | 8 + .../admincommandhandlers/AdminClanHall.java | 6 + .../admincommandhandlers/AdminLogin.java | 14 ++ .../admincommandhandlers/AdminPForge.java | 50 +++++ .../admincommandhandlers/AdminSpawn.java | 6 + .../admincommandhandlers/AdminTeleport.java | 12 ++ .../handlers/bypasshandlers/Augment.java | 4 + .../handlers/effecthandlers/KarmaCount.java | 4 + .../handlers/itemhandlers/EventItem.java | 6 + .../handlers/playeractions/SocialAction.java | 6 + .../telnethandlers/player/Enchant.java | 32 ++++ .../usercommandhandlers/PartyInfo.java | 10 + .../voicedcommandhandlers/CastleVCmd.java | 6 + .../ChambersOfDelusion/ChamberOfDelusion.java | 4 + .../DarkCloudMansion/DarkCloudMansion.java | 4 + .../FaeronTrainingGrounds1.java | 4 + .../FortressDungeon/FortressDungeon.java | 6 + .../HarnakUndergroundRuins.java | 74 +++++++ .../KaraphonHabitat/KaraphonHabitat.java | 4 + .../KartiasLabyrinth/KartiasLabyrinth.java | 10 + .../LabyrinthOfBelis/LabyrinthOfBelis.java | 22 +++ .../scripts/instances/Nursery/Nursery.java | 12 ++ .../SSQDisciplesNecropolisPast.java | 10 + .../Q00013_ParcelDelivery.java | 14 ++ .../Q00015_SweetWhispers.java | 22 +++ .../Q00040_ASpecialOrder.java | 6 + .../Q00042_HelpTheUncle.java | 10 + .../Q00043_HelpTheSister.java | 10 + .../Q00044_HelpTheSon/Q00044_HelpTheSon.java | 10 + .../Q00114_ResurrectionOfAnOldManager.java | 6 + .../Q00122_OminousNews.java | 6 + .../Q00125_TheNameOfEvil1.java | 116 +++++++++++ .../Q00126_TheNameOfEvil2.java | 180 ++++++++++++++++++ .../Q00141_ShadowFoxPart3.java | 28 +++ .../Q00237_WindsOfChange.java | 62 ++++++ .../Q00238_SuccessFailureOfBusiness.java | 20 ++ .../Q00254_LegendaryTales.java | 26 +++ .../Q00381_LetsBecomeARoyalMember.java | 4 + .../Q00421_LittleWingsBigAdventure.java | 12 ++ .../Q00450_GraveRobberRescue.java | 14 ++ .../Q00452_FindingtheLostSoldiers.java | 6 + .../Q00456_DontKnowDontCare.java | 12 ++ .../Q00463_IMustBeaGenius.java | 17 +- .../Q00474_WaitingForTheSummer.java | 18 ++ .../Q00481_ShadowHelper.java | 6 + .../Q00511_AwlUnderFoot.java | 8 + .../Q00627_HeartInSearchOfPower.java | 12 ++ .../Q00652_AnAgedExAdventurer.java | 4 + .../Q10275_ContainingTheAttributePower.java | 58 ++++++ .../Q10283_RequestOfIceMerchant.java | 12 ++ .../Q10289_FadeToBlack.java | 52 +++++ .../Q10302_UnsettlingShadowAndRumors.java | 8 + .../Q10331_StartOfFate.java | 44 ++++- .../Q10339_FightingTheForgotten.java | 4 + .../Q10359_TracesOfEvil.java | 108 +++++++++++ .../Q10360_CertificationOfFate.java | 12 ++ .../Q10369_NoblesseSoulTesting.java | 38 ++++ .../Q10385_RedThreadOfFate.java | 16 ++ .../Q10386_MysteriousJourney.java | 4 + .../Q10387_SoullessOne.java | 6 + .../Q10390_KekropusLetter.java | 12 ++ .../Q10417_DaimonTheWhiteEyed.java | 6 + .../Q10472_WindsOfFateEncroachingShadows.java | 52 +++++ .../quests/Q10734_DoOrDie/Q10734_DoOrDie.java | 2 + .../Q10740_NeverForget.java | 2 + .../Q10751_WindsOfFateEncounters.java | 2 + .../Q10755_LettersFromTheQueenWindyHill.java | 4 + .../Q10756_AnInterdimensionalDraft.java | 10 + .../Q10757_QuietingTheStorm.java | 10 + .../Q10758_TheOathOfTheWind.java | 10 + ...Q10760_LettersFromTheQueenOrcBarracks.java | 4 + .../Q10761_AnOrcInLove.java | 10 + .../Q10762_MarionetteSpirit.java | 10 + .../Q10763_TerrifyingChertuba.java | 10 + .../Q10764_FreeSpirit/Q10764_FreeSpirit.java | 10 + ...69_LettersFromTheQueenCrumaTowerPart1.java | 4 + .../Q10770_InSearchOfTheGrail.java | 8 + .../Q10772_ReportsFromCrumaTowerPart1.java | 10 + ...74_LettersFromTheQueenCrumaTowerPart2.java | 4 + .../Q10775_InSearchOfAnAncientGiant.java | 10 + .../Q10776_TheWrathOfTheGiants.java | 18 ++ .../Q10777_ReportsFromCrumaTowerPart2.java | 10 + ...Q10779_LettersFromTheQueenSeaOfSpores.java | 4 + .../Q10780_AWeakenedBarrier.java | 10 + .../Q10781_IngredientsToEnforcements.java | 10 + ...782_LettersFromTheQueenForsakenPlains.java | 4 + .../Q10783_TracesOfAnAmbush.java | 10 + .../Q10784_TheBrokenDevice.java | 12 ++ ...5_LettersFromTheQueenFieldsOfMassacre.java | 4 + .../Q10786_ResidentProblemSolver.java | 12 ++ .../Q10787_ASpyMission.java | 12 ++ ...789_LettersFromTheQueenSwampOfScreams.java | 4 + ...92_LettersFromTheQueenForestOfTheDead.java | 4 + .../Q10793_SaveTheSouls.java | 12 ++ .../AirShipGludioGracia.java | 16 ++ .../data/scripts/vehicles/BoatGludinRune.java | 40 ++++ .../scripts/vehicles/BoatInnadrilTour.java | 20 ++ .../scripts/vehicles/BoatRunePrimeval.java | 10 + .../java/com/l2jmobius/commons/util/Rnd.java | 11 +- .../com/l2jmobius/gameserver/FortUpdater.java | 4 + .../gameserver/LoginServerThread.java | 28 +++ .../gameserver/ai/DoppelgangerAI.java | 8 + .../gameserver/ai/L2AttackableAI.java | 6 + .../gameserver/data/xml/impl/NpcData.java | 16 ++ .../data/xml/impl/SkillTreesData.java | 24 +++ .../datatables/AugmentationData.java | 10 + .../instancemanager/CastleManorManager.java | 6 + .../instancemanager/GraciaSeedsManager.java | 24 +++ .../instancemanager/TownManager.java | 20 ++ .../l2jmobius/gameserver/model/L2Clan.java | 57 +++++- .../gameserver/model/L2ClanMember.java | 98 ++++++++++ .../gameserver/model/L2PetLevelData.java | 12 ++ .../l2jmobius/gameserver/model/MobGroup.java | 12 ++ .../gameserver/model/actor/L2Attackable.java | 16 ++ .../gameserver/model/actor/L2Character.java | 4 + .../gameserver/model/actor/L2Npc.java | 10 + .../instance/L2FortCommanderInstance.java | 6 + .../actor/instance/L2FortManagerInstance.java | 50 +++++ .../model/actor/instance/L2PcInstance.java | 26 +++ .../actor/instance/L2PetManagerInstance.java | 26 +++ .../actor/instance/L2RaceManagerInstance.java | 10 + .../actor/instance/L2TeleporterInstance.java | 2 + .../gameserver/model/actor/stat/CharStat.java | 28 +++ .../model/conditions/ConditionGameTime.java | 2 + .../conditions/ConditionPlayerBaseStats.java | 12 ++ .../conditions/ConditionPlayerState.java | 18 ++ .../model/entity/BlockCheckerEngine.java | 6 + .../gameserver/model/entity/Duel.java | 8 + .../gameserver/model/entity/FortSiege.java | 14 ++ .../gameserver/model/entity/L2Event.java | 25 ++- .../model/events/AbstractScript.java | 10 + .../model/instancezone/InstanceTemplate.java | 8 + .../conditions/ConditionHasResidence.java | 6 + .../model/itemauction/ItemAuction.java | 7 +- .../itemauction/ItemAuctionInstance.java | 17 +- .../model/itemcontainer/Inventory.java | 180 +++++++++++++++++- .../gameserver/model/items/L2Item.java | 12 ++ .../model/items/instance/L2ItemInstance.java | 6 + .../gameserver/model/olympiad/Olympiad.java | 16 ++ .../model/olympiad/OlympiadAnnouncer.java | 6 + .../model/skills/SkillOperateType.java | 16 ++ .../gameserver/model/stats/Formulas.java | 24 ++- .../gameserver/model/zone/L2ZoneRespawn.java | 8 + .../model/zone/type/L2EffectZone.java | 14 ++ .../gameserver/network/L2GameClient.java | 8 + .../clientpackets/CharacterDelete.java | 4 + .../clientpackets/MoveToLocationAirShip.java | 10 + .../clientpackets/RequestActionUse.java | 4 + .../network/clientpackets/RequestBlock.java | 10 + .../RequestExCubeGameChangeTeam.java | 6 + .../RequestExCubeGameReadyAnswer.java | 6 + .../RequestExEnchantItemAttribute.java | 8 + .../commission/RequestCommissionList.java | 28 +++ .../ExShowFortressSiegeInfo.java | 24 ++- .../scripting/java/JavaExecutionContext.java | 6 + .../gameserver/util/FloodProtectorAction.java | 8 + .../network/L2JGameServerPacketHandler.java | 36 ++++ .../network/L2LoginPacketHandler.java | 8 + .../clientpackets/RequestAuthLogin.java | 11 +- .../scripts/ai/areas/BeastFarm/BeastFarm.java | 8 + .../LargeCocoon/LargeCocoon.java | 60 ++++++ .../areas/ForgeOfTheGods/ForgeOfTheGods.java | 4 + .../ai/areas/ForgeOfTheGods/Rooney.java | 10 + .../ai/areas/GuillotineFortress/Spirit.java | 6 + .../KetraOrcSupport/KetraOrcSupport.java | 30 +++ .../PlainsOfLizardman/PlainsOfLizardman.java | 10 + .../ai/areas/Rune/RuneCastle/Venom/Venom.java | 17 +- .../ai/areas/SeedOfAnnihilation/Maguen.java | 24 +++ .../ai/areas/SilentValley/SilentValley.java | 10 + .../ai/areas/StakatoNest/StakatoNest.java | 14 ++ .../ai/areas/TalkingIsland/Toyron/Toyron.java | 4 + .../areas/TalkingIsland/Trandon/Trandon.java | 2 + .../VarkaSilenosSupport.java | 30 +++ .../ai/bosses/Istina/IstinaCavern.java | 16 ++ .../ai/bosses/QueenShyeed/QueenShyeed.java | 4 + .../ai/bosses/Teredor/TeredorWarzone.java | 8 + .../data/scripts/ai/bosses/Tiat/Stage1.java | 14 ++ .../CastleChamberlain/CastleChamberlain.java | 64 +++++++ .../CastleTeleporter/CastleTeleporter.java | 19 +- .../CastleWarehouse/CastleWarehouse.java | 10 + .../ClanHallManager/ClanHallManager.java | 4 + .../data/scripts/ai/others/EnergySeeds.java | 20 ++ .../ai/others/ManorManager/ManorManager.java | 16 ++ .../data/scripts/ai/others/StarStones.java | 8 + .../admincommandhandlers/AdminClanHall.java | 6 + .../admincommandhandlers/AdminLogin.java | 14 ++ .../admincommandhandlers/AdminPForge.java | 50 +++++ .../admincommandhandlers/AdminSpawn.java | 6 + .../admincommandhandlers/AdminTeleport.java | 12 ++ .../handlers/bypasshandlers/Augment.java | 4 + .../handlers/effecthandlers/KarmaCount.java | 4 + .../handlers/itemhandlers/EventItem.java | 6 + .../handlers/playeractions/SocialAction.java | 6 + .../telnethandlers/player/Enchant.java | 32 ++++ .../usercommandhandlers/PartyInfo.java | 10 + .../voicedcommandhandlers/CastleVCmd.java | 6 + .../ChambersOfDelusion/ChamberOfDelusion.java | 4 + .../DarkCloudMansion/DarkCloudMansion.java | 4 + .../FaeronTrainingGrounds1.java | 4 + .../FortressDungeon/FortressDungeon.java | 6 + .../HarnakUndergroundRuins.java | 74 +++++++ .../KaraphonHabitat/KaraphonHabitat.java | 4 + .../KartiasLabyrinth/KartiasLabyrinth.java | 10 + .../LabyrinthOfBelis/LabyrinthOfBelis.java | 22 +++ .../scripts/instances/Nursery/Nursery.java | 12 ++ .../SSQDisciplesNecropolisPast.java | 10 + .../Q00013_ParcelDelivery.java | 14 ++ .../Q00015_SweetWhispers.java | 22 +++ .../Q00040_ASpecialOrder.java | 6 + .../Q00042_HelpTheUncle.java | 10 + .../Q00043_HelpTheSister.java | 10 + .../Q00044_HelpTheSon/Q00044_HelpTheSon.java | 10 + .../Q00114_ResurrectionOfAnOldManager.java | 6 + .../Q00122_OminousNews.java | 6 + .../Q00125_TheNameOfEvil1.java | 116 +++++++++++ .../Q00126_TheNameOfEvil2.java | 180 ++++++++++++++++++ .../Q00141_ShadowFoxPart3.java | 28 +++ .../Q00237_WindsOfChange.java | 62 ++++++ .../Q00238_SuccessFailureOfBusiness.java | 20 ++ .../Q00254_LegendaryTales.java | 26 +++ .../Q00381_LetsBecomeARoyalMember.java | 4 + .../Q00421_LittleWingsBigAdventure.java | 12 ++ .../Q00450_GraveRobberRescue.java | 14 ++ .../Q00452_FindingtheLostSoldiers.java | 6 + .../Q00456_DontKnowDontCare.java | 12 ++ .../Q00463_IMustBeaGenius.java | 17 +- .../Q00474_WaitingForTheSummer.java | 18 ++ .../Q00481_ShadowHelper.java | 6 + .../Q00511_AwlUnderFoot.java | 8 + .../Q00627_HeartInSearchOfPower.java | 12 ++ .../Q00652_AnAgedExAdventurer.java | 4 + .../Q10275_ContainingTheAttributePower.java | 58 ++++++ .../Q10283_RequestOfIceMerchant.java | 12 ++ .../Q10289_FadeToBlack.java | 52 +++++ .../Q10302_UnsettlingShadowAndRumors.java | 8 + .../Q10331_StartOfFate.java | 44 ++++- .../Q10339_FightingTheForgotten.java | 4 + .../Q10359_TracesOfEvil.java | 108 +++++++++++ .../Q10360_CertificationOfFate.java | 12 ++ .../Q10369_NoblesseSoulTesting.java | 38 ++++ .../Q10385_RedThreadOfFate.java | 16 ++ .../Q10386_MysteriousJourney.java | 4 + .../Q10387_SoullessOne.java | 6 + .../Q10390_KekropusLetter.java | 12 ++ .../Q10417_DaimonTheWhiteEyed.java | 6 + .../Q10472_WindsOfFateEncroachingShadows.java | 52 +++++ .../quests/Q10734_DoOrDie/Q10734_DoOrDie.java | 2 + .../Q10740_NeverForget.java | 2 + .../Q10751_WindsOfFateEncounters.java | 2 + .../Q10755_LettersFromTheQueenWindyHill.java | 4 + .../Q10756_AnInterdimensionalDraft.java | 10 + .../Q10757_QuietingTheStorm.java | 10 + .../Q10758_TheOathOfTheWind.java | 10 + ...Q10760_LettersFromTheQueenOrcBarracks.java | 4 + .../Q10761_AnOrcInLove.java | 10 + .../Q10762_MarionetteSpirit.java | 10 + .../Q10763_TerrifyingChertuba.java | 10 + .../Q10764_FreeSpirit/Q10764_FreeSpirit.java | 10 + ...69_LettersFromTheQueenCrumaTowerPart1.java | 4 + .../Q10770_InSearchOfTheGrail.java | 8 + .../Q10772_ReportsFromCrumaTowerPart1.java | 10 + ...74_LettersFromTheQueenCrumaTowerPart2.java | 4 + .../Q10775_InSearchOfAnAncientGiant.java | 10 + .../Q10776_TheWrathOfTheGiants.java | 18 ++ .../Q10777_ReportsFromCrumaTowerPart2.java | 10 + ...Q10779_LettersFromTheQueenSeaOfSpores.java | 4 + .../Q10780_AWeakenedBarrier.java | 10 + .../Q10781_IngredientsToEnforcements.java | 10 + ...782_LettersFromTheQueenForsakenPlains.java | 4 + .../Q10783_TracesOfAnAmbush.java | 10 + .../Q10784_TheBrokenDevice.java | 12 ++ ...5_LettersFromTheQueenFieldsOfMassacre.java | 4 + .../Q10786_ResidentProblemSolver.java | 12 ++ .../Q10787_ASpyMission.java | 12 ++ ...789_LettersFromTheQueenSwampOfScreams.java | 4 + ...92_LettersFromTheQueenForestOfTheDead.java | 4 + .../Q10793_SaveTheSouls.java | 12 ++ .../Q10814_BefittingOfTheStatus.java | 22 +++ .../AirShipGludioGracia.java | 16 ++ .../data/scripts/vehicles/BoatGludinRune.java | 40 ++++ .../scripts/vehicles/BoatInnadrilTour.java | 20 ++ .../scripts/vehicles/BoatRunePrimeval.java | 10 + .../java/com/l2jmobius/commons/util/Rnd.java | 11 +- .../com/l2jmobius/gameserver/FortUpdater.java | 4 + .../gameserver/LoginServerThread.java | 28 +++ .../gameserver/ai/DoppelgangerAI.java | 8 + .../gameserver/ai/L2AttackableAI.java | 6 + .../gameserver/data/xml/impl/NpcData.java | 16 ++ .../data/xml/impl/SkillTreesData.java | 24 +++ .../datatables/AugmentationData.java | 10 + .../instancemanager/CastleManorManager.java | 6 + .../instancemanager/GraciaSeedsManager.java | 24 +++ .../instancemanager/TownManager.java | 20 ++ .../l2jmobius/gameserver/model/L2Clan.java | 57 +++++- .../gameserver/model/L2ClanMember.java | 98 ++++++++++ .../gameserver/model/L2PetLevelData.java | 12 ++ .../l2jmobius/gameserver/model/MobGroup.java | 12 ++ .../gameserver/model/actor/L2Attackable.java | 16 ++ .../gameserver/model/actor/L2Character.java | 4 + .../gameserver/model/actor/L2Npc.java | 10 + .../instance/L2FortCommanderInstance.java | 6 + .../actor/instance/L2FortManagerInstance.java | 50 +++++ .../model/actor/instance/L2PcInstance.java | 26 +++ .../actor/instance/L2PetManagerInstance.java | 26 +++ .../actor/instance/L2RaceManagerInstance.java | 10 + .../actor/instance/L2TeleporterInstance.java | 2 + .../gameserver/model/actor/stat/CharStat.java | 28 +++ .../model/conditions/ConditionGameTime.java | 2 + .../conditions/ConditionPlayerBaseStats.java | 12 ++ .../conditions/ConditionPlayerState.java | 18 ++ .../model/entity/BlockCheckerEngine.java | 6 + .../gameserver/model/entity/Duel.java | 8 + .../gameserver/model/entity/FortSiege.java | 14 ++ .../gameserver/model/entity/L2Event.java | 25 ++- .../model/events/AbstractScript.java | 10 + .../model/instancezone/InstanceTemplate.java | 8 + .../conditions/ConditionHasResidence.java | 6 + .../model/itemauction/ItemAuction.java | 7 +- .../itemauction/ItemAuctionInstance.java | 17 +- .../model/itemcontainer/Inventory.java | 180 +++++++++++++++++- .../gameserver/model/items/L2Item.java | 12 ++ .../model/items/instance/L2ItemInstance.java | 6 + .../gameserver/model/olympiad/Olympiad.java | 16 ++ .../model/olympiad/OlympiadAnnouncer.java | 6 + .../model/skills/SkillOperateType.java | 16 ++ .../gameserver/model/stats/Formulas.java | 24 ++- .../gameserver/model/zone/L2ZoneRespawn.java | 8 + .../model/zone/type/L2EffectZone.java | 14 ++ .../gameserver/network/L2GameClient.java | 8 + .../clientpackets/CharacterDelete.java | 4 + .../clientpackets/MoveToLocationAirShip.java | 10 + .../clientpackets/RequestActionUse.java | 4 + .../network/clientpackets/RequestBlock.java | 10 + .../RequestExCubeGameChangeTeam.java | 6 + .../RequestExCubeGameReadyAnswer.java | 6 + .../RequestExEnchantItemAttribute.java | 8 + .../commission/RequestCommissionList.java | 28 +++ .../ExShowFortressSiegeInfo.java | 24 ++- .../scripting/java/JavaExecutionContext.java | 6 + .../gameserver/util/FloodProtectorAction.java | 8 + .../network/L2JGameServerPacketHandler.java | 36 ++++ .../network/L2LoginPacketHandler.java | 8 + .../clientpackets/RequestAuthLogin.java | 11 +- .../scripts/ai/areas/BeastFarm/BeastFarm.java | 8 + .../LargeCocoon/LargeCocoon.java | 60 ++++++ .../areas/ForgeOfTheGods/ForgeOfTheGods.java | 4 + .../ai/areas/ForgeOfTheGods/Rooney.java | 10 + .../ai/areas/GuillotineFortress/Spirit.java | 6 + .../KetraOrcSupport/KetraOrcSupport.java | 30 +++ .../PlainsOfLizardman/PlainsOfLizardman.java | 10 + .../ai/areas/Rune/RuneCastle/Venom/Venom.java | 17 +- .../ai/areas/SeedOfAnnihilation/Maguen.java | 24 +++ .../ai/areas/SilentValley/SilentValley.java | 10 + .../ai/areas/StakatoNest/StakatoNest.java | 14 ++ .../areas/TalkingIsland/Trandon/Trandon.java | 2 + .../VarkaSilenosSupport.java | 30 +++ .../ai/bosses/Istina/IstinaCavern.java | 16 ++ .../ai/bosses/Teredor/TeredorWarzone.java | 8 + .../data/scripts/ai/bosses/Tiat/Stage1.java | 14 ++ .../CastleChamberlain/CastleChamberlain.java | 64 +++++++ .../CastleTeleporter/CastleTeleporter.java | 19 +- .../CastleWarehouse/CastleWarehouse.java | 10 + .../ClanHallManager/ClanHallManager.java | 4 + .../data/scripts/ai/others/EnergySeeds.java | 20 ++ .../ai/others/ManorManager/ManorManager.java | 16 ++ .../data/scripts/ai/others/StarStones.java | 8 + .../admincommandhandlers/AdminClanHall.java | 6 + .../admincommandhandlers/AdminLogin.java | 14 ++ .../admincommandhandlers/AdminPForge.java | 50 +++++ .../admincommandhandlers/AdminSpawn.java | 6 + .../admincommandhandlers/AdminTeleport.java | 12 ++ .../handlers/bypasshandlers/Augment.java | 4 + .../handlers/effecthandlers/KarmaCount.java | 4 + .../handlers/itemhandlers/EventItem.java | 6 + .../handlers/playeractions/SocialAction.java | 6 + .../telnethandlers/player/Enchant.java | 32 ++++ .../usercommandhandlers/PartyInfo.java | 10 + .../voicedcommandhandlers/CastleVCmd.java | 6 + .../ChambersOfDelusion/ChamberOfDelusion.java | 4 + .../DarkCloudMansion/DarkCloudMansion.java | 4 + .../FaeronTrainingGrounds1.java | 4 + .../FortressDungeon/FortressDungeon.java | 6 + .../HarnakUndergroundRuins.java | 74 +++++++ .../KaraphonHabitat/KaraphonHabitat.java | 4 + .../KartiasLabyrinth/KartiasLabyrinth.java | 10 + .../LabyrinthOfBelis/LabyrinthOfBelis.java | 22 +++ .../scripts/instances/Nursery/Nursery.java | 12 ++ .../SSQDisciplesNecropolisPast.java | 10 + .../Q00013_ParcelDelivery.java | 14 ++ .../Q00015_SweetWhispers.java | 22 +++ .../Q00040_ASpecialOrder.java | 6 + .../Q00042_HelpTheUncle.java | 10 + .../Q00043_HelpTheSister.java | 10 + .../Q00044_HelpTheSon/Q00044_HelpTheSon.java | 10 + .../Q00125_TheNameOfEvil1.java | 116 +++++++++++ .../Q00126_TheNameOfEvil2.java | 180 ++++++++++++++++++ .../Q00141_ShadowFoxPart3.java | 28 +++ .../Q00237_WindsOfChange.java | 62 ++++++ .../Q00238_SuccessFailureOfBusiness.java | 20 ++ .../Q00254_LegendaryTales.java | 26 +++ .../Q00421_LittleWingsBigAdventure.java | 12 ++ .../Q00450_GraveRobberRescue.java | 14 ++ .../Q00452_FindingtheLostSoldiers.java | 6 + .../Q00456_DontKnowDontCare.java | 12 ++ .../Q00474_WaitingForTheSummer.java | 18 ++ .../Q00511_AwlUnderFoot.java | 8 + .../Q00627_HeartInSearchOfPower.java | 12 ++ .../Q10275_ContainingTheAttributePower.java | 58 ++++++ .../Q10283_RequestOfIceMerchant.java | 12 ++ .../Q10289_FadeToBlack.java | 52 +++++ .../Q10302_UnsettlingShadowAndRumors.java | 8 + .../Q10339_FightingTheForgotten.java | 4 + .../Q10359_TracesOfEvil.java | 108 +++++++++++ .../Q10360_CertificationOfFate.java | 12 ++ .../Q10369_NoblesseSoulTesting.java | 38 ++++ .../Q10385_RedThreadOfFate.java | 16 ++ .../Q10386_MysteriousJourney.java | 4 + .../Q10387_SoullessOne.java | 6 + .../Q10390_KekropusLetter.java | 12 ++ .../Q10417_DaimonTheWhiteEyed.java | 6 + .../Q10472_WindsOfFateEncroachingShadows.java | 52 +++++ .../quests/Q10734_DoOrDie/Q10734_DoOrDie.java | 2 + .../Q10740_NeverForget.java | 2 + .../Q10751_WindsOfFateEncounters.java | 2 + .../Q10755_LettersFromTheQueenWindyHill.java | 4 + .../Q10756_AnInterdimensionalDraft.java | 10 + .../Q10757_QuietingTheStorm.java | 10 + .../Q10758_TheOathOfTheWind.java | 10 + ...Q10760_LettersFromTheQueenOrcBarracks.java | 4 + .../Q10761_AnOrcInLove.java | 10 + .../Q10762_MarionetteSpirit.java | 10 + .../Q10763_TerrifyingChertuba.java | 10 + .../Q10764_FreeSpirit/Q10764_FreeSpirit.java | 10 + ...69_LettersFromTheQueenCrumaTowerPart1.java | 4 + .../Q10770_InSearchOfTheGrail.java | 8 + .../Q10772_ReportsFromCrumaTowerPart1.java | 10 + ...74_LettersFromTheQueenCrumaTowerPart2.java | 4 + .../Q10775_InSearchOfAnAncientGiant.java | 10 + .../Q10776_TheWrathOfTheGiants.java | 18 ++ .../Q10777_ReportsFromCrumaTowerPart2.java | 10 + ...Q10779_LettersFromTheQueenSeaOfSpores.java | 4 + .../Q10780_AWeakenedBarrier.java | 10 + .../Q10781_IngredientsToEnforcements.java | 10 + ...782_LettersFromTheQueenForsakenPlains.java | 4 + .../Q10783_TracesOfAnAmbush.java | 10 + .../Q10784_TheBrokenDevice.java | 12 ++ ...5_LettersFromTheQueenFieldsOfMassacre.java | 4 + .../Q10786_ResidentProblemSolver.java | 12 ++ .../Q10787_ASpyMission.java | 12 ++ ...789_LettersFromTheQueenSwampOfScreams.java | 4 + ...92_LettersFromTheQueenForestOfTheDead.java | 4 + .../Q10793_SaveTheSouls.java | 12 ++ .../Q10814_BefittingOfTheStatus.java | 22 +++ .../AirShipGludioGracia.java | 16 ++ .../data/scripts/vehicles/BoatGludinRune.java | 40 ++++ .../scripts/vehicles/BoatInnadrilTour.java | 20 ++ .../scripts/vehicles/BoatRunePrimeval.java | 10 + .../java/com/l2jmobius/commons/util/Rnd.java | 11 +- .../com/l2jmobius/gameserver/FortUpdater.java | 4 + .../gameserver/LoginServerThread.java | 28 +++ .../gameserver/ai/DoppelgangerAI.java | 8 + .../gameserver/ai/L2AttackableAI.java | 6 + .../gameserver/data/xml/impl/NpcData.java | 16 ++ .../data/xml/impl/SkillTreesData.java | 24 +++ .../datatables/AugmentationData.java | 10 + .../instancemanager/CastleManorManager.java | 6 + .../instancemanager/GraciaSeedsManager.java | 24 +++ .../instancemanager/TownManager.java | 20 ++ .../l2jmobius/gameserver/model/L2Clan.java | 57 +++++- .../gameserver/model/L2ClanMember.java | 98 ++++++++++ .../gameserver/model/L2PetLevelData.java | 12 ++ .../l2jmobius/gameserver/model/MobGroup.java | 12 ++ .../gameserver/model/actor/L2Attackable.java | 16 ++ .../gameserver/model/actor/L2Character.java | 4 + .../gameserver/model/actor/L2Npc.java | 10 + .../instance/L2FortCommanderInstance.java | 6 + .../actor/instance/L2FortManagerInstance.java | 50 +++++ .../model/actor/instance/L2PcInstance.java | 26 +++ .../actor/instance/L2PetManagerInstance.java | 26 +++ .../actor/instance/L2RaceManagerInstance.java | 10 + .../actor/instance/L2TeleporterInstance.java | 2 + .../gameserver/model/actor/stat/CharStat.java | 28 +++ .../model/conditions/ConditionGameTime.java | 2 + .../conditions/ConditionPlayerBaseStats.java | 12 ++ .../conditions/ConditionPlayerState.java | 18 ++ .../model/entity/BlockCheckerEngine.java | 6 + .../gameserver/model/entity/Duel.java | 8 + .../gameserver/model/entity/FortSiege.java | 14 ++ .../gameserver/model/entity/L2Event.java | 25 ++- .../model/events/AbstractScript.java | 10 + .../model/instancezone/InstanceTemplate.java | 8 + .../conditions/ConditionHasResidence.java | 6 + .../model/itemauction/ItemAuction.java | 7 +- .../itemauction/ItemAuctionInstance.java | 17 +- .../model/itemcontainer/Inventory.java | 180 +++++++++++++++++- .../gameserver/model/items/L2Item.java | 12 ++ .../model/items/instance/L2ItemInstance.java | 6 + .../gameserver/model/olympiad/Olympiad.java | 16 ++ .../model/olympiad/OlympiadAnnouncer.java | 6 + .../model/skills/SkillOperateType.java | 16 ++ .../gameserver/model/stats/Formulas.java | 24 ++- .../gameserver/model/zone/L2ZoneRespawn.java | 8 + .../model/zone/type/L2EffectZone.java | 14 ++ .../gameserver/network/L2GameClient.java | 8 + .../clientpackets/CharacterDelete.java | 4 + .../clientpackets/MoveToLocationAirShip.java | 10 + .../clientpackets/RequestActionUse.java | 4 + .../network/clientpackets/RequestBlock.java | 10 + .../RequestExCubeGameChangeTeam.java | 6 + .../RequestExCubeGameReadyAnswer.java | 6 + .../RequestExEnchantItemAttribute.java | 8 + .../commission/RequestCommissionList.java | 28 +++ .../ExShowFortressSiegeInfo.java | 24 ++- .../scripting/java/JavaExecutionContext.java | 6 + .../gameserver/util/FloodProtectorAction.java | 8 + .../network/L2JGameServerPacketHandler.java | 36 ++++ .../network/L2LoginPacketHandler.java | 8 + .../clientpackets/RequestAuthLogin.java | 11 +- .../CastleChamberlain/CastleChamberlain.java | 64 +++++++ .../CastleTeleporter/CastleTeleporter.java | 19 +- .../CastleWarehouse/CastleWarehouse.java | 10 + .../ClanHallManager/ClanHallManager.java | 4 + .../admincommandhandlers/AdminClanHall.java | 6 + .../admincommandhandlers/AdminLogin.java | 14 ++ .../admincommandhandlers/AdminPForge.java | 50 +++++ .../admincommandhandlers/AdminSpawn.java | 6 + .../admincommandhandlers/AdminTeleport.java | 12 ++ .../handlers/bypasshandlers/Augment.java | 4 + .../handlers/effecthandlers/KarmaCount.java | 4 + .../handlers/itemhandlers/EventItem.java | 6 + .../handlers/playeractions/SocialAction.java | 6 + .../telnethandlers/player/Enchant.java | 32 ++++ .../usercommandhandlers/PartyInfo.java | 10 + .../voicedcommandhandlers/CastleVCmd.java | 6 + .../java/com/l2jmobius/commons/util/Rnd.java | 11 +- .../com/l2jmobius/gameserver/FortUpdater.java | 4 + .../gameserver/LoginServerThread.java | 28 +++ .../gameserver/ai/DoppelgangerAI.java | 8 + .../gameserver/ai/L2AttackableAI.java | 6 + .../gameserver/data/xml/impl/NpcData.java | 16 ++ .../data/xml/impl/SkillTreesData.java | 24 +++ .../datatables/AugmentationData.java | 10 + .../instancemanager/CastleManorManager.java | 6 + .../instancemanager/GraciaSeedsManager.java | 24 +++ .../instancemanager/TownManager.java | 20 ++ .../l2jmobius/gameserver/model/L2Clan.java | 57 +++++- .../gameserver/model/L2ClanMember.java | 98 ++++++++++ .../gameserver/model/L2PetLevelData.java | 12 ++ .../l2jmobius/gameserver/model/MobGroup.java | 12 ++ .../gameserver/model/actor/L2Attackable.java | 16 ++ .../gameserver/model/actor/L2Character.java | 4 + .../gameserver/model/actor/L2Npc.java | 10 + .../instance/L2FortCommanderInstance.java | 6 + .../actor/instance/L2FortManagerInstance.java | 50 +++++ .../model/actor/instance/L2PcInstance.java | 26 +++ .../actor/instance/L2PetManagerInstance.java | 26 +++ .../actor/instance/L2TeleporterInstance.java | 2 + .../gameserver/model/actor/stat/CharStat.java | 28 +++ .../model/conditions/ConditionGameTime.java | 2 + .../conditions/ConditionPlayerBaseStats.java | 12 ++ .../conditions/ConditionPlayerState.java | 18 ++ .../model/entity/BlockCheckerEngine.java | 6 + .../gameserver/model/entity/Duel.java | 8 + .../gameserver/model/entity/FortSiege.java | 14 ++ .../gameserver/model/entity/L2Event.java | 25 ++- .../model/events/AbstractScript.java | 10 + .../model/instancezone/InstanceTemplate.java | 8 + .../conditions/ConditionHasResidence.java | 6 + .../model/itemauction/ItemAuction.java | 7 +- .../itemauction/ItemAuctionInstance.java | 17 +- .../model/itemcontainer/Inventory.java | 180 +++++++++++++++++- .../gameserver/model/items/L2Item.java | 12 ++ .../model/items/instance/L2ItemInstance.java | 6 + .../gameserver/model/olympiad/Olympiad.java | 16 ++ .../model/olympiad/OlympiadAnnouncer.java | 6 + .../model/skills/SkillOperateType.java | 16 ++ .../gameserver/model/stats/Formulas.java | 24 ++- .../gameserver/model/zone/L2ZoneRespawn.java | 8 + .../model/zone/type/L2EffectZone.java | 14 ++ .../gameserver/network/L2GameClient.java | 8 + .../clientpackets/CharacterDelete.java | 4 + .../clientpackets/MoveToLocationAirShip.java | 10 + .../clientpackets/RequestActionUse.java | 4 + .../network/clientpackets/RequestBlock.java | 10 + .../RequestExCubeGameChangeTeam.java | 6 + .../RequestExCubeGameReadyAnswer.java | 6 + .../RequestExEnchantItemAttribute.java | 8 + .../commission/RequestCommissionList.java | 28 +++ .../ExShowFortressSiegeInfo.java | 24 ++- .../scripting/java/JavaExecutionContext.java | 6 + .../gameserver/util/FloodProtectorAction.java | 8 + .../network/L2JGameServerPacketHandler.java | 36 ++++ .../network/L2LoginPacketHandler.java | 8 + .../clientpackets/RequestAuthLogin.java | 11 +- 618 files changed, 10828 insertions(+), 121 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java index 15b939e951..b132aaf9c5 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java @@ -256,17 +256,25 @@ public final class BeastFarm extends AbstractNpcAI switch (nextNpcId) { case 18869: + { name = name.replace("%name%", "Alpine Kookaburra"); break; + } case 18870: + { name = name.replace("%name%", "Alpine Cougar"); break; + } case 18871: + { name = name.replace("%name%", "Alpine Buffalo"); break; + } case 18872: + { name = name.replace("%name%", "Alpine Grendel"); break; + } } nextNpc.setName(name); nextNpc.broadcastPacket(new NpcInfo(nextNpc)); diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java index 2e319b311b..58056e87de 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java @@ -87,35 +87,47 @@ public final class LargeCocoon extends AbstractNpcAI switch (getRandom(6)) { case 0: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD_HARD, npc, false, 90000), player); break; + } case 1: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER_HARD, npc, false, 90000), player); break; + } case 2: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); break; + } case 3: + { addAttackPlayerDesire(addSpawn(FAIRY_ROGUE_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE_HARD, npc, false, 90000), player); break; + } case 4: + { addAttackPlayerDesire(addSpawn(FAIRY_WIZARD_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); break; + } case 5: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); break; + } } } npc.deleteMe(); @@ -136,85 +148,121 @@ public final class LargeCocoon extends AbstractNpcAI switch (getRandom(6)) { case 0: + { addSpawn(FAIRY_WARRIOR, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 1: + { addSpawn(FAIRY_KNIGHT, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 2: + { addSpawn(FAIRY_WARRIOR, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_KNIGHT, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 3: + { addSpawn(FAIRY_SUMMONER, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WARRIOR, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 4: + { addSpawn(FAIRY_WITCH, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_SUMMONER, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 5: + { addSpawn(FAIRY_SUMMONER, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WITCH, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } } switch (getRandom(6)) { case 0: + { addSpawn(FAIRY_ROGUE, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WARRIOR, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 1: + { addSpawn(FAIRY_KNIGHT, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 2: + { addSpawn(FAIRY_WARRIOR, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_KNIGHT, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 3: + { addSpawn(FAIRY_SUMMONER, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WIZARD, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 4: + { addSpawn(FAIRY_WITCH, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_SUMMONER, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 5: + { addSpawn(FAIRY_WIZARD, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WITCH, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } } switch (getRandom(6)) { case 0: + { addSpawn(FAIRY_ROGUE, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WARRIOR, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 1: + { addSpawn(FAIRY_KNIGHT, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 2: + { addSpawn(FAIRY_WARRIOR, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_KNIGHT, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 3: + { addSpawn(FAIRY_SUMMONER, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WIZARD, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 4: + { addSpawn(FAIRY_WITCH, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_SUMMONER, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 5: + { addSpawn(FAIRY_WIZARD, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WITCH, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } } return super.onSpawn(npc); @@ -241,35 +289,47 @@ public final class LargeCocoon extends AbstractNpcAI switch (getRandom(6)) { case 0: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD, npc, false, 90000), playable); break; + } case 1: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER, npc, false, 90000), playable); break; + } case 2: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); break; + } case 3: + { addAttackPlayerDesire(addSpawn(FAIRY_ROGUE, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE, npc, false, 90000), playable); break; + } case 4: + { addAttackPlayerDesire(addSpawn(FAIRY_WIZARD, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); break; + } case 5: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); break; + } } } npc.deleteMe(); diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java index 43d41070e0..d74aba60ff 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java @@ -93,14 +93,18 @@ public final class ForgeOfTheGods extends AbstractNpcAI switch (event) { case "suicide": + { if (npc != null) { npc.doDie(null); } break; + } case "refresh": + { _npcCount = 0; break; + } } return null; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java index a9db204c6e..ec4633eef8 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java @@ -92,21 +92,31 @@ public final class Rooney extends AbstractNpcAI switch (aiVal) { case 1: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.HURRY_HURRY); break; + } case 2: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.I_AM_NOT_THAT_TYPE_OF_PERSON_WHO_STAYS_IN_ONE_PLACE_FOR_A_LONG_TIME); break; + } case 3: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.IT_S_HARD_FOR_ME_TO_KEEP_STANDING_LIKE_THIS); break; + } case 4: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WHY_DON_T_I_GO_THAT_WAY_THIS_TIME); break; + } default: + { npc.teleToLocation(LOCATIONS[getRandom(LOCATIONS.length)], false); npc.setScriptValue(0); return null; + } } npc.setScriptValue(aiVal + 1); startQuestTimer("teleport", 60000, npc, null); diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java index 30017c2f61..1d848d5c66 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java @@ -111,14 +111,20 @@ public final class Spirit extends AbstractNpcAI switch (npc.getId()) { case EXECUTED_MAIDEN_VENGEFUL_SPIRIT: + { startQuestTimer("SPAM_TEXT1", 50000, npc, null, true); break; + } case SPIRIT_OF_THE_TORTURED_DWARF: + { startQuestTimer("SPAM_TEXT2", 50000, npc, null, true); break; + } case SPIRIT_OF_ONE_BURNED_ALIVE: + { startQuestTimer("SPAM_TEXT3", 50000, npc, null, true); break; + } } return super.onSpawn(npc); } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java index 48607ee635..2bd3509ce1 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java @@ -149,58 +149,88 @@ public final class KetraOrcSupport extends AbstractNpcAI switch (npc.getId()) { case KADUN: + { htmltext = (AllianceLevel > 0) ? "31370-friend.html" : "31370-no.html"; break; + } case WAHKAN: + { htmltext = (AllianceLevel > 0) ? "31371-friend.html" : "31371-no.html"; break; + } case ASEFA: + { htmltext = (AllianceLevel > 0) ? (AllianceLevel < 3) ? "31372-01.html" : "31372-04.html" : "31372-03.html"; break; + } case ATAN: + { htmltext = (AllianceLevel > 0) ? "31373-friend.html" : "31373-no.html"; break; + } case JAFF: + { htmltext = (AllianceLevel > 0) ? (AllianceLevel == 1) ? "31374-01.html" : "31374-02.html" : "31374-no.html"; break; + } case JUMARA: + { switch (AllianceLevel) { case 1: case 2: + { htmltext = "31375-01.html"; break; + } case 3: case 4: + { htmltext = "31375-02.html"; break; + } case 5: + { htmltext = "31375-03.html"; break; + } default: + { htmltext = "31375-no.html"; break; + } } break; + } case KURFA: + { switch (AllianceLevel) { case 1: case 2: case 3: + { htmltext = "31376-01.html"; break; + } case 4: + { htmltext = "31376-02.html"; break; + } case 5: + { htmltext = "31376-03.html"; break; + } default: + { htmltext = "31376-no.html"; break; + } } break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java index 81e236bf0c..97a51dab77 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java @@ -115,21 +115,30 @@ public final class PlainsOfLizardman extends AbstractNpcAI switch (npc.getId()) { case TANTA_SUMMONER: + { if (!npc.isAffectedBySkill(DEMOTIVATION_HEX.getSkillId())) { npc.doCast(DEMOTIVATION_HEX.getSkill()); } break; + } case RAINBOW_FROG: + { castSkill(npc, attacker, RAINBOW_FROG_SKILL); break; + } case ENERGY_PLANT: + { castSkill(npc, attacker, ENERGY_PLANT_SKILL); break; + } case STICKY_MUSHROOM: + { castSkill(npc, attacker, STICKY_MUSHROOM_SKILL); break; + } case FANTASY_MUSHROOM: + { if (npc.isScriptValue(0)) { npc.setScriptValue(1); @@ -145,6 +154,7 @@ public final class PlainsOfLizardman extends AbstractNpcAI startQuestTimer("fantasy_mushroom", 4000, npc, attacker); } break; + } } return super.onAttack(npc, attacker, damage, isSummon); } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java index f37f63de65..b7a13e7f89 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java @@ -152,6 +152,7 @@ public final class Venom extends AbstractNpcAI switch (event) { case "tower_check": + { if (CastleManager.getInstance().getCastleById(CASTLE).getSiege().getControlTowerCount() <= 1) { changeLocation(MoveTo.THRONE); @@ -160,18 +161,23 @@ public final class Venom extends AbstractNpcAI startQuestTimer("raid_check", 10000, npc, null, true); } break; + } case "raid_check": + { if (!npc.isInsideZone(ZoneId.SIEGE) && !npc.isTeleporting()) { npc.teleToLocation(_loc); } break; + } case "cube_despawn": + { if (npc != null) { npc.deleteMe(); } break; + } } return event; } @@ -225,13 +231,18 @@ public final class Venom extends AbstractNpcAI switch (skill.getId()) { case 4222: + { npc.teleToLocation(_loc); break; + } case 4995: + { teleportTarget(player); ((L2Attackable) npc).stopHating(player); break; + } case 4996: + { teleportTarget(player); ((L2Attackable) npc).stopHating(player); if ((_targets != null) && (_targets.size() > 0)) @@ -251,6 +262,7 @@ public final class Venom extends AbstractNpcAI _targets.clear(); } break; + } } return super.onSpellFinished(npc, player, skill); } @@ -268,7 +280,6 @@ public final class Venom extends AbstractNpcAI case VENOM: { _venom = npc; - _loc = _venom.getLocation(); _venom.disableSkill(VENOM_TELEPORT.getSkill(), -1); _venom.disableSkill(RANGE_TELEPORT.getSkill(), -1); @@ -344,9 +355,12 @@ public final class Venom extends AbstractNpcAI switch (loc) { case THRONE: + { _venom.teleToLocation(TRHONE, false); break; + } case PRISON: + { if ((_venom == null) || _venom.isDead() || _venom.isDecayed()) { _venom = addSpawn(VENOM, DUNGEON, false, 0); @@ -358,6 +372,7 @@ public final class Venom extends AbstractNpcAI cancelQuestTimer("raid_check", _venom, null); cancelQuestTimer("tower_check", _venom, null); break; + } } _loc.setLocation(_venom.getLocation()); } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java index 42bc6bd38e..736c8ef674 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java @@ -216,14 +216,20 @@ public final class Maguen extends AbstractNpcAI switch (getRandom(3)) { case 0: + { skillToCast = (getRandom(100) < 70) ? B_BUFF_1 : B_BUFF_2; break; + } case 1: + { skillToCast = (getRandom(100) < 70) ? C_BUFF_1 : C_BUFF_2; break; + } case 2: + { skillToCast = (getRandom(100) < 70) ? R_BUFF_1 : R_BUFF_2; break; + } } if (skillToCast != null) @@ -282,14 +288,20 @@ public final class Maguen extends AbstractNpcAI switch (i1) { case 0: + { skillToCast = B_PLASMA1; break; + } case 1: + { skillToCast = B_PLASMA2; break; + } case 2: + { skillToCast = B_PLASMA3; break; + } } break; } @@ -298,14 +310,20 @@ public final class Maguen extends AbstractNpcAI switch (i2) { case 0: + { skillToCast = C_PLASMA1; break; + } case 1: + { skillToCast = C_PLASMA2; break; + } case 2: + { skillToCast = C_PLASMA3; break; + } } break; } @@ -314,14 +332,20 @@ public final class Maguen extends AbstractNpcAI switch (i3) { case 0: + { skillToCast = R_PLASMA1; break; + } case 1: + { skillToCast = R_PLASMA2; break; + } case 2: + { skillToCast = R_PLASMA3; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java index 6af37c7710..e78a139c5c 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java @@ -77,15 +77,21 @@ public final class SilentValley extends AbstractNpcAI switch (event) { case "CLEAR": + { npc.doDie(null); break; + } case "CLEAR_EVENT": + { npc.broadcastEvent("CLEAR_ALL_INSTANT", 2000, null); npc.doDie(null); break; + } case "SPAWN_CHEST": + { addSpawn(CHEST, npc.getX() - 100, npc.getY(), npc.getZ() - 100, 0, false, 0); break; + } } } return null; @@ -190,11 +196,15 @@ public final class SilentValley extends AbstractNpcAI switch (eventName) { case "CLEAR_ALL": + { startQuestTimer("CLEAR", 60000, receiver, null); break; + } case "CLEAR_ALL_INSTANT": + { receiver.doDie(null); break; + } } } return super.onEventReceived(eventName, sender, receiver, reference); diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java index 44fb7de7cd..d6a2600e29 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java @@ -123,6 +123,7 @@ public final class StakatoNest extends AbstractNpcAI switch (npc.getId()) { case STAKATO_NURSE: + { monster = checkMinion(npc); if (monster != null) { @@ -134,14 +135,18 @@ public final class StakatoNest extends AbstractNpcAI } } break; + } case STAKATO_BABY: + { monster = ((L2MonsterInstance) npc).getLeader(); if ((monster != null) && !monster.isDead()) { startQuestTimer("nurse_change", 5000, monster, killer); } break; + } case STAKATO_MALE: + { monster = checkMinion(npc); if (monster != null) { @@ -153,14 +158,18 @@ public final class StakatoNest extends AbstractNpcAI } } break; + } case STAKATO_FEMALE: + { monster = ((L2MonsterInstance) npc).getLeader(); if ((monster != null) && !monster.isDead()) { startQuestTimer("male_change", 5000, monster, killer); } break; + } case STAKATO_CHIEF: + { if (killer.isInParty()) { final List party = killer.getParty().getMembers(); @@ -174,6 +183,7 @@ public final class StakatoNest extends AbstractNpcAI giveCocoon(killer, npc); } break; + } } return super.onKill(npc, killer, isSummon); } @@ -202,11 +212,15 @@ public final class StakatoNest extends AbstractNpcAI switch (event) { case "nurse_change": + { npcId = STAKATO_NURSE_2; break; + } case "male_change": + { npcId = STAKATO_MALE_2; break; + } } if (npcId > 0) { diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Toyron/Toyron.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Toyron/Toyron.java index d18cf794b4..6916829091 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Toyron/Toyron.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Toyron/Toyron.java @@ -82,11 +82,15 @@ public final class Toyron extends AbstractNpcAI switch (qs.getCond()) { case 1: + { htmltext = "33004-01.html"; break; + } case 2: + { htmltext = "33004-02.html"; break; + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java index 288f0c6493..f67597d78f 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java @@ -83,7 +83,9 @@ public final class Trandon extends AbstractNpcAI case "33490-10.html": case "33490-11.html": case "33490-19.html": + { break; + } case "33490-12.html": { if (player.getRace().equals(Race.ERTHEIA) || hasAllSubCertifications(player)) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java index 11f9a9435e..2e5ec3ca1d 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java @@ -149,58 +149,88 @@ public final class VarkaSilenosSupport extends AbstractNpcAI switch (npc.getId()) { case ASHAS: + { htmltext = (AllianceLevel < 0) ? "31377-friend.html" : "31377-no.html"; break; + } case NARAN: + { htmltext = (AllianceLevel < 0) ? "31378-friend.html" : "31378-no.html"; break; + } case UDAN: + { htmltext = (AllianceLevel < 0) ? (AllianceLevel > -3) ? "31379-01.html" : "31379-04.html" : "31379-03.html"; break; + } case DIYABU: + { htmltext = (AllianceLevel < 0) ? "31380-friend.html" : "31380-no.html"; break; + } case HAGOS: + { htmltext = (AllianceLevel < 0) ? (AllianceLevel == -1) ? "31381-01.html" : "31381-02.html" : "31381-no.html"; break; + } case SHIKON: + { switch (AllianceLevel) { case -1: case -2: + { htmltext = "31382-01.html"; break; + } case -3: case -4: + { htmltext = "31382-02.html"; break; + } case -5: + { htmltext = "31382-03.html"; break; + } default: + { htmltext = "31382-no.html"; break; + } } break; + } case TERANU: + { switch (AllianceLevel) { case -1: case -2: case -3: + { htmltext = "31383-01.html"; break; + } case -4: + { htmltext = "31383-02.html"; break; + } case -5: + { htmltext = "31383-03.html"; break; + } default: + { htmltext = "31383-no.html"; break; + } } break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java index f2ce03efdf..318f800701 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java @@ -333,14 +333,20 @@ public final class IstinaCavern extends AbstractInstance switch (random) { case 1: + { showOnScreenMsg(instance, NpcStringId.ISTINA_S_SOUL_STONE_STARTS_POWERFULLY_ILLUMINATING_IN_RED, ExShowScreenMessage.TOP_CENTER, 6000); break; + } case 2: + { showOnScreenMsg(instance, NpcStringId.ISTINA_S_SOUL_STONE_STARTS_POWERFULLY_ILLUMINATING_IN_BLUE, ExShowScreenMessage.TOP_CENTER, 6000); break; + } case 3: + { showOnScreenMsg(instance, NpcStringId.ISTINA_S_SOUL_STONE_STARTS_POWERFULLY_ILLUMINATING_IN_GREEN, ExShowScreenMessage.TOP_CENTER, 6000); break; + } } } getTimers().addTimer("AUTHORITY_TIMER", 70000 + getRandom(25000), npc, null); @@ -598,20 +604,30 @@ public final class IstinaCavern extends AbstractInstance switch (instance.getStatus()) { case 0: + { htmltext = "33293-01.html"; break; + } case 1: + { htmltext = "33293-02.html"; break; + } case 2: + { htmltext = "33293-03.html"; break; + } case 3: + { htmltext = "33293-04.html"; break; + } case 4: + { htmltext = "33293-05.html"; break; + } } } return htmltext; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/QueenShyeed/QueenShyeed.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/QueenShyeed/QueenShyeed.java index b805b6bbc6..69581a097c 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/QueenShyeed/QueenShyeed.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/QueenShyeed/QueenShyeed.java @@ -52,15 +52,19 @@ public final class QueenShyeed extends AbstractNpcAI switch (event) { case "respawn": + { spawnShyeed(); break; + } case "despawn": + { if (!npc.isDead()) { npc.deleteMe(); startRespawn(); } break; + } } return null; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java index fe5488c8aa..79fcf3948d 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java @@ -364,20 +364,28 @@ public final class TeredorWarzone extends AbstractInstance switch (npc.getParameters().getInt("Spot", 0)) { case 1: + { npcId = getRandomBoolean() ? TEREDOR_LARVA : MUTANTED_MILLIPADE; break; + } case 2: case 3: + { npcId = getRandomBoolean() ? MUTANTED_MILLIPADE : HATCHET_UNDERBUG; break; + } case 4: case 5: case 6: + { npcId = getRandomBoolean() ? MUTANTED_MILLIPADE : HATCHET_UNDERBUG; break; + } case 7: + { npcId = getRandomEntry(MUTANTED_MILLIPADE, HATCHET_UNDERBUG, HATCHET_MILLIPADE); break; + } } if (npcId > 0) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java index a852734cb4..41c7968623 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java @@ -364,9 +364,12 @@ public final class Stage1 extends AbstractInstance implements IGameXmlReader switch (world.getStatus() - 1) { case 0: + { spawnFlaggedNPCs(world, 0); break; + } case 1: + { world.broadcastPacket(new ExShowScreenMessage(NpcStringId.THE_ENEMIES_HAVE_ATTACKED_EVERYONE_COME_OUT_AND_FIGHT_URGH, 5, 1000)); for (int i : ENTRANCE_ROOM_DOORS) { @@ -374,7 +377,9 @@ public final class Stage1 extends AbstractInstance implements IGameXmlReader } spawnFlaggedNPCs(world, 1); break; + } case 4: + { world.broadcastPacket(new ExShowScreenMessage(NpcStringId.OBELISK_HAS_COLLAPSED_DON_T_LET_THE_ENEMIES_JUMP_AROUND_WILDLY_ANYMORE, 5, 1000)); for (int i : SQUARE_DOORS) { @@ -382,22 +387,31 @@ public final class Stage1 extends AbstractInstance implements IGameXmlReader } spawnFlaggedNPCs(world, 4); break; + } case 5: + { world.openCloseDoor(SCOUTPASS_DOOR, true); spawnFlaggedNPCs(world, 3); spawnFlaggedNPCs(world, 5); break; + } case 6: + { world.openCloseDoor(THRONE_DOOR, true); break; + } case 7: + { spawnFlaggedNPCs(world, 7); break; + } case 8: + { world.broadcastPacket(new ExShowScreenMessage(NpcStringId.COME_OUT_WARRIORS_PROTECT_SEED_OF_DESTRUCTION, 5, 1000)); world.setParameter("deviceCount", 0); spawnFlaggedNPCs(world, 8); break; + } } } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java index da6402acdf..6f5f88e5a8 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java @@ -205,20 +205,30 @@ public final class CastleChamberlain extends AbstractNpcAI switch (func) { case Castle.FUNC_RESTORE_EXP: + { fee = (level == 45) ? Config.CS_EXPREG1_FEE : Config.CS_EXPREG2_FEE; break; + } case Castle.FUNC_RESTORE_HP: + { fee = (level == 300) ? Config.CS_HPREG1_FEE : Config.CS_HPREG2_FEE; break; + } case Castle.FUNC_RESTORE_MP: + { fee = (level == 40) ? Config.CS_MPREG1_FEE : Config.CS_MPREG2_FEE; break; + } case Castle.FUNC_SUPPORT: + { fee = (level == 5) ? Config.CS_SUPPORT1_FEE : Config.CS_SUPPORT2_FEE; break; + } case Castle.FUNC_TELEPORT: + { fee = (level == 1) ? Config.CS_TELE1_FEE : Config.CS_TELE2_FEE; break; + } } return fee; } @@ -229,20 +239,30 @@ public final class CastleChamberlain extends AbstractNpcAI switch (func) { case Castle.FUNC_RESTORE_EXP: + { ratio = Config.CS_EXPREG_FEE_RATIO; break; + } case Castle.FUNC_RESTORE_HP: + { ratio = Config.CS_HPREG_FEE_RATIO; break; + } case Castle.FUNC_RESTORE_MP: + { ratio = Config.CS_MPREG_FEE_RATIO; break; + } case Castle.FUNC_SUPPORT: + { ratio = Config.CS_SUPPORT_FEE_RATIO; break; + } case Castle.FUNC_TELEPORT: + { ratio = Config.CS_TELE_FEE_RATIO; break; + } } return ratio; } @@ -257,14 +277,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.OUTER_DOOR_UPGRADE_PRICE2; break; + } case 3: + { price = Config.OUTER_DOOR_UPGRADE_PRICE3; break; + } case 5: + { price = Config.OUTER_DOOR_UPGRADE_PRICE5; break; + } } break; } @@ -273,14 +299,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.INNER_DOOR_UPGRADE_PRICE2; break; + } case 3: + { price = Config.INNER_DOOR_UPGRADE_PRICE3; break; + } case 5: + { price = Config.INNER_DOOR_UPGRADE_PRICE5; break; + } } break; } @@ -289,14 +321,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.WALL_UPGRADE_PRICE2; break; + } case 3: + { price = Config.WALL_UPGRADE_PRICE3; break; + } case 5: + { price = Config.WALL_UPGRADE_PRICE5; break; + } } break; } @@ -310,17 +348,25 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 1: + { price = Config.TRAP_UPGRADE_PRICE1; break; + } case 2: + { price = Config.TRAP_UPGRADE_PRICE2; break; + } case 3: + { price = Config.TRAP_UPGRADE_PRICE3; break; + } case 4: + { price = Config.TRAP_UPGRADE_PRICE4; break; + } } return price; } @@ -379,14 +425,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (fortress.getFortState()) { case 1: + { fortStatus = "1300122"; break; + } case 2: + { fortStatus = "1300124"; break; + } default: + { fortStatus = "1300123"; break; + } } sb.append("1300" + fortId + ""); sb.append(" (" + fortType + ")"); @@ -1144,15 +1196,22 @@ public final class CastleChamberlain extends AbstractNpcAI switch (evt.getRequest()) { case 3: // Seed info + { player.sendPacket(new ExShowSeedInfo(castleId, evt.isNextPeriod(), true)); break; + } case 4: // Crop info + { player.sendPacket(new ExShowCropInfo(castleId, evt.isNextPeriod(), true)); break; + } case 5: // Basic info + { player.sendPacket(new ExShowManorDefaultInfo(true)); break; + } case 7: // Seed settings + { if (manor.isManorApproved()) { player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM); @@ -1160,7 +1219,9 @@ public final class CastleChamberlain extends AbstractNpcAI } player.sendPacket(new ExShowSeedSetting(castleId)); break; + } case 8: // Crop settings + { if (manor.isManorApproved()) { player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM); @@ -1168,8 +1229,11 @@ public final class CastleChamberlain extends AbstractNpcAI } player.sendPacket(new ExShowCropSetting(castleId)); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Player " + player.getName() + " (" + player.getObjectId() + ") send unknown request id " + evt.getRequest() + "!"); + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java index c7cd273165..00f6f17b30 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java @@ -103,25 +103,35 @@ public final class CastleTeleporter extends AbstractNpcAI final int unknowInt = Integer.parseInt(st.nextToken()); final StatsSet npcParams = npc.getParameters(); Location teleLoc = null; - switch (unknowInt) { case 0: + { teleLoc = getTeleportLocation(npcParams, "01", "02", "03"); break; + } case 1: + { teleLoc = getTeleportLocation(npcParams, "11", "12", "13"); break; + } case 2: + { teleLoc = getTeleportLocation(npcParams, "21", "22", "23"); break; + } case 3: + { teleLoc = getTeleportLocation(npcParams, "31", "32", "33"); break; + } case 4: + { teleLoc = getTeleportLocation(npcParams, "41", "42", "43"); break; + } case 5: + { if (isOwner(player, npc)) { teleLoc = new Location(npcParams.getInt("pos_x51"), npcParams.getInt("pos_y51"), npcParams.getInt("pos_z51")); @@ -131,6 +141,7 @@ public final class CastleTeleporter extends AbstractNpcAI return "CastleTeleporter-noAuthority.html"; } break; + } } if (teleLoc != null) @@ -209,7 +220,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35308: case 35352: case 35544: + { return "CastleTeleporter-01"; + } case 35093: case 35135: case 35177: @@ -217,7 +230,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35309: case 35353: case 35545: + { return "CastleTeleporter-02"; + } case 35094: case 35136: case 35178: @@ -225,7 +240,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35310: case 35354: case 35546: + { return "CastleTeleporter-03"; + } } return String.valueOf(npc.getId()); } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java index 2e04e99770..e4af53361b 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java @@ -61,11 +61,16 @@ public final class CastleWarehouse extends AbstractNpcAI case "warehouse-01.html": case "warehouse-02.html": case "warehouse-03.html": + { break; + } case "warehouse-04.html": + { htmltext = (!isMyLord) ? "warehouse-no.html" : getHtm(player.getHtmlPrefix(), "warehouse-04.html").replace("%blood%", Integer.toString(player.getClan().getBloodAllianceCount())); break; + } case "Receive": + { if (!isMyLord) { htmltext = "warehouse-no.html"; @@ -81,7 +86,9 @@ public final class CastleWarehouse extends AbstractNpcAI htmltext = "warehouse-06.html"; } break; + } case "Exchange": + { if (!isMyLord) { htmltext = "warehouse-no.html"; @@ -97,9 +104,12 @@ public final class CastleWarehouse extends AbstractNpcAI htmltext = "warehouse-07.html"; } break; + } default: + { htmltext = null; break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java index 5c069122e1..679944e552 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java @@ -272,10 +272,14 @@ public final class ClanHallManager extends AbstractNpcAI case 1: case 2: case 3: + { ((L2MerchantInstance) npc).showBuyWindow(player, Integer.parseInt(npc.getId() + "0" + (itemLevel - 1))); break; + } default: + { htmltext = "ClanHallManager-noFunction.html"; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/EnergySeeds.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/EnergySeeds.java index 55a016c369..546f3b3cc0 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/EnergySeeds.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/EnergySeeds.java @@ -103,13 +103,19 @@ public final class EnergySeeds extends AbstractNpcAI switch (seed) { case INFINITY: + { return false; + } case DESTRUCTION: + { return GraciaSeedsManager.getInstance().getSoDState() == 2; + } case ANNIHILATION_BISTAKON: case ANNIHILATION_REPTILIKON: case ANNIHILATION_COKRAKON: + { return true; + } } return true; } @@ -136,25 +142,39 @@ public final class EnergySeeds extends AbstractNpcAI switch (npc.getId()) { case 18678: // Water + { itemId = 14016; break; + } case 18679: // Fire + { itemId = 14015; break; + } case 18680: // Wind + { itemId = 14017; break; + } case 18681: // Earth + { itemId = 14018; break; + } case 18682: // Divinity + { itemId = 14020; break; + } case 18683: // Darkness + { itemId = 14019; break; + } default: + { return super.onSkillSee(npc, caster, skill, targets, isSummon); + } } if (getRandom(100) < 33) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java index a93847a05c..749f577141 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java @@ -79,8 +79,10 @@ public final class ManorManager extends AbstractNpcAI case "manager-help-01.htm": case "manager-help-02.htm": case "manager-help-03.htm": + { htmltext = event; break; + } } return htmltext; } @@ -130,25 +132,39 @@ public final class ManorManager extends AbstractNpcAI break; } case 2: // Crop sales + { player.sendPacket(new ExShowSellCropList(player.getInventory(), castleId)); break; + } case 3: // Seed info + { player.sendPacket(new ExShowSeedInfo(castleId, evt.isNextPeriod(), false)); break; + } case 4: // Crop info + { player.sendPacket(new ExShowCropInfo(castleId, evt.isNextPeriod(), false)); break; + } case 5: // Basic info + { player.sendPacket(new ExShowManorDefaultInfo(false)); break; + } case 6: // Buy harvester + { ((L2MerchantInstance) npc).showBuyWindow(player, 300000 + npc.getId()); break; + } case 9: // Edit sales (Crop sales) + { player.sendPacket(new ExShowProcureCropDetail(evt.getManorId())); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Player " + player.getName() + " (" + player.getObjectId() + ") send unknown request id " + evt.getRequest() + "!"); + } } } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/StarStones.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/StarStones.java index f0216337b8..d3764275ea 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/StarStones.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/ai/others/StarStones.java @@ -57,24 +57,32 @@ public final class StarStones extends AbstractNpcAI case 18684: case 18685: case 18686: + { // give Red item itemId = 14009; break; + } case 18687: case 18688: case 18689: + { // give Blue item itemId = 14010; break; + } case 18690: case 18691: case 18692: + { // give Green item itemId = 14011; break; + } default: + { // unknown npc! return super.onSkillSee(npc, caster, skill, targets, isSummon); + } } if (getRandom(100) < 33) { diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java index 7478b44a46..0e5f83d5d2 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java @@ -86,13 +86,19 @@ public final class AdminClanHall implements IAdminCommandHandler switch (actionVal) { case "inside": + { loc = clanHall.getOwnerLocation(); break; + } case "outside": + { loc = clanHall.getBanishLocation(); break; + } default: + { loc = player.getLocation(); + } } player.teleToLocation(loc); } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java index 214f3fcca7..af8911c09b 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java @@ -192,26 +192,40 @@ public class AdminLogin implements IAdminCommandHandler switch (currentType) { case 0x01: + { nameType += "Normal"; break; + } case 0x02: + { nameType += "Relax"; break; + } case 0x04: + { nameType += "Test"; break; + } case 0x08: + { nameType += "NoLabel"; break; + } case 0x10: + { nameType += "Restricted"; break; + } case 0x20: + { nameType += "Event"; break; + } case 0x40: + { nameType += "Free"; break; + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java index bb357a155b..1daf6a0ff9 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java @@ -128,34 +128,50 @@ public final class AdminPForge implements IAdminCommandHandler case 'B': case 'x': case 'X': + { // array break; + } case 'c': case 'C': + { // byte break; + } case 'h': case 'H': + { // word break; + } case 'd': case 'D': + { // dword break; + } case 'q': case 'Q': + { // qword break; + } case 'f': case 'F': + { // double break; + } case 's': case 'S': + { // string break; + } default: + { return false; + } } } @@ -169,7 +185,9 @@ public final class AdminPForge implements IAdminCommandHandler case "sc": case "sb": case "cs": + { return true; + } } return false; @@ -401,9 +419,12 @@ public final class AdminPForge implements IAdminCommandHandler switch (value) { case "$oid": + { value = String.valueOf(activeChar.getObjectId()); break; + } case "$boid": + { boat = activeChar.getBoat(); if (boat != null) { @@ -414,28 +435,44 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$title": + { value = activeChar.getTitle(); break; + } case "$name": + { value = activeChar.getName(); break; + } case "$x": + { value = String.valueOf(activeChar.getX()); break; + } case "$y": + { value = String.valueOf(activeChar.getY()); break; + } case "$z": + { value = String.valueOf(activeChar.getZ()); break; + } case "$heading": + { value = String.valueOf(activeChar.getHeading()); break; + } case "$toid": + { value = String.valueOf(activeChar.getTargetId()); break; + } case "$tboid": + { target = activeChar.getTarget(); if ((target != null) && (target instanceof L2Playable)) { @@ -450,7 +487,9 @@ public final class AdminPForge implements IAdminCommandHandler } } break; + } case "$ttitle": + { target = activeChar.getTarget(); if ((target != null) && (target instanceof L2Character)) { @@ -461,7 +500,9 @@ public final class AdminPForge implements IAdminCommandHandler value = ""; } break; + } case "$tname": + { target = activeChar.getTarget(); if (target != null) { @@ -472,7 +513,9 @@ public final class AdminPForge implements IAdminCommandHandler value = ""; } break; + } case "$tx": + { target = activeChar.getTarget(); if (target != null) { @@ -483,7 +526,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$ty": + { target = activeChar.getTarget(); if (target != null) { @@ -494,7 +539,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$tz": + { target = activeChar.getTarget(); if (target != null) { @@ -505,7 +552,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$theading": + { target = activeChar.getTarget(); if (target != null) { @@ -516,6 +565,7 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } } if (method.equals("sc") || method.equals("sb")) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java index 42ba371a4d..28eee47848 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java @@ -375,14 +375,20 @@ public class AdminSpawn implements IAdminCommandHandler { default: case 0: + { _log.info("('',1," + i + "," + x + "," + y + "," + z + ",0,0," + h + ",60,0,0),"); break; + } case 1: + { _log.info(""); break; + } case 2: + { _log.info("{ " + i + ", " + x + ", " + y + ", " + z + ", " + h + " },"); break; + } } } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java index fbf049aae5..7eda72c449 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java @@ -328,23 +328,35 @@ public class AdminTeleport implements IAdminCommandHandler switch (player.getRace()) { case ELF: + { regionName = "elf_town"; break; + } case DARK_ELF: + { regionName = "darkelf_town"; break; + } case ORC: + { regionName = "orc_town"; break; + } case DWARF: + { regionName = "dwarf_town"; break; + } case KAMAEL: + { regionName = "kamael_town"; break; + } case HUMAN: default: + { regionName = "talking_island_town"; + } } player.teleToLocation(MapRegionManager.getInstance().getMapRegionByName(regionName).getSpawnLoc(), true, null); diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/bypasshandlers/Augment.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/bypasshandlers/Augment.java index 95ce308a32..6f3cdd671a 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/bypasshandlers/Augment.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/bypasshandlers/Augment.java @@ -44,11 +44,15 @@ public class Augment implements IBypassHandler switch (Integer.parseInt(command.substring(8, 9).trim())) { case 1: + { activeChar.sendPacket(ExShowVariationMakeWindow.STATIC_PACKET); return true; + } case 2: + { activeChar.sendPacket(ExShowVariationCancelWindow.STATIC_PACKET); return true; + } } } catch (Exception e) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java index 440a9d3a54..4eba81bf89 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java @@ -78,11 +78,15 @@ public class KarmaCount extends AbstractEffect switch (_mode) { case 0: // diff + { final int newReputation = Math.min(player.getReputation() + _amount, 0); player.setReputation(newReputation); break; + } case 1: // reset + { player.setReputation(0); + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/itemhandlers/EventItem.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/itemhandlers/EventItem.java index 7e0a15c2bf..e7c5629cc7 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/itemhandlers/EventItem.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/itemhandlers/EventItem.java @@ -48,13 +48,19 @@ public class EventItem implements IItemHandler switch (itemId) { case 13787: // Handy's Block Checker Bond + { used = useBlockCheckerItem(activeChar, item); break; + } case 13788: // Handy's Block Checker Land Mine + { used = useBlockCheckerItem(activeChar, item); break; + } default: + { _log.warning("EventItemHandler: Item with id: " + itemId + " is not handled"); + } } return used; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/playeractions/SocialAction.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/playeractions/SocialAction.java index 3b46c485a5..1e34a0d148 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/playeractions/SocialAction.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/playeractions/SocialAction.java @@ -57,18 +57,24 @@ public final class SocialAction implements IPlayerActionHandler case 15: // Shyness case 28: // Propose case 29: // Provoke + { useSocial(activeChar, data.getOptionId()); break; + } case 30: // Beauty Shop + { if (useSocial(activeChar, data.getOptionId())) { activeChar.broadcastInfo(); } break; + } case 16: // Exchange Bows case 17: // High Five case 18: // Couple Dance + { useCoupleSocial(activeChar, data.getOptionId()); + } } } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java index 89ee884a61..991a11774d 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java @@ -62,53 +62,85 @@ public class Enchant implements ITelnetCommand switch (itemType) { case 1: + { itemType = Inventory.PAPERDOLL_HEAD; break; + } case 2: + { itemType = Inventory.PAPERDOLL_CHEST; break; + } case 3: + { itemType = Inventory.PAPERDOLL_GLOVES; break; + } case 4: + { itemType = Inventory.PAPERDOLL_FEET; break; + } case 5: + { itemType = Inventory.PAPERDOLL_LEGS; break; + } case 6: + { itemType = Inventory.PAPERDOLL_RHAND; break; + } case 7: + { itemType = Inventory.PAPERDOLL_LHAND; break; + } case 8: + { itemType = Inventory.PAPERDOLL_LEAR; break; + } case 9: + { itemType = Inventory.PAPERDOLL_REAR; break; + } case 10: + { itemType = Inventory.PAPERDOLL_LFINGER; break; + } case 11: + { itemType = Inventory.PAPERDOLL_RFINGER; break; + } case 12: + { itemType = Inventory.PAPERDOLL_NECK; break; + } case 13: + { itemType = Inventory.PAPERDOLL_UNDER; break; + } case 14: + { itemType = Inventory.PAPERDOLL_CLOAK; break; + } case 15: + { itemType = Inventory.PAPERDOLL_BELT; break; + } default: + { itemType = 0; break; + } } final boolean success = setEnchant(player, enchant, itemType); return success ? "Item has been successfully enchanted." : "Failed to enchant player's item!"; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java index 901e00370f..6d91a979b8 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java @@ -47,20 +47,30 @@ public class PartyInfo implements IUserCommandHandler switch (party.getDistributionType()) { case FINDERS_KEEPERS: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_FINDERS_KEEPERS); break; + } case RANDOM: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_RANDOM); break; + } case RANDOM_INCLUDING_SPOIL: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_RANDOM_INCLUDING_SPOIL); break; + } case BY_TURN: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_BY_TURN); break; + } case BY_TURN_INCLUDING_SPOIL: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_BY_TURN_INCLUDING_SPOIL); break; + } } // Not used in Infinite Odissey diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java index 98986c7bb2..0d58722682 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java @@ -41,6 +41,7 @@ public class CastleVCmd implements IVoicedCommandHandler switch (command) { case "opendoors": + { if (!params.equals("castle")) { activeChar.sendMessage("Only Castle doors can be open."); @@ -79,7 +80,9 @@ public class CastleVCmd implements IVoicedCommandHandler door.openMe(); } break; + } case "closedoors": + { if (!params.equals("castle")) { activeChar.sendMessage("Only Castle doors can be closed."); @@ -115,12 +118,15 @@ public class CastleVCmd implements IVoicedCommandHandler door2.closeMe(); } break; + } case "ridewyvern": + { if (activeChar.isClanLeader() && (activeChar.getClan().getCastleId() > 0)) { activeChar.mount(12621, 0, true); } break; + } } return true; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java index 2f9e28fa07..31b9470ed5 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java @@ -266,13 +266,17 @@ public final class ChamberOfDelusion extends AbstractInstance switch (eventName) { case "SCE_LUCKY": + { receiver.setBusy(true); receiver.doCast(SUCCESS_SKILL.getSkill()); break; + } case "SCE_DREAM_FIRE_IN_THE_HOLE": + { receiver.setBusy(true); receiver.doCast(FAIL_SKILL.getSkill()); break; + } } return null; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java index 0aae3383a4..12738e908a 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java @@ -130,8 +130,10 @@ public final class DarkCloudMansion extends AbstractInstance switch (event) { case "DELETE_ONE": + { npc.deleteMe(); break; + } case "DELETE": { world.getNpcs(BELETH_SAMPLE).stream().filter(n -> n != npc).forEach(L2Npc::deleteMe); @@ -140,8 +142,10 @@ public final class DarkCloudMansion extends AbstractInstance break; } case "CHAT": + { world.getNpcs(BELETH_SAMPLE).stream().filter(n -> n.isScriptValue(1)).forEach(n -> n.broadcastSay(ChatType.NPC_GENERAL, DECAY_CHAT[getRandom(DECAY_CHAT.length)])); break; + } } } return null; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java index d2efec6fbf..78abe60a80 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java @@ -80,11 +80,15 @@ public final class FaeronTrainingGrounds1 extends AbstractInstance switch (event) { case "enter_instance": + { enterInstance(player, npc, TEMPLATE_ID); break; + } case "exit_instance": + { finishInstance(player, 0); break; + } case "33944-03.html": { if (qs.isCond(6)) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java index 31def525c1..591730785d 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java @@ -232,13 +232,19 @@ public final class FortressDungeon extends AbstractInstance switch (instance.getStatus()) { case 0: + { npcId = RAIDS1[getRandom(RAIDS1.length)]; break; + } case 1: + { npcId = RAIDS2[getRandom(RAIDS2.length)]; break; + } default: + { npcId = RAIDS3[getRandom(RAIDS3.length)]; + } } // Spawn raid diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java index 65481c981c..5a74053b38 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java @@ -123,50 +123,80 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (event) { case "enter_instance": + { enterInstance(player, npc, TEMPLATE_ID); break; + } case "message1": + { showOnScreenMsg(player, NpcStringId.AN_INTRUDER_INTERESTING, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message2": + { showOnScreenMsg(player, NpcStringId.PROVE_YOUR_WORTH, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message3": + { showOnScreenMsg(player, NpcStringId.ONLY_THOSE_STRONG_ENOUGH_SHALL_PROCEED, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message4": + { showOnScreenMsg(player, NpcStringId.THOUGH_SMALL_THIS_POWER_WILL_HELP_YOU_GREATLY, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message5": + { showOnScreenMsg(player, NpcStringId.ARE_YOU_STRONG_OR_WEAK_OF_THE_LIGHT_OR_DARKNESS, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message6": + { showOnScreenMsg(player, NpcStringId.ONLY_THOSE_OF_LIGHT_MAY_PASS_OTHERS_MUST_PROVE_THEIR_STRENGTH, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "razkan_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.COME_ATTACK_ME_IF_YOU_DARE); break; + } case "bathus_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.IT_S_THE_END_FOR_YOU_TRAITOR); break; + } case "bamonti_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.I_WANT_TO_HEAR_YOU_CRY); break; + } case "carcass_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.I_WANT_TO_HEAR_YOU_CRY); break; + } case "khan_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.YOU_LL_HAVE_TO_KILL_US_FIRST); break; + } case "seknus_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.LETS_SEE_WHAT_YOU_ARE_MADE_OF); break; + } case "lotus_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.REPENT_AND_YOUR_DEATH_WILL_BE_QUICK); break; + } case "ele_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.DIE_TRAITOR); break; + } case "spawn_npc1": { final Instance world = player.getInstanceWorld(); @@ -321,8 +351,10 @@ public final class HarnakUndergroundRuins extends AbstractInstance break; } case "exit": + { finishInstance(player, 0); break; + } case "spawn_npc4": { final Instance world = player.getInstanceWorld(); @@ -372,35 +404,55 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (timerCount) { case 0: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING41); break; + } case 1: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING42); break; + } case 2: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING43); break; + } case 3: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING44); break; + } case 4: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING45); break; + } case 5: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS); break; + } case 6: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS2); break; + } case 7: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS3); break; + } case 8: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS4); break; + } case 9: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECOND); break; + } } if (timerCount <= 4) { @@ -464,29 +516,45 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (npc.getId()) { case RAKZAN: + { moveNpcRoom1(KRAKIA_BATHUS, NpcStringId.ARE_YOU_PLANNING_TO_BETRAY_THE_GODS_AND_FOLLOW_A_GIANT, "bathus_say", world); break; + } case KRAKIA_BATHUS: + { moveNpcRoom1(BAMONTI, NpcStringId.HAHA, "bamonti_say", world); break; + } case BAMONTI: + { moveNpcRoom1(KRAKIA_CARCASS, NpcStringId.HAHA, "carcass_say", world); break; + } case KRAKIA_CARCASS: + { moveNpcRoom1(WEISS_KHAN, NpcStringId.YOU_WILL_NOT_FREE_HERMUNCUS, "khan_say", world); break; + } case WEISS_KHAN: + { moveNpcRoom1(SEKNUS, NpcStringId.MORTAL, "seknus_say", world); break; + } case SEKNUS: + { moveNpcRoom1(KRAKIA_LOTUS, NpcStringId.TRYING_TO_FREE_HERMUNCUS, "lotus_say", world); break; + } case KRAKIA_LOTUS: + { moveNpcRoom1(WEISS_ELE, NpcStringId.YOU_WILL_NEVER_BREAK_THE_SEAL, "ele_say", world); break; + } case WEISS_ELE: + { startQuestTimer("spawn_npc2", 100, npc, killer); break; + } } break; } @@ -499,14 +567,20 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (params.getInt("wave")) { case 1: + { startQuestTimer("spawn_wave2", 100, npc, killer); break; + } case 2: + { startQuestTimer("spawn_wave3", 100, npc, killer); break; + } case 3: + { world.openCloseDoor(DOOR_TWO, true); break; + } } } break; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java index 2903a74346..cd9f853aa8 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java @@ -56,11 +56,15 @@ public final class KaraphonHabitat extends AbstractInstance switch (event) { case "enter_instance": + { enterInstance(player, npc, TEMPLATE_ID); break; + } case "exit_instance": + { finishInstance(player, 0); break; + } } } return null; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java index 9042ead6d9..218e44562d 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java @@ -649,6 +649,7 @@ public final class KartiasLabyrinth extends AbstractInstance switch (stage) { case 1: + { switch (wave) { case 1: @@ -676,7 +677,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 2: + { switch (wave) { case 1: @@ -704,7 +707,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 3: + { switch (wave) { case 1: @@ -763,7 +768,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 4: + { switch (wave) { case 1: @@ -791,7 +798,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 5: + { switch (wave) { case 1: @@ -826,6 +835,7 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } } } else if (room == 2) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java index a05e55df7f..9d3f2f142f 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java @@ -310,20 +310,30 @@ public final class LabyrinthOfBelis extends AbstractInstance switch (world.getStatus()) { case 0: + { htmltext = "19155-01.html"; break; + } case 3: + { htmltext = "19155-03.html"; break; + } case 5: + { htmltext = "19155-04.html"; break; + } case 7: + { htmltext = "19155-05.html"; break; + } case 9: + { htmltext = "19155-06.html"; break; + } } } else @@ -334,11 +344,15 @@ public final class LabyrinthOfBelis extends AbstractInstance break; } case BELIS_VERITIFICATION_SYSTEM: + { htmltext = "33215.html"; break; + } case ELECTRICITY_GENERATOR: + { htmltext = "33216.html"; break; + } } return htmltext; } @@ -451,17 +465,25 @@ public final class LabyrinthOfBelis extends AbstractInstance switch (world.getStatus()) { case 0: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.LET_ME_KNOW_WHEN_YOU_RE_ALL_READY); break; + } case 4: + { showOnScreenMsg(player, NpcStringId.MARK_OF_BELIS_CAN_BE_ACQUIRED_FROM_ENEMIES_NUSE_THEM_IN_THE_BELIS_VERIFICATION_SYSTEM, ExShowScreenMessage.TOP_CENTER, 4500); break; + } case 6: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.DON_T_COME_BACK_HERE); break; + } default: + { getTimers().cancelTimer("MESSAGE", npc, null); break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/Nursery/Nursery.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/Nursery/Nursery.java index 24299d102e..602388546c 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/Nursery/Nursery.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/Nursery/Nursery.java @@ -148,14 +148,20 @@ public final class Nursery extends AbstractInstance switch (gameStage) { case 0: + { htmltext = "GameManager-01.html"; break; + } case 2: + { htmltext = "GameManager-02.html"; break; + } case 3: + { htmltext = "GameManager-03.html"; break; + } } final BuffInfo energyInfo = player.getEffectList().getBuffInfoByAbnormalType(ENERGY_SKILL_1.getSkill().getAbnormalType()); @@ -324,14 +330,20 @@ public final class Nursery extends AbstractInstance switch (getRandom(3)) { case 0: + { ENERGY_SKILL_1.getSkill().applyEffects(npc, killer); break; + } case 1: + { ENERGY_SKILL_2.getSkill().applyEffects(npc, killer); break; + } case 2: + { ENERGY_SKILL_3.getSkill().applyEffects(npc, killer); break; + } } instance.broadcastPacket(new Earthquake(npc, 50, 3)); showOnScreenMsg(instance, NpcStringId.RECEIVED_REGENERATION_ENERGY, ExShowScreenMessage.MIDDLE_CENTER, 2000); diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java index 45610ed536..e3c55193cb 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java @@ -125,20 +125,30 @@ public final class SSQDisciplesNecropolisPast extends AbstractInstance switch (count) { case 4: + { world.openCloseDoor(DOOR_1, true); break; + } case 10: + { world.openCloseDoor(DOOR_2, true); break; + } case 18: + { world.openCloseDoor(DOOR_3, true); break; + } case 28: + { world.openCloseDoor(DOOR_4, true); break; + } case 40: + { world.openCloseDoor(DOOR_5, true); break; + } } } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java index f547c238c0..b6a0c0e165 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java @@ -58,10 +58,13 @@ public class Q00013_ParcelDelivery extends Quest switch (event) { case "31274-02.html": + { st.startQuest(); giveItems(player, PACKAGE, 1); break; + } case "31539-01.html": + { if (st.isCond(1) && hasQuestItems(player, PACKAGE)) { giveAdena(player, 271980, true); @@ -73,6 +76,7 @@ public class Q00013_ParcelDelivery extends Quest htmltext = "31539-02.html"; } break; + } } return htmltext; } @@ -87,28 +91,38 @@ public class Q00013_ParcelDelivery extends Quest switch (st.getState()) { case State.CREATED: + { if (npcId == FUNDIN) { htmltext = "31274-00.htm"; } break; + } case State.STARTED: + { if (st.isCond(1)) { switch (npcId) { case FUNDIN: + { htmltext = "31274-02.html"; break; + } case VULCAN: + { htmltext = "31539-00.html"; break; + } } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java index 59cd95e537..72dfe89324 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java @@ -56,21 +56,27 @@ public class Q00015_SweetWhispers extends Quest switch (event) { case "31302-01.html": + { st.startQuest(); break; + } case "31518-01.html": + { if (st.isCond(1)) { st.setCond(2); } break; + } case "31517-01.html": + { if (st.isCond(2)) { addExpAndSp(player, 714215, 171); st.exitQuest(false, true); } break; + } } return htmltext; } @@ -85,42 +91,58 @@ public class Q00015_SweetWhispers extends Quest switch (st.getState()) { case State.CREATED: + { if (npcId == VLADIMIR) { htmltext = "31302-00.htm"; } break; + } case State.STARTED: + { switch (npcId) { case VLADIMIR: + { if (st.isCond(1)) { htmltext = "31302-01a.html"; } break; + } case M_NECROMANCER: + { switch (st.getCond()) { case 1: + { htmltext = "31518-00.html"; break; + } case 2: + { htmltext = "31518-01a.html"; break; + } } break; + } case HIERARCH: + { if (st.isCond(2)) { htmltext = "31517-00.html"; } break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java index 2a4dcf1546..b38679f897 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java @@ -143,14 +143,20 @@ public final class Q00040_ASpecialOrder extends Quest switch (npc.getId()) { case HELVETIA: + { htmltext = "30081-03.html"; break; + } case O_FULLE: + { htmltext = "31572-03.html"; break; + } case GESTO: + { htmltext = "30511-01.html"; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java index c1bb4bb793..17170a6dd7 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java @@ -165,20 +165,30 @@ public final class Q00042_HelpTheUncle extends Quest switch (st.getCond()) { case 1: + { htmltext = (hasQuestItems(player, TRIDENT)) ? "30828-02.html" : "30828-02a.html"; break; + } case 2: + { htmltext = "30828-04.html"; break; + } case 3: + { htmltext = "30828-05.html"; break; + } case 4: + { htmltext = "30828-07.html"; break; + } case 5: + { htmltext = "30828-08.html"; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java index beb75704c1..b44f375a10 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java @@ -168,20 +168,30 @@ public final class Q00043_HelpTheSister extends Quest switch (st.getCond()) { case 1: + { htmltext = (hasQuestItems(player, CRAFTED_DAGGER)) ? "30829-02.html" : "30829-02a.html"; break; + } case 2: + { htmltext = "30829-04.html"; break; + } case 3: + { htmltext = "30829-05.html"; break; + } case 4: + { htmltext = "30829-07.html"; break; + } case 5: + { htmltext = "30829-08.html"; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java index 5091e034e2..1940c8b0b0 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java @@ -162,20 +162,30 @@ public final class Q00044_HelpTheSon extends Quest switch (st.getCond()) { case 1: + { htmltext = (hasQuestItems(player, WORK_HAMMER)) ? "30827-02.html" : "30827-02a.html"; break; + } case 2: + { htmltext = "30827-04.html"; break; + } case 3: + { htmltext = "30827-05.html"; break; + } case 4: + { htmltext = "30827-07.html"; break; + } case 5: + { htmltext = "30827-08.html"; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java index 299ff814a4..cbc888b6eb 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java @@ -97,14 +97,20 @@ public class Q00114_ResurrectionOfAnOldManager extends Quest switch (qs.getCond()) { case 3: + { htmltext = "32041-12.html"; break; + } case 4: + { htmltext = "32041-13.html"; break; + } case 5: + { htmltext = "32041-14.html"; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java index b90e5142b5..5c9855494b 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java @@ -82,14 +82,20 @@ public final class Q00122_OminousNews extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = "31979-01.htm"; break; + } case State.STARTED: + { htmltext = "31979-03.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java index cbde91959f..1a222ec48d 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java @@ -87,40 +87,55 @@ public class Q00125_TheNameOfEvil1 extends Quest switch (event) { case "32114-05.html": + { qs.startQuest(); break; + } case "32114-08.html": + { if (qs.isCond(1)) { giveItems(player, GAZKH_FRAGMENT, 1); qs.setCond(2, true); } break; + } case "32117-09.html": + { if (qs.isCond(2)) { qs.setCond(3, true); } break; + } case "32117-15.html": + { if (qs.isCond(4)) { qs.setCond(5, true); } break; + } case "T_One": + { qs.set("T", "1"); htmltext = "32119-04.html"; break; + } case "E_One": + { qs.set("E", "1"); htmltext = "32119-05.html"; break; + } case "P_One": + { qs.set("P", "1"); htmltext = "32119-06.html"; break; + } case "U_One": + { qs.set("U", "1"); if (qs.isCond(5) && (qs.getInt("T") > 0) && (qs.getInt("E") > 0) && (qs.getInt("P") > 0) && (qs.getInt("U") > 0)) { @@ -136,32 +151,44 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("P"); qs.unset("U"); break; + } case "32119-07.html": + { qs.unset("T"); qs.unset("E"); qs.unset("P"); qs.unset("U"); break; + } case "32119-18.html": + { if (qs.isCond(5)) { qs.setCond(6, true); qs.unset("Memo"); } break; + } case "T_Two": + { qs.set("T", "1"); htmltext = "32120-04.html"; break; + } case "O_Two": + { qs.set("O", "1"); htmltext = "32120-05.html"; break; + } case "O2_Two": + { qs.set("O2", "1"); htmltext = "32120-06.html"; break; + } case "N_Two": + { qs.set("N", "1"); if (qs.isCond(6) && (qs.getInt("T") > 0) && (qs.getInt("O") > 0) && (qs.getInt("O2") > 0) && (qs.getInt("N") > 0)) { @@ -177,31 +204,43 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("O2"); qs.unset("N"); break; + } case "32120-07.html": + { qs.unset("T"); qs.unset("O"); qs.unset("O2"); qs.unset("N"); + } case "32120-17.html": + { if (qs.isCond(6)) { qs.setCond(7, true); qs.unset("Memo"); } break; + } case "W_Three": + { qs.set("W", "1"); htmltext = "32121-04.html"; break; + } case "A_Three": + { qs.set("A", "1"); htmltext = "32121-05.html"; break; + } case "G_Three": + { qs.set("G", "1"); htmltext = "32121-06.html"; break; + } case "U_Three": + { qs.set("U", "1"); if (qs.isCond(7) && (qs.getInt("W") > 0) && (qs.getInt("A") > 0) && (qs.getInt("G") > 0) && (qs.getInt("U") > 0)) { @@ -217,19 +256,27 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("G"); qs.unset("U"); break; + } case "32121-07.html": + { qs.unset("W"); qs.unset("A"); qs.unset("G"); qs.unset("U"); break; + } case "32121-11.html": + { qs.set("Memo", "2"); break; + } case "32121-16.html": + { qs.set("Memo", "3"); break; + } case "32121-18.html": + { if (qs.isCond(7) && hasQuestItems(player, GAZKH_FRAGMENT)) { giveItems(player, EPITAPH_OF_WISDOM, 1); @@ -238,6 +285,7 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("Memo"); } break; + } } return htmltext; } @@ -283,9 +331,11 @@ public class Q00125_TheNameOfEvil1 extends Quest switch (npc.getId()) { case MUSHIKA: + { switch (qs.getState()) { case State.CREATED: + { if (player.getLevel() < 76) { htmltext = "32114-01a.htm"; @@ -296,23 +346,32 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = ((qs != null) && qs.isCompleted()) ? "32114-01.htm" : "32114-01b.htm"; } break; + } case State.STARTED: + { switch (qs.getCond()) { case 1: + { htmltext = "32114-09.html"; break; + } case 2: + { htmltext = "32114-10.html"; break; + } case 3: case 4: case 5: case 6: case 7: + { htmltext = "32114-11.html"; break; + } case 8: + { if (hasQuestItems(player, EPITAPH_OF_WISDOM)) { htmltext = "32114-12.html"; @@ -320,28 +379,41 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.exitQuest(false, true); } break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; + } case KARAKAWEI: + { if (qs.isStarted()) { switch (qs.getCond()) { case 1: + { htmltext = "32117-01.html"; break; + } case 2: + { htmltext = "32117-02.html"; break; + } case 3: + { htmltext = "32117-10.html"; break; + } case 4: + { if ((getQuestItemsCount(player, ORNITHOMIMUS_CLAW) >= 2) && (getQuestItemsCount(player, DEINONYCHUS_BONE) >= 2)) { takeItems(player, ORNITHOMIMUS_CLAW, -1); @@ -349,20 +421,29 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = "32117-11.html"; } break; + } case 5: + { htmltext = "32117-16.html"; break; + } case 6: case 7: + { htmltext = "32117-17.html"; break; + } case 8: + { htmltext = "32117-18.html"; break; + } } } break; + } case ULU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -371,9 +452,12 @@ public class Q00125_TheNameOfEvil1 extends Quest case 2: case 3: case 4: + { htmltext = "32119-01.html"; break; + } case 5: + { if (qs.get("Memo") == null) { htmltext = "32119-02.html"; @@ -388,16 +472,23 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = "32119-09.html"; } break; + } case 6: + { htmltext = "32119-18.html"; break; + } default: + { htmltext = "32119-19.html"; break; + } } } break; + } case BALU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -407,9 +498,12 @@ public class Q00125_TheNameOfEvil1 extends Quest case 3: case 4: case 5: + { htmltext = "32120-01.html"; break; + } case 6: + { if (qs.get("Memo") == null) { htmltext = "32120-02.html"; @@ -424,16 +518,23 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = "32120-09.html"; } break; + } case 7: + { htmltext = "32120-17.html"; break; + } default: + { htmltext = "32119-18.html"; break; + } } } break; + } case CHUTA_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -444,12 +545,16 @@ public class Q00125_TheNameOfEvil1 extends Quest case 4: case 5: case 6: + { htmltext = "32121-01.html"; break; + } case 7: + { switch (qs.getInt("Memo")) { case 0: + { htmltext = "32121-02.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); qs.unset("W"); @@ -457,23 +562,34 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("G"); qs.unset("U"); break; + } case 1: + { htmltext = "32121-09.html"; break; + } case 2: + { htmltext = "32121-19.html"; break; + } case 3: + { htmltext = "32121-20.html"; break; + } } break; + } case 8: + { htmltext = "32121-21.html"; break; + } } } break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java index 6446a8e79c..2fe435eff1 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java @@ -66,116 +66,161 @@ public class Q00126_TheNameOfEvil2 extends Quest switch (event) { case "32115-1.html": + { qs.startQuest(); break; + } case "32115-1b.html": + { if (qs.isCond(1)) { qs.setCond(2, true); } break; + } case "32119-3.html": + { if (qs.isCond(2)) { qs.setCond(3, true); } break; + } case "32119-4.html": + { if (qs.isCond(3)) { qs.setCond(4, true); } break; + } case "32119-4a.html": case "32119-5b.html": + { playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_1ST); break; + } case "32119-5.html": + { if (qs.isCond(4)) { qs.setCond(5, true); } break; + } case "32120-3.html": + { if (qs.isCond(5)) { qs.setCond(6, true); } break; + } case "32120-4.html": + { if (qs.isCond(6)) { qs.setCond(7, true); } break; + } case "32120-4a.html": case "32120-5b.html": + { playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_2ND); break; + } case "32120-5.html": + { if (qs.isCond(7)) { qs.setCond(8, true); } break; + } case "32121-3.html": + { if (qs.isCond(8)) { qs.setCond(9, true); } break; + } case "32121-4.html": + { if (qs.isCond(9)) { qs.setCond(10, true); } break; + } case "32121-4a.html": case "32121-5b.html": + { playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_3RD); break; + } case "32121-5.html": + { if (qs.isCond(10)) { giveItems(player, GAZKH_FRAGMENT, 1); qs.setCond(11, true); } break; + } case "32122-2a.html": + { npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case "32122-2d.html": + { takeItems(player, GAZKH_FRAGMENT, -1); break; + } case "32122-3.html": + { if (qs.isCond(12)) { qs.setCond(13, true); } break; + } case "32122-4.html": + { if (qs.isCond(13)) { qs.setCond(14, true); } break; + } case "DO_One": + { qs.set("DO", "1"); event = "32122-4d.html"; break; + } case "MI_One": + { qs.set("MI", "1"); event = "32122-4f.html"; break; + } case "FA_One": + { qs.set("FA", "1"); event = "32122-4h.html"; break; + } case "SOL_One": + { qs.set("SOL", "1"); event = "32122-4j.html"; break; + } case "FA2_One": + { qs.set("FA2", "1"); if (qs.isCond(14) && (qs.getInt("DO") > 0) && (qs.getInt("MI") > 0) && (qs.getInt("FA") > 0) && (qs.getInt("SOL") > 0) && (qs.getInt("FA2") > 0)) { @@ -192,30 +237,42 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL"); qs.unset("FA2"); break; + } case "32122-4m.html": + { qs.unset("DO"); qs.unset("MI"); qs.unset("FA"); qs.unset("SOL"); qs.unset("FA2"); break; + } case "FA_Two": + { qs.set("FA", "1"); event = "32122-5a.html"; break; + } case "SOL_Two": + { qs.set("SOL", "1"); event = "32122-5c.html"; break; + } case "TI_Two": + { qs.set("TI", "1"); event = "32122-5e.html"; break; + } case "SOL2_Two": + { qs.set("SOL2", "1"); event = "32122-5g.html"; break; + } case "FA2_Two": + { qs.set("FA2", "1"); if (qs.isCond(15) && (qs.getInt("FA") > 0) && (qs.getInt("SOL") > 0) && (qs.getInt("TI") > 0) && (qs.getInt("SOL2") > 0) && (qs.getInt("FA2") > 0)) { @@ -232,30 +289,42 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL2"); qs.unset("FA2"); break; + } case "32122-5i.html": + { qs.unset("FA"); qs.unset("SOL"); qs.unset("TI"); qs.unset("SOL2"); qs.unset("FA2"); break; + } case "SOL_Three": + { qs.set("SOL", "1"); event = "32122-6a.html"; break; + } case "FA_Three": + { qs.set("FA", "1"); event = "32122-6c.html"; break; + } case "MI_Three": + { qs.set("MI", "1"); event = "32122-6e.html"; break; + } case "FA2_Three": + { qs.set("FA2", "1"); event = "32122-6g.html"; break; + } case "MI2_Three": + { qs.set("MI2", "1"); if (qs.isCond(16) && (qs.getInt("SOL") > 0) && (qs.getInt("FA") > 0) && (qs.getInt("MI") > 0) && (qs.getInt("FA2") > 0) && (qs.getInt("MI2") > 0)) { @@ -272,61 +341,80 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("FA2"); qs.unset("MI2"); break; + } case "32122-6i.html": + { qs.unset("SOL"); qs.unset("FA"); qs.unset("MI"); qs.unset("FA2"); qs.unset("MI2"); break; + } case "32122-7.html": + { giveItems(player, BONE_POWDER, 1); playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_FULL); npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case "32122-8.html": + { if (qs.isCond(17)) { qs.setCond(18, true); } break; + } case "32109-2.html": + { if (qs.isCond(18)) { qs.setCond(19, true); } break; + } case "32109-3.html": + { if (qs.isCond(19)) { takeItems(player, BONE_POWDER, -1); qs.setCond(20, true); } break; + } case "32115-4.html": + { if (qs.isCond(20)) { qs.setCond(21, true); } break; + } case "32115-5.html": + { if (qs.isCond(21)) { qs.setCond(22, true); } break; + } case "32114-2.html": + { if (qs.isCond(22)) { qs.setCond(23, true); } break; + } case "32114-3.html": + { rewardItems(player, ENCHANT_WEAPON_A, 1); giveAdena(player, 460483, true); addExpAndSp(player, 1015973, 102802); qs.exitQuest(false, true); break; + } } return event; } @@ -340,9 +428,11 @@ public class Q00126_TheNameOfEvil2 extends Quest switch (npc.getId()) { case ASAMAH: + { switch (qs.getState()) { case State.CREATED: + { if (player.getLevel() < 77) { htmltext = "32115-0.htm"; @@ -353,15 +443,21 @@ public class Q00126_TheNameOfEvil2 extends Quest htmltext = ((qs != null) && qs.isCompleted()) ? "32115-0a.htm" : "32115-0b.htm"; } break; + } case State.STARTED: + { switch (qs.getCond()) { case 1: + { htmltext = "32115-1d.html"; break; + } case 2: + { htmltext = "32115-1c.html"; break; + } case 3: case 4: case 5: @@ -379,49 +475,74 @@ public class Q00126_TheNameOfEvil2 extends Quest case 17: case 18: case 19: + { htmltext = "32115-2.html"; break; + } case 20: + { htmltext = "32115-3.html"; break; + } case 21: + { htmltext = "32115-4j.html"; break; + } case 22: + { htmltext = "32115-5a.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; + } case ULU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) { case 1: + { htmltext = "32119-1.html"; break; + } case 2: + { htmltext = "32119-2.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case 3: + { htmltext = "32119-3c.html"; break; + } case 4: + { htmltext = "32119-4c.html"; break; + } case 5: + { htmltext = "32119-5a.html"; break; + } } } break; + } case BALU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -430,25 +551,37 @@ public class Q00126_TheNameOfEvil2 extends Quest case 2: case 3: case 4: + { htmltext = "32120-1.html"; break; + } case 5: + { htmltext = "32120-2.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case 6: + { htmltext = "32120-3c.html"; break; + } case 7: + { htmltext = "32120-4c.html"; break; + } default: + { htmltext = "32120-5a.html"; break; + } } } break; + } case CHUTA_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -460,25 +593,37 @@ public class Q00126_TheNameOfEvil2 extends Quest case 5: case 6: case 7: + { htmltext = "32121-1.html"; break; + } case 8: + { htmltext = "32121-2.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case 9: + { htmltext = "32121-3e.html"; break; + } case 10: + { htmltext = "32121-4e.html"; break; + } default: + { htmltext = "32121-5a.html"; break; + } } } break; + } case WARRIORS_GRAVE: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -493,19 +638,28 @@ public class Q00126_TheNameOfEvil2 extends Quest case 8: case 9: case 10: + { htmltext = "32122-1.html"; break; + } case 11: + { htmltext = "32122-2.html"; qs.setCond(12, true); break; + } case 12: + { htmltext = "32122-2l.html"; break; + } case 13: + { htmltext = "32122-3b.html"; break; + } case 14: + { htmltext = "32122-4.html"; qs.unset("DO"); qs.unset("MI"); @@ -513,7 +667,9 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL"); qs.unset("FA2"); break; + } case 15: + { htmltext = "32122-5.html"; qs.unset("FA"); qs.unset("SOL"); @@ -521,7 +677,9 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL2"); qs.unset("FA2"); break; + } case 16: + { htmltext = "32122-6.html"; qs.unset("SOL"); qs.unset("FA"); @@ -529,19 +687,28 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("FA2"); qs.unset("MI2"); break; + } case 17: + { htmltext = hasQuestItems(player, BONE_POWDER) ? "32122-7.html" : "32122-7b.html"; break; + } case 18: + { htmltext = "32122-8.html"; break; + } default: + { htmltext = "32122-9.html"; break; + } } } break; + } case SHILENS_STONE_STATUE: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -563,27 +730,39 @@ public class Q00126_TheNameOfEvil2 extends Quest case 15: case 16: case 17: + { htmltext = "32109-1a.html"; break; + } case 18: + { if (hasQuestItems(player, BONE_POWDER)) { htmltext = "32109-1.html"; } break; + } case 19: + { htmltext = "32109-2l.html"; break; + } case 20: + { htmltext = "32109-5.html"; break; + } default: + { htmltext = "32109-4.html"; break; + } } } break; + } case MUSHIKA: + { if (qs.isStarted()) { if (qs.getCond() < 22) @@ -600,6 +779,7 @@ public class Q00126_TheNameOfEvil2 extends Quest } } break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java index 29480b1d05..2a3d8b4852 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java @@ -84,21 +84,32 @@ public class Q00141_ShadowFoxPart3 extends Quest case "30894-17.html": case "30894-19.html": case "30894-20.html": + { break; + } case "30894-03.htm": + { st.startQuest(); break; + } case "30894-06.html": + { st.setCond(2, true); break; + } case "30894-15.html": + { st.set("talk", "2"); break; + } case "30894-18.html": + { st.setCond(4, true); st.unset("talk"); break; + } case "30894-21.html": + { giveAdena(player, 88888, true); if (player.getLevel() <= MAX_REWARD_LEVEL) { @@ -106,9 +117,12 @@ public class Q00141_ShadowFoxPart3 extends Quest } st.exitQuest(false, true); break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -146,19 +160,27 @@ public class Q00141_ShadowFoxPart3 extends Quest switch (st.getState()) { case State.CREATED: + { final QuestState qs = player.getQuestState(Q00140_ShadowFoxPart2.class.getSimpleName()); htmltext = (player.getLevel() >= MIN_LEVEL) ? ((qs != null) && qs.isCompleted()) ? "30894-01.htm" : "30894-00.html" : "30894-02.htm"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "30894-04.html"; break; + } case 2: + { htmltext = "30894-07.html"; break; + } case 3: + { if (st.getInt("talk") == 1) { htmltext = "30894-09.html"; @@ -174,14 +196,20 @@ public class Q00141_ShadowFoxPart3 extends Quest st.set("talk", "1"); } break; + } case 4: + { htmltext = "30894-19.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java index 0734e14ce9..93502b7551 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java @@ -81,39 +81,52 @@ public class Q00237_WindsOfChange extends Quest case "30969-08c.html": case "30897-02.html":// ROMAN case "30925-02.html":// MORELYN + { htmltext = event; break; + } case "30899-06.html": + { st.startQuest(); giveItems(player, FLAUENS_LETTER, 1); htmltext = event; break; + } case "30969-02.html": + { takeItems(player, FLAUENS_LETTER, -1); htmltext = event; break; + } case "30969-05.html": + { if (st.isCond(1)) { st.setCond(2, true); htmltext = event; } break; + } case "30897-03.html": + { if (st.isCond(2)) { st.setCond(3, true); htmltext = event; } break; + } case "30925-03.html": + { if (st.isCond(3)) { st.setCond(4, true); htmltext = event; } break; + } case "30969-09.html": + { if (st.isCond(4)) { giveItems(player, DOSKOZER_LETTER, 1); @@ -121,7 +134,9 @@ public class Q00237_WindsOfChange extends Quest htmltext = event; } break; + } case "30969-10.html": + { if (st.isCond(4)) { giveItems(player, ATHENIA_LETTER, 1); @@ -129,20 +144,25 @@ public class Q00237_WindsOfChange extends Quest htmltext = event; } break; + } case "32641-02.html": + { giveAdena(player, 213876, true); giveItems(player, VICINITY_OF_FOS, 1); addExpAndSp(player, 892773, 60012); st.exitQuest(false, true); htmltext = event; break; + } case "32643-02.html": + { giveAdena(player, 213876, true); giveItems(player, SUPPORT_CERTIFICATE, 1); addExpAndSp(player, 892773, 60012); st.exitQuest(false, true); htmltext = event; break; + } } return htmltext; } @@ -156,35 +176,52 @@ public class Q00237_WindsOfChange extends Quest switch (npc.getId()) { case FLAUEN: + { switch (st.getState()) { case State.COMPLETED: + { htmltext = "30899-09.html"; break; + } case State.CREATED: + { htmltext = (talker.getLevel() >= MIN_LEVEL) ? "30899-01.htm" : "30899-00.html"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: case 4: + { htmltext = "30899-07.html"; break; + } case 2: + { htmltext = "30899-10.html"; break; + } case 3: + { htmltext = "30899-11.html"; break; + } case 5: case 6: + { htmltext = "30899-08.html"; break; + } } + } } break; + } case IASON: + { if (st.isCompleted()) { htmltext = Quest.getNoQuestMsg(talker); @@ -194,45 +231,67 @@ public class Q00237_WindsOfChange extends Quest switch (st.getCond()) { case 1: + { htmltext = "30969-01.html"; break; + } case 2: + { htmltext = "30969-06.html"; break; + } case 4: + { htmltext = "30969-07.html"; break; + } case 5: case 6: + { htmltext = "30969-11.html"; break; + } } } break; + } case ROMAN: + { switch (st.getCond()) { case 2: + { htmltext = "30897-01.html"; break; + } case 3: case 4: + { htmltext = "30897-04.html"; break; + } } break; + } case MORELYN: + { switch (st.getCond()) { case 3: + { htmltext = "30925-01.html"; break; + } case 4: + { htmltext = "30925-04.html"; break; + } } break; + } case HELVETICA: + { if (st.isCompleted()) { final QuestState q238 = st.getPlayer().getQuestState(Q00238_SuccessFailureOfBusiness.class.getSimpleName()); @@ -247,7 +306,9 @@ public class Q00237_WindsOfChange extends Quest htmltext = "32641-04.html"; } break; + } case ATHENIA: + { if (st.isCompleted()) { final QuestState q239 = st.getPlayer().getQuestState(Q00239_WontYouJoinUs.class.getSimpleName()); @@ -262,6 +323,7 @@ public class Q00237_WindsOfChange extends Quest htmltext = "32643-01.html"; } break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java index b79000e374..39b21081a3 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java @@ -70,19 +70,25 @@ public class Q00238_SuccessFailureOfBusiness extends Quest switch (event) { case "32461-02.htm": + { htmltext = event; break; + } case "32461-03.html": + { st.startQuest(); htmltext = event; break; + } case "32461-06.html": + { if (st.isCond(2)) { st.setCond(3, true); htmltext = event; } break; + } } return htmltext; } @@ -142,9 +148,12 @@ public class Q00238_SuccessFailureOfBusiness extends Quest switch (st.getState()) { case State.COMPLETED: + { htmltext = "32461-09.html"; break; + } case State.CREATED: + { final QuestState q237 = st.getPlayer().getQuestState(Q00237_WindsOfChange.class.getSimpleName()); final QuestState q239 = st.getPlayer().getQuestState(Q00239_WontYouJoinUs.class.getSimpleName()); if ((q239 != null) && q239.isCompleted()) @@ -160,23 +169,32 @@ public class Q00238_SuccessFailureOfBusiness extends Quest htmltext = "32461-00.html"; } break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "32461-04.html"; break; + } case 2: + { if (getQuestItemsCount(talker, BROKEN_PIECE_OF_MAGIC_FORCE) == BROKEN_PIECE_OF_MAGIC_FORCE_NEEDED) { htmltext = "32461-05.html"; takeItems(talker, BROKEN_PIECE_OF_MAGIC_FORCE, -1); } break; + } case 3: + { htmltext = "32461-07.html"; break; + } case 4: + { if (getQuestItemsCount(talker, GUARDIAN_SPIRIT_FRAGMENT) == GUARDIAN_SPIRIT_FRAGMENT_NEEDED) { htmltext = "32461-08.html"; @@ -186,8 +204,10 @@ public class Q00238_SuccessFailureOfBusiness extends Quest st.exitQuest(false, true); } break; + } } break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java index 0c1c6731e1..76ba5a82dc 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java @@ -108,9 +108,12 @@ public class Q00254_LegendaryTales extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = (player.getLevel() < MIN_LEVEL) ? "30754-00.htm" : "30754-01.htm"; break; + } case State.STARTED: + { final long count = getQuestItemsCount(player, LARGE_DRAGON_SKULL); if (st.isCond(1)) { @@ -121,9 +124,12 @@ public class Q00254_LegendaryTales extends Quest htmltext = ((count < 7) ? "30754-12.htm" : "30754-07.html"); } break; + } case State.COMPLETED: + { htmltext = "30754-29.html"; break; + } } return htmltext; } @@ -142,7 +148,9 @@ public class Q00254_LegendaryTales extends Quest switch (event) { case "30754-05.html": + { st.startQuest(); + } case "30754-02.html": case "30754-03.html": case "30754-04.htm": @@ -150,29 +158,45 @@ public class Q00254_LegendaryTales extends Quest case "30754-15.html": case "30754-20.html": case "30754-21.html": + { htmltext = event; break; + } case "25718": // Emerald Horn + { htmltext = (checkMask(st, Bosses.EMERALD_HORN) ? "30754-22.html" : "30754-16.html"); break; + } case "25719": // Dust Rider + { htmltext = (checkMask(st, Bosses.DUST_RIDER) ? "30754-23.html" : "30754-17.html"); break; + } case "25720": // Bleeding Fly + { htmltext = (checkMask(st, Bosses.BLEEDING_FLY) ? "30754-24.html" : "30754-18.html"); break; + } case "25721": // Black Dagger Wing + { htmltext = (checkMask(st, Bosses.BLACK_DAGGER) ? "30754-25.html" : "30754-19.html"); break; + } case "25722": // Shadow Summoner + { htmltext = (checkMask(st, Bosses.SHADOW_SUMMONER) ? "30754-26.html" : "30754-16.html"); break; + } case "25723": // Spike Slasher + { htmltext = (checkMask(st, Bosses.SPIKE_SLASHER) ? "30754-27.html" : "30754-17.html"); break; + } case "25724": // Muscle Bomber + { htmltext = (checkMask(st, Bosses.MUSCLE_BOMBER) ? "30754-28.html" : "30754-18.html"); break; + } case "13467": // Vesper Thrower case "13466": // Vesper Singer case "13465": // Vesper Caster @@ -184,6 +208,7 @@ public class Q00254_LegendaryTales extends Quest case "13460": // Vesper Sharper case "13461": // Vesper Fighter case "13462": // Vesper Stormer + { if (st.isCond(2) && (getQuestItemsCount(player, LARGE_DRAGON_SKULL) >= 7)) { htmltext = "30754-09.html"; @@ -191,6 +216,7 @@ public class Q00254_LegendaryTales extends Quest st.exitQuest(false, true); } break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/Q00381_LetsBecomeARoyalMember.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/Q00381_LetsBecomeARoyalMember.java index 4357266694..cb3a564d13 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/Q00381_LetsBecomeARoyalMember.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/Q00381_LetsBecomeARoyalMember.java @@ -138,9 +138,12 @@ public final class Q00381_LetsBecomeARoyalMember extends Quest switch (qs.getMemoState()) { case 1: + { htmltext = "30090-01.html"; break; + } case 2: + { if (hasQuestItems(talker, COIN_ALBUM)) { htmltext = "30090-05.html"; @@ -157,6 +160,7 @@ public final class Q00381_LetsBecomeARoyalMember extends Quest htmltext = "30090-03.html"; } break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java index d8d700984d..582b4ac1da 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java @@ -336,17 +336,23 @@ public final class Q00421_LittleWingsBigAdventure extends Quest switch (flute.getId()) { case DRAGONFLUTE_OF_WIND: + { takeItems(talker, DRAGONFLUTE_OF_WIND, -1); giveItems(talker, DRAGON_BUGLE_OF_WIND, 1); break; + } case DRAGONFLUTE_OF_STAR: + { takeItems(talker, DRAGONFLUTE_OF_STAR, -1); giveItems(talker, DRAGON_BUGLE_OF_STAR, 1); break; + } case DRAGONFLUTE_OF_TWILIGHT: + { takeItems(talker, DRAGONFLUTE_OF_TWILIGHT, -1); giveItems(talker, DRAGON_BUGLE_OF_TWILIGHT, 1); break; + } } qs.exitQuest(true, true); @@ -418,14 +424,20 @@ public final class Q00421_LittleWingsBigAdventure extends Quest switch (getRandom(3)) { case 0: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WHY_DO_YOU_BOTHER_ME_AGAIN); break; + } case 1: + { npc.broadcastSay(ChatType.NPC_GENERAL, data.message); break; + } case 2: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.LEAVE_NOW_BEFORE_YOU_INCUR_THE_WRATH_OF_THE_GUARDIAN_GHOST); break; + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java index 5143fb930e..cee5e47974 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java @@ -69,18 +69,26 @@ public class Q00450_GraveRobberRescue extends Quest case "32650-04.htm": case "32650-05.htm": case "32650-06.html": + { break; + } case "32650-07.htm": + { st.startQuest(); break; + } case "despawn": + { npc.setBusy(false); npc.deleteMe(); htmltext = null; break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -96,16 +104,21 @@ public class Q00450_GraveRobberRescue extends Quest switch (st.getState()) { case State.COMPLETED: + { if (!st.isNowAvailable()) { htmltext = "32650-03.html"; break; } st.setState(State.CREATED); + } case State.CREATED: + { htmltext = (player.getLevel() >= MIN_LEVEL) ? "32650-01.htm" : "32650-02.htm"; break; + } case State.STARTED: + { if (st.isCond(1)) { htmltext = (!hasQuestItems(player, EVIDENCE_OF_MIGRATION)) ? "32650-08.html" : "32650-09.html"; @@ -117,6 +130,7 @@ public class Q00450_GraveRobberRescue extends Quest htmltext = "32650-10.html"; } break; + } } } else if (st.isCond(1)) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java index 43d17ab2f7..9653dcf230 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java @@ -98,9 +98,12 @@ public class Q00452_FindingtheLostSoldiers extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = (player.getLevel() < 84) ? "32773-0.html" : "32773-1.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "32773-4.html"; @@ -114,7 +117,9 @@ public class Q00452_FindingtheLostSoldiers extends Quest qs.exitQuest(QuestType.DAILY, true); } break; + } case State.COMPLETED: + { if (qs.isNowAvailable()) { qs.setState(State.CREATED); @@ -125,6 +130,7 @@ public class Q00452_FindingtheLostSoldiers extends Quest htmltext = "32773-6.html"; } break; + } } } else if (qs.isCond(1)) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java index 485b980d6a..e000eb6f24 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java @@ -191,6 +191,7 @@ public final class Q00456_DontKnowDontCare extends Quest switch (qs.getState()) { case State.COMPLETED: + { if (!qs.isNowAvailable()) { htmltext = "32864-02.html"; @@ -198,10 +199,14 @@ public final class Q00456_DontKnowDontCare extends Quest } qs.setState(State.CREATED); // intentional fall-through + } case State.CREATED: + { htmltext = ((player.getLevel() >= MIN_LEVEL) ? "32864-01.htm" : "32864-03.html"); break; + } case State.STARTED: + { switch (qs.getCond()) { case 1: @@ -221,6 +226,7 @@ public final class Q00456_DontKnowDontCare extends Quest } } break; + } } } return htmltext; @@ -237,22 +243,28 @@ public final class Q00456_DontKnowDontCare extends Quest case "32864-04.htm": case "32864-05.htm": case "32864-06.htm": + { if ((qs != null) && qs.isCreated()) { htmltext = event; } break; + } case "32864-07.htm": + { if ((qs != null) && qs.isCreated()) { qs.startQuest(); htmltext = event; } break; + } case "unspawnRaidCorpse": + { allowedPlayerMap.remove(npc.getObjectId()); npc.deleteMe(); break; + } } return htmltext; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java index afe4e89620..2821a2f466 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java @@ -122,31 +122,40 @@ public class Q00463_IMustBeaGenius extends Quest switch (event) { case "32069-03.htm": + { st.startQuest(); final int number = getRandom(51) + 550; st.set("number", String.valueOf(number)); st.set("chance", String.valueOf(getRandom(4))); htmltext = getHtm(player.getHtmlPrefix(), event).replace("%num%", String.valueOf(number)); break; + } case "32069-05.htm": + { htmltext = getHtm(player.getHtmlPrefix(), event).replace("%num%", st.get("number")); break; + } case "reward": + { if (st.isCond(2)) { final int rnd = getRandom(REWARD.length); final String str = (REWARD[rnd][2] < 10) ? "0" + REWARD[rnd][2] : String.valueOf(REWARD[rnd][2]); - addExpAndSp(player, REWARD[rnd][0], REWARD[rnd][1]); st.exitQuest(QuestType.DAILY, true); htmltext = "32069-" + str + ".html"; } break; + } case "32069-02.htm": + { break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -205,16 +214,21 @@ public class Q00463_IMustBeaGenius extends Quest switch (st.getState()) { case State.COMPLETED: + { if (!st.isNowAvailable()) { htmltext = "32069-07.htm"; break; } st.setState(State.CREATED); + } case State.CREATED: + { htmltext = (player.getLevel() >= MIN_LEVEL) ? "32069-01.htm" : "32069-00.htm"; break; + } case State.STARTED: + { if (st.isCond(1)) { htmltext = "32069-04.html"; @@ -230,6 +244,7 @@ public class Q00463_IMustBeaGenius extends Quest htmltext = "32069-06.html"; } break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java index 13d42394b7..13f4fb2400 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java @@ -73,12 +73,18 @@ public final class Q00474_WaitingForTheSummer extends Quest { case "32327-02.htm": case "32327-03.htm": + { break; + } case "32327-04.htm": + { qs.startQuest(); break; + } default: + { htmltext = null; + } } return htmltext; } @@ -102,11 +108,15 @@ public final class Q00474_WaitingForTheSummer extends Quest qs.setState(State.CREATED); } case State.CREATED: + { htmltext = "32327-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "32327-05.html" : "32327-06.html"; break; + } } } else if (qs.isStarted() && qs.isCond(2)) @@ -138,18 +148,26 @@ public final class Q00474_WaitingForTheSummer extends Quest { case LOST_BUFFALO: case FROST_BUFFALO: + { itemId = BUFFALO_MEAT; break; + } case URSUS: case URSUS_CUB: + { itemId = URSUS_MEAT; break; + } case LOST_YETI: case FROST_YETI: + { itemId = YETI_MEAT; break; + } default: + { itemId = -1; + } } // Give item diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00481_ShadowHelper/Q00481_ShadowHelper.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00481_ShadowHelper/Q00481_ShadowHelper.java index 9d2395ad3f..997b792c1f 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00481_ShadowHelper/Q00481_ShadowHelper.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00481_ShadowHelper/Q00481_ShadowHelper.java @@ -91,14 +91,18 @@ public final class Q00481_ShadowHelper extends Quest case "33302-03.htm": case "33302-04.htm": case "33302-07.html": + { break; + } case "33302-05.htm": { qs.startQuest(); break; } default: + { htmltext = null; + } } return htmltext; } @@ -121,8 +125,10 @@ public final class Q00481_ShadowHelper extends Quest qs.setState(State.CREATED); } case State.CREATED: + { htmltext = "33302-01.htm"; break; + } case State.STARTED: { if (qs.isCond(1)) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java index 16228f22d5..a914f94125 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java @@ -87,15 +87,23 @@ public final class Q00511_AwlUnderFoot extends Quest case "Warden-05.html": case "Warden-06.html": case "Warden-09.html": + { break; + } case "Warden-02.htm": + { qs.startQuest(); break; + } case "Warden-10.html": + { qs.exitQuest(QuestType.REPEATABLE); break; + } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java index 3dcac18726..d861678922 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java @@ -130,10 +130,14 @@ public final class Q00627_HeartInSearchOfPower extends Quest break; } case "31518-09.html": + { break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -185,17 +189,25 @@ public final class Q00627_HeartInSearchOfPower extends Quest switch (st.getCond()) { case 1: + { htmltext = "31518-03.html"; break; + } case 2: + { htmltext = "31518-04.html"; break; + } case 3: + { htmltext = "31518-07.html"; break; + } case 4: + { htmltext = "31518-08.html"; break; + } } } else if (npc.getId() == ENFEUX) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java index 723734030c..0e688d89f1 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java @@ -84,11 +84,15 @@ public class Q00652_AnAgedExAdventurer extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = (player.getLevel() >= 46) ? "32012-01.htm" : "32012-01a.htm"; break; + } case State.STARTED: + { htmltext = "32012-02.html"; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java index a5ff268b25..f10fe8fcd8 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java @@ -73,23 +73,34 @@ public class Q10275_ContainingTheAttributePower extends Quest { case "30839-02.html": case "31307-02.html": + { st.startQuest(); break; + } case "30839-05.html": + { st.setCond(2, true); break; + } case "31307-05.html": + { st.setCond(7, true); break; + } case "32325-03.html": + { st.setCond(3, true); giveItems(player, YINSWORD, 1, AttributeType.FIRE, 10); break; + } case "32326-03.html": + { st.setCond(8, true); giveItems(player, YANGSWORD, 1, AttributeType.EARTH, 10); break; + } case "32325-06.html": + { if (hasQuestItems(player, YINSWORD)) { takeItems(player, YINSWORD, 1); @@ -97,7 +108,9 @@ public class Q10275_ContainingTheAttributePower extends Quest } giveItems(player, YINSWORD, 1, AttributeType.FIRE, 10); break; + } case "32326-06.html": + { if (hasQuestItems(player, YANGSWORD)) { takeItems(player, YANGSWORD, 1); @@ -105,16 +118,21 @@ public class Q10275_ContainingTheAttributePower extends Quest } giveItems(player, YANGSWORD, 1, AttributeType.EARTH, 10); break; + } case "32325-09.html": + { st.setCond(5, true); BLESSING_OF_FIRE.getSkill().applyEffects(player, player); giveItems(player, YINSWORD, 1, AttributeType.FIRE, 10); break; + } case "32326-09.html": + { st.setCond(10, true); BLESSING_OF_EARTH.getSkill().applyEffects(player, player); giveItems(player, YANGSWORD, 1, AttributeType.EARTH, 10); break; + } } if (Util.isDigit(event)) @@ -139,6 +157,7 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (npc.getId()) { case AIR: + { if ((st.isCond(8) || st.isCond(10)) && (getItemEquipped(player, Inventory.PAPERDOLL_RHAND) == YANGSWORD) && (getQuestItemsCount(player, SOULPIECEAIR) < 6) && (getRandom(100) < 30)) { giveItems(player, SOULPIECEAIR, 1); @@ -152,7 +171,9 @@ public class Q10275_ContainingTheAttributePower extends Quest } } break; + } case WATER: + { if (((st.getCond() >= 3) || (st.getCond() <= 5)) && (getItemEquipped(player, Inventory.PAPERDOLL_RHAND) == YINSWORD) && (getQuestItemsCount(player, SOULPIECEWATER) < 6) && (getRandom(100) < 30)) { giveItems(player, SOULPIECEWATER, 1); @@ -166,6 +187,7 @@ public class Q10275_ContainingTheAttributePower extends Quest } } break; + } } return null; @@ -184,22 +206,32 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = (player.getLevel() > 75) ? "30839-01.htm" : "30839-00.html"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "30839-03.html"; break; + } case 2: + { htmltext = "30839-05.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = "30839-0a.html"; break; + } } break; } @@ -208,22 +240,32 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = (player.getLevel() > 75) ? "31307-01.htm" : "31307-00.html"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "31307-03.html"; break; + } case 7: + { htmltext = "31307-05.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = "31307-0a.html"; break; + } } break; } @@ -234,20 +276,28 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getCond()) { case 2: + { htmltext = "32325-01.html"; break; + } case 3: case 5: + { htmltext = "32325-04.html"; break; + } case 4: + { htmltext = "32325-08.html"; takeItems(player, YINSWORD, 1); takeItems(player, SOULPIECEWATER, -1); break; + } case 6: + { htmltext = "32325-10.html"; break; + } } } break; @@ -259,20 +309,28 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getCond()) { case 7: + { htmltext = "32326-01.html"; break; + } case 8: case 10: + { htmltext = "32326-04.html"; break; + } case 9: + { htmltext = "32326-08.html"; takeItems(player, YANGSWORD, 1); takeItems(player, SOULPIECEAIR, -1); break; + } case 11: + { htmltext = "32326-10.html"; break; + } } } break; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java index e144a76d5e..0712418726 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java @@ -127,13 +127,17 @@ public class Q10283_RequestOfIceMerchant extends Quest switch (npc.getId()) { case RAFFORTY: + { switch (st.getState()) { case State.CREATED: + { final QuestState _prev = player.getQuestState(Q00115_TheOtherSideOfTruth.class.getSimpleName()); htmltext = ((_prev != null) && _prev.isCompleted() && (player.getLevel() >= 82)) ? "32020-01.htm" : "32020-00.htm"; break; + } case State.STARTED: + { if (st.isCond(1)) { htmltext = "32020-04.htm"; @@ -143,23 +147,31 @@ public class Q10283_RequestOfIceMerchant extends Quest htmltext = "32020-08.htm"; } break; + } case State.COMPLETED: + { htmltext = "32020-09.htm"; break; + } } break; + } case KIER: + { if (st.isCond(2)) { htmltext = "32022-01.html"; } break; + } case JINIA: + { if (st.isCond(2)) { htmltext = "32760-02.html"; } break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java index f0a86954cb..afa81b1257 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java @@ -60,13 +60,18 @@ public class Q10289_FadeToBlack extends Quest switch (event) { case "32757-02.htm": + { htmltext = event; break; + } case "32757-03.htm": + { qs.startQuest(); htmltext = event; break; + } case "32757-06.html": + { if (qs.isCond(2) && hasQuestItems(player, MARK_OF_DARKNESS)) { htmltext = "32757-07.html"; @@ -80,6 +85,7 @@ public class Q10289_FadeToBlack extends Quest htmltext = event; } break; + } case "11": case "12": case "13": @@ -100,90 +106,131 @@ public class Q10289_FadeToBlack extends Quest case "28": case "29": case "30": + { if (qs.isCond(3) && hasQuestItems(player, MARK_OF_SPLENDOR)) { // see 32757-08.html for recipe list (all moirai armor 60%) switch (event) { case "11": + { rewardItems(player, 15775, 1); giveAdena(player, 420920, true); break; + } case "12": + { rewardItems(player, 15776, 1); giveAdena(player, 420920, true); break; + } case "13": + { rewardItems(player, 15777, 1); giveAdena(player, 420920, true); break; + } case "14": + { rewardItems(player, 15778, 1); break; + } case "15": + { rewardItems(player, 15779, 1); giveAdena(player, 168360, true); break; + } case "16": + { rewardItems(player, 15780, 1); giveAdena(player, 168360, true); break; + } case "17": + { rewardItems(player, 15781, 1); giveAdena(player, 252540, true); break; + } case "18": + { rewardItems(player, 15782, 1); giveAdena(player, 357780, true); break; + } case "19": + { rewardItems(player, 15783, 1); giveAdena(player, 357780, true); break; + } case "20": + { rewardItems(player, 15784, 1); giveAdena(player, 505100, true); break; + } case "21": + { rewardItems(player, 15785, 1); giveAdena(player, 505100, true); break; + } case "22": + { rewardItems(player, 15786, 1); giveAdena(player, 505100, true); break; + } case "23": + { rewardItems(player, 15787, 1); giveAdena(player, 505100, true); break; + } case "24": + { rewardItems(player, 15787, 1); giveAdena(player, 505100, true); break; + } case "25": + { rewardItems(player, 15789, 1); giveAdena(player, 505100, true); break; + } case "26": + { rewardItems(player, 15790, 1); giveAdena(player, 496680, true); break; + } case "27": + { rewardItems(player, 15791, 1); giveAdena(player, 496680, true); break; + } case "28": + { rewardItems(player, 15792, 1); giveAdena(player, 563860, true); break; + } case "29": + { rewardItems(player, 15793, 1); giveAdena(player, 509040, true); break; + } case "30": + { rewardItems(player, 15794, 1); giveAdena(player, 454240, true); break; + } } final long marksOfDarkness = getQuestItemsCount(player, MARK_OF_DARKNESS); @@ -195,6 +242,7 @@ public class Q10289_FadeToBlack extends Quest htmltext = "32757-09.html"; } break; + } } return htmltext; } @@ -257,12 +305,16 @@ public class Q10289_FadeToBlack extends Quest switch (qs.getCond()) { case 1: + { htmltext = "32757-04.html"; break; + } case 2: case 3: + { htmltext = "32757-05.html"; break; + } } } else diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java index 370eb549d4..ef6a58a7dd 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java @@ -180,17 +180,25 @@ public final class Q10302_UnsettlingShadowAndRumors extends Quest switch (qs.getCond()) { case 1: + { htmltext = "32894-01.html"; break; + } case 2: + { htmltext = "32894-03.html"; break; + } case 5: + { htmltext = "32894-04.html"; break; + } case 6: + { htmltext = "32894-07.html"; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10331_StartOfFate/Q10331_StartOfFate.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10331_StartOfFate/Q10331_StartOfFate.java index d03c4ff79f..0d59e68fb7 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10331_StartOfFate/Q10331_StartOfFate.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10331_StartOfFate/Q10331_StartOfFate.java @@ -110,9 +110,11 @@ public final class Q10331_StartOfFate extends Quest case "32160-08.html": // Dark Elven Mage case "32150-07.html": // Orc Fighter case "32150-08.html": // Orc Mage + { /** * 1st class transfer htmls for each class */ + } case "32146-09.html": // Trooper case "32146-10.html": // Warder case "32153-09.html": // Warrior @@ -185,7 +187,6 @@ public final class Q10331_StartOfFate extends Quest if (qs.isCond(5)) { takeItems(player, SARIL_NECKLACE, 1); - switch (player.getRace()) { case HUMAN: @@ -234,7 +235,6 @@ public final class Q10331_StartOfFate extends Quest { final ClassId newClassId = ClassId.getClassId(Integer.parseInt(event.replace("classChange;", ""))); final ClassId currentClassId = player.getClassId(); - if (!newClassId.childOf(currentClassId) || ((qs.getCond() < 6) && (qs.getCond() > 11))) { Util.handleIllegalPlayerAction(player, "Player " + player.getName() + " tried to cheat the 1st class transfer!", Config.DEFAULT_PUNISH); @@ -243,65 +243,105 @@ public final class Q10331_StartOfFate extends Quest switch (newClassId) { case WARRIOR: + { htmltext = "32153-15.htm"; break; + } case KNIGHT: + { htmltext = "32153-16.htm"; break; + } case ROGUE: + { htmltext = "32153-17.htm"; break; + } case WIZARD: + { htmltext = "32153-18.htm"; break; + } case CLERIC: + { htmltext = "32153-19.htm"; break; + } case ELVEN_KNIGHT: + { htmltext = "32147-14.htm"; break; + } case ELVEN_SCOUT: + { htmltext = "32147-15.htm"; break; + } case ELVEN_WIZARD: + { htmltext = "32147-16.htm"; break; + } case ORACLE: + { htmltext = "32147-17.htm"; break; + } case PALUS_KNIGHT: + { htmltext = "32160-14.htm"; break; + } case ASSASSIN: + { htmltext = "32160-15.htm"; break; + } case DARK_WIZARD: + { htmltext = "32160-16.htm"; break; + } case SHILLIEN_ORACLE: + { htmltext = "32160-17.htm"; break; + } case ORC_RAIDER: + { htmltext = "32150-14.htm"; break; + } case ORC_MONK: + { htmltext = "32150-15.htm"; break; + } case ORC_SHAMAN: + { htmltext = "32150-16.htm"; break; + } case SCAVENGER: + { htmltext = "32157-11.htm"; break; + } case ARTISAN: + { htmltext = "32157-12.htm"; break; + } case TROOPER: + { htmltext = "32146-12.htm"; break; + } case WARDER: + { htmltext = "32146-13.htm"; break; + } } player.setBaseClass(newClassId); player.setClassId(newClassId.getId()); diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java index e59e46d164..78c2aaa6fa 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java @@ -135,11 +135,15 @@ public final class Q10339_FightingTheForgotten extends Quest switch (st.getCond()) { case 1: + { htmltext = "33344-01.html"; break; + } case 2: + { htmltext = "33344-02.html"; break; + } case 3: { st.exitQuest(false, true); diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java index 568cbd9edb..cdfb4f1972 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java @@ -177,29 +177,41 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case HUMAN: + { st.setCond(player.isMageClass() ? 4 : 5); htmltext = player.isMageClass() ? "33179-06.htm" : "33179-11.htm"; break; + } case DARK_ELF: + { st.setCond(6); htmltext = "33179-05.htm"; break; + } case ORC: + { st.setCond(7); htmltext = "33179-07.htm"; break; + } case DWARF: + { st.setCond(8); htmltext = "33179-08.htm"; break; + } case KAMAEL: + { st.setCond(9); htmltext = "33179-09.htm"; break; + } case ELF: + { st.setCond(player.isMageClass() ? 11 : 10); htmltext = player.isMageClass() ? "33179-12.htm" : "33179-10.htm"; break; + } } takeItems(player, FRAGMENT, 20); playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); @@ -215,23 +227,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30289-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30289-08.html" : "30289-02.html"; break; + } case ORC: + { htmltext = "30289-03.html"; break; + } case DWARF: + { htmltext = "30289-04.html"; break; + } case KAMAEL: + { htmltext = "30289-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30289-06.html" : "30289-07.html"; break; + } } } break; @@ -243,23 +267,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30288-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30288-02.html" : "30288-08.html"; break; + } case ORC: + { htmltext = "30288-03.html"; break; + } case DWARF: + { htmltext = "30288-04.html"; break; + } case KAMAEL: + { htmltext = "30288-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30288-06.html" : "30288-07.html"; break; + } } } break; @@ -271,23 +307,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30297-08.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30297-01.html" : "30297-02.html"; break; + } case ORC: + { htmltext = "30297-03.html"; break; + } case DWARF: + { htmltext = "30297-04.html"; break; + } case KAMAEL: + { htmltext = "30297-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30297-06.html" : "30297-07.html"; break; + } } } break; @@ -299,23 +347,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30505-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30505-02.html" : "30505-03.html"; break; + } case ORC: + { htmltext = "30505-08.html"; break; + } case DWARF: + { htmltext = "30505-04.html"; break; + } case KAMAEL: + { htmltext = "30505-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30505-06.html" : "30505-07.html"; break; + } } } break; @@ -327,23 +387,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30504-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30504-02.html" : "30504-03.html"; break; + } case ORC: + { htmltext = "30504-04.html"; break; + } case DWARF: + { htmltext = "30504-08.html"; break; + } case KAMAEL: + { htmltext = "30504-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30504-06.html" : "30504-07.html"; break; + } } } break; @@ -355,23 +427,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "32196-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "32196-02.html" : "32196-03.html"; break; + } case ORC: + { htmltext = "32196-04.html"; break; + } case DWARF: + { htmltext = "32196-05.html"; break; + } case KAMAEL: + { htmltext = "32196-08.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "32196-06.html" : "32196-07.html"; break; + } } } break; @@ -383,23 +467,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30158-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30158-02.html" : "30158-03.html"; break; + } case ORC: + { htmltext = "30158-04.html"; break; + } case DWARF: + { htmltext = "30158-05.html"; break; + } case KAMAEL: + { htmltext = "30158-06.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30158-08.html" : "30158-07.html"; break; + } } } break; @@ -411,23 +507,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30155-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30155-02.html" : "30155-03.html"; break; + } case ORC: + { htmltext = "30155-04.html"; break; + } case DWARF: + { htmltext = "30155-05.html"; break; + } case KAMAEL: + { htmltext = "30155-06.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30155-07.html" : "30155-08.html"; break; + } } } break; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java index 0053eece49..a2d77900bb 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java @@ -169,29 +169,41 @@ public final class Q10360_CertificationOfFate extends Quest switch (player.getRace()) { case HUMAN: + { st.setCond(player.isMageClass() ? 9 : 8); htmltext = player.isMageClass() ? "33518-06.htm" : "33518-07.htm"; break; + } case DARK_ELF: + { st.setCond(12); htmltext = "33518-08.htm"; break; + } case ORC: + { st.setCond(13); htmltext = "33518-09.htm"; break; + } case DWARF: + { st.setCond(14); htmltext = "33518-10.htm"; break; + } case KAMAEL: + { st.setCond(15); htmltext = "33518-11.htm"; break; + } case ELF: + { st.setCond(player.isMageClass() ? 11 : 10); htmltext = player.isMageClass() ? "33518-12.htm" : "33518-13.htm"; break; + } } playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); break; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java index 6aa7cab89b..6bdcb9797f 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java @@ -291,21 +291,32 @@ public final class Q10369_NoblesseSoulTesting extends Quest switch (qs.getCond()) { case 1: + { htmltext = "31281-03.html"; break; + } case 2: + { htmltext = "31281-06.html"; break; + } case 3: + { htmltext = "31281-07.html"; break; + } case 4: + { htmltext = "31281-08.html"; break; + } case 5: + { htmltext = "31281-10.html"; break; + } case 14: + { final Quest instance = QuestManager.getInstance().getQuest(EvasHiddenSpace.class.getSimpleName()); if (instance != null) { @@ -313,9 +324,12 @@ public final class Q10369_NoblesseSoulTesting extends Quest } htmltext = null; break; + } case 17: + { htmltext = "31281-11.html"; break; + } } break; } @@ -324,18 +338,27 @@ public final class Q10369_NoblesseSoulTesting extends Quest switch (qs.getCond()) { case 5: + { htmltext = "33686-01.html"; break; + } case 6: + { htmltext = "33686-04.html"; break; + } case 15: + { htmltext = "33686-05.html"; break; + } case 16: + { htmltext = "33686-06.html"; break; + } case 18: + { player.doCast(NOBLESSE_PRESENTATION.getSkill()); showOnScreenMsg(player, NpcStringId.CONGRATULATIONS_YOU_ARE_NOW_A_NOBLESSE, ExShowScreenMessage.TOP_CENTER, 5000); player.setNoble(true); @@ -348,6 +371,7 @@ public final class Q10369_NoblesseSoulTesting extends Quest qs.exitQuest(false, true); htmltext = "33686-07.html"; break; + } } break; } @@ -356,30 +380,44 @@ public final class Q10369_NoblesseSoulTesting extends Quest switch (qs.getCond()) { case 7: + { htmltext = "33696-02.html"; break; + } case 8: + { htmltext = "33696-04.html"; break; + } case 9: + { htmltext = "33696-05.html"; break; + } case 10: + { htmltext = "33696-07.html"; break; + } case 11: + { htmltext = "33696-08.html"; break; + } case 12: + { htmltext = "33696-10.html"; break; + } case 13: + { qs.setCond(14, true); takeItems(player, HARD_FOSSIL_CONTAINING_WATER_ENERGY, -1); giveItems(player, SACK_CONTAINING_INGREDIENTS, 1); giveItems(player, SOE_SECRET_ROOM, 1); htmltext = "33696-11.html"; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java index 2e9fe0fadf..a3f3c799f4 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java @@ -473,17 +473,25 @@ public final class Q10385_RedThreadOfFate extends Quest switch (qs.getCond()) { case 2: + { htmltext = "33783-01.html"; break; + } case 3: + { htmltext = "33783-03.html"; break; + } case 4: + { htmltext = "33783-04.html"; break; + } case 5: + { htmltext = "33783-04.html"; break; + } } break; } @@ -552,17 +560,25 @@ public final class Q10385_RedThreadOfFate extends Quest switch (qs.getCond()) { case 10: + { htmltext = "31539-01.html"; break; + } case 11: + { htmltext = "31539-05.html"; break; + } case 13: + { htmltext = "31539-06.html"; break; + } case 14: + { htmltext = "31539-10.html"; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java index a6a13d44b1..b82280ef50 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java @@ -143,11 +143,15 @@ public final class Q10386_MysteriousJourney extends Quest switch (st.getCond()) { case 1: + { htmltext = "33780-01.html"; break; + } case 2: + { htmltext = "33780-05.html"; break; + } case 4: { giveAdena(player, 58_707, true); diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java index 8c1604b6a8..5e324dac3f 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java @@ -166,14 +166,20 @@ public final class Q10387_SoullessOne extends Quest switch (st.getCond()) { case 1: + { htmltext = "33796-01.htm"; break; + } case 2: + { htmltext = "33796-06.html"; break; + } case 3: + { htmltext = "33796-07.html"; break; + } } } break; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java index 30418600b4..d51eb93794 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java @@ -224,23 +224,35 @@ public final class Q10390_KekropusLetter extends Quest switch (player.getRace()) { case HUMAN: + { htmltext = player.isMageClass() ? "30332-01.html" : "30332-02.html"; break; + } case DARK_ELF: + { htmltext = "30332-03.html"; break; + } case ORC: + { htmltext = "30332-04.html"; break; + } case DWARF: + { htmltext = "30332-05.html"; break; + } case KAMAEL: + { htmltext = "30332-06.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30332-08.html" : "30332-07.html"; break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java index f4f02c3edd..1e59ea9823 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java @@ -122,14 +122,20 @@ public final class Q10417_DaimonTheWhiteEyed extends Quest switch (st.getCond()) { case 1: + { htmltext = npc.getId() == EYE_OF_ARGOS ? "31683-05.html" : "33851-01.html"; break; + } case 2: + { htmltext = npc.getId() == EYE_OF_ARGOS ? "31683-06.html" : "33851-01.html"; break; + } case 3: + { htmltext = npc.getId() == EYE_OF_ARGOS ? "31683-07.html" : "33851-02.html"; break; + } } } return htmltext; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java index 37e1b208a1..2345109d97 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java @@ -125,7 +125,9 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest case "33491-02.html": case "33491-03.html": case "33491-04.html": + { break; + } case "33931-05.htm": // Navari { qs.startQuest(); @@ -246,36 +248,54 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (event.split("-")[1]) { case "fire": + { giveItems(player, FIRE_STONE); break; + } case "water": + { giveItems(player, WATER_STONE); break; + } case "earth": + { giveItems(player, EARTH_STONE); break; + } case "wind": + { giveItems(player, WIND_STONE); break; + } case "dark": + { giveItems(player, DARK_STONE); break; + } case "holy": + { giveItems(player, HOLY_STONE); break; + } } // Give soul crystal switch (qs.get("SoulCrystal")) { case "red": + { giveItems(player, RED_SOUL_CRYSTAL_15); break; + } case "blue": + { giveItems(player, BLUE_SOUL_CRYSTAL_15); break; + } case "green": + { giveItems(player, GREEN_SOUL_CRYSTAL_15); break; + } } giveItems(player, CRYSTAL_R); giveItems(player, RECIPE_TWILIGHT_NECKLACE); @@ -286,7 +306,9 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -302,17 +324,23 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33931-01.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "33931-06.html"; } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if ((npc.getId() == ZEPHYRA) && qs.isStarted()) @@ -320,17 +348,25 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getCond()) { case 1: + { htmltext = "33978-01.html"; break; + } case 2: + { htmltext = "33978-04.html"; break; + } case 17: + { htmltext = "33978-05.html"; break; + } case 18: + { htmltext = "33978-08.html"; break; + } } } else if ((npc.getId() == MOMET) && qs.isStarted()) @@ -349,17 +385,25 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getCond()) { case 3: + { htmltext = "31092-01.html"; break; + } case 4: + { htmltext = "31092-04.html"; break; + } case 5: + { htmltext = (qs.isMemoState(1)) ? "31092-06.html" : "31092-05.html"; break; + } case 6: + { htmltext = "31092-08.html"; break; + } } } else if ((npc.getId() == BLACKSMITH_OF_MAMMON) && qs.isStarted()) @@ -378,18 +422,26 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getCond()) { case 7: + { htmltext = "33870-01.html"; break; + } case 8: + { htmltext = "33870-06.html"; break; + } // TODO: Unknown html for cond 9 - 15 case 16: + { htmltext = "33870-07.html"; break; + } case 17: + { htmltext = "33870-10.html"; break; + } } } else if ((npc.getId() == KARLA) && qs.isStarted()) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java index 97543bbcc2..1ffe73c501 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java @@ -171,8 +171,10 @@ public final class Q10734_DoOrDie extends Quest break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } break; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java index dd588a6c25..b67cf8548e 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java @@ -121,8 +121,10 @@ public final class Q10740_NeverForget extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33951-01.htm"; break; + } case State.STARTED: { switch (qs.getCond()) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java index f5717e2b8d..0e60a2baf6 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java @@ -295,8 +295,10 @@ public final class Q10751_WindsOfFateEncounters extends Quest break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java index 12db806da2..4369dd3f3b 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java @@ -69,7 +69,9 @@ public final class Q10755_LettersFromTheQueenWindyHill extends LetterQuest { case "30037-02.html": case "33963-02.html": + { break; + } case "30037-03.html": { if (qs.isCond(1)) @@ -92,7 +94,9 @@ public final class Q10755_LettersFromTheQueenWindyHill extends LetterQuest break; } default: + { htmltext = event; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java index fe779004ee..a9e5b60ef9 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java @@ -77,7 +77,9 @@ public final class Q10756_AnInterdimensionalDraft extends Quest case "33963-02.htm": case "33963-03.htm": case "33963-04.htm": + { break; + } case "33963-05.htm": { qs.startQuest(); @@ -94,7 +96,9 @@ public final class Q10756_AnInterdimensionalDraft extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -108,14 +112,20 @@ public final class Q10756_AnInterdimensionalDraft extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33963-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33963-06.html" : "33963-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java index e356b3949d..676269a77f 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java @@ -75,7 +75,9 @@ public final class Q10757_QuietingTheStorm extends Quest case "33963-02.htm": case "33963-03.htm": case "33963-04.htm": + { break; + } case "33963-05.htm": { qs.startQuest(); @@ -92,7 +94,9 @@ public final class Q10757_QuietingTheStorm extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -106,14 +110,20 @@ public final class Q10757_QuietingTheStorm extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33963-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33963-06.html" : "33963-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java index 006bed445b..c3de2d720f 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java @@ -67,7 +67,9 @@ public final class Q10758_TheOathOfTheWind extends Quest { case "33963-01.htm": case "33963-02.htm": + { break; + } case "33963-03.htm": { qs.startQuest(); @@ -94,7 +96,9 @@ public final class Q10758_TheOathOfTheWind extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -108,14 +112,20 @@ public final class Q10758_TheOathOfTheWind extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33963-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33963-04.html" : "33963-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java index 19ce4480be..fb08a9c72c 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java @@ -69,7 +69,9 @@ public class Q10760_LettersFromTheQueenOrcBarracks extends LetterQuest { case "30037-02.html": case "30597-02.html": + { break; + } case "30037-03.html": { if (qs.isCond(1)) @@ -92,7 +94,9 @@ public class Q10760_LettersFromTheQueenOrcBarracks extends LetterQuest break; } default: + { htmltext = event; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java index 53d764015a..c650191204 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java @@ -79,7 +79,9 @@ public class Q10761_AnOrcInLove extends Quest case "33966-02.htm": case "33966-03.htm": case "33966-04.htm": + { break; + } case "33966-05.htm": { qs.startQuest(); @@ -96,7 +98,9 @@ public class Q10761_AnOrcInLove extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -110,14 +114,20 @@ public class Q10761_AnOrcInLove extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-06.html" : "33966-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java index f855ebf0b7..bb735c2799 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java @@ -67,7 +67,9 @@ public final class Q10762_MarionetteSpirit extends Quest switch (event) { case "33966-02.htm": + { break; + } case "33966-03.htm": { qs.startQuest(); @@ -84,7 +86,9 @@ public final class Q10762_MarionetteSpirit extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -98,14 +102,20 @@ public final class Q10762_MarionetteSpirit extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-04.html" : "33966-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java index 9afea74de2..d41d71d6e1 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java @@ -67,7 +67,9 @@ public final class Q10763_TerrifyingChertuba extends Quest switch (event) { case "33966-02.htm": + { break; + } case "33966-03.htm": { qs.startQuest(); @@ -84,7 +86,9 @@ public final class Q10763_TerrifyingChertuba extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -98,14 +102,20 @@ public final class Q10763_TerrifyingChertuba extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-04.html" : "33966-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java index a774df3136..b9c000b96a 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java @@ -75,7 +75,9 @@ public final class Q10764_FreeSpirit extends Quest switch (event) { case "33966-02.htm": + { break; + } case "33966-03.htm": { qs.startQuest(); @@ -94,7 +96,9 @@ public final class Q10764_FreeSpirit extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -110,14 +114,20 @@ public final class Q10764_FreeSpirit extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-04.html" : "33966-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java index c0643f0fb8..9894acae60 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java @@ -71,7 +71,9 @@ public final class Q10769_LettersFromTheQueenCrumaTowerPart1 extends LetterQuest { case "30070-02.html": case "30673-02.html": + { break; + } case "30070-03.html": { if (qs.isCond(1)) @@ -96,7 +98,9 @@ public final class Q10769_LettersFromTheQueenCrumaTowerPart1 extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java index 1b83618faa..c8184c680d 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java @@ -76,7 +76,9 @@ public final class Q10770_InSearchOfTheGrail extends Quest case "30673-02.htm": case "30673-03.htm": case "30673-04.htm": + { break; + } case "30673-05.htm": { qs.startQuest(); @@ -104,7 +106,9 @@ public final class Q10770_InSearchOfTheGrail extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -120,8 +124,10 @@ public final class Q10770_InSearchOfTheGrail extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30673-01.htm"; break; + } case State.STARTED: { if (qs.isCond(1)) @@ -135,8 +141,10 @@ public final class Q10770_InSearchOfTheGrail extends Quest break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted()) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java index 7ef68136da..e9716c0a3b 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java @@ -77,7 +77,9 @@ public final class Q10772_ReportsFromCrumaTowerPart1 extends Quest case "30484-04.htm": case "30484-05.htm": case "33991-02.html": + { break; + } case "30484-06.htm": { qs.startQuest(); @@ -116,7 +118,9 @@ public final class Q10772_ReportsFromCrumaTowerPart1 extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -132,14 +136,20 @@ public final class Q10772_ReportsFromCrumaTowerPart1 extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30484-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "30484-07.html" : "30484-08.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java index d346a9c5e2..8df276a587 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java @@ -70,7 +70,9 @@ public final class Q10774_LettersFromTheQueenCrumaTowerPart2 extends LetterQuest { case "30070-02.html": case "30487-02.html": + { break; + } case "30070-03.html": { if (qs.isCond(1)) @@ -94,7 +96,9 @@ public final class Q10774_LettersFromTheQueenCrumaTowerPart2 extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java index 12d96acffc..ed005274ec 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java @@ -80,7 +80,9 @@ public final class Q10775_InSearchOfAnAncientGiant extends Quest case "30487-04.htm": case "30485-02.html": case "30485-03.html": + { break; + } case "30487-05.htm": { qs.startQuest(); @@ -98,7 +100,9 @@ public final class Q10775_InSearchOfAnAncientGiant extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -114,17 +118,23 @@ public final class Q10775_InSearchOfAnAncientGiant extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30487-01.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "30487-06.html"; } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(2)) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java index 9fb07b0de2..1f987787b0 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java @@ -85,7 +85,9 @@ public final class Q10776_TheWrathOfTheGiants extends Quest case "33992-02.html": case "33992-03.html": case "30485-07.html": + { break; + } case "30485-03.htm": { qs.startQuest(); @@ -144,7 +146,9 @@ public final class Q10776_TheWrathOfTheGiants extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -159,28 +163,38 @@ public final class Q10776_TheWrathOfTheGiants extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30485-01.htm"; break; + } case State.STARTED: { switch (qs.getCond()) { case 1: + { htmltext = "30485-04.html"; break; + } case 2: case 3: + { htmltext = "30485-05.html"; break; + } case 4: + { htmltext = "30485-06.html"; break; + } } break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted()) @@ -192,8 +206,10 @@ public final class Q10776_TheWrathOfTheGiants extends Quest case 1: case 2: case 3: + { htmltext = "32366-01.html"; break; + } } } else if (npc.isScriptValue(player.getObjectId()) && (qs.isCond(2) || qs.isCond(3))) @@ -276,7 +292,9 @@ public final class Q10776_TheWrathOfTheGiants extends Quest break; } default: + { super.onTimerEvent(event, params, npc, player); + } } } } \ No newline at end of file diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java index 9171e098af..631a337d75 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java @@ -77,7 +77,9 @@ public final class Q10777_ReportsFromCrumaTowerPart2 extends Quest case "30485-04.htm": case "30485-05.htm": case "33991-02.html": + { break; + } case "30485-06.htm": { qs.startQuest(); @@ -118,7 +120,9 @@ public final class Q10777_ReportsFromCrumaTowerPart2 extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -134,14 +138,20 @@ public final class Q10777_ReportsFromCrumaTowerPart2 extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30485-01.htm"; break; + } case State.STARTED: + { htmltext = qs.isCond(1) ? "30485-07.html" : "30485-08.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java index a17aa358b1..ed2ef3824a 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java @@ -70,7 +70,9 @@ public final class Q10779_LettersFromTheQueenSeaOfSpores extends LetterQuest { case "30191-02.html": case "33845-02.html": + { break; + } case "30191-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10779_LettersFromTheQueenSeaOfSpores extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java index a62e2194f4..09fe203bdb 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java @@ -79,7 +79,9 @@ public final class Q10780_AWeakenedBarrier extends Quest { case "33845-04.htm": case "33845-05.htm": + { break; + } case "33845-06.htm": { qs.startQuest(); @@ -97,7 +99,9 @@ public final class Q10780_AWeakenedBarrier extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -113,17 +117,23 @@ public final class Q10780_AWeakenedBarrier extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33845-03.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "33845-07.html"; } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted()) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java index 274b59789d..cc3b5846cb 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java @@ -74,7 +74,9 @@ public final class Q10781_IngredientsToEnforcements extends Quest { case "33846-03.htm": case "33846-04.htm": + { break; + } case "33846-05.htm": { qs.startQuest(); @@ -92,7 +94,9 @@ public final class Q10781_IngredientsToEnforcements extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -106,14 +110,20 @@ public final class Q10781_IngredientsToEnforcements extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33846-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33846-06.html" : "33846-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java index 24f6d643db..82f6bcc4a0 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java @@ -70,7 +70,9 @@ public final class Q10782_LettersFromTheQueenForsakenPlains extends LetterQuest { case "30857-02.html": case "33866-02.html": + { break; + } case "30857-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10782_LettersFromTheQueenForsakenPlains extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java index e03931eeac..c4553f9101 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java @@ -92,7 +92,9 @@ public final class Q10783_TracesOfAnAmbush extends Quest { case "33866-03.htm": case "33866-04.htm": + { break; + } case "33866-05.htm": { qs.startQuest(); @@ -107,7 +109,9 @@ public final class Q10783_TracesOfAnAmbush extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -121,14 +125,20 @@ public final class Q10783_TracesOfAnAmbush extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33866-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33866-06.html" : "33866-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java index d4525f3cf2..c248da039f 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java @@ -76,10 +76,14 @@ public final class Q10784_TheBrokenDevice extends Quest { case "33866-03.htm": case "33866-04.htm": + { break; + } case "33866-05.htm": + { qs.startQuest(); break; + } case "33866-08.html": { if (qs.isCond(2)) @@ -92,7 +96,9 @@ public final class Q10784_TheBrokenDevice extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -106,14 +112,20 @@ public final class Q10784_TheBrokenDevice extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33866-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33866-06.html" : "33866-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java index 2bed778d1e..95beb05e72 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java @@ -70,7 +70,9 @@ public final class Q10785_LettersFromTheQueenFieldsOfMassacre extends LetterQues { case "30857-02.html": case "33867-02.html": + { break; + } case "30857-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10785_LettersFromTheQueenFieldsOfMassacre extends LetterQues break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java index 1ee857f102..69ee846d25 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java @@ -87,10 +87,14 @@ public final class Q10786_ResidentProblemSolver extends Quest { case "33867-03.htm": case "33867-04.htm": + { break; + } case "33867-05.htm": + { qs.startQuest(); break; + } case "33867-08.html": { if (qs.isCond(2)) @@ -106,7 +110,9 @@ public final class Q10786_ResidentProblemSolver extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -120,14 +126,20 @@ public final class Q10786_ResidentProblemSolver extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33867-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33867-06.html" : "33867-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java index 5d877b43df..db06dd5383 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java @@ -72,10 +72,14 @@ public final class Q10787_ASpyMission extends Quest { case "33867-03.htm": case "33867-04.htm": + { break; + } case "33867-05.htm": + { qs.startQuest(); break; + } case "33994-02.html": { if (qs.isCond(1)) @@ -110,7 +114,9 @@ public final class Q10787_ASpyMission extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -126,14 +132,20 @@ public final class Q10787_ASpyMission extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33867-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33867-06.html" : "33867-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java index 00550e18a2..dcc6dd467d 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java @@ -70,7 +70,9 @@ public final class Q10789_LettersFromTheQueenSwampOfScreams extends LetterQuest { case "31328-02.html": case "33847-02.html": + { break; + } case "31328-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10789_LettersFromTheQueenSwampOfScreams extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java index bd9d72fc8e..c1d885ae4b 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java @@ -70,7 +70,9 @@ public final class Q10792_LettersFromTheQueenForestOfTheDead extends LetterQuest { case "31328-02.html": case "33849-02.html": + { break; + } case "31328-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10792_LettersFromTheQueenForestOfTheDead extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java index f2b84840e3..f37c466a81 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java @@ -85,10 +85,14 @@ public final class Q10793_SaveTheSouls extends Quest { case "33849-03.htm": case "33849-04.htm": + { break; + } case "33849-05.htm": + { qs.startQuest(); break; + } case "33849-08.html": { if (qs.isCond(2)) @@ -104,7 +108,9 @@ public final class Q10793_SaveTheSouls extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -118,14 +124,20 @@ public final class Q10793_SaveTheSouls extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33849-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33849-06.html" : "33849-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java index 1246d1204e..8f320c15d9 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java @@ -241,43 +241,59 @@ public final class AirShipGludioGracia extends AbstractNpcAI implements Runnable switch (_cycle) { case 0: + { broadcastInGludio(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_THAT_FLIES_TO_THE_GRACIA_CONTINENT_HAS_DEPARTED); _ship.setInDock(0); _ship.executePath(GLUDIO_TO_WARPGATE); break; + } case 1: + { // _ship.teleToLocation(-167874, 256731, -509, 41035, false); _ship.setOustLoc(OUST_GRACIA); ThreadPoolManager.schedule(this, 5000); break; + } case 2: + { _ship.executePath(WARPGATE_TO_GRACIA); break; + } case 3: + { broadcastInGracia(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_HAS_ARRIVED_IT_WILL_DEPART_FOR_THE_ADEN_CONTINENT_IN_1_MINUTE); _ship.setInDock(GRACIA_DOCK_ID); _ship.oustPlayers(); ThreadPoolManager.schedule(this, 60000); break; + } case 4: + { broadcastInGracia(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_THAT_FLIES_TO_THE_ADEN_CONTINENT_HAS_DEPARTED); _ship.setInDock(0); _ship.executePath(GRACIA_TO_WARPGATE); break; + } case 5: + { // _ship.teleToLocation(-157261, 255664, 221, 64781, false); _ship.setOustLoc(OUST_GLUDIO); ThreadPoolManager.schedule(this, 5000); break; + } case 6: + { _ship.executePath(WARPGATE_TO_GLUDIO); break; + } case 7: + { broadcastInGludio(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_HAS_ARRIVED_IT_WILL_DEPART_FOR_THE_GRACIA_CONTINENT_IN_1_MINUTE); _ship.setInDock(GLUDIO_DOCK_ID); _ship.oustPlayers(); ThreadPoolManager.schedule(this, 60000); break; + } } _cycle++; if (_cycle > 7) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatGludinRune.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatGludinRune.java index 746b80fafd..67e37b7006 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatGludinRune.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatGludinRune.java @@ -174,18 +174,25 @@ public class BoatGludinRune implements Runnable switch (_cycle) { case 0: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVE_GLUDIN5); ThreadPoolManager.schedule(this, 240000); break; + } case 1: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVE_GLUDIN1); ThreadPoolManager.schedule(this, 40000); break; + } case 2: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVE_GLUDIN0); ThreadPoolManager.schedule(this, 20000); break; + } case 3: + { BoatManager.getInstance().dockShip(BoatManager.GLUDIN_HARBOR, false); BoatManager.getInstance().broadcastPackets(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVING_GLUDIN); _boat.broadcastPacket(GLUDIN_SOUND); @@ -193,22 +200,32 @@ public class BoatGludinRune implements Runnable _boat.executePath(GLUDIN_TO_RUNE); ThreadPoolManager.schedule(this, 250000); break; + } case 4: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE15); ThreadPoolManager.schedule(this, 300000); break; + } case 5: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE10); ThreadPoolManager.schedule(this, 300000); break; + } case 6: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE5); ThreadPoolManager.schedule(this, 240000); break; + } case 7: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE1); break; + } case 8: + { if (BoatManager.getInstance().dockBusy(BoatManager.RUNE_HARBOR)) { if (_shoutCount == 0) @@ -227,25 +244,35 @@ public class BoatGludinRune implements Runnable } _boat.executePath(RUNE_DOCK); break; + } case 9: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, true); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVED_AT_RUNE, ARRIVED_AT_RUNE_2); _boat.broadcastPacket(RUNE_SOUND); ThreadPoolManager.schedule(this, 300000); break; + } case 10: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVE_RUNE5); ThreadPoolManager.schedule(this, 240000); break; + } case 11: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVE_RUNE1); ThreadPoolManager.schedule(this, 40000); break; + } case 12: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVE_RUNE0); ThreadPoolManager.schedule(this, 20000); break; + } case 13: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, false); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVING_RUNE); _boat.broadcastPacket(RUNE_SOUND); @@ -253,22 +280,32 @@ public class BoatGludinRune implements Runnable _boat.executePath(RUNE_TO_GLUDIN); ThreadPoolManager.schedule(this, 60000); break; + } case 14: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN15); ThreadPoolManager.schedule(this, 300000); break; + } case 15: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN10); ThreadPoolManager.schedule(this, 300000); break; + } case 16: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN5); ThreadPoolManager.schedule(this, 240000); break; + } case 17: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN1); break; + } case 18: + { if (BoatManager.getInstance().dockBusy(BoatManager.GLUDIN_HARBOR)) { if (_shoutCount == 0) @@ -287,12 +324,15 @@ public class BoatGludinRune implements Runnable } _boat.executePath(GLUDIN_DOCK); break; + } case 19: + { BoatManager.getInstance().dockShip(BoatManager.GLUDIN_HARBOR, true); BoatManager.getInstance().broadcastPackets(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVED_AT_GLUDIN, ARRIVED_AT_GLUDIN_2); _boat.broadcastPacket(GLUDIN_SOUND); ThreadPoolManager.schedule(this, 300000); break; + } } _shoutCount = 0; _cycle++; diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatInnadrilTour.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatInnadrilTour.java index 0c6be76018..b2462e8c54 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatInnadrilTour.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatInnadrilTour.java @@ -117,46 +117,66 @@ public class BoatInnadrilTour implements Runnable switch (_cycle) { case 0: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, LEAVE_INNADRIL5); ThreadPoolManager.schedule(this, 240000); break; + } case 1: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, LEAVE_INNADRIL1); ThreadPoolManager.schedule(this, 40000); break; + } case 2: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, LEAVE_INNADRIL0); ThreadPoolManager.schedule(this, 20000); break; + } case 3: + { BoatManager.getInstance().broadcastPackets(DOCK, DOCK, LEAVING_INNADRIL, INNADRIL_SOUND); _boat.payForRide(0, 1, 107092, 219098, -3952); _boat.executePath(TOUR); ThreadPoolManager.schedule(this, 650000); break; + } case 4: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL20); ThreadPoolManager.schedule(this, 300000); break; + } case 5: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL15); ThreadPoolManager.schedule(this, 300000); break; + } case 6: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL10); ThreadPoolManager.schedule(this, 300000); break; + } case 7: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL5); ThreadPoolManager.schedule(this, 240000); break; + } case 8: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL1); break; + } case 9: + { BoatManager.getInstance().broadcastPackets(DOCK, DOCK, ARRIVED_AT_INNADRIL, INNADRIL_SOUND); ThreadPoolManager.schedule(this, 300000); break; + } } _cycle++; if (_cycle > 9) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatRunePrimeval.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatRunePrimeval.java index 7359b6bdec..fee83279f1 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatRunePrimeval.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/vehicles/BoatRunePrimeval.java @@ -110,21 +110,28 @@ public class BoatRunePrimeval implements Runnable switch (_cycle) { case 0: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, false); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], PRIMEVAL_DOCK, LEAVING_RUNE, RUNE_SOUND); _boat.payForRide(8925, 1, 34513, -38009, -3640); _boat.executePath(RUNE_TO_PRIMEVAL); break; + } case 1: + { BoatManager.getInstance().broadcastPackets(PRIMEVAL_DOCK, RUNE_DOCK[0], ARRIVED_AT_PRIMEVAL, ARRIVED_AT_PRIMEVAL_2, PRIMEVAL_SOUND); ThreadPoolManager.schedule(this, 180000); break; + } case 2: + { BoatManager.getInstance().broadcastPackets(PRIMEVAL_DOCK, RUNE_DOCK[0], LEAVING_PRIMEVAL, PRIMEVAL_SOUND); _boat.payForRide(8924, 1, 10447, -24982, -3664); _boat.executePath(PRIMEVAL_TO_RUNE); break; + } case 3: + { if (BoatManager.getInstance().dockBusy(BoatManager.RUNE_HARBOR)) { if (_shoutCount == 0) @@ -143,11 +150,14 @@ public class BoatRunePrimeval implements Runnable } _boat.executePath(RUNE_DOCK); break; + } case 4: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, true); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], PRIMEVAL_DOCK, ARRIVED_AT_RUNE, ARRIVED_AT_RUNE_2, RUNE_SOUND); ThreadPoolManager.schedule(this, 180000); break; + } } _shoutCount = 0; _cycle++; diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/commons/util/Rnd.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/commons/util/Rnd.java index ddef918e21..8570d4598a 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/commons/util/Rnd.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/commons/util/Rnd.java @@ -355,16 +355,21 @@ public final class Rnd switch (type) { case UNSECURE_ATOMIC: + { return new RandomContainer(new Random()); - + } case UNSECURE_VOLATILE: + { return new RandomContainer(new NonAtomicRandom()); - + } case UNSECURE_THREAD_LOCAL: + { return new RandomContainer(new ThreadLocalRandom()); - + } case SECURE: + { return new RandomContainer(new SecureRandom()); + } } throw new IllegalArgumentException(); diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/FortUpdater.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/FortUpdater.java index 863af2077b..b38bb8eb81 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/FortUpdater.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/FortUpdater.java @@ -58,6 +58,7 @@ public class FortUpdater implements Runnable switch (_updaterType) { case PERIODIC_UPDATE: + { _runCount++; if ((_fort.getOwnerClan() == null) || (_fort.getOwnerClan() != _clan)) { @@ -81,7 +82,9 @@ public class FortUpdater implements Runnable } _fort.saveFortVariables(); break; + } case MAX_OWN_TIME: + { if ((_fort.getOwnerClan() == null) || (_fort.getOwnerClan() != _clan)) { return; @@ -92,6 +95,7 @@ public class FortUpdater implements Runnable _fort.setFortState(0, 0); } break; + } } } catch (Exception e) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/LoginServerThread.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/LoginServerThread.java index 14b3f415f9..257cddeda9 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/LoginServerThread.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/LoginServerThread.java @@ -208,6 +208,7 @@ public class LoginServerThread extends Thread switch (packetType) { case 0x00: + { final InitLS init = new InitLS(incoming); if (init.getRevision() != REVISION) { @@ -236,12 +237,16 @@ public class LoginServerThread extends Thread _blowfish = new NewCrypt(blowfishKey); sendPacket(new AuthRequest(_requestID, _acceptAlternate, _hexID, _gamePort, _reserveHost, _maxPlayer, _subnets, _hosts)); break; + } case 0x01: + { final LoginServerFail lsf = new LoginServerFail(incoming); LOGGER.info(getClass().getSimpleName() + ": Damn! Registeration Failed: " + lsf.getReasonString()); // login will close the connection here break; + } case 0x02: + { final AuthResponse aresp = new AuthResponse(incoming); final int serverID = aresp.getServerId(); _serverName = aresp.getServerName(); @@ -288,7 +293,9 @@ public class LoginServerThread extends Thread sendPacket(new PlayerInGame(playerList)); } break; + } case 0x03: + { final PlayerAuthResponse par = new PlayerAuthResponse(incoming); final String account = par.getAccount(); WaitingClient wcToRemove = null; @@ -324,17 +331,24 @@ public class LoginServerThread extends Thread _waitingClients.remove(wcToRemove); } break; + } case 0x04: + { final KickPlayer kp = new KickPlayer(incoming); doKickPlayer(kp.getAccount()); break; + } case 0x05: + { final RequestCharacters rc = new RequestCharacters(incoming); getCharsOnServer(rc.getAccount()); break; + } case 0x06: + { new ChangePasswordResponse(incoming); break; + } } } } @@ -721,31 +735,45 @@ public class LoginServerThread extends Thread switch (status) { case ServerStatus.STATUS_AUTO: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_AUTO); _status = status; break; + } case ServerStatus.STATUS_DOWN: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_DOWN); _status = status; break; + } case ServerStatus.STATUS_FULL: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_FULL); _status = status; break; + } case ServerStatus.STATUS_GM_ONLY: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_GM_ONLY); _status = status; break; + } case ServerStatus.STATUS_GOOD: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_GOOD); _status = status; break; + } case ServerStatus.STATUS_NORMAL: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_NORMAL); _status = status; break; + } default: + { throw new IllegalArgumentException("Status does not exists:" + status); + } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java index 82b4667113..a14fe8797e 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java @@ -133,14 +133,20 @@ public class DoppelgangerAI extends L2CharacterAI switch (getIntention()) { case AI_INTENTION_ATTACK: + { thinkAttack(); break; + } case AI_INTENTION_CAST: + { thinkCast(); break; + } case AI_INTENTION_INTERACT: + { thinkInteract(); break; + } } } finally @@ -173,7 +179,9 @@ public class DoppelgangerAI extends L2CharacterAI case AI_INTENTION_IDLE: case AI_INTENTION_MOVE_TO: case AI_INTENTION_PICK_UP: + { getActor().followSummoner(_startFollow); + } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java index cbfe69dc4b..57c95bd40e 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java @@ -1094,14 +1094,20 @@ public class L2AttackableAI extends L2CharacterAI implements Runnable switch (getIntention()) { case AI_INTENTION_ACTIVE: + { thinkActive(); break; + } case AI_INTENTION_ATTACK: + { thinkAttack(); break; + } case AI_INTENTION_CAST: + { thinkCast(); break; + } } } catch (Exception e) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java index e7ca4d2583..f63498b55a 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java @@ -129,8 +129,10 @@ public class NpcData implements IGameXmlReader } case "race": case "sex": + { set.set(npc_node.getNodeName(), npc_node.getTextContent().toUpperCase()); break; + } case "equipment": { set.set("chestId", parseInteger(attrs, "chest")); @@ -218,23 +220,35 @@ public class NpcData implements IGameXmlReader switch (attackAttributeType.toUpperCase()) { case "FIRE": + { set.set("baseFire", parseInteger(attrs, "value")); break; + } case "WATER": + { set.set("baseWater", parseInteger(attrs, "value")); break; + } case "WIND": + { set.set("baseWind", parseInteger(attrs, "value")); break; + } case "EARTH": + { set.set("baseEarth", parseInteger(attrs, "value")); break; + } case "DARK": + { set.set("baseDark", parseInteger(attrs, "value")); break; + } case "HOLY": + { set.set("baseHoly", parseInteger(attrs, "value")); break; + } } break; } @@ -279,8 +293,10 @@ public class NpcData implements IGameXmlReader break; } case "hit_time": + { set.set("hit_time", npc_node.getTextContent()); // TODO: Implement me default 600 (value in ms) break; + } } } break; diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java index c42db18ad8..34eb9f0517 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java @@ -1175,41 +1175,65 @@ public final class SkillTreesData implements IGameXmlReader switch (skillType) { case CLASS: + { sl = getClassSkill(id, lvl, player.getClassId()); break; + } case TRANSFORM: + { sl = getTransformSkill(id, lvl); break; + } case FISHING: + { sl = getFishingSkill(id, lvl); break; + } case PLEDGE: + { sl = getPledgeSkill(id, lvl); break; + } case SUBPLEDGE: + { sl = getSubPledgeSkill(id, lvl); break; + } case TRANSFER: + { sl = getTransferSkill(id, lvl, player.getClassId()); break; + } case SUBCLASS: + { sl = getSubClassSkill(id, lvl); break; + } case COLLECT: + { sl = getCollectSkill(id, lvl); break; + } case REVELATION: + { sl = getRevelationSkill(SubclassType.BASECLASS, id, lvl); break; + } case REVELATION_DUALCLASS: + { sl = getRevelationSkill(SubclassType.DUALCLASS, id, lvl); break; + } case ALCHEMY: + { sl = getAlchemySkill(id, lvl); break; + } case DUALCLASS: + { sl = getDualClassSkill(id, lvl); break; + } } return sl; } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/datatables/AugmentationData.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/datatables/AugmentationData.java index 9aee82cb76..2fca501879 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/datatables/AugmentationData.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/datatables/AugmentationData.java @@ -575,19 +575,29 @@ public class AugmentationData switch (lifeStoneGrade) { case AbstractRefinePacket.GRADE_NONE: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_NG_CHANCE; break; + } case AbstractRefinePacket.GRADE_MID: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_MID_CHANCE; break; + } case AbstractRefinePacket.GRADE_HIGH: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_HIGH_CHANCE; break; + } case AbstractRefinePacket.GRADE_TOP: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_TOP_CHANCE; break; + } default: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_NG_CHANCE; + } } int c = Rnd.get(100); diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java index 2e64596385..0b8070e37b 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java @@ -260,6 +260,7 @@ public final class CastleManorManager implements IGameXmlReader, IStorable switch (_mode) { case MODIFIABLE: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_APPROVE_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_APPROVE_MIN); if (_nextModeChange.before(Calendar.getInstance())) @@ -267,14 +268,19 @@ public final class CastleManorManager implements IGameXmlReader, IStorable _nextModeChange.add(Calendar.DATE, 1); } break; + } case MAINTENANCE: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_REFRESH_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_REFRESH_MIN + Config.ALT_MANOR_MAINTENANCE_MIN); break; + } case APPROVED: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_REFRESH_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_REFRESH_MIN); break; + } } // Schedule mode change ThreadPoolManager.schedule(this::changeMode, (_nextModeChange.getTimeInMillis() - System.currentTimeMillis())); diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java index 4f5183877e..c6537d2d80 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java @@ -51,20 +51,28 @@ public final class GraciaSeedsManager switch (seedType) { case SODTYPE: + { // Seed of Destruction GlobalVariablesManager.getInstance().set("SoDState", _SoDState); GlobalVariablesManager.getInstance().set("SoDTiatKilled", _SoDTiatKilled); GlobalVariablesManager.getInstance().set("SoDLSCDate", _SoDLastStateChangeDate.getTimeInMillis()); break; + } case SOITYPE: + { // Seed of Infinity break; + } case SOATYPE: + { // Seed of Annihilation break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown SeedType in SaveData: " + seedType); break; + } } } @@ -89,9 +97,12 @@ public final class GraciaSeedsManager switch (_SoDState) { case 1: + { // do nothing, players should kill Tiat a few times break; + } case 2: + { // Conquest Complete state, if too much time is passed than change to defense state final long timePast = System.currentTimeMillis() - _SoDLastStateChangeDate.getTimeInMillis(); if (timePast >= Config.SOD_STAGE_2_LENGTH) @@ -104,12 +115,17 @@ public final class GraciaSeedsManager ThreadPoolManager.schedule(new UpdateSoDStateTask(), Config.SOD_STAGE_2_LENGTH - timePast); } break; + } case 3: + { // not implemented setSoDState(1, true); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown Seed of Destruction state(" + _SoDState + ")! "); + } } } @@ -177,15 +193,23 @@ public final class GraciaSeedsManager switch (_SoDState) { case 1: + { return -1; + } case 2: + { return ((_SoDLastStateChangeDate.getTimeInMillis() + Config.SOD_STAGE_2_LENGTH) - System.currentTimeMillis()); + } case 3: + { // not implemented yet return -1; + } default: + { // this should not happen! return -1; + } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/TownManager.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/TownManager.java index a39f01d3ca..b0543eb11a 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/TownManager.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/instancemanager/TownManager.java @@ -27,25 +27,45 @@ public final class TownManager switch (townId) { case 912: + { return 1; + } case 916: + { return 2; + } case 918: + { return 3; + } case 922: + { return 4; + } case 924: + { return 5; + } case 926: + { return 6; + } case 1538: + { return 7; + } case 1537: + { return 8; + } case 1714: + { return 9; + } default: + { return 0; + } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2Clan.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2Clan.java index 7b0657bb7e..3cee19c999 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2Clan.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2Clan.java @@ -567,58 +567,86 @@ public class L2Clan implements IIdentifiable, INamable switch (pledgeType) { case 0: + { switch (getLevel()) { case 3: + { limit = 30; break; + } case 2: + { limit = 20; break; + } case 1: + { limit = 15; break; + } case 0: + { limit = 10; break; + } default: + { limit = 40; break; + } } break; + } case -1: + { limit = 20; break; + } case 100: case 200: + { switch (getLevel()) { case 11: + { limit = 30; break; + } default: + { limit = 20; break; + } } break; + } case 1001: case 1002: case 2001: case 2002: + { switch (getLevel()) { case 9: case 10: case 11: + { limit = 25; break; + } default: + { limit = 10; break; + } } break; + } default: + { break; + } } return limit; @@ -1903,23 +1931,37 @@ public class L2Clan implements IIdentifiable, INamable switch (pledgeType) { case SUBUNIT_ACADEMY: + { return 0; + } case SUBUNIT_ROYAL1: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_ROYAL2); break; + } case SUBUNIT_ROYAL2: + { return 0; + } case SUBUNIT_KNIGHT1: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT2); break; + } case SUBUNIT_KNIGHT2: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT3); break; + } case SUBUNIT_KNIGHT3: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT4); break; + } case SUBUNIT_KNIGHT4: + { return 0; + } } } return pledgeType; @@ -2593,6 +2635,7 @@ public class L2Clan implements IIdentifiable, INamable break; } case 5: + { // Upgrade to 6 if ((getReputationScore() >= Config.CLAN_LEVEL_6_COST) && (getMembersCount() >= Config.CLAN_LEVEL_6_REQUIREMENT)) { @@ -2603,8 +2646,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; - + } case 6: + { // Upgrade to 7 if ((getReputationScore() >= Config.CLAN_LEVEL_7_COST) && (getMembersCount() >= Config.CLAN_LEVEL_7_REQUIREMENT)) { @@ -2615,7 +2659,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } case 7: + { // Upgrade to 8 if ((getReputationScore() >= Config.CLAN_LEVEL_8_COST) && (getMembersCount() >= Config.CLAN_LEVEL_8_REQUIREMENT)) { @@ -2626,7 +2672,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } case 8: + { // Upgrade to 9 if ((getReputationScore() >= Config.CLAN_LEVEL_9_COST) && (player.getInventory().getItemByItemId(9910) != null) && (getMembersCount() >= Config.CLAN_LEVEL_9_REQUIREMENT)) { @@ -2645,7 +2693,9 @@ public class L2Clan implements IIdentifiable, INamable } } break; + } case 9: + { // Upgrade to 10 if ((getReputationScore() >= Config.CLAN_LEVEL_10_COST) && (player.getInventory().getItemByItemId(9911) != null) && (getMembersCount() >= Config.CLAN_LEVEL_10_REQUIREMENT)) { @@ -2664,7 +2714,9 @@ public class L2Clan implements IIdentifiable, INamable } } break; + } case 10: + { // Upgrade to 11 if ((getReputationScore() >= Config.CLAN_LEVEL_11_COST) && (getMembersCount() >= Config.CLAN_LEVEL_11_REQUIREMENT)) { @@ -2675,8 +2727,11 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } default: + { return false; + } } if (!increaseClanLevel) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2ClanMember.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2ClanMember.java index df4b387c8c..daef76108a 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2ClanMember.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2ClanMember.java @@ -430,12 +430,15 @@ public class L2ClanMember switch (clan.getLevel()) { case 4: + { if (player.isClanLeader()) { pledgeClass = 3; } break; + } case 5: + { if (player.isClanLeader()) { pledgeClass = 4; @@ -445,17 +448,24 @@ public class L2ClanMember pledgeClass = 2; } break; + } case 6: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 2; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 5; @@ -466,34 +476,48 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 4; break; + } case -1: default: + { pledgeClass = 3; break; + } } } break; + } } break; + } case 7: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 3; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 2; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 7; @@ -504,40 +528,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 6; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 5; break; + } case -1: default: + { pledgeClass = 4; break; + } } } break; + } } break; + } case 8: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 4; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 3; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 8; @@ -548,40 +588,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 7; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 6; break; + } case -1: default: + { pledgeClass = 5; break; + } } } break; + } } break; + } case 9: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 5; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 4; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 9; @@ -592,40 +648,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 8; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 7; break; + } case -1: default: + { pledgeClass = 6; break; + } } } break; + } } break; + } case 10: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 6; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 5; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 10; @@ -636,40 +708,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 9; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 8; break; + } case -1: default: + { pledgeClass = 7; break; + } } } break; + } } break; + } case 11: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 7; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 6; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 11; @@ -680,26 +768,36 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 10; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 9; break; + } case -1: default: + { pledgeClass = 8; break; + } } } break; + } } break; + } default: + { pledgeClass = 1; break; + } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2PetLevelData.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2PetLevelData.java index 306696fabd..43ab57e9ac 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2PetLevelData.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/L2PetLevelData.java @@ -200,17 +200,29 @@ public class L2PetLevelData switch (stat) { case WALK_SPEED: + { return _walkSpeedOnRide; + } case RUN_SPEED: + { return _runSpeedOnRide; + } case SWIM_WALK_SPEED: + { return _slowSwimSpeedOnRide; + } case SWIM_RUN_SPEED: + { return _fastSwimSpeedOnRide; + } case FLY_RUN_SPEED: + { return _slowFlySpeedOnRide; + } case FLY_WALK_SPEED: + { return _fastFlySpeedOnRide; + } } return 0; diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/MobGroup.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/MobGroup.java index 0edde73ed7..88cc4a5599 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/MobGroup.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/MobGroup.java @@ -80,17 +80,29 @@ public final class MobGroup switch (mobGroupAI.getAlternateAI()) { case L2ControllableMobAI.AI_NORMAL: + { return "Idle"; + } case L2ControllableMobAI.AI_FORCEATTACK: + { return "Force Attacking"; + } case L2ControllableMobAI.AI_FOLLOW: + { return "Following"; + } case L2ControllableMobAI.AI_CAST: + { return "Casting"; + } case L2ControllableMobAI.AI_ATTACK_GROUP: + { return "Attacking Group"; + } default: + { return "Idle"; + } } } catch (Exception e) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java index 6b0565d1c0..524b3cdd2f 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java @@ -1518,29 +1518,45 @@ public class L2Attackable extends L2Npc switch (skillId) { case 4303: // Strong type x2 + { count *= 2; break; + } case 4304: // Strong type x3 + { count *= 3; break; + } case 4305: // Strong type x4 + { count *= 4; break; + } case 4306: // Strong type x5 + { count *= 5; break; + } case 4307: // Strong type x6 + { count *= 6; break; + } case 4308: // Strong type x7 + { count *= 7; break; + } case 4309: // Strong type x8 + { count *= 8; break; + } case 4310: // Strong type x9 + { count *= 9; break; + } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java index ece9ae1c59..ca2c47d35e 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -423,16 +423,20 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe switch (zone) { case PVP: + { if ((instance != null) && instance.isPvP()) { return true; } return (_zones[ZoneId.PVP.ordinal()] > 0) && (_zones[ZoneId.PEACE.ordinal()] == 0); + } case PEACE: + { if ((instance != null) && instance.isPvP()) { return false; } + } } return _zones[zone.ordinal()] > 0; } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Npc.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Npc.java index 018b30b595..744af6f9da 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Npc.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Npc.java @@ -750,6 +750,7 @@ public class L2Npc extends L2Character switch (npcId) { case 31688: + { if (player.isNoble()) { filename = Olympiad.OLYMPIAD_HTML_PATH + "noble_main.htm"; @@ -759,11 +760,13 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } case 31690: case 31769: case 31770: case 31771: case 31772: + { if (player.isHero() || player.isNoble()) { filename = Olympiad.OLYMPIAD_HTML_PATH + "hero_main.htm"; @@ -773,7 +776,9 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } case 36402: + { if (player.getOlympiadBuffCount() > 0) { filename = (player.getOlympiadBuffCount() == Config.ALT_OLY_MAX_BUFFS ? Olympiad.OLYMPIAD_HTML_PATH + "olympiad_buffs.htm" : Olympiad.OLYMPIAD_HTML_PATH + "olympiad_5buffs.htm"); @@ -783,7 +788,9 @@ public class L2Npc extends L2Character filename = Olympiad.OLYMPIAD_HTML_PATH + "olympiad_nobuffs.htm"; } break; + } case 30298: // Blacksmith Pinter + { if (player.isAcademyMember()) { filename = (getHtmlPath(npcId, 1)); @@ -793,7 +800,9 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } default: + { if (((npcId >= 31093) && (npcId <= 31094)) || ((npcId >= 31172) && (npcId <= 31201)) || ((npcId >= 31239) && (npcId <= 31254))) { return; @@ -801,6 +810,7 @@ public class L2Npc extends L2Character // Get the text of the selected HTML file in function of the npcId and of the page number filename = (getHtmlPath(npcId, val)); break; + } } // Send a Server->Client NpcHtmlMessage containing the text of the L2NpcInstance to the L2PcInstance diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java index 56c68106bc..4f7386ef47 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java @@ -128,18 +128,24 @@ public class L2FortCommanderInstance extends L2DefenderInstance switch (spawn2.getMessageId()) { case 1: + { npcString = NpcStringId.ATTACKING_THE_ENEMY_S_REINFORCEMENTS_IS_NECESSARY_TIME_TO_DIE; break; + } case 2: + { if (attacker.isSummon()) { attacker = ((L2Summon) attacker).getOwner(); } npcString = NpcStringId.EVERYONE_CONCENTRATE_YOUR_ATTACKS_ON_S1_SHOW_THE_ENEMY_YOUR_RESOLVE; break; + } case 3: + { npcString = NpcStringId.FIRE_SPIRIT_UNLEASH_YOUR_POWER_BURN_THE_ENEMY; break; + } } if (npcString != null) { diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java index 65524c5221..da8d959b4a 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java @@ -364,11 +364,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 300: + { cost = Config.FS_HPREG1_FEE; break; + } default: // 400 + { cost = Config.FS_HPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_HPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); @@ -388,11 +392,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 40: + { cost = Config.FS_MPREG1_FEE; break; + } default: // 50 + { cost = Config.FS_MPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_MPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Provides additional MP recovery for clan members in the fortress." + percent + "%"); @@ -411,11 +419,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 45: + { cost = Config.FS_EXPREG1_FEE; break; + } default: // 50 + { cost = Config.FS_EXPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_EXPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Restores the Exp of any clan member who is resurrected in the fortress." + percent + "%"); @@ -449,15 +461,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 300: + { fee = Config.FS_HPREG1_FEE; break; + } default: // 400 + { fee = Config.FS_HPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_HP, percent, fee, Config.FS_HPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_HP) == null))) { @@ -494,15 +512,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 40: + { fee = Config.FS_MPREG1_FEE; break; + } default: // 50 + { fee = Config.FS_MPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_MP, percent, fee, Config.FS_MPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_MP) == null))) { @@ -539,15 +563,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 45: + { fee = Config.FS_EXPREG1_FEE; break; + } default: // 50 + { fee = Config.FS_EXPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_EXP, percent, fee, Config.FS_EXPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_EXP) == null))) { @@ -639,11 +669,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (stage) { case 1: + { cost = Config.FS_SUPPORT1_FEE; break; + } default: + { cost = Config.FS_SUPPORT2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_SUPPORT_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Enables the use of supplementary magic."); @@ -662,11 +696,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (stage) { case 1: + { cost = Config.FS_TELE1_FEE; break; + } default: + { cost = Config.FS_TELE2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_TELE_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Teleports clan members in a fort to the target Stage " + stage + " staging area"); @@ -700,15 +738,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (lvl) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 1: + { fee = Config.FS_TELE1_FEE; break; + } default: + { fee = Config.FS_TELE2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_TELEPORT, lvl, fee, Config.FS_TELE_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_TELEPORT) == null))) { @@ -745,15 +789,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (lvl) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 1: + { fee = Config.FS_SUPPORT1_FEE; break; + } default: + { fee = Config.FS_SUPPORT2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_SUPPORT, lvl, fee, Config.FS_SUPPORT_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_SUPPORT) == null))) { diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java index ac058e3da4..7f5603ffd1 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java @@ -964,32 +964,50 @@ public final class L2PcInstance extends L2Playable switch (i) { case 0: + { result |= RelationChanged.RELATION_PARTYLEADER; // 0x10 break; + } case 1: + { result |= RelationChanged.RELATION_PARTY4; // 0x8 break; + } case 2: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY2 + RelationChanged.RELATION_PARTY1; // 0x7 break; + } case 3: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY2; // 0x6 break; + } case 4: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY1; // 0x5 break; + } case 5: + { result |= RelationChanged.RELATION_PARTY3; // 0x4 break; + } case 6: + { result |= RelationChanged.RELATION_PARTY2 + RelationChanged.RELATION_PARTY1; // 0x3 break; + } case 7: + { result |= RelationChanged.RELATION_PARTY2; // 0x2 break; + } case 8: + { result |= RelationChanged.RELATION_PARTY1; // 0x1 break; + } } } } @@ -12107,17 +12125,25 @@ public final class L2PcInstance extends L2Playable switch (getPrivateStoreType()) { case SELL: + { activeChar.sendPacket(new PrivateStoreMsgSell(this)); break; + } case PACKAGE_SELL: + { activeChar.sendPacket(new ExPrivateStoreSetWholeMsg(this)); break; + } case BUY: + { activeChar.sendPacket(new PrivateStoreMsgBuy(this)); break; + } case MANUFACTURE: + { activeChar.sendPacket(new RecipeShopMsg(this)); break; + } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java index b32df6283d..8db80cb5a0 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java @@ -72,14 +72,20 @@ public class L2PetManagerInstance extends L2MerchantInstance switch (val) { case 1: + { exchange(player, 7585, 6650); break; + } case 2: + { exchange(player, 7583, 6648); break; + } case 3: + { exchange(player, 7584, 6649); break; + } } return; } @@ -93,20 +99,30 @@ public class L2PetManagerInstance extends L2MerchantInstance // Info evolve(player, "curent pet summon item", "new pet summon item", "lvl required to evolve") // To ignore evolve just put value 0 where do you like example: evolve(player, 0, 9882, 55); case 1: + { ok = Evolve.doEvolve(player, this, 2375, 9882, 55); break; + } case 2: + { ok = Evolve.doEvolve(player, this, 9882, 10426, 70); break; + } case 3: + { ok = Evolve.doEvolve(player, this, 6648, 10311, 55); break; + } case 4: + { ok = Evolve.doEvolve(player, this, 6650, 10313, 55); break; + } case 5: + { ok = Evolve.doEvolve(player, this, 6649, 10312, 55); break; + } } if (!ok) { @@ -125,20 +141,30 @@ public class L2PetManagerInstance extends L2MerchantInstance { // Info evolve(player, "curent pet summon item", "new pet summon item", "lvl required to evolve") case 1: + { ok = Evolve.doRestore(player, this, 10307, 9882, 55); break; + } case 2: + { ok = Evolve.doRestore(player, this, 10611, 10426, 70); break; + } case 3: + { ok = Evolve.doRestore(player, this, 10308, 4422, 55); break; + } case 4: + { ok = Evolve.doRestore(player, this, 10309, 4423, 55); break; + } case 5: + { ok = Evolve.doRestore(player, this, 10310, 4424, 55); break; + } } if (!ok) { diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java index 9896791a73..d398e89c03 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java @@ -164,6 +164,7 @@ public class L2RaceManagerInstance extends L2Npc { case 816: // SystemMessageId.TICKETS_ARE_NOW_AVAILABLE_FOR_MONSTER_RACE_S1 case 817: // SystemMessageId.NOW_SELLING_TICKETS_FOR_MONSTER_RACE_S1 + { if (_state != ACCEPTING_BETS) {// LOGGER.info("Race Initializing"); _state = ACCEPTING_BETS; @@ -171,9 +172,11 @@ public class L2RaceManagerInstance extends L2Npc } // else{LOGGER.info("Race open");} sm.addInt(_raceNumber); break; + } case 818: // SystemMessageId.TICKET_SALES_FOR_THE_MONSTER_RACE_WILL_END_IN_S1_MINUTE_S case 820: // SystemMessageId.MONSTER_RACE_S2_WILL_BEGIN_IN_S1_MINUTE_S case 823: // SystemMessageId.THE_RACE_WILL_BEGIN_IN_S1_SECOND_S + { sm.addInt(_minutes); if (type.getId() == 820) { @@ -181,24 +184,31 @@ public class L2RaceManagerInstance extends L2Npc } _minutes--; break; + } case 819: // SystemMessageId.TICKETS_SALES_ARE_CLOSED_FOR_MONSTER_RACE_S1_ODDS_ARE_POSTED + { // LOGGER.info("Sales closed"); sm.addInt(_raceNumber); _state = WAITING; _minutes = 2; break; + } case 821: // SystemMessageId.MONSTER_RACE_S1_WILL_BEGIN_IN_30_SECONDS case 822: // SystemMessageId.MONSTER_RACE_S1_IS_ABOUT_TO_BEGIN_COUNTDOWN_IN_FIVE_SECONDS case 825: // SystemMessageId.MONSTER_RACE_S1_IS_FINISHED + { sm.addInt(_raceNumber); _minutes = 5; break; + } case 826: // SystemMessageId.FIRST_PRIZE_GOES_TO_THE_PLAYER_IN_LANE_S1_SECOND_PRIZE_GOES_TO_THE_PLAYER_IN_LANE_S2 + { // LOGGER.info("Placing"); _state = RACE_END; sm.addInt(MonsterRace.getInstance().getFirstPlace()); sm.addInt(MonsterRace.getInstance().getSecondPlace()); break; + } } // _logn.info("Counter: "+minutes); // LOGGER.info("State: "+state); diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java index 2e9d457f78..acf49aff2c 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java @@ -349,12 +349,14 @@ public final class L2TeleporterInstance extends L2Npc { case 32534: // Seed of Infinity case 32539: + { if (player.isFlyingMounted()) { player.sendPacket(SystemMessageId.YOU_CANNOT_ENTER_A_SEED_WHILE_IN_A_FLYING_TRANSFORMATION_STATE); return; } break; + } } if (st.countTokens() <= 0) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index 63eade4a8e..702435946f 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -506,19 +506,33 @@ public class CharStat switch (attackAttribute) { case FIRE: + { return (int) getValue(Stats.FIRE_POWER); + } case WATER: + { return (int) getValue(Stats.WATER_POWER); + } case WIND: + { return (int) getValue(Stats.WIND_POWER); + } case EARTH: + { return (int) getValue(Stats.EARTH_POWER); + } case HOLY: + { return (int) getValue(Stats.HOLY_POWER); + } case DARK: + { return (int) getValue(Stats.DARK_POWER); + } default: + { return 0; + } } } @@ -527,19 +541,33 @@ public class CharStat switch (defenseAttribute) { case FIRE: + { return (int) getValue(Stats.FIRE_RES); + } case WATER: + { return (int) getValue(Stats.WATER_RES); + } case WIND: + { return (int) getValue(Stats.WIND_RES); + } case EARTH: + { return (int) getValue(Stats.EARTH_RES); + } case HOLY: + { return (int) getValue(Stats.HOLY_RES); + } case DARK: + { return (int) getValue(Stats.DARK_RES); + } default: + { return (int) getValue(Stats.BASE_ATTRIBUTE_RES); + } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java index 2b1c51149c..d90e834d7c 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java @@ -59,7 +59,9 @@ public class ConditionGameTime extends Condition switch (_check) { case NIGHT: + { return GameTimeController.getInstance().isNight() == _required; + } } return !_required; } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java index aa85ba6f4a..51b5921818 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java @@ -59,17 +59,29 @@ public class ConditionPlayerBaseStats extends Condition switch (_stat) { case Int: + { return player.getINT() >= _value; + } case Str: + { return player.getSTR() >= _value; + } case Con: + { return player.getCON() >= _value; + } case Dex: + { return player.getDEX() >= _value; + } case Men: + { return player.getMEN() >= _value; + } case Wit: + { return player.getWIT() >= _value; + } } return false; } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java index ef96baec75..4be5a3fc3f 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java @@ -49,39 +49,57 @@ public class ConditionPlayerState extends Condition switch (_check) { case RESTING: + { if (player != null) { return (player.isSitting() == _required); } return !_required; + } case MOVING: + { return effector.isMoving() == _required; + } case RUNNING: + { return effector.isRunning() == _required; + } case STANDING: + { if (player != null) { return (_required != (player.isSitting() || player.isMoving())); } return (_required != effector.isMoving()); + } case FLYING: + { return (effector.isFlying() == _required); + } case BEHIND: + { return (effector.isBehindTarget() == _required); + } case FRONT: + { return (effector.isInFrontOfTarget() == _required); + } case CHAOTIC: + { if (player != null) { return ((player.getReputation() < 0) == _required); } return !_required; + } case OLYMPIAD: + { if (player != null) { return (player.isInOlympiadMode() == _required); } return !_required; + } } return !_required; } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java index c161d20dac..d38ef03cf0 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java @@ -462,17 +462,23 @@ public final class BlockCheckerEngine switch (_round) { case 1: + { // Schedule second spawn round _task = ThreadPoolManager.schedule(new SpawnRound(20, 2), 60000); break; + } case 2: + { // Schedule third spawn round _task = ThreadPoolManager.schedule(new SpawnRound(14, 3), 60000); break; + } case 3: + { // Schedule Event End Count Down _task = ThreadPoolManager.schedule(new EndEvent(), 180000); break; + } } // random % 2, if == 0 will spawn a red block // if != 0, will spawn a blue block diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/Duel.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/Duel.java index 6879c073af..54e9a2c1bf 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/Duel.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/Duel.java @@ -760,6 +760,7 @@ public class Duel { case Team1Win: case Team2Surrender: + { restorePlayerConditions(false); sm = _partyDuel ? SystemMessage.getSystemMessage(SystemMessageId.C1_S_PARTY_HAS_WON_THE_DUEL) : SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_DUEL); sm.addString(_playerA.getName()); @@ -767,8 +768,10 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Team1Surrender: case Team2Win: + { restorePlayerConditions(false); sm = _partyDuel ? SystemMessage.getSystemMessage(SystemMessageId.C1_S_PARTY_HAS_WON_THE_DUEL) : SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_DUEL); sm.addString(_playerB.getName()); @@ -776,7 +779,9 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Canceled: + { stopFighting(); // Don't restore hp, mp, cp restorePlayerConditions(true); @@ -785,7 +790,9 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Timeout: + { stopFighting(); restorePlayerConditions(false); sm = SystemMessage.getSystemMessage(SystemMessageId.THE_DUEL_HAS_ENDED_IN_A_TIE); @@ -793,6 +800,7 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } } // Send end duel packet diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/FortSiege.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/FortSiege.java index 840cacddb2..43e89644c5 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/FortSiege.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/FortSiege.java @@ -627,17 +627,25 @@ public class FortSiege implements Siegable switch (spawn2.getMessageId()) { case 1: + { npcString = NpcStringId.YOU_MAY_HAVE_BROKEN_OUR_ARROWS_BUT_YOU_WILL_NEVER_BREAK_OUR_WILL_ARCHERS_RETREAT; break; + } case 2: + { npcString = NpcStringId.AIIEEEE_COMMAND_CENTER_THIS_IS_GUARD_UNIT_WE_NEED_BACKUP_RIGHT_AWAY; break; + } case 3: + { npcString = NpcStringId.AT_LAST_THE_MAGIC_CIRCLE_THAT_PROTECTS_THE_FORTRESS_HAS_WEAKENED_VOLUNTEERS_STAND_BACK; break; + } case 4: + { npcString = NpcStringId.I_FEEL_SO_MUCH_GRIEF_THAT_I_CAN_T_EVEN_TAKE_CARE_OF_MYSELF_THERE_ISN_T_ANY_REASON_FOR_ME_TO_STAY_HERE_ANY_LONGER; break; + } } if (npcString != null) { @@ -908,13 +916,19 @@ public class FortSiege implements Siegable switch (teleportWho) { case Owner: + { players = getOwnersInZone(); break; + } case Attacker: + { players = getAttackersInZone(); break; + } default: + { players = getPlayersInZone(); + } } for (L2PcInstance player : players) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/L2Event.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/L2Event.java index 8e8479ff9a..ad93bd97a4 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/L2Event.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/entity/L2Event.java @@ -225,10 +225,15 @@ public class L2Event switch (eventState) { case OFF: + { return false; + } case STANDBY: + { return _registeredPlayers.contains(player); + } case ON: + { for (Set teamList : _teams.values()) { if (teamList.contains(player)) @@ -236,9 +241,9 @@ public class L2Event return true; } } + } } return false; - } /** @@ -343,12 +348,18 @@ public class L2Event switch (eventState) { case ON: + { return "Cannot start event, it is already on."; + } case STANDBY: + { return "Cannot start event, it is on standby mode."; + } case OFF: // Event is off, so no problem turning it on. + { eventState = EventState.STANDBY; break; + } } // Register the event at AntiFeedManager and clean it for just in case if the event is already registered. @@ -409,12 +420,18 @@ public class L2Event switch (eventState) { case ON: + { return "Cannot start event, it is already on."; + } case STANDBY: + { eventState = EventState.ON; break; + } case OFF: // Event is off, so no problem turning it on. + { return "Cannot start event, it is off. Participation start is required."; + } } // Clean the things we will use, just in case. @@ -478,8 +495,11 @@ public class L2Event switch (eventState) { case OFF: + { return "Cannot finish event, it is already off."; + } case STANDBY: + { for (L2PcInstance player : _registeredPlayers) { removeAndResetPlayer(player); @@ -494,7 +514,9 @@ public class L2Event _eventName = ""; eventState = EventState.OFF; return "The event has been stopped at STANDBY mode, all players unregistered and all event npcs unspawned."; + } case ON: + { for (Set teamList : _teams.values()) { for (L2PcInstance player : teamList) @@ -516,6 +538,7 @@ public class L2Event _eventCreator = ""; _eventInfo = ""; return "The event has been stopped, all players unregistered and all event npcs unspawned."; + } } return "The event has been successfully finished."; diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/events/AbstractScript.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/events/AbstractScript.java index 4b3521c88c..d62c0be382 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/events/AbstractScript.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/events/AbstractScript.java @@ -2517,21 +2517,31 @@ public abstract class AbstractScript extends ManagedScript implements IEventTime switch (((L2EtcItem) item).getItemType()) { case POTION: + { count *= Config.RATE_QUEST_REWARD_POTION; break; + } case ENCHT_WP: case ENCHT_AM: case SCROLL: + { count *= Config.RATE_QUEST_REWARD_SCROLL; break; + } case RECIPE: + { count *= Config.RATE_QUEST_REWARD_RECIPE; break; + } case MATERIAL: + { count *= Config.RATE_QUEST_REWARD_MATERIAL; break; + } default: + { count *= Config.RATE_QUEST_REWARD; + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java index 830d162a41..796283f7bf 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java @@ -336,11 +336,15 @@ public class InstanceTemplate extends ListenersContainer implements IIdentifiabl switch (_enterLocationType) { case RANDOM: + { loc = _enterLocations.get(Rnd.get(_enterLocations.size())); break; + } case FIXED: + { loc = _enterLocations.get(0); break; + } } return loc; } @@ -365,11 +369,15 @@ public class InstanceTemplate extends ListenersContainer implements IIdentifiabl switch (_exitLocationType) { case RANDOM: + { location = _exitLocations.get(Rnd.get(_exitLocations.size())); break; + } case FIXED: + { location = _exitLocations.get(0); break; + } case ORIGIN: { final PlayerVariables vars = player.getVariables(); diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java index 591a4dec3a..5910f77b6f 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java @@ -49,14 +49,20 @@ public final class ConditionHasResidence extends Condition switch (params.getEnum("type", ResidenceType.class)) { case CASTLE: + { test = clan.getCastleId() == id; break; + } case FORTRESS: + { test = clan.getFortId() == id; break; + } case CLANHALL: + { test = clan.getHideoutId() == id; break; + } } return test; } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java index aaab55dec7..34c893a2b6 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java @@ -362,6 +362,7 @@ public final class ItemAuction break; } case EXTEND_BY_3_MIN: + { if (Config.ALT_ITEM_AUCTION_TIME_EXTENDS_ON_BID > 0) { if (getAndSetLastBidPlayerObjectId(player.getObjectId()) != player.getObjectId()) @@ -371,6 +372,7 @@ public final class ItemAuction } } break; + } case EXTEND_BY_CONFIG_PHASE_A: { if (getAndSetLastBidPlayerObjectId(player.getObjectId()) != player.getObjectId()) @@ -429,14 +431,17 @@ public final class ItemAuction switch (getAuctionState()) { case CREATED: + { return false; - + } case FINISHED: + { if (_startingTime < (System.currentTimeMillis() - TimeUnit.MILLISECONDS.convert(Config.ALT_ITEM_AUCTION_EXPIRED_AFTER, TimeUnit.DAYS))) { return false; } break; + } } final int playerObjId = player.getObjectId(); diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java index 544091dcd5..17a9b42f56 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java @@ -245,7 +245,6 @@ public final class ItemAuctionInstance nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); break; } - case 1: { switch (auctions[0].getAuctionState()) @@ -263,23 +262,22 @@ public final class ItemAuctionInstance } break; } - case STARTED: { currentAuction = auctions[0]; nextAuction = createAuction(Math.max(currentAuction.getEndingTime() + FINISH_TIME_SPACE, System.currentTimeMillis() + START_TIME_SPACE)); break; } - case FINISHED: { currentAuction = auctions[0]; nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); break; } - default: + { throw new IllegalArgumentException(); + } } break; } @@ -287,10 +285,8 @@ public final class ItemAuctionInstance default: { Arrays.sort(auctions, Comparator.comparingLong(ItemAuction::getStartingTime).reversed()); - // just to make sure we won't skip any auction because of little different times final long currentTime = System.currentTimeMillis(); - for (ItemAuction auction : auctions) { if (auction.getAuctionState() == ItemAuctionState.STARTED) @@ -304,7 +300,6 @@ public final class ItemAuctionInstance break; // only first } } - for (ItemAuction auction : auctions) { if ((auction.getStartingTime() > currentTime) && (currentAuction != auction)) @@ -313,7 +308,6 @@ public final class ItemAuctionInstance break; } } - if (nextAuction == null) { nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); @@ -414,12 +408,10 @@ public final class ItemAuctionInstance { throw new IllegalStateException("Could not set auction state: " + ItemAuctionState.STARTED + ", expected: " + state); } - LOGGER.info(getClass().getSimpleName() + ": Auction " + _auction.getAuctionId() + " has started for instance " + _auction.getInstanceId()); checkAndSetCurrentAndNextAuction(); break; } - case STARTED: { switch (_auction.getAuctionEndingExtendState()) @@ -434,7 +426,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_3_MIN: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_3_MIN) @@ -445,7 +436,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_CONFIG_PHASE_A: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_CONFIG_PHASE_B) @@ -456,7 +446,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_CONFIG_PHASE_B: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_CONFIG_PHASE_A) @@ -479,7 +468,9 @@ public final class ItemAuctionInstance } default: + { throw new IllegalStateException("Invalid state: " + state); + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 6c7a439499..af79a14ceb 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -838,55 +838,99 @@ public abstract class Inventory extends ItemContainer switch (slot) { case L2Item.SLOT_UNDERWEAR: + { return PAPERDOLL_UNDER; + } case L2Item.SLOT_R_EAR: + { return PAPERDOLL_REAR; + } case L2Item.SLOT_LR_EAR: case L2Item.SLOT_L_EAR: + { return PAPERDOLL_LEAR; + } case L2Item.SLOT_NECK: + { return PAPERDOLL_NECK; + } case L2Item.SLOT_R_FINGER: case L2Item.SLOT_LR_FINGER: + { return PAPERDOLL_RFINGER; + } case L2Item.SLOT_L_FINGER: + { return PAPERDOLL_LFINGER; + } case L2Item.SLOT_HEAD: + { return PAPERDOLL_HEAD; + } case L2Item.SLOT_R_HAND: case L2Item.SLOT_LR_HAND: + { return PAPERDOLL_RHAND; + } case L2Item.SLOT_L_HAND: + { return PAPERDOLL_LHAND; + } case L2Item.SLOT_GLOVES: + { return PAPERDOLL_GLOVES; + } case L2Item.SLOT_CHEST: case L2Item.SLOT_FULL_ARMOR: case L2Item.SLOT_ALLDRESS: + { return PAPERDOLL_CHEST; + } case L2Item.SLOT_LEGS: + { return PAPERDOLL_LEGS; + } case L2Item.SLOT_FEET: + { return PAPERDOLL_FEET; + } case L2Item.SLOT_BACK: + { return PAPERDOLL_CLOAK; + } case L2Item.SLOT_HAIR: case L2Item.SLOT_HAIRALL: + { return PAPERDOLL_HAIR; + } case L2Item.SLOT_HAIR2: + { return PAPERDOLL_HAIR2; + } case L2Item.SLOT_R_BRACELET: + { return PAPERDOLL_RBRACELET; + } case L2Item.SLOT_L_BRACELET: + { return PAPERDOLL_LBRACELET; + } case L2Item.SLOT_DECO: + { return PAPERDOLL_DECO1; // return first we deal with it later + } case L2Item.SLOT_BELT: + { return PAPERDOLL_BELT; + } case L2Item.SLOT_BROOCH: + { return PAPERDOLL_BROOCH; + } case L2Item.SLOT_BROOCH_JEWEL: + { return PAPERDOLL_BROOCH_JEWEL1; + } } return -1; } @@ -1062,81 +1106,125 @@ public abstract class Inventory extends ItemContainer switch (location) { case PAPERDOLL_UNDER: + { slot = L2Item.SLOT_UNDERWEAR; break; + } case PAPERDOLL_LEAR: + { slot = L2Item.SLOT_L_EAR; break; + } case PAPERDOLL_REAR: + { slot = L2Item.SLOT_R_EAR; break; + } case PAPERDOLL_NECK: + { slot = L2Item.SLOT_NECK; break; + } case PAPERDOLL_RFINGER: + { slot = L2Item.SLOT_R_FINGER; break; + } case PAPERDOLL_LFINGER: + { slot = L2Item.SLOT_L_FINGER; break; + } case PAPERDOLL_HAIR: + { slot = L2Item.SLOT_HAIR; break; + } case PAPERDOLL_HAIR2: + { slot = L2Item.SLOT_HAIR2; break; + } case PAPERDOLL_HEAD: + { slot = L2Item.SLOT_HEAD; break; + } case PAPERDOLL_RHAND: + { slot = L2Item.SLOT_R_HAND; break; + } case PAPERDOLL_LHAND: + { slot = L2Item.SLOT_L_HAND; break; + } case PAPERDOLL_GLOVES: + { slot = L2Item.SLOT_GLOVES; break; + } case PAPERDOLL_CHEST: + { slot = item.getItem().getBodyPart(); break; + } case PAPERDOLL_LEGS: + { slot = L2Item.SLOT_LEGS; break; + } case PAPERDOLL_CLOAK: + { slot = L2Item.SLOT_BACK; break; + } case PAPERDOLL_FEET: + { slot = L2Item.SLOT_FEET; break; + } case PAPERDOLL_LBRACELET: + { slot = L2Item.SLOT_L_BRACELET; break; + } case PAPERDOLL_RBRACELET: + { slot = L2Item.SLOT_R_BRACELET; break; + } case PAPERDOLL_DECO1: case PAPERDOLL_DECO2: case PAPERDOLL_DECO3: case PAPERDOLL_DECO4: case PAPERDOLL_DECO5: case PAPERDOLL_DECO6: + { slot = L2Item.SLOT_DECO; break; + } case PAPERDOLL_BELT: + { slot = L2Item.SLOT_BELT; break; + } case PAPERDOLL_BROOCH: + { slot = L2Item.SLOT_BROOCH; break; + } case PAPERDOLL_BROOCH_JEWEL1: case PAPERDOLL_BROOCH_JEWEL2: case PAPERDOLL_BROOCH_JEWEL3: case PAPERDOLL_BROOCH_JEWEL4: case PAPERDOLL_BROOCH_JEWEL5: case PAPERDOLL_BROOCH_JEWEL6: + { slot = L2Item.SLOT_BROOCH_JEWEL; break; + } } return slot; } @@ -1214,81 +1302,129 @@ public abstract class Inventory extends ItemContainer switch (slot) { case L2Item.SLOT_L_EAR: + { pdollSlot = PAPERDOLL_LEAR; break; + } case L2Item.SLOT_R_EAR: + { pdollSlot = PAPERDOLL_REAR; break; + } case L2Item.SLOT_NECK: + { pdollSlot = PAPERDOLL_NECK; break; + } case L2Item.SLOT_R_FINGER: + { pdollSlot = PAPERDOLL_RFINGER; break; + } case L2Item.SLOT_L_FINGER: + { pdollSlot = PAPERDOLL_LFINGER; break; + } case L2Item.SLOT_HAIR: + { pdollSlot = PAPERDOLL_HAIR; break; + } case L2Item.SLOT_HAIR2: + { pdollSlot = PAPERDOLL_HAIR2; break; + } case L2Item.SLOT_HAIRALL: + { setPaperdollItem(PAPERDOLL_HAIR, null); pdollSlot = PAPERDOLL_HAIR; break; + } case L2Item.SLOT_HEAD: + { pdollSlot = PAPERDOLL_HEAD; break; + } case L2Item.SLOT_R_HAND: case L2Item.SLOT_LR_HAND: + { pdollSlot = PAPERDOLL_RHAND; break; + } case L2Item.SLOT_L_HAND: + { pdollSlot = PAPERDOLL_LHAND; break; + } case L2Item.SLOT_GLOVES: + { pdollSlot = PAPERDOLL_GLOVES; break; + } case L2Item.SLOT_CHEST: case L2Item.SLOT_ALLDRESS: case L2Item.SLOT_FULL_ARMOR: + { pdollSlot = PAPERDOLL_CHEST; break; + } case L2Item.SLOT_LEGS: + { pdollSlot = PAPERDOLL_LEGS; break; + } case L2Item.SLOT_BACK: + { pdollSlot = PAPERDOLL_CLOAK; break; + } case L2Item.SLOT_FEET: + { pdollSlot = PAPERDOLL_FEET; break; + } case L2Item.SLOT_UNDERWEAR: + { pdollSlot = PAPERDOLL_UNDER; break; + } case L2Item.SLOT_L_BRACELET: + { pdollSlot = PAPERDOLL_LBRACELET; break; + } case L2Item.SLOT_R_BRACELET: + { pdollSlot = PAPERDOLL_RBRACELET; break; + } case L2Item.SLOT_DECO: + { pdollSlot = PAPERDOLL_DECO1; break; + } case L2Item.SLOT_BELT: + { pdollSlot = PAPERDOLL_BELT; break; + } case L2Item.SLOT_BROOCH: + { pdollSlot = PAPERDOLL_BROOCH; break; + } case L2Item.SLOT_BROOCH_JEWEL: + { pdollSlot = PAPERDOLL_BROOCH_JEWEL1; break; + } default: + { LOGGER.info("Unhandled slot type: " + slot); LOGGER.info(CommonUtil.getTraceString(Thread.currentThread().getStackTrace())); + } } if (pdollSlot >= 0) { @@ -1363,7 +1499,9 @@ public abstract class Inventory extends ItemContainer case L2Item.SLOT_FEET: case L2Item.SLOT_GLOVES: case L2Item.SLOT_HEAD: + { return; + } } } @@ -1382,7 +1520,6 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_RHAND, null); } - setPaperdollItem(PAPERDOLL_LHAND, item); break; } @@ -1429,15 +1566,21 @@ public abstract class Inventory extends ItemContainer break; } case L2Item.SLOT_NECK: + { setPaperdollItem(PAPERDOLL_NECK, item); break; + } case L2Item.SLOT_FULL_ARMOR: + { setPaperdollItem(PAPERDOLL_LEGS, null); setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_CHEST: + { setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_LEGS: { // handle full armor @@ -1446,20 +1589,26 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_CHEST, null); } - setPaperdollItem(PAPERDOLL_LEGS, item); break; } case L2Item.SLOT_FEET: + { setPaperdollItem(PAPERDOLL_FEET, item); break; + } case L2Item.SLOT_GLOVES: + { setPaperdollItem(PAPERDOLL_GLOVES, item); break; + } case L2Item.SLOT_HEAD: + { setPaperdollItem(PAPERDOLL_HEAD, item); break; + } case L2Item.SLOT_HAIR: + { final L2ItemInstance hair = getPaperdollItem(PAPERDOLL_HAIR); if ((hair != null) && (hair.getItem().getBodyPart() == L2Item.SLOT_HAIRALL)) { @@ -1469,10 +1618,11 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_HAIR, null); } - setPaperdollItem(PAPERDOLL_HAIR, item); break; + } case L2Item.SLOT_HAIR2: + { final L2ItemInstance hair2 = getPaperdollItem(PAPERDOLL_HAIR); if ((hair2 != null) && (hair2.getItem().getBodyPart() == L2Item.SLOT_HAIRALL)) { @@ -1482,32 +1632,47 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_HAIR2, null); } - setPaperdollItem(PAPERDOLL_HAIR2, item); break; + } case L2Item.SLOT_HAIRALL: + { setPaperdollItem(PAPERDOLL_HAIR2, null); setPaperdollItem(PAPERDOLL_HAIR, item); break; + } case L2Item.SLOT_UNDERWEAR: + { setPaperdollItem(PAPERDOLL_UNDER, item); break; + } case L2Item.SLOT_BACK: + { setPaperdollItem(PAPERDOLL_CLOAK, item); break; + } case L2Item.SLOT_L_BRACELET: + { setPaperdollItem(PAPERDOLL_LBRACELET, item); break; + } case L2Item.SLOT_R_BRACELET: + { setPaperdollItem(PAPERDOLL_RBRACELET, item); break; + } case L2Item.SLOT_DECO: + { equipTalisman(item); break; + } case L2Item.SLOT_BELT: + { setPaperdollItem(PAPERDOLL_BELT, item); break; + } case L2Item.SLOT_ALLDRESS: + { // formal dress setPaperdollItem(PAPERDOLL_LEGS, null); setPaperdollItem(PAPERDOLL_LHAND, null); @@ -1519,14 +1684,21 @@ public abstract class Inventory extends ItemContainer setPaperdollItem(PAPERDOLL_GLOVES, null); setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_BROOCH: + { setPaperdollItem(PAPERDOLL_BROOCH, item); break; + } case L2Item.SLOT_BROOCH_JEWEL: + { equipBroochJewel(item); break; + } default: + { LOGGER.warning("Unknown body slot " + targetSlot + " for Item ID: " + item.getId()); + } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/L2Item.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/L2Item.java index 2277b05ee1..2f590854f8 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/L2Item.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/L2Item.java @@ -414,11 +414,17 @@ public abstract class L2Item extends ListenersContainer implements IIdentifiable { case TYPE2_SHIELD_ARMOR: case TYPE2_ACCESSORY: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusArmor() * ((3 * enchantLevel) - 6)); + } case TYPE2_WEAPON: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusWeapon() * ((2 * enchantLevel) - 3)); + } default: + { return _crystalCount; + } } } else if (enchantLevel > 0) @@ -427,11 +433,17 @@ public abstract class L2Item extends ListenersContainer implements IIdentifiable { case TYPE2_SHIELD_ARMOR: case TYPE2_ACCESSORY: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusArmor() * enchantLevel); + } case TYPE2_WEAPON: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusWeapon() * enchantLevel); + } default: + { return _crystalCount; + } } } else diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java index 186a60aa46..e37d23508f 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java @@ -1327,20 +1327,26 @@ public final class L2ItemInstance extends L2Object switch (_mana) { case 10: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_10); sm.addItemName(_item); player.sendPacket(sm); break; + } case 5: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_5); sm.addItemName(_item); player.sendPacket(sm); break; + } case 1: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_1_IT_WILL_DISAPPEAR_SOON); sm.addItemName(_item); player.sendPacket(sm); break; + } } if (_mana == 0) // The life time has expired diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java index edbb47633b..d073bfd72a 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java @@ -187,6 +187,7 @@ public class Olympiad extends ListenersContainer switch (_period) { case 0: + { if ((_olympiadEnd == 0) || (_olympiadEnd < Calendar.getInstance().getTimeInMillis())) { setNewOlympiadEnd(); @@ -196,7 +197,9 @@ public class Olympiad extends ListenersContainer scheduleWeeklyChange(); } break; + } case 1: + { if (_validationEnd > Calendar.getInstance().getTimeInMillis()) { loadNoblesRank(); @@ -210,9 +213,12 @@ public class Olympiad extends ListenersContainer setNewOlympiadEnd(); } break; + } default: + { LOGGER.warning(getClass().getSimpleName() + ": Omg something went wrong in loading!! Period = " + _period); return; + } } try (Connection con = DatabaseFactory.getInstance().getConnection(); @@ -922,19 +928,29 @@ public class Olympiad extends ListenersContainer switch (_noblesRank.get(objId)) { case 1: + { points += Config.ALT_OLY_RANK1_POINTS; break; + } case 2: + { points += Config.ALT_OLY_RANK2_POINTS; break; + } case 3: + { points += Config.ALT_OLY_RANK3_POINTS; break; + } case 4: + { points += Config.ALT_OLY_RANK4_POINTS; break; + } default: + { points += Config.ALT_OLY_RANK5_POINTS; + } } // Win/no win matches point bonus diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java index 5f672174e0..b740357222 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java @@ -57,13 +57,19 @@ public final class OlympiadAnnouncer implements Runnable switch (task.getGame().getType()) { case NON_CLASSED: + { npcString = NpcStringId.OLYMPIAD_CLASS_FREE_INDIVIDUAL_MATCH_IS_GOING_TO_BEGIN_IN_ARENA_S1_IN_A_MOMENT; break; + } case CLASSED: + { npcString = NpcStringId.OLYMPIAD_CLASS_INDIVIDUAL_MATCH_IS_GOING_TO_BEGIN_IN_ARENA_S1_IN_A_MOMENT; break; + } default: + { continue; + } } for (L2Spawn spawn : _managers) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java index 3f4a80a0fa..f12879ef84 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java @@ -144,9 +144,13 @@ public enum SkillOperateType case DA2: case DA4: case DA5: + { return true; + } default: + { return false; + } } } @@ -165,9 +169,13 @@ public enum SkillOperateType case DA2: case DA4: case DA5: + { return true; + } default: + { return false; + } } } @@ -234,9 +242,13 @@ public enum SkillOperateType case CA1: case CA2: case CA5: + { return true; + } default: + { return false; + } } } @@ -258,9 +270,13 @@ public enum SkillOperateType case DA3: case DA4: case DA5: + { return true; + } default: + { return false; + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/stats/Formulas.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/stats/Formulas.java index 99abcf8994..bc9430b32d 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/stats/Formulas.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/stats/Formulas.java @@ -590,11 +590,15 @@ public final class Formulas switch (shldSuccess) { case SHIELD_DEFENSE_SUCCEED: + { enemy.sendPacket(SystemMessageId.YOUR_SHIELD_DEFENSE_HAS_SUCCEEDED); break; + } case SHIELD_DEFENSE_PERFECT_BLOCK: + { enemy.sendPacket(SystemMessageId.YOUR_EXCELLENT_SHIELD_DEFENSE_WAS_A_SUCCESS); break; + } } } @@ -854,10 +858,14 @@ public final class Formulas switch (shld) { case SHIELD_DEFENSE_SUCCEED: + { mDef += target.getShldDef(); break; + } case SHIELD_DEFENSE_PERFECT_BLOCK: // perfect block + { return 1; + } } // Bonus Spiritshot @@ -1118,7 +1126,6 @@ public final class Formulas { // Resist Modifier. final int cancelMagicLvl = skill.getMagicLevel(); - if (activeChar.isDebug()) { final StatsSet set = new StatsSet(); @@ -1128,7 +1135,6 @@ public final class Formulas set.set("rate", rate); Debug.sendSkillDebug(activeChar, target, skill, set); } - // Prevent initialization. final List buffs = target.getEffectList().hasBuffs() ? new ArrayList<>(target.getEffectList().getBuffs()) : new ArrayList<>(1); if (target.getEffectList().hasTriggered()) @@ -1360,13 +1366,21 @@ public final class Formulas switch (resist.getResistLevel()) { case 0: + { return 1.0; + } case 1: + { return 0.6; + } case 2: + { return 0.3; + } default: + { return 0; + } } } @@ -1508,13 +1522,19 @@ public final class Formulas switch (attackType) { case BOW: + { return (1500 * 345) / activeChar.getPAtkSpd(); + } case CROSSBOW: case TWOHANDCROSSBOW: + { return (1200 * 345) / activeChar.getPAtkSpd(); + } case DAGGER: + { // atkSpd /= 1.15; break; + } } return calcPAtkSpd(activeChar.getPAtkSpd()); diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java index dae0cb10f9..8a54b645b0 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java @@ -50,16 +50,24 @@ public abstract class L2ZoneRespawn extends L2ZoneType switch (type) { case "other": + { addOtherSpawn(x, y, z); break; + } case "chaotic": + { addChaoticSpawn(x, y, z); break; + } case "banish": + { addBanishSpawn(x, y, z); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown location type: " + type); + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java index 53947b8169..fa49f8fe8e 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java @@ -75,24 +75,37 @@ public final class L2EffectZone extends L2ZoneType switch (name) { case "chance": + { _chance = Integer.parseInt(value); break; + } case "initialDelay": + { _initialDelay = Integer.parseInt(value); break; + } case "reuse": + { _reuse = Integer.parseInt(value); break; + } case "bypassSkillConditions": + { _bypassConditions = Boolean.parseBoolean(value); break; + } case "maxDynamicSkillCount": + { _skills = new ConcurrentHashMap<>(Integer.parseInt(value)); break; + } case "showDangerIcon": + { _isShowDangerIcon = Boolean.parseBoolean(value); break; + } case "skillIdLvl": + { final String[] propertySplit = value.split(";"); _skills = new ConcurrentHashMap<>(propertySplit.length); for (String skill : propertySplit) @@ -118,6 +131,7 @@ public final class L2EffectZone extends L2ZoneType } } break; + } default: { super.setParameter(name, value); diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/L2GameClient.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/L2GameClient.java index 6bc536e28a..f0fc7726d3 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/L2GameClient.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/L2GameClient.java @@ -669,13 +669,21 @@ public final class L2GameClient extends ChannelInboundHandler switch (state) { case CONNECTED: + { return "[IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } case AUTHENTICATED: + { return "[Account: " + getAccountName() + " - IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } case IN_GAME: + { return "[Character: " + (getActiveChar() == null ? "disconnected" : getActiveChar().getName() + "[" + getActiveChar().getObjectId() + "]") + " - Account: " + getAccountName() + " - IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } default: + { throw new IllegalStateException("Missing state on switch"); + } } } catch (NullPointerException e) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java index d24c043f23..bf1369b884 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java @@ -66,13 +66,17 @@ public final class CharacterDelete implements IClientIncomingPacket switch (failType) { case NONE:// Success! + { client.sendPacket(new CharDeleteSuccess()); final CharSelectInfoPackage charInfo = client.getCharSelection(_charSlot); EventDispatcher.getInstance().notifyEvent(new OnPlayerDelete(charInfo.getObjectId(), charInfo.getName(), client), Containers.Players()); break; + } default: + { client.sendPacket(new CharDeleteFail(failType)); break; + } } } catch (Exception e) diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java index 03f82be21d..e20dfd2ce4 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java @@ -74,6 +74,7 @@ public class MoveToLocationAirShip implements IClientIncomingPacket switch (_command) { case 0: + { if (!ship.canBeControlled()) { return; @@ -83,14 +84,18 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(_param1, _param2, z)); } break; + } case 1: + { if (!ship.canBeControlled()) { return; } ship.getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); break; + } case 2: + { if (!ship.canBeControlled()) { return; @@ -101,7 +106,9 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(ship.getX(), ship.getY(), z)); } break; + } case 3: + { if (!ship.canBeControlled()) { return; @@ -112,7 +119,9 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(ship.getX(), ship.getY(), z)); } break; + } case 4: + { if (!ship.isInDock() || ship.isMoving()) { return; @@ -138,6 +147,7 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.executePath(dst); break; + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java index caaa9f4faf..a008d4b0a7 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java @@ -114,6 +114,7 @@ public final class RequestActionUse implements IClientIncomingPacket switch (_actionId) { case 51: // General Manufacture + { // Player shouldn't be able to set stores if he/she is alike dead (dead or fake death) if (activeChar.isAlikeDead()) { @@ -139,9 +140,12 @@ public final class RequestActionUse implements IClientIncomingPacket client.sendPacket(new RecipeShopManageList(activeChar, false)); break; + } default: + { _log.warning(activeChar.getName() + ": unhandled action type " + _actionId); break; + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java index 95fd1aa66c..06bfa3c200 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java @@ -61,6 +61,7 @@ public final class RequestBlock implements IClientIncomingPacket { case BLOCK: case UNBLOCK: + { // can't use block/unblock for locating invisible characters if (targetId <= 0) { @@ -90,19 +91,28 @@ public final class RequestBlock implements IClientIncomingPacket BlockList.removeFromBlockList(activeChar, targetId); } break; + } case BLOCKLIST: + { BlockList.sendListToOwner(activeChar); break; + } case ALLBLOCK: + { activeChar.sendPacket(SystemMessageId.MESSAGE_REFUSAL_MODE); BlockList.setBlockAll(activeChar, true); break; + } case ALLUNBLOCK: + { activeChar.sendPacket(SystemMessageId.MESSAGE_ACCEPTANCE_MODE); BlockList.setBlockAll(activeChar, false); break; + } default: + { _log.info("Unknown 0xA9 block type: " + _type); + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java index 68f3ac2c1c..27e73c4de3 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java @@ -53,11 +53,15 @@ public final class RequestExCubeGameChangeTeam implements IClientIncomingPacket { case 0: case 1: + { // Change Player Team HandysBlockCheckerManager.getInstance().changePlayerToTeam(player, _arena, _team); break; + } case -1: + { // Remove Player (me) + } { final int team = HandysBlockCheckerManager.getInstance().getHolder(_arena).getPlayerTeam(player); // client sends two times this packet if click on exit @@ -69,8 +73,10 @@ public final class RequestExCubeGameChangeTeam implements IClientIncomingPacket break; } default: + { _log.warning("Wrong Cube Game Team ID: " + _team); break; + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java index 0c7271d8a5..ca230610ed 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java @@ -52,15 +52,21 @@ public final class RequestExCubeGameReadyAnswer implements IClientIncomingPacket switch (_answer) { case 0: + { // Cancel - Answer No break; + } case 1: + { // OK or Time Over HandysBlockCheckerManager.getInstance().increaseArenaVotes(_arena); break; + } default: + { _log.warning("Unknown Cube Game Answer ID: " + _answer); break; + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java index d66d6376c8..b1ae7171e1 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java @@ -320,17 +320,25 @@ public class RequestExEnchantItemAttribute implements IClientIncomingPacket { case Stone: case Roughore: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_STONE; break; + } case Crystal: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_CRYSTAL; break; + } case Jewel: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_JEWEL; break; + } case Energy: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_ENERGY; break; + } } } } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java index b651077122..260c32c7cc 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java @@ -70,63 +70,91 @@ public class RequestCommissionList implements IClientIncomingPacket switch (_treeViewDepth) { case 1: + { final CommissionTreeType commissionTreeType = CommissionTreeType.findByClientId(_itemType); if (commissionTreeType != null) { filter = filter.and(i -> commissionTreeType.getCommissionItemTypes().contains(i.getCommissionItemType())); } break; + } case 2: + { final CommissionItemType commissionItemType = CommissionItemType.findByClientId(_itemType); if (commissionItemType != null) { filter = filter.and(i -> i.getCommissionItemType() == commissionItemType); } break; + } } switch (_type) { case 0: // General + { filter = filter.and(i -> true); // TODO: condition break; + } case 1: // Rare + { filter = filter.and(i -> true); // TODO: condition break; + } } switch (_grade) { case 0: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.NONE); break; + } case 1: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.D); break; + } case 2: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.C); break; + } case 3: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.B); break; + } case 4: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.A); break; + } case 5: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.S); break; + } case 6: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.S80); break; + } case 7: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R); break; + } case 8: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R95); break; + } case 9: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R99); break; + } } filter = filter.and(i -> _query.isEmpty() || i.getName().toLowerCase().contains(_query.toLowerCase())); diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java index 53693bd214..099ecc9e7f 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java @@ -59,43 +59,65 @@ public class ExShowFortressSiegeInfo implements IClientOutgoingPacket switch (_csize) { case 3: + { switch (_csize2) { case 0: + { packet.writeD(0x03); break; + } case 1: + { packet.writeD(0x02); break; + } case 2: + { packet.writeD(0x01); break; + } case 3: + { packet.writeD(0x00); break; + } } break; + } case 4: // TODO: change 4 to 5 once control room supported + { switch (_csize2) - // TODO: once control room supported, update packet.writeD(0x0x) to support 5th room { + // TODO: once control room supported, update packet.writeD(0x0x) to support 5th room case 0: + { packet.writeD(0x05); break; + } case 1: + { packet.writeD(0x04); break; + } case 2: + { packet.writeD(0x03); break; + } case 3: + { packet.writeD(0x02); break; + } case 4: + { packet.writeD(0x01); break; + } } break; + } } } else diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java index 7eb34ca17a..ab5d73f244 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java @@ -80,10 +80,15 @@ public final class JavaExecutionContext extends AbstractExecutionContext switch (opcode) { case 0x07: + { packet = new AuthGameGuard(); break; + } default: + { debugOpcode(opcode, state); break; + } } break; } @@ -65,11 +69,15 @@ public final class L2LoginPacketHandler implements IPacketHandler switch (opcode) { case 0x00: + { packet = new RequestAuthLogin(); break; + } default: + { debugOpcode(opcode, state); break; + } } break; } diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java index f68dbeac9a..670a1da820 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java @@ -141,6 +141,7 @@ public class RequestAuthLogin extends L2LoginClientPacket switch (result) { case AUTH_SUCCESS: + { client.setAccount(info.getLogin()); client.setState(LoginClientState.AUTHED_LOGIN); client.setSessionKey(lc.assignSessionKeyToClient(info.getLogin(), client)); @@ -154,13 +155,19 @@ public class RequestAuthLogin extends L2LoginClientPacket client.sendPacket(new ServerList(client)); } break; + } case INVALID_PASSWORD: + { client.close(LoginFailReason.REASON_USER_OR_PASS_WRONG); break; + } case ACCOUNT_BANNED: + { client.close(new AccountKicked(AccountKickedReason.REASON_PERMANENTLY_BANNED)); return; + } case ALREADY_ON_LS: + { final L2LoginClient oldClient = lc.getAuthedClient(info.getLogin()); if (oldClient != null) { @@ -171,12 +178,13 @@ public class RequestAuthLogin extends L2LoginClientPacket // kick also current client client.close(LoginFailReason.REASON_ACCOUNT_IN_USE); break; + } case ALREADY_ON_GS: + { final GameServerInfo gsi = lc.getAccountOnGameServer(info.getLogin()); if (gsi != null) { client.close(LoginFailReason.REASON_ACCOUNT_IN_USE); - // kick from there if (gsi.isAuthed()) { @@ -184,6 +192,7 @@ public class RequestAuthLogin extends L2LoginClientPacket } } break; + } } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java index 15b939e951..b132aaf9c5 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java @@ -256,17 +256,25 @@ public final class BeastFarm extends AbstractNpcAI switch (nextNpcId) { case 18869: + { name = name.replace("%name%", "Alpine Kookaburra"); break; + } case 18870: + { name = name.replace("%name%", "Alpine Cougar"); break; + } case 18871: + { name = name.replace("%name%", "Alpine Buffalo"); break; + } case 18872: + { name = name.replace("%name%", "Alpine Grendel"); break; + } } nextNpc.setName(name); nextNpc.broadcastPacket(new NpcInfo(nextNpc)); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java index 2e319b311b..58056e87de 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java @@ -87,35 +87,47 @@ public final class LargeCocoon extends AbstractNpcAI switch (getRandom(6)) { case 0: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD_HARD, npc, false, 90000), player); break; + } case 1: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER_HARD, npc, false, 90000), player); break; + } case 2: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); break; + } case 3: + { addAttackPlayerDesire(addSpawn(FAIRY_ROGUE_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE_HARD, npc, false, 90000), player); break; + } case 4: + { addAttackPlayerDesire(addSpawn(FAIRY_WIZARD_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); break; + } case 5: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); break; + } } } npc.deleteMe(); @@ -136,85 +148,121 @@ public final class LargeCocoon extends AbstractNpcAI switch (getRandom(6)) { case 0: + { addSpawn(FAIRY_WARRIOR, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 1: + { addSpawn(FAIRY_KNIGHT, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 2: + { addSpawn(FAIRY_WARRIOR, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_KNIGHT, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 3: + { addSpawn(FAIRY_SUMMONER, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WARRIOR, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 4: + { addSpawn(FAIRY_WITCH, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_SUMMONER, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 5: + { addSpawn(FAIRY_SUMMONER, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WITCH, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } } switch (getRandom(6)) { case 0: + { addSpawn(FAIRY_ROGUE, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WARRIOR, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 1: + { addSpawn(FAIRY_KNIGHT, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 2: + { addSpawn(FAIRY_WARRIOR, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_KNIGHT, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 3: + { addSpawn(FAIRY_SUMMONER, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WIZARD, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 4: + { addSpawn(FAIRY_WITCH, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_SUMMONER, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 5: + { addSpawn(FAIRY_WIZARD, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WITCH, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } } switch (getRandom(6)) { case 0: + { addSpawn(FAIRY_ROGUE, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WARRIOR, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 1: + { addSpawn(FAIRY_KNIGHT, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 2: + { addSpawn(FAIRY_WARRIOR, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_KNIGHT, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 3: + { addSpawn(FAIRY_SUMMONER, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WIZARD, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 4: + { addSpawn(FAIRY_WITCH, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_SUMMONER, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 5: + { addSpawn(FAIRY_WIZARD, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WITCH, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } } return super.onSpawn(npc); @@ -241,35 +289,47 @@ public final class LargeCocoon extends AbstractNpcAI switch (getRandom(6)) { case 0: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD, npc, false, 90000), playable); break; + } case 1: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER, npc, false, 90000), playable); break; + } case 2: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); break; + } case 3: + { addAttackPlayerDesire(addSpawn(FAIRY_ROGUE, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE, npc, false, 90000), playable); break; + } case 4: + { addAttackPlayerDesire(addSpawn(FAIRY_WIZARD, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); break; + } case 5: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); break; + } } } npc.deleteMe(); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java index 43d41070e0..d74aba60ff 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java @@ -93,14 +93,18 @@ public final class ForgeOfTheGods extends AbstractNpcAI switch (event) { case "suicide": + { if (npc != null) { npc.doDie(null); } break; + } case "refresh": + { _npcCount = 0; break; + } } return null; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java index a9db204c6e..ec4633eef8 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java @@ -92,21 +92,31 @@ public final class Rooney extends AbstractNpcAI switch (aiVal) { case 1: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.HURRY_HURRY); break; + } case 2: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.I_AM_NOT_THAT_TYPE_OF_PERSON_WHO_STAYS_IN_ONE_PLACE_FOR_A_LONG_TIME); break; + } case 3: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.IT_S_HARD_FOR_ME_TO_KEEP_STANDING_LIKE_THIS); break; + } case 4: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WHY_DON_T_I_GO_THAT_WAY_THIS_TIME); break; + } default: + { npc.teleToLocation(LOCATIONS[getRandom(LOCATIONS.length)], false); npc.setScriptValue(0); return null; + } } npc.setScriptValue(aiVal + 1); startQuestTimer("teleport", 60000, npc, null); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java index 30017c2f61..1d848d5c66 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java @@ -111,14 +111,20 @@ public final class Spirit extends AbstractNpcAI switch (npc.getId()) { case EXECUTED_MAIDEN_VENGEFUL_SPIRIT: + { startQuestTimer("SPAM_TEXT1", 50000, npc, null, true); break; + } case SPIRIT_OF_THE_TORTURED_DWARF: + { startQuestTimer("SPAM_TEXT2", 50000, npc, null, true); break; + } case SPIRIT_OF_ONE_BURNED_ALIVE: + { startQuestTimer("SPAM_TEXT3", 50000, npc, null, true); break; + } } return super.onSpawn(npc); } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java index 48607ee635..2bd3509ce1 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java @@ -149,58 +149,88 @@ public final class KetraOrcSupport extends AbstractNpcAI switch (npc.getId()) { case KADUN: + { htmltext = (AllianceLevel > 0) ? "31370-friend.html" : "31370-no.html"; break; + } case WAHKAN: + { htmltext = (AllianceLevel > 0) ? "31371-friend.html" : "31371-no.html"; break; + } case ASEFA: + { htmltext = (AllianceLevel > 0) ? (AllianceLevel < 3) ? "31372-01.html" : "31372-04.html" : "31372-03.html"; break; + } case ATAN: + { htmltext = (AllianceLevel > 0) ? "31373-friend.html" : "31373-no.html"; break; + } case JAFF: + { htmltext = (AllianceLevel > 0) ? (AllianceLevel == 1) ? "31374-01.html" : "31374-02.html" : "31374-no.html"; break; + } case JUMARA: + { switch (AllianceLevel) { case 1: case 2: + { htmltext = "31375-01.html"; break; + } case 3: case 4: + { htmltext = "31375-02.html"; break; + } case 5: + { htmltext = "31375-03.html"; break; + } default: + { htmltext = "31375-no.html"; break; + } } break; + } case KURFA: + { switch (AllianceLevel) { case 1: case 2: case 3: + { htmltext = "31376-01.html"; break; + } case 4: + { htmltext = "31376-02.html"; break; + } case 5: + { htmltext = "31376-03.html"; break; + } default: + { htmltext = "31376-no.html"; break; + } } break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java index 81e236bf0c..97a51dab77 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java @@ -115,21 +115,30 @@ public final class PlainsOfLizardman extends AbstractNpcAI switch (npc.getId()) { case TANTA_SUMMONER: + { if (!npc.isAffectedBySkill(DEMOTIVATION_HEX.getSkillId())) { npc.doCast(DEMOTIVATION_HEX.getSkill()); } break; + } case RAINBOW_FROG: + { castSkill(npc, attacker, RAINBOW_FROG_SKILL); break; + } case ENERGY_PLANT: + { castSkill(npc, attacker, ENERGY_PLANT_SKILL); break; + } case STICKY_MUSHROOM: + { castSkill(npc, attacker, STICKY_MUSHROOM_SKILL); break; + } case FANTASY_MUSHROOM: + { if (npc.isScriptValue(0)) { npc.setScriptValue(1); @@ -145,6 +154,7 @@ public final class PlainsOfLizardman extends AbstractNpcAI startQuestTimer("fantasy_mushroom", 4000, npc, attacker); } break; + } } return super.onAttack(npc, attacker, damage, isSummon); } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java index f37f63de65..b7a13e7f89 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java @@ -152,6 +152,7 @@ public final class Venom extends AbstractNpcAI switch (event) { case "tower_check": + { if (CastleManager.getInstance().getCastleById(CASTLE).getSiege().getControlTowerCount() <= 1) { changeLocation(MoveTo.THRONE); @@ -160,18 +161,23 @@ public final class Venom extends AbstractNpcAI startQuestTimer("raid_check", 10000, npc, null, true); } break; + } case "raid_check": + { if (!npc.isInsideZone(ZoneId.SIEGE) && !npc.isTeleporting()) { npc.teleToLocation(_loc); } break; + } case "cube_despawn": + { if (npc != null) { npc.deleteMe(); } break; + } } return event; } @@ -225,13 +231,18 @@ public final class Venom extends AbstractNpcAI switch (skill.getId()) { case 4222: + { npc.teleToLocation(_loc); break; + } case 4995: + { teleportTarget(player); ((L2Attackable) npc).stopHating(player); break; + } case 4996: + { teleportTarget(player); ((L2Attackable) npc).stopHating(player); if ((_targets != null) && (_targets.size() > 0)) @@ -251,6 +262,7 @@ public final class Venom extends AbstractNpcAI _targets.clear(); } break; + } } return super.onSpellFinished(npc, player, skill); } @@ -268,7 +280,6 @@ public final class Venom extends AbstractNpcAI case VENOM: { _venom = npc; - _loc = _venom.getLocation(); _venom.disableSkill(VENOM_TELEPORT.getSkill(), -1); _venom.disableSkill(RANGE_TELEPORT.getSkill(), -1); @@ -344,9 +355,12 @@ public final class Venom extends AbstractNpcAI switch (loc) { case THRONE: + { _venom.teleToLocation(TRHONE, false); break; + } case PRISON: + { if ((_venom == null) || _venom.isDead() || _venom.isDecayed()) { _venom = addSpawn(VENOM, DUNGEON, false, 0); @@ -358,6 +372,7 @@ public final class Venom extends AbstractNpcAI cancelQuestTimer("raid_check", _venom, null); cancelQuestTimer("tower_check", _venom, null); break; + } } _loc.setLocation(_venom.getLocation()); } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java index 42bc6bd38e..736c8ef674 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java @@ -216,14 +216,20 @@ public final class Maguen extends AbstractNpcAI switch (getRandom(3)) { case 0: + { skillToCast = (getRandom(100) < 70) ? B_BUFF_1 : B_BUFF_2; break; + } case 1: + { skillToCast = (getRandom(100) < 70) ? C_BUFF_1 : C_BUFF_2; break; + } case 2: + { skillToCast = (getRandom(100) < 70) ? R_BUFF_1 : R_BUFF_2; break; + } } if (skillToCast != null) @@ -282,14 +288,20 @@ public final class Maguen extends AbstractNpcAI switch (i1) { case 0: + { skillToCast = B_PLASMA1; break; + } case 1: + { skillToCast = B_PLASMA2; break; + } case 2: + { skillToCast = B_PLASMA3; break; + } } break; } @@ -298,14 +310,20 @@ public final class Maguen extends AbstractNpcAI switch (i2) { case 0: + { skillToCast = C_PLASMA1; break; + } case 1: + { skillToCast = C_PLASMA2; break; + } case 2: + { skillToCast = C_PLASMA3; break; + } } break; } @@ -314,14 +332,20 @@ public final class Maguen extends AbstractNpcAI switch (i3) { case 0: + { skillToCast = R_PLASMA1; break; + } case 1: + { skillToCast = R_PLASMA2; break; + } case 2: + { skillToCast = R_PLASMA3; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java index 6af37c7710..e78a139c5c 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java @@ -77,15 +77,21 @@ public final class SilentValley extends AbstractNpcAI switch (event) { case "CLEAR": + { npc.doDie(null); break; + } case "CLEAR_EVENT": + { npc.broadcastEvent("CLEAR_ALL_INSTANT", 2000, null); npc.doDie(null); break; + } case "SPAWN_CHEST": + { addSpawn(CHEST, npc.getX() - 100, npc.getY(), npc.getZ() - 100, 0, false, 0); break; + } } } return null; @@ -190,11 +196,15 @@ public final class SilentValley extends AbstractNpcAI switch (eventName) { case "CLEAR_ALL": + { startQuestTimer("CLEAR", 60000, receiver, null); break; + } case "CLEAR_ALL_INSTANT": + { receiver.doDie(null); break; + } } } return super.onEventReceived(eventName, sender, receiver, reference); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java index 44fb7de7cd..d6a2600e29 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java @@ -123,6 +123,7 @@ public final class StakatoNest extends AbstractNpcAI switch (npc.getId()) { case STAKATO_NURSE: + { monster = checkMinion(npc); if (monster != null) { @@ -134,14 +135,18 @@ public final class StakatoNest extends AbstractNpcAI } } break; + } case STAKATO_BABY: + { monster = ((L2MonsterInstance) npc).getLeader(); if ((monster != null) && !monster.isDead()) { startQuestTimer("nurse_change", 5000, monster, killer); } break; + } case STAKATO_MALE: + { monster = checkMinion(npc); if (monster != null) { @@ -153,14 +158,18 @@ public final class StakatoNest extends AbstractNpcAI } } break; + } case STAKATO_FEMALE: + { monster = ((L2MonsterInstance) npc).getLeader(); if ((monster != null) && !monster.isDead()) { startQuestTimer("male_change", 5000, monster, killer); } break; + } case STAKATO_CHIEF: + { if (killer.isInParty()) { final List party = killer.getParty().getMembers(); @@ -174,6 +183,7 @@ public final class StakatoNest extends AbstractNpcAI giveCocoon(killer, npc); } break; + } } return super.onKill(npc, killer, isSummon); } @@ -202,11 +212,15 @@ public final class StakatoNest extends AbstractNpcAI switch (event) { case "nurse_change": + { npcId = STAKATO_NURSE_2; break; + } case "male_change": + { npcId = STAKATO_MALE_2; break; + } } if (npcId > 0) { diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Toyron/Toyron.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Toyron/Toyron.java index d18cf794b4..6916829091 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Toyron/Toyron.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Toyron/Toyron.java @@ -82,11 +82,15 @@ public final class Toyron extends AbstractNpcAI switch (qs.getCond()) { case 1: + { htmltext = "33004-01.html"; break; + } case 2: + { htmltext = "33004-02.html"; break; + } } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java index 288f0c6493..f67597d78f 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java @@ -83,7 +83,9 @@ public final class Trandon extends AbstractNpcAI case "33490-10.html": case "33490-11.html": case "33490-19.html": + { break; + } case "33490-12.html": { if (player.getRace().equals(Race.ERTHEIA) || hasAllSubCertifications(player)) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java index 11f9a9435e..2e5ec3ca1d 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java @@ -149,58 +149,88 @@ public final class VarkaSilenosSupport extends AbstractNpcAI switch (npc.getId()) { case ASHAS: + { htmltext = (AllianceLevel < 0) ? "31377-friend.html" : "31377-no.html"; break; + } case NARAN: + { htmltext = (AllianceLevel < 0) ? "31378-friend.html" : "31378-no.html"; break; + } case UDAN: + { htmltext = (AllianceLevel < 0) ? (AllianceLevel > -3) ? "31379-01.html" : "31379-04.html" : "31379-03.html"; break; + } case DIYABU: + { htmltext = (AllianceLevel < 0) ? "31380-friend.html" : "31380-no.html"; break; + } case HAGOS: + { htmltext = (AllianceLevel < 0) ? (AllianceLevel == -1) ? "31381-01.html" : "31381-02.html" : "31381-no.html"; break; + } case SHIKON: + { switch (AllianceLevel) { case -1: case -2: + { htmltext = "31382-01.html"; break; + } case -3: case -4: + { htmltext = "31382-02.html"; break; + } case -5: + { htmltext = "31382-03.html"; break; + } default: + { htmltext = "31382-no.html"; break; + } } break; + } case TERANU: + { switch (AllianceLevel) { case -1: case -2: case -3: + { htmltext = "31383-01.html"; break; + } case -4: + { htmltext = "31383-02.html"; break; + } case -5: + { htmltext = "31383-03.html"; break; + } default: + { htmltext = "31383-no.html"; break; + } } break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java index f2ce03efdf..318f800701 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java @@ -333,14 +333,20 @@ public final class IstinaCavern extends AbstractInstance switch (random) { case 1: + { showOnScreenMsg(instance, NpcStringId.ISTINA_S_SOUL_STONE_STARTS_POWERFULLY_ILLUMINATING_IN_RED, ExShowScreenMessage.TOP_CENTER, 6000); break; + } case 2: + { showOnScreenMsg(instance, NpcStringId.ISTINA_S_SOUL_STONE_STARTS_POWERFULLY_ILLUMINATING_IN_BLUE, ExShowScreenMessage.TOP_CENTER, 6000); break; + } case 3: + { showOnScreenMsg(instance, NpcStringId.ISTINA_S_SOUL_STONE_STARTS_POWERFULLY_ILLUMINATING_IN_GREEN, ExShowScreenMessage.TOP_CENTER, 6000); break; + } } } getTimers().addTimer("AUTHORITY_TIMER", 70000 + getRandom(25000), npc, null); @@ -598,20 +604,30 @@ public final class IstinaCavern extends AbstractInstance switch (instance.getStatus()) { case 0: + { htmltext = "33293-01.html"; break; + } case 1: + { htmltext = "33293-02.html"; break; + } case 2: + { htmltext = "33293-03.html"; break; + } case 3: + { htmltext = "33293-04.html"; break; + } case 4: + { htmltext = "33293-05.html"; break; + } } } return htmltext; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/QueenShyeed/QueenShyeed.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/QueenShyeed/QueenShyeed.java index b805b6bbc6..69581a097c 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/QueenShyeed/QueenShyeed.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/QueenShyeed/QueenShyeed.java @@ -52,15 +52,19 @@ public final class QueenShyeed extends AbstractNpcAI switch (event) { case "respawn": + { spawnShyeed(); break; + } case "despawn": + { if (!npc.isDead()) { npc.deleteMe(); startRespawn(); } break; + } } return null; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java index fe5488c8aa..79fcf3948d 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java @@ -364,20 +364,28 @@ public final class TeredorWarzone extends AbstractInstance switch (npc.getParameters().getInt("Spot", 0)) { case 1: + { npcId = getRandomBoolean() ? TEREDOR_LARVA : MUTANTED_MILLIPADE; break; + } case 2: case 3: + { npcId = getRandomBoolean() ? MUTANTED_MILLIPADE : HATCHET_UNDERBUG; break; + } case 4: case 5: case 6: + { npcId = getRandomBoolean() ? MUTANTED_MILLIPADE : HATCHET_UNDERBUG; break; + } case 7: + { npcId = getRandomEntry(MUTANTED_MILLIPADE, HATCHET_UNDERBUG, HATCHET_MILLIPADE); break; + } } if (npcId > 0) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java index a852734cb4..41c7968623 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java @@ -364,9 +364,12 @@ public final class Stage1 extends AbstractInstance implements IGameXmlReader switch (world.getStatus() - 1) { case 0: + { spawnFlaggedNPCs(world, 0); break; + } case 1: + { world.broadcastPacket(new ExShowScreenMessage(NpcStringId.THE_ENEMIES_HAVE_ATTACKED_EVERYONE_COME_OUT_AND_FIGHT_URGH, 5, 1000)); for (int i : ENTRANCE_ROOM_DOORS) { @@ -374,7 +377,9 @@ public final class Stage1 extends AbstractInstance implements IGameXmlReader } spawnFlaggedNPCs(world, 1); break; + } case 4: + { world.broadcastPacket(new ExShowScreenMessage(NpcStringId.OBELISK_HAS_COLLAPSED_DON_T_LET_THE_ENEMIES_JUMP_AROUND_WILDLY_ANYMORE, 5, 1000)); for (int i : SQUARE_DOORS) { @@ -382,22 +387,31 @@ public final class Stage1 extends AbstractInstance implements IGameXmlReader } spawnFlaggedNPCs(world, 4); break; + } case 5: + { world.openCloseDoor(SCOUTPASS_DOOR, true); spawnFlaggedNPCs(world, 3); spawnFlaggedNPCs(world, 5); break; + } case 6: + { world.openCloseDoor(THRONE_DOOR, true); break; + } case 7: + { spawnFlaggedNPCs(world, 7); break; + } case 8: + { world.broadcastPacket(new ExShowScreenMessage(NpcStringId.COME_OUT_WARRIORS_PROTECT_SEED_OF_DESTRUCTION, 5, 1000)); world.setParameter("deviceCount", 0); spawnFlaggedNPCs(world, 8); break; + } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java index da6402acdf..6f5f88e5a8 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java @@ -205,20 +205,30 @@ public final class CastleChamberlain extends AbstractNpcAI switch (func) { case Castle.FUNC_RESTORE_EXP: + { fee = (level == 45) ? Config.CS_EXPREG1_FEE : Config.CS_EXPREG2_FEE; break; + } case Castle.FUNC_RESTORE_HP: + { fee = (level == 300) ? Config.CS_HPREG1_FEE : Config.CS_HPREG2_FEE; break; + } case Castle.FUNC_RESTORE_MP: + { fee = (level == 40) ? Config.CS_MPREG1_FEE : Config.CS_MPREG2_FEE; break; + } case Castle.FUNC_SUPPORT: + { fee = (level == 5) ? Config.CS_SUPPORT1_FEE : Config.CS_SUPPORT2_FEE; break; + } case Castle.FUNC_TELEPORT: + { fee = (level == 1) ? Config.CS_TELE1_FEE : Config.CS_TELE2_FEE; break; + } } return fee; } @@ -229,20 +239,30 @@ public final class CastleChamberlain extends AbstractNpcAI switch (func) { case Castle.FUNC_RESTORE_EXP: + { ratio = Config.CS_EXPREG_FEE_RATIO; break; + } case Castle.FUNC_RESTORE_HP: + { ratio = Config.CS_HPREG_FEE_RATIO; break; + } case Castle.FUNC_RESTORE_MP: + { ratio = Config.CS_MPREG_FEE_RATIO; break; + } case Castle.FUNC_SUPPORT: + { ratio = Config.CS_SUPPORT_FEE_RATIO; break; + } case Castle.FUNC_TELEPORT: + { ratio = Config.CS_TELE_FEE_RATIO; break; + } } return ratio; } @@ -257,14 +277,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.OUTER_DOOR_UPGRADE_PRICE2; break; + } case 3: + { price = Config.OUTER_DOOR_UPGRADE_PRICE3; break; + } case 5: + { price = Config.OUTER_DOOR_UPGRADE_PRICE5; break; + } } break; } @@ -273,14 +299,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.INNER_DOOR_UPGRADE_PRICE2; break; + } case 3: + { price = Config.INNER_DOOR_UPGRADE_PRICE3; break; + } case 5: + { price = Config.INNER_DOOR_UPGRADE_PRICE5; break; + } } break; } @@ -289,14 +321,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.WALL_UPGRADE_PRICE2; break; + } case 3: + { price = Config.WALL_UPGRADE_PRICE3; break; + } case 5: + { price = Config.WALL_UPGRADE_PRICE5; break; + } } break; } @@ -310,17 +348,25 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 1: + { price = Config.TRAP_UPGRADE_PRICE1; break; + } case 2: + { price = Config.TRAP_UPGRADE_PRICE2; break; + } case 3: + { price = Config.TRAP_UPGRADE_PRICE3; break; + } case 4: + { price = Config.TRAP_UPGRADE_PRICE4; break; + } } return price; } @@ -379,14 +425,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (fortress.getFortState()) { case 1: + { fortStatus = "1300122"; break; + } case 2: + { fortStatus = "1300124"; break; + } default: + { fortStatus = "1300123"; break; + } } sb.append("1300" + fortId + ""); sb.append(" (" + fortType + ")"); @@ -1144,15 +1196,22 @@ public final class CastleChamberlain extends AbstractNpcAI switch (evt.getRequest()) { case 3: // Seed info + { player.sendPacket(new ExShowSeedInfo(castleId, evt.isNextPeriod(), true)); break; + } case 4: // Crop info + { player.sendPacket(new ExShowCropInfo(castleId, evt.isNextPeriod(), true)); break; + } case 5: // Basic info + { player.sendPacket(new ExShowManorDefaultInfo(true)); break; + } case 7: // Seed settings + { if (manor.isManorApproved()) { player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM); @@ -1160,7 +1219,9 @@ public final class CastleChamberlain extends AbstractNpcAI } player.sendPacket(new ExShowSeedSetting(castleId)); break; + } case 8: // Crop settings + { if (manor.isManorApproved()) { player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM); @@ -1168,8 +1229,11 @@ public final class CastleChamberlain extends AbstractNpcAI } player.sendPacket(new ExShowCropSetting(castleId)); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Player " + player.getName() + " (" + player.getObjectId() + ") send unknown request id " + evt.getRequest() + "!"); + } } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java index c7cd273165..00f6f17b30 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java @@ -103,25 +103,35 @@ public final class CastleTeleporter extends AbstractNpcAI final int unknowInt = Integer.parseInt(st.nextToken()); final StatsSet npcParams = npc.getParameters(); Location teleLoc = null; - switch (unknowInt) { case 0: + { teleLoc = getTeleportLocation(npcParams, "01", "02", "03"); break; + } case 1: + { teleLoc = getTeleportLocation(npcParams, "11", "12", "13"); break; + } case 2: + { teleLoc = getTeleportLocation(npcParams, "21", "22", "23"); break; + } case 3: + { teleLoc = getTeleportLocation(npcParams, "31", "32", "33"); break; + } case 4: + { teleLoc = getTeleportLocation(npcParams, "41", "42", "43"); break; + } case 5: + { if (isOwner(player, npc)) { teleLoc = new Location(npcParams.getInt("pos_x51"), npcParams.getInt("pos_y51"), npcParams.getInt("pos_z51")); @@ -131,6 +141,7 @@ public final class CastleTeleporter extends AbstractNpcAI return "CastleTeleporter-noAuthority.html"; } break; + } } if (teleLoc != null) @@ -209,7 +220,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35308: case 35352: case 35544: + { return "CastleTeleporter-01"; + } case 35093: case 35135: case 35177: @@ -217,7 +230,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35309: case 35353: case 35545: + { return "CastleTeleporter-02"; + } case 35094: case 35136: case 35178: @@ -225,7 +240,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35310: case 35354: case 35546: + { return "CastleTeleporter-03"; + } } return String.valueOf(npc.getId()); } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java index 2e04e99770..e4af53361b 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java @@ -61,11 +61,16 @@ public final class CastleWarehouse extends AbstractNpcAI case "warehouse-01.html": case "warehouse-02.html": case "warehouse-03.html": + { break; + } case "warehouse-04.html": + { htmltext = (!isMyLord) ? "warehouse-no.html" : getHtm(player.getHtmlPrefix(), "warehouse-04.html").replace("%blood%", Integer.toString(player.getClan().getBloodAllianceCount())); break; + } case "Receive": + { if (!isMyLord) { htmltext = "warehouse-no.html"; @@ -81,7 +86,9 @@ public final class CastleWarehouse extends AbstractNpcAI htmltext = "warehouse-06.html"; } break; + } case "Exchange": + { if (!isMyLord) { htmltext = "warehouse-no.html"; @@ -97,9 +104,12 @@ public final class CastleWarehouse extends AbstractNpcAI htmltext = "warehouse-07.html"; } break; + } default: + { htmltext = null; break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java index 5c069122e1..679944e552 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java @@ -272,10 +272,14 @@ public final class ClanHallManager extends AbstractNpcAI case 1: case 2: case 3: + { ((L2MerchantInstance) npc).showBuyWindow(player, Integer.parseInt(npc.getId() + "0" + (itemLevel - 1))); break; + } default: + { htmltext = "ClanHallManager-noFunction.html"; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/EnergySeeds.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/EnergySeeds.java index 55a016c369..546f3b3cc0 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/EnergySeeds.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/EnergySeeds.java @@ -103,13 +103,19 @@ public final class EnergySeeds extends AbstractNpcAI switch (seed) { case INFINITY: + { return false; + } case DESTRUCTION: + { return GraciaSeedsManager.getInstance().getSoDState() == 2; + } case ANNIHILATION_BISTAKON: case ANNIHILATION_REPTILIKON: case ANNIHILATION_COKRAKON: + { return true; + } } return true; } @@ -136,25 +142,39 @@ public final class EnergySeeds extends AbstractNpcAI switch (npc.getId()) { case 18678: // Water + { itemId = 14016; break; + } case 18679: // Fire + { itemId = 14015; break; + } case 18680: // Wind + { itemId = 14017; break; + } case 18681: // Earth + { itemId = 14018; break; + } case 18682: // Divinity + { itemId = 14020; break; + } case 18683: // Darkness + { itemId = 14019; break; + } default: + { return super.onSkillSee(npc, caster, skill, targets, isSummon); + } } if (getRandom(100) < 33) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java index a93847a05c..749f577141 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java @@ -79,8 +79,10 @@ public final class ManorManager extends AbstractNpcAI case "manager-help-01.htm": case "manager-help-02.htm": case "manager-help-03.htm": + { htmltext = event; break; + } } return htmltext; } @@ -130,25 +132,39 @@ public final class ManorManager extends AbstractNpcAI break; } case 2: // Crop sales + { player.sendPacket(new ExShowSellCropList(player.getInventory(), castleId)); break; + } case 3: // Seed info + { player.sendPacket(new ExShowSeedInfo(castleId, evt.isNextPeriod(), false)); break; + } case 4: // Crop info + { player.sendPacket(new ExShowCropInfo(castleId, evt.isNextPeriod(), false)); break; + } case 5: // Basic info + { player.sendPacket(new ExShowManorDefaultInfo(false)); break; + } case 6: // Buy harvester + { ((L2MerchantInstance) npc).showBuyWindow(player, 300000 + npc.getId()); break; + } case 9: // Edit sales (Crop sales) + { player.sendPacket(new ExShowProcureCropDetail(evt.getManorId())); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Player " + player.getName() + " (" + player.getObjectId() + ") send unknown request id " + evt.getRequest() + "!"); + } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/StarStones.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/StarStones.java index f0216337b8..d3764275ea 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/StarStones.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/ai/others/StarStones.java @@ -57,24 +57,32 @@ public final class StarStones extends AbstractNpcAI case 18684: case 18685: case 18686: + { // give Red item itemId = 14009; break; + } case 18687: case 18688: case 18689: + { // give Blue item itemId = 14010; break; + } case 18690: case 18691: case 18692: + { // give Green item itemId = 14011; break; + } default: + { // unknown npc! return super.onSkillSee(npc, caster, skill, targets, isSummon); + } } if (getRandom(100) < 33) { diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java index 7478b44a46..0e5f83d5d2 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java @@ -86,13 +86,19 @@ public final class AdminClanHall implements IAdminCommandHandler switch (actionVal) { case "inside": + { loc = clanHall.getOwnerLocation(); break; + } case "outside": + { loc = clanHall.getBanishLocation(); break; + } default: + { loc = player.getLocation(); + } } player.teleToLocation(loc); } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java index 214f3fcca7..af8911c09b 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java @@ -192,26 +192,40 @@ public class AdminLogin implements IAdminCommandHandler switch (currentType) { case 0x01: + { nameType += "Normal"; break; + } case 0x02: + { nameType += "Relax"; break; + } case 0x04: + { nameType += "Test"; break; + } case 0x08: + { nameType += "NoLabel"; break; + } case 0x10: + { nameType += "Restricted"; break; + } case 0x20: + { nameType += "Event"; break; + } case 0x40: + { nameType += "Free"; break; + } } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java index bb357a155b..1daf6a0ff9 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java @@ -128,34 +128,50 @@ public final class AdminPForge implements IAdminCommandHandler case 'B': case 'x': case 'X': + { // array break; + } case 'c': case 'C': + { // byte break; + } case 'h': case 'H': + { // word break; + } case 'd': case 'D': + { // dword break; + } case 'q': case 'Q': + { // qword break; + } case 'f': case 'F': + { // double break; + } case 's': case 'S': + { // string break; + } default: + { return false; + } } } @@ -169,7 +185,9 @@ public final class AdminPForge implements IAdminCommandHandler case "sc": case "sb": case "cs": + { return true; + } } return false; @@ -401,9 +419,12 @@ public final class AdminPForge implements IAdminCommandHandler switch (value) { case "$oid": + { value = String.valueOf(activeChar.getObjectId()); break; + } case "$boid": + { boat = activeChar.getBoat(); if (boat != null) { @@ -414,28 +435,44 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$title": + { value = activeChar.getTitle(); break; + } case "$name": + { value = activeChar.getName(); break; + } case "$x": + { value = String.valueOf(activeChar.getX()); break; + } case "$y": + { value = String.valueOf(activeChar.getY()); break; + } case "$z": + { value = String.valueOf(activeChar.getZ()); break; + } case "$heading": + { value = String.valueOf(activeChar.getHeading()); break; + } case "$toid": + { value = String.valueOf(activeChar.getTargetId()); break; + } case "$tboid": + { target = activeChar.getTarget(); if ((target != null) && (target instanceof L2Playable)) { @@ -450,7 +487,9 @@ public final class AdminPForge implements IAdminCommandHandler } } break; + } case "$ttitle": + { target = activeChar.getTarget(); if ((target != null) && (target instanceof L2Character)) { @@ -461,7 +500,9 @@ public final class AdminPForge implements IAdminCommandHandler value = ""; } break; + } case "$tname": + { target = activeChar.getTarget(); if (target != null) { @@ -472,7 +513,9 @@ public final class AdminPForge implements IAdminCommandHandler value = ""; } break; + } case "$tx": + { target = activeChar.getTarget(); if (target != null) { @@ -483,7 +526,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$ty": + { target = activeChar.getTarget(); if (target != null) { @@ -494,7 +539,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$tz": + { target = activeChar.getTarget(); if (target != null) { @@ -505,7 +552,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$theading": + { target = activeChar.getTarget(); if (target != null) { @@ -516,6 +565,7 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } } if (method.equals("sc") || method.equals("sb")) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java index 42ba371a4d..28eee47848 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java @@ -375,14 +375,20 @@ public class AdminSpawn implements IAdminCommandHandler { default: case 0: + { _log.info("('',1," + i + "," + x + "," + y + "," + z + ",0,0," + h + ",60,0,0),"); break; + } case 1: + { _log.info(""); break; + } case 2: + { _log.info("{ " + i + ", " + x + ", " + y + ", " + z + ", " + h + " },"); break; + } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java index fbf049aae5..7eda72c449 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java @@ -328,23 +328,35 @@ public class AdminTeleport implements IAdminCommandHandler switch (player.getRace()) { case ELF: + { regionName = "elf_town"; break; + } case DARK_ELF: + { regionName = "darkelf_town"; break; + } case ORC: + { regionName = "orc_town"; break; + } case DWARF: + { regionName = "dwarf_town"; break; + } case KAMAEL: + { regionName = "kamael_town"; break; + } case HUMAN: default: + { regionName = "talking_island_town"; + } } player.teleToLocation(MapRegionManager.getInstance().getMapRegionByName(regionName).getSpawnLoc(), true, null); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/bypasshandlers/Augment.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/bypasshandlers/Augment.java index 95ce308a32..6f3cdd671a 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/bypasshandlers/Augment.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/bypasshandlers/Augment.java @@ -44,11 +44,15 @@ public class Augment implements IBypassHandler switch (Integer.parseInt(command.substring(8, 9).trim())) { case 1: + { activeChar.sendPacket(ExShowVariationMakeWindow.STATIC_PACKET); return true; + } case 2: + { activeChar.sendPacket(ExShowVariationCancelWindow.STATIC_PACKET); return true; + } } } catch (Exception e) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java index 440a9d3a54..4eba81bf89 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java @@ -78,11 +78,15 @@ public class KarmaCount extends AbstractEffect switch (_mode) { case 0: // diff + { final int newReputation = Math.min(player.getReputation() + _amount, 0); player.setReputation(newReputation); break; + } case 1: // reset + { player.setReputation(0); + } } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/itemhandlers/EventItem.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/itemhandlers/EventItem.java index 7e0a15c2bf..e7c5629cc7 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/itemhandlers/EventItem.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/itemhandlers/EventItem.java @@ -48,13 +48,19 @@ public class EventItem implements IItemHandler switch (itemId) { case 13787: // Handy's Block Checker Bond + { used = useBlockCheckerItem(activeChar, item); break; + } case 13788: // Handy's Block Checker Land Mine + { used = useBlockCheckerItem(activeChar, item); break; + } default: + { _log.warning("EventItemHandler: Item with id: " + itemId + " is not handled"); + } } return used; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/playeractions/SocialAction.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/playeractions/SocialAction.java index 3b46c485a5..1e34a0d148 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/playeractions/SocialAction.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/playeractions/SocialAction.java @@ -57,18 +57,24 @@ public final class SocialAction implements IPlayerActionHandler case 15: // Shyness case 28: // Propose case 29: // Provoke + { useSocial(activeChar, data.getOptionId()); break; + } case 30: // Beauty Shop + { if (useSocial(activeChar, data.getOptionId())) { activeChar.broadcastInfo(); } break; + } case 16: // Exchange Bows case 17: // High Five case 18: // Couple Dance + { useCoupleSocial(activeChar, data.getOptionId()); + } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java index 89ee884a61..991a11774d 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java @@ -62,53 +62,85 @@ public class Enchant implements ITelnetCommand switch (itemType) { case 1: + { itemType = Inventory.PAPERDOLL_HEAD; break; + } case 2: + { itemType = Inventory.PAPERDOLL_CHEST; break; + } case 3: + { itemType = Inventory.PAPERDOLL_GLOVES; break; + } case 4: + { itemType = Inventory.PAPERDOLL_FEET; break; + } case 5: + { itemType = Inventory.PAPERDOLL_LEGS; break; + } case 6: + { itemType = Inventory.PAPERDOLL_RHAND; break; + } case 7: + { itemType = Inventory.PAPERDOLL_LHAND; break; + } case 8: + { itemType = Inventory.PAPERDOLL_LEAR; break; + } case 9: + { itemType = Inventory.PAPERDOLL_REAR; break; + } case 10: + { itemType = Inventory.PAPERDOLL_LFINGER; break; + } case 11: + { itemType = Inventory.PAPERDOLL_RFINGER; break; + } case 12: + { itemType = Inventory.PAPERDOLL_NECK; break; + } case 13: + { itemType = Inventory.PAPERDOLL_UNDER; break; + } case 14: + { itemType = Inventory.PAPERDOLL_CLOAK; break; + } case 15: + { itemType = Inventory.PAPERDOLL_BELT; break; + } default: + { itemType = 0; break; + } } final boolean success = setEnchant(player, enchant, itemType); return success ? "Item has been successfully enchanted." : "Failed to enchant player's item!"; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java index 901e00370f..6d91a979b8 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java @@ -47,20 +47,30 @@ public class PartyInfo implements IUserCommandHandler switch (party.getDistributionType()) { case FINDERS_KEEPERS: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_FINDERS_KEEPERS); break; + } case RANDOM: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_RANDOM); break; + } case RANDOM_INCLUDING_SPOIL: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_RANDOM_INCLUDING_SPOIL); break; + } case BY_TURN: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_BY_TURN); break; + } case BY_TURN_INCLUDING_SPOIL: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_BY_TURN_INCLUDING_SPOIL); break; + } } // Not used in Infinite Odissey diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java index 98986c7bb2..0d58722682 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java @@ -41,6 +41,7 @@ public class CastleVCmd implements IVoicedCommandHandler switch (command) { case "opendoors": + { if (!params.equals("castle")) { activeChar.sendMessage("Only Castle doors can be open."); @@ -79,7 +80,9 @@ public class CastleVCmd implements IVoicedCommandHandler door.openMe(); } break; + } case "closedoors": + { if (!params.equals("castle")) { activeChar.sendMessage("Only Castle doors can be closed."); @@ -115,12 +118,15 @@ public class CastleVCmd implements IVoicedCommandHandler door2.closeMe(); } break; + } case "ridewyvern": + { if (activeChar.isClanLeader() && (activeChar.getClan().getCastleId() > 0)) { activeChar.mount(12621, 0, true); } break; + } } return true; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java index 2f9e28fa07..31b9470ed5 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java @@ -266,13 +266,17 @@ public final class ChamberOfDelusion extends AbstractInstance switch (eventName) { case "SCE_LUCKY": + { receiver.setBusy(true); receiver.doCast(SUCCESS_SKILL.getSkill()); break; + } case "SCE_DREAM_FIRE_IN_THE_HOLE": + { receiver.setBusy(true); receiver.doCast(FAIL_SKILL.getSkill()); break; + } } return null; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java index 0aae3383a4..12738e908a 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java @@ -130,8 +130,10 @@ public final class DarkCloudMansion extends AbstractInstance switch (event) { case "DELETE_ONE": + { npc.deleteMe(); break; + } case "DELETE": { world.getNpcs(BELETH_SAMPLE).stream().filter(n -> n != npc).forEach(L2Npc::deleteMe); @@ -140,8 +142,10 @@ public final class DarkCloudMansion extends AbstractInstance break; } case "CHAT": + { world.getNpcs(BELETH_SAMPLE).stream().filter(n -> n.isScriptValue(1)).forEach(n -> n.broadcastSay(ChatType.NPC_GENERAL, DECAY_CHAT[getRandom(DECAY_CHAT.length)])); break; + } } } return null; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java index d2efec6fbf..78abe60a80 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java @@ -80,11 +80,15 @@ public final class FaeronTrainingGrounds1 extends AbstractInstance switch (event) { case "enter_instance": + { enterInstance(player, npc, TEMPLATE_ID); break; + } case "exit_instance": + { finishInstance(player, 0); break; + } case "33944-03.html": { if (qs.isCond(6)) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java index 31def525c1..591730785d 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java @@ -232,13 +232,19 @@ public final class FortressDungeon extends AbstractInstance switch (instance.getStatus()) { case 0: + { npcId = RAIDS1[getRandom(RAIDS1.length)]; break; + } case 1: + { npcId = RAIDS2[getRandom(RAIDS2.length)]; break; + } default: + { npcId = RAIDS3[getRandom(RAIDS3.length)]; + } } // Spawn raid diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java index 65481c981c..5a74053b38 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java @@ -123,50 +123,80 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (event) { case "enter_instance": + { enterInstance(player, npc, TEMPLATE_ID); break; + } case "message1": + { showOnScreenMsg(player, NpcStringId.AN_INTRUDER_INTERESTING, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message2": + { showOnScreenMsg(player, NpcStringId.PROVE_YOUR_WORTH, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message3": + { showOnScreenMsg(player, NpcStringId.ONLY_THOSE_STRONG_ENOUGH_SHALL_PROCEED, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message4": + { showOnScreenMsg(player, NpcStringId.THOUGH_SMALL_THIS_POWER_WILL_HELP_YOU_GREATLY, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message5": + { showOnScreenMsg(player, NpcStringId.ARE_YOU_STRONG_OR_WEAK_OF_THE_LIGHT_OR_DARKNESS, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message6": + { showOnScreenMsg(player, NpcStringId.ONLY_THOSE_OF_LIGHT_MAY_PASS_OTHERS_MUST_PROVE_THEIR_STRENGTH, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "razkan_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.COME_ATTACK_ME_IF_YOU_DARE); break; + } case "bathus_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.IT_S_THE_END_FOR_YOU_TRAITOR); break; + } case "bamonti_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.I_WANT_TO_HEAR_YOU_CRY); break; + } case "carcass_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.I_WANT_TO_HEAR_YOU_CRY); break; + } case "khan_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.YOU_LL_HAVE_TO_KILL_US_FIRST); break; + } case "seknus_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.LETS_SEE_WHAT_YOU_ARE_MADE_OF); break; + } case "lotus_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.REPENT_AND_YOUR_DEATH_WILL_BE_QUICK); break; + } case "ele_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.DIE_TRAITOR); break; + } case "spawn_npc1": { final Instance world = player.getInstanceWorld(); @@ -321,8 +351,10 @@ public final class HarnakUndergroundRuins extends AbstractInstance break; } case "exit": + { finishInstance(player, 0); break; + } case "spawn_npc4": { final Instance world = player.getInstanceWorld(); @@ -372,35 +404,55 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (timerCount) { case 0: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING41); break; + } case 1: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING42); break; + } case 2: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING43); break; + } case 3: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING44); break; + } case 4: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING45); break; + } case 5: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS); break; + } case 6: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS2); break; + } case 7: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS3); break; + } case 8: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS4); break; + } case 9: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECOND); break; + } } if (timerCount <= 4) { @@ -464,29 +516,45 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (npc.getId()) { case RAKZAN: + { moveNpcRoom1(KRAKIA_BATHUS, NpcStringId.ARE_YOU_PLANNING_TO_BETRAY_THE_GODS_AND_FOLLOW_A_GIANT, "bathus_say", world); break; + } case KRAKIA_BATHUS: + { moveNpcRoom1(BAMONTI, NpcStringId.HAHA, "bamonti_say", world); break; + } case BAMONTI: + { moveNpcRoom1(KRAKIA_CARCASS, NpcStringId.HAHA, "carcass_say", world); break; + } case KRAKIA_CARCASS: + { moveNpcRoom1(WEISS_KHAN, NpcStringId.YOU_WILL_NOT_FREE_HERMUNCUS, "khan_say", world); break; + } case WEISS_KHAN: + { moveNpcRoom1(SEKNUS, NpcStringId.MORTAL, "seknus_say", world); break; + } case SEKNUS: + { moveNpcRoom1(KRAKIA_LOTUS, NpcStringId.TRYING_TO_FREE_HERMUNCUS, "lotus_say", world); break; + } case KRAKIA_LOTUS: + { moveNpcRoom1(WEISS_ELE, NpcStringId.YOU_WILL_NEVER_BREAK_THE_SEAL, "ele_say", world); break; + } case WEISS_ELE: + { startQuestTimer("spawn_npc2", 100, npc, killer); break; + } } break; } @@ -499,14 +567,20 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (params.getInt("wave")) { case 1: + { startQuestTimer("spawn_wave2", 100, npc, killer); break; + } case 2: + { startQuestTimer("spawn_wave3", 100, npc, killer); break; + } case 3: + { world.openCloseDoor(DOOR_TWO, true); break; + } } } break; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java index 2903a74346..cd9f853aa8 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java @@ -56,11 +56,15 @@ public final class KaraphonHabitat extends AbstractInstance switch (event) { case "enter_instance": + { enterInstance(player, npc, TEMPLATE_ID); break; + } case "exit_instance": + { finishInstance(player, 0); break; + } } } return null; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java index 9042ead6d9..218e44562d 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java @@ -649,6 +649,7 @@ public final class KartiasLabyrinth extends AbstractInstance switch (stage) { case 1: + { switch (wave) { case 1: @@ -676,7 +677,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 2: + { switch (wave) { case 1: @@ -704,7 +707,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 3: + { switch (wave) { case 1: @@ -763,7 +768,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 4: + { switch (wave) { case 1: @@ -791,7 +798,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 5: + { switch (wave) { case 1: @@ -826,6 +835,7 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } } } else if (room == 2) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java index a05e55df7f..9d3f2f142f 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java @@ -310,20 +310,30 @@ public final class LabyrinthOfBelis extends AbstractInstance switch (world.getStatus()) { case 0: + { htmltext = "19155-01.html"; break; + } case 3: + { htmltext = "19155-03.html"; break; + } case 5: + { htmltext = "19155-04.html"; break; + } case 7: + { htmltext = "19155-05.html"; break; + } case 9: + { htmltext = "19155-06.html"; break; + } } } else @@ -334,11 +344,15 @@ public final class LabyrinthOfBelis extends AbstractInstance break; } case BELIS_VERITIFICATION_SYSTEM: + { htmltext = "33215.html"; break; + } case ELECTRICITY_GENERATOR: + { htmltext = "33216.html"; break; + } } return htmltext; } @@ -451,17 +465,25 @@ public final class LabyrinthOfBelis extends AbstractInstance switch (world.getStatus()) { case 0: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.LET_ME_KNOW_WHEN_YOU_RE_ALL_READY); break; + } case 4: + { showOnScreenMsg(player, NpcStringId.MARK_OF_BELIS_CAN_BE_ACQUIRED_FROM_ENEMIES_NUSE_THEM_IN_THE_BELIS_VERIFICATION_SYSTEM, ExShowScreenMessage.TOP_CENTER, 4500); break; + } case 6: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.DON_T_COME_BACK_HERE); break; + } default: + { getTimers().cancelTimer("MESSAGE", npc, null); break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/Nursery/Nursery.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/Nursery/Nursery.java index 24299d102e..602388546c 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/Nursery/Nursery.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/Nursery/Nursery.java @@ -148,14 +148,20 @@ public final class Nursery extends AbstractInstance switch (gameStage) { case 0: + { htmltext = "GameManager-01.html"; break; + } case 2: + { htmltext = "GameManager-02.html"; break; + } case 3: + { htmltext = "GameManager-03.html"; break; + } } final BuffInfo energyInfo = player.getEffectList().getBuffInfoByAbnormalType(ENERGY_SKILL_1.getSkill().getAbnormalType()); @@ -324,14 +330,20 @@ public final class Nursery extends AbstractInstance switch (getRandom(3)) { case 0: + { ENERGY_SKILL_1.getSkill().applyEffects(npc, killer); break; + } case 1: + { ENERGY_SKILL_2.getSkill().applyEffects(npc, killer); break; + } case 2: + { ENERGY_SKILL_3.getSkill().applyEffects(npc, killer); break; + } } instance.broadcastPacket(new Earthquake(npc, 50, 3)); showOnScreenMsg(instance, NpcStringId.RECEIVED_REGENERATION_ENERGY, ExShowScreenMessage.MIDDLE_CENTER, 2000); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java index 45610ed536..e3c55193cb 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java @@ -125,20 +125,30 @@ public final class SSQDisciplesNecropolisPast extends AbstractInstance switch (count) { case 4: + { world.openCloseDoor(DOOR_1, true); break; + } case 10: + { world.openCloseDoor(DOOR_2, true); break; + } case 18: + { world.openCloseDoor(DOOR_3, true); break; + } case 28: + { world.openCloseDoor(DOOR_4, true); break; + } case 40: + { world.openCloseDoor(DOOR_5, true); break; + } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java index f547c238c0..b6a0c0e165 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java @@ -58,10 +58,13 @@ public class Q00013_ParcelDelivery extends Quest switch (event) { case "31274-02.html": + { st.startQuest(); giveItems(player, PACKAGE, 1); break; + } case "31539-01.html": + { if (st.isCond(1) && hasQuestItems(player, PACKAGE)) { giveAdena(player, 271980, true); @@ -73,6 +76,7 @@ public class Q00013_ParcelDelivery extends Quest htmltext = "31539-02.html"; } break; + } } return htmltext; } @@ -87,28 +91,38 @@ public class Q00013_ParcelDelivery extends Quest switch (st.getState()) { case State.CREATED: + { if (npcId == FUNDIN) { htmltext = "31274-00.htm"; } break; + } case State.STARTED: + { if (st.isCond(1)) { switch (npcId) { case FUNDIN: + { htmltext = "31274-02.html"; break; + } case VULCAN: + { htmltext = "31539-00.html"; break; + } } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java index 59cd95e537..72dfe89324 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java @@ -56,21 +56,27 @@ public class Q00015_SweetWhispers extends Quest switch (event) { case "31302-01.html": + { st.startQuest(); break; + } case "31518-01.html": + { if (st.isCond(1)) { st.setCond(2); } break; + } case "31517-01.html": + { if (st.isCond(2)) { addExpAndSp(player, 714215, 171); st.exitQuest(false, true); } break; + } } return htmltext; } @@ -85,42 +91,58 @@ public class Q00015_SweetWhispers extends Quest switch (st.getState()) { case State.CREATED: + { if (npcId == VLADIMIR) { htmltext = "31302-00.htm"; } break; + } case State.STARTED: + { switch (npcId) { case VLADIMIR: + { if (st.isCond(1)) { htmltext = "31302-01a.html"; } break; + } case M_NECROMANCER: + { switch (st.getCond()) { case 1: + { htmltext = "31518-00.html"; break; + } case 2: + { htmltext = "31518-01a.html"; break; + } } break; + } case HIERARCH: + { if (st.isCond(2)) { htmltext = "31517-00.html"; } break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java index 2a4dcf1546..b38679f897 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java @@ -143,14 +143,20 @@ public final class Q00040_ASpecialOrder extends Quest switch (npc.getId()) { case HELVETIA: + { htmltext = "30081-03.html"; break; + } case O_FULLE: + { htmltext = "31572-03.html"; break; + } case GESTO: + { htmltext = "30511-01.html"; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java index c1bb4bb793..17170a6dd7 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java @@ -165,20 +165,30 @@ public final class Q00042_HelpTheUncle extends Quest switch (st.getCond()) { case 1: + { htmltext = (hasQuestItems(player, TRIDENT)) ? "30828-02.html" : "30828-02a.html"; break; + } case 2: + { htmltext = "30828-04.html"; break; + } case 3: + { htmltext = "30828-05.html"; break; + } case 4: + { htmltext = "30828-07.html"; break; + } case 5: + { htmltext = "30828-08.html"; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java index beb75704c1..b44f375a10 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java @@ -168,20 +168,30 @@ public final class Q00043_HelpTheSister extends Quest switch (st.getCond()) { case 1: + { htmltext = (hasQuestItems(player, CRAFTED_DAGGER)) ? "30829-02.html" : "30829-02a.html"; break; + } case 2: + { htmltext = "30829-04.html"; break; + } case 3: + { htmltext = "30829-05.html"; break; + } case 4: + { htmltext = "30829-07.html"; break; + } case 5: + { htmltext = "30829-08.html"; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java index 5091e034e2..1940c8b0b0 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java @@ -162,20 +162,30 @@ public final class Q00044_HelpTheSon extends Quest switch (st.getCond()) { case 1: + { htmltext = (hasQuestItems(player, WORK_HAMMER)) ? "30827-02.html" : "30827-02a.html"; break; + } case 2: + { htmltext = "30827-04.html"; break; + } case 3: + { htmltext = "30827-05.html"; break; + } case 4: + { htmltext = "30827-07.html"; break; + } case 5: + { htmltext = "30827-08.html"; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java index 299ff814a4..cbc888b6eb 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00114_ResurrectionOfAnOldManager/Q00114_ResurrectionOfAnOldManager.java @@ -97,14 +97,20 @@ public class Q00114_ResurrectionOfAnOldManager extends Quest switch (qs.getCond()) { case 3: + { htmltext = "32041-12.html"; break; + } case 4: + { htmltext = "32041-13.html"; break; + } case 5: + { htmltext = "32041-14.html"; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java index b90e5142b5..5c9855494b 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00122_OminousNews/Q00122_OminousNews.java @@ -82,14 +82,20 @@ public final class Q00122_OminousNews extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = "31979-01.htm"; break; + } case State.STARTED: + { htmltext = "31979-03.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java index cbde91959f..1a222ec48d 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java @@ -87,40 +87,55 @@ public class Q00125_TheNameOfEvil1 extends Quest switch (event) { case "32114-05.html": + { qs.startQuest(); break; + } case "32114-08.html": + { if (qs.isCond(1)) { giveItems(player, GAZKH_FRAGMENT, 1); qs.setCond(2, true); } break; + } case "32117-09.html": + { if (qs.isCond(2)) { qs.setCond(3, true); } break; + } case "32117-15.html": + { if (qs.isCond(4)) { qs.setCond(5, true); } break; + } case "T_One": + { qs.set("T", "1"); htmltext = "32119-04.html"; break; + } case "E_One": + { qs.set("E", "1"); htmltext = "32119-05.html"; break; + } case "P_One": + { qs.set("P", "1"); htmltext = "32119-06.html"; break; + } case "U_One": + { qs.set("U", "1"); if (qs.isCond(5) && (qs.getInt("T") > 0) && (qs.getInt("E") > 0) && (qs.getInt("P") > 0) && (qs.getInt("U") > 0)) { @@ -136,32 +151,44 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("P"); qs.unset("U"); break; + } case "32119-07.html": + { qs.unset("T"); qs.unset("E"); qs.unset("P"); qs.unset("U"); break; + } case "32119-18.html": + { if (qs.isCond(5)) { qs.setCond(6, true); qs.unset("Memo"); } break; + } case "T_Two": + { qs.set("T", "1"); htmltext = "32120-04.html"; break; + } case "O_Two": + { qs.set("O", "1"); htmltext = "32120-05.html"; break; + } case "O2_Two": + { qs.set("O2", "1"); htmltext = "32120-06.html"; break; + } case "N_Two": + { qs.set("N", "1"); if (qs.isCond(6) && (qs.getInt("T") > 0) && (qs.getInt("O") > 0) && (qs.getInt("O2") > 0) && (qs.getInt("N") > 0)) { @@ -177,31 +204,43 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("O2"); qs.unset("N"); break; + } case "32120-07.html": + { qs.unset("T"); qs.unset("O"); qs.unset("O2"); qs.unset("N"); + } case "32120-17.html": + { if (qs.isCond(6)) { qs.setCond(7, true); qs.unset("Memo"); } break; + } case "W_Three": + { qs.set("W", "1"); htmltext = "32121-04.html"; break; + } case "A_Three": + { qs.set("A", "1"); htmltext = "32121-05.html"; break; + } case "G_Three": + { qs.set("G", "1"); htmltext = "32121-06.html"; break; + } case "U_Three": + { qs.set("U", "1"); if (qs.isCond(7) && (qs.getInt("W") > 0) && (qs.getInt("A") > 0) && (qs.getInt("G") > 0) && (qs.getInt("U") > 0)) { @@ -217,19 +256,27 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("G"); qs.unset("U"); break; + } case "32121-07.html": + { qs.unset("W"); qs.unset("A"); qs.unset("G"); qs.unset("U"); break; + } case "32121-11.html": + { qs.set("Memo", "2"); break; + } case "32121-16.html": + { qs.set("Memo", "3"); break; + } case "32121-18.html": + { if (qs.isCond(7) && hasQuestItems(player, GAZKH_FRAGMENT)) { giveItems(player, EPITAPH_OF_WISDOM, 1); @@ -238,6 +285,7 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("Memo"); } break; + } } return htmltext; } @@ -283,9 +331,11 @@ public class Q00125_TheNameOfEvil1 extends Quest switch (npc.getId()) { case MUSHIKA: + { switch (qs.getState()) { case State.CREATED: + { if (player.getLevel() < 76) { htmltext = "32114-01a.htm"; @@ -296,23 +346,32 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = ((qs != null) && qs.isCompleted()) ? "32114-01.htm" : "32114-01b.htm"; } break; + } case State.STARTED: + { switch (qs.getCond()) { case 1: + { htmltext = "32114-09.html"; break; + } case 2: + { htmltext = "32114-10.html"; break; + } case 3: case 4: case 5: case 6: case 7: + { htmltext = "32114-11.html"; break; + } case 8: + { if (hasQuestItems(player, EPITAPH_OF_WISDOM)) { htmltext = "32114-12.html"; @@ -320,28 +379,41 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.exitQuest(false, true); } break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; + } case KARAKAWEI: + { if (qs.isStarted()) { switch (qs.getCond()) { case 1: + { htmltext = "32117-01.html"; break; + } case 2: + { htmltext = "32117-02.html"; break; + } case 3: + { htmltext = "32117-10.html"; break; + } case 4: + { if ((getQuestItemsCount(player, ORNITHOMIMUS_CLAW) >= 2) && (getQuestItemsCount(player, DEINONYCHUS_BONE) >= 2)) { takeItems(player, ORNITHOMIMUS_CLAW, -1); @@ -349,20 +421,29 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = "32117-11.html"; } break; + } case 5: + { htmltext = "32117-16.html"; break; + } case 6: case 7: + { htmltext = "32117-17.html"; break; + } case 8: + { htmltext = "32117-18.html"; break; + } } } break; + } case ULU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -371,9 +452,12 @@ public class Q00125_TheNameOfEvil1 extends Quest case 2: case 3: case 4: + { htmltext = "32119-01.html"; break; + } case 5: + { if (qs.get("Memo") == null) { htmltext = "32119-02.html"; @@ -388,16 +472,23 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = "32119-09.html"; } break; + } case 6: + { htmltext = "32119-18.html"; break; + } default: + { htmltext = "32119-19.html"; break; + } } } break; + } case BALU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -407,9 +498,12 @@ public class Q00125_TheNameOfEvil1 extends Quest case 3: case 4: case 5: + { htmltext = "32120-01.html"; break; + } case 6: + { if (qs.get("Memo") == null) { htmltext = "32120-02.html"; @@ -424,16 +518,23 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = "32120-09.html"; } break; + } case 7: + { htmltext = "32120-17.html"; break; + } default: + { htmltext = "32119-18.html"; break; + } } } break; + } case CHUTA_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -444,12 +545,16 @@ public class Q00125_TheNameOfEvil1 extends Quest case 4: case 5: case 6: + { htmltext = "32121-01.html"; break; + } case 7: + { switch (qs.getInt("Memo")) { case 0: + { htmltext = "32121-02.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); qs.unset("W"); @@ -457,23 +562,34 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("G"); qs.unset("U"); break; + } case 1: + { htmltext = "32121-09.html"; break; + } case 2: + { htmltext = "32121-19.html"; break; + } case 3: + { htmltext = "32121-20.html"; break; + } } break; + } case 8: + { htmltext = "32121-21.html"; break; + } } } break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java index 6446a8e79c..2fe435eff1 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java @@ -66,116 +66,161 @@ public class Q00126_TheNameOfEvil2 extends Quest switch (event) { case "32115-1.html": + { qs.startQuest(); break; + } case "32115-1b.html": + { if (qs.isCond(1)) { qs.setCond(2, true); } break; + } case "32119-3.html": + { if (qs.isCond(2)) { qs.setCond(3, true); } break; + } case "32119-4.html": + { if (qs.isCond(3)) { qs.setCond(4, true); } break; + } case "32119-4a.html": case "32119-5b.html": + { playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_1ST); break; + } case "32119-5.html": + { if (qs.isCond(4)) { qs.setCond(5, true); } break; + } case "32120-3.html": + { if (qs.isCond(5)) { qs.setCond(6, true); } break; + } case "32120-4.html": + { if (qs.isCond(6)) { qs.setCond(7, true); } break; + } case "32120-4a.html": case "32120-5b.html": + { playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_2ND); break; + } case "32120-5.html": + { if (qs.isCond(7)) { qs.setCond(8, true); } break; + } case "32121-3.html": + { if (qs.isCond(8)) { qs.setCond(9, true); } break; + } case "32121-4.html": + { if (qs.isCond(9)) { qs.setCond(10, true); } break; + } case "32121-4a.html": case "32121-5b.html": + { playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_3RD); break; + } case "32121-5.html": + { if (qs.isCond(10)) { giveItems(player, GAZKH_FRAGMENT, 1); qs.setCond(11, true); } break; + } case "32122-2a.html": + { npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case "32122-2d.html": + { takeItems(player, GAZKH_FRAGMENT, -1); break; + } case "32122-3.html": + { if (qs.isCond(12)) { qs.setCond(13, true); } break; + } case "32122-4.html": + { if (qs.isCond(13)) { qs.setCond(14, true); } break; + } case "DO_One": + { qs.set("DO", "1"); event = "32122-4d.html"; break; + } case "MI_One": + { qs.set("MI", "1"); event = "32122-4f.html"; break; + } case "FA_One": + { qs.set("FA", "1"); event = "32122-4h.html"; break; + } case "SOL_One": + { qs.set("SOL", "1"); event = "32122-4j.html"; break; + } case "FA2_One": + { qs.set("FA2", "1"); if (qs.isCond(14) && (qs.getInt("DO") > 0) && (qs.getInt("MI") > 0) && (qs.getInt("FA") > 0) && (qs.getInt("SOL") > 0) && (qs.getInt("FA2") > 0)) { @@ -192,30 +237,42 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL"); qs.unset("FA2"); break; + } case "32122-4m.html": + { qs.unset("DO"); qs.unset("MI"); qs.unset("FA"); qs.unset("SOL"); qs.unset("FA2"); break; + } case "FA_Two": + { qs.set("FA", "1"); event = "32122-5a.html"; break; + } case "SOL_Two": + { qs.set("SOL", "1"); event = "32122-5c.html"; break; + } case "TI_Two": + { qs.set("TI", "1"); event = "32122-5e.html"; break; + } case "SOL2_Two": + { qs.set("SOL2", "1"); event = "32122-5g.html"; break; + } case "FA2_Two": + { qs.set("FA2", "1"); if (qs.isCond(15) && (qs.getInt("FA") > 0) && (qs.getInt("SOL") > 0) && (qs.getInt("TI") > 0) && (qs.getInt("SOL2") > 0) && (qs.getInt("FA2") > 0)) { @@ -232,30 +289,42 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL2"); qs.unset("FA2"); break; + } case "32122-5i.html": + { qs.unset("FA"); qs.unset("SOL"); qs.unset("TI"); qs.unset("SOL2"); qs.unset("FA2"); break; + } case "SOL_Three": + { qs.set("SOL", "1"); event = "32122-6a.html"; break; + } case "FA_Three": + { qs.set("FA", "1"); event = "32122-6c.html"; break; + } case "MI_Three": + { qs.set("MI", "1"); event = "32122-6e.html"; break; + } case "FA2_Three": + { qs.set("FA2", "1"); event = "32122-6g.html"; break; + } case "MI2_Three": + { qs.set("MI2", "1"); if (qs.isCond(16) && (qs.getInt("SOL") > 0) && (qs.getInt("FA") > 0) && (qs.getInt("MI") > 0) && (qs.getInt("FA2") > 0) && (qs.getInt("MI2") > 0)) { @@ -272,61 +341,80 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("FA2"); qs.unset("MI2"); break; + } case "32122-6i.html": + { qs.unset("SOL"); qs.unset("FA"); qs.unset("MI"); qs.unset("FA2"); qs.unset("MI2"); break; + } case "32122-7.html": + { giveItems(player, BONE_POWDER, 1); playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_FULL); npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case "32122-8.html": + { if (qs.isCond(17)) { qs.setCond(18, true); } break; + } case "32109-2.html": + { if (qs.isCond(18)) { qs.setCond(19, true); } break; + } case "32109-3.html": + { if (qs.isCond(19)) { takeItems(player, BONE_POWDER, -1); qs.setCond(20, true); } break; + } case "32115-4.html": + { if (qs.isCond(20)) { qs.setCond(21, true); } break; + } case "32115-5.html": + { if (qs.isCond(21)) { qs.setCond(22, true); } break; + } case "32114-2.html": + { if (qs.isCond(22)) { qs.setCond(23, true); } break; + } case "32114-3.html": + { rewardItems(player, ENCHANT_WEAPON_A, 1); giveAdena(player, 460483, true); addExpAndSp(player, 1015973, 102802); qs.exitQuest(false, true); break; + } } return event; } @@ -340,9 +428,11 @@ public class Q00126_TheNameOfEvil2 extends Quest switch (npc.getId()) { case ASAMAH: + { switch (qs.getState()) { case State.CREATED: + { if (player.getLevel() < 77) { htmltext = "32115-0.htm"; @@ -353,15 +443,21 @@ public class Q00126_TheNameOfEvil2 extends Quest htmltext = ((qs != null) && qs.isCompleted()) ? "32115-0a.htm" : "32115-0b.htm"; } break; + } case State.STARTED: + { switch (qs.getCond()) { case 1: + { htmltext = "32115-1d.html"; break; + } case 2: + { htmltext = "32115-1c.html"; break; + } case 3: case 4: case 5: @@ -379,49 +475,74 @@ public class Q00126_TheNameOfEvil2 extends Quest case 17: case 18: case 19: + { htmltext = "32115-2.html"; break; + } case 20: + { htmltext = "32115-3.html"; break; + } case 21: + { htmltext = "32115-4j.html"; break; + } case 22: + { htmltext = "32115-5a.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; + } case ULU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) { case 1: + { htmltext = "32119-1.html"; break; + } case 2: + { htmltext = "32119-2.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case 3: + { htmltext = "32119-3c.html"; break; + } case 4: + { htmltext = "32119-4c.html"; break; + } case 5: + { htmltext = "32119-5a.html"; break; + } } } break; + } case BALU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -430,25 +551,37 @@ public class Q00126_TheNameOfEvil2 extends Quest case 2: case 3: case 4: + { htmltext = "32120-1.html"; break; + } case 5: + { htmltext = "32120-2.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case 6: + { htmltext = "32120-3c.html"; break; + } case 7: + { htmltext = "32120-4c.html"; break; + } default: + { htmltext = "32120-5a.html"; break; + } } } break; + } case CHUTA_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -460,25 +593,37 @@ public class Q00126_TheNameOfEvil2 extends Quest case 5: case 6: case 7: + { htmltext = "32121-1.html"; break; + } case 8: + { htmltext = "32121-2.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case 9: + { htmltext = "32121-3e.html"; break; + } case 10: + { htmltext = "32121-4e.html"; break; + } default: + { htmltext = "32121-5a.html"; break; + } } } break; + } case WARRIORS_GRAVE: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -493,19 +638,28 @@ public class Q00126_TheNameOfEvil2 extends Quest case 8: case 9: case 10: + { htmltext = "32122-1.html"; break; + } case 11: + { htmltext = "32122-2.html"; qs.setCond(12, true); break; + } case 12: + { htmltext = "32122-2l.html"; break; + } case 13: + { htmltext = "32122-3b.html"; break; + } case 14: + { htmltext = "32122-4.html"; qs.unset("DO"); qs.unset("MI"); @@ -513,7 +667,9 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL"); qs.unset("FA2"); break; + } case 15: + { htmltext = "32122-5.html"; qs.unset("FA"); qs.unset("SOL"); @@ -521,7 +677,9 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL2"); qs.unset("FA2"); break; + } case 16: + { htmltext = "32122-6.html"; qs.unset("SOL"); qs.unset("FA"); @@ -529,19 +687,28 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("FA2"); qs.unset("MI2"); break; + } case 17: + { htmltext = hasQuestItems(player, BONE_POWDER) ? "32122-7.html" : "32122-7b.html"; break; + } case 18: + { htmltext = "32122-8.html"; break; + } default: + { htmltext = "32122-9.html"; break; + } } } break; + } case SHILENS_STONE_STATUE: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -563,27 +730,39 @@ public class Q00126_TheNameOfEvil2 extends Quest case 15: case 16: case 17: + { htmltext = "32109-1a.html"; break; + } case 18: + { if (hasQuestItems(player, BONE_POWDER)) { htmltext = "32109-1.html"; } break; + } case 19: + { htmltext = "32109-2l.html"; break; + } case 20: + { htmltext = "32109-5.html"; break; + } default: + { htmltext = "32109-4.html"; break; + } } } break; + } case MUSHIKA: + { if (qs.isStarted()) { if (qs.getCond() < 22) @@ -600,6 +779,7 @@ public class Q00126_TheNameOfEvil2 extends Quest } } break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java index 29480b1d05..2a3d8b4852 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java @@ -84,21 +84,32 @@ public class Q00141_ShadowFoxPart3 extends Quest case "30894-17.html": case "30894-19.html": case "30894-20.html": + { break; + } case "30894-03.htm": + { st.startQuest(); break; + } case "30894-06.html": + { st.setCond(2, true); break; + } case "30894-15.html": + { st.set("talk", "2"); break; + } case "30894-18.html": + { st.setCond(4, true); st.unset("talk"); break; + } case "30894-21.html": + { giveAdena(player, 88888, true); if (player.getLevel() <= MAX_REWARD_LEVEL) { @@ -106,9 +117,12 @@ public class Q00141_ShadowFoxPart3 extends Quest } st.exitQuest(false, true); break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -146,19 +160,27 @@ public class Q00141_ShadowFoxPart3 extends Quest switch (st.getState()) { case State.CREATED: + { final QuestState qs = player.getQuestState(Q00140_ShadowFoxPart2.class.getSimpleName()); htmltext = (player.getLevel() >= MIN_LEVEL) ? ((qs != null) && qs.isCompleted()) ? "30894-01.htm" : "30894-00.html" : "30894-02.htm"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "30894-04.html"; break; + } case 2: + { htmltext = "30894-07.html"; break; + } case 3: + { if (st.getInt("talk") == 1) { htmltext = "30894-09.html"; @@ -174,14 +196,20 @@ public class Q00141_ShadowFoxPart3 extends Quest st.set("talk", "1"); } break; + } case 4: + { htmltext = "30894-19.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java index 0734e14ce9..93502b7551 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java @@ -81,39 +81,52 @@ public class Q00237_WindsOfChange extends Quest case "30969-08c.html": case "30897-02.html":// ROMAN case "30925-02.html":// MORELYN + { htmltext = event; break; + } case "30899-06.html": + { st.startQuest(); giveItems(player, FLAUENS_LETTER, 1); htmltext = event; break; + } case "30969-02.html": + { takeItems(player, FLAUENS_LETTER, -1); htmltext = event; break; + } case "30969-05.html": + { if (st.isCond(1)) { st.setCond(2, true); htmltext = event; } break; + } case "30897-03.html": + { if (st.isCond(2)) { st.setCond(3, true); htmltext = event; } break; + } case "30925-03.html": + { if (st.isCond(3)) { st.setCond(4, true); htmltext = event; } break; + } case "30969-09.html": + { if (st.isCond(4)) { giveItems(player, DOSKOZER_LETTER, 1); @@ -121,7 +134,9 @@ public class Q00237_WindsOfChange extends Quest htmltext = event; } break; + } case "30969-10.html": + { if (st.isCond(4)) { giveItems(player, ATHENIA_LETTER, 1); @@ -129,20 +144,25 @@ public class Q00237_WindsOfChange extends Quest htmltext = event; } break; + } case "32641-02.html": + { giveAdena(player, 213876, true); giveItems(player, VICINITY_OF_FOS, 1); addExpAndSp(player, 892773, 60012); st.exitQuest(false, true); htmltext = event; break; + } case "32643-02.html": + { giveAdena(player, 213876, true); giveItems(player, SUPPORT_CERTIFICATE, 1); addExpAndSp(player, 892773, 60012); st.exitQuest(false, true); htmltext = event; break; + } } return htmltext; } @@ -156,35 +176,52 @@ public class Q00237_WindsOfChange extends Quest switch (npc.getId()) { case FLAUEN: + { switch (st.getState()) { case State.COMPLETED: + { htmltext = "30899-09.html"; break; + } case State.CREATED: + { htmltext = (talker.getLevel() >= MIN_LEVEL) ? "30899-01.htm" : "30899-00.html"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: case 4: + { htmltext = "30899-07.html"; break; + } case 2: + { htmltext = "30899-10.html"; break; + } case 3: + { htmltext = "30899-11.html"; break; + } case 5: case 6: + { htmltext = "30899-08.html"; break; + } } + } } break; + } case IASON: + { if (st.isCompleted()) { htmltext = Quest.getNoQuestMsg(talker); @@ -194,45 +231,67 @@ public class Q00237_WindsOfChange extends Quest switch (st.getCond()) { case 1: + { htmltext = "30969-01.html"; break; + } case 2: + { htmltext = "30969-06.html"; break; + } case 4: + { htmltext = "30969-07.html"; break; + } case 5: case 6: + { htmltext = "30969-11.html"; break; + } } } break; + } case ROMAN: + { switch (st.getCond()) { case 2: + { htmltext = "30897-01.html"; break; + } case 3: case 4: + { htmltext = "30897-04.html"; break; + } } break; + } case MORELYN: + { switch (st.getCond()) { case 3: + { htmltext = "30925-01.html"; break; + } case 4: + { htmltext = "30925-04.html"; break; + } } break; + } case HELVETICA: + { if (st.isCompleted()) { final QuestState q238 = st.getPlayer().getQuestState(Q00238_SuccessFailureOfBusiness.class.getSimpleName()); @@ -247,7 +306,9 @@ public class Q00237_WindsOfChange extends Quest htmltext = "32641-04.html"; } break; + } case ATHENIA: + { if (st.isCompleted()) { final QuestState q239 = st.getPlayer().getQuestState(Q00239_WontYouJoinUs.class.getSimpleName()); @@ -262,6 +323,7 @@ public class Q00237_WindsOfChange extends Quest htmltext = "32643-01.html"; } break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java index b79000e374..39b21081a3 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java @@ -70,19 +70,25 @@ public class Q00238_SuccessFailureOfBusiness extends Quest switch (event) { case "32461-02.htm": + { htmltext = event; break; + } case "32461-03.html": + { st.startQuest(); htmltext = event; break; + } case "32461-06.html": + { if (st.isCond(2)) { st.setCond(3, true); htmltext = event; } break; + } } return htmltext; } @@ -142,9 +148,12 @@ public class Q00238_SuccessFailureOfBusiness extends Quest switch (st.getState()) { case State.COMPLETED: + { htmltext = "32461-09.html"; break; + } case State.CREATED: + { final QuestState q237 = st.getPlayer().getQuestState(Q00237_WindsOfChange.class.getSimpleName()); final QuestState q239 = st.getPlayer().getQuestState(Q00239_WontYouJoinUs.class.getSimpleName()); if ((q239 != null) && q239.isCompleted()) @@ -160,23 +169,32 @@ public class Q00238_SuccessFailureOfBusiness extends Quest htmltext = "32461-00.html"; } break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "32461-04.html"; break; + } case 2: + { if (getQuestItemsCount(talker, BROKEN_PIECE_OF_MAGIC_FORCE) == BROKEN_PIECE_OF_MAGIC_FORCE_NEEDED) { htmltext = "32461-05.html"; takeItems(talker, BROKEN_PIECE_OF_MAGIC_FORCE, -1); } break; + } case 3: + { htmltext = "32461-07.html"; break; + } case 4: + { if (getQuestItemsCount(talker, GUARDIAN_SPIRIT_FRAGMENT) == GUARDIAN_SPIRIT_FRAGMENT_NEEDED) { htmltext = "32461-08.html"; @@ -186,8 +204,10 @@ public class Q00238_SuccessFailureOfBusiness extends Quest st.exitQuest(false, true); } break; + } } break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java index 0c1c6731e1..76ba5a82dc 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java @@ -108,9 +108,12 @@ public class Q00254_LegendaryTales extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = (player.getLevel() < MIN_LEVEL) ? "30754-00.htm" : "30754-01.htm"; break; + } case State.STARTED: + { final long count = getQuestItemsCount(player, LARGE_DRAGON_SKULL); if (st.isCond(1)) { @@ -121,9 +124,12 @@ public class Q00254_LegendaryTales extends Quest htmltext = ((count < 7) ? "30754-12.htm" : "30754-07.html"); } break; + } case State.COMPLETED: + { htmltext = "30754-29.html"; break; + } } return htmltext; } @@ -142,7 +148,9 @@ public class Q00254_LegendaryTales extends Quest switch (event) { case "30754-05.html": + { st.startQuest(); + } case "30754-02.html": case "30754-03.html": case "30754-04.htm": @@ -150,29 +158,45 @@ public class Q00254_LegendaryTales extends Quest case "30754-15.html": case "30754-20.html": case "30754-21.html": + { htmltext = event; break; + } case "25718": // Emerald Horn + { htmltext = (checkMask(st, Bosses.EMERALD_HORN) ? "30754-22.html" : "30754-16.html"); break; + } case "25719": // Dust Rider + { htmltext = (checkMask(st, Bosses.DUST_RIDER) ? "30754-23.html" : "30754-17.html"); break; + } case "25720": // Bleeding Fly + { htmltext = (checkMask(st, Bosses.BLEEDING_FLY) ? "30754-24.html" : "30754-18.html"); break; + } case "25721": // Black Dagger Wing + { htmltext = (checkMask(st, Bosses.BLACK_DAGGER) ? "30754-25.html" : "30754-19.html"); break; + } case "25722": // Shadow Summoner + { htmltext = (checkMask(st, Bosses.SHADOW_SUMMONER) ? "30754-26.html" : "30754-16.html"); break; + } case "25723": // Spike Slasher + { htmltext = (checkMask(st, Bosses.SPIKE_SLASHER) ? "30754-27.html" : "30754-17.html"); break; + } case "25724": // Muscle Bomber + { htmltext = (checkMask(st, Bosses.MUSCLE_BOMBER) ? "30754-28.html" : "30754-18.html"); break; + } case "13467": // Vesper Thrower case "13466": // Vesper Singer case "13465": // Vesper Caster @@ -184,6 +208,7 @@ public class Q00254_LegendaryTales extends Quest case "13460": // Vesper Sharper case "13461": // Vesper Fighter case "13462": // Vesper Stormer + { if (st.isCond(2) && (getQuestItemsCount(player, LARGE_DRAGON_SKULL) >= 7)) { htmltext = "30754-09.html"; @@ -191,6 +216,7 @@ public class Q00254_LegendaryTales extends Quest st.exitQuest(false, true); } break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/Q00381_LetsBecomeARoyalMember.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/Q00381_LetsBecomeARoyalMember.java index 4357266694..cb3a564d13 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/Q00381_LetsBecomeARoyalMember.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00381_LetsBecomeARoyalMember/Q00381_LetsBecomeARoyalMember.java @@ -138,9 +138,12 @@ public final class Q00381_LetsBecomeARoyalMember extends Quest switch (qs.getMemoState()) { case 1: + { htmltext = "30090-01.html"; break; + } case 2: + { if (hasQuestItems(talker, COIN_ALBUM)) { htmltext = "30090-05.html"; @@ -157,6 +160,7 @@ public final class Q00381_LetsBecomeARoyalMember extends Quest htmltext = "30090-03.html"; } break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java index d8d700984d..582b4ac1da 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java @@ -336,17 +336,23 @@ public final class Q00421_LittleWingsBigAdventure extends Quest switch (flute.getId()) { case DRAGONFLUTE_OF_WIND: + { takeItems(talker, DRAGONFLUTE_OF_WIND, -1); giveItems(talker, DRAGON_BUGLE_OF_WIND, 1); break; + } case DRAGONFLUTE_OF_STAR: + { takeItems(talker, DRAGONFLUTE_OF_STAR, -1); giveItems(talker, DRAGON_BUGLE_OF_STAR, 1); break; + } case DRAGONFLUTE_OF_TWILIGHT: + { takeItems(talker, DRAGONFLUTE_OF_TWILIGHT, -1); giveItems(talker, DRAGON_BUGLE_OF_TWILIGHT, 1); break; + } } qs.exitQuest(true, true); @@ -418,14 +424,20 @@ public final class Q00421_LittleWingsBigAdventure extends Quest switch (getRandom(3)) { case 0: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WHY_DO_YOU_BOTHER_ME_AGAIN); break; + } case 1: + { npc.broadcastSay(ChatType.NPC_GENERAL, data.message); break; + } case 2: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.LEAVE_NOW_BEFORE_YOU_INCUR_THE_WRATH_OF_THE_GUARDIAN_GHOST); break; + } } } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java index 5143fb930e..cee5e47974 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java @@ -69,18 +69,26 @@ public class Q00450_GraveRobberRescue extends Quest case "32650-04.htm": case "32650-05.htm": case "32650-06.html": + { break; + } case "32650-07.htm": + { st.startQuest(); break; + } case "despawn": + { npc.setBusy(false); npc.deleteMe(); htmltext = null; break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -96,16 +104,21 @@ public class Q00450_GraveRobberRescue extends Quest switch (st.getState()) { case State.COMPLETED: + { if (!st.isNowAvailable()) { htmltext = "32650-03.html"; break; } st.setState(State.CREATED); + } case State.CREATED: + { htmltext = (player.getLevel() >= MIN_LEVEL) ? "32650-01.htm" : "32650-02.htm"; break; + } case State.STARTED: + { if (st.isCond(1)) { htmltext = (!hasQuestItems(player, EVIDENCE_OF_MIGRATION)) ? "32650-08.html" : "32650-09.html"; @@ -117,6 +130,7 @@ public class Q00450_GraveRobberRescue extends Quest htmltext = "32650-10.html"; } break; + } } } else if (st.isCond(1)) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java index 43d17ab2f7..9653dcf230 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java @@ -98,9 +98,12 @@ public class Q00452_FindingtheLostSoldiers extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = (player.getLevel() < 84) ? "32773-0.html" : "32773-1.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "32773-4.html"; @@ -114,7 +117,9 @@ public class Q00452_FindingtheLostSoldiers extends Quest qs.exitQuest(QuestType.DAILY, true); } break; + } case State.COMPLETED: + { if (qs.isNowAvailable()) { qs.setState(State.CREATED); @@ -125,6 +130,7 @@ public class Q00452_FindingtheLostSoldiers extends Quest htmltext = "32773-6.html"; } break; + } } } else if (qs.isCond(1)) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java index 485b980d6a..e000eb6f24 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java @@ -191,6 +191,7 @@ public final class Q00456_DontKnowDontCare extends Quest switch (qs.getState()) { case State.COMPLETED: + { if (!qs.isNowAvailable()) { htmltext = "32864-02.html"; @@ -198,10 +199,14 @@ public final class Q00456_DontKnowDontCare extends Quest } qs.setState(State.CREATED); // intentional fall-through + } case State.CREATED: + { htmltext = ((player.getLevel() >= MIN_LEVEL) ? "32864-01.htm" : "32864-03.html"); break; + } case State.STARTED: + { switch (qs.getCond()) { case 1: @@ -221,6 +226,7 @@ public final class Q00456_DontKnowDontCare extends Quest } } break; + } } } return htmltext; @@ -237,22 +243,28 @@ public final class Q00456_DontKnowDontCare extends Quest case "32864-04.htm": case "32864-05.htm": case "32864-06.htm": + { if ((qs != null) && qs.isCreated()) { htmltext = event; } break; + } case "32864-07.htm": + { if ((qs != null) && qs.isCreated()) { qs.startQuest(); htmltext = event; } break; + } case "unspawnRaidCorpse": + { allowedPlayerMap.remove(npc.getObjectId()); npc.deleteMe(); break; + } } return htmltext; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java index afe4e89620..2821a2f466 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00463_IMustBeaGenius/Q00463_IMustBeaGenius.java @@ -122,31 +122,40 @@ public class Q00463_IMustBeaGenius extends Quest switch (event) { case "32069-03.htm": + { st.startQuest(); final int number = getRandom(51) + 550; st.set("number", String.valueOf(number)); st.set("chance", String.valueOf(getRandom(4))); htmltext = getHtm(player.getHtmlPrefix(), event).replace("%num%", String.valueOf(number)); break; + } case "32069-05.htm": + { htmltext = getHtm(player.getHtmlPrefix(), event).replace("%num%", st.get("number")); break; + } case "reward": + { if (st.isCond(2)) { final int rnd = getRandom(REWARD.length); final String str = (REWARD[rnd][2] < 10) ? "0" + REWARD[rnd][2] : String.valueOf(REWARD[rnd][2]); - addExpAndSp(player, REWARD[rnd][0], REWARD[rnd][1]); st.exitQuest(QuestType.DAILY, true); htmltext = "32069-" + str + ".html"; } break; + } case "32069-02.htm": + { break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -205,16 +214,21 @@ public class Q00463_IMustBeaGenius extends Quest switch (st.getState()) { case State.COMPLETED: + { if (!st.isNowAvailable()) { htmltext = "32069-07.htm"; break; } st.setState(State.CREATED); + } case State.CREATED: + { htmltext = (player.getLevel() >= MIN_LEVEL) ? "32069-01.htm" : "32069-00.htm"; break; + } case State.STARTED: + { if (st.isCond(1)) { htmltext = "32069-04.html"; @@ -230,6 +244,7 @@ public class Q00463_IMustBeaGenius extends Quest htmltext = "32069-06.html"; } break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java index 13d42394b7..13f4fb2400 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java @@ -73,12 +73,18 @@ public final class Q00474_WaitingForTheSummer extends Quest { case "32327-02.htm": case "32327-03.htm": + { break; + } case "32327-04.htm": + { qs.startQuest(); break; + } default: + { htmltext = null; + } } return htmltext; } @@ -102,11 +108,15 @@ public final class Q00474_WaitingForTheSummer extends Quest qs.setState(State.CREATED); } case State.CREATED: + { htmltext = "32327-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "32327-05.html" : "32327-06.html"; break; + } } } else if (qs.isStarted() && qs.isCond(2)) @@ -138,18 +148,26 @@ public final class Q00474_WaitingForTheSummer extends Quest { case LOST_BUFFALO: case FROST_BUFFALO: + { itemId = BUFFALO_MEAT; break; + } case URSUS: case URSUS_CUB: + { itemId = URSUS_MEAT; break; + } case LOST_YETI: case FROST_YETI: + { itemId = YETI_MEAT; break; + } default: + { itemId = -1; + } } // Give item diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00481_ShadowHelper/Q00481_ShadowHelper.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00481_ShadowHelper/Q00481_ShadowHelper.java index 9d2395ad3f..997b792c1f 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00481_ShadowHelper/Q00481_ShadowHelper.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00481_ShadowHelper/Q00481_ShadowHelper.java @@ -91,14 +91,18 @@ public final class Q00481_ShadowHelper extends Quest case "33302-03.htm": case "33302-04.htm": case "33302-07.html": + { break; + } case "33302-05.htm": { qs.startQuest(); break; } default: + { htmltext = null; + } } return htmltext; } @@ -121,8 +125,10 @@ public final class Q00481_ShadowHelper extends Quest qs.setState(State.CREATED); } case State.CREATED: + { htmltext = "33302-01.htm"; break; + } case State.STARTED: { if (qs.isCond(1)) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java index 16228f22d5..a914f94125 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java @@ -87,15 +87,23 @@ public final class Q00511_AwlUnderFoot extends Quest case "Warden-05.html": case "Warden-06.html": case "Warden-09.html": + { break; + } case "Warden-02.htm": + { qs.startQuest(); break; + } case "Warden-10.html": + { qs.exitQuest(QuestType.REPEATABLE); break; + } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java index 3dcac18726..d861678922 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java @@ -130,10 +130,14 @@ public final class Q00627_HeartInSearchOfPower extends Quest break; } case "31518-09.html": + { break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -185,17 +189,25 @@ public final class Q00627_HeartInSearchOfPower extends Quest switch (st.getCond()) { case 1: + { htmltext = "31518-03.html"; break; + } case 2: + { htmltext = "31518-04.html"; break; + } case 3: + { htmltext = "31518-07.html"; break; + } case 4: + { htmltext = "31518-08.html"; break; + } } } else if (npc.getId() == ENFEUX) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java index 723734030c..0e688d89f1 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q00652_AnAgedExAdventurer/Q00652_AnAgedExAdventurer.java @@ -84,11 +84,15 @@ public class Q00652_AnAgedExAdventurer extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = (player.getLevel() >= 46) ? "32012-01.htm" : "32012-01a.htm"; break; + } case State.STARTED: + { htmltext = "32012-02.html"; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java index a5ff268b25..f10fe8fcd8 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java @@ -73,23 +73,34 @@ public class Q10275_ContainingTheAttributePower extends Quest { case "30839-02.html": case "31307-02.html": + { st.startQuest(); break; + } case "30839-05.html": + { st.setCond(2, true); break; + } case "31307-05.html": + { st.setCond(7, true); break; + } case "32325-03.html": + { st.setCond(3, true); giveItems(player, YINSWORD, 1, AttributeType.FIRE, 10); break; + } case "32326-03.html": + { st.setCond(8, true); giveItems(player, YANGSWORD, 1, AttributeType.EARTH, 10); break; + } case "32325-06.html": + { if (hasQuestItems(player, YINSWORD)) { takeItems(player, YINSWORD, 1); @@ -97,7 +108,9 @@ public class Q10275_ContainingTheAttributePower extends Quest } giveItems(player, YINSWORD, 1, AttributeType.FIRE, 10); break; + } case "32326-06.html": + { if (hasQuestItems(player, YANGSWORD)) { takeItems(player, YANGSWORD, 1); @@ -105,16 +118,21 @@ public class Q10275_ContainingTheAttributePower extends Quest } giveItems(player, YANGSWORD, 1, AttributeType.EARTH, 10); break; + } case "32325-09.html": + { st.setCond(5, true); BLESSING_OF_FIRE.getSkill().applyEffects(player, player); giveItems(player, YINSWORD, 1, AttributeType.FIRE, 10); break; + } case "32326-09.html": + { st.setCond(10, true); BLESSING_OF_EARTH.getSkill().applyEffects(player, player); giveItems(player, YANGSWORD, 1, AttributeType.EARTH, 10); break; + } } if (Util.isDigit(event)) @@ -139,6 +157,7 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (npc.getId()) { case AIR: + { if ((st.isCond(8) || st.isCond(10)) && (getItemEquipped(player, Inventory.PAPERDOLL_RHAND) == YANGSWORD) && (getQuestItemsCount(player, SOULPIECEAIR) < 6) && (getRandom(100) < 30)) { giveItems(player, SOULPIECEAIR, 1); @@ -152,7 +171,9 @@ public class Q10275_ContainingTheAttributePower extends Quest } } break; + } case WATER: + { if (((st.getCond() >= 3) || (st.getCond() <= 5)) && (getItemEquipped(player, Inventory.PAPERDOLL_RHAND) == YINSWORD) && (getQuestItemsCount(player, SOULPIECEWATER) < 6) && (getRandom(100) < 30)) { giveItems(player, SOULPIECEWATER, 1); @@ -166,6 +187,7 @@ public class Q10275_ContainingTheAttributePower extends Quest } } break; + } } return null; @@ -184,22 +206,32 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = (player.getLevel() > 75) ? "30839-01.htm" : "30839-00.html"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "30839-03.html"; break; + } case 2: + { htmltext = "30839-05.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = "30839-0a.html"; break; + } } break; } @@ -208,22 +240,32 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = (player.getLevel() > 75) ? "31307-01.htm" : "31307-00.html"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "31307-03.html"; break; + } case 7: + { htmltext = "31307-05.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = "31307-0a.html"; break; + } } break; } @@ -234,20 +276,28 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getCond()) { case 2: + { htmltext = "32325-01.html"; break; + } case 3: case 5: + { htmltext = "32325-04.html"; break; + } case 4: + { htmltext = "32325-08.html"; takeItems(player, YINSWORD, 1); takeItems(player, SOULPIECEWATER, -1); break; + } case 6: + { htmltext = "32325-10.html"; break; + } } } break; @@ -259,20 +309,28 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getCond()) { case 7: + { htmltext = "32326-01.html"; break; + } case 8: case 10: + { htmltext = "32326-04.html"; break; + } case 9: + { htmltext = "32326-08.html"; takeItems(player, YANGSWORD, 1); takeItems(player, SOULPIECEAIR, -1); break; + } case 11: + { htmltext = "32326-10.html"; break; + } } } break; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java index e144a76d5e..0712418726 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java @@ -127,13 +127,17 @@ public class Q10283_RequestOfIceMerchant extends Quest switch (npc.getId()) { case RAFFORTY: + { switch (st.getState()) { case State.CREATED: + { final QuestState _prev = player.getQuestState(Q00115_TheOtherSideOfTruth.class.getSimpleName()); htmltext = ((_prev != null) && _prev.isCompleted() && (player.getLevel() >= 82)) ? "32020-01.htm" : "32020-00.htm"; break; + } case State.STARTED: + { if (st.isCond(1)) { htmltext = "32020-04.htm"; @@ -143,23 +147,31 @@ public class Q10283_RequestOfIceMerchant extends Quest htmltext = "32020-08.htm"; } break; + } case State.COMPLETED: + { htmltext = "32020-09.htm"; break; + } } break; + } case KIER: + { if (st.isCond(2)) { htmltext = "32022-01.html"; } break; + } case JINIA: + { if (st.isCond(2)) { htmltext = "32760-02.html"; } break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java index f0a86954cb..afa81b1257 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java @@ -60,13 +60,18 @@ public class Q10289_FadeToBlack extends Quest switch (event) { case "32757-02.htm": + { htmltext = event; break; + } case "32757-03.htm": + { qs.startQuest(); htmltext = event; break; + } case "32757-06.html": + { if (qs.isCond(2) && hasQuestItems(player, MARK_OF_DARKNESS)) { htmltext = "32757-07.html"; @@ -80,6 +85,7 @@ public class Q10289_FadeToBlack extends Quest htmltext = event; } break; + } case "11": case "12": case "13": @@ -100,90 +106,131 @@ public class Q10289_FadeToBlack extends Quest case "28": case "29": case "30": + { if (qs.isCond(3) && hasQuestItems(player, MARK_OF_SPLENDOR)) { // see 32757-08.html for recipe list (all moirai armor 60%) switch (event) { case "11": + { rewardItems(player, 15775, 1); giveAdena(player, 420920, true); break; + } case "12": + { rewardItems(player, 15776, 1); giveAdena(player, 420920, true); break; + } case "13": + { rewardItems(player, 15777, 1); giveAdena(player, 420920, true); break; + } case "14": + { rewardItems(player, 15778, 1); break; + } case "15": + { rewardItems(player, 15779, 1); giveAdena(player, 168360, true); break; + } case "16": + { rewardItems(player, 15780, 1); giveAdena(player, 168360, true); break; + } case "17": + { rewardItems(player, 15781, 1); giveAdena(player, 252540, true); break; + } case "18": + { rewardItems(player, 15782, 1); giveAdena(player, 357780, true); break; + } case "19": + { rewardItems(player, 15783, 1); giveAdena(player, 357780, true); break; + } case "20": + { rewardItems(player, 15784, 1); giveAdena(player, 505100, true); break; + } case "21": + { rewardItems(player, 15785, 1); giveAdena(player, 505100, true); break; + } case "22": + { rewardItems(player, 15786, 1); giveAdena(player, 505100, true); break; + } case "23": + { rewardItems(player, 15787, 1); giveAdena(player, 505100, true); break; + } case "24": + { rewardItems(player, 15787, 1); giveAdena(player, 505100, true); break; + } case "25": + { rewardItems(player, 15789, 1); giveAdena(player, 505100, true); break; + } case "26": + { rewardItems(player, 15790, 1); giveAdena(player, 496680, true); break; + } case "27": + { rewardItems(player, 15791, 1); giveAdena(player, 496680, true); break; + } case "28": + { rewardItems(player, 15792, 1); giveAdena(player, 563860, true); break; + } case "29": + { rewardItems(player, 15793, 1); giveAdena(player, 509040, true); break; + } case "30": + { rewardItems(player, 15794, 1); giveAdena(player, 454240, true); break; + } } final long marksOfDarkness = getQuestItemsCount(player, MARK_OF_DARKNESS); @@ -195,6 +242,7 @@ public class Q10289_FadeToBlack extends Quest htmltext = "32757-09.html"; } break; + } } return htmltext; } @@ -257,12 +305,16 @@ public class Q10289_FadeToBlack extends Quest switch (qs.getCond()) { case 1: + { htmltext = "32757-04.html"; break; + } case 2: case 3: + { htmltext = "32757-05.html"; break; + } } } else diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java index 370eb549d4..ef6a58a7dd 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java @@ -180,17 +180,25 @@ public final class Q10302_UnsettlingShadowAndRumors extends Quest switch (qs.getCond()) { case 1: + { htmltext = "32894-01.html"; break; + } case 2: + { htmltext = "32894-03.html"; break; + } case 5: + { htmltext = "32894-04.html"; break; + } case 6: + { htmltext = "32894-07.html"; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10331_StartOfFate/Q10331_StartOfFate.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10331_StartOfFate/Q10331_StartOfFate.java index d03c4ff79f..0d59e68fb7 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10331_StartOfFate/Q10331_StartOfFate.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10331_StartOfFate/Q10331_StartOfFate.java @@ -110,9 +110,11 @@ public final class Q10331_StartOfFate extends Quest case "32160-08.html": // Dark Elven Mage case "32150-07.html": // Orc Fighter case "32150-08.html": // Orc Mage + { /** * 1st class transfer htmls for each class */ + } case "32146-09.html": // Trooper case "32146-10.html": // Warder case "32153-09.html": // Warrior @@ -185,7 +187,6 @@ public final class Q10331_StartOfFate extends Quest if (qs.isCond(5)) { takeItems(player, SARIL_NECKLACE, 1); - switch (player.getRace()) { case HUMAN: @@ -234,7 +235,6 @@ public final class Q10331_StartOfFate extends Quest { final ClassId newClassId = ClassId.getClassId(Integer.parseInt(event.replace("classChange;", ""))); final ClassId currentClassId = player.getClassId(); - if (!newClassId.childOf(currentClassId) || ((qs.getCond() < 6) && (qs.getCond() > 11))) { Util.handleIllegalPlayerAction(player, "Player " + player.getName() + " tried to cheat the 1st class transfer!", Config.DEFAULT_PUNISH); @@ -243,65 +243,105 @@ public final class Q10331_StartOfFate extends Quest switch (newClassId) { case WARRIOR: + { htmltext = "32153-15.htm"; break; + } case KNIGHT: + { htmltext = "32153-16.htm"; break; + } case ROGUE: + { htmltext = "32153-17.htm"; break; + } case WIZARD: + { htmltext = "32153-18.htm"; break; + } case CLERIC: + { htmltext = "32153-19.htm"; break; + } case ELVEN_KNIGHT: + { htmltext = "32147-14.htm"; break; + } case ELVEN_SCOUT: + { htmltext = "32147-15.htm"; break; + } case ELVEN_WIZARD: + { htmltext = "32147-16.htm"; break; + } case ORACLE: + { htmltext = "32147-17.htm"; break; + } case PALUS_KNIGHT: + { htmltext = "32160-14.htm"; break; + } case ASSASSIN: + { htmltext = "32160-15.htm"; break; + } case DARK_WIZARD: + { htmltext = "32160-16.htm"; break; + } case SHILLIEN_ORACLE: + { htmltext = "32160-17.htm"; break; + } case ORC_RAIDER: + { htmltext = "32150-14.htm"; break; + } case ORC_MONK: + { htmltext = "32150-15.htm"; break; + } case ORC_SHAMAN: + { htmltext = "32150-16.htm"; break; + } case SCAVENGER: + { htmltext = "32157-11.htm"; break; + } case ARTISAN: + { htmltext = "32157-12.htm"; break; + } case TROOPER: + { htmltext = "32146-12.htm"; break; + } case WARDER: + { htmltext = "32146-13.htm"; break; + } } player.setBaseClass(newClassId); player.setClassId(newClassId.getId()); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java index e59e46d164..78c2aaa6fa 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java @@ -135,11 +135,15 @@ public final class Q10339_FightingTheForgotten extends Quest switch (st.getCond()) { case 1: + { htmltext = "33344-01.html"; break; + } case 2: + { htmltext = "33344-02.html"; break; + } case 3: { st.exitQuest(false, true); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java index 568cbd9edb..cdfb4f1972 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java @@ -177,29 +177,41 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case HUMAN: + { st.setCond(player.isMageClass() ? 4 : 5); htmltext = player.isMageClass() ? "33179-06.htm" : "33179-11.htm"; break; + } case DARK_ELF: + { st.setCond(6); htmltext = "33179-05.htm"; break; + } case ORC: + { st.setCond(7); htmltext = "33179-07.htm"; break; + } case DWARF: + { st.setCond(8); htmltext = "33179-08.htm"; break; + } case KAMAEL: + { st.setCond(9); htmltext = "33179-09.htm"; break; + } case ELF: + { st.setCond(player.isMageClass() ? 11 : 10); htmltext = player.isMageClass() ? "33179-12.htm" : "33179-10.htm"; break; + } } takeItems(player, FRAGMENT, 20); playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); @@ -215,23 +227,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30289-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30289-08.html" : "30289-02.html"; break; + } case ORC: + { htmltext = "30289-03.html"; break; + } case DWARF: + { htmltext = "30289-04.html"; break; + } case KAMAEL: + { htmltext = "30289-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30289-06.html" : "30289-07.html"; break; + } } } break; @@ -243,23 +267,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30288-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30288-02.html" : "30288-08.html"; break; + } case ORC: + { htmltext = "30288-03.html"; break; + } case DWARF: + { htmltext = "30288-04.html"; break; + } case KAMAEL: + { htmltext = "30288-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30288-06.html" : "30288-07.html"; break; + } } } break; @@ -271,23 +307,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30297-08.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30297-01.html" : "30297-02.html"; break; + } case ORC: + { htmltext = "30297-03.html"; break; + } case DWARF: + { htmltext = "30297-04.html"; break; + } case KAMAEL: + { htmltext = "30297-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30297-06.html" : "30297-07.html"; break; + } } } break; @@ -299,23 +347,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30505-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30505-02.html" : "30505-03.html"; break; + } case ORC: + { htmltext = "30505-08.html"; break; + } case DWARF: + { htmltext = "30505-04.html"; break; + } case KAMAEL: + { htmltext = "30505-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30505-06.html" : "30505-07.html"; break; + } } } break; @@ -327,23 +387,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30504-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30504-02.html" : "30504-03.html"; break; + } case ORC: + { htmltext = "30504-04.html"; break; + } case DWARF: + { htmltext = "30504-08.html"; break; + } case KAMAEL: + { htmltext = "30504-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30504-06.html" : "30504-07.html"; break; + } } } break; @@ -355,23 +427,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "32196-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "32196-02.html" : "32196-03.html"; break; + } case ORC: + { htmltext = "32196-04.html"; break; + } case DWARF: + { htmltext = "32196-05.html"; break; + } case KAMAEL: + { htmltext = "32196-08.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "32196-06.html" : "32196-07.html"; break; + } } } break; @@ -383,23 +467,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30158-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30158-02.html" : "30158-03.html"; break; + } case ORC: + { htmltext = "30158-04.html"; break; + } case DWARF: + { htmltext = "30158-05.html"; break; + } case KAMAEL: + { htmltext = "30158-06.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30158-08.html" : "30158-07.html"; break; + } } } break; @@ -411,23 +507,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30155-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30155-02.html" : "30155-03.html"; break; + } case ORC: + { htmltext = "30155-04.html"; break; + } case DWARF: + { htmltext = "30155-05.html"; break; + } case KAMAEL: + { htmltext = "30155-06.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30155-07.html" : "30155-08.html"; break; + } } } break; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java index 0053eece49..a2d77900bb 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java @@ -169,29 +169,41 @@ public final class Q10360_CertificationOfFate extends Quest switch (player.getRace()) { case HUMAN: + { st.setCond(player.isMageClass() ? 9 : 8); htmltext = player.isMageClass() ? "33518-06.htm" : "33518-07.htm"; break; + } case DARK_ELF: + { st.setCond(12); htmltext = "33518-08.htm"; break; + } case ORC: + { st.setCond(13); htmltext = "33518-09.htm"; break; + } case DWARF: + { st.setCond(14); htmltext = "33518-10.htm"; break; + } case KAMAEL: + { st.setCond(15); htmltext = "33518-11.htm"; break; + } case ELF: + { st.setCond(player.isMageClass() ? 11 : 10); htmltext = player.isMageClass() ? "33518-12.htm" : "33518-13.htm"; break; + } } playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); break; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java index 6aa7cab89b..6bdcb9797f 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java @@ -291,21 +291,32 @@ public final class Q10369_NoblesseSoulTesting extends Quest switch (qs.getCond()) { case 1: + { htmltext = "31281-03.html"; break; + } case 2: + { htmltext = "31281-06.html"; break; + } case 3: + { htmltext = "31281-07.html"; break; + } case 4: + { htmltext = "31281-08.html"; break; + } case 5: + { htmltext = "31281-10.html"; break; + } case 14: + { final Quest instance = QuestManager.getInstance().getQuest(EvasHiddenSpace.class.getSimpleName()); if (instance != null) { @@ -313,9 +324,12 @@ public final class Q10369_NoblesseSoulTesting extends Quest } htmltext = null; break; + } case 17: + { htmltext = "31281-11.html"; break; + } } break; } @@ -324,18 +338,27 @@ public final class Q10369_NoblesseSoulTesting extends Quest switch (qs.getCond()) { case 5: + { htmltext = "33686-01.html"; break; + } case 6: + { htmltext = "33686-04.html"; break; + } case 15: + { htmltext = "33686-05.html"; break; + } case 16: + { htmltext = "33686-06.html"; break; + } case 18: + { player.doCast(NOBLESSE_PRESENTATION.getSkill()); showOnScreenMsg(player, NpcStringId.CONGRATULATIONS_YOU_ARE_NOW_A_NOBLESSE, ExShowScreenMessage.TOP_CENTER, 5000); player.setNoble(true); @@ -348,6 +371,7 @@ public final class Q10369_NoblesseSoulTesting extends Quest qs.exitQuest(false, true); htmltext = "33686-07.html"; break; + } } break; } @@ -356,30 +380,44 @@ public final class Q10369_NoblesseSoulTesting extends Quest switch (qs.getCond()) { case 7: + { htmltext = "33696-02.html"; break; + } case 8: + { htmltext = "33696-04.html"; break; + } case 9: + { htmltext = "33696-05.html"; break; + } case 10: + { htmltext = "33696-07.html"; break; + } case 11: + { htmltext = "33696-08.html"; break; + } case 12: + { htmltext = "33696-10.html"; break; + } case 13: + { qs.setCond(14, true); takeItems(player, HARD_FOSSIL_CONTAINING_WATER_ENERGY, -1); giveItems(player, SACK_CONTAINING_INGREDIENTS, 1); giveItems(player, SOE_SECRET_ROOM, 1); htmltext = "33696-11.html"; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java index 2e9fe0fadf..a3f3c799f4 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java @@ -473,17 +473,25 @@ public final class Q10385_RedThreadOfFate extends Quest switch (qs.getCond()) { case 2: + { htmltext = "33783-01.html"; break; + } case 3: + { htmltext = "33783-03.html"; break; + } case 4: + { htmltext = "33783-04.html"; break; + } case 5: + { htmltext = "33783-04.html"; break; + } } break; } @@ -552,17 +560,25 @@ public final class Q10385_RedThreadOfFate extends Quest switch (qs.getCond()) { case 10: + { htmltext = "31539-01.html"; break; + } case 11: + { htmltext = "31539-05.html"; break; + } case 13: + { htmltext = "31539-06.html"; break; + } case 14: + { htmltext = "31539-10.html"; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java index a6a13d44b1..b82280ef50 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java @@ -143,11 +143,15 @@ public final class Q10386_MysteriousJourney extends Quest switch (st.getCond()) { case 1: + { htmltext = "33780-01.html"; break; + } case 2: + { htmltext = "33780-05.html"; break; + } case 4: { giveAdena(player, 58_707, true); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java index 8c1604b6a8..5e324dac3f 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java @@ -166,14 +166,20 @@ public final class Q10387_SoullessOne extends Quest switch (st.getCond()) { case 1: + { htmltext = "33796-01.htm"; break; + } case 2: + { htmltext = "33796-06.html"; break; + } case 3: + { htmltext = "33796-07.html"; break; + } } } break; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java index 30418600b4..d51eb93794 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java @@ -224,23 +224,35 @@ public final class Q10390_KekropusLetter extends Quest switch (player.getRace()) { case HUMAN: + { htmltext = player.isMageClass() ? "30332-01.html" : "30332-02.html"; break; + } case DARK_ELF: + { htmltext = "30332-03.html"; break; + } case ORC: + { htmltext = "30332-04.html"; break; + } case DWARF: + { htmltext = "30332-05.html"; break; + } case KAMAEL: + { htmltext = "30332-06.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30332-08.html" : "30332-07.html"; break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java index f4f02c3edd..1e59ea9823 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java @@ -122,14 +122,20 @@ public final class Q10417_DaimonTheWhiteEyed extends Quest switch (st.getCond()) { case 1: + { htmltext = npc.getId() == EYE_OF_ARGOS ? "31683-05.html" : "33851-01.html"; break; + } case 2: + { htmltext = npc.getId() == EYE_OF_ARGOS ? "31683-06.html" : "33851-01.html"; break; + } case 3: + { htmltext = npc.getId() == EYE_OF_ARGOS ? "31683-07.html" : "33851-02.html"; break; + } } } return htmltext; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java index 37e1b208a1..2345109d97 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java @@ -125,7 +125,9 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest case "33491-02.html": case "33491-03.html": case "33491-04.html": + { break; + } case "33931-05.htm": // Navari { qs.startQuest(); @@ -246,36 +248,54 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (event.split("-")[1]) { case "fire": + { giveItems(player, FIRE_STONE); break; + } case "water": + { giveItems(player, WATER_STONE); break; + } case "earth": + { giveItems(player, EARTH_STONE); break; + } case "wind": + { giveItems(player, WIND_STONE); break; + } case "dark": + { giveItems(player, DARK_STONE); break; + } case "holy": + { giveItems(player, HOLY_STONE); break; + } } // Give soul crystal switch (qs.get("SoulCrystal")) { case "red": + { giveItems(player, RED_SOUL_CRYSTAL_15); break; + } case "blue": + { giveItems(player, BLUE_SOUL_CRYSTAL_15); break; + } case "green": + { giveItems(player, GREEN_SOUL_CRYSTAL_15); break; + } } giveItems(player, CRYSTAL_R); giveItems(player, RECIPE_TWILIGHT_NECKLACE); @@ -286,7 +306,9 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -302,17 +324,23 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33931-01.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "33931-06.html"; } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if ((npc.getId() == ZEPHYRA) && qs.isStarted()) @@ -320,17 +348,25 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getCond()) { case 1: + { htmltext = "33978-01.html"; break; + } case 2: + { htmltext = "33978-04.html"; break; + } case 17: + { htmltext = "33978-05.html"; break; + } case 18: + { htmltext = "33978-08.html"; break; + } } } else if ((npc.getId() == MOMET) && qs.isStarted()) @@ -349,17 +385,25 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getCond()) { case 3: + { htmltext = "31092-01.html"; break; + } case 4: + { htmltext = "31092-04.html"; break; + } case 5: + { htmltext = (qs.isMemoState(1)) ? "31092-06.html" : "31092-05.html"; break; + } case 6: + { htmltext = "31092-08.html"; break; + } } } else if ((npc.getId() == BLACKSMITH_OF_MAMMON) && qs.isStarted()) @@ -378,18 +422,26 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getCond()) { case 7: + { htmltext = "33870-01.html"; break; + } case 8: + { htmltext = "33870-06.html"; break; + } // TODO: Unknown html for cond 9 - 15 case 16: + { htmltext = "33870-07.html"; break; + } case 17: + { htmltext = "33870-10.html"; break; + } } } else if ((npc.getId() == KARLA) && qs.isStarted()) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java index 97543bbcc2..1ffe73c501 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java @@ -171,8 +171,10 @@ public final class Q10734_DoOrDie extends Quest break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } break; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java index dd588a6c25..b67cf8548e 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java @@ -121,8 +121,10 @@ public final class Q10740_NeverForget extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33951-01.htm"; break; + } case State.STARTED: { switch (qs.getCond()) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java index f5717e2b8d..0e60a2baf6 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java @@ -295,8 +295,10 @@ public final class Q10751_WindsOfFateEncounters extends Quest break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java index 12db806da2..4369dd3f3b 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java @@ -69,7 +69,9 @@ public final class Q10755_LettersFromTheQueenWindyHill extends LetterQuest { case "30037-02.html": case "33963-02.html": + { break; + } case "30037-03.html": { if (qs.isCond(1)) @@ -92,7 +94,9 @@ public final class Q10755_LettersFromTheQueenWindyHill extends LetterQuest break; } default: + { htmltext = event; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java index fe779004ee..a9e5b60ef9 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java @@ -77,7 +77,9 @@ public final class Q10756_AnInterdimensionalDraft extends Quest case "33963-02.htm": case "33963-03.htm": case "33963-04.htm": + { break; + } case "33963-05.htm": { qs.startQuest(); @@ -94,7 +96,9 @@ public final class Q10756_AnInterdimensionalDraft extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -108,14 +112,20 @@ public final class Q10756_AnInterdimensionalDraft extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33963-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33963-06.html" : "33963-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java index e356b3949d..676269a77f 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java @@ -75,7 +75,9 @@ public final class Q10757_QuietingTheStorm extends Quest case "33963-02.htm": case "33963-03.htm": case "33963-04.htm": + { break; + } case "33963-05.htm": { qs.startQuest(); @@ -92,7 +94,9 @@ public final class Q10757_QuietingTheStorm extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -106,14 +110,20 @@ public final class Q10757_QuietingTheStorm extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33963-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33963-06.html" : "33963-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java index 006bed445b..c3de2d720f 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java @@ -67,7 +67,9 @@ public final class Q10758_TheOathOfTheWind extends Quest { case "33963-01.htm": case "33963-02.htm": + { break; + } case "33963-03.htm": { qs.startQuest(); @@ -94,7 +96,9 @@ public final class Q10758_TheOathOfTheWind extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -108,14 +112,20 @@ public final class Q10758_TheOathOfTheWind extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33963-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33963-04.html" : "33963-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java index 19ce4480be..fb08a9c72c 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java @@ -69,7 +69,9 @@ public class Q10760_LettersFromTheQueenOrcBarracks extends LetterQuest { case "30037-02.html": case "30597-02.html": + { break; + } case "30037-03.html": { if (qs.isCond(1)) @@ -92,7 +94,9 @@ public class Q10760_LettersFromTheQueenOrcBarracks extends LetterQuest break; } default: + { htmltext = event; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java index 53d764015a..c650191204 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java @@ -79,7 +79,9 @@ public class Q10761_AnOrcInLove extends Quest case "33966-02.htm": case "33966-03.htm": case "33966-04.htm": + { break; + } case "33966-05.htm": { qs.startQuest(); @@ -96,7 +98,9 @@ public class Q10761_AnOrcInLove extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -110,14 +114,20 @@ public class Q10761_AnOrcInLove extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-06.html" : "33966-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java index f855ebf0b7..bb735c2799 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java @@ -67,7 +67,9 @@ public final class Q10762_MarionetteSpirit extends Quest switch (event) { case "33966-02.htm": + { break; + } case "33966-03.htm": { qs.startQuest(); @@ -84,7 +86,9 @@ public final class Q10762_MarionetteSpirit extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -98,14 +102,20 @@ public final class Q10762_MarionetteSpirit extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-04.html" : "33966-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java index 9afea74de2..d41d71d6e1 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java @@ -67,7 +67,9 @@ public final class Q10763_TerrifyingChertuba extends Quest switch (event) { case "33966-02.htm": + { break; + } case "33966-03.htm": { qs.startQuest(); @@ -84,7 +86,9 @@ public final class Q10763_TerrifyingChertuba extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -98,14 +102,20 @@ public final class Q10763_TerrifyingChertuba extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-04.html" : "33966-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java index a774df3136..b9c000b96a 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java @@ -75,7 +75,9 @@ public final class Q10764_FreeSpirit extends Quest switch (event) { case "33966-02.htm": + { break; + } case "33966-03.htm": { qs.startQuest(); @@ -94,7 +96,9 @@ public final class Q10764_FreeSpirit extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -110,14 +114,20 @@ public final class Q10764_FreeSpirit extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-04.html" : "33966-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java index c0643f0fb8..9894acae60 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java @@ -71,7 +71,9 @@ public final class Q10769_LettersFromTheQueenCrumaTowerPart1 extends LetterQuest { case "30070-02.html": case "30673-02.html": + { break; + } case "30070-03.html": { if (qs.isCond(1)) @@ -96,7 +98,9 @@ public final class Q10769_LettersFromTheQueenCrumaTowerPart1 extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java index 1b83618faa..c8184c680d 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java @@ -76,7 +76,9 @@ public final class Q10770_InSearchOfTheGrail extends Quest case "30673-02.htm": case "30673-03.htm": case "30673-04.htm": + { break; + } case "30673-05.htm": { qs.startQuest(); @@ -104,7 +106,9 @@ public final class Q10770_InSearchOfTheGrail extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -120,8 +124,10 @@ public final class Q10770_InSearchOfTheGrail extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30673-01.htm"; break; + } case State.STARTED: { if (qs.isCond(1)) @@ -135,8 +141,10 @@ public final class Q10770_InSearchOfTheGrail extends Quest break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted()) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java index 7ef68136da..e9716c0a3b 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java @@ -77,7 +77,9 @@ public final class Q10772_ReportsFromCrumaTowerPart1 extends Quest case "30484-04.htm": case "30484-05.htm": case "33991-02.html": + { break; + } case "30484-06.htm": { qs.startQuest(); @@ -116,7 +118,9 @@ public final class Q10772_ReportsFromCrumaTowerPart1 extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -132,14 +136,20 @@ public final class Q10772_ReportsFromCrumaTowerPart1 extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30484-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "30484-07.html" : "30484-08.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java index d346a9c5e2..8df276a587 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java @@ -70,7 +70,9 @@ public final class Q10774_LettersFromTheQueenCrumaTowerPart2 extends LetterQuest { case "30070-02.html": case "30487-02.html": + { break; + } case "30070-03.html": { if (qs.isCond(1)) @@ -94,7 +96,9 @@ public final class Q10774_LettersFromTheQueenCrumaTowerPart2 extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java index 12d96acffc..ed005274ec 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java @@ -80,7 +80,9 @@ public final class Q10775_InSearchOfAnAncientGiant extends Quest case "30487-04.htm": case "30485-02.html": case "30485-03.html": + { break; + } case "30487-05.htm": { qs.startQuest(); @@ -98,7 +100,9 @@ public final class Q10775_InSearchOfAnAncientGiant extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -114,17 +118,23 @@ public final class Q10775_InSearchOfAnAncientGiant extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30487-01.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "30487-06.html"; } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(2)) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java index 9fb07b0de2..1f987787b0 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java @@ -85,7 +85,9 @@ public final class Q10776_TheWrathOfTheGiants extends Quest case "33992-02.html": case "33992-03.html": case "30485-07.html": + { break; + } case "30485-03.htm": { qs.startQuest(); @@ -144,7 +146,9 @@ public final class Q10776_TheWrathOfTheGiants extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -159,28 +163,38 @@ public final class Q10776_TheWrathOfTheGiants extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30485-01.htm"; break; + } case State.STARTED: { switch (qs.getCond()) { case 1: + { htmltext = "30485-04.html"; break; + } case 2: case 3: + { htmltext = "30485-05.html"; break; + } case 4: + { htmltext = "30485-06.html"; break; + } } break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted()) @@ -192,8 +206,10 @@ public final class Q10776_TheWrathOfTheGiants extends Quest case 1: case 2: case 3: + { htmltext = "32366-01.html"; break; + } } } else if (npc.isScriptValue(player.getObjectId()) && (qs.isCond(2) || qs.isCond(3))) @@ -276,7 +292,9 @@ public final class Q10776_TheWrathOfTheGiants extends Quest break; } default: + { super.onTimerEvent(event, params, npc, player); + } } } } \ No newline at end of file diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java index 9171e098af..631a337d75 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java @@ -77,7 +77,9 @@ public final class Q10777_ReportsFromCrumaTowerPart2 extends Quest case "30485-04.htm": case "30485-05.htm": case "33991-02.html": + { break; + } case "30485-06.htm": { qs.startQuest(); @@ -118,7 +120,9 @@ public final class Q10777_ReportsFromCrumaTowerPart2 extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -134,14 +138,20 @@ public final class Q10777_ReportsFromCrumaTowerPart2 extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30485-01.htm"; break; + } case State.STARTED: + { htmltext = qs.isCond(1) ? "30485-07.html" : "30485-08.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java index a17aa358b1..ed2ef3824a 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java @@ -70,7 +70,9 @@ public final class Q10779_LettersFromTheQueenSeaOfSpores extends LetterQuest { case "30191-02.html": case "33845-02.html": + { break; + } case "30191-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10779_LettersFromTheQueenSeaOfSpores extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java index a62e2194f4..09fe203bdb 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java @@ -79,7 +79,9 @@ public final class Q10780_AWeakenedBarrier extends Quest { case "33845-04.htm": case "33845-05.htm": + { break; + } case "33845-06.htm": { qs.startQuest(); @@ -97,7 +99,9 @@ public final class Q10780_AWeakenedBarrier extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -113,17 +117,23 @@ public final class Q10780_AWeakenedBarrier extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33845-03.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "33845-07.html"; } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted()) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java index 274b59789d..cc3b5846cb 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java @@ -74,7 +74,9 @@ public final class Q10781_IngredientsToEnforcements extends Quest { case "33846-03.htm": case "33846-04.htm": + { break; + } case "33846-05.htm": { qs.startQuest(); @@ -92,7 +94,9 @@ public final class Q10781_IngredientsToEnforcements extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -106,14 +110,20 @@ public final class Q10781_IngredientsToEnforcements extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33846-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33846-06.html" : "33846-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java index 24f6d643db..82f6bcc4a0 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java @@ -70,7 +70,9 @@ public final class Q10782_LettersFromTheQueenForsakenPlains extends LetterQuest { case "30857-02.html": case "33866-02.html": + { break; + } case "30857-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10782_LettersFromTheQueenForsakenPlains extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java index e03931eeac..c4553f9101 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java @@ -92,7 +92,9 @@ public final class Q10783_TracesOfAnAmbush extends Quest { case "33866-03.htm": case "33866-04.htm": + { break; + } case "33866-05.htm": { qs.startQuest(); @@ -107,7 +109,9 @@ public final class Q10783_TracesOfAnAmbush extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -121,14 +125,20 @@ public final class Q10783_TracesOfAnAmbush extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33866-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33866-06.html" : "33866-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java index d4525f3cf2..c248da039f 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java @@ -76,10 +76,14 @@ public final class Q10784_TheBrokenDevice extends Quest { case "33866-03.htm": case "33866-04.htm": + { break; + } case "33866-05.htm": + { qs.startQuest(); break; + } case "33866-08.html": { if (qs.isCond(2)) @@ -92,7 +96,9 @@ public final class Q10784_TheBrokenDevice extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -106,14 +112,20 @@ public final class Q10784_TheBrokenDevice extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33866-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33866-06.html" : "33866-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java index 2bed778d1e..95beb05e72 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java @@ -70,7 +70,9 @@ public final class Q10785_LettersFromTheQueenFieldsOfMassacre extends LetterQues { case "30857-02.html": case "33867-02.html": + { break; + } case "30857-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10785_LettersFromTheQueenFieldsOfMassacre extends LetterQues break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java index 1ee857f102..69ee846d25 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java @@ -87,10 +87,14 @@ public final class Q10786_ResidentProblemSolver extends Quest { case "33867-03.htm": case "33867-04.htm": + { break; + } case "33867-05.htm": + { qs.startQuest(); break; + } case "33867-08.html": { if (qs.isCond(2)) @@ -106,7 +110,9 @@ public final class Q10786_ResidentProblemSolver extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -120,14 +126,20 @@ public final class Q10786_ResidentProblemSolver extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33867-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33867-06.html" : "33867-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java index 5d877b43df..db06dd5383 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java @@ -72,10 +72,14 @@ public final class Q10787_ASpyMission extends Quest { case "33867-03.htm": case "33867-04.htm": + { break; + } case "33867-05.htm": + { qs.startQuest(); break; + } case "33994-02.html": { if (qs.isCond(1)) @@ -110,7 +114,9 @@ public final class Q10787_ASpyMission extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -126,14 +132,20 @@ public final class Q10787_ASpyMission extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33867-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33867-06.html" : "33867-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java index 00550e18a2..dcc6dd467d 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java @@ -70,7 +70,9 @@ public final class Q10789_LettersFromTheQueenSwampOfScreams extends LetterQuest { case "31328-02.html": case "33847-02.html": + { break; + } case "31328-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10789_LettersFromTheQueenSwampOfScreams extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java index bd9d72fc8e..c1d885ae4b 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java @@ -70,7 +70,9 @@ public final class Q10792_LettersFromTheQueenForestOfTheDead extends LetterQuest { case "31328-02.html": case "33849-02.html": + { break; + } case "31328-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10792_LettersFromTheQueenForestOfTheDead extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java index f2b84840e3..f37c466a81 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java @@ -85,10 +85,14 @@ public final class Q10793_SaveTheSouls extends Quest { case "33849-03.htm": case "33849-04.htm": + { break; + } case "33849-05.htm": + { qs.startQuest(); break; + } case "33849-08.html": { if (qs.isCond(2)) @@ -104,7 +108,9 @@ public final class Q10793_SaveTheSouls extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -118,14 +124,20 @@ public final class Q10793_SaveTheSouls extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33849-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33849-06.html" : "33849-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10814_BefittingOfTheStatus/Q10814_BefittingOfTheStatus.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10814_BefittingOfTheStatus/Q10814_BefittingOfTheStatus.java index 29f5f5fe6b..c96029eb3e 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10814_BefittingOfTheStatus/Q10814_BefittingOfTheStatus.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/quests/Q10814_BefittingOfTheStatus/Q10814_BefittingOfTheStatus.java @@ -157,20 +157,30 @@ public final class Q10814_BefittingOfTheStatus extends Quest switch (qs.getCond()) { case 2: + { htmltext = "next-item-01.html"; break; + } case 3: + { htmltext = "next-item-02.html"; break; + } case 4: + { htmltext = "next-item-03.html"; break; + } case 5: + { htmltext = "next-item-04.html"; break; + } case 6: + { htmltext = "30097-07.html"; break; + } } } else @@ -194,22 +204,34 @@ public final class Q10814_BefittingOfTheStatus extends Quest switch (qs.getCond()) { case 1: + { htmlfile = "list-01.html"; break; + } case 2: + { htmlfile = "list-02.html"; break; + } case 3: + { htmlfile = "list-03.html"; break; + } case 4: + { htmlfile = "list-04.html"; break; + } case 5: + { htmlfile = "list-05.html"; break; + } default: + { htmlfile = "list-01.html"; + } } final NpcHtmlMessage htmlFile = getNpcHtmlMessage(player, npc, htmlfile); diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java index 1246d1204e..8f320c15d9 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java @@ -241,43 +241,59 @@ public final class AirShipGludioGracia extends AbstractNpcAI implements Runnable switch (_cycle) { case 0: + { broadcastInGludio(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_THAT_FLIES_TO_THE_GRACIA_CONTINENT_HAS_DEPARTED); _ship.setInDock(0); _ship.executePath(GLUDIO_TO_WARPGATE); break; + } case 1: + { // _ship.teleToLocation(-167874, 256731, -509, 41035, false); _ship.setOustLoc(OUST_GRACIA); ThreadPoolManager.schedule(this, 5000); break; + } case 2: + { _ship.executePath(WARPGATE_TO_GRACIA); break; + } case 3: + { broadcastInGracia(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_HAS_ARRIVED_IT_WILL_DEPART_FOR_THE_ADEN_CONTINENT_IN_1_MINUTE); _ship.setInDock(GRACIA_DOCK_ID); _ship.oustPlayers(); ThreadPoolManager.schedule(this, 60000); break; + } case 4: + { broadcastInGracia(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_THAT_FLIES_TO_THE_ADEN_CONTINENT_HAS_DEPARTED); _ship.setInDock(0); _ship.executePath(GRACIA_TO_WARPGATE); break; + } case 5: + { // _ship.teleToLocation(-157261, 255664, 221, 64781, false); _ship.setOustLoc(OUST_GLUDIO); ThreadPoolManager.schedule(this, 5000); break; + } case 6: + { _ship.executePath(WARPGATE_TO_GLUDIO); break; + } case 7: + { broadcastInGludio(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_HAS_ARRIVED_IT_WILL_DEPART_FOR_THE_GRACIA_CONTINENT_IN_1_MINUTE); _ship.setInDock(GLUDIO_DOCK_ID); _ship.oustPlayers(); ThreadPoolManager.schedule(this, 60000); break; + } } _cycle++; if (_cycle > 7) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatGludinRune.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatGludinRune.java index 746b80fafd..67e37b7006 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatGludinRune.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatGludinRune.java @@ -174,18 +174,25 @@ public class BoatGludinRune implements Runnable switch (_cycle) { case 0: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVE_GLUDIN5); ThreadPoolManager.schedule(this, 240000); break; + } case 1: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVE_GLUDIN1); ThreadPoolManager.schedule(this, 40000); break; + } case 2: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVE_GLUDIN0); ThreadPoolManager.schedule(this, 20000); break; + } case 3: + { BoatManager.getInstance().dockShip(BoatManager.GLUDIN_HARBOR, false); BoatManager.getInstance().broadcastPackets(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVING_GLUDIN); _boat.broadcastPacket(GLUDIN_SOUND); @@ -193,22 +200,32 @@ public class BoatGludinRune implements Runnable _boat.executePath(GLUDIN_TO_RUNE); ThreadPoolManager.schedule(this, 250000); break; + } case 4: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE15); ThreadPoolManager.schedule(this, 300000); break; + } case 5: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE10); ThreadPoolManager.schedule(this, 300000); break; + } case 6: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE5); ThreadPoolManager.schedule(this, 240000); break; + } case 7: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE1); break; + } case 8: + { if (BoatManager.getInstance().dockBusy(BoatManager.RUNE_HARBOR)) { if (_shoutCount == 0) @@ -227,25 +244,35 @@ public class BoatGludinRune implements Runnable } _boat.executePath(RUNE_DOCK); break; + } case 9: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, true); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVED_AT_RUNE, ARRIVED_AT_RUNE_2); _boat.broadcastPacket(RUNE_SOUND); ThreadPoolManager.schedule(this, 300000); break; + } case 10: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVE_RUNE5); ThreadPoolManager.schedule(this, 240000); break; + } case 11: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVE_RUNE1); ThreadPoolManager.schedule(this, 40000); break; + } case 12: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVE_RUNE0); ThreadPoolManager.schedule(this, 20000); break; + } case 13: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, false); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVING_RUNE); _boat.broadcastPacket(RUNE_SOUND); @@ -253,22 +280,32 @@ public class BoatGludinRune implements Runnable _boat.executePath(RUNE_TO_GLUDIN); ThreadPoolManager.schedule(this, 60000); break; + } case 14: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN15); ThreadPoolManager.schedule(this, 300000); break; + } case 15: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN10); ThreadPoolManager.schedule(this, 300000); break; + } case 16: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN5); ThreadPoolManager.schedule(this, 240000); break; + } case 17: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN1); break; + } case 18: + { if (BoatManager.getInstance().dockBusy(BoatManager.GLUDIN_HARBOR)) { if (_shoutCount == 0) @@ -287,12 +324,15 @@ public class BoatGludinRune implements Runnable } _boat.executePath(GLUDIN_DOCK); break; + } case 19: + { BoatManager.getInstance().dockShip(BoatManager.GLUDIN_HARBOR, true); BoatManager.getInstance().broadcastPackets(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVED_AT_GLUDIN, ARRIVED_AT_GLUDIN_2); _boat.broadcastPacket(GLUDIN_SOUND); ThreadPoolManager.schedule(this, 300000); break; + } } _shoutCount = 0; _cycle++; diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatInnadrilTour.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatInnadrilTour.java index 0c6be76018..b2462e8c54 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatInnadrilTour.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatInnadrilTour.java @@ -117,46 +117,66 @@ public class BoatInnadrilTour implements Runnable switch (_cycle) { case 0: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, LEAVE_INNADRIL5); ThreadPoolManager.schedule(this, 240000); break; + } case 1: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, LEAVE_INNADRIL1); ThreadPoolManager.schedule(this, 40000); break; + } case 2: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, LEAVE_INNADRIL0); ThreadPoolManager.schedule(this, 20000); break; + } case 3: + { BoatManager.getInstance().broadcastPackets(DOCK, DOCK, LEAVING_INNADRIL, INNADRIL_SOUND); _boat.payForRide(0, 1, 107092, 219098, -3952); _boat.executePath(TOUR); ThreadPoolManager.schedule(this, 650000); break; + } case 4: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL20); ThreadPoolManager.schedule(this, 300000); break; + } case 5: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL15); ThreadPoolManager.schedule(this, 300000); break; + } case 6: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL10); ThreadPoolManager.schedule(this, 300000); break; + } case 7: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL5); ThreadPoolManager.schedule(this, 240000); break; + } case 8: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL1); break; + } case 9: + { BoatManager.getInstance().broadcastPackets(DOCK, DOCK, ARRIVED_AT_INNADRIL, INNADRIL_SOUND); ThreadPoolManager.schedule(this, 300000); break; + } } _cycle++; if (_cycle > 9) diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatRunePrimeval.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatRunePrimeval.java index 7359b6bdec..fee83279f1 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatRunePrimeval.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/vehicles/BoatRunePrimeval.java @@ -110,21 +110,28 @@ public class BoatRunePrimeval implements Runnable switch (_cycle) { case 0: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, false); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], PRIMEVAL_DOCK, LEAVING_RUNE, RUNE_SOUND); _boat.payForRide(8925, 1, 34513, -38009, -3640); _boat.executePath(RUNE_TO_PRIMEVAL); break; + } case 1: + { BoatManager.getInstance().broadcastPackets(PRIMEVAL_DOCK, RUNE_DOCK[0], ARRIVED_AT_PRIMEVAL, ARRIVED_AT_PRIMEVAL_2, PRIMEVAL_SOUND); ThreadPoolManager.schedule(this, 180000); break; + } case 2: + { BoatManager.getInstance().broadcastPackets(PRIMEVAL_DOCK, RUNE_DOCK[0], LEAVING_PRIMEVAL, PRIMEVAL_SOUND); _boat.payForRide(8924, 1, 10447, -24982, -3664); _boat.executePath(PRIMEVAL_TO_RUNE); break; + } case 3: + { if (BoatManager.getInstance().dockBusy(BoatManager.RUNE_HARBOR)) { if (_shoutCount == 0) @@ -143,11 +150,14 @@ public class BoatRunePrimeval implements Runnable } _boat.executePath(RUNE_DOCK); break; + } case 4: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, true); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], PRIMEVAL_DOCK, ARRIVED_AT_RUNE, ARRIVED_AT_RUNE_2, RUNE_SOUND); ThreadPoolManager.schedule(this, 180000); break; + } } _shoutCount = 0; _cycle++; diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/commons/util/Rnd.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/commons/util/Rnd.java index ddef918e21..8570d4598a 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/commons/util/Rnd.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/commons/util/Rnd.java @@ -355,16 +355,21 @@ public final class Rnd switch (type) { case UNSECURE_ATOMIC: + { return new RandomContainer(new Random()); - + } case UNSECURE_VOLATILE: + { return new RandomContainer(new NonAtomicRandom()); - + } case UNSECURE_THREAD_LOCAL: + { return new RandomContainer(new ThreadLocalRandom()); - + } case SECURE: + { return new RandomContainer(new SecureRandom()); + } } throw new IllegalArgumentException(); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/FortUpdater.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/FortUpdater.java index 863af2077b..b38bb8eb81 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/FortUpdater.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/FortUpdater.java @@ -58,6 +58,7 @@ public class FortUpdater implements Runnable switch (_updaterType) { case PERIODIC_UPDATE: + { _runCount++; if ((_fort.getOwnerClan() == null) || (_fort.getOwnerClan() != _clan)) { @@ -81,7 +82,9 @@ public class FortUpdater implements Runnable } _fort.saveFortVariables(); break; + } case MAX_OWN_TIME: + { if ((_fort.getOwnerClan() == null) || (_fort.getOwnerClan() != _clan)) { return; @@ -92,6 +95,7 @@ public class FortUpdater implements Runnable _fort.setFortState(0, 0); } break; + } } } catch (Exception e) diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/LoginServerThread.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/LoginServerThread.java index 14b3f415f9..257cddeda9 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/LoginServerThread.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/LoginServerThread.java @@ -208,6 +208,7 @@ public class LoginServerThread extends Thread switch (packetType) { case 0x00: + { final InitLS init = new InitLS(incoming); if (init.getRevision() != REVISION) { @@ -236,12 +237,16 @@ public class LoginServerThread extends Thread _blowfish = new NewCrypt(blowfishKey); sendPacket(new AuthRequest(_requestID, _acceptAlternate, _hexID, _gamePort, _reserveHost, _maxPlayer, _subnets, _hosts)); break; + } case 0x01: + { final LoginServerFail lsf = new LoginServerFail(incoming); LOGGER.info(getClass().getSimpleName() + ": Damn! Registeration Failed: " + lsf.getReasonString()); // login will close the connection here break; + } case 0x02: + { final AuthResponse aresp = new AuthResponse(incoming); final int serverID = aresp.getServerId(); _serverName = aresp.getServerName(); @@ -288,7 +293,9 @@ public class LoginServerThread extends Thread sendPacket(new PlayerInGame(playerList)); } break; + } case 0x03: + { final PlayerAuthResponse par = new PlayerAuthResponse(incoming); final String account = par.getAccount(); WaitingClient wcToRemove = null; @@ -324,17 +331,24 @@ public class LoginServerThread extends Thread _waitingClients.remove(wcToRemove); } break; + } case 0x04: + { final KickPlayer kp = new KickPlayer(incoming); doKickPlayer(kp.getAccount()); break; + } case 0x05: + { final RequestCharacters rc = new RequestCharacters(incoming); getCharsOnServer(rc.getAccount()); break; + } case 0x06: + { new ChangePasswordResponse(incoming); break; + } } } } @@ -721,31 +735,45 @@ public class LoginServerThread extends Thread switch (status) { case ServerStatus.STATUS_AUTO: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_AUTO); _status = status; break; + } case ServerStatus.STATUS_DOWN: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_DOWN); _status = status; break; + } case ServerStatus.STATUS_FULL: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_FULL); _status = status; break; + } case ServerStatus.STATUS_GM_ONLY: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_GM_ONLY); _status = status; break; + } case ServerStatus.STATUS_GOOD: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_GOOD); _status = status; break; + } case ServerStatus.STATUS_NORMAL: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_NORMAL); _status = status; break; + } default: + { throw new IllegalArgumentException("Status does not exists:" + status); + } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java index 82b4667113..a14fe8797e 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java @@ -133,14 +133,20 @@ public class DoppelgangerAI extends L2CharacterAI switch (getIntention()) { case AI_INTENTION_ATTACK: + { thinkAttack(); break; + } case AI_INTENTION_CAST: + { thinkCast(); break; + } case AI_INTENTION_INTERACT: + { thinkInteract(); break; + } } } finally @@ -173,7 +179,9 @@ public class DoppelgangerAI extends L2CharacterAI case AI_INTENTION_IDLE: case AI_INTENTION_MOVE_TO: case AI_INTENTION_PICK_UP: + { getActor().followSummoner(_startFollow); + } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java index cbfe69dc4b..57c95bd40e 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java @@ -1094,14 +1094,20 @@ public class L2AttackableAI extends L2CharacterAI implements Runnable switch (getIntention()) { case AI_INTENTION_ACTIVE: + { thinkActive(); break; + } case AI_INTENTION_ATTACK: + { thinkAttack(); break; + } case AI_INTENTION_CAST: + { thinkCast(); break; + } } } catch (Exception e) diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java index e7ca4d2583..f63498b55a 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java @@ -129,8 +129,10 @@ public class NpcData implements IGameXmlReader } case "race": case "sex": + { set.set(npc_node.getNodeName(), npc_node.getTextContent().toUpperCase()); break; + } case "equipment": { set.set("chestId", parseInteger(attrs, "chest")); @@ -218,23 +220,35 @@ public class NpcData implements IGameXmlReader switch (attackAttributeType.toUpperCase()) { case "FIRE": + { set.set("baseFire", parseInteger(attrs, "value")); break; + } case "WATER": + { set.set("baseWater", parseInteger(attrs, "value")); break; + } case "WIND": + { set.set("baseWind", parseInteger(attrs, "value")); break; + } case "EARTH": + { set.set("baseEarth", parseInteger(attrs, "value")); break; + } case "DARK": + { set.set("baseDark", parseInteger(attrs, "value")); break; + } case "HOLY": + { set.set("baseHoly", parseInteger(attrs, "value")); break; + } } break; } @@ -279,8 +293,10 @@ public class NpcData implements IGameXmlReader break; } case "hit_time": + { set.set("hit_time", npc_node.getTextContent()); // TODO: Implement me default 600 (value in ms) break; + } } } break; diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java index c42db18ad8..34eb9f0517 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java @@ -1175,41 +1175,65 @@ public final class SkillTreesData implements IGameXmlReader switch (skillType) { case CLASS: + { sl = getClassSkill(id, lvl, player.getClassId()); break; + } case TRANSFORM: + { sl = getTransformSkill(id, lvl); break; + } case FISHING: + { sl = getFishingSkill(id, lvl); break; + } case PLEDGE: + { sl = getPledgeSkill(id, lvl); break; + } case SUBPLEDGE: + { sl = getSubPledgeSkill(id, lvl); break; + } case TRANSFER: + { sl = getTransferSkill(id, lvl, player.getClassId()); break; + } case SUBCLASS: + { sl = getSubClassSkill(id, lvl); break; + } case COLLECT: + { sl = getCollectSkill(id, lvl); break; + } case REVELATION: + { sl = getRevelationSkill(SubclassType.BASECLASS, id, lvl); break; + } case REVELATION_DUALCLASS: + { sl = getRevelationSkill(SubclassType.DUALCLASS, id, lvl); break; + } case ALCHEMY: + { sl = getAlchemySkill(id, lvl); break; + } case DUALCLASS: + { sl = getDualClassSkill(id, lvl); break; + } } return sl; } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/datatables/AugmentationData.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/datatables/AugmentationData.java index 9aee82cb76..2fca501879 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/datatables/AugmentationData.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/datatables/AugmentationData.java @@ -575,19 +575,29 @@ public class AugmentationData switch (lifeStoneGrade) { case AbstractRefinePacket.GRADE_NONE: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_NG_CHANCE; break; + } case AbstractRefinePacket.GRADE_MID: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_MID_CHANCE; break; + } case AbstractRefinePacket.GRADE_HIGH: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_HIGH_CHANCE; break; + } case AbstractRefinePacket.GRADE_TOP: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_TOP_CHANCE; break; + } default: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_NG_CHANCE; + } } int c = Rnd.get(100); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java index 2e64596385..0b8070e37b 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java @@ -260,6 +260,7 @@ public final class CastleManorManager implements IGameXmlReader, IStorable switch (_mode) { case MODIFIABLE: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_APPROVE_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_APPROVE_MIN); if (_nextModeChange.before(Calendar.getInstance())) @@ -267,14 +268,19 @@ public final class CastleManorManager implements IGameXmlReader, IStorable _nextModeChange.add(Calendar.DATE, 1); } break; + } case MAINTENANCE: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_REFRESH_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_REFRESH_MIN + Config.ALT_MANOR_MAINTENANCE_MIN); break; + } case APPROVED: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_REFRESH_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_REFRESH_MIN); break; + } } // Schedule mode change ThreadPoolManager.schedule(this::changeMode, (_nextModeChange.getTimeInMillis() - System.currentTimeMillis())); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java index 4f5183877e..c6537d2d80 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java @@ -51,20 +51,28 @@ public final class GraciaSeedsManager switch (seedType) { case SODTYPE: + { // Seed of Destruction GlobalVariablesManager.getInstance().set("SoDState", _SoDState); GlobalVariablesManager.getInstance().set("SoDTiatKilled", _SoDTiatKilled); GlobalVariablesManager.getInstance().set("SoDLSCDate", _SoDLastStateChangeDate.getTimeInMillis()); break; + } case SOITYPE: + { // Seed of Infinity break; + } case SOATYPE: + { // Seed of Annihilation break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown SeedType in SaveData: " + seedType); break; + } } } @@ -89,9 +97,12 @@ public final class GraciaSeedsManager switch (_SoDState) { case 1: + { // do nothing, players should kill Tiat a few times break; + } case 2: + { // Conquest Complete state, if too much time is passed than change to defense state final long timePast = System.currentTimeMillis() - _SoDLastStateChangeDate.getTimeInMillis(); if (timePast >= Config.SOD_STAGE_2_LENGTH) @@ -104,12 +115,17 @@ public final class GraciaSeedsManager ThreadPoolManager.schedule(new UpdateSoDStateTask(), Config.SOD_STAGE_2_LENGTH - timePast); } break; + } case 3: + { // not implemented setSoDState(1, true); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown Seed of Destruction state(" + _SoDState + ")! "); + } } } @@ -177,15 +193,23 @@ public final class GraciaSeedsManager switch (_SoDState) { case 1: + { return -1; + } case 2: + { return ((_SoDLastStateChangeDate.getTimeInMillis() + Config.SOD_STAGE_2_LENGTH) - System.currentTimeMillis()); + } case 3: + { // not implemented yet return -1; + } default: + { // this should not happen! return -1; + } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/TownManager.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/TownManager.java index a39f01d3ca..b0543eb11a 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/TownManager.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/instancemanager/TownManager.java @@ -27,25 +27,45 @@ public final class TownManager switch (townId) { case 912: + { return 1; + } case 916: + { return 2; + } case 918: + { return 3; + } case 922: + { return 4; + } case 924: + { return 5; + } case 926: + { return 6; + } case 1538: + { return 7; + } case 1537: + { return 8; + } case 1714: + { return 9; + } default: + { return 0; + } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2Clan.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2Clan.java index e7f6838bc6..169c3b5de6 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2Clan.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2Clan.java @@ -568,58 +568,86 @@ public class L2Clan implements IIdentifiable, INamable switch (pledgeType) { case 0: + { switch (getLevel()) { case 3: + { limit = 30; break; + } case 2: + { limit = 20; break; + } case 1: + { limit = 15; break; + } case 0: + { limit = 10; break; + } default: + { limit = 40; break; + } } break; + } case -1: + { limit = 20; break; + } case 100: case 200: + { switch (getLevel()) { case 11: + { limit = 30; break; + } default: + { limit = 20; break; + } } break; + } case 1001: case 1002: case 2001: case 2002: + { switch (getLevel()) { case 9: case 10: case 11: + { limit = 25; break; + } default: + { limit = 10; break; + } } break; + } default: + { break; + } } return limit; @@ -1904,23 +1932,37 @@ public class L2Clan implements IIdentifiable, INamable switch (pledgeType) { case SUBUNIT_ACADEMY: + { return 0; + } case SUBUNIT_ROYAL1: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_ROYAL2); break; + } case SUBUNIT_ROYAL2: + { return 0; + } case SUBUNIT_KNIGHT1: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT2); break; + } case SUBUNIT_KNIGHT2: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT3); break; + } case SUBUNIT_KNIGHT3: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT4); break; + } case SUBUNIT_KNIGHT4: + { return 0; + } } } return pledgeType; @@ -2594,6 +2636,7 @@ public class L2Clan implements IIdentifiable, INamable break; } case 5: + { // Upgrade to 6 if ((getReputationScore() >= Config.CLAN_LEVEL_6_COST) && (getMembersCount() >= Config.CLAN_LEVEL_6_REQUIREMENT)) { @@ -2604,8 +2647,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; - + } case 6: + { // Upgrade to 7 if ((getReputationScore() >= Config.CLAN_LEVEL_7_COST) && (getMembersCount() >= Config.CLAN_LEVEL_7_REQUIREMENT)) { @@ -2616,7 +2660,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } case 7: + { // Upgrade to 8 if ((getReputationScore() >= Config.CLAN_LEVEL_8_COST) && (getMembersCount() >= Config.CLAN_LEVEL_8_REQUIREMENT)) { @@ -2627,7 +2673,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } case 8: + { // Upgrade to 9 if ((getReputationScore() >= Config.CLAN_LEVEL_9_COST) && (player.getInventory().getItemByItemId(9910) != null) && (getMembersCount() >= Config.CLAN_LEVEL_9_REQUIREMENT)) { @@ -2646,7 +2694,9 @@ public class L2Clan implements IIdentifiable, INamable } } break; + } case 9: + { // Upgrade to 10 if ((getReputationScore() >= Config.CLAN_LEVEL_10_COST) && (player.getInventory().getItemByItemId(9911) != null) && (getMembersCount() >= Config.CLAN_LEVEL_10_REQUIREMENT)) { @@ -2665,7 +2715,9 @@ public class L2Clan implements IIdentifiable, INamable } } break; + } case 10: + { // Upgrade to 11 if ((getReputationScore() >= Config.CLAN_LEVEL_11_COST) && (getMembersCount() >= Config.CLAN_LEVEL_11_REQUIREMENT)) { @@ -2676,8 +2728,11 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } default: + { return false; + } } if (!increaseClanLevel) diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2ClanMember.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2ClanMember.java index df4b387c8c..daef76108a 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2ClanMember.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2ClanMember.java @@ -430,12 +430,15 @@ public class L2ClanMember switch (clan.getLevel()) { case 4: + { if (player.isClanLeader()) { pledgeClass = 3; } break; + } case 5: + { if (player.isClanLeader()) { pledgeClass = 4; @@ -445,17 +448,24 @@ public class L2ClanMember pledgeClass = 2; } break; + } case 6: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 2; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 5; @@ -466,34 +476,48 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 4; break; + } case -1: default: + { pledgeClass = 3; break; + } } } break; + } } break; + } case 7: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 3; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 2; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 7; @@ -504,40 +528,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 6; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 5; break; + } case -1: default: + { pledgeClass = 4; break; + } } } break; + } } break; + } case 8: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 4; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 3; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 8; @@ -548,40 +588,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 7; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 6; break; + } case -1: default: + { pledgeClass = 5; break; + } } } break; + } } break; + } case 9: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 5; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 4; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 9; @@ -592,40 +648,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 8; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 7; break; + } case -1: default: + { pledgeClass = 6; break; + } } } break; + } } break; + } case 10: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 6; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 5; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 10; @@ -636,40 +708,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 9; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 8; break; + } case -1: default: + { pledgeClass = 7; break; + } } } break; + } } break; + } case 11: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 7; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 6; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 11; @@ -680,26 +768,36 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 10; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 9; break; + } case -1: default: + { pledgeClass = 8; break; + } } } break; + } } break; + } default: + { pledgeClass = 1; break; + } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2PetLevelData.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2PetLevelData.java index 306696fabd..43ab57e9ac 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2PetLevelData.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/L2PetLevelData.java @@ -200,17 +200,29 @@ public class L2PetLevelData switch (stat) { case WALK_SPEED: + { return _walkSpeedOnRide; + } case RUN_SPEED: + { return _runSpeedOnRide; + } case SWIM_WALK_SPEED: + { return _slowSwimSpeedOnRide; + } case SWIM_RUN_SPEED: + { return _fastSwimSpeedOnRide; + } case FLY_RUN_SPEED: + { return _slowFlySpeedOnRide; + } case FLY_WALK_SPEED: + { return _fastFlySpeedOnRide; + } } return 0; diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/MobGroup.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/MobGroup.java index 0edde73ed7..88cc4a5599 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/MobGroup.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/MobGroup.java @@ -80,17 +80,29 @@ public final class MobGroup switch (mobGroupAI.getAlternateAI()) { case L2ControllableMobAI.AI_NORMAL: + { return "Idle"; + } case L2ControllableMobAI.AI_FORCEATTACK: + { return "Force Attacking"; + } case L2ControllableMobAI.AI_FOLLOW: + { return "Following"; + } case L2ControllableMobAI.AI_CAST: + { return "Casting"; + } case L2ControllableMobAI.AI_ATTACK_GROUP: + { return "Attacking Group"; + } default: + { return "Idle"; + } } } catch (Exception e) diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java index 12aee02933..c6db05b905 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java @@ -1464,29 +1464,45 @@ public class L2Attackable extends L2Npc switch (skillId) { case 4303: // Strong type x2 + { count *= 2; break; + } case 4304: // Strong type x3 + { count *= 3; break; + } case 4305: // Strong type x4 + { count *= 4; break; + } case 4306: // Strong type x5 + { count *= 5; break; + } case 4307: // Strong type x6 + { count *= 6; break; + } case 4308: // Strong type x7 + { count *= 7; break; + } case 4309: // Strong type x8 + { count *= 8; break; + } case 4310: // Strong type x9 + { count *= 9; break; + } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java index ece9ae1c59..ca2c47d35e 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -423,16 +423,20 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe switch (zone) { case PVP: + { if ((instance != null) && instance.isPvP()) { return true; } return (_zones[ZoneId.PVP.ordinal()] > 0) && (_zones[ZoneId.PEACE.ordinal()] == 0); + } case PEACE: + { if ((instance != null) && instance.isPvP()) { return false; } + } } return _zones[zone.ordinal()] > 0; } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Npc.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Npc.java index 018b30b595..744af6f9da 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Npc.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Npc.java @@ -750,6 +750,7 @@ public class L2Npc extends L2Character switch (npcId) { case 31688: + { if (player.isNoble()) { filename = Olympiad.OLYMPIAD_HTML_PATH + "noble_main.htm"; @@ -759,11 +760,13 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } case 31690: case 31769: case 31770: case 31771: case 31772: + { if (player.isHero() || player.isNoble()) { filename = Olympiad.OLYMPIAD_HTML_PATH + "hero_main.htm"; @@ -773,7 +776,9 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } case 36402: + { if (player.getOlympiadBuffCount() > 0) { filename = (player.getOlympiadBuffCount() == Config.ALT_OLY_MAX_BUFFS ? Olympiad.OLYMPIAD_HTML_PATH + "olympiad_buffs.htm" : Olympiad.OLYMPIAD_HTML_PATH + "olympiad_5buffs.htm"); @@ -783,7 +788,9 @@ public class L2Npc extends L2Character filename = Olympiad.OLYMPIAD_HTML_PATH + "olympiad_nobuffs.htm"; } break; + } case 30298: // Blacksmith Pinter + { if (player.isAcademyMember()) { filename = (getHtmlPath(npcId, 1)); @@ -793,7 +800,9 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } default: + { if (((npcId >= 31093) && (npcId <= 31094)) || ((npcId >= 31172) && (npcId <= 31201)) || ((npcId >= 31239) && (npcId <= 31254))) { return; @@ -801,6 +810,7 @@ public class L2Npc extends L2Character // Get the text of the selected HTML file in function of the npcId and of the page number filename = (getHtmlPath(npcId, val)); break; + } } // Send a Server->Client NpcHtmlMessage containing the text of the L2NpcInstance to the L2PcInstance diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java index 56c68106bc..4f7386ef47 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java @@ -128,18 +128,24 @@ public class L2FortCommanderInstance extends L2DefenderInstance switch (spawn2.getMessageId()) { case 1: + { npcString = NpcStringId.ATTACKING_THE_ENEMY_S_REINFORCEMENTS_IS_NECESSARY_TIME_TO_DIE; break; + } case 2: + { if (attacker.isSummon()) { attacker = ((L2Summon) attacker).getOwner(); } npcString = NpcStringId.EVERYONE_CONCENTRATE_YOUR_ATTACKS_ON_S1_SHOW_THE_ENEMY_YOUR_RESOLVE; break; + } case 3: + { npcString = NpcStringId.FIRE_SPIRIT_UNLEASH_YOUR_POWER_BURN_THE_ENEMY; break; + } } if (npcString != null) { diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java index 65524c5221..da8d959b4a 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java @@ -364,11 +364,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 300: + { cost = Config.FS_HPREG1_FEE; break; + } default: // 400 + { cost = Config.FS_HPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_HPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); @@ -388,11 +392,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 40: + { cost = Config.FS_MPREG1_FEE; break; + } default: // 50 + { cost = Config.FS_MPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_MPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Provides additional MP recovery for clan members in the fortress." + percent + "%"); @@ -411,11 +419,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 45: + { cost = Config.FS_EXPREG1_FEE; break; + } default: // 50 + { cost = Config.FS_EXPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_EXPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Restores the Exp of any clan member who is resurrected in the fortress." + percent + "%"); @@ -449,15 +461,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 300: + { fee = Config.FS_HPREG1_FEE; break; + } default: // 400 + { fee = Config.FS_HPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_HP, percent, fee, Config.FS_HPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_HP) == null))) { @@ -494,15 +512,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 40: + { fee = Config.FS_MPREG1_FEE; break; + } default: // 50 + { fee = Config.FS_MPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_MP, percent, fee, Config.FS_MPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_MP) == null))) { @@ -539,15 +563,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 45: + { fee = Config.FS_EXPREG1_FEE; break; + } default: // 50 + { fee = Config.FS_EXPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_EXP, percent, fee, Config.FS_EXPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_EXP) == null))) { @@ -639,11 +669,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (stage) { case 1: + { cost = Config.FS_SUPPORT1_FEE; break; + } default: + { cost = Config.FS_SUPPORT2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_SUPPORT_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Enables the use of supplementary magic."); @@ -662,11 +696,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (stage) { case 1: + { cost = Config.FS_TELE1_FEE; break; + } default: + { cost = Config.FS_TELE2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_TELE_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Teleports clan members in a fort to the target Stage " + stage + " staging area"); @@ -700,15 +738,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (lvl) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 1: + { fee = Config.FS_TELE1_FEE; break; + } default: + { fee = Config.FS_TELE2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_TELEPORT, lvl, fee, Config.FS_TELE_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_TELEPORT) == null))) { @@ -745,15 +789,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (lvl) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 1: + { fee = Config.FS_SUPPORT1_FEE; break; + } default: + { fee = Config.FS_SUPPORT2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_SUPPORT, lvl, fee, Config.FS_SUPPORT_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_SUPPORT) == null))) { diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java index 48d9543f24..ebacac4e53 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java @@ -964,32 +964,50 @@ public final class L2PcInstance extends L2Playable switch (i) { case 0: + { result |= RelationChanged.RELATION_PARTYLEADER; // 0x10 break; + } case 1: + { result |= RelationChanged.RELATION_PARTY4; // 0x8 break; + } case 2: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY2 + RelationChanged.RELATION_PARTY1; // 0x7 break; + } case 3: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY2; // 0x6 break; + } case 4: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY1; // 0x5 break; + } case 5: + { result |= RelationChanged.RELATION_PARTY3; // 0x4 break; + } case 6: + { result |= RelationChanged.RELATION_PARTY2 + RelationChanged.RELATION_PARTY1; // 0x3 break; + } case 7: + { result |= RelationChanged.RELATION_PARTY2; // 0x2 break; + } case 8: + { result |= RelationChanged.RELATION_PARTY1; // 0x1 break; + } } } } @@ -12108,17 +12126,25 @@ public final class L2PcInstance extends L2Playable switch (getPrivateStoreType()) { case SELL: + { activeChar.sendPacket(new PrivateStoreMsgSell(this)); break; + } case PACKAGE_SELL: + { activeChar.sendPacket(new ExPrivateStoreSetWholeMsg(this)); break; + } case BUY: + { activeChar.sendPacket(new PrivateStoreMsgBuy(this)); break; + } case MANUFACTURE: + { activeChar.sendPacket(new RecipeShopMsg(this)); break; + } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java index b32df6283d..8db80cb5a0 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java @@ -72,14 +72,20 @@ public class L2PetManagerInstance extends L2MerchantInstance switch (val) { case 1: + { exchange(player, 7585, 6650); break; + } case 2: + { exchange(player, 7583, 6648); break; + } case 3: + { exchange(player, 7584, 6649); break; + } } return; } @@ -93,20 +99,30 @@ public class L2PetManagerInstance extends L2MerchantInstance // Info evolve(player, "curent pet summon item", "new pet summon item", "lvl required to evolve") // To ignore evolve just put value 0 where do you like example: evolve(player, 0, 9882, 55); case 1: + { ok = Evolve.doEvolve(player, this, 2375, 9882, 55); break; + } case 2: + { ok = Evolve.doEvolve(player, this, 9882, 10426, 70); break; + } case 3: + { ok = Evolve.doEvolve(player, this, 6648, 10311, 55); break; + } case 4: + { ok = Evolve.doEvolve(player, this, 6650, 10313, 55); break; + } case 5: + { ok = Evolve.doEvolve(player, this, 6649, 10312, 55); break; + } } if (!ok) { @@ -125,20 +141,30 @@ public class L2PetManagerInstance extends L2MerchantInstance { // Info evolve(player, "curent pet summon item", "new pet summon item", "lvl required to evolve") case 1: + { ok = Evolve.doRestore(player, this, 10307, 9882, 55); break; + } case 2: + { ok = Evolve.doRestore(player, this, 10611, 10426, 70); break; + } case 3: + { ok = Evolve.doRestore(player, this, 10308, 4422, 55); break; + } case 4: + { ok = Evolve.doRestore(player, this, 10309, 4423, 55); break; + } case 5: + { ok = Evolve.doRestore(player, this, 10310, 4424, 55); break; + } } if (!ok) { diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java index 9896791a73..d398e89c03 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java @@ -164,6 +164,7 @@ public class L2RaceManagerInstance extends L2Npc { case 816: // SystemMessageId.TICKETS_ARE_NOW_AVAILABLE_FOR_MONSTER_RACE_S1 case 817: // SystemMessageId.NOW_SELLING_TICKETS_FOR_MONSTER_RACE_S1 + { if (_state != ACCEPTING_BETS) {// LOGGER.info("Race Initializing"); _state = ACCEPTING_BETS; @@ -171,9 +172,11 @@ public class L2RaceManagerInstance extends L2Npc } // else{LOGGER.info("Race open");} sm.addInt(_raceNumber); break; + } case 818: // SystemMessageId.TICKET_SALES_FOR_THE_MONSTER_RACE_WILL_END_IN_S1_MINUTE_S case 820: // SystemMessageId.MONSTER_RACE_S2_WILL_BEGIN_IN_S1_MINUTE_S case 823: // SystemMessageId.THE_RACE_WILL_BEGIN_IN_S1_SECOND_S + { sm.addInt(_minutes); if (type.getId() == 820) { @@ -181,24 +184,31 @@ public class L2RaceManagerInstance extends L2Npc } _minutes--; break; + } case 819: // SystemMessageId.TICKETS_SALES_ARE_CLOSED_FOR_MONSTER_RACE_S1_ODDS_ARE_POSTED + { // LOGGER.info("Sales closed"); sm.addInt(_raceNumber); _state = WAITING; _minutes = 2; break; + } case 821: // SystemMessageId.MONSTER_RACE_S1_WILL_BEGIN_IN_30_SECONDS case 822: // SystemMessageId.MONSTER_RACE_S1_IS_ABOUT_TO_BEGIN_COUNTDOWN_IN_FIVE_SECONDS case 825: // SystemMessageId.MONSTER_RACE_S1_IS_FINISHED + { sm.addInt(_raceNumber); _minutes = 5; break; + } case 826: // SystemMessageId.FIRST_PRIZE_GOES_TO_THE_PLAYER_IN_LANE_S1_SECOND_PRIZE_GOES_TO_THE_PLAYER_IN_LANE_S2 + { // LOGGER.info("Placing"); _state = RACE_END; sm.addInt(MonsterRace.getInstance().getFirstPlace()); sm.addInt(MonsterRace.getInstance().getSecondPlace()); break; + } } // _logn.info("Counter: "+minutes); // LOGGER.info("State: "+state); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java index 2e9d457f78..acf49aff2c 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java @@ -349,12 +349,14 @@ public final class L2TeleporterInstance extends L2Npc { case 32534: // Seed of Infinity case 32539: + { if (player.isFlyingMounted()) { player.sendPacket(SystemMessageId.YOU_CANNOT_ENTER_A_SEED_WHILE_IN_A_FLYING_TRANSFORMATION_STATE); return; } break; + } } if (st.countTokens() <= 0) diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index 63eade4a8e..702435946f 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -506,19 +506,33 @@ public class CharStat switch (attackAttribute) { case FIRE: + { return (int) getValue(Stats.FIRE_POWER); + } case WATER: + { return (int) getValue(Stats.WATER_POWER); + } case WIND: + { return (int) getValue(Stats.WIND_POWER); + } case EARTH: + { return (int) getValue(Stats.EARTH_POWER); + } case HOLY: + { return (int) getValue(Stats.HOLY_POWER); + } case DARK: + { return (int) getValue(Stats.DARK_POWER); + } default: + { return 0; + } } } @@ -527,19 +541,33 @@ public class CharStat switch (defenseAttribute) { case FIRE: + { return (int) getValue(Stats.FIRE_RES); + } case WATER: + { return (int) getValue(Stats.WATER_RES); + } case WIND: + { return (int) getValue(Stats.WIND_RES); + } case EARTH: + { return (int) getValue(Stats.EARTH_RES); + } case HOLY: + { return (int) getValue(Stats.HOLY_RES); + } case DARK: + { return (int) getValue(Stats.DARK_RES); + } default: + { return (int) getValue(Stats.BASE_ATTRIBUTE_RES); + } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java index 2b1c51149c..d90e834d7c 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java @@ -59,7 +59,9 @@ public class ConditionGameTime extends Condition switch (_check) { case NIGHT: + { return GameTimeController.getInstance().isNight() == _required; + } } return !_required; } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java index aa85ba6f4a..51b5921818 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java @@ -59,17 +59,29 @@ public class ConditionPlayerBaseStats extends Condition switch (_stat) { case Int: + { return player.getINT() >= _value; + } case Str: + { return player.getSTR() >= _value; + } case Con: + { return player.getCON() >= _value; + } case Dex: + { return player.getDEX() >= _value; + } case Men: + { return player.getMEN() >= _value; + } case Wit: + { return player.getWIT() >= _value; + } } return false; } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java index ef96baec75..4be5a3fc3f 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java @@ -49,39 +49,57 @@ public class ConditionPlayerState extends Condition switch (_check) { case RESTING: + { if (player != null) { return (player.isSitting() == _required); } return !_required; + } case MOVING: + { return effector.isMoving() == _required; + } case RUNNING: + { return effector.isRunning() == _required; + } case STANDING: + { if (player != null) { return (_required != (player.isSitting() || player.isMoving())); } return (_required != effector.isMoving()); + } case FLYING: + { return (effector.isFlying() == _required); + } case BEHIND: + { return (effector.isBehindTarget() == _required); + } case FRONT: + { return (effector.isInFrontOfTarget() == _required); + } case CHAOTIC: + { if (player != null) { return ((player.getReputation() < 0) == _required); } return !_required; + } case OLYMPIAD: + { if (player != null) { return (player.isInOlympiadMode() == _required); } return !_required; + } } return !_required; } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java index c161d20dac..d38ef03cf0 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java @@ -462,17 +462,23 @@ public final class BlockCheckerEngine switch (_round) { case 1: + { // Schedule second spawn round _task = ThreadPoolManager.schedule(new SpawnRound(20, 2), 60000); break; + } case 2: + { // Schedule third spawn round _task = ThreadPoolManager.schedule(new SpawnRound(14, 3), 60000); break; + } case 3: + { // Schedule Event End Count Down _task = ThreadPoolManager.schedule(new EndEvent(), 180000); break; + } } // random % 2, if == 0 will spawn a red block // if != 0, will spawn a blue block diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/Duel.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/Duel.java index 6879c073af..54e9a2c1bf 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/Duel.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/Duel.java @@ -760,6 +760,7 @@ public class Duel { case Team1Win: case Team2Surrender: + { restorePlayerConditions(false); sm = _partyDuel ? SystemMessage.getSystemMessage(SystemMessageId.C1_S_PARTY_HAS_WON_THE_DUEL) : SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_DUEL); sm.addString(_playerA.getName()); @@ -767,8 +768,10 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Team1Surrender: case Team2Win: + { restorePlayerConditions(false); sm = _partyDuel ? SystemMessage.getSystemMessage(SystemMessageId.C1_S_PARTY_HAS_WON_THE_DUEL) : SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_DUEL); sm.addString(_playerB.getName()); @@ -776,7 +779,9 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Canceled: + { stopFighting(); // Don't restore hp, mp, cp restorePlayerConditions(true); @@ -785,7 +790,9 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Timeout: + { stopFighting(); restorePlayerConditions(false); sm = SystemMessage.getSystemMessage(SystemMessageId.THE_DUEL_HAS_ENDED_IN_A_TIE); @@ -793,6 +800,7 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } } // Send end duel packet diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/FortSiege.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/FortSiege.java index 840cacddb2..43e89644c5 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/FortSiege.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/FortSiege.java @@ -627,17 +627,25 @@ public class FortSiege implements Siegable switch (spawn2.getMessageId()) { case 1: + { npcString = NpcStringId.YOU_MAY_HAVE_BROKEN_OUR_ARROWS_BUT_YOU_WILL_NEVER_BREAK_OUR_WILL_ARCHERS_RETREAT; break; + } case 2: + { npcString = NpcStringId.AIIEEEE_COMMAND_CENTER_THIS_IS_GUARD_UNIT_WE_NEED_BACKUP_RIGHT_AWAY; break; + } case 3: + { npcString = NpcStringId.AT_LAST_THE_MAGIC_CIRCLE_THAT_PROTECTS_THE_FORTRESS_HAS_WEAKENED_VOLUNTEERS_STAND_BACK; break; + } case 4: + { npcString = NpcStringId.I_FEEL_SO_MUCH_GRIEF_THAT_I_CAN_T_EVEN_TAKE_CARE_OF_MYSELF_THERE_ISN_T_ANY_REASON_FOR_ME_TO_STAY_HERE_ANY_LONGER; break; + } } if (npcString != null) { @@ -908,13 +916,19 @@ public class FortSiege implements Siegable switch (teleportWho) { case Owner: + { players = getOwnersInZone(); break; + } case Attacker: + { players = getAttackersInZone(); break; + } default: + { players = getPlayersInZone(); + } } for (L2PcInstance player : players) diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/L2Event.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/L2Event.java index 8e8479ff9a..ad93bd97a4 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/L2Event.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/entity/L2Event.java @@ -225,10 +225,15 @@ public class L2Event switch (eventState) { case OFF: + { return false; + } case STANDBY: + { return _registeredPlayers.contains(player); + } case ON: + { for (Set teamList : _teams.values()) { if (teamList.contains(player)) @@ -236,9 +241,9 @@ public class L2Event return true; } } + } } return false; - } /** @@ -343,12 +348,18 @@ public class L2Event switch (eventState) { case ON: + { return "Cannot start event, it is already on."; + } case STANDBY: + { return "Cannot start event, it is on standby mode."; + } case OFF: // Event is off, so no problem turning it on. + { eventState = EventState.STANDBY; break; + } } // Register the event at AntiFeedManager and clean it for just in case if the event is already registered. @@ -409,12 +420,18 @@ public class L2Event switch (eventState) { case ON: + { return "Cannot start event, it is already on."; + } case STANDBY: + { eventState = EventState.ON; break; + } case OFF: // Event is off, so no problem turning it on. + { return "Cannot start event, it is off. Participation start is required."; + } } // Clean the things we will use, just in case. @@ -478,8 +495,11 @@ public class L2Event switch (eventState) { case OFF: + { return "Cannot finish event, it is already off."; + } case STANDBY: + { for (L2PcInstance player : _registeredPlayers) { removeAndResetPlayer(player); @@ -494,7 +514,9 @@ public class L2Event _eventName = ""; eventState = EventState.OFF; return "The event has been stopped at STANDBY mode, all players unregistered and all event npcs unspawned."; + } case ON: + { for (Set teamList : _teams.values()) { for (L2PcInstance player : teamList) @@ -516,6 +538,7 @@ public class L2Event _eventCreator = ""; _eventInfo = ""; return "The event has been stopped, all players unregistered and all event npcs unspawned."; + } } return "The event has been successfully finished."; diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/events/AbstractScript.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/events/AbstractScript.java index 4b3521c88c..d62c0be382 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/events/AbstractScript.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/events/AbstractScript.java @@ -2517,21 +2517,31 @@ public abstract class AbstractScript extends ManagedScript implements IEventTime switch (((L2EtcItem) item).getItemType()) { case POTION: + { count *= Config.RATE_QUEST_REWARD_POTION; break; + } case ENCHT_WP: case ENCHT_AM: case SCROLL: + { count *= Config.RATE_QUEST_REWARD_SCROLL; break; + } case RECIPE: + { count *= Config.RATE_QUEST_REWARD_RECIPE; break; + } case MATERIAL: + { count *= Config.RATE_QUEST_REWARD_MATERIAL; break; + } default: + { count *= Config.RATE_QUEST_REWARD; + } } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java index 830d162a41..796283f7bf 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java @@ -336,11 +336,15 @@ public class InstanceTemplate extends ListenersContainer implements IIdentifiabl switch (_enterLocationType) { case RANDOM: + { loc = _enterLocations.get(Rnd.get(_enterLocations.size())); break; + } case FIXED: + { loc = _enterLocations.get(0); break; + } } return loc; } @@ -365,11 +369,15 @@ public class InstanceTemplate extends ListenersContainer implements IIdentifiabl switch (_exitLocationType) { case RANDOM: + { location = _exitLocations.get(Rnd.get(_exitLocations.size())); break; + } case FIXED: + { location = _exitLocations.get(0); break; + } case ORIGIN: { final PlayerVariables vars = player.getVariables(); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java index 591a4dec3a..5910f77b6f 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java @@ -49,14 +49,20 @@ public final class ConditionHasResidence extends Condition switch (params.getEnum("type", ResidenceType.class)) { case CASTLE: + { test = clan.getCastleId() == id; break; + } case FORTRESS: + { test = clan.getFortId() == id; break; + } case CLANHALL: + { test = clan.getHideoutId() == id; break; + } } return test; } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java index aaab55dec7..34c893a2b6 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java @@ -362,6 +362,7 @@ public final class ItemAuction break; } case EXTEND_BY_3_MIN: + { if (Config.ALT_ITEM_AUCTION_TIME_EXTENDS_ON_BID > 0) { if (getAndSetLastBidPlayerObjectId(player.getObjectId()) != player.getObjectId()) @@ -371,6 +372,7 @@ public final class ItemAuction } } break; + } case EXTEND_BY_CONFIG_PHASE_A: { if (getAndSetLastBidPlayerObjectId(player.getObjectId()) != player.getObjectId()) @@ -429,14 +431,17 @@ public final class ItemAuction switch (getAuctionState()) { case CREATED: + { return false; - + } case FINISHED: + { if (_startingTime < (System.currentTimeMillis() - TimeUnit.MILLISECONDS.convert(Config.ALT_ITEM_AUCTION_EXPIRED_AFTER, TimeUnit.DAYS))) { return false; } break; + } } final int playerObjId = player.getObjectId(); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java index 544091dcd5..17a9b42f56 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java @@ -245,7 +245,6 @@ public final class ItemAuctionInstance nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); break; } - case 1: { switch (auctions[0].getAuctionState()) @@ -263,23 +262,22 @@ public final class ItemAuctionInstance } break; } - case STARTED: { currentAuction = auctions[0]; nextAuction = createAuction(Math.max(currentAuction.getEndingTime() + FINISH_TIME_SPACE, System.currentTimeMillis() + START_TIME_SPACE)); break; } - case FINISHED: { currentAuction = auctions[0]; nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); break; } - default: + { throw new IllegalArgumentException(); + } } break; } @@ -287,10 +285,8 @@ public final class ItemAuctionInstance default: { Arrays.sort(auctions, Comparator.comparingLong(ItemAuction::getStartingTime).reversed()); - // just to make sure we won't skip any auction because of little different times final long currentTime = System.currentTimeMillis(); - for (ItemAuction auction : auctions) { if (auction.getAuctionState() == ItemAuctionState.STARTED) @@ -304,7 +300,6 @@ public final class ItemAuctionInstance break; // only first } } - for (ItemAuction auction : auctions) { if ((auction.getStartingTime() > currentTime) && (currentAuction != auction)) @@ -313,7 +308,6 @@ public final class ItemAuctionInstance break; } } - if (nextAuction == null) { nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); @@ -414,12 +408,10 @@ public final class ItemAuctionInstance { throw new IllegalStateException("Could not set auction state: " + ItemAuctionState.STARTED + ", expected: " + state); } - LOGGER.info(getClass().getSimpleName() + ": Auction " + _auction.getAuctionId() + " has started for instance " + _auction.getInstanceId()); checkAndSetCurrentAndNextAuction(); break; } - case STARTED: { switch (_auction.getAuctionEndingExtendState()) @@ -434,7 +426,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_3_MIN: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_3_MIN) @@ -445,7 +436,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_CONFIG_PHASE_A: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_CONFIG_PHASE_B) @@ -456,7 +446,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_CONFIG_PHASE_B: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_CONFIG_PHASE_A) @@ -479,7 +468,9 @@ public final class ItemAuctionInstance } default: + { throw new IllegalStateException("Invalid state: " + state); + } } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 300d62e998..9b6ddae51e 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -854,55 +854,99 @@ public abstract class Inventory extends ItemContainer switch (slot) { case L2Item.SLOT_UNDERWEAR: + { return PAPERDOLL_UNDER; + } case L2Item.SLOT_R_EAR: + { return PAPERDOLL_REAR; + } case L2Item.SLOT_LR_EAR: case L2Item.SLOT_L_EAR: + { return PAPERDOLL_LEAR; + } case L2Item.SLOT_NECK: + { return PAPERDOLL_NECK; + } case L2Item.SLOT_R_FINGER: case L2Item.SLOT_LR_FINGER: + { return PAPERDOLL_RFINGER; + } case L2Item.SLOT_L_FINGER: + { return PAPERDOLL_LFINGER; + } case L2Item.SLOT_HEAD: + { return PAPERDOLL_HEAD; + } case L2Item.SLOT_R_HAND: case L2Item.SLOT_LR_HAND: + { return PAPERDOLL_RHAND; + } case L2Item.SLOT_L_HAND: + { return PAPERDOLL_LHAND; + } case L2Item.SLOT_GLOVES: + { return PAPERDOLL_GLOVES; + } case L2Item.SLOT_CHEST: case L2Item.SLOT_FULL_ARMOR: case L2Item.SLOT_ALLDRESS: + { return PAPERDOLL_CHEST; + } case L2Item.SLOT_LEGS: + { return PAPERDOLL_LEGS; + } case L2Item.SLOT_FEET: + { return PAPERDOLL_FEET; + } case L2Item.SLOT_BACK: + { return PAPERDOLL_CLOAK; + } case L2Item.SLOT_HAIR: case L2Item.SLOT_HAIRALL: + { return PAPERDOLL_HAIR; + } case L2Item.SLOT_HAIR2: + { return PAPERDOLL_HAIR2; + } case L2Item.SLOT_R_BRACELET: + { return PAPERDOLL_RBRACELET; + } case L2Item.SLOT_L_BRACELET: + { return PAPERDOLL_LBRACELET; + } case L2Item.SLOT_DECO: + { return PAPERDOLL_DECO1; // return first we deal with it later + } case L2Item.SLOT_BELT: + { return PAPERDOLL_BELT; + } case L2Item.SLOT_BROOCH: + { return PAPERDOLL_BROOCH; + } case L2Item.SLOT_BROOCH_JEWEL: + { return PAPERDOLL_BROOCH_JEWEL1; + } } return -1; } @@ -1078,81 +1122,125 @@ public abstract class Inventory extends ItemContainer switch (location) { case PAPERDOLL_UNDER: + { slot = L2Item.SLOT_UNDERWEAR; break; + } case PAPERDOLL_LEAR: + { slot = L2Item.SLOT_L_EAR; break; + } case PAPERDOLL_REAR: + { slot = L2Item.SLOT_R_EAR; break; + } case PAPERDOLL_NECK: + { slot = L2Item.SLOT_NECK; break; + } case PAPERDOLL_RFINGER: + { slot = L2Item.SLOT_R_FINGER; break; + } case PAPERDOLL_LFINGER: + { slot = L2Item.SLOT_L_FINGER; break; + } case PAPERDOLL_HAIR: + { slot = L2Item.SLOT_HAIR; break; + } case PAPERDOLL_HAIR2: + { slot = L2Item.SLOT_HAIR2; break; + } case PAPERDOLL_HEAD: + { slot = L2Item.SLOT_HEAD; break; + } case PAPERDOLL_RHAND: + { slot = L2Item.SLOT_R_HAND; break; + } case PAPERDOLL_LHAND: + { slot = L2Item.SLOT_L_HAND; break; + } case PAPERDOLL_GLOVES: + { slot = L2Item.SLOT_GLOVES; break; + } case PAPERDOLL_CHEST: + { slot = item.getItem().getBodyPart(); break; + } case PAPERDOLL_LEGS: + { slot = L2Item.SLOT_LEGS; break; + } case PAPERDOLL_CLOAK: + { slot = L2Item.SLOT_BACK; break; + } case PAPERDOLL_FEET: + { slot = L2Item.SLOT_FEET; break; + } case PAPERDOLL_LBRACELET: + { slot = L2Item.SLOT_L_BRACELET; break; + } case PAPERDOLL_RBRACELET: + { slot = L2Item.SLOT_R_BRACELET; break; + } case PAPERDOLL_DECO1: case PAPERDOLL_DECO2: case PAPERDOLL_DECO3: case PAPERDOLL_DECO4: case PAPERDOLL_DECO5: case PAPERDOLL_DECO6: + { slot = L2Item.SLOT_DECO; break; + } case PAPERDOLL_BELT: + { slot = L2Item.SLOT_BELT; break; + } case PAPERDOLL_BROOCH: + { slot = L2Item.SLOT_BROOCH; break; + } case PAPERDOLL_BROOCH_JEWEL1: case PAPERDOLL_BROOCH_JEWEL2: case PAPERDOLL_BROOCH_JEWEL3: case PAPERDOLL_BROOCH_JEWEL4: case PAPERDOLL_BROOCH_JEWEL5: case PAPERDOLL_BROOCH_JEWEL6: + { slot = L2Item.SLOT_BROOCH_JEWEL; break; + } } return slot; } @@ -1230,81 +1318,129 @@ public abstract class Inventory extends ItemContainer switch (slot) { case L2Item.SLOT_L_EAR: + { pdollSlot = PAPERDOLL_LEAR; break; + } case L2Item.SLOT_R_EAR: + { pdollSlot = PAPERDOLL_REAR; break; + } case L2Item.SLOT_NECK: + { pdollSlot = PAPERDOLL_NECK; break; + } case L2Item.SLOT_R_FINGER: + { pdollSlot = PAPERDOLL_RFINGER; break; + } case L2Item.SLOT_L_FINGER: + { pdollSlot = PAPERDOLL_LFINGER; break; + } case L2Item.SLOT_HAIR: + { pdollSlot = PAPERDOLL_HAIR; break; + } case L2Item.SLOT_HAIR2: + { pdollSlot = PAPERDOLL_HAIR2; break; + } case L2Item.SLOT_HAIRALL: + { setPaperdollItem(PAPERDOLL_HAIR, null); pdollSlot = PAPERDOLL_HAIR; break; + } case L2Item.SLOT_HEAD: + { pdollSlot = PAPERDOLL_HEAD; break; + } case L2Item.SLOT_R_HAND: case L2Item.SLOT_LR_HAND: + { pdollSlot = PAPERDOLL_RHAND; break; + } case L2Item.SLOT_L_HAND: + { pdollSlot = PAPERDOLL_LHAND; break; + } case L2Item.SLOT_GLOVES: + { pdollSlot = PAPERDOLL_GLOVES; break; + } case L2Item.SLOT_CHEST: case L2Item.SLOT_ALLDRESS: case L2Item.SLOT_FULL_ARMOR: + { pdollSlot = PAPERDOLL_CHEST; break; + } case L2Item.SLOT_LEGS: + { pdollSlot = PAPERDOLL_LEGS; break; + } case L2Item.SLOT_BACK: + { pdollSlot = PAPERDOLL_CLOAK; break; + } case L2Item.SLOT_FEET: + { pdollSlot = PAPERDOLL_FEET; break; + } case L2Item.SLOT_UNDERWEAR: + { pdollSlot = PAPERDOLL_UNDER; break; + } case L2Item.SLOT_L_BRACELET: + { pdollSlot = PAPERDOLL_LBRACELET; break; + } case L2Item.SLOT_R_BRACELET: + { pdollSlot = PAPERDOLL_RBRACELET; break; + } case L2Item.SLOT_DECO: + { pdollSlot = PAPERDOLL_DECO1; break; + } case L2Item.SLOT_BELT: + { pdollSlot = PAPERDOLL_BELT; break; + } case L2Item.SLOT_BROOCH: + { pdollSlot = PAPERDOLL_BROOCH; break; + } case L2Item.SLOT_BROOCH_JEWEL: + { pdollSlot = PAPERDOLL_BROOCH_JEWEL1; break; + } default: + { LOGGER.info("Unhandled slot type: " + slot); LOGGER.info(CommonUtil.getTraceString(Thread.currentThread().getStackTrace())); + } } if (pdollSlot >= 0) { @@ -1379,7 +1515,9 @@ public abstract class Inventory extends ItemContainer case L2Item.SLOT_FEET: case L2Item.SLOT_GLOVES: case L2Item.SLOT_HEAD: + { return; + } } } @@ -1398,7 +1536,6 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_RHAND, null); } - setPaperdollItem(PAPERDOLL_LHAND, item); break; } @@ -1445,15 +1582,21 @@ public abstract class Inventory extends ItemContainer break; } case L2Item.SLOT_NECK: + { setPaperdollItem(PAPERDOLL_NECK, item); break; + } case L2Item.SLOT_FULL_ARMOR: + { setPaperdollItem(PAPERDOLL_LEGS, null); setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_CHEST: + { setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_LEGS: { // handle full armor @@ -1462,20 +1605,26 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_CHEST, null); } - setPaperdollItem(PAPERDOLL_LEGS, item); break; } case L2Item.SLOT_FEET: + { setPaperdollItem(PAPERDOLL_FEET, item); break; + } case L2Item.SLOT_GLOVES: + { setPaperdollItem(PAPERDOLL_GLOVES, item); break; + } case L2Item.SLOT_HEAD: + { setPaperdollItem(PAPERDOLL_HEAD, item); break; + } case L2Item.SLOT_HAIR: + { final L2ItemInstance hair = getPaperdollItem(PAPERDOLL_HAIR); if ((hair != null) && (hair.getItem().getBodyPart() == L2Item.SLOT_HAIRALL)) { @@ -1485,10 +1634,11 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_HAIR, null); } - setPaperdollItem(PAPERDOLL_HAIR, item); break; + } case L2Item.SLOT_HAIR2: + { final L2ItemInstance hair2 = getPaperdollItem(PAPERDOLL_HAIR); if ((hair2 != null) && (hair2.getItem().getBodyPart() == L2Item.SLOT_HAIRALL)) { @@ -1498,32 +1648,47 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_HAIR2, null); } - setPaperdollItem(PAPERDOLL_HAIR2, item); break; + } case L2Item.SLOT_HAIRALL: + { setPaperdollItem(PAPERDOLL_HAIR2, null); setPaperdollItem(PAPERDOLL_HAIR, item); break; + } case L2Item.SLOT_UNDERWEAR: + { setPaperdollItem(PAPERDOLL_UNDER, item); break; + } case L2Item.SLOT_BACK: + { setPaperdollItem(PAPERDOLL_CLOAK, item); break; + } case L2Item.SLOT_L_BRACELET: + { setPaperdollItem(PAPERDOLL_LBRACELET, item); break; + } case L2Item.SLOT_R_BRACELET: + { setPaperdollItem(PAPERDOLL_RBRACELET, item); break; + } case L2Item.SLOT_DECO: + { equipTalisman(item); break; + } case L2Item.SLOT_BELT: + { setPaperdollItem(PAPERDOLL_BELT, item); break; + } case L2Item.SLOT_ALLDRESS: + { // formal dress setPaperdollItem(PAPERDOLL_LEGS, null); setPaperdollItem(PAPERDOLL_LHAND, null); @@ -1535,14 +1700,21 @@ public abstract class Inventory extends ItemContainer setPaperdollItem(PAPERDOLL_GLOVES, null); setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_BROOCH: + { setPaperdollItem(PAPERDOLL_BROOCH, item); break; + } case L2Item.SLOT_BROOCH_JEWEL: + { equipBroochJewel(item); break; + } default: + { LOGGER.warning("Unknown body slot " + targetSlot + " for Item ID: " + item.getId()); + } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/L2Item.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/L2Item.java index 2277b05ee1..2f590854f8 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/L2Item.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/L2Item.java @@ -414,11 +414,17 @@ public abstract class L2Item extends ListenersContainer implements IIdentifiable { case TYPE2_SHIELD_ARMOR: case TYPE2_ACCESSORY: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusArmor() * ((3 * enchantLevel) - 6)); + } case TYPE2_WEAPON: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusWeapon() * ((2 * enchantLevel) - 3)); + } default: + { return _crystalCount; + } } } else if (enchantLevel > 0) @@ -427,11 +433,17 @@ public abstract class L2Item extends ListenersContainer implements IIdentifiable { case TYPE2_SHIELD_ARMOR: case TYPE2_ACCESSORY: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusArmor() * enchantLevel); + } case TYPE2_WEAPON: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusWeapon() * enchantLevel); + } default: + { return _crystalCount; + } } } else diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java index 2337da2419..a2f6ac1d4f 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java @@ -1334,20 +1334,26 @@ public final class L2ItemInstance extends L2Object switch (_mana) { case 10: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_10); sm.addItemName(_item); player.sendPacket(sm); break; + } case 5: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_5); sm.addItemName(_item); player.sendPacket(sm); break; + } case 1: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_1_IT_WILL_DISAPPEAR_SOON); sm.addItemName(_item); player.sendPacket(sm); break; + } } if (_mana == 0) // The life time has expired diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java index edbb47633b..d073bfd72a 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java @@ -187,6 +187,7 @@ public class Olympiad extends ListenersContainer switch (_period) { case 0: + { if ((_olympiadEnd == 0) || (_olympiadEnd < Calendar.getInstance().getTimeInMillis())) { setNewOlympiadEnd(); @@ -196,7 +197,9 @@ public class Olympiad extends ListenersContainer scheduleWeeklyChange(); } break; + } case 1: + { if (_validationEnd > Calendar.getInstance().getTimeInMillis()) { loadNoblesRank(); @@ -210,9 +213,12 @@ public class Olympiad extends ListenersContainer setNewOlympiadEnd(); } break; + } default: + { LOGGER.warning(getClass().getSimpleName() + ": Omg something went wrong in loading!! Period = " + _period); return; + } } try (Connection con = DatabaseFactory.getInstance().getConnection(); @@ -922,19 +928,29 @@ public class Olympiad extends ListenersContainer switch (_noblesRank.get(objId)) { case 1: + { points += Config.ALT_OLY_RANK1_POINTS; break; + } case 2: + { points += Config.ALT_OLY_RANK2_POINTS; break; + } case 3: + { points += Config.ALT_OLY_RANK3_POINTS; break; + } case 4: + { points += Config.ALT_OLY_RANK4_POINTS; break; + } default: + { points += Config.ALT_OLY_RANK5_POINTS; + } } // Win/no win matches point bonus diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java index 5f672174e0..b740357222 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java @@ -57,13 +57,19 @@ public final class OlympiadAnnouncer implements Runnable switch (task.getGame().getType()) { case NON_CLASSED: + { npcString = NpcStringId.OLYMPIAD_CLASS_FREE_INDIVIDUAL_MATCH_IS_GOING_TO_BEGIN_IN_ARENA_S1_IN_A_MOMENT; break; + } case CLASSED: + { npcString = NpcStringId.OLYMPIAD_CLASS_INDIVIDUAL_MATCH_IS_GOING_TO_BEGIN_IN_ARENA_S1_IN_A_MOMENT; break; + } default: + { continue; + } } for (L2Spawn spawn : _managers) diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java index 3f4a80a0fa..f12879ef84 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java @@ -144,9 +144,13 @@ public enum SkillOperateType case DA2: case DA4: case DA5: + { return true; + } default: + { return false; + } } } @@ -165,9 +169,13 @@ public enum SkillOperateType case DA2: case DA4: case DA5: + { return true; + } default: + { return false; + } } } @@ -234,9 +242,13 @@ public enum SkillOperateType case CA1: case CA2: case CA5: + { return true; + } default: + { return false; + } } } @@ -258,9 +270,13 @@ public enum SkillOperateType case DA3: case DA4: case DA5: + { return true; + } default: + { return false; + } } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/stats/Formulas.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/stats/Formulas.java index 99abcf8994..bc9430b32d 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/stats/Formulas.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/stats/Formulas.java @@ -590,11 +590,15 @@ public final class Formulas switch (shldSuccess) { case SHIELD_DEFENSE_SUCCEED: + { enemy.sendPacket(SystemMessageId.YOUR_SHIELD_DEFENSE_HAS_SUCCEEDED); break; + } case SHIELD_DEFENSE_PERFECT_BLOCK: + { enemy.sendPacket(SystemMessageId.YOUR_EXCELLENT_SHIELD_DEFENSE_WAS_A_SUCCESS); break; + } } } @@ -854,10 +858,14 @@ public final class Formulas switch (shld) { case SHIELD_DEFENSE_SUCCEED: + { mDef += target.getShldDef(); break; + } case SHIELD_DEFENSE_PERFECT_BLOCK: // perfect block + { return 1; + } } // Bonus Spiritshot @@ -1118,7 +1126,6 @@ public final class Formulas { // Resist Modifier. final int cancelMagicLvl = skill.getMagicLevel(); - if (activeChar.isDebug()) { final StatsSet set = new StatsSet(); @@ -1128,7 +1135,6 @@ public final class Formulas set.set("rate", rate); Debug.sendSkillDebug(activeChar, target, skill, set); } - // Prevent initialization. final List buffs = target.getEffectList().hasBuffs() ? new ArrayList<>(target.getEffectList().getBuffs()) : new ArrayList<>(1); if (target.getEffectList().hasTriggered()) @@ -1360,13 +1366,21 @@ public final class Formulas switch (resist.getResistLevel()) { case 0: + { return 1.0; + } case 1: + { return 0.6; + } case 2: + { return 0.3; + } default: + { return 0; + } } } @@ -1508,13 +1522,19 @@ public final class Formulas switch (attackType) { case BOW: + { return (1500 * 345) / activeChar.getPAtkSpd(); + } case CROSSBOW: case TWOHANDCROSSBOW: + { return (1200 * 345) / activeChar.getPAtkSpd(); + } case DAGGER: + { // atkSpd /= 1.15; break; + } } return calcPAtkSpd(activeChar.getPAtkSpd()); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java index dae0cb10f9..8a54b645b0 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java @@ -50,16 +50,24 @@ public abstract class L2ZoneRespawn extends L2ZoneType switch (type) { case "other": + { addOtherSpawn(x, y, z); break; + } case "chaotic": + { addChaoticSpawn(x, y, z); break; + } case "banish": + { addBanishSpawn(x, y, z); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown location type: " + type); + } } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java index 53947b8169..fa49f8fe8e 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java @@ -75,24 +75,37 @@ public final class L2EffectZone extends L2ZoneType switch (name) { case "chance": + { _chance = Integer.parseInt(value); break; + } case "initialDelay": + { _initialDelay = Integer.parseInt(value); break; + } case "reuse": + { _reuse = Integer.parseInt(value); break; + } case "bypassSkillConditions": + { _bypassConditions = Boolean.parseBoolean(value); break; + } case "maxDynamicSkillCount": + { _skills = new ConcurrentHashMap<>(Integer.parseInt(value)); break; + } case "showDangerIcon": + { _isShowDangerIcon = Boolean.parseBoolean(value); break; + } case "skillIdLvl": + { final String[] propertySplit = value.split(";"); _skills = new ConcurrentHashMap<>(propertySplit.length); for (String skill : propertySplit) @@ -118,6 +131,7 @@ public final class L2EffectZone extends L2ZoneType } } break; + } default: { super.setParameter(name, value); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/L2GameClient.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/L2GameClient.java index 6bc536e28a..f0fc7726d3 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/L2GameClient.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/L2GameClient.java @@ -669,13 +669,21 @@ public final class L2GameClient extends ChannelInboundHandler switch (state) { case CONNECTED: + { return "[IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } case AUTHENTICATED: + { return "[Account: " + getAccountName() + " - IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } case IN_GAME: + { return "[Character: " + (getActiveChar() == null ? "disconnected" : getActiveChar().getName() + "[" + getActiveChar().getObjectId() + "]") + " - Account: " + getAccountName() + " - IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } default: + { throw new IllegalStateException("Missing state on switch"); + } } } catch (NullPointerException e) diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java index d24c043f23..bf1369b884 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java @@ -66,13 +66,17 @@ public final class CharacterDelete implements IClientIncomingPacket switch (failType) { case NONE:// Success! + { client.sendPacket(new CharDeleteSuccess()); final CharSelectInfoPackage charInfo = client.getCharSelection(_charSlot); EventDispatcher.getInstance().notifyEvent(new OnPlayerDelete(charInfo.getObjectId(), charInfo.getName(), client), Containers.Players()); break; + } default: + { client.sendPacket(new CharDeleteFail(failType)); break; + } } } catch (Exception e) diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java index 03f82be21d..e20dfd2ce4 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java @@ -74,6 +74,7 @@ public class MoveToLocationAirShip implements IClientIncomingPacket switch (_command) { case 0: + { if (!ship.canBeControlled()) { return; @@ -83,14 +84,18 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(_param1, _param2, z)); } break; + } case 1: + { if (!ship.canBeControlled()) { return; } ship.getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); break; + } case 2: + { if (!ship.canBeControlled()) { return; @@ -101,7 +106,9 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(ship.getX(), ship.getY(), z)); } break; + } case 3: + { if (!ship.canBeControlled()) { return; @@ -112,7 +119,9 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(ship.getX(), ship.getY(), z)); } break; + } case 4: + { if (!ship.isInDock() || ship.isMoving()) { return; @@ -138,6 +147,7 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.executePath(dst); break; + } } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java index caaa9f4faf..a008d4b0a7 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java @@ -114,6 +114,7 @@ public final class RequestActionUse implements IClientIncomingPacket switch (_actionId) { case 51: // General Manufacture + { // Player shouldn't be able to set stores if he/she is alike dead (dead or fake death) if (activeChar.isAlikeDead()) { @@ -139,9 +140,12 @@ public final class RequestActionUse implements IClientIncomingPacket client.sendPacket(new RecipeShopManageList(activeChar, false)); break; + } default: + { _log.warning(activeChar.getName() + ": unhandled action type " + _actionId); break; + } } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java index 95fd1aa66c..06bfa3c200 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java @@ -61,6 +61,7 @@ public final class RequestBlock implements IClientIncomingPacket { case BLOCK: case UNBLOCK: + { // can't use block/unblock for locating invisible characters if (targetId <= 0) { @@ -90,19 +91,28 @@ public final class RequestBlock implements IClientIncomingPacket BlockList.removeFromBlockList(activeChar, targetId); } break; + } case BLOCKLIST: + { BlockList.sendListToOwner(activeChar); break; + } case ALLBLOCK: + { activeChar.sendPacket(SystemMessageId.MESSAGE_REFUSAL_MODE); BlockList.setBlockAll(activeChar, true); break; + } case ALLUNBLOCK: + { activeChar.sendPacket(SystemMessageId.MESSAGE_ACCEPTANCE_MODE); BlockList.setBlockAll(activeChar, false); break; + } default: + { _log.info("Unknown 0xA9 block type: " + _type); + } } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java index 68f3ac2c1c..27e73c4de3 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java @@ -53,11 +53,15 @@ public final class RequestExCubeGameChangeTeam implements IClientIncomingPacket { case 0: case 1: + { // Change Player Team HandysBlockCheckerManager.getInstance().changePlayerToTeam(player, _arena, _team); break; + } case -1: + { // Remove Player (me) + } { final int team = HandysBlockCheckerManager.getInstance().getHolder(_arena).getPlayerTeam(player); // client sends two times this packet if click on exit @@ -69,8 +73,10 @@ public final class RequestExCubeGameChangeTeam implements IClientIncomingPacket break; } default: + { _log.warning("Wrong Cube Game Team ID: " + _team); break; + } } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java index 0c7271d8a5..ca230610ed 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java @@ -52,15 +52,21 @@ public final class RequestExCubeGameReadyAnswer implements IClientIncomingPacket switch (_answer) { case 0: + { // Cancel - Answer No break; + } case 1: + { // OK or Time Over HandysBlockCheckerManager.getInstance().increaseArenaVotes(_arena); break; + } default: + { _log.warning("Unknown Cube Game Answer ID: " + _answer); break; + } } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java index d66d6376c8..b1ae7171e1 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java @@ -320,17 +320,25 @@ public class RequestExEnchantItemAttribute implements IClientIncomingPacket { case Stone: case Roughore: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_STONE; break; + } case Crystal: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_CRYSTAL; break; + } case Jewel: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_JEWEL; break; + } case Energy: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_ENERGY; break; + } } } } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java index b651077122..260c32c7cc 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java @@ -70,63 +70,91 @@ public class RequestCommissionList implements IClientIncomingPacket switch (_treeViewDepth) { case 1: + { final CommissionTreeType commissionTreeType = CommissionTreeType.findByClientId(_itemType); if (commissionTreeType != null) { filter = filter.and(i -> commissionTreeType.getCommissionItemTypes().contains(i.getCommissionItemType())); } break; + } case 2: + { final CommissionItemType commissionItemType = CommissionItemType.findByClientId(_itemType); if (commissionItemType != null) { filter = filter.and(i -> i.getCommissionItemType() == commissionItemType); } break; + } } switch (_type) { case 0: // General + { filter = filter.and(i -> true); // TODO: condition break; + } case 1: // Rare + { filter = filter.and(i -> true); // TODO: condition break; + } } switch (_grade) { case 0: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.NONE); break; + } case 1: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.D); break; + } case 2: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.C); break; + } case 3: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.B); break; + } case 4: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.A); break; + } case 5: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.S); break; + } case 6: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.S80); break; + } case 7: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R); break; + } case 8: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R95); break; + } case 9: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R99); break; + } } filter = filter.and(i -> _query.isEmpty() || i.getName().toLowerCase().contains(_query.toLowerCase())); diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java index 53693bd214..099ecc9e7f 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java @@ -59,43 +59,65 @@ public class ExShowFortressSiegeInfo implements IClientOutgoingPacket switch (_csize) { case 3: + { switch (_csize2) { case 0: + { packet.writeD(0x03); break; + } case 1: + { packet.writeD(0x02); break; + } case 2: + { packet.writeD(0x01); break; + } case 3: + { packet.writeD(0x00); break; + } } break; + } case 4: // TODO: change 4 to 5 once control room supported + { switch (_csize2) - // TODO: once control room supported, update packet.writeD(0x0x) to support 5th room { + // TODO: once control room supported, update packet.writeD(0x0x) to support 5th room case 0: + { packet.writeD(0x05); break; + } case 1: + { packet.writeD(0x04); break; + } case 2: + { packet.writeD(0x03); break; + } case 3: + { packet.writeD(0x02); break; + } case 4: + { packet.writeD(0x01); break; + } } break; + } } } else diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java index 7eb34ca17a..ab5d73f244 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java @@ -80,10 +80,15 @@ public final class JavaExecutionContext extends AbstractExecutionContext switch (opcode) { case 0x07: + { packet = new AuthGameGuard(); break; + } default: + { debugOpcode(opcode, state); break; + } } break; } @@ -65,11 +69,15 @@ public final class L2LoginPacketHandler implements IPacketHandler switch (opcode) { case 0x00: + { packet = new RequestAuthLogin(); break; + } default: + { debugOpcode(opcode, state); break; + } } break; } diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java index f68dbeac9a..670a1da820 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java @@ -141,6 +141,7 @@ public class RequestAuthLogin extends L2LoginClientPacket switch (result) { case AUTH_SUCCESS: + { client.setAccount(info.getLogin()); client.setState(LoginClientState.AUTHED_LOGIN); client.setSessionKey(lc.assignSessionKeyToClient(info.getLogin(), client)); @@ -154,13 +155,19 @@ public class RequestAuthLogin extends L2LoginClientPacket client.sendPacket(new ServerList(client)); } break; + } case INVALID_PASSWORD: + { client.close(LoginFailReason.REASON_USER_OR_PASS_WRONG); break; + } case ACCOUNT_BANNED: + { client.close(new AccountKicked(AccountKickedReason.REASON_PERMANENTLY_BANNED)); return; + } case ALREADY_ON_LS: + { final L2LoginClient oldClient = lc.getAuthedClient(info.getLogin()); if (oldClient != null) { @@ -171,12 +178,13 @@ public class RequestAuthLogin extends L2LoginClientPacket // kick also current client client.close(LoginFailReason.REASON_ACCOUNT_IN_USE); break; + } case ALREADY_ON_GS: + { final GameServerInfo gsi = lc.getAccountOnGameServer(info.getLogin()); if (gsi != null) { client.close(LoginFailReason.REASON_ACCOUNT_IN_USE); - // kick from there if (gsi.isAuthed()) { @@ -184,6 +192,7 @@ public class RequestAuthLogin extends L2LoginClientPacket } } break; + } } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java index 15b939e951..b132aaf9c5 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/BeastFarm/BeastFarm.java @@ -256,17 +256,25 @@ public final class BeastFarm extends AbstractNpcAI switch (nextNpcId) { case 18869: + { name = name.replace("%name%", "Alpine Kookaburra"); break; + } case 18870: + { name = name.replace("%name%", "Alpine Cougar"); break; + } case 18871: + { name = name.replace("%name%", "Alpine Buffalo"); break; + } case 18872: + { name = name.replace("%name%", "Alpine Grendel"); break; + } } nextNpc.setName(name); nextNpc.broadcastPacket(new NpcInfo(nextNpc)); diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java index 2e319b311b..58056e87de 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/FairySettlement/LargeCocoon/LargeCocoon.java @@ -87,35 +87,47 @@ public final class LargeCocoon extends AbstractNpcAI switch (getRandom(6)) { case 0: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD_HARD, npc, false, 90000), player); break; + } case 1: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER_HARD, npc, false, 90000), player); break; + } case 2: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); break; + } case 3: + { addAttackPlayerDesire(addSpawn(FAIRY_ROGUE_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE_HARD, npc, false, 90000), player); break; + } case 4: + { addAttackPlayerDesire(addSpawn(FAIRY_WIZARD_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); break; + } case 5: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT_HARD, npc, false, 90000), player); addAttackPlayerDesire(addSpawn(FAIRY_WITCH_HARD, npc, false, 90000), player); break; + } } } npc.deleteMe(); @@ -136,85 +148,121 @@ public final class LargeCocoon extends AbstractNpcAI switch (getRandom(6)) { case 0: + { addSpawn(FAIRY_WARRIOR, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 1: + { addSpawn(FAIRY_KNIGHT, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 2: + { addSpawn(FAIRY_WARRIOR, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_KNIGHT, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 3: + { addSpawn(FAIRY_SUMMONER, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WARRIOR, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 4: + { addSpawn(FAIRY_WITCH, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_SUMMONER, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 5: + { addSpawn(FAIRY_SUMMONER, npc.getX() + 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WITCH, npc.getX() + 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } } switch (getRandom(6)) { case 0: + { addSpawn(FAIRY_ROGUE, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WARRIOR, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 1: + { addSpawn(FAIRY_KNIGHT, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 2: + { addSpawn(FAIRY_WARRIOR, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_KNIGHT, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 3: + { addSpawn(FAIRY_SUMMONER, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WIZARD, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 4: + { addSpawn(FAIRY_WITCH, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_SUMMONER, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } case 5: + { addSpawn(FAIRY_WIZARD, npc.getX() - 270, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WITCH, npc.getX() - 230, npc.getY(), npc.getZ(), npc.getHeading(), false, 0); break; + } } switch (getRandom(6)) { case 0: + { addSpawn(FAIRY_ROGUE, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WARRIOR, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 1: + { addSpawn(FAIRY_KNIGHT, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_ROGUE, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 2: + { addSpawn(FAIRY_WARRIOR, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_KNIGHT, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 3: + { addSpawn(FAIRY_SUMMONER, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WIZARD, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 4: + { addSpawn(FAIRY_WITCH, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_SUMMONER, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } case 5: + { addSpawn(FAIRY_WIZARD, npc.getX(), npc.getY() + 270, npc.getZ(), npc.getHeading(), false, 0); addSpawn(FAIRY_WITCH, npc.getX(), npc.getY() + 230, npc.getZ(), npc.getHeading(), false, 0); break; + } } return super.onSpawn(npc); @@ -241,35 +289,47 @@ public final class LargeCocoon extends AbstractNpcAI switch (getRandom(6)) { case 0: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD, npc, false, 90000), playable); break; + } case 1: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER, npc, false, 90000), playable); break; + } case 2: + { addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WIZARD, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); break; + } case 3: + { addAttackPlayerDesire(addSpawn(FAIRY_ROGUE, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WARRIOR, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_ROGUE, npc, false, 90000), playable); break; + } case 4: + { addAttackPlayerDesire(addSpawn(FAIRY_WIZARD, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_SUMMONER, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); break; + } case 5: + { addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_KNIGHT, npc, false, 90000), playable); addAttackPlayerDesire(addSpawn(FAIRY_WITCH, npc, false, 90000), playable); break; + } } } npc.deleteMe(); diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java index 43d41070e0..d74aba60ff 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/ForgeOfTheGods/ForgeOfTheGods.java @@ -93,14 +93,18 @@ public final class ForgeOfTheGods extends AbstractNpcAI switch (event) { case "suicide": + { if (npc != null) { npc.doDie(null); } break; + } case "refresh": + { _npcCount = 0; break; + } } return null; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java index a9db204c6e..ec4633eef8 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/ForgeOfTheGods/Rooney.java @@ -92,21 +92,31 @@ public final class Rooney extends AbstractNpcAI switch (aiVal) { case 1: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.HURRY_HURRY); break; + } case 2: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.I_AM_NOT_THAT_TYPE_OF_PERSON_WHO_STAYS_IN_ONE_PLACE_FOR_A_LONG_TIME); break; + } case 3: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.IT_S_HARD_FOR_ME_TO_KEEP_STANDING_LIKE_THIS); break; + } case 4: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WHY_DON_T_I_GO_THAT_WAY_THIS_TIME); break; + } default: + { npc.teleToLocation(LOCATIONS[getRandom(LOCATIONS.length)], false); npc.setScriptValue(0); return null; + } } npc.setScriptValue(aiVal + 1); startQuestTimer("teleport", 60000, npc, null); diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java index 30017c2f61..1d848d5c66 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/GuillotineFortress/Spirit.java @@ -111,14 +111,20 @@ public final class Spirit extends AbstractNpcAI switch (npc.getId()) { case EXECUTED_MAIDEN_VENGEFUL_SPIRIT: + { startQuestTimer("SPAM_TEXT1", 50000, npc, null, true); break; + } case SPIRIT_OF_THE_TORTURED_DWARF: + { startQuestTimer("SPAM_TEXT2", 50000, npc, null, true); break; + } case SPIRIT_OF_ONE_BURNED_ALIVE: + { startQuestTimer("SPAM_TEXT3", 50000, npc, null, true); break; + } } return super.onSpawn(npc); } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java index 48607ee635..2bd3509ce1 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/KetraOrcOutpust/KetraOrcSupport/KetraOrcSupport.java @@ -149,58 +149,88 @@ public final class KetraOrcSupport extends AbstractNpcAI switch (npc.getId()) { case KADUN: + { htmltext = (AllianceLevel > 0) ? "31370-friend.html" : "31370-no.html"; break; + } case WAHKAN: + { htmltext = (AllianceLevel > 0) ? "31371-friend.html" : "31371-no.html"; break; + } case ASEFA: + { htmltext = (AllianceLevel > 0) ? (AllianceLevel < 3) ? "31372-01.html" : "31372-04.html" : "31372-03.html"; break; + } case ATAN: + { htmltext = (AllianceLevel > 0) ? "31373-friend.html" : "31373-no.html"; break; + } case JAFF: + { htmltext = (AllianceLevel > 0) ? (AllianceLevel == 1) ? "31374-01.html" : "31374-02.html" : "31374-no.html"; break; + } case JUMARA: + { switch (AllianceLevel) { case 1: case 2: + { htmltext = "31375-01.html"; break; + } case 3: case 4: + { htmltext = "31375-02.html"; break; + } case 5: + { htmltext = "31375-03.html"; break; + } default: + { htmltext = "31375-no.html"; break; + } } break; + } case KURFA: + { switch (AllianceLevel) { case 1: case 2: case 3: + { htmltext = "31376-01.html"; break; + } case 4: + { htmltext = "31376-02.html"; break; + } case 5: + { htmltext = "31376-03.html"; break; + } default: + { htmltext = "31376-no.html"; break; + } } break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java index 81e236bf0c..97a51dab77 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/PlainsOfLizardman/PlainsOfLizardman.java @@ -115,21 +115,30 @@ public final class PlainsOfLizardman extends AbstractNpcAI switch (npc.getId()) { case TANTA_SUMMONER: + { if (!npc.isAffectedBySkill(DEMOTIVATION_HEX.getSkillId())) { npc.doCast(DEMOTIVATION_HEX.getSkill()); } break; + } case RAINBOW_FROG: + { castSkill(npc, attacker, RAINBOW_FROG_SKILL); break; + } case ENERGY_PLANT: + { castSkill(npc, attacker, ENERGY_PLANT_SKILL); break; + } case STICKY_MUSHROOM: + { castSkill(npc, attacker, STICKY_MUSHROOM_SKILL); break; + } case FANTASY_MUSHROOM: + { if (npc.isScriptValue(0)) { npc.setScriptValue(1); @@ -145,6 +154,7 @@ public final class PlainsOfLizardman extends AbstractNpcAI startQuestTimer("fantasy_mushroom", 4000, npc, attacker); } break; + } } return super.onAttack(npc, attacker, damage, isSummon); } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java index f37f63de65..b7a13e7f89 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/Rune/RuneCastle/Venom/Venom.java @@ -152,6 +152,7 @@ public final class Venom extends AbstractNpcAI switch (event) { case "tower_check": + { if (CastleManager.getInstance().getCastleById(CASTLE).getSiege().getControlTowerCount() <= 1) { changeLocation(MoveTo.THRONE); @@ -160,18 +161,23 @@ public final class Venom extends AbstractNpcAI startQuestTimer("raid_check", 10000, npc, null, true); } break; + } case "raid_check": + { if (!npc.isInsideZone(ZoneId.SIEGE) && !npc.isTeleporting()) { npc.teleToLocation(_loc); } break; + } case "cube_despawn": + { if (npc != null) { npc.deleteMe(); } break; + } } return event; } @@ -225,13 +231,18 @@ public final class Venom extends AbstractNpcAI switch (skill.getId()) { case 4222: + { npc.teleToLocation(_loc); break; + } case 4995: + { teleportTarget(player); ((L2Attackable) npc).stopHating(player); break; + } case 4996: + { teleportTarget(player); ((L2Attackable) npc).stopHating(player); if ((_targets != null) && (_targets.size() > 0)) @@ -251,6 +262,7 @@ public final class Venom extends AbstractNpcAI _targets.clear(); } break; + } } return super.onSpellFinished(npc, player, skill); } @@ -268,7 +280,6 @@ public final class Venom extends AbstractNpcAI case VENOM: { _venom = npc; - _loc = _venom.getLocation(); _venom.disableSkill(VENOM_TELEPORT.getSkill(), -1); _venom.disableSkill(RANGE_TELEPORT.getSkill(), -1); @@ -344,9 +355,12 @@ public final class Venom extends AbstractNpcAI switch (loc) { case THRONE: + { _venom.teleToLocation(TRHONE, false); break; + } case PRISON: + { if ((_venom == null) || _venom.isDead() || _venom.isDecayed()) { _venom = addSpawn(VENOM, DUNGEON, false, 0); @@ -358,6 +372,7 @@ public final class Venom extends AbstractNpcAI cancelQuestTimer("raid_check", _venom, null); cancelQuestTimer("tower_check", _venom, null); break; + } } _loc.setLocation(_venom.getLocation()); } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java index 42bc6bd38e..736c8ef674 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/SeedOfAnnihilation/Maguen.java @@ -216,14 +216,20 @@ public final class Maguen extends AbstractNpcAI switch (getRandom(3)) { case 0: + { skillToCast = (getRandom(100) < 70) ? B_BUFF_1 : B_BUFF_2; break; + } case 1: + { skillToCast = (getRandom(100) < 70) ? C_BUFF_1 : C_BUFF_2; break; + } case 2: + { skillToCast = (getRandom(100) < 70) ? R_BUFF_1 : R_BUFF_2; break; + } } if (skillToCast != null) @@ -282,14 +288,20 @@ public final class Maguen extends AbstractNpcAI switch (i1) { case 0: + { skillToCast = B_PLASMA1; break; + } case 1: + { skillToCast = B_PLASMA2; break; + } case 2: + { skillToCast = B_PLASMA3; break; + } } break; } @@ -298,14 +310,20 @@ public final class Maguen extends AbstractNpcAI switch (i2) { case 0: + { skillToCast = C_PLASMA1; break; + } case 1: + { skillToCast = C_PLASMA2; break; + } case 2: + { skillToCast = C_PLASMA3; break; + } } break; } @@ -314,14 +332,20 @@ public final class Maguen extends AbstractNpcAI switch (i3) { case 0: + { skillToCast = R_PLASMA1; break; + } case 1: + { skillToCast = R_PLASMA2; break; + } case 2: + { skillToCast = R_PLASMA3; break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java index 6af37c7710..e78a139c5c 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/SilentValley/SilentValley.java @@ -77,15 +77,21 @@ public final class SilentValley extends AbstractNpcAI switch (event) { case "CLEAR": + { npc.doDie(null); break; + } case "CLEAR_EVENT": + { npc.broadcastEvent("CLEAR_ALL_INSTANT", 2000, null); npc.doDie(null); break; + } case "SPAWN_CHEST": + { addSpawn(CHEST, npc.getX() - 100, npc.getY(), npc.getZ() - 100, 0, false, 0); break; + } } } return null; @@ -190,11 +196,15 @@ public final class SilentValley extends AbstractNpcAI switch (eventName) { case "CLEAR_ALL": + { startQuestTimer("CLEAR", 60000, receiver, null); break; + } case "CLEAR_ALL_INSTANT": + { receiver.doDie(null); break; + } } } return super.onEventReceived(eventName, sender, receiver, reference); diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java index 44fb7de7cd..d6a2600e29 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/StakatoNest/StakatoNest.java @@ -123,6 +123,7 @@ public final class StakatoNest extends AbstractNpcAI switch (npc.getId()) { case STAKATO_NURSE: + { monster = checkMinion(npc); if (monster != null) { @@ -134,14 +135,18 @@ public final class StakatoNest extends AbstractNpcAI } } break; + } case STAKATO_BABY: + { monster = ((L2MonsterInstance) npc).getLeader(); if ((monster != null) && !monster.isDead()) { startQuestTimer("nurse_change", 5000, monster, killer); } break; + } case STAKATO_MALE: + { monster = checkMinion(npc); if (monster != null) { @@ -153,14 +158,18 @@ public final class StakatoNest extends AbstractNpcAI } } break; + } case STAKATO_FEMALE: + { monster = ((L2MonsterInstance) npc).getLeader(); if ((monster != null) && !monster.isDead()) { startQuestTimer("male_change", 5000, monster, killer); } break; + } case STAKATO_CHIEF: + { if (killer.isInParty()) { final List party = killer.getParty().getMembers(); @@ -174,6 +183,7 @@ public final class StakatoNest extends AbstractNpcAI giveCocoon(killer, npc); } break; + } } return super.onKill(npc, killer, isSummon); } @@ -202,11 +212,15 @@ public final class StakatoNest extends AbstractNpcAI switch (event) { case "nurse_change": + { npcId = STAKATO_NURSE_2; break; + } case "male_change": + { npcId = STAKATO_MALE_2; break; + } } if (npcId > 0) { diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java index 288f0c6493..f67597d78f 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/TalkingIsland/Trandon/Trandon.java @@ -83,7 +83,9 @@ public final class Trandon extends AbstractNpcAI case "33490-10.html": case "33490-11.html": case "33490-19.html": + { break; + } case "33490-12.html": { if (player.getRace().equals(Race.ERTHEIA) || hasAllSubCertifications(player)) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java index 11f9a9435e..2e5ec3ca1d 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/areas/VarkaSilenosBarracks/VarkaSilenosSupport/VarkaSilenosSupport.java @@ -149,58 +149,88 @@ public final class VarkaSilenosSupport extends AbstractNpcAI switch (npc.getId()) { case ASHAS: + { htmltext = (AllianceLevel < 0) ? "31377-friend.html" : "31377-no.html"; break; + } case NARAN: + { htmltext = (AllianceLevel < 0) ? "31378-friend.html" : "31378-no.html"; break; + } case UDAN: + { htmltext = (AllianceLevel < 0) ? (AllianceLevel > -3) ? "31379-01.html" : "31379-04.html" : "31379-03.html"; break; + } case DIYABU: + { htmltext = (AllianceLevel < 0) ? "31380-friend.html" : "31380-no.html"; break; + } case HAGOS: + { htmltext = (AllianceLevel < 0) ? (AllianceLevel == -1) ? "31381-01.html" : "31381-02.html" : "31381-no.html"; break; + } case SHIKON: + { switch (AllianceLevel) { case -1: case -2: + { htmltext = "31382-01.html"; break; + } case -3: case -4: + { htmltext = "31382-02.html"; break; + } case -5: + { htmltext = "31382-03.html"; break; + } default: + { htmltext = "31382-no.html"; break; + } } break; + } case TERANU: + { switch (AllianceLevel) { case -1: case -2: case -3: + { htmltext = "31383-01.html"; break; + } case -4: + { htmltext = "31383-02.html"; break; + } case -5: + { htmltext = "31383-03.html"; break; + } default: + { htmltext = "31383-no.html"; break; + } } break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java index f2ce03efdf..318f800701 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Istina/IstinaCavern.java @@ -333,14 +333,20 @@ public final class IstinaCavern extends AbstractInstance switch (random) { case 1: + { showOnScreenMsg(instance, NpcStringId.ISTINA_S_SOUL_STONE_STARTS_POWERFULLY_ILLUMINATING_IN_RED, ExShowScreenMessage.TOP_CENTER, 6000); break; + } case 2: + { showOnScreenMsg(instance, NpcStringId.ISTINA_S_SOUL_STONE_STARTS_POWERFULLY_ILLUMINATING_IN_BLUE, ExShowScreenMessage.TOP_CENTER, 6000); break; + } case 3: + { showOnScreenMsg(instance, NpcStringId.ISTINA_S_SOUL_STONE_STARTS_POWERFULLY_ILLUMINATING_IN_GREEN, ExShowScreenMessage.TOP_CENTER, 6000); break; + } } } getTimers().addTimer("AUTHORITY_TIMER", 70000 + getRandom(25000), npc, null); @@ -598,20 +604,30 @@ public final class IstinaCavern extends AbstractInstance switch (instance.getStatus()) { case 0: + { htmltext = "33293-01.html"; break; + } case 1: + { htmltext = "33293-02.html"; break; + } case 2: + { htmltext = "33293-03.html"; break; + } case 3: + { htmltext = "33293-04.html"; break; + } case 4: + { htmltext = "33293-05.html"; break; + } } } return htmltext; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java index fe5488c8aa..79fcf3948d 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Teredor/TeredorWarzone.java @@ -364,20 +364,28 @@ public final class TeredorWarzone extends AbstractInstance switch (npc.getParameters().getInt("Spot", 0)) { case 1: + { npcId = getRandomBoolean() ? TEREDOR_LARVA : MUTANTED_MILLIPADE; break; + } case 2: case 3: + { npcId = getRandomBoolean() ? MUTANTED_MILLIPADE : HATCHET_UNDERBUG; break; + } case 4: case 5: case 6: + { npcId = getRandomBoolean() ? MUTANTED_MILLIPADE : HATCHET_UNDERBUG; break; + } case 7: + { npcId = getRandomEntry(MUTANTED_MILLIPADE, HATCHET_UNDERBUG, HATCHET_MILLIPADE); break; + } } if (npcId > 0) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java index a852734cb4..41c7968623 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/bosses/Tiat/Stage1.java @@ -364,9 +364,12 @@ public final class Stage1 extends AbstractInstance implements IGameXmlReader switch (world.getStatus() - 1) { case 0: + { spawnFlaggedNPCs(world, 0); break; + } case 1: + { world.broadcastPacket(new ExShowScreenMessage(NpcStringId.THE_ENEMIES_HAVE_ATTACKED_EVERYONE_COME_OUT_AND_FIGHT_URGH, 5, 1000)); for (int i : ENTRANCE_ROOM_DOORS) { @@ -374,7 +377,9 @@ public final class Stage1 extends AbstractInstance implements IGameXmlReader } spawnFlaggedNPCs(world, 1); break; + } case 4: + { world.broadcastPacket(new ExShowScreenMessage(NpcStringId.OBELISK_HAS_COLLAPSED_DON_T_LET_THE_ENEMIES_JUMP_AROUND_WILDLY_ANYMORE, 5, 1000)); for (int i : SQUARE_DOORS) { @@ -382,22 +387,31 @@ public final class Stage1 extends AbstractInstance implements IGameXmlReader } spawnFlaggedNPCs(world, 4); break; + } case 5: + { world.openCloseDoor(SCOUTPASS_DOOR, true); spawnFlaggedNPCs(world, 3); spawnFlaggedNPCs(world, 5); break; + } case 6: + { world.openCloseDoor(THRONE_DOOR, true); break; + } case 7: + { spawnFlaggedNPCs(world, 7); break; + } case 8: + { world.broadcastPacket(new ExShowScreenMessage(NpcStringId.COME_OUT_WARRIORS_PROTECT_SEED_OF_DESTRUCTION, 5, 1000)); world.setParameter("deviceCount", 0); spawnFlaggedNPCs(world, 8); break; + } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java index da6402acdf..6f5f88e5a8 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java @@ -205,20 +205,30 @@ public final class CastleChamberlain extends AbstractNpcAI switch (func) { case Castle.FUNC_RESTORE_EXP: + { fee = (level == 45) ? Config.CS_EXPREG1_FEE : Config.CS_EXPREG2_FEE; break; + } case Castle.FUNC_RESTORE_HP: + { fee = (level == 300) ? Config.CS_HPREG1_FEE : Config.CS_HPREG2_FEE; break; + } case Castle.FUNC_RESTORE_MP: + { fee = (level == 40) ? Config.CS_MPREG1_FEE : Config.CS_MPREG2_FEE; break; + } case Castle.FUNC_SUPPORT: + { fee = (level == 5) ? Config.CS_SUPPORT1_FEE : Config.CS_SUPPORT2_FEE; break; + } case Castle.FUNC_TELEPORT: + { fee = (level == 1) ? Config.CS_TELE1_FEE : Config.CS_TELE2_FEE; break; + } } return fee; } @@ -229,20 +239,30 @@ public final class CastleChamberlain extends AbstractNpcAI switch (func) { case Castle.FUNC_RESTORE_EXP: + { ratio = Config.CS_EXPREG_FEE_RATIO; break; + } case Castle.FUNC_RESTORE_HP: + { ratio = Config.CS_HPREG_FEE_RATIO; break; + } case Castle.FUNC_RESTORE_MP: + { ratio = Config.CS_MPREG_FEE_RATIO; break; + } case Castle.FUNC_SUPPORT: + { ratio = Config.CS_SUPPORT_FEE_RATIO; break; + } case Castle.FUNC_TELEPORT: + { ratio = Config.CS_TELE_FEE_RATIO; break; + } } return ratio; } @@ -257,14 +277,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.OUTER_DOOR_UPGRADE_PRICE2; break; + } case 3: + { price = Config.OUTER_DOOR_UPGRADE_PRICE3; break; + } case 5: + { price = Config.OUTER_DOOR_UPGRADE_PRICE5; break; + } } break; } @@ -273,14 +299,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.INNER_DOOR_UPGRADE_PRICE2; break; + } case 3: + { price = Config.INNER_DOOR_UPGRADE_PRICE3; break; + } case 5: + { price = Config.INNER_DOOR_UPGRADE_PRICE5; break; + } } break; } @@ -289,14 +321,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.WALL_UPGRADE_PRICE2; break; + } case 3: + { price = Config.WALL_UPGRADE_PRICE3; break; + } case 5: + { price = Config.WALL_UPGRADE_PRICE5; break; + } } break; } @@ -310,17 +348,25 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 1: + { price = Config.TRAP_UPGRADE_PRICE1; break; + } case 2: + { price = Config.TRAP_UPGRADE_PRICE2; break; + } case 3: + { price = Config.TRAP_UPGRADE_PRICE3; break; + } case 4: + { price = Config.TRAP_UPGRADE_PRICE4; break; + } } return price; } @@ -379,14 +425,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (fortress.getFortState()) { case 1: + { fortStatus = "1300122"; break; + } case 2: + { fortStatus = "1300124"; break; + } default: + { fortStatus = "1300123"; break; + } } sb.append("1300" + fortId + ""); sb.append(" (" + fortType + ")"); @@ -1144,15 +1196,22 @@ public final class CastleChamberlain extends AbstractNpcAI switch (evt.getRequest()) { case 3: // Seed info + { player.sendPacket(new ExShowSeedInfo(castleId, evt.isNextPeriod(), true)); break; + } case 4: // Crop info + { player.sendPacket(new ExShowCropInfo(castleId, evt.isNextPeriod(), true)); break; + } case 5: // Basic info + { player.sendPacket(new ExShowManorDefaultInfo(true)); break; + } case 7: // Seed settings + { if (manor.isManorApproved()) { player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM); @@ -1160,7 +1219,9 @@ public final class CastleChamberlain extends AbstractNpcAI } player.sendPacket(new ExShowSeedSetting(castleId)); break; + } case 8: // Crop settings + { if (manor.isManorApproved()) { player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM); @@ -1168,8 +1229,11 @@ public final class CastleChamberlain extends AbstractNpcAI } player.sendPacket(new ExShowCropSetting(castleId)); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Player " + player.getName() + " (" + player.getObjectId() + ") send unknown request id " + evt.getRequest() + "!"); + } } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java index c7cd273165..00f6f17b30 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java @@ -103,25 +103,35 @@ public final class CastleTeleporter extends AbstractNpcAI final int unknowInt = Integer.parseInt(st.nextToken()); final StatsSet npcParams = npc.getParameters(); Location teleLoc = null; - switch (unknowInt) { case 0: + { teleLoc = getTeleportLocation(npcParams, "01", "02", "03"); break; + } case 1: + { teleLoc = getTeleportLocation(npcParams, "11", "12", "13"); break; + } case 2: + { teleLoc = getTeleportLocation(npcParams, "21", "22", "23"); break; + } case 3: + { teleLoc = getTeleportLocation(npcParams, "31", "32", "33"); break; + } case 4: + { teleLoc = getTeleportLocation(npcParams, "41", "42", "43"); break; + } case 5: + { if (isOwner(player, npc)) { teleLoc = new Location(npcParams.getInt("pos_x51"), npcParams.getInt("pos_y51"), npcParams.getInt("pos_z51")); @@ -131,6 +141,7 @@ public final class CastleTeleporter extends AbstractNpcAI return "CastleTeleporter-noAuthority.html"; } break; + } } if (teleLoc != null) @@ -209,7 +220,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35308: case 35352: case 35544: + { return "CastleTeleporter-01"; + } case 35093: case 35135: case 35177: @@ -217,7 +230,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35309: case 35353: case 35545: + { return "CastleTeleporter-02"; + } case 35094: case 35136: case 35178: @@ -225,7 +240,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35310: case 35354: case 35546: + { return "CastleTeleporter-03"; + } } return String.valueOf(npc.getId()); } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java index 2e04e99770..e4af53361b 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java @@ -61,11 +61,16 @@ public final class CastleWarehouse extends AbstractNpcAI case "warehouse-01.html": case "warehouse-02.html": case "warehouse-03.html": + { break; + } case "warehouse-04.html": + { htmltext = (!isMyLord) ? "warehouse-no.html" : getHtm(player.getHtmlPrefix(), "warehouse-04.html").replace("%blood%", Integer.toString(player.getClan().getBloodAllianceCount())); break; + } case "Receive": + { if (!isMyLord) { htmltext = "warehouse-no.html"; @@ -81,7 +86,9 @@ public final class CastleWarehouse extends AbstractNpcAI htmltext = "warehouse-06.html"; } break; + } case "Exchange": + { if (!isMyLord) { htmltext = "warehouse-no.html"; @@ -97,9 +104,12 @@ public final class CastleWarehouse extends AbstractNpcAI htmltext = "warehouse-07.html"; } break; + } default: + { htmltext = null; break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java index 5c069122e1..679944e552 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java @@ -272,10 +272,14 @@ public final class ClanHallManager extends AbstractNpcAI case 1: case 2: case 3: + { ((L2MerchantInstance) npc).showBuyWindow(player, Integer.parseInt(npc.getId() + "0" + (itemLevel - 1))); break; + } default: + { htmltext = "ClanHallManager-noFunction.html"; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/EnergySeeds.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/EnergySeeds.java index 55a016c369..546f3b3cc0 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/EnergySeeds.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/EnergySeeds.java @@ -103,13 +103,19 @@ public final class EnergySeeds extends AbstractNpcAI switch (seed) { case INFINITY: + { return false; + } case DESTRUCTION: + { return GraciaSeedsManager.getInstance().getSoDState() == 2; + } case ANNIHILATION_BISTAKON: case ANNIHILATION_REPTILIKON: case ANNIHILATION_COKRAKON: + { return true; + } } return true; } @@ -136,25 +142,39 @@ public final class EnergySeeds extends AbstractNpcAI switch (npc.getId()) { case 18678: // Water + { itemId = 14016; break; + } case 18679: // Fire + { itemId = 14015; break; + } case 18680: // Wind + { itemId = 14017; break; + } case 18681: // Earth + { itemId = 14018; break; + } case 18682: // Divinity + { itemId = 14020; break; + } case 18683: // Darkness + { itemId = 14019; break; + } default: + { return super.onSkillSee(npc, caster, skill, targets, isSummon); + } } if (getRandom(100) < 33) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java index a93847a05c..749f577141 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/ManorManager/ManorManager.java @@ -79,8 +79,10 @@ public final class ManorManager extends AbstractNpcAI case "manager-help-01.htm": case "manager-help-02.htm": case "manager-help-03.htm": + { htmltext = event; break; + } } return htmltext; } @@ -130,25 +132,39 @@ public final class ManorManager extends AbstractNpcAI break; } case 2: // Crop sales + { player.sendPacket(new ExShowSellCropList(player.getInventory(), castleId)); break; + } case 3: // Seed info + { player.sendPacket(new ExShowSeedInfo(castleId, evt.isNextPeriod(), false)); break; + } case 4: // Crop info + { player.sendPacket(new ExShowCropInfo(castleId, evt.isNextPeriod(), false)); break; + } case 5: // Basic info + { player.sendPacket(new ExShowManorDefaultInfo(false)); break; + } case 6: // Buy harvester + { ((L2MerchantInstance) npc).showBuyWindow(player, 300000 + npc.getId()); break; + } case 9: // Edit sales (Crop sales) + { player.sendPacket(new ExShowProcureCropDetail(evt.getManorId())); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Player " + player.getName() + " (" + player.getObjectId() + ") send unknown request id " + evt.getRequest() + "!"); + } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/StarStones.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/StarStones.java index f0216337b8..d3764275ea 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/StarStones.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/ai/others/StarStones.java @@ -57,24 +57,32 @@ public final class StarStones extends AbstractNpcAI case 18684: case 18685: case 18686: + { // give Red item itemId = 14009; break; + } case 18687: case 18688: case 18689: + { // give Blue item itemId = 14010; break; + } case 18690: case 18691: case 18692: + { // give Green item itemId = 14011; break; + } default: + { // unknown npc! return super.onSkillSee(npc, caster, skill, targets, isSummon); + } } if (getRandom(100) < 33) { diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java index 7478b44a46..0e5f83d5d2 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java @@ -86,13 +86,19 @@ public final class AdminClanHall implements IAdminCommandHandler switch (actionVal) { case "inside": + { loc = clanHall.getOwnerLocation(); break; + } case "outside": + { loc = clanHall.getBanishLocation(); break; + } default: + { loc = player.getLocation(); + } } player.teleToLocation(loc); } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java index 214f3fcca7..af8911c09b 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java @@ -192,26 +192,40 @@ public class AdminLogin implements IAdminCommandHandler switch (currentType) { case 0x01: + { nameType += "Normal"; break; + } case 0x02: + { nameType += "Relax"; break; + } case 0x04: + { nameType += "Test"; break; + } case 0x08: + { nameType += "NoLabel"; break; + } case 0x10: + { nameType += "Restricted"; break; + } case 0x20: + { nameType += "Event"; break; + } case 0x40: + { nameType += "Free"; break; + } } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java index bb357a155b..1daf6a0ff9 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java @@ -128,34 +128,50 @@ public final class AdminPForge implements IAdminCommandHandler case 'B': case 'x': case 'X': + { // array break; + } case 'c': case 'C': + { // byte break; + } case 'h': case 'H': + { // word break; + } case 'd': case 'D': + { // dword break; + } case 'q': case 'Q': + { // qword break; + } case 'f': case 'F': + { // double break; + } case 's': case 'S': + { // string break; + } default: + { return false; + } } } @@ -169,7 +185,9 @@ public final class AdminPForge implements IAdminCommandHandler case "sc": case "sb": case "cs": + { return true; + } } return false; @@ -401,9 +419,12 @@ public final class AdminPForge implements IAdminCommandHandler switch (value) { case "$oid": + { value = String.valueOf(activeChar.getObjectId()); break; + } case "$boid": + { boat = activeChar.getBoat(); if (boat != null) { @@ -414,28 +435,44 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$title": + { value = activeChar.getTitle(); break; + } case "$name": + { value = activeChar.getName(); break; + } case "$x": + { value = String.valueOf(activeChar.getX()); break; + } case "$y": + { value = String.valueOf(activeChar.getY()); break; + } case "$z": + { value = String.valueOf(activeChar.getZ()); break; + } case "$heading": + { value = String.valueOf(activeChar.getHeading()); break; + } case "$toid": + { value = String.valueOf(activeChar.getTargetId()); break; + } case "$tboid": + { target = activeChar.getTarget(); if ((target != null) && (target instanceof L2Playable)) { @@ -450,7 +487,9 @@ public final class AdminPForge implements IAdminCommandHandler } } break; + } case "$ttitle": + { target = activeChar.getTarget(); if ((target != null) && (target instanceof L2Character)) { @@ -461,7 +500,9 @@ public final class AdminPForge implements IAdminCommandHandler value = ""; } break; + } case "$tname": + { target = activeChar.getTarget(); if (target != null) { @@ -472,7 +513,9 @@ public final class AdminPForge implements IAdminCommandHandler value = ""; } break; + } case "$tx": + { target = activeChar.getTarget(); if (target != null) { @@ -483,7 +526,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$ty": + { target = activeChar.getTarget(); if (target != null) { @@ -494,7 +539,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$tz": + { target = activeChar.getTarget(); if (target != null) { @@ -505,7 +552,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$theading": + { target = activeChar.getTarget(); if (target != null) { @@ -516,6 +565,7 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } } if (method.equals("sc") || method.equals("sb")) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java index 42ba371a4d..28eee47848 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java @@ -375,14 +375,20 @@ public class AdminSpawn implements IAdminCommandHandler { default: case 0: + { _log.info("('',1," + i + "," + x + "," + y + "," + z + ",0,0," + h + ",60,0,0),"); break; + } case 1: + { _log.info(""); break; + } case 2: + { _log.info("{ " + i + ", " + x + ", " + y + ", " + z + ", " + h + " },"); break; + } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java index fbf049aae5..7eda72c449 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java @@ -328,23 +328,35 @@ public class AdminTeleport implements IAdminCommandHandler switch (player.getRace()) { case ELF: + { regionName = "elf_town"; break; + } case DARK_ELF: + { regionName = "darkelf_town"; break; + } case ORC: + { regionName = "orc_town"; break; + } case DWARF: + { regionName = "dwarf_town"; break; + } case KAMAEL: + { regionName = "kamael_town"; break; + } case HUMAN: default: + { regionName = "talking_island_town"; + } } player.teleToLocation(MapRegionManager.getInstance().getMapRegionByName(regionName).getSpawnLoc(), true, null); diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/bypasshandlers/Augment.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/bypasshandlers/Augment.java index 95ce308a32..6f3cdd671a 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/bypasshandlers/Augment.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/bypasshandlers/Augment.java @@ -44,11 +44,15 @@ public class Augment implements IBypassHandler switch (Integer.parseInt(command.substring(8, 9).trim())) { case 1: + { activeChar.sendPacket(ExShowVariationMakeWindow.STATIC_PACKET); return true; + } case 2: + { activeChar.sendPacket(ExShowVariationCancelWindow.STATIC_PACKET); return true; + } } } catch (Exception e) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java index 440a9d3a54..4eba81bf89 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java @@ -78,11 +78,15 @@ public class KarmaCount extends AbstractEffect switch (_mode) { case 0: // diff + { final int newReputation = Math.min(player.getReputation() + _amount, 0); player.setReputation(newReputation); break; + } case 1: // reset + { player.setReputation(0); + } } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/itemhandlers/EventItem.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/itemhandlers/EventItem.java index 7e0a15c2bf..e7c5629cc7 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/itemhandlers/EventItem.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/itemhandlers/EventItem.java @@ -48,13 +48,19 @@ public class EventItem implements IItemHandler switch (itemId) { case 13787: // Handy's Block Checker Bond + { used = useBlockCheckerItem(activeChar, item); break; + } case 13788: // Handy's Block Checker Land Mine + { used = useBlockCheckerItem(activeChar, item); break; + } default: + { _log.warning("EventItemHandler: Item with id: " + itemId + " is not handled"); + } } return used; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/playeractions/SocialAction.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/playeractions/SocialAction.java index 3b46c485a5..1e34a0d148 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/playeractions/SocialAction.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/playeractions/SocialAction.java @@ -57,18 +57,24 @@ public final class SocialAction implements IPlayerActionHandler case 15: // Shyness case 28: // Propose case 29: // Provoke + { useSocial(activeChar, data.getOptionId()); break; + } case 30: // Beauty Shop + { if (useSocial(activeChar, data.getOptionId())) { activeChar.broadcastInfo(); } break; + } case 16: // Exchange Bows case 17: // High Five case 18: // Couple Dance + { useCoupleSocial(activeChar, data.getOptionId()); + } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java index 89ee884a61..991a11774d 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java @@ -62,53 +62,85 @@ public class Enchant implements ITelnetCommand switch (itemType) { case 1: + { itemType = Inventory.PAPERDOLL_HEAD; break; + } case 2: + { itemType = Inventory.PAPERDOLL_CHEST; break; + } case 3: + { itemType = Inventory.PAPERDOLL_GLOVES; break; + } case 4: + { itemType = Inventory.PAPERDOLL_FEET; break; + } case 5: + { itemType = Inventory.PAPERDOLL_LEGS; break; + } case 6: + { itemType = Inventory.PAPERDOLL_RHAND; break; + } case 7: + { itemType = Inventory.PAPERDOLL_LHAND; break; + } case 8: + { itemType = Inventory.PAPERDOLL_LEAR; break; + } case 9: + { itemType = Inventory.PAPERDOLL_REAR; break; + } case 10: + { itemType = Inventory.PAPERDOLL_LFINGER; break; + } case 11: + { itemType = Inventory.PAPERDOLL_RFINGER; break; + } case 12: + { itemType = Inventory.PAPERDOLL_NECK; break; + } case 13: + { itemType = Inventory.PAPERDOLL_UNDER; break; + } case 14: + { itemType = Inventory.PAPERDOLL_CLOAK; break; + } case 15: + { itemType = Inventory.PAPERDOLL_BELT; break; + } default: + { itemType = 0; break; + } } final boolean success = setEnchant(player, enchant, itemType); return success ? "Item has been successfully enchanted." : "Failed to enchant player's item!"; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java index 901e00370f..6d91a979b8 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java @@ -47,20 +47,30 @@ public class PartyInfo implements IUserCommandHandler switch (party.getDistributionType()) { case FINDERS_KEEPERS: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_FINDERS_KEEPERS); break; + } case RANDOM: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_RANDOM); break; + } case RANDOM_INCLUDING_SPOIL: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_RANDOM_INCLUDING_SPOIL); break; + } case BY_TURN: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_BY_TURN); break; + } case BY_TURN_INCLUDING_SPOIL: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_BY_TURN_INCLUDING_SPOIL); break; + } } // Not used in Infinite Odissey diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java index 98986c7bb2..0d58722682 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java @@ -41,6 +41,7 @@ public class CastleVCmd implements IVoicedCommandHandler switch (command) { case "opendoors": + { if (!params.equals("castle")) { activeChar.sendMessage("Only Castle doors can be open."); @@ -79,7 +80,9 @@ public class CastleVCmd implements IVoicedCommandHandler door.openMe(); } break; + } case "closedoors": + { if (!params.equals("castle")) { activeChar.sendMessage("Only Castle doors can be closed."); @@ -115,12 +118,15 @@ public class CastleVCmd implements IVoicedCommandHandler door2.closeMe(); } break; + } case "ridewyvern": + { if (activeChar.isClanLeader() && (activeChar.getClan().getCastleId() > 0)) { activeChar.mount(12621, 0, true); } break; + } } return true; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java index 2f9e28fa07..31b9470ed5 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/ChambersOfDelusion/ChamberOfDelusion.java @@ -266,13 +266,17 @@ public final class ChamberOfDelusion extends AbstractInstance switch (eventName) { case "SCE_LUCKY": + { receiver.setBusy(true); receiver.doCast(SUCCESS_SKILL.getSkill()); break; + } case "SCE_DREAM_FIRE_IN_THE_HOLE": + { receiver.setBusy(true); receiver.doCast(FAIL_SKILL.getSkill()); break; + } } return null; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java index 0aae3383a4..12738e908a 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/DarkCloudMansion/DarkCloudMansion.java @@ -130,8 +130,10 @@ public final class DarkCloudMansion extends AbstractInstance switch (event) { case "DELETE_ONE": + { npc.deleteMe(); break; + } case "DELETE": { world.getNpcs(BELETH_SAMPLE).stream().filter(n -> n != npc).forEach(L2Npc::deleteMe); @@ -140,8 +142,10 @@ public final class DarkCloudMansion extends AbstractInstance break; } case "CHAT": + { world.getNpcs(BELETH_SAMPLE).stream().filter(n -> n.isScriptValue(1)).forEach(n -> n.broadcastSay(ChatType.NPC_GENERAL, DECAY_CHAT[getRandom(DECAY_CHAT.length)])); break; + } } } return null; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java index d2efec6fbf..78abe60a80 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/FaeronTrainingGrounds1/FaeronTrainingGrounds1.java @@ -80,11 +80,15 @@ public final class FaeronTrainingGrounds1 extends AbstractInstance switch (event) { case "enter_instance": + { enterInstance(player, npc, TEMPLATE_ID); break; + } case "exit_instance": + { finishInstance(player, 0); break; + } case "33944-03.html": { if (qs.isCond(6)) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java index 31def525c1..591730785d 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/FortressDungeon/FortressDungeon.java @@ -232,13 +232,19 @@ public final class FortressDungeon extends AbstractInstance switch (instance.getStatus()) { case 0: + { npcId = RAIDS1[getRandom(RAIDS1.length)]; break; + } case 1: + { npcId = RAIDS2[getRandom(RAIDS2.length)]; break; + } default: + { npcId = RAIDS3[getRandom(RAIDS3.length)]; + } } // Spawn raid diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java index 65481c981c..5a74053b38 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/HarnakUndergroundRuins/HarnakUndergroundRuins.java @@ -123,50 +123,80 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (event) { case "enter_instance": + { enterInstance(player, npc, TEMPLATE_ID); break; + } case "message1": + { showOnScreenMsg(player, NpcStringId.AN_INTRUDER_INTERESTING, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message2": + { showOnScreenMsg(player, NpcStringId.PROVE_YOUR_WORTH, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message3": + { showOnScreenMsg(player, NpcStringId.ONLY_THOSE_STRONG_ENOUGH_SHALL_PROCEED, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message4": + { showOnScreenMsg(player, NpcStringId.THOUGH_SMALL_THIS_POWER_WILL_HELP_YOU_GREATLY, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message5": + { showOnScreenMsg(player, NpcStringId.ARE_YOU_STRONG_OR_WEAK_OF_THE_LIGHT_OR_DARKNESS, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "message6": + { showOnScreenMsg(player, NpcStringId.ONLY_THOSE_OF_LIGHT_MAY_PASS_OTHERS_MUST_PROVE_THEIR_STRENGTH, ExShowScreenMessage.TOP_CENTER, 5000); break; + } case "razkan_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.COME_ATTACK_ME_IF_YOU_DARE); break; + } case "bathus_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.IT_S_THE_END_FOR_YOU_TRAITOR); break; + } case "bamonti_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.I_WANT_TO_HEAR_YOU_CRY); break; + } case "carcass_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.I_WANT_TO_HEAR_YOU_CRY); break; + } case "khan_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.YOU_LL_HAVE_TO_KILL_US_FIRST); break; + } case "seknus_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.LETS_SEE_WHAT_YOU_ARE_MADE_OF); break; + } case "lotus_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.REPENT_AND_YOUR_DEATH_WILL_BE_QUICK); break; + } case "ele_say": + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.DIE_TRAITOR); break; + } case "spawn_npc1": { final Instance world = player.getInstanceWorld(); @@ -321,8 +351,10 @@ public final class HarnakUndergroundRuins extends AbstractInstance break; } case "exit": + { finishInstance(player, 0); break; + } case "spawn_npc4": { final Instance world = player.getInstanceWorld(); @@ -372,35 +404,55 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (timerCount) { case 0: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING41); break; + } case 1: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING42); break; + } case 2: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING43); break; + } case 3: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING44); break; + } case 4: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS_ARE_REMAINING45); break; + } case 5: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS); break; + } case 6: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS2); break; + } case 7: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS3); break; + } case 8: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECONDS4); break; + } case 9: + { npc.broadcastSay(ChatType.NPC_SHOUT, NpcStringId.SECOND); break; + } } if (timerCount <= 4) { @@ -464,29 +516,45 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (npc.getId()) { case RAKZAN: + { moveNpcRoom1(KRAKIA_BATHUS, NpcStringId.ARE_YOU_PLANNING_TO_BETRAY_THE_GODS_AND_FOLLOW_A_GIANT, "bathus_say", world); break; + } case KRAKIA_BATHUS: + { moveNpcRoom1(BAMONTI, NpcStringId.HAHA, "bamonti_say", world); break; + } case BAMONTI: + { moveNpcRoom1(KRAKIA_CARCASS, NpcStringId.HAHA, "carcass_say", world); break; + } case KRAKIA_CARCASS: + { moveNpcRoom1(WEISS_KHAN, NpcStringId.YOU_WILL_NOT_FREE_HERMUNCUS, "khan_say", world); break; + } case WEISS_KHAN: + { moveNpcRoom1(SEKNUS, NpcStringId.MORTAL, "seknus_say", world); break; + } case SEKNUS: + { moveNpcRoom1(KRAKIA_LOTUS, NpcStringId.TRYING_TO_FREE_HERMUNCUS, "lotus_say", world); break; + } case KRAKIA_LOTUS: + { moveNpcRoom1(WEISS_ELE, NpcStringId.YOU_WILL_NEVER_BREAK_THE_SEAL, "ele_say", world); break; + } case WEISS_ELE: + { startQuestTimer("spawn_npc2", 100, npc, killer); break; + } } break; } @@ -499,14 +567,20 @@ public final class HarnakUndergroundRuins extends AbstractInstance switch (params.getInt("wave")) { case 1: + { startQuestTimer("spawn_wave2", 100, npc, killer); break; + } case 2: + { startQuestTimer("spawn_wave3", 100, npc, killer); break; + } case 3: + { world.openCloseDoor(DOOR_TWO, true); break; + } } } break; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java index 2903a74346..cd9f853aa8 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/KaraphonHabitat/KaraphonHabitat.java @@ -56,11 +56,15 @@ public final class KaraphonHabitat extends AbstractInstance switch (event) { case "enter_instance": + { enterInstance(player, npc, TEMPLATE_ID); break; + } case "exit_instance": + { finishInstance(player, 0); break; + } } } return null; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java index 9042ead6d9..218e44562d 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/KartiasLabyrinth/KartiasLabyrinth.java @@ -649,6 +649,7 @@ public final class KartiasLabyrinth extends AbstractInstance switch (stage) { case 1: + { switch (wave) { case 1: @@ -676,7 +677,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 2: + { switch (wave) { case 1: @@ -704,7 +707,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 3: + { switch (wave) { case 1: @@ -763,7 +768,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 4: + { switch (wave) { case 1: @@ -791,7 +798,9 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } case 5: + { switch (wave) { case 1: @@ -826,6 +835,7 @@ public final class KartiasLabyrinth extends AbstractInstance } } break; + } } } else if (room == 2) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java index 33ba79efe5..2cf8826493 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/LabyrinthOfBelis/LabyrinthOfBelis.java @@ -310,20 +310,30 @@ public final class LabyrinthOfBelis extends AbstractInstance switch (world.getStatus()) { case 0: + { htmltext = "19155-01.html"; break; + } case 3: + { htmltext = "19155-03.html"; break; + } case 5: + { htmltext = "19155-04.html"; break; + } case 7: + { htmltext = "19155-05.html"; break; + } case 9: + { htmltext = "19155-06.html"; break; + } } } else @@ -334,11 +344,15 @@ public final class LabyrinthOfBelis extends AbstractInstance break; } case BELIS_VERITIFICATION_SYSTEM: + { htmltext = "33215.html"; break; + } case ELECTRICITY_GENERATOR: + { htmltext = "33216.html"; break; + } } return htmltext; } @@ -450,17 +464,25 @@ public final class LabyrinthOfBelis extends AbstractInstance switch (world.getStatus()) { case 0: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.LET_ME_KNOW_WHEN_YOU_RE_ALL_READY); break; + } case 4: + { showOnScreenMsg(player, NpcStringId.MARK_OF_BELIS_CAN_BE_ACQUIRED_FROM_ENEMIES_NUSE_THEM_IN_THE_BELIS_VERIFICATION_SYSTEM, ExShowScreenMessage.TOP_CENTER, 4500); break; + } case 6: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.DON_T_COME_BACK_HERE); break; + } default: + { getTimers().cancelTimer("MESSAGE", npc, null); break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/Nursery/Nursery.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/Nursery/Nursery.java index 24299d102e..602388546c 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/Nursery/Nursery.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/Nursery/Nursery.java @@ -148,14 +148,20 @@ public final class Nursery extends AbstractInstance switch (gameStage) { case 0: + { htmltext = "GameManager-01.html"; break; + } case 2: + { htmltext = "GameManager-02.html"; break; + } case 3: + { htmltext = "GameManager-03.html"; break; + } } final BuffInfo energyInfo = player.getEffectList().getBuffInfoByAbnormalType(ENERGY_SKILL_1.getSkill().getAbnormalType()); @@ -324,14 +330,20 @@ public final class Nursery extends AbstractInstance switch (getRandom(3)) { case 0: + { ENERGY_SKILL_1.getSkill().applyEffects(npc, killer); break; + } case 1: + { ENERGY_SKILL_2.getSkill().applyEffects(npc, killer); break; + } case 2: + { ENERGY_SKILL_3.getSkill().applyEffects(npc, killer); break; + } } instance.broadcastPacket(new Earthquake(npc, 50, 3)); showOnScreenMsg(instance, NpcStringId.RECEIVED_REGENERATION_ENERGY, ExShowScreenMessage.MIDDLE_CENTER, 2000); diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java index 45610ed536..e3c55193cb 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/instances/SSQDisciplesNecropolisPast/SSQDisciplesNecropolisPast.java @@ -125,20 +125,30 @@ public final class SSQDisciplesNecropolisPast extends AbstractInstance switch (count) { case 4: + { world.openCloseDoor(DOOR_1, true); break; + } case 10: + { world.openCloseDoor(DOOR_2, true); break; + } case 18: + { world.openCloseDoor(DOOR_3, true); break; + } case 28: + { world.openCloseDoor(DOOR_4, true); break; + } case 40: + { world.openCloseDoor(DOOR_5, true); break; + } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java index f547c238c0..b6a0c0e165 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00013_ParcelDelivery/Q00013_ParcelDelivery.java @@ -58,10 +58,13 @@ public class Q00013_ParcelDelivery extends Quest switch (event) { case "31274-02.html": + { st.startQuest(); giveItems(player, PACKAGE, 1); break; + } case "31539-01.html": + { if (st.isCond(1) && hasQuestItems(player, PACKAGE)) { giveAdena(player, 271980, true); @@ -73,6 +76,7 @@ public class Q00013_ParcelDelivery extends Quest htmltext = "31539-02.html"; } break; + } } return htmltext; } @@ -87,28 +91,38 @@ public class Q00013_ParcelDelivery extends Quest switch (st.getState()) { case State.CREATED: + { if (npcId == FUNDIN) { htmltext = "31274-00.htm"; } break; + } case State.STARTED: + { if (st.isCond(1)) { switch (npcId) { case FUNDIN: + { htmltext = "31274-02.html"; break; + } case VULCAN: + { htmltext = "31539-00.html"; break; + } } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java index 59cd95e537..72dfe89324 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00015_SweetWhispers/Q00015_SweetWhispers.java @@ -56,21 +56,27 @@ public class Q00015_SweetWhispers extends Quest switch (event) { case "31302-01.html": + { st.startQuest(); break; + } case "31518-01.html": + { if (st.isCond(1)) { st.setCond(2); } break; + } case "31517-01.html": + { if (st.isCond(2)) { addExpAndSp(player, 714215, 171); st.exitQuest(false, true); } break; + } } return htmltext; } @@ -85,42 +91,58 @@ public class Q00015_SweetWhispers extends Quest switch (st.getState()) { case State.CREATED: + { if (npcId == VLADIMIR) { htmltext = "31302-00.htm"; } break; + } case State.STARTED: + { switch (npcId) { case VLADIMIR: + { if (st.isCond(1)) { htmltext = "31302-01a.html"; } break; + } case M_NECROMANCER: + { switch (st.getCond()) { case 1: + { htmltext = "31518-00.html"; break; + } case 2: + { htmltext = "31518-01a.html"; break; + } } break; + } case HIERARCH: + { if (st.isCond(2)) { htmltext = "31517-00.html"; } break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java index 2a4dcf1546..b38679f897 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00040_ASpecialOrder/Q00040_ASpecialOrder.java @@ -143,14 +143,20 @@ public final class Q00040_ASpecialOrder extends Quest switch (npc.getId()) { case HELVETIA: + { htmltext = "30081-03.html"; break; + } case O_FULLE: + { htmltext = "31572-03.html"; break; + } case GESTO: + { htmltext = "30511-01.html"; break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java index c1bb4bb793..17170a6dd7 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00042_HelpTheUncle/Q00042_HelpTheUncle.java @@ -165,20 +165,30 @@ public final class Q00042_HelpTheUncle extends Quest switch (st.getCond()) { case 1: + { htmltext = (hasQuestItems(player, TRIDENT)) ? "30828-02.html" : "30828-02a.html"; break; + } case 2: + { htmltext = "30828-04.html"; break; + } case 3: + { htmltext = "30828-05.html"; break; + } case 4: + { htmltext = "30828-07.html"; break; + } case 5: + { htmltext = "30828-08.html"; break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java index beb75704c1..b44f375a10 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00043_HelpTheSister/Q00043_HelpTheSister.java @@ -168,20 +168,30 @@ public final class Q00043_HelpTheSister extends Quest switch (st.getCond()) { case 1: + { htmltext = (hasQuestItems(player, CRAFTED_DAGGER)) ? "30829-02.html" : "30829-02a.html"; break; + } case 2: + { htmltext = "30829-04.html"; break; + } case 3: + { htmltext = "30829-05.html"; break; + } case 4: + { htmltext = "30829-07.html"; break; + } case 5: + { htmltext = "30829-08.html"; break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java index 5091e034e2..1940c8b0b0 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00044_HelpTheSon/Q00044_HelpTheSon.java @@ -162,20 +162,30 @@ public final class Q00044_HelpTheSon extends Quest switch (st.getCond()) { case 1: + { htmltext = (hasQuestItems(player, WORK_HAMMER)) ? "30827-02.html" : "30827-02a.html"; break; + } case 2: + { htmltext = "30827-04.html"; break; + } case 3: + { htmltext = "30827-05.html"; break; + } case 4: + { htmltext = "30827-07.html"; break; + } case 5: + { htmltext = "30827-08.html"; break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java index cbde91959f..1a222ec48d 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00125_TheNameOfEvil1/Q00125_TheNameOfEvil1.java @@ -87,40 +87,55 @@ public class Q00125_TheNameOfEvil1 extends Quest switch (event) { case "32114-05.html": + { qs.startQuest(); break; + } case "32114-08.html": + { if (qs.isCond(1)) { giveItems(player, GAZKH_FRAGMENT, 1); qs.setCond(2, true); } break; + } case "32117-09.html": + { if (qs.isCond(2)) { qs.setCond(3, true); } break; + } case "32117-15.html": + { if (qs.isCond(4)) { qs.setCond(5, true); } break; + } case "T_One": + { qs.set("T", "1"); htmltext = "32119-04.html"; break; + } case "E_One": + { qs.set("E", "1"); htmltext = "32119-05.html"; break; + } case "P_One": + { qs.set("P", "1"); htmltext = "32119-06.html"; break; + } case "U_One": + { qs.set("U", "1"); if (qs.isCond(5) && (qs.getInt("T") > 0) && (qs.getInt("E") > 0) && (qs.getInt("P") > 0) && (qs.getInt("U") > 0)) { @@ -136,32 +151,44 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("P"); qs.unset("U"); break; + } case "32119-07.html": + { qs.unset("T"); qs.unset("E"); qs.unset("P"); qs.unset("U"); break; + } case "32119-18.html": + { if (qs.isCond(5)) { qs.setCond(6, true); qs.unset("Memo"); } break; + } case "T_Two": + { qs.set("T", "1"); htmltext = "32120-04.html"; break; + } case "O_Two": + { qs.set("O", "1"); htmltext = "32120-05.html"; break; + } case "O2_Two": + { qs.set("O2", "1"); htmltext = "32120-06.html"; break; + } case "N_Two": + { qs.set("N", "1"); if (qs.isCond(6) && (qs.getInt("T") > 0) && (qs.getInt("O") > 0) && (qs.getInt("O2") > 0) && (qs.getInt("N") > 0)) { @@ -177,31 +204,43 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("O2"); qs.unset("N"); break; + } case "32120-07.html": + { qs.unset("T"); qs.unset("O"); qs.unset("O2"); qs.unset("N"); + } case "32120-17.html": + { if (qs.isCond(6)) { qs.setCond(7, true); qs.unset("Memo"); } break; + } case "W_Three": + { qs.set("W", "1"); htmltext = "32121-04.html"; break; + } case "A_Three": + { qs.set("A", "1"); htmltext = "32121-05.html"; break; + } case "G_Three": + { qs.set("G", "1"); htmltext = "32121-06.html"; break; + } case "U_Three": + { qs.set("U", "1"); if (qs.isCond(7) && (qs.getInt("W") > 0) && (qs.getInt("A") > 0) && (qs.getInt("G") > 0) && (qs.getInt("U") > 0)) { @@ -217,19 +256,27 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("G"); qs.unset("U"); break; + } case "32121-07.html": + { qs.unset("W"); qs.unset("A"); qs.unset("G"); qs.unset("U"); break; + } case "32121-11.html": + { qs.set("Memo", "2"); break; + } case "32121-16.html": + { qs.set("Memo", "3"); break; + } case "32121-18.html": + { if (qs.isCond(7) && hasQuestItems(player, GAZKH_FRAGMENT)) { giveItems(player, EPITAPH_OF_WISDOM, 1); @@ -238,6 +285,7 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("Memo"); } break; + } } return htmltext; } @@ -283,9 +331,11 @@ public class Q00125_TheNameOfEvil1 extends Quest switch (npc.getId()) { case MUSHIKA: + { switch (qs.getState()) { case State.CREATED: + { if (player.getLevel() < 76) { htmltext = "32114-01a.htm"; @@ -296,23 +346,32 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = ((qs != null) && qs.isCompleted()) ? "32114-01.htm" : "32114-01b.htm"; } break; + } case State.STARTED: + { switch (qs.getCond()) { case 1: + { htmltext = "32114-09.html"; break; + } case 2: + { htmltext = "32114-10.html"; break; + } case 3: case 4: case 5: case 6: case 7: + { htmltext = "32114-11.html"; break; + } case 8: + { if (hasQuestItems(player, EPITAPH_OF_WISDOM)) { htmltext = "32114-12.html"; @@ -320,28 +379,41 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.exitQuest(false, true); } break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; + } case KARAKAWEI: + { if (qs.isStarted()) { switch (qs.getCond()) { case 1: + { htmltext = "32117-01.html"; break; + } case 2: + { htmltext = "32117-02.html"; break; + } case 3: + { htmltext = "32117-10.html"; break; + } case 4: + { if ((getQuestItemsCount(player, ORNITHOMIMUS_CLAW) >= 2) && (getQuestItemsCount(player, DEINONYCHUS_BONE) >= 2)) { takeItems(player, ORNITHOMIMUS_CLAW, -1); @@ -349,20 +421,29 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = "32117-11.html"; } break; + } case 5: + { htmltext = "32117-16.html"; break; + } case 6: case 7: + { htmltext = "32117-17.html"; break; + } case 8: + { htmltext = "32117-18.html"; break; + } } } break; + } case ULU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -371,9 +452,12 @@ public class Q00125_TheNameOfEvil1 extends Quest case 2: case 3: case 4: + { htmltext = "32119-01.html"; break; + } case 5: + { if (qs.get("Memo") == null) { htmltext = "32119-02.html"; @@ -388,16 +472,23 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = "32119-09.html"; } break; + } case 6: + { htmltext = "32119-18.html"; break; + } default: + { htmltext = "32119-19.html"; break; + } } } break; + } case BALU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -407,9 +498,12 @@ public class Q00125_TheNameOfEvil1 extends Quest case 3: case 4: case 5: + { htmltext = "32120-01.html"; break; + } case 6: + { if (qs.get("Memo") == null) { htmltext = "32120-02.html"; @@ -424,16 +518,23 @@ public class Q00125_TheNameOfEvil1 extends Quest htmltext = "32120-09.html"; } break; + } case 7: + { htmltext = "32120-17.html"; break; + } default: + { htmltext = "32119-18.html"; break; + } } } break; + } case CHUTA_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -444,12 +545,16 @@ public class Q00125_TheNameOfEvil1 extends Quest case 4: case 5: case 6: + { htmltext = "32121-01.html"; break; + } case 7: + { switch (qs.getInt("Memo")) { case 0: + { htmltext = "32121-02.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); qs.unset("W"); @@ -457,23 +562,34 @@ public class Q00125_TheNameOfEvil1 extends Quest qs.unset("G"); qs.unset("U"); break; + } case 1: + { htmltext = "32121-09.html"; break; + } case 2: + { htmltext = "32121-19.html"; break; + } case 3: + { htmltext = "32121-20.html"; break; + } } break; + } case 8: + { htmltext = "32121-21.html"; break; + } } } break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java index 6446a8e79c..2fe435eff1 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00126_TheNameOfEvil2/Q00126_TheNameOfEvil2.java @@ -66,116 +66,161 @@ public class Q00126_TheNameOfEvil2 extends Quest switch (event) { case "32115-1.html": + { qs.startQuest(); break; + } case "32115-1b.html": + { if (qs.isCond(1)) { qs.setCond(2, true); } break; + } case "32119-3.html": + { if (qs.isCond(2)) { qs.setCond(3, true); } break; + } case "32119-4.html": + { if (qs.isCond(3)) { qs.setCond(4, true); } break; + } case "32119-4a.html": case "32119-5b.html": + { playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_1ST); break; + } case "32119-5.html": + { if (qs.isCond(4)) { qs.setCond(5, true); } break; + } case "32120-3.html": + { if (qs.isCond(5)) { qs.setCond(6, true); } break; + } case "32120-4.html": + { if (qs.isCond(6)) { qs.setCond(7, true); } break; + } case "32120-4a.html": case "32120-5b.html": + { playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_2ND); break; + } case "32120-5.html": + { if (qs.isCond(7)) { qs.setCond(8, true); } break; + } case "32121-3.html": + { if (qs.isCond(8)) { qs.setCond(9, true); } break; + } case "32121-4.html": + { if (qs.isCond(9)) { qs.setCond(10, true); } break; + } case "32121-4a.html": case "32121-5b.html": + { playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_3RD); break; + } case "32121-5.html": + { if (qs.isCond(10)) { giveItems(player, GAZKH_FRAGMENT, 1); qs.setCond(11, true); } break; + } case "32122-2a.html": + { npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case "32122-2d.html": + { takeItems(player, GAZKH_FRAGMENT, -1); break; + } case "32122-3.html": + { if (qs.isCond(12)) { qs.setCond(13, true); } break; + } case "32122-4.html": + { if (qs.isCond(13)) { qs.setCond(14, true); } break; + } case "DO_One": + { qs.set("DO", "1"); event = "32122-4d.html"; break; + } case "MI_One": + { qs.set("MI", "1"); event = "32122-4f.html"; break; + } case "FA_One": + { qs.set("FA", "1"); event = "32122-4h.html"; break; + } case "SOL_One": + { qs.set("SOL", "1"); event = "32122-4j.html"; break; + } case "FA2_One": + { qs.set("FA2", "1"); if (qs.isCond(14) && (qs.getInt("DO") > 0) && (qs.getInt("MI") > 0) && (qs.getInt("FA") > 0) && (qs.getInt("SOL") > 0) && (qs.getInt("FA2") > 0)) { @@ -192,30 +237,42 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL"); qs.unset("FA2"); break; + } case "32122-4m.html": + { qs.unset("DO"); qs.unset("MI"); qs.unset("FA"); qs.unset("SOL"); qs.unset("FA2"); break; + } case "FA_Two": + { qs.set("FA", "1"); event = "32122-5a.html"; break; + } case "SOL_Two": + { qs.set("SOL", "1"); event = "32122-5c.html"; break; + } case "TI_Two": + { qs.set("TI", "1"); event = "32122-5e.html"; break; + } case "SOL2_Two": + { qs.set("SOL2", "1"); event = "32122-5g.html"; break; + } case "FA2_Two": + { qs.set("FA2", "1"); if (qs.isCond(15) && (qs.getInt("FA") > 0) && (qs.getInt("SOL") > 0) && (qs.getInt("TI") > 0) && (qs.getInt("SOL2") > 0) && (qs.getInt("FA2") > 0)) { @@ -232,30 +289,42 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL2"); qs.unset("FA2"); break; + } case "32122-5i.html": + { qs.unset("FA"); qs.unset("SOL"); qs.unset("TI"); qs.unset("SOL2"); qs.unset("FA2"); break; + } case "SOL_Three": + { qs.set("SOL", "1"); event = "32122-6a.html"; break; + } case "FA_Three": + { qs.set("FA", "1"); event = "32122-6c.html"; break; + } case "MI_Three": + { qs.set("MI", "1"); event = "32122-6e.html"; break; + } case "FA2_Three": + { qs.set("FA2", "1"); event = "32122-6g.html"; break; + } case "MI2_Three": + { qs.set("MI2", "1"); if (qs.isCond(16) && (qs.getInt("SOL") > 0) && (qs.getInt("FA") > 0) && (qs.getInt("MI") > 0) && (qs.getInt("FA2") > 0) && (qs.getInt("MI2") > 0)) { @@ -272,61 +341,80 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("FA2"); qs.unset("MI2"); break; + } case "32122-6i.html": + { qs.unset("SOL"); qs.unset("FA"); qs.unset("MI"); qs.unset("FA2"); qs.unset("MI2"); break; + } case "32122-7.html": + { giveItems(player, BONE_POWDER, 1); playSound(player, QuestSound.ETCSOUND_ELROKI_SONG_FULL); npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case "32122-8.html": + { if (qs.isCond(17)) { qs.setCond(18, true); } break; + } case "32109-2.html": + { if (qs.isCond(18)) { qs.setCond(19, true); } break; + } case "32109-3.html": + { if (qs.isCond(19)) { takeItems(player, BONE_POWDER, -1); qs.setCond(20, true); } break; + } case "32115-4.html": + { if (qs.isCond(20)) { qs.setCond(21, true); } break; + } case "32115-5.html": + { if (qs.isCond(21)) { qs.setCond(22, true); } break; + } case "32114-2.html": + { if (qs.isCond(22)) { qs.setCond(23, true); } break; + } case "32114-3.html": + { rewardItems(player, ENCHANT_WEAPON_A, 1); giveAdena(player, 460483, true); addExpAndSp(player, 1015973, 102802); qs.exitQuest(false, true); break; + } } return event; } @@ -340,9 +428,11 @@ public class Q00126_TheNameOfEvil2 extends Quest switch (npc.getId()) { case ASAMAH: + { switch (qs.getState()) { case State.CREATED: + { if (player.getLevel() < 77) { htmltext = "32115-0.htm"; @@ -353,15 +443,21 @@ public class Q00126_TheNameOfEvil2 extends Quest htmltext = ((qs != null) && qs.isCompleted()) ? "32115-0a.htm" : "32115-0b.htm"; } break; + } case State.STARTED: + { switch (qs.getCond()) { case 1: + { htmltext = "32115-1d.html"; break; + } case 2: + { htmltext = "32115-1c.html"; break; + } case 3: case 4: case 5: @@ -379,49 +475,74 @@ public class Q00126_TheNameOfEvil2 extends Quest case 17: case 18: case 19: + { htmltext = "32115-2.html"; break; + } case 20: + { htmltext = "32115-3.html"; break; + } case 21: + { htmltext = "32115-4j.html"; break; + } case 22: + { htmltext = "32115-5a.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; + } case ULU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) { case 1: + { htmltext = "32119-1.html"; break; + } case 2: + { htmltext = "32119-2.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case 3: + { htmltext = "32119-3c.html"; break; + } case 4: + { htmltext = "32119-4c.html"; break; + } case 5: + { htmltext = "32119-5a.html"; break; + } } } break; + } case BALU_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -430,25 +551,37 @@ public class Q00126_TheNameOfEvil2 extends Quest case 2: case 3: case 4: + { htmltext = "32120-1.html"; break; + } case 5: + { htmltext = "32120-2.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case 6: + { htmltext = "32120-3c.html"; break; + } case 7: + { htmltext = "32120-4c.html"; break; + } default: + { htmltext = "32120-5a.html"; break; + } } } break; + } case CHUTA_KAIMU: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -460,25 +593,37 @@ public class Q00126_TheNameOfEvil2 extends Quest case 5: case 6: case 7: + { htmltext = "32121-1.html"; break; + } case 8: + { htmltext = "32121-2.html"; npc.broadcastPacket(new MagicSkillUse(npc, player, 5089, 1, 1000, 0)); break; + } case 9: + { htmltext = "32121-3e.html"; break; + } case 10: + { htmltext = "32121-4e.html"; break; + } default: + { htmltext = "32121-5a.html"; break; + } } } break; + } case WARRIORS_GRAVE: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -493,19 +638,28 @@ public class Q00126_TheNameOfEvil2 extends Quest case 8: case 9: case 10: + { htmltext = "32122-1.html"; break; + } case 11: + { htmltext = "32122-2.html"; qs.setCond(12, true); break; + } case 12: + { htmltext = "32122-2l.html"; break; + } case 13: + { htmltext = "32122-3b.html"; break; + } case 14: + { htmltext = "32122-4.html"; qs.unset("DO"); qs.unset("MI"); @@ -513,7 +667,9 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL"); qs.unset("FA2"); break; + } case 15: + { htmltext = "32122-5.html"; qs.unset("FA"); qs.unset("SOL"); @@ -521,7 +677,9 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("SOL2"); qs.unset("FA2"); break; + } case 16: + { htmltext = "32122-6.html"; qs.unset("SOL"); qs.unset("FA"); @@ -529,19 +687,28 @@ public class Q00126_TheNameOfEvil2 extends Quest qs.unset("FA2"); qs.unset("MI2"); break; + } case 17: + { htmltext = hasQuestItems(player, BONE_POWDER) ? "32122-7.html" : "32122-7b.html"; break; + } case 18: + { htmltext = "32122-8.html"; break; + } default: + { htmltext = "32122-9.html"; break; + } } } break; + } case SHILENS_STONE_STATUE: + { if (qs.isStarted()) { switch (qs.getCond()) @@ -563,27 +730,39 @@ public class Q00126_TheNameOfEvil2 extends Quest case 15: case 16: case 17: + { htmltext = "32109-1a.html"; break; + } case 18: + { if (hasQuestItems(player, BONE_POWDER)) { htmltext = "32109-1.html"; } break; + } case 19: + { htmltext = "32109-2l.html"; break; + } case 20: + { htmltext = "32109-5.html"; break; + } default: + { htmltext = "32109-4.html"; break; + } } } break; + } case MUSHIKA: + { if (qs.isStarted()) { if (qs.getCond() < 22) @@ -600,6 +779,7 @@ public class Q00126_TheNameOfEvil2 extends Quest } } break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java index 29480b1d05..2a3d8b4852 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00141_ShadowFoxPart3/Q00141_ShadowFoxPart3.java @@ -84,21 +84,32 @@ public class Q00141_ShadowFoxPart3 extends Quest case "30894-17.html": case "30894-19.html": case "30894-20.html": + { break; + } case "30894-03.htm": + { st.startQuest(); break; + } case "30894-06.html": + { st.setCond(2, true); break; + } case "30894-15.html": + { st.set("talk", "2"); break; + } case "30894-18.html": + { st.setCond(4, true); st.unset("talk"); break; + } case "30894-21.html": + { giveAdena(player, 88888, true); if (player.getLevel() <= MAX_REWARD_LEVEL) { @@ -106,9 +117,12 @@ public class Q00141_ShadowFoxPart3 extends Quest } st.exitQuest(false, true); break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -146,19 +160,27 @@ public class Q00141_ShadowFoxPart3 extends Quest switch (st.getState()) { case State.CREATED: + { final QuestState qs = player.getQuestState(Q00140_ShadowFoxPart2.class.getSimpleName()); htmltext = (player.getLevel() >= MIN_LEVEL) ? ((qs != null) && qs.isCompleted()) ? "30894-01.htm" : "30894-00.html" : "30894-02.htm"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "30894-04.html"; break; + } case 2: + { htmltext = "30894-07.html"; break; + } case 3: + { if (st.getInt("talk") == 1) { htmltext = "30894-09.html"; @@ -174,14 +196,20 @@ public class Q00141_ShadowFoxPart3 extends Quest st.set("talk", "1"); } break; + } case 4: + { htmltext = "30894-19.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java index 0734e14ce9..93502b7551 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00237_WindsOfChange/Q00237_WindsOfChange.java @@ -81,39 +81,52 @@ public class Q00237_WindsOfChange extends Quest case "30969-08c.html": case "30897-02.html":// ROMAN case "30925-02.html":// MORELYN + { htmltext = event; break; + } case "30899-06.html": + { st.startQuest(); giveItems(player, FLAUENS_LETTER, 1); htmltext = event; break; + } case "30969-02.html": + { takeItems(player, FLAUENS_LETTER, -1); htmltext = event; break; + } case "30969-05.html": + { if (st.isCond(1)) { st.setCond(2, true); htmltext = event; } break; + } case "30897-03.html": + { if (st.isCond(2)) { st.setCond(3, true); htmltext = event; } break; + } case "30925-03.html": + { if (st.isCond(3)) { st.setCond(4, true); htmltext = event; } break; + } case "30969-09.html": + { if (st.isCond(4)) { giveItems(player, DOSKOZER_LETTER, 1); @@ -121,7 +134,9 @@ public class Q00237_WindsOfChange extends Quest htmltext = event; } break; + } case "30969-10.html": + { if (st.isCond(4)) { giveItems(player, ATHENIA_LETTER, 1); @@ -129,20 +144,25 @@ public class Q00237_WindsOfChange extends Quest htmltext = event; } break; + } case "32641-02.html": + { giveAdena(player, 213876, true); giveItems(player, VICINITY_OF_FOS, 1); addExpAndSp(player, 892773, 60012); st.exitQuest(false, true); htmltext = event; break; + } case "32643-02.html": + { giveAdena(player, 213876, true); giveItems(player, SUPPORT_CERTIFICATE, 1); addExpAndSp(player, 892773, 60012); st.exitQuest(false, true); htmltext = event; break; + } } return htmltext; } @@ -156,35 +176,52 @@ public class Q00237_WindsOfChange extends Quest switch (npc.getId()) { case FLAUEN: + { switch (st.getState()) { case State.COMPLETED: + { htmltext = "30899-09.html"; break; + } case State.CREATED: + { htmltext = (talker.getLevel() >= MIN_LEVEL) ? "30899-01.htm" : "30899-00.html"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: case 4: + { htmltext = "30899-07.html"; break; + } case 2: + { htmltext = "30899-10.html"; break; + } case 3: + { htmltext = "30899-11.html"; break; + } case 5: case 6: + { htmltext = "30899-08.html"; break; + } } + } } break; + } case IASON: + { if (st.isCompleted()) { htmltext = Quest.getNoQuestMsg(talker); @@ -194,45 +231,67 @@ public class Q00237_WindsOfChange extends Quest switch (st.getCond()) { case 1: + { htmltext = "30969-01.html"; break; + } case 2: + { htmltext = "30969-06.html"; break; + } case 4: + { htmltext = "30969-07.html"; break; + } case 5: case 6: + { htmltext = "30969-11.html"; break; + } } } break; + } case ROMAN: + { switch (st.getCond()) { case 2: + { htmltext = "30897-01.html"; break; + } case 3: case 4: + { htmltext = "30897-04.html"; break; + } } break; + } case MORELYN: + { switch (st.getCond()) { case 3: + { htmltext = "30925-01.html"; break; + } case 4: + { htmltext = "30925-04.html"; break; + } } break; + } case HELVETICA: + { if (st.isCompleted()) { final QuestState q238 = st.getPlayer().getQuestState(Q00238_SuccessFailureOfBusiness.class.getSimpleName()); @@ -247,7 +306,9 @@ public class Q00237_WindsOfChange extends Quest htmltext = "32641-04.html"; } break; + } case ATHENIA: + { if (st.isCompleted()) { final QuestState q239 = st.getPlayer().getQuestState(Q00239_WontYouJoinUs.class.getSimpleName()); @@ -262,6 +323,7 @@ public class Q00237_WindsOfChange extends Quest htmltext = "32643-01.html"; } break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java index b79000e374..39b21081a3 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00238_SuccessFailureOfBusiness/Q00238_SuccessFailureOfBusiness.java @@ -70,19 +70,25 @@ public class Q00238_SuccessFailureOfBusiness extends Quest switch (event) { case "32461-02.htm": + { htmltext = event; break; + } case "32461-03.html": + { st.startQuest(); htmltext = event; break; + } case "32461-06.html": + { if (st.isCond(2)) { st.setCond(3, true); htmltext = event; } break; + } } return htmltext; } @@ -142,9 +148,12 @@ public class Q00238_SuccessFailureOfBusiness extends Quest switch (st.getState()) { case State.COMPLETED: + { htmltext = "32461-09.html"; break; + } case State.CREATED: + { final QuestState q237 = st.getPlayer().getQuestState(Q00237_WindsOfChange.class.getSimpleName()); final QuestState q239 = st.getPlayer().getQuestState(Q00239_WontYouJoinUs.class.getSimpleName()); if ((q239 != null) && q239.isCompleted()) @@ -160,23 +169,32 @@ public class Q00238_SuccessFailureOfBusiness extends Quest htmltext = "32461-00.html"; } break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "32461-04.html"; break; + } case 2: + { if (getQuestItemsCount(talker, BROKEN_PIECE_OF_MAGIC_FORCE) == BROKEN_PIECE_OF_MAGIC_FORCE_NEEDED) { htmltext = "32461-05.html"; takeItems(talker, BROKEN_PIECE_OF_MAGIC_FORCE, -1); } break; + } case 3: + { htmltext = "32461-07.html"; break; + } case 4: + { if (getQuestItemsCount(talker, GUARDIAN_SPIRIT_FRAGMENT) == GUARDIAN_SPIRIT_FRAGMENT_NEEDED) { htmltext = "32461-08.html"; @@ -186,8 +204,10 @@ public class Q00238_SuccessFailureOfBusiness extends Quest st.exitQuest(false, true); } break; + } } break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java index 0c1c6731e1..76ba5a82dc 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00254_LegendaryTales/Q00254_LegendaryTales.java @@ -108,9 +108,12 @@ public class Q00254_LegendaryTales extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = (player.getLevel() < MIN_LEVEL) ? "30754-00.htm" : "30754-01.htm"; break; + } case State.STARTED: + { final long count = getQuestItemsCount(player, LARGE_DRAGON_SKULL); if (st.isCond(1)) { @@ -121,9 +124,12 @@ public class Q00254_LegendaryTales extends Quest htmltext = ((count < 7) ? "30754-12.htm" : "30754-07.html"); } break; + } case State.COMPLETED: + { htmltext = "30754-29.html"; break; + } } return htmltext; } @@ -142,7 +148,9 @@ public class Q00254_LegendaryTales extends Quest switch (event) { case "30754-05.html": + { st.startQuest(); + } case "30754-02.html": case "30754-03.html": case "30754-04.htm": @@ -150,29 +158,45 @@ public class Q00254_LegendaryTales extends Quest case "30754-15.html": case "30754-20.html": case "30754-21.html": + { htmltext = event; break; + } case "25718": // Emerald Horn + { htmltext = (checkMask(st, Bosses.EMERALD_HORN) ? "30754-22.html" : "30754-16.html"); break; + } case "25719": // Dust Rider + { htmltext = (checkMask(st, Bosses.DUST_RIDER) ? "30754-23.html" : "30754-17.html"); break; + } case "25720": // Bleeding Fly + { htmltext = (checkMask(st, Bosses.BLEEDING_FLY) ? "30754-24.html" : "30754-18.html"); break; + } case "25721": // Black Dagger Wing + { htmltext = (checkMask(st, Bosses.BLACK_DAGGER) ? "30754-25.html" : "30754-19.html"); break; + } case "25722": // Shadow Summoner + { htmltext = (checkMask(st, Bosses.SHADOW_SUMMONER) ? "30754-26.html" : "30754-16.html"); break; + } case "25723": // Spike Slasher + { htmltext = (checkMask(st, Bosses.SPIKE_SLASHER) ? "30754-27.html" : "30754-17.html"); break; + } case "25724": // Muscle Bomber + { htmltext = (checkMask(st, Bosses.MUSCLE_BOMBER) ? "30754-28.html" : "30754-18.html"); break; + } case "13467": // Vesper Thrower case "13466": // Vesper Singer case "13465": // Vesper Caster @@ -184,6 +208,7 @@ public class Q00254_LegendaryTales extends Quest case "13460": // Vesper Sharper case "13461": // Vesper Fighter case "13462": // Vesper Stormer + { if (st.isCond(2) && (getQuestItemsCount(player, LARGE_DRAGON_SKULL) >= 7)) { htmltext = "30754-09.html"; @@ -191,6 +216,7 @@ public class Q00254_LegendaryTales extends Quest st.exitQuest(false, true); } break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java index d8d700984d..582b4ac1da 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00421_LittleWingsBigAdventure/Q00421_LittleWingsBigAdventure.java @@ -336,17 +336,23 @@ public final class Q00421_LittleWingsBigAdventure extends Quest switch (flute.getId()) { case DRAGONFLUTE_OF_WIND: + { takeItems(talker, DRAGONFLUTE_OF_WIND, -1); giveItems(talker, DRAGON_BUGLE_OF_WIND, 1); break; + } case DRAGONFLUTE_OF_STAR: + { takeItems(talker, DRAGONFLUTE_OF_STAR, -1); giveItems(talker, DRAGON_BUGLE_OF_STAR, 1); break; + } case DRAGONFLUTE_OF_TWILIGHT: + { takeItems(talker, DRAGONFLUTE_OF_TWILIGHT, -1); giveItems(talker, DRAGON_BUGLE_OF_TWILIGHT, 1); break; + } } qs.exitQuest(true, true); @@ -418,14 +424,20 @@ public final class Q00421_LittleWingsBigAdventure extends Quest switch (getRandom(3)) { case 0: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.WHY_DO_YOU_BOTHER_ME_AGAIN); break; + } case 1: + { npc.broadcastSay(ChatType.NPC_GENERAL, data.message); break; + } case 2: + { npc.broadcastSay(ChatType.NPC_GENERAL, NpcStringId.LEAVE_NOW_BEFORE_YOU_INCUR_THE_WRATH_OF_THE_GUARDIAN_GHOST); break; + } } } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java index 5143fb930e..cee5e47974 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00450_GraveRobberRescue/Q00450_GraveRobberRescue.java @@ -69,18 +69,26 @@ public class Q00450_GraveRobberRescue extends Quest case "32650-04.htm": case "32650-05.htm": case "32650-06.html": + { break; + } case "32650-07.htm": + { st.startQuest(); break; + } case "despawn": + { npc.setBusy(false); npc.deleteMe(); htmltext = null; break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -96,16 +104,21 @@ public class Q00450_GraveRobberRescue extends Quest switch (st.getState()) { case State.COMPLETED: + { if (!st.isNowAvailable()) { htmltext = "32650-03.html"; break; } st.setState(State.CREATED); + } case State.CREATED: + { htmltext = (player.getLevel() >= MIN_LEVEL) ? "32650-01.htm" : "32650-02.htm"; break; + } case State.STARTED: + { if (st.isCond(1)) { htmltext = (!hasQuestItems(player, EVIDENCE_OF_MIGRATION)) ? "32650-08.html" : "32650-09.html"; @@ -117,6 +130,7 @@ public class Q00450_GraveRobberRescue extends Quest htmltext = "32650-10.html"; } break; + } } } else if (st.isCond(1)) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java index 43d17ab2f7..9653dcf230 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00452_FindingtheLostSoldiers/Q00452_FindingtheLostSoldiers.java @@ -98,9 +98,12 @@ public class Q00452_FindingtheLostSoldiers extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = (player.getLevel() < 84) ? "32773-0.html" : "32773-1.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "32773-4.html"; @@ -114,7 +117,9 @@ public class Q00452_FindingtheLostSoldiers extends Quest qs.exitQuest(QuestType.DAILY, true); } break; + } case State.COMPLETED: + { if (qs.isNowAvailable()) { qs.setState(State.CREATED); @@ -125,6 +130,7 @@ public class Q00452_FindingtheLostSoldiers extends Quest htmltext = "32773-6.html"; } break; + } } } else if (qs.isCond(1)) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java index 485b980d6a..e000eb6f24 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00456_DontKnowDontCare/Q00456_DontKnowDontCare.java @@ -191,6 +191,7 @@ public final class Q00456_DontKnowDontCare extends Quest switch (qs.getState()) { case State.COMPLETED: + { if (!qs.isNowAvailable()) { htmltext = "32864-02.html"; @@ -198,10 +199,14 @@ public final class Q00456_DontKnowDontCare extends Quest } qs.setState(State.CREATED); // intentional fall-through + } case State.CREATED: + { htmltext = ((player.getLevel() >= MIN_LEVEL) ? "32864-01.htm" : "32864-03.html"); break; + } case State.STARTED: + { switch (qs.getCond()) { case 1: @@ -221,6 +226,7 @@ public final class Q00456_DontKnowDontCare extends Quest } } break; + } } } return htmltext; @@ -237,22 +243,28 @@ public final class Q00456_DontKnowDontCare extends Quest case "32864-04.htm": case "32864-05.htm": case "32864-06.htm": + { if ((qs != null) && qs.isCreated()) { htmltext = event; } break; + } case "32864-07.htm": + { if ((qs != null) && qs.isCreated()) { qs.startQuest(); htmltext = event; } break; + } case "unspawnRaidCorpse": + { allowedPlayerMap.remove(npc.getObjectId()); npc.deleteMe(); break; + } } return htmltext; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java index 13d42394b7..13f4fb2400 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00474_WaitingForTheSummer/Q00474_WaitingForTheSummer.java @@ -73,12 +73,18 @@ public final class Q00474_WaitingForTheSummer extends Quest { case "32327-02.htm": case "32327-03.htm": + { break; + } case "32327-04.htm": + { qs.startQuest(); break; + } default: + { htmltext = null; + } } return htmltext; } @@ -102,11 +108,15 @@ public final class Q00474_WaitingForTheSummer extends Quest qs.setState(State.CREATED); } case State.CREATED: + { htmltext = "32327-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "32327-05.html" : "32327-06.html"; break; + } } } else if (qs.isStarted() && qs.isCond(2)) @@ -138,18 +148,26 @@ public final class Q00474_WaitingForTheSummer extends Quest { case LOST_BUFFALO: case FROST_BUFFALO: + { itemId = BUFFALO_MEAT; break; + } case URSUS: case URSUS_CUB: + { itemId = URSUS_MEAT; break; + } case LOST_YETI: case FROST_YETI: + { itemId = YETI_MEAT; break; + } default: + { itemId = -1; + } } // Give item diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java index 16228f22d5..a914f94125 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00511_AwlUnderFoot/Q00511_AwlUnderFoot.java @@ -87,15 +87,23 @@ public final class Q00511_AwlUnderFoot extends Quest case "Warden-05.html": case "Warden-06.html": case "Warden-09.html": + { break; + } case "Warden-02.htm": + { qs.startQuest(); break; + } case "Warden-10.html": + { qs.exitQuest(QuestType.REPEATABLE); break; + } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java index 3dcac18726..d861678922 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q00627_HeartInSearchOfPower/Q00627_HeartInSearchOfPower.java @@ -130,10 +130,14 @@ public final class Q00627_HeartInSearchOfPower extends Quest break; } case "31518-09.html": + { break; + } default: + { htmltext = null; break; + } } return htmltext; } @@ -185,17 +189,25 @@ public final class Q00627_HeartInSearchOfPower extends Quest switch (st.getCond()) { case 1: + { htmltext = "31518-03.html"; break; + } case 2: + { htmltext = "31518-04.html"; break; + } case 3: + { htmltext = "31518-07.html"; break; + } case 4: + { htmltext = "31518-08.html"; break; + } } } else if (npc.getId() == ENFEUX) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java index a5ff268b25..f10fe8fcd8 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10275_ContainingTheAttributePower/Q10275_ContainingTheAttributePower.java @@ -73,23 +73,34 @@ public class Q10275_ContainingTheAttributePower extends Quest { case "30839-02.html": case "31307-02.html": + { st.startQuest(); break; + } case "30839-05.html": + { st.setCond(2, true); break; + } case "31307-05.html": + { st.setCond(7, true); break; + } case "32325-03.html": + { st.setCond(3, true); giveItems(player, YINSWORD, 1, AttributeType.FIRE, 10); break; + } case "32326-03.html": + { st.setCond(8, true); giveItems(player, YANGSWORD, 1, AttributeType.EARTH, 10); break; + } case "32325-06.html": + { if (hasQuestItems(player, YINSWORD)) { takeItems(player, YINSWORD, 1); @@ -97,7 +108,9 @@ public class Q10275_ContainingTheAttributePower extends Quest } giveItems(player, YINSWORD, 1, AttributeType.FIRE, 10); break; + } case "32326-06.html": + { if (hasQuestItems(player, YANGSWORD)) { takeItems(player, YANGSWORD, 1); @@ -105,16 +118,21 @@ public class Q10275_ContainingTheAttributePower extends Quest } giveItems(player, YANGSWORD, 1, AttributeType.EARTH, 10); break; + } case "32325-09.html": + { st.setCond(5, true); BLESSING_OF_FIRE.getSkill().applyEffects(player, player); giveItems(player, YINSWORD, 1, AttributeType.FIRE, 10); break; + } case "32326-09.html": + { st.setCond(10, true); BLESSING_OF_EARTH.getSkill().applyEffects(player, player); giveItems(player, YANGSWORD, 1, AttributeType.EARTH, 10); break; + } } if (Util.isDigit(event)) @@ -139,6 +157,7 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (npc.getId()) { case AIR: + { if ((st.isCond(8) || st.isCond(10)) && (getItemEquipped(player, Inventory.PAPERDOLL_RHAND) == YANGSWORD) && (getQuestItemsCount(player, SOULPIECEAIR) < 6) && (getRandom(100) < 30)) { giveItems(player, SOULPIECEAIR, 1); @@ -152,7 +171,9 @@ public class Q10275_ContainingTheAttributePower extends Quest } } break; + } case WATER: + { if (((st.getCond() >= 3) || (st.getCond() <= 5)) && (getItemEquipped(player, Inventory.PAPERDOLL_RHAND) == YINSWORD) && (getQuestItemsCount(player, SOULPIECEWATER) < 6) && (getRandom(100) < 30)) { giveItems(player, SOULPIECEWATER, 1); @@ -166,6 +187,7 @@ public class Q10275_ContainingTheAttributePower extends Quest } } break; + } } return null; @@ -184,22 +206,32 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = (player.getLevel() > 75) ? "30839-01.htm" : "30839-00.html"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "30839-03.html"; break; + } case 2: + { htmltext = "30839-05.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = "30839-0a.html"; break; + } } break; } @@ -208,22 +240,32 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getState()) { case State.CREATED: + { htmltext = (player.getLevel() > 75) ? "31307-01.htm" : "31307-00.html"; break; + } case State.STARTED: + { switch (st.getCond()) { case 1: + { htmltext = "31307-03.html"; break; + } case 7: + { htmltext = "31307-05.html"; break; + } } break; + } case State.COMPLETED: + { htmltext = "31307-0a.html"; break; + } } break; } @@ -234,20 +276,28 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getCond()) { case 2: + { htmltext = "32325-01.html"; break; + } case 3: case 5: + { htmltext = "32325-04.html"; break; + } case 4: + { htmltext = "32325-08.html"; takeItems(player, YINSWORD, 1); takeItems(player, SOULPIECEWATER, -1); break; + } case 6: + { htmltext = "32325-10.html"; break; + } } } break; @@ -259,20 +309,28 @@ public class Q10275_ContainingTheAttributePower extends Quest switch (st.getCond()) { case 7: + { htmltext = "32326-01.html"; break; + } case 8: case 10: + { htmltext = "32326-04.html"; break; + } case 9: + { htmltext = "32326-08.html"; takeItems(player, YANGSWORD, 1); takeItems(player, SOULPIECEAIR, -1); break; + } case 11: + { htmltext = "32326-10.html"; break; + } } } break; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java index e144a76d5e..0712418726 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10283_RequestOfIceMerchant/Q10283_RequestOfIceMerchant.java @@ -127,13 +127,17 @@ public class Q10283_RequestOfIceMerchant extends Quest switch (npc.getId()) { case RAFFORTY: + { switch (st.getState()) { case State.CREATED: + { final QuestState _prev = player.getQuestState(Q00115_TheOtherSideOfTruth.class.getSimpleName()); htmltext = ((_prev != null) && _prev.isCompleted() && (player.getLevel() >= 82)) ? "32020-01.htm" : "32020-00.htm"; break; + } case State.STARTED: + { if (st.isCond(1)) { htmltext = "32020-04.htm"; @@ -143,23 +147,31 @@ public class Q10283_RequestOfIceMerchant extends Quest htmltext = "32020-08.htm"; } break; + } case State.COMPLETED: + { htmltext = "32020-09.htm"; break; + } } break; + } case KIER: + { if (st.isCond(2)) { htmltext = "32022-01.html"; } break; + } case JINIA: + { if (st.isCond(2)) { htmltext = "32760-02.html"; } break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java index f0a86954cb..afa81b1257 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10289_FadeToBlack/Q10289_FadeToBlack.java @@ -60,13 +60,18 @@ public class Q10289_FadeToBlack extends Quest switch (event) { case "32757-02.htm": + { htmltext = event; break; + } case "32757-03.htm": + { qs.startQuest(); htmltext = event; break; + } case "32757-06.html": + { if (qs.isCond(2) && hasQuestItems(player, MARK_OF_DARKNESS)) { htmltext = "32757-07.html"; @@ -80,6 +85,7 @@ public class Q10289_FadeToBlack extends Quest htmltext = event; } break; + } case "11": case "12": case "13": @@ -100,90 +106,131 @@ public class Q10289_FadeToBlack extends Quest case "28": case "29": case "30": + { if (qs.isCond(3) && hasQuestItems(player, MARK_OF_SPLENDOR)) { // see 32757-08.html for recipe list (all moirai armor 60%) switch (event) { case "11": + { rewardItems(player, 15775, 1); giveAdena(player, 420920, true); break; + } case "12": + { rewardItems(player, 15776, 1); giveAdena(player, 420920, true); break; + } case "13": + { rewardItems(player, 15777, 1); giveAdena(player, 420920, true); break; + } case "14": + { rewardItems(player, 15778, 1); break; + } case "15": + { rewardItems(player, 15779, 1); giveAdena(player, 168360, true); break; + } case "16": + { rewardItems(player, 15780, 1); giveAdena(player, 168360, true); break; + } case "17": + { rewardItems(player, 15781, 1); giveAdena(player, 252540, true); break; + } case "18": + { rewardItems(player, 15782, 1); giveAdena(player, 357780, true); break; + } case "19": + { rewardItems(player, 15783, 1); giveAdena(player, 357780, true); break; + } case "20": + { rewardItems(player, 15784, 1); giveAdena(player, 505100, true); break; + } case "21": + { rewardItems(player, 15785, 1); giveAdena(player, 505100, true); break; + } case "22": + { rewardItems(player, 15786, 1); giveAdena(player, 505100, true); break; + } case "23": + { rewardItems(player, 15787, 1); giveAdena(player, 505100, true); break; + } case "24": + { rewardItems(player, 15787, 1); giveAdena(player, 505100, true); break; + } case "25": + { rewardItems(player, 15789, 1); giveAdena(player, 505100, true); break; + } case "26": + { rewardItems(player, 15790, 1); giveAdena(player, 496680, true); break; + } case "27": + { rewardItems(player, 15791, 1); giveAdena(player, 496680, true); break; + } case "28": + { rewardItems(player, 15792, 1); giveAdena(player, 563860, true); break; + } case "29": + { rewardItems(player, 15793, 1); giveAdena(player, 509040, true); break; + } case "30": + { rewardItems(player, 15794, 1); giveAdena(player, 454240, true); break; + } } final long marksOfDarkness = getQuestItemsCount(player, MARK_OF_DARKNESS); @@ -195,6 +242,7 @@ public class Q10289_FadeToBlack extends Quest htmltext = "32757-09.html"; } break; + } } return htmltext; } @@ -257,12 +305,16 @@ public class Q10289_FadeToBlack extends Quest switch (qs.getCond()) { case 1: + { htmltext = "32757-04.html"; break; + } case 2: case 3: + { htmltext = "32757-05.html"; break; + } } } else diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java index 370eb549d4..ef6a58a7dd 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10302_UnsettlingShadowAndRumors/Q10302_UnsettlingShadowAndRumors.java @@ -180,17 +180,25 @@ public final class Q10302_UnsettlingShadowAndRumors extends Quest switch (qs.getCond()) { case 1: + { htmltext = "32894-01.html"; break; + } case 2: + { htmltext = "32894-03.html"; break; + } case 5: + { htmltext = "32894-04.html"; break; + } case 6: + { htmltext = "32894-07.html"; break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java index e59e46d164..78c2aaa6fa 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10339_FightingTheForgotten/Q10339_FightingTheForgotten.java @@ -135,11 +135,15 @@ public final class Q10339_FightingTheForgotten extends Quest switch (st.getCond()) { case 1: + { htmltext = "33344-01.html"; break; + } case 2: + { htmltext = "33344-02.html"; break; + } case 3: { st.exitQuest(false, true); diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java index 568cbd9edb..cdfb4f1972 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10359_TracesOfEvil/Q10359_TracesOfEvil.java @@ -177,29 +177,41 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case HUMAN: + { st.setCond(player.isMageClass() ? 4 : 5); htmltext = player.isMageClass() ? "33179-06.htm" : "33179-11.htm"; break; + } case DARK_ELF: + { st.setCond(6); htmltext = "33179-05.htm"; break; + } case ORC: + { st.setCond(7); htmltext = "33179-07.htm"; break; + } case DWARF: + { st.setCond(8); htmltext = "33179-08.htm"; break; + } case KAMAEL: + { st.setCond(9); htmltext = "33179-09.htm"; break; + } case ELF: + { st.setCond(player.isMageClass() ? 11 : 10); htmltext = player.isMageClass() ? "33179-12.htm" : "33179-10.htm"; break; + } } takeItems(player, FRAGMENT, 20); playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); @@ -215,23 +227,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30289-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30289-08.html" : "30289-02.html"; break; + } case ORC: + { htmltext = "30289-03.html"; break; + } case DWARF: + { htmltext = "30289-04.html"; break; + } case KAMAEL: + { htmltext = "30289-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30289-06.html" : "30289-07.html"; break; + } } } break; @@ -243,23 +267,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30288-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30288-02.html" : "30288-08.html"; break; + } case ORC: + { htmltext = "30288-03.html"; break; + } case DWARF: + { htmltext = "30288-04.html"; break; + } case KAMAEL: + { htmltext = "30288-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30288-06.html" : "30288-07.html"; break; + } } } break; @@ -271,23 +307,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30297-08.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30297-01.html" : "30297-02.html"; break; + } case ORC: + { htmltext = "30297-03.html"; break; + } case DWARF: + { htmltext = "30297-04.html"; break; + } case KAMAEL: + { htmltext = "30297-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30297-06.html" : "30297-07.html"; break; + } } } break; @@ -299,23 +347,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30505-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30505-02.html" : "30505-03.html"; break; + } case ORC: + { htmltext = "30505-08.html"; break; + } case DWARF: + { htmltext = "30505-04.html"; break; + } case KAMAEL: + { htmltext = "30505-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30505-06.html" : "30505-07.html"; break; + } } } break; @@ -327,23 +387,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30504-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30504-02.html" : "30504-03.html"; break; + } case ORC: + { htmltext = "30504-04.html"; break; + } case DWARF: + { htmltext = "30504-08.html"; break; + } case KAMAEL: + { htmltext = "30504-05.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30504-06.html" : "30504-07.html"; break; + } } } break; @@ -355,23 +427,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "32196-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "32196-02.html" : "32196-03.html"; break; + } case ORC: + { htmltext = "32196-04.html"; break; + } case DWARF: + { htmltext = "32196-05.html"; break; + } case KAMAEL: + { htmltext = "32196-08.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "32196-06.html" : "32196-07.html"; break; + } } } break; @@ -383,23 +467,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30158-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30158-02.html" : "30158-03.html"; break; + } case ORC: + { htmltext = "30158-04.html"; break; + } case DWARF: + { htmltext = "30158-05.html"; break; + } case KAMAEL: + { htmltext = "30158-06.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30158-08.html" : "30158-07.html"; break; + } } } break; @@ -411,23 +507,35 @@ public final class Q10359_TracesOfEvil extends Quest switch (player.getRace()) { case DARK_ELF: + { htmltext = "30155-01.html"; break; + } case HUMAN: + { htmltext = player.isMageClass() ? "30155-02.html" : "30155-03.html"; break; + } case ORC: + { htmltext = "30155-04.html"; break; + } case DWARF: + { htmltext = "30155-05.html"; break; + } case KAMAEL: + { htmltext = "30155-06.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30155-07.html" : "30155-08.html"; break; + } } } break; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java index 8e08fdb23e..9c05425c90 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10360_CertificationOfFate/Q10360_CertificationOfFate.java @@ -175,29 +175,41 @@ public final class Q10360_CertificationOfFate extends Quest switch (player.getRace()) { case HUMAN: + { st.setCond(player.isMageClass() ? 9 : 8); htmltext = player.isMageClass() ? "33518-06.htm" : "33518-07.htm"; break; + } case DARK_ELF: + { st.setCond(12); htmltext = "33518-08.htm"; break; + } case ORC: + { st.setCond(13); htmltext = "33518-09.htm"; break; + } case DWARF: + { st.setCond(14); htmltext = "33518-10.htm"; break; + } case KAMAEL: + { st.setCond(15); htmltext = "33518-11.htm"; break; + } case ELF: + { st.setCond(player.isMageClass() ? 11 : 10); htmltext = player.isMageClass() ? "33518-12.htm" : "33518-13.htm"; break; + } } playSound(player, QuestSound.ITEMSOUND_QUEST_MIDDLE); break; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java index 6aa7cab89b..6bdcb9797f 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10369_NoblesseSoulTesting/Q10369_NoblesseSoulTesting.java @@ -291,21 +291,32 @@ public final class Q10369_NoblesseSoulTesting extends Quest switch (qs.getCond()) { case 1: + { htmltext = "31281-03.html"; break; + } case 2: + { htmltext = "31281-06.html"; break; + } case 3: + { htmltext = "31281-07.html"; break; + } case 4: + { htmltext = "31281-08.html"; break; + } case 5: + { htmltext = "31281-10.html"; break; + } case 14: + { final Quest instance = QuestManager.getInstance().getQuest(EvasHiddenSpace.class.getSimpleName()); if (instance != null) { @@ -313,9 +324,12 @@ public final class Q10369_NoblesseSoulTesting extends Quest } htmltext = null; break; + } case 17: + { htmltext = "31281-11.html"; break; + } } break; } @@ -324,18 +338,27 @@ public final class Q10369_NoblesseSoulTesting extends Quest switch (qs.getCond()) { case 5: + { htmltext = "33686-01.html"; break; + } case 6: + { htmltext = "33686-04.html"; break; + } case 15: + { htmltext = "33686-05.html"; break; + } case 16: + { htmltext = "33686-06.html"; break; + } case 18: + { player.doCast(NOBLESSE_PRESENTATION.getSkill()); showOnScreenMsg(player, NpcStringId.CONGRATULATIONS_YOU_ARE_NOW_A_NOBLESSE, ExShowScreenMessage.TOP_CENTER, 5000); player.setNoble(true); @@ -348,6 +371,7 @@ public final class Q10369_NoblesseSoulTesting extends Quest qs.exitQuest(false, true); htmltext = "33686-07.html"; break; + } } break; } @@ -356,30 +380,44 @@ public final class Q10369_NoblesseSoulTesting extends Quest switch (qs.getCond()) { case 7: + { htmltext = "33696-02.html"; break; + } case 8: + { htmltext = "33696-04.html"; break; + } case 9: + { htmltext = "33696-05.html"; break; + } case 10: + { htmltext = "33696-07.html"; break; + } case 11: + { htmltext = "33696-08.html"; break; + } case 12: + { htmltext = "33696-10.html"; break; + } case 13: + { qs.setCond(14, true); takeItems(player, HARD_FOSSIL_CONTAINING_WATER_ENERGY, -1); giveItems(player, SACK_CONTAINING_INGREDIENTS, 1); giveItems(player, SOE_SECRET_ROOM, 1); htmltext = "33696-11.html"; break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java index 04ad81aef9..fc58eb26a5 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10385_RedThreadOfFate/Q10385_RedThreadOfFate.java @@ -474,17 +474,25 @@ public final class Q10385_RedThreadOfFate extends Quest switch (qs.getCond()) { case 2: + { htmltext = "33783-01.html"; break; + } case 3: + { htmltext = "33783-03.html"; break; + } case 4: + { htmltext = "33783-04.html"; break; + } case 5: + { htmltext = "33783-04.html"; break; + } } break; } @@ -553,17 +561,25 @@ public final class Q10385_RedThreadOfFate extends Quest switch (qs.getCond()) { case 10: + { htmltext = "31539-01.html"; break; + } case 11: + { htmltext = "31539-05.html"; break; + } case 13: + { htmltext = "31539-06.html"; break; + } case 14: + { htmltext = "31539-10.html"; break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java index 666a98f1d2..d46b2b6dee 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10386_MysteriousJourney/Q10386_MysteriousJourney.java @@ -144,11 +144,15 @@ public final class Q10386_MysteriousJourney extends Quest switch (st.getCond()) { case 1: + { htmltext = "33780-01.html"; break; + } case 2: + { htmltext = "33780-05.html"; break; + } case 4: { giveAdena(player, 58_707, true); diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java index 4f45af1151..04b10bcd05 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10387_SoullessOne/Q10387_SoullessOne.java @@ -169,14 +169,20 @@ public final class Q10387_SoullessOne extends Quest switch (st.getCond()) { case 1: + { htmltext = "33796-01.htm"; break; + } case 2: + { htmltext = "33796-06.html"; break; + } case 3: + { htmltext = "33796-07.html"; break; + } } } break; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java index 30418600b4..d51eb93794 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10390_KekropusLetter/Q10390_KekropusLetter.java @@ -224,23 +224,35 @@ public final class Q10390_KekropusLetter extends Quest switch (player.getRace()) { case HUMAN: + { htmltext = player.isMageClass() ? "30332-01.html" : "30332-02.html"; break; + } case DARK_ELF: + { htmltext = "30332-03.html"; break; + } case ORC: + { htmltext = "30332-04.html"; break; + } case DWARF: + { htmltext = "30332-05.html"; break; + } case KAMAEL: + { htmltext = "30332-06.html"; break; + } case ELF: + { htmltext = player.isMageClass() ? "30332-08.html" : "30332-07.html"; break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java index f4f02c3edd..1e59ea9823 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10417_DaimonTheWhiteEyed/Q10417_DaimonTheWhiteEyed.java @@ -122,14 +122,20 @@ public final class Q10417_DaimonTheWhiteEyed extends Quest switch (st.getCond()) { case 1: + { htmltext = npc.getId() == EYE_OF_ARGOS ? "31683-05.html" : "33851-01.html"; break; + } case 2: + { htmltext = npc.getId() == EYE_OF_ARGOS ? "31683-06.html" : "33851-01.html"; break; + } case 3: + { htmltext = npc.getId() == EYE_OF_ARGOS ? "31683-07.html" : "33851-02.html"; break; + } } } return htmltext; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java index 37e1b208a1..2345109d97 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10472_WindsOfFateEncroachingShadows/Q10472_WindsOfFateEncroachingShadows.java @@ -125,7 +125,9 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest case "33491-02.html": case "33491-03.html": case "33491-04.html": + { break; + } case "33931-05.htm": // Navari { qs.startQuest(); @@ -246,36 +248,54 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (event.split("-")[1]) { case "fire": + { giveItems(player, FIRE_STONE); break; + } case "water": + { giveItems(player, WATER_STONE); break; + } case "earth": + { giveItems(player, EARTH_STONE); break; + } case "wind": + { giveItems(player, WIND_STONE); break; + } case "dark": + { giveItems(player, DARK_STONE); break; + } case "holy": + { giveItems(player, HOLY_STONE); break; + } } // Give soul crystal switch (qs.get("SoulCrystal")) { case "red": + { giveItems(player, RED_SOUL_CRYSTAL_15); break; + } case "blue": + { giveItems(player, BLUE_SOUL_CRYSTAL_15); break; + } case "green": + { giveItems(player, GREEN_SOUL_CRYSTAL_15); break; + } } giveItems(player, CRYSTAL_R); giveItems(player, RECIPE_TWILIGHT_NECKLACE); @@ -286,7 +306,9 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -302,17 +324,23 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33931-01.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "33931-06.html"; } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if ((npc.getId() == ZEPHYRA) && qs.isStarted()) @@ -320,17 +348,25 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getCond()) { case 1: + { htmltext = "33978-01.html"; break; + } case 2: + { htmltext = "33978-04.html"; break; + } case 17: + { htmltext = "33978-05.html"; break; + } case 18: + { htmltext = "33978-08.html"; break; + } } } else if ((npc.getId() == MOMET) && qs.isStarted()) @@ -349,17 +385,25 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getCond()) { case 3: + { htmltext = "31092-01.html"; break; + } case 4: + { htmltext = "31092-04.html"; break; + } case 5: + { htmltext = (qs.isMemoState(1)) ? "31092-06.html" : "31092-05.html"; break; + } case 6: + { htmltext = "31092-08.html"; break; + } } } else if ((npc.getId() == BLACKSMITH_OF_MAMMON) && qs.isStarted()) @@ -378,18 +422,26 @@ public final class Q10472_WindsOfFateEncroachingShadows extends Quest switch (qs.getCond()) { case 7: + { htmltext = "33870-01.html"; break; + } case 8: + { htmltext = "33870-06.html"; break; + } // TODO: Unknown html for cond 9 - 15 case 16: + { htmltext = "33870-07.html"; break; + } case 17: + { htmltext = "33870-10.html"; break; + } } } else if ((npc.getId() == KARLA) && qs.isStarted()) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java index 97543bbcc2..1ffe73c501 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10734_DoOrDie/Q10734_DoOrDie.java @@ -171,8 +171,10 @@ public final class Q10734_DoOrDie extends Quest break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } break; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java index dd588a6c25..b67cf8548e 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10740_NeverForget/Q10740_NeverForget.java @@ -121,8 +121,10 @@ public final class Q10740_NeverForget extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33951-01.htm"; break; + } case State.STARTED: { switch (qs.getCond()) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java index b2059c0ca7..bf4f72d65c 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10751_WindsOfFateEncounters/Q10751_WindsOfFateEncounters.java @@ -309,8 +309,10 @@ public final class Q10751_WindsOfFateEncounters extends Quest break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java index 12db806da2..4369dd3f3b 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10755_LettersFromTheQueenWindyHill/Q10755_LettersFromTheQueenWindyHill.java @@ -69,7 +69,9 @@ public final class Q10755_LettersFromTheQueenWindyHill extends LetterQuest { case "30037-02.html": case "33963-02.html": + { break; + } case "30037-03.html": { if (qs.isCond(1)) @@ -92,7 +94,9 @@ public final class Q10755_LettersFromTheQueenWindyHill extends LetterQuest break; } default: + { htmltext = event; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java index fe779004ee..a9e5b60ef9 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10756_AnInterdimensionalDraft/Q10756_AnInterdimensionalDraft.java @@ -77,7 +77,9 @@ public final class Q10756_AnInterdimensionalDraft extends Quest case "33963-02.htm": case "33963-03.htm": case "33963-04.htm": + { break; + } case "33963-05.htm": { qs.startQuest(); @@ -94,7 +96,9 @@ public final class Q10756_AnInterdimensionalDraft extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -108,14 +112,20 @@ public final class Q10756_AnInterdimensionalDraft extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33963-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33963-06.html" : "33963-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java index e356b3949d..676269a77f 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10757_QuietingTheStorm/Q10757_QuietingTheStorm.java @@ -75,7 +75,9 @@ public final class Q10757_QuietingTheStorm extends Quest case "33963-02.htm": case "33963-03.htm": case "33963-04.htm": + { break; + } case "33963-05.htm": { qs.startQuest(); @@ -92,7 +94,9 @@ public final class Q10757_QuietingTheStorm extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -106,14 +110,20 @@ public final class Q10757_QuietingTheStorm extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33963-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33963-06.html" : "33963-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java index 006bed445b..c3de2d720f 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10758_TheOathOfTheWind/Q10758_TheOathOfTheWind.java @@ -67,7 +67,9 @@ public final class Q10758_TheOathOfTheWind extends Quest { case "33963-01.htm": case "33963-02.htm": + { break; + } case "33963-03.htm": { qs.startQuest(); @@ -94,7 +96,9 @@ public final class Q10758_TheOathOfTheWind extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -108,14 +112,20 @@ public final class Q10758_TheOathOfTheWind extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33963-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33963-04.html" : "33963-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java index 19ce4480be..fb08a9c72c 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10760_LettersFromTheQueenOrcBarracks/Q10760_LettersFromTheQueenOrcBarracks.java @@ -69,7 +69,9 @@ public class Q10760_LettersFromTheQueenOrcBarracks extends LetterQuest { case "30037-02.html": case "30597-02.html": + { break; + } case "30037-03.html": { if (qs.isCond(1)) @@ -92,7 +94,9 @@ public class Q10760_LettersFromTheQueenOrcBarracks extends LetterQuest break; } default: + { htmltext = event; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java index 53d764015a..c650191204 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10761_AnOrcInLove/Q10761_AnOrcInLove.java @@ -79,7 +79,9 @@ public class Q10761_AnOrcInLove extends Quest case "33966-02.htm": case "33966-03.htm": case "33966-04.htm": + { break; + } case "33966-05.htm": { qs.startQuest(); @@ -96,7 +98,9 @@ public class Q10761_AnOrcInLove extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -110,14 +114,20 @@ public class Q10761_AnOrcInLove extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-06.html" : "33966-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java index f855ebf0b7..bb735c2799 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10762_MarionetteSpirit/Q10762_MarionetteSpirit.java @@ -67,7 +67,9 @@ public final class Q10762_MarionetteSpirit extends Quest switch (event) { case "33966-02.htm": + { break; + } case "33966-03.htm": { qs.startQuest(); @@ -84,7 +86,9 @@ public final class Q10762_MarionetteSpirit extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -98,14 +102,20 @@ public final class Q10762_MarionetteSpirit extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-04.html" : "33966-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java index 9afea74de2..d41d71d6e1 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10763_TerrifyingChertuba/Q10763_TerrifyingChertuba.java @@ -67,7 +67,9 @@ public final class Q10763_TerrifyingChertuba extends Quest switch (event) { case "33966-02.htm": + { break; + } case "33966-03.htm": { qs.startQuest(); @@ -84,7 +86,9 @@ public final class Q10763_TerrifyingChertuba extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -98,14 +102,20 @@ public final class Q10763_TerrifyingChertuba extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-04.html" : "33966-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java index a774df3136..b9c000b96a 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10764_FreeSpirit/Q10764_FreeSpirit.java @@ -75,7 +75,9 @@ public final class Q10764_FreeSpirit extends Quest switch (event) { case "33966-02.htm": + { break; + } case "33966-03.htm": { qs.startQuest(); @@ -94,7 +96,9 @@ public final class Q10764_FreeSpirit extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -110,14 +114,20 @@ public final class Q10764_FreeSpirit extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33966-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33966-04.html" : "33966-05.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java index c0643f0fb8..9894acae60 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10769_LettersFromTheQueenCrumaTowerPart1/Q10769_LettersFromTheQueenCrumaTowerPart1.java @@ -71,7 +71,9 @@ public final class Q10769_LettersFromTheQueenCrumaTowerPart1 extends LetterQuest { case "30070-02.html": case "30673-02.html": + { break; + } case "30070-03.html": { if (qs.isCond(1)) @@ -96,7 +98,9 @@ public final class Q10769_LettersFromTheQueenCrumaTowerPart1 extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java index 1b83618faa..c8184c680d 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10770_InSearchOfTheGrail/Q10770_InSearchOfTheGrail.java @@ -76,7 +76,9 @@ public final class Q10770_InSearchOfTheGrail extends Quest case "30673-02.htm": case "30673-03.htm": case "30673-04.htm": + { break; + } case "30673-05.htm": { qs.startQuest(); @@ -104,7 +106,9 @@ public final class Q10770_InSearchOfTheGrail extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -120,8 +124,10 @@ public final class Q10770_InSearchOfTheGrail extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30673-01.htm"; break; + } case State.STARTED: { if (qs.isCond(1)) @@ -135,8 +141,10 @@ public final class Q10770_InSearchOfTheGrail extends Quest break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted()) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java index 7ef68136da..e9716c0a3b 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10772_ReportsFromCrumaTowerPart1/Q10772_ReportsFromCrumaTowerPart1.java @@ -77,7 +77,9 @@ public final class Q10772_ReportsFromCrumaTowerPart1 extends Quest case "30484-04.htm": case "30484-05.htm": case "33991-02.html": + { break; + } case "30484-06.htm": { qs.startQuest(); @@ -116,7 +118,9 @@ public final class Q10772_ReportsFromCrumaTowerPart1 extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -132,14 +136,20 @@ public final class Q10772_ReportsFromCrumaTowerPart1 extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30484-01.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "30484-07.html" : "30484-08.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java index d346a9c5e2..8df276a587 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10774_LettersFromTheQueenCrumaTowerPart2/Q10774_LettersFromTheQueenCrumaTowerPart2.java @@ -70,7 +70,9 @@ public final class Q10774_LettersFromTheQueenCrumaTowerPart2 extends LetterQuest { case "30070-02.html": case "30487-02.html": + { break; + } case "30070-03.html": { if (qs.isCond(1)) @@ -94,7 +96,9 @@ public final class Q10774_LettersFromTheQueenCrumaTowerPart2 extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java index 12d96acffc..ed005274ec 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10775_InSearchOfAnAncientGiant/Q10775_InSearchOfAnAncientGiant.java @@ -80,7 +80,9 @@ public final class Q10775_InSearchOfAnAncientGiant extends Quest case "30487-04.htm": case "30485-02.html": case "30485-03.html": + { break; + } case "30487-05.htm": { qs.startQuest(); @@ -98,7 +100,9 @@ public final class Q10775_InSearchOfAnAncientGiant extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -114,17 +118,23 @@ public final class Q10775_InSearchOfAnAncientGiant extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30487-01.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "30487-06.html"; } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(2)) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java index 9fb07b0de2..1f987787b0 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10776_TheWrathOfTheGiants/Q10776_TheWrathOfTheGiants.java @@ -85,7 +85,9 @@ public final class Q10776_TheWrathOfTheGiants extends Quest case "33992-02.html": case "33992-03.html": case "30485-07.html": + { break; + } case "30485-03.htm": { qs.startQuest(); @@ -144,7 +146,9 @@ public final class Q10776_TheWrathOfTheGiants extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -159,28 +163,38 @@ public final class Q10776_TheWrathOfTheGiants extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30485-01.htm"; break; + } case State.STARTED: { switch (qs.getCond()) { case 1: + { htmltext = "30485-04.html"; break; + } case 2: case 3: + { htmltext = "30485-05.html"; break; + } case 4: + { htmltext = "30485-06.html"; break; + } } break; } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted()) @@ -192,8 +206,10 @@ public final class Q10776_TheWrathOfTheGiants extends Quest case 1: case 2: case 3: + { htmltext = "32366-01.html"; break; + } } } else if (npc.isScriptValue(player.getObjectId()) && (qs.isCond(2) || qs.isCond(3))) @@ -276,7 +292,9 @@ public final class Q10776_TheWrathOfTheGiants extends Quest break; } default: + { super.onTimerEvent(event, params, npc, player); + } } } } \ No newline at end of file diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java index 9171e098af..631a337d75 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10777_ReportsFromCrumaTowerPart2/Q10777_ReportsFromCrumaTowerPart2.java @@ -77,7 +77,9 @@ public final class Q10777_ReportsFromCrumaTowerPart2 extends Quest case "30485-04.htm": case "30485-05.htm": case "33991-02.html": + { break; + } case "30485-06.htm": { qs.startQuest(); @@ -118,7 +120,9 @@ public final class Q10777_ReportsFromCrumaTowerPart2 extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -134,14 +138,20 @@ public final class Q10777_ReportsFromCrumaTowerPart2 extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "30485-01.htm"; break; + } case State.STARTED: + { htmltext = qs.isCond(1) ? "30485-07.html" : "30485-08.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java index a17aa358b1..ed2ef3824a 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10779_LettersFromTheQueenSeaOfSpores/Q10779_LettersFromTheQueenSeaOfSpores.java @@ -70,7 +70,9 @@ public final class Q10779_LettersFromTheQueenSeaOfSpores extends LetterQuest { case "30191-02.html": case "33845-02.html": + { break; + } case "30191-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10779_LettersFromTheQueenSeaOfSpores extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java index a62e2194f4..09fe203bdb 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10780_AWeakenedBarrier/Q10780_AWeakenedBarrier.java @@ -79,7 +79,9 @@ public final class Q10780_AWeakenedBarrier extends Quest { case "33845-04.htm": case "33845-05.htm": + { break; + } case "33845-06.htm": { qs.startQuest(); @@ -97,7 +99,9 @@ public final class Q10780_AWeakenedBarrier extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -113,17 +117,23 @@ public final class Q10780_AWeakenedBarrier extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33845-03.htm"; break; + } case State.STARTED: + { if (qs.isCond(1)) { htmltext = "33845-07.html"; } break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted()) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java index 274b59789d..cc3b5846cb 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10781_IngredientsToEnforcements/Q10781_IngredientsToEnforcements.java @@ -74,7 +74,9 @@ public final class Q10781_IngredientsToEnforcements extends Quest { case "33846-03.htm": case "33846-04.htm": + { break; + } case "33846-05.htm": { qs.startQuest(); @@ -92,7 +94,9 @@ public final class Q10781_IngredientsToEnforcements extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -106,14 +110,20 @@ public final class Q10781_IngredientsToEnforcements extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33846-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33846-06.html" : "33846-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java index 24f6d643db..82f6bcc4a0 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10782_LettersFromTheQueenForsakenPlains/Q10782_LettersFromTheQueenForsakenPlains.java @@ -70,7 +70,9 @@ public final class Q10782_LettersFromTheQueenForsakenPlains extends LetterQuest { case "30857-02.html": case "33866-02.html": + { break; + } case "30857-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10782_LettersFromTheQueenForsakenPlains extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java index e03931eeac..c4553f9101 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10783_TracesOfAnAmbush/Q10783_TracesOfAnAmbush.java @@ -92,7 +92,9 @@ public final class Q10783_TracesOfAnAmbush extends Quest { case "33866-03.htm": case "33866-04.htm": + { break; + } case "33866-05.htm": { qs.startQuest(); @@ -107,7 +109,9 @@ public final class Q10783_TracesOfAnAmbush extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -121,14 +125,20 @@ public final class Q10783_TracesOfAnAmbush extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33866-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33866-06.html" : "33866-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java index 57907a488d..ddca456440 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10784_TheBrokenDevice/Q10784_TheBrokenDevice.java @@ -79,10 +79,14 @@ public final class Q10784_TheBrokenDevice extends Quest { case "33866-03.htm": case "33866-04.htm": + { break; + } case "33866-05.htm": + { qs.startQuest(); break; + } case "33866-08.html": { if (qs.isCond(2)) @@ -99,7 +103,9 @@ public final class Q10784_TheBrokenDevice extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -113,14 +119,20 @@ public final class Q10784_TheBrokenDevice extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33866-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33866-06.html" : "33866-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java index 2bed778d1e..95beb05e72 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10785_LettersFromTheQueenFieldsOfMassacre/Q10785_LettersFromTheQueenFieldsOfMassacre.java @@ -70,7 +70,9 @@ public final class Q10785_LettersFromTheQueenFieldsOfMassacre extends LetterQues { case "30857-02.html": case "33867-02.html": + { break; + } case "30857-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10785_LettersFromTheQueenFieldsOfMassacre extends LetterQues break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java index 1ee857f102..69ee846d25 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10786_ResidentProblemSolver/Q10786_ResidentProblemSolver.java @@ -87,10 +87,14 @@ public final class Q10786_ResidentProblemSolver extends Quest { case "33867-03.htm": case "33867-04.htm": + { break; + } case "33867-05.htm": + { qs.startQuest(); break; + } case "33867-08.html": { if (qs.isCond(2)) @@ -106,7 +110,9 @@ public final class Q10786_ResidentProblemSolver extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -120,14 +126,20 @@ public final class Q10786_ResidentProblemSolver extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33867-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33867-06.html" : "33867-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java index 5d877b43df..db06dd5383 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10787_ASpyMission/Q10787_ASpyMission.java @@ -72,10 +72,14 @@ public final class Q10787_ASpyMission extends Quest { case "33867-03.htm": case "33867-04.htm": + { break; + } case "33867-05.htm": + { qs.startQuest(); break; + } case "33994-02.html": { if (qs.isCond(1)) @@ -110,7 +114,9 @@ public final class Q10787_ASpyMission extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -126,14 +132,20 @@ public final class Q10787_ASpyMission extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33867-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33867-06.html" : "33867-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } } else if (qs.isStarted() && qs.isCond(1)) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java index 00550e18a2..dcc6dd467d 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10789_LettersFromTheQueenSwampOfScreams/Q10789_LettersFromTheQueenSwampOfScreams.java @@ -70,7 +70,9 @@ public final class Q10789_LettersFromTheQueenSwampOfScreams extends LetterQuest { case "31328-02.html": case "33847-02.html": + { break; + } case "31328-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10789_LettersFromTheQueenSwampOfScreams extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java index bd9d72fc8e..c1d885ae4b 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10792_LettersFromTheQueenForestOfTheDead/Q10792_LettersFromTheQueenForestOfTheDead.java @@ -70,7 +70,9 @@ public final class Q10792_LettersFromTheQueenForestOfTheDead extends LetterQuest { case "31328-02.html": case "33849-02.html": + { break; + } case "31328-03.html": { if (qs.isCond(1)) @@ -93,7 +95,9 @@ public final class Q10792_LettersFromTheQueenForestOfTheDead extends LetterQuest break; } default: + { htmltext = null; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java index f2b84840e3..f37c466a81 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10793_SaveTheSouls/Q10793_SaveTheSouls.java @@ -85,10 +85,14 @@ public final class Q10793_SaveTheSouls extends Quest { case "33849-03.htm": case "33849-04.htm": + { break; + } case "33849-05.htm": + { qs.startQuest(); break; + } case "33849-08.html": { if (qs.isCond(2)) @@ -104,7 +108,9 @@ public final class Q10793_SaveTheSouls extends Quest break; } default: + { htmltext = null; + } } return htmltext; } @@ -118,14 +124,20 @@ public final class Q10793_SaveTheSouls extends Quest switch (qs.getState()) { case State.CREATED: + { htmltext = "33849-02.htm"; break; + } case State.STARTED: + { htmltext = (qs.isCond(1)) ? "33849-06.html" : "33849-07.html"; break; + } case State.COMPLETED: + { htmltext = getAlreadyCompletedMsg(player); break; + } } return htmltext; } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10814_BefittingOfTheStatus/Q10814_BefittingOfTheStatus.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10814_BefittingOfTheStatus/Q10814_BefittingOfTheStatus.java index 29f5f5fe6b..c96029eb3e 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10814_BefittingOfTheStatus/Q10814_BefittingOfTheStatus.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/quests/Q10814_BefittingOfTheStatus/Q10814_BefittingOfTheStatus.java @@ -157,20 +157,30 @@ public final class Q10814_BefittingOfTheStatus extends Quest switch (qs.getCond()) { case 2: + { htmltext = "next-item-01.html"; break; + } case 3: + { htmltext = "next-item-02.html"; break; + } case 4: + { htmltext = "next-item-03.html"; break; + } case 5: + { htmltext = "next-item-04.html"; break; + } case 6: + { htmltext = "30097-07.html"; break; + } } } else @@ -194,22 +204,34 @@ public final class Q10814_BefittingOfTheStatus extends Quest switch (qs.getCond()) { case 1: + { htmlfile = "list-01.html"; break; + } case 2: + { htmlfile = "list-02.html"; break; + } case 3: + { htmlfile = "list-03.html"; break; + } case 4: + { htmlfile = "list-04.html"; break; + } case 5: + { htmlfile = "list-05.html"; break; + } default: + { htmlfile = "list-01.html"; + } } final NpcHtmlMessage htmlFile = getNpcHtmlMessage(player, npc, htmlfile); diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java index 1246d1204e..8f320c15d9 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/AirShipGludioGracia/AirShipGludioGracia.java @@ -241,43 +241,59 @@ public final class AirShipGludioGracia extends AbstractNpcAI implements Runnable switch (_cycle) { case 0: + { broadcastInGludio(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_THAT_FLIES_TO_THE_GRACIA_CONTINENT_HAS_DEPARTED); _ship.setInDock(0); _ship.executePath(GLUDIO_TO_WARPGATE); break; + } case 1: + { // _ship.teleToLocation(-167874, 256731, -509, 41035, false); _ship.setOustLoc(OUST_GRACIA); ThreadPoolManager.schedule(this, 5000); break; + } case 2: + { _ship.executePath(WARPGATE_TO_GRACIA); break; + } case 3: + { broadcastInGracia(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_HAS_ARRIVED_IT_WILL_DEPART_FOR_THE_ADEN_CONTINENT_IN_1_MINUTE); _ship.setInDock(GRACIA_DOCK_ID); _ship.oustPlayers(); ThreadPoolManager.schedule(this, 60000); break; + } case 4: + { broadcastInGracia(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_THAT_FLIES_TO_THE_ADEN_CONTINENT_HAS_DEPARTED); _ship.setInDock(0); _ship.executePath(GRACIA_TO_WARPGATE); break; + } case 5: + { // _ship.teleToLocation(-157261, 255664, 221, 64781, false); _ship.setOustLoc(OUST_GLUDIO); ThreadPoolManager.schedule(this, 5000); break; + } case 6: + { _ship.executePath(WARPGATE_TO_GLUDIO); break; + } case 7: + { broadcastInGludio(NpcStringId.THE_REGULARLY_SCHEDULED_AIRSHIP_HAS_ARRIVED_IT_WILL_DEPART_FOR_THE_GRACIA_CONTINENT_IN_1_MINUTE); _ship.setInDock(GLUDIO_DOCK_ID); _ship.oustPlayers(); ThreadPoolManager.schedule(this, 60000); break; + } } _cycle++; if (_cycle > 7) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatGludinRune.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatGludinRune.java index 746b80fafd..67e37b7006 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatGludinRune.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatGludinRune.java @@ -174,18 +174,25 @@ public class BoatGludinRune implements Runnable switch (_cycle) { case 0: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVE_GLUDIN5); ThreadPoolManager.schedule(this, 240000); break; + } case 1: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVE_GLUDIN1); ThreadPoolManager.schedule(this, 40000); break; + } case 2: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVE_GLUDIN0); ThreadPoolManager.schedule(this, 20000); break; + } case 3: + { BoatManager.getInstance().dockShip(BoatManager.GLUDIN_HARBOR, false); BoatManager.getInstance().broadcastPackets(GLUDIN_DOCK[0], RUNE_DOCK[0], LEAVING_GLUDIN); _boat.broadcastPacket(GLUDIN_SOUND); @@ -193,22 +200,32 @@ public class BoatGludinRune implements Runnable _boat.executePath(GLUDIN_TO_RUNE); ThreadPoolManager.schedule(this, 250000); break; + } case 4: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE15); ThreadPoolManager.schedule(this, 300000); break; + } case 5: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE10); ThreadPoolManager.schedule(this, 300000); break; + } case 6: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE5); ThreadPoolManager.schedule(this, 240000); break; + } case 7: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVAL_RUNE1); break; + } case 8: + { if (BoatManager.getInstance().dockBusy(BoatManager.RUNE_HARBOR)) { if (_shoutCount == 0) @@ -227,25 +244,35 @@ public class BoatGludinRune implements Runnable } _boat.executePath(RUNE_DOCK); break; + } case 9: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, true); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], GLUDIN_DOCK[0], ARRIVED_AT_RUNE, ARRIVED_AT_RUNE_2); _boat.broadcastPacket(RUNE_SOUND); ThreadPoolManager.schedule(this, 300000); break; + } case 10: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVE_RUNE5); ThreadPoolManager.schedule(this, 240000); break; + } case 11: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVE_RUNE1); ThreadPoolManager.schedule(this, 40000); break; + } case 12: + { BoatManager.getInstance().broadcastPacket(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVE_RUNE0); ThreadPoolManager.schedule(this, 20000); break; + } case 13: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, false); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], GLUDIN_DOCK[0], LEAVING_RUNE); _boat.broadcastPacket(RUNE_SOUND); @@ -253,22 +280,32 @@ public class BoatGludinRune implements Runnable _boat.executePath(RUNE_TO_GLUDIN); ThreadPoolManager.schedule(this, 60000); break; + } case 14: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN15); ThreadPoolManager.schedule(this, 300000); break; + } case 15: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN10); ThreadPoolManager.schedule(this, 300000); break; + } case 16: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN5); ThreadPoolManager.schedule(this, 240000); break; + } case 17: + { BoatManager.getInstance().broadcastPacket(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVAL_GLUDIN1); break; + } case 18: + { if (BoatManager.getInstance().dockBusy(BoatManager.GLUDIN_HARBOR)) { if (_shoutCount == 0) @@ -287,12 +324,15 @@ public class BoatGludinRune implements Runnable } _boat.executePath(GLUDIN_DOCK); break; + } case 19: + { BoatManager.getInstance().dockShip(BoatManager.GLUDIN_HARBOR, true); BoatManager.getInstance().broadcastPackets(GLUDIN_DOCK[0], RUNE_DOCK[0], ARRIVED_AT_GLUDIN, ARRIVED_AT_GLUDIN_2); _boat.broadcastPacket(GLUDIN_SOUND); ThreadPoolManager.schedule(this, 300000); break; + } } _shoutCount = 0; _cycle++; diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatInnadrilTour.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatInnadrilTour.java index 0c6be76018..b2462e8c54 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatInnadrilTour.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatInnadrilTour.java @@ -117,46 +117,66 @@ public class BoatInnadrilTour implements Runnable switch (_cycle) { case 0: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, LEAVE_INNADRIL5); ThreadPoolManager.schedule(this, 240000); break; + } case 1: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, LEAVE_INNADRIL1); ThreadPoolManager.schedule(this, 40000); break; + } case 2: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, LEAVE_INNADRIL0); ThreadPoolManager.schedule(this, 20000); break; + } case 3: + { BoatManager.getInstance().broadcastPackets(DOCK, DOCK, LEAVING_INNADRIL, INNADRIL_SOUND); _boat.payForRide(0, 1, 107092, 219098, -3952); _boat.executePath(TOUR); ThreadPoolManager.schedule(this, 650000); break; + } case 4: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL20); ThreadPoolManager.schedule(this, 300000); break; + } case 5: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL15); ThreadPoolManager.schedule(this, 300000); break; + } case 6: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL10); ThreadPoolManager.schedule(this, 300000); break; + } case 7: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL5); ThreadPoolManager.schedule(this, 240000); break; + } case 8: + { BoatManager.getInstance().broadcastPacket(DOCK, DOCK, ARRIVAL1); break; + } case 9: + { BoatManager.getInstance().broadcastPackets(DOCK, DOCK, ARRIVED_AT_INNADRIL, INNADRIL_SOUND); ThreadPoolManager.schedule(this, 300000); break; + } } _cycle++; if (_cycle > 9) diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatRunePrimeval.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatRunePrimeval.java index 7359b6bdec..fee83279f1 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatRunePrimeval.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/vehicles/BoatRunePrimeval.java @@ -110,21 +110,28 @@ public class BoatRunePrimeval implements Runnable switch (_cycle) { case 0: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, false); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], PRIMEVAL_DOCK, LEAVING_RUNE, RUNE_SOUND); _boat.payForRide(8925, 1, 34513, -38009, -3640); _boat.executePath(RUNE_TO_PRIMEVAL); break; + } case 1: + { BoatManager.getInstance().broadcastPackets(PRIMEVAL_DOCK, RUNE_DOCK[0], ARRIVED_AT_PRIMEVAL, ARRIVED_AT_PRIMEVAL_2, PRIMEVAL_SOUND); ThreadPoolManager.schedule(this, 180000); break; + } case 2: + { BoatManager.getInstance().broadcastPackets(PRIMEVAL_DOCK, RUNE_DOCK[0], LEAVING_PRIMEVAL, PRIMEVAL_SOUND); _boat.payForRide(8924, 1, 10447, -24982, -3664); _boat.executePath(PRIMEVAL_TO_RUNE); break; + } case 3: + { if (BoatManager.getInstance().dockBusy(BoatManager.RUNE_HARBOR)) { if (_shoutCount == 0) @@ -143,11 +150,14 @@ public class BoatRunePrimeval implements Runnable } _boat.executePath(RUNE_DOCK); break; + } case 4: + { BoatManager.getInstance().dockShip(BoatManager.RUNE_HARBOR, true); BoatManager.getInstance().broadcastPackets(RUNE_DOCK[0], PRIMEVAL_DOCK, ARRIVED_AT_RUNE, ARRIVED_AT_RUNE_2, RUNE_SOUND); ThreadPoolManager.schedule(this, 180000); break; + } } _shoutCount = 0; _cycle++; diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/commons/util/Rnd.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/commons/util/Rnd.java index ddef918e21..8570d4598a 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/commons/util/Rnd.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/commons/util/Rnd.java @@ -355,16 +355,21 @@ public final class Rnd switch (type) { case UNSECURE_ATOMIC: + { return new RandomContainer(new Random()); - + } case UNSECURE_VOLATILE: + { return new RandomContainer(new NonAtomicRandom()); - + } case UNSECURE_THREAD_LOCAL: + { return new RandomContainer(new ThreadLocalRandom()); - + } case SECURE: + { return new RandomContainer(new SecureRandom()); + } } throw new IllegalArgumentException(); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/FortUpdater.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/FortUpdater.java index 863af2077b..b38bb8eb81 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/FortUpdater.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/FortUpdater.java @@ -58,6 +58,7 @@ public class FortUpdater implements Runnable switch (_updaterType) { case PERIODIC_UPDATE: + { _runCount++; if ((_fort.getOwnerClan() == null) || (_fort.getOwnerClan() != _clan)) { @@ -81,7 +82,9 @@ public class FortUpdater implements Runnable } _fort.saveFortVariables(); break; + } case MAX_OWN_TIME: + { if ((_fort.getOwnerClan() == null) || (_fort.getOwnerClan() != _clan)) { return; @@ -92,6 +95,7 @@ public class FortUpdater implements Runnable _fort.setFortState(0, 0); } break; + } } } catch (Exception e) diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/LoginServerThread.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/LoginServerThread.java index 8dc65cbfb1..d30e398c7d 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/LoginServerThread.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/LoginServerThread.java @@ -210,6 +210,7 @@ public class LoginServerThread extends Thread switch (packetType) { case 0x00: + { final InitLS init = new InitLS(incoming); if (init.getRevision() != REVISION) { @@ -238,12 +239,16 @@ public class LoginServerThread extends Thread _blowfish = new NewCrypt(blowfishKey); sendPacket(new AuthRequest(_requestID, _acceptAlternate, _hexID, _gamePort, _reserveHost, _maxPlayer, _subnets, _hosts)); break; + } case 0x01: + { final LoginServerFail lsf = new LoginServerFail(incoming); LOGGER.info(getClass().getSimpleName() + ": Damn! Registeration Failed: " + lsf.getReasonString()); // login will close the connection here break; + } case 0x02: + { final AuthResponse aresp = new AuthResponse(incoming); final int serverID = aresp.getServerId(); _serverName = aresp.getServerName(); @@ -290,7 +295,9 @@ public class LoginServerThread extends Thread sendPacket(new PlayerInGame(playerList)); } break; + } case 0x03: + { final PlayerAuthResponse par = new PlayerAuthResponse(incoming); final String account = par.getAccount(); WaitingClient wcToRemove = null; @@ -327,17 +334,24 @@ public class LoginServerThread extends Thread _waitingClients.remove(wcToRemove); } break; + } case 0x04: + { final KickPlayer kp = new KickPlayer(incoming); doKickPlayer(kp.getAccount()); break; + } case 0x05: + { final RequestCharacters rc = new RequestCharacters(incoming); getCharsOnServer(rc.getAccount()); break; + } case 0x06: + { new ChangePasswordResponse(incoming); break; + } } } } @@ -724,31 +738,45 @@ public class LoginServerThread extends Thread switch (status) { case ServerStatus.STATUS_AUTO: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_AUTO); _status = status; break; + } case ServerStatus.STATUS_DOWN: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_DOWN); _status = status; break; + } case ServerStatus.STATUS_FULL: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_FULL); _status = status; break; + } case ServerStatus.STATUS_GM_ONLY: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_GM_ONLY); _status = status; break; + } case ServerStatus.STATUS_GOOD: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_GOOD); _status = status; break; + } case ServerStatus.STATUS_NORMAL: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_NORMAL); _status = status; break; + } default: + { throw new IllegalArgumentException("Status does not exists:" + status); + } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java index 82b4667113..a14fe8797e 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java @@ -133,14 +133,20 @@ public class DoppelgangerAI extends L2CharacterAI switch (getIntention()) { case AI_INTENTION_ATTACK: + { thinkAttack(); break; + } case AI_INTENTION_CAST: + { thinkCast(); break; + } case AI_INTENTION_INTERACT: + { thinkInteract(); break; + } } } finally @@ -173,7 +179,9 @@ public class DoppelgangerAI extends L2CharacterAI case AI_INTENTION_IDLE: case AI_INTENTION_MOVE_TO: case AI_INTENTION_PICK_UP: + { getActor().followSummoner(_startFollow); + } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java index cbfe69dc4b..57c95bd40e 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java @@ -1094,14 +1094,20 @@ public class L2AttackableAI extends L2CharacterAI implements Runnable switch (getIntention()) { case AI_INTENTION_ACTIVE: + { thinkActive(); break; + } case AI_INTENTION_ATTACK: + { thinkAttack(); break; + } case AI_INTENTION_CAST: + { thinkCast(); break; + } } } catch (Exception e) diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java index e7ca4d2583..f63498b55a 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java @@ -129,8 +129,10 @@ public class NpcData implements IGameXmlReader } case "race": case "sex": + { set.set(npc_node.getNodeName(), npc_node.getTextContent().toUpperCase()); break; + } case "equipment": { set.set("chestId", parseInteger(attrs, "chest")); @@ -218,23 +220,35 @@ public class NpcData implements IGameXmlReader switch (attackAttributeType.toUpperCase()) { case "FIRE": + { set.set("baseFire", parseInteger(attrs, "value")); break; + } case "WATER": + { set.set("baseWater", parseInteger(attrs, "value")); break; + } case "WIND": + { set.set("baseWind", parseInteger(attrs, "value")); break; + } case "EARTH": + { set.set("baseEarth", parseInteger(attrs, "value")); break; + } case "DARK": + { set.set("baseDark", parseInteger(attrs, "value")); break; + } case "HOLY": + { set.set("baseHoly", parseInteger(attrs, "value")); break; + } } break; } @@ -279,8 +293,10 @@ public class NpcData implements IGameXmlReader break; } case "hit_time": + { set.set("hit_time", npc_node.getTextContent()); // TODO: Implement me default 600 (value in ms) break; + } } } break; diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java index c42db18ad8..34eb9f0517 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java @@ -1175,41 +1175,65 @@ public final class SkillTreesData implements IGameXmlReader switch (skillType) { case CLASS: + { sl = getClassSkill(id, lvl, player.getClassId()); break; + } case TRANSFORM: + { sl = getTransformSkill(id, lvl); break; + } case FISHING: + { sl = getFishingSkill(id, lvl); break; + } case PLEDGE: + { sl = getPledgeSkill(id, lvl); break; + } case SUBPLEDGE: + { sl = getSubPledgeSkill(id, lvl); break; + } case TRANSFER: + { sl = getTransferSkill(id, lvl, player.getClassId()); break; + } case SUBCLASS: + { sl = getSubClassSkill(id, lvl); break; + } case COLLECT: + { sl = getCollectSkill(id, lvl); break; + } case REVELATION: + { sl = getRevelationSkill(SubclassType.BASECLASS, id, lvl); break; + } case REVELATION_DUALCLASS: + { sl = getRevelationSkill(SubclassType.DUALCLASS, id, lvl); break; + } case ALCHEMY: + { sl = getAlchemySkill(id, lvl); break; + } case DUALCLASS: + { sl = getDualClassSkill(id, lvl); break; + } } return sl; } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/datatables/AugmentationData.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/datatables/AugmentationData.java index 9aee82cb76..2fca501879 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/datatables/AugmentationData.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/datatables/AugmentationData.java @@ -575,19 +575,29 @@ public class AugmentationData switch (lifeStoneGrade) { case AbstractRefinePacket.GRADE_NONE: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_NG_CHANCE; break; + } case AbstractRefinePacket.GRADE_MID: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_MID_CHANCE; break; + } case AbstractRefinePacket.GRADE_HIGH: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_HIGH_CHANCE; break; + } case AbstractRefinePacket.GRADE_TOP: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_TOP_CHANCE; break; + } default: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_NG_CHANCE; + } } int c = Rnd.get(100); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java index 2e64596385..0b8070e37b 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java @@ -260,6 +260,7 @@ public final class CastleManorManager implements IGameXmlReader, IStorable switch (_mode) { case MODIFIABLE: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_APPROVE_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_APPROVE_MIN); if (_nextModeChange.before(Calendar.getInstance())) @@ -267,14 +268,19 @@ public final class CastleManorManager implements IGameXmlReader, IStorable _nextModeChange.add(Calendar.DATE, 1); } break; + } case MAINTENANCE: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_REFRESH_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_REFRESH_MIN + Config.ALT_MANOR_MAINTENANCE_MIN); break; + } case APPROVED: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_REFRESH_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_REFRESH_MIN); break; + } } // Schedule mode change ThreadPoolManager.schedule(this::changeMode, (_nextModeChange.getTimeInMillis() - System.currentTimeMillis())); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java index 4f5183877e..c6537d2d80 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java @@ -51,20 +51,28 @@ public final class GraciaSeedsManager switch (seedType) { case SODTYPE: + { // Seed of Destruction GlobalVariablesManager.getInstance().set("SoDState", _SoDState); GlobalVariablesManager.getInstance().set("SoDTiatKilled", _SoDTiatKilled); GlobalVariablesManager.getInstance().set("SoDLSCDate", _SoDLastStateChangeDate.getTimeInMillis()); break; + } case SOITYPE: + { // Seed of Infinity break; + } case SOATYPE: + { // Seed of Annihilation break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown SeedType in SaveData: " + seedType); break; + } } } @@ -89,9 +97,12 @@ public final class GraciaSeedsManager switch (_SoDState) { case 1: + { // do nothing, players should kill Tiat a few times break; + } case 2: + { // Conquest Complete state, if too much time is passed than change to defense state final long timePast = System.currentTimeMillis() - _SoDLastStateChangeDate.getTimeInMillis(); if (timePast >= Config.SOD_STAGE_2_LENGTH) @@ -104,12 +115,17 @@ public final class GraciaSeedsManager ThreadPoolManager.schedule(new UpdateSoDStateTask(), Config.SOD_STAGE_2_LENGTH - timePast); } break; + } case 3: + { // not implemented setSoDState(1, true); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown Seed of Destruction state(" + _SoDState + ")! "); + } } } @@ -177,15 +193,23 @@ public final class GraciaSeedsManager switch (_SoDState) { case 1: + { return -1; + } case 2: + { return ((_SoDLastStateChangeDate.getTimeInMillis() + Config.SOD_STAGE_2_LENGTH) - System.currentTimeMillis()); + } case 3: + { // not implemented yet return -1; + } default: + { // this should not happen! return -1; + } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/TownManager.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/TownManager.java index a39f01d3ca..b0543eb11a 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/TownManager.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/instancemanager/TownManager.java @@ -27,25 +27,45 @@ public final class TownManager switch (townId) { case 912: + { return 1; + } case 916: + { return 2; + } case 918: + { return 3; + } case 922: + { return 4; + } case 924: + { return 5; + } case 926: + { return 6; + } case 1538: + { return 7; + } case 1537: + { return 8; + } case 1714: + { return 9; + } default: + { return 0; + } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2Clan.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2Clan.java index e7f6838bc6..169c3b5de6 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2Clan.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2Clan.java @@ -568,58 +568,86 @@ public class L2Clan implements IIdentifiable, INamable switch (pledgeType) { case 0: + { switch (getLevel()) { case 3: + { limit = 30; break; + } case 2: + { limit = 20; break; + } case 1: + { limit = 15; break; + } case 0: + { limit = 10; break; + } default: + { limit = 40; break; + } } break; + } case -1: + { limit = 20; break; + } case 100: case 200: + { switch (getLevel()) { case 11: + { limit = 30; break; + } default: + { limit = 20; break; + } } break; + } case 1001: case 1002: case 2001: case 2002: + { switch (getLevel()) { case 9: case 10: case 11: + { limit = 25; break; + } default: + { limit = 10; break; + } } break; + } default: + { break; + } } return limit; @@ -1904,23 +1932,37 @@ public class L2Clan implements IIdentifiable, INamable switch (pledgeType) { case SUBUNIT_ACADEMY: + { return 0; + } case SUBUNIT_ROYAL1: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_ROYAL2); break; + } case SUBUNIT_ROYAL2: + { return 0; + } case SUBUNIT_KNIGHT1: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT2); break; + } case SUBUNIT_KNIGHT2: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT3); break; + } case SUBUNIT_KNIGHT3: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT4); break; + } case SUBUNIT_KNIGHT4: + { return 0; + } } } return pledgeType; @@ -2594,6 +2636,7 @@ public class L2Clan implements IIdentifiable, INamable break; } case 5: + { // Upgrade to 6 if ((getReputationScore() >= Config.CLAN_LEVEL_6_COST) && (getMembersCount() >= Config.CLAN_LEVEL_6_REQUIREMENT)) { @@ -2604,8 +2647,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; - + } case 6: + { // Upgrade to 7 if ((getReputationScore() >= Config.CLAN_LEVEL_7_COST) && (getMembersCount() >= Config.CLAN_LEVEL_7_REQUIREMENT)) { @@ -2616,7 +2660,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } case 7: + { // Upgrade to 8 if ((getReputationScore() >= Config.CLAN_LEVEL_8_COST) && (getMembersCount() >= Config.CLAN_LEVEL_8_REQUIREMENT)) { @@ -2627,7 +2673,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } case 8: + { // Upgrade to 9 if ((getReputationScore() >= Config.CLAN_LEVEL_9_COST) && (player.getInventory().getItemByItemId(9910) != null) && (getMembersCount() >= Config.CLAN_LEVEL_9_REQUIREMENT)) { @@ -2646,7 +2694,9 @@ public class L2Clan implements IIdentifiable, INamable } } break; + } case 9: + { // Upgrade to 10 if ((getReputationScore() >= Config.CLAN_LEVEL_10_COST) && (player.getInventory().getItemByItemId(9911) != null) && (getMembersCount() >= Config.CLAN_LEVEL_10_REQUIREMENT)) { @@ -2665,7 +2715,9 @@ public class L2Clan implements IIdentifiable, INamable } } break; + } case 10: + { // Upgrade to 11 if ((getReputationScore() >= Config.CLAN_LEVEL_11_COST) && (getMembersCount() >= Config.CLAN_LEVEL_11_REQUIREMENT)) { @@ -2676,8 +2728,11 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } default: + { return false; + } } if (!increaseClanLevel) diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2ClanMember.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2ClanMember.java index df4b387c8c..daef76108a 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2ClanMember.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2ClanMember.java @@ -430,12 +430,15 @@ public class L2ClanMember switch (clan.getLevel()) { case 4: + { if (player.isClanLeader()) { pledgeClass = 3; } break; + } case 5: + { if (player.isClanLeader()) { pledgeClass = 4; @@ -445,17 +448,24 @@ public class L2ClanMember pledgeClass = 2; } break; + } case 6: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 2; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 5; @@ -466,34 +476,48 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 4; break; + } case -1: default: + { pledgeClass = 3; break; + } } } break; + } } break; + } case 7: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 3; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 2; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 7; @@ -504,40 +528,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 6; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 5; break; + } case -1: default: + { pledgeClass = 4; break; + } } } break; + } } break; + } case 8: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 4; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 3; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 8; @@ -548,40 +588,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 7; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 6; break; + } case -1: default: + { pledgeClass = 5; break; + } } } break; + } } break; + } case 9: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 5; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 4; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 9; @@ -592,40 +648,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 8; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 7; break; + } case -1: default: + { pledgeClass = 6; break; + } } } break; + } } break; + } case 10: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 6; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 5; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 10; @@ -636,40 +708,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 9; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 8; break; + } case -1: default: + { pledgeClass = 7; break; + } } } break; + } } break; + } case 11: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 7; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 6; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 11; @@ -680,26 +768,36 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 10; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 9; break; + } case -1: default: + { pledgeClass = 8; break; + } } } break; + } } break; + } default: + { pledgeClass = 1; break; + } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2PetLevelData.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2PetLevelData.java index 306696fabd..43ab57e9ac 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2PetLevelData.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/L2PetLevelData.java @@ -200,17 +200,29 @@ public class L2PetLevelData switch (stat) { case WALK_SPEED: + { return _walkSpeedOnRide; + } case RUN_SPEED: + { return _runSpeedOnRide; + } case SWIM_WALK_SPEED: + { return _slowSwimSpeedOnRide; + } case SWIM_RUN_SPEED: + { return _fastSwimSpeedOnRide; + } case FLY_RUN_SPEED: + { return _slowFlySpeedOnRide; + } case FLY_WALK_SPEED: + { return _fastFlySpeedOnRide; + } } return 0; diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/MobGroup.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/MobGroup.java index 0edde73ed7..88cc4a5599 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/MobGroup.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/MobGroup.java @@ -80,17 +80,29 @@ public final class MobGroup switch (mobGroupAI.getAlternateAI()) { case L2ControllableMobAI.AI_NORMAL: + { return "Idle"; + } case L2ControllableMobAI.AI_FORCEATTACK: + { return "Force Attacking"; + } case L2ControllableMobAI.AI_FOLLOW: + { return "Following"; + } case L2ControllableMobAI.AI_CAST: + { return "Casting"; + } case L2ControllableMobAI.AI_ATTACK_GROUP: + { return "Attacking Group"; + } default: + { return "Idle"; + } } } catch (Exception e) diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java index 12aee02933..c6db05b905 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java @@ -1464,29 +1464,45 @@ public class L2Attackable extends L2Npc switch (skillId) { case 4303: // Strong type x2 + { count *= 2; break; + } case 4304: // Strong type x3 + { count *= 3; break; + } case 4305: // Strong type x4 + { count *= 4; break; + } case 4306: // Strong type x5 + { count *= 5; break; + } case 4307: // Strong type x6 + { count *= 6; break; + } case 4308: // Strong type x7 + { count *= 7; break; + } case 4309: // Strong type x8 + { count *= 8; break; + } case 4310: // Strong type x9 + { count *= 9; break; + } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java index ece9ae1c59..ca2c47d35e 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -423,16 +423,20 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe switch (zone) { case PVP: + { if ((instance != null) && instance.isPvP()) { return true; } return (_zones[ZoneId.PVP.ordinal()] > 0) && (_zones[ZoneId.PEACE.ordinal()] == 0); + } case PEACE: + { if ((instance != null) && instance.isPvP()) { return false; } + } } return _zones[zone.ordinal()] > 0; } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Npc.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Npc.java index 018b30b595..744af6f9da 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Npc.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Npc.java @@ -750,6 +750,7 @@ public class L2Npc extends L2Character switch (npcId) { case 31688: + { if (player.isNoble()) { filename = Olympiad.OLYMPIAD_HTML_PATH + "noble_main.htm"; @@ -759,11 +760,13 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } case 31690: case 31769: case 31770: case 31771: case 31772: + { if (player.isHero() || player.isNoble()) { filename = Olympiad.OLYMPIAD_HTML_PATH + "hero_main.htm"; @@ -773,7 +776,9 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } case 36402: + { if (player.getOlympiadBuffCount() > 0) { filename = (player.getOlympiadBuffCount() == Config.ALT_OLY_MAX_BUFFS ? Olympiad.OLYMPIAD_HTML_PATH + "olympiad_buffs.htm" : Olympiad.OLYMPIAD_HTML_PATH + "olympiad_5buffs.htm"); @@ -783,7 +788,9 @@ public class L2Npc extends L2Character filename = Olympiad.OLYMPIAD_HTML_PATH + "olympiad_nobuffs.htm"; } break; + } case 30298: // Blacksmith Pinter + { if (player.isAcademyMember()) { filename = (getHtmlPath(npcId, 1)); @@ -793,7 +800,9 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } default: + { if (((npcId >= 31093) && (npcId <= 31094)) || ((npcId >= 31172) && (npcId <= 31201)) || ((npcId >= 31239) && (npcId <= 31254))) { return; @@ -801,6 +810,7 @@ public class L2Npc extends L2Character // Get the text of the selected HTML file in function of the npcId and of the page number filename = (getHtmlPath(npcId, val)); break; + } } // Send a Server->Client NpcHtmlMessage containing the text of the L2NpcInstance to the L2PcInstance diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java index 56c68106bc..4f7386ef47 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java @@ -128,18 +128,24 @@ public class L2FortCommanderInstance extends L2DefenderInstance switch (spawn2.getMessageId()) { case 1: + { npcString = NpcStringId.ATTACKING_THE_ENEMY_S_REINFORCEMENTS_IS_NECESSARY_TIME_TO_DIE; break; + } case 2: + { if (attacker.isSummon()) { attacker = ((L2Summon) attacker).getOwner(); } npcString = NpcStringId.EVERYONE_CONCENTRATE_YOUR_ATTACKS_ON_S1_SHOW_THE_ENEMY_YOUR_RESOLVE; break; + } case 3: + { npcString = NpcStringId.FIRE_SPIRIT_UNLEASH_YOUR_POWER_BURN_THE_ENEMY; break; + } } if (npcString != null) { diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java index 65524c5221..da8d959b4a 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java @@ -364,11 +364,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 300: + { cost = Config.FS_HPREG1_FEE; break; + } default: // 400 + { cost = Config.FS_HPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_HPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); @@ -388,11 +392,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 40: + { cost = Config.FS_MPREG1_FEE; break; + } default: // 50 + { cost = Config.FS_MPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_MPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Provides additional MP recovery for clan members in the fortress." + percent + "%"); @@ -411,11 +419,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 45: + { cost = Config.FS_EXPREG1_FEE; break; + } default: // 50 + { cost = Config.FS_EXPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_EXPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Restores the Exp of any clan member who is resurrected in the fortress." + percent + "%"); @@ -449,15 +461,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 300: + { fee = Config.FS_HPREG1_FEE; break; + } default: // 400 + { fee = Config.FS_HPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_HP, percent, fee, Config.FS_HPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_HP) == null))) { @@ -494,15 +512,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 40: + { fee = Config.FS_MPREG1_FEE; break; + } default: // 50 + { fee = Config.FS_MPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_MP, percent, fee, Config.FS_MPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_MP) == null))) { @@ -539,15 +563,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 45: + { fee = Config.FS_EXPREG1_FEE; break; + } default: // 50 + { fee = Config.FS_EXPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_EXP, percent, fee, Config.FS_EXPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_EXP) == null))) { @@ -639,11 +669,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (stage) { case 1: + { cost = Config.FS_SUPPORT1_FEE; break; + } default: + { cost = Config.FS_SUPPORT2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_SUPPORT_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Enables the use of supplementary magic."); @@ -662,11 +696,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (stage) { case 1: + { cost = Config.FS_TELE1_FEE; break; + } default: + { cost = Config.FS_TELE2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_TELE_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Teleports clan members in a fort to the target Stage " + stage + " staging area"); @@ -700,15 +738,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (lvl) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 1: + { fee = Config.FS_TELE1_FEE; break; + } default: + { fee = Config.FS_TELE2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_TELEPORT, lvl, fee, Config.FS_TELE_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_TELEPORT) == null))) { @@ -745,15 +789,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (lvl) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 1: + { fee = Config.FS_SUPPORT1_FEE; break; + } default: + { fee = Config.FS_SUPPORT2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_SUPPORT, lvl, fee, Config.FS_SUPPORT_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_SUPPORT) == null))) { diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java index fccf6a4983..22abc6ba0d 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java @@ -965,32 +965,50 @@ public final class L2PcInstance extends L2Playable switch (i) { case 0: + { result |= RelationChanged.RELATION_PARTYLEADER; // 0x10 break; + } case 1: + { result |= RelationChanged.RELATION_PARTY4; // 0x8 break; + } case 2: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY2 + RelationChanged.RELATION_PARTY1; // 0x7 break; + } case 3: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY2; // 0x6 break; + } case 4: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY1; // 0x5 break; + } case 5: + { result |= RelationChanged.RELATION_PARTY3; // 0x4 break; + } case 6: + { result |= RelationChanged.RELATION_PARTY2 + RelationChanged.RELATION_PARTY1; // 0x3 break; + } case 7: + { result |= RelationChanged.RELATION_PARTY2; // 0x2 break; + } case 8: + { result |= RelationChanged.RELATION_PARTY1; // 0x1 break; + } } } } @@ -12109,17 +12127,25 @@ public final class L2PcInstance extends L2Playable switch (getPrivateStoreType()) { case SELL: + { activeChar.sendPacket(new PrivateStoreMsgSell(this)); break; + } case PACKAGE_SELL: + { activeChar.sendPacket(new ExPrivateStoreSetWholeMsg(this)); break; + } case BUY: + { activeChar.sendPacket(new PrivateStoreMsgBuy(this)); break; + } case MANUFACTURE: + { activeChar.sendPacket(new RecipeShopMsg(this)); break; + } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java index b32df6283d..8db80cb5a0 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java @@ -72,14 +72,20 @@ public class L2PetManagerInstance extends L2MerchantInstance switch (val) { case 1: + { exchange(player, 7585, 6650); break; + } case 2: + { exchange(player, 7583, 6648); break; + } case 3: + { exchange(player, 7584, 6649); break; + } } return; } @@ -93,20 +99,30 @@ public class L2PetManagerInstance extends L2MerchantInstance // Info evolve(player, "curent pet summon item", "new pet summon item", "lvl required to evolve") // To ignore evolve just put value 0 where do you like example: evolve(player, 0, 9882, 55); case 1: + { ok = Evolve.doEvolve(player, this, 2375, 9882, 55); break; + } case 2: + { ok = Evolve.doEvolve(player, this, 9882, 10426, 70); break; + } case 3: + { ok = Evolve.doEvolve(player, this, 6648, 10311, 55); break; + } case 4: + { ok = Evolve.doEvolve(player, this, 6650, 10313, 55); break; + } case 5: + { ok = Evolve.doEvolve(player, this, 6649, 10312, 55); break; + } } if (!ok) { @@ -125,20 +141,30 @@ public class L2PetManagerInstance extends L2MerchantInstance { // Info evolve(player, "curent pet summon item", "new pet summon item", "lvl required to evolve") case 1: + { ok = Evolve.doRestore(player, this, 10307, 9882, 55); break; + } case 2: + { ok = Evolve.doRestore(player, this, 10611, 10426, 70); break; + } case 3: + { ok = Evolve.doRestore(player, this, 10308, 4422, 55); break; + } case 4: + { ok = Evolve.doRestore(player, this, 10309, 4423, 55); break; + } case 5: + { ok = Evolve.doRestore(player, this, 10310, 4424, 55); break; + } } if (!ok) { diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java index 9896791a73..d398e89c03 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2RaceManagerInstance.java @@ -164,6 +164,7 @@ public class L2RaceManagerInstance extends L2Npc { case 816: // SystemMessageId.TICKETS_ARE_NOW_AVAILABLE_FOR_MONSTER_RACE_S1 case 817: // SystemMessageId.NOW_SELLING_TICKETS_FOR_MONSTER_RACE_S1 + { if (_state != ACCEPTING_BETS) {// LOGGER.info("Race Initializing"); _state = ACCEPTING_BETS; @@ -171,9 +172,11 @@ public class L2RaceManagerInstance extends L2Npc } // else{LOGGER.info("Race open");} sm.addInt(_raceNumber); break; + } case 818: // SystemMessageId.TICKET_SALES_FOR_THE_MONSTER_RACE_WILL_END_IN_S1_MINUTE_S case 820: // SystemMessageId.MONSTER_RACE_S2_WILL_BEGIN_IN_S1_MINUTE_S case 823: // SystemMessageId.THE_RACE_WILL_BEGIN_IN_S1_SECOND_S + { sm.addInt(_minutes); if (type.getId() == 820) { @@ -181,24 +184,31 @@ public class L2RaceManagerInstance extends L2Npc } _minutes--; break; + } case 819: // SystemMessageId.TICKETS_SALES_ARE_CLOSED_FOR_MONSTER_RACE_S1_ODDS_ARE_POSTED + { // LOGGER.info("Sales closed"); sm.addInt(_raceNumber); _state = WAITING; _minutes = 2; break; + } case 821: // SystemMessageId.MONSTER_RACE_S1_WILL_BEGIN_IN_30_SECONDS case 822: // SystemMessageId.MONSTER_RACE_S1_IS_ABOUT_TO_BEGIN_COUNTDOWN_IN_FIVE_SECONDS case 825: // SystemMessageId.MONSTER_RACE_S1_IS_FINISHED + { sm.addInt(_raceNumber); _minutes = 5; break; + } case 826: // SystemMessageId.FIRST_PRIZE_GOES_TO_THE_PLAYER_IN_LANE_S1_SECOND_PRIZE_GOES_TO_THE_PLAYER_IN_LANE_S2 + { // LOGGER.info("Placing"); _state = RACE_END; sm.addInt(MonsterRace.getInstance().getFirstPlace()); sm.addInt(MonsterRace.getInstance().getSecondPlace()); break; + } } // _logn.info("Counter: "+minutes); // LOGGER.info("State: "+state); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java index 2e9d457f78..acf49aff2c 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java @@ -349,12 +349,14 @@ public final class L2TeleporterInstance extends L2Npc { case 32534: // Seed of Infinity case 32539: + { if (player.isFlyingMounted()) { player.sendPacket(SystemMessageId.YOU_CANNOT_ENTER_A_SEED_WHILE_IN_A_FLYING_TRANSFORMATION_STATE); return; } break; + } } if (st.countTokens() <= 0) diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index 63eade4a8e..702435946f 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -506,19 +506,33 @@ public class CharStat switch (attackAttribute) { case FIRE: + { return (int) getValue(Stats.FIRE_POWER); + } case WATER: + { return (int) getValue(Stats.WATER_POWER); + } case WIND: + { return (int) getValue(Stats.WIND_POWER); + } case EARTH: + { return (int) getValue(Stats.EARTH_POWER); + } case HOLY: + { return (int) getValue(Stats.HOLY_POWER); + } case DARK: + { return (int) getValue(Stats.DARK_POWER); + } default: + { return 0; + } } } @@ -527,19 +541,33 @@ public class CharStat switch (defenseAttribute) { case FIRE: + { return (int) getValue(Stats.FIRE_RES); + } case WATER: + { return (int) getValue(Stats.WATER_RES); + } case WIND: + { return (int) getValue(Stats.WIND_RES); + } case EARTH: + { return (int) getValue(Stats.EARTH_RES); + } case HOLY: + { return (int) getValue(Stats.HOLY_RES); + } case DARK: + { return (int) getValue(Stats.DARK_RES); + } default: + { return (int) getValue(Stats.BASE_ATTRIBUTE_RES); + } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java index 2b1c51149c..d90e834d7c 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java @@ -59,7 +59,9 @@ public class ConditionGameTime extends Condition switch (_check) { case NIGHT: + { return GameTimeController.getInstance().isNight() == _required; + } } return !_required; } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java index aa85ba6f4a..51b5921818 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java @@ -59,17 +59,29 @@ public class ConditionPlayerBaseStats extends Condition switch (_stat) { case Int: + { return player.getINT() >= _value; + } case Str: + { return player.getSTR() >= _value; + } case Con: + { return player.getCON() >= _value; + } case Dex: + { return player.getDEX() >= _value; + } case Men: + { return player.getMEN() >= _value; + } case Wit: + { return player.getWIT() >= _value; + } } return false; } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java index ef96baec75..4be5a3fc3f 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java @@ -49,39 +49,57 @@ public class ConditionPlayerState extends Condition switch (_check) { case RESTING: + { if (player != null) { return (player.isSitting() == _required); } return !_required; + } case MOVING: + { return effector.isMoving() == _required; + } case RUNNING: + { return effector.isRunning() == _required; + } case STANDING: + { if (player != null) { return (_required != (player.isSitting() || player.isMoving())); } return (_required != effector.isMoving()); + } case FLYING: + { return (effector.isFlying() == _required); + } case BEHIND: + { return (effector.isBehindTarget() == _required); + } case FRONT: + { return (effector.isInFrontOfTarget() == _required); + } case CHAOTIC: + { if (player != null) { return ((player.getReputation() < 0) == _required); } return !_required; + } case OLYMPIAD: + { if (player != null) { return (player.isInOlympiadMode() == _required); } return !_required; + } } return !_required; } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java index c161d20dac..d38ef03cf0 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java @@ -462,17 +462,23 @@ public final class BlockCheckerEngine switch (_round) { case 1: + { // Schedule second spawn round _task = ThreadPoolManager.schedule(new SpawnRound(20, 2), 60000); break; + } case 2: + { // Schedule third spawn round _task = ThreadPoolManager.schedule(new SpawnRound(14, 3), 60000); break; + } case 3: + { // Schedule Event End Count Down _task = ThreadPoolManager.schedule(new EndEvent(), 180000); break; + } } // random % 2, if == 0 will spawn a red block // if != 0, will spawn a blue block diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/Duel.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/Duel.java index 6879c073af..54e9a2c1bf 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/Duel.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/Duel.java @@ -760,6 +760,7 @@ public class Duel { case Team1Win: case Team2Surrender: + { restorePlayerConditions(false); sm = _partyDuel ? SystemMessage.getSystemMessage(SystemMessageId.C1_S_PARTY_HAS_WON_THE_DUEL) : SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_DUEL); sm.addString(_playerA.getName()); @@ -767,8 +768,10 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Team1Surrender: case Team2Win: + { restorePlayerConditions(false); sm = _partyDuel ? SystemMessage.getSystemMessage(SystemMessageId.C1_S_PARTY_HAS_WON_THE_DUEL) : SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_DUEL); sm.addString(_playerB.getName()); @@ -776,7 +779,9 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Canceled: + { stopFighting(); // Don't restore hp, mp, cp restorePlayerConditions(true); @@ -785,7 +790,9 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Timeout: + { stopFighting(); restorePlayerConditions(false); sm = SystemMessage.getSystemMessage(SystemMessageId.THE_DUEL_HAS_ENDED_IN_A_TIE); @@ -793,6 +800,7 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } } // Send end duel packet diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/FortSiege.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/FortSiege.java index 840cacddb2..43e89644c5 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/FortSiege.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/FortSiege.java @@ -627,17 +627,25 @@ public class FortSiege implements Siegable switch (spawn2.getMessageId()) { case 1: + { npcString = NpcStringId.YOU_MAY_HAVE_BROKEN_OUR_ARROWS_BUT_YOU_WILL_NEVER_BREAK_OUR_WILL_ARCHERS_RETREAT; break; + } case 2: + { npcString = NpcStringId.AIIEEEE_COMMAND_CENTER_THIS_IS_GUARD_UNIT_WE_NEED_BACKUP_RIGHT_AWAY; break; + } case 3: + { npcString = NpcStringId.AT_LAST_THE_MAGIC_CIRCLE_THAT_PROTECTS_THE_FORTRESS_HAS_WEAKENED_VOLUNTEERS_STAND_BACK; break; + } case 4: + { npcString = NpcStringId.I_FEEL_SO_MUCH_GRIEF_THAT_I_CAN_T_EVEN_TAKE_CARE_OF_MYSELF_THERE_ISN_T_ANY_REASON_FOR_ME_TO_STAY_HERE_ANY_LONGER; break; + } } if (npcString != null) { @@ -908,13 +916,19 @@ public class FortSiege implements Siegable switch (teleportWho) { case Owner: + { players = getOwnersInZone(); break; + } case Attacker: + { players = getAttackersInZone(); break; + } default: + { players = getPlayersInZone(); + } } for (L2PcInstance player : players) diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/L2Event.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/L2Event.java index 8e8479ff9a..ad93bd97a4 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/L2Event.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/entity/L2Event.java @@ -225,10 +225,15 @@ public class L2Event switch (eventState) { case OFF: + { return false; + } case STANDBY: + { return _registeredPlayers.contains(player); + } case ON: + { for (Set teamList : _teams.values()) { if (teamList.contains(player)) @@ -236,9 +241,9 @@ public class L2Event return true; } } + } } return false; - } /** @@ -343,12 +348,18 @@ public class L2Event switch (eventState) { case ON: + { return "Cannot start event, it is already on."; + } case STANDBY: + { return "Cannot start event, it is on standby mode."; + } case OFF: // Event is off, so no problem turning it on. + { eventState = EventState.STANDBY; break; + } } // Register the event at AntiFeedManager and clean it for just in case if the event is already registered. @@ -409,12 +420,18 @@ public class L2Event switch (eventState) { case ON: + { return "Cannot start event, it is already on."; + } case STANDBY: + { eventState = EventState.ON; break; + } case OFF: // Event is off, so no problem turning it on. + { return "Cannot start event, it is off. Participation start is required."; + } } // Clean the things we will use, just in case. @@ -478,8 +495,11 @@ public class L2Event switch (eventState) { case OFF: + { return "Cannot finish event, it is already off."; + } case STANDBY: + { for (L2PcInstance player : _registeredPlayers) { removeAndResetPlayer(player); @@ -494,7 +514,9 @@ public class L2Event _eventName = ""; eventState = EventState.OFF; return "The event has been stopped at STANDBY mode, all players unregistered and all event npcs unspawned."; + } case ON: + { for (Set teamList : _teams.values()) { for (L2PcInstance player : teamList) @@ -516,6 +538,7 @@ public class L2Event _eventCreator = ""; _eventInfo = ""; return "The event has been stopped, all players unregistered and all event npcs unspawned."; + } } return "The event has been successfully finished."; diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/events/AbstractScript.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/events/AbstractScript.java index 4b3521c88c..d62c0be382 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/events/AbstractScript.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/events/AbstractScript.java @@ -2517,21 +2517,31 @@ public abstract class AbstractScript extends ManagedScript implements IEventTime switch (((L2EtcItem) item).getItemType()) { case POTION: + { count *= Config.RATE_QUEST_REWARD_POTION; break; + } case ENCHT_WP: case ENCHT_AM: case SCROLL: + { count *= Config.RATE_QUEST_REWARD_SCROLL; break; + } case RECIPE: + { count *= Config.RATE_QUEST_REWARD_RECIPE; break; + } case MATERIAL: + { count *= Config.RATE_QUEST_REWARD_MATERIAL; break; + } default: + { count *= Config.RATE_QUEST_REWARD; + } } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java index 830d162a41..796283f7bf 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java @@ -336,11 +336,15 @@ public class InstanceTemplate extends ListenersContainer implements IIdentifiabl switch (_enterLocationType) { case RANDOM: + { loc = _enterLocations.get(Rnd.get(_enterLocations.size())); break; + } case FIXED: + { loc = _enterLocations.get(0); break; + } } return loc; } @@ -365,11 +369,15 @@ public class InstanceTemplate extends ListenersContainer implements IIdentifiabl switch (_exitLocationType) { case RANDOM: + { location = _exitLocations.get(Rnd.get(_exitLocations.size())); break; + } case FIXED: + { location = _exitLocations.get(0); break; + } case ORIGIN: { final PlayerVariables vars = player.getVariables(); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java index 591a4dec3a..5910f77b6f 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java @@ -49,14 +49,20 @@ public final class ConditionHasResidence extends Condition switch (params.getEnum("type", ResidenceType.class)) { case CASTLE: + { test = clan.getCastleId() == id; break; + } case FORTRESS: + { test = clan.getFortId() == id; break; + } case CLANHALL: + { test = clan.getHideoutId() == id; break; + } } return test; } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java index aaab55dec7..34c893a2b6 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java @@ -362,6 +362,7 @@ public final class ItemAuction break; } case EXTEND_BY_3_MIN: + { if (Config.ALT_ITEM_AUCTION_TIME_EXTENDS_ON_BID > 0) { if (getAndSetLastBidPlayerObjectId(player.getObjectId()) != player.getObjectId()) @@ -371,6 +372,7 @@ public final class ItemAuction } } break; + } case EXTEND_BY_CONFIG_PHASE_A: { if (getAndSetLastBidPlayerObjectId(player.getObjectId()) != player.getObjectId()) @@ -429,14 +431,17 @@ public final class ItemAuction switch (getAuctionState()) { case CREATED: + { return false; - + } case FINISHED: + { if (_startingTime < (System.currentTimeMillis() - TimeUnit.MILLISECONDS.convert(Config.ALT_ITEM_AUCTION_EXPIRED_AFTER, TimeUnit.DAYS))) { return false; } break; + } } final int playerObjId = player.getObjectId(); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java index 544091dcd5..17a9b42f56 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java @@ -245,7 +245,6 @@ public final class ItemAuctionInstance nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); break; } - case 1: { switch (auctions[0].getAuctionState()) @@ -263,23 +262,22 @@ public final class ItemAuctionInstance } break; } - case STARTED: { currentAuction = auctions[0]; nextAuction = createAuction(Math.max(currentAuction.getEndingTime() + FINISH_TIME_SPACE, System.currentTimeMillis() + START_TIME_SPACE)); break; } - case FINISHED: { currentAuction = auctions[0]; nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); break; } - default: + { throw new IllegalArgumentException(); + } } break; } @@ -287,10 +285,8 @@ public final class ItemAuctionInstance default: { Arrays.sort(auctions, Comparator.comparingLong(ItemAuction::getStartingTime).reversed()); - // just to make sure we won't skip any auction because of little different times final long currentTime = System.currentTimeMillis(); - for (ItemAuction auction : auctions) { if (auction.getAuctionState() == ItemAuctionState.STARTED) @@ -304,7 +300,6 @@ public final class ItemAuctionInstance break; // only first } } - for (ItemAuction auction : auctions) { if ((auction.getStartingTime() > currentTime) && (currentAuction != auction)) @@ -313,7 +308,6 @@ public final class ItemAuctionInstance break; } } - if (nextAuction == null) { nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); @@ -414,12 +408,10 @@ public final class ItemAuctionInstance { throw new IllegalStateException("Could not set auction state: " + ItemAuctionState.STARTED + ", expected: " + state); } - LOGGER.info(getClass().getSimpleName() + ": Auction " + _auction.getAuctionId() + " has started for instance " + _auction.getInstanceId()); checkAndSetCurrentAndNextAuction(); break; } - case STARTED: { switch (_auction.getAuctionEndingExtendState()) @@ -434,7 +426,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_3_MIN: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_3_MIN) @@ -445,7 +436,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_CONFIG_PHASE_A: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_CONFIG_PHASE_B) @@ -456,7 +446,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_CONFIG_PHASE_B: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_CONFIG_PHASE_A) @@ -479,7 +468,9 @@ public final class ItemAuctionInstance } default: + { throw new IllegalStateException("Invalid state: " + state); + } } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 300d62e998..9b6ddae51e 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -854,55 +854,99 @@ public abstract class Inventory extends ItemContainer switch (slot) { case L2Item.SLOT_UNDERWEAR: + { return PAPERDOLL_UNDER; + } case L2Item.SLOT_R_EAR: + { return PAPERDOLL_REAR; + } case L2Item.SLOT_LR_EAR: case L2Item.SLOT_L_EAR: + { return PAPERDOLL_LEAR; + } case L2Item.SLOT_NECK: + { return PAPERDOLL_NECK; + } case L2Item.SLOT_R_FINGER: case L2Item.SLOT_LR_FINGER: + { return PAPERDOLL_RFINGER; + } case L2Item.SLOT_L_FINGER: + { return PAPERDOLL_LFINGER; + } case L2Item.SLOT_HEAD: + { return PAPERDOLL_HEAD; + } case L2Item.SLOT_R_HAND: case L2Item.SLOT_LR_HAND: + { return PAPERDOLL_RHAND; + } case L2Item.SLOT_L_HAND: + { return PAPERDOLL_LHAND; + } case L2Item.SLOT_GLOVES: + { return PAPERDOLL_GLOVES; + } case L2Item.SLOT_CHEST: case L2Item.SLOT_FULL_ARMOR: case L2Item.SLOT_ALLDRESS: + { return PAPERDOLL_CHEST; + } case L2Item.SLOT_LEGS: + { return PAPERDOLL_LEGS; + } case L2Item.SLOT_FEET: + { return PAPERDOLL_FEET; + } case L2Item.SLOT_BACK: + { return PAPERDOLL_CLOAK; + } case L2Item.SLOT_HAIR: case L2Item.SLOT_HAIRALL: + { return PAPERDOLL_HAIR; + } case L2Item.SLOT_HAIR2: + { return PAPERDOLL_HAIR2; + } case L2Item.SLOT_R_BRACELET: + { return PAPERDOLL_RBRACELET; + } case L2Item.SLOT_L_BRACELET: + { return PAPERDOLL_LBRACELET; + } case L2Item.SLOT_DECO: + { return PAPERDOLL_DECO1; // return first we deal with it later + } case L2Item.SLOT_BELT: + { return PAPERDOLL_BELT; + } case L2Item.SLOT_BROOCH: + { return PAPERDOLL_BROOCH; + } case L2Item.SLOT_BROOCH_JEWEL: + { return PAPERDOLL_BROOCH_JEWEL1; + } } return -1; } @@ -1078,81 +1122,125 @@ public abstract class Inventory extends ItemContainer switch (location) { case PAPERDOLL_UNDER: + { slot = L2Item.SLOT_UNDERWEAR; break; + } case PAPERDOLL_LEAR: + { slot = L2Item.SLOT_L_EAR; break; + } case PAPERDOLL_REAR: + { slot = L2Item.SLOT_R_EAR; break; + } case PAPERDOLL_NECK: + { slot = L2Item.SLOT_NECK; break; + } case PAPERDOLL_RFINGER: + { slot = L2Item.SLOT_R_FINGER; break; + } case PAPERDOLL_LFINGER: + { slot = L2Item.SLOT_L_FINGER; break; + } case PAPERDOLL_HAIR: + { slot = L2Item.SLOT_HAIR; break; + } case PAPERDOLL_HAIR2: + { slot = L2Item.SLOT_HAIR2; break; + } case PAPERDOLL_HEAD: + { slot = L2Item.SLOT_HEAD; break; + } case PAPERDOLL_RHAND: + { slot = L2Item.SLOT_R_HAND; break; + } case PAPERDOLL_LHAND: + { slot = L2Item.SLOT_L_HAND; break; + } case PAPERDOLL_GLOVES: + { slot = L2Item.SLOT_GLOVES; break; + } case PAPERDOLL_CHEST: + { slot = item.getItem().getBodyPart(); break; + } case PAPERDOLL_LEGS: + { slot = L2Item.SLOT_LEGS; break; + } case PAPERDOLL_CLOAK: + { slot = L2Item.SLOT_BACK; break; + } case PAPERDOLL_FEET: + { slot = L2Item.SLOT_FEET; break; + } case PAPERDOLL_LBRACELET: + { slot = L2Item.SLOT_L_BRACELET; break; + } case PAPERDOLL_RBRACELET: + { slot = L2Item.SLOT_R_BRACELET; break; + } case PAPERDOLL_DECO1: case PAPERDOLL_DECO2: case PAPERDOLL_DECO3: case PAPERDOLL_DECO4: case PAPERDOLL_DECO5: case PAPERDOLL_DECO6: + { slot = L2Item.SLOT_DECO; break; + } case PAPERDOLL_BELT: + { slot = L2Item.SLOT_BELT; break; + } case PAPERDOLL_BROOCH: + { slot = L2Item.SLOT_BROOCH; break; + } case PAPERDOLL_BROOCH_JEWEL1: case PAPERDOLL_BROOCH_JEWEL2: case PAPERDOLL_BROOCH_JEWEL3: case PAPERDOLL_BROOCH_JEWEL4: case PAPERDOLL_BROOCH_JEWEL5: case PAPERDOLL_BROOCH_JEWEL6: + { slot = L2Item.SLOT_BROOCH_JEWEL; break; + } } return slot; } @@ -1230,81 +1318,129 @@ public abstract class Inventory extends ItemContainer switch (slot) { case L2Item.SLOT_L_EAR: + { pdollSlot = PAPERDOLL_LEAR; break; + } case L2Item.SLOT_R_EAR: + { pdollSlot = PAPERDOLL_REAR; break; + } case L2Item.SLOT_NECK: + { pdollSlot = PAPERDOLL_NECK; break; + } case L2Item.SLOT_R_FINGER: + { pdollSlot = PAPERDOLL_RFINGER; break; + } case L2Item.SLOT_L_FINGER: + { pdollSlot = PAPERDOLL_LFINGER; break; + } case L2Item.SLOT_HAIR: + { pdollSlot = PAPERDOLL_HAIR; break; + } case L2Item.SLOT_HAIR2: + { pdollSlot = PAPERDOLL_HAIR2; break; + } case L2Item.SLOT_HAIRALL: + { setPaperdollItem(PAPERDOLL_HAIR, null); pdollSlot = PAPERDOLL_HAIR; break; + } case L2Item.SLOT_HEAD: + { pdollSlot = PAPERDOLL_HEAD; break; + } case L2Item.SLOT_R_HAND: case L2Item.SLOT_LR_HAND: + { pdollSlot = PAPERDOLL_RHAND; break; + } case L2Item.SLOT_L_HAND: + { pdollSlot = PAPERDOLL_LHAND; break; + } case L2Item.SLOT_GLOVES: + { pdollSlot = PAPERDOLL_GLOVES; break; + } case L2Item.SLOT_CHEST: case L2Item.SLOT_ALLDRESS: case L2Item.SLOT_FULL_ARMOR: + { pdollSlot = PAPERDOLL_CHEST; break; + } case L2Item.SLOT_LEGS: + { pdollSlot = PAPERDOLL_LEGS; break; + } case L2Item.SLOT_BACK: + { pdollSlot = PAPERDOLL_CLOAK; break; + } case L2Item.SLOT_FEET: + { pdollSlot = PAPERDOLL_FEET; break; + } case L2Item.SLOT_UNDERWEAR: + { pdollSlot = PAPERDOLL_UNDER; break; + } case L2Item.SLOT_L_BRACELET: + { pdollSlot = PAPERDOLL_LBRACELET; break; + } case L2Item.SLOT_R_BRACELET: + { pdollSlot = PAPERDOLL_RBRACELET; break; + } case L2Item.SLOT_DECO: + { pdollSlot = PAPERDOLL_DECO1; break; + } case L2Item.SLOT_BELT: + { pdollSlot = PAPERDOLL_BELT; break; + } case L2Item.SLOT_BROOCH: + { pdollSlot = PAPERDOLL_BROOCH; break; + } case L2Item.SLOT_BROOCH_JEWEL: + { pdollSlot = PAPERDOLL_BROOCH_JEWEL1; break; + } default: + { LOGGER.info("Unhandled slot type: " + slot); LOGGER.info(CommonUtil.getTraceString(Thread.currentThread().getStackTrace())); + } } if (pdollSlot >= 0) { @@ -1379,7 +1515,9 @@ public abstract class Inventory extends ItemContainer case L2Item.SLOT_FEET: case L2Item.SLOT_GLOVES: case L2Item.SLOT_HEAD: + { return; + } } } @@ -1398,7 +1536,6 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_RHAND, null); } - setPaperdollItem(PAPERDOLL_LHAND, item); break; } @@ -1445,15 +1582,21 @@ public abstract class Inventory extends ItemContainer break; } case L2Item.SLOT_NECK: + { setPaperdollItem(PAPERDOLL_NECK, item); break; + } case L2Item.SLOT_FULL_ARMOR: + { setPaperdollItem(PAPERDOLL_LEGS, null); setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_CHEST: + { setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_LEGS: { // handle full armor @@ -1462,20 +1605,26 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_CHEST, null); } - setPaperdollItem(PAPERDOLL_LEGS, item); break; } case L2Item.SLOT_FEET: + { setPaperdollItem(PAPERDOLL_FEET, item); break; + } case L2Item.SLOT_GLOVES: + { setPaperdollItem(PAPERDOLL_GLOVES, item); break; + } case L2Item.SLOT_HEAD: + { setPaperdollItem(PAPERDOLL_HEAD, item); break; + } case L2Item.SLOT_HAIR: + { final L2ItemInstance hair = getPaperdollItem(PAPERDOLL_HAIR); if ((hair != null) && (hair.getItem().getBodyPart() == L2Item.SLOT_HAIRALL)) { @@ -1485,10 +1634,11 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_HAIR, null); } - setPaperdollItem(PAPERDOLL_HAIR, item); break; + } case L2Item.SLOT_HAIR2: + { final L2ItemInstance hair2 = getPaperdollItem(PAPERDOLL_HAIR); if ((hair2 != null) && (hair2.getItem().getBodyPart() == L2Item.SLOT_HAIRALL)) { @@ -1498,32 +1648,47 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_HAIR2, null); } - setPaperdollItem(PAPERDOLL_HAIR2, item); break; + } case L2Item.SLOT_HAIRALL: + { setPaperdollItem(PAPERDOLL_HAIR2, null); setPaperdollItem(PAPERDOLL_HAIR, item); break; + } case L2Item.SLOT_UNDERWEAR: + { setPaperdollItem(PAPERDOLL_UNDER, item); break; + } case L2Item.SLOT_BACK: + { setPaperdollItem(PAPERDOLL_CLOAK, item); break; + } case L2Item.SLOT_L_BRACELET: + { setPaperdollItem(PAPERDOLL_LBRACELET, item); break; + } case L2Item.SLOT_R_BRACELET: + { setPaperdollItem(PAPERDOLL_RBRACELET, item); break; + } case L2Item.SLOT_DECO: + { equipTalisman(item); break; + } case L2Item.SLOT_BELT: + { setPaperdollItem(PAPERDOLL_BELT, item); break; + } case L2Item.SLOT_ALLDRESS: + { // formal dress setPaperdollItem(PAPERDOLL_LEGS, null); setPaperdollItem(PAPERDOLL_LHAND, null); @@ -1535,14 +1700,21 @@ public abstract class Inventory extends ItemContainer setPaperdollItem(PAPERDOLL_GLOVES, null); setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_BROOCH: + { setPaperdollItem(PAPERDOLL_BROOCH, item); break; + } case L2Item.SLOT_BROOCH_JEWEL: + { equipBroochJewel(item); break; + } default: + { LOGGER.warning("Unknown body slot " + targetSlot + " for Item ID: " + item.getId()); + } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/L2Item.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/L2Item.java index 2277b05ee1..2f590854f8 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/L2Item.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/L2Item.java @@ -414,11 +414,17 @@ public abstract class L2Item extends ListenersContainer implements IIdentifiable { case TYPE2_SHIELD_ARMOR: case TYPE2_ACCESSORY: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusArmor() * ((3 * enchantLevel) - 6)); + } case TYPE2_WEAPON: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusWeapon() * ((2 * enchantLevel) - 3)); + } default: + { return _crystalCount; + } } } else if (enchantLevel > 0) @@ -427,11 +433,17 @@ public abstract class L2Item extends ListenersContainer implements IIdentifiable { case TYPE2_SHIELD_ARMOR: case TYPE2_ACCESSORY: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusArmor() * enchantLevel); + } case TYPE2_WEAPON: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusWeapon() * enchantLevel); + } default: + { return _crystalCount; + } } } else diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java index 2337da2419..a2f6ac1d4f 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java @@ -1334,20 +1334,26 @@ public final class L2ItemInstance extends L2Object switch (_mana) { case 10: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_10); sm.addItemName(_item); player.sendPacket(sm); break; + } case 5: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_5); sm.addItemName(_item); player.sendPacket(sm); break; + } case 1: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_1_IT_WILL_DISAPPEAR_SOON); sm.addItemName(_item); player.sendPacket(sm); break; + } } if (_mana == 0) // The life time has expired diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java index edbb47633b..d073bfd72a 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java @@ -187,6 +187,7 @@ public class Olympiad extends ListenersContainer switch (_period) { case 0: + { if ((_olympiadEnd == 0) || (_olympiadEnd < Calendar.getInstance().getTimeInMillis())) { setNewOlympiadEnd(); @@ -196,7 +197,9 @@ public class Olympiad extends ListenersContainer scheduleWeeklyChange(); } break; + } case 1: + { if (_validationEnd > Calendar.getInstance().getTimeInMillis()) { loadNoblesRank(); @@ -210,9 +213,12 @@ public class Olympiad extends ListenersContainer setNewOlympiadEnd(); } break; + } default: + { LOGGER.warning(getClass().getSimpleName() + ": Omg something went wrong in loading!! Period = " + _period); return; + } } try (Connection con = DatabaseFactory.getInstance().getConnection(); @@ -922,19 +928,29 @@ public class Olympiad extends ListenersContainer switch (_noblesRank.get(objId)) { case 1: + { points += Config.ALT_OLY_RANK1_POINTS; break; + } case 2: + { points += Config.ALT_OLY_RANK2_POINTS; break; + } case 3: + { points += Config.ALT_OLY_RANK3_POINTS; break; + } case 4: + { points += Config.ALT_OLY_RANK4_POINTS; break; + } default: + { points += Config.ALT_OLY_RANK5_POINTS; + } } // Win/no win matches point bonus diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java index 5f672174e0..b740357222 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java @@ -57,13 +57,19 @@ public final class OlympiadAnnouncer implements Runnable switch (task.getGame().getType()) { case NON_CLASSED: + { npcString = NpcStringId.OLYMPIAD_CLASS_FREE_INDIVIDUAL_MATCH_IS_GOING_TO_BEGIN_IN_ARENA_S1_IN_A_MOMENT; break; + } case CLASSED: + { npcString = NpcStringId.OLYMPIAD_CLASS_INDIVIDUAL_MATCH_IS_GOING_TO_BEGIN_IN_ARENA_S1_IN_A_MOMENT; break; + } default: + { continue; + } } for (L2Spawn spawn : _managers) diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java index 3f4a80a0fa..f12879ef84 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java @@ -144,9 +144,13 @@ public enum SkillOperateType case DA2: case DA4: case DA5: + { return true; + } default: + { return false; + } } } @@ -165,9 +169,13 @@ public enum SkillOperateType case DA2: case DA4: case DA5: + { return true; + } default: + { return false; + } } } @@ -234,9 +242,13 @@ public enum SkillOperateType case CA1: case CA2: case CA5: + { return true; + } default: + { return false; + } } } @@ -258,9 +270,13 @@ public enum SkillOperateType case DA3: case DA4: case DA5: + { return true; + } default: + { return false; + } } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/stats/Formulas.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/stats/Formulas.java index 99abcf8994..bc9430b32d 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/stats/Formulas.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/stats/Formulas.java @@ -590,11 +590,15 @@ public final class Formulas switch (shldSuccess) { case SHIELD_DEFENSE_SUCCEED: + { enemy.sendPacket(SystemMessageId.YOUR_SHIELD_DEFENSE_HAS_SUCCEEDED); break; + } case SHIELD_DEFENSE_PERFECT_BLOCK: + { enemy.sendPacket(SystemMessageId.YOUR_EXCELLENT_SHIELD_DEFENSE_WAS_A_SUCCESS); break; + } } } @@ -854,10 +858,14 @@ public final class Formulas switch (shld) { case SHIELD_DEFENSE_SUCCEED: + { mDef += target.getShldDef(); break; + } case SHIELD_DEFENSE_PERFECT_BLOCK: // perfect block + { return 1; + } } // Bonus Spiritshot @@ -1118,7 +1126,6 @@ public final class Formulas { // Resist Modifier. final int cancelMagicLvl = skill.getMagicLevel(); - if (activeChar.isDebug()) { final StatsSet set = new StatsSet(); @@ -1128,7 +1135,6 @@ public final class Formulas set.set("rate", rate); Debug.sendSkillDebug(activeChar, target, skill, set); } - // Prevent initialization. final List buffs = target.getEffectList().hasBuffs() ? new ArrayList<>(target.getEffectList().getBuffs()) : new ArrayList<>(1); if (target.getEffectList().hasTriggered()) @@ -1360,13 +1366,21 @@ public final class Formulas switch (resist.getResistLevel()) { case 0: + { return 1.0; + } case 1: + { return 0.6; + } case 2: + { return 0.3; + } default: + { return 0; + } } } @@ -1508,13 +1522,19 @@ public final class Formulas switch (attackType) { case BOW: + { return (1500 * 345) / activeChar.getPAtkSpd(); + } case CROSSBOW: case TWOHANDCROSSBOW: + { return (1200 * 345) / activeChar.getPAtkSpd(); + } case DAGGER: + { // atkSpd /= 1.15; break; + } } return calcPAtkSpd(activeChar.getPAtkSpd()); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java index dae0cb10f9..8a54b645b0 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java @@ -50,16 +50,24 @@ public abstract class L2ZoneRespawn extends L2ZoneType switch (type) { case "other": + { addOtherSpawn(x, y, z); break; + } case "chaotic": + { addChaoticSpawn(x, y, z); break; + } case "banish": + { addBanishSpawn(x, y, z); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown location type: " + type); + } } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java index 53947b8169..fa49f8fe8e 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java @@ -75,24 +75,37 @@ public final class L2EffectZone extends L2ZoneType switch (name) { case "chance": + { _chance = Integer.parseInt(value); break; + } case "initialDelay": + { _initialDelay = Integer.parseInt(value); break; + } case "reuse": + { _reuse = Integer.parseInt(value); break; + } case "bypassSkillConditions": + { _bypassConditions = Boolean.parseBoolean(value); break; + } case "maxDynamicSkillCount": + { _skills = new ConcurrentHashMap<>(Integer.parseInt(value)); break; + } case "showDangerIcon": + { _isShowDangerIcon = Boolean.parseBoolean(value); break; + } case "skillIdLvl": + { final String[] propertySplit = value.split(";"); _skills = new ConcurrentHashMap<>(propertySplit.length); for (String skill : propertySplit) @@ -118,6 +131,7 @@ public final class L2EffectZone extends L2ZoneType } } break; + } default: { super.setParameter(name, value); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/L2GameClient.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/L2GameClient.java index 6bc536e28a..f0fc7726d3 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/L2GameClient.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/L2GameClient.java @@ -669,13 +669,21 @@ public final class L2GameClient extends ChannelInboundHandler switch (state) { case CONNECTED: + { return "[IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } case AUTHENTICATED: + { return "[Account: " + getAccountName() + " - IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } case IN_GAME: + { return "[Character: " + (getActiveChar() == null ? "disconnected" : getActiveChar().getName() + "[" + getActiveChar().getObjectId() + "]") + " - Account: " + getAccountName() + " - IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } default: + { throw new IllegalStateException("Missing state on switch"); + } } } catch (NullPointerException e) diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java index d24c043f23..bf1369b884 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java @@ -66,13 +66,17 @@ public final class CharacterDelete implements IClientIncomingPacket switch (failType) { case NONE:// Success! + { client.sendPacket(new CharDeleteSuccess()); final CharSelectInfoPackage charInfo = client.getCharSelection(_charSlot); EventDispatcher.getInstance().notifyEvent(new OnPlayerDelete(charInfo.getObjectId(), charInfo.getName(), client), Containers.Players()); break; + } default: + { client.sendPacket(new CharDeleteFail(failType)); break; + } } } catch (Exception e) diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java index 03f82be21d..e20dfd2ce4 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java @@ -74,6 +74,7 @@ public class MoveToLocationAirShip implements IClientIncomingPacket switch (_command) { case 0: + { if (!ship.canBeControlled()) { return; @@ -83,14 +84,18 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(_param1, _param2, z)); } break; + } case 1: + { if (!ship.canBeControlled()) { return; } ship.getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); break; + } case 2: + { if (!ship.canBeControlled()) { return; @@ -101,7 +106,9 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(ship.getX(), ship.getY(), z)); } break; + } case 3: + { if (!ship.canBeControlled()) { return; @@ -112,7 +119,9 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(ship.getX(), ship.getY(), z)); } break; + } case 4: + { if (!ship.isInDock() || ship.isMoving()) { return; @@ -138,6 +147,7 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.executePath(dst); break; + } } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java index caaa9f4faf..a008d4b0a7 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java @@ -114,6 +114,7 @@ public final class RequestActionUse implements IClientIncomingPacket switch (_actionId) { case 51: // General Manufacture + { // Player shouldn't be able to set stores if he/she is alike dead (dead or fake death) if (activeChar.isAlikeDead()) { @@ -139,9 +140,12 @@ public final class RequestActionUse implements IClientIncomingPacket client.sendPacket(new RecipeShopManageList(activeChar, false)); break; + } default: + { _log.warning(activeChar.getName() + ": unhandled action type " + _actionId); break; + } } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java index 95fd1aa66c..06bfa3c200 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java @@ -61,6 +61,7 @@ public final class RequestBlock implements IClientIncomingPacket { case BLOCK: case UNBLOCK: + { // can't use block/unblock for locating invisible characters if (targetId <= 0) { @@ -90,19 +91,28 @@ public final class RequestBlock implements IClientIncomingPacket BlockList.removeFromBlockList(activeChar, targetId); } break; + } case BLOCKLIST: + { BlockList.sendListToOwner(activeChar); break; + } case ALLBLOCK: + { activeChar.sendPacket(SystemMessageId.MESSAGE_REFUSAL_MODE); BlockList.setBlockAll(activeChar, true); break; + } case ALLUNBLOCK: + { activeChar.sendPacket(SystemMessageId.MESSAGE_ACCEPTANCE_MODE); BlockList.setBlockAll(activeChar, false); break; + } default: + { _log.info("Unknown 0xA9 block type: " + _type); + } } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java index 68f3ac2c1c..27e73c4de3 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java @@ -53,11 +53,15 @@ public final class RequestExCubeGameChangeTeam implements IClientIncomingPacket { case 0: case 1: + { // Change Player Team HandysBlockCheckerManager.getInstance().changePlayerToTeam(player, _arena, _team); break; + } case -1: + { // Remove Player (me) + } { final int team = HandysBlockCheckerManager.getInstance().getHolder(_arena).getPlayerTeam(player); // client sends two times this packet if click on exit @@ -69,8 +73,10 @@ public final class RequestExCubeGameChangeTeam implements IClientIncomingPacket break; } default: + { _log.warning("Wrong Cube Game Team ID: " + _team); break; + } } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java index 0c7271d8a5..ca230610ed 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java @@ -52,15 +52,21 @@ public final class RequestExCubeGameReadyAnswer implements IClientIncomingPacket switch (_answer) { case 0: + { // Cancel - Answer No break; + } case 1: + { // OK or Time Over HandysBlockCheckerManager.getInstance().increaseArenaVotes(_arena); break; + } default: + { _log.warning("Unknown Cube Game Answer ID: " + _answer); break; + } } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java index d66d6376c8..b1ae7171e1 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java @@ -320,17 +320,25 @@ public class RequestExEnchantItemAttribute implements IClientIncomingPacket { case Stone: case Roughore: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_STONE; break; + } case Crystal: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_CRYSTAL; break; + } case Jewel: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_JEWEL; break; + } case Energy: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_ENERGY; break; + } } } } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java index b651077122..260c32c7cc 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java @@ -70,63 +70,91 @@ public class RequestCommissionList implements IClientIncomingPacket switch (_treeViewDepth) { case 1: + { final CommissionTreeType commissionTreeType = CommissionTreeType.findByClientId(_itemType); if (commissionTreeType != null) { filter = filter.and(i -> commissionTreeType.getCommissionItemTypes().contains(i.getCommissionItemType())); } break; + } case 2: + { final CommissionItemType commissionItemType = CommissionItemType.findByClientId(_itemType); if (commissionItemType != null) { filter = filter.and(i -> i.getCommissionItemType() == commissionItemType); } break; + } } switch (_type) { case 0: // General + { filter = filter.and(i -> true); // TODO: condition break; + } case 1: // Rare + { filter = filter.and(i -> true); // TODO: condition break; + } } switch (_grade) { case 0: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.NONE); break; + } case 1: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.D); break; + } case 2: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.C); break; + } case 3: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.B); break; + } case 4: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.A); break; + } case 5: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.S); break; + } case 6: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.S80); break; + } case 7: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R); break; + } case 8: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R95); break; + } case 9: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R99); break; + } } filter = filter.and(i -> _query.isEmpty() || i.getName().toLowerCase().contains(_query.toLowerCase())); diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java index 53693bd214..099ecc9e7f 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java @@ -59,43 +59,65 @@ public class ExShowFortressSiegeInfo implements IClientOutgoingPacket switch (_csize) { case 3: + { switch (_csize2) { case 0: + { packet.writeD(0x03); break; + } case 1: + { packet.writeD(0x02); break; + } case 2: + { packet.writeD(0x01); break; + } case 3: + { packet.writeD(0x00); break; + } } break; + } case 4: // TODO: change 4 to 5 once control room supported + { switch (_csize2) - // TODO: once control room supported, update packet.writeD(0x0x) to support 5th room { + // TODO: once control room supported, update packet.writeD(0x0x) to support 5th room case 0: + { packet.writeD(0x05); break; + } case 1: + { packet.writeD(0x04); break; + } case 2: + { packet.writeD(0x03); break; + } case 3: + { packet.writeD(0x02); break; + } case 4: + { packet.writeD(0x01); break; + } } break; + } } } else diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java index 7eb34ca17a..ab5d73f244 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java @@ -80,10 +80,15 @@ public final class JavaExecutionContext extends AbstractExecutionContext switch (opcode) { case 0x07: + { packet = new AuthGameGuard(); break; + } default: + { debugOpcode(opcode, state); break; + } } break; } @@ -65,11 +69,15 @@ public final class L2LoginPacketHandler implements IPacketHandler switch (opcode) { case 0x00: + { packet = new RequestAuthLogin(); break; + } default: + { debugOpcode(opcode, state); break; + } } break; } diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java index f68dbeac9a..670a1da820 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java @@ -141,6 +141,7 @@ public class RequestAuthLogin extends L2LoginClientPacket switch (result) { case AUTH_SUCCESS: + { client.setAccount(info.getLogin()); client.setState(LoginClientState.AUTHED_LOGIN); client.setSessionKey(lc.assignSessionKeyToClient(info.getLogin(), client)); @@ -154,13 +155,19 @@ public class RequestAuthLogin extends L2LoginClientPacket client.sendPacket(new ServerList(client)); } break; + } case INVALID_PASSWORD: + { client.close(LoginFailReason.REASON_USER_OR_PASS_WRONG); break; + } case ACCOUNT_BANNED: + { client.close(new AccountKicked(AccountKickedReason.REASON_PERMANENTLY_BANNED)); return; + } case ALREADY_ON_LS: + { final L2LoginClient oldClient = lc.getAuthedClient(info.getLogin()); if (oldClient != null) { @@ -171,12 +178,13 @@ public class RequestAuthLogin extends L2LoginClientPacket // kick also current client client.close(LoginFailReason.REASON_ACCOUNT_IN_USE); break; + } case ALREADY_ON_GS: + { final GameServerInfo gsi = lc.getAccountOnGameServer(info.getLogin()); if (gsi != null) { client.close(LoginFailReason.REASON_ACCOUNT_IN_USE); - // kick from there if (gsi.isAuthed()) { @@ -184,6 +192,7 @@ public class RequestAuthLogin extends L2LoginClientPacket } } break; + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java index da6402acdf..6f5f88e5a8 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleChamberlain/CastleChamberlain.java @@ -205,20 +205,30 @@ public final class CastleChamberlain extends AbstractNpcAI switch (func) { case Castle.FUNC_RESTORE_EXP: + { fee = (level == 45) ? Config.CS_EXPREG1_FEE : Config.CS_EXPREG2_FEE; break; + } case Castle.FUNC_RESTORE_HP: + { fee = (level == 300) ? Config.CS_HPREG1_FEE : Config.CS_HPREG2_FEE; break; + } case Castle.FUNC_RESTORE_MP: + { fee = (level == 40) ? Config.CS_MPREG1_FEE : Config.CS_MPREG2_FEE; break; + } case Castle.FUNC_SUPPORT: + { fee = (level == 5) ? Config.CS_SUPPORT1_FEE : Config.CS_SUPPORT2_FEE; break; + } case Castle.FUNC_TELEPORT: + { fee = (level == 1) ? Config.CS_TELE1_FEE : Config.CS_TELE2_FEE; break; + } } return fee; } @@ -229,20 +239,30 @@ public final class CastleChamberlain extends AbstractNpcAI switch (func) { case Castle.FUNC_RESTORE_EXP: + { ratio = Config.CS_EXPREG_FEE_RATIO; break; + } case Castle.FUNC_RESTORE_HP: + { ratio = Config.CS_HPREG_FEE_RATIO; break; + } case Castle.FUNC_RESTORE_MP: + { ratio = Config.CS_MPREG_FEE_RATIO; break; + } case Castle.FUNC_SUPPORT: + { ratio = Config.CS_SUPPORT_FEE_RATIO; break; + } case Castle.FUNC_TELEPORT: + { ratio = Config.CS_TELE_FEE_RATIO; break; + } } return ratio; } @@ -257,14 +277,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.OUTER_DOOR_UPGRADE_PRICE2; break; + } case 3: + { price = Config.OUTER_DOOR_UPGRADE_PRICE3; break; + } case 5: + { price = Config.OUTER_DOOR_UPGRADE_PRICE5; break; + } } break; } @@ -273,14 +299,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.INNER_DOOR_UPGRADE_PRICE2; break; + } case 3: + { price = Config.INNER_DOOR_UPGRADE_PRICE3; break; + } case 5: + { price = Config.INNER_DOOR_UPGRADE_PRICE5; break; + } } break; } @@ -289,14 +321,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 2: + { price = Config.WALL_UPGRADE_PRICE2; break; + } case 3: + { price = Config.WALL_UPGRADE_PRICE3; break; + } case 5: + { price = Config.WALL_UPGRADE_PRICE5; break; + } } break; } @@ -310,17 +348,25 @@ public final class CastleChamberlain extends AbstractNpcAI switch (level) { case 1: + { price = Config.TRAP_UPGRADE_PRICE1; break; + } case 2: + { price = Config.TRAP_UPGRADE_PRICE2; break; + } case 3: + { price = Config.TRAP_UPGRADE_PRICE3; break; + } case 4: + { price = Config.TRAP_UPGRADE_PRICE4; break; + } } return price; } @@ -379,14 +425,20 @@ public final class CastleChamberlain extends AbstractNpcAI switch (fortress.getFortState()) { case 1: + { fortStatus = "1300122"; break; + } case 2: + { fortStatus = "1300124"; break; + } default: + { fortStatus = "1300123"; break; + } } sb.append("1300" + fortId + ""); sb.append(" (" + fortType + ")"); @@ -1144,15 +1196,22 @@ public final class CastleChamberlain extends AbstractNpcAI switch (evt.getRequest()) { case 3: // Seed info + { player.sendPacket(new ExShowSeedInfo(castleId, evt.isNextPeriod(), true)); break; + } case 4: // Crop info + { player.sendPacket(new ExShowCropInfo(castleId, evt.isNextPeriod(), true)); break; + } case 5: // Basic info + { player.sendPacket(new ExShowManorDefaultInfo(true)); break; + } case 7: // Seed settings + { if (manor.isManorApproved()) { player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM); @@ -1160,7 +1219,9 @@ public final class CastleChamberlain extends AbstractNpcAI } player.sendPacket(new ExShowSeedSetting(castleId)); break; + } case 8: // Crop settings + { if (manor.isManorApproved()) { player.sendPacket(SystemMessageId.A_MANOR_CANNOT_BE_SET_UP_BETWEEN_4_30_AM_AND_8_PM); @@ -1168,8 +1229,11 @@ public final class CastleChamberlain extends AbstractNpcAI } player.sendPacket(new ExShowCropSetting(castleId)); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Player " + player.getName() + " (" + player.getObjectId() + ") send unknown request id " + evt.getRequest() + "!"); + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java index c7cd273165..00f6f17b30 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleTeleporter/CastleTeleporter.java @@ -103,25 +103,35 @@ public final class CastleTeleporter extends AbstractNpcAI final int unknowInt = Integer.parseInt(st.nextToken()); final StatsSet npcParams = npc.getParameters(); Location teleLoc = null; - switch (unknowInt) { case 0: + { teleLoc = getTeleportLocation(npcParams, "01", "02", "03"); break; + } case 1: + { teleLoc = getTeleportLocation(npcParams, "11", "12", "13"); break; + } case 2: + { teleLoc = getTeleportLocation(npcParams, "21", "22", "23"); break; + } case 3: + { teleLoc = getTeleportLocation(npcParams, "31", "32", "33"); break; + } case 4: + { teleLoc = getTeleportLocation(npcParams, "41", "42", "43"); break; + } case 5: + { if (isOwner(player, npc)) { teleLoc = new Location(npcParams.getInt("pos_x51"), npcParams.getInt("pos_y51"), npcParams.getInt("pos_z51")); @@ -131,6 +141,7 @@ public final class CastleTeleporter extends AbstractNpcAI return "CastleTeleporter-noAuthority.html"; } break; + } } if (teleLoc != null) @@ -209,7 +220,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35308: case 35352: case 35544: + { return "CastleTeleporter-01"; + } case 35093: case 35135: case 35177: @@ -217,7 +230,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35309: case 35353: case 35545: + { return "CastleTeleporter-02"; + } case 35094: case 35136: case 35178: @@ -225,7 +240,9 @@ public final class CastleTeleporter extends AbstractNpcAI case 35310: case 35354: case 35546: + { return "CastleTeleporter-03"; + } } return String.valueOf(npc.getId()); } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java index 2e04e99770..e4af53361b 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/CastleWarehouse/CastleWarehouse.java @@ -61,11 +61,16 @@ public final class CastleWarehouse extends AbstractNpcAI case "warehouse-01.html": case "warehouse-02.html": case "warehouse-03.html": + { break; + } case "warehouse-04.html": + { htmltext = (!isMyLord) ? "warehouse-no.html" : getHtm(player.getHtmlPrefix(), "warehouse-04.html").replace("%blood%", Integer.toString(player.getClan().getBloodAllianceCount())); break; + } case "Receive": + { if (!isMyLord) { htmltext = "warehouse-no.html"; @@ -81,7 +86,9 @@ public final class CastleWarehouse extends AbstractNpcAI htmltext = "warehouse-06.html"; } break; + } case "Exchange": + { if (!isMyLord) { htmltext = "warehouse-no.html"; @@ -97,9 +104,12 @@ public final class CastleWarehouse extends AbstractNpcAI htmltext = "warehouse-07.html"; } break; + } default: + { htmltext = null; break; + } } return htmltext; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java index 5c069122e1..679944e552 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/ai/others/ClanHallManager/ClanHallManager.java @@ -272,10 +272,14 @@ public final class ClanHallManager extends AbstractNpcAI case 1: case 2: case 3: + { ((L2MerchantInstance) npc).showBuyWindow(player, Integer.parseInt(npc.getId() + "0" + (itemLevel - 1))); break; + } default: + { htmltext = "ClanHallManager-noFunction.html"; + } } break; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java index 7478b44a46..0e5f83d5d2 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminClanHall.java @@ -86,13 +86,19 @@ public final class AdminClanHall implements IAdminCommandHandler switch (actionVal) { case "inside": + { loc = clanHall.getOwnerLocation(); break; + } case "outside": + { loc = clanHall.getBanishLocation(); break; + } default: + { loc = player.getLocation(); + } } player.teleToLocation(loc); } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java index 214f3fcca7..af8911c09b 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminLogin.java @@ -192,26 +192,40 @@ public class AdminLogin implements IAdminCommandHandler switch (currentType) { case 0x01: + { nameType += "Normal"; break; + } case 0x02: + { nameType += "Relax"; break; + } case 0x04: + { nameType += "Test"; break; + } case 0x08: + { nameType += "NoLabel"; break; + } case 0x10: + { nameType += "Restricted"; break; + } case 0x20: + { nameType += "Event"; break; + } case 0x40: + { nameType += "Free"; break; + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java index bb357a155b..1daf6a0ff9 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminPForge.java @@ -128,34 +128,50 @@ public final class AdminPForge implements IAdminCommandHandler case 'B': case 'x': case 'X': + { // array break; + } case 'c': case 'C': + { // byte break; + } case 'h': case 'H': + { // word break; + } case 'd': case 'D': + { // dword break; + } case 'q': case 'Q': + { // qword break; + } case 'f': case 'F': + { // double break; + } case 's': case 'S': + { // string break; + } default: + { return false; + } } } @@ -169,7 +185,9 @@ public final class AdminPForge implements IAdminCommandHandler case "sc": case "sb": case "cs": + { return true; + } } return false; @@ -401,9 +419,12 @@ public final class AdminPForge implements IAdminCommandHandler switch (value) { case "$oid": + { value = String.valueOf(activeChar.getObjectId()); break; + } case "$boid": + { boat = activeChar.getBoat(); if (boat != null) { @@ -414,28 +435,44 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$title": + { value = activeChar.getTitle(); break; + } case "$name": + { value = activeChar.getName(); break; + } case "$x": + { value = String.valueOf(activeChar.getX()); break; + } case "$y": + { value = String.valueOf(activeChar.getY()); break; + } case "$z": + { value = String.valueOf(activeChar.getZ()); break; + } case "$heading": + { value = String.valueOf(activeChar.getHeading()); break; + } case "$toid": + { value = String.valueOf(activeChar.getTargetId()); break; + } case "$tboid": + { target = activeChar.getTarget(); if ((target != null) && (target instanceof L2Playable)) { @@ -450,7 +487,9 @@ public final class AdminPForge implements IAdminCommandHandler } } break; + } case "$ttitle": + { target = activeChar.getTarget(); if ((target != null) && (target instanceof L2Character)) { @@ -461,7 +500,9 @@ public final class AdminPForge implements IAdminCommandHandler value = ""; } break; + } case "$tname": + { target = activeChar.getTarget(); if (target != null) { @@ -472,7 +513,9 @@ public final class AdminPForge implements IAdminCommandHandler value = ""; } break; + } case "$tx": + { target = activeChar.getTarget(); if (target != null) { @@ -483,7 +526,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$ty": + { target = activeChar.getTarget(); if (target != null) { @@ -494,7 +539,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$tz": + { target = activeChar.getTarget(); if (target != null) { @@ -505,7 +552,9 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } case "$theading": + { target = activeChar.getTarget(); if (target != null) { @@ -516,6 +565,7 @@ public final class AdminPForge implements IAdminCommandHandler value = "0"; } break; + } } if (method.equals("sc") || method.equals("sb")) diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java index 42ba371a4d..28eee47848 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminSpawn.java @@ -375,14 +375,20 @@ public class AdminSpawn implements IAdminCommandHandler { default: case 0: + { _log.info("('',1," + i + "," + x + "," + y + "," + z + ",0,0," + h + ",60,0,0),"); break; + } case 1: + { _log.info(""); break; + } case 2: + { _log.info("{ " + i + ", " + x + ", " + y + ", " + z + ", " + h + " },"); break; + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java index fbf049aae5..7eda72c449 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/admincommandhandlers/AdminTeleport.java @@ -328,23 +328,35 @@ public class AdminTeleport implements IAdminCommandHandler switch (player.getRace()) { case ELF: + { regionName = "elf_town"; break; + } case DARK_ELF: + { regionName = "darkelf_town"; break; + } case ORC: + { regionName = "orc_town"; break; + } case DWARF: + { regionName = "dwarf_town"; break; + } case KAMAEL: + { regionName = "kamael_town"; break; + } case HUMAN: default: + { regionName = "talking_island_town"; + } } player.teleToLocation(MapRegionManager.getInstance().getMapRegionByName(regionName).getSpawnLoc(), true, null); diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/bypasshandlers/Augment.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/bypasshandlers/Augment.java index 95ce308a32..6f3cdd671a 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/bypasshandlers/Augment.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/bypasshandlers/Augment.java @@ -44,11 +44,15 @@ public class Augment implements IBypassHandler switch (Integer.parseInt(command.substring(8, 9).trim())) { case 1: + { activeChar.sendPacket(ExShowVariationMakeWindow.STATIC_PACKET); return true; + } case 2: + { activeChar.sendPacket(ExShowVariationCancelWindow.STATIC_PACKET); return true; + } } } catch (Exception e) diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java index 440a9d3a54..4eba81bf89 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/effecthandlers/KarmaCount.java @@ -78,11 +78,15 @@ public class KarmaCount extends AbstractEffect switch (_mode) { case 0: // diff + { final int newReputation = Math.min(player.getReputation() + _amount, 0); player.setReputation(newReputation); break; + } case 1: // reset + { player.setReputation(0); + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/itemhandlers/EventItem.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/itemhandlers/EventItem.java index 7e0a15c2bf..e7c5629cc7 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/itemhandlers/EventItem.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/itemhandlers/EventItem.java @@ -48,13 +48,19 @@ public class EventItem implements IItemHandler switch (itemId) { case 13787: // Handy's Block Checker Bond + { used = useBlockCheckerItem(activeChar, item); break; + } case 13788: // Handy's Block Checker Land Mine + { used = useBlockCheckerItem(activeChar, item); break; + } default: + { _log.warning("EventItemHandler: Item with id: " + itemId + " is not handled"); + } } return used; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/playeractions/SocialAction.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/playeractions/SocialAction.java index 3b46c485a5..1e34a0d148 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/playeractions/SocialAction.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/playeractions/SocialAction.java @@ -57,18 +57,24 @@ public final class SocialAction implements IPlayerActionHandler case 15: // Shyness case 28: // Propose case 29: // Provoke + { useSocial(activeChar, data.getOptionId()); break; + } case 30: // Beauty Shop + { if (useSocial(activeChar, data.getOptionId())) { activeChar.broadcastInfo(); } break; + } case 16: // Exchange Bows case 17: // High Five case 18: // Couple Dance + { useCoupleSocial(activeChar, data.getOptionId()); + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java index 89ee884a61..991a11774d 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/telnethandlers/player/Enchant.java @@ -62,53 +62,85 @@ public class Enchant implements ITelnetCommand switch (itemType) { case 1: + { itemType = Inventory.PAPERDOLL_HEAD; break; + } case 2: + { itemType = Inventory.PAPERDOLL_CHEST; break; + } case 3: + { itemType = Inventory.PAPERDOLL_GLOVES; break; + } case 4: + { itemType = Inventory.PAPERDOLL_FEET; break; + } case 5: + { itemType = Inventory.PAPERDOLL_LEGS; break; + } case 6: + { itemType = Inventory.PAPERDOLL_RHAND; break; + } case 7: + { itemType = Inventory.PAPERDOLL_LHAND; break; + } case 8: + { itemType = Inventory.PAPERDOLL_LEAR; break; + } case 9: + { itemType = Inventory.PAPERDOLL_REAR; break; + } case 10: + { itemType = Inventory.PAPERDOLL_LFINGER; break; + } case 11: + { itemType = Inventory.PAPERDOLL_RFINGER; break; + } case 12: + { itemType = Inventory.PAPERDOLL_NECK; break; + } case 13: + { itemType = Inventory.PAPERDOLL_UNDER; break; + } case 14: + { itemType = Inventory.PAPERDOLL_CLOAK; break; + } case 15: + { itemType = Inventory.PAPERDOLL_BELT; break; + } default: + { itemType = 0; break; + } } final boolean success = setEnchant(player, enchant, itemType); return success ? "Item has been successfully enchanted." : "Failed to enchant player's item!"; diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java index 901e00370f..6d91a979b8 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/usercommandhandlers/PartyInfo.java @@ -47,20 +47,30 @@ public class PartyInfo implements IUserCommandHandler switch (party.getDistributionType()) { case FINDERS_KEEPERS: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_FINDERS_KEEPERS); break; + } case RANDOM: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_RANDOM); break; + } case RANDOM_INCLUDING_SPOIL: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_RANDOM_INCLUDING_SPOIL); break; + } case BY_TURN: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_BY_TURN); break; + } case BY_TURN_INCLUDING_SPOIL: + { activeChar.sendPacket(SystemMessageId.LOOTING_METHOD_BY_TURN_INCLUDING_SPOIL); break; + } } // Not used in Infinite Odissey diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java index 98986c7bb2..0d58722682 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/voicedcommandhandlers/CastleVCmd.java @@ -41,6 +41,7 @@ public class CastleVCmd implements IVoicedCommandHandler switch (command) { case "opendoors": + { if (!params.equals("castle")) { activeChar.sendMessage("Only Castle doors can be open."); @@ -79,7 +80,9 @@ public class CastleVCmd implements IVoicedCommandHandler door.openMe(); } break; + } case "closedoors": + { if (!params.equals("castle")) { activeChar.sendMessage("Only Castle doors can be closed."); @@ -115,12 +118,15 @@ public class CastleVCmd implements IVoicedCommandHandler door2.closeMe(); } break; + } case "ridewyvern": + { if (activeChar.isClanLeader() && (activeChar.getClan().getCastleId() > 0)) { activeChar.mount(12621, 0, true); } break; + } } return true; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/commons/util/Rnd.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/commons/util/Rnd.java index ddef918e21..8570d4598a 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/commons/util/Rnd.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/commons/util/Rnd.java @@ -355,16 +355,21 @@ public final class Rnd switch (type) { case UNSECURE_ATOMIC: + { return new RandomContainer(new Random()); - + } case UNSECURE_VOLATILE: + { return new RandomContainer(new NonAtomicRandom()); - + } case UNSECURE_THREAD_LOCAL: + { return new RandomContainer(new ThreadLocalRandom()); - + } case SECURE: + { return new RandomContainer(new SecureRandom()); + } } throw new IllegalArgumentException(); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/FortUpdater.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/FortUpdater.java index 863af2077b..b38bb8eb81 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/FortUpdater.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/FortUpdater.java @@ -58,6 +58,7 @@ public class FortUpdater implements Runnable switch (_updaterType) { case PERIODIC_UPDATE: + { _runCount++; if ((_fort.getOwnerClan() == null) || (_fort.getOwnerClan() != _clan)) { @@ -81,7 +82,9 @@ public class FortUpdater implements Runnable } _fort.saveFortVariables(); break; + } case MAX_OWN_TIME: + { if ((_fort.getOwnerClan() == null) || (_fort.getOwnerClan() != _clan)) { return; @@ -92,6 +95,7 @@ public class FortUpdater implements Runnable _fort.setFortState(0, 0); } break; + } } } catch (Exception e) diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/LoginServerThread.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/LoginServerThread.java index 8dc65cbfb1..d30e398c7d 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/LoginServerThread.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/LoginServerThread.java @@ -210,6 +210,7 @@ public class LoginServerThread extends Thread switch (packetType) { case 0x00: + { final InitLS init = new InitLS(incoming); if (init.getRevision() != REVISION) { @@ -238,12 +239,16 @@ public class LoginServerThread extends Thread _blowfish = new NewCrypt(blowfishKey); sendPacket(new AuthRequest(_requestID, _acceptAlternate, _hexID, _gamePort, _reserveHost, _maxPlayer, _subnets, _hosts)); break; + } case 0x01: + { final LoginServerFail lsf = new LoginServerFail(incoming); LOGGER.info(getClass().getSimpleName() + ": Damn! Registeration Failed: " + lsf.getReasonString()); // login will close the connection here break; + } case 0x02: + { final AuthResponse aresp = new AuthResponse(incoming); final int serverID = aresp.getServerId(); _serverName = aresp.getServerName(); @@ -290,7 +295,9 @@ public class LoginServerThread extends Thread sendPacket(new PlayerInGame(playerList)); } break; + } case 0x03: + { final PlayerAuthResponse par = new PlayerAuthResponse(incoming); final String account = par.getAccount(); WaitingClient wcToRemove = null; @@ -327,17 +334,24 @@ public class LoginServerThread extends Thread _waitingClients.remove(wcToRemove); } break; + } case 0x04: + { final KickPlayer kp = new KickPlayer(incoming); doKickPlayer(kp.getAccount()); break; + } case 0x05: + { final RequestCharacters rc = new RequestCharacters(incoming); getCharsOnServer(rc.getAccount()); break; + } case 0x06: + { new ChangePasswordResponse(incoming); break; + } } } } @@ -724,31 +738,45 @@ public class LoginServerThread extends Thread switch (status) { case ServerStatus.STATUS_AUTO: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_AUTO); _status = status; break; + } case ServerStatus.STATUS_DOWN: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_DOWN); _status = status; break; + } case ServerStatus.STATUS_FULL: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_FULL); _status = status; break; + } case ServerStatus.STATUS_GM_ONLY: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_GM_ONLY); _status = status; break; + } case ServerStatus.STATUS_GOOD: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_GOOD); _status = status; break; + } case ServerStatus.STATUS_NORMAL: + { sendServerStatus(ServerStatus.SERVER_LIST_STATUS, ServerStatus.STATUS_NORMAL); _status = status; break; + } default: + { throw new IllegalArgumentException("Status does not exists:" + status); + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java index 82b4667113..a14fe8797e 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/ai/DoppelgangerAI.java @@ -133,14 +133,20 @@ public class DoppelgangerAI extends L2CharacterAI switch (getIntention()) { case AI_INTENTION_ATTACK: + { thinkAttack(); break; + } case AI_INTENTION_CAST: + { thinkCast(); break; + } case AI_INTENTION_INTERACT: + { thinkInteract(); break; + } } } finally @@ -173,7 +179,9 @@ public class DoppelgangerAI extends L2CharacterAI case AI_INTENTION_IDLE: case AI_INTENTION_MOVE_TO: case AI_INTENTION_PICK_UP: + { getActor().followSummoner(_startFollow); + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java index cbfe69dc4b..57c95bd40e 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/ai/L2AttackableAI.java @@ -1094,14 +1094,20 @@ public class L2AttackableAI extends L2CharacterAI implements Runnable switch (getIntention()) { case AI_INTENTION_ACTIVE: + { thinkActive(); break; + } case AI_INTENTION_ATTACK: + { thinkAttack(); break; + } case AI_INTENTION_CAST: + { thinkCast(); break; + } } } catch (Exception e) diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java index e7ca4d2583..f63498b55a 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/data/xml/impl/NpcData.java @@ -129,8 +129,10 @@ public class NpcData implements IGameXmlReader } case "race": case "sex": + { set.set(npc_node.getNodeName(), npc_node.getTextContent().toUpperCase()); break; + } case "equipment": { set.set("chestId", parseInteger(attrs, "chest")); @@ -218,23 +220,35 @@ public class NpcData implements IGameXmlReader switch (attackAttributeType.toUpperCase()) { case "FIRE": + { set.set("baseFire", parseInteger(attrs, "value")); break; + } case "WATER": + { set.set("baseWater", parseInteger(attrs, "value")); break; + } case "WIND": + { set.set("baseWind", parseInteger(attrs, "value")); break; + } case "EARTH": + { set.set("baseEarth", parseInteger(attrs, "value")); break; + } case "DARK": + { set.set("baseDark", parseInteger(attrs, "value")); break; + } case "HOLY": + { set.set("baseHoly", parseInteger(attrs, "value")); break; + } } break; } @@ -279,8 +293,10 @@ public class NpcData implements IGameXmlReader break; } case "hit_time": + { set.set("hit_time", npc_node.getTextContent()); // TODO: Implement me default 600 (value in ms) break; + } } } break; diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java index c42db18ad8..34eb9f0517 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/data/xml/impl/SkillTreesData.java @@ -1175,41 +1175,65 @@ public final class SkillTreesData implements IGameXmlReader switch (skillType) { case CLASS: + { sl = getClassSkill(id, lvl, player.getClassId()); break; + } case TRANSFORM: + { sl = getTransformSkill(id, lvl); break; + } case FISHING: + { sl = getFishingSkill(id, lvl); break; + } case PLEDGE: + { sl = getPledgeSkill(id, lvl); break; + } case SUBPLEDGE: + { sl = getSubPledgeSkill(id, lvl); break; + } case TRANSFER: + { sl = getTransferSkill(id, lvl, player.getClassId()); break; + } case SUBCLASS: + { sl = getSubClassSkill(id, lvl); break; + } case COLLECT: + { sl = getCollectSkill(id, lvl); break; + } case REVELATION: + { sl = getRevelationSkill(SubclassType.BASECLASS, id, lvl); break; + } case REVELATION_DUALCLASS: + { sl = getRevelationSkill(SubclassType.DUALCLASS, id, lvl); break; + } case ALCHEMY: + { sl = getAlchemySkill(id, lvl); break; + } case DUALCLASS: + { sl = getDualClassSkill(id, lvl); break; + } } return sl; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/datatables/AugmentationData.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/datatables/AugmentationData.java index 7f068bc9f9..d3986bac64 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/datatables/AugmentationData.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/datatables/AugmentationData.java @@ -496,19 +496,29 @@ public class AugmentationData switch (lifeStoneGrade) { case AbstractRefinePacket.GRADE_NONE: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_NG_CHANCE; break; + } case AbstractRefinePacket.GRADE_MID: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_MID_CHANCE; break; + } case AbstractRefinePacket.GRADE_HIGH: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_HIGH_CHANCE; break; + } case AbstractRefinePacket.GRADE_TOP: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_TOP_CHANCE; break; + } default: + { gradeChance = Config.RETAIL_LIKE_AUGMENTATION_NG_CHANCE; + } } int c = Rnd.get(100); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java index 2e64596385..0b8070e37b 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/CastleManorManager.java @@ -260,6 +260,7 @@ public final class CastleManorManager implements IGameXmlReader, IStorable switch (_mode) { case MODIFIABLE: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_APPROVE_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_APPROVE_MIN); if (_nextModeChange.before(Calendar.getInstance())) @@ -267,14 +268,19 @@ public final class CastleManorManager implements IGameXmlReader, IStorable _nextModeChange.add(Calendar.DATE, 1); } break; + } case MAINTENANCE: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_REFRESH_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_REFRESH_MIN + Config.ALT_MANOR_MAINTENANCE_MIN); break; + } case APPROVED: + { _nextModeChange.set(Calendar.HOUR_OF_DAY, Config.ALT_MANOR_REFRESH_TIME); _nextModeChange.set(Calendar.MINUTE, Config.ALT_MANOR_REFRESH_MIN); break; + } } // Schedule mode change ThreadPoolManager.schedule(this::changeMode, (_nextModeChange.getTimeInMillis() - System.currentTimeMillis())); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java index 4f5183877e..c6537d2d80 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/GraciaSeedsManager.java @@ -51,20 +51,28 @@ public final class GraciaSeedsManager switch (seedType) { case SODTYPE: + { // Seed of Destruction GlobalVariablesManager.getInstance().set("SoDState", _SoDState); GlobalVariablesManager.getInstance().set("SoDTiatKilled", _SoDTiatKilled); GlobalVariablesManager.getInstance().set("SoDLSCDate", _SoDLastStateChangeDate.getTimeInMillis()); break; + } case SOITYPE: + { // Seed of Infinity break; + } case SOATYPE: + { // Seed of Annihilation break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown SeedType in SaveData: " + seedType); break; + } } } @@ -89,9 +97,12 @@ public final class GraciaSeedsManager switch (_SoDState) { case 1: + { // do nothing, players should kill Tiat a few times break; + } case 2: + { // Conquest Complete state, if too much time is passed than change to defense state final long timePast = System.currentTimeMillis() - _SoDLastStateChangeDate.getTimeInMillis(); if (timePast >= Config.SOD_STAGE_2_LENGTH) @@ -104,12 +115,17 @@ public final class GraciaSeedsManager ThreadPoolManager.schedule(new UpdateSoDStateTask(), Config.SOD_STAGE_2_LENGTH - timePast); } break; + } case 3: + { // not implemented setSoDState(1, true); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown Seed of Destruction state(" + _SoDState + ")! "); + } } } @@ -177,15 +193,23 @@ public final class GraciaSeedsManager switch (_SoDState) { case 1: + { return -1; + } case 2: + { return ((_SoDLastStateChangeDate.getTimeInMillis() + Config.SOD_STAGE_2_LENGTH) - System.currentTimeMillis()); + } case 3: + { // not implemented yet return -1; + } default: + { // this should not happen! return -1; + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/TownManager.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/TownManager.java index a39f01d3ca..b0543eb11a 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/TownManager.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/instancemanager/TownManager.java @@ -27,25 +27,45 @@ public final class TownManager switch (townId) { case 912: + { return 1; + } case 916: + { return 2; + } case 918: + { return 3; + } case 922: + { return 4; + } case 924: + { return 5; + } case 926: + { return 6; + } case 1538: + { return 7; + } case 1537: + { return 8; + } case 1714: + { return 9; + } default: + { return 0; + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2Clan.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2Clan.java index e7f6838bc6..169c3b5de6 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2Clan.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2Clan.java @@ -568,58 +568,86 @@ public class L2Clan implements IIdentifiable, INamable switch (pledgeType) { case 0: + { switch (getLevel()) { case 3: + { limit = 30; break; + } case 2: + { limit = 20; break; + } case 1: + { limit = 15; break; + } case 0: + { limit = 10; break; + } default: + { limit = 40; break; + } } break; + } case -1: + { limit = 20; break; + } case 100: case 200: + { switch (getLevel()) { case 11: + { limit = 30; break; + } default: + { limit = 20; break; + } } break; + } case 1001: case 1002: case 2001: case 2002: + { switch (getLevel()) { case 9: case 10: case 11: + { limit = 25; break; + } default: + { limit = 10; break; + } } break; + } default: + { break; + } } return limit; @@ -1904,23 +1932,37 @@ public class L2Clan implements IIdentifiable, INamable switch (pledgeType) { case SUBUNIT_ACADEMY: + { return 0; + } case SUBUNIT_ROYAL1: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_ROYAL2); break; + } case SUBUNIT_ROYAL2: + { return 0; + } case SUBUNIT_KNIGHT1: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT2); break; + } case SUBUNIT_KNIGHT2: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT3); break; + } case SUBUNIT_KNIGHT3: + { pledgeType = getAvailablePledgeTypes(SUBUNIT_KNIGHT4); break; + } case SUBUNIT_KNIGHT4: + { return 0; + } } } return pledgeType; @@ -2594,6 +2636,7 @@ public class L2Clan implements IIdentifiable, INamable break; } case 5: + { // Upgrade to 6 if ((getReputationScore() >= Config.CLAN_LEVEL_6_COST) && (getMembersCount() >= Config.CLAN_LEVEL_6_REQUIREMENT)) { @@ -2604,8 +2647,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; - + } case 6: + { // Upgrade to 7 if ((getReputationScore() >= Config.CLAN_LEVEL_7_COST) && (getMembersCount() >= Config.CLAN_LEVEL_7_REQUIREMENT)) { @@ -2616,7 +2660,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } case 7: + { // Upgrade to 8 if ((getReputationScore() >= Config.CLAN_LEVEL_8_COST) && (getMembersCount() >= Config.CLAN_LEVEL_8_REQUIREMENT)) { @@ -2627,7 +2673,9 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } case 8: + { // Upgrade to 9 if ((getReputationScore() >= Config.CLAN_LEVEL_9_COST) && (player.getInventory().getItemByItemId(9910) != null) && (getMembersCount() >= Config.CLAN_LEVEL_9_REQUIREMENT)) { @@ -2646,7 +2694,9 @@ public class L2Clan implements IIdentifiable, INamable } } break; + } case 9: + { // Upgrade to 10 if ((getReputationScore() >= Config.CLAN_LEVEL_10_COST) && (player.getInventory().getItemByItemId(9911) != null) && (getMembersCount() >= Config.CLAN_LEVEL_10_REQUIREMENT)) { @@ -2665,7 +2715,9 @@ public class L2Clan implements IIdentifiable, INamable } } break; + } case 10: + { // Upgrade to 11 if ((getReputationScore() >= Config.CLAN_LEVEL_11_COST) && (getMembersCount() >= Config.CLAN_LEVEL_11_REQUIREMENT)) { @@ -2676,8 +2728,11 @@ public class L2Clan implements IIdentifiable, INamable increaseClanLevel = true; } break; + } default: + { return false; + } } if (!increaseClanLevel) diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2ClanMember.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2ClanMember.java index df4b387c8c..daef76108a 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2ClanMember.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2ClanMember.java @@ -430,12 +430,15 @@ public class L2ClanMember switch (clan.getLevel()) { case 4: + { if (player.isClanLeader()) { pledgeClass = 3; } break; + } case 5: + { if (player.isClanLeader()) { pledgeClass = 4; @@ -445,17 +448,24 @@ public class L2ClanMember pledgeClass = 2; } break; + } case 6: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 2; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 5; @@ -466,34 +476,48 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 4; break; + } case -1: default: + { pledgeClass = 3; break; + } } } break; + } } break; + } case 7: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 3; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 2; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 7; @@ -504,40 +528,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 6; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 5; break; + } case -1: default: + { pledgeClass = 4; break; + } } } break; + } } break; + } case 8: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 4; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 3; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 8; @@ -548,40 +588,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 7; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 6; break; + } case -1: default: + { pledgeClass = 5; break; + } } } break; + } } break; + } case 9: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 5; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 4; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 9; @@ -592,40 +648,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 8; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 7; break; + } case -1: default: + { pledgeClass = 6; break; + } } } break; + } } break; + } case 10: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 6; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 5; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 10; @@ -636,40 +708,56 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 9; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 8; break; + } case -1: default: + { pledgeClass = 7; break; + } } } break; + } } break; + } case 11: + { switch (player.getPledgeType()) { case -1: + { pledgeClass = 1; break; + } case 100: case 200: + { pledgeClass = 7; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 6; break; + } case 0: + { if (player.isClanLeader()) { pledgeClass = 11; @@ -680,26 +768,36 @@ public class L2ClanMember { case 100: case 200: + { pledgeClass = 10; break; + } case 1001: case 1002: case 2001: case 2002: + { pledgeClass = 9; break; + } case -1: default: + { pledgeClass = 8; break; + } } } break; + } } break; + } default: + { pledgeClass = 1; break; + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2PetLevelData.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2PetLevelData.java index 306696fabd..43ab57e9ac 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2PetLevelData.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/L2PetLevelData.java @@ -200,17 +200,29 @@ public class L2PetLevelData switch (stat) { case WALK_SPEED: + { return _walkSpeedOnRide; + } case RUN_SPEED: + { return _runSpeedOnRide; + } case SWIM_WALK_SPEED: + { return _slowSwimSpeedOnRide; + } case SWIM_RUN_SPEED: + { return _fastSwimSpeedOnRide; + } case FLY_RUN_SPEED: + { return _slowFlySpeedOnRide; + } case FLY_WALK_SPEED: + { return _fastFlySpeedOnRide; + } } return 0; diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/MobGroup.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/MobGroup.java index 0edde73ed7..88cc4a5599 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/MobGroup.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/MobGroup.java @@ -80,17 +80,29 @@ public final class MobGroup switch (mobGroupAI.getAlternateAI()) { case L2ControllableMobAI.AI_NORMAL: + { return "Idle"; + } case L2ControllableMobAI.AI_FORCEATTACK: + { return "Force Attacking"; + } case L2ControllableMobAI.AI_FOLLOW: + { return "Following"; + } case L2ControllableMobAI.AI_CAST: + { return "Casting"; + } case L2ControllableMobAI.AI_ATTACK_GROUP: + { return "Attacking Group"; + } default: + { return "Idle"; + } } } catch (Exception e) diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java index 12aee02933..c6db05b905 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Attackable.java @@ -1464,29 +1464,45 @@ public class L2Attackable extends L2Npc switch (skillId) { case 4303: // Strong type x2 + { count *= 2; break; + } case 4304: // Strong type x3 + { count *= 3; break; + } case 4305: // Strong type x4 + { count *= 4; break; + } case 4306: // Strong type x5 + { count *= 5; break; + } case 4307: // Strong type x6 + { count *= 6; break; + } case 4308: // Strong type x7 + { count *= 7; break; + } case 4309: // Strong type x8 + { count *= 8; break; + } case 4310: // Strong type x9 + { count *= 9; break; + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java index ece9ae1c59..ca2c47d35e 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -423,16 +423,20 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe switch (zone) { case PVP: + { if ((instance != null) && instance.isPvP()) { return true; } return (_zones[ZoneId.PVP.ordinal()] > 0) && (_zones[ZoneId.PEACE.ordinal()] == 0); + } case PEACE: + { if ((instance != null) && instance.isPvP()) { return false; } + } } return _zones[zone.ordinal()] > 0; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Npc.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Npc.java index 018b30b595..744af6f9da 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Npc.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Npc.java @@ -750,6 +750,7 @@ public class L2Npc extends L2Character switch (npcId) { case 31688: + { if (player.isNoble()) { filename = Olympiad.OLYMPIAD_HTML_PATH + "noble_main.htm"; @@ -759,11 +760,13 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } case 31690: case 31769: case 31770: case 31771: case 31772: + { if (player.isHero() || player.isNoble()) { filename = Olympiad.OLYMPIAD_HTML_PATH + "hero_main.htm"; @@ -773,7 +776,9 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } case 36402: + { if (player.getOlympiadBuffCount() > 0) { filename = (player.getOlympiadBuffCount() == Config.ALT_OLY_MAX_BUFFS ? Olympiad.OLYMPIAD_HTML_PATH + "olympiad_buffs.htm" : Olympiad.OLYMPIAD_HTML_PATH + "olympiad_5buffs.htm"); @@ -783,7 +788,9 @@ public class L2Npc extends L2Character filename = Olympiad.OLYMPIAD_HTML_PATH + "olympiad_nobuffs.htm"; } break; + } case 30298: // Blacksmith Pinter + { if (player.isAcademyMember()) { filename = (getHtmlPath(npcId, 1)); @@ -793,7 +800,9 @@ public class L2Npc extends L2Character filename = (getHtmlPath(npcId, val)); } break; + } default: + { if (((npcId >= 31093) && (npcId <= 31094)) || ((npcId >= 31172) && (npcId <= 31201)) || ((npcId >= 31239) && (npcId <= 31254))) { return; @@ -801,6 +810,7 @@ public class L2Npc extends L2Character // Get the text of the selected HTML file in function of the npcId and of the page number filename = (getHtmlPath(npcId, val)); break; + } } // Send a Server->Client NpcHtmlMessage containing the text of the L2NpcInstance to the L2PcInstance diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java index 56c68106bc..4f7386ef47 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2FortCommanderInstance.java @@ -128,18 +128,24 @@ public class L2FortCommanderInstance extends L2DefenderInstance switch (spawn2.getMessageId()) { case 1: + { npcString = NpcStringId.ATTACKING_THE_ENEMY_S_REINFORCEMENTS_IS_NECESSARY_TIME_TO_DIE; break; + } case 2: + { if (attacker.isSummon()) { attacker = ((L2Summon) attacker).getOwner(); } npcString = NpcStringId.EVERYONE_CONCENTRATE_YOUR_ATTACKS_ON_S1_SHOW_THE_ENEMY_YOUR_RESOLVE; break; + } case 3: + { npcString = NpcStringId.FIRE_SPIRIT_UNLEASH_YOUR_POWER_BURN_THE_ENEMY; break; + } } if (npcString != null) { diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java index 65524c5221..da8d959b4a 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2FortManagerInstance.java @@ -364,11 +364,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 300: + { cost = Config.FS_HPREG1_FEE; break; + } default: // 400 + { cost = Config.FS_HPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_HPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); @@ -388,11 +392,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 40: + { cost = Config.FS_MPREG1_FEE; break; + } default: // 50 + { cost = Config.FS_MPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_MPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Provides additional MP recovery for clan members in the fortress." + percent + "%"); @@ -411,11 +419,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 45: + { cost = Config.FS_EXPREG1_FEE; break; + } default: // 50 + { cost = Config.FS_EXPREG2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_EXPREG_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Restores the Exp of any clan member who is resurrected in the fortress." + percent + "%"); @@ -449,15 +461,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 300: + { fee = Config.FS_HPREG1_FEE; break; + } default: // 400 + { fee = Config.FS_HPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_HP, percent, fee, Config.FS_HPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_HP) == null))) { @@ -494,15 +512,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 40: + { fee = Config.FS_MPREG1_FEE; break; + } default: // 50 + { fee = Config.FS_MPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_MP, percent, fee, Config.FS_MPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_MP) == null))) { @@ -539,15 +563,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (percent) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 45: + { fee = Config.FS_EXPREG1_FEE; break; + } default: // 50 + { fee = Config.FS_EXPREG2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_RESTORE_EXP, percent, fee, Config.FS_EXPREG_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_RESTORE_EXP) == null))) { @@ -639,11 +669,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (stage) { case 1: + { cost = Config.FS_SUPPORT1_FEE; break; + } default: + { cost = Config.FS_SUPPORT2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_SUPPORT_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Enables the use of supplementary magic."); @@ -662,11 +696,15 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (stage) { case 1: + { cost = Config.FS_TELE1_FEE; break; + } default: + { cost = Config.FS_TELE2_FEE; break; + } } html.replace("%cost%", cost + "Adena /" + (Config.FS_TELE_FEE_RATIO / 1000 / 60 / 60 / 24) + " Day)"); html.replace("%use%", "Teleports clan members in a fort to the target Stage " + stage + " staging area"); @@ -700,15 +738,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (lvl) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 1: + { fee = Config.FS_TELE1_FEE; break; + } default: + { fee = Config.FS_TELE2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_TELEPORT, lvl, fee, Config.FS_TELE_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_TELEPORT) == null))) { @@ -745,15 +789,21 @@ public class L2FortManagerInstance extends L2MerchantInstance switch (lvl) { case 0: + { fee = 0; html.setFile(player.getHtmlPrefix(), "data/html/fortress/functions-cancel_confirmed.htm"); break; + } case 1: + { fee = Config.FS_SUPPORT1_FEE; break; + } default: + { fee = Config.FS_SUPPORT2_FEE; break; + } } if (!getFort().updateFunctions(player, Fort.FUNC_SUPPORT, lvl, fee, Config.FS_SUPPORT_FEE_RATIO, (getFort().getFortFunction(Fort.FUNC_SUPPORT) == null))) { diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java index fccf6a4983..22abc6ba0d 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PcInstance.java @@ -965,32 +965,50 @@ public final class L2PcInstance extends L2Playable switch (i) { case 0: + { result |= RelationChanged.RELATION_PARTYLEADER; // 0x10 break; + } case 1: + { result |= RelationChanged.RELATION_PARTY4; // 0x8 break; + } case 2: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY2 + RelationChanged.RELATION_PARTY1; // 0x7 break; + } case 3: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY2; // 0x6 break; + } case 4: + { result |= RelationChanged.RELATION_PARTY3 + RelationChanged.RELATION_PARTY1; // 0x5 break; + } case 5: + { result |= RelationChanged.RELATION_PARTY3; // 0x4 break; + } case 6: + { result |= RelationChanged.RELATION_PARTY2 + RelationChanged.RELATION_PARTY1; // 0x3 break; + } case 7: + { result |= RelationChanged.RELATION_PARTY2; // 0x2 break; + } case 8: + { result |= RelationChanged.RELATION_PARTY1; // 0x1 break; + } } } } @@ -12109,17 +12127,25 @@ public final class L2PcInstance extends L2Playable switch (getPrivateStoreType()) { case SELL: + { activeChar.sendPacket(new PrivateStoreMsgSell(this)); break; + } case PACKAGE_SELL: + { activeChar.sendPacket(new ExPrivateStoreSetWholeMsg(this)); break; + } case BUY: + { activeChar.sendPacket(new PrivateStoreMsgBuy(this)); break; + } case MANUFACTURE: + { activeChar.sendPacket(new RecipeShopMsg(this)); break; + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java index b32df6283d..8db80cb5a0 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2PetManagerInstance.java @@ -72,14 +72,20 @@ public class L2PetManagerInstance extends L2MerchantInstance switch (val) { case 1: + { exchange(player, 7585, 6650); break; + } case 2: + { exchange(player, 7583, 6648); break; + } case 3: + { exchange(player, 7584, 6649); break; + } } return; } @@ -93,20 +99,30 @@ public class L2PetManagerInstance extends L2MerchantInstance // Info evolve(player, "curent pet summon item", "new pet summon item", "lvl required to evolve") // To ignore evolve just put value 0 where do you like example: evolve(player, 0, 9882, 55); case 1: + { ok = Evolve.doEvolve(player, this, 2375, 9882, 55); break; + } case 2: + { ok = Evolve.doEvolve(player, this, 9882, 10426, 70); break; + } case 3: + { ok = Evolve.doEvolve(player, this, 6648, 10311, 55); break; + } case 4: + { ok = Evolve.doEvolve(player, this, 6650, 10313, 55); break; + } case 5: + { ok = Evolve.doEvolve(player, this, 6649, 10312, 55); break; + } } if (!ok) { @@ -125,20 +141,30 @@ public class L2PetManagerInstance extends L2MerchantInstance { // Info evolve(player, "curent pet summon item", "new pet summon item", "lvl required to evolve") case 1: + { ok = Evolve.doRestore(player, this, 10307, 9882, 55); break; + } case 2: + { ok = Evolve.doRestore(player, this, 10611, 10426, 70); break; + } case 3: + { ok = Evolve.doRestore(player, this, 10308, 4422, 55); break; + } case 4: + { ok = Evolve.doRestore(player, this, 10309, 4423, 55); break; + } case 5: + { ok = Evolve.doRestore(player, this, 10310, 4424, 55); break; + } } if (!ok) { diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java index 2e9d457f78..acf49aff2c 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/instance/L2TeleporterInstance.java @@ -349,12 +349,14 @@ public final class L2TeleporterInstance extends L2Npc { case 32534: // Seed of Infinity case 32539: + { if (player.isFlyingMounted()) { player.sendPacket(SystemMessageId.YOU_CANNOT_ENTER_A_SEED_WHILE_IN_A_FLYING_TRANSFORMATION_STATE); return; } break; + } } if (st.countTokens() <= 0) diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java index 63eade4a8e..702435946f 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/stat/CharStat.java @@ -506,19 +506,33 @@ public class CharStat switch (attackAttribute) { case FIRE: + { return (int) getValue(Stats.FIRE_POWER); + } case WATER: + { return (int) getValue(Stats.WATER_POWER); + } case WIND: + { return (int) getValue(Stats.WIND_POWER); + } case EARTH: + { return (int) getValue(Stats.EARTH_POWER); + } case HOLY: + { return (int) getValue(Stats.HOLY_POWER); + } case DARK: + { return (int) getValue(Stats.DARK_POWER); + } default: + { return 0; + } } } @@ -527,19 +541,33 @@ public class CharStat switch (defenseAttribute) { case FIRE: + { return (int) getValue(Stats.FIRE_RES); + } case WATER: + { return (int) getValue(Stats.WATER_RES); + } case WIND: + { return (int) getValue(Stats.WIND_RES); + } case EARTH: + { return (int) getValue(Stats.EARTH_RES); + } case HOLY: + { return (int) getValue(Stats.HOLY_RES); + } case DARK: + { return (int) getValue(Stats.DARK_RES); + } default: + { return (int) getValue(Stats.BASE_ATTRIBUTE_RES); + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java index 2b1c51149c..d90e834d7c 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionGameTime.java @@ -59,7 +59,9 @@ public class ConditionGameTime extends Condition switch (_check) { case NIGHT: + { return GameTimeController.getInstance().isNight() == _required; + } } return !_required; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java index aa85ba6f4a..51b5921818 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerBaseStats.java @@ -59,17 +59,29 @@ public class ConditionPlayerBaseStats extends Condition switch (_stat) { case Int: + { return player.getINT() >= _value; + } case Str: + { return player.getSTR() >= _value; + } case Con: + { return player.getCON() >= _value; + } case Dex: + { return player.getDEX() >= _value; + } case Men: + { return player.getMEN() >= _value; + } case Wit: + { return player.getWIT() >= _value; + } } return false; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java index ef96baec75..4be5a3fc3f 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/conditions/ConditionPlayerState.java @@ -49,39 +49,57 @@ public class ConditionPlayerState extends Condition switch (_check) { case RESTING: + { if (player != null) { return (player.isSitting() == _required); } return !_required; + } case MOVING: + { return effector.isMoving() == _required; + } case RUNNING: + { return effector.isRunning() == _required; + } case STANDING: + { if (player != null) { return (_required != (player.isSitting() || player.isMoving())); } return (_required != effector.isMoving()); + } case FLYING: + { return (effector.isFlying() == _required); + } case BEHIND: + { return (effector.isBehindTarget() == _required); + } case FRONT: + { return (effector.isInFrontOfTarget() == _required); + } case CHAOTIC: + { if (player != null) { return ((player.getReputation() < 0) == _required); } return !_required; + } case OLYMPIAD: + { if (player != null) { return (player.isInOlympiadMode() == _required); } return !_required; + } } return !_required; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java index c161d20dac..d38ef03cf0 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/BlockCheckerEngine.java @@ -462,17 +462,23 @@ public final class BlockCheckerEngine switch (_round) { case 1: + { // Schedule second spawn round _task = ThreadPoolManager.schedule(new SpawnRound(20, 2), 60000); break; + } case 2: + { // Schedule third spawn round _task = ThreadPoolManager.schedule(new SpawnRound(14, 3), 60000); break; + } case 3: + { // Schedule Event End Count Down _task = ThreadPoolManager.schedule(new EndEvent(), 180000); break; + } } // random % 2, if == 0 will spawn a red block // if != 0, will spawn a blue block diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/Duel.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/Duel.java index 6879c073af..54e9a2c1bf 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/Duel.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/Duel.java @@ -760,6 +760,7 @@ public class Duel { case Team1Win: case Team2Surrender: + { restorePlayerConditions(false); sm = _partyDuel ? SystemMessage.getSystemMessage(SystemMessageId.C1_S_PARTY_HAS_WON_THE_DUEL) : SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_DUEL); sm.addString(_playerA.getName()); @@ -767,8 +768,10 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Team1Surrender: case Team2Win: + { restorePlayerConditions(false); sm = _partyDuel ? SystemMessage.getSystemMessage(SystemMessageId.C1_S_PARTY_HAS_WON_THE_DUEL) : SystemMessage.getSystemMessage(SystemMessageId.C1_HAS_WON_THE_DUEL); sm.addString(_playerB.getName()); @@ -776,7 +779,9 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Canceled: + { stopFighting(); // Don't restore hp, mp, cp restorePlayerConditions(true); @@ -785,7 +790,9 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } case Timeout: + { stopFighting(); restorePlayerConditions(false); sm = SystemMessage.getSystemMessage(SystemMessageId.THE_DUEL_HAS_ENDED_IN_A_TIE); @@ -793,6 +800,7 @@ public class Duel broadcastToTeam1(sm); broadcastToTeam2(sm); break; + } } // Send end duel packet diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/FortSiege.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/FortSiege.java index 840cacddb2..43e89644c5 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/FortSiege.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/FortSiege.java @@ -627,17 +627,25 @@ public class FortSiege implements Siegable switch (spawn2.getMessageId()) { case 1: + { npcString = NpcStringId.YOU_MAY_HAVE_BROKEN_OUR_ARROWS_BUT_YOU_WILL_NEVER_BREAK_OUR_WILL_ARCHERS_RETREAT; break; + } case 2: + { npcString = NpcStringId.AIIEEEE_COMMAND_CENTER_THIS_IS_GUARD_UNIT_WE_NEED_BACKUP_RIGHT_AWAY; break; + } case 3: + { npcString = NpcStringId.AT_LAST_THE_MAGIC_CIRCLE_THAT_PROTECTS_THE_FORTRESS_HAS_WEAKENED_VOLUNTEERS_STAND_BACK; break; + } case 4: + { npcString = NpcStringId.I_FEEL_SO_MUCH_GRIEF_THAT_I_CAN_T_EVEN_TAKE_CARE_OF_MYSELF_THERE_ISN_T_ANY_REASON_FOR_ME_TO_STAY_HERE_ANY_LONGER; break; + } } if (npcString != null) { @@ -908,13 +916,19 @@ public class FortSiege implements Siegable switch (teleportWho) { case Owner: + { players = getOwnersInZone(); break; + } case Attacker: + { players = getAttackersInZone(); break; + } default: + { players = getPlayersInZone(); + } } for (L2PcInstance player : players) diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/L2Event.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/L2Event.java index 8e8479ff9a..ad93bd97a4 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/L2Event.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/entity/L2Event.java @@ -225,10 +225,15 @@ public class L2Event switch (eventState) { case OFF: + { return false; + } case STANDBY: + { return _registeredPlayers.contains(player); + } case ON: + { for (Set teamList : _teams.values()) { if (teamList.contains(player)) @@ -236,9 +241,9 @@ public class L2Event return true; } } + } } return false; - } /** @@ -343,12 +348,18 @@ public class L2Event switch (eventState) { case ON: + { return "Cannot start event, it is already on."; + } case STANDBY: + { return "Cannot start event, it is on standby mode."; + } case OFF: // Event is off, so no problem turning it on. + { eventState = EventState.STANDBY; break; + } } // Register the event at AntiFeedManager and clean it for just in case if the event is already registered. @@ -409,12 +420,18 @@ public class L2Event switch (eventState) { case ON: + { return "Cannot start event, it is already on."; + } case STANDBY: + { eventState = EventState.ON; break; + } case OFF: // Event is off, so no problem turning it on. + { return "Cannot start event, it is off. Participation start is required."; + } } // Clean the things we will use, just in case. @@ -478,8 +495,11 @@ public class L2Event switch (eventState) { case OFF: + { return "Cannot finish event, it is already off."; + } case STANDBY: + { for (L2PcInstance player : _registeredPlayers) { removeAndResetPlayer(player); @@ -494,7 +514,9 @@ public class L2Event _eventName = ""; eventState = EventState.OFF; return "The event has been stopped at STANDBY mode, all players unregistered and all event npcs unspawned."; + } case ON: + { for (Set teamList : _teams.values()) { for (L2PcInstance player : teamList) @@ -516,6 +538,7 @@ public class L2Event _eventCreator = ""; _eventInfo = ""; return "The event has been stopped, all players unregistered and all event npcs unspawned."; + } } return "The event has been successfully finished."; diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/events/AbstractScript.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/events/AbstractScript.java index 4b3521c88c..d62c0be382 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/events/AbstractScript.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/events/AbstractScript.java @@ -2517,21 +2517,31 @@ public abstract class AbstractScript extends ManagedScript implements IEventTime switch (((L2EtcItem) item).getItemType()) { case POTION: + { count *= Config.RATE_QUEST_REWARD_POTION; break; + } case ENCHT_WP: case ENCHT_AM: case SCROLL: + { count *= Config.RATE_QUEST_REWARD_SCROLL; break; + } case RECIPE: + { count *= Config.RATE_QUEST_REWARD_RECIPE; break; + } case MATERIAL: + { count *= Config.RATE_QUEST_REWARD_MATERIAL; break; + } default: + { count *= Config.RATE_QUEST_REWARD; + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java index 830d162a41..796283f7bf 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/instancezone/InstanceTemplate.java @@ -336,11 +336,15 @@ public class InstanceTemplate extends ListenersContainer implements IIdentifiabl switch (_enterLocationType) { case RANDOM: + { loc = _enterLocations.get(Rnd.get(_enterLocations.size())); break; + } case FIXED: + { loc = _enterLocations.get(0); break; + } } return loc; } @@ -365,11 +369,15 @@ public class InstanceTemplate extends ListenersContainer implements IIdentifiabl switch (_exitLocationType) { case RANDOM: + { location = _exitLocations.get(Rnd.get(_exitLocations.size())); break; + } case FIXED: + { location = _exitLocations.get(0); break; + } case ORIGIN: { final PlayerVariables vars = player.getVariables(); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java index 591a4dec3a..5910f77b6f 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/instancezone/conditions/ConditionHasResidence.java @@ -49,14 +49,20 @@ public final class ConditionHasResidence extends Condition switch (params.getEnum("type", ResidenceType.class)) { case CASTLE: + { test = clan.getCastleId() == id; break; + } case FORTRESS: + { test = clan.getFortId() == id; break; + } case CLANHALL: + { test = clan.getHideoutId() == id; break; + } } return test; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java index aaab55dec7..34c893a2b6 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemauction/ItemAuction.java @@ -362,6 +362,7 @@ public final class ItemAuction break; } case EXTEND_BY_3_MIN: + { if (Config.ALT_ITEM_AUCTION_TIME_EXTENDS_ON_BID > 0) { if (getAndSetLastBidPlayerObjectId(player.getObjectId()) != player.getObjectId()) @@ -371,6 +372,7 @@ public final class ItemAuction } } break; + } case EXTEND_BY_CONFIG_PHASE_A: { if (getAndSetLastBidPlayerObjectId(player.getObjectId()) != player.getObjectId()) @@ -429,14 +431,17 @@ public final class ItemAuction switch (getAuctionState()) { case CREATED: + { return false; - + } case FINISHED: + { if (_startingTime < (System.currentTimeMillis() - TimeUnit.MILLISECONDS.convert(Config.ALT_ITEM_AUCTION_EXPIRED_AFTER, TimeUnit.DAYS))) { return false; } break; + } } final int playerObjId = player.getObjectId(); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java index 544091dcd5..17a9b42f56 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemauction/ItemAuctionInstance.java @@ -245,7 +245,6 @@ public final class ItemAuctionInstance nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); break; } - case 1: { switch (auctions[0].getAuctionState()) @@ -263,23 +262,22 @@ public final class ItemAuctionInstance } break; } - case STARTED: { currentAuction = auctions[0]; nextAuction = createAuction(Math.max(currentAuction.getEndingTime() + FINISH_TIME_SPACE, System.currentTimeMillis() + START_TIME_SPACE)); break; } - case FINISHED: { currentAuction = auctions[0]; nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); break; } - default: + { throw new IllegalArgumentException(); + } } break; } @@ -287,10 +285,8 @@ public final class ItemAuctionInstance default: { Arrays.sort(auctions, Comparator.comparingLong(ItemAuction::getStartingTime).reversed()); - // just to make sure we won't skip any auction because of little different times final long currentTime = System.currentTimeMillis(); - for (ItemAuction auction : auctions) { if (auction.getAuctionState() == ItemAuctionState.STARTED) @@ -304,7 +300,6 @@ public final class ItemAuctionInstance break; // only first } } - for (ItemAuction auction : auctions) { if ((auction.getStartingTime() > currentTime) && (currentAuction != auction)) @@ -313,7 +308,6 @@ public final class ItemAuctionInstance break; } } - if (nextAuction == null) { nextAuction = createAuction(System.currentTimeMillis() + START_TIME_SPACE); @@ -414,12 +408,10 @@ public final class ItemAuctionInstance { throw new IllegalStateException("Could not set auction state: " + ItemAuctionState.STARTED + ", expected: " + state); } - LOGGER.info(getClass().getSimpleName() + ": Auction " + _auction.getAuctionId() + " has started for instance " + _auction.getInstanceId()); checkAndSetCurrentAndNextAuction(); break; } - case STARTED: { switch (_auction.getAuctionEndingExtendState()) @@ -434,7 +426,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_3_MIN: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_3_MIN) @@ -445,7 +436,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_CONFIG_PHASE_A: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_CONFIG_PHASE_B) @@ -456,7 +446,6 @@ public final class ItemAuctionInstance } break; } - case EXTEND_BY_CONFIG_PHASE_B: { if (_auction.getScheduledAuctionEndingExtendState() != ItemAuctionExtendState.EXTEND_BY_CONFIG_PHASE_A) @@ -479,7 +468,9 @@ public final class ItemAuctionInstance } default: + { throw new IllegalStateException("Invalid state: " + state); + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 300d62e998..9b6ddae51e 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -854,55 +854,99 @@ public abstract class Inventory extends ItemContainer switch (slot) { case L2Item.SLOT_UNDERWEAR: + { return PAPERDOLL_UNDER; + } case L2Item.SLOT_R_EAR: + { return PAPERDOLL_REAR; + } case L2Item.SLOT_LR_EAR: case L2Item.SLOT_L_EAR: + { return PAPERDOLL_LEAR; + } case L2Item.SLOT_NECK: + { return PAPERDOLL_NECK; + } case L2Item.SLOT_R_FINGER: case L2Item.SLOT_LR_FINGER: + { return PAPERDOLL_RFINGER; + } case L2Item.SLOT_L_FINGER: + { return PAPERDOLL_LFINGER; + } case L2Item.SLOT_HEAD: + { return PAPERDOLL_HEAD; + } case L2Item.SLOT_R_HAND: case L2Item.SLOT_LR_HAND: + { return PAPERDOLL_RHAND; + } case L2Item.SLOT_L_HAND: + { return PAPERDOLL_LHAND; + } case L2Item.SLOT_GLOVES: + { return PAPERDOLL_GLOVES; + } case L2Item.SLOT_CHEST: case L2Item.SLOT_FULL_ARMOR: case L2Item.SLOT_ALLDRESS: + { return PAPERDOLL_CHEST; + } case L2Item.SLOT_LEGS: + { return PAPERDOLL_LEGS; + } case L2Item.SLOT_FEET: + { return PAPERDOLL_FEET; + } case L2Item.SLOT_BACK: + { return PAPERDOLL_CLOAK; + } case L2Item.SLOT_HAIR: case L2Item.SLOT_HAIRALL: + { return PAPERDOLL_HAIR; + } case L2Item.SLOT_HAIR2: + { return PAPERDOLL_HAIR2; + } case L2Item.SLOT_R_BRACELET: + { return PAPERDOLL_RBRACELET; + } case L2Item.SLOT_L_BRACELET: + { return PAPERDOLL_LBRACELET; + } case L2Item.SLOT_DECO: + { return PAPERDOLL_DECO1; // return first we deal with it later + } case L2Item.SLOT_BELT: + { return PAPERDOLL_BELT; + } case L2Item.SLOT_BROOCH: + { return PAPERDOLL_BROOCH; + } case L2Item.SLOT_BROOCH_JEWEL: + { return PAPERDOLL_BROOCH_JEWEL1; + } } return -1; } @@ -1078,81 +1122,125 @@ public abstract class Inventory extends ItemContainer switch (location) { case PAPERDOLL_UNDER: + { slot = L2Item.SLOT_UNDERWEAR; break; + } case PAPERDOLL_LEAR: + { slot = L2Item.SLOT_L_EAR; break; + } case PAPERDOLL_REAR: + { slot = L2Item.SLOT_R_EAR; break; + } case PAPERDOLL_NECK: + { slot = L2Item.SLOT_NECK; break; + } case PAPERDOLL_RFINGER: + { slot = L2Item.SLOT_R_FINGER; break; + } case PAPERDOLL_LFINGER: + { slot = L2Item.SLOT_L_FINGER; break; + } case PAPERDOLL_HAIR: + { slot = L2Item.SLOT_HAIR; break; + } case PAPERDOLL_HAIR2: + { slot = L2Item.SLOT_HAIR2; break; + } case PAPERDOLL_HEAD: + { slot = L2Item.SLOT_HEAD; break; + } case PAPERDOLL_RHAND: + { slot = L2Item.SLOT_R_HAND; break; + } case PAPERDOLL_LHAND: + { slot = L2Item.SLOT_L_HAND; break; + } case PAPERDOLL_GLOVES: + { slot = L2Item.SLOT_GLOVES; break; + } case PAPERDOLL_CHEST: + { slot = item.getItem().getBodyPart(); break; + } case PAPERDOLL_LEGS: + { slot = L2Item.SLOT_LEGS; break; + } case PAPERDOLL_CLOAK: + { slot = L2Item.SLOT_BACK; break; + } case PAPERDOLL_FEET: + { slot = L2Item.SLOT_FEET; break; + } case PAPERDOLL_LBRACELET: + { slot = L2Item.SLOT_L_BRACELET; break; + } case PAPERDOLL_RBRACELET: + { slot = L2Item.SLOT_R_BRACELET; break; + } case PAPERDOLL_DECO1: case PAPERDOLL_DECO2: case PAPERDOLL_DECO3: case PAPERDOLL_DECO4: case PAPERDOLL_DECO5: case PAPERDOLL_DECO6: + { slot = L2Item.SLOT_DECO; break; + } case PAPERDOLL_BELT: + { slot = L2Item.SLOT_BELT; break; + } case PAPERDOLL_BROOCH: + { slot = L2Item.SLOT_BROOCH; break; + } case PAPERDOLL_BROOCH_JEWEL1: case PAPERDOLL_BROOCH_JEWEL2: case PAPERDOLL_BROOCH_JEWEL3: case PAPERDOLL_BROOCH_JEWEL4: case PAPERDOLL_BROOCH_JEWEL5: case PAPERDOLL_BROOCH_JEWEL6: + { slot = L2Item.SLOT_BROOCH_JEWEL; break; + } } return slot; } @@ -1230,81 +1318,129 @@ public abstract class Inventory extends ItemContainer switch (slot) { case L2Item.SLOT_L_EAR: + { pdollSlot = PAPERDOLL_LEAR; break; + } case L2Item.SLOT_R_EAR: + { pdollSlot = PAPERDOLL_REAR; break; + } case L2Item.SLOT_NECK: + { pdollSlot = PAPERDOLL_NECK; break; + } case L2Item.SLOT_R_FINGER: + { pdollSlot = PAPERDOLL_RFINGER; break; + } case L2Item.SLOT_L_FINGER: + { pdollSlot = PAPERDOLL_LFINGER; break; + } case L2Item.SLOT_HAIR: + { pdollSlot = PAPERDOLL_HAIR; break; + } case L2Item.SLOT_HAIR2: + { pdollSlot = PAPERDOLL_HAIR2; break; + } case L2Item.SLOT_HAIRALL: + { setPaperdollItem(PAPERDOLL_HAIR, null); pdollSlot = PAPERDOLL_HAIR; break; + } case L2Item.SLOT_HEAD: + { pdollSlot = PAPERDOLL_HEAD; break; + } case L2Item.SLOT_R_HAND: case L2Item.SLOT_LR_HAND: + { pdollSlot = PAPERDOLL_RHAND; break; + } case L2Item.SLOT_L_HAND: + { pdollSlot = PAPERDOLL_LHAND; break; + } case L2Item.SLOT_GLOVES: + { pdollSlot = PAPERDOLL_GLOVES; break; + } case L2Item.SLOT_CHEST: case L2Item.SLOT_ALLDRESS: case L2Item.SLOT_FULL_ARMOR: + { pdollSlot = PAPERDOLL_CHEST; break; + } case L2Item.SLOT_LEGS: + { pdollSlot = PAPERDOLL_LEGS; break; + } case L2Item.SLOT_BACK: + { pdollSlot = PAPERDOLL_CLOAK; break; + } case L2Item.SLOT_FEET: + { pdollSlot = PAPERDOLL_FEET; break; + } case L2Item.SLOT_UNDERWEAR: + { pdollSlot = PAPERDOLL_UNDER; break; + } case L2Item.SLOT_L_BRACELET: + { pdollSlot = PAPERDOLL_LBRACELET; break; + } case L2Item.SLOT_R_BRACELET: + { pdollSlot = PAPERDOLL_RBRACELET; break; + } case L2Item.SLOT_DECO: + { pdollSlot = PAPERDOLL_DECO1; break; + } case L2Item.SLOT_BELT: + { pdollSlot = PAPERDOLL_BELT; break; + } case L2Item.SLOT_BROOCH: + { pdollSlot = PAPERDOLL_BROOCH; break; + } case L2Item.SLOT_BROOCH_JEWEL: + { pdollSlot = PAPERDOLL_BROOCH_JEWEL1; break; + } default: + { LOGGER.info("Unhandled slot type: " + slot); LOGGER.info(CommonUtil.getTraceString(Thread.currentThread().getStackTrace())); + } } if (pdollSlot >= 0) { @@ -1379,7 +1515,9 @@ public abstract class Inventory extends ItemContainer case L2Item.SLOT_FEET: case L2Item.SLOT_GLOVES: case L2Item.SLOT_HEAD: + { return; + } } } @@ -1398,7 +1536,6 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_RHAND, null); } - setPaperdollItem(PAPERDOLL_LHAND, item); break; } @@ -1445,15 +1582,21 @@ public abstract class Inventory extends ItemContainer break; } case L2Item.SLOT_NECK: + { setPaperdollItem(PAPERDOLL_NECK, item); break; + } case L2Item.SLOT_FULL_ARMOR: + { setPaperdollItem(PAPERDOLL_LEGS, null); setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_CHEST: + { setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_LEGS: { // handle full armor @@ -1462,20 +1605,26 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_CHEST, null); } - setPaperdollItem(PAPERDOLL_LEGS, item); break; } case L2Item.SLOT_FEET: + { setPaperdollItem(PAPERDOLL_FEET, item); break; + } case L2Item.SLOT_GLOVES: + { setPaperdollItem(PAPERDOLL_GLOVES, item); break; + } case L2Item.SLOT_HEAD: + { setPaperdollItem(PAPERDOLL_HEAD, item); break; + } case L2Item.SLOT_HAIR: + { final L2ItemInstance hair = getPaperdollItem(PAPERDOLL_HAIR); if ((hair != null) && (hair.getItem().getBodyPart() == L2Item.SLOT_HAIRALL)) { @@ -1485,10 +1634,11 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_HAIR, null); } - setPaperdollItem(PAPERDOLL_HAIR, item); break; + } case L2Item.SLOT_HAIR2: + { final L2ItemInstance hair2 = getPaperdollItem(PAPERDOLL_HAIR); if ((hair2 != null) && (hair2.getItem().getBodyPart() == L2Item.SLOT_HAIRALL)) { @@ -1498,32 +1648,47 @@ public abstract class Inventory extends ItemContainer { setPaperdollItem(PAPERDOLL_HAIR2, null); } - setPaperdollItem(PAPERDOLL_HAIR2, item); break; + } case L2Item.SLOT_HAIRALL: + { setPaperdollItem(PAPERDOLL_HAIR2, null); setPaperdollItem(PAPERDOLL_HAIR, item); break; + } case L2Item.SLOT_UNDERWEAR: + { setPaperdollItem(PAPERDOLL_UNDER, item); break; + } case L2Item.SLOT_BACK: + { setPaperdollItem(PAPERDOLL_CLOAK, item); break; + } case L2Item.SLOT_L_BRACELET: + { setPaperdollItem(PAPERDOLL_LBRACELET, item); break; + } case L2Item.SLOT_R_BRACELET: + { setPaperdollItem(PAPERDOLL_RBRACELET, item); break; + } case L2Item.SLOT_DECO: + { equipTalisman(item); break; + } case L2Item.SLOT_BELT: + { setPaperdollItem(PAPERDOLL_BELT, item); break; + } case L2Item.SLOT_ALLDRESS: + { // formal dress setPaperdollItem(PAPERDOLL_LEGS, null); setPaperdollItem(PAPERDOLL_LHAND, null); @@ -1535,14 +1700,21 @@ public abstract class Inventory extends ItemContainer setPaperdollItem(PAPERDOLL_GLOVES, null); setPaperdollItem(PAPERDOLL_CHEST, item); break; + } case L2Item.SLOT_BROOCH: + { setPaperdollItem(PAPERDOLL_BROOCH, item); break; + } case L2Item.SLOT_BROOCH_JEWEL: + { equipBroochJewel(item); break; + } default: + { LOGGER.warning("Unknown body slot " + targetSlot + " for Item ID: " + item.getId()); + } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/L2Item.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/L2Item.java index 2277b05ee1..2f590854f8 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/L2Item.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/L2Item.java @@ -414,11 +414,17 @@ public abstract class L2Item extends ListenersContainer implements IIdentifiable { case TYPE2_SHIELD_ARMOR: case TYPE2_ACCESSORY: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusArmor() * ((3 * enchantLevel) - 6)); + } case TYPE2_WEAPON: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusWeapon() * ((2 * enchantLevel) - 3)); + } default: + { return _crystalCount; + } } } else if (enchantLevel > 0) @@ -427,11 +433,17 @@ public abstract class L2Item extends ListenersContainer implements IIdentifiable { case TYPE2_SHIELD_ARMOR: case TYPE2_ACCESSORY: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusArmor() * enchantLevel); + } case TYPE2_WEAPON: + { return _crystalCount + (getCrystalType().getCrystalEnchantBonusWeapon() * enchantLevel); + } default: + { return _crystalCount; + } } } else diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java index 2337da2419..a2f6ac1d4f 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/items/instance/L2ItemInstance.java @@ -1334,20 +1334,26 @@ public final class L2ItemInstance extends L2Object switch (_mana) { case 10: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_10); sm.addItemName(_item); player.sendPacket(sm); break; + } case 5: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_5); sm.addItemName(_item); player.sendPacket(sm); break; + } case 1: + { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S_REMAINING_MANA_IS_NOW_1_IT_WILL_DISAPPEAR_SOON); sm.addItemName(_item); player.sendPacket(sm); break; + } } if (_mana == 0) // The life time has expired diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java index edbb47633b..d073bfd72a 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/olympiad/Olympiad.java @@ -187,6 +187,7 @@ public class Olympiad extends ListenersContainer switch (_period) { case 0: + { if ((_olympiadEnd == 0) || (_olympiadEnd < Calendar.getInstance().getTimeInMillis())) { setNewOlympiadEnd(); @@ -196,7 +197,9 @@ public class Olympiad extends ListenersContainer scheduleWeeklyChange(); } break; + } case 1: + { if (_validationEnd > Calendar.getInstance().getTimeInMillis()) { loadNoblesRank(); @@ -210,9 +213,12 @@ public class Olympiad extends ListenersContainer setNewOlympiadEnd(); } break; + } default: + { LOGGER.warning(getClass().getSimpleName() + ": Omg something went wrong in loading!! Period = " + _period); return; + } } try (Connection con = DatabaseFactory.getInstance().getConnection(); @@ -922,19 +928,29 @@ public class Olympiad extends ListenersContainer switch (_noblesRank.get(objId)) { case 1: + { points += Config.ALT_OLY_RANK1_POINTS; break; + } case 2: + { points += Config.ALT_OLY_RANK2_POINTS; break; + } case 3: + { points += Config.ALT_OLY_RANK3_POINTS; break; + } case 4: + { points += Config.ALT_OLY_RANK4_POINTS; break; + } default: + { points += Config.ALT_OLY_RANK5_POINTS; + } } // Win/no win matches point bonus diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java index 5f672174e0..b740357222 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/olympiad/OlympiadAnnouncer.java @@ -57,13 +57,19 @@ public final class OlympiadAnnouncer implements Runnable switch (task.getGame().getType()) { case NON_CLASSED: + { npcString = NpcStringId.OLYMPIAD_CLASS_FREE_INDIVIDUAL_MATCH_IS_GOING_TO_BEGIN_IN_ARENA_S1_IN_A_MOMENT; break; + } case CLASSED: + { npcString = NpcStringId.OLYMPIAD_CLASS_INDIVIDUAL_MATCH_IS_GOING_TO_BEGIN_IN_ARENA_S1_IN_A_MOMENT; break; + } default: + { continue; + } } for (L2Spawn spawn : _managers) diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java index 3f4a80a0fa..f12879ef84 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/skills/SkillOperateType.java @@ -144,9 +144,13 @@ public enum SkillOperateType case DA2: case DA4: case DA5: + { return true; + } default: + { return false; + } } } @@ -165,9 +169,13 @@ public enum SkillOperateType case DA2: case DA4: case DA5: + { return true; + } default: + { return false; + } } } @@ -234,9 +242,13 @@ public enum SkillOperateType case CA1: case CA2: case CA5: + { return true; + } default: + { return false; + } } } @@ -258,9 +270,13 @@ public enum SkillOperateType case DA3: case DA4: case DA5: + { return true; + } default: + { return false; + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/stats/Formulas.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/stats/Formulas.java index 99abcf8994..bc9430b32d 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/stats/Formulas.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/stats/Formulas.java @@ -590,11 +590,15 @@ public final class Formulas switch (shldSuccess) { case SHIELD_DEFENSE_SUCCEED: + { enemy.sendPacket(SystemMessageId.YOUR_SHIELD_DEFENSE_HAS_SUCCEEDED); break; + } case SHIELD_DEFENSE_PERFECT_BLOCK: + { enemy.sendPacket(SystemMessageId.YOUR_EXCELLENT_SHIELD_DEFENSE_WAS_A_SUCCESS); break; + } } } @@ -854,10 +858,14 @@ public final class Formulas switch (shld) { case SHIELD_DEFENSE_SUCCEED: + { mDef += target.getShldDef(); break; + } case SHIELD_DEFENSE_PERFECT_BLOCK: // perfect block + { return 1; + } } // Bonus Spiritshot @@ -1118,7 +1126,6 @@ public final class Formulas { // Resist Modifier. final int cancelMagicLvl = skill.getMagicLevel(); - if (activeChar.isDebug()) { final StatsSet set = new StatsSet(); @@ -1128,7 +1135,6 @@ public final class Formulas set.set("rate", rate); Debug.sendSkillDebug(activeChar, target, skill, set); } - // Prevent initialization. final List buffs = target.getEffectList().hasBuffs() ? new ArrayList<>(target.getEffectList().getBuffs()) : new ArrayList<>(1); if (target.getEffectList().hasTriggered()) @@ -1360,13 +1366,21 @@ public final class Formulas switch (resist.getResistLevel()) { case 0: + { return 1.0; + } case 1: + { return 0.6; + } case 2: + { return 0.3; + } default: + { return 0; + } } } @@ -1508,13 +1522,19 @@ public final class Formulas switch (attackType) { case BOW: + { return (1500 * 345) / activeChar.getPAtkSpd(); + } case CROSSBOW: case TWOHANDCROSSBOW: + { return (1200 * 345) / activeChar.getPAtkSpd(); + } case DAGGER: + { // atkSpd /= 1.15; break; + } } return calcPAtkSpd(activeChar.getPAtkSpd()); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java index dae0cb10f9..8a54b645b0 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/zone/L2ZoneRespawn.java @@ -50,16 +50,24 @@ public abstract class L2ZoneRespawn extends L2ZoneType switch (type) { case "other": + { addOtherSpawn(x, y, z); break; + } case "chaotic": + { addChaoticSpawn(x, y, z); break; + } case "banish": + { addBanishSpawn(x, y, z); break; + } default: + { _log.warning(getClass().getSimpleName() + ": Unknown location type: " + type); + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java index 53947b8169..fa49f8fe8e 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/zone/type/L2EffectZone.java @@ -75,24 +75,37 @@ public final class L2EffectZone extends L2ZoneType switch (name) { case "chance": + { _chance = Integer.parseInt(value); break; + } case "initialDelay": + { _initialDelay = Integer.parseInt(value); break; + } case "reuse": + { _reuse = Integer.parseInt(value); break; + } case "bypassSkillConditions": + { _bypassConditions = Boolean.parseBoolean(value); break; + } case "maxDynamicSkillCount": + { _skills = new ConcurrentHashMap<>(Integer.parseInt(value)); break; + } case "showDangerIcon": + { _isShowDangerIcon = Boolean.parseBoolean(value); break; + } case "skillIdLvl": + { final String[] propertySplit = value.split(";"); _skills = new ConcurrentHashMap<>(propertySplit.length); for (String skill : propertySplit) @@ -118,6 +131,7 @@ public final class L2EffectZone extends L2ZoneType } } break; + } default: { super.setParameter(name, value); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/L2GameClient.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/L2GameClient.java index 6bc536e28a..f0fc7726d3 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/L2GameClient.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/L2GameClient.java @@ -669,13 +669,21 @@ public final class L2GameClient extends ChannelInboundHandler switch (state) { case CONNECTED: + { return "[IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } case AUTHENTICATED: + { return "[Account: " + getAccountName() + " - IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } case IN_GAME: + { return "[Character: " + (getActiveChar() == null ? "disconnected" : getActiveChar().getName() + "[" + getActiveChar().getObjectId() + "]") + " - Account: " + getAccountName() + " - IP: " + (address == null ? "disconnected" : address.getHostAddress()) + "]"; + } default: + { throw new IllegalStateException("Missing state on switch"); + } } } catch (NullPointerException e) diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java index d24c043f23..bf1369b884 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/CharacterDelete.java @@ -66,13 +66,17 @@ public final class CharacterDelete implements IClientIncomingPacket switch (failType) { case NONE:// Success! + { client.sendPacket(new CharDeleteSuccess()); final CharSelectInfoPackage charInfo = client.getCharSelection(_charSlot); EventDispatcher.getInstance().notifyEvent(new OnPlayerDelete(charInfo.getObjectId(), charInfo.getName(), client), Containers.Players()); break; + } default: + { client.sendPacket(new CharDeleteFail(failType)); break; + } } } catch (Exception e) diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java index 03f82be21d..e20dfd2ce4 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/MoveToLocationAirShip.java @@ -74,6 +74,7 @@ public class MoveToLocationAirShip implements IClientIncomingPacket switch (_command) { case 0: + { if (!ship.canBeControlled()) { return; @@ -83,14 +84,18 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(_param1, _param2, z)); } break; + } case 1: + { if (!ship.canBeControlled()) { return; } ship.getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); break; + } case 2: + { if (!ship.canBeControlled()) { return; @@ -101,7 +106,9 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(ship.getX(), ship.getY(), z)); } break; + } case 3: + { if (!ship.canBeControlled()) { return; @@ -112,7 +119,9 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(ship.getX(), ship.getY(), z)); } break; + } case 4: + { if (!ship.isInDock() || ship.isMoving()) { return; @@ -138,6 +147,7 @@ public class MoveToLocationAirShip implements IClientIncomingPacket ship.executePath(dst); break; + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java index caaa9f4faf..a008d4b0a7 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestActionUse.java @@ -114,6 +114,7 @@ public final class RequestActionUse implements IClientIncomingPacket switch (_actionId) { case 51: // General Manufacture + { // Player shouldn't be able to set stores if he/she is alike dead (dead or fake death) if (activeChar.isAlikeDead()) { @@ -139,9 +140,12 @@ public final class RequestActionUse implements IClientIncomingPacket client.sendPacket(new RecipeShopManageList(activeChar, false)); break; + } default: + { _log.warning(activeChar.getName() + ": unhandled action type " + _actionId); break; + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java index 95fd1aa66c..06bfa3c200 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestBlock.java @@ -61,6 +61,7 @@ public final class RequestBlock implements IClientIncomingPacket { case BLOCK: case UNBLOCK: + { // can't use block/unblock for locating invisible characters if (targetId <= 0) { @@ -90,19 +91,28 @@ public final class RequestBlock implements IClientIncomingPacket BlockList.removeFromBlockList(activeChar, targetId); } break; + } case BLOCKLIST: + { BlockList.sendListToOwner(activeChar); break; + } case ALLBLOCK: + { activeChar.sendPacket(SystemMessageId.MESSAGE_REFUSAL_MODE); BlockList.setBlockAll(activeChar, true); break; + } case ALLUNBLOCK: + { activeChar.sendPacket(SystemMessageId.MESSAGE_ACCEPTANCE_MODE); BlockList.setBlockAll(activeChar, false); break; + } default: + { _log.info("Unknown 0xA9 block type: " + _type); + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java index 68f3ac2c1c..27e73c4de3 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameChangeTeam.java @@ -53,11 +53,15 @@ public final class RequestExCubeGameChangeTeam implements IClientIncomingPacket { case 0: case 1: + { // Change Player Team HandysBlockCheckerManager.getInstance().changePlayerToTeam(player, _arena, _team); break; + } case -1: + { // Remove Player (me) + } { final int team = HandysBlockCheckerManager.getInstance().getHolder(_arena).getPlayerTeam(player); // client sends two times this packet if click on exit @@ -69,8 +73,10 @@ public final class RequestExCubeGameChangeTeam implements IClientIncomingPacket break; } default: + { _log.warning("Wrong Cube Game Team ID: " + _team); break; + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java index 0c7271d8a5..ca230610ed 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExCubeGameReadyAnswer.java @@ -52,15 +52,21 @@ public final class RequestExCubeGameReadyAnswer implements IClientIncomingPacket switch (_answer) { case 0: + { // Cancel - Answer No break; + } case 1: + { // OK or Time Over HandysBlockCheckerManager.getInstance().increaseArenaVotes(_arena); break; + } default: + { _log.warning("Unknown Cube Game Answer ID: " + _answer); break; + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java index d66d6376c8..b1ae7171e1 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/RequestExEnchantItemAttribute.java @@ -320,17 +320,25 @@ public class RequestExEnchantItemAttribute implements IClientIncomingPacket { case Stone: case Roughore: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_STONE; break; + } case Crystal: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_CRYSTAL; break; + } case Jewel: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_JEWEL; break; + } case Energy: + { success = Rnd.get(100) < Config.ENCHANT_CHANCE_ELEMENT_ENERGY; break; + } } } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java index b651077122..260c32c7cc 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/clientpackets/commission/RequestCommissionList.java @@ -70,63 +70,91 @@ public class RequestCommissionList implements IClientIncomingPacket switch (_treeViewDepth) { case 1: + { final CommissionTreeType commissionTreeType = CommissionTreeType.findByClientId(_itemType); if (commissionTreeType != null) { filter = filter.and(i -> commissionTreeType.getCommissionItemTypes().contains(i.getCommissionItemType())); } break; + } case 2: + { final CommissionItemType commissionItemType = CommissionItemType.findByClientId(_itemType); if (commissionItemType != null) { filter = filter.and(i -> i.getCommissionItemType() == commissionItemType); } break; + } } switch (_type) { case 0: // General + { filter = filter.and(i -> true); // TODO: condition break; + } case 1: // Rare + { filter = filter.and(i -> true); // TODO: condition break; + } } switch (_grade) { case 0: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.NONE); break; + } case 1: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.D); break; + } case 2: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.C); break; + } case 3: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.B); break; + } case 4: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.A); break; + } case 5: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.S); break; + } case 6: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.S80); break; + } case 7: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R); break; + } case 8: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R95); break; + } case 9: + { filter = filter.and(i -> i.getCrystalType() == CrystalType.R99); break; + } } filter = filter.and(i -> _query.isEmpty() || i.getName().toLowerCase().contains(_query.toLowerCase())); diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java index 53693bd214..099ecc9e7f 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/network/serverpackets/ExShowFortressSiegeInfo.java @@ -59,43 +59,65 @@ public class ExShowFortressSiegeInfo implements IClientOutgoingPacket switch (_csize) { case 3: + { switch (_csize2) { case 0: + { packet.writeD(0x03); break; + } case 1: + { packet.writeD(0x02); break; + } case 2: + { packet.writeD(0x01); break; + } case 3: + { packet.writeD(0x00); break; + } } break; + } case 4: // TODO: change 4 to 5 once control room supported + { switch (_csize2) - // TODO: once control room supported, update packet.writeD(0x0x) to support 5th room { + // TODO: once control room supported, update packet.writeD(0x0x) to support 5th room case 0: + { packet.writeD(0x05); break; + } case 1: + { packet.writeD(0x04); break; + } case 2: + { packet.writeD(0x03); break; + } case 3: + { packet.writeD(0x02); break; + } case 4: + { packet.writeD(0x01); break; + } } break; + } } } else diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java index 7eb34ca17a..ab5d73f244 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/scripting/java/JavaExecutionContext.java @@ -80,10 +80,15 @@ public final class JavaExecutionContext extends AbstractExecutionContext switch (opcode) { case 0x07: + { packet = new AuthGameGuard(); break; + } default: + { debugOpcode(opcode, state); break; + } } break; } @@ -65,11 +69,15 @@ public final class L2LoginPacketHandler implements IPacketHandler switch (opcode) { case 0x00: + { packet = new RequestAuthLogin(); break; + } default: + { debugOpcode(opcode, state); break; + } } break; } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java index f68dbeac9a..670a1da820 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/loginserver/network/clientpackets/RequestAuthLogin.java @@ -141,6 +141,7 @@ public class RequestAuthLogin extends L2LoginClientPacket switch (result) { case AUTH_SUCCESS: + { client.setAccount(info.getLogin()); client.setState(LoginClientState.AUTHED_LOGIN); client.setSessionKey(lc.assignSessionKeyToClient(info.getLogin(), client)); @@ -154,13 +155,19 @@ public class RequestAuthLogin extends L2LoginClientPacket client.sendPacket(new ServerList(client)); } break; + } case INVALID_PASSWORD: + { client.close(LoginFailReason.REASON_USER_OR_PASS_WRONG); break; + } case ACCOUNT_BANNED: + { client.close(new AccountKicked(AccountKickedReason.REASON_PERMANENTLY_BANNED)); return; + } case ALREADY_ON_LS: + { final L2LoginClient oldClient = lc.getAuthedClient(info.getLogin()); if (oldClient != null) { @@ -171,12 +178,13 @@ public class RequestAuthLogin extends L2LoginClientPacket // kick also current client client.close(LoginFailReason.REASON_ACCOUNT_IN_USE); break; + } case ALREADY_ON_GS: + { final GameServerInfo gsi = lc.getAccountOnGameServer(info.getLogin()); if (gsi != null) { client.close(LoginFailReason.REASON_ACCOUNT_IN_USE); - // kick from there if (gsi.isAuthed()) { @@ -184,6 +192,7 @@ public class RequestAuthLogin extends L2LoginClientPacket } } break; + } } } }