Jump to content

Recommended Posts

En primer lugar deberías usar:

addEventHandler ("onPlayerLogin",root,funciondelogin)

Debido a que no sé si sólo quieres que le aparezca al usuario que se loguea o a todos, te pondré ambas y ya.

Lo siguiente va por parte del servidor:

-- PARA TODOS LOS JUGADORES

function funciondelogin(cuentaanterior,cuentaactual)
  nombreCuenta = getAccountName (cuentaactual) --Coge el nombre de cuenta del que se ha logueado
  
    if isObjectInACLGroup ("user."..nombreCuenta,aclGetGroup ("Admin")) then --Miro a ver si su cuenta está incluída en la lista de admins.
      for indice,jugadores in ipairs (getElementsByType("player")) do --Cojo todos los jugadores y ejecuto la función para cada uno.
        triggerClientEvent (jugadores,"mostraraviso",source) --Envía al jugador un evento de cliente
      end
    end
  
 end

-- PARA EL STAFF QUE SE LOGUEA SOLAMENTE

function funciondelogin(cuentaanterior,cuentaactual)
  nombreCuenta = getAccountName (cuentaactual) --Coge el nombre de cuenta del que se ha logueado
  
    if isObjectInACLGroup ("user."..nombreCuenta,aclGetGroup ("Admin")) then --Miro a ver si su cuenta está incluída en la lista de admins.
        triggerClientEvent (source,"mostraraviso",source) --Envía al jugador un evento de cliente
    end
  
 end

Esto por el cliente:

local nombre

function dibujarimagen ()
  -- x,y son coordenadas, w,h es el tamaño. Usa GUIEditor para utilizar dxDrawImage si te parece algo dificil ponerlo en escala a la resolución del jugador.
  dxDrawImage ("imagen.png",x,y,w,h)
  dxDrawText (nombre.." se ha conectado etc etc etc",x,y,w,h) 
end


addEvent ("mostraraviso",true) --Añadimos el evento y le damos el "true" para que se pueda ejecutar desde fuera
addEventHandler ("mostraraviso",root,function() --Aqui juntamos el evento con la funcion
    nombre = getPlayerName (source) --Cogemos el nombre del jugador
  addEventHandler ("onClientRender",root,dibujarimagen) --onClientRender sirve para que la imagen, por ejemplo, se ponga a cada fps. Así funciona dxDraw.
    local musica = playSound ("sonido.wav") --Sonido 
    setTimer (function() --Temporizador de 3000 milisegundos
      stopSound (musica) --paramos la musica
      removeEventHandler ("onClientRender",root,dibujarimagen) --Quitamos el evento que dibuja la imagen
    end,3000,1)
  
  end)

 

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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