diff --git a/game/client.sui b/game/client.sui new file mode 100644 index 0000000..a0988fa --- /dev/null +++ b/game/client.sui @@ -0,0 +1,106 @@ +fn main() -> int do + suic_init_window(1280, 720, "Soup - Voxel Battle Royale"); + suic_enable_msaa_4x(); + let current_screen = 0; + let player_name = "Player"; + let server_host = "127.0.0.1"; + let server_port = 8888; + suic_show_fps_meter(suic_vec2 { x: 10.0, y: 10.0 }); + + while suic_window_should_close() == false do + suic_begin_drawing(); + suic_clear_background(30, 30, 40, 255); + + if current_screen == 0 do + suic_draw_text("SOUP", 450, 80, 120, 100, 200, 255, 255); + suic_draw_text("Voxel Battle Royale", 400, 220, 40, 200, 200, 200, 255); + suic_draw_rectangle(450, 320, 380, 80, 50, 150, 255, 255); + suic_draw_rectangle_lines(450, 320, 380, 80, 100, 200, 255, 255); + suic_draw_text("PLAY", 600, 350, 40, 255, 255, 255, 255); + suic_draw_rectangle(450, 430, 380, 80, 100, 100, 100, 255); + suic_draw_rectangle_lines(450, 430, 380, 80, 150, 150, 150, 255); + suic_draw_text("SETTINGS", 540, 460, 40, 255, 255, 255, 255); + suic_draw_rectangle(450, 540, 380, 80, 150, 50, 50, 255); + suic_draw_rectangle_lines(450, 540, 380, 80, 200, 100, 100, 255); + suic_draw_text("QUIT", 600, 570, 40, 255, 255, 255, 255); + suic_draw_text("v0.1.0 - Early Access", 500, 680, 20, 150, 150, 150, 255); + + let mouse_x = suic_get_mouse_x() as int; + let mouse_y = suic_get_mouse_y() as int; + let is_mouse_clicked = suic_is_mouse_button_pressed(MOUSE_BUTTON_LEFT); + + if mouse_x >= 450 && mouse_x <= 830 && mouse_y >= 320 && mouse_y <= 400 do + if is_mouse_clicked != 0 do + current_screen = 1; + end + end + + if mouse_x >= 450 && mouse_x <= 830 && mouse_y >= 430 && mouse_y <= 510 do + if is_mouse_clicked != 0 do + current_screen = 2; + end + end + + if mouse_x >= 450 && mouse_x <= 830 && mouse_y >= 540 && mouse_y <= 620 do + if is_mouse_clicked != 0 do + break; + end + end + else + if current_screen == 1 do + suic_draw_text("MATCHMAKING", 450, 100, 60, 100, 200, 255, 255); + suic_draw_text("Connecting to server...", 400, 250, 30, 200, 200, 200, 255); + suic_draw_text("Host: 127.0.0.1:8888", 400, 310, 20, 150, 150, 150, 255); + suic_draw_text("Your Name: Player", 400, 380, 20, 200, 200, 200, 255); + suic_draw_text("Players in Queue: 0/100", 400, 420, 20, 200, 200, 200, 255); + suic_draw_text("Loading...", 550, 500, 30, 100, 200, 255, 255); + suic_draw_rectangle(100, 630, 150, 60, 150, 50, 50, 255); + suic_draw_rectangle_lines(100, 630, 150, 60, 200, 100, 100, 255); + suic_draw_text("BACK", 120, 650, 30, 255, 255, 255, 255); + + let mouse_x = suic_get_mouse_x() as int; + let mouse_y = suic_get_mouse_y() as int; + let is_mouse_clicked = suic_is_mouse_button_pressed(MOUSE_BUTTON_LEFT); + + if mouse_x >= 100 && mouse_x <= 250 && mouse_y >= 630 && mouse_y <= 690 do + if is_mouse_clicked != 0 do + current_screen = 0; + end + end + else + if current_screen == 2 do + suic_draw_text("SETTINGS", 450, 100, 60, 100, 200, 255, 255); + suic_draw_text("Player Name:", 250, 200, 24, 200, 200, 200, 255); + suic_draw_rectangle(450, 190, 300, 50, 50, 50, 50, 255); + suic_draw_rectangle_lines(450, 190, 300, 50, 100, 100, 100, 255); + suic_draw_text("Player", 460, 205, 20, 255, 255, 255, 255); + suic_draw_text("Server Host:", 250, 300, 24, 200, 200, 200, 255); + suic_draw_rectangle(450, 290, 300, 50, 50, 50, 50, 255); + suic_draw_rectangle_lines(450, 290, 300, 50, 100, 100, 100, 255); + suic_draw_text("127.0.0.1", 460, 305, 20, 255, 255, 255, 255); + suic_draw_text("Server Port:", 250, 400, 24, 200, 200, 200, 255); + suic_draw_rectangle(450, 390, 300, 50, 50, 50, 50, 255); + suic_draw_rectangle_lines(450, 390, 300, 50, 100, 100, 100, 255); + suic_draw_text("8888", 460, 405, 20, 255, 255, 255, 255); + suic_draw_rectangle(450, 550, 300, 70, 100, 100, 100, 255); + suic_draw_rectangle_lines(450, 550, 300, 70, 150, 150, 150, 255); + suic_draw_text("BACK TO HOME", 495, 577, 30, 255, 255, 255, 255); + + let mouse_x = suic_get_mouse_x() as int; + let mouse_y = suic_get_mouse_y() as int; + let is_mouse_clicked = suic_is_mouse_button_pressed(MOUSE_BUTTON_LEFT); + + if mouse_x >= 450 && mouse_x <= 750 && mouse_y >= 550 && mouse_y <= 620 do + if is_mouse_clicked != 0 do + current_screen = 0; + end + end + end + end + + suic_end_drawing(); + end + + suic_close_window(); + 0 +end