I'm trying to make a digital piano with a feature to "record" the notes you played.
I have a procedure (keyPressed) that adds the note pressed to a list, but when I play use the play button (when PlayButton.click) it gives an error "Error 703: Unable to play [Note].mp3" where [Note] is the last note item in the list
Update: I changed it so all the notes in variable notes are "[Number].mp3", and removed the join in the set NoteSound.Source so its just the select list item. Now if I enable the recording, it works but only if there is one note in the list. If there are multiple, it does not make a sound.
I would've but I downloaded them on a school computer so I couldn't trim it. I have the minimum intervals for the players set to 1 second so it doesn't cause an issue.
So I tried this, and it does play notes now, but instead of playing the notes that I had pressed it plays the list of notes from top to bottom, and if I change it so its if get global Index < length of list list get global notesPlayed it just plays the list of notes for however many keys were pressed (for example, if I played 4 notes it'll play the first 4 notes of the piano
When you run one sound. The event "Player1.Completed" is fired, then the procedure "nextNote" is started. In the procedure "keyPressed" use the variable-flag you set to "false". In the event "player1.completed" use "If" and put this flag here. At the end of this event, set the flag to "true".
Don't think, just do as I wrote. Otherwise, why are you asking . Unless you have not understood what I am writing about. I use google translator so sometimes something may be incomprehensible.
In that image it's set to global notesPlayed. If it's set to global notesPlayed it only plays from top to bottom for however many notes were pressed (If i pressed 5 notes it'll play the first 5 notes of the piano)
If I set it to get global Notes it'll just play the entire piano.
I think it might have got lost in translation. It sounds like you want me to add the if Record_mode_on.Enabled = false block into when Player1.completed but change the = to true. But I'm not sure what would go into the if then statement.