Crossfire Server, Branches 1.12  R18729
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)
 
method_ret common_ob_move_on (ob_methods *context, object *trap, object *victim, object *originator)
 
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)
 
method_ret common_projectile_move_on (ob_methods *context, object *trap, object *victim, object *originator)
 
method_ret common_trap_type_move_on (ob_methods *context, object *trap, object *victim, object *originator)
 
method_ret common_trap_type_process (ob_methods *context, object *op)
 
void init_type_altar (void)
 
void init_type_armour_improver (void)
 
void init_type_arrow (void)
 
void init_type_blindness (void)
 
void init_type_book (void)
 
void init_type_button (void)
 
void init_type_cf_handle (void)
 
void init_type_check_inv (void)
 
void init_type_clock (void)
 
void init_type_container (void)
 
void init_type_converter (void)
 
void init_type_creator (void)
 
void init_type_deep_swamp (void)
 
void init_type_detector (void)
 
void init_type_director (void)
 
void init_type_duplicator (void)
 
void init_type_exit (void)
 
void init_type_food (void)
 
void init_type_gate (void)
 
void init_type_hole (void)
 
void init_type_identify_altar (void)
 
void init_type_lamp (void)
 
void init_type_lighter (void)
 
void init_type_marker (void)
 
void init_type_mood_floor (void)
 
void init_type_peacemaker (void)
 
void init_type_pedestal (void)
 
void init_type_player_changer (void)
 
void init_type_player_mover (void)
 
void init_type_poison (void)
 
void init_type_poisoning (void)
 
void init_type_potion (void)
 
void init_type_power_crystal (void)
 
void init_type_rune (void)
 
void init_type_savebed (void)
 
void init_type_scroll (void)
 
void init_type_shop_inventory (void)
 
void init_type_shop_mat (void)
 
void init_type_sign (void)
 
void init_type_skillscroll (void)
 
void init_type_spell_effect (void)
 
void init_type_spellbook (void)
 
void init_type_spinner (void)
 
void init_type_teleporter (void)
 
void init_type_thrown_object (void)
 
void init_type_transport (void)
 
void init_type_trap (void)
 
void init_type_trapdoor (void)
 
void init_type_treasure (void)
 
void init_type_trigger (void)
 
void init_type_trigger_altar (void)
 
void init_type_trigger_button (void)
 
void init_type_trigger_pedestal (void)
 
void init_type_weapon_improver (void)
 
method_ret legacy_ob_apply (ob_methods *context, object *op, object *applier, int aflags)
 
void legacy_ob_describe (const ob_methods *context, const object *op, const object *observer, char *buf, size_t size)
 
method_ret legacy_ob_process (ob_methods *context, object *op)
 
void move_duplicator (object *op)
 
void move_marker (object *op)
 
void stop_projectile (object *op)
 

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 obj::arch, common_post_ob_move_on(), common_pre_ob_move_on(), llevDebug, LOG(), METHOD_ERROR, METHOD_OK, obj::name, archt::name, and obj::type.

+ Here is the call graph for this function:

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 obj::above, absdir(), obj::direction, DIRX, DIRY, obj::face, 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(), obj::level, llevError, LOG(), obj::map, METHOD_ERROR, METHOD_OK, new_faces, new_face_struct::number, OB_TYPE_MOVE_BLOCK, obj::owner, P_IS_ALIVE, P_OUT_OF_MAP, QUERY_FLAG, remove_ob(), rndm(), SET_ANIMATION, obj::speed, obj::state, stop_projectile(), obj::x, and obj::y.

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(), obj::inv, METHOD_ERROR, METHOD_OK, obj::owner, QUERY_FLAG, and obj::speed.

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, obj::level, 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 liv::Cha, obj::invisible, obj::level, MAX, METHOD_OK, rndm(), obj::speed_left, obj::stats, UP_OBJ_FACE, 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, obj::env, GIRDLE, GLOVES, HELMET, HORN, legacy_apply_container(), METHOD_ERROR, METHOD_OK, METHOD_UNHANDLED, PLAYER, RING, ROD, SHIELD, SKILL, SKILL_TOOL, obj::type, 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, obj::type, and WEAPON.

Referenced by init_ob_methods().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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 obj::above, obj::arch, free_object(), obj::level, llevInfo, LOG(), obj::map, archt::name, obj::nrof, obj::other_arch, mapdef::path, remove_ob(), obj::x, and obj::y.

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
peter.nosp@m.m@so.nosp@m.da.cs.nosp@m.ua.b.nosp@m.erkel.nosp@m.ey.e.nosp@m.du
Parameters
opmarker to move. Can be removed if it reached its marking limit.

Definition at line 61 of file marker.c.

References obj::above, add_string(), obj::below, create_archetype(), draw_ext_info(), liv::food, FORCE, FORCE_NAME, free_object(), GET_MAP_OB, liv::hp, insert_ob_in_ob(), obj::inv, obj::lore, obj::map, obj::msg, MSG_SUBTYPE_NONE, MSG_TYPE_MISC, NDI_NAVY, NDI_UNIQUE, PLAYER, remove_ob(), obj::slaying, obj::speed, obj::speed_left, obj::stats, obj::type, update_ob_speed(), obj::x, and obj::y.

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(), obj::inv, obj::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: