• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

INQ teleports problem.

Kaywin

Lord of War WoW/Tibia 2D
Joined
Oct 24, 2008
Messages
541
Reaction score
6
Location
SwedeN
in some way this scripts don't work? It worked before when i diden't use a REV for 0.4 version..


Have i done anything wrong? A teleport should be spawned after when you killed the monster, (all pos x, y, z are correct)

Creature/Scripts/inquisitionPortals
Code:
function onDeath(cid, corpse, killer)

registerCreatureEvent(cid, "inquisitionPortals")

local creaturename = getCreatureName(cid)

local ushuriel_in_position = {x=246, y=351, z=12, stackpos=2}
local annihilon_in_position = {x=637, y=472, z=13, stackpos=2}
local hellgorak_in_position = {x=335, y=581, z=10, stackpos=2}
local madareth_in_position = {x=340, y=460, z=13, stackpos=2}
local zugurosh_in_position = {x=390, y=525, z=13, stackpos=2}
local brothers_in_position = {x=505, y=345, z=13, stackpos=1}

local ushuriel_to_position = {x=172, y=559, z=13, stackpos=1}
local annihilon_to_position = {x=294, y=681, z=13, stackpos=1}
local hellgorak_to_position = {x=255, y=467, z=13, stackpos=1}
local madareth_to_position = {x=287, y=365, z=13, stackpos=1}
local zugurosh_to_position = {x=314, y=474, z=13, stackpos=1}
local brothers_to_position = {x=408, y=413, z=13, stackpos=1}

local time_to_pass = 180
local tpID = 5023
local doEffect = CONST_ME_ENERGYHIT
local message = "You now have 3 minutes to exit this room through the teleporter. It will bring you to the next room only during his time or the teleporter will disappear."

if creaturename == 'Ushuriel' then

teleport = doCreateTeleport(tpID, ushuriel_to_position, ushuriel_in_position)

doSendMagicEffect(ushuriel_in_position, CONST_ME_ENERGYHIT)

doCreatureSay(cid, message, TALKTYPE_ORANGE_1)

addEvent(removeTeleportInUshurielWard, (1000*time_to_pass))

elseif creaturename == 'Annihilon' then

teleport = doCreateTeleport(tpID, annihilon_to_position, annihilon_in_position)

doSendMagicEffect(annihilon_in_position, CONST_ME_ENERGYHIT)

doCreatureSay(cid, message, TALKTYPE_ORANGE_1)

addEvent(removeTeleportInAnnihilonWard, (1000*time_to_pass))

elseif creaturename == 'Madareth' then

teleport = doCreateTeleport(tpID, madareth_to_position, madareth_in_position)

doSendMagicEffect(madareth_in_position, CONST_ME_ENERGYHIT)

doCreatureSay(cid, message, TALKTYPE_ORANGE_1)

addEvent(removeTeleportInMadarethWard, (1000*time_to_pass))

elseif creaturename == 'Hellgorak' then

teleport = doCreateTeleport(tpID, hellgorak_to_position, hellgorak_in_position)

doSendMagicEffect(hellgorak_in_position, CONST_ME_ENERGYHIT)

doCreatureSay(cid, message, TALKTYPE_ORANGE_1)

addEvent(removeTeleportInHellgorakWard, (1000*time_to_pass))

elseif creaturename == 'Zugurosh' then

teleport = doCreateTeleport(tpID, zugurosh_to_position, zugurosh_in_position)

doSendMagicEffect(zugurosh_in_position, CONST_ME_ENERGYHIT)

doCreatureSay(cid, message, TALKTYPE_ORANGE_1)

addEvent(removeTeleportInZuguroshWard, (1000*time_to_pass))

elseif creaturename == 'Latrivan' then

teleport = doCreateTeleport(tpID, brothers_to_position, brothers_in_position)

doSendMagicEffect(brothers_in_position, CONST_ME_ENERGYHIT)

doCreatureSay(cid, message, TALKTYPE_ORANGE_1)

addEvent(removeTeleportInBrothersWard, (1000*time_to_pass))


end
end

function removeTeleportInUshurielWard()
if getThingfromPos({x=246, y=351, z=12, stackpos=1}).itemid == 5023 then
doRemoveItem(getThingfromPos({x=246, y=351, z=12, stackpos=1}).uid,1)
doSendMagicEffect({x=246, y=351, z=12, stackpos=1}, CONST_ME_POFF)
return TRUE
end
end

function removeTeleportInAnnihilonWard()
if getThingfromPos({x=637, y=472, z=13, stackpos=1}).itemid == 5023 then
doRemoveItem(getThingfromPos({x=637, y=472, z=13, stackpos=1}).uid,1)
doSendMagicEffect({x=637, y=472, z=13, stackpos=1}, CONST_ME_POFF)
return TRUE
end
end

function removeTeleportInHellgorakWard()
if getThingfromPos({x=335, y=581, z=10, stackpos=1}).itemid == 5023 then
doRemoveItem(getThingfromPos({x=335, y=581, z=10, stackpos=1}).uid,1)
doSendMagicEffect({x=335, y=581, z=10, stackpos=1}, CONST_ME_POFF)
return TRUE
end
end

