mirror of
https://github.com/ErikasKontenis/SabrehavenServer.git
synced 2025-05-01 18:19:20 +02:00
introduce POI until entrance until the DL spawn
This commit is contained in:
parent
6e2fb1d34d
commit
332a88ae50
@ -1 +1 @@
|
||||
next: 17639
|
||||
next: 17644
|
@ -85,6 +85,9 @@
|
||||
<action actionid="82" script="nostalrius/82.lua" />
|
||||
<action actionid="83" script="nostalrius/83.lua" />
|
||||
|
||||
<!-- Pits of Inferno -->
|
||||
<action actionid="17642" script="pits_of_inferno/oil.lua" />
|
||||
|
||||
<!-- Serpentine Tower -->
|
||||
<action actionid="17597" script="serpentine_tower/release_fire_elemental.lua" />
|
||||
<action actionid="17598" script="serpentine_tower/release_vampire.lua" />
|
||||
|
@ -90,6 +90,10 @@ function onUse(player, item, fromPosition, target, toPosition)
|
||||
elseif item:getFluidType() == FLUID_NONE then
|
||||
player:sendTextMessage(MESSAGE_STATUS_SMALL, "It is empty.")
|
||||
else
|
||||
if item:getFluidType() == FLUID_BLOOD and target:getActionId() == 17639 then
|
||||
doRelocate({x = 32791, y = 32334, z = 09}, {x = 32791, y = 32332, z = 10})
|
||||
Position({x = 32791, y = 32332, z = 10}):sendMonsterSay("Muahahahaha...")
|
||||
end
|
||||
|
||||
Game.createItem(2886, item.type, toPosition):decay()
|
||||
item:transform(item:getId(), 0)
|
||||
|
@ -1,3 +1,51 @@
|
||||
local pitsOfInfernoLava = {
|
||||
Position(32808, 32336, 11),
|
||||
Position(32809, 32336, 11),
|
||||
Position(32810, 32336, 11),
|
||||
Position(32808, 32334, 11),
|
||||
Position(32807, 32334, 11),
|
||||
Position(32807, 32335, 11),
|
||||
Position(32807, 32336, 11),
|
||||
Position(32807, 32337, 11),
|
||||
Position(32806, 32337, 11),
|
||||
Position(32805, 32337, 11),
|
||||
Position(32805, 32338, 11),
|
||||
Position(32805, 32339, 11),
|
||||
Position(32806, 32339, 11),
|
||||
Position(32806, 32338, 11),
|
||||
Position(32807, 32338, 11),
|
||||
Position(32808, 32338, 11),
|
||||
Position(32808, 32337, 11),
|
||||
Position(32809, 32337, 11),
|
||||
Position(32810, 32337, 11),
|
||||
Position(32811, 32337, 11),
|
||||
Position(32811, 32338, 11),
|
||||
Position(32806, 32338, 11),
|
||||
Position(32810, 32338, 11),
|
||||
Position(32810, 32339, 11),
|
||||
Position(32809, 32339, 11),
|
||||
Position(32809, 32338, 11),
|
||||
Position(32811, 32336, 11),
|
||||
Position(32811, 32335, 11),
|
||||
Position(32810, 32335, 11),
|
||||
Position(32809, 32335, 11),
|
||||
Position(32808, 32335, 11),
|
||||
Position(32809, 32334, 11),
|
||||
Position(32809, 32333, 11),
|
||||
Position(32810, 32333, 11),
|
||||
Position(32811, 32333, 11),
|
||||
Position(32806, 32338, 11),
|
||||
Position(32810, 32334, 11),
|
||||
Position(32811, 32334, 11),
|
||||
Position(32812, 32334, 11),
|
||||
Position(32813, 32334, 11),
|
||||
Position(32812, 32333, 11),
|
||||
Position(32810, 32334, 11),
|
||||
Position(32812, 32335, 11),
|
||||
Position(32813, 32335, 11),
|
||||
Position(32813, 32333, 11)
|
||||
}
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition)
|
||||
local tile = Tile(toPosition)
|
||||
if not tile then
|
||||
@ -29,6 +77,13 @@ function onUse(player, item, fromPosition, target, toPosition)
|
||||
Game.sendMagicEffect({x = 32356, y = 32074, z = 10}, 3)
|
||||
doTargetCombatHealth(0, player, COMBAT_PHYSICALDAMAGE, -50, -50)
|
||||
return true
|
||||
elseif target:getActionId() == 17643 then
|
||||
for i = 1, #pitsOfInfernoLava do
|
||||
Game.createItem(5815, 1, pitsOfInfernoLava[i])
|
||||
end
|
||||
target:transform(3141)
|
||||
toPosition:sendMagicEffect(CONST_ME_POFF)
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
33
data/actions/scripts/pits_of_inferno/oil.lua
Normal file
33
data/actions/scripts/pits_of_inferno/oil.lua
Normal file
@ -0,0 +1,33 @@
|
||||
local bridgePosition = Position(32801, 32336, 11)
|
||||
|
||||
local function revertBridge()
|
||||
Tile(bridgePosition):getItemById(409):transform(622)
|
||||
end
|
||||
|
||||
local function revertLever(position)
|
||||
local leverItem = Tile(position):getItemById(2773)
|
||||
if leverItem then
|
||||
leverItem:transform(2772)
|
||||
end
|
||||
end
|
||||
|
||||
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
|
||||
if item.itemid ~= 2772 then
|
||||
return false
|
||||
end
|
||||
|
||||
if not Tile(Position(32795, 32337, 11)):getItemById(2886, FLUID_OIL) then
|
||||
player:say('The lever is creaking and rusty.', TALKTYPE_MONSTER_SAY)
|
||||
return true
|
||||
end
|
||||
|
||||
local water = Tile(bridgePosition):getItemById(622)
|
||||
if water then
|
||||
water:transform(409)
|
||||
addEvent(revertBridge, 10 * 60 * 1000)
|
||||
end
|
||||
|
||||
item:transform(2773)
|
||||
addEvent(revertLever, 10 * 60 * 1000, toPosition)
|
||||
return true
|
||||
end
|
@ -395,6 +395,9 @@
|
||||
<movevent event="StepIn" itemid="5764" script="misc/drowning.lua" />
|
||||
<movevent event="StepOut" itemid="5764" script="misc/drowning.lua"/>
|
||||
|
||||
<!-- Pits of Inferno -->
|
||||
<movevent event="StepIn" frommovementid="17640" tomovementid="17641" script="pits_of_inferno/holy_tible_tile.lua" />
|
||||
|
||||
<!-- Serpentine Tower -->
|
||||
<movevent event="StepIn" frommovementid="17602" tomovementid="17603" script="serpentine_tower/final_tile.lua" />
|
||||
<movevent event="RemoveItem" movementid="17605" tileitem="1" script="serpentine_tower/take_waterwalking_boots.lua" />
|
||||
|
20
data/movements/scripts/pits_of_inferno/holy_tible_tile.lua
Normal file
20
data/movements/scripts/pits_of_inferno/holy_tible_tile.lua
Normal file
@ -0,0 +1,20 @@
|
||||
local destinations = {
|
||||
[17640] = Position(32791, 32327, 10),
|
||||
[17641] = Position(32791, 32331, 10)
|
||||
}
|
||||
|
||||
function onStepIn(creature, item, position, fromPosition)
|
||||
local player = creature:getPlayer()
|
||||
if not player then
|
||||
return false
|
||||
end
|
||||
|
||||
if player:getItemCount(2836) < 1 then
|
||||
player:teleportTo(fromPosition)
|
||||
return true
|
||||
end
|
||||
|
||||
player:teleportTo(destinations[item:getMovementId()])
|
||||
player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
|
||||
return true
|
||||
end
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user