Etc.
But what you should actually do is add another column in the pentomino list that says the costume name you want to change this to and then use switch to costume (item (4) of (item)) in the for loop.
I think I am going to try this instead - create a new csv file and replace all of the pentomino letters with the costume names. Another way to go would be go back in time and start with costume names that are the pentomino letters..
read in a file of a "manually solved" 5x4 shown as the variable Solution1 on my project stage. Rows 7-11, Cols B-E
change the letter pentomino representations to the tile names
write the tile names into Row2 Cols A-T
I am having difficulty understanding how to go about this. I can see that when I change Solution1 view to list view I get a list of 11 lists. The 11 lists now contain the row data of each row of my original Solutions1.csv.
I have not been able to figure out how to leverage this lovely and verbose data structure to do items 1,2,3 of "What I would like to do next is"
I have looked through the current manual and searched online for examples. Still stuck.
I loaded the Datascience library and watched some of Jens M.'s YouTube. I am interested in working closer to the fundamentals of how a beginner would learn to use lists.
Big picture - I am an after school STEM/Art educator and the kids like the puzzles and have experience programming in Scratch. I am trying to develop a a suite of mathematical activities ranging from building physical block puzzles to using computer applications like google sheets to view/record/understand data to writing programs in SNAP! to solve the puzzles.
I know it is rather a big ask to request step by step help to develop this using the SNAP! Forum.
Not finding the right talent fit on Upwork to do this. I can pay
It’s been a while since we’ve seen edvogel56 — their last post was 3 years ago.
Wow, that's when I joined!
Anyways, I recommended using clones instead of individual sprites, but that's not what you asked for.
You could do
if <(item (((2) + (item (2 v) of (split((ask [Sprite1 v] for ((my [name V]) @addInput::gray ring) @addInput::control)) by [Sprite v])))) of (items)) = [F]> {
switch to costume [Buck Tile V]
} @addInput
Or even better
script variables (the item)
set [the item V] to (item (((2) + (item (2 v) of (split((ask [Sprite1 v] for ((my [name V]) @addInput::gray ring) @addInput::control)) by [Sprite v])))) of (items))
if <(the item) = [F]> {
switch to costume [Buck Tile V]
}
etc..
why not just use the set/get variables library, and set (if <(split (item (1) of (split (item (1) of (item)) by [ v]))by [letter v]) contains [/]> then (join input list: (all but first of (split (item (1) of (split (item (1) of (item)) by [ v]))by [letter v]))) else (item (1) of (split (item (1) of (item)) by [ v])))to <not <(split (item (1) of (split (item (1) of (item)) by [ v]))by [letter v])contains [/]>>
script variables ((tag)) ((closing)) @delInput @addInput
set [tag V] to (item (1) of (split (item) by [ v]))
set [closing V] to <(item (1) of (split (tag) by [letter v])) = [/]>
if (closing) {
set [tag V] to (join input list: (all but first of (split (tag) by [letter v])))
}@addInput
set (tag) to <not (closing)> //from the create variables library
Oh, it's not supposed to be off center (and I don't know why it is). I'll be fixing that in the next snapblocks update. I also noticed the issue when I wrote that reply, I just never said anything.