added support for counting down using the "numbers" reporter

pull/89/head
jmoenig 2019-10-29 07:48:22 +01:00
rodzic df18d667fd
commit c359d345cb
3 zmienionych plików z 10 dodań i 5 usunięć

Wyświetl plik

@ -3,11 +3,15 @@
## in development:
* **New Features:**
* **Notable Changes:**
* added support for counting down using the "numbers" reporter
* **Notable Fixes:**
* optimized performance for backgrounds and pen trails
* removed "current" option from "switch to costume" block's drop-down menu
* **Translation Updates:**
### 2019-10-29
* threads: added support for counting down using the "numbers" reporter
### 2019-10-28
* new dev version
* morphic: enable recycling and deep copying canvas elements

Wyświetl plik

@ -7,7 +7,7 @@
<script type="text/javascript" src="src/morphic.js?version=2019-10-28"></script>
<script type="text/javascript" src="src/widgets.js?version=2019-10-16"></script>
<script type="text/javascript" src="src/blocks.js?version=2019-10-28"></script>
<script type="text/javascript" src="src/threads.js?version=2019-10-25"></script>
<script type="text/javascript" src="src/threads.js?version=2019-10-29"></script>
<script type="text/javascript" src="src/objects.js?version=2019-10-28"></script>
<script type="text/javascript" src="src/gui.js?version=2019-10-28"></script>
<script type="text/javascript" src="src/paint.js?version=2019-06-27"></script>

Wyświetl plik

@ -61,7 +61,7 @@ StageMorph, SpriteMorph, StagePrompterMorph, Note, modules, isString, copy,
isNil, WatcherMorph, List, ListWatcherMorph, alert, console, TableMorph, Color,
TableFrameMorph, ColorSlotMorph, isSnapObject, Map, newCanvas, Symbol*/
modules.threads = '2019-October-25';
modules.threads = '2019-October-29';
var ThreadManager;
var Process;
@ -1838,20 +1838,21 @@ Process.prototype.reportNumbers = function (start, end) {
this.context.accumulator = {
target : new List(),
end : null,
idx : +start
idx : +start,
step: +end > +start ? +1 : -1
};
this.context.accumulator.target.isLinked = true;
this.context.accumulator.end = this.context.accumulator.target;
}
dta = this.context.accumulator;
if (dta.idx > +end) {
if (dta.step === 1 ? dta.idx > +end : dta.idx < +end) {
dta.end.rest = new List();
this.returnValueToParentContext(dta.target.cdr());
return;
}
dta.end.rest = dta.target.cons(dta.idx);
dta.end = dta.end.rest;
dta.idx += 1;
dta.idx += dta.step;
this.pushContext();
};