Vorrei iniziare dicendo, benvenuto in AppleScript! So che all'inizio può essere frustrante, ma continuate a seguirlo, ne varrà la pena alla fine!
Quindi, ecco la sceneggiatura che ho scritto che realizza ciò che stai cercando di ottenere:
set secondCount to (text returned of (display dialog "How long do you want the timer to go for in seconds?" default answer "")) as integer
set startDialog to display dialog "Click start to start." buttons {"Start", "Cancel"} default button "Start"
if button returned of startDialog is "Start" then
delay secondCount
end if
repeat 10 times
beep
end repeat
Una cosa che noterai è che in realtà ho assegnato una variabile alle linee "make dialog", questo ti permetterà di fare riferimento al loro output in qualsiasi momento più avanti nello script. Nella prima riga, assegno la variabile "secondCount" a qualunque testo venga restituito da quella finestra di dialogo, formattato come un intero.
Impostando il testo restituito da questa finestra di dialogo a un numero intero, puoi racchiuderlo in una ripetizione & prova a bloccare per insistere che l'utente inserisca un numero valido prima di procedere (ma io divago)
Ci sono altre cose che potrei risolvere con questo, ma penso che per ora lo lascerò qui. Spero che aiuti!