use "common.ztl"; fn main (argc num, argv str) num { let screen_width = 800; let screen_height = 450; let username = argv[0]; let password = argv[1]; let server = 9p("localhost:25565"); let me = Player( server, username, Vec(0.0, 1.0, 2.0), purple ); let players = me.login(password); let camera = Camera3D( "CAMERA_PERSPECTIVE", 45.0, Vec(0.0, 1.0, 0.0), Vec(me.pos.x + 10.0, me.pos.y + 10.0, me.pos.z), me.pos ); init_window("zwl client : raylib", screen_width, screen_height); target_fps(60); while ( not window_should_close() ) { let player_updated = false; if (key_down(KEY_RIGHT)) { me.pos.x = (me.pos.x + 0.2); player_updated = true; } if (key_down(KEY_RIGHT)) { me.pos.x = (me.pos.x + 0.2); player_updated = true; } if (key_down(KEY_LEFT)) { me.pos.x = (me.pos.x + 0.2); player_updated = true; } if (key_down(KEY_DOWN)) { me.pos.z = (me.pos.z + 0.2); player_updated = true; } if (key_down(KEY_UP)) { me.pos.z = (me.pos.z - 0.2); player_updated = true; } me.sync_camera(camera); if (player_updated) { players = me.move(); } else { players = me.ping(); } begin_drawing(); clear_background(RAYWHITE); begin_mode_3d(camera); draw_grid(30, 1.0); draw_cube(me.pos, 0.5, 0.5, 0.5, me.apperance); for (player in players) { draw_cube(player.pos, 0.5, 0.5, 0.5, player.apperance); } end_mode_3d(); end_drawing(); } me.logout(); close_window(); return 0; }