• 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!

Lua getThingfromPos tfs 1.5 problem error in console

Felipe93

Ghost Member
Joined
Mar 21, 2015
Messages
1,990
Solutions
9
Reaction score
334
Location
Chile
Code:
Lua Script Error: [Action Interface]
data/actions/scripts/abwaspbrigde.lua:onUse
data/actions/scripts/abwaspbrigde.lua:22: attempt to call global 'getThingFromPos' (a nil value)
stack traceback:
        [C]: in function 'getThingFromPos'
        data/actions/scripts/abwaspbrigde.lua:22: in function <data/actions/scripts/abwaspbrigde.lua:16>
Lua:
local bridge = {
   [1] = {x = 32627, y = 31699, z = 10}, -- izquierda
   [2] = {x = 32628, y = 31699, z = 10}, -- medio
   [3] = {x = 32629, y = 31699, z = 10}  -- derecha
}
 
local tiles = {
   bridge_tile = 1284, -- id del puente
   dirt_tile = 103, -- id de la tierra
   L_water_tile = 4799, -- id del item que creara a la izquierda
   M_water_tile = 493, -- id de el item que creara en medio
   R_water_tile = 4797 -- id del item que creara a la derecha
}
 
local reposicion = {x = 32630, y = 31699, z = 10} -- donde se reposicionan las cosas
function onUse(player, item, fromPosition, target, toPosition, isHotkey)
   if item.itemid == 1946 then
       doTransformItem(item.aid, item.itemid - 1)
   else
       doTransformItem(item.aid, item.itemid + 1)
   end
   if getThingFromPos(bridge[2]).itemid ~= tiles.bridge_tile then
       doTransformItem(getThingfromPos({x = bridge[1].x, y = bridge[1].y, z = bridge[1].z, stackpos = 1}).aid, tiles.bridge_tile)
       doCreateItem(tiles.bridge_tile, 1, bridge[2])
       doTransformItem(getThingfromPos({x = bridge[3].x, y = bridge[3].y, z = bridge[3].z, stackpos = 1}).aid, tiles.bridge_tile)
   else
       for i = 1, #bridge do
           doRelocate(bridge[i], reposicion)
           --doCleanTile(bridge[i], false)
       end
       doTransformItem(getThingfromPos({x = bridge[1].x, y = bridge[1].y, z = bridge[1].z, stackpos = 0}).aid, tiles.L_water_tile)
       doTransformItem(getThingfromPos({x = bridge[3].x, y = bridge[3].y, z = bridge[3].z, stackpos = 0}).aid, tiles.R_water_tile)
       doCreateItem(tiles.M_water_tile, 1, bridge[1])
       doCreateItem(tiles.M_water_tile, 1, bridge[2])
       doCreateItem(tiles.M_water_tile, 1, bridge[3])
   end
   return true
end
this script used to work in tfs 1.3 what might be wrong?

for which function should i replace this one?
Code:
doTransformItem(getThingfromPos
Post automatically merged:

Now im testing with this other script i don't get errors in console but it does not even works
Lua:
local config = {
    bridgePositions = {
        Position(32627, 31699, 10),
        Position(32628, 31699, 10),
        Position(32629, 31699, 10)
    },
    removeCreaturePosition = Position(32630, 31699, 10),
    bridgeID = 1228,
    waterID = 493
}

function onUse(player, item, fromPosition, target, toPosition, isHotkey)
    local tile, thing, creature
    for i = 1, #config.bridgePositions do
        tile = Tile(config.bridgePositions[i])
        if tile then
            thing, creature = tile:getItemById(item.itemid == 1945 and config.waterID or config.bridgeID), tile:getTopCreature()
            if thing then
                thing:transform(item.itemid == 1945 and config.bridgeID or config.waterID)
            end

            if creature then
                creature:teleportTo(config.removeCreaturePosition)
            end
        end
    end

    item:transform(item.itemid == 1945 and 1946 or 1945)
    return true
end
 
Last edited:
Back
Top