diff --git a/packages/scratch-gui/src/lib/make-toolbox-xml.js b/packages/scratch-gui/src/lib/make-toolbox-xml.js index f0886e97218..8a8c10623ba 100644 --- a/packages/scratch-gui/src/lib/make-toolbox-xml.js +++ b/packages/scratch-gui/src/lib/make-toolbox-xml.js @@ -635,6 +635,18 @@ const operators = function (isInitialSetup, isStage, targetId, colors) { + + + + + + + + + 50 + + + @@ -647,6 +659,18 @@ const operators = function (isInitialSetup, isStage, targetId, colors) { + + + + + + + + + 50 + + + diff --git a/packages/scratch-vm/src/blocks/scratch3_operators.js b/packages/scratch-vm/src/blocks/scratch3_operators.js index cb5d6ef84fd..99e751de26c 100644 --- a/packages/scratch-vm/src/blocks/scratch3_operators.js +++ b/packages/scratch-vm/src/blocks/scratch3_operators.js @@ -21,8 +21,10 @@ class Scratch3OperatorsBlocks { operator_multiply: this.multiply, operator_divide: this.divide, operator_lt: this.lt, + operator_ltoet: this.ltoet, operator_equals: this.equals, operator_gt: this.gt, + operator_gtoet: this.gtoet, operator_and: this.and, operator_or: this.or, operator_not: this.not, @@ -57,6 +59,10 @@ class Scratch3OperatorsBlocks { return Cast.compare(args.OPERAND1, args.OPERAND2) < 0; } + ltoet (args) { + return Cast.compare(args.OPERAND1, args.OPERAND2) <= 0; + } + equals (args) { return Cast.compare(args.OPERAND1, args.OPERAND2) === 0; } @@ -65,6 +71,10 @@ class Scratch3OperatorsBlocks { return Cast.compare(args.OPERAND1, args.OPERAND2) > 0; } + gtoet (args) { + return Cast.compare(args.OPERAND1, args.OPERAND2) >= 0; + } + and (args) { return Cast.toBoolean(args.OPERAND1) && Cast.toBoolean(args.OPERAND2); }