From e77fc5ff897561c82468aa0a0ed8bb2ec80c1fd9 Mon Sep 17 00:00:00 2001 From: Code WvS Date: Sun, 22 Mar 2015 11:09:08 +0100 Subject: support sprite distances/touching --- objects.js | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'objects.js') diff --git a/objects.js b/objects.js index e13d32d..227c105 100644 --- a/objects.js +++ b/objects.js @@ -815,12 +815,6 @@ SpriteMorph.prototype.initBlocks = function () { category: 'sensing', spec: 'touching %clr ?' }, - reportColorIsTouchingColor: { - only: SpriteMorph, - type: 'predicate', - category: 'sensing', - spec: 'color %clr is touching %clr ?' - }, colorFiltered: { dev: true, type: 'reporter', @@ -2030,7 +2024,6 @@ SpriteMorph.prototype.blockTemplates = function (category) { blocks.push(block('reportTouchingObject')); blocks.push(block('reportTouchingColor')); - blocks.push(block('reportColorIsTouchingColor')); blocks.push('-'); blocks.push(block('doAsk')); blocks.push(watcherToggle('getLastAnswer')); @@ -2899,6 +2892,14 @@ SpriteMorph.prototype.removeClone = function () { // SpriteMorph primitives +SpriteMorph.prototype.isTouching = function (other) { + var me = L.latLng(this.yPosition(), this.xPosition()); + target = L.latLng(other.yPosition(), other.xPosition()); + + // could also use leaflet's equals + return me.distanceTo(target) < 1; // 1 meter magic number +}; + // SpriteMorph hiding and showing: /* -- cgit v1.3.1