Crossfire Server, Branch 1.12  R12190
Functions
typesproto.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void common_ob_describe (const ob_methods *context, const object *op, const object *observer, char *buf, size_t size)
 Describes an object, seen by a given observer.
method_ret common_ob_move_on (ob_methods *context, object *trap, object *victim, object *originator)
 'victim' moves onto 'trap' 'victim' leaves 'trap' effect is determined by move_on/move_off of trap and move_type of victim.
void common_post_ob_move_on (object *trap, object *victim, object *originator)
method_ret common_pre_ob_move_on (object *trap, object *victim, object *originator)
method_ret common_process_projectile (ob_methods *context, object *op)
 Move an arrow or thrown object along its course.
method_ret common_projectile_move_on (ob_methods *context, object *trap, object *victim, object *originator)
 Move on this Thrown Object object.
method_ret common_trap_type_move_on (ob_methods *context, object *trap, object *victim, object *originator)
 Move on this Rune or Trap object.
method_ret common_trap_type_process (ob_methods *context, object *op)
 Processes a Rune or Trap.
void init_type_altar (void)
 Initializer for the ALTAR object type.
void init_type_armour_improver (void)
 Initializer for the ARMOUR_IMPROVER object type.
void init_type_arrow (void)
 Initializer for the ARROW object type.
void init_type_blindness (void)
 Initializer for the blindness object type.
void init_type_book (void)
 Initializer for the BOOK object type.
void init_type_button (void)
 Initializer for the BUTTON object type.
void init_type_cf_handle (void)
 Initializer for the CF_HANDLE object type.
void init_type_check_inv (void)
 Initializer for the CHECK_INV object type.
void init_type_clock (void)
 Initializer for the CLOCK object type.
void init_type_container (void)
 Initializer for the CONTAINER object type.
void init_type_converter (void)
 Initializer for the CONVERTER object type.
void init_type_creator (void)
 Initializer for the creator object type.
void init_type_deep_swamp (void)
 Initializer for the DEEP_SWAMP object type.
void init_type_detector (void)
 Initializer for the detector object type.
void init_type_director (void)
 Initializer for the DIRECTOR object type.
void init_type_duplicator (void)
 Initializer for the duplicator object type.
void init_type_exit (void)
 Initializer for the EXIT object type.
void init_type_food (void)
 Initializer for the food object type.
void init_type_gate (void)
 Initializer for the gate object type.
void init_type_hole (void)
 Initializer for the HOLE object type.
void init_type_identify_altar (void)
 Initializer for the IDENTIFY_ALTAR object type.
void init_type_lamp (void)
 Initializer for the LAMP object type.
void init_type_lighter (void)
 Initializer for the LIGHTER object type.
void init_type_marker (void)
 Initializer for the marker object type.
void init_type_mood_floor (void)
 Initializer for the mood floor object type.
void init_type_peacemaker (void)
 Initializer for the peacemaker object type.
void init_type_pedestal (void)
 Initializer for the PEDESTAL object type.
void init_type_player_changer (void)
 Initializer for the player changer object type.
void init_type_player_mover (void)
 Initializer for the PLAYERMOVER object type.
void init_type_poison (void)
 Initializer for the POISON object type.
void init_type_poisoning (void)
 Initializer for the poisoning object type.
void init_type_potion (void)
 Initializer for the potion object type.
void init_type_power_crystal (void)
 Initializer for the POWER_CRYSTAL object type.
void init_type_rune (void)
 Initializer for the RUNE object type.
void init_type_savebed (void)
 Initializer for the SAVEBED object type.
void init_type_scroll (void)
 Initializer for the scroll object type.
void init_type_shop_inventory (void)
 Initializer for the SHOP_INVENTORY object type.
void init_type_shop_mat (void)
 Initializer for the SHOP_MAT object type.
void init_type_sign (void)
 Initializer for the SIGN object type.
void init_type_skillscroll (void)
 Initializer for the SKILLSCROLL object type.
void init_type_spell_effect (void)
 Initializer for the SPELL_EFFECT object type.
