Browse Source

shop actions

pull/3/head
jake 4 years ago
parent
commit
7472e132bf
  1. 59
      src/packet/messages.rs

59
src/packet/messages.rs

@ -708,21 +708,37 @@ pub struct PhotonChairMove {
unknown1: u32, unknown1: u32,
} }
//#[pso_message(0xB5)]
//pub struct ShopRequest {
// unknown1: u16,
// shop_type: u8,
//}
#[pso_message(0xB5)]
pub struct ShopRequest {
shop_type: u8,
}
//#[pso_message(0xB7)]
//pub struct BuyItem {
// unknown1: u16,
// item_id: u8,
// unknown2: u8,
// shop_item_index: u8,
// amount: u8,
// unknown3: u8,
//}
#[derive(PSOPacketData, Clone)]
pub struct ShopListItem {
pub item_bytes: [u8; 12],
pub unknown: u32, // 0xFFFFFFFF
pub price: u32,
}
#[pso_message(0xB6)]
pub struct ShopList {
pub shop_type: u8,
#[length_of(items)]
pub num_items: u8,
pub unused: u16,
#[length_is(num_items)]
pub items: Vec<ShopListItem>,
}
#[pso_message(0xB7)]
pub struct BuyItem {
item_id: u32,
shop_type: u8,
shop_index: u8,
amount: u8,
unknown1: u8,
}
#[pso_message(0xB8)] #[pso_message(0xB8)]
pub struct TekRequest { pub struct TekRequest {
@ -1054,8 +1070,9 @@ pub enum GameMessage {
UnknownAE(UnknownAE), UnknownAE(UnknownAE),
PhotonChairTurn(PhotonChairTurn), PhotonChairTurn(PhotonChairTurn),
PhotonChairMove(PhotonChairMove), PhotonChairMove(PhotonChairMove),
//ShopRequest(ShopRequest),
//BuyItem(BuyItem),
ShopRequest(ShopRequest),
ShopList(ShopList),
BuyItem(BuyItem),
TekRequest(TekRequest), TekRequest(TekRequest),
TekPreview(TekPreview), TekPreview(TekPreview),
//TekAccept(TekAccept), //TekAccept(TekAccept),
@ -1218,8 +1235,9 @@ impl PSOPacketData for GameMessage {
UnknownAE::CMD => Ok(GameMessage::UnknownAE(UnknownAE::from_bytes(&mut cur)?)), UnknownAE::CMD => Ok(GameMessage::UnknownAE(UnknownAE::from_bytes(&mut cur)?)),
PhotonChairTurn::CMD => Ok(GameMessage::PhotonChairTurn(PhotonChairTurn::from_bytes(&mut cur)?)), PhotonChairTurn::CMD => Ok(GameMessage::PhotonChairTurn(PhotonChairTurn::from_bytes(&mut cur)?)),
PhotonChairMove::CMD => Ok(GameMessage::PhotonChairMove(PhotonChairMove::from_bytes(&mut cur)?)), PhotonChairMove::CMD => Ok(GameMessage::PhotonChairMove(PhotonChairMove::from_bytes(&mut cur)?)),
//ShopRequest::CMD => Ok(GameMessage::ShopRequest(ShopRequest::from_bytes(&mut cur)?)),
//BuyItem::CMD => Ok(GameMessage::BuyItem(BuyItem::from_bytes(&mut cur)?)),
ShopRequest::CMD => Ok(GameMessage::ShopRequest(ShopRequest::from_bytes(&mut cur)?)),
ShopList::CMD => Ok(GameMessage::ShopList(ShopList::from_bytes(&mut cur)?)),
BuyItem::CMD => Ok(GameMessage::BuyItem(BuyItem::from_bytes(&mut cur)?)),
TekRequest::CMD => Ok(GameMessage::TekRequest(TekRequest::from_bytes(&mut cur)?)), TekRequest::CMD => Ok(GameMessage::TekRequest(TekRequest::from_bytes(&mut cur)?)),
TekPreview::CMD => Ok(GameMessage::TekPreview(TekPreview::from_bytes(&mut cur)?)), TekPreview::CMD => Ok(GameMessage::TekPreview(TekPreview::from_bytes(&mut cur)?)),
//TekAccept::CMD => Ok(GameMessage::TekAccept(TekAccept::from_bytes(&mut cur)?)), //TekAccept::CMD => Ok(GameMessage::TekAccept(TekAccept::from_bytes(&mut cur)?)),
@ -1384,8 +1402,9 @@ impl PSOPacketData for GameMessage {
GameMessage::UnknownAE(data) => data.as_bytes(), GameMessage::UnknownAE(data) => data.as_bytes(),
GameMessage::PhotonChairTurn(data) => data.as_bytes(), GameMessage::PhotonChairTurn(data) => data.as_bytes(),
GameMessage::PhotonChairMove(data) => data.as_bytes(), GameMessage::PhotonChairMove(data) => data.as_bytes(),
//GameMessage::ShopRequest(data) => data.as_bytes(),
//GameMessage::BuyItem(data) => data.as_bytes(),
GameMessage::ShopRequest(data) => data.as_bytes(),
GameMessage::ShopList(data) => data.as_bytes(),
GameMessage::BuyItem(data) => data.as_bytes(),
GameMessage::TekRequest(data) => data.as_bytes(), GameMessage::TekRequest(data) => data.as_bytes(),
GameMessage::TekPreview(data) => data.as_bytes(), GameMessage::TekPreview(data) => data.as_bytes(),
// GameMessage::TekAccept(data) => data.as_bytes(), // GameMessage::TekAccept(data) => data.as_bytes(),

Loading…
Cancel
Save