mirror of
https://github.com/scratchfoundation/scratch-vm.git
synced 2024-12-24 06:52:40 -05:00
Add reporting for block params
This commit is contained in:
parent
817ea47e32
commit
5973e2d305
1 changed files with 20 additions and 0 deletions
|
@ -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: ''
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in a new issue