2024-03-09 14:52:33 +01:00
|
|
|
|
2025-06-19 19:55:16 +02:00
|
|
|
let resource_bundled: map_t<string, gpu_texture_t> = map_create();
|
2024-03-09 14:52:33 +01:00
|
|
|
|
2024-03-11 15:10:18 +01:00
|
|
|
function resource_load(names: string[]) {
|
2024-03-21 21:06:41 +01:00
|
|
|
for (let i: i32 = 0; i < names.length; ++i) {
|
2025-10-15 18:39:55 +02:00
|
|
|
let s: string = names[i];
|
2025-06-19 19:55:16 +02:00
|
|
|
let image: gpu_texture_t = data_get_image(s);
|
2024-03-20 16:13:54 +01:00
|
|
|
map_set(resource_bundled, s, image);
|
2024-03-09 14:52:33 +01:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-06-19 19:55:16 +02:00
|
|
|
function resource_get(name: string): gpu_texture_t {
|
2024-03-20 16:13:54 +01:00
|
|
|
return map_get(resource_bundled, name);
|
2024-03-09 14:52:33 +01:00
|
|
|
}
|
|
|
|
|
|
2025-06-19 19:55:16 +02:00
|
|
|
function resource_tile50(img: gpu_texture_t, x: i32, y: i32): rect_t {
|
2024-03-09 14:52:33 +01:00
|
|
|
let size: i32 = config_raw.window_scale > 1 ? 100 : 50;
|
2025-10-15 18:39:55 +02:00
|
|
|
let r: rect_t = {x : x * size, y : y * size, w : size, h : size};
|
2024-05-03 21:29:39 +02:00
|
|
|
return r;
|
2024-03-09 14:52:33 +01:00
|
|
|
}
|
|
|
|
|
|
2025-06-19 19:55:16 +02:00
|
|
|
function resource_tile25(img: gpu_texture_t, x: i32, y: i32): rect_t {
|
2024-03-09 14:52:33 +01:00
|
|
|
let size: i32 = config_raw.window_scale > 1 ? 50 : 25;
|
2025-10-15 18:39:55 +02:00
|
|
|
let r: rect_t = {x : x * size, y : y * size, w : size, h : size};
|
2024-05-03 21:29:39 +02:00
|
|
|
return r;
|
2024-03-09 14:52:33 +01:00
|
|
|
}
|
|
|
|
|
|
2025-06-19 19:55:16 +02:00
|
|
|
function resource_tile18(img: gpu_texture_t, x: i32, y: i32): rect_t {
|
2024-03-09 14:52:33 +01:00
|
|
|
let size: i32 = config_raw.window_scale > 1 ? 36 : 18;
|
2025-10-15 18:39:55 +02:00
|
|
|
let r: rect_t = {x : x * size, y : img.height - (y + 1) * size, w : size, h : size};
|
2024-05-03 21:29:39 +02:00
|
|
|
return r;
|
2024-03-09 14:52:33 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
type rect_t = {
|
|
|
|
|
x?: i32;
|
|
|
|
|
y?: i32;
|
|
|
|
|
w?: i32;
|
|
|
|
|
h?: i32;
|
|
|
|
|
};
|