void init_type_spellbook (void)
 Initializer for the SPELLBOOK object type.
void init_type_spinner (void)
 Initializer for the SPINNER object type.
void init_type_teleporter (void)
 Initializer for the teleporter object type.
void init_type_thrown_object (void)
 Initializer for the THROWN_OBJ object type.
void init_type_transport (void)
 Initializer for the TRANSPORT object type.
void init_type_trap (void)
 Initializer for the TRAP object type.
void init_type_trapdoor (void)
 Initializer for the TRAPDOOR object type.
void init_type_treasure (void)
 Initializer for the TREASURE object type.
void init_type_trigger (void)
 Initializer for the TRIGGER object type.
void init_type_trigger_altar (void)
 Initializer for the TRIGGER_ALTAR object type.
void init_type_trigger_button (void)
 Initializer for the TRIGGER_BUTTON object type.
void init_type_trigger_pedestal (void)
 Initializer for the TRIGGER_PEDESTAL object type.
void init_type_weapon_improver (void)
 Initializer for the WEAPON_IMPROVER object type.
method_ret legacy_ob_apply (ob_methods *context, object *op, object *applier, int aflags)
 Main apply handler.
void legacy_ob_describe (const ob_methods *context, const object *op, const object *observer, char *buf, size_t size)
 Describes an object, seen by a given observer.
method_ret legacy_ob_process (ob_methods *context, object *op)
void move_duplicator (object *op)
 Trigger for duplicator.
void move_marker (object *op)
 Move function for marker objects.
void stop_projectile (object *op)
 Handle an arrow or thrown object stopping.

Function Documentation

void common_ob_describe ( const ob_methods context,
const object *  op,
const object *  observer,
char *  buf,
size_t  size 
)

Describes an object, seen by a given observer.

Parameters:
contextThe method context
opThe object to describe
observerThe object to make the description to
bufBuffer that will contain the description
sizebuf's size.

Definition at line 39 of file describe.c.

References describe_item(), query_name(), and VERY_BIG_BUF.

Referenced by init_type_power_crystal(), and legacy_ob_describe().

Here is the call graph for this function:

Here is the caller graph for this function:

method_ret common_ob_move_on ( ob_methods context,
object *  trap,
object *  victim,
object *  originator 
)

'victim' moves onto 'trap' 'victim' leaves 'trap' effect is determined by move_on/move_off of trap and move_type of victim.

originator: Player, monster or other object that caused 'victim' to move onto 'trap'. Will receive messages caused by this action. May be NULL. However, some types of traps require an originator to function.

Definition at line 41 of file common_apply.c.

References common_post_ob_move_on(), common_pre_ob_move_on(), llevDebug, LOG(), METHOD_ERROR, and METHOD_OK.

Here is the call graph for this function:

void common_post_ob_move_on ( object *  trap,
object *  victim,
object *  originator 
)
method_ret common_pre_ob_move_on ( object *  trap,
object *  victim,
object *  originator 
)
method_ret common_process_projectile ( ob_methods context,
object *  op 
)

Move an arrow or thrown object along its course.

Parameters:
contextThe method context
opThe arrow or thrown object being moved.
Todo:
Split this function up.
Returns:
METHOD_ERROR if op is not in a map, otherwise METHOD_OK

Definition at line 62 of file projectile.c.

References absdir(), DIRX, DIRY, FLAG_ALIVE, FLAG_REFL_MISSILE, FLAG_REFLECTING, free_object(), freearr_x, freearr_y, GET_ANIM_ID, GET_ANIMATION, get_map_flags(), GET_MAP_MOVE_BLOCK, GET_MAP_OB, hit_with_arrow(), insert_ob_in_map(), llevError, LOG(), METHOD_ERROR, METHOD_OK, new_faces, OB_TYPE_MOVE_BLOCK, P_IS_ALIVE, P_OUT_OF_MAP, QUERY_FLAG, remove_ob(), rndm(), SET_ANIMATION, and stop_projectile().

Referenced by arrow_type_process(), and thrown_object_type_process().

