diff --git a/21g30t1e75.js b/21g30t1e75.js index f4459e0..1508208 100644 --- a/21g30t1e75.js +++ b/21g30t1e75.js @@ -1146,12 +1146,27 @@ GameLib.CustomCode.prototype.restore = function() { */ this.grid[body.position.x][body.position.y] = null; - /** + /** * If we have snake parts which have not been backed up - dispose of them */ - if (this.backupSnake.indexOf(body) === -1) { - body.dispose(); - } + var inUse = false; + + this.backupSnake.map( + function(backupBody) { + if ( + backupBody.mesh === body.mesh || + backupBody.backupMesh === body.mesh || + backupBody.mesh === body.backupMesh || + backupBody.backupMesh === body.backupMesh + ) { + inUse = true; + } + } + ) + + if (!inUse) { + body.dispose(); + } }.bind(this) )