A featured block sounds like a great idea! And yes, I'll be working some more on the site over the summer One thing I was thinking to have was a love-it system for blocks, so maybe that could be something shown on the homepage too?
Offline
If that idea had the button, i'd press it.
Offline
scimonster wrote:
If that idea had the button, i'd press it.
+1
But first let's get the SQL connecting reliably.
Offline
sparks wrote:
A featured block sounds like a great idea! And yes, I'll be working some more on the site over the summer One thing I was thinking to have was a love-it system for blocks, so maybe that could be something shown on the homepage too?
@Sparks cheddargirl comparison sig - lol
Offline
Requesting a scratch stack command block:
set cursor to [wait v]with these inputs: write, wait, up, top right, top left, stamp, square, right arrow, resize horizontally, resize corner, read, question mark, paint bucket, origin, normal, move, marker, hand open, hand closed, eyedropper, execute, crosshair, corner, bottom right, bottom left, blank, and wait. I know the code for changing the cursor, [ Cursor nameGoesHere show ]
Last edited by williambl (2012-05-29 11:08:14)
Offline
williambl wrote:
Requesting a scratch stack command block:
set cursor to [wait v]with these inputs: write, wait, up, top right, top left, stamp, square, right arrow, resize horizontally, resize corner, read, question mark, paint bucket, origin, normal, move, marker, hand open, hand closed, eyedropper, execute, crosshair, corner, bottom right, bottom left, blank, and wait. I know the code for changing the cursor, [ Cursor nameGoesHere show ]
It would probably be better to do a string argument...do you mind if I use one instead of a dropdown?
Offline
Greenatic wrote:
williambl wrote:
Requesting a scratch stack command block:
set cursor to [wait v]with these inputs: write, wait, up, top right, top left, stamp, square, right arrow, resize horizontally, resize corner, read, question mark, paint bucket, origin, normal, move, marker, hand open, hand closed, eyedropper, execute, crosshair, corner, bottom right, bottom left, blank, and wait. I know the code for changing the cursor, [ Cursor nameGoesHere show ]It would probably be better to do a string argument...do you mind if I use one instead of a dropdown?
What is so bad about drop-down lists? It makes things easier if you forgot what the cursor is called.
Offline
nathanprocks wrote:
Greenatic wrote:
williambl wrote:
Requesting a scratch stack command block:
set cursor to [wait v]with these inputs: write, wait, up, top right, top left, stamp, square, right arrow, resize horizontally, resize corner, read, question mark, paint bucket, origin, normal, move, marker, hand open, hand closed, eyedropper, execute, crosshair, corner, bottom right, bottom left, blank, and wait. I know the code for changing the cursor, [ Cursor nameGoesHere show ]It would probably be better to do a string argument...do you mind if I use one instead of a dropdown?
What is so bad about drop-down lists? It makes things easier if you forgot what the cursor is called.
Or use ExpressionOrArgMorph for a dropdown which accepts reporter drop-ins.
Offline
Hardmath123 wrote:
nathanprocks wrote:
Greenatic wrote:
It would probably be better to do a string argument...do you mind if I use one instead of a dropdown?What is so bad about drop-down lists? It makes things easier if you forgot what the cursor is called.
Or use ExpressionOrArgMorph for a dropdown which accepts reporter drop-ins.
I never knew that was possible lol.
Offline
nathanprocks wrote:
Hardmath123 wrote:
nathanprocks wrote:
What is so bad about drop-down lists? It makes things easier if you forgot what the cursor is called.Or use ExpressionOrArgMorph for a dropdown which accepts reporter drop-ins.
I never knew that was possible lol.
Check out the [switch to costume [... v]] block...
Offline
ChoiceOrExpressionArgMorph is usually the best choice.
Offline
What's an arg letter that hasn't been used yet?
1700th post!
Last edited by Greenatic (2012-05-30 17:29:34)
Offline
hey guys, I was doing some thinking and you know the graphic filters, could we try to implement a sound filters block? I think it would be a good idea but what do you all say?
I'll come up with a block spec but, I am not going to be able to come up with the code
Last edited by P110 (2012-05-31 16:21:39)
Offline
Lol, I'm amazed the recursive tree hasn't been added to BYOB pen yet. Or motion path. I'd add, but idk how to get an image of the scripts in the block editor.
EDIT:
Okay, it was just being glitchy. Got it to work. Here's tree, I might upload motion paths some other time. If anyone's curious to see the full effect of the tree block, I have a project called Symetree that demonstrates it found here.
Block Image:
Script:
Lol, lots of inputs. All to draw a stupid tree.
Last edited by Jrocket97 (2012-05-31 20:29:29)
Offline
P110 wrote:
hey guys, I was doing some thinking and you know the graphic filters, could we try to implement a sound filters block? I think it would be a good idea but what do you all say?
I'll come up with a block spec but, I am not going to be able to come up with the code
I'm currently creating a block that alters a sound's pitch.
EDIT: Here it is. Note: It permanently changes a sound's pitch. If anyone would be willing to try to fix that, I would be very grateful. It also doesn't wait for the sound to end--help would be appreciated.
('play sound %S at frequency %n' #- #playSound:Frequency:)
playSound: t1 atFrequency: t2 SoundPlayer playSound: ((self soundNamed: t1 ifAbsent: [^ self]) sound pitch: t2)
Scratch-Objects > ScriptableScratchMorph > blocks > defaultArgsFor:
Add right before the last line (^ t2):
#playSound:atFrequency: = t4 ifTrue: [t6 _ self soundNames. t2 _ t6 size <= 2 ifTrue: [Array with: ''] ifFalse: [Array with: (t6 at: t6 size - 2)]].
Last edited by Greenatic (2012-05-31 22:17:24)
Offline
P110 wrote:
hey guys, I was doing some thinking and you know the graphic filters, could we try to implement a sound filters block? I think it would be a good idea but what do you all say?
I'll come up with a block spec but, I am not going to be able to come up with the code
I'm working on that. Check out 'expanding scratch sound' on the forums. First I will enable stereo (this is going pretty well). Then I'll add new blocks.
Offline
dreamod wrote:
P110 wrote:
hey guys, I was doing some thinking and you know the graphic filters, could we try to implement a sound filters block? I think it would be a good idea but what do you all say?
I'll come up with a block spec but, I am not going to be able to come up with the codeI'm working on that. Check out 'expanding scratch sound' on the forums. First I will enable stereo (this is going pretty well). Then I'll add new blocks.
great, you know the graphic filters? well a. there are actually a few hiiden ones pointalize... b. did they come with sqeak or made by st?
Offline
Greenatic wrote:
P110 wrote:
hey guys, I was doing some thinking and you know the graphic filters, could we try to implement a sound filters block? I think it would be a good idea but what do you all say?
I'll come up with a block spec but, I am not going to be able to come up with the codeI'm currently creating a block that alters a sound's pitch.
EDIT: Here it is. Note: It permanently changes a sound's pitch. If anyone would be willing to try to fix that, I would be very grateful. It also doesn't wait for the sound to end--help would be appreciated.
('play sound %S at frequency %n' #- #playSound:Frequency:)Code:
playSound: t1 atFrequency: t2 SoundPlayer playSound: ((self soundNamed: t1 ifAbsent: [^ self]) sound pitch: t2)Scratch-Objects > ScriptableScratchMorph > blocks > defaultArgsFor:
Add right before the last line (^ t2):Code:
#playSound:atFrequency: = t4 ifTrue: [t6 _ self soundNames. t2 _ t6 size <= 2 ifTrue: [Array with: ''] ifFalse: [Array with: (t6 at: t6 size - 2)]].
Cool! Does it change the tempo or keep it the same?
Offline
sparks wrote:
Greenatic wrote:
P110 wrote:
hey guys, I was doing some thinking and you know the graphic filters, could we try to implement a sound filters block? I think it would be a good idea but what do you all say?
I'll come up with a block spec but, I am not going to be able to come up with the codeI'm currently creating a block that alters a sound's pitch.
EDIT: Here it is. Note: It permanently changes a sound's pitch. If anyone would be willing to try to fix that, I would be very grateful. It also doesn't wait for the sound to end--help would be appreciated.
('play sound %S at frequency %n' #- #playSound:Frequency:)Code:
playSound: t1 atFrequency: t2 SoundPlayer playSound: ((self soundNamed: t1 ifAbsent: [^ self]) sound pitch: t2)Scratch-Objects > ScriptableScratchMorph > blocks > defaultArgsFor:
Add right before the last line (^ t2):Code:
#playSound:atFrequency: = t4 ifTrue: [t6 _ self soundNames. t2 _ t6 size <= 2 ifTrue: [Array with: ''] ifFalse: [Array with: (t6 at: t6 size - 2)]].Cool! Does it change the tempo or keep it the same?
It's sounds, not notes. Do you mean the duration? (It does make them longer, and it seems to overwrite the original sound).
Offline
Yeah, I understood that it was sounds. What I meant was, one way to change the pitch of a sound is to speed it up (increases the tempo) so that everything gets higher and faster. However the harder thing to do is to change the pitch without changing the speed.
Offline
sparks wrote:
Yeah, I understood that it was sounds. What I meant was, one way to change the pitch of a sound is to speed it up (increases the tempo) so that everything gets higher and faster. However the harder thing to do is to change the pitch without changing the speed.
Yeah, this changes the speed. I recommend trying the meow sound between 50-100 though! (400 is normal.) MMMMMMMMMMMMMEEEEEEEEEEEEEEEOOOOOOOOOOOOWWWWWWWWWWW.........
Offline
I did my request for a
set cursor to [wait v]block myself
('change cursor to %z' #- #changeCursorTo:)
Code: (Scratch-Blocks -> CommandBlockMorph -> private ->uncoloredArgMorphFor:
add a line:
$z = t2 ifTrue: [^ ChoiceOrExpressionArgMorph new getOptionsSelector: #cursors; choice: ''].
Code: (Other ops)
changeCursorTo: t1 'wait' = t1 ifTrue: [Cursor wait show]. 'write' = t1 ifTrue: [Cursor write show]. 'up' = t1 ifTrue: [Cursor up show]. 'top right' = t1 ifTrue: [Cursor topRight show]. 'top left' = t1 ifTrue: [Cursor topLeft show]. 'stamp' = t1 ifTrue: [Cursor stamp show]. 'square' = t1 ifTrue: [Cursor square show]. 'right arrow' = t1 ifTrue: [Cursor rightArrow show]. 'resize horizontally' = t1 ifTrue: [Cursor resizeHorizontally show]. 'resize corner' = t1 ifTrue: [Cursor resizeCorner show]. 'read' = t1 ifTrue: [Cursor read show]. 'question mark' = t1 ifTrue: [Cursor questionMark show]. 'paint bucket' = t1 ifTrue: [Cursor paintBucket show]. 'origin' = t1 ifTrue: [Cursor origin show]. 'normal' = t1 ifTrue: [Cursor normal show]. 'move' = t1 ifTrue: [Cursor move show]. 'marker' = t1 ifTrue: [Cursor marker show]. 'hand open' = t1 ifTrue: [Cursor handOpen show]. 'hand closed' = t1 ifTrue: [Cursor handClosed show]. 'eyedropper' = t1 ifTrue: [Cursor eyedropper show]. 'execute' = t1 ifTrue: [Cursor execute show]. 'crosshair' = t1 ifTrue: [Cursor crossHair show]. 'corner' = t1 ifTrue: [Cursor corner show]. 'bottom right' = t1 ifTrue: [Cursor bottomRight show]. 'bottom left' = t1 ifTrue: [Cursor bottom left show]
Last line of code: (other ops)
cursors ^ #('write' 'wait' 'up' 'top right' 'top left' 'stamp' 'square' 'right arrow' 'resize horizontally' 'resize corner' 'read' 'question mark' 'paint bucket' 'origin' 'normal' 'move' 'marker' 'hand open' 'hand closed' 'eyedropper' 'execute' 'crosshair' 'corner' 'bottom right' 'bottom left' )
Offline
Greenatic wrote:
sparks wrote:
Yeah, I understood that it was sounds. What I meant was, one way to change the pitch of a sound is to speed it up (increases the tempo) so that everything gets higher and faster. However the harder thing to do is to change the pitch without changing the speed.
Yeah, this changes the speed. I recommend trying the meow sound between 50-100 though! (400 is normal.) MMMMMMMMMMMMMEEEEEEEEEEEEEEEOOOOOOOOOOOOWWWWWWWWWWW.........
try using a little multiplication to make the numbers more sensible to users.
Offline
williambl wrote:
I did my request for a
set cursor to [wait v]block myself
Blockspec:Code:
('change cursor to %z' #- #changeCursorTo:)Code: (Scratch-Blocks -> CommandBlockMorph -> private ->uncoloredArgMorphFor:
add a line:Code:
$z = t2 ifTrue: [^ ChoiceOrExpressionArgMorph new getOptionsSelector: #cursors; choice: ''].Code: (Other ops)
Code:
changeCursorTo: t1 'wait' = t1 ifTrue: [Cursor wait show]. 'write' = t1 ifTrue: [Cursor write show]. 'up' = t1 ifTrue: [Cursor up show]. 'top right' = t1 ifTrue: [Cursor topRight show]. 'top left' = t1 ifTrue: [Cursor topLeft show]. 'stamp' = t1 ifTrue: [Cursor stamp show]. 'square' = t1 ifTrue: [Cursor square show]. 'right arrow' = t1 ifTrue: [Cursor rightArrow show]. 'resize horizontally' = t1 ifTrue: [Cursor resizeHorizontally show]. 'resize corner' = t1 ifTrue: [Cursor resizeCorner show]. 'read' = t1 ifTrue: [Cursor read show]. 'question mark' = t1 ifTrue: [Cursor questionMark show]. 'paint bucket' = t1 ifTrue: [Cursor paintBucket show]. 'origin' = t1 ifTrue: [Cursor origin show]. 'normal' = t1 ifTrue: [Cursor normal show]. 'move' = t1 ifTrue: [Cursor move show]. 'marker' = t1 ifTrue: [Cursor marker show]. 'hand open' = t1 ifTrue: [Cursor handOpen show]. 'hand closed' = t1 ifTrue: [Cursor handClosed show]. 'eyedropper' = t1 ifTrue: [Cursor eyedropper show]. 'execute' = t1 ifTrue: [Cursor execute show]. 'crosshair' = t1 ifTrue: [Cursor crossHair show]. 'corner' = t1 ifTrue: [Cursor corner show]. 'bottom right' = t1 ifTrue: [Cursor bottomRight show]. 'bottom left' = t1 ifTrue: [Cursor bottom left show]Last line of code: (other ops)
Code:
cursors ^ #('write' 'wait' 'up' 'top right' 'top left' 'stamp' 'square' 'right arrow' 'resize horizontally' 'resize corner' 'read' 'question mark' 'paint bucket' 'origin' 'normal' 'move' 'marker' 'hand open' 'hand closed' 'eyedropper' 'execute' 'crosshair' 'corner' 'bottom right' 'bottom left' )
lol. Nice block though.
Offline