Crossfire Server, Branch 1.12  R12190
Functions
lamp.c File Reference

Lamps. More...

#include <global.h>
#include <ob_methods.h>
#include <ob_types.h>
#include <sounds.h>
#include <sproto.h>
Include dependency graph for lamp.c:

Go to the source code of this file.

Functions

static void do_turn (object *op, object *who, int aflags, const char *onoff)
 Turn on/off the lamp, based on op's APPLIED status.
void init_type_lamp (void)
 Initializer for the LAMP object type.
static method_ret lamp_type_apply (ob_methods *context, object *lamp, object *applier, int aflags)
 Applies a lamp.

Detailed Description

Lamps.

Definition in file lamp.c.


Function Documentation

static void do_turn ( object *  op,
object *  who,
int  aflags,
const char *  onoff 
) [static]

Turn on/off the lamp, based on op's APPLIED status.

Parameters:
oplamp.
whoplayer or monster.
aflagsflags.
onoffstring that will be appended to the 'turn' verb in the message.

Definition at line 54 of file lamp.c.

References AP_NOPRINT, arch_to_object(), CLEAR_FLAG, draw_ext_info(), draw_ext_info_format(), fix_object(), FLAG_APPLIED, FLAG_CURSED, FLAG_DAMNED, FLAG_INV_LOCKED, FLAG_KNOWN_CURSED, free_object(), insert_ob_in_ob(), MSG_TYPE_APPLY, MSG_TYPE_APPLY_CURSED, MSG_TYPE_APPLY_SUCCESS, NDI_UNIQUE, P_NEED_UPDATE, PLAYER, QUERY_FLAG, remove_ob(), SET_FLAG, SET_MAP_FLAGS, update_all_los(), and update_position().

Referenced by lamp_type_apply().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_lamp ( void  )

Initializer for the LAMP object type.

Definition at line 39 of file lamp.c.

References LAMP, lamp_type_apply(), and register_apply().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

static method_ret lamp_type_apply ( ob_methods context,
object *  lamp,
object *  applier,
int  aflags 
) [static]

Applies a lamp.

Parameters:
contextmethod context.
lamplamp to turn on/off.
applierobject attempting to apply the scroll. Should be a player.
aflagsspecial flags (always apply/unapply).
Returns:
METHOD_ERROR if lamp can't be applied, METHOD_OK else.

Definition at line 108 of file lamp.c.

References AP_NOPRINT, do_turn(), draw_ext_info_format(), FLAG_APPLIED, get_player_container(), get_split_ob(), insert_ob_in_ob(), METHOD_ERROR, METHOD_OK, MSG_TYPE_APPLY, MSG_TYPE_APPLY_ERROR, MSG_TYPE_APPLY_FAILURE, NDI_UNIQUE, and QUERY_FLAG.

Referenced by init_type_lamp().

Here is the call graph for this function:

Here is the caller graph for this function: