Commit graph

144 commits

Author SHA1 Message Date
DD Liu
9645a513b1 Only send monitor update on change 2017-05-19 12:28:05 -04:00
DD Liu
adc60001ee Merge branch 'develop' into updateMonitorsAction 2017-05-18 16:50:34 -04:00
Paul Kaplan
2c4361b830 Fix refreshTargets race condition 2017-05-16 09:20:52 -04:00
DD Liu
f1208720f6 restore things lost in bad merge 2017-05-15 16:25:34 -04:00
DD Liu
65d998f473 attach issue to todo 2017-05-15 10:47:36 -04:00
DD Liu
dcdb806b57 fix merge more 2017-05-15 10:45:20 -04:00
DD Liu
4cfedc8d9d fix merge conflicts 2017-05-15 10:18:48 -04:00
DD Liu
9060a35350 Merge branch 'develop' into updateMonitorsAction 2017-05-15 10:16:12 -04:00
DD Liu
6ee1e6614c Remove leftover instances of MONITORS_ADDED and MONITORS_REMOVED, change updateMonitor to requestUpdateMonitor, update some todos with tracking numbers. 2017-05-15 10:12:25 -04:00
Ray Schamp
20337b53f2 Stop emitting SPRITE_INFO_REPORT
Instead, set the `_refreshTargets` flag, and emit a full target list at the end of the step.
2017-05-12 11:42:22 -04:00
DD Liu
7a1b3eccd0 fix Object.values is not a function test 2017-05-11 17:28:48 -04:00
DD Liu
2a7f3edda6 Fix some issues: 1. Monitors not running anymore if you change categories 2. Visual reports not showing 3. threads acquiring properties of old thread when restarting thread 2017-05-11 17:12:19 -04:00
DD Liu
6b774c58f5 Update some comments 2017-05-11 15:23:11 -04:00
DD Liu
1ea69dd504 Rename functions to be less wordy 2017-05-11 10:20:33 -04:00
DD Liu
b2e0a632e3 add add monitor action 2017-05-10 17:00:08 -04:00
DD Liu
b1355c6b0b Fire remove monitors VM event 2017-05-10 15:47:06 -04:00
DD Liu
4687fe41fe don't show green flag when monitor running 2017-05-10 14:06:02 -04:00
DD Liu
4ae1321252 indicate show visual report or update monitor on the thread 2017-05-09 17:34:13 -04:00
DD Liu
35a208d1d3 make it possible for VM to emit update monitors action 2017-05-09 12:10:11 -04:00
DD Liu
26a5098347 don't show visual report when monitor is running 2017-05-08 16:51:45 -04:00
DD Liu
706e112082 Add a block container for monitors that will run in the sequencer 2017-05-08 15:45:55 -04:00
Ray Schamp
a4f095db5e Use ES6 style classes 2017-04-17 19:42:48 -04:00
Ray Schamp
e01c4ae108 Pass with --fix 2017-04-17 15:10:04 -04:00
Chris Willis-Ford
a4aa3810ae Merge pull request #462 from griffpatch/optimise/reduceGetBlockCalls
Optimise reducegetblockcalls
2017-04-03 13:00:05 -04:00
griffpatch
220d854f28 Merge remote-tracking branch 'refs/remotes/LLK/develop' into optimise/reduceGetBlockCalls
# Conflicts:
#	src/engine/execute.js
2017-03-22 08:58:01 +00:00
griffpatch
a5ce0f60cf Merge remote-tracking branch 'refs/remotes/LLK/develop' into optimise/reduceGetBlockCalls 2017-03-22 07:56:04 +00:00
Christopher Willis-Ford
c23e9c6bf8 Load projects & costumes through scratch-storage
This also sets up the framework to load sounds through scratch-storage,
to be finished in a later change.
2017-03-09 11:25:55 -08:00
Ray Schamp
d0cd9cd897 Add methods for dragging and dropping sprites
* Add `getTargetIdForDrawableId` to translate between renderer picks and VM targets
* Add `startDrag` to stop sprite motion while dragging
* Add `stopDrag` to return sprite motion after dragging
2017-03-03 09:43:31 -05:00
Chris Willis-Ford
a56db95aba Merge pull request #446 from magmaboat/hasownproperty
Perform hasOwnProperty validation
2017-02-22 13:55:54 -08:00
Christopher Willis-Ford
18107cde7b Reverse target iteration in allScriptsDo
The `allStacksAndOwnersDo` function in Scratch 2.0 runtime iterates
targets in reverse and projects sometimes rely on that for correct
initialization. If, for example, each sprite runs a "go back 999 layers"
or "go to front" block as its first action, the order of execution will
determine the ordering of the layers.

