Hello!
I saw this uniqe multi - teleport scroll i wanted to use on my own server.
Developed By.. J.Dre / Sonik / Fallen / Shinmaru
Link: http://otland.net/threads/teleport-scroll-unique-version.137262/
So far in this script you can only get teleported to a few common locations made for everybody so
I want to edit the .Lua script and add "houses", which mean you get teleported to your OWN house, like a house teleportation scroll. (House tp scroll and tp scroll in one)
How do i add a function like that in this .lua Creature script?
Thank you for reading my thread, Hope you guys can help me!
Solution:
I saw this uniqe multi - teleport scroll i wanted to use on my own server.
Developed By.. J.Dre / Sonik / Fallen / Shinmaru
Link: http://otland.net/threads/teleport-scroll-unique-version.137262/
So far in this script you can only get teleported to a few common locations made for everybody so
I want to edit the .Lua script and add "houses", which mean you get teleported to your OWN house, like a house teleportation scroll. (House tp scroll and tp scroll in one)
How do i add a function like that in this .lua Creature script?
PHP:
local t = {
["Temple"] = {pos = {x = 3000, y = 2098, z = 7}, storage = 1337, time = 30},
["Teleports"] = {pos = {x = 2815, y = 2025, z = 7}, storage = 1338, time = 30},
["Addons"] = {pos = {x = 1266, y = 880, z = 7}, storage = 1339, time = 30},
["Addon Bosses"] = {pos = {x = 1127, y = 907,z = 6}, storage = 1340, time = 30},
["Trainers"] = {pos = {x = 2877, y = 2005, z = 7}, storage = 1341, time = 30},
["Donation Quest"] = {pos = {x = 3160, y = 1572, z = 7}, storage = 1342, time = 30},
["Shops"] = {pos = {x = 2940, y = 2075, z = 7}, storage = 1343, time = 30},
["Sailors Quarter"] = {pos = {x = 3010, y = 2192, z = 6}, storage = 1344, time = 30}
}
function onTextEdit(cid, item, newText)
if item.itemid == 1949 then
if isPlayerPzLocked(cid) then
doCreatureSay(cid, "You are in a battle!", TALKTYPE_MONSTER)
return false
end
if isInArray({'locations', 'places', 'place'}, newText) then
local i = ''
for text, x in pairs(t) do
i = i .. "\n[" .. text .. "]"
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Current Teleportation Locations: " .. i)
else
local p = t[newText]
if not p then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Invalid location")
return false
end
local st = p.storage
if getCreatureStorage(cid, st) > os.time() then
doCreatureSay(cid, "You must wait another " .. getCreatureStorage(cid, st) - os.time() .. ' second' .. (getCreatureStorage(cid, st) - os.time() == 1 and "" or "s") .. " to travel there again.", TALKTYPE_MONSTER)
return true
end
local ti = p.time
local pos = p.pos
doTeleportThing(cid, pos, true)
doSendMagicEffect(pos, CONST_ME_TELEPORT)
doCreatureSetStorage(cid, st, os.time() + ti)
doCreatureSay(cid, "You have been teleported!", TALKTYPE_MONSTER)
end
end
return true
end
Thank you for reading my thread, Hope you guys can help me!
Solution:
PHP:
function onTextEdit(cid, item, newText)
local t = {
["temple"] = {pos = {x = 1000, y = 1000, z = 7}, storage = 1440, time = 300},
["hunts"] = {pos = {x = 892, y = 1030, z = 7}, storage = 1441, time = 300},
["quests"] = {pos = {x = 862, y = 1025, z = 6}, storage = 1442, time = 300},
["trainers"] = {pos = {x = 1194, y = 1080, z = 7}, storage = 1444, time = 300}
}
if item.itemid == 1948 then
if hasCondition(cid,CONDITION_INFIGHT) then
doCreatureSay(cid, "You are in a battle!", TALKTYPE_MONSTER)
return false
end
if isInArray({'locations', 'places', 'place'}, newText) then
local i = ''
for text, x in pairs(t) do
i = i .. "\n[" .. text .. "]"
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Current Teleportation Locations: " .. i)
else
for i,v in pairs(t) do
if getCreatureStorage(cid, v.storage) > os.time() then
doCreatureSay(cid, "You must wait another " .. getCreatureStorage(cid,v.storage) - os.time() .. ' second' .. (getCreatureStorage(cid, v.storage) - os.time() == 1 and "" or "s") .. " to travel there again.", TALKTYPE_MONSTER)
return true
end
end
if getCreatureStorage(cid,1443) > os.time() then
doCreatureSay(cid, "You must wait another " .. getCreatureStorage(cid, 1443) - os.time() .. ' second' .. (getCreatureStorage(cid, st) - os.time() == 1 and "" or "s") .. " to travel there again.", TALKTYPE_MONSTER)
return true
end
if newText == "temple" then
doTeleportThing(cid, {x = 1000, y = 1000, z = 7})
doCreatureSetStorage(cid, 1440, os.time() + 300)
doSendMagicEffect({x = 1000, y = 1000, z = 7}, CONST_ME_TELEPORT)
doCreatureSay(cid, "You have been teleported!", TALKTYPE_MONSTER)
elseif newText == "hunts" then
doTeleportThing(cid, {x = 892, y = 1030, z = 7})
doCreatureSetStorage(cid, 1441, os.time() + 300)
doSendMagicEffect({x = 892, y = 1030, z = 7}, CONST_ME_TELEPORT)
doCreatureSay(cid, "You have been teleported!", TALKTYPE_MONSTER)
elseif newText == "quests" then
doTeleportThing(cid, {x = 862, y = 1025, z = 6})
doCreatureSetStorage(cid, 1442, os.time() + 300)
doSendMagicEffect({x = 862, y = 1025, z = 6}, CONST_ME_TELEPORT)
doCreatureSay(cid, "You have been teleported!", TALKTYPE_MONSTER)
elseif newText == "house" then
doTeleportThing(cid, getHouseEntry(getHouseByPlayerGUID(getPlayerGUID(cid))), true)
doCreatureSetStorage(cid, 1443, os.time() + 300)
doSendMagicEffect(getHouseEntry(getHouseByPlayerGUID(getPlayerGUID(cid))), CONST_ME_TELEPORT)
doCreatureSay(cid, "You have been teleported!", TALKTYPE_MONSTER)
elseif newText == "trainers" then
doTeleportThing(cid, {x = 1194, y = 1080, z = 7})
doCreatureSetStorage(cid, 1444, os.time() + 300)
doSendMagicEffect({x = 1194, y = 1080, z = 7}, CONST_ME_TELEPORT)
doCreatureSay(cid, "You have been teleported!", TALKTYPE_MONSTER)
end
return true
end
end
return true
end
Last edited: