Antho7Twitch / jays-spawn-anim

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

just something i cooked up hope this helps someone.

  • i will update it here once i've improved the camera animations and smoothness of transitions
  • feel free to do any PRs
  • i will add later on for it to work with apartments and any housing script

PLEASE PLEASE JOIN MY DISCORD FOR MORE CONTENT https://discord.gg/9Z5cdJhsRM

PREVIEW: https://streamable.com/g0t87h

Just trigger this event with the right coords in "pos"

TriggerEvent("jays-spawn-anim:doSpawnAnimationAndSpawnIn", pos)

MAKE SURE TO REMOVE PostSpawnPlayer() OR ADD A WAIT TIME BEFORE DELETING CAMERAS ETC

THANKS GUYS <3

EXAMPLE: QB-SPAWN

RegisterNUICallback('spawnplayer', function(data, cb)
    local location = tostring(data.spawnloc)
    local type = tostring(data.typeLoc)
    local ped = PlayerPedId()
    local PlayerData = QBCore.Functions.GetPlayerData()
    local insideMeta = PlayerData.metadata["inside"]
    if type == "current" then
        PreSpawnPlayer()
        QBCore.Functions.GetPlayerData(function(pd)
            ped = PlayerPedId()
            TriggerEvent("jays-spawn-anim:doSpawnAnimationAndSpawnIn", pd.position)
            SetEntityCoords(ped, pd.position.x, pd.position.y, pd.position.z)
            SetEntityHeading(ped, pd.position.a)
            FreezeEntityPosition(ped, false)

        end)

        if insideMeta.house ~= nil then
            local houseId = insideMeta.house
            TriggerEvent('qb-houses:client:LastLocationHouse', houseId)
        elseif insideMeta.apartment.apartmentType ~= nil or insideMeta.apartment.apartmentId ~= nil then
            local apartmentType = insideMeta.apartment.apartmentType
            local apartmentId = insideMeta.apartment.apartmentId
            TriggerEvent('qb-apartments:client:LastLocationHouse', apartmentType, apartmentId)
        end
        TriggerServerEvent('QBCore:Server:OnPlayerLoaded')
        TriggerEvent('QBCore:Client:OnPlayerLoaded')
        PostSpawnPlayer()
    elseif type == "house" then
        PreSpawnPlayer()
        TriggerEvent('qb-houses:client:enterOwnedHouse', location)
        TriggerServerEvent('QBCore:Server:OnPlayerLoaded')
        TriggerEvent('QBCore:Client:OnPlayerLoaded')
        TriggerServerEvent('qb-houses:server:SetInsideMeta', 0, false)
        TriggerServerEvent('qb-apartments:server:SetInsideMeta', 0, 0, false)
        PostSpawnPlayer()
    elseif type == "normal" then
        local pos = QB.Spawns[location].coords
        PreSpawnPlayer()
        SetEntityCoords(ped, pos.x, pos.y, pos.z)
        TriggerServerEvent('QBCore:Server:OnPlayerLoaded')
        TriggerEvent('QBCore:Client:OnPlayerLoaded')
        TriggerServerEvent('qb-houses:server:SetInsideMeta', 0, false)
        TriggerServerEvent('qb-apartments:server:SetInsideMeta', 0, 0, false)
        Wait(500)
        SetEntityCoords(ped, pos.x, pos.y, pos.z)
        SetEntityHeading(ped, pos.w)
        TriggerEvent("jays-spawn-anim:doSpawnAnimationAndSpawnIn", pos)
        Wait(10000)
        PostSpawnPlayer()
    end
    cb('ok')
end)

About

License:GNU General Public License v3.0


Languages

Language:Lua 100.0%