- add: new token login and join server packet
This commit is contained in:
@@ -4,8 +4,8 @@ use crate::packet::{send_packet, Packet, PacketPayload};
|
|||||||
use crate::packet_type::PacketType;
|
use crate::packet_type::PacketType;
|
||||||
use crate::packets::cli_accept_req::CliAcceptReq;
|
use crate::packets::cli_accept_req::CliAcceptReq;
|
||||||
use crate::packets::cli_channel_list_req::CliChannelListReq;
|
use crate::packets::cli_channel_list_req::CliChannelListReq;
|
||||||
use crate::packets::cli_join_server_req::CliJoinServerReq;
|
use crate::packets::cli_join_server_token_req::CliJoinServerTokenReq;
|
||||||
use crate::packets::cli_login_req::CliLoginReq;
|
use crate::packets::cli_login_token_req::CliLoginTokenReq;
|
||||||
use crate::packets::cli_srv_select_req::CliSrvSelectReq;
|
use crate::packets::cli_srv_select_req::CliSrvSelectReq;
|
||||||
use crate::packets::srv_accept_reply::SrvAcceptReply;
|
use crate::packets::srv_accept_reply::SrvAcceptReply;
|
||||||
use crate::packets::srv_channel_list_reply::{ChannelInfo, SrvChannelListReply};
|
use crate::packets::srv_channel_list_reply::{ChannelInfo, SrvChannelListReply};
|
||||||
@@ -24,26 +24,24 @@ use utils::service_discovery;
|
|||||||
|
|
||||||
pub(crate) async fn handle_accept_req(stream: &mut TcpStream, packet: Packet) -> Result<(), Box<dyn Error + Send + Sync>> {
|
pub(crate) async fn handle_accept_req(stream: &mut TcpStream, packet: Packet) -> Result<(), Box<dyn Error + Send + Sync>> {
|
||||||
let request = CliAcceptReq::decode(packet.payload.as_slice());
|
let request = CliAcceptReq::decode(packet.payload.as_slice());
|
||||||
debug!("{:?}", request);
|
|
||||||
|
|
||||||
// We need to do reply to this packet
|
// We need to do reply to this packet
|
||||||
let data = SrvAcceptReply { result: srv_accept_reply::Result::Accepted, rand_value: 0 };
|
let data = SrvAcceptReply { result: srv_accept_reply::Result::Accepted, rand_value: 0 };
|
||||||
let response_packet = Packet::new(PacketType::PakssAcceptReply, &data)?;
|
let response_packet = Packet::new(PacketType::PakssAcceptReply, &data)?;
|
||||||
|
|
||||||
debug!("{:?}", response_packet);
|
|
||||||
send_packet(stream, &response_packet).await?;
|
send_packet(stream, &response_packet).await?;
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) async fn handle_join_server_req(stream: &mut TcpStream, packet: Packet) -> Result<(), Box<dyn Error + Send + Sync>> {
|
pub(crate) async fn handle_join_server_req(stream: &mut TcpStream, packet: Packet) -> Result<(), Box<dyn Error + Send + Sync>> {
|
||||||
let request = CliJoinServerReq::decode(packet.payload.as_slice());
|
let request = CliJoinServerTokenReq::decode(packet.payload.as_slice());
|
||||||
debug!("{:?}", request);
|
debug!("{:?}", request);
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) async fn handle_login_req(stream: &mut TcpStream, packet: Packet, auth_client: Arc<Mutex<AuthClient>>) -> Result<(), Box<dyn Error + Send + Sync>> {
|
pub(crate) async fn handle_login_req(stream: &mut TcpStream, packet: Packet, auth_client: Arc<Mutex<AuthClient>>) -> Result<(), Box<dyn Error + Send + Sync>> {
|
||||||
debug!("decoding packet payload of size {}", packet.payload.as_slice().len());
|
debug!("decoding packet payload of size {}", packet.payload.as_slice().len());
|
||||||
let data = CliLoginReq::decode(packet.payload.as_slice())?;
|
let data = CliLoginTokenReq::decode(packet.payload.as_slice())?;
|
||||||
debug!("{:?}", data);
|
debug!("{:?}", data);
|
||||||
|
|
||||||
let mut auth_client = auth_client.lock().await;
|
let mut auth_client = auth_client.lock().await;
|
||||||
@@ -157,7 +155,7 @@ pub(crate) async fn handle_channel_list_req(stream: &mut TcpStream, packet: Pack
|
|||||||
|
|
||||||
debug!("Server info: {:?}", channels);
|
debug!("Server info: {:?}", channels);
|
||||||
let mut channel_info: Vec<ChannelInfo> = Vec::new();
|
let mut channel_info: Vec<ChannelInfo> = Vec::new();
|
||||||
let mut id = 0;
|
let mut id = 1;
|
||||||
for channel in channels {
|
for channel in channels {
|
||||||
let name = format!("{}", channel.ServiceMeta.get("name").unwrap_or(&"".to_string()).clone());
|
let name = format!("{}", channel.ServiceMeta.get("name").unwrap_or(&"".to_string()).clone());
|
||||||
channel_info.push(ChannelInfo { id: id, low_age: 0, high_age: 0, capacity: 0, name: NullTerminatedString::new(&name) });
|
channel_info.push(ChannelInfo { id: id, low_age: 0, high_age: 0, capacity: 0, name: NullTerminatedString::new(&name) });
|
||||||
|
|||||||
@@ -14,208 +14,210 @@ pub enum PacketType {
|
|||||||
PakcsLogoutReq = 0x0507,
|
PakcsLogoutReq = 0x0507,
|
||||||
PakwcLogoutReply = 0x0508,
|
PakwcLogoutReply = 0x0508,
|
||||||
PakcsLoginReq = 0x0509,
|
PakcsLoginReq = 0x0509,
|
||||||
PaklcLoginReply = 0x050A,
|
PakcsLoginTokenReq = 0x050A,
|
||||||
PakgcLoginReply = 0x050B,
|
PaklcLoginReply = 0x050B,
|
||||||
PakcsSrvSelectReq = 0x050C,
|
PakgcLoginReply = 0x050C,
|
||||||
PaklcSrvSelectReply = 0x050D,
|
PakcsSrvSelectReq = 0x050D,
|
||||||
PakcsJoinServerReq = 0x050E,
|
PaklcSrvSelectReply = 0x050E,
|
||||||
PakscJoinServerReply = 0x050F,
|
PakcsJoinServerReq = 0x050F,
|
||||||
PakwcGmCommand = 0x0510,
|
PakscJoinServerReply = 0x0510,
|
||||||
PakwcGlobalVars = 0x0511,
|
PakcsJoinServerTokenReq = 0x0511,
|
||||||
PakwcGlobalFlags = 0x0512,
|
PakwcGmCommand = 0x0512,
|
||||||
PakccSwitchServer = 0x0513,
|
PakwcGlobalVars = 0x0513,
|
||||||
PakcsCharListReq = 0x0514,
|
PakwcGlobalFlags = 0x0514,
|
||||||
PakccCharListReply = 0x0515,
|
PakccSwitchServer = 0x0515,
|
||||||
PakcsCreateCharReq = 0x0516,
|
PakcsCharListReq = 0x0516,
|
||||||
PakccCreateCharReply = 0x0517,
|
PakccCharListReply = 0x0517,
|
||||||
PakcsDeleteCharReq = 0x0518,
|
PakcsCreateCharReq = 0x0518,
|
||||||
PakccDeleteCharReply = 0x0519,
|
PakccCreateCharReply = 0x0519,
|
||||||
PakcsSelectCharReq = 0x051A,
|
PakcsDeleteCharReq = 0x051A,
|
||||||
PakwcSelectCharReply = 0x051B,
|
PakccDeleteCharReply = 0x051B,
|
||||||
PakwcInventoryData = 0x051C,
|
PakcsSelectCharReq = 0x051C,
|
||||||
PakwcSetMoneyAndItem = 0x051D,
|
PakwcSelectCharReply = 0x051D,
|
||||||
PakwcSetItem = 0x051E,
|
PakwcInventoryData = 0x051E,
|
||||||
PakwcServerData = 0x051F,
|
PakwcSetMoneyAndItem = 0x051F,
|
||||||
PakwcQuestData = 0x0520,
|
PakwcSetItem = 0x0520,
|
||||||
PakcsChangeCharReq = 0x0521,
|
PakwcServerData = 0x0521,
|
||||||
PakccChanCharReply = 0x0522,
|
PakwcQuestData = 0x0522,
|
||||||
PakwcSetMoney = 0x0523,
|
PakcsChangeCharReq = 0x0523,
|
||||||
PakwcQuestRewardMoney = 0x0524,
|
PakccChanCharReply = 0x0524,
|
||||||
PakwcQuestRewardItem = 0x0525,
|
PakwcSetMoney = 0x0525,
|
||||||
PakwcQuestRewardAddValue = 0x0526,
|
PakwcQuestRewardMoney = 0x0526,
|
||||||
PakwcQuestRewardSetValue = 0x0527,
|
PakwcQuestRewardItem = 0x0527,
|
||||||
PakcsCancelLogout = 0x0528,
|
PakwcQuestRewardAddValue = 0x0528,
|
||||||
PakwcQuestUpdate = 0x0529,
|
PakwcQuestRewardSetValue = 0x0529,
|
||||||
PakwcWishList = 0x052A,
|
PakcsCancelLogout = 0x052A,
|
||||||
PakcsQuestDataReq = 0x052B,
|
PakwcQuestUpdate = 0x052B,
|
||||||
PakwcQuestDataReply = 0x052C,
|
PakwcWishList = 0x052C,
|
||||||
PakwcNpcEvent = 0x052D,
|
PakcsQuestDataReq = 0x052D,
|
||||||
PakwcGmCommandCode = 0x052E,
|
PakwcQuestDataReply = 0x052E,
|
||||||
PakcsChangeMapReq = 0x052F,
|
PakwcNpcEvent = 0x052F,
|
||||||
PakwcChangeMapReply = 0x0530,
|
PakwcGmCommandCode = 0x0530,
|
||||||
PakwcInitData = 0x0531,
|
PakcsChangeMapReq = 0x0531,
|
||||||
PakcsReviveReq = 0x0532,
|
PakwcChangeMapReply = 0x0532,
|
||||||
PakwcReviveReply = 0x0533,
|
PakwcInitData = 0x0533,
|
||||||
PakcsReviveSetPos = 0x0534,
|
PakcsReviveReq = 0x0534,
|
||||||
PakcsSetServerVarReq = 0x0535,
|
PakwcReviveReply = 0x0535,
|
||||||
PakwcSetServerVarReply = 0x0536,
|
PakcsReviveSetPos = 0x0536,
|
||||||
PakcsCharInfoReq = 0x0537,
|
PakcsSetServerVarReq = 0x0537,
|
||||||
PakwcCharInfoReply = 0x0538,
|
PakwcSetServerVarReply = 0x0538,
|
||||||
PakcsSetWeightReq = 0x0539,
|
PakcsCharInfoReq = 0x0539,
|
||||||
PakwcSetWeight = 0x053A,
|
PakwcCharInfoReply = 0x053A,
|
||||||
PakwcSetPosition = 0x053B,
|
PakcsSetWeightReq = 0x053B,
|
||||||
PakcsStopMoving = 0x053C,
|
PakwcSetWeight = 0x053C,
|
||||||
PakwcStopMoving = 0x053D,
|
PakwcSetPosition = 0x053D,
|
||||||
PakwcUpdateNpc = 0x053E,
|
PakcsStopMoving = 0x053E,
|
||||||
PakcsSummonCmd = 0x053F,
|
PakwcStopMoving = 0x053F,
|
||||||
PakwcSummonCmd = 0x0540,
|
PakwcUpdateNpc = 0x0540,
|
||||||
PakcsSetAnimation = 0x0541,
|
PakcsSummonCmd = 0x0541,
|
||||||
PacwcSetAnimation = 0x0542,
|
PakwcSummonCmd = 0x0542,
|
||||||
PakcsToggleMove = 0x0543,
|
PakcsSetAnimation = 0x0543,
|
||||||
PakwcToggleMove = 0x0544,
|
PacwcSetAnimation = 0x0544,
|
||||||
PakcsNormalChat = 0x0545,
|
PakcsToggleMove = 0x0545,
|
||||||
PakwcNormalChat = 0x0546,
|
PakwcToggleMove = 0x0546,
|
||||||
PakcsWhisperChat = 0x0547,
|
PakcsNormalChat = 0x0547,
|
||||||
PakwcWhisperChat = 0x0548,
|
PakwcNormalChat = 0x0548,
|
||||||
PakcsShoutChat = 0x0549,
|
PakcsWhisperChat = 0x0549,
|
||||||
PakwcShoutChat = 0x054A,
|
PakwcWhisperChat = 0x054A,
|
||||||
PakcsPartyChat = 0x054B,
|
PakcsShoutChat = 0x054B,
|
||||||
PakwcPartyChat = 0x054C,
|
PakwcShoutChat = 0x054C,
|
||||||
PakcsClanChat = 0x054D,
|
PakcsPartyChat = 0x054D,
|
||||||
PakwcClanChat = 0x054E,
|
PakwcPartyChat = 0x054E,
|
||||||
PakcsAlliedChat = 0x054F,
|
PakcsClanChat = 0x054F,
|
||||||
PakwcAlliedChat = 0x0550,
|
PakwcClanChat = 0x0550,
|
||||||
PakcsAlliedShoutChat = 0x0551,
|
PakcsAlliedChat = 0x0551,
|
||||||
PakwcAlliedShoutChat = 0x0552,
|
PakwcAlliedChat = 0x0552,
|
||||||
PakwcEventStatus = 0x0553,
|
PakcsAlliedShoutChat = 0x0553,
|
||||||
PakwcNpcChar = 0x0554,
|
PakwcAlliedShoutChat = 0x0554,
|
||||||
PakwcMobChar = 0x0555,
|
PakwcEventStatus = 0x0555,
|
||||||
PakwcPlayerChar = 0x0556,
|
PakwcNpcChar = 0x0556,
|
||||||
PakwcRemoveObject = 0x0557,
|
PakwcMobChar = 0x0557,
|
||||||
PakcsSetPosition = 0x0558,
|
PakwcPlayerChar = 0x0558,
|
||||||
PakcsStop = 0x0559,
|
PakwcRemoveObject = 0x0559,
|
||||||
PakwcStop = 0x055A,
|
PakcsSetPosition = 0x055A,
|
||||||
PakwcMove = 0x055B,
|
PakcsStop = 0x055B,
|
||||||
PakcsAttack = 0x055C,
|
PakwcStop = 0x055C,
|
||||||
PakwcAttack = 0x055D,
|
PakwcMove = 0x055D,
|
||||||
PakcsDamage = 0x055E,
|
PakcsAttack = 0x055E,
|
||||||
PakwcDamage = 0x055F,
|
PakwcAttack = 0x055F,
|
||||||
PakcsMouseCmd = 0x0560,
|
PakcsDamage = 0x0560,
|
||||||
PakwcMouseCmd = 0x0561,
|
PakwcDamage = 0x0561,
|
||||||
PakwcSetExp = 0x0562,
|
PakcsMouseCmd = 0x0562,
|
||||||
PakwcLevelup = 0x0563,
|
PakwcMouseCmd = 0x0563,
|
||||||
PakcsHpReq = 0x0564,
|
PakwcSetExp = 0x0564,
|
||||||
PakwcHpReply = 0x0565,
|
PakwcLevelup = 0x0565,
|
||||||
PakwcSetHpAndMp = 0x0566,
|
PakcsHpReq = 0x0566,
|
||||||
PakcsStoreTradeReq = 0x0567,
|
PakwcHpReply = 0x0567,
|
||||||
PakwcStoreTradeReply = 0x0568,
|
PakwcSetHpAndMp = 0x0568,
|
||||||
PakcsUseItem = 0x0569,
|
PakcsStoreTradeReq = 0x0569,
|
||||||
PakwcUseItem = 0x056A,
|
PakwcStoreTradeReply = 0x056A,
|
||||||
PakcsDropItem = 0x056B,
|
PakcsUseItem = 0x056B,
|
||||||
PakcsEquipItem = 0x056C,
|
PakwcUseItem = 0x056C,
|
||||||
PakwcEquipItem = 0x056D,
|
PakcsDropItem = 0x056D,
|
||||||
PakwcDropItem = 0x056E,
|
PakcsEquipItem = 0x056E,
|
||||||
PakcsPickupItemReq = 0x056F,
|
PakwcEquipItem = 0x056F,
|
||||||
PakwcPickupItemReply = 0x0570,
|
PakwcDropItem = 0x0570,
|
||||||
PakcsTeleportReq = 0x0571,
|
PakcsPickupItemReq = 0x0571,
|
||||||
PakwcTeleportReply = 0x0572,
|
PakwcPickupItemReply = 0x0572,
|
||||||
PakcsStatAddReq = 0x0573,
|
PakcsTeleportReq = 0x0573,
|
||||||
PakwcStatAddReply = 0x0574,
|
PakwcTeleportReply = 0x0574,
|
||||||
PakcsHotbarSetIconReq = 0x0575,
|
PakcsStatAddReq = 0x0575,
|
||||||
PakwcHotbarSetIconReply = 0x0576,
|
PakwcStatAddReply = 0x0576,
|
||||||
PakcsEquipProjectile = 0x0577,
|
PakcsHotbarSetIconReq = 0x0577,
|
||||||
PakwcEquipProjectile = 0x0578,
|
PakwcHotbarSetIconReply = 0x0578,
|
||||||
PakwcChangeSkin = 0x0579,
|
PakcsEquipProjectile = 0x0579,
|
||||||
PakcsBankListReq = 0x057A,
|
PakwcEquipProjectile = 0x057A,
|
||||||
PakwcBankListReply = 0x057B,
|
PakwcChangeSkin = 0x057B,
|
||||||
PakcsBankMoveItem = 0x057C,
|
PakcsBankListReq = 0x057C,
|
||||||
PakwcBankMoveItem = 0x057D,
|
PakwcBankListReply = 0x057D,
|
||||||
PakcsCraftReq = 0x057E,
|
PakcsBankMoveItem = 0x057E,
|
||||||
PakwcCraftReply = 0x057F,
|
PakwcBankMoveItem = 0x057F,
|
||||||
PakwcSkillLearn = 0x0580,
|
PakcsCraftReq = 0x0580,
|
||||||
PakcsSkillLevelReq = 0x0581,
|
PakwcCraftReply = 0x0581,
|
||||||
PakwcSkillLevelReply = 0x0582,
|
PakwcSkillLearn = 0x0582,
|
||||||
PakcsSkillCastSelf = 0x0583,
|
PakcsSkillLevelReq = 0x0583,
|
||||||
PakwcSkillCastSelf = 0x0584,
|
PakwcSkillLevelReply = 0x0584,
|
||||||
PakcsSkillCastTarget = 0x0585,
|
PakcsSkillCastSelf = 0x0585,
|
||||||
PakwcSkillCastTarget = 0x0586,
|
PakwcSkillCastSelf = 0x0586,
|
||||||
PakcsSkillCastPosition = 0x0587,
|
PakcsSkillCastTarget = 0x0587,
|
||||||
PakwcSkillCastPosition = 0x0588,
|
PakwcSkillCastTarget = 0x0588,
|
||||||
PakwcSkillEffect = 0x0589,
|
PakcsSkillCastPosition = 0x0589,
|
||||||
PakwcSkillDamage = 0x058A,
|
PakwcSkillCastPosition = 0x058A,
|
||||||
PakwcClearStatus = 0x058B,
|
PakwcSkillEffect = 0x058B,
|
||||||
PakwcSpeedChanged = 0x058C,
|
PakwcSkillDamage = 0x058C,
|
||||||
PakwcSkillFinish = 0x058D,
|
PakwcClearStatus = 0x058D,
|
||||||
PakcsAppraisalReq = 0x058E,
|
PakwcSpeedChanged = 0x058E,
|
||||||
PakwcAppraisalReply = 0x058F,
|
PakwcSkillFinish = 0x058F,
|
||||||
PakwcSkillStart = 0x0590,
|
PakcsAppraisalReq = 0x0590,
|
||||||
PakcsCraftEnhanceReq = 0x0591,
|
PakwcAppraisalReply = 0x0591,
|
||||||
PakwcCraftEnhanceReply = 0x0592,
|
PakwcSkillStart = 0x0592,
|
||||||
PakwcSkillCancel = 0x0593,
|
PakcsCraftEnhanceReq = 0x0593,
|
||||||
PakcsWishlistAdd = 0x0594,
|
PakwcCraftEnhanceReply = 0x0594,
|
||||||
PakcsTrade = 0x0595,
|
PakwcSkillCancel = 0x0595,
|
||||||
PakwcTrade = 0x0596,
|
PakcsWishlistAdd = 0x0596,
|
||||||
PakcsTradeItem = 0x0597,
|
PakcsTrade = 0x0597,
|
||||||
PakwcTradeItem = 0x0598,
|
PakwcTrade = 0x0598,
|
||||||
PakcsShopOpen = 0x0599,
|
PakcsTradeItem = 0x0599,
|
||||||
PakwcShopOpen = 0x059A,
|
PakwcTradeItem = 0x059A,
|
||||||
PakcsShopClose = 0x059B,
|
PakcsShopOpen = 0x059B,
|
||||||
PakwcShopClose = 0x059C,
|
PakwcShopOpen = 0x059C,
|
||||||
PakcsShopListReq = 0x059D,
|
PakcsShopClose = 0x059D,
|
||||||
PakwcShopListReply = 0x059E,
|
PakwcShopClose = 0x059E,
|
||||||
PakcsShopBuyReq = 0x059F,
|
PakcsShopListReq = 0x059F,
|
||||||
PakcsShopSellReq = 0x05A0,
|
PakwcShopListReply = 0x05A0,
|
||||||
PakcsShopBuysellReply = 0x05A1,
|
PakcsShopBuyReq = 0x05A1,
|
||||||
PakcsEquipItemRide = 0x05A2,
|
PakcsShopSellReq = 0x05A2,
|
||||||
PakwcEquipItemRide = 0x05A3,
|
PakcsShopBuysellReply = 0x05A3,
|
||||||
PakcsRepairUseItem = 0x05A4,
|
PakcsEquipItemRide = 0x05A4,
|
||||||
PakcsRepairNpc = 0x05A5,
|
PakwcEquipItemRide = 0x05A5,
|
||||||
PakwcSetItemLife = 0x05A6,
|
PakcsRepairUseItem = 0x05A6,
|
||||||
PakcsPartyReq = 0x05A7,
|
PakcsRepairNpc = 0x05A7,
|
||||||
PakwcPartyReq = 0x05A8,
|
PakwcSetItemLife = 0x05A8,
|
||||||
PakcsPartyReply = 0x05A9,
|
PakcsPartyReq = 0x05A9,
|
||||||
PakwcPartyReply = 0x05AA,
|
PakwcPartyReq = 0x05AA,
|
||||||
PakwcPartyMember = 0x05AB,
|
PakcsPartyReply = 0x05AB,
|
||||||
PakwcPartyItem = 0x05AC,
|
PakwcPartyReply = 0x05AC,
|
||||||
PakwcPartyLevelexp = 0x05AD,
|
PakwcPartyMember = 0x05AD,
|
||||||
PakwcPartyMemberUpdate = 0x05AE,
|
PakwcPartyItem = 0x05AE,
|
||||||
PakwcEventAdd = 0x05AF,
|
PakwcPartyLevelexp = 0x05AF,
|
||||||
PakcsPartyRule = 0x05B0,
|
PakwcPartyMemberUpdate = 0x05B0,
|
||||||
PakwcPartyRule = 0x05B1,
|
PakwcEventAdd = 0x05B1,
|
||||||
PakcsCraftStatus = 0x05B2,
|
PakcsPartyRule = 0x05B2,
|
||||||
PakwcCraftStatus = 0x05B3,
|
PakwcPartyRule = 0x05B3,
|
||||||
PakcsBankMoveMoney = 0x05B4,
|
PakcsCraftStatus = 0x05B4,
|
||||||
PakwcBankMoveMoney = 0x05B5,
|
PakwcCraftStatus = 0x05B5,
|
||||||
PakwcNpcShow = 0x05B6,
|
PakcsBankMoveMoney = 0x05B6,
|
||||||
PakwcFairy = 0x05B7,
|
PakwcBankMoveMoney = 0x05B7,
|
||||||
PakcsRideRequest = 0x05B8,
|
PakwcNpcShow = 0x05B8,
|
||||||
PakwcRideRequest = 0x05B9,
|
PakwcFairy = 0x05B9,
|
||||||
PakwcBillingMessage = 0x05BA,
|
PakcsRideRequest = 0x05BA,
|
||||||
PakwcBillingMessageExt = 0x05BB,
|
PakwcRideRequest = 0x05BB,
|
||||||
PakcsClanCommand = 0x05BC,
|
PakwcBillingMessage = 0x05BC,
|
||||||
PakccClanCommand = 0x05BD,
|
PakwcBillingMessageExt = 0x05BD,
|
||||||
PakcsMessenger = 0x05BE,
|
PakcsClanCommand = 0x05BE,
|
||||||
PakccMessenger = 0x05BF,
|
PakccClanCommand = 0x05BF,
|
||||||
PakcsMessengerChat = 0x05C0,
|
PakcsMessenger = 0x05C0,
|
||||||
PakccMessengerChat = 0x05C1,
|
PakccMessenger = 0x05C1,
|
||||||
PakcsChatroom = 0x05C2,
|
PakcsMessengerChat = 0x05C2,
|
||||||
PakccChatroom = 0x05C3,
|
PakccMessengerChat = 0x05C3,
|
||||||
PakcsChatroomMessage = 0x05C4,
|
PakcsChatroom = 0x05C4,
|
||||||
PakccChatroomMessage = 0x05C5,
|
PakccChatroom = 0x05C5,
|
||||||
PakcsMemo = 0x05C6,
|
PakcsChatroomMessage = 0x05C6,
|
||||||
PakccMemo = 0x05C7,
|
PakccChatroomMessage = 0x05C7,
|
||||||
PakcsClanIconSet = 0x05C8,
|
PakcsMemo = 0x05C8,
|
||||||
PakcsClanIconReq = 0x05C9,
|
PakccMemo = 0x05C9,
|
||||||
PakccClanIconReply = 0x05CA,
|
PakcsClanIconSet = 0x05CA,
|
||||||
PakcsClanIconTimestamp = 0x05CB,
|
PakcsClanIconReq = 0x05CB,
|
||||||
PakccClanIconTimestamp = 0x05CC,
|
PakccClanIconReply = 0x05CC,
|
||||||
PakwcRideStateChange = 0x05CD,
|
PakcsClanIconTimestamp = 0x05CD,
|
||||||
PawkcCharStateChange = 0x05CE,
|
PakccClanIconTimestamp = 0x05CE,
|
||||||
PakcsScreenShotTimeReq = 0x05CF,
|
PakwcRideStateChange = 0x05CF,
|
||||||
PakscScreenShotTimeReply = 0x05D0,
|
PawkcCharStateChange = 0x05D0,
|
||||||
PakwcUpdateName = 0x05D1,
|
PakcsScreenShotTimeReq = 0x05D1,
|
||||||
PakssAcceptReply = 0x05D2,
|
PakscScreenShotTimeReply = 0x05D2,
|
||||||
Epacketmax = 0x05D3,
|
PakwcUpdateName = 0x05D3,
|
||||||
|
PakssAcceptReply = 0x05D4,
|
||||||
|
Epacketmax = 0x05D5,
|
||||||
Stress = 0x6F6D,
|
Stress = 0x6F6D,
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -240,208 +242,210 @@ impl TryFrom<u16> for PacketType {
|
|||||||
0x0507 => Ok(PacketType::PakcsLogoutReq),
|
0x0507 => Ok(PacketType::PakcsLogoutReq),
|
||||||
0x0508 => Ok(PacketType::PakwcLogoutReply),
|
0x0508 => Ok(PacketType::PakwcLogoutReply),
|
||||||
0x0509 => Ok(PacketType::PakcsLoginReq),
|
0x0509 => Ok(PacketType::PakcsLoginReq),
|
||||||
0x050A => Ok(PacketType::PaklcLoginReply),
|
0x050A => Ok(PacketType::PakcsLoginTokenReq),
|
||||||
0x050B => Ok(PacketType::PakgcLoginReply),
|
0x050B => Ok(PacketType::PaklcLoginReply),
|
||||||
0x050C => Ok(PacketType::PakcsSrvSelectReq),
|
0x050C => Ok(PacketType::PakgcLoginReply),
|
||||||
0x050D => Ok(PacketType::PaklcSrvSelectReply),
|
0x050D => Ok(PacketType::PakcsSrvSelectReq),
|
||||||
0x050E => Ok(PacketType::PakcsJoinServerReq),
|
0x050E => Ok(PacketType::PaklcSrvSelectReply),
|
||||||
0x050F => Ok(PacketType::PakscJoinServerReply),
|
0x050F => Ok(PacketType::PakcsJoinServerReq),
|
||||||
0x0510 => Ok(PacketType::PakwcGmCommand),
|
0x0510 => Ok(PacketType::PakscJoinServerReply),
|
||||||
0x0511 => Ok(PacketType::PakwcGlobalVars),
|
0x0511 => Ok(PacketType::PakcsJoinServerTokenReq),
|
||||||
0x0512 => Ok(PacketType::PakwcGlobalFlags),
|
0x0512 => Ok(PacketType::PakwcGmCommand),
|
||||||
0x0513 => Ok(PacketType::PakccSwitchServer),
|
0x0513 => Ok(PacketType::PakwcGlobalVars),
|
||||||
0x0514 => Ok(PacketType::PakcsCharListReq),
|
0x0514 => Ok(PacketType::PakwcGlobalFlags),
|
||||||
0x0515 => Ok(PacketType::PakccCharListReply),
|
0x0515 => Ok(PacketType::PakccSwitchServer),
|
||||||
0x0516 => Ok(PacketType::PakcsCreateCharReq),
|
0x0516 => Ok(PacketType::PakcsCharListReq),
|
||||||
0x0517 => Ok(PacketType::PakccCreateCharReply),
|
0x0517 => Ok(PacketType::PakccCharListReply),
|
||||||
0x0518 => Ok(PacketType::PakcsDeleteCharReq),
|
0x0518 => Ok(PacketType::PakcsCreateCharReq),
|
||||||
0x0519 => Ok(PacketType::PakccDeleteCharReply),
|
0x0519 => Ok(PacketType::PakccCreateCharReply),
|
||||||
0x051A => Ok(PacketType::PakcsSelectCharReq),
|
0x051A => Ok(PacketType::PakcsDeleteCharReq),
|
||||||
0x051B => Ok(PacketType::PakwcSelectCharReply),
|
0x051B => Ok(PacketType::PakccDeleteCharReply),
|
||||||
0x051C => Ok(PacketType::PakwcInventoryData),
|
0x051C => Ok(PacketType::PakcsSelectCharReq),
|
||||||
0x051D => Ok(PacketType::PakwcSetMoneyAndItem),
|
0x051D => Ok(PacketType::PakwcSelectCharReply),
|
||||||
0x051E => Ok(PacketType::PakwcSetItem),
|
0x051E => Ok(PacketType::PakwcInventoryData),
|
||||||
0x051F => Ok(PacketType::PakwcServerData),
|
0x051F => Ok(PacketType::PakwcSetMoneyAndItem),
|
||||||
0x0520 => Ok(PacketType::PakwcQuestData),
|
0x0520 => Ok(PacketType::PakwcSetItem),
|
||||||
0x0521 => Ok(PacketType::PakcsChangeCharReq),
|
0x0521 => Ok(PacketType::PakwcServerData),
|
||||||
0x0522 => Ok(PacketType::PakccChanCharReply),
|
0x0522 => Ok(PacketType::PakwcQuestData),
|
||||||
0x0523 => Ok(PacketType::PakwcSetMoney),
|
0x0523 => Ok(PacketType::PakcsChangeCharReq),
|
||||||
0x0524 => Ok(PacketType::PakwcQuestRewardMoney),
|
0x0524 => Ok(PacketType::PakccChanCharReply),
|
||||||
0x0525 => Ok(PacketType::PakwcQuestRewardItem),
|
0x0525 => Ok(PacketType::PakwcSetMoney),
|
||||||
0x0526 => Ok(PacketType::PakwcQuestRewardAddValue),
|
0x0526 => Ok(PacketType::PakwcQuestRewardMoney),
|
||||||
0x0527 => Ok(PacketType::PakwcQuestRewardSetValue),
|
0x0527 => Ok(PacketType::PakwcQuestRewardItem),
|
||||||
0x0528 => Ok(PacketType::PakcsCancelLogout),
|
0x0528 => Ok(PacketType::PakwcQuestRewardAddValue),
|
||||||
0x0529 => Ok(PacketType::PakwcQuestUpdate),
|
0x0529 => Ok(PacketType::PakwcQuestRewardSetValue),
|
||||||
0x052A => Ok(PacketType::PakwcWishList),
|
0x052A => Ok(PacketType::PakcsCancelLogout),
|
||||||
0x052B => Ok(PacketType::PakcsQuestDataReq),
|
0x052B => Ok(PacketType::PakwcQuestUpdate),
|
||||||
0x052C => Ok(PacketType::PakwcQuestDataReply),
|
0x052C => Ok(PacketType::PakwcWishList),
|
||||||
0x052D => Ok(PacketType::PakwcNpcEvent),
|
0x052D => Ok(PacketType::PakcsQuestDataReq),
|
||||||
0x052E => Ok(PacketType::PakwcGmCommandCode),
|
0x052E => Ok(PacketType::PakwcQuestDataReply),
|
||||||
0x052F => Ok(PacketType::PakcsChangeMapReq),
|
0x052F => Ok(PacketType::PakwcNpcEvent),
|
||||||
0x0530 => Ok(PacketType::PakwcChangeMapReply),
|
0x0530 => Ok(PacketType::PakwcGmCommandCode),
|
||||||
0x0531 => Ok(PacketType::PakwcInitData),
|
0x0531 => Ok(PacketType::PakcsChangeMapReq),
|
||||||
0x0532 => Ok(PacketType::PakcsReviveReq),
|
0x0532 => Ok(PacketType::PakwcChangeMapReply),
|
||||||
0x0533 => Ok(PacketType::PakwcReviveReply),
|
0x0533 => Ok(PacketType::PakwcInitData),
|
||||||
0x0534 => Ok(PacketType::PakcsReviveSetPos),
|
0x0534 => Ok(PacketType::PakcsReviveReq),
|
||||||
0x0535 => Ok(PacketType::PakcsSetServerVarReq),
|
0x0535 => Ok(PacketType::PakwcReviveReply),
|
||||||
0x0536 => Ok(PacketType::PakwcSetServerVarReply),
|
0x0536 => Ok(PacketType::PakcsReviveSetPos),
|
||||||
0x0537 => Ok(PacketType::PakcsCharInfoReq),
|
0x0537 => Ok(PacketType::PakcsSetServerVarReq),
|
||||||
0x0538 => Ok(PacketType::PakwcCharInfoReply),
|
0x0538 => Ok(PacketType::PakwcSetServerVarReply),
|
||||||
0x0539 => Ok(PacketType::PakcsSetWeightReq),
|
0x0539 => Ok(PacketType::PakcsCharInfoReq),
|
||||||
0x053A => Ok(PacketType::PakwcSetWeight),
|
0x053A => Ok(PacketType::PakwcCharInfoReply),
|
||||||
0x053B => Ok(PacketType::PakwcSetPosition),
|
0x053B => Ok(PacketType::PakcsSetWeightReq),
|
||||||
0x053C => Ok(PacketType::PakcsStopMoving),
|
0x053C => Ok(PacketType::PakwcSetWeight),
|
||||||
0x053D => Ok(PacketType::PakwcStopMoving),
|
0x053D => Ok(PacketType::PakwcSetPosition),
|
||||||
0x053E => Ok(PacketType::PakwcUpdateNpc),
|
0x053E => Ok(PacketType::PakcsStopMoving),
|
||||||
0x053F => Ok(PacketType::PakcsSummonCmd),
|
0x053F => Ok(PacketType::PakwcStopMoving),
|
||||||
0x0540 => Ok(PacketType::PakwcSummonCmd),
|
0x0540 => Ok(PacketType::PakwcUpdateNpc),
|
||||||
0x0541 => Ok(PacketType::PakcsSetAnimation),
|
0x0541 => Ok(PacketType::PakcsSummonCmd),
|
||||||
0x0542 => Ok(PacketType::PacwcSetAnimation),
|
0x0542 => Ok(PacketType::PakwcSummonCmd),
|
||||||
0x0543 => Ok(PacketType::PakcsToggleMove),
|
0x0543 => Ok(PacketType::PakcsSetAnimation),
|
||||||
0x0544 => Ok(PacketType::PakwcToggleMove),
|
0x0544 => Ok(PacketType::PacwcSetAnimation),
|
||||||
0x0545 => Ok(PacketType::PakcsNormalChat),
|
0x0545 => Ok(PacketType::PakcsToggleMove),
|
||||||
0x0546 => Ok(PacketType::PakwcNormalChat),
|
0x0546 => Ok(PacketType::PakwcToggleMove),
|
||||||
0x0547 => Ok(PacketType::PakcsWhisperChat),
|
0x0547 => Ok(PacketType::PakcsNormalChat),
|
||||||
0x0548 => Ok(PacketType::PakwcWhisperChat),
|
0x0548 => Ok(PacketType::PakwcNormalChat),
|
||||||
0x0549 => Ok(PacketType::PakcsShoutChat),
|
0x0549 => Ok(PacketType::PakcsWhisperChat),
|
||||||
0x054A => Ok(PacketType::PakwcShoutChat),
|
0x054A => Ok(PacketType::PakwcWhisperChat),
|
||||||
0x054B => Ok(PacketType::PakcsPartyChat),
|
0x054B => Ok(PacketType::PakcsShoutChat),
|
||||||
0x054C => Ok(PacketType::PakwcPartyChat),
|
0x054C => Ok(PacketType::PakwcShoutChat),
|
||||||
0x054D => Ok(PacketType::PakcsClanChat),
|
0x054D => Ok(PacketType::PakcsPartyChat),
|
||||||
0x054E => Ok(PacketType::PakwcClanChat),
|
0x054E => Ok(PacketType::PakwcPartyChat),
|
||||||
0x054F => Ok(PacketType::PakcsAlliedChat),
|
0x054F => Ok(PacketType::PakcsClanChat),
|
||||||
0x0550 => Ok(PacketType::PakwcAlliedChat),
|
0x0550 => Ok(PacketType::PakwcClanChat),
|
||||||
0x0551 => Ok(PacketType::PakcsAlliedShoutChat),
|
0x0551 => Ok(PacketType::PakcsAlliedChat),
|
||||||
0x0552 => Ok(PacketType::PakwcAlliedShoutChat),
|
0x0552 => Ok(PacketType::PakwcAlliedChat),
|
||||||
0x0553 => Ok(PacketType::PakwcEventStatus),
|
0x0553 => Ok(PacketType::PakcsAlliedShoutChat),
|
||||||
0x0554 => Ok(PacketType::PakwcNpcChar),
|
0x0554 => Ok(PacketType::PakwcAlliedShoutChat),
|
||||||
0x0555 => Ok(PacketType::PakwcMobChar),
|
0x0555 => Ok(PacketType::PakwcEventStatus),
|
||||||
0x0556 => Ok(PacketType::PakwcPlayerChar),
|
0x0556 => Ok(PacketType::PakwcNpcChar),
|
||||||
0x0557 => Ok(PacketType::PakwcRemoveObject),
|
0x0557 => Ok(PacketType::PakwcMobChar),
|
||||||
0x0558 => Ok(PacketType::PakcsSetPosition),
|
0x0558 => Ok(PacketType::PakwcPlayerChar),
|
||||||
0x0559 => Ok(PacketType::PakcsStop),
|
0x0559 => Ok(PacketType::PakwcRemoveObject),
|
||||||
0x055A => Ok(PacketType::PakwcStop),
|
0x055A => Ok(PacketType::PakcsSetPosition),
|
||||||
0x055B => Ok(PacketType::PakwcMove),
|
0x055B => Ok(PacketType::PakcsStop),
|
||||||
0x055C => Ok(PacketType::PakcsAttack),
|
0x055C => Ok(PacketType::PakwcStop),
|
||||||
0x055D => Ok(PacketType::PakwcAttack),
|
0x055D => Ok(PacketType::PakwcMove),
|
||||||
0x055E => Ok(PacketType::PakcsDamage),
|
0x055E => Ok(PacketType::PakcsAttack),
|
||||||
0x055F => Ok(PacketType::PakwcDamage),
|
0x055F => Ok(PacketType::PakwcAttack),
|
||||||
0x0560 => Ok(PacketType::PakcsMouseCmd),
|
0x0560 => Ok(PacketType::PakcsDamage),
|
||||||
0x0561 => Ok(PacketType::PakwcMouseCmd),
|
0x0561 => Ok(PacketType::PakwcDamage),
|
||||||
0x0562 => Ok(PacketType::PakwcSetExp),
|
0x0562 => Ok(PacketType::PakcsMouseCmd),
|
||||||
0x0563 => Ok(PacketType::PakwcLevelup),
|
0x0563 => Ok(PacketType::PakwcMouseCmd),
|
||||||
0x0564 => Ok(PacketType::PakcsHpReq),
|
0x0564 => Ok(PacketType::PakwcSetExp),
|
||||||
0x0565 => Ok(PacketType::PakwcHpReply),
|
0x0565 => Ok(PacketType::PakwcLevelup),
|
||||||
0x0566 => Ok(PacketType::PakwcSetHpAndMp),
|
0x0566 => Ok(PacketType::PakcsHpReq),
|
||||||
0x0567 => Ok(PacketType::PakcsStoreTradeReq),
|
0x0567 => Ok(PacketType::PakwcHpReply),
|
||||||
0x0568 => Ok(PacketType::PakwcStoreTradeReply),
|
0x0568 => Ok(PacketType::PakwcSetHpAndMp),
|
||||||
0x0569 => Ok(PacketType::PakcsUseItem),
|
0x0569 => Ok(PacketType::PakcsStoreTradeReq),
|
||||||
0x056A => Ok(PacketType::PakwcUseItem),
|
0x056A => Ok(PacketType::PakwcStoreTradeReply),
|
||||||
0x056B => Ok(PacketType::PakcsDropItem),
|
0x056B => Ok(PacketType::PakcsUseItem),
|
||||||
0x056C => Ok(PacketType::PakcsEquipItem),
|
0x056C => Ok(PacketType::PakwcUseItem),
|
||||||
0x056D => Ok(PacketType::PakwcEquipItem),
|
0x056D => Ok(PacketType::PakcsDropItem),
|
||||||
0x056E => Ok(PacketType::PakwcDropItem),
|
0x056E => Ok(PacketType::PakcsEquipItem),
|
||||||
0x056F => Ok(PacketType::PakcsPickupItemReq),
|
0x056F => Ok(PacketType::PakwcEquipItem),
|
||||||
0x0570 => Ok(PacketType::PakwcPickupItemReply),
|
0x0570 => Ok(PacketType::PakwcDropItem),
|
||||||
0x0571 => Ok(PacketType::PakcsTeleportReq),
|
0x0571 => Ok(PacketType::PakcsPickupItemReq),
|
||||||
0x0572 => Ok(PacketType::PakwcTeleportReply),
|
0x0572 => Ok(PacketType::PakwcPickupItemReply),
|
||||||
0x0573 => Ok(PacketType::PakcsStatAddReq),
|
0x0573 => Ok(PacketType::PakcsTeleportReq),
|
||||||
0x0574 => Ok(PacketType::PakwcStatAddReply),
|
0x0574 => Ok(PacketType::PakwcTeleportReply),
|
||||||
0x0575 => Ok(PacketType::PakcsHotbarSetIconReq),
|
0x0575 => Ok(PacketType::PakcsStatAddReq),
|
||||||
0x0576 => Ok(PacketType::PakwcHotbarSetIconReply),
|
0x0576 => Ok(PacketType::PakwcStatAddReply),
|
||||||
0x0577 => Ok(PacketType::PakcsEquipProjectile),
|
0x0577 => Ok(PacketType::PakcsHotbarSetIconReq),
|
||||||
0x0578 => Ok(PacketType::PakwcEquipProjectile),
|
0x0578 => Ok(PacketType::PakwcHotbarSetIconReply),
|
||||||
0x0579 => Ok(PacketType::PakwcChangeSkin),
|
0x0579 => Ok(PacketType::PakcsEquipProjectile),
|
||||||
0x057A => Ok(PacketType::PakcsBankListReq),
|
0x057A => Ok(PacketType::PakwcEquipProjectile),
|
||||||
0x057B => Ok(PacketType::PakwcBankListReply),
|
0x057B => Ok(PacketType::PakwcChangeSkin),
|
||||||
0x057C => Ok(PacketType::PakcsBankMoveItem),
|
0x057C => Ok(PacketType::PakcsBankListReq),
|
||||||
0x057D => Ok(PacketType::PakwcBankMoveItem),
|
0x057D => Ok(PacketType::PakwcBankListReply),
|
||||||
0x057E => Ok(PacketType::PakcsCraftReq),
|
0x057E => Ok(PacketType::PakcsBankMoveItem),
|
||||||
0x057F => Ok(PacketType::PakwcCraftReply),
|
0x057F => Ok(PacketType::PakwcBankMoveItem),
|
||||||
0x0580 => Ok(PacketType::PakwcSkillLearn),
|
0x0580 => Ok(PacketType::PakcsCraftReq),
|
||||||
0x0581 => Ok(PacketType::PakcsSkillLevelReq),
|
0x0581 => Ok(PacketType::PakwcCraftReply),
|
||||||
0x0582 => Ok(PacketType::PakwcSkillLevelReply),
|
0x0582 => Ok(PacketType::PakwcSkillLearn),
|
||||||
0x0583 => Ok(PacketType::PakcsSkillCastSelf),
|
0x0583 => Ok(PacketType::PakcsSkillLevelReq),
|
||||||
0x0584 => Ok(PacketType::PakwcSkillCastSelf),
|
0x0584 => Ok(PacketType::PakwcSkillLevelReply),
|
||||||
0x0585 => Ok(PacketType::PakcsSkillCastTarget),
|
0x0585 => Ok(PacketType::PakcsSkillCastSelf),
|
||||||
0x0586 => Ok(PacketType::PakwcSkillCastTarget),
|
0x0586 => Ok(PacketType::PakwcSkillCastSelf),
|
||||||
0x0587 => Ok(PacketType::PakcsSkillCastPosition),
|
0x0587 => Ok(PacketType::PakcsSkillCastTarget),
|
||||||
0x0588 => Ok(PacketType::PakwcSkillCastPosition),
|
0x0588 => Ok(PacketType::PakwcSkillCastTarget),
|
||||||
0x0589 => Ok(PacketType::PakwcSkillEffect),
|
0x0589 => Ok(PacketType::PakcsSkillCastPosition),
|
||||||
0x058A => Ok(PacketType::PakwcSkillDamage),
|
0x058A => Ok(PacketType::PakwcSkillCastPosition),
|
||||||
0x058B => Ok(PacketType::PakwcClearStatus),
|
0x058B => Ok(PacketType::PakwcSkillEffect),
|
||||||
0x058C => Ok(PacketType::PakwcSpeedChanged),
|
0x058C => Ok(PacketType::PakwcSkillDamage),
|
||||||
0x058D => Ok(PacketType::PakwcSkillFinish),
|
0x058D => Ok(PacketType::PakwcClearStatus),
|
||||||
0x058E => Ok(PacketType::PakcsAppraisalReq),
|
0x058E => Ok(PacketType::PakwcSpeedChanged),
|
||||||
0x058F => Ok(PacketType::PakwcAppraisalReply),
|
0x058F => Ok(PacketType::PakwcSkillFinish),
|
||||||
0x0590 => Ok(PacketType::PakwcSkillStart),
|
0x0590 => Ok(PacketType::PakcsAppraisalReq),
|
||||||
0x0591 => Ok(PacketType::PakcsCraftEnhanceReq),
|
0x0591 => Ok(PacketType::PakwcAppraisalReply),
|
||||||
0x0592 => Ok(PacketType::PakwcCraftEnhanceReply),
|
0x0592 => Ok(PacketType::PakwcSkillStart),
|
||||||
0x0593 => Ok(PacketType::PakwcSkillCancel),
|
0x0593 => Ok(PacketType::PakcsCraftEnhanceReq),
|
||||||
0x0594 => Ok(PacketType::PakcsWishlistAdd),
|
0x0594 => Ok(PacketType::PakwcCraftEnhanceReply),
|
||||||
0x0595 => Ok(PacketType::PakcsTrade),
|
0x0595 => Ok(PacketType::PakwcSkillCancel),
|
||||||
0x0596 => Ok(PacketType::PakwcTrade),
|
0x0596 => Ok(PacketType::PakcsWishlistAdd),
|
||||||
0x0597 => Ok(PacketType::PakcsTradeItem),
|
0x0597 => Ok(PacketType::PakcsTrade),
|
||||||
0x0598 => Ok(PacketType::PakwcTradeItem),
|
0x0598 => Ok(PacketType::PakwcTrade),
|
||||||
0x0599 => Ok(PacketType::PakcsShopOpen),
|
0x0599 => Ok(PacketType::PakcsTradeItem),
|
||||||
0x059A => Ok(PacketType::PakwcShopOpen),
|
0x059A => Ok(PacketType::PakwcTradeItem),
|
||||||
0x059B => Ok(PacketType::PakcsShopClose),
|
0x059B => Ok(PacketType::PakcsShopOpen),
|
||||||
0x059C => Ok(PacketType::PakwcShopClose),
|
0x059C => Ok(PacketType::PakwcShopOpen),
|
||||||
0x059D => Ok(PacketType::PakcsShopListReq),
|
0x059D => Ok(PacketType::PakcsShopClose),
|
||||||
0x059E => Ok(PacketType::PakwcShopListReply),
|
0x059E => Ok(PacketType::PakwcShopClose),
|
||||||
0x059F => Ok(PacketType::PakcsShopBuyReq),
|
0x059F => Ok(PacketType::PakcsShopListReq),
|
||||||
0x05A0 => Ok(PacketType::PakcsShopSellReq),
|
0x05A0 => Ok(PacketType::PakwcShopListReply),
|
||||||
0x05A1 => Ok(PacketType::PakcsShopBuysellReply),
|
0x05A1 => Ok(PacketType::PakcsShopBuyReq),
|
||||||
0x05A2 => Ok(PacketType::PakcsEquipItemRide),
|
0x05A2 => Ok(PacketType::PakcsShopSellReq),
|
||||||
0x05A3 => Ok(PacketType::PakwcEquipItemRide),
|
0x05A3 => Ok(PacketType::PakcsShopBuysellReply),
|
||||||
0x05A4 => Ok(PacketType::PakcsRepairUseItem),
|
0x05A4 => Ok(PacketType::PakcsEquipItemRide),
|
||||||
0x05A5 => Ok(PacketType::PakcsRepairNpc),
|
0x05A5 => Ok(PacketType::PakwcEquipItemRide),
|
||||||
0x05A6 => Ok(PacketType::PakwcSetItemLife),
|
0x05A6 => Ok(PacketType::PakcsRepairUseItem),
|
||||||
0x05A7 => Ok(PacketType::PakcsPartyReq),
|
0x05A7 => Ok(PacketType::PakcsRepairNpc),
|
||||||
0x05A8 => Ok(PacketType::PakwcPartyReq),
|
0x05A8 => Ok(PacketType::PakwcSetItemLife),
|
||||||
0x05A9 => Ok(PacketType::PakcsPartyReply),
|
0x05A9 => Ok(PacketType::PakcsPartyReq),
|
||||||
0x05AA => Ok(PacketType::PakwcPartyReply),
|
0x05AA => Ok(PacketType::PakwcPartyReq),
|
||||||
0x05AB => Ok(PacketType::PakwcPartyMember),
|
0x05AB => Ok(PacketType::PakcsPartyReply),
|
||||||
0x05AC => Ok(PacketType::PakwcPartyItem),
|
0x05AC => Ok(PacketType::PakwcPartyReply),
|
||||||
0x05AD => Ok(PacketType::PakwcPartyLevelexp),
|
0x05AD => Ok(PacketType::PakwcPartyMember),
|
||||||
0x05AE => Ok(PacketType::PakwcPartyMemberUpdate),
|
0x05AE => Ok(PacketType::PakwcPartyItem),
|
||||||
0x05AF => Ok(PacketType::PakwcEventAdd),
|
0x05AF => Ok(PacketType::PakwcPartyLevelexp),
|
||||||
0x05B0 => Ok(PacketType::PakcsPartyRule),
|
0x05B0 => Ok(PacketType::PakwcPartyMemberUpdate),
|
||||||
0x05B1 => Ok(PacketType::PakwcPartyRule),
|
0x05B1 => Ok(PacketType::PakwcEventAdd),
|
||||||
0x05B2 => Ok(PacketType::PakcsCraftStatus),
|
0x05B2 => Ok(PacketType::PakcsPartyRule),
|
||||||
0x05B3 => Ok(PacketType::PakwcCraftStatus),
|
0x05B3 => Ok(PacketType::PakwcPartyRule),
|
||||||
0x05B4 => Ok(PacketType::PakcsBankMoveMoney),
|
0x05B4 => Ok(PacketType::PakcsCraftStatus),
|
||||||
0x05B5 => Ok(PacketType::PakwcBankMoveMoney),
|
0x05B5 => Ok(PacketType::PakwcCraftStatus),
|
||||||
0x05B6 => Ok(PacketType::PakwcNpcShow),
|
0x05B6 => Ok(PacketType::PakcsBankMoveMoney),
|
||||||
0x05B7 => Ok(PacketType::PakwcFairy),
|
0x05B7 => Ok(PacketType::PakwcBankMoveMoney),
|
||||||
0x05B8 => Ok(PacketType::PakcsRideRequest),
|
0x05B8 => Ok(PacketType::PakwcNpcShow),
|
||||||
0x05B9 => Ok(PacketType::PakwcRideRequest),
|
0x05B9 => Ok(PacketType::PakwcFairy),
|
||||||
0x05BA => Ok(PacketType::PakwcBillingMessage),
|
0x05BA => Ok(PacketType::PakcsRideRequest),
|
||||||
0x05BB => Ok(PacketType::PakwcBillingMessageExt),
|
0x05BB => Ok(PacketType::PakwcRideRequest),
|
||||||
0x05BC => Ok(PacketType::PakcsClanCommand),
|
0x05BC => Ok(PacketType::PakwcBillingMessage),
|
||||||
0x05BD => Ok(PacketType::PakccClanCommand),
|
0x05BD => Ok(PacketType::PakwcBillingMessageExt),
|
||||||
0x05BE => Ok(PacketType::PakcsMessenger),
|
0x05BE => Ok(PacketType::PakcsClanCommand),
|
||||||
0x05BF => Ok(PacketType::PakccMessenger),
|
0x05BF => Ok(PacketType::PakccClanCommand),
|
||||||
0x05C0 => Ok(PacketType::PakcsMessengerChat),
|
0x05C0 => Ok(PacketType::PakcsMessenger),
|
||||||
0x05C1 => Ok(PacketType::PakccMessengerChat),
|
0x05C1 => Ok(PacketType::PakccMessenger),
|
||||||
0x05C2 => Ok(PacketType::PakcsChatroom),
|
0x05C2 => Ok(PacketType::PakcsMessengerChat),
|
||||||
0x05C3 => Ok(PacketType::PakccChatroom),
|
0x05C3 => Ok(PacketType::PakccMessengerChat),
|
||||||
0x05C4 => Ok(PacketType::PakcsChatroomMessage),
|
0x05C4 => Ok(PacketType::PakcsChatroom),
|
||||||
0x05C5 => Ok(PacketType::PakccChatroomMessage),
|
0x05C5 => Ok(PacketType::PakccChatroom),
|
||||||
0x05C6 => Ok(PacketType::PakcsMemo),
|
0x05C6 => Ok(PacketType::PakcsChatroomMessage),
|
||||||
0x05C7 => Ok(PacketType::PakccMemo),
|
0x05C7 => Ok(PacketType::PakccChatroomMessage),
|
||||||
0x05C8 => Ok(PacketType::PakcsClanIconSet),
|
0x05C8 => Ok(PacketType::PakcsMemo),
|
||||||
0x05C9 => Ok(PacketType::PakcsClanIconReq),
|
0x05C9 => Ok(PacketType::PakccMemo),
|
||||||
0x05CA => Ok(PacketType::PakccClanIconReply),
|
0x05CA => Ok(PacketType::PakcsClanIconSet),
|
||||||
0x05CB => Ok(PacketType::PakcsClanIconTimestamp),
|
0x05CB => Ok(PacketType::PakcsClanIconReq),
|
||||||
0x05CC => Ok(PacketType::PakccClanIconTimestamp),
|
0x05CC => Ok(PacketType::PakccClanIconReply),
|
||||||
0x05CD => Ok(PacketType::PakwcRideStateChange),
|
0x05CD => Ok(PacketType::PakcsClanIconTimestamp),
|
||||||
0x05CE => Ok(PacketType::PawkcCharStateChange),
|
0x05CE => Ok(PacketType::PakccClanIconTimestamp),
|
||||||
0x05CF => Ok(PacketType::PakcsScreenShotTimeReq),
|
0x05CF => Ok(PacketType::PakwcRideStateChange),
|
||||||
0x05D0 => Ok(PacketType::PakscScreenShotTimeReply),
|
0x05D0 => Ok(PacketType::PawkcCharStateChange),
|
||||||
0x05D1 => Ok(PacketType::PakwcUpdateName),
|
0x05D1 => Ok(PacketType::PakcsScreenShotTimeReq),
|
||||||
0x05D2 => Ok(PacketType::PakssAcceptReply),
|
0x05D2 => Ok(PacketType::PakscScreenShotTimeReply),
|
||||||
0x05D3 => Ok(PacketType::Epacketmax),
|
0x05D3 => Ok(PacketType::PakwcUpdateName),
|
||||||
|
0x05D4 => Ok(PacketType::PakssAcceptReply),
|
||||||
|
0x05D5 => Ok(PacketType::Epacketmax),
|
||||||
0x6F6D => Ok(PacketType::Stress),
|
0x6F6D => Ok(PacketType::Stress),
|
||||||
_ => Err(PacketError::UnknownPacket(value)),
|
_ => Err(PacketError::UnknownPacket(value)),
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,9 +13,9 @@ pub async fn route_packet(stream: &mut TcpStream, packet: Packet, auth_client: A
|
|||||||
match packet.packet_type {
|
match packet.packet_type {
|
||||||
PacketType::PakcsAlive => Ok(()),
|
PacketType::PakcsAlive => Ok(()),
|
||||||
PacketType::PakcsAcceptReq => auth::handle_accept_req(stream, packet).await,
|
PacketType::PakcsAcceptReq => auth::handle_accept_req(stream, packet).await,
|
||||||
PacketType::PakcsJoinServerReq => auth::handle_join_server_req(stream, packet).await,
|
PacketType::PakcsJoinServerTokenReq => auth::handle_join_server_req(stream, packet).await,
|
||||||
// Login Stuff
|
// Login Stuff
|
||||||
PacketType::PakcsLoginReq => auth::handle_login_req(stream, packet, auth_client).await,
|
PacketType::PakcsLoginTokenReq => auth::handle_login_req(stream, packet, auth_client).await,
|
||||||
PacketType::PakcsSrvSelectReq => auth::handle_server_select_req(stream, packet).await,
|
PacketType::PakcsSrvSelectReq => auth::handle_server_select_req(stream, packet).await,
|
||||||
PacketType::PakcsChannelListReq => auth::handle_channel_list_req(stream, packet).await,
|
PacketType::PakcsChannelListReq => auth::handle_channel_list_req(stream, packet).await,
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user