Here is the call graph for this function:

Here is the caller graph for this function:

method_ret common_projectile_move_on ( ob_methods context,
object *  trap,
object *  victim,
object *  originator 
)

Move on this Thrown Object object.

Parameters:
contextThe method context
trapThe thrown object or arrow we're moving on
victimThe object moving over this one
originatorThe object that caused the move_on event
Returns:
METHOD_OK

Definition at line 219 of file projectile.c.

References common_post_ob_move_on(), common_pre_ob_move_on(), FLAG_ALIVE, hit_with_arrow(), METHOD_ERROR, METHOD_OK, and QUERY_FLAG.

Referenced by init_type_arrow(), and init_type_thrown_object().

Here is the call graph for this function:

Here is the caller graph for this function:

method_ret common_trap_type_move_on ( ob_methods context,
object *  trap,
object *  victim,
object *  originator 
)

Move on this Rune or Trap object.

Parameters:
contextThe method context
trapThe rune or trap we're moving on
victimThe object moving over this one
originatorThe object that caused the move_on event
Returns:
METHOD_OK

Definition at line 41 of file common_trap.c.

References common_post_ob_move_on(), common_pre_ob_move_on(), FLAG_ALIVE, METHOD_ERROR, METHOD_OK, QUERY_FLAG, and spring_trap().

Referenced by init_type_rune(), and init_type_trap().

Here is the call graph for this function:

Here is the caller graph for this function:

method_ret common_trap_type_process ( ob_methods context,
object *  op 
)

Processes a Rune or Trap.

Comments on runes (and traps): rune->level : level at which rune will cast its spell. rune->hp : number of detonations before rune goes away rune->msg : message the rune displays when it goes off rune->direction : direction it will cast a spell in rune->dam : damage the rune will do if it doesn't cast spells rune->attacktype: type of damage it does, if not casting spells rune->other_arch: spell in the rune rune->Cha : how hidden the rune is rune->maxhp : number of spells the rune casts

Parameters:
contextThe method context
opThe rune or trap to process
Returns:
Always METHOD_OK

Definition at line 66 of file common_trap.c.

References MAX, METHOD_OK, rndm(), and update_object().

Referenced by init_type_rune(), and init_type_trap().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_altar ( void  )

Initializer for the ALTAR object type.

Definition at line 38 of file altar.c.

References ALTAR, altar_type_move_on(), and register_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_armour_improver ( void  )

Initializer for the ARMOUR_IMPROVER object type.

Definition at line 38 of file armour_improver.c.

References ARMOUR_IMPROVER, armour_improver_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:

void init_type_arrow ( void  )

Initializer for the ARROW object type.

Definition at line 38 of file arrow.c.

References ARROW, arrow_type_process(), common_projectile_move_on(), register_move_on(), and register_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_blindness ( void  )

Initializer for the blindness object type.

Definition at line 39 of file blindness.c.

References BLINDNESS, blindness_type_process(), and register_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_book ( void  )

Initializer for the BOOK object type.

Definition at line 38 of file book.c.

References BOOK, book_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:

void init_type_button ( void  )

Initializer for the BUTTON object type.

Definition at line 38 of file button.c.

References BUTTON, button_type_move_on(), and register_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_cf_handle ( void  )

Initializer for the CF_HANDLE object type.

Definition at line 38 of file cf_handle.c.

References CF_HANDLE, cf_handle_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:

void init_type_check_inv ( void  )

Initializer for the CHECK_INV object type.

Definition at line 38 of file check_inv.c.

References CHECK_INV, check_inv_type_move_on(), and register_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_clock ( void  )

Initializer for the CLOCK object type.

Definition at line 37 of file clock.c.

References CLOCK, clock_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:

void init_type_container ( void  )

Initializer for the CONTAINER object type.

Definition at line 38 of file container.c.

References CONTAINER, container_type_move_on(), and register_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_converter ( void  )

Initializer for the CONVERTER object type.

Definition at line 49 of file converter.c.

