import * as Blockly from "blockly"; import { javascriptGenerator, Order } from "blockly/javascript"; Blockly.Blocks['dpos_value'] = { init(this: Blockly.Block) { this.appendDummyInput() .appendField('Direction [') .appendField(new Blockly.FieldNumber(0, -Infinity, Infinity, 0.01), 'X') .appendField(',') .appendField(new Blockly.FieldNumber(0, -Infinity, Infinity, 0.01), 'Y') .appendField(',') .appendField(new Blockly.FieldNumber(0, -Infinity, Infinity, 0.01), 'Z'); this.appendDummyInput() .appendField(']'); this.setInputsInline(true); this.setOutput(true, 'DPos'); this.setTooltip('Direction [dx,dy,dz]'); this.setColour(315); } }; javascriptGenerator.forBlock['dpos_value'] = function (block, _generator) { const xValue = block.getFieldValue('X'); const yValue = block.getFieldValue('Y'); const zValue = block.getFieldValue('Z'); return [`[${xValue},${yValue},${zValue}]`, Order.ATOMIC]; }; export { };