Sign in to follow this  
imCEASER

[SIMPLIFICADO] Uso do guiGetScreen

Recommended Posts

guiGetScreen

INTRODUÇÃO

  • Estou fazendo este tópico com ciência da existência de um parecido
  • Este tópico trata de uma maneira mais simplificada para o entendimento do guiGetScreen

Resolução

  • Primeiramente precisamos saber qual a resolução do jogo, deixaremos 1280x800 para fazermos este tutorial.

Escolhendo o elemento

  • Poderemos usar elementos GUI e DX, usaremos aqui um dxDrawImage
  • Pegarei para esse elemento uma imagem com 256x128 chamada "logo.png"

Deixando proporcional a resolução 1280x800

  • Criaremos a imagem para ficar "por cima" do relógio do HUD padrão do GTA SA, portanto:
    --IMAGEM AJUSTADA APENAS PARA A RESOLUÇÃO 1280x800 
    dxDrawImage(1070, 70, 150, 130, "images/logo.png") 
    

Deixando proporcional a outras resoluções

  • Com as propriedades "posX(1070), posY(70), width(150), height(130)" do dxDrawImage para a resolução 1280x800 faremos a função para que a mesma imagem se ajuste para as demais resoluções
  • Lembre-se: posX = x | posY = y | width = x | height = y || Resolução 1280x800 (x = 1280 | y = 800)
  • Para ajustar a imagem as demais resoluções você deve fazer (pegaremos somente a posX(1070) para exemplo):
  • sW*1070/1280 (sW(Resolução do cliente) multiplicando a posX(posição x do elemento na resolução 1280x800) e dividindo pela resolução usada 1280x800 (Usaremos só o 1280 por se tratar do x do elemento))
  • Lembre-se: O width e height da imagem podem ser feitos para serem ajustados conforme a resolução (O modo de fazer é a mesma coisa que o do posX e posY)
  • Imagem explicativa: LINK

Resultado final

  • Todo esse procedimento deixa nossa função da seguinte maneira
    function onClientRender() --Função 
        local sW,sH = guiGetScreenSize() --guiGetScreen pegando as resoluções do cliente 
        dxDrawImage(sW*1070/1280, sH*70/800, sW*150/1280, sH*130/800, "images/logo.png") -- Aqui você prestará atenção nos campos 'posX, posY, width, height', antes: 1070, 70, 150, 130 e agora: sW*1070/1280, sH*70/1280, sW*150/1280, sH*130/1280 
    end --Fim da função 
    addEventHandler("onClientRender", root, onClientRender) --Manipulador de evento 
    

Edited by Guest
  • Thanks 1

Share this post


Link to post

Gostei, ficou fácil de entender, principalmente com a imagem, poderia ter explicado também como deixar o tamanho de um texto igual em todas as resoluções.

Share this post


Link to post
Gostei, ficou fácil de entender, principalmente com a imagem, poderia ter explicado também como deixar o tamanho de um texto igual em todas as resoluções.
poderia ter explicado também como deixar o tamanho de um texto igual em todas as resoluções.

é praticamente a mesma coisa, e você sabe disso :roll:

Share this post


Link to post
é praticamente a mesma coisa, e você sabe disso :roll:

Sim sei, Mas acho que o tutorial foi feito para quem não entende do assunto ;)

Share this post


Link to post
Gostei, ficou fácil de entender, principalmente com a imagem, poderia ter explicado também como deixar o tamanho de um texto igual em todas as resoluções.

Obrigado. Sobre a sugestão do texto adicionei um lembrete ao tutorial.

é praticamente a mesma coisa, e você sabe disso :roll:
Sim sei, Mas acho que o tutorial foi feito para quem não entende do assunto ;)

Exatamente como o n3wage falou, o tutorial foi feito para pessoas que não entendem do assunto, é pra isso que serve um tutorial, a pessoa que já sabe nem precisa de tutorial, pois já possui o conhecimento.

Share this post


Link to post

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
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.