References CONVERTER, converter_type_move_on(), and register_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_creator ( void  )

Initializer for the creator object type.

Definition at line 40 of file creator.c.

References CREATOR, creator_type_process(), creator_type_trigger(), register_process(), and register_trigger().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_deep_swamp ( void  )

Initializer for the DEEP_SWAMP object type.

Definition at line 39 of file deep_swamp.c.

References DEEP_SWAMP, deep_swamp_type_move_on(), deep_swamp_type_process(), register_move_on(), and register_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_detector ( void  )

Initializer for the detector object type.

Definition at line 39 of file detector.c.

References DETECTOR, detector_type_process(), and register_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_director ( void  )

Initializer for the DIRECTOR object type.

Definition at line 38 of file director.c.

References DIRECTOR, director_type_move_on(), and register_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_duplicator ( void  )

Initializer for the duplicator object type.

Definition at line 39 of file duplicator.c.

References DUPLICATOR, duplicator_type_trigger(), and register_trigger().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_exit ( void  )

Initializer for the EXIT object type.

Definition at line 39 of file exit.c.

References EXIT, exit_type_apply(), exit_type_move_on(), register_apply(), and register_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_food ( void  )

Initializer for the food object type.

Definition at line 40 of file food.c.

References DRINK, FLESH, FOOD, food_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:

void init_type_gate ( void  )

Initializer for the gate object type.

Definition at line 40 of file gate.c.

References GATE, gate_type_process(), register_process(), TIMED_GATE, and timed_gate_type_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_hole ( void  )

Initializer for the HOLE object type.

Definition at line 38 of file hole.c.

References HOLE, hole_type_move_on(), and register_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_identify_altar ( void  )

Initializer for the IDENTIFY_ALTAR object type.

Definition at line 38 of file identify_altar.c.

References IDENTIFY_ALTAR, identify_altar_type_move_on(), and register_move_on().

Referenced by register_all_ob_types().

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:

void init_type_lighter ( void  )

Initializer for the LIGHTER object type.

Definition at line 38 of file lighter.c.

References LIGHTER, lighter_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:

void init_type_marker ( void  )

Initializer for the marker object type.

Definition at line 40 of file marker.c.

References MARKER, marker_type_process(), marker_type_trigger(), register_process(), register_trigger(), and TRIGGER_MARKER.

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_mood_floor ( void  )

Initializer for the mood floor object type.

Definition at line 40 of file mood_floor.c.

References MOOD_FLOOR, mood_floor_type_process(), mood_floor_type_trigger(), register_process(), and register_trigger().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_peacemaker ( void  )

Initializer for the peacemaker object type.

Definition at line 39 of file peacemaker.c.

References PEACEMAKER, peacemaker_type_process(), and register_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_pedestal ( void  )

Initializer for the PEDESTAL object type.

Definition at line 38 of file pedestal.c.

References PEDESTAL, pedestal_type_move_on(), and register_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_player_changer ( void  )

Initializer for the player changer object type.

Definition at line 39 of file player_changer.c.

References PLAYER_CHANGER, player_changer_type_process(), and register_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_player_mover ( void  )

Initializer for the PLAYERMOVER object type.

Definition at line 38 of file player_mover.c.

References player_mover_type_move_on(), PLAYERMOVER, and register_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

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:

void init_type_poisoning ( void  )

Initializer for the poisoning object type.

Definition at line 38 of file poisoning.c.

References POISONING, poisoning_type_process(), and register_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_potion ( void  )

Initializer for the potion object type.

Definition at line 38 of file potion.c.

References POTION, potion_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:

void init_type_power_crystal ( void  )

Initializer for the POWER_CRYSTAL object type.

Definition at line 37 of file power_crystal.c.

References common_ob_describe(), POWER_CRYSTAL, power_crystal_type_apply(), register_apply(), and register_describe().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_rune ( void  )

Initializer for the RUNE object type.

Definition at line 36 of file rune.c.

References common_trap_type_move_on(), common_trap_type_process(), register_move_on(), register_process(), and RUNE.

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_savebed ( void  )

