[Resolvido][MTA] Angulo do player

    Compartilhe

    EduardoJ.
    Mensagens Nível 5
    Mensagens Nível 5

    Título : Aspirante a matemático
    Mensagens : 571
    Reputação : 18
    Idade : 19
    Localização : Anápolis - Goias

    [Resolvido][MTA] Angulo do player

    Mensagem por EduardoJ. em Sex 01 Mar 2013, 12:56

    queria saber como pegar o angulo do player ou o angulo da cara dele, dei uma procuradinha e n tava encontrando (n sei se e pq n procurei direito kk) ok

    se alguem souber.

    ps: E DO MTA NAO DO SAMP.


    Última edição por Yugi em Sex 01 Mar 2013, 13:14, editado 1 vez(es)

    Fabio
    Programador - Avançado
    Programador - Avançado

    Título : CEO da Fabio's Gambiarra Industries
    Mensagens : 18286
    Reputação : 306
    Idade : 19
    Localização : Reserva, Paraná, Brasil, América Latina, America do Sul, América, Planeta Terra, Sistema Solar, Via láctea, Universo
    Link : gtamodvicio.blogspot.com

    Re: [Resolvido][MTA] Angulo do player

    Mensagem por Fabio em Sex 01 Mar 2013, 13:05

    Código:

    lfunction Euler_XYZ_to_YXZ(rx, ry, rz)
        rx = math.rad(rx)
        ry = math.rad(ry)
        rz = math.rad(rz)
     
        local sinX = math.sin(rx)
        local cosX = math.cos(rx)
        local sinY = math.sin(ry)
        local cosY = math.cos(ry)
        local sinZ = math.sin(rz)
        local cosZ = math.cos(rz)
     
        local newRx = math.asin(cosY * sinX)
     
        local newRy = math.atan2(sinY, cosX * cosY)
     
        local newRz = math.atan2(cosX * sinZ - cosZ * sinX * sinY, cosX * cosZ + sinX * sinY * sinZ)
     
        return  math.deg(newRx),
                    math.deg(newRy),
                    math.deg(newRz)
    end
     
    -- Adapted and fixed from http://bugs.mtasa.com/view.php?id=4609
    function Euler_YXZ_to_XYZ(rx, ry, rz)
        rx = math.rad(rx)
        ry = math.rad(ry)
        rz = math.rad(rz)
     
        local sinX = math.sin(rx)
        local cosX = math.cos(rx)
        local sinY = math.sin(ry)
        local cosY = math.cos(ry)
        local sinZ = math.sin(rz)
        local cosZ = math.cos(rz)
     
        local newRx = math.atan2(sinX, cosX * cosY)
        local newRy = math.asin(cosX * sinY)
        local newRz = math.atan2(cosZ * sinX * sinY + cosY * sinZ, cosY * cosZ - sinX * sinY * sinZ)
                         
        return  math.deg(newRx),
                    math.deg(newRy),
                    math.deg(newRz)
    end
     
    local _setElementRotation = setElementRotation
    function setElementRotation(element, rx, ry, rz, bZeroOnZIsEast)
        if not element or not isElement(element) then
            return false
        end
     
        if bZeroOnZIsEast then
            rz = rz - 90
            rx, ry = -ry, rx
        end
     
        local eType = getElementType(element)
        if eType == "ped" or eType == "player" then
            return _setElementRotation(element, -rx, -ry, -rz)
        elseif eType == "object" then
            return _setElementRotation(element, Euler_XYZ_to_YXZ(rx, ry, rz))
        else
            return _setElementRotation(element, rx, ry, rz)
        end
    end
     
    local _getElementRotation = getElementRotation
    function getElementRotation(element, bZeroOnZIsEast)
        if not element or not isElement(element) then
            return false
        end
     
        local eType = getElementType(element)
        local rx, ry, rz = _getElementRotation(element)
     
        if bZeroOnZIsEast then
            rz = rz + 90
            rx, ry = ry, -rx
        end
     
        if eType == "ped" or eType == "player" then
            rx, ry = -rx, -ry
        elseif eType == "object" then
            for i=1,3 do
                rx, ry, rz = Euler_YXZ_to_XYZ(rx, ry, rz)
            end
        end
     
        local angles = {rx, ry, rz}
        for i=1,3 do
            if angles[i] < 0 then
                angles[i] = angles[i] + 360
            elseif angles[i] >= 360 then
                angles[i] = angles[i] - 360
            end
        end
        return unpack(angles)
    end

    Tenta isso

    http://forum.mtasa.com/viewtopic.php?f=91&t=29888


    ____________________

    Modifico quase qualquer coisa.   :)
    ------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

    Meu PC:
    Spoiler:

    Configurações PC:
    *Processador: Intel Core i7 4790K 4.00GHz LGA1150
    *Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
    *HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
    *HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
    *Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
    *RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
    *Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
    *Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
    *Monitor: LG 23MP55HQ Full HD HDMI 23'

    EduardoJ.
    Mensagens Nível 5
    Mensagens Nível 5

    Título : Aspirante a matemático
    Mensagens : 571
    Reputação : 18
    Idade : 19
    Localização : Anápolis - Goias

    Re: [Resolvido][MTA] Angulo do player

    Mensagem por EduardoJ. em Sex 01 Mar 2013, 13:14

    fabio, vlw ai mano

    eu pensei em player e angle,
    mais o nome do bagui de pega rotação é
    getElementRotation()
    (eu vi isso quando li na pagina q mando ai kk)

    pode dar closed.

    Fabio
    Programador - Avançado
    Programador - Avançado

    Título : CEO da Fabio's Gambiarra Industries
    Mensagens : 18286
    Reputação : 306
    Idade : 19
    Localização : Reserva, Paraná, Brasil, América Latina, America do Sul, América, Planeta Terra, Sistema Solar, Via láctea, Universo
    Link : gtamodvicio.blogspot.com

    Re: [Resolvido][MTA] Angulo do player

    Mensagem por Fabio em Sex 01 Mar 2013, 13:28

    Closed, de nada :)


    ____________________

    Modifico quase qualquer coisa.   :)
    ------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

    Meu PC:
    Spoiler:

    Configurações PC:
    *Processador: Intel Core i7 4790K 4.00GHz LGA1150
    *Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
    *HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
    *HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
    *Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
    *RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
    *Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
    *Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
    *Monitor: LG 23MP55HQ Full HD HDMI 23'

    Conteúdo patrocinado

    Re: [Resolvido][MTA] Angulo do player

    Mensagem por Conteúdo patrocinado Hoje à(s) 12:42


      Data/hora atual: Seg 23 Jan 2017, 12:42