Skip to content
This repository has been archived by the owner on May 20, 2023. It is now read-only.

Commit

Permalink
Fix lion's rock quest (#771)
Browse files Browse the repository at this point in the history
• Converted scripts from action ids and unique ids to positions
  • Loading branch information
rigis1 authored Aug 29, 2022
1 parent 30c4abd commit bb7f280
Show file tree
Hide file tree
Showing 10 changed files with 361 additions and 393 deletions.
77 changes: 41 additions & 36 deletions data/lib/core/quests.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4514,55 +4514,60 @@ if not Quests then
storageId = Storage.LionsRock.Questline,
missionId = 10319,
startValue = 1,
endValue = 12,
endValue = 11,
states = {
[1] = "You have discovered the Lion's Rock. If you pass the following tests you may enter the inner sanctum.\z
\n\nThe Lion's Strength 0/1\nThe Lion's Beauty 0/1\nThe Lion's Tears 0/1",
[2] = "You have discovered the Lion's Rock. If you pass the following tests you may enter the inner sanctum.\z
\n\nThe Lion's Strength 1/1\nThe Lion's Beauty 0/1\nThe Lion's Tears 0/1",
[3] = "You have discovered the Lion's Rock. If you pass the following tests you may enter the inner sanctum.\z
\n\nThe Lion's Strength 1/1\nThe Lion's Beauty 1/1\nThe Lion's Tears 0/1",
[4] = "You have passed the three tests of Lion's Rock and thus lit the three mystical pyramids. You may enter\z
the inner sanctum now. - What other secrets could be hidden down there?",
[5] = "You found a mysterious scroll in the debris of an old amphora. It seems it could help to translate the\z
old temple inscriptions.",
[1] = function(player)
return string.format("You have discovered the Lion's Rock. If you pass the following tests you may enter the inner sanctum.\n\nThe Lion's Strength %d/1\nThe Lion's Beauty %d/1\nThe Lion's Tears %d/1",
(math.max(player:getStorageValue(Storage.LionsRock.OuterSanctum.LionsStrength), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.OuterSanctum.LionsBeauty), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.OuterSanctum.LionsTears), 0))
)
end,
[2] = function(player)
return string.format("You have discovered the Lion's Rock. If you pass the following tests you may enter the inner sanctum.\n\nThe Lion's Strength %d/1\nThe Lion's Beauty %d/1\nThe Lion's Tears %d/1",
(math.max(player:getStorageValue(Storage.LionsRock.OuterSanctum.LionsStrength), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.OuterSanctum.LionsBeauty), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.OuterSanctum.LionsTears), 0))
)
end,
[3] = function(player)
return string.format("You have discovered the Lion's Rock. If you pass the following tests you may enter the inner sanctum.\n\nThe Lion's Strength %d/1\nThe Lion's Beauty %d/1\nThe Lion's Tears %d/1",
(math.max(player:getStorageValue(Storage.LionsRock.OuterSanctum.LionsStrength), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.OuterSanctum.LionsBeauty), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.OuterSanctum.LionsTears), 0))
)
end,
[4] = "You have passed the three tests of Lion's Rock and thus lit the three mystical pyramids. You may enter the inner sanctum now. - What other secrets could be hidden down there?",
[5] = "You found a mysterious scroll in the debris of an old amphora. It seems it could help to translate the old temple inscriptions.",
[6] = function(player)
return string.format(
"lions' enemies in this area of the temple. What could be the resolution?\z
\n\nblood %d/1\negg %d/1\neye %d/1\npoison %d/1",
(math.max(player:getStorageValue(Storage.LionsRock.SnakeSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.LizardSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.ScorpionSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.HyenaSign), 0))
"lions' enemies in this area of the temple. What could be the resolution?\n\nblood %d/1\negg %d/1\neye %d/1\npoison %d/1",
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.SnakeSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.LizardSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.ScorpionSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.HyenaSign), 0))
)
end,
[7] = function(player)
return string.format(
"lions' enemies in this area of the temple. What could be the resolution?\z
\n\nblood %d/1\negg %d/1\neye %d/1\npoison %d/1",
(math.max(player:getStorageValue(Storage.LionsRock.SnakeSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.LizardSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.ScorpionSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.HyenaSign), 0))
"lions' enemies in this area of the temple. What could be the resolution?\n\nblood %d/1\negg %d/1\neye %d/1\npoison %d/1",
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.SnakeSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.LizardSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.ScorpionSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.HyenaSign), 0))
)
end,
[8] = function(player)
return string.format(
"lions' enemies in this area of the temple. What could be the resolution?\z
\n\nblood %d/1\negg %d/1\neye %d/1\npoison %d/1",
(math.max(player:getStorageValue(Storage.LionsRock.SnakeSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.LizardSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.ScorpionSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.HyenaSign), 0))
"lions' enemies in this area of the temple. What could be the resolution?\n\nblood %d/1\negg %d/1\neye %d/1\npoison %d/1",
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.SnakeSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.LizardSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.ScorpionSign), 0)),
(math.max(player:getStorageValue(Storage.LionsRock.InnerSanctum.HyenaSign), 0))
)
end,
[9] = "lions' enemies in this area of the temple. What could be the resolution?\z
\n\nblood 1/1\negg 1/1\neye 1/1\npoison 1/1",
[10] = 'In the north-west area of the Inner Sanctum, find the southern rectangular room to the south-west. \z
In this room you will find 4 "sun" floor inscriptions as well as a rock in the center. The sun inscriptions \z
represent gem slots.',
[11] = "By solving the gem puzzle you unveiled the last secret of the Lion's Rock. You drew a treasure out \z
of the ornamented fountain in the lower temple areas."
[9] = 'In the north-west area of the Inner Sanctum, find the southern rectangular room to the south-west. In this room you will find 4 "sun" floor inscriptions as well as a rock in the center. The sun inscriptions represent gem slots.',
[11] = "By solving the gem puzzle you unveiled the last secret of the Lion's Rock. You drew a treasure out of the ornamented fountain in the lower temple areas."
}
},
[4] = {
Expand Down
23 changes: 14 additions & 9 deletions data/lib/core/storages.lua
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ Storage = {
FreeQuests = 30057,
PremiumAccount = 30058,
BattleAxeQuest = 30059,
ShrineEntrance = 30060,

--[[
Old storages
Expand Down Expand Up @@ -1680,15 +1681,19 @@ Storage = {
LionsRock = {
-- Reserved storage from 52290 - 52309
Questline = 52290,
LionsStrength = 52291,
LionsBeauty = 52292,
LionsTears = 52293,
GetLionsMane = 52294,
GetHolyWater = 52295,
SnakeSign = 52296,
LizardSign = 52297,
ScorpionSign = 52298,
HyenaSign = 52299,
OuterSanctum = {
Skeleton = 52291,
LionsStrength = 52292,
LionsBeauty = 52293,
LionsTears = 52294,
},
InnerSanctum = {
SnakeSign = 52295,
LizardSign = 52296,
ScorpionSign = 52297,
HyenaSign = 52298,
Message = 52299
},
Time = 52300
},
GraveDanger = {
Expand Down
39 changes: 39 additions & 0 deletions data/scripts/actions/other/others/quest_system2.lua
Original file line number Diff line number Diff line change
Expand Up @@ -396,6 +396,45 @@ This page seems to be part of a book about ancient rituals, mystic incantations
name = "Falcon Bastion Access"}
},
storage = Storage.TheSecretLibrary.FalconBastionAccess
},
[20002] = {
items = {
{itemId = 21413, text = [[
"Still it is hard to believe that I finally
found the mystical rock formations near
Darashia, known as Lion's Rock.
According to ancient records there is a
temple for an unknown, probably long
forgotten deity, built in the tunnels deep
below the rock centuries ago. This holy
site was once guarded by mystical lions
and they may still be down there. But
yet I haven't succeeded in entering the
inner sanctum. The entrance to the
lower temple areas is protected by an
old and powerful enchantment. I
studied the inscriptions on the temple
walls and thus learned that the key to
the inner sanctum is the passing of
three tests. The first test is the Lion's
Strength. In order to honour the site's
mystical cats of prey one has to hunt
and slay a cobra. The cobra's tongue
must be laid down at a stone statue as
a sacrifice. The second test is the
Lion's Beauty. One has to burn the
petals of a lion's mane flower on a coal
basin. In the sand at the rock's foot I
saw some dried lion's mane petals.
Maybe these flowers grow somewhere
upwards. The third test is called the
Lion's Tears. It seems one has to purify
an ornamented stone pedestal with ..."
At this point the records end because
the parchment is destroyed. It seems
that is was torn by a big paw ...]]}
},
storage = Storage.LionsRock.OuterSanctum.Skeleton
}
-- 65203 reservado
}
Expand Down
Loading

0 comments on commit bb7f280

Please sign in to comment.