User:Stryp

From Multi Theft Auto: Wiki
Jump to navigation Jump to search

Some useful functions (for me at least)

Deleting colorcodes from whatever (bigbig thanks for eeew)

function noColors(input) return input:gsub("#%x%x%x%x%x%x","") end

isVehicleLockable by me

function isVehicleLockable (vehicle)
    local notLockableVehicles = {594, 606, 607, 611, 584, 608, 435, 450, 591, 539, 441, 464, 501, 465, 564, 472, 473, 493, 595, 484, 430, 453, 452, 446, 454, 581, 509, 481, 462, 521, 463, 510, 522, 461, 448, 468, 586, 425, 520}
    -- Table for lockable vehicles, 100% from me :D
    -- Maybe I missed some vehicles, feel free to edit it.
    local itsLockable = true -- At start, the vehicle is lockable.
    local myVehicle = getElementModel(vehicle) -- Get the model ID of the vehicle to work with it.
    for k, notLockableVehicle in pairs(notLockableVehicles) do -- Do for every notlockable vehicles
        if myVehicle == notLockableVehicle then -- If the vehicle inputted is a not lockable vehicle
            itsLockable = false -- Then its not lockable
            return false -- So return false, it isn't lockable
        end
    end
    if itsLockable == true then -- If we didn't set it to false before, then its lockable,
        return true -- So return true.
    end
    -- By Stryp
end

Some announce-like function to write to every players screen:

function showTextDisplay(player,command,...)
local display = textCreateDisplay()
local ann = table.concat(arg," ")
for k,v in ipairs(getElementsByType("player")) do
textDisplayAddObserver(display,v)
end
txt = textCreateTextItem(ann,0.01,0.95,"low",0,255,0,255,3)
textDisplayAddText(display,txt)
setTimer(textDisplayRemoveText,10000,1,display,txt)
setTimer(textDestroyDisplay,10000,1,display)
end
addCommandHandler("ann",showTextDisplay,true,false)

Server-side, can be used without command handler Need to add right to ACL to get it working

Not valid skin-ids:

 notValidSkins = {1,2,3,4,5,6,8,42,65,74,86,119,149,208,217,265,266,267,268,269,270,271,272,273} 

Clientsided position getting with /pos in chat or pos in console:

addCommandHandler("pos",function() local x,y,z = getElementPosition(getLocalPlayer())
outputChatBox("#ff0000"..x.." #ffff00"..y.." #00ff00"..z,0,255,0,true) end,false)

More will come...