Crossfire Server, Trunk  R20513
Functions | Variables
weather.c File Reference

Time-related functions. More...

#include <global.h>
#include <tod.h>
#include <map.h>
#include <sproto.h>
#include <assert.h>
Include dependency graph for weather.c:

Go to the source code of this file.

Functions

static void dawn_to_dusk (const timeofday_t *tod)
 Compute the darkness level for all loaded maps in the game. More...
 
void set_darkness_map (mapstruct *m)
 Set the darkness level for a map, based on the time of the day. More...
 
void tick_the_clock (void)
 This performs the basic function of advancing the clock one tick forward. More...
 

Variables

static const int season_timechange [5][HOURS_PER_DAY]
 How to alter darkness, based on time of day and season. More...
 
unsigned long todtick
 Ingame time. More...
 

Detailed Description

Time-related functions.

Definition in file weather.c.

Function Documentation

static void dawn_to_dusk ( const timeofday_t tod)
static

Compute the darkness level for all loaded maps in the game.

Parameters
todtime of day to compute darkness for.

Definition at line 70 of file weather.c.

References change_map_light(), first_map, _timeofday::hour, mapdef::next, mapdef::outdoor, _timeofday::season, and season_timechange.

Referenced by tick_the_clock().

Here is the call graph for this function:

Here is the caller graph for this function:

void set_darkness_map ( mapstruct m)

Set the darkness level for a map, based on the time of the day.

Parameters
mmap to alter.

Definition at line 46 of file weather.c.

References change_map_light(), mapdef::darkness, get_tod(), _timeofday::hour, HOURS_PER_DAY, mapdef::outdoor, _timeofday::season, and season_timechange.

Here is the call graph for this function:

void tick_the_clock ( void  )

This performs the basic function of advancing the clock one tick forward.

Every 20 ticks, the clock is saved to disk. It is also saved on shutdown. Any time dependant functions should be called from this function, and probably be passed tod as an argument. Please don't modify tod in the dependant function.

Definition at line 96 of file weather.c.

References dawn_to_dusk(), get_tod(), todtick, and write_todclock().

Referenced by block_until_new_connection(), and do_specials().

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

const int season_timechange[5][HOURS_PER_DAY]
static
Initial value:
= {
{ 0, 0, 0, 0, 0, 0, 0,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1 },
{ 0, 0, 0, 0, 0, 0,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0 },
{ 0, 0, 0, 0, 0,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0 },
{ 0, 0, 0, 0, 0,-1,-1,-1,-1,-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0 },
{ 0, 0, 0, 0, 0, 0,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0 }
}

How to alter darkness, based on time of day and season.

Definition at line 31 of file weather.c.

Referenced by dawn_to_dusk(), and set_darkness_map().

unsigned long todtick

Ingame time.

Definition at line 440 of file init.c.

Referenced by tick_the_clock().