/// <summary> /// Sends the instance information message. /// </summary> /// <param name="connection">The connection.</param> public void SendInstanceInfoMessage(BrokerConnection connection) { if (!IsRunning || !HasSubscribers) { return; } Enqueue(InstanceMessage.Generate(connection)); }
public void requestNewInstance() { RequestNewInstanceMessage message = new RequestNewInstanceMessage(); message.onResponse += (QTResponsableMessage message) => { InstanceMessage instanceMessage = (InstanceMessage)message; setupWorkerClient(instanceMessage.room.ip, instanceMessage.room.port); }; masterClient.sendMessage(message); }
internal override void AssignData(InstanceMessage data) { TreeMessage msg = data as TreeMessage; if (msg == null) { deleted = true; return; } id = msg.id; prefab_name = msg.prefab_name; _position = msg.position; }
internal override void AssignData(InstanceMessage data) { NetNodeMessage msg = data as NetNodeMessage; if (msg == null) { deleted = true; return; } id = msg.id; prefab_name = msg.prefab_name; _position = msg.position; terrain_offset = msg.terrain_offset; building_id = msg.building_id; seg_count = msg.seg_count; _cachedSegments = new CachedObj <List <Segment> >(() => api.client.RemoteCall <List <NetSegmentMessage> >(Contracts.GetSegmentsForNodeId, id).Select((obj) => new Segment(obj, api)).ToList());; }
public override void handleMessage(QTMessage message) { switch (message.messageType) { case QTMessage.type.REQUEST_NEW_INSTANCE: MasterServerQTClient qtRemoteClient = (MasterServerQTClient)client; RequestNewInstanceMessage requestMessage = (RequestNewInstanceMessage)message; MasterServerWorker worker = MasterServerManager.instance.workersManager.spawnWorker(Guid.NewGuid().ToString()); InstanceMessage instanceMessage = new InstanceMessage(requestMessage); instanceMessage.room = worker.room; worker.onWorkerReady += () => { sendRequestInstanceResponse(qtRemoteClient, instanceMessage); }; break; } }
public void sendRequestInstanceResponse(MasterServerQTClient qtRemoteClient, InstanceMessage message) { qtRemoteClient.sendMessage(message); }