feat: handle EntityEditNack and create test entities on domain connection
This commit is contained in:
@@ -423,6 +423,17 @@ void OverteClient::parseDomainPacket(const char* data, size_t len) {
|
|||||||
parseEntityPacket(payload, payloadLen);
|
parseEntityPacket(payload, payloadLen);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case PacketType::EntityEditNack:
|
||||||
|
std::cout << "[OverteClient] EntityEditNack received - entity creation/edit rejected" << std::endl;
|
||||||
|
if (payloadLen > 0) {
|
||||||
|
std::cout << "[OverteClient] Nack data (" << payloadLen << " bytes): ";
|
||||||
|
for (size_t i = 0; i < std::min(payloadLen, size_t(32)); i++) {
|
||||||
|
printf("%02x ", (unsigned char)payload[i]);
|
||||||
|
}
|
||||||
|
std::cout << std::endl;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case PacketType::EntityQueryInitialResultsComplete:
|
case PacketType::EntityQueryInitialResultsComplete:
|
||||||
std::cout << "[OverteClient] Entity query initial results complete" << std::endl;
|
std::cout << "[OverteClient] Entity query initial results complete" << std::endl;
|
||||||
break;
|
break;
|
||||||
@@ -802,6 +813,27 @@ void OverteClient::handleDomainListReply(const char* data, size_t len) {
|
|||||||
std::cout << "[OverteClient] Domain connected! Sending entity query..." << std::endl;
|
std::cout << "[OverteClient] Domain connected! Sending entity query..." << std::endl;
|
||||||
sendEntityQuery();
|
sendEntityQuery();
|
||||||
|
|
||||||
|
// Create 3 test entities after connection
|
||||||
|
std::cout << "[OverteClient] Creating 3 test entities..." << std::endl;
|
||||||
|
|
||||||
|
// Red Box at origin
|
||||||
|
createEntity("Red Box", EntityType::Box,
|
||||||
|
glm::vec3(0.0f, 1.5f, -2.0f), // position
|
||||||
|
glm::vec3(0.5f, 0.5f, 0.5f), // dimensions
|
||||||
|
glm::vec3(1.0f, 0.4f, 0.4f)); // red color
|
||||||
|
|
||||||
|
// Green Sphere to the right
|
||||||
|
createEntity("Green Sphere", EntityType::Sphere,
|
||||||
|
glm::vec3(1.2f, 1.5f, -2.0f), // position
|
||||||
|
glm::vec3(0.4f, 0.4f, 0.4f), // dimensions
|
||||||
|
glm::vec3(0.4f, 1.0f, 0.4f)); // green color
|
||||||
|
|
||||||
|
// Blue Box to the left (tall)
|
||||||
|
createEntity("Blue Box", EntityType::Box,
|
||||||
|
glm::vec3(-1.2f, 1.5f, -2.0f), // position
|
||||||
|
glm::vec3(0.3f, 0.8f, 0.3f), // dimensions (tall)
|
||||||
|
glm::vec3(0.4f, 0.4f, 1.0f)); // blue color
|
||||||
|
|
||||||
// Read number of nodes - Qt QDataStream format (signed int32, big-endian)
|
// Read number of nodes - Qt QDataStream format (signed int32, big-endian)
|
||||||
// But for node list, Overte uses a special encoding
|
// But for node list, Overte uses a special encoding
|
||||||
// Looking at the packet: ff 01 00 06 43 23...
|
// Looking at the packet: ff 01 00 06 43 23...
|
||||||
|
|||||||
Reference in New Issue
Block a user