changed file section

This commit is contained in:
yoncodes
2025-10-29 14:13:47 -04:00
parent 1badd8cb4f
commit 397c34bec1
1568 changed files with 3068 additions and 3575 deletions

View File

@@ -3,6 +3,7 @@ use actix_web::{App, HttpServer};
use common::{CERT_FILE_PATH, GAME_SERVER_ADDRESS, KEY_FILE_PATH, init_tracing};
use database::{DatabaseSettings, connect_to, run_migrations};
use middleware::{auth::auth_middleware, logger::Logger};
use std::path::PathBuf;
use tracing::{error, info};
use actix_web::web::Data;
@@ -36,6 +37,7 @@ async fn main() -> anyhow::Result<()> {
std::io::Error::new(std::io::ErrorKind::Other, e)
})?;
//excel db loader
info!("Loading game data...");
data::exceldb::init(data_path.to_str().unwrap()).map_err(|e| {
error!("Failed to load game data: {:#}", e);
@@ -90,33 +92,36 @@ async fn main() -> anyhow::Result<()> {
.service(routes::default::batch::batch::mission_info_handler)
.service(routes::default::batch::batch::char_info_handler)
.service(routes::default::batch::batch::recipe_info_handler)
.service(routes::game::login_event::login_event_handler)
.service(routes::game::schedule_info::schedule_info_handler)
.service(routes::game::event_mission_info::event_mission_info_handler)
.service(routes::game::event_reward_history::event_reward_history_handler)
.service(routes::game::pack_event_story_info::pack_event_story_info_handler)
.service(routes::game::pack_event_battle_info::pack_event_battle_info_handler)
.service(routes::game::pictorial_book_info::pictorial_book_info_handler)
.service(routes::game::attendance::attendance_info_handler)
.service(routes::game::all_char_refresh::all_char_refresh_info_handler)
.service(routes::game::save_total_battle_power::save_total_battle_power_handler)
.service(routes::game::charge_cost_info::charge_cost_info_handler)
.service(routes::game::login::login_event::login_event_handler)
.service(routes::game::schedule::schedule_info::schedule_info_handler)
.service(routes::game::event::event_mission_info::event_mission_info_handler)
.service(routes::game::event::event_reward_history::event_reward_history_handler)
.service(routes::game::pack::pack_event_story_info::pack_event_story_info_handler)
.service(routes::game::pack::pack_event_battle_info::pack_event_battle_info_handler)
.service(routes::game::pictorial::pictorial_book_info::pictorial_book_info_handler)
.service(routes::game::attendance::attendance::attendance_info_handler)
.service(routes::game::all::all_char_refresh::all_char_refresh_info_handler)
.service(routes::game::save::save_total_battle_power::save_total_battle_power_handler)
.service(routes::game::charge::charge_cost_info::charge_cost_info_handler)
.service(routes::basic::localization::localization_handler)
.service(routes::basic::loki::loki_handler)
.service(routes::game::equip_info::equip_info_handler)
.service(routes::game::pack_preview_info::pack_preview_info_handler)
.service(routes::game::monster_info::monster_info_handler)
.service(routes::game::today_quest_info::today_quest_info_handler)
.service(routes::game::waypoint_info::waypoint_info_handler)
.service(routes::game::field_deck_info::field_deck_info_handler)
.service(routes::game::hunting_ground_info_list::hunting_ground_info_list_handler)
.service(routes::game::hunting_ground_info::hunting_ground_info_handler)
.service(routes::game::tutorial_clear::tutorial_clear_handler)
.service(routes::game::notice_detail_info::notice_detail_info_handler)
.service(routes::game::save_user_position::save_user_position_handler)
.service(routes::game::waypoint_save::waypoint_save_handler)
.service(routes::game::server_now_time::server_now_time_handler)
.service(routes::game::field_object_reward::field_object_reward_handler)
.service(routes::game::equip::equip_info::equip_info_handler)
.service(routes::game::pack::pack_preview_info::pack_preview_info_handler)
.service(routes::game::monster::monster_info::monster_info_handler)
.service(routes::game::today::today_quest_info::today_quest_info_handler)
.service(routes::game::waypoint::waypoint_info::waypoint_info_handler)
.service(routes::game::field::field_deck_info::field_deck_info_handler)
.service(routes::game::hunting::hunting_ground_info_list::hunting_ground_info_list_handler)
.service(routes::game::hunting::hunting_ground_info::hunting_ground_info_handler)
.service(routes::game::tutorial::tutorial_clear::tutorial_clear_handler)
.service(routes::game::notice::notice_detail_info::notice_detail_info_handler)
.service(routes::game::save::save_user_position::save_user_position_handler)
.service(routes::game::waypoint::waypoint_save::waypoint_save_handler)
.service(routes::game::server::server_now_time::server_now_time_handler)
.service(routes::game::field::field_object_reward::field_object_reward_handler)
.service(routes::game::active::active_map::active_map_handler)
.service(routes::game::quest::quest_update::quest_update_handler)
.service(routes::game::quest::quest_clear::quest_clear_handler)
};
info!("Starting server on {}", &GAME_SERVER_ADDRESS);
@@ -131,14 +136,10 @@ async fn main() -> anyhow::Result<()> {
}
}
use std::path::PathBuf;
fn get_data_path() -> anyhow::Result<PathBuf> {
// Always use CARGO_MANIFEST_DIR in development
let base_dir = if let Ok(manifest_dir) = std::env::var("CARGO_MANIFEST_DIR") {
PathBuf::from(manifest_dir)
} else {
// Fallback: try to find project root by looking for Cargo.toml
let mut current = std::env::current_dir()?;
loop {
if current.join("Cargo.toml").exists() {

View File

@@ -1,7 +1,7 @@
use actix_web::{HttpResponse, Result, put};
use bd2::proto::proto_net::MaintenanceInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::maintenace_info;
use gameserver::logic::game::maintenace::maintenace_info;
#[put("MaintenanceInfo")]
async fn maintenance_info_handler(body: String) -> Result<HttpResponse> {

View File

@@ -1,7 +1,7 @@
use actix_web::{HttpResponse, Result, put};
use bd2::proto::proto_net::NoticeInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::notice_info;
use gameserver::logic::game::notice::notice_info;
#[put("NoticeInfo")]
async fn notice_info_handler(body: String) -> Result<HttpResponse> {

View File

@@ -1,7 +1,7 @@
use actix_web::{HttpResponse, Result, put};
use bd2::proto::proto_net::ServerInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::server_info;
use gameserver::logic::game::server::server_info;
#[put("ServerInfo")]
async fn server_info_handler(body: String) -> Result<HttpResponse> {

View File

@@ -1,7 +1,7 @@
use actix_web::{HttpResponse, Result, put};
use bd2::proto::proto_net::BalanceVersionCheckRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::balance_version_check;
use gameserver::logic::game::balance::balance_version_check;
#[put("BalanceVersionCheck")]
async fn balance_check_version_handler(body: String) -> Result<HttpResponse> {

View File

@@ -69,7 +69,9 @@ pub async fn batch_request_handler(
let game_response = match method_name {
"MailInfo" => {
match parse_packet::<MailInfoRequest>("MailInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::mail_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::mail::mail_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse MailInfo: {}", e);
GameResponse::error(400)
@@ -79,7 +81,7 @@ pub async fn batch_request_handler(
"CashMailInfo" => {
match parse_packet::<CashMailInfoRequest>("CashMailInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::cash_mail_info::handle(&pool, uid, req).await
gameserver::logic::game::cash::cash_mail_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse CashMailInfo: {}", e);
@@ -89,7 +91,9 @@ pub async fn batch_request_handler(
}
"PackInfo" => {
match parse_packet::<PackInfoRequest>("PackInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::pack_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::pack::pack_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse PackInfo: {}", e);
GameResponse::error(400)
@@ -102,7 +106,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::quest_max_clear_info::handle(&pool, uid, req).await
gameserver::logic::game::quest::quest_max_clear_info::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse QuestMaxClearInfo: {}", e);
@@ -112,7 +119,9 @@ pub async fn batch_request_handler(
}
"PassInfo" => {
match parse_packet::<PassInfoRequest>("PassInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::pass_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::pass::pass_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse PassInfo: {}", e);
GameResponse::error(400)
@@ -125,7 +134,8 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::pvp_battle_user_info::handle(&pool, uid, req).await
gameserver::logic::game::pvp::pvp_battle_user_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse PvpBattleUserInfo: {}", e);
@@ -135,7 +145,9 @@ pub async fn batch_request_handler(
}
"ItemInfo" => {
match parse_packet::<ItemInfoRequest>("ItemInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::item_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::item::item_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse ItemInfo: {}", e);
GameResponse::error(400)
@@ -144,7 +156,10 @@ pub async fn batch_request_handler(
}
"CostumeInfo" => {
match parse_packet::<CostumeInfoRequest>("CostumeInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::costume_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::costume::costume_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse CostumeInfo: {}", e);
GameResponse::error(400)
@@ -153,7 +168,9 @@ pub async fn batch_request_handler(
}
"RecipeInfo" => {
match parse_packet::<RecipeInfoRequest>("RecipeInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::recipe_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::recipe::recipe_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse RecipeInfo: {}", e);
GameResponse::error(400)
@@ -163,7 +180,7 @@ pub async fn batch_request_handler(
"CashShopInfo" => {
match parse_packet::<CashShopInfoRequest>("CashShopInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::cash_shop_info::handle(&pool, uid, req).await
gameserver::logic::game::cash::cash_shop_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse CashShopInfo: {}", e);
@@ -174,7 +191,8 @@ pub async fn batch_request_handler(
"TutorialInfo" => {
match parse_packet::<TutorialInfoRequest>("TutorialInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::tutorial_info::handle(&pool, uid, req).await
gameserver::logic::game::tutorial::tutorial_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse TutorialInfo: {}", e);
@@ -184,7 +202,9 @@ pub async fn batch_request_handler(
}
"CharInfo" => {
match parse_packet::<CharInfoRequest>("CharInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::char_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::char::char_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse CharInfo: {}", e);
GameResponse::error(400)
@@ -194,7 +214,8 @@ pub async fn batch_request_handler(
"DispatchInfo" => {
match parse_packet::<DispatchInfoRequest>("DispatchInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::dispatch_info::handle(&pool, uid, req).await
gameserver::logic::game::dispatch::dispatch_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse DispatchInfo: {}", e);
@@ -208,8 +229,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::total_war_reward_state::handle(&pool, uid, req)
.await
gameserver::logic::game::total::total_war_reward_state::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse TotalWarRewardState: {}", e);
@@ -223,8 +246,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::community_reward_info::handle(&pool, uid, req)
.await
gameserver::logic::game::community::community_reward_info::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse CommunityRewardInfo: {}", e);
@@ -238,7 +263,8 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::event_schedule_info::handle(&pool, uid, req).await
gameserver::logic::game::event::event_schedule_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse EventScheduleInfo: {}", e);
@@ -252,7 +278,8 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::event_exchange_info::handle(&pool, uid, req).await
gameserver::logic::game::event::event_exchange_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse EventExchangeInfo: {}", e);
@@ -266,8 +293,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::monster_hunt_schedule_info::handle(&pool, uid, req)
.await
gameserver::logic::game::monster::monster_hunt_schedule_info::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse MonsterHuntScheduleInfo: {}", e);
@@ -281,8 +310,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::monster_hunt_deck_info::handle(&pool, uid, req)
.await
gameserver::logic::game::monster::monster_hunt_deck_info::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse MonsterHuntDeckInfo: {}", e);
@@ -293,7 +324,8 @@ pub async fn batch_request_handler(
"CharScoutInfo" => {
match parse_packet::<CharScoutInfoRequest>("CharScoutInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::char_scout_info::handle(&pool, uid, req).await
gameserver::logic::game::char::char_scout_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse CharScoutInfo: {}", e);
@@ -307,7 +339,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::achievement_info::handle(&pool, uid, req).await
gameserver::logic::game::achievement::achievement_info::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse AchievementInfo: {}", e);
@@ -321,7 +356,8 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::char_partner_info::handle(&pool, uid, req).await
gameserver::logic::game::char::char_partner_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse CharPartnerInfo: {}", e);
@@ -331,7 +367,9 @@ pub async fn batch_request_handler(
}
"PresetInfo" => {
match parse_packet::<PresetInfoRequest>("PresetInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::preset_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::preset::preset_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse PresetInfo: {}", e);
GameResponse::error(400)
@@ -344,7 +382,8 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::hunt_dispatch_info::handle(&pool, uid, req).await
gameserver::logic::game::hunt::hunt_dispatch_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse HuntDispatchInfo: {}", e);
@@ -358,8 +397,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::monster_hunt_user_info::handle(&pool, uid, req)
.await
gameserver::logic::game::monster::monster_hunt_user_info::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse MonsterHuntUserInfo: {}", e);
@@ -370,7 +411,8 @@ pub async fn batch_request_handler(
"PersonalInfo" => {
match parse_packet::<PersonalInfoRequest>("PersonalInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::personal_info::handle(&pool, uid, req).await
gameserver::logic::game::personal::personal_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse PersonalInfo: {}", e);
@@ -380,7 +422,9 @@ pub async fn batch_request_handler(
}
"MyLikeInfo" => {
match parse_packet::<MyLikeInfoRequest>("MyLikeInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::my_like_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::my::my_like_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse MyLikeInfo: {}", e);
GameResponse::error(400)
@@ -391,7 +435,8 @@ pub async fn batch_request_handler(
match parse_packet::<FriendInfoListRequest>("FriendInfoList", &request.request_data)
{
Ok(req) => {
gameserver::logic::game::friend_info_list::handle(&pool, uid, req).await
gameserver::logic::game::friend::friend_info_list::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse FriendInfoList: {}", e);
@@ -402,7 +447,8 @@ pub async fn batch_request_handler(
"EventHubInfo" => {
match parse_packet::<EventHubInfoRequest>("EventHubInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::event_hub_info::handle(&pool, uid, req).await
gameserver::logic::game::event::event_hub_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse EventHubInfo: {}", e);
@@ -416,7 +462,8 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::mini_game_hub_info::handle(&pool, uid, req).await
gameserver::logic::game::mini::mini_game_hub_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse MiniGameHubInfo: {}", e);
@@ -430,7 +477,8 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::equip_preset_info::handle(&pool, uid, req).await
gameserver::logic::game::equip::equip_preset_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse EquipPresetInfo: {}", e);
@@ -442,7 +490,8 @@ pub async fn batch_request_handler(
match parse_packet::<MyRoomItemInfoRequest>("MyRoomItemInfo", &request.request_data)
{
Ok(req) => {
gameserver::logic::game::my_room_item_info::handle(&pool, uid, req).await
gameserver::logic::game::my::my_room_item_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse MyRoomItemInfo: {}", e);
@@ -456,7 +505,8 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::season_reward_info::handle(&pool, uid, req).await
gameserver::logic::game::season::season_reward_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse SeasonRewardInfo: {}", e);
@@ -467,7 +517,8 @@ pub async fn batch_request_handler(
"GuildInitInfo" => {
match parse_packet::<GuildInitInfoRequest>("GuildInitInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::guild_init_info::handle(&pool, uid, req).await
gameserver::logic::game::guild::guild_init_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse GuildInitInfo: {}", e);
@@ -478,7 +529,8 @@ pub async fn batch_request_handler(
"CharAwakeInfo" => {
match parse_packet::<CharAwakeInfoRequest>("CharAwakeInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::char_awake_info::handle(&pool, uid, req).await
gameserver::logic::game::char::char_awake_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse CharAwakeInfo: {}", e);
@@ -490,7 +542,8 @@ pub async fn batch_request_handler(
match parse_packet::<RootSortIdInfoRequest>("RootSortIdInfo", &request.request_data)
{
Ok(req) => {
gameserver::logic::game::root_sort_id_info::handle(&pool, uid, req).await
gameserver::logic::game::root::root_sort_id_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse RootSortIdInfo: {}", e);
@@ -500,7 +553,9 @@ pub async fn batch_request_handler(
}
"DatingInfo" => {
match parse_packet::<DatingInfoRequest>("DatingInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::dating_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::dating::dating_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse DatingInfo: {}", e);
GameResponse::error(400)
@@ -513,8 +568,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::guild_raid_season_reward::handle(&pool, uid, req)
.await
gameserver::logic::game::guild::guild_raid_season_reward::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse GuildRaidSeasonReward: {}", e);
@@ -528,8 +585,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::evil_castle_tower_info::handle(&pool, uid, req)
.await
gameserver::logic::game::evil::evil_castle_tower_info::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse EvilCastleTowerInfo: {}", e);
@@ -540,7 +599,8 @@ pub async fn batch_request_handler(
"CafeteriaInfo" => {
match parse_packet::<CafeteriaInfoRequest>("CafeteriaInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::cafeteria_info::handle(&pool, uid, req).await
gameserver::logic::game::cafeteria::cafeteria_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse CafeteriaInfo: {}", e);
@@ -554,8 +614,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::mini_game_defense_info::handle(&pool, uid, req)
.await
gameserver::logic::game::mini::mini_game_defense_info::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse MiniGameDefenseInfo: {}", e);
@@ -569,8 +631,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::deck_costume_setting_info::handle(&pool, uid, req)
.await
gameserver::logic::game::deck::deck_costume_setting_info::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse DeckCostumeSettingInfo: {}", e);
@@ -584,7 +648,10 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::prestige_skin_info::handle(&pool, uid, req).await
gameserver::logic::game::prestige::prestige_skin_info::handle(
&pool, uid, req,
)
.await
}
Err(e) => {
error!("Failed to parse PrestigeSkinInfo: {}", e);
@@ -598,7 +665,7 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::evil_castle_daily_reward_state::handle(
gameserver::logic::game::evil::evil_castle_daily_reward_state::handle(
&pool, uid, req,
)
.await
@@ -615,7 +682,8 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::id_card_preset_info::handle(&pool, uid, req).await
gameserver::logic::game::id::id_card_preset_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse IdCardPresetInfo: {}", e);
@@ -629,7 +697,7 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::sky_way_schedule_info::handle(&pool, uid, req)
gameserver::logic::game::sky::sky_way_schedule_info::handle(&pool, uid, req)
.await
}
Err(e) => {
@@ -641,7 +709,8 @@ pub async fn batch_request_handler(
"FieldTrapInfo" => {
match parse_packet::<FieldTrapInfoRequest>("FieldTrapInfo", &request.request_data) {
Ok(req) => {
gameserver::logic::game::field_trap_info::handle(&pool, uid, req).await
gameserver::logic::game::field::field_trap_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse FieldTrapInfo: {}", e);
@@ -651,7 +720,9 @@ pub async fn batch_request_handler(
}
"DeckInfo" => {
match parse_packet::<DeckInfoRequest>("DeckInfo", &request.request_data) {
Ok(req) => gameserver::logic::game::deck_info::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::deck::deck_info::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse DeckInfo: {}", e);
GameResponse::error(400)
@@ -664,7 +735,8 @@ pub async fn batch_request_handler(
&request.request_data,
) {
Ok(req) => {
gameserver::logic::game::field_object_info::handle(&pool, uid, req).await
gameserver::logic::game::field::field_object_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse FieldObjectInfo: {}", e);
@@ -676,7 +748,8 @@ pub async fn batch_request_handler(
match parse_packet::<PackInGameInfoRequest>("PackInGameInfo", &request.request_data)
{
Ok(req) => {
gameserver::logic::game::pack_in_game_info::handle(&pool, uid, req).await
gameserver::logic::game::pack::pack_in_game_info::handle(&pool, uid, req)
.await
}
Err(e) => {
error!("Failed to parse PackInGameInfo: {}", e);
@@ -686,7 +759,9 @@ pub async fn batch_request_handler(
}
"LoginEvent" => {
match parse_packet::<LoginEventRequest>("LoginEvent", &request.request_data) {
Ok(req) => gameserver::logic::game::login_event::handle(&pool, uid, req).await,
Ok(req) => {
gameserver::logic::game::login::login_event::handle(&pool, uid, req).await
}
Err(e) => {
error!("Failed to parse LoginEvent: {}", e);
GameResponse::error(400)
@@ -732,7 +807,7 @@ pub async fn mission_info_handler(
}
};
let response = gameserver::logic::game::mission_info::handle(&pool, uid, req).await;
let response = gameserver::logic::game::mission::mission_info::handle(&pool, uid, req).await;
Ok(HttpResponse::Ok().json(response))
}
@@ -752,7 +827,7 @@ pub async fn char_info_handler(
}
};
let response = gameserver::logic::game::char_info::handle(&pool, uid, req).await;
let response = gameserver::logic::game::char::char_info::handle(&pool, uid, req).await;
Ok(HttpResponse::Ok().json(response))
}
@@ -772,7 +847,7 @@ pub async fn recipe_info_handler(
}
};
let response = gameserver::logic::game::recipe_info::handle(&pool, uid, req).await;
let response = gameserver::logic::game::recipe::recipe_info::handle(&pool, uid, req).await;
Ok(HttpResponse::Ok().json(response))
}

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result };
use actix_web::{HttpResponse, Result, put, web};
use bd2::proto::proto_net::AchievementClearRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::achievement_clear;
use gameserver::logic::game::achievement::achievement_clear;
use sqlx::SqlitePool;
#[put("AchievementClear")]
@@ -17,4 +17,4 @@ async fn achievement_clear_handler(
})?;
let response = achievement_clear::handle(&pool, uid, req).await;
Ok(HttpResponse::Ok().json(response))
}
}

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use actix_web::{HttpResponse, Result, put, web};
use bd2::proto::proto_net::AchievementInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::achievement_info;
use gameserver::logic::game::achievement::achievement_info;
use sqlx::SqlitePool;
#[put("AchievementInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use actix_web::{HttpResponse, Result, put, web};
use bd2::proto::proto_net::AchievementUpdateRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::achievement_update;
use gameserver::logic::game::achievement::achievement_update;
use sqlx::SqlitePool;
#[put("AchievementUpdate")]

View File

@@ -0,0 +1,3 @@
pub mod achievement_clear;
pub mod achievement_info;
pub mod achievement_update;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use actix_web::{HttpResponse, Result, put, web};
use bd2::proto::proto_net::ActiveMapRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::active_map;
use gameserver::logic::game::active::active_map;
use sqlx::SqlitePool;
#[put("ActiveMap")]

View File

@@ -0,0 +1 @@
pub mod active_map;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use actix_web::{HttpResponse, Result, put, web};
use bd2::proto::proto_net::AlchemyRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::alchemy;
use gameserver::logic::game::alchemy::alchemy;
use sqlx::SqlitePool;
#[put("Alchemy")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::AlchemyBatchRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::alchemy_batch;
use gameserver::logic::game::alchemy::alchemy_batch;
use sqlx::SqlitePool;
#[put("AlchemyBatch")]

View File

@@ -0,0 +1,2 @@
pub mod alchemy;
pub mod alchemy_batch;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use actix_web::{HttpResponse, Result, put, web};
use bd2::proto::proto_net::AllCharRefreshRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::all_char_refresh;
use gameserver::logic::game::all::all_char_refresh;
use sqlx::SqlitePool;
#[put("AllCharRefresh")]

View File

@@ -0,0 +1 @@
pub mod all_char_refresh;

View File

@@ -1,4 +1,4 @@
use actix_web::{put, web, HttpResponse, Result};
use actix_web::{HttpResponse, Result, put, web};
use bd2::proto::proto_net::AttendanceRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::attendance;

View File

@@ -0,0 +1,2 @@
pub mod attendance;
pub mod attendance_info;

View File

@@ -1,7 +1,7 @@
use actix_web::{HttpResponse, Result, put, web};
use bd2::proto::proto_net::BalanceVersionCheckRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::balance_version_check;
use gameserver::logic::game::balance::balance_version_check;
use sqlx::SqlitePool;
#[put("BalanceVersionCheck")]

View File

@@ -0,0 +1 @@
pub mod balance_version_check;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::BattleEndRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::battle_end;
use gameserver::logic::game::battle::battle_end;
use sqlx::SqlitePool;
#[put("BattleEnd")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::BattleEndTestRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::battle_end_test;
use gameserver::logic::game::battle::battle_end_test;
use sqlx::SqlitePool;
#[put("BattleEndTest")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::BattleEnterRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::battle_enter;
use gameserver::logic::game::battle::battle_enter;
use sqlx::SqlitePool;
#[put("BattleEnter")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::BattleExitRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::battle_exit;
use gameserver::logic::game::battle::battle_exit;
use sqlx::SqlitePool;
#[put("BattleExit")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::BattleGiveUpRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::battle_give_up;
use gameserver::logic::game::battle::battle_give_up;
use sqlx::SqlitePool;
#[put("BattleGiveUp")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::BattleRetryRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::battle_retry;
use gameserver::logic::game::battle::battle_retry;
use sqlx::SqlitePool;
#[put("BattleRetry")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::BattleRetryPreviousTurnRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::battle_retry_previous_turn;
use gameserver::logic::game::battle::battle_retry_previous_turn;
use sqlx::SqlitePool;
#[put("BattleRetryPreviousTurn")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::BattleStartRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::battle_start;
use gameserver::logic::game::battle::battle_start;
use sqlx::SqlitePool;
#[put("BattleStart")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::BattleVerifyStateRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::battle_verify_state;
use gameserver::logic::game::battle::battle_verify_state;
use sqlx::SqlitePool;
#[put("BattleVerifyState")]

View File

@@ -0,0 +1,9 @@
pub mod battle_end;
pub mod battle_end_test;
pub mod battle_enter;
pub mod battle_exit;
pub mod battle_give_up;
pub mod battle_retry;
pub mod battle_retry_previous_turn;
pub mod battle_start;
pub mod battle_verify_state;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaCumulativeRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_cumulative_reward;
use gameserver::logic::game::cafeteria::cafeteria_cumulative_reward;
use sqlx::SqlitePool;
#[put("CafeteriaCumulativeReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaDailyConnectionCostumeRefreshRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_daily_connection_costume_refresh;
use gameserver::logic::game::cafeteria::cafeteria_daily_connection_costume_refresh;
use sqlx::SqlitePool;
#[put("CafeteriaDailyConnectionCostumeRefresh")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaEventNpcInteractionRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_event_npc_interaction_reward;
use gameserver::logic::game::cafeteria::cafeteria_event_npc_interaction_reward;
use sqlx::SqlitePool;
#[put("CafeteriaEventNpcInteractionReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_info;
use gameserver::logic::game::cafeteria::cafeteria_info;
use sqlx::SqlitePool;
#[put("CafeteriaInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaIntroductionStoryRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_introduction_story_reward;
use gameserver::logic::game::cafeteria::cafeteria_introduction_story_reward;
use sqlx::SqlitePool;
#[put("CafeteriaIntroductionStoryReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaLevelUpRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_level_up;
use gameserver::logic::game::cafeteria::cafeteria_level_up;
use sqlx::SqlitePool;
#[put("CafeteriaLevelUp")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaManageItemAddRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_manage_item_add;
use gameserver::logic::game::cafeteria::cafeteria_manage_item_add;
use sqlx::SqlitePool;
#[put("CafeteriaManageItemAdd")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaRareNpcInteractionRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_rare_npc_interaction_reward;
use gameserver::logic::game::cafeteria::cafeteria_rare_npc_interaction_reward;
use sqlx::SqlitePool;
#[put("CafeteriaRareNpcInteractionReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaRegularCostumeInteractionAllRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_regular_costume_interaction_all_reward;
use gameserver::logic::game::cafeteria::cafeteria_regular_costume_interaction_all_reward;
use sqlx::SqlitePool;
#[put("CafeteriaRegularCostumeInteractionAllReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaRegularCostumeInteractionRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_regular_costume_interaction_reward;
use gameserver::logic::game::cafeteria::cafeteria_regular_costume_interaction_reward;
use sqlx::SqlitePool;
#[put("CafeteriaRegularCostumeInteractionReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaRegularCostumeNoteAllRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_regular_costume_note_all_reward;
use gameserver::logic::game::cafeteria::cafeteria_regular_costume_note_all_reward;
use sqlx::SqlitePool;
#[put("CafeteriaRegularCostumeNoteAllReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaRegularCostumeNoteInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_regular_costume_note_info;
use gameserver::logic::game::cafeteria::cafeteria_regular_costume_note_info;
use sqlx::SqlitePool;
#[put("CafeteriaRegularCostumeNoteInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaRegularCostumeNoteRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_regular_costume_note_reward;
use gameserver::logic::game::cafeteria::cafeteria_regular_costume_note_reward;
use sqlx::SqlitePool;
#[put("CafeteriaRegularCostumeNoteReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaRewardReceiptTimeUpdateUsingCheatRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_reward_receipt_time_update_using_cheat;
use gameserver::logic::game::cafeteria::cafeteria_reward_receipt_time_update_using_cheat;
use sqlx::SqlitePool;
#[put("CafeteriaRewardReceiptTimeUpdateUsingCheat")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaSpawnResetRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_spawn_reset;
use gameserver::logic::game::cafeteria::cafeteria_spawn_reset;
use sqlx::SqlitePool;
#[put("CafeteriaSpawnReset")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CafeteriaSpawnResetCheatRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cafeteria_spawn_reset_cheat;
use gameserver::logic::game::cafeteria::cafeteria_spawn_reset_cheat;
use sqlx::SqlitePool;
#[put("CafeteriaSpawnResetCheat")]

View File

@@ -0,0 +1,16 @@
pub mod cafeteria_cumulative_reward;
pub mod cafeteria_daily_connection_costume_refresh;
pub mod cafeteria_event_npc_interaction_reward;
pub mod cafeteria_info;
pub mod cafeteria_introduction_story_reward;
pub mod cafeteria_level_up;
pub mod cafeteria_manage_item_add;
pub mod cafeteria_rare_npc_interaction_reward;
pub mod cafeteria_regular_costume_interaction_all_reward;
pub mod cafeteria_regular_costume_interaction_reward;
pub mod cafeteria_regular_costume_note_all_reward;
pub mod cafeteria_regular_costume_note_info;
pub mod cafeteria_regular_costume_note_reward;
pub mod cafeteria_reward_receipt_time_update_using_cheat;
pub mod cafeteria_spawn_reset;
pub mod cafeteria_spawn_reset_cheat;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CancelLeaveUserRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cancel_leave_user;
use gameserver::logic::game::cancel::cancel_leave_user;
use sqlx::SqlitePool;
#[put("CancelLeaveUser")]

View File

@@ -0,0 +1 @@
pub mod cancel_leave_user;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CashMailInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cash_mail_info;
use gameserver::logic::game::cash::cash_mail_info;
use sqlx::SqlitePool;
#[put("CashMailInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CashShopBuyRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cash_shop_buy;
use gameserver::logic::game::cash::cash_shop_buy;
use sqlx::SqlitePool;
#[put("CashShopBuy")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CashShopInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cash_shop_info;
use gameserver::logic::game::cash::cash_shop_info;
use sqlx::SqlitePool;
#[put("CashShopInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CashShopPurchaseCountInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cash_shop_purchase_count_info;
use gameserver::logic::game::cash::cash_shop_purchase_count_info;
use sqlx::SqlitePool;
#[put("CashShopPurchaseCountInfo")]

View File

@@ -0,0 +1,4 @@
pub mod cash_mail_info;
pub mod cash_shop_buy;
pub mod cash_shop_info;
pub mod cash_shop_purchase_count_info;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharAllRevivalRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_all_revival;
use gameserver::logic::game::char::char_all_revival;
use sqlx::SqlitePool;
#[put("CharAllRevival")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharAutoReviveSetRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_auto_revive_set;
use gameserver::logic::game::char::char_auto_revive_set;
use sqlx::SqlitePool;
#[put("CharAutoReviveSet")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharAwakeActiveRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_awake_active;
use gameserver::logic::game::char::char_awake_active;
use sqlx::SqlitePool;
#[put("CharAwakeActive")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharAwakeInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_awake_info;
use gameserver::logic::game::char::char_awake_info;
use sqlx::SqlitePool;
#[put("CharAwakeInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharClassUpRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_class_up;
use gameserver::logic::game::char::char_class_up;
use sqlx::SqlitePool;
#[put("CharClassUp")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharExpiryRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_expiry;
use gameserver::logic::game::char::char_expiry;
use sqlx::SqlitePool;
#[put("CharExpiry")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharGrowthRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_growth;
use gameserver::logic::game::char::char_growth;
use sqlx::SqlitePool;
#[put("CharGrowth")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharHealingRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_healing;
use gameserver::logic::game::char::char_healing;
use sqlx::SqlitePool;
#[put("CharHealing")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharImmortalRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_immortal;
use gameserver::logic::game::char::char_immortal;
use sqlx::SqlitePool;
#[put("CharImmortal")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharImprintLevelUpRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_imprint_level_up;
use gameserver::logic::game::char::char_imprint_level_up;
use sqlx::SqlitePool;
#[put("CharImprintLevelUp")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_info;
use gameserver::logic::game::char::char_info;
use sqlx::SqlitePool;
#[put("CharInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharLevelUpRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_level_up;
use gameserver::logic::game::char::char_level_up;
use sqlx::SqlitePool;
#[put("CharLevelUp")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharPartnerInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_partner_info;
use gameserver::logic::game::char::char_partner_info;
use sqlx::SqlitePool;
#[put("CharPartnerInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharPartnerRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_partner_reward;
use gameserver::logic::game::char::char_partner_reward;
use sqlx::SqlitePool;
#[put("CharPartnerReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharPartnerStoryRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_partner_story_reward;
use gameserver::logic::game::char::char_partner_story_reward;
use sqlx::SqlitePool;
#[put("CharPartnerStoryReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharScoutInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_scout_info;
use gameserver::logic::game::char::char_scout_info;
use sqlx::SqlitePool;
#[put("CharScoutInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharSpecialScoutBuyRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_special_scout_buy;
use gameserver::logic::game::char::char_special_scout_buy;
use sqlx::SqlitePool;
#[put("CharSpecialScoutBuy")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CharSpecialScoutResetRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::char_special_scout_reset;
use gameserver::logic::game::char::char_special_scout_reset;
use sqlx::SqlitePool;
#[put("CharSpecialScoutReset")]

View File

@@ -0,0 +1,18 @@
pub mod char_all_revival;
pub mod char_auto_revive_set;
pub mod char_awake_active;
pub mod char_awake_info;
pub mod char_class_up;
pub mod char_expiry;
pub mod char_growth;
pub mod char_healing;
pub mod char_immortal;
pub mod char_imprint_level_up;
pub mod char_info;
pub mod char_level_up;
pub mod char_partner_info;
pub mod char_partner_reward;
pub mod char_partner_story_reward;
pub mod char_scout_info;
pub mod char_special_scout_buy;
pub mod char_special_scout_reset;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::ChargeCostInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::charge_cost_info;
use gameserver::logic::game::charge::charge_cost_info;
use sqlx::SqlitePool;
#[put("ChargeCostInfo")]

View File

@@ -0,0 +1 @@
pub mod charge_cost_info;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::ClearPackageRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::clear_package_reward;
use gameserver::logic::game::clear::clear_package_reward;
use sqlx::SqlitePool;
#[put("ClearPackageReward")]

View File

@@ -0,0 +1 @@
pub mod clear_package_reward;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::ClientCustomLogRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::client_custom_log;
use gameserver::logic::game::client::client_custom_log;
use sqlx::SqlitePool;
#[put("ClientCustomLog")]

View File

@@ -0,0 +1 @@
pub mod client_custom_log;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CommunityRewardRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::community_reward;
use gameserver::logic::game::community::community_reward;
use sqlx::SqlitePool;
#[put("CommunityReward")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CommunityRewardInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::community_reward_info;
use gameserver::logic::game::community::community_reward_info;
use sqlx::SqlitePool;
#[put("CommunityRewardInfo")]

View File

@@ -0,0 +1,2 @@
pub mod community_reward;
pub mod community_reward_info;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use actix_web::{HttpResponse, Result, put, web};
use bd2::proto::proto_net::CookingRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cooking;
use gameserver::logic::game::cooking::cooking;
use sqlx::SqlitePool;
#[put("Cooking")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CookingResearchRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::cooking_research;
use gameserver::logic::game::cooking::cooking_research;
use sqlx::SqlitePool;
#[put("CookingResearch")]

View File

@@ -0,0 +1,2 @@
pub mod cooking;
pub mod cooking_research;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CostumeAllRounderUpgradeRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::costume_all_rounder_upgrade;
use gameserver::logic::game::costume::costume_all_rounder_upgrade;
use sqlx::SqlitePool;
#[put("CostumeAllRounderUpgrade")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CostumeClearRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::costume_clear;
use gameserver::logic::game::costume::costume_clear;
use sqlx::SqlitePool;
#[put("CostumeClear")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CostumeInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::costume_info;
use gameserver::logic::game::costume::costume_info;
use sqlx::SqlitePool;
#[put("CostumeInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CostumeNodeActivationRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::costume_node_activation;
use gameserver::logic::game::costume::costume_node_activation;
use sqlx::SqlitePool;
#[put("CostumeNodeActivation")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CostumePotentialConnectRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::costume_potential_connect;
use gameserver::logic::game::costume::costume_potential_connect;
use sqlx::SqlitePool;
#[put("CostumePotentialConnect")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CostumeUpgradeRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::costume_upgrade;
use gameserver::logic::game::costume::costume_upgrade;
use sqlx::SqlitePool;
#[put("CostumeUpgrade")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::CostumeUseRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::costume_use;
use gameserver::logic::game::costume::costume_use;
use sqlx::SqlitePool;
#[put("CostumeUse")]

View File

@@ -0,0 +1,7 @@
pub mod costume_all_rounder_upgrade;
pub mod costume_clear;
pub mod costume_info;
pub mod costume_node_activation;
pub mod costume_potential_connect;
pub mod costume_upgrade;
pub mod costume_use;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::DatingEpisodeClearRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::dating_episode_clear;
use gameserver::logic::game::dating::dating_episode_clear;
use sqlx::SqlitePool;
#[put("DatingEpisodeClear")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::DatingInfoRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::dating_info;
use gameserver::logic::game::dating::dating_info;
use sqlx::SqlitePool;
#[put("DatingInfo")]

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::DatingMessageUpdateRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::dating_message_update;
use gameserver::logic::game::dating::dating_message_update;
use sqlx::SqlitePool;
#[put("DatingMessageUpdate")]

View File

@@ -0,0 +1,3 @@
pub mod dating_episode_clear;
pub mod dating_info;
pub mod dating_message_update;

View File

@@ -1,7 +1,7 @@
use actix_web::{put, web, HttpResponse, Result};
use bd2::proto::proto_net::DeckCharAutoReviveRequest;
use crypto::network::parse_packet;
use gameserver::logic::game::deck_char_auto_revive;
use gameserver::logic::game::deck::deck_char_auto_revive;
use sqlx::SqlitePool;
#[put("DeckCharAutoRevive")]

Some files were not shown because too many files have changed in this diff Show More