Fixed unknown map in character select (#3761)

Fixes #1145

Credits to @4144 for finding this!

Thanks to @RadianFord for reporting.
This commit is contained in:
Lemongrass3110
2018-12-20 17:56:13 +01:00
committed by GitHub
parent ec3b7077cb
commit 1c987de71d
3 changed files with 18 additions and 3 deletions

View File

@@ -372,10 +372,21 @@ void chclif_mmo_send082d(int fd, struct char_session_data* sd) {
}
void chclif_mmo_send099d(int fd, struct char_session_data *sd) {
uint8 count = 0;
WFIFOHEAD(fd,4 + (MAX_CHARS*MAX_CHAR_BUF));
WFIFOW(fd,0) = 0x99d;
WFIFOW(fd,2) = char_mmo_chars_fromsql(sd, WFIFOP(fd,4)) + 4;
WFIFOW(fd,2) = char_mmo_chars_fromsql(sd, WFIFOP(fd,4), &count) + 4;
WFIFOSET(fd,WFIFOW(fd,2));
// This is something special Gravity came up with.
// The client triggers some finalization code only if count is != 3.
if( count == 3 ){
WFIFOHEAD(fd,4);
WFIFOW(fd,0) = 0x99d;
WFIFOW(fd,2) = 4;
WFIFOSET(fd,4);
}
}