Initializer for the SAVEBED object type.

Definition at line 39 of file savebed.c.

References register_apply(), SAVEBED, and savebed_type_apply().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_scroll ( void  )

Initializer for the scroll object type.

Definition at line 37 of file scroll.c.

References register_apply(), SCROLL, and scroll_type_apply().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_shop_inventory ( void  )

Initializer for the SHOP_INVENTORY object type.

Definition at line 38 of file shop_inventory.c.

References register_apply(), SHOP_INVENTORY, and shop_inventory_type_apply().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_shop_mat ( void  )

Initializer for the SHOP_MAT object type.

Definition at line 38 of file shop_mat.c.

References register_move_on(), SHOP_MAT, and shop_mat_type_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_sign ( void  )

Initializer for the SIGN object type.

Definition at line 40 of file sign.c.

References register_apply(), register_move_on(), SIGN, sign_type_apply(), and sign_type_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_skillscroll ( void  )

Initializer for the SKILLSCROLL object type.

Definition at line 39 of file skillscroll.c.

References register_apply(), SKILLSCROLL, and skillscroll_type_apply().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_spell_effect ( void  )

Initializer for the SPELL_EFFECT object type.

Definition at line 54 of file spell_effect.c.

References register_move_on(), register_process(), SPELL_EFFECT, spell_effect_type_move_on(), and spell_effect_type_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_spellbook ( void  )

Initializer for the SPELLBOOK object type.

Definition at line 39 of file spellbook.c.

References register_apply(), SPELLBOOK, and spellbook_type_apply().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_spinner ( void  )

Initializer for the SPINNER object type.

Definition at line 38 of file spinner.c.

References register_move_on(), SPINNER, and spinner_type_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_teleporter ( void  )

Initializer for the teleporter object type.

Definition at line 40 of file teleporter.c.

References register_process(), register_trigger(), TELEPORTER, teleporter_type_process(), and teleporter_type_trigger().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_thrown_object ( void  )

Initializer for the THROWN_OBJ object type.

Definition at line 38 of file thrown_object.c.

References common_projectile_move_on(), register_move_on(), register_process(), THROWN_OBJ, and thrown_object_type_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_transport ( void  )

Initializer for the TRANSPORT object type.

Definition at line 41 of file transport.c.

References register_apply(), register_process(), TRANSPORT, transport_type_apply(), and transport_type_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_trap ( void  )

Initializer for the TRAP object type.

Definition at line 36 of file trap.c.

References common_trap_type_move_on(), common_trap_type_process(), register_move_on(), register_process(), and TRAP.

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_trapdoor ( void  )

Initializer for the TRAPDOOR object type.

Definition at line 38 of file trapdoor.c.

References register_move_on(), TRAPDOOR, and trapdoor_type_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_treasure ( void  )

Initializer for the TREASURE object type.

Definition at line 38 of file treasure.c.

References register_apply(), TREASURE, and treasure_type_apply().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_trigger ( void  )

Initializer for the TRIGGER object type.

Definition at line 40 of file trigger.c.

References register_apply(), register_process(), TRIGGER, trigger_type_apply(), and trigger_type_process().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_trigger_altar ( void  )

Initializer for the TRIGGER_ALTAR object type.

Definition at line 38 of file trigger_altar.c.

References register_move_on(), TRIGGER_ALTAR, and trigger_altar_type_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_trigger_button ( void  )

Initializer for the TRIGGER_BUTTON object type.

Definition at line 38 of file trigger_button.c.

References register_move_on(), TRIGGER_BUTTON, and trigger_button_type_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_trigger_pedestal ( void  )

Initializer for the TRIGGER_PEDESTAL object type.

Definition at line 38 of file trigger_pedestal.c.

References register_move_on(), TRIGGER_PEDESTAL, and trigger_pedestal_type_move_on().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

void init_type_weapon_improver ( void  )

Initializer for the WEAPON_IMPROVER object type.

Definition at line 44 of file weapon_improver.c.

References register_apply(), WEAPON_IMPROVER, and weapon_improver_type_apply().

