hyperized "atrribute OF sprite" reporter primitive

pull/95/head
jmoenig 2020-11-21 10:50:45 +01:00
rodzic 3de3b4ff00
commit 79ef41891e
3 zmienionych plików z 17 dodań i 2 usunięć

Wyświetl plik

@ -4,6 +4,7 @@
* **Notable Changes:**
* added "loadProjectXML" method to the api
* hyperized "atrribute OF sprite" reporter primitive in the sensing category
* **Documentation Updates:**
* API update for "loadProjectXML"
@ -11,6 +12,7 @@
* new dev version
* api: new loadProjectXML() method
* updated api documentation
* threads: hyperized "atrribute OF sprite" reporter primitive
## 6.3.6
* **Notable Changes:**

Wyświetl plik

@ -9,7 +9,7 @@
<script src="src/symbols.js?version=2020-10-07"></script>
<script src="src/widgets.js?version=2020-10-06"></script>
<script src="src/blocks.js?version=2020-11-17"></script>
<script src="src/threads.js?version=2020-11-20"></script>
<script src="src/threads.js?version=2020-11-21"></script>
<script src="src/objects.js?version=2020-11-20"></script>
<script src="src/gui.js?version=2020-11-21"></script>
<script src="src/paint.js?version=2020-05-17"></script>

Wyświetl plik

@ -61,7 +61,7 @@ StageMorph, SpriteMorph, StagePrompterMorph, Note, modules, isString, copy, Map,
isNil, WatcherMorph, List, ListWatcherMorph, alert, console, TableMorph, BLACK,
TableFrameMorph, ColorSlotMorph, isSnapObject, newCanvas, Symbol, SVG_Costume*/
modules.threads = '2020-November-20';
modules.threads = '2020-November-21';
var ThreadManager;
var Process;
@ -4777,6 +4777,19 @@ Process.prototype.reportDirectionTo = function (name) {
};
Process.prototype.reportAttributeOf = function (attribute, name) {
// hyper-dyadic
// note: specifying strings in the left input only accesses
// sprite-local variables. Attributes such as "width", "direction" etc.
// can only be queried via the dropdown menu and are, therefore, not
// reachable as dyadic inputs
return this.hyperDyadic(
(att, obj) => this.reportBasicAttributeOf(att, obj),
attribute,
name
);
};
Process.prototype.reportBasicAttributeOf = function (attribute, name) {
var thisObj = this.blockReceiver(),
thatObj,
stage;