kopia lustrzana https://github.com/backface/turtlestitch
120 wiersze
14 KiB
XML
120 wiersze
14 KiB
XML
<blocks app="Snap! 4.1, http://snap.berkeley.edu" version="1"><block-definition s="multiline %'text'" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%code"></input></inputs><script><block s="doReport"><block var="text"/></block></script></block-definition><block-definition s="set pen to crayon %'which'" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n"><options>grays={
|
|
0 black #000000=0
|
|
1 gray7 #121212=1
|
|
2 gray14 #242424=2
|
|
3 gray21 #363636=3
|
|
4 gray28 #484848=4
|
|
5 gray36 #5b5b5b=5
|
|
6 gray43 #6d6d6d=6
|
|
7 gray50 #7f7f7f=7
|
|
8 gray57 #919191=8
|
|
9 gray64 #a3a3a3=9
|
|
10 gray71 #b6b6b6=10
|
|
11 gray78 #c8c8c8=11
|
|
12 gray85 #dadada=12
|
|
13 gray92 #ececec=13
|
|
14 white #ffffff=14
|
|
}
|
|
pinks={
|
|
15 deep pink #ff1493=15
|
|
16 amaranth #e52b50=16
|
|
17 bright pink #ff007f=17
|
|
18 hot pink #ff69b4=18
|
|
19 raspberry #e30b5d=19
|
|
}
|
|
reds={
|
|
20 red #ff0000=20
|
|
21 candy apple red #ff0800=21
|
|
22 dark candy apple red #a40000=22
|
|
23 sanguine #c00000=23
|
|
24 currant #f31112=24
|
|
25 firebrick #b22222=25
|
|
26 cherry #990000=26
|
|
27 crimson #c90016=27
|
|
28 coquelicot #ff3800=28
|
|
29 burgundy #900020=29
|
|
}
|
|
browns={
|
|
30 saddle brown #8b4513=30
|
|
31 copper #b87333=31
|
|
32 golden brown #996515=32
|
|
33 brown #964b00=33
|
|
34 sepia #704214=34
|
|
35 maroon #800000=35
|
|
36 chocolate #d2691e=36
|
|
37 cinnamon #7b3f00=37
|
|
38 chestnut #954535=38
|
|
39 kobicha #6b4423=39
|
|
}
|
|
oranges={
|
|
40 orange #ff7f00=40
|
|
41 pumpkin #ff7518=41
|
|
42 ochre #cc7722=42
|
|
43 dark orange ff8c00=43
|
|
44 tangerine #f28500=44
|
|
45 burnt orange #cc5500=45
|
|
46 web orange #ffa500=46
|
|
47 Pantone orange #ff5800=47
|
|
48 Spanish orange #e86100=48
|
|
49 carrot #ed9121=49
|
|
}
|
|
yellows={
|
|
50 yellow #ffff00=50
|
|
51 saffron #f4c430=51
|
|
52 sandstorm #ecd540=52
|
|
53 canary #ffef00=53
|
|
54 egg yolk #fee33e=54
|
|
55 rubber duck #fbe108=55
|
|
56 dark goldenrod #b8860b=56
|
|
57 goldenrod #daa520=57
|
|
58 gold #ffd700=58
|
|
59 mustard #ffdb58=59
|
|
}
|
|
greens={
|
|
60 lime #00ff00=60
|
|
61 emerald #50c878=61
|
|
62 dark pastel green #03c03c=62
|
|
63 forest green #228b22=63
|
|
64 green 008000=64
|
|
65 dark green 006400=65
|
|
66 mint #3eb489=66
|
|
67 sea green #2e8b57=67
|
|
68 apple green #8db600=68
|
|
69 bright green #66ff00=69
|
|
}
|
|
cyans={
|
|
70 aqua (cyan) #00ffff=70
|
|
71 iceberg #71a6d2=71
|
|
72 cadet blue #5f9ea0=72
|
|
73 cerulean #007ba7=73
|
|
74 dark cyan #008b8b=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 steel blue #4682b4=81
|
|
82 royal blue #4169e1=82
|
|
83 cobalt #0047ab=83
|
|
84 dark powder blue #003399=84
|
|
85 navy blue #000080=85
|
|
86 midnight blue #191970=86
|
|
87 slate blue #6a5acd=87
|
|
88 denim #1560bd=88
|
|
89 cornflower #6495ed=89
|
|
}
|
|
violets={
|
|
90 violet #8f00ff=90
|
|
91 blue violet #8a2be2=91
|
|
92 x11 purple #a020f0=92
|
|
93 dark orchid #9932cc=93
|
|
94 indigo #4b0082=94
|
|
95 magenta (fuchia) #ff00ff=95
|
|
96 web violet #ee82ee=96
|
|
97 dark magenta #8b008b=97
|
|
98 purple #7f007f=98
|
|
99 grape #6f2da8=99
|
|
}</options></input></inputs><script><block s="doDeclareVariables"><list><l>colors</l><l>color</l></list></block><block s="doSetVar"><l>colors</l><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportTextSplit"><l></l><l>,</l></block></autolambda><list></list></block><list><block s="reportTextSplit"><custom-block s="multiline %code"><l>0,0,0
18,18,18
36,36,36
54,54,54
72,72,72
91,91,91
109,109,109
127,127,127
145,145,145
163,163,163
182,182,182
200,200,200
218,218,218
236,236,236
255,255,255
255,20,147
229,43,80
255,0,127
255,105,180
227,11,93
255,0,0
255,8,0
164,0,0
192,0,0
243,17,18
178,34,34
153,0,0
201,0,22
255,56,0
144,0,32
139,69,19
184,115,51
153,101,21
150,75,0
112,66,20
128,0,0
123,63,0
210,105,30
149,69,53
107,68,35
255,127,0
255,117,24
204,119,34
255,140,0
242,133,0
204,85,0
255,165,0
255,88,0
232,97,0
237,145,33
255,255,0
244,196,48
236,213,64
255,239,0
254,227,62
251,225,8
184,134,11
218,165,32
255,215,0
255,219,88
0,255,0
80,200,120
3,192,60
34,139,34
0,128,0
0,100,0
62,180,137
46,139,87
141,182,0
102,255,0
0,255,255
113,166,210
95,158,160
0,123,167
0,139,139
0,128,128
135,206,250
0,191,255
30,144,255
0,127,255
0,0,255
70,130,180
65,105,225
0,71,171
0,51,153
0,0,128
25,25,112
106,90,205
21,96,189
100,149,237
143,0,255
138,43,226
160,32,240
153,50,204
75,0,130
255,0,255
238,130,238
139,0,139
127,0,127
111,45,168</l></custom-block><l><option>line</option></l></block></list></custom-block></block><block s="doSetVar"><l>color</l><block s="reportListItem"><block s="reportSum"><block s="reportModulus"><block var="which"/><l>100</l></block><l>1</l></block><block var="colors"/></block></block><custom-block s="set pen color to r: %n g: %n b: %n"><block s="reportListItem"><l>1</l><block var="color"/></block><block s="reportListItem"><l>2</l><block var="color"/></block><block s="reportListItem"><l>3</l><block var="color"/></block></custom-block></script></block-definition><block-definition s="nearest crayon to %'old color'" type="reporter" category="pen"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>colors</l><l>min value</l><l>min index</l><l>index</l><l>distance</l><l>color</l></list></block><block s="doSetVar"><l>min value</l><l>1000</l></block><block s="doSetVar"><l>min index</l><l>-1</l></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doSetVar"><l>colors</l><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportTextSplit"><l></l><l>,</l></block></autolambda><list></list></block><list><block s="reportTextSplit"><custom-block s="multiline %code"><l>0,0,0
18,18,18
36,36,36
54,54,54
72,72,72
91,91,91
109,109,109
127,127,127
145,145,145
163,163,163
182,182,182
200,200,200
218,218,218
236,236,236
255,255,255
255,20,147
229,43,80
255,0,127
255,105,180
227,11,93
255,0,0
255,8,0
164,0,0
192,0,0
243,17,18
178,34,34
153,0,0
201,0,22
255,56,0
144,0,32
139,69,19
184,115,51
153,101,21
150,75,0
112,66,20
128,0,0
123,63,0
210,105,30
149,69,53
107,68,35
255,127,0
255,117,24
204,119,34
255,140,0
242,133,0
204,85,0
255,165,0
255,88,0
232,97,0
237,145,33
255,255,0
244,196,48
236,213,64
255,239,0
254,227,62
251,225,8
184,134,11
218,165,32
255,215,0
255,219,88
0,255,0
80,200,120
3,192,60
34,139,34
0,128,0
0,100,0
62,180,137
46,139,87
141,182,0
102,255,0
0,255,255
113,166,210
95,158,160
0,123,167
0,139,139
0,128,128
135,206,250
0,191,255
30,144,255
0,127,255
0,0,255
70,130,180
65,105,225
0,71,171
0,51,153
0,0,128
25,25,112
106,90,205
21,96,189
100,149,237
143,0,255
138,43,226
160,32,240
153,50,204
75,0,130
255,0,255
238,130,238
139,0,139
127,0,127
111,45,168</l></custom-block><l><option>line</option></l></block></list></custom-block></block><block s="doWarp"><script><block s="doRepeat"><l>100</l><script><block s="doSetVar"><l>color</l><block s="reportListItem"><block var="index"/><block var="colors"/></block></block><block s="doIf"><block s="reportEquals"><block var="color"/><block var="old color"/></block><script><block s="doReport"><block s="reportDifference"><block var="index"/><l>1</l></block></block></script></block><block s="doSetVar"><l>distance</l><block s="reportSum"><block s="reportMonadic"><l><option>abs</option></l><block s="reportDifference"><block s="reportListItem"><l>1</l><block var="color"/></block><block s="reportListItem"><l>1</l><block var="old color"/></block></block></block><block s="reportSum"><block s="reportMonadic"><l><option>abs</option></l><block s="reportDifference"><block s="reportListItem"><l>2</l><block var="color"/></block><block s="reportListItem"><l>2</l><block var="old color"/></block></block></block><block s="reportMonadic"><l><option>abs</option></l><block s="reportDifference"><block s="reportListItem"><l>3</l><block var="color"/></block><block s="reportListItem"><l>3</l><block var="old color"/></block></block></block></block></block></block><block s="doIf"><block s="reportLessThan"><block var="distance"/><block var="min value"/></block><script><block s="doSetVar"><l>min value</l><block var="distance"/></block><block s="doSetVar"><l>min index</l><block var="index"/></block></script></block><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doReport"><block s="reportDifference"><block var="min index"/><l>1</l></block></block></script></block></script></block-definition><block-definition s="set pen color to r: %'r' g: %'g' b: %'b'" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n">255</input><input type="%n">0</input><input type="%n">0</input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>r</l><l>g</l><l>b</l></list><l>this.setColor(new Color(r, g, b));</l></block><list><block var="r"/><block var="g"/><block var="b"/></list></block></script></block-definition><block-definition s="RGB color" type="reporter" category="pen"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="evaluate"><block s="reportJSFunction"><list><l></l></list><l>return new List([this.color.r, this.color.g, this.color.b]);</l></block><list></list></block></block></script></block-definition><block-definition s="change crayon by %'diff'" type="command" category="pen"><header></header><code></code><translations></translations><inputs><input type="%n"></input></inputs><script><custom-block s="set pen to crayon %n"><block s="reportSum"><custom-block s="nearest crayon to %l"><custom-block s="RGB color"></custom-block></custom-block><block var="diff"/></block></custom-block></script></block-definition><block-definition s="map %'func' over %'data'" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block var="data"/></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="func"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><custom-block s="map %repRing over %l"><block var="func"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script></block-definition><block-definition s="map %'function' over %'lists'" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%mult%l"></input></inputs><script><block s="doWarp"><script><block s="doDeclareVariables"><list><l>mapone</l><l>mapmany</l></list></block><block s="doSetVar"><l>mapone</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="evaluate"><block var="mapone"/><list><block s="reportCDR"><block var="data"/></block></list></block></block></block></script><list><l>data</l></list></block></block><block s="doSetVar"><l>mapmany</l><block s="reifyScript"><script><block s="doIf"><custom-block s="empty? %l"><block var="data lists"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="function"/><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportListItem"><l>1</l><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></block><block s="evaluate"><block var="mapmany"/><list><custom-block s="map %repRing over %mult%l"><block s="reifyReporter"><autolambda><block s="reportCDR"><l/></block></autolambda><list></list></block><list><block var="data lists"/></list></custom-block></list></block></block></block></script><list><l>data lists</l></list></block></block><block s="doIfElse"><custom-block s="empty? %l"><block s="reportCDR"><block var="lists"/></block></custom-block><script><block s="doReport"><block s="evaluate"><block var="mapone"/><list><block s="reportListItem"><l>1</l><block var="lists"/></block></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="mapmany"/><list><block var="lists"/></list></block></block></script></block></script></block></script></block-definition><block-definition s="empty? %'data'" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportEquals"><block var="data"/><block s="reportNewList"><list></list></block></block></block></script></block-definition></blocks> |