Commit graph

48 commits

Author SHA1 Message Date
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
2ff719f2ba Fix consistency of existing emits 2016-11-23 15:43:05 -05:00
Tim Mickel
f235cb47e6
Merge remote-tracking branch 'LLK/develop' into feature/remove-empty-project
# Conflicts:
#	src/index.js
2016-10-31 10:39:36 -04:00
Tim Mickel
56ef01745f Implement sprite info emitting and posting (#320) 2016-10-26 13:27:12 -04:00
Tim Mickel
1dc4aaa2d7 Remove rAF usage and inline into _step (#318) 2016-10-26 11:32:15 -04:00
Tim Mickel
d75f1c5965
Remove empty project 2016-10-26 10:30:16 -04:00
Tim Mickel
3d57c2e74c Drop single-stepping and pause modes (#294) 2016-10-20 11:42:16 -04:00
Tim Mickel
e49f076fa1 Interpreter fixes, enhancements, features (#280)
* Thread stepping rework; interp.redraw equivalent

* Add turbo mode and pause mode

* Yielding behavior to match Scratch 2.0

* Implement warp-mode procedure threads

* Add check for recursive call

* Inline wait block timer

* Revert to setInterval and always drawing

* Restore yielding in glide

* 30TPS compatibility mode

* 5-call count recursion limit

* Removing dead primitive code

* To simplify, access runtime.threads inline in `stepThreads`.

* Warp mode/timer fixes; recursive check fixes; clean-up

* Add basic single-stepping

* Add single-stepping speed slider

* Allow yielding threads to run in single-stepping

* Restore inactive threads tracking for block glows

* Add clock pausing during pause mode

* Documentation and clean-up throughout

* Don't look for block glows in `thread.topBlock`.

* Add null check for block glows; rename `_updateScriptGlows` to reflect block glowing

* Use the current executed block for glow, instead of stack

* Add more comments to `stepToProcedure`, and re-arrange to match 2.0

* Tweak to Blocks.prototype.getTopLevelScript

* Revert previous

* Fix threads array to be resilient to changes during `stepThreads`

* Restore inactive threads filtering

* Fix typo in "procedure"

* !! instead of == true
2016-10-17 23:23:16 -04:00
Tim Mickel
1e86d48a31 Clicking blocks in the toolbox (#267) 2016-10-13 17:15:49 -04:00
Tim Mickel
dcda82a009 Use default toolbox XML (#265) 2016-10-13 17:05:53 -04:00
dekrain
49d6bd3b67 Fix new project creation (#256)
* Fix new project creation

* Fix new project creation

* const -> var
2016-10-12 13:56:31 -04:00
Ray Schamp
a99f9ad5ff Provide playground dependencies with webpack
This confines all the files the playground needs to the playground directory.
2016-09-26 09:42:37 -04:00
Tim Mickel
a687184c3c Fix and improve playground threads display (#198) 2016-09-21 16:31:23 -04:00
Ray Schamp
4e547556a8 Use attachRenderer rather than the constructor
This makes the renderer optional as well as making the order of instantiation flexible.
2016-09-20 15:09:21 -04:00
Ray Schamp
499ba5235c Scope renderer to instance
This allows usage without global scope to attach a renderer to the VM. It also provides the ability to have multiple VMs/renderers to be used at once.
2016-09-20 02:52:33 -04:00
Tim Mickel
542899949e Update for RenderWebGLLocal -> RenderWebGL (#181)
* Update for RenderWebGLLocal -> RenderWebGL

* Move button under title
2016-09-15 19:02:03 -04:00
TheBrokenRail
b6e30a7b23 Added 'New Project' Button (#171)
* Added 'New Project' Button

* Added 'New Project' Button Functionality

* Changed To addEventListener

* Move To Import/Export
2016-09-13 22:04:44 -04:00
Tim Mickel
08b40b4d1d Drop worker support (#175)
* Take out worker code

* Fix Blockly event listening (minus worker)

* Recompile Sept. 13
2016-09-13 17:49:45 -04:00
Tim Mickel
833c5ed313 When clicked hats (#156) 2016-09-12 17:16:10 -04:00
Tim Mickel
79346c0925 Fixes for #138 (#166)
* Markup/CSS adjustments

* Move assets to folder

* Strip extra font-family

* More robust handling of project-load fail state

* Move empty project creation to its own function

* Move green flag/stop back out of the tab

* Restore default id
2016-09-12 12:03:24 -04:00
TheBrokenRail
40b530fa7e Offline Support [READY TO MERGE?] [ALONG WITH THE SCRATCH-RENDER PR] (#138)
* Remove Fallback Project

* Added A Newline and Removed Fallback Project

* Made The SB2 Project Import Field Fit In  More With All Other Textboxes

* Better Description Of SB2 Import Field

* Oops!

* The XML Import Area Doses Not Need To Be Resizable!

* That Didn't Work As Planned

* Now it won't rezize

* Added SB3New

* Add Code For SB3New

* Better 404

* Indentation

* NodeJS complains about quotes

* Moved And Renamed SB3New

* Renamed Refrences

* Prefix With ./

* Typo

* Newline Fix

* Scratch Cat By Default!

* Single Quotes And Max Legth Fixed

* Better Comment Above loadProject

* Move newProject to index.js

* Added Dependincies to index.js

* Deleted newProject.js

* Removed Unneeeded Semicolon

* @param {?string}

* Added SVG For Scxratch Cat

* Now Uses Scratch Cat Offline (REQUIRES PULL REQUEST MADE TO SCRATCH-RENDER TO BE MERGED OR IT WILL NOT WORK)

* Added Stage PNG

* Added Stage Creation

* Fix Sizing Issues

* Import And Compatibility With Less Hacky Image Import (Scratch-Render)

* Import And Compatibility With Less Hacky Image Import (Scratch-Render)

* Fixed Line Length

* Added Navigation Bar

* Added CSS For Drop Down Menus

* Nicer Scale

* Nicer Dropdowns

* Remobved Dropdown CSS (It Didn't Work)

* Add Scratch Player Bar CSS

* Add Scratch Player Bar HTML
2016-09-12 11:05:16 -04:00
Tim Mickel
e831866789 Keyboard events, "key is down" reporter (#117)
* Keyboard events, "key is down" reporter

* Update comment about inputs

* Simplify/generalize keyMap into a keys-pressed list

* Cast values passed to scratchKeyToKeyCode appropriately.

* Cut unspaced key values

* Fix lint from merge commit
2016-09-02 11:23:09 -04:00
Tim Mickel
86f136dd10 Merge pull request #115 from tmickel/feature/2.0-loader
Start of a 2.0 project loader
2016-09-02 11:16:35 -04:00
Tim Mickel
fc4c5023e1 Adding some comments to playground.js handlers 2016-09-02 09:52:01 -04:00
TheBrokenRail
4586507a8a XML Import/Export (#119)
* Added Import/Export Area In Block Representations (Copied Some Code From scratch-blocks)

* Better TextArea Size For XML

* Made Import/Export It's Own Catatagory 1/3

* Made Import/Export It's Own Catatagory 2/3

* Made Import/Export It's Own Catatagory 3/3

* Added A Newline

* Removed Port 80 From StartServerWindows.bat

* </a> before <br />

* Removed taChange from HTML

* No More taChange()
2016-09-02 08:27:43 -04:00
Tim Mickel
75212c5958 Add playground tools for targets, loading 2.0 projects 2016-08-31 12:28:44 -04:00
Tim Mickel
aebcfde492 Add VM "I/O devices", clock, mouse as demo 2016-08-15 21:37:36 -04:00
Tim Mickel
7a44dce816 Add stats.js meter to playground 2016-08-11 22:54:57 -04:00
Tim Mickel
9c6dca8131 Add visual reporting of top-level reporter execution 2016-07-07 19:42:38 -04:00
Tim Mickel
890be6611e Only request debug data from VM thread if a debug tab is open 2016-07-01 13:09:22 -04:00
Tim Mickel
660029010d Feed in requestAnimationFrame events to VM
Not sure exactly how to use these yet, but it seems helpful to have them in there.
2016-07-01 11:52:43 -04:00
Tim Mickel
19da0b0032 Add renderer demo using scratch-render-webgl 2016-06-30 18:59:47 -04:00
Tim Mickel
59ff650de1 Update playground to use unified interface and worker 2016-06-21 15:30:36 -04:00
Tim Mickel
38fb9f4de2 Temporarily disable flyout listeners until we fix GH-69 2016-06-09 11:49:03 -04:00
Tim Mickel
d17ffbb99b Merge pull request #60 from tmickel/feature/vm-playground-execution
Instrument VM and playground for better execution debugging
2016-06-08 17:15:36 -04:00
Tim Mickel
7a42e9ae68 Move blockListener to blocks.js; combine flyout listener 2016-06-08 13:44:09 -04:00
Tim Mickel
5767e05d56 Add block-by-block feedback to the VM playground 2016-06-07 20:59:34 -04:00
Tim Mickel
f2734950d7 Add tab to VM playground to show threads 2016-06-07 20:44:08 -04:00
Tim Mickel
cb4dd7b511 Add zoom options to playground 2016-06-07 20:26:58 -04:00
Tim Mickel
8626644293 Merge pull request #55 from tmickel/feature/playground-buttons
Add green flag and stop button to playground
2016-06-01 15:37:51 -04:00
Tim Mickel
9006b4450f Merge pull request #54 from tmickel/feature/playground-dark
Add dark-mode colors to VM playground
2016-06-01 15:37:42 -04:00
Tim Mickel
bbc66a95a7 Add green flag and stop button to playground 2016-06-01 14:17:18 -04:00
Tim Mickel
ed35ccfa86 Add dark-mode colors to VM playground 2016-06-01 14:00:46 -04:00
Tim Mickel
690745aaf0 Add stack highlighting to playground blocks. 2016-06-01 13:54:33 -04:00
Tim Mickel
6593c399c1 Update to use syntax highlighting in block explorer 2016-06-01 13:13:52 -04:00
Tim Mickel
8374d116bf Add a block representation explorer to playground 2016-06-01 13:13:41 -04:00
Tim Mickel
1c253df3a2 Add a basic demo playground with scratch-blocks 2016-06-01 13:13:41 -04:00