From 1b382458c8208cb74b51cad414e67a71be61e0e2 Mon Sep 17 00:00:00 2001 From: jmoenig Date: Thu, 24 Jul 2014 08:04:00 +0200 Subject: [PATCH] =?UTF-8?q?fixed=20=E2=80=9Clost=20sprites=20bug=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ensure duplicated sprites keep wearing their current costume through save and re-load --- history.txt | 4 ++++ objects.js | 9 +++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/history.txt b/history.txt index af11d164..73f2a6b5 100755 --- a/history.txt +++ b/history.txt @@ -2222,3 +2222,7 @@ ______ 140723 ------ * Objects: Scale down oversized images to current stage dimensions. Thanks, Dan, for reporting this! + +140724 +------ +* Objects: fixed “lost sprites bug” - ensure duplicated sprites keep wearing their current costume through save and re-load diff --git a/objects.js b/objects.js index a1059a56..d378b75b 100644 --- a/objects.js +++ b/objects.js @@ -125,7 +125,7 @@ PrototypeHatBlockMorph*/ // Global stuff //////////////////////////////////////////////////////// -modules.objects = '2014-July-23'; +modules.objects = '2014-July-24'; var SpriteMorph; var StageMorph; @@ -1331,6 +1331,7 @@ SpriteMorph.prototype.init = function (globals) { SpriteMorph.prototype.fullCopy = function () { var c = SpriteMorph.uber.fullCopy.call(this), + myself = this, arr = [], cb; @@ -1352,7 +1353,11 @@ SpriteMorph.prototype.fullCopy = function () { }); }); this.costumes.asArray().forEach(function (costume) { - arr.push(costume.copy()); + var cst = costume.copy(); + arr.push(cst); + if (costume === myself.costume) { + c.costume = cst; + } }); c.costumes = new List(arr); arr = [];