Twitter but less toxic and on snap Press 'v' to switch from dark to light mode [REQUIRES PROJECT RESTART] Click a post to give it a like!data:image/png;base64,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Twitter but less toxic and on snap Press 'v' to switch from dark to light mode [REQUIRES PROJECT RESTART] Click a post to give it a like!
1DataPostsdark-1250
80100
§_soundsMenu50
Reports the currently pressed mouse button's ID (i.e. middle click is 1, right-click is 2). If no buttons are currently being pressed, it will report -1. If multiple are pressed at once, it will report the ID of the button most recently pressed. This doesn't work for left clicks, however. For that you need to use 'mouse down?'.
§_costumesMenucostume
§_soundsMenusound
Reports all the current sprite's scripts in a list.
§_costumesMenu
Downloads a file onto the user's computer. URLs are supported, and required for PNG images and possibly other extensions. Update: Now supports backslashing of URLs to instead get a file with the URL as its binary contents. Not sure why you'd want that though.
filenamebody.txt.txt .xml .html
horizontalhorizontal verticalcurrent§_costumesMenuverticalcstncst.name = n;
Sends a notification to the user's device. The icon/image parameters take a costume as input and the onclick parameter takes a JavaScript or Snap! function.
Hi there!How are you today?current§_costumesMenu§_costumesMenuthis.close();
Update: Now accepts URLs!
pointerauto cell copy crosshair default grab grabbing help move not-allowed pointer progress text wait n-resize s-resize e-resize w-resize ne-resize se-resize nw-resize sw-resize
comment...
Credit to @programmer_user and @jens
Costumes/alonzo.pngfunction () { var obj = {}; world.children[0].getMediaList('Costumes').forEach(image => { obj[image.name] = 'Costumes/' + image.fileName; }) return obj; }
titleurl=href hash title origin
titletitle locationSnap!
These blocks are obsolete, use the CUSTOM DIALOG block instead.
This is some content!!
These blocks are obsolete, use the CUSTOM DIALOG block instead.
Are you sure??
These blocks are obsolete, use the EDIT BOX block instead.
What's your name?John Doe
uppercaseuppercase lowercase capitalize line capitalize full capitalizePink girluppercaselowercasecapitalizeline capitalizefull capitalize
firstfirst lastletterletter wordworldlast
,
PINK GIRLuppercaseduppercased lowercased capitalized line capitalized full capitalized
Returns the roman number as actual number e.g. IV = 4 XL = 40 CD = 400 CLM = 1050 MMMM = 4000
el:λατίνα _ ως νούμερο de:Latein _ als zahl MDCLXVIIVXLCDMtrue11each pairI1V5X10L50C100D500M1000each letter111#1#2indexlist
Returns the actual number as roman number, Can be slow for large operations. e.g. 4 = IV 40 = XL 400 = CD 1050 = CLM 4000 = MMMM
el:νούμερο _ ως λατίνα de:Zahl _ als Latein 16660symbolsoutputsymbolsI1V5X10L50C100D500M10001000000output0false
raincoatcontainscontains starts with ends withcoatstarts withends with
13world
world
world
50
x
Hello! How are you? Are you okay?12xsblindexline 2
Sprites: All the sprites (not including the stage). Clones: Every clone from every sprite. Objects: Both sprites and clones.
spritessprites clones objectsclonesobjects
11110
minmin max
ohello worldx
11 last randomdata
Pause a selected range of processes.
allall this script all but this script
Unpause each paused process.
thing
acat
pie pi phi weekdays months latin alphabet
takes a snapshot with the webcam and reports it as a new costume, or zero if the user cancels
pt:$camera a imagem actual do vídeo
records an audio snippet and reports it as a new sound, or zero if the user cancels
pt:$circleSolid-1-255-0-0 uma nova gravação
2552200255
1mouse-pointerfunction () { var object = { "random position" : "random position", "mouse-pointer" : "mouse-pointer", "center" : "center", "~": "~", }; var spritesObj = {}, homeSprite = world.children[0].currentSprite || {name:null}; world.children[0].sprites.itemsArray().map(e=>e.name).forEach( function (spriteName){ if (spriteName != homeSprite.name){ spritesObj[spriteName] = spriteName; }}) if (Object.keys(spritesObj).length < 1){ delete object["~"]; } return Object.assign(object, spritesObj); }12
applesI like applesbananas
asteam
§_soundsMenu
256256horizontallyhorizontally vertically
Sounds/Chord.wavfunction () { var obj = {}; world.children[0].getMediaList('Sounds').forEach(audio => { obj[audio.name] = 'Sounds/' + audio.fileName; }) return obj; }
current§_costumesMenu2heightwidthold pixelsheightwidthold pixelsfactor4w14h014
Improved block from @wunder_wulfe using reshape and with italic dropdown option
430function() { return { "identity": ["identity"] }; }
monospacearial cursive monospacefalsefalse
namename bold? italic?
Fetch clipboard contents as costume or plaintext.
texttext image
§_costumesMenu
§_costumesMenutruefalse
lengthlength rank shape size ~1 flatten transpose reverse shuffle ~2 lines csv json
emptycircular scalar empty flat
huesize ~1 hue saturation brightness transparency ~2 red green blue ~3 rgb hsv ~4 down?
{"foo":"bar"}
current§_costumesMenu50
Notesfunction() { var obj = {}; Object.keys(SymbolMorph.prototype) .filter(e => e.includes("renderSymbol")) .map(e => e.replace("renderSymbol", "")) .filter(e => e !== "ClosedBrushPath" && e !== "Stop") .sort() .forEach(e => obj[e] = e); return obj; }50rgba(0,0,0,255)
0-11
01075
Takes a dyadic scalar function as input, and hyperizes it, so that it can take lists as inputs. Don't use on slow functions (this has compiled map calls). Meant for use on primitives.
1xscalar-value1xhyper funcab
1
el:υπάρχει ο ήχος _ ; de:existiert Klang _ ? pop§_soundsMenu
§_costumesMenu4848
LET (FOO) BE (5) is equivalent to SCRIPT VARIABLES (FOO) SET (FOO) TO (5)
pt:cria a variável de guião _ com valor _
Allows reading global settings programmatically. Eisenberg's Law: Anything you can do from the user interface you should be able to do in your program, and vice versa. This library is just a beginning; there are many UI controls outside of the Settings menu.
pt:o valor da configuração _ ca:paràmetre _ Project notes Project name User Presentation mode Language Zoom blocks Stage size Stage scale Retina display support Long form input dialog Plain prototype labels Input sliders Execute on slider change Clicking sound Turbo mode Flat design Keyboard editing Visible stepping Thread safe scripts Prefer smooth animations Flat line ends Codification support Inheritance support Hyper blocks support Visible palette
Allows changing global settings programmatically. This block is for Boolean (checkbox) settings; use SET VALUE for numeric or text values. Eisenberg's Law: Anything you can do from the user interface you should be able to do in your program, and vice versa. This library is just a beginning; there are many UI controls outside of the Settings menu.
pt:altera o valor da configuração _ para _ ca:fixa el paràmetre _ a _ Presentation mode Retina display support Long form input dialog Plain prototype labels Input sliders Execute on slider change Clicking sound Turbo mode Flat design Keyboard editing Visible stepping Thread safe scripts Prefer smooth animations Flat line ends Codification support Inheritance support Hyper blocks support
Allows changing global settings programmatically. This block is for numeric or text settings; use SET FLAG for Boolean (checkbox) values. Eisenberg's Law: Anything you can do from the user interface you should be able to do in your program, and vice versa. This library is just a beginning; there are many UI controls outside of the Settings menu.
pt:altera o valor da configuração _ para _ ca:fixa el valor de _ a _ Project notes Project name Language Zoom blocks Stage size Stage scale Visible palette
Accepts any number of scripts as inputs. Launches a separate thread for each of them, so they are done in parallel, then waits for them all to complete. This doesn't change how the Snap! scheduler works; the threads are not truly asynchronous. And there is no increase in speed. Rather, the point of this block is to allow starting synchronized but independent scripts.
pt:executa _ em paralelo e espera ca:executa en paral·lel _ i espera each scripttest
Accepts any number of scripts as inputs. Launches a separate thread for each of them, so they are done in parallel, then continues with the current script while they all run. This doesn't change how the Snap! scheduler works; the threads are not truly asynchronous. And there is no increase in speed. Rather, the point of this block is to allow starting synchronized but independent scripts.
pt:executa _ em paralelo ca:executa en paral·lel _
de:animiere Setter _ Getter _ Delta _ über _ Sek. beschleunigt _ ca:modifica setter _ i getter _ amb delta _ en _ segons de forma _ pt:anima com modificador _ e inspector _ de _ em _ s de forma _ 501
de:Grad _ ca:graus de _ radians pt:_ radianos em graus 0.5
de:Fehler _ pt:assinala o erro _
de:gleite _ in _ Sek. beschleunigt: _ ca:llisca _ en _ segons de forma _ fr:glisser _ en _ sec. accélérer _ pt:desliza _ em _ s de forma _ 501linearlinear quadratic={ quadratic-in quadratic-out quadratic-in-out } cubic={ cubic-in cubic-out cubic-in-out } quart={ quart-in quart-out quart-in-out } sinusoidal={ sine-in sine-out sine-in-out } elasticend time1000deltaXdeltaY
de:animiere _ um _ in _ Sek. beschleunigt: _ ca:modifica _ amb _ en _ segons de forma _ pt:anima _ de _ em _ s de forma _ x positionx position y position direction size ghost effect color effect saturation effect brightness effect fisheye effect whirl effect pixelate effect mosaic effect negative effect tempo volume balance501linearlinear quadratic={ quadratic-in quadratic-out quadratic-in-out } cubic={ cubic-in cubic-out cubic-in-out } quart={ quart-in quart-out quart-in-out } sinusoidal={ sine-in sine-out sine-in-out } elasticy positiondirectionsizetempovolumebalance1 12
de:Beschleunigung _ ca:de forma _ pt:a forma _ linearlinear quadratic={ quadratic-in quadratic-out quadratic-in-out } cubic={ cubic-in cubic-out cubic-in-out } quart={ quart-in quart-out quart-in-out } sinusoidal={ sine-in sine-out sine-in-out } elasticquadratic-inquadratic-outquadratic-in-outcubic-incubic-outcubic-in-outquart-inquart-outquart-in-outsine-insine-outsine-in-outelasticunknown easing function ""
de:für _ = _ bis _ _ in _ Sek. beschleunigt: _ _ ca:per _ = _ fins _ _ en _ segons de forma _ _ pt:para _ de _ a _ _ em _ s de forma _ _ 01001linearlinear quadratic={ quadratic-in quadratic-out quadratic-in-out } cubic={ cubic-in cubic-out cubic-in-out } quart={ quart-in quart-out quart-in-out } sinusoidal={ sine-in sine-out sine-in-out } elastic
§_costumesMenu2002Use this block to make "clickable" buttons:
de:Kostüm aus Text _ Größe _ pt:um traje com o texto _ de tamanho _ ca:vestit amb el text _ i mida _ A72
Catch errors in a reporter. Evaluates its first input. If that expression successfully reports a value, this block reports that value. If the expression causes a Snap! error, then the final input slot is evaluated with the text of what would have been the error message in variable ERROR. SAFELY TRY then reports the value of that final expression. Sometimes you'll want to throw an error in the final expression. You can put an ERROR block inside a CALL block to do that.
ca:prova de forma segura reportant _ i si _ reportant _ err
err_reseterror
Catch errors. Runs the first script. If it succeeds, nothing else happens. But if it has an error (something that would otherwise result in a red halo around the block), then the second script is run, with the text of the error message that would have been shown in the variable ERROR.
pt:tenta executar _ e, em caso de erro _ , executa _ ca:prova de forma segura _ i si _ _
err_resetcloudid
ca:desa clau: _ amb valor: _ al navegador
ca:dades desades al navegador
ca:esborra clau: _ del navegador
ca:esborra dades del navegador
Reports the value previously stored under the input key in the browser's local storage. Reports False if the key is not found.
ca:obté valor de clau: _ al navegador
1
80100
This block allows you to set the pen's color, transparency (on a scale from 0=opaque to 100=invisible), or size (in pixels). The color can be set in many ways, including RGB values, HSV values, HSL values, fair HSV or HSL (based on a modified spectrum that gives each spectral color equal space and promotes brown to a color), color number, crayon, or X11/W3C color name. See Appendix A in the Snap! Reference Manual for details.
ca:$brush fixa el _ del llapis a _ _ color color number crayon fair hue ~1 size transparency X11/W3C name ~2 (3D color spaces)={ fair HSL={ fair hue fair saturation (HSL) fair lightness fair HSL vector } fair HSV={ fair hue fair saturation (HSV) fair value (brightness) fair HSV vector } HSL={ hue saturation (HSL) lightness HSL vector } HSV={ hue saturation (HSV) value (brightness) HSV vector } RGB (0-255)={ red green blue RGB(A) vector RGB(A) hex } }§_ext_clr_numbersNote to myself: When the user sets a fair dimension, say fair HSL, variable HSL contains the corresponding "unfair" values, and "raw HSL" contains the numbers the user actually gave. It has to be this way because in the case of HSV, there is no "HSV" variable; rather, we use the pen's actual remembered-by-Javascript color's HSV coordinates. So our HSL variable has to be analogous to that. In both cases "raw" means the numbers the user gave us.
1
HSV✐ raw HSL100HSV100
The identity function reports its input.
This block reports the pen size, color, or transparency, in all the same ways that the SET PEN block allows you to set those pen properties. (It will also report the current crayon number, if the pen color was most recently set with SET PEN TO CRAYON.) See Appendix A of the Snap! Reference Manual for details.
ca:$brush _ del llapis color color number crayon fair hue ~1 size transparency X11/W3C name ~2 (3D color spaces)={ fair HSL={ fair hue fair saturation (HSL) fair lightness fair HSL vector } fair HSV={ fair hue fair saturation (HSV) fair value (brightness) fair HSV vector } HSL={ hue saturation (HSL) lightness HSL vector } HSV={ hue saturation (HSV) value (brightness) HSV vector } RGB (0-255)={ red green blue RGB vector RGBA vector RGB(A) hex } }huesaturation (HSV)value (brightness)transparencyRGB vectorRGBA vectorredgreenblueRGB(A) hex1616HSV vectorHSL vectorsaturation (HSL)lightnesscolor numbercolorfair huenot setfair saturation (HSL)not setfair lightnessnot setfair HSL vectornot setfair saturation (HSV)2not setfair value (brightness)3not setfair HSV vectornot setcrayonX11/W3C name
Changes any pen property by the specified amount. Some color scales can't be adjusted this way unless the color was first SET using that scale. Vectors (e.g., RGB color as a list of three numbers) can be incremented by a vector as the amount. X11/W3C names can't be incremented.
ca:$brush augmenta _ del llapis en _ color number crayon fair hue ~1 size transparency ~2 (3D color spaces)={ fair HSL={ fair hue fair saturation (HSL) fair lightness fair HSL vector } fair HSV={ fair hue fair saturation (HSV) fair value (brightness) fair HSV vector } HSL={ hue saturation (HSL) lightness HSL vector } HSV={ hue saturation (HSV) value (brightness) HSV vector } RGB (0-255)={ red green blue RGB vector RGBA vector } }crayonRGB hexI don't know how to handle
pt:lança o erro _
de:fange _ _ ca:agafa _ _ es:atrapar _ _ fr:attrape _ _ pt:captura _ _ cont3
de:wirf _ ca:llança _ es:lanzar _ fr:lance _ pt:lança _ catchtag
de:ignoriere _ ca:ignora _ es:ignorar _ fr:ignore _ pt:ignora _
combines any number of colors, reporting the result of mixing them, either additively (like colored light beams) or subtractively (like paints). If the result is too bright (additive) or too dark (subtractive), try the "averaged" versions, which will make the brightness more like the brightnesses of the input colors.
ca:$brush barreja colors _ amb criteri _ additive (light) additive (averaged) subtractive (ideal) subtractive (averaged) simulated paint paint (sRGB corrected)waveformssum of weightscombined waveformweighted geometric mean of waveformssum of weightscombined waveformTback to RGBT5.47813E-05 0.000184722 0.000935514 0.003096265 0.009507714 0.017351596 0.022073595 0.016353161 0.002002407 -0.016177731 -0.033929391 -0.046158952 -0.06381706 -0.083911194 -0.091832385 -0.08258148 -0.052950086 -0.012727224 0.037413037 0.091701812 0.147964686 0.181542886 0.210684154 0.210058081 0.181312094 0.132064724 0.093723787 0.057159281 0.033469657 0.018235464 0.009298756 0.004023687 0.002068643 0.00109484 0.000454231 0.000255925-4.65552E-05 -0.000157894 -0.000806935 -0.002707449 -0.008477628 -0.016058258 -0.02200529 -0.020027434 -0.011137726 0.003784809 0.022138944 0.038965605 0.063361718 0.095981626 0.126280277 0.148575844 0.149044804 0.14239936 0.122084916 0.09544734 0.067421931 0.035691251 0.01313278 -0.002384996 -0.009409573 -0.009888983 -0.008379513 -0.005606153 -0.003444663 -0.001921041 -0.000995333 -0.000435322 -0.000224537 -0.000118838 -4.93038E-05 -2.77789E-050.00032594 0.001107914 0.005677477 0.01918448 0.060978641 0.121348231 0.184875618 0.208804428 0.197318551 0.147233899 0.091819086 0.046485543 0.022982618 0.00665036 -0.005816014 -0.012450334 -0.015524259 -0.016712927 -0.01570093 -0.013647887 -0.011317812 -0.008077223 -0.005863171 -0.003943485 -0.002490472 -0.001440876 -0.000852895 -0.000458929 -0.000248389 -0.000129773 -6.41985E-05 -2.71982E-05 -1.38913E-05 -7.35203E-06 -3.05024E-06 -1.71858E-06newsRGBRGB vector255addmax255RGB vector
This block reports a color. The color can be set in many ways, including RGB values, HSV values, HSL values, fair HSV or HSL (based on a modified spectrum that gives each spectral color equal space and promotes brown to a color), color number, crayon, or X11/W3C color name. See Appendix A in the Snap! Reference Manual for details.
ca:$brush color amb _ _ _ color color number crayon fair hue X11/W3C name ~ fair HSL=fair HSL vector fair HSV=fair HSV vector HSL=HSL vector HSV=HSV vector RGB (0-255)=RGB vector RGB hex§_ext_clr_numberscolor numbercolor300index15scale1515255fromto122crayon132X11/W3C nameRGB hexcolorRGB vectorHSV vectorHSL vectorfair HSV vectorindex-1scale1index1color100fair HSL vectorindex-1scale1index1color110050
ca:$brush _ del color _ nearest color number crayon number fair hue ~1 transparency X11/W3C name ~2 (3D color spaces)={ fair HSL={ fair hue fair saturation (HSL) fair lightness fair HSL vector } fair HSV={ fair hue fair saturation (HSV) fair value (brightness) fair HSV vector } HSL={ hue saturation (HSL) lightness HSL vector } HSV={ hue saturation (HSV) value (brightness) HSV vector } RGB (0-255)={ red green blue RGB vector RGBA vector RGB hex } }X11/W3C namenearest color numberrgbhslhsvrgbtransparencytransparencyRGB vectorRGBA vectorRGB hexredgreenbluehsvfalseHSV vectorhuesaturation (HSV)value (brightness)hsltrueHSL vectorsaturation (HSL)lightnessHSLlightnessfair lightness310030.9833.333333330.986.9444444516.944444451.96100fair lightnessfair saturation (HSL)210075.9493610075.949366.9444444516.944444451.96100fair saturation (HSL)fair HSL vectorfair lightness310030.9833.333333330.986.9444444516.944444458.823529100fair lightnessfair saturation (HSL)210075.9493610075.949366.9444444516.944444458.823529100fair saturation (HSL)fair HSL vectorfair hue11111111fair huefair saturation (HSL)fair lightnessfair HSL vectorbrownfair value (brightness)310054.5166.66666666754.516.9444444516.944444451.96100fair value (brightness)fair saturation (HSV)210086.3310086.336.9444444516.944444451.96100fair saturation (HSV)fair HSV vectorfair value (brightness)310054.5166.66666666754.516.9444444516.944444451.96100fair value (brightness)fair saturation (HSV)210086.3310086.336.9444444516.944444451.96100fair saturation (HSV)fair HSV vectorfair hue11111111fair huefair saturation (HSV)fair value (brightness)fair HSV vectorbrownfair somethingCan't get here -- please post project and screenshot to forum.
This block reports the pen color (as a color, not as a list of numbers).
ca:✐ color de llapis actual
de:fange _ _ ca:agafa _ _ es:atrapar _ _ fr:attrape _ _ pt:captura _ _ cont
de:wirf _ _ ca:llança _ _ es:lanzar _ _ fr:lance _ _ pt:lança _ _ catchtag
Sets the pen color to one of 100 preselected colors, like a box of 100 crayons. The colors have names that are meant to be evocative. They are organized in families, more or less corresponding to spectral (rainbow) colors; the input slot has a two-level menu in which you can hover over a family name to see the colors of that family, each including a crayon number and an RGB value. See Appendix A of the Snap! Reference Manual for more details.
ca:✐ fixa el llapis de color _ _ grays={ 0 black #000000=0 1 gray7 #121212=1 2 gray14 #242424=2 3 gray21 #363636=3 4 gray28 #484848=4 5 gray36 #5c5c5c=5 6 gray43 #6d6d6d=6 7 gray50 #7f7f7f=7 8 gray57 #919191=8 9 gray64 #a3a3a3=9 10 gray71 #b5b5b5=10 11 gray78 #c8c8c8=11 12 gray85 #dadada=12 13 gray92 #ececec=13 14 white #ffffff=14 } pinks={ 15 deep pink #ff1493=15 16 hot pink #ff69b4=16 17 bright pink #ff007f=17 18 raspberry #e30b5d=18 19 amaranth #e52b50=19 } reds={ 20 red #ff0000=20 21 burgundy #900020=21 22 cherry #990000=22 23 dark candy apple red #a40000=23 24 sanguine #c00000=24 25 maroon #800000=25 26 crimson #c90016=26 27 Lists #d94d11=27 28 candy apple red #ff0800=28 29 coquelicot #ff3800=29 } browns={ 30 saddle brown #8b4513=30 31 chocolate #7b3f00=31 32 kobicha #6b4423=32 33 sepia #704214=33 34 chestnut #954535=34 35 dark brown #654321=35 36 brown #964b00=36 37 golden brown #996515=37 38 cinnamon #b87333=38 39 copper #d2691e=39 } oranges={ 40 orange #ff7f00=40 41 Pantone orange #ff5800=41 42 pumpkin #ff7518=42 43 Variables #f3761d=43 44 Spanish orange #e86100=44 45 burnt orange #cc5500=45 46 sinopia #cb410b=46 47 ochre #cc7722=47 48 carrot #ed9121=48 49 tangerine #f28500=49 } yellows={ 50 yellow #ffff00=50 51 Control #e6a822=51 52 dark goldenrod #b8860b=52 53 goldenrod #daa520=53 54 saffron #f4c430=54 55 sandstorm #ecd540=55 56 mustard #ffdb58=56 57 gold #ffd700=57 58 egg yolk #fee33e=58 59 rubber duck #fbe108=59 } greens={ 60 lime #00ff00=60 61 apple green #8db600=61 62 Operators #62c213=62 63 forest green #228b22=63 64 green #008000=64 65 dark green #006400=65 66 dark pastel green #03c03c=66 67 emerald #50c878=67 68 mint #3eb489=68 69 Pen #00a178=69 } cyans={ 70 aqua (cyan) #00ffff=70 71 dark cyan #008b8b=71 72 cerulean #007ba7=72 73 iceberg #71a6d2=73 74 Sensing #0494dc=74 75 teal #008080=75 76 light sky blue #87cefa=76 77 deep sky blue #00bfff=77 78 dodger blue #1e90ff=78 79 azure #007fff=79 } blues={ 80 blue #0000ff=80 81 midnight blue #191970=81 82 dark powder blue #003399=82 83 cobalt #0047ab=83 84 denim #1560bd=84 85 navy blue #000080=85 86 steel blue #4682b4=86 87 Motion #4a6cd4=87 88 cornflower #6495ed=88 89 slate blue #6a5acd=89 } purples={ 90 violet #8000ff=90 91 Looks #8f56e3=91 92 grape #6f2da8=92 93 indigo #4b0082=93 94 x11 purple #a020f0=94 95 magenta (fuchia) #ff00ff=95 96 dark orchid #9932cc=96 97 Sound #cf4ad9=97 98 purple #7f007f=98 99 dark magenta #8b008b=99 }✐ last set ascrayon✐ fair?false1231
Takes three inputs for red, green, and blue values, each between 0 and 255. 0,0,0 is black; 255,255,255 is white. 255,255,0 is yellow, and so on. The SET PEN block in this library lets you set individual red, green, or blue without changing the others, lets you provide a list of three RGB color components, and lets you provide a six-digit hexadecimal number, the form in which RGB color values are usually found online. See Appendix A of the Snap! Reference Manual for details.
pt:altera a cor da tua caneta para vermelho _ , verde _ e azul _ (0 a 255) ca:fixa el llapis al color r: _ g: _ b: _ 25500
Takes three inputs for hue, saturation, and value ("brightness") values, each between 0 and 1. 0,0,0 is black; 0,0,1 is white. 0.15,1,1 is yellow, and so on. The SET PEN block in this library lets you set individual hue, saturation, or value without changing the others, lets you provide a list of three HSV color components, and lets you use the very much superior HSL (hue, saturation, lightness) color space. See Appendix A of the Snap! Reference Manual for details.
pt:altera a cor da caneta para matiz _ , saturação _ e brilho _ (0 a 1) ca:fixa el llapis al color h: _ s: _ v: _ 0.30.70.6
Reports the current pen color as a list of three RGB values in the range 0-255. The PEN block in this library provides a large set of ways to examine the color. See Appendix A in the Snap! Reference Manual for details.
pt:a cor da caneta em RGB (vermelho, verde e azul; 0 a 255)
Reports the current pen color as a list of three HSV values in the range 0-1. See Appendix A in the Snap! Reference Manual for details.
pt:a cor da caneta em HSV (matiz, saturação e brilho, 0 a 1)
Takes a value from 0 to 15 and reports the corresponding hexadecimal digit. For internal use of the color library.
Don't ask. Only for internal use by the SET PEN block.
truetrue
Creates a bunch of global variables. For internal use by Color library.
global✐ last set as✐ fair?✐ color scale✐ HSL✐ last crayon✐ last X11✐ raw HSL✐ raw HSV✐ X11✐ crayon colors✐ fair hue table✐ colors✐ brights✐ pivots✐ HSV brights✐ HSL brights✐ HSV colors✐ HSL colors✐ X11 catch✐ dimension names✐ dimension dispatch✐ last set asRGB✐ fair?false✐ raw HSV0100100✐ HSL010050✐ raw HSL010050
not a crayon
not an X11 color
11000hues1fair hues00hue101100021000✐ fair hue table10
11
1
smallest componentrgb255
smallest component2rgb255
2Red family8.7Brown/orange family17yellow501427.7522.334green52cyan67blue83.33333333purple9550505left of black
falsehue603.61001003.6100100
hue mod 100, other components cut off at [0, 100]
value100color3.6index1index-1scale1255fromto1newHSVHSL✐ fair?true
color300index15scale15grayscale15255fromto121✐ last set ascolor number✐ fair?true✐ raw HSL10050✐ raw HSV100100
015866161216341656✐ last set asRGB✐ fair?false1
44partial matchestrue4matchhead matchestrueSUBSET throws here if it handles a unique match1
44partial matchesfalse4matchhead matchesfalseSUBSET throws here if it handles a unique match2
015866161216341656
fair hue transparency ~2 (3D color spaces)={ fair HSL={ fair hue fair saturation (HSL) fair lightness } fair HSV={ fair hue fair saturation (HSV) fair value (brightness) } HSL={ hue saturation (HSL) lightness } HSV={ hue saturation (HSV) value (brightness) } RGB (0-255)={ red green blue } }255100We have to do this last test to rule out the vector options, which aren't numbers; their code makes three recursive calls and we catch range issues then.huesaturation (HSV)value (brightness)saturation (HSL)lightnesstransparencyredgreenbluefair huefair saturation (HSV)fair value (brightness)fair saturation (HSL)fair lightness
✐ last set asHSL33✐ fair?false1
✐ last set asRGB✐ fair?false
✐ last set asRGB✐ fair?false
✐ last set asRGB✐ fair?false
✐ last set asRGB✐ fair?false
0
4value0255131✐ last set asRGB✐ fair?false
✐ last set asHSL22✐ fair?false1
✐ last set asHSL✐ HSL11000100✐ raw HSL✐ fair?false1
✐ last set asHSV✐ fair?false✐ raw HSV1310031
100if USED TO BE fairHSL✐ fair?false1
✐ last set asHSL2222✐ fair?true1
✐ last set asHSL3333✐ fair?true1
2313
22✐ last set asHSV✐ fair?true1
33✐ last set asHSV✐ fair?true1
23131
pt:o texto multilinha _
Reports the part of the first string up to the first instance of the second string inside it. If the second string isn't found, reports the entire first string.
pt:o texto de _ antes de _
Reports the portion of the first input string starting after the first occurrence of the second string. If the second string isn't found in the first string, reports an empty string.
pt:o texto de _ depois de _
Reports the character position (starting from 1) of the beginning of the first input string inside the second input string. If it's not found, reports 0.
pt:a posição de _ em _
If input is TRUE, comparisons made by functions in the string library will be case-independent (so "FOO" = "foo"). This is the default. If input is FALSE, comparisons will be exact.
pt:altera comparações ignorando distinção minúsculas/maiúsculas para _
Reports the portion of the first input (string) starting at the position given by the second input (counting from 1, like LETTER n OF) and ending at the position given by the third input (also counting from 1). If the third input is empty, reports the portion from the first position to the end of the string. If a position number is negative, counts from the end backward, so -1 is the last character, -2 is the next to last, etc.
pt:o texto de _ entre as posições _ e _ , inclusive
Reports True if the first input string contains the second input string, otherwise false. Comparison is case-independent by default; use USE CASE-INDEPENDENT COMPARISONS to change that.
pt:o texto de _ antes de _
Reports the input text with lower case letters instead of capital letters in the input. Uses the user's locale's rules for case conversion.
pt:em minúsculas _
err_reset
This block creates new variables on the selected scope: global (for all sprites), sprite (for this sprite only) or script (only for that blocks stack) with the names given (in 'names' list). If there is already a variable with that name in that scope, it does nothing: no errors and no overwrites.
pt:cria as variáveis _ _ ca:crea les _ variables _ es:crear las _ variables _ de:erstellen _ var _ globalglobal sprite script
This block reports "true" if there is a variable with this given name (input slot) in that context. It can be a global, sprite or script variable. Otherwise it reports "false".
pt:a variável _ existe ca:existeix la variable _ ? es:existe la variable _ ? de:existiert var _ ? err_reset
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==likedpostsERROR: File does not existusername21-snapblogpagesnapblogglobal-modefalselightdarkloadedfirst lololololol,"13:36, 5/23/2022"calculator-1301Username,calculatorLight Mode HSV7,5,100Dark Mode HSV255,20,20Light Mode Text HSV255,20,20Dark Mode Text HSV12,10,100light071calculator-snapblogpage8,7,0,2,3,0,0,0,,001