Tim Mickel
|
c650de8520
|
Real version of Clone.prototype.setVisible
|
2016-07-13 16:52:46 -04:00 |
|
Tim Mickel
|
1f19d7a209
|
Only visually report when an actual value was returned
|
2016-07-07 19:44:26 -04:00 |
|
Tim Mickel
|
9c6dca8131
|
Add visual reporting of top-level reporter execution
|
2016-07-07 19:42:38 -04:00 |
|
Tim Mickel
|
d4353458ff
|
Don't quit loop when a thread is yielding
|
2016-07-06 14:16:44 -04:00 |
|
Tim Mickel
|
30dc285a37
|
Add implementations for math_positive_number and math_whole_number
|
2016-07-06 14:13:03 -04:00 |
|
Tim Mickel
|
7c24bdc612
|
More documentation in sprite, clone
|
2016-07-06 14:09:06 -04:00 |
|
Tim Mickel
|
2e01caa8a6
|
Add documentation for math-util functions.
|
2016-07-06 14:04:36 -04:00 |
|
Tim Mickel
|
798368b6c5
|
Add documentation in src/sprites/clone.js
|
2016-07-06 13:57:58 -04:00 |
|
Tim Mickel
|
460760bd06
|
Stub "say" and "think" blocks with console.log
|
2016-07-06 13:47:32 -04:00 |
|
Tim Mickel
|
0ae0ea5f22
|
Run threads for 60fps
|
2016-07-01 16:30:33 -04:00 |
|
Tim Mickel
|
ce941c6fd8
|
Add show/hide blocks using ghost effect as backend
|
2016-07-01 12:56:59 -04:00 |
|
Tim Mickel
|
6891a3a5dd
|
Add direction reporter
|
2016-07-01 12:56:45 -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
|
bb68fcab25
|
Additional fix for repeat's executedInFrame
|
2016-07-01 11:41:52 -04:00 |
|
Tim Mickel
|
57217f0044
|
Rename executed in repeat, ifElse
|
2016-07-01 11:29:32 -04:00 |
|
Tim Mickel
|
ad30fa8059
|
Temporarily remove per-block glow
|
2016-07-01 11:27:01 -04:00 |
|
Tim Mickel
|
e4f6c9e90c
|
"Repeat until" implementation
|
2016-07-01 11:25:26 -04:00 |
|
Tim Mickel
|
dda4fc8332
|
Yield frame on an empty substack
|
2016-07-01 11:24:06 -04:00 |
|
Tim Mickel
|
39c71b559d
|
Update repeat implementation to execute once per frame
|
2016-07-01 10:50:31 -04:00 |
|
Tim Mickel
|
de6ba08866
|
Add single-frame yield mode
|
2016-07-01 10:44:43 -04:00 |
|
Tim Mickel
|
5876681bc7
|
Version of random that truncates ints
|
2016-07-01 10:28:47 -04:00 |
|
Tim Mickel
|
bb5acd1ef4
|
Fix merge issue in execute.js
|
2016-06-30 19:01:19 -04:00 |
|
Tim Mickel
|
1eaed6fff3
|
Implement graphic effects and size blocks
|
2016-06-30 18:59:47 -04:00 |
|
Tim Mickel
|
7db2981ddc
|
Add additional motion block implementations
|
2016-06-30 18:59:47 -04:00 |
|
Tim Mickel
|
42f0f66acd
|
Implement move steps, turn right, turn left, point in direction
|
2016-06-30 18:59:47 -04:00 |
|
Tim Mickel
|
727d2c0d23
|
Clamp clone direction like Scratch 2.0
|
2016-06-30 18:59:47 -04:00 |
|
Tim Mickel
|
7db38e8422
|
Implement a few math utilities
|
2016-06-30 18:59:47 -04:00 |
|
Tim Mickel
|
19da0b0032
|
Add renderer demo using scratch-render-webgl
|
2016-06-30 18:59:47 -04:00 |
|
Tim Mickel
|
809528abdc
|
Straw-man implementation of targets/sprites/clones
|
2016-06-30 18:59:17 -04:00 |
|
Tim Mickel
|
1c24770f8c
|
Remove debug calls from execute
|
2016-06-30 18:56:31 -04:00 |
|
Tim Mickel
|
ec4567aa8a
|
Simplify logic for Thread status
|
2016-06-30 18:56:31 -04:00 |
|
Tim Mickel
|
ab6e0d3839
|
Remove YieldTimers, unused WeDo blocks
|
2016-06-30 18:56:31 -04:00 |
|
Tim Mickel
|
6daee9a70e
|
Remove VM-locking yield mode per discussion
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
9a7ab57f6f
|
Always yield thread when a promise is returned.
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
9881ee76b9
|
Deal with promise rejection also.
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
57057bfffc
|
Remove unused require to fix build
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
d72cc55c11
|
Example that uses promises instead of util.report
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
8f6a88c095
|
Ensure predicates always return booleans
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
09b9c506a9
|
Check for blocking case in stepToReporter
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
405ad1044e
|
getBlockingThread_ returns null when none available.
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
d44b806b4f
|
Add blocking yield mode
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
c63747e61b
|
Move stepping logic for reporters to sequencer
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
f802faa461
|
operator_not in primitive table
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
f210c12d4d
|
Add more operators for testing
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
e56c6e6980
|
Rename primitiveReturnValue -> primitiveReportedValue
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
e83cfa6049
|
Add comment and clear currentStackFrame.reported
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
9d9749681b
|
Comment and else for reporter finishes right away
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
b21c9edf04
|
Commenting improvements
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
173f0615d3
|
Refactor: always push reports to the stack frame
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
6181bcd5cb
|
Refactor Thread.peekParentStackFrame
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
bed3e28c02
|
Simplifications of execute ordering
and always cache returned reporter values in currentStackFrame.reported.
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
d15c93af05
|
Keep "waiting reporter name" on the stack frame.
Also add highlighting for inputs.
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
7ef3807b18
|
Example of a yielding reporter (returns random number after 1s)
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
97f7571c6f
|
Prototype implementation of yielding reporters
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
190208b620
|
Clean up yield-timers: support multiple, move logic to Threads.
|
2016-06-30 18:56:23 -04:00 |
|
Tim Mickel
|
b97974e2ac
|
Implement WebWorker interface
|
2016-06-21 15:30:27 -04:00 |
|
Tim Mickel
|
783a3688aa
|
Update index.js to support worker environment
|
2016-06-21 14:48:54 -04:00 |
|
Tim Mickel
|
652cc8a31c
|
Fix references to window
|
2016-06-21 14:29:40 -04:00 |
|
Tim Mickel
|
28432b6f01
|
Merge pull request #81 from tmickel/feature/update-playground-june-14
Update playground and block implementations to match scratch-blocks
|
2016-06-17 11:55:44 -04:00 |
|
Tim Mickel
|
695d0bd7fd
|
Merge pull request #80 from tmickel/bugfix/empty-fields
Handling empty fields
|
2016-06-17 11:46:36 -04:00 |
|
Tim Mickel
|
7427fe4ff3
|
Add fix for adapter to deal with empty fields
|
2016-06-14 18:14:04 -04:00 |
|
Tim Mickel
|
a1be1d6566
|
Update playground and block implementations to match scratch-blocks
|
2016-06-14 18:08:41 -04:00 |
|
Tim Mickel
|
056fb76492
|
Remove try/catch in execution - fix #75
|
2016-06-13 11:23:39 -04:00 |
|
Tim Mickel
|
a58fa43572
|
Add reset to numYieldingThreads and comment about YieldTimers
|
2016-06-10 13:38:35 -04:00 |
|
Tim Mickel
|
e9eb7c6e57
|
Remove leftover console.groupEnd s in execute
|
2016-06-10 13:34:07 -04:00 |
|
Tim Mickel
|
0bf9ab59a1
|
Add implementation for ifElse
|
2016-06-10 10:40:15 -04:00 |
|
Tim Mickel
|
ca68c55d57
|
Implement logic_equals, if blocks
|
2016-06-10 10:36:05 -04:00 |
|
Tim Mickel
|
506e9c32be
|
Don't attempt to glow a block that isn't known in the VM
|
2016-06-10 08:48:39 -04:00 |
|
Tim Mickel
|
7cc0c00da6
|
Correctly deal with empty substacks.
The stack needs to be popped in this situation.
|
2016-06-10 08:47:54 -04:00 |
|
Tim Mickel
|
559a2a0fab
|
Remove redundant piece of code
The stack is pushed in after the thread finishes (`proceedThread`).
|
2016-06-10 08:41:44 -04:00 |
|
Tim Mickel
|
526a260101
|
Simplify execution by removing nextBlock
Everything is managed by the stack, including what the execute() function does.
|
2016-06-09 17:08:30 -04:00 |
|
Tim Mickel
|
2cd6bf93bb
|
Fix argument for repeat block
|
2016-06-09 17:05:08 -04:00 |
|
Tim Mickel
|
d52938c255
|
Bind thread.yield passed to primitive to actual thread
|
2016-06-09 15:06:24 -04:00 |
|
Tim Mickel
|
27064ce163
|
Fix implementation of "wait" block
|
2016-06-09 15:06:11 -04:00 |
|
Tim Mickel
|
88402ee68c
|
Move popStack to inside execute
|
2016-06-09 14:45:54 -04:00 |
|
Tim Mickel
|
b0441e2ef5
|
Implement stub for number and add blocks
|
2016-06-09 14:29:07 -04:00 |
|
Tim Mickel
|
a987d9d9cc
|
Only include field value in execute.argValues
|
2016-06-09 14:27:11 -04:00 |
|
Tim Mickel
|
bcd058bdc4
|
Disable unimplemented broadcast block
|
2016-06-09 14:23:45 -04:00 |
|
Tim Mickel
|
c21700380f
|
Pull sequencer-related callbacks out of execute
|
2016-06-09 14:23:34 -04:00 |
|
Tim Mickel
|
9df470255e
|
Add helpers to thread object
|
2016-06-09 14:22:58 -04:00 |
|
Tim Mickel
|
1d16a97115
|
Recursive evaluation for block arguments
|
2016-06-09 13:28:50 -04:00 |
|
Tim Mickel
|
c4517a451b
|
Add isInput execution property to avoid proceeding the thread
|
2016-06-09 13:28:06 -04:00 |
|
Tim Mickel
|
6e5ebcf6df
|
Split execution into separate function and file
|
2016-06-09 13:27:30 -04:00 |
|
Tim Mickel
|
3898fe1c45
|
Instrument blocks.js with getters for fields and inputs
|
2016-06-09 13:26:07 -04:00 |
|
Tim Mickel
|
bd7f3245a2
|
Move scratch3 blocks into separate packages.
|
2016-06-09 11:45:58 -04:00 |
|
Tim Mickel
|
b9bd037963
|
Fixing eslint JSDoc from merge
|
2016-06-08 17:25:26 -04:00 |
|
Tim Mickel
|
42d03db28b
|
Merge branch 'develop' into feature/eslint-jsdoc
# Conflicts:
# .eslintrc
# src/index.js
|
2016-06-08 17:23:41 -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
|
1f1a4941f3
|
Add .eslintrc rule to check JSDoc syntax
And fix the broken syntax rules
|
2016-06-08 16:57:08 -04:00 |
|
Tim Mickel
|
7a42e9ae68
|
Move blockListener to blocks.js; combine flyout listener
|
2016-06-08 13:44:09 -04:00 |
|
Tim Mickel
|
8fa29bc6de
|
Spacing fix in blocks.js
|
2016-06-08 13:27:01 -04:00 |
|
Tim Mickel
|
c1e30cf2ee
|
Add sequencer-level debug console logs
|
2016-06-07 21:05:32 -04:00 |
|
Tim Mickel
|
5767e05d56
|
Add block-by-block feedback to the VM playground
|
2016-06-07 20:59:34 -04:00 |
|
Tim Mickel
|
2be27cbc7d
|
Merge pull request #57 from tmickel/feature/full-tree
Update for VM block management
|
2016-06-07 13:27:41 -04:00 |
|
Tim Mickel
|
2339c5e710
|
Additional tests for invalid adapter inputs
|
2016-06-07 12:01:47 -04:00 |
|
Tim Mickel
|
3b4a00ce46
|
Add check for null substackNum , fix numbering
|
2016-06-07 11:32:29 -04:00 |
|
Tim Mickel
|
f158af18b1
|
Case problem with blocks.js in index.js
|
2016-06-06 16:19:57 -04:00 |
|
Tim Mickel
|
fd95d3045d
|
Fix property check of topLevel in createBlock
|
2016-06-06 15:58:54 -04:00 |
|
Tim Mickel
|
f63e261892
|
Remove breaking check for blockId
|
2016-06-06 15:58:40 -04:00 |
|
Tim Mickel
|
0efe7e2b27
|
Fix block events for flyout blocks
|
2016-06-06 15:44:13 -04:00 |
|