Discuss Scratch

Lego-Lovin-Program
Scratcher
1000+ posts

Advanced Programming Session #2

Advanced Programming

To Join
To join, please apply here

Studio

Lessons
Lesson 1
Lesson 2
Lesson 3
Lesson 4
Lesson 5
Lesson 6

Students

@Melrose123
@gio_w_
@asho2005
@jasmynb2
@veleanor
@Boxycloud
@Casito64

Taught by @Lego-Lovin-Program

Last edited by Lego-Lovin-Program (Feb. 4, 2016 01:17:07)



Credit to Sigton for the signature, ordered at Sigton's Shop


Click to edit your signature!
Lego-Lovin-Program
Scratcher
1000+ posts

Advanced Programming Session #2

Lesson 1

Lesson: Smooth Movement
In this lesson you will learn about making smooth movement from one place to another. To do so, you will need to use a
glide () secs to x: (0) y: (0)
block. Also, you will need to find the distance from the beginning position to the end position. That is a very complex system, but it is, nonetheless, possible. You will also need a basic understanding of advanced math, or at least understand Pythagora's Theorem, which is: “a^2 = b^2 + c^2”. To find “A”, or the diagonal route, you would need to use this equation: “a = sqrt(b*b + c*c)”. You can transfer this into the scratch editor by using inputs from the "operators" category. To truly make it smooth, you also need to make sure that it isn't quicker or slower moving, depending on how far it is going. To be able to do that, you will need to make the glide last for a certain amount of time based off of how much space it needs to travel. I would reccommend using 0.01 seconds per unit, but it doesn't really matter, as long as it isn't 0, and is less than 0.025

Assignment
Your assignment is to make a project where you can smoothly move a sprite from one place to another, using the methods you have just learned. Don't forget to make the glide time dependent! If you need any help, or do not understand the assignment, feel free to ask, or look at the example project here. When you are finished with the assignment, share the project, and put it in the studio. You will get a grade based on your application of the methods you have learned. I will be using the letter grading scale, with 10 point intervals. The assignment is due on Wednesday, February 10th

Student Statuses:
@Melrose123 - Not Submitted
@gio_w_ - Not Submitted
@asho2005 - Not Submitted
@jasmynb2 - Not Submitted
@veleanor - Graded
@Boxycloud - Graded
@Casito64 - Graded

Back to top

Last edited by Lego-Lovin-Program (Feb. 10, 2016 01:17:48)



Credit to Sigton for the signature, ordered at Sigton's Shop


Click to edit your signature!
Lego-Lovin-Program
Scratcher
1000+ posts

Advanced Programming Session #2

Lesson 2

Coming soon, stay tuned for updates!

Back to top

Last edited by Lego-Lovin-Program (Feb. 4, 2016 01:14:15)



Credit to Sigton for the signature, ordered at Sigton's Shop


Click to edit your signature!
Lego-Lovin-Program
Scratcher
1000+ posts

Advanced Programming Session #2

\Lesson 3

Lesson: List Manipulation
I this lesson, you will learn about list manipulation, and a few of it's uses. List manipulation is either using inputs from one list to gain information from another list. To be able to do that, first you will need to scan the list. Typically, you will need two variables. One will stay as an integer, while the other will be what you are looking for. A basic scanning script will look like this:
when I receive [scan v]
if <[list v] contains (what we are looking for)> then
repeat until <(item (number) of [ list v]) = (what we are looking for) >
change [number v] by (1)
end
end
It may need to be changed based on the type, but it should work for almost every situation. After you do a scan, the rest is basic. The information should be in the “number” variable's entry in the information list.

The other kind of list manipulation is changing/editing the lists. For this, you will still need a scanning script, and then use the “number” variable to delete or edit the specific list option. When deleting, remember to delete from all related lists, not just one, or else information will get misaligned.

Assignment: Dictionary
As a student, you will be tasked with making a dictionary with a few rules:
  • Must have 5 entries (5 points)
  • Must be able to add/delete words (10 points*)
  • Retrieve the definition of a word (10 points*)
  • Must be able to edit definitions (10 points*)
  • Words must be appropriate for Scratch (5 points)
  • Must use methods stated in lesson 3 to prove understanding (10 points*)
  • Must be submitted by Friday, March 25th, 2016 (15 points)
*A proper attempt will count as 5 points
(This assignment will be out of 65 points. You will then get a percent and letter grade based off of this)

