mirror of
https://github.com/overte-org/overte.git
synced 2025-04-08 08:14:48 +02:00
add ability to send a voxel in JS via VoxelScriptingInterface
This commit is contained in:
parent
df862c152b
commit
a45d64a214
3 changed files with 18 additions and 18 deletions
|
@ -23,7 +23,7 @@ Agent::Agent() :
|
|||
|
||||
void Agent::run(QUrl scriptURL) {
|
||||
NodeList::getInstance()->setOwnerType(NODE_TYPE_AGENT);
|
||||
NodeList::getInstance()->setNodeTypesOfInterest(&NODE_TYPE_AVATAR_MIXER, 1);
|
||||
NodeList::getInstance()->setNodeTypesOfInterest(&NODE_TYPE_VOXEL_SERVER, 1);
|
||||
|
||||
QNetworkAccessManager manager;
|
||||
|
||||
|
@ -77,7 +77,7 @@ void Agent::run(QUrl scriptURL) {
|
|||
// allow the scripter's call back to setup visual data
|
||||
emit preSendCallback();
|
||||
// flush the voxel packet queue
|
||||
voxelScripter.getVoxelPacketSender()->flushQueue();
|
||||
voxelScripter.getVoxelPacketSender()->process();
|
||||
|
||||
if (NodeList::getInstance()->getNodeSocket()->receive((sockaddr*) &senderAddress, receivedData, &receivedBytes)) {
|
||||
NodeList::getInstance()->processNodeData((sockaddr*) &senderAddress, receivedData, receivedBytes);
|
||||
|
|
|
@ -11,5 +11,5 @@
|
|||
void VoxelScriptingInterface::queueVoxelAdd(float x, float y, float z, float scale, uchar red, uchar green, uchar blue) {
|
||||
// setup a VoxelDetail struct with the data
|
||||
VoxelDetail addVoxelDetail = {x, y, z, scale, red, green, blue};
|
||||
_voxelPacketSender.queueVoxelEditMessages(PACKET_TYPE_SET_VOXEL, 1, &addVoxelDetail);
|
||||
_voxelPacketSender.sendVoxelEditMessage(PACKET_TYPE_SET_VOXEL, addVoxelDetail);
|
||||
}
|
||||
|
|
|
@ -172,21 +172,21 @@ int main(int argc, const char* argv[]) {
|
|||
|
||||
while (true) {
|
||||
|
||||
::assignmentQueueMutex.lock();
|
||||
// check if our audio-mixer or avatar-mixer are dead and we don't have existing assignments in the queue
|
||||
// so we can add those assignments back to the front of the queue since they are high-priority
|
||||
if (!nodeList->soloNodeOfType(NODE_TYPE_AVATAR_MIXER) &&
|
||||
std::find(::assignmentQueue.begin(), assignmentQueue.end(), &avatarMixerAssignment) == ::assignmentQueue.end()) {
|
||||
qDebug("Missing an avatar mixer and assignment not in queue. Adding.\n");
|
||||
::assignmentQueue.push_front(&avatarMixerAssignment);
|
||||
}
|
||||
|
||||
if (!nodeList->soloNodeOfType(NODE_TYPE_AUDIO_MIXER) &&
|
||||
std::find(::assignmentQueue.begin(), ::assignmentQueue.end(), &audioMixerAssignment) == ::assignmentQueue.end()) {
|
||||
qDebug("Missing an audio mixer and assignment not in queue. Adding.\n");
|
||||
::assignmentQueue.push_front(&audioMixerAssignment);
|
||||
}
|
||||
::assignmentQueueMutex.unlock();
|
||||
// ::assignmentQueueMutex.lock();
|
||||
// // check if our audio-mixer or avatar-mixer are dead and we don't have existing assignments in the queue
|
||||
// // so we can add those assignments back to the front of the queue since they are high-priority
|
||||
// if (!nodeList->soloNodeOfType(NODE_TYPE_AVATAR_MIXER) &&
|
||||
// std::find(::assignmentQueue.begin(), assignmentQueue.end(), &avatarMixerAssignment) == ::assignmentQueue.end()) {
|
||||
// qDebug("Missing an avatar mixer and assignment not in queue. Adding.\n");
|
||||
// ::assignmentQueue.push_front(&avatarMixerAssignment);
|
||||
// }
|
||||
//
|
||||
// if (!nodeList->soloNodeOfType(NODE_TYPE_AUDIO_MIXER) &&
|
||||
// std::find(::assignmentQueue.begin(), ::assignmentQueue.end(), &audioMixerAssignment) == ::assignmentQueue.end()) {
|
||||
// qDebug("Missing an audio mixer and assignment not in queue. Adding.\n");
|
||||
// ::assignmentQueue.push_front(&audioMixerAssignment);
|
||||
// }
|
||||
// ::assignmentQueueMutex.unlock();
|
||||
|
||||
while (nodeList->getNodeSocket()->receive((sockaddr *)&nodePublicAddress, packetData, &receivedBytes) &&
|
||||
packetVersionMatch(packetData)) {
|
||||
|
|
Loading…
Reference in a new issue