add DC NTE format for 6x06 command
This commit is contained in:
@@ -3848,6 +3848,12 @@ struct G_SwitchStateChanged_6x05 {
|
||||
|
||||
// 6x06: Send guild card
|
||||
|
||||
struct G_SendGuildCard_DCNTE_6x06 {
|
||||
G_UnusedHeader header;
|
||||
GuildCardDCNTE guild_card;
|
||||
uint8_t unused;
|
||||
} __packed__;
|
||||
|
||||
struct G_SendGuildCard_DC_6x06 {
|
||||
G_UnusedHeader header;
|
||||
GuildCardDC guild_card;
|
||||
|
||||
@@ -194,6 +194,19 @@ struct PlayerDispDataBB {
|
||||
void apply_dressing_room(const PlayerDispDataBBPreview&);
|
||||
} __attribute__((packed));
|
||||
|
||||
struct GuildCardDCNTE {
|
||||
/* 00 */ le_uint32_t player_tag = 0;
|
||||
/* 04 */ le_uint32_t guild_card_number = 0;
|
||||
/* 08 */ pstring<TextEncoding::ASCII, 0x18> name;
|
||||
/* 20 */ pstring<TextEncoding::MARKED, 0x48> description;
|
||||
/* 68 */ parray<uint8_t, 0x0F> unused2;
|
||||
/* 77 */ uint8_t present = 0;
|
||||
/* 78 */ uint8_t language = 0;
|
||||
/* 79 */ uint8_t section_id = 0;
|
||||
/* 7A */ uint8_t char_class = 0;
|
||||
/* 7B */
|
||||
} __attribute__((packed));
|
||||
|
||||
struct GuildCardDC {
|
||||
/* 00 */ le_uint32_t player_tag = 0;
|
||||
/* 04 */ le_uint32_t guild_card_number = 0;
|
||||
|
||||
@@ -984,7 +984,11 @@ static void on_send_guild_card(shared_ptr<Client> c, uint8_t command, uint8_t fl
|
||||
}
|
||||
|
||||
switch (c->version()) {
|
||||
case Version::DC_NTE:
|
||||
case Version::DC_NTE: {
|
||||
const auto& cmd = check_size_t<G_SendGuildCard_DCNTE_6x06>(data, size);
|
||||
c->character(true, false)->guild_card.description.encode(cmd.guild_card.description.decode(c->language()), c->language());
|
||||
break;
|
||||
}
|
||||
case Version::DC_V1_11_2000_PROTOTYPE:
|
||||
case Version::DC_V1:
|
||||
case Version::DC_V2: {
|
||||
|
||||
+3
-1
@@ -1177,10 +1177,12 @@ void send_guild_card(
|
||||
uint8_t char_class) {
|
||||
switch (ch.version) {
|
||||
case Version::DC_NTE:
|
||||
send_guild_card_dc_pc_gc_t<G_SendGuildCard_DCNTE_6x06>(
|
||||
ch, guild_card_number, name, description, language, section_id, char_class);
|
||||
break;
|
||||
case Version::DC_V1_11_2000_PROTOTYPE:
|
||||
case Version::DC_V1:
|
||||
case Version::DC_V2:
|
||||
// TODO: Is this the right format and subcommand for NTE and the prototype?
|
||||
send_guild_card_dc_pc_gc_t<G_SendGuildCard_DC_6x06>(
|
||||
ch, guild_card_number, name, description, language, section_id, char_class);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user