Section 2 - Times of Day
Daytime is a kind of value. The daytimes are noon, early afternoon, mid afternoon, late afternoon, sunset, and evening.
The current daytime is a daytime that varies. The current daytime is noon.
To say sky-description:
if the current daytime is:
-- noon:
say "The sun is so bright that it's hard to look straight up for long.[no line break]";
-- early afternoon:
say "The sun is no longer directly overhead, perhaps, but it's close.[no line break]";
-- mid afternoon:
say "It is still extremely bright overhead, though we're reaching the middle of the afternoon.[no line break]";
-- late afternoon:
say "The glare is decreasing as the sun falls toward the horizon, and the sky overhead is a darker shade of blue.[no line break]";
-- sunset:
say "There are no clouds to complicate the sunset, just a pure gradient of yellow to deepening blue.[no line break]";
-- evening:
say "The sky has cooled to a darkening blue, though [you] can't see any stars yet.[no line break]"
To say sun-description:
if the current daytime is:
-- sunset:
say "It has dulled to a mere ruddy ball.[no line break]";
-- otherwise:
say "It's horribly bright and glaring just at the moment.[no line break]"
To say time-elsewhere:
let hours be 12;
if the current daytime is:
-- noon:
let hours be 12;
-- early afternoon:
let hours be 13;
-- mid afternoon:
let hours be 14;
-- late afternoon:
let hours be 16;
-- sunset:
let hours be 18;
-- evening:
let hours be 20;
choose a random row in the Table of Time Differences;
increase hours by difference entry;
let am-pm be "[one of]in the morning[or]AM[or]o'clock[at random]";
if hours is greater than 24:
decrease hours by 24;
otherwise if hours is 24:
decrease hours by 12;
now am-pm is "midnight";
otherwise if hours is greater than 12:
decrease hours by 12;
if hours is less than 6:
now am-pm is "[one of]in the afternoon[or]PM[or]o'clock[at random]";
otherwise if hours is less than 10:
now am-pm is "[one of]in the evening[or]PM[or]o'clock[at random]";
otherwise if hours is less than 10:
now am-pm is "[one of]at night[or]PM[or]o'clock[at random]";
otherwise if hours is 12:
now am-pm is "noon";
if difference entry is less than 0:
say "[one of]just [or]only [or]still only [or]roughly [or]around [or]about [at random]";
if difference entry is greater than 0:
say "[one of]already [or]nearly [or]around [or]about [at random]";
if hours is:
-- 12:
if am-pm is "noon":
say "[one of]noon[or]twelve noon[or]12[or]lunch time[or]midday[at random]";
otherwise:
say "[one of]twelve midnight[or]midnight[or]the middle of the night[at random]";
-- otherwise:
say "[one of][hours in words] [am-pm][or][hours in words][at random]";
say " in [locale entry]".
To say random-spot:
choose a random row in the Table of Time Differences;
say "[locale entry]".
Table of Time Differences
difference | locale |
11 | "[one of]Sydney[or]Melbourne[or]Canberra[or]Vladivostok[at random]" |
9 | "[one of]Seoul[or]Tokyo[at random]" |
8 | "[one of]Perth[or]Hong Kong[or]Manila[or]Beijing[or]Taipei[or]Shanghai[at random]" |
7 | "[one of]Bangkok[or]Hanoi[or]Jakarta[at random]" |
5 | "[one of]Tashkent[or]Islamabad[or]Lahore[at random]" |
4 | "[one of]Moscow[or]Dubai[at random]" |
3 | "[one of]Minsk[or]Khartoum[or]Nairobi[or]Baghdad[at random]" |
2 | "[one of]Cape Town[or]Athens[or]Johannesburg[or]Helsinki[or]Bucharest[or]Cairo[or]Jerusalem[at random]" |
1 | "[one of]Budapest[or]Berlin[or]Paris[or]Algiers[or]Brussels[or]Kinshasa[or]Zagreb[at random]" |
-3 | "[one of]Santiago[or]Buenos Aires[at random]" |
-4 | "[one of]Halifax[or]La Paz[at random]" |
-5 | "[one of]Philadelphia[or]Atlanta[or]Indianapolis[or]Detroit[or]Columbus[or]Havana[or]Miami[or]Toronto[or]Ottawa[or]Kingston[or]DC[or]New York[or]Boston[at random]" |
-6 | "[one of]Winnepeg[or]Houston[or]Minneapolis[or]Chicago[or]New Orleans[or]San Salvador[at random]" |
-7 | "[one of]Denver[or]Edmonton[or]Phoenix[or]Salt Lake City[at random]" |
-8 | "[one of]San Francisco[or]San Fran[or]Portland[or]Seattle[or]Vancouver[or]LA[or]San Diego[at random]" |
-9 | "Anchorage" |
-10 | "[one of]Kiritimati[or]Honolulu[at random]" |
-11 | "[one of]Suva[or]Auckland[at random]" |