/* ************************************************************************
* File: weather.c Part of CircleMUD *
* Usage: functions handling time and the weather *
* *
* All rights reserved. See license.doc for complete information. *
* *
* Copyright (C) 1993, 94 by the Trustees of the Johns Hopkins University *
* CircleMUD is based on DikuMUD, Copyright (C) 1990, 1991. *
************************************************************************ */
#include "conf.h"
#include "sysdep.h"
#include "structs.h"
#include "utils.h"
#include "comm.h"
#include "handler.h"
#include "interpreter.h"
#include "db.h"
extern struct time_info_data time_info;
void another_hour(int mode);
void another_hour(int mode)
{
time_info.hours++;
if (mode) {
switch (time_info.hours) {
case 5:
weather_info.sunlight = SUN_RISE;
send_to_outdoor("The sun rises in the east.\r\n");
break;
case 6:
weather_info.sunlight = SUN_LIGHT;
send_to_outdoor("The day has begun.\r\n");
break;
case 21:
weather_info.sunlight = SUN_SET;
send_to_outdoor("The sun slowly disappears in the west.\r\n");
break;
case 22:
weather_info.sunlight = SUN_DARK;
send_to_outdoor("The night has begun.\r\n");
break;
default:
break;
}
}
if (time_info.hours > 23) { /* Changed by HHS due to bug ??? */
time_info.hours -= 24;
time_info.day++;
if (time_info.day > 34) {
time_info.day = 0;
time_info.month++;
if (time_info.month > 16) {
time_info.month = 0;
time_info.year++;
}
}
}
}