Szerző Téma: Hud segítség kérés [ MTA/LUA]  (Megtekintve 3126 alkalommal)

Hud segítség kérés [ MTA/LUA]
« Dátum: 2016. február 02. - 22:34:25 »
0 Show voters
Sziasztok! :D
Nem régiben elkezdtem foglalkozni Lua scripteléssel, de elég gyerekcipőben járok még...... :D
Némi tudást összeszedve sikerült megírni egy hud scriptet, de valahogy nem akar működni..... :(
Esetleg tudna valaki segíteni? Átfuttatam debugscript 3-mal, ami volt hiba kijavítottam, de továbbra sem akar működni.....
Egyenlőre már belefoglaltam, hogy lesz két csík, ami majd életet és páncélt fog kimutatni, de azok még nincsenek megcsinálva....
A kérdés tehát, hogy miért nem rajzolja ki a \"hátterét\" a hudnak.....
Script:
 

local x, y = guiGetScreenSize() -- kép méretének bekérése x= szélesség, y= hosszúság
local hd = true -- Ha hd felbontás igaz, ha nem akkor hamis
local w = 500 -- hud hátterének alap szélessége
local h = 300 -- hud hátterének alap hosszúsága
local xh = 1920-500 -- hud hátterének x pozíciója ha a felbontás hd
local yh = 1080-10 -- hud hátterének y pozíciója ha a felbontás hd
local xcsik1 = xh+155
local ycsik1 = yh-18
local wcsik1 = 1200
local hcsik1 = 300
 
local xcsik2 =  xh+155
local ycsik2 = yh-94
local wcsik2 = 1200
local hcsik2 = 300
 
if x~= 1920 and y~= 1080 then -- Vizsgálat a felbontást illetően
hd = false
end
 
local xbh, ybh, wbh, hbh
 
if hd == true then -- Ha hd, akkor az arányt meghadja 1-en
xbh = 1
ybh = 1
wbh = 1
hbh = 1
else -- Ha nem hd, akkor kiszámítja az aránypárt
xbh = (x/1920)
ybh = (y/ 1080)
wbh = (x/1920)* w
hbh = (y/1080) *h
end
 
-- Szorzás az aránypárokkal és a hd pozíciókkal
--Háttér
local xrelative= xbh * xh
local yrelative = ybh * yh
local wrelative = wbh * w
local hrelative = hbh * h
 
-- Vonalak
 
local xcsik1relative = xbh * xcsik1
local ycsik1relative =ybh * ycsik1
local wcsik1relative = wbh * wcsik1
local hcsik1relative = hbh * hcsik1
 
local xcsik2relative = xbh * xcsik2
local ycsik2relative =ybh * ycsik2
local wcsik2relative = wbh * wcsik2
local hcsik2relative = hbh * hcsik2
 
 
-- Képanyag betöltése
local hudkep = \"kepek/hud.png\"
local piroscsik = \"kepek/piros.png\"
local kekcsik = \"kepek/kek.png\"
 

-- Hud hátterének kirajzolása
function hud()
alap = dxDrawImage( xrelative, yrelative, wrelative, hrelative, hudkep, 0, 0, 0, tocolor(255, 255, 255, 255), true)
end
 
function HandleTheRendering ( )
addEventHandler(\"onClientRender\", root, hud)
end
addEventHandler(\"onClientResourceStart\",resourceRoot, HandleTheRendering)

 
Egyenlőre már belefoglaltam, hogy lesz két csík, ami majd életet és páncélt fog kimutatni, de azok még nincsenek megcsinálva....
A kérdés tehát, hogy miért nem rajzolja ki a \"hátterét\" a hudnak.....
Köszönöm a segítségeteket! :D
[mod]Legközelebb a kódot/scriptet rakd
 tag közé.[/mod]
« Utoljára szerkesztve: 2016. február 03. - 12:59:32 írta DrAkE »

Paradox

  • Vendég
Hud segítség kérés [ MTA/LUA]
« Válasz #1 Dátum: 2016. február 03. - 17:44:41 »
0 Show voters
A meta.xml-be beírtad ezt a sort?
 
<file src=\"kepek/hud.png\"/>

Hud segítség kérés [ MTA/LUA]
« Válasz #2 Dátum: 2016. február 03. - 20:19:45 »
0 Show voters
Persze, elvileg minden megvan.....
Meta:
 

<meta>
<script src=\"c_hud.lua\" type=\"client\" />
<script src=\"s_hud.lua\" type=\"server\" />
 
<file src=\"kepek/hud.png\"/>
<file src=\"kepek/piros.png\"/>
<file src=\"kepek/kek.png\"/>
</meta>

 
szerver oldali :
 

addEventHandler ( \"onPlayerJoin\", root,
    function ()
        setPlayerHudComponentVisible ( source, \"ammo\", false )   
        setPlayerHudComponentVisible ( source, \"weapon\", false )
    showPlayerHudComponent(source,\'money\',false)
showPlayerHudComponent(source,\'ammo\',false)
showPlayerHudComponent(source,\'weapon\',false)
showPlayerHudComponent(source,\'clock\',false)
showPlayerHudComponent(source,\'health\',false)
showPlayerHudComponent(source,\'armour\',false)      
showPlayerHudComponent(source,\'breath\',false)
end
)
« Utoljára szerkesztve: 2016. február 03. - 20:42:55 írta anGeL »

Hud segítség kérés [ MTA/LUA]
« Válasz #3 Dátum: 2016. február 10. - 22:17:45 »
0 Show voters
Szia ! :)
Szerintem ezt le is bírtad volna egyszerűsíteni..
Képpel - Nem képpel de lebírtad volna egyszerűsíteni:D

Hud segítség kérés [ MTA/LUA]
« Válasz #4 Dátum: 2016. február 16. - 13:38:57 »
0 Show voters
Tessék..
 
local x, y = guiGetScreenSize() -- kép méretének bekérése x= szélesség, y= hosszúság
local hd = true -- Ha hd felbontás igaz, ha nem akkor hamis
local w = 500 -- hud hátterének alap szélessége
local h = 300 -- hud hátterének alap hosszúsága
local xh = 1920-500 -- hud hátterének x pozíciója ha a felbontás hd
local yh = 1080-10 -- hud hátterének y pozíciója ha a felbontás hd
local xcsik1 = xh+155
local ycsik1 = yh-18
local wcsik1 = 1200
local hcsik1 = 300
 
local xcsik2 =  xh+155
local ycsik2 = yh-94
local wcsik2 = 1200
local hcsik2 = 300
 
local xbh, ybh, wbh, hbh
 
-- Szorzás az aránypárokkal és a hd pozíciókkal
--Háttér
local xrelative= xbh * xh
local yrelative = ybh * yh
local wrelative = wbh * w
local hrelative = hbh * h
 
-- Vonalak
 
local xcsik1relative = xbh * xcsik1
local ycsik1relative =ybh * ycsik1
local wcsik1relative = wbh * wcsik1
local hcsik1relative = hbh * hcsik1
 
local xcsik2relative = xbh * xcsik2
local ycsik2relative =ybh * ycsik2
local wcsik2relative = wbh * wcsik2
local hcsik2relative = hbh * hcsik2
 
 
-- Képanyag betöltése
local hudkep = \"kepek/hud.png\"
local piroscsik = \"kepek/piros.png\"
local kekcsik = \"kepek/kek.png\"
 

-- Hud hátterének kirajzolása
function hud()
dxDrawImage( xrelative, yrelative, wrelative, hrelative, hudkep, 0, 0, 0, tocolor(255, 255, 255, 255), true)
end
 
function HandleTheRendering ( )
    addEventHandler(\"onClientRender\", root, hud)
    if x~= 1920 and y~= 1080 then -- Vizsgálat a felbontást illetően
hd = false
end
    if hd == true then -- Ha hd, akkor az arányt meghadja 1-en
xbh = 1
ybh = 1
wbh = 1
hbh = 1
else -- Ha nem hd, akkor kiszámítja az aránypárt
xbh = (x/1920)
ybh = (y/ 1080)
wbh = (x/1920)* w
hbh = (y/1080) *h
end
end
addEventHandler(\"onClientResourceStart\",resourceRoot, HandleTheRendering)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal