Add reporting for block params
This commit is contained in:
1 parent
817ea47e32
commit
5973e2d305
1 file changed
+20
@@ -267,6 +267,25 @@ class Blocks {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Serialize block fields and input fields for reporting new monitors
|
||||||
|
* @param {!object} block Block to be paramified.
|
||||||
|
* @return {!object} object of param key/values.
|
||||||
|
*/
|
||||||
|
getBlockParams (block) {
|
||||||
|
const params = {};
|
||||||
|
for (const key in block.fields) {
|
||||||
|
params[key] = block.fields[key].value;
|
||||||
|
}
|
||||||
|
for (const inputKey in block.inputs) {
|
||||||
|
const inputBlock = this._blocks[block.inputs[inputKey].block];
|
||||||
|
for (const key in inputBlock.fields) {
|
||||||
|
params[key] = inputBlock.fields[key].value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return params;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Block management: change block field values
|
* Block management: change block field values
|
||||||
* @param {!object} args Blockly change event to be processed
|
* @param {!object} args Blockly change event to be processed
|
||||||
@@ -297,6 +316,7 @@ class Blocks {
|
|||||||
// @todo(vm#564) this will collide if multiple sprites use same block
|
// @todo(vm#564) this will collide if multiple sprites use same block
|
||||||
id: block.id,
|
id: block.id,
|
||||||
opcode: block.opcode,
|
opcode: block.opcode,
|
||||||
|
params: this.getBlockParams(block),
|
||||||
// @todo(vm#565) for numerical values with decimals, some countries use comma
|
// @todo(vm#565) for numerical values with decimals, some countries use comma
|
||||||
value: ''
|
value: ''
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in new issue
Block a user