mirror of
https://github.com/whoahq/whoa.git
synced 2026-03-18 13:41:06 +03:00
feat(connection): implement character creation message handlers
This commit is contained in:
parent
d859670f7b
commit
48ea761994
@ -104,6 +104,10 @@ void ClientConnection::GetRealmList() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ClientConnection::HandleCharacterCreate(uint8_t result) {
|
||||||
|
this->Complete(result == 47, result);
|
||||||
|
}
|
||||||
|
|
||||||
void ClientConnection::HandleCharacterDelete(uint8_t result) {
|
void ClientConnection::HandleCharacterDelete(uint8_t result) {
|
||||||
this->Complete(result == 71, result);
|
this->Complete(result == 71, result);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -22,6 +22,7 @@ class ClientConnection : public RealmConnection {
|
|||||||
|
|
||||||
// Virtual member functions
|
// Virtual member functions
|
||||||
virtual int32_t HandleConnect();
|
virtual int32_t HandleConnect();
|
||||||
|
virtual void HandleCharacterCreate(uint8_t result);
|
||||||
virtual void HandleCharacterDelete(uint8_t result);
|
virtual void HandleCharacterDelete(uint8_t result);
|
||||||
|
|
||||||
// Member functions
|
// Member functions
|
||||||
|
|||||||
@ -19,8 +19,8 @@ int32_t RealmConnection::MessageHandler(void* param, NETMESSAGE msgId, uint32_t
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case SMSG_CREATE_CHAR: {
|
case SMSG_CHAR_CREATE: {
|
||||||
// TODO
|
result = connection->CreateCharHandler(msgId, time, msg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -294,6 +294,15 @@ int32_t RealmConnection::HandleCharEnum(uint32_t msgId, uint32_t time, CDataStor
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int32_t RealmConnection::CreateCharHandler(uint32_t msgId, uint32_t time, CDataStore* msg) {
|
||||||
|
uint8_t result;
|
||||||
|
msg->Get(result);
|
||||||
|
|
||||||
|
this->HandleCharacterCreate(result);
|
||||||
|
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
int32_t RealmConnection::DeleteCharHandler(uint32_t msgId, uint32_t time, CDataStore* msg) {
|
int32_t RealmConnection::DeleteCharHandler(uint32_t msgId, uint32_t time, CDataStore* msg) {
|
||||||
uint8_t result;
|
uint8_t result;
|
||||||
msg->Get(result);
|
msg->Get(result);
|
||||||
|
|||||||
@ -46,12 +46,14 @@ class RealmConnection : public NetClient {
|
|||||||
|
|
||||||
// Virtual member functions
|
// Virtual member functions
|
||||||
virtual int32_t HandleAuthChallenge(AuthenticationChallenge* challenge);
|
virtual int32_t HandleAuthChallenge(AuthenticationChallenge* challenge);
|
||||||
|
virtual void HandleCharacterCreate(uint8_t result) = 0;
|
||||||
virtual void HandleCharacterDelete(uint8_t result) = 0;
|
virtual void HandleCharacterDelete(uint8_t result) = 0;
|
||||||
|
|
||||||
// Member functions
|
// Member functions
|
||||||
RealmConnection(RealmResponse* realmResponse);
|
RealmConnection(RealmResponse* realmResponse);
|
||||||
int32_t HandleAuthResponse(uint32_t msgId, uint32_t time, CDataStore* msg);
|
int32_t HandleAuthResponse(uint32_t msgId, uint32_t time, CDataStore* msg);
|
||||||
int32_t HandleCharEnum(uint32_t msgId, uint32_t time, CDataStore* msg);
|
int32_t HandleCharEnum(uint32_t msgId, uint32_t time, CDataStore* msg);
|
||||||
|
int32_t CreateCharHandler(uint32_t msgId, uint32_t time, CDataStore* msg);
|
||||||
int32_t DeleteCharHandler(uint32_t msgId, uint32_t time, CDataStore* msg);
|
int32_t DeleteCharHandler(uint32_t msgId, uint32_t time, CDataStore* msg);
|
||||||
void RequestCharacterEnum();
|
void RequestCharacterEnum();
|
||||||
void RequestCharacterLogin(uint64_t guid, int32_t a2);
|
void RequestCharacterLogin(uint64_t guid, int32_t a2);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user