Back to top

Last edited by Lego-Lovin-Program (March 12, 2016 02:00:03)



Credit to Sigton for the signature, ordered at Sigton's Shop


Click to edit your signature!
Lego-Lovin-Program
Scratcher
1000+ posts

Advanced Programming Session #2

Lesson 4

Coming soon, stay tuned for updates!

Back to top

Last edited by Lego-Lovin-Program (Feb. 4, 2016 01:14:18)



Credit to Sigton for the signature, ordered at Sigton's Shop


Click to edit your signature!
Lego-Lovin-Program
Scratcher
1000+ posts

Advanced Programming Session #2

Lesson 5

Coming soon, stay tuned for updates!

Back to top

Last edited by Lego-Lovin-Program (Feb. 4, 2016 01:14:11)



Credit to Sigton for the signature, ordered at Sigton's Shop


Click to edit your signature!
Lego-Lovin-Program
Scratcher
1000+ posts

Advanced Programming Session #2

Lesson 6

Coming soon, stay tuned for updates!

Back to top


Credit to Sigton for the signature, ordered at Sigton's Shop


Click to edit your signature!
Boxycloud
Scratcher
72 posts

Advanced Programming Session #2

Lego-Lovin-Program wrote:

Lesson 1

Lesson: Smooth Movement
In this lesson you will learn about making smooth movement from one place to another. To do so, you will need to use a
glide () secs to x: (0) y: (0)
block. Also, you will need to find the distance from the beginning position to the end position. That is a very complex system, but it is, nonetheless, possible. You will also need a basic understanding of advanced math, or at least understand Pythagora's Theorem, which is: “a^2 = b^2 + c^2”. To find “A”, or the diagonal route, you would need to use this equation: “a = sqrt(b*b + c*c)”. You can transfer this into the scratch editor by using inputs from the "operators" category. To truly make it smooth, you also need to make sure that it isn't quicker or slower moving, depending on how far it is going. To be able to do that, you will need to make the glide last for a certain amount of time based off of how much space it needs to travel. I would reccommend using 0.01 seconds per unit, but it doesn't really matter, as long as it isn't 0, and is less than 0.025

Assignment
Your assignment is to make a project where you can smoothly move a sprite from one place to another, using the methods you have just learned. Don't forget to make the glide time dependent! If you need any help, or do not understand the assignment, feel free to ask, or look at the example project here. When you are finished with the assignment, share the project, and put it in the studio. You will get a grade based on your application of the methods you have learned. I will be using the letter grading scale, with 10 point intervals. The assignment is due on Wednesday, February 10th

Student Statuses:
@Melrose123 - Not Submitted
@gio_w_ - Not Submitted
@asho2005 - Not Submitted
@jasmynb2 - Not Submitted
@veleanor - Not Submitted
@Boxycloud - Not Submitted
@Casito64 - Not Submitted

Back to top
Hey, im not really the age to know advanced math, and from what i could tell were trying to make a script that litterly glides to a area instead of just walking to the spot?

Lego-Lovin-Program
Scratcher
1000+ posts

Advanced Programming Session #2

Boxycloud wrote:

Lego-Lovin-Program wrote:

Lesson 1

Lesson: Smooth Movement
In this lesson you will learn about making smooth movement from one place to another. To do so, you will need to use a
glide () secs to x: (0) y: (0)
block. Also, you will need to find the distance from the beginning position to the end position. That is a very complex system, but it is, nonetheless, possible. You will also need a basic understanding of advanced math, or at least understand Pythagora's Theorem, which is: “a^2 = b^2 + c^2”. To find “A”, or the diagonal route, you would need to use this equation: “a = sqrt(b*b + c*c)”. You can transfer this into the scratch editor by using inputs from the "operators" category. To truly make it smooth, you also need to make sure that it isn't quicker or slower moving, depending on how far it is going. To be able to do that, you will need to make the glide last for a certain amount of time based off of how much space it needs to travel. I would reccommend using 0.01 seconds per unit, but it doesn't really matter, as long as it isn't 0, and is less than 0.025

Assignment
Your assignment is to make a project where you can smoothly move a sprite from one place to another, using the methods you have just learned. Don't forget to make the glide time dependent! If you need any help, or do not understand the assignment, feel free to ask, or look at the example project here. When you are finished with the assignment, share the project, and put it in the studio. You will get a grade based on your application of the methods you have learned. I will be using the letter grading scale, with 10 point intervals. The assignment is due on Wednesday, February 10th

