Use this project to measure the noise and movement of the operator/s near your device. You can stop and pause the listener and save the data as a "Scratch file", or a number list and upload it to https://scratch.mit.edu/projects/950077554/ here you can replay the saved data. Make sure you triple click on the list that will appear to copy the code and not just drag your cursor over it. You can also use the "Camera" button to turn on your camera and to check if you are focus on the screen or if your eyes are avoiding the screen. Do not recommend Turbo Mode.
I made this project using by having a single dot move upward based off of the sound in the area. It would then constantly create clones that would move backward continuously to give the illusion of movement. To make the "Start" and "Pause" button, I made a script to listen if the buttons were clicked and if so, change the "Pause" variable to "Yes" or "No" depending on which button you clicked. To make the "Save Data" button, I made sure every single Y position the dot was on was put into the variable by using the join blocks commonly known as the " Join | apple | banana" block. it is then put into a list, which is the only displayable Ui element which you can copy from. The Data display was made from taking the file and taking every single number in sets of pairs excluding the starting 0 to find all the recorded Y positions of the dot in this project and then put it into a list. I then made another list to use as a table called "Clones" (If you were to literally put to lists next to each other it would make a table.). I then made a variable to run through numbers 1-269 which is the max and total clones existing in this project so they would be relavant. This variable is how we assign a different Y position to each clone. If the variable was equivalent to 8, the 8th clone would be moved to whatever the 8th number in the recorded Y positions list was. To get the X position, I found the number of current clones, multiplied it by 1 (unnecessarily done, I did it in the first place because I thought all the clones moved by 5 and not 1 so I originally multiplied it by 5.), and then subtracted 240 which is the max X position allowed on scratch without going off the page. I then changed the variable of how many existing clones there were and changed it by 1 every time the script was ran, which is 269 times because of my maximum number of clones (Not Scratch's max number of clones which is 300 per sprite I think, maybe it is 300 total, I don't normally try to crash websites.) For the "Camera" function, I made a simple script that turns on the webcam. I then change a overload variable ever time the movement reaches its set max per tracker to count the number of times the operator does this, I then compare whether the overload variable is larger than my other variable which will count small motions. If the overload variable is larger than the other variable, it will display that you are unfocused or avoiding eye contact, if it is not, it will display that you are focused. The numbers are reset every two seconds to be more accurate. I used a simular script for both of them inside the main "Sprite 1" script. And yes, the "Average volume" variable DOES work, it is just very hard to get over 1-10 majority Y positions filed without intense yelling. This project was actually a lot simpler to make than it sounds, if you "See inside", you will find the scripts very easy to understand Oh, and Jo, THIS IS NOT a game, thank you.