Crossfire Server, Trunk
poison.c File Reference
#include <global.h>
#include <ob_methods.h>
#include <ob_types.h>
#include <sounds.h>
#include <sproto.h>
+ Include dependency graph for poison.c:

Go to the source code of this file.

Functions

void init_type_poison (void)
 
static method_ret poison_type_apply (object *op, object *applier, int aflags)
 

Detailed Description

The implementation of the Poison class of objects.

Definition in file poison.c.

Function Documentation

◆ init_type_poison()

void init_type_poison ( void  )

Initializer for the POISON object type.

Definition at line 38 of file poison.c.

References POISON, poison_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:

◆ poison_type_apply()

static method_ret poison_type_apply ( object op,
object applier,
int  aflags 
)
static

Attempts to apply some poison.

Parameters
opThe poison to apply
applierThe object attempting to apply the poison.
aflagsSpecial flags (always apply/unapply)
Returns
The return value is always METHOD_OK

Definition at line 49 of file poison.c.

References apply_handle_yield(), AT_POISON, BIG_NAME, obj::contr, draw_ext_info(), liv::food, hit_player(), pl::killer, llevDebug, LOG(), METHOD_OK, MSG_TYPE_APPLY, MSG_TYPE_APPLY_CURSED, NDI_UNIQUE, object_decrease_nrof_by_one, give::op, play_sound_player_only(), PLAYER, SOUND_TYPE_ITEM, obj::stats, obj::type, and nlohmann::detail::void().

Referenced by init_type_poison().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: