Commit Graph
454 Commits
Author SHA1 Message Date
Thomas Weber 91b9bcb6c6 Fix storing remove fencing 2021-06-10 12:10:57 -05:00
Thomas Weber a8cfa25d9d More work on the "thread map" concept 2021-06-10 11:44:41 -05:00
Thomas Weber 59f3c0ebe8 Fix some more startHats bugs 2021-06-09 23:02:57 -05:00
Thomas Weber b64b7d83f7 Fix all remaining eslint errors
valid-jsdoc was disabled because typescript syntax comments make eslint upset
2021-06-09 22:28:26 -05:00
Thomas Weber bbe7bc035b Make startHats not O(n^2), attempt 2 2021-06-09 22:23:51 -05:00
Thomas Weber 75e4239e41 Remove leftover debugging logic 2021-06-09 19:34:21 -05:00
Thomas Weber 86de84e150 Initial "addon block" support 2021-06-09 19:15:25 -05:00
Thomas Weber cdc962555f Revert "Make startHats not O(n^2)"
This reverts commit 5659a42b30.
2021-05-24 21:08:24 -05:00
Thomas Weber ec20b19f13 Add a few comments 2021-05-24 16:59:51 -05:00
Thomas Weber 5659a42b30 Make startHats not O(n^2)
For hats with restartExistingThreads=true, a map of target ID +
thread top block ID is maintained in addition to the thread list.
Then, startHats can do a simple lookup instead of iterating over
the entire thread list. Can improve performance in certain
projects that use way too many broadcasts and clones. These
lookups are probably O(1)-ish instead of O(n).

This is not possible for hats with restartExistingThreads=false
due to the extra .status === Thread.STATUS_DONE check.
2021-05-24 16:51:37 -05:00
Thomas Weber a3f0ef80b8 resetAllCaches should also reset flyout and monitor block caches 2021-05-23 10:50:59 -05:00
Thomas Weber 416281f99b Merge branch 'develop' of github.com:LLK/scratch-vm into develop 2021-05-21 18:34:18 -05:00
Thomas Weber 64b3a919b4 Update self configuration
Can now store high quality pen
Warp timer no longer stored automatically
2021-05-15 01:46:08 -05:00
Thomas Weber 0e8ec4d9dc Use ExtendedJSON to fix storing infinite clones 2021-05-15 00:59:48 -05:00
Thomas Weber 50f630cfa9 Add ExtendedJSON stringify 2021-05-15 00:59:33 -05:00
Thomas Weber 8c365062bf Project self-configuration (#55) 2021-05-15 00:29:01 -05:00
Eric Rosenbaum 0b4b32dcb0 Save and load the origin 2021-04-29 11:32:13 -04:00
Thomas Weber 286fe60250 Revert "Revert "Merge branch 'develop' of https://github.com/llk/scratch-vm into develop""
This reverts commit f9f061e067.
2021-04-16 20:20:14 -05:00
Thomas Weber f9f061e067 Revert "Merge branch 'develop' of https://github.com/llk/scratch-vm into develop"
This reverts commit 019e989e47, reversing
changes made to 1618e5da07.
2021-04-09 20:27:51 -05:00
Thomas Weber 2b81e53317 Change maximum framerate to 250 2021-04-07 14:27:20 -05:00
Thomas Weber 019e989e47 Merge branch 'develop' of https://github.com/llk/scratch-vm into develop 2021-04-05 17:53:26 -05:00
Thomas Weber 816f42a637 Polyfill requestAnimationFrame for node environments 2021-03-26 20:02:20 -05:00
Thomas Weber 7228f5cdd0 effectLimits -> miscLimits 2021-03-26 19:15:04 -05:00
Thomas Weber 6a7822b429 Add a debug mode 2021-03-25 20:41:45 -05:00
Thomas Weber cb6a5bc1d0 Remove hasLimits/setLimits
Changes in GUI have made these obsolete
2021-03-20 22:47:04 -05:00
Thomas Weber 2c104c3b6f Allow controlling more limits with runtime options
New options: effectLimits, fencing
New APIs: Runtime.hasLimits, Runtime.setLimits (wrappers around runtimeOptions)
2021-03-20 19:30:21 -05:00
DD Liu e5560b067b Merge branch 'develop' into removev2SvgAdapter 2021-03-16 16:53:40 -04:00
Thomas Weber 74c23d007d Remove beforeStep and afterStep 2021-03-12 21:25:53 -06:00
DD Liu 627e62a339 Remove v2SvgAdapter 2021-03-04 15:32:14 -05:00
Thomas Weber 89d0e25955 Slightly optimize startHats 2021-02-27 23:58:10 -06:00
Thomas Weber 200e1596fd Interpolation. 2021-02-20 15:41:45 -06:00
Thomas Weber 65b71c615c Fix green flag improperly resetting project timer 2021-02-20 15:15:16 -06:00
Thomas Weber 2bf19b2004 Allow "Open Docs" button to be translated 2021-02-20 10:48:40 -06:00
Thomas Weber 1c79d335f2 Implement docsURI - VM part 2021-02-14 11:07:47 -06:00
Thomas Weber eb140a2493 Add Runtime.stageWidth, Runtime.stageHeight 2021-01-30 20:23:31 -06:00
Thomas Weber bffe350636 Experimental audio engine optimizations 2021-01-30 00:07:34 -06:00
Thomas Weber e4c61f4180 Add beforeStep and afterStep hooks 2021-01-03 00:54:35 -06:00
Thomas Weber 9078359afd Do not allow framerate to go over 1000
Values beyond this point
a) are unnecessary
b) don't actually work in any modern browser
c) trick the sequencer into thinking it has essentially 0 WORK_TIME
2020-11-26 21:36:24 -06:00
Thomas Weber 3ec9f75bea Include target in COMPILE_ERROR 2020-11-18 16:24:43 -06:00
Thomas Weber ed162660f0 Add COMPILE_ERROR event 2020-11-18 16:22:28 -06:00
Thomas Weber 09d705b82d Merge branch 'develop' of https://github.com/llk/scratch-vm into develop 2020-11-11 09:23:19 -06:00
Thomas Weber 9799d49cf8 Clarify what stop() does 2020-10-31 14:14:05 -05:00
Thomas Weber af63a68aab Explicitly emit MONITORS_UPDATE in Runtime.dispose 2020-10-31 14:12:46 -05:00
Thomas Weber a428ca93c5 Add Runtime/Virtualmachine.stop() 2020-10-31 13:29:18 -05:00
Thomas Weber 00b5b2cfce Fix some eslint errors 2020-10-28 19:46:37 -05:00
Thomas Weber eca4a4ab84 Add maxClones option 2020-10-24 17:40:46 -05:00
Thomas Weber a9b6a890eb Add setRuntimeOptions 2020-10-24 17:38:03 -05:00
Thomas Weber 7b2a7e15a7 Don't log the current time 2020-10-24 17:33:46 -05:00
Thomas Weber e6cbbd8ed2 Don't draw if document is hidden 2020-10-24 17:30:17 -05:00
DD Liu 04b6963788 Pass on event type from CDM 2020-10-15 19:56:24 -04:00