function removeTeleportInMadarethWard()
if getThingfromPos({x=340, y=460, z=13, stackpos=1}).itemid == 5023 then
doRemoveItem(getThingfromPos({x=340, y=460, z=13, stackpos=1}).uid,1)
doSendMagicEffect({x=340, y=460, z=13, stackpos=1}, CONST_ME_POFF)
return TRUE
end
end

function removeTeleportInZuguroshWard()
if getThingfromPos({x=390, y=525, z=13, stackpos=1}).itemid == 5023 then
doRemoveItem(getThingfromPos({x=390, y=525, z=13, stackpos=1}).uid,1)
doSendMagicEffect({x=390, y=525, z=13, stackpos=1}, CONST_ME_POFF)
return TRUE
end
end

function removeTeleportInBrothersWard()
if getThingfromPos({x=505, y=345, z=13, stackpos=1}).itemid == 5023 then
doRemoveItem(getThingfromPos({x=505, y=345, z=13, stackpos=1}).uid,1)
doSendMagicEffect({x=505, y=345, z=13, stackpos=1}, CONST_ME_POFF)
return TRUE
end
end

Creature.xml

Code:
	<event type="death" name="inquisitionPortals" event="script" value="inquisitionPortals.lua"/>
 
Try this MOD not made by me but works 100%.

Code:
<?xml version="1.0" encoding="UTF-8"?>
<mod name="Inquisition"

version="2.0" author="Tommy" contact="[email protected]" enabled="yes">
<config name="inqusitionFunctions"><![CDATA[
config = {
    message = "Go into the created teleporter within 3 minutes, else it will disappear.",
    timeToRemove = 180, -- seconds
    teleportId = 1387,
    MonStor = 48000,
    bosses = { -- Monster Name, Teleport To Position, Teleport Position, UID
        ["Ushuriel"] = { ptp={ x=1378, y=1343, z=5}, pp={ x=1320, y=1419, z=5, stackpos=1 }, uid=49100 },
        ["Annihilon"] = { ptp={ x=1449, y=1501, z=5 }, pp={ x=1392, y=1403, z=5, stackpos=1 }, uid=49200 },
        ["Hellgorak"] = { ptp={ x=1269, y=1513, z=6 }, pp={ x=1397, y=1445, z=5, stackpos=1 }, uid=49300 },
        ["Madareth"] = { ptp={ x=1250, y=1411, z=6}, pp={ x=1317, y=1445, z=5, stackpos=1 }, uid=49400 },
        ["Zugurosh"] = { ptp={ x=1333, y=1355, z=5 }, pp={ x=1354, y=1418, z=5, stackpos=1 }, uid=49500 },
        ["Latrivan"] = { ptp={ x=1358, y=1400, z=6}, pp={ x=1352, y=1449, z=5, stackpos=1 }, uid=49600 }
    }
}

    function removal(position)
    if getThingfromPos(position).itemid == config.teleportId then
        doRemoveItem(getThingfromPos(position).uid)
    end
    return TRUE
end]]></config>

        <event type="login" name="inquisitionRegister" event="script"><![CDATA[
        domodlib('inqusitionFunctions')
        function onLogin(cid)
    registerCreatureEvent(cid, "Inquisition")
        return true
end]]></event>

    <event type="kill" name="Inquisition" event="script"><![CDATA[
function onKill(cid, target, lastHit)
    if(config.bosses[getCreatureName(target)]) then
        local t = config.bosses[getCreatureName(target)]
        local teleport = doCreateTeleport(config.teleportId, t.ptp, t.pp)
        local position = t.pp
        doItemSetAttribute(teleport, "uid", t.uid)
        doCreatureSay(cid, config.message, TALKTYPE_ORANGE_1)
        addEvent(removal, config.timeToRemove * 1000, position)
    end
    return TRUE
end]]></event>


         <action fromuid="2011" touid="2019" event="script"><![CDATA[
        domodlib('inqusitionFunctions')
    local storage = 50301
    local inquisitionRewards = {
        [2019] = 8890, --a robe of the underworld
        [2013] = 8918, --a spellbook of dark mysteries
        [2018] = 8881, --a fireborn giant armor
        [2017] = 8888, --a master archer's armor
        [2011] = 8851, --a royal crossbow
        [2012] = 8854, --a warsinger bow
        [2015] = 8924, --a hellforged axe
        [2014] = 8930, --a emerald sword
        [2016] = 8928, --a obsidian truncheon
    }
    
    if inquisitionRewards[item.uid] then
        if getPlayerStorageValue(cid, storage) < 1 then
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have found " .. getItemArticleById(inquisitionRewards[item.uid]) .. " " .. getItemNameById(inquisitionRewards[item.uid]) .. ".")
            doPlayerAddItem(cid, inquisitionRewards[item.uid], 1)
            setPlayerStorageValue(cid, storage, 1)
                                addPlayerRep(cid, 5, TEXTCOLOR_LIGHTBLUE)
        else
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is empty.") 
        end
    end
    
    return true
]]></action>
</mod>
 
Back
Top Bottom