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
Andrew Sliwinski
d33af47a87
Merge pull request #381 from thisandagain/bugfix/oss
...
Improve Contribution Guidelines and Issue / PR Templates
2017-01-18 08:23:51 -05:00
Andrew Sliwinski
aa820b18d8
Improve contribution guidelines and issue/pr templates
2017-01-17 16:57:01 -05:00
Ray Schamp
c6c4c4c00c
Merge pull request #379 from rschamp/bugfix/empty-rotation-center
...
Only update costume rotationCenter if it exists
2017-01-13 16:55:39 -05:00
Chris Willis-Ford
9b04392211
Move build outputs into a dist/
subdirectory ( #375 )
...
* Move Node output: /dist.js => /dist/node/scratch-vm.js
* Move web output: /vm{.js,.min.js} => /dist/web/scratch-vm{.js,.min.js}
* Update build output references in package.json and the playground's index.html
* Move the VirtualMachine class out of index.js into its own file, referenced by index.js. The VirtualMachine class is otherwise unchanged.
* Add .gitattributes rules for new file types which were added to this repository without specifying their text/binary attributes
* Turn on source maps in webpack and add corresponding .gitignore rule
2017-01-13 13:34:26 -08:00
Ray Schamp
a56346d0a9
Only update costume rotationCenter if it exists
...
This prevents sending `NaN`s to the renderer as the rotation center, which prevents the initial render of the costume/backdrop.
Towards LLK/scratch-gui#18
2017-01-13 13:05:06 -05:00
Ray Schamp
b2777aced1
Merge pull request #378 from rschamp/bugfix/svg-costume-add
...
Fix adding SVG costumes
2017-01-12 15:38:11 -05:00
Ray Schamp
4ba76bbdbd
Fix adding SVG costumes
...
Previously it assumed every costume to have a `bitmapResolution` property which doesn't apply to vector costumes. This caused the renderer to not render added SVG costumes when they were added with setCostume.
2017-01-12 15:34:05 -05:00
Andrew Sliwinski
eef463b821
Merge pull request #369 from thisandagain/bugfix/coverage
...
Improve integration test coverage
2017-01-11 10:42:43 -05:00
Eric Rosenbaum
dc9126e067
Merge pull request #373 from ericrosenbaum/sound
...
Integrate audio engine
2017-01-06 16:28:09 -05:00
Eric Rosenbaum
bd8fdad1d4
add check for audioengine
2017-01-06 16:24:16 -05:00
Eric Rosenbaum
18c88c8ee0
fix stop for audio
2017-01-06 16:14:41 -05:00
Eric Rosenbaum
b88c6c96e2
initialize audio player once per sprite (not for clones)
2017-01-06 16:14:27 -05:00
Eric Rosenbaum
9980f4da3f
lint
2017-01-06 16:13:43 -05:00
Eric Rosenbaum
e1b6479e67
fix name of scratch-audio dependency
2017-01-06 15:18:30 -05:00
Eric Rosenbaum
fec9e5b91a
add audio to playground
2017-01-06 11:49:25 -05:00
Eric Rosenbaum
9350baef3b
add current volume block
2017-01-06 10:31:11 -05:00
Eric Rosenbaum
dbe2cef93c
move promise into audio engine
...
changes to play note, play drum and rest blocks so their promises to wait are returned by the audio engine
2017-01-06 10:31:01 -05:00
Eric Rosenbaum
4298f4865f
remove outdated audio from playground
2017-01-06 10:27:59 -05:00
Andrew Sliwinski
6ee8959100
Improve integration test coverage
2017-01-05 16:58:31 -05:00
Eric Rosenbaum
c0d57b4b6b
separate out main audioengine from audioplayer for each clone
2017-01-04 18:37:55 -05:00
Eric Rosenbaum
5a1386f727
remove redundant type check
2017-01-04 14:42:00 -05:00
Eric Rosenbaum
3bf9238e0c
treat numeric input to sound name as 1-indexed
2017-01-04 14:41:14 -05:00
Eric Rosenbaum
7a49a3ae43
lint
2017-01-03 23:41:49 -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
bc60fa13ce
Merge pull request #361 from thisandagain/bugfix/360
...
Fix hat blocks in horizontal grammar
2017-01-03 09:37:42 -05:00
Andrew Sliwinski
f90827d5f1
Merge pull request #363 from geppy/remove-vestigial-instructions
...
Removed reference to `StartServerWindows.bat`
2016-12-27 21:25:10 -05:00
geppy
4eb7ed6809
Removed reference to StartServerWindows.bat
2016-12-26 23:03:55 -06:00
Andrew Sliwinski
7d5820585b
Resolve lint issues
2016-12-23 21:31:00 -05:00
Andrew Sliwinski
dfc6614a5b
Build out integration test SB2 files
2016-12-23 21:08:13 -05:00
Andrew Sliwinski
b8af7c0723
Add minimal integration tests
2016-12-23 14:09:35 -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
f0e01d3e87
fix name of sounds menu
2016-12-22 14:12:20 -05:00
Eric Rosenbaum
f90807e8a4
add get sound index by name
2016-12-21 16:42:19 -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
2ae9dd28b9
Merge pull request #357 from rschamp/travis-node-stable
...
Fix "stable" specifier for Travis
2016-12-21 09:23:07 -05:00
Ray Schamp
2569baaa59
Fix "stable" specifier for Travis
...
This shorthand has become unrecognized, so match the docs suggestion of "node" for the most recent stable release.
2016-12-21 09:20:18 -05:00
Ray Schamp
a55a422a3e
Merge pull request #353 from rschamp/feature/sprite-info
...
Report costume data in sprite info reports and targetsUpdate
2016-12-09 09:43:01 -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
3989959ebf
Merge pull request #348 from rschamp/feature/flag-glows
...
Add PROJECT_RUN_START/STOP events
2016-11-28 11:41:34 -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
Ray Schamp
9859c3d91a
Merge pull request #335 from rschamp/feature/port
...
Fix dev port number
2016-11-21 14:32:44 -05:00
Ray Schamp
5b36e3cacd
Fix dev port number
...
scratch-www: 8333
scratch-api: 8491
scratch-gui: 8601
Clearly the port should be 8073 for scratch-vm.
2016-11-21 14:25:08 -05:00
Tim Mickel
0994d3f22b
Keep min and max scale in relative bounds as in Scratch 2.0 ( #333 )
2016-11-14 12:32:45 -05:00