A lot of refactoring and pixelbug fixing, still WIP...
@ -184,21 +184,22 @@ package body core is
|
||||
------------------------------------------------------------------------------------------
|
||||
|
||||
procedure draw (data : in sprite;
|
||||
x : in integer := 0;
|
||||
y : in integer := 0;
|
||||
u : in integer := 0;
|
||||
v : in integer := 0;
|
||||
width : in integer := 0;
|
||||
height : in integer := 0;
|
||||
state : in integer := 0) is
|
||||
resize : vector := (0, 0);
|
||||
x : in integer := 0;
|
||||
y : in integer := 0;
|
||||
u : in integer := 0;
|
||||
v : in integer := 0;
|
||||
width : in integer := 0;
|
||||
height : in integer := 0;
|
||||
state : in integer := 0;
|
||||
factor : in integer := zoom;
|
||||
tint : in ray.colour := (others => 255)) is
|
||||
new_width : constant float := float ((if width = 0 then data.width else width));
|
||||
new_height : constant float := float ((if height = 0 then data.height else height));
|
||||
begin
|
||||
resize.x := (if width = 0 then data.width else width);
|
||||
resize.y := (if height = 0 then data.height else height);
|
||||
--
|
||||
ray.draw_texture (data => texture_array (data.index),
|
||||
uv => (float (if u = 0 then (animation_time mod data.frames) * data.width else u), float (v), float (resize.x), float (resize.y)),
|
||||
view => (float (x), float (y), float (resize.x) * float (zoom), float (resize.y) * float (zoom)));
|
||||
uv => (float (if u = 0 then (animation_time mod data.frames) * data.width else u), float (v), new_width, new_height),
|
||||
view => (float (x), float (y), new_width * float (factor), new_height * float (factor)),
|
||||
tint => tint);
|
||||
end draw;
|
||||
|
||||
------------------------------------------------------------------------------------------
|
||||
|
@ -2,8 +2,8 @@
|
||||
--
|
||||
-- GNU General Public Licence (version 3 or later)
|
||||
|
||||
with ada.text_io, ada.strings.unbounded;
|
||||
use ada.text_io, ada.strings.unbounded;
|
||||
with ada.text_io, ada.strings.unbounded, ray;
|
||||
use ada.text_io, ada.strings.unbounded, ray;
|
||||
|
||||
package core is
|
||||
|
||||
@ -77,7 +77,8 @@ package core is
|
||||
global_time : natural := 0;
|
||||
gameplay_time : natural := 0;
|
||||
animation_time : natural := 0;
|
||||
zoom : natural := 1;
|
||||
|
||||
zoom : natural := 1;
|
||||
|
||||
block_limit : constant natural := 40;
|
||||
block_count : natural := 0;
|
||||
@ -108,13 +109,15 @@ package core is
|
||||
function import_song (file_path : in string) return song;
|
||||
|
||||
procedure draw (data : in sprite;
|
||||
x : in integer := 0;
|
||||
y : in integer := 0;
|
||||
u : in integer := 0;
|
||||
v : in integer := 0;
|
||||
width : in integer := 0;
|
||||
height : in integer := 0;
|
||||
state : in integer := 0);
|
||||
x : in integer := 0;
|
||||
y : in integer := 0;
|
||||
u : in integer := 0;
|
||||
v : in integer := 0;
|
||||
width : in integer := 0;
|
||||
height : in integer := 0;
|
||||
state : in integer := 0;
|
||||
factor : in integer := zoom;
|
||||
tint : in ray.colour := (others => 255));
|
||||
|
||||
procedure write (text : in string := "";
|
||||
x : in integer := 0;
|
||||
|
@ -347,7 +347,7 @@ package body ui is
|
||||
--
|
||||
draw_horizontally (title_bar_middle, x + sprite (active, title_bar_left).width, y - sprite (active, title_bar_middle).height, middle_width);
|
||||
--
|
||||
core.write (title, x + sprite (active, title_bar_left).width / 2 + 20, y - sprite (active, title_bar_middle).height / 2 - 6, font (active));
|
||||
write (title, x + sprite (active, title_bar_left).width, y - sprite (active, title_bar_middle).height / 2 - 12); -- 12 = font.height / 2
|
||||
end draw_title_bar;
|
||||
|
||||
------------------------------------------------------------------------------------------
|
||||
|
Before Width: | Height: | Size: 569 B After Width: | Height: | Size: 511 B |
Before Width: | Height: | Size: 154 B After Width: | Height: | Size: 155 B |
Before Width: | Height: | Size: 425 B After Width: | Height: | Size: 403 B |
Before Width: | Height: | Size: 180 B After Width: | Height: | Size: 180 B |
Before Width: | Height: | Size: 154 B After Width: | Height: | Size: 151 B |
Before Width: | Height: | Size: 950 B After Width: | Height: | Size: 972 B |
Before Width: | Height: | Size: 211 B After Width: | Height: | Size: 215 B |
Before Width: | Height: | Size: 616 B After Width: | Height: | Size: 687 B |
Before Width: | Height: | Size: 713 B After Width: | Height: | Size: 718 B |
Before Width: | Height: | Size: 143 B After Width: | Height: | Size: 143 B |
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 225 B |