Michael "Z" Goddard
f43163fc73
depend on scratch-sb1-converter and convert sb1 files to sb2
2018-12-20 12:09:58 -05:00
DD Liu
fe375fa672
Merge pull request #1849 from fsih/addCostumeFromLibrary
...
Add addCostumeFromLibrary
2018-12-18 12:12:18 -05:00
DD
a4744f5ac9
Add addCostumeFromLibrary
2018-12-14 14:20:42 -05:00
picklesrus
ebe06a97d9
Merge pull request #1818 from picklesrus/monitor-vars-project-load
...
Clear out the blocks in dispose. Fixes #1758 where old monitored vari…
2018-12-07 15:08:09 -05:00
picklesrus
3f3c34b43a
Given the bug found with the old approach, fix this by going and deleting all of the monitor blocks for each sprite and the global variables.
2018-12-06 18:59:58 -05:00
Paul Kaplan
8405ff00d4
Merge pull request #1825 from paulkaplan/emit-start-publicly
...
Emit PROJECT_START event publicly on green flag click.
2018-12-06 15:38:05 -05:00
Paul Kaplan
56c062eee3
re-emit the PROJECT_START event publicly, add unit test
2018-12-06 11:47:09 -05:00
Karishma Chadha
dc4fd15197
Make a cloud device requestVariableUpdate when setting a variable through the vm's top level setVariableValue API. Add unit test for new functionality.
2018-12-05 22:38:06 -05:00
Paul Kaplan
7e96ef2985
Serialize Infinity and NaN to 0
2018-12-04 10:52:49 -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
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
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
Chris Willis-Ford
05979e2e93
Merge pull request #1784 from cwillisf/setLocale-always-refreshBlocks
...
Make setLocale consistently refresh blocks
2018-11-27 19:19:41 -08: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
Christopher Willis-Ford
4256f86ac3
Make setLocale consistently refresh blocks
...
This change makes the VM's `setLocale` method call `refreshBlocks` even
when not changing the language, though it still skips an unnecessary
call to `formatMessage.setup` in this case.
2018-11-27 10:26:04 -08: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
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
Ray Schamp
f2550d582c
Merge pull request #1750 from rschamp/feature/sb3-json-assets
...
Add method for collecting all targets' assets
2018-11-15 10:31:58 +00:00
Ray Schamp
bcd1c5b13a
Consolidate collectAssets into getter
2018-11-15 10:26:05 +00:00
Ray Schamp
df56e615ec
Add method for collecting all targets' assets
...
Resolves #1601 . Does not include the project JSON since that would require knowledge of a project ID, which the VM has not been responsible for so far.
For now, it is the responsibility of the consumer to determine if these assets should be saved or not. Otherwise the VM would need to be responsible for saving, which has been out of its scope.
2018-11-12 15:13:02 +00:00
Paul Kaplan
c8ad1955d4
Load extensions before sharing blocks.
...
This commit fixes the unit tests so the assertions are made after the promise resolves
2018-11-05 13:00:35 -05: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
Katie Broida
6ef600dc2c
Add runtime event for when the project is loaded ( #1669 )
2018-10-30 15:26:22 -04:00
Karishma Chadha
aa200e6df3
Set the cloud provider and request updates to the cloud var when updating the variable through blocks.
2018-10-29 00:59:06 -04:00
Ray Schamp
b47912dce4
Store asset objects on costumes and sounds
...
Stop using storage for in-memory storage, and keep these on the vm objects. Towards https://github.com/LLK/scratch-vm/issues/1577
2018-10-23 11:10:50 +01: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
Evelyn Eastmond
ad3328197e
Testing adding message/extensionId passing into specific, custom alerts.
2018-09-22 14:04:37 -04:00
Evelyn Eastmond
96327c66f3
Passing custom alert messages with PERIPHERAL_ERROR.
2018-09-22 14:04:37 -04:00
Ray Schamp
e2c6c7667b
Merge pull request #1604 from ericrosenbaum/feature/listening-indicator
...
Add event to show and hide a mic indicator for Speech to Text
2018-09-21 09:24:59 -04:00
Eric Rosenbaum
e2a79ed58f
VM emits MIC_LISTENING
2018-09-20 17:13:51 -04:00
Ray Schamp
6c94c85c9a
Add API for the attached renderer
...
Resolves #1281
2018-09-18 15:47:47 -04:00
Evelyn Eastmond
ec432e3b2f
Refactor for hardware extensions ( #1555 )
...
* Beginning refactor: renaming 'device' to 'peripheral', shortening function names, reordering functions, etc.
* Continuing refactoring: renaming some functions to be more verbose in the runtime, adding JSDocs, etc.
* Changing 'device' to 'peripheral', etc.
* Changing 'session' to 'socket'.
* Fixing EV3 menus and menu arg validation, reordering functions, etc.
* Add _send, add some references to documentation, etc.
* Factored out _outputCommand and _inputCommand, renamed some enums, etc.
* Fixed _outputCommand, some other minor cleanup.
* Make _outputCommand and _inputCommand public.
* Added TODO.
* Renamed BLE UUID enums to be clearer.
* Change WeDo2 in comments to WeDo 2.0, etc.
* Changed some WeDo2Motor command names, cleaned up some JSDocs.
* Beginning a major EV3 refactor.
* WeDo2 formatting and comment changes.
* Motor refactoring in EV3: motorTurnClockwise and motorTurnCounterClockwise initial working state.
* Add reminders to possibly cast motor menu args in WeDo2.
* Continue to move motor commands in EV3 to EV3Motor class, don't create new EV3Motor on every poll cycle, etc.
* Factoring EV3 polling value commands, etc.
* Fixing EV3 motor power, position and button pressed, and some commenting, etc.
* Move EV3 motor position parsing to EV3Motor class, move directCommand and directCompoundCommand functions, some commenting, etc.
* Changed WeDo2 motor label enum name.
* Removed some EV3 motor functions that aren't needed, changed menu label enum names, moved some opcodes up to enums.
* Fixing comments and documentation.
* Some commenting.
* Adding further documentation and references to PDFs, changed reply check to be safer, etc.
* Some comment changes.
* Moving some functions around in EV3 and WeDo2 to match.
* Commenting, etc.
* Some renaming of session, etc.
* Fix stopAllMotors in EV3.
* Fixing clearing of motors in EV3.
* Some comment changes.
* Change runtime .extensions/registerExtension to .peripheralExtensions/registerPeripheralExtension.
* Renaming outputCommand/inputCommand to generateOutputCommand/generateInputCommand, etc.
* Moved motorCommandIDs to EV3Motor class, renamed directCommand to generateCommand, etc.
* Adding a reminder to rename something.
* JSDoc fix in EV3Motor class.
* Fixing microbit function name.
* Adding a todo item.
* Changing Ev3 menu formats to be backwards compatible, moving a BLE function up.
* Fixing EV3 ports again, and button pressed returning a boolean.
* Fixing menu value to be a string in EV3.
2018-09-07 17:01:23 -04:00
Karishma Chadha
e5ca208a41
Return function to restore a costume when it gets deleted.
2018-08-21 15:33:19 -04:00
Karishma Chadha
24b098257b
Return restore sound function when deleting a sound.
2018-08-17 14:01:24 -04:00
Karishma Chadha
b95350da6e
Fix issue where deleting a sprite with a monitored local variable creates that local variable on all other sprites after switching sprites twice or more.
2018-08-15 14:31:40 -04:00
kchadha
ec41b4a113
Merge pull request #1438 from kchadha/return-add-sprite-function-when-deleting
...
Export the sprite and return an add function when deleting the sprite.
2018-08-09 15:25:45 -04:00
Karishma Chadha
a1f03f58e1
Add integration test for deleting and restoring a sprite, and restoreFunciton should return a promise.
2018-08-09 11:53:37 -04:00
Karishma Chadha
5ef246a2b0
Export the sprite and return an add function when deleting the sprite.
2018-08-08 18:29:54 -04:00
Ray Schamp
4b5cf6505a
Merge pull request #1398 from paulkaplan/publish-docs
...
Publish jsdoc to gh-pages
2018-08-08 16:46:48 -04:00
Paul Kaplan
79ab2fcb72
Add turbo mode events
2018-08-02 10:00:21 -04:00
Paul Kaplan
138d7136af
Fix various jsdoc issues preventing the docs from building
2018-07-31 11:22:42 -04:00
Paul Kaplan
8540c139dc
Add an extra param for adding sounds and costumes to specific targets
2018-07-31 09:47:48 -04:00
chrisgarrity
d4f20522b8
Merge pull request #1367 from chrisgarrity/issue/gui2530-blockwidth-locale
...
Add function to return the current VM/blocks locale
2018-07-18 10:57:24 -04:00
chrisgarrity
4ba7e9373f
Add function to return the current VM/blocks locale
2018-07-18 09:52:55 -04:00
Evelyn Eastmond
c4ee7065a2
EV3/Microbit critical fixes for code freeze ( #1354 )
...
* Resolves - BLESession and BTSession should emit PERIPHERAL_SCAN_TIMEOUT #1348 .
* Resolves - BLESession should handle 'could not find service' error #1350 .
* Resolves - BTSession should handle 'no peripheral connected' error #1351 .
* Fixing a typo that caused device scan timeout bugs.
* Resolves - Add casting and clamping throughout the EV3 extension #1352 .
* Fixing a linting error.
* Further fixes for issue #1351 .
2018-07-17 16:03:05 -04:00
Karishma Chadha
2b2fc2e561
Code cleanup, refactor, abstraction
2018-07-13 12:58:45 -04:00
Karishma Chadha
13df3e7bd6
Add unit tests and fix object shallow vs. deep copying bug.
2018-07-13 09:36:43 -04:00
Karishma Chadha
406e59fc18
Fix variable conflicts that arise when sharing the love of a sprite-local variable with the stage.
2018-07-13 09:36:43 -04:00
DD Liu
004f38190a
Merge branch 'develop' into loadCostume
2018-07-12 15:16:17 -04:00
chrisgarrity
849412ba82
Switch setLocale to return a promise
...
Convert refreshBlocks to a function returning a promise, and return that from setLocale. Now GUI can ensure that refreshing the toolbox and workspace only happens after all the blocks have refreshed.
2018-07-11 08:35:22 -04:00
DD Liu
704be2d83f
fix comment
2018-07-10 10:39:47 -04:00
DD Liu
6aefd13af6
Break load costume into more functions, and update how bitmaps are loaded
2018-07-10 10:30:38 -04:00
Eric Rosenbaum
6f5ff31eb3
Add disconnectExtensionSession and getPeripheralIsConnected
2018-07-09 13:49:41 -04:00
Evelyn Eastmond
9d66c54f8a
Adding error reporting to runtime from BLESession.
2018-07-09 13:41:57 -04:00
Eric Rosenbaum
d778ddf00e
wip
2018-07-09 13:41:57 -04:00
Karishma Chadha
a0a11f2f19
Add 'islocal' flag to XML serialization for variables.
2018-07-06 13:02:23 -04:00
kchadha
d187517d85
Merge pull request #1256 from kchadha/sprite-save-load
...
Sprite save load
2018-06-25 11:21:01 -04:00
Karishma Chadha
55a5592ab6
Add optional type param to export sprite API.
2018-06-25 09:23:04 -04:00
Corey Frang
4431b43e45
A few leftover loadSound that werent updated
2018-06-22 09:45:23 -04:00
Michael "Z" Goddard
c268bbae47
add decoded SoundPlayer's to a Sprite's SoundBank ( #1260 )
2018-06-21 17:23:33 -04:00
Karishma Chadha
b75a779540
Call fixUpVariableReferences in installTargets, before emitting the workspace update.
2018-06-20 12:12:33 -04:00
Karishma Chadha
86a8d93eb6
Sprite3 Export/Import.
2018-06-19 08:51:16 -04:00
Paul Kaplan
1dcd174dea
Add shareSound and shareCostume APIs with unit tests to the VM
2018-06-18 10:39:22 -04:00
Paul Kaplan
4b64df222a
Hoist target list assignment to simplify code.
2018-06-13 10:09:22 -04:00
Paul Kaplan
0ec0ea6ef7
Add reorderTarget API to VM
2018-06-13 09:20:22 -04:00
Paul Kaplan
0cd50fbb2c
Propagate the return value of reorder functions, update comments
2018-06-06 11:13:30 -04:00
Paul Kaplan
e6ebc33e9e
Add sound and costume reordering methods and tests to top-level API
2018-06-06 09:43:54 -04:00
Paul Kaplan
a11d1be3fc
Fix comments
2018-06-05 16:08:14 -04:00
Paul Kaplan
3a697ae0ac
Add top-level API for getting and setting variable values
2018-06-05 10:46:06 -04:00
Karishma Chadha
537dc9bcd5
Addressing PR comments.
2018-05-31 16:33:42 -04:00
Karishma Chadha
1401d54add
Parse SB2 comments and attach block comments to the blocks they belong to. Send comment xml on workspace update so they can be rendered.
2018-05-30 21:15:14 -04:00
DD Liu
5c003641f9
Merge pull request #1126 from fsih/fixQuirksOnLoadCostume
...
Run quirks mode fixes on costumes loaded from sb2s
2018-05-10 13:42:48 -04:00
DD
589dd7d5e0
Attach the svg renderer instead of providing it in order to fix VM tests
2018-05-10 12:03:38 -04:00
Paul Kaplan
36a01cf0cb
Fix clearing monitor state
2018-05-09 12:06:24 -04:00
kchadha
16c6868779
Merge pull request #1110 from kchadha/sprite-upload
...
Support for Sprite Upload
2018-05-04 14:56:31 -04:00
Karishma Chadha
3db2083294
Address PR comment.
2018-05-04 14:48:29 -04:00
Karishma Chadha
8cdc9dc2cd
Updating vector should make bitmap resolution 1.
2018-05-04 14:39:20 -04:00
Karishma Chadha
0156dd139d
Do not delete bitmap resolution property when vector is edited because there are other things that still rely on it.
2018-05-04 13:37:07 -04:00
Karishma Chadha
9b1aa7d7c7
Move comments
2018-05-04 11:00:45 -04:00
Karishma Chadha
55352e88b1
Tests and cleanup of addSprite3 so that .sprite3 format does not need to be nested inside an extra {targets: ...}
2018-05-04 11:00:45 -04:00
Karishma Chadha
adf7571851
Add API to generically validate and add sprite based on validation results.
2018-05-04 11:00:45 -04:00
DD Liu
5e6873628e
Merge pull request #1082 from fsih/updateBitmap
...
Add updateBitmap function. getCostume can now serve bitmaps as well as svgs
2018-05-01 17:05:34 -04:00
Mx Corey Frang
dbdee0ca8b
Fix downloadProjectId method ( #1093 )
...
* Fix downloadProjectId method
* use .data not .data.buffer
2018-05-01 08:56:22 -04:00
Andrew Sliwinski
326d1c491a
Merge pull request #1086 from mortendybdal/feature/add-sprite-3
...
Included a function to add sprite 3 to vm
2018-05-01 08:38:08 -04:00
Morten Dybdal
41be65ba4d
Fixing js linting issues
2018-05-01 13:23:21 +02:00
DD
bd772e5f77
Remove bitmap resolution from svgs
2018-04-30 19:58:48 -04:00
DD
78cd327237
Move the place where we divide rotation center by resolution into the VM. Also revert the method of putting data into storage to the one that was convoluted but working
2018-04-30 16:35:24 -04:00
kchadha
8e65b3d80f
Merge pull request #1092 from kchadha/refactor-video-io
...
Refactor Video IO
2018-04-30 09:27:10 -04:00
DD
9f0f2fcd27
Pass a data uri
2018-04-27 17:23:30 -04:00
DD
b2aa87da77
fix lint
2018-04-26 18:43:49 -04:00
DD
009253a8d1
Code review
2018-04-26 18:34:35 -04:00
DD
3a3d807cba
switch polyfill to one that doesn't break tests
2018-04-26 15:14:51 -04:00
DD
c73b06a254
add polyfill
2018-04-26 15:14:51 -04:00
DD
f1e70c430f
updateBitmap
2018-04-26 15:14:51 -04:00
DD
fc36ea5208
Rename getCostumeSvg to getCostume
2018-04-26 13:36:51 -04:00
Karishma Chadha
5f4139cbe4
Use video provider instead of making call to getUserMedia directly.
2018-04-26 13:24:31 -04:00
Morten Dybdal
d033271a1f
Included a function to add sprite 3 to vm
2018-04-26 10:59:53 +02:00
Karishma Chadha
dfa3408add
Update sound dataFormat after editing
2018-04-20 14:13:57 -04:00
kchadha
8739a524eb
Merge pull request #1031 from kchadha/block_serialization_compression
...
Block serialization compression
2018-04-11 19:17:42 -04:00
Paul Kaplan
f23b5a9625
Merge pull request #1041 from paulkaplan/fix-clone-drag
...
Only select the original target after a drag.
2018-04-11 10:04:25 -04:00