gui: another pass
parent
02ebdb77b2
commit
ed13bab0b9
|
@ -3,16 +3,22 @@
|
||||||
int main() {
|
int main() {
|
||||||
window_create(65.0, 0 );
|
window_create(65.0, 0 );
|
||||||
|
|
||||||
gui_pushskin(gui_skinned("golden.ase", 4.0));
|
gui_pushskin(gui_skinned("golden.ase", 4.0f));
|
||||||
atlas_t *atlas = &C_CAST(skinned_t*, gui_userdata())->atlas;
|
skinned_t *skinned = C_CAST(skinned_t*, gui_userdata());
|
||||||
|
|
||||||
vec4 pos = vec4(100,100,850,750);
|
vec4 pos = vec4(400,400,100, 30);
|
||||||
|
|
||||||
while( window_swap() && !input(KEY_ESC) ) { // game loop
|
while( window_swap() && !input(KEY_ESC) ) { // game loop
|
||||||
vec4 panel_pos = vec4(0, 0, window_width(), window_height());
|
vec4 panel_pos = vec4(0, 0, window_width(), window_height());
|
||||||
|
|
||||||
if (ui_panel("Atlas", 0)) {
|
if (ui_panel("Atlas", 0)) {
|
||||||
ui_atlas(atlas);
|
ui_atlas(&skinned->atlas);
|
||||||
|
ui_panel_end();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ui_panel("GUI", 0)) {
|
||||||
|
ui_float("Scale", &skinned->scale);
|
||||||
|
|
||||||
ui_panel_end();
|
ui_panel_end();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,16 +27,21 @@ int main() {
|
||||||
pos.y = input(MOUSE_Y);
|
pos.y = input(MOUSE_Y);
|
||||||
}
|
}
|
||||||
if (input(MOUSE_R)) {
|
if (input(MOUSE_R)) {
|
||||||
pos.z = input(MOUSE_X);
|
pos.z = input(MOUSE_X)-pos.x;
|
||||||
pos.w = input(MOUSE_Y);
|
pos.w = input(MOUSE_Y)-pos.y;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
||||||
gui_panel(panel_pos, 0);
|
gui_panel(panel_pos, 0);
|
||||||
if (gui_button(pos, 0)) {
|
if (gui_button(pos, 0)) {
|
||||||
printf("%s\n", "Button pressed!");
|
printf("%s\n", "Button pressed!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gui_panel(vec4(40,140, 320, 40), "vial");
|
||||||
|
gui_panel(vec4(40+9*skinned->scale,140+2*skinned->scale, 200, 64), "hp");
|
||||||
|
|
||||||
|
gui_panel(vec4(40,230, 280, 40), "vial");
|
||||||
|
gui_panel(vec4(40+9*skinned->scale,230+2*skinned->scale, 280-18*skinned->scale, 64), "mp");
|
||||||
}
|
}
|
||||||
|
|
||||||
gui_popskin();
|
gui_popskin();
|
||||||
|
|
Binary file not shown.
|
@ -358959,7 +358959,7 @@ bool (gui_button)(int id, vec4 r, const char *skin) {
|
||||||
bool was_clicked=0;
|
bool was_clicked=0;
|
||||||
entry->hover = false;
|
entry->hover = false;
|
||||||
|
|
||||||
if (input(MOUSE_X) > r.x && input(MOUSE_X) < r.z && input(MOUSE_Y) > r.y && input(MOUSE_Y) < r.w) {
|
if (input(MOUSE_X) > r.x && input(MOUSE_X) < (r.x+r.z) && input(MOUSE_Y) > r.y && input(MOUSE_Y) < (r.y+r.w)) {
|
||||||
if (input_up(MOUSE_L) && entry->held) {
|
if (input_up(MOUSE_L) && entry->held) {
|
||||||
was_clicked=1;
|
was_clicked=1;
|
||||||
}
|
}
|
||||||
|
@ -359011,6 +359011,9 @@ void skinned_draw_sprite(float scale, atlas_t *a, atlas_slice_frame_t *f, vec4 r
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
r.z += r.x;
|
||||||
|
r.w += r.y;
|
||||||
|
|
||||||
vec4 outer = f->bounds;
|
vec4 outer = f->bounds;
|
||||||
vec4 core = f->core;
|
vec4 core = f->core;
|
||||||
core.x += outer.x;
|
core.x += outer.x;
|
||||||
|
|
|
@ -129,7 +129,7 @@ bool (gui_button)(int id, vec4 r, const char *skin) {
|
||||||
bool was_clicked=0;
|
bool was_clicked=0;
|
||||||
entry->hover = false;
|
entry->hover = false;
|
||||||
|
|
||||||
if (input(MOUSE_X) > r.x && input(MOUSE_X) < r.z && input(MOUSE_Y) > r.y && input(MOUSE_Y) < r.w) {
|
if (input(MOUSE_X) > r.x && input(MOUSE_X) < (r.x+r.z) && input(MOUSE_Y) > r.y && input(MOUSE_Y) < (r.y+r.w)) {
|
||||||
if (input_up(MOUSE_L) && entry->held) {
|
if (input_up(MOUSE_L) && entry->held) {
|
||||||
was_clicked=1;
|
was_clicked=1;
|
||||||
}
|
}
|
||||||
|
@ -181,6 +181,9 @@ void skinned_draw_sprite(float scale, atlas_t *a, atlas_slice_frame_t *f, vec4 r
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
r.z += r.x;
|
||||||
|
r.w += r.y;
|
||||||
|
|
||||||
vec4 outer = f->bounds;
|
vec4 outer = f->bounds;
|
||||||
vec4 core = f->core;
|
vec4 core = f->core;
|
||||||
core.x += outer.x;
|
core.x += outer.x;
|
||||||
|
|
|
@ -11135,7 +11135,7 @@ bool (gui_button)(int id, vec4 r, const char *skin) {
|
||||||
bool was_clicked=0;
|
bool was_clicked=0;
|
||||||
entry->hover = false;
|
entry->hover = false;
|
||||||
|
|
||||||
if (input(MOUSE_X) > r.x && input(MOUSE_X) < r.z && input(MOUSE_Y) > r.y && input(MOUSE_Y) < r.w) {
|
if (input(MOUSE_X) > r.x && input(MOUSE_X) < (r.x+r.z) && input(MOUSE_Y) > r.y && input(MOUSE_Y) < (r.y+r.w)) {
|
||||||
if (input_up(MOUSE_L) && entry->held) {
|
if (input_up(MOUSE_L) && entry->held) {
|
||||||
was_clicked=1;
|
was_clicked=1;
|
||||||
}
|
}
|
||||||
|
@ -11187,6 +11187,9 @@ void skinned_draw_sprite(float scale, atlas_t *a, atlas_slice_frame_t *f, vec4 r
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
r.z += r.x;
|
||||||
|
r.w += r.y;
|
||||||
|
|
||||||
vec4 outer = f->bounds;
|
vec4 outer = f->bounds;
|
||||||
vec4 core = f->core;
|
vec4 core = f->core;
|
||||||
core.x += outer.x;
|
core.x += outer.x;
|
||||||
|
|
Loading…
Reference in New Issue