forked from wickedwaifus/wicked-waifus-rs
85 lines
2.3 KiB
Rust
85 lines
2.3 KiB
Rust
use crate::logic::player::Player;
|
|
use wicked_waifus_protocol::{
|
|
ErrorCode, FriendAllRequest, FriendAllResponse, FriendInfo, PlayerBasicInfoGetRequest,
|
|
PlayerBasicInfoGetResponse, PlayerDetails,
|
|
};
|
|
|
|
pub fn on_friend_all_request(
|
|
_player: &Player,
|
|
_: FriendAllRequest,
|
|
response: &mut FriendAllResponse,
|
|
) {
|
|
// TODO: Fill from player
|
|
response.friend_apply_list = vec![];
|
|
// TODO: Fill from player
|
|
let mut friends = vec![];
|
|
friends.push(FriendInfo {
|
|
info: Some(get_bot_details()),
|
|
remark: "".to_string(),
|
|
});
|
|
|
|
response.friend_info_list = friends;
|
|
response.error_code = ErrorCode::Success.into();
|
|
}
|
|
|
|
// pub fn on_friend_apply_send_request(
|
|
// _player: &Player,
|
|
// _request: FriendApplySendRequest,
|
|
// _response: &mut FriendApplySendResponse,
|
|
// ) {
|
|
//
|
|
// }
|
|
//
|
|
// pub fn on_friend_recently_team_request(
|
|
// _player: &Player,
|
|
// _request: FriendRecentlyTeamRequest,
|
|
// _response: &mut FriendRecentlyTeamResponse,
|
|
// ) {
|
|
//
|
|
// }
|
|
|
|
pub fn on_player_basic_info_get_request(
|
|
_player: &Player,
|
|
request: PlayerBasicInfoGetRequest,
|
|
response: &mut PlayerBasicInfoGetResponse,
|
|
) {
|
|
if request.id == 1337 {
|
|
response.info = Some(get_bot_details());
|
|
response.error_code = ErrorCode::Success.into();
|
|
} else {
|
|
// TODO: Search in database
|
|
response.error_code = ErrorCode::GmErrPlayerNotFound.into();
|
|
}
|
|
}
|
|
|
|
fn get_bot_details() -> PlayerDetails {
|
|
PlayerDetails {
|
|
player_id: 1337,
|
|
name: "BestWaifu".to_string(),
|
|
level: 90,
|
|
origin_world_level: 8,
|
|
cur_world_level: 8,
|
|
head_id: 82001203,
|
|
head_frame_id: 0,
|
|
signature: "Ara Ara ~".to_string(),
|
|
is_online: true,
|
|
is_can_lobby_online: false,
|
|
last_offline_time: wicked_waifus_commons::time_util::unix_timestamp() as i64,
|
|
team_member_count: 0,
|
|
level_gap: 0,
|
|
birthday: 0,
|
|
role_show_list: vec![],
|
|
card_show_list: vec![],
|
|
cur_card: 0,
|
|
display_birthday: false,
|
|
y0a: 0,
|
|
sdk_user_id: "Encore_PS5".to_string(),
|
|
sdk_online_id: "Encore_PS5".to_string(),
|
|
sdk_account_id: "Encore_PS5".to_string(),
|
|
cross_play_enabled: true,
|
|
limit_state: 0,
|
|
player_title_id: 0,
|
|
cur_player_title_id: 0,
|
|
sex: 0,
|
|
}
|
|
}
|