Jump to content

Ayuda con una funcion


Soren

Recommended Posts

Recién estoy empezando en Lua, pero creo que no es necesario ningún timer. Según vi en la Wiki podrías utilizar sólo SetCameraTarget y lo seguiría. Podrías probar:

  
function SetSpect(killer) -- killer si no me equivoco lo tomaría de onClientPlayerWasted. 
    local user = getLocalPlayer() -- éste sería el usuario. 
    setCameraTarget(user, killer) -- y acá seteas la cámara del user en la del killer. 
end 
addEventHandler ("onClientPlayerWasted", getLocalPlayer(), SetSpect) 
  

Como dije, recién estoy empezando y no se si éste código es correcto pero probando aprendo y ya veré cuando venga alguien que sepa si lo hice bien. Puede que sea cualquier cosa lo que dije, pero no lo se xD

Un saludo, Julián.

Link to comment

Si, eso estaria bien, igual no hay porque definir "user" ;).

Ademas aconsejo verificar si el que lo mato al jugador existe y es un jugador.

function SetSpect ( killer ) 
    if ( killer and getElementType ( killer ) == "player" ) then 
        setCameraTarget ( localPlayer, killer ) 
    end 
end 
addEventHandler ( "onClientPlayerWasted", localPlayer, SetSpect ) 

Link to comment

Gracias por corregir el código que puse, al menos algo me salió. La intención estuvo xD. No sabía que al poner la variable en el segundo argumento ya se podría utilizar en la función, pensé que era necesario definirse nuevamente.

Un saludo!

Edited by Guest
Link to comment

Bueno, si. No había pensado en terminar de espiarlo, es que él no lo había comentado en su mensaje por eso xD. Pensé que con poner un timer te referías que se actualice constantemente a la posición nueva del killer, por eso puse que no era necesario.

Un saludo!

Link to comment

Si hubieses si quiera entrado a la función setCameraTarget tendrías ahí un ejemplo (de lo que dice Solid).

Cito:

g_Players = getElementsByType("player")        -- get a list of all players in the server 
for i,aPlayer in ipairs(g_Players) do          -- find out what index the local player has in the list 
    if aPlayer == getLocalPlayer() then 
        g_CurrentSpectated = i 
        break 
    end 
end 
  
function spectatePrevious()                    -- decrement the spectate index and spectate the corresponding player 
     if g_CurrentSpectated == 1 then 
         g_CurrentSpectated = #g_Players 
     else 
         g_CurrentSpectated = g_CurrentSpectated - 1 
     end 
    setCameraTarget(g_Players[g_CurrentSpectated]) 
end 
  
function spectateNext()                        -- increment the spectate index and spectate the corresponding player 
     if g_CurrentSpectated == #g_Players then 
         g_CurrentSpectated = 1 
     else 
         g_CurrentSpectated = g_CurrentSpectated + 1 
     end 
    setCameraTarget(g_Players[g_CurrentSpectated]) 
end 
  
-- Bind above functions to arrow keys 
bindKey("arrow_l", "down", spectatePrevious) 
bindKey("arrow_r", "down", spectateNext) 

Link to comment
Si hubieses si quiera entrado a la función setCameraTarget tendrías ahí un ejemplo (de lo que dice Solid).

Cito:

g_Players = getElementsByType("player")        -- get a list of all players in the server 
for i,aPlayer in ipairs(g_Players) do          -- find out what index the local player has in the list 
    if aPlayer == getLocalPlayer() then 
        g_CurrentSpectated = i 
        break 
    end 
end 
  
function spectatePrevious()                    -- decrement the spectate index and spectate the corresponding player 
     if g_CurrentSpectated == 1 then 
         g_CurrentSpectated = #g_Players 
     else 
         g_CurrentSpectated = g_CurrentSpectated - 1 
     end 
    setCameraTarget(g_Players[g_CurrentSpectated]) 
end 
  
function spectateNext()                        -- increment the spectate index and spectate the corresponding player 
     if g_CurrentSpectated == #g_Players then 
         g_CurrentSpectated = 1 
     else 
         g_CurrentSpectated = g_CurrentSpectated + 1 
     end 
    setCameraTarget(g_Players[g_CurrentSpectated]) 
end 
  
-- Bind above functions to arrow keys 
bindKey("arrow_l", "down", spectatePrevious) 
bindKey("arrow_r", "down", spectateNext) 

Despues testeo este gracias Juli, o se me olvido decirte. Bienvenido a la communidad

Link to comment
@Soren: Si usases mas la wiki hubieras encontrado el ejemplo que Julián posteo.

Yo intento implementar mas mi mente e intento usar las funciones que yo ya conosco y si no encuentro ninguna busco en la wiki, si no encuentro algo parecido a lo que busco pues pregunto aqui

Link to comment
Al parcer lo que Julián posteo era parecido a lo que buscabas, me parece que no sabes buscar ;).

Hahahahahahahahahahahah me sacaste una risa, Si no se buscar xD ahora lo unico que me falta es crear las imagenes (flechitas) gracias Julian y Solid :3

Link to comment
  • Recently Browsing   0 members

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