Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

can you add custom blocks and fix the paint editor? #1

Open
wants to merge 369 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
369 commits
Select commit Hold shift + click to select a range
d5098ac
Refactor Dialog constructor
nathan Feb 13, 2015
a20094f
Refactor Dialog.label
nathan Feb 13, 2015
de9e106
Refactor Dialog.Field
nathan Feb 13, 2015
77cc426
Close editor when setting list contents
nathan Feb 13, 2015
4b68164
Don't respond to non-left clicks in list watchers
nathan Feb 13, 2015
4730a0a
Refactor Dialog.Radio
nathan Feb 13, 2015
2d915af
Refactor Dialog.CheckBox
nathan Feb 13, 2015
df9b521
Refactor Dialog.content
nathan Feb 13, 2015
516768c
Refactor Dialog.buttons
nathan Feb 13, 2015
15cf667
Add stage toggle button
nathan Feb 13, 2015
4691cf3
Fix tabs
nathan Feb 13, 2015
b07b011
Remove watchers when deleting lists/variables
nathan Feb 13, 2015
297a56a
Refactor (bail early)
nathan Feb 13, 2015
e7604df
Update costume watchers when selecting costumes in the UI
nathan Feb 13, 2015
894b02f
Fix backdrop # watcher label
nathan Feb 13, 2015
094d7af
Abstract the uniqueName algorithm
nathan Feb 13, 2015
d980c75
Rename Stage::uniqueName => Stage::uniqueSpriteName
nathan Feb 13, 2015
84f492e
Add ScratchObj::uniqueCostumeName
nathan Feb 13, 2015
c6ff586
Use 'backdrop1' for new backdrops
nathan Feb 13, 2015
5622a47
Ensure new costume names are unique
nathan Feb 13, 2015
953c1d7
Add a force parameter to Editor::toggleWatcher
nathan Feb 13, 2015
53625af
Refactor watcher code (be more Stage-centric)
nathan Feb 13, 2015
3804615
Implement show variable
nathan Feb 13, 2015
b10e9e0
Implement hide variable
nathan Feb 13, 2015
783ec79
Implement show list
nathan Feb 13, 2015
dcc3102
Implement hide list
nathan Feb 13, 2015
c8e00a6
Don't update hidden watchers
nathan Feb 13, 2015
0fc8a6d
Add Stage::bringToFront
nathan Feb 13, 2015
260de8b
Use push() instead of unnecessary splice()
nathan Feb 13, 2015
5f72e7f
Bring watchers to front when showing them
nathan Feb 13, 2015
3d35c67
Don't allow variables and lists with the same name
nathan Feb 13, 2015
47f82d5
Include name in error message for duplicate variable/list
nathan Feb 13, 2015
fb9cfba
Quote names in delete confirmation dialogs
nathan Feb 13, 2015
171fb43
Use curly quotes around variable/list names
nathan Feb 13, 2015
6082ed9
Use classList where appropriate
nathan Feb 15, 2015
190e701
Implement distance to
nathan Feb 15, 2015
1c46495
Make mouse coordinates a separate layer
nathan Feb 16, 2015
893ccdf
Fix mouse coordinates in small stage mode
nathan Feb 16, 2015
9bbf95d
Remove vendor prefixes
nathan Feb 16, 2015
19e4e6d
Use a StackFrame class instead of object literals
nathan Feb 16, 2015
bf5773d
Optimize scissors icon for low-DPI displays
nathan Feb 16, 2015
9482d87
Improve language (globe) icon on low-DPI screens
nathan Feb 16, 2015
f2d53cb
Use transform instead of top/right to position stage toggle
nathan Feb 16, 2015
953854e
Remove unnecessary semicolon
nathan Feb 16, 2015
07417b5
Rename {eval => append} and related functions in ScriptsPanel
nathan Feb 16, 2015
19da16c
Add missing semicolon
nathan Feb 16, 2015
208f01e
Add some missing semicolons
nathan Feb 16, 2015
2e21f5c
Declare i
nathan Feb 16, 2015
0339da2
Filter for…in loop in extendr with hasOwnProperty
nathan Feb 16, 2015
ebb65ed
Rename T(…) to _(…)
nathan Feb 16, 2015
9761de0
Remove resize (unused)
nathan Feb 16, 2015
41467da
Remove step (unused)
nathan Feb 16, 2015
aad78c2
Remove notNull (unused)
nathan Feb 16, 2015
217eef7
Remove some unused variables in ImageEditor::ellipseOn
nathan Feb 16, 2015
319ca0f
Remove an unused variable declaration in ImageEditor::showSelection
nathan Feb 16, 2015
aba6f18
Add a .jshintrc
nathan Feb 16, 2015
4cb47da
Fix loading projects with timer watchers
nathan Feb 16, 2015
877ee2a
Don't update hidden watchers initially
nathan Feb 16, 2015
0a4a54e
Add example code for logging when watchers are updated
nathan Feb 16, 2015
21ea2fc
Only update visible watchers with Stage::updateWatcher
nathan Feb 16, 2015
2237b8c
Handle watcher title overflow gracefully
nathan Feb 16, 2015
cfdbebf
Add some NS annotations for list watcher titles
nathan Feb 16, 2015
314b34a
Add Stage::findSprite
nathan Feb 16, 2015
1573fd9
Use findSprite where appropriate
nathan Feb 16, 2015
6db8303
Fix offset list watcher cells in Firefox
nathan Feb 16, 2015
255130c
Fix hiding/showing a watcher in Firefox resetting the scroll position
nathan Feb 17, 2015
ba7c3ea
Only include current sprite when appropriate in sprite menus
nathan Feb 17, 2015
06a747a
Update Visual
nathan Feb 17, 2015
43ea40d
Fix backpack
nathan Feb 17, 2015
21023cf
Fix large numbers displaying as Infinity in watchers
nathan Feb 17, 2015
56f8e63
Add question mark to contains block
nathan Feb 17, 2015
7497760
Fix default values for attribute block
nathan Feb 17, 2015
8c44c7e
Merge pull request #71 from nathan/ff-list-scroll
nathan Feb 17, 2015
6850d7a
Merge pull request #74 from nathan/sprite-menu-current
nathan Feb 17, 2015
1532907
Merge pull request #78 from nathan/attribute-defaults
nathan Feb 17, 2015
85022f4
Merge pull request #77 from nathan/watcher-large-values
nathan Feb 17, 2015
a25f46d
Fix creating new sprite from file
nathan Feb 17, 2015
4130833
Use more reasonable spacing between list watcher indices and cells
nathan Feb 17, 2015
80878de
Apply list watcher updates atomically at the end of each frame
nathan Feb 17, 2015
ce14c7f
Fix new-from-camera button tooltip
nathan Feb 19, 2015
c4d9a2b
Add new backdrop buttons
nathan Feb 19, 2015
af45304
Show name in tooltip on sprite icons
nathan Feb 19, 2015
2958a8f
Show costume name in tooltip on icon
nathan Feb 19, 2015
334012a
Add sprite info section
nathan Feb 19, 2015
805148d
Implement info/back buttons in sprite list
nathan Feb 19, 2015
33e6c14
Add sprite name input to info
nathan Feb 19, 2015
0d6bae4
Set sprite name field contents
nathan Feb 19, 2015
c744c17
Reset sprite name when escape key is pressed
nathan Feb 19, 2015
170c79c
Implement renaming sprites
nathan Feb 19, 2015
0749ab3
Don't try to re-select selected icons
nathan Feb 19, 2015
07c6f27
Use static positioning for sprite name in info panel
nathan Feb 19, 2015
24c151e
Add motion value readouts to sprite info
nathan Feb 19, 2015
3bca08f
Show correct sprite info
nathan Feb 19, 2015
2150c64
Add SpritePanel::infoVisible
nathan Feb 19, 2015
0b0579e
Update sprite info when scripts change it
nathan Feb 19, 2015
a216237
Add other sprite info labels
nathan Feb 19, 2015
d35ad37
Add sprite info check boxes
nathan Feb 19, 2015
6417dd2
Update checked/visible check boxes when appropriate
nathan Feb 19, 2015
706c740
Implement visible check box
nathan Feb 19, 2015
550f1cf
Implement draggable check box
nathan Feb 19, 2015
c50d325
Fix check box spacing
nathan Feb 19, 2015
0f35796
Utilize high-DPI displays on Stage
nathan Feb 19, 2015
36dec7e
Implement paint new sprite button
nathan Feb 19, 2015
53948ff
Remove Editor::stop() (unused)
nathan Feb 19, 2015
258cbf5
Add Editor::showCostumes
nathan Feb 19, 2015
4ecf12d
Implement the new backdrop buttons using CostumesPanel's methods
nathan Feb 19, 2015
31ab3aa
Fix new backdrop from file button
nathan Feb 19, 2015
f8e3148
Add costume delete buttons
nathan Feb 19, 2015
1955823
Implement delete buttons and correctly enable/disable them
nathan Feb 19, 2015
f6aa898
Implement new sprite from camera
nathan Feb 19, 2015
c21dad2
Handle the case where the user allows access after the dialog is closed
nathan Feb 19, 2015
836b9ca
Show an error when the camera is inaccessible
nathan Feb 19, 2015
0719dae
Only call back from Dialog.camera() when the camera is accessible
nathan Feb 19, 2015
74ea199
Implement new backdrop/costume from camera button
nathan Feb 19, 2015
3e1daac
Only drag dialogs on left-click
nathan Feb 19, 2015
489b820
Add flip transitions
nathan Feb 21, 2015
d027636
Fix flip transition
nathan Feb 22, 2015
f8f088a
Merge pull request #107 from nathan/transitions
nathan Feb 22, 2015
208f22d
Fix pen trails size
nathan Feb 22, 2015
b14a6e9
Add turbo check box
nathan Feb 22, 2015
1757a00
Add turbo mode indicator to stage panel
nathan Feb 22, 2015
3529ab5
Toggle turbo mode when shift-clicking green flag
nathan Feb 22, 2015
f9bab11
Merge branch 'master' of https://github.com/nathan/pixie
nathan Feb 22, 2015
3dddfe3
Use classList.toggle() in Editor::toggleSmallStage
nathan Feb 22, 2015
036b13c
Use classList.toggle() in ScriptsPanel::append
nathan Feb 22, 2015
763ff4c
Use classList.toggle() in Dialog.Radio::setEnabled
nathan Feb 22, 2015
2ab4ebf
Use classList.toggle() in Dialog.CheckBox::click
nathan Feb 22, 2015
a4f59b7
Use classList.toggle() in Dialog.CheckBox::enabled
nathan Feb 22, 2015
ac41e1b
Fix stage canvas positioning in Firefox
nathan Feb 22, 2015
65f14b7
Unset *Changed flags after updating list watchers
nathan Feb 24, 2015
68aa740
Don't update invisible list watchers
nathan Feb 24, 2015
6a68156
Merge pull request #82 from nathan/atomic-list-watcher
nathan Feb 24, 2015
6ac1fbb
Cache watcher value and only update/reformat if it's changed
nathan Feb 24, 2015
dafea3e
Fix distance to for stage/nonexistent sprite
nathan Feb 25, 2015
1721b00
Add a missing semicolon
nathan Feb 25, 2015
a5eeaea
Add a missing semicolon
nathan Feb 25, 2015
cea9b3b
Add empty new block dialog
nathan Feb 25, 2015
29ef4de
Remove (mock) say implementation
nathan Feb 26, 2015
982b708
Implement tempo watcher
nathan Feb 26, 2015
0a9c75c
Make uniqueName try original name without suffix first
nathan Feb 26, 2015
8674f4a
Don't allow duplicate sprite names
nathan Feb 26, 2015
2ac9738
Disallow reserved sprite names (_myself_, _mouse_, _edge_, and _stage_)
nathan Feb 26, 2015
3cdc877
Fix empty string sprite name resulting in "2"
nathan Feb 26, 2015
4a0f291
Fix video feed pausing in Firefox when dragging dialog
nathan Feb 26, 2015
6dd9e4c
Fix small stage toggle button/menu item
nathan Feb 28, 2015
97b83db
Switch to DOM-based renderer
nathan Feb 28, 2015
ec46646
Don't switch to a negative costume
nathan Feb 28, 2015
5189632
Fix formatting/return value
nathan Feb 28, 2015
fcbc91e
Set rendered properties to null initially
nathan Feb 28, 2015
dbe580c
Fix pen canvas scale
nathan Feb 28, 2015
a98c277
Fix costume centers for scaled costumes
nathan Feb 28, 2015
b613a6f
Render sprite scale properly
nathan Feb 28, 2015
03409f5
Only redraw if the current costume changed
nathan Feb 28, 2015
47bf85d
Remove extra newline
nathan Feb 28, 2015
7ae6500
Add effects
nathan Feb 28, 2015
eac75a5
Add change effect primitive
nathan Feb 28, 2015
b2ccba6
Add set effect primitive
nathan Feb 28, 2015
bc27331
Add clear graphic effects primitive
nathan Feb 28, 2015
81913ba
Add ghost effect rendering code
nathan Feb 28, 2015
4e491ad
Add color effect rendering code
nathan Feb 28, 2015
fe0aa17
Use local variable
nathan Feb 28, 2015
f7acfc3
Fix brightness effect bounds
nathan Feb 28, 2015
0a03f6f
Add brightness effect rendering code
nathan Feb 28, 2015
bec4db0
Fix bringToFront
nathan Feb 28, 2015
48f565c
Merge pull request #137 from nathan/dom-renderer
nathan Feb 28, 2015
9f4279a
Revert "Switch to DOM-based renderer"
nathan Feb 28, 2015
94584e7
Add pixi.js
nathan Feb 28, 2015
4dafd5a
Don't say hello from Pixi
nathan Feb 28, 2015
0c919cb
Switch to a pixi.js renderer
nathan Feb 28, 2015
266fff7
Render sprites using pixi.js
nathan Mar 1, 2015
e48aa9c
Fix sprite positioning and scale
nathan Mar 1, 2015
fa39535
Update pixi object model separately
nathan Mar 1, 2015
0f0aef3
Fix updating costume size
nathan Mar 1, 2015
4b953ae
Fix rotation style rendering
nathan Mar 1, 2015
0b10deb
Add Costume::loaded
nathan Mar 1, 2015
6079cf0
Fix(ish) hit testing
nathan Mar 1, 2015
08a0727
Fix updating costume info
nathan Mar 1, 2015
ec06f6c
Update info when costume texture loads
nathan Mar 1, 2015
047e8bf
Fix copying sprites
nathan Mar 1, 2015
e1107c5
Fix Stage::bringToFront
nathan Mar 1, 2015
03e3558
Improve formatting
nathan Mar 1, 2015
27905d2
Respond to changes in pixel ratio
nathan Mar 1, 2015
17a204c
Remove ScratchObj::redraw()
nathan Mar 1, 2015
7261a62
Don't render hidden sprites
nathan Mar 1, 2015
3c355a7
Fix costume thumbnails
nathan Mar 1, 2015
ce2dd84
Fix sprite thumbnails
nathan Mar 1, 2015
78d31b0
Use BaseTexture::resolution instead of multiplying manually
nathan Mar 1, 2015
24b6731
Implement ghost effect
nathan Mar 1, 2015
608de37
Implement pixelate effect
nathan Mar 1, 2015
16f66d6
Fix clear graphic effects block
nathan Mar 1, 2015
0a2eee0
Use a custom filter for effects
nathan Mar 1, 2015
14a6d2c
Implement brightness effect
nathan Mar 1, 2015
9687482
Add hueShift (color effect)
nathan Mar 1, 2015
549cdd9
Use HSV for color and brightness effects
nathan Mar 1, 2015
afcbfac
Handle black in HSV conversions
nathan Mar 1, 2015
dba2506
Add mosaic effect
nathan Mar 1, 2015
2b59d90
Reorder uniform setters for consistency
nathan Mar 1, 2015
25c2b62
Implement pixelate effect
nathan Mar 2, 2015
e60306c
Fix mosaic + pixel effects together
nathan Mar 3, 2015
caae126
Use a 2D dimensions vector
nathan Mar 6, 2015
09437b9
Revert "Remove ScratchObj::redraw()"
nathan Mar 6, 2015
fac522a
Remove ScratchObj::renderedCostume (unused)
nathan Mar 6, 2015
a8979c8
Remove Stage::redraw()
nathan Mar 6, 2015
a56cffb
Only redraw (at 30 fps) when things change
nathan Mar 6, 2015
4789c02
Merge pull request #139 from nathan/pixi-renderer
nathan Mar 6, 2015
cf22afa
Reset effects when stopping/restarting project
nathan Mar 6, 2015
be9ade7
Fix switch costume to <number>
nathan Mar 6, 2015
5760f7b
Redraw sprite/stage when switching costume
nathan Mar 6, 2015
762e321
Only redraw on an animation frame
nathan Mar 6, 2015
46821c1
Fix sprite icon throwing error for nonexistent costume
nathan Mar 6, 2015
98f934c
Fix pixi.js error when sprite has no costume
nathan Mar 6, 2015
fa98956
Fix sprite icon error when sprite has no costume
nathan Mar 6, 2015
4a7f8d2
Round costume numbers
nathan Mar 6, 2015
b6a56a0
Update LICENSE year
nathan Mar 13, 2015
708109f
Add whirl effect
nathan Mar 14, 2015
767f79e
Merge pull request #150 from nathan/whirl
nathan Mar 14, 2015
221b392
Add whirl effect
nathan Mar 14, 2015
04c685d
Fix lower bound on fisheye effect
nathan Mar 14, 2015
bf06bf2
Merge pull request #151 from nathan/fisheye
nathan Mar 14, 2015
76c6730
Add NS annotation to fisheye effect
nathan Mar 14, 2015
55d50fd
Make sprite list gray
nathan Mar 14, 2015
4e409dc
Make sprite icons white
nathan Mar 14, 2015
5bbba5b
Fix sprite icon size
nathan Mar 14, 2015
ab0106e
Fix selected sprite icon border size
nathan Mar 14, 2015
e568117
Remove stage icon background
nathan Mar 14, 2015
d0a569f
Merge pull request #154 from nathan/gray-sprite-list
nathan Mar 14, 2015
a9c4820
Rename ListWatcher::update{Title => Label}
nathan Mar 14, 2015
a9bda2d
Rename ListWatcher::el{Title => Label}
nathan Mar 14, 2015
762cea7
Add Stage::updateWatcherLabels
nathan Mar 14, 2015
50e9d44
Update watcher labels when renaming a sprite
nathan Mar 14, 2015
9bf4a32
Merge pull request #155 from nathan/update-sprite-watchers
nathan Mar 14, 2015
52f6cd5
Use higher-resolution sprite icons on higher-density displays
nathan Mar 14, 2015
c997ccc
Fix new backdrop buttons moving when Stage is selected
nathan Mar 14, 2015
bf26152
Use higher-density costume thumbnails when appropriate
nathan Mar 14, 2015
bcf48da
Fix size of sprite thumbnails
nathan Mar 14, 2015
1c25259
Use a faster shadowing method
nathan Mar 14, 2015
f25d824
Add costume icons to app
nathan Mar 14, 2015
99d3096
Update costume thumbnail when resizing
nathan Mar 14, 2015
5277596
Fix costume maximum scale in thumbnail
nathan Mar 14, 2015
5092b1b
Rearrange lines
nathan Mar 14, 2015
58ce5c7
Remove icons when updating list
nathan Mar 14, 2015
ad61649
Remove icon from app
nathan Mar 14, 2015
5bb11c3
Merge pull request #157 from nathan/retina-thumbnails
nathan Mar 14, 2015
5f07880
Add sound primitives to table
videophonegeek Mar 7, 2017
2047695
Icons on Sound panel for choose file from library or upload sound from
videophonegeek Mar 7, 2017
bac2da3
Implement bounce off edge
videophonegeek Mar 7, 2017
56349ad
Update bounce off edge
videophonegeek Mar 7, 2017
7e12f00
Populating libraries for sprites and backdrops
videophonegeek Mar 13, 2017
9c1ec0c
Update copyright year
videophonegeek Mar 13, 2017
48fc3a7
More library and allow animated GIF when loaded as a sprite, turns into
videophonegeek Mar 29, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
The MIT License (MIT)

Copyright (c) 2014 Nathan Dinsmore
Copyright (c) 2014-2015 Nathan Dinsmore
Portions copyright (c) 2017 by John Feagans

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
Expand Down
9 changes: 9 additions & 0 deletions Pixie.sublime-project
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"folders":
[
{
"follow_symlinks": true,
"path": "."
}
]
}
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Pixie

A branch of the unofficial rewrite of [Scratch][] in JavaScript. Pixie aims to provide an application nearly identical to the current, Flash-based Scratch editor and player using only web technologies.

The goal of this branch is to complete the missing features such as the libraries for sprite and backgrounds, and provide new methods of controlling programs such as voice recognition and text to speech.

[scratch]: https://scratch.mit.edu
Binary file removed assets.png
Binary file not shown.
Binary file removed assets.xcf
Binary file not shown.
Binary file added assets/assets.sketch
Binary file not shown.
517 changes: 517 additions & 0 deletions assets/assets.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading