Skip to content

Commit

Permalink
Cast sprite name to string before getSpriteTargetByName
Browse files Browse the repository at this point in the history
  • Loading branch information
ktbee committed Mar 6, 2019
1 parent fa3771b commit f6297bc
Show file tree
Hide file tree
Showing 4 changed files with 5 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/blocks/scratch3_motion.js
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ class Scratch3MotionBlocks {
targetX = Math.round(stageWidth * (Math.random() - 0.5));
targetY = Math.round(stageHeight * (Math.random() - 0.5));
} else {
targetName = Cast.toString(targetName);
const goToTarget = this.runtime.getSpriteTargetByName(targetName);
if (!goToTarget) return;
targetX = goToTarget.x;
Expand Down Expand Up @@ -127,6 +128,7 @@ class Scratch3MotionBlocks {
util.target.setDirection(Math.round(Math.random() * 360) - 180);
return;
} else {
args.TOWARDS = Cast.toString(args.TOWARDS);
const pointTarget = this.runtime.getSpriteTargetByName(args.TOWARDS);
if (!pointTarget) return;
targetX = pointTarget.x;
Expand Down
2 changes: 2 additions & 0 deletions src/blocks/scratch3_sensing.js
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,7 @@ class Scratch3SensingBlocks {
targetX = util.ioQuery('mouse', 'getScratchX');
targetY = util.ioQuery('mouse', 'getScratchY');
} else {
args.DISTANCETOMENU = Cast.toString(args.DISTANCETOMENU);
const distTarget = this.runtime.getSpriteTargetByName(
args.DISTANCETOMENU
);
Expand Down Expand Up @@ -282,6 +283,7 @@ class Scratch3SensingBlocks {
if (args.OBJECT === '_stage_') {
attrTarget = this.runtime.getTargetForStage();
} else {
args.OBJECT = Cast.toString(args.OBJECT);
attrTarget = this.runtime.getSpriteTargetByName(args.OBJECT);
}

Expand Down
1 change: 1 addition & 0 deletions src/sprites/rendered-target.js
Original file line number Diff line number Diff line change
Expand Up @@ -840,6 +840,7 @@ class RenderedTarget extends Target {
* @return {boolean} True iff touching a clone of the sprite.
*/
isTouchingSprite (spriteName) {
spriteName = StringUtil.stringify(spriteName);
const firstClone = this.runtime.getSpriteTargetByName(spriteName);
if (!firstClone || !this.renderer) {
return false;
Expand Down
Binary file added test/fixtures/execute/sprite-number-name.sb2
Binary file not shown.

0 comments on commit f6297bc

Please sign in to comment.