Paul Kaplan
d50504e339
Make duplicateVariable deep copy the array instead of keeping reference.
2018-12-05 16:27:10 -05:00
DD Liu
122443a75f
Merge pull request #1754 from bocoup/handle-infinity
...
Make Scratch 3 comparisons with +/-Infinity match Scratch 2
2018-11-29 14:31:10 -05:00
Karishma Chadha
ff2566fec4
Merge pull request #1778 from kchadha/emit-cloud-data-update
...
Emit cloud data update
2018-11-28 17:23:29 -05:00
Karishma Chadha
6d033af61e
When clearing the runtime, emit has cloud data update.
2018-11-28 15:03:20 -05:00
Karishma Chadha
b828444ea8
Update comments for addCloudVariable and removeCloudVariable.
2018-11-28 15:03:20 -05:00
Karishma Chadha
86d61a4c20
Emit event tracking when the project's hasCloudData status changes. Cloud var creation now happens regardless of connectivity to the provider.
2018-11-28 15:03:19 -05:00
picklesrus
90b627982c
fix todo
2018-11-28 12:34:49 -05:00
picklesrus
eefe021425
add todo and remove a newline
2018-11-28 12:33:04 -05:00
picklesrus
4a542b455d
fix code review comments
2018-11-28 10:36:22 -05:00
picklesrus
f214d3a191
VM changes for the sensing_of block. This handles lists properly (by ignoring them like Scratch2 and makes the attribute menu update based on what was chosen in the target menu.
2018-11-28 10:35:35 -05:00
Paul Kaplan
421aac6340
Ensure setCompatibilityMode continues to restart if previously started.
...
This was previous behavior, but the previous commit which prevents restarts based on _steppingInterval truthiness broke it because clearInterval does not modify the value of _steppingInterval
2018-11-28 08:47:51 -05:00
Paul Kaplan
4378603d36
Prevent the runtime from spawning new stepping intervals
2018-11-28 08:34:22 -05:00
Paul Kaplan
ffb02c607d
Merge pull request #1783 from paulkaplan/emit-start-event
...
Emit a RUNTIME_STARTED event to track if the vm has been started
2018-11-27 16:38:27 -05:00
Paul Kaplan
cc4751228e
Emit a RUNTIME_STARTED event to track if the vm has been started
2018-11-27 11:37:01 -05:00
Ray Schamp
dd2023e2f3
Merge pull request #1779 from rschamp/project-dirty-signal
...
Add "project changed" event
2018-11-27 08:54:30 -05:00
Ray Schamp
5022227c15
Add "project changed" event
...
And emit it whenever we think the project has changed. Try to not emit it when a change has happened internally that shouldn't affect the serialized project.
This iteration fires the event too frequently, e.g., when switching sprites. This is meant as a simple initial implementation that can be improved.
2018-11-26 17:10:43 -05:00
Karishma Chadha
63c4b53b09
Replace reference to deleted variable with specific variable info needed.
2018-11-21 11:45:16 -05:00
Karishma Chadha
25ce08131a
Add rename and delete functionality for cloud variables. Refactor function name for cloud variable creation API.
2018-11-20 15:11:12 -05:00
Valerie R Young
dd81a261df
Remove Cast import
2018-11-16 16:49:27 -05:00
Valerie R Young
73e157ba7c
Use Number instead of Cast.toNumber
2018-11-16 16:30:26 -05:00
Karishma Chadha
0c9da5d963
Merge pull request #1755 from kchadha/cloud-var-create
...
Create cloud variables
2018-11-14 21:39:29 -05:00
Paul Kaplan
8aa88fa2a2
Merge pull request #1723 from mzgoddard/blocks-monitored-cache
...
Cache the set of actively monitored blocks
2018-11-14 14:16:36 -05:00
Karishma Chadha
3fc1b89b30
Add ability to create cloud variables, and have cloud provider wait for confirmation from server.
2018-11-13 16:43:51 -05:00
Karishma Chadha
14bee14d8c
Update extensions to load when deserializing monitors. This is necessary when the monitor is the only part of the project that uses the extension. Update extension monitor color category.
2018-11-09 23:45:49 -05:00
Karishma Chadha
1b9b3ac909
Revert changes that were made to leverage the monitor blocks getting created when the toolbox is loaded. This approach does not work when viewing the project detached from scratch-blocks (e.g. player mode).
2018-11-09 23:45:48 -05:00
Karishma Chadha
ebdd548c8f
Update for auto-positioning monitors so that having just one of x or y be 0 (e.g. a monitor placed in the top right corner of the stage) does not result in the monitor being treated as a new monitor and get auto-positioned.
2018-11-09 23:45:48 -05:00
Karishma Chadha
1a4f0a75f2
Serialize and deserialize monitors. Obtain monitor block information from runtime. Fix issue where stage monitors weren't getting loaded correctly.
2018-11-09 23:45:48 -05:00
Karishma Chadha
7ea310a194
Fix typo in comment
2018-11-08 14:43:07 -05:00
Karishma Chadha
5db3db3a92
monitor id getter should use block fields instead of a list of strings
2018-11-08 01:33:26 -05:00
Karishma Chadha
0e7eae98d5
Separate out monitors for blocks reporter blocks that have parameters.
2018-11-08 00:37:28 -05:00
Karishma Chadha
4bb2d19584
Merge pull request #1683 from mzgoddard/sequencer-thread-cleanup
...
Sequencer thread cleanup
2018-11-07 17:15:11 -05:00
Eric Rosenbaum
2cff4159bb
Use the new note picker field in music and EV3 extensions ( #1720 )
...
* Add note field type
* Note picker in music extension plays notes
* Use note picker in EV3 beep block
2018-11-07 11:50:15 -05:00
Michael "Z" Goddard
a3f9aa1e22
cache the set of actively monitored blocks
...
Projects can have 100's of potentially monitored blocks. Caching the
set of monitored blocks can save time in Runtime._step every frame.
2018-11-02 15:24:05 -04:00
Paul Kaplan
596d0c4f5f
Include the origin blockId of the top block being dragged.
...
This is required by the GUI in order to take a snapshot of the blocks for the backpack. Only the ID is needed, the rest can be done by the GUI.
2018-11-01 14:13:07 -04:00
Karishma Chadha
ffef2e92fc
Fix up docs and incorrect initialization of cloud data manager functions. Add 'spec' unit tests that the cloud data manager functions are actually functions.
2018-10-31 19:20:13 -04:00
Michael "Z" Goddard
2ffa8eb333
update runtime thread tests
...
Threads are now removed after every "inner" step. Any thread that
reaches its DONE conditions is immediately removed instead of requiring
an extra step to remove it. As such tests that check the number of
threads have been updated to consider this.
2018-10-31 17:56:12 -04:00
Karishma Chadha
1df6743a5f
Refactor cloud data manager to break out cloud data limit check vs. limit update.
2018-10-31 13:40:05 -04:00
Karishma Chadha
848deaff30
Track whether a project has cloud data and enforce a cloud data limit on projects being loaded into the runtime.
2018-10-30 18:53:57 -04:00
Katie Broida
6ef600dc2c
Add runtime event for when the project is loaded ( #1669 )
2018-10-30 15:26:22 -04:00
Karishma Chadha
4959ab9ff3
Create a new cloud io device
2018-10-29 00:58:30 -04:00
Michael "Z" Goddard
fcafcbdd0a
return 0 from parameters outside of their procedure
2018-10-23 15:14:31 -04:00
Michael "Z" Goddard
ef4045aaf1
Merge pull request #1642 from mzgoddard/set-procedure-param-defaults
...
Set procedure param defaults
2018-10-23 15:13:16 -04:00
Michael "Z" Goddard
b833ef8d24
remove finished threads every loop of all threads
...
When all threads are looped, finished threads must be removed so
threads that are waiting for those to complete and be removed may
continue executing. This effects broadcast and wait for example. The
threads created by broadcast and wait can finish in the same tick and
must be removed from the list of threads so that broadcast and wait
knows to stop waiting.
2018-10-19 16:43:36 -04:00
DD
91e2f3a935
Revert 1643 Confirm extension in use in sb2 serialization
2018-10-18 11:06:13 -04:00
Evelyn Eastmond
2564b24d71
Differentiate peripheral errors: request vs. disconnect ( #1654 )
...
* Beginning to add differentiation for hardware disconnect alerts.
* Set connected status after error is sent.
2018-10-17 15:48:07 -04:00
Katie Broida
899ce56214
Confirm extension in use in sb2 serialization ( #1643 )
...
Add a check when serializing sb2 projects to see whether an extension is actually in use in a block or a visible monitor.
2018-10-17 10:49:08 -04:00
Michael "Z" Goddard
2b257dde57
add getProcedureParamNamesIdsAndDefaults
...
Use getProcedureParamNamesIdsAndDefaults to get the defaults along with
names and ids so defaults may be set for a procedure call if the
parameter is not provided.
2018-10-16 16:31:45 -04:00
Andrew Sliwinski
23f6346045
Merge pull request #1631 from mzgoddard/stop-other-asks
...
Stop other asks
2018-10-15 13:16:49 -04:00
Michael "Z" Goddard
56ec22df77
add Runtime.executableTargets
...
executableTargets is a list of the targets in the reverse order of
their execution. This order matches the draw list's order in the
renderer.
2018-10-04 00:42:05 -04:00
Michael "Z" Goddard
574749bbba
add STOP_FOR_TARGET runtime event and respond for ask blocks
...
Remove questions for targets that are individually stopping and
progress the asked question if it is from a stopping target.
2018-10-03 10:38:14 -04:00