Jump to content

Mostrar imagen al pararse en teleport


Facundoz

Recommended Posts

 

1 minute ago, Facundoz said:

Gracias por la respuesta, lo que sucede es que soy muy nuevo en esto y no se lo suficiente de script para armarlo, lo he intentado y no me sale

Podrías postear el codigo para que podamos ayudarte ?

Link to comment
3 minutes ago, <~KaMiKaZe~> said:

 

Podrías postear el codigo para que podamos ayudarte ?

Esto es lo que tengo hasta ahora: 

local marker = createMarker(7147.4609375, -2186.1020507813, 3.7390625476837 - 0.9, "cylinder", .75, 255, 0, 0) 
function showimage(hit)
    if getElementType(hit) == "player" then
        name = getPlayerName(getLocalPlayer())
        if getPlayerName(hit) == name then
            dxDrawImage(10, 10, 48, 48, "img/display.png") 
            end

Pero no muestra la imagen ni nada al pararme sobre el teleport :/ 

Link to comment
1 hour ago, Facundoz said:

Esto es lo que tengo hasta ahora: 

local marker = createMarker(7147.4609375, -2186.1020507813, 3.7390625476837 - 0.9, "cylinder", .75, 255, 0, 0) 
function showimage(hit)
    if getElementType(hit) == "player" then
        name = getPlayerName(getLocalPlayer())
        if getPlayerName(hit) == name then
            dxDrawImage(10, 10, 48, 48, "img/display.png") 
            end

Pero no muestra la imagen ni nada al pararme sobre el teleport :/ 

addEventHandler("onClientRender", root,
function()
if ( getElementData( localPlayer, "dibujarImagen" ) == true ) then
dxDrawImage(10, 10, 48, 48, "img/display.png")
end
end
)

local marker = createMarker(7147.4609375, -2186.1020507813, 3.7390625476837, "cylinder", 1.75, 255, 0, 0) 
function showimage(hit)
    if getElementType(hit) == "player" then
	  if hit == getLocalPlayer() then
       --local name = getPlayerName(getLocalPlayer())
        --if getPlayerName(hit) == name then
            setElementData( hit, "dibujarImagen", true ) 
		end
	end	
end	
addEventHandler("onClientMarkerHit", marker, showimage )	

function unShowImage(leave)
    if getElementType(leave) == "player" then
	    if leave == getLocalPlayer() then
	   setElementData( leave, "dibujarImagen", false ) 
	    end
    end		 
end
addEventHandler("onClientMarkerLeave", marker, unShowImage )

Tuviste algunos errores:

1- No pusiste los eventos ( Que son muy importantes para ejecutar la función ).

2- El tamaño del marker estaba mal.

3- La función dxDrawImage  solo se muestran por 1 milisegundo, por lo tanto, podrías haber usado el evento onClientRender.

4- La función showimage no está cerrada.

5- Esta linea es innecesaria :

local name = getPlayerName(getLocalPlayer())
if getPlayerName(hit) == name then

El codigo no lo probé todavía pero creo que está bien y si no, me avisas por fa.

Suerte :D

Edited by <~KaMiKaZe~>
  • Like 1
Link to comment
1 hour ago, <~KaMiKaZe~> said:

addEventHandler("onClientRender", root,
function()
if ( getElementData( localPlayer, "dibujarImagen" ) == true ) then
dxDrawImage(10, 10, 48, 48, "img/display.png")
end
end
)

local marker = createMarker(7147.4609375, -2186.1020507813, 3.7390625476837, "cylinder", 1.75, 255, 0, 0) 
function showimage(hit)
    if getElementType(hit) == "player" then
	  if hit == getLocalPlayer() then
       --local name = getPlayerName(getLocalPlayer())
        --if getPlayerName(hit) == name then
            setElementData( hit, "dibujarImagen", true ) 
		end
	end	
end	
addEventHandler("onClientMarkerHit", marker, showimage )	

function unShowImage(leave)
    if getElementType(leave) == "player" then
	    if leave == getLocalPlayer() then
	   setElementData( leave, "dibujarImagen", false ) 
	    end
    end		 
end
addEventHandler("onClientMarkerLeave", marker, unShowImage )

Tuviste algunos errores:

1- No pusiste los eventos ( Que son muy importantes para ejecutar la función ).

2- El tamaño del marker estaba mal.

3- La función dxDrawImage  solo se muestran por 1 milisegundo, por lo tanto, podrías haber usado el evento onClientRender.

4- La función showimage no está cerrada.

