Showing the changes to assignment-client/src/scripts/EntityScriptServer.cpp (1 of 6 files). Show all
Unified · Split
| @@ -80,9 +80,8 @@ EntityScriptServer::EntityScriptServer(ReceivedMessage& message) : ThreadedAssig · 79 unmodified lines | ||
| 80 | 80 | packetReceiver.registerListener(PacketType::EntityScriptGetStatus, this, "handleEntityScriptGetStatusPacket"); |
| 81 | 81 | packetReceiver.registerListener(PacketType::EntityServerScriptLog, this, "handleEntityServerScriptLogPacket"); |
| 82 | 82 | |
| 83 | − static const int LOG_INTERVAL = MSECS_PER_SECOND / 50; | |
| 83 | + static const int LOG_INTERVAL = MSECS_PER_SECOND / 10; | |
| 84 | 84 | auto timer = new QTimer(this); |
| 85 | − timer->setTimerType(Qt::PreciseTimer); | |
| 86 | 85 | timer->setInterval(LOG_INTERVAL); |
| 87 | 86 | connect(timer, &QTimer::timeout, this, &EntityScriptServer::pushLogs); |
| 88 | 87 | timer->start(); |
| @@ -215,24 +214,15 @@ void EntityScriptServer::pushLogs() { · 126 unmodified lines | ||
| 215 | 214 | return; |
| 216 | 215 | } |
| 217 | 216 | |
| 218 | − auto packet = NLPacket::create(PacketType::EntityServerScriptLog, buffer.size(), true); | |
| 219 | − packet->write(buffer.data(), buffer.size()); | |
| 220 | − | |
| 221 | 217 | auto nodeList = DependencyManager::get<NodeList>(); |
| 222 | − | |
| 223 | − auto last = --std::end(_logListeners); | |
| 224 | − for (auto it = std::begin(_logListeners); it != last; ++it) { | |
| 225 | − auto node = nodeList->nodeWithUUID(*it); | |
| 218 | + for (auto uuid : _logListeners) { | |
| 219 | + auto node = nodeList->nodeWithUUID(uuid); | |
| 226 | 220 | if (node && node->getActiveSocket()) { |
| 227 | − auto copy = NLPacket::createCopy(*packet); | |
| 228 | − nodeList->sendPacket(std::move(copy), *node); | |
| 221 | + auto packet = NLPacketList::create(PacketType::EntityServerScriptLog, QByteArray(), true, true); | |
| 222 | + packet->write(buffer.data(), buffer.size()); | |
| 223 | + nodeList->sendPacketList(std::move(packet), *node); | |
| 229 | 224 | } |
| 230 | 225 | } |
| 231 | − | |
| 232 | − auto node = nodeList->nodeWithUUID(*last); | |
| 233 | − if (node && node->getActiveSocket()) { | |
| 234 | − nodeList->sendPacket(std::move(packet), *node); | |
| 235 | − } | |
| 236 | 226 | } |
| 237 | 227 | |
| 238 | 228 | void EntityScriptServer::run() { |