Jump to content

Como Hacer Texto? (Pantalla)


Recommended Posts

Posted

Hola.. Queria saber como hacer texto en pantalla.. Ej: Cada Ves que entran Aparesca En La Pantalla En Grande "BIENVENIDO AL SERVER MTA SA" Con Colores O Tipo De Letra.. Se Los Agradesco.

Posted
local screenWidth, screenHeight = guiGetScreenSize ( ) -- Get the screen resolution (width and height) 
  
  
function createText ( ) 
    local playerX, playerY, playerZ = getElementPosition ( localPlayer )       -- Get our player's coordinates. 
    local playerZoneName = getZoneName ( playerX, playerY, playerZ )          -- Get name of the zone the player is in. 
  
    -- Draw zone name text's shadow. 
    dxDrawText ( playerZoneName, 44, screenHeight - 41, screenWidth, screenHeight, tocolor ( 0, 0, 0, 255 ), 1.02, "pricedown" ) 
    -- Draw zone name text. 
    dxDrawText ( playerZoneName, 44, screenHeight - 43, screenWidth, screenHeight, tocolor ( 255, 255, 255, 255 ), 1, "pricedown" )  
end 
  
function HandleTheRendering ( ) 
    addEventHandler ( "onClientRender", root, createText ) -- keep the text visible with onClientRender. 
end 
  
addEventHandler ( "onClientResourceStart", resourceRoot, HandleTheRendering ) 

Esta en la wiki

Posted

Claro Pero Lo Tengo Que Colocar En La Funcion Cuando Entrar O Para Verlo.. Porque Puse Lo que Vos Me Pasate De Wiki No Funciona.. Lo Puse En .Lua Pero No Funca.

Posted

Esta Bien Lo Que Hago?

function remotePlayerJoin() 
    outputChatBox("* " .. getPlayerName(source) .. " has joined the server") 
end 
addEventHandler("onClientPlayerJoin", getRootElement(), remotePlayerJoin,) 
dxDrawText ( string text, -- Aqui El Texto Sin String?  
 left, -- Normal? 
top [, right=left, float bottom=top, int color=white, -- Normal? 
                  scale=1, mixed font="default", string alignX="left", string alignY="top",bool clip=false, bool wordBreak=false, bool postGUI=false,bool colorCoded=false, bool subPixelPositioning=false ] ) 
                  --- ESTA BIEN COMO LO ESTOY HACIENDO? 

Posted

Pero Solo Quiero Aprender.. Como Puedo Hacer Un Texto En La Derecha De La Pantalla.. Como Por Ej: El Nombre Del Server. Se Los Agradesco..

Posted

Tenes que buscar las coordenadas....

Usa el GUIEditor y haces click derecho -> Drawing -> Dx text...Y pones a donde queres ubicarlo.

Despues le setias un titulo, y pones click derecho al dxText -> print code

Y ahi aparece las coordenadas.

Posted

Para Que No Me Sea Mas Dificil Si No Le Molesta Me Hacen Un Script y Yo Me Ubico... PorQue Me Cuesta Un Poco.. O Espliquenmen Mejor.. Desde Ya Se Los Agradesco..

Posted

Mira, el ejemplo que esta en la wiki (que puso Alex), pone las coordenadas con el

  
  
guiGetScreenSize() 
  
  

Esto se usa debido que hay distintas resoluciones. Por lo cual, podes o empezar usando eso o directamente poniendo los numeros.

Yo te recomiendo, usa el GUI Editor como te dije, y buscas las coordenadas. ES MUY FACIL HACER ESO, no podes no entenderlo (el GUI Editor, es una de las herramientas mas faciles y utiles que hay).

Posted

Pero Como Puedo Hacer Que Detecte La Resolucion De Los Usuario Porque Yo Tengo Resolucion: 1440 x 900 a Eso Voy.Osea Que Se Ponga A Cada User AutoResolucion.¿Se Entiende? Ayer Probe Usar El Guieditor Pero Me Costo.. Lo Volvere A Intentar Y Les Paso La Coordenada Para Me Lo Puedan Ubicar..