This change makes Scratch 3.0 match the Scratch 2.0 execution order.
2017-02-13 14:45:29 -08:00
griffpatch
ea59f8cd66 Reduce calls to getBlock 2017-02-11 14:26:23 +00:00
Magmaboat
85eee4f18e Perform hasOwnProperty validation 2017-02-09 21:12:47 -05:00
griffpatch
276ae82769 Fixes Case Insensitive Broadcast Bug
Broadcasts are case sensitive #433
2017-02-08 10:05:48 +00:00
Ray Schamp
727fcc7875 Lint for eslint-config-scratch@3 2017-02-01 16:27:55 -05:00
Christopher Willis-Ford
369c02b5d5 Implement pen blocks
These blocks implement pen features as found in Scratch 2.0

Supporting changes include:
- `Target` is now an event emitter
- `RenderedTarget` now emits an event when it moves
- `Target` can now store arbitrary "extra" data, called "custom state"
  in the code, using a `Target`'s `setCustomState` and `getCustomState`
  methods. This is used to store per-target pen state without requiring
  `Target` or `RenderedTarget` to know anything about the pen.
- `Cast` can now cast to an RGB color object.
- `Color` now has functions to convert between RGB and HSV, constants
  for for black & white, and a `mixRgb` function to lerp between two
  colors.
2017-01-19 11:51:22 -08:00
Eric Rosenbaum
dc9126e067 Merge pull request #373 from ericrosenbaum/sound
Integrate audio engine
2017-01-06 16:28:09 -05:00
Eric Rosenbaum
9980f4da3f lint 2017-01-06 16:13:43 -05:00
Eric Rosenbaum
c0d57b4b6b separate out main audioengine from audioplayer for each clone 2017-01-04 18:37:55 -05:00
Andrew Sliwinski
5daaaa4438 Merge pull request #362 from thisandagain/bugfix/coverage
Add integration test coverage
2017-01-03 09:38:14 -05:00
Andrew Sliwinski
4709cae4b7 Basic integration (end-to-end) testing for default project 2016-12-23 10:39:19 -05:00
Andrew Sliwinski
48721dd336 If not hat fields are not found, check inputs before continuing. Resolves GH-360 2016-12-23 09:38:18 -05:00
Eric Rosenbaum
f2793a1d59 Merge branch 'develop' of https://github.com/LLK/scratch-vm into sound
# Conflicts:
#	package.json
#	src/engine/runtime.js
#	src/sprites/clone.js
2016-12-21 15:29:57 -05:00
Ray Schamp
e9da046969 Report full sprite info in targetsUpdate
We need more than just the name for the initial render, so send everything consistent with sprite info reports.
2016-12-07 17:11:08 -05:00
Ray Schamp
adaf2df743 Emit sprite info report for all sprites
This allows costume data to reach listeners even when the sprite isn't the editing target.

Filter out non-editing target reports in the playground to match previous behavior.
2016-11-30 13:21:00 -05:00
Ray Schamp
ce17fdbd30 Include costume data in sprite info reports
Also emit the report on all costume changes
2016-11-30 13:19:49 -05:00
Ray Schamp
d00cdd6b2c Account for done threads on threadCount update
Also rename inactiveThreads -> doneThreads, since this describes them better. They are the threads that have completed in the step.
2016-11-28 10:49:05 -05:00
Ray Schamp
0003b294cb Lint 2016-11-24 10:36:30 -05:00
Ray Schamp
55ac7e269c Add PROJECT_RUN_START/STOP events
These events signal when any threads are running or when all threads have stopped running. This maps to whether the green flag or the stop button should be illuminated in the GUI.
2016-11-23 15:47:49 -05:00
Ray Schamp
2ff719f2ba Fix consistency of existing emits 2016-11-23 15:43:05 -05:00
Tim Mickel
4deee071b2 Don't copy threads in step; stable restartThread (#331) 2016-11-10 15:05:49 -05:00