Referenced by register_all_ob_types().

Here is the call graph for this function:

Here is the caller graph for this function:

method_ret legacy_ob_apply ( ob_methods context,
object *  op,
object *  applier,
int  aflags 
)

Main apply handler.

Checks for unpaid items before applying.

Return value: 0: player or monster can't apply objects of that type 1: has been applied, or there was an error applying the object 2: objects of that type can't be applied if not in inventory

op is the object that is causing object to be applied, tmp is the object being applied.

aflag is special (always apply/unapply) flags. Nothing is done with them in this function - they are passed to apply_special

Definition at line 49 of file apply.c.

References AMULET, apply_special(), ARMOUR, BOOTS, BOW, BRACERS, BUILDER, CLOAK, CLOSE_CON, CONTAINER, GIRDLE, GLOVES, HELMET, HORN, legacy_apply_container(), METHOD_ERROR, METHOD_OK, METHOD_UNHANDLED, PLAYER, RING, ROD, SHIELD, SKILL, SKILL_TOOL, WAND, and WEAPON.

Referenced by init_ob_methods().

Here is the call graph for this function:

Here is the caller graph for this function:

void legacy_ob_describe ( const ob_methods context,
const object *  op,
const object *  observer,
char *  buf,
size_t  size 
)

Describes an object, seen by a given observer.

Parameters:
contextThe method context
opThe object to describe
observerThe object to make the description to
bufBuffer that will contain the description
sizebuf's size.

Definition at line 38 of file legacy_describe.c.

References AMULET, ARMOUR, ARROW, BOOTS, BOW, BRACERS, CLOAK, common_ob_describe(), DRINK, FLESH, FOOD, GIRDLE, GLOVES, HELMET, LAMP, query_name(), RING, SHIELD, SKILL, SKILL_TOOL, and WEAPON.

Referenced by init_ob_methods().

Here is the call graph for this function:

Here is the caller graph for this function:

method_ret legacy_ob_process ( ob_methods context,
object *  op 
)
void move_duplicator ( object *  op)

Trigger for duplicator.

Will duplicate a specified object placed on top of it.

  • connected: what will trigger it.
  • level: multiplier. 0 to destroy.
  • other_arch: the object to look for and duplicate.
Parameters:
opduplicator.

Definition at line 54 of file duplicator.c.

References free_object(), llevInfo, LOG(), and remove_ob().

Referenced by duplicator_type_trigger().

Here is the call graph for this function:

Here is the caller graph for this function:

void move_marker ( object *  op)

Move function for marker objects.

When moved, a marker will search for a player sitting above it, and insert an invisible, weightless force into him with a specific code as the slaying field.

At that time, it writes the contents of its own message field to the player. The marker will decrement hp to 0 and then delete itself every time it grants a mark. unless hp was zero to start with, in which case it is infinite.

Author:
peterm@soda.csua.berkeley.edu
Parameters:
opmarker to move. Can be removed if it reached its marking limit.

Definition at line 61 of file marker.c.

References add_string(), create_archetype(), draw_ext_info(), FORCE, FORCE_NAME, free_object(), GET_MAP_OB, insert_ob_in_ob(), MSG_SUBTYPE_NONE, MSG_TYPE_MISC, NDI_NAVY, NDI_UNIQUE, PLAYER, remove_ob(), and update_ob_speed().

Referenced by marker_type_process(), and marker_type_trigger().

Here is the call graph for this function:

Here is the caller graph for this function:

void stop_projectile ( object *  op)

Handle an arrow or thrown object stopping.

Parameters:
opThe arrow or thrown object that is stopping.

Definition at line 36 of file projectile.c.

References clear_owner(), EVENT_STOP, execute_event(), fix_stopped_arrow(), free_object(), insert_ob_in_map(), merge_ob(), remove_ob(), and SCRIPT_FIX_NOTHING.

Referenced by arrow_type_process(), common_process_projectile(), and thrown_object_type_process().

Here is the call graph for this function:

Here is the caller graph for this function: