@Rich.
I was looking through the forum and came across a thread where you mentioned you made a script to speak the current time. I tried it out but I'm having a problem with it. When I start the script, it only says "The time is dollar the time". Is there something that I need to change in the syntax as I know this posted a year ago and something might have changed.Code:
IF ($hour>12)
$hour_word=$hour-12
ELSE
$hour_word=$hour
ENDIF
IF ($hour_word=0)
$hour_word=12
ENDIF
IF ($Minute = 0)
$thetime = "$hour_word"
ELSEIF ($minute = 1)
$thetime = "one minute past $hour_word"
ELSEIF ($minute = 15)
$thetime = "quarter past $hour_word"
ELSEIF ($minute = 30)
$thetime = "half past $hour_word"
ELSEIF ($minute 30)
$hour_word=$hour_word+1
$minute_word = 60-$minute
$thetime = "$minute_word minutes to $hour_word"
ELSE
$thetime = "$hour_word $minute"
ENDIF
IF ($hour 21)
$thetime = "$thetime at night"
ELSEIF ($hour > 17)
$thetime = "$thetime in the evening"
ELSEIF ($hour > 11)
$thetime = "$thetime in the afternoon"
ENDIF
Say("The time is $thetime")
Many thanks.
Asked
— Edited
Code:
Not a problem mate. I copied this code straight from Rich's example and was curious if there was a new way to write this, as his example is over a year old. If you wouldn't mind haveing a look when you have some free time I would appreciate it. In the meantime I will have a play around too (but I don't hold much hope with my current scripting skills *eyeroll*).
Code:
EDIT:
I just tried your code Richard and it works pretty well.
"The time is 12 hours and 51 minutes in the afternoon."
I'd like the lose the "hours" "minutes" and change "afternoon" for "PM" if poss, but hey, it works. Thanks buddy.
Thanks again.
Cheers for doing that for me Richard.
Cheers
Richard
I did spot @Richard mention the variable needs to be outside of the quotes, which is correct, but it also need a little more to it (which may have been done but like I said, I didn't have time to read it all).
Correct syntax for speaking a sentence including a variable is...
Code:
Note the addition of the + in the code.
Also, I've probably got a much better script now than back then. Time is a tricky one for speaking since we don't say "It's 11:55" we say "It's 5 to 12" or we don't say "It's 7:05" we say "it's 5 past 7" (amongst other variations).
I'll see what other scripts I have floating around in my projects once I've had some sleep
Code:
It works very well but I do agree with what you say about how we speak the time, but I am happy with this for now.
Time phrase updates will include:
It is $hour o clock in the $timeofday
It is $minute minutes past $hour in the $timeofday
It is quarter past $hour in the $timeofday
It is half past $hour in the $timeofday
It is $minutesto to $hour+1 in the $timeofday
It is quarter to $hour+1 in the $timeofday
It is $minutes past $hour in the $timeofday
It is $hour $minutes in the $timeofday
It shouldn't be too difficult to write for these phrases. I'll probably do another speak the "rounded" time where it'll round to 5 or 10 minute intervals (just as we do) with "almost", "around and "just gone".
I needed something to get my teeth stuck in to just to keep me sharp, this should be a good start
Code:
Not fully tested but tested between 6:25 and 6:35 PM and it worked OK. I'm not entirely sure what happens at 11pm and later though but will try it out in a few hours time if I get chance.
It's a starter anyway, feel free to make it better
But the script shows a nice big if nest and some other functions which (hopefully) will help people get to grips with the programming