Jump to content

[TFS 1.1] Criar TP por talkaction


Recommended Posts

E aí galera, beleza?
Venho trazer esse script aqui que eu encontrei num server que eu baxei (não sei quem é o autor), e achei muito interessante.

O que ele faz? Se você for GOD, ele cria um TP com as coordenadas digitadas no param da talkaction na sua frente, desde que a posição na sua frente não seja um player ou um item não~tile.

 

function onSay(player, words, param)    if player:getAccountType() < ACCOUNT_TYPE_GOD then        return true    end    local split = param:split(",")    if tonumber(split[3]) == nil then        player:sendCancelMessage("Insufficient parameters.")        return false    end       local msg = nil    for i = 1, #split do        split[i] = tonumber(split[i])    end    local direction = {        [0] = function(ps) ps.y = ps.y - 1 return ps end,        [1] = function(ps) ps.x = ps.x + 1 return ps end,        [2] = function(ps) ps.y = ps.y + 1 return ps end,        [3] = function(ps) ps.x = ps.x - 1 return ps end    }    local teleporter = direction[player:getDirection()](player:getPosition())    if isCreature(Tile(teleporter):getTopCreature()) then        msg = "You cannot create a teleport on top of a player."    end     if Tile(teleporter):getTopDownItem() then        msg = "You cannot create a teleport on top of an item."    end       if not msg then        msg = "Teleport created to cordinates: {X: "..split[1].." Y: "..split[2].." Z: "..split[3].."}."        doCreateTeleport(1387, {x = split[1], y = split[2], z = split[3]}, teleporter)    end       player:sendTextMessage(MESSAGE_STATUS_CONSOLE_ORANGE, msg)    return falseend


 

Créditos: ???, se alguém souber favor dizer

Link to comment
Share on other sites

  • 1 month later...

 

function onSay(cid, words, param, channel)    local T = string.explode(param, ",")    local toPos = {x = T[1], y = T[2], z = T[3]}        if not param or not tonumber(T[1]) or not tonumber(T[2]) or not tonumber(T[3]) then        doPlayerSendTextMessage(cid, 27, "Erro, voce expecificar a posicao corretamente (posx, posy, posz)") return true            end    doCreateTeleport(1387, toPos, getPosByDir(getCreaturePosition(cid), getCreatureLookDirection(cid), 1))    doSendMagicEffect(getPosByDir(getCreaturePosition(cid), getCreatureLookDirection(cid), 1), math.random(28, 30))    doSendAnimatedText(getPosByDir(getCreaturePosition(cid), getCreatureLookDirection(cid), 1), "TELEPORT", math.random(1, 255))    doPlayerSendTextMessage(cid, 28, "Teleport criado na posicao ( X: " .. T[1] .. " | Y: " .. T[2] .. " | Z: " .. T[3] .. ".")    return trueend

 

Esse aqui é mais antigo que o rascunho da bíblia, mas deve funcionar.

Edited by Skymagnum
postei errado
Link to comment
Share on other sites

  • 2 months later...
 Share

×
×
  • Create New...