Witam,
chcia?bym nauczy? wielu "skrypter?w" skalowania od?rodkowego. Bo jak patrze na niekt?rych skalowanie, to ?apie si? za g?ow?. Jedynym minusem tego skalowania jest wym?g posiadania monitora full hd.
[b]Je?eli chcemy wyskalowa? cokolwiek - musimy pobra? rozdzielczo?? ekranu gracza.[/b]
[lua]local sx, sy = guiGetScreenSize() -- zwraca nam o? X i o? Y, np. 1920 1080[/lua]
[b]Nast?pnie tworzymy zmienn?, kt?ra b?dzie dzieli?a nasz? o? X(1920) na o? X clienta.[/b]
[lua]zmienna = 1920/sx[/lua]
Czyli jak skalujemy w full hd to zmienna b?dzie r?wna 1 - wynika to z prostego obliczenia (1920/1920 = 1)
[b]Musimy nauczy? si? te? pozycjonowa? interfejs:[/b]
Od prawej do ?rodka: [lua]sx - wartosc/zmienna[/lua]
Od lewej do ?rodka: [lua]wartosc/zmienna[/lua]
?rodek: [lua]sx/2 - wartosc/zmienna[/lua]
Od g?ry do ?rodka: [lua]wartosc/zmienna[/lua]
Od do?u do ?rodka: [lua]sy - wartosc/zmienna[/lua]
?rodek: [lua]sy/2 - wartosc/zmienna[/lua]
[b]Pami?tajcie te?, ?e je?eli chcecie wyskalowa? obrazek w dobrej jako?ci to powi?kszenie jego musi by? proporcjonalne tzn. IMG jest w wymiarach 300x300, je?eli chcemy go poszerzy? dwukrotnie - musimy te? tak samo powi?kszy? drug? warto??, np. 600x600. Wtedy jest ma?a utrata jako?ci.[/b]
U?atwiona funkcja do skalowania interfejsu stworzona przeze mnie.
[lua]
local sx, sy = guiGetScreenSize()
local zoom = 1920/sx
function scaleX(type, value)
if type == 'center' then
return math.floor... |