EDIT: Pueden Ser Que Sea Esta La Cordenada?

----------- Relative ----------- 
x: 0.0313  y: 0.7000 
width: 0.2132  height: 0.0356 
----------- Absolute ----------- 
x: 45.0000  y: 630.0000 
width: 307.0000  height: 32.0000 

¿Como Las Ubico ?

Posted

Como lo haces

1. das a /start guieditor

2. aprietas Shift y G

3. le das al Click derecho y vas a draw o drawing

4. hay apretas dx text

5. hay lo colocas

6. le aprietas donde le colocaste con el click derecho y le pones set title

7. en set title pones el texto que quieras

8. aprietas fuera de eso y le das a print code y le das a output to file

9. vas a guieditor_output.txt o cualquier archivo que este en el guieditor que sea .txt

10. haces el script y el .lua lo haces sacando el texto del guieditor_output.txt

lo de que todos lo vean...

el GUIEditor no te lo hace todo lo de que todos los vean lo haces tu con

guiSetVisible 

Espero averte ayudado

Posted

creo que si se adaptan porque antes de cambiar mi resolucion se veian bien y lindas, xD , luego las cambie, y se veian mal, pero ise otra GUI con GUIEditor y siguio funcionando perfecto

Posted

No entiendo lo que dijistes...parece que te contradecis, osea si estaban mal y la tuviste que hacer de vuelta eso quiere decir que las coordenadas se adaptan segun la resolucion :S :S

Posted

buee, si se adapta, debido a que cuando cambie la resolucion el guieditor seguia editando haciendo igual las GUIs como siempre

Posted

No entendiste mi pregunta....

Si yo tengo 800 x 600 y hago un GUI, se ve igual en posicion la GUI si pongo despues en 1024 x 768?

EDIT : Ya lo comprobe...Si pongo 800 x 600 no se ve igual...Es todavia una incognita que tengo, el como hacer que a para todos se le vea igual.

Porque ni con el guiGetScreenSize() puedo balancearlo.. :(

Posted
No entendiste mi pregunta....

Si yo tengo 800 x 600 y hago un GUI, se ve igual en posicion la GUI si pongo despues en 1024 x 768?

EDIT : Ya lo comprobe...Si pongo 800 x 600 no se ve igual...Es todavia una incognita que tengo, el como hacer que a para todos se le vea igual.

Porque ni con el guiGetScreenSize() puedo balancearlo.. :(

y si le hacemos con algo asi:

local a,l = guiGetScreenSize() 
a + 10,l + 5   

y asi?

Edit: lei esto

relative: This is whether sizes and positioning are relative. If this is true, then all x,y,width,height floats must be between 0 and 1, representing sizes/positions as a fraction of the screen size. If false, then the size and co-ordinates are based on client's resolution, accessible using guiGetScreenSize.

creo que podria servirnos

Posted

Pero eso no tiene nada que ver jajaja...

Eso es para que por ejemplo debes de poner :

  
  
guiCreateLabel(200,200,200,200,"Hola",false) -- relative false 
  
guiCreateLabel(0.4,0.5,0.2,0.2,"Hola",true) -- relative true 
  
  

El guiGetScreenSize() capta tu resolucion en pixels, por lo cual seria relative false.

Posted

A ver, conozco la forma larga que seria

  
  
local x,y = guiGetScreenSize() 
  
if x == 800 and y == 600 then 
  
... 
  
  

Osea, hay una que es :

  
  
local x,y = guiGetScreenSize() 
local width,height = 400,200 -- El tamanio de la ventana 
local left = x/2 - width/2 
local top = y/2 - height/2 
  
  

Ahi te lo centra en el medio, en 800 x 600 esta centrado pero parece que la ventana tapa la pantalla a veces. Por eso, la unico que conozco es la primera forma.

  • Recently Browsing   0 members

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