Jump to content

Problema con Size


NodZen

Recommended Posts

Hola amigos, Tengo un script que ya habia pregutnado aqui. Pero ahora no se crea en la pos correcta. Miren

sWidth, sHeight = guiGetScreenSize()  
  
  
function nose ( ) 
    jugador = getLocalPlayer() 
    local armadura = getPedArmor(jugador) 
  
  dxDrawText ( tostring(math.floor(armadura+0.1)).."%", 1320, sHeight - 47, sWidth, sHeight, tocolor ( 255, 255, 255, 255 ), 0.4, "bankgothic" ) 
  
end 
  
  
function ver ( ) 
    addEventHandler ( "onClientRender", root, nose ) 
end 
  
addEventHandler ( "onClientResourceStart", resourceRoot, ver ) 
  
function vve ( ) 
    jugador = getLocalPlayer() 
    local vida = getElementHealth(jugador) 
  
  dxDrawText ( tostring(math.floor(vida+0.1)).."%", 1300, sHeight - 28, sWidth, sHeight, tocolor ( 255, 255, 255, 255 ), 0.4, "bankgothic" ) 
  
end 
  
  
function salu ( ) 
    addEventHandler ( "onClientRender", root, vve ) 
end 
  
addEventHandler ( "onClientResourceStart", resourceRoot, salu ) 
  

Tendria que poner el dx en la misma pos con todas las resoluciones. Yo uso 1440 y cuando pruevo con 800x600 o 1024 se crea el dx en otro lado...

Alguna ayuda. PD Ya tengo un script asi y funciona bien pero a este nose que le pasa

Link to comment
sWidth, sHeight = guiGetScreenSize ( ) 
  
function vve ( ) 
    local vida = getElementHealth ( localPlayer ) 
    dxDrawText ( tostring ( math.floor ( vida + 0.1 ) ) .."%", ( 1300 / 1440 ) * sWidth, ( 28 / 900 ) * sHeight, sWidth, sHeight, tocolor ( 255, 255, 255, 255 ), 0.4, "bankgothic" ) 
    local armadura = getPedArmor ( localPlayer ) 
    dxDrawText ( tostring ( math.floor ( armadura + 0.1 ) ) .."%", ( 1320 / 1440 ) * sWidth, ( 47 / 900 ) * sHeight, sWidth, sHeight, tocolor ( 255, 255, 255, 255 ), 0.4, "bankgothic" )  
end 
  
function salu ( ) 
    addEventHandler ( "onClientRender", root, vve ) 
end 
addEventHandler ( "onClientResourceStart", resourceRoot, salu ) 

Proba eso, si no funca, proba esto:

sWidth, sHeight = guiGetScreenSize ( ) 
  
function vve ( ) 
    local vida = getElementHealth ( localPlayer ) 
    dxDrawText ( tostring ( math.floor ( vida + 0.1 ) ) .."%", ( 1300 / 1024 ) * sWidth, ( 28 / 768 ) * sHeight, sWidth, sHeight, tocolor ( 255, 255, 255, 255 ), 0.4, "bankgothic" ) 
    local armadura = getPedArmor ( localPlayer ) 
    dxDrawText ( tostring ( math.floor ( armadura + 0.1 ) ) .."%", ( 1320 / 1024 ) * sWidth, ( 47 / 768 ) * sHeight, sWidth, sHeight, tocolor ( 255, 255, 255, 255 ), 0.4, "bankgothic" )  
end 
  
function salu ( ) 
    addEventHandler ( "onClientRender", root, vve ) 
end 
addEventHandler ( "onClientResourceStart", resourceRoot, salu ) 

Link to comment
Yo creo mis DX asi:
dxDrawBorderedText ( "Welcome to SAUR:RPG", ( 281 / 1024 ) * sx, ( 206 / 768 ) * sy, ( 764 / 1024 ) * sx, ( 285 / 768 ) * sy, tocolor ( 72, 118, 255, 255 ), ( sx / 1024 ) * 5.0, "arial", "center", "top", false, false, false ) 

Pero eso crearia el DX con todas las resoluciones , pero no con es pos especificas?

Link to comment
Que yo sepa, si, deberia hacerlo.

Las posiciones estan definidas ahi: 281, 206, 764, 285

Ok , lo voy a ir editanto haber si puedo arreglarlo.

Edit:

Lo mismo me pasa con este.

sWidth, sHeight = guiGetScreenSize() 
  
function dxDrawGifImage ( x, y, w, h, path, iStart, iType, effectSpeed ) 
    local gifElement = createElement ( "dx-gif" ) 
    if ( gifElement ) then 
        setElementData ( 
            gifElement, 
            "gifData", 
            { 
                x = x, 
                y = y, 
                w = w, 
                h = h, 
                imgPath = path, 
                startID = iStart, 
                imgID = iStart, 
                imgType = iType, 
                speed = effectSpeed, 
                tick = getTickCount ( ) 
            } 
        ) 
        return gifElement 
    else 
        return false 
    end 
end 
  
addEventHandler ( "onClientRender", root, 
    function ( ) 
        local currentTick = getTickCount ( ) 
        for index, gif in ipairs ( getElementsByType ( "dx-gif" ) ) do 
            local gifData = getElementData ( gif, "gifData" ) 
            if ( gifData ) then 
                if ( currentTick - gifData.tick >= gifData.speed ) then 
                    gifData.tick = currentTick 
                    gifData.imgID = ( gifData.imgID + 1 ) 
                    if ( fileExists ( gifData.imgPath .."".. gifData.imgID ..".".. gifData.imgType ) ) then 
                        gifData.imgID = gifData.imgID 
                        setElementData ( gif, "gifData", gifData ) 
                    else 
                        gifData.imgID = gifData.startID 
                        setElementData ( gif, "gifData", gifData ) 
                    end 
                end 
                dxDrawImage ( gifData.x, gifData.y, gifData.w, gifData.h, gifData.imgPath .."".. gifData.imgID ..".".. gifData.imgType ) 
            end 
        end 
    end 
) 
  
gif = dxDrawGifImage ( 1200, 5, 70, 80, "images/Frame", 0, "png", 50 ) 

Link to comment
Podrias poner como lo solucionaste, asi otros que tengan el mismo problema pueden ahorrarse postear ;).

Solucion:

dxDrawText ( tostring(math.floor(armadura+0.1)), 32, screenHeight - 100, screenWidth, screenHeight, tocolor ( 0, 0, 0, 255 ), 0.5, "bankgothic" ) 

Editè los S

Link to comment
  • Recently Browsing   0 members

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