Jump to content

ayuda con setCameraMatrix


Recommended Posts

Hola, estuve buscando una forma de que cuando el jugador se conecte al servidor automaticamente le salga diferentes lugares de San Andreas mientras le carga los archivos, así que encontré isTransferBoxActive con un ejemplo, pero me aparece la imagen luego de cargar por completo, quiero que suceda en la descarga:

    resourceRoot = getResourceRootElement(getThisResource()) 
function checkTransfer() 
    if isTransferBoxActive() == true then 
        fadeCamera( true, 5) 
        setCameraMatrix( 1468.8785400391, -919.25317382813, 100.153465271, 1468.388671875, -918.42474365234, 99.881813049316) 
    end 
end 
addEventHandler("onClientResourceStart",resourceRoot,checkTransfer) 

Link to comment
Tienes que hacerlo desde el servidor utilizando onPlayerJoin.

onClientResourceStart se triggea cuando el recurso se termina de descargar.

No sirve, también aparece luego de que carga completo:

function CAMERA() 
     fadeCamera(source, true, 2) 
     setCameraMatrix(source, 1468.8785400391, -919.25317382813, 100.153465271, 1468.388671875, -918.42474365234, 99.881813049316) 
end 
addEventHandler("onPlayerJoin", getRootElement(), CAMERA) 

Link to comment

Acabo de ver el ejemplo que tiene la wiki de isTransferBoxActive y se me ocurrió una idea algo turbia. Podrías realizar tal vez un par de eventos, uno que sea al entrar, hacer un loop de todos los recursos, comprobar si se están descargando y entonces hacer lo de los lugares.

resourceRoot = getResourceRootElement(getThisResource()) 
function checkTransfer() 
    if isTransferBoxActive() == true then 
        setTimer(checkTransfer,2000,1) -- Check again after 2 seconds 
    else  
        fadeCamera(true)  -- TransferBox isnt active, fade in camera 
    end 
end 
addEventHandler("onClientResourceStart",resourceRoot,checkTransfer) 
  

Link to comment
Acabo de ver el ejemplo que tiene la wiki de isTransferBoxActive y se me ocurrió una idea algo turbia. Podrías realizar tal vez un par de eventos, uno que sea al entrar, hacer un loop de todos los recursos, comprobar si se están descargando y entonces hacer lo de los lugares.
resourceRoot = getResourceRootElement(getThisResource()) 
function checkTransfer() 
    if isTransferBoxActive() == true then 
        setTimer(checkTransfer,2000,1) -- Check again after 2 seconds 
    else  
        fadeCamera(true)  -- TransferBox isnt active, fade in camera 
    end 
end 
addEventHandler("onClientResourceStart",resourceRoot,checkTransfer) 
  

No entendí muy bien lo de los loops, me darías un ejemplo? ademas hice lo siguiente pero no me dio resultado, al entrar la pantalla es negra, pero sale el letrero de donde esta ubicada la cámara , por lo que quiere decir que la camara si esta ubicada en el lugar desde que entro pero la pantalla es negra, y justo cuando termina de descargar aparece la imagen de la cámara:

SERVER:

function camera () 
    fadeCamera(source, true, 1) 
     setCameraMatrix(source, 2003, -881, 130, 1832, -1249, 64) 
end 
addEvent("onPlayerJoin", true) 
addEventHandler("onPlayerJoin", getRootElement(), camera) 
  

CLIENT:

    function () 
    if isTransferBoxActive() == true then 
    triggerServerEvent("onPlayerJoin", getLocalPlayer() ) 
    end 
    end 

Link to comment
Acabo de ver el ejemplo que tiene la wiki de isTransferBoxActive y se me ocurrió una idea algo turbia. Podrías realizar tal vez un par de eventos, uno que sea al entrar, hacer un loop de todos los recursos, comprobar si se están descargando y entonces hacer lo de los lugares.
resourceRoot = getResourceRootElement(getThisResource()) 
function checkTransfer() 
    if isTransferBoxActive() == true then 
        setTimer(checkTransfer,2000,1) -- Check again after 2 seconds 
    else  
        fadeCamera(true)  -- TransferBox isnt active, fade in camera 
    end 
end 
addEventHandler("onClientResourceStart",resourceRoot,checkTransfer) 
  

No entendí muy bien lo de los loops, me darías un ejemplo? ademas hice lo siguiente pero no me dio resultado, al entrar la pantalla es negra, pero sale el letrero de donde esta ubicada la cámara , por lo que quiere decir que la camara si esta ubicada en el lugar desde que entro pero la pantalla es negra, y justo cuando termina de descargar aparece la imagen de la cámara:

SERVER:

function camera () 
    fadeCamera(source, true, 1) 
     setCameraMatrix(source, 2003, -881, 130, 1832, -1249, 64) 
end 
addEvent("onPlayerJoin", true) 
addEventHandler("onPlayerJoin", getRootElement(), camera) 
  

CLIENT:

    function () 
    if isTransferBoxActive() == true then 
    triggerServerEvent("onPlayerJoin", getLocalPlayer() ) 
    end 
    end 

Lo negro es por el fadeCamera.

Link to comment

El loop básicamente es un bucle que devuelve todo lo que hayas asignado. En este caso, los recursos. Tienes la función getResources, que te devuelve una tabla con absolutamente todos los recursos que tienes en el servidor. Simplemente usa tu lógica y realiza el script.

function displayResources() 
     outputConsole("List of resources:") 
     local resourceTable = getResources() -- get a table of resources 
     for resourceKey, resourceValue in ipairs(resourceTable) do 
          -- iterate through the table and output each resource's name 
          local name = getResourceName(resourceValue) 
          outputConsole(" " .. name) 
     end 
end 
  

Link to comment
El loop básicamente es un bucle que devuelve todo lo que hayas asignado. En este caso, los recursos. Tienes la función getResources, que te devuelve una tabla con absolutamente todos los recursos que tienes en el servidor. Simplemente usa tu lógica y realiza el script.
function displayResources() 
     outputConsole("List of resources:") 
     local resourceTable = getResources() -- get a table of resources 
     for resourceKey, resourceValue in ipairs(resourceTable) do 
          -- iterate through the table and output each resource's name 
          local name = getResourceName(resourceValue) 
          outputConsole(" " .. name) 
     end 
end 
  

Pero no te dice si están descargados al 100%, isTransferBoxActive te dice si hay algo descargando.

Link to comment

Pero no te dice si están descargados al 100%, isTransferBoxActive te dice si hay algo descargando.

Eso pensé yo, y lo del fadeCamera se lo que es intente dejando solo el setCameraMatrix pero la pantalla se quedo en negro incluso después de descargar por completo ,ya no se como hacer que se vea el setCameraMatrix mientras se descargan los archivos, lo he visto en otros servidores y la verdad es una buena idea.

Link to comment
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...