From fbd1f367af45983e8249a43f3e33d67b6411b669 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Fri, 10 May 2024 23:26:44 +0200 Subject: [PATCH] Shitty Tiredness --- gameserver/src/net/handlers/battle.rs | 144 ++++++++++++++------------ 1 file changed, 79 insertions(+), 65 deletions(-) diff --git a/gameserver/src/net/handlers/battle.rs b/gameserver/src/net/handlers/battle.rs index 36eb3c3..97ef7a3 100644 --- a/gameserver/src/net/handlers/battle.rs +++ b/gameserver/src/net/handlers/battle.rs @@ -1,76 +1,90 @@ -use anyhow::Result; -use proto::*; use super::*; use crate::game::globals; -use serde_json::json; -use serde_json::Value; -use std::fs; -use crate::{net::PlayerSession, util}; +pub async fn on_start_cocoon_stage_cs_req( + session: &PlayerSession, + body: &StartCocoonStageCsReq, +) -> Result<()> { + let player_info = session.player_info(); -pub async fn on_get_bag_cs_req(session: &PlayerSession, _: &GetBagCsReq) -> Result<()> { - let json_data = fs::read_to_string("PATH HERE").expect("Failed to read inventory.json"); - let json_value: Value = serde_json::from_str(&json_data).expect("Failed to parse JSON data"); + let rsp = StartCocoonStageScRsp { + retcode: 0, + prop_entity_id: body.prop_entity_id, + cocoon_id: body.cocoon_id, + wave: body.wave, + battle_info: Some(SceneBattleInfo { + stage_id: 201012311, + logic_random_seed: 4444, + battle_id: 1, + battle_avatar_list: player_info + .lineup + .avatar_list + .iter() + .map(|avatar| BattleAvatar { + index: avatar.slot, + id: avatar.id, + level: 80, + promotion: 6, + rank: 6, + hp: 10000, + avatar_type: 3, + sp: Some(AmountInfo { + cur_amount: 10000, + max_amount: 10000, + }), + ..Default::default() + }) + .collect(), + monster_wave_list: globals + .monster_wave_list + .iter() + .map(|monster_list| SceneMonsterWave { + monster_list: monster_list + .iter() + .map(|id| SceneMonsterData { + monster_id: *id, + ..Default::default() + }) + .collect(), + ..Default::default() + }) + .collect(), + ..Default::default() + }), + }; - // Extract ranks - let r1: u32 = json_value[0]["rank"].as_i64().expect("Failed to get rank for Equipment1") as u32; - let r2: u32 = json_value[1]["rank"].as_i64().expect("Failed to get rank for Equipment2") as u32; - let t1: u32 = json_value[0]["tid"].as_i64().expect("Failed") as u32; - let t2: u32 = json_value[1]["tid"].as_i64().expect("Failed") as u32; - let l1: u32 = json_value[0]["level"].as_i64().expect("Failed") as u32; - let l2: u32 = json_value[0]["level"].as_i64().expect("Failed") as u32; - //let e_rank3: u32 = json_value[2]["rank"].as_i64().expect("Failed to get rank for Equipment3") as u32; + session.send(CMD_START_COCOON_STAGE_SC_RSP, rsp).await +} + +pub async fn on_get_cur_battle_info_cs_req( + session: &PlayerSession, + _body: &GetCurBattleInfoCsReq, +) -> Result<()> { session .send( - CMD_GET_BAG_SC_RSP, - GetBagScRsp { - kkdobdmaipc: vec![], - fllcfpejibd: vec![], - lgjeabihdpn: vec![], - retcode: 0, - equipment_list: vec![ - Equipment {tid: t1, rank: r1, exp: 0, unique_id: 57, promotion: 6, level: l1, base_avatar_id: 0, is_protected: true, ..Default::default()}, - Equipment {tid: t2, rank: r2, exp: 0, unique_id: 58, promotion: 6, level: l2, base_avatar_id: 0, is_protected: true, ..Default::default()}, - Equipment {tid: 23024, rank: 5, exp: 0, unique_id: 59, promotion: 6, level: 80, base_avatar_id: 0, is_protected: true, ..Default::default()}, - Equipment {tid: 23024, rank: 5, exp: 0, unique_id: 60, promotion: 6, level: 80, base_avatar_id: 0, is_protected: true, ..Default::default()}, - Equipment {tid: 23024, rank: 5, exp: 0, unique_id: 61, promotion: 6, level: 80, base_avatar_id: 0, is_protected: true, ..Default::default()}, - Equipment {tid: 23024, rank: 5, exp: 0, unique_id: 62, promotion: 6, level: 80, base_avatar_id: 0, is_protected: true, ..Default::default()}, - Equipment {tid: 23024, rank: 5, exp: 0, unique_id: 63, promotion: 6, level: 80, base_avatar_id: 0, is_protected: true, ..Default::default()}, - Equipment {tid: 23024, rank: 5, exp: 0, unique_id: 64, promotion: 6, level: 80, base_avatar_id: 0, is_protected: true, ..Default::default()}, - Equipment {tid: 23024, rank: 5, exp: 0, unique_id: 65, promotion: 6, level: 80, base_avatar_id: 0, is_protected: true, ..Default::default()}, - Equipment {tid: 23024, rank: 5, exp: 0, unique_id: 66, promotion: 6, level: 80, base_avatar_id: 0, is_protected: true, ..Default::default()}, - Equipment {tid: 23024, rank: 1, exp: 0, unique_id: 67, promotion: 0, level: 1, base_avatar_id: 0, is_protected: true, ..Default::default()}, - //Equipment {tid: 1, rank: 1, exp: 0, unique_id: 59, promotion: 6, level: 1, base_avatar_id: 0, is_protected: true, ..Default::default()} - ], - mbedbdbmekj: 0, - relic_list: vec![ - Relic { - unique_id: 1488, - base_avatar_id: 1315, // avatar id - tid: 61202, - level: 15, is_protected: true, - main_affix_id: 1, - sub_affix_list: vec![ RelicAffix { affix_id: 7, cnt: 830, step: 20 }], ..Default::default() } - ], - odeefdlejgg: vec![], - niemagjlpdl: vec![], - gddpphikjae: vec![], - macfjibhfad: vec![], - clkjaanbfpp: vec![ 101 ], - // .iter() - // .map(|id| { - // // { - // // tid: *id, - // // num: 500 - // // } - // }) - // .collect(), - biahmcppikj: vec![], - } + CMD_GET_CUR_BATTLE_INFO_SC_RSP, + GetCurBattleInfoScRsp { + battle_info: Some(SceneBattleInfo::default()), + ffbpkghgmjm: Some(Fjojkdhlonn::default()), + ..Default::default() + }, ) .await +} - // let rsp = GetBagScRsp { - // - // } +pub async fn on_pve_battle_result_cs_req( + session: &PlayerSession, + body: &PveBattleResultCsReq, +) -> Result<()> { + session + .send( + CMD_P_V_E_BATTLE_RESULT_SC_RSP, + PveBattleResultScRsp { + retcode: 0, + end_status: body.end_status, + battle_id: body.battle_id, + ..Default::default() + }, + ) + .await } \ No newline at end of file