Crossfire Server, Branch 1.12  R12190
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.
void set_darkness_map (mapstruct *m)
 Set the darkness level for a map, based on the time of the day.
int similar_direction (int a, int b)
 Is direction a similar to direction b? Find out in this exciting function below.
void tick_the_clock (void)
 This performs the basic function of advancing the clock one tick forward.

Variables

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

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 85 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 61 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:

int similar_direction ( int  a,
int  b 
)

Is direction a similar to direction b? Find out in this exciting function below.

Parameters:
a
bdirections to compare.
Returns:
1 if similar, 0 if not.

Definition at line 132 of file weather.c.

Referenced by player_fire_bow().

Here is the caller 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 111 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 46 of file weather.c.

Referenced by dawn_to_dusk(), and set_darkness_map().

unsigned long todtick

Ingame time.

Definition at line 418 of file init.c.