5- Esta linea es innecesaria :


local name = getPlayerName(getLocalPlayer())
if getPlayerName(hit) == name then

El codigo no lo probé todavía pero creo que está bien y si no, me avisas por fa.

Suerte :D

Muchas gracias por el tiempo! esto debería ponerle en el archivo que le puse de nombre "teleimage" no necesita tener nada que diga "server" o "client", con solo poner los archivos teleimage.lua y meta.xml ya funcionaria? nuevamente te agradezco

Link to comment
5 minutes ago, Facundoz said:

Muchas gracias por el tiempo! esto debería ponerle en el archivo que le puse de nombre "teleimage" no necesita tener nada que diga "server" o "client", con solo poner los archivos teleimage.lua y meta.xml ya funcionaria? nuevamente te agradezco

Sí pero el archivo teleimage.lua tiene que estar del lado client. Si no me entendés, acá te dejo un ejemplo:

	<script src="teleimage.lua" type="client" />	

 

Edited by <~KaMiKaZe~>
  • Like 1
Link to comment

Acabo de probar y ya me aparecio el teleport, sin embargo no muestra la imagen :(

estara mal algo en el meta? 

Asi lo tengo: 

<meta>
    <info author="Terror" version="1.0.0" name="Scream" description="Test" type="map" />
    <script src="teleimage.lua" type="client" />
    <file src="display.png" />
</meta>

 

Y en el lua puse tal cual lo pusiste

Link to comment
2 minutes ago, Facundoz said:

Acabo de probar y ya me aparecio el teleport, sin embargo no muestra la imagen :(

estara mal algo en el meta? 

Asi lo tengo: 

<meta>
    <info author="Terror" version="1.0.0" name="Scream" description="Test" type="map" />
    <script src="teleimage.lua" type="client" />
    <file src="display.png" />
</meta>

 

Y en el lua puse tal cual lo pusiste

Si el meta te corrió el código significa que está bien. El problema es en el client en esta linea:

 

dxDrawImage(10, 10, 48, 48, "img/display.png")

Te olvidaste de eliminar el 'img/' ya que la imagen está suelta en tu archivo y no dentro de otra carpeta. Por lo tanto, tendría esa linea tendrás que reemplazarla por esta:

dxDrawImage(10, 10, 48, 48, "display.png")

 

  • Like 1
Link to comment
13 minutes ago, <~KaMiKaZe~> said:

Si el meta te corrió el código significa que está bien. El problema es en el client en esta linea:

 


dxDrawImage(10, 10, 48, 48, "img/display.png")

Te olvidaste de eliminar el 'img/' ya que la imagen está suelta en tu archivo y no dentro de otra carpeta. Por lo tanto, tendría esa linea tendrás que reemplazarla por esta:


dxDrawImage(10, 10, 48, 48, "display.png")

 

Acabo de probar y aun corrigiendo eso no muestra mi imagen, sera un problema del tamaño de la imagen o que podria ser? ?

Finalmente la imagen aparecio! pero aparece pequeñita y en el rincon superior izquierdo, se puede hacer que aparezca en toda la pantalla? Gracias!

Link to comment
12 minutes ago, Facundoz said:

Acabo de probar y aun corrigiendo eso no muestra mi imagen, sera un problema del tamaño de la imagen o que podria ser? ?

Finalmente la imagen aparecio! pero aparece pequeñita y en el rincon superior izquierdo, se puede hacer que aparezca en toda la pantalla? Gracias!

Bien. Depende un poco de la resolución de tu imagen pero quizá funcione el código que te pasaré.

local sW, sH = guiGetScreenSize()--Esto va afuera de todo. Sirve para tomar el tamaño de la pantalla.

dxDrawImage((sW - 800) / 2, (sH - 600) / 2, 800, 600, "display.png", 0, 0, 0, tocolor(255, 255, 255, 255), false) --Esto reemplazará tu otra función de 'dxDrawImage'.

 

Link to comment
27 minutes ago, <~KaMiKaZe~> said:

Bien. Depende un poco de la resolución de tu imagen pero quizá funcione el código que te pasaré.


local sW, sH = guiGetScreenSize()--Esto va afuera de todo. Sirve para tomar el tamaño de la pantalla.

dxDrawImage((sW - 800) / 2, (sH - 600) / 2, 800, 600, "display.png", 0, 0, 0, tocolor(255, 255, 255, 255), false) --Esto reemplazará tu otra función de 'dxDrawImage'.

 

Eso lo pongo arriba del codigo que me pasaste anteriormente?

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...