diff -u5 stock/character.cpp mod/character.cpp --- stock/character.cpp 2012-06-11 21:11:18.000000000 -0500 +++ mod/character.cpp 2014-04-27 00:21:32.000000000 -0500 @@ -2244,21 +2244,29 @@ } /* * Output the formatted list. */ - for (iShow = 0; iShow < nShow; iShow++) { - if (is_npc () || IS_SET (actflags, PLR_COMBINE)) { - if (prgnShow[iShow] != 1) { + if ((g_world->hour() == 5 + || g_world->hour() == 19) + && (!IS_SET (in_room->room_flags, ROOM_DARK)) + && in_room->light < 1) { + for (iShow = 0; iShow < nShow; iShow++) + send_to_char ("Something is here.\r\n"); + } else { + for (iShow = 0; iShow < nShow; iShow++) { + if (is_npc () || IS_SET (actflags, PLR_COMBINE)) { + if (prgnShow[iShow] != 1) { snprintf (buf, sizeof buf, "(%2d) ", prgnShow[iShow]); send_to_char (buf); - } else { + } else { send_to_char (" "); + } } + send_to_char (prgpstrShow[iShow]); + send_to_char ("\r\n"); } - send_to_char (prgpstrShow[iShow]); - send_to_char ("\r\n"); } if (fShowNothing && nShow == 0) { if (is_npc () || IS_SET (actflags, PLR_COMBINE)) send_to_char (" "); @@ -2430,15 +2438,21 @@ for (rch = list.begin(); rch != list.end(); rch++) { if (*rch == this) continue; - if (can_see(*rch)) { - show_char_to_char_0 (*rch); - } else if (in_room->is_dark() + if (in_room->is_dark() && (*rch)->is_affected (AFF_INFRARED)) { send_to_char ("You see glowing red eyes watching YOU!\r\n"); + } else if ((g_world->hour() == 5 + || g_world->hour() == 19) + && (!IS_SET (in_room->room_flags, ROOM_DARK)) + && in_room->light == 0) { + send_to_char ("Someone is here.\r\n"); + } + else if (can_see(*rch)) { + show_char_to_char_0 (*rch); } } return; } diff -u5 stock/commands.cpp mod/commands.cpp --- stock/commands.cpp 2011-06-11 01:12:58.000000000 -0500 +++ mod/commands.cpp 2014-04-27 00:37:10.000000000 -0500 @@ -1409,19 +1409,31 @@ argument = one_argument (argument, arg1); argument = one_argument (argument, arg2); if (arg1.empty() || !str_cmp (arg1, "auto")) { /* 'look' or 'look auto' */ + // dusk or just before dawn + if ((g_world->hour() == 5 + || g_world->hour() == 19) + && (!IS_SET (in_room->room_flags, ROOM_DARK)) + && in_room->light < 1) { + send_to_char ( + (number_range (0, 1) == 0) ? + "It's barely light enough to see anything.\r\n" + : "It's too dark to see exactly what's here.\r\n" + ); + // normal light + } else { send_to_char (in_room->name); send_to_char ("\r\n"); if (!is_npc () && IS_SET (actflags, PLR_AUTOEXIT)) do_exits ("auto"); - if (arg1.empty() || (!is_npc () && !IS_SET (actflags, PLR_BRIEF))) - send_to_char (in_room->description); - + else if (!is_npc () && !IS_SET (actflags, PLR_BRIEF)) + send_to_char (in_room->description); + } show_list_to_char (in_room->contents, false, false); show_char_to_char (in_room->people); return; }