use D5 on versions that support it
This commit is contained in:
@@ -693,13 +693,11 @@ static string create_download_quest_file(const string& compressed_data,
|
||||
|
||||
// Add temporary extra bytes if necessary so encryption won't fail - the data
|
||||
// size must be a multiple of 4 for PSO V2 encryption.
|
||||
size_t original_size = data.size();
|
||||
data.resize((data.size() + 3) & (~3));
|
||||
|
||||
PSOV3Encryption encr(encryption_seed);
|
||||
encr.encrypt(data.data() + sizeof(PSODownloadQuestHeader),
|
||||
data.size() - sizeof(PSODownloadQuestHeader));
|
||||
data.resize(original_size);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
+17
-1
@@ -521,7 +521,23 @@ void send_header_text(Channel& ch, uint16_t command,
|
||||
}
|
||||
|
||||
void send_message_box(shared_ptr<Client> c, const u16string& text) {
|
||||
uint16_t command = (c->version == GameVersion::PATCH) ? 0x13 : 0x1A;
|
||||
uint16_t command;
|
||||
switch (c->version) {
|
||||
case GameVersion::PATCH:
|
||||
command = 0x13;
|
||||
break;
|
||||
case GameVersion::DC:
|
||||
case GameVersion::PC:
|
||||
command = 0x1A;
|
||||
break;
|
||||
case GameVersion::GC:
|
||||
case GameVersion::XB:
|
||||
case GameVersion::BB:
|
||||
command = 0xD5;
|
||||
break;
|
||||
default:
|
||||
throw logic_error("invalid game version");
|
||||
}
|
||||
send_text(c->channel, command, text, true);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user