Я создал приложение в Livecode, в котором на карте девять кнопок. Восемь кнопок воспроизводят короткие музыкальные сэмплы и имеют переменную, в которой хранится количество нажатий кнопки. Удерживая кнопку мыши, кнопки можно перетаскивать и вокруг карты. Девятая кнопка запускает скрипт, который просматривает переменные, связанные с восемью кнопками сэмплов, и гарантирует, что все сэмплы были прослушаны хотя бы один раз. Сценарий помещает восемь переменных в одну переменную и затем проверяет, не являются ли они пустыми. Если это так, скрипт возвращает сообщение об ошибке, предлагающее убедиться, что они прослушали все образцы. У меня проблема в том, что это работает для всех, кроме одной кнопки - кнопки, связанной с переменной gVar08. Если эта кнопка не была нажата, gVar08 остается пустым и не вызывает сообщение об ошибке. Я не могу понять, почему. Сценарии, связанные с кнопкой примера и кнопкой оценки, представлены ниже.
#Code for music sample button
global gVar08
on mouseDown
wait 30
if the mouseClick then
play audioClip "samples/C1/C1-8ConcertoForViolinStringsAndHarpsichordInGR202IAllegroMolto.wav"
set the filename of image "icn08" to "icons/if_abstract_symbol-03_1571964a.png"
add 1 to gVar08
else
grab me
end if
end mouseDown
#Code assigned to 9th button: Check to see if all samples played at least 1x
global gVar01, gVar02, gVar03, gVar04, gVar05, gVar06, gVar07, gVar08, gErr01
local sClct
on mouseUp
put gVar01, gVar02, gVar03, gVar04, gVar05, gVar06, gVar07, gVar08 into sClct
repeat for each item local in sClct
if local = "" then
answer "Have you listened to all of the samples? Be sure to play them all."
add 1 to gErr01
break
end if
end repeat
end mouseDown