if (typeof gdjs.evtsExt__MQTT__GetLastMessage !== "undefined") { gdjs.evtsExt__MQTT__GetLastMessage.registeredGdjsCallbacks.forEach(callback => gdjs._unregisterCallback(callback) ); } gdjs.evtsExt__MQTT__GetLastMessage = {}; gdjs.evtsExt__MQTT__GetLastMessage.idToCallbackMap = new Map(); gdjs.evtsExt__MQTT__GetLastMessage.userFunc0xe51170 = function GDJSInlineCode(runtimeScene, eventsFunctionContext) { "use strict"; const mqttEvent = gdjs.evtTools.mqtt.events[eventsFunctionContext.getArgument("topic")]; if (typeof mqttEvent === "undefined") return; eventsFunctionContext.returnValue = Array.isArray(mqttEvent.data) ? mqttEvent.data[0] : mqttEvent.data; }; gdjs.evtsExt__MQTT__GetLastMessage.eventsList0 = function(runtimeScene, eventsFunctionContext) { { gdjs.evtsExt__MQTT__GetLastMessage.userFunc0xe51170(runtimeScene, eventsFunctionContext); } }; gdjs.evtsExt__MQTT__GetLastMessage.func = function(runtimeScene, topic, parentEventsFunctionContext) { let scopeInstanceContainer = null; var eventsFunctionContext = { _objectsMap: { }, _objectArraysMap: { }, _behaviorNamesMap: { }, globalVariablesForExtension: runtimeScene.getGame().getVariablesForExtension("MQTT"), sceneVariablesForExtension: runtimeScene.getScene().getVariablesForExtension("MQTT"), localVariables: [], getObjects: function(objectName) { return eventsFunctionContext._objectArraysMap[objectName] || []; }, getObjectsLists: function(objectName) { return eventsFunctionContext._objectsMap[objectName] || null; }, getBehaviorName: function(behaviorName) { return eventsFunctionContext._behaviorNamesMap[behaviorName] || behaviorName; }, createObject: function(objectName) { const objectsList = eventsFunctionContext._objectsMap[objectName]; if (objectsList) { const object = parentEventsFunctionContext && !(scopeInstanceContainer && scopeInstanceContainer.isObjectRegistered(objectName)) ? parentEventsFunctionContext.createObject(objectsList.firstKey()) : runtimeScene.createObject(objectsList.firstKey()); if (object) { objectsList.get(objectsList.firstKey()).push(object); if (!(scopeInstanceContainer && scopeInstanceContainer.isObjectRegistered(objectName))) { eventsFunctionContext._objectArraysMap[objectName].push(object); } } return object; } return null; }, getInstancesCountOnScene: function(objectName) { const objectsList = eventsFunctionContext._objectsMap[objectName]; let count = 0; if (objectsList) { for(const objectName in objectsList.items) count += parentEventsFunctionContext && !(scopeInstanceContainer && scopeInstanceContainer.isObjectRegistered(objectName)) ? parentEventsFunctionContext.getInstancesCountOnScene(objectName) : runtimeScene.getInstancesCountOnScene(objectName); } return count; }, getLayer: function(layerName) { return runtimeScene.getLayer(layerName); }, getArgument: function(argName) { if (argName === "topic") return topic; return ""; }, getOnceTriggers: function() { return runtimeScene.getOnceTriggers(); } }; gdjs.evtsExt__MQTT__GetLastMessage.eventsList0(runtimeScene, eventsFunctionContext); return "" + eventsFunctionContext.returnValue; } gdjs.evtsExt__MQTT__GetLastMessage.registeredGdjsCallbacks = [];