Student Statuses:
@Melrose123 - Not Submitted
@gio_w_ - Not Submitted
@asho2005 - Not Submitted
@jasmynb2 - Not Submitted
@veleanor - Not Submitted
@Boxycloud - Not Submitted
@Casito64 - Not Submitted

Back to top
Hey, im not really the age to know advanced math, and from what i could tell were trying to make a script that litterly glides to a area instead of just walking to the spot?
Okay. I can help you more with the math part, and yes, we are making a smooth glide. That means it changes the time it takes depending on how far it is going.


Credit to Sigton for the signature, ordered at Sigton's Shop


Click to edit your signature!
asho2005
Scratcher
100+ posts

Advanced Programming Session #2

Lego-Lovin-Program wrote:

\Lesson 3

Lesson: List Manipulation
I this lesson, you will learn about list manipulation, and a few of it's uses. List manipulation is either using inputs from one list to gain information from another list. To be able to do that, first you will need to scan the list. Typically, you will need two variables. One will stay as an integer, while the other will be what you are looking for. A basic scanning script will look like this:
when I receive [scan v]
if <[list v] contains (what we are looking for)> then
repeat until <(item (number) of [ list v]) = (what we are looking for) >
change [number v] by (1)
end
end
It may need to be changed based on the type, but it should work for almost every situation. After you do a scan, the rest is basic. The information should be in the “number” variable's entry in the information list.

The other kind of list manipulation is changing/editing the lists. For this, you will still need a scanning script, and then use the “number” variable to delete or edit the specific list option. When deleting, remember to delete from all related lists, not just one, or else information will get misaligned.

Assignment: Dictionary
As a student, you will be tasked with making a dictionary with a few rules:
  • Must have 5 entries (5 points)
  • Must be able to add/delete words (10 points*)
  • Retrieve the definition of a word (10 points*)
  • Must be able to edit definitions (10 points*)
  • Words must be scratch related (5 points)
  • Must use methods stated in lesson 3 to prove understanding (10 points*)
*A proper attempt will count as 5 points
(This assignment will be out of 50 points. You will then get a percent and letter grade based off of this)

Back to top
This is going to be interesting
veleanor
Scratcher
100+ posts

Advanced Programming Session #2

Lego-Lovin-Program wrote:

\Lesson 3

Lesson: List Manipulation
I this lesson, you will learn about list manipulation, and a few of it's uses. List manipulation is either using inputs from one list to gain information from another list. To be able to do that, first you will need to scan the list. Typically, you will need two variables. One will stay as an integer, while the other will be what you are looking for. A basic scanning script will look like this:
when I receive [scan v]
if <[list v] contains (what we are looking for)> then
repeat until <(item (number) of [ list v]) = (what we are looking for) >
change [number v] by (1)
end
end
It may need to be changed based on the type, but it should work for almost every situation. After you do a scan, the rest is basic. The information should be in the “number” variable's entry in the information list.

The other kind of list manipulation is changing/editing the lists. For this, you will still need a scanning script, and then use the “number” variable to delete or edit the specific list option. When deleting, remember to delete from all related lists, not just one, or else information will get misaligned.

Assignment: Dictionary
As a student, you will be tasked with making a dictionary with a few rules:
  • Must have 5 entries (5 points)
  • Must be able to add/delete words (10 points*)
  • Retrieve the definition of a word (10 points*)
  • Must be able to edit definitions (10 points*)
  • Words must be scratch related (5 points)
  • Must use methods stated in lesson 3 to prove understanding (10 points*)
*A proper attempt will count as 5 points
(This assignment will be out of 50 points. You will then get a percent and letter grade based off of this)

Back to top
When you say scratch related, what do you mean?

Lego-Lovin-Program
Scratcher
1000+ posts

Advanced Programming Session #2

veleanor wrote:

Lego-Lovin-Program wrote:

\Lesson 3
When you say scratch related, what do you mean?
I mean things that are commonly used in Scratch
EDIT: I'm going to remove that.

Last edited by Lego-Lovin-Program (March 12, 2016 01:53:59)



Credit to Sigton for the signature, ordered at Sigton's Shop


Click to edit your signature!

Powered by DjangoBB