aboutsummaryrefslogtreecommitdiff
path: root/client/src/plugin_client.rs
blob: 2449f3a83cbc9cfd7ef84da192c0b82e944f7199 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
// #[derive(Component)]
// struct ClientComponent {
//     pad_client: Arc<PadClient>,
// }

use bevy::prelude::{App, Plugin};

pub struct PadClientPlugin;
impl Plugin for PadClientPlugin {
    fn build(&self, app: &mut App) {
        // app.add_systems(PreStartup, client_init);
        // app.add_systems(Startup, client_start);
        // app.add_systems(Update, client_exit.run_if(input_just_pressed(KeyCode::Escape)));
    }
}
//
// fn client_init(
//     mut commands: Commands
// ) {
//     // 构建玩家信息
//     let mut player_info = PlayerInfo::new();
//     player_info.setup_account_info(
//         env!("TEST_PLAYER_ACCOUNT"),
//         env!("TEST_PLAYER_PASSWORD"));
//     player_info.set_nickname(env!("TEST_PLAYER_NICKNAME"));
//     player_info.set_customize_color_hsv(320, 0.5, 1.0); // PINK
//
//     // 构建客户端
//     let mut pad_client = PadClient::default();
//     pad_client.bind_player(player_info);
//     pad_client.quiet();
//
//     // 将客户端放入实体
//     commands.spawn(
//         ClientComponent {
//             pad_client: pad_client.build(),
//         }
//     );
// }
//
// fn client_start(
//     client_components: Query<&mut ClientComponent>,
//     runtime: ResMut<TokioTasksRuntime>
// ) {
//     for client_component in client_components.iter() {
//         let pad_client = Arc::clone(&client_component.pad_client);
//
//         // 启动服务器
//         runtime.spawn_background_task(|_ctx|async move {
//             let entry = pad_client.get_connect_entry();
//             block_on(entry);
//             info!("Finished");
//         });
//     }
// }
//
// fn client_exit(
//     client_components: Query<&mut ClientComponent>
// ){
//     for client_component in client_components.iter() {
//         let pad_client = Arc::clone(&client_component.pad_client);
//         pad_client.request_disconnect();
//     }
// }