Crossfire Server, Branches 1.12
R18729
|
#include <object.h>
Main Crossfire structure, one ingame object.
Note that the ordering of this structure is sort of relevent - copy_object copies everything over beyond 'name' using memcpy. Thus, values that need to be copied need to be located beyond that point.
However, if you're keeping a pointer of some sort, you probably don't just want it copied, so you'll need to add to common/object.c, e.g. copy-object
I've tried to clean up this structure a bit (in terms of formatting) by making it more consistent. I've also tried to locate some of the fields more logically together (put the item related ones together, the monster related ones, etc. This structure is best viewed with about a 100 width screen. MSW 2002-07-05
See the documentation page for more details.
struct obj* obj::above |
Pointer to the object stacked above this one
Definition at line 146 of file object.h.
Referenced by add_exits_to_map(), alchemy(), apply_builder_floor(), apply_builder_item(), apply_builder_remove(), apply_map_builder(), attack_message(), attempt_jump(), blocked_link(), calculate_difficulty(), can_build_over(), cast_cause_disease(), cast_create_town_portal(), cast_destruction(), cast_detection(), cast_earth_to_dust(), cast_identify(), cast_light(), cast_polymorph(), cast_raise_dead_spell(), cast_transfer(), cfapi_object_get_property(), cfapi_object_set_property(), check_altar_sacrifice(), check_bullet(), check_doors(), check_earthwalls(), check_infection(), check_move_on(), check_spell_knockback(), check_trigger(), clear_object(), command_apply(), command_style_map_info(), command_take(), common_process_projectile(), communicate(), coords_in_shop(), counterspell(), decay_objects(), decrease_ob_nr(), deep_swamp_type_process(), delete_unique_items(), dispel_rune(), do_auto_apply(), do_exit_map(), do_harvest(), do_mood_floor(), do_skill_detect_curse(), do_skill_detect_magic(), do_skill_ident(), door_in_square(), drop(), esrv_draw_look(), esrv_get_ob_from_count(), find_by_name(), find_closest_monster(), find_dir(), find_monster_in_room_recursive(), find_nearest_living_creature(), find_target_for_friendly_spell(), find_traps(), fix_auto_apply(), gate_type_process(), generate_monster(), get_connection_rune(), get_msg_book(), get_pet_enemy(), get_pointed_target(), get_wall(), hit_map(), include_map_in_map(), increase_ob_nr(), insert_ob_in_map(), insert_ob_in_ob(), is_legal_2ways_exit(), kill_player(), link_multipart_objects(), look_at(), merge_ob(), merge_spell(), mood_change(), move_detector(), move_duplicator(), move_golem(), move_hole(), move_marker(), move_player_attack(), move_player_mover(), move_teleporter(), npc_call_help(), nuke_map_region(), obj_count_in_map(), ok_to_put_more(), peacemaker_type_process(), pet_move(), pick_arrow_target(), pick_lock(), player_changer_type_process(), present(), present_arch(), probe(), process_map(), reflwall(), remove_adjacent_doors(), remove_marking_runes(), remove_monsters(), remove_ob(), remove_trap(), replace_insert_ob_in_map(), retrofit_joined_wall(), roll_ob(), save_objects(), send_changed_object(), shop_inventory_type_apply(), singing(), skill_attack(), spell_find_dir(), stand_near_hostile(), START_TEST(), steal(), teleport(), trapdoor_type_move_on(), try_fit(), unblock_exits(), update_button(), update_position(), use_alchemy(), use_oratory(), and write_rune().
struct obj* obj::active_next |
Next object in the 'active' list This is used in process_events so that the entire object list does not need to be gone through.
Definition at line 137 of file object.h.
Referenced by cast_invisible(), cfapi_object_get_property(), clear_object(), count_active(), get_object(), process_events(), remove_from_active_list(), START_TEST(), and update_ob_speed().
struct obj* obj::active_prev |
Previous object in the 'active list This is used in process_events so that the entire object list does not need to be gone through.
Definition at line 141 of file object.h.
Referenced by cfapi_object_get_property(), clear_object(), get_object(), process_events(), remove_from_active_list(), START_TEST(), and update_ob_speed().
uint8 obj::anim_speed |
Ticks between animation-frames
Definition at line 268 of file object.h.
Referenced by add_object_to_socklist(), animate_weapon(), apply_changes_to_player(), cast_detection(), cfapi_object_get_property(), cfapi_object_set_property(), dragon_ability_gain(), esrv_update_item(), map2_add_ob(), process_events(), and process_object().
const char* obj::anim_suffix |
Used to determine combined animations
Definition at line 169 of file object.h.
Referenced by apply_changes_to_player(), attack_ob_simple(), cast_spell(), copy_object(), do_skill(), and player_apply().
uint16 obj::animation_id |
An index into the animation array
Definition at line 267 of file object.h.
Referenced by add_abilities(), add_object_to_socklist(), animate_object(), animate_weapon(), apply_anim_suffix(), apply_changes_to_player(), can_merge(), cast_detection(), cfapi_object_get_property(), cfapi_object_set_property(), dragon_ability_gain(), esrv_update_item(), map2_add_ob(), monster_use_scroll(), move_monster(), CREAnimationPanel::setAnimation(), and transport_type_apply().
struct archt* obj::arch |
Pointer to archetype
Definition at line 263 of file object.h.
Referenced by add_book_to_list(), add_one_item(), add_statbonus(), alchemy_failure_effect(), animate_object(), animate_weapon(), apply_builder_floor(), apply_builder_item(), apply_builder_wall(), apply_builder_window(), apply_changes_to_player(), apply_map_builder(), arch_to_object(), attempt_recipe(), calc_skill_exp(), can_build_over(), can_merge(), cfapi_object_get_property(), cfapi_object_set_property(), change_abil(), check_inv_recursive(), check_item(), check_login(), check_pick(), command_create(), command_resistances(), command_statistics(), command_use(), common_ob_move_on(), common_pre_ob_move_on(), convert_item(), copy_object(), count_unpaid(), Crossfire_Object_CheckArchInventory(), deathstrike_living(), dispel_rune(), do_auto_apply(), dragon_ability_gain(), dragon_eat_flesh(), dragon_level_gain(), drain_wand_charge(), dump_object(), dump_races(), eat_item(), enter_map(), find_better_arrow(), find_transmution_ob(), first_arch_pass(), fix_auto_apply(), fix_container_multipart(), fix_flesh_item(), fix_generated_item(), fix_multipart_object(), fix_object(), fix_stopped_arrow(), fix_summon_pet(), fix_walls(), follow_owner(), free_object2(), gate_type_process(), get_connection_rune(), get_exit_seed(), get_multi_size(), get_player(), hit_map(), hit_player(), hit_with_one_attacktype(), identify(), improve_armour(), include_map_in_map(), init_artifacts(), insert_multisquare_ob_in_map(), insert_ob_in_map_at(), is_dragon_pl(), is_old_wraith_pl(), is_road(), is_special_equipment(), is_true_undead(), is_wraith_pl(), key_change_class(), legal_artifact_combination(), load_objects(), local_check_loaded_object(), make_map_floor(), make_map_walls(), map2_add_ob(), matches_sacrifice(), monster_can_pick(), monster_check_apply(), move_creator(), move_duplicator(), ob_blocked(), pay_from_container(), perceive_self(), pick_joined_wall(), place_chest(), place_exits(), place_monsters(), player_can_view(), polymorph(), present_arch(), present_arch_in_ob(), print_monsters(), process_events(), process_map(), put_decor(), put_doors(), put_floor(), query_base_name(), query_cost(), recharge(), remove_marking_runes(), remove_ob(), remove_statbonus(), replace_insert_ob_in_map(), set_abs_magic(), set_ob_key_value_s(), set_object_face_main(), set_object_face_other(), should_director_abort(), START_TEST(), summon_object(), teleport(), transfer_ob(), transmute_materialname(), transport_type_apply(), trigger_connected(), update_turn_face(), worship_forbids_use(), and write_scroll().
obj::attack_movement |
What kind of attack movement
Type(s) | Description |
---|---|
Monster & NPC, Monster (Grimreaper) | (no description) |
Definition at line 242 of file object.h.
Referenced by cfapi_object_get_property(), cfapi_object_set_property(), check_enemy(), do_mood_floor(), find_enemy(), fix_summon_pet(), get_pet_enemy(), hit_player(), monster_move_no_enemy(), mood_change(), move_monster(), peacemaker_type_process(), polymorph_living(), steal(), summon_golem(), summon_object(), and use_oratory().
struct obj* obj::attacked_by |
This object start to attack us! only player & monster
Definition at line 233 of file object.h.
Referenced by cfapi_object_get_property(), find_enemy(), get_pet_enemy(), move_monster(), and START_TEST().
tag_t obj::attacked_by_count |
The tag of attacker, so we can be sure
Definition at line 234 of file object.h.
Referenced by clear_object(), find_enemy(), get_pet_enemy(), and move_monster().
obj::attacktype |
Bitmask of attacks this object does
Type(s) | Description |
---|---|
Disease | The disease will attack the host with the given <attacktype>. Godpower attacktype is commonly used for "unresistable" diseases. |
Hazard Floor | This attribute specifies the attacktypes that this floor uses to damage it's victims. Attacktypes are: physical, fire, cold.. etc. If you want a real tough hazard floor, add more than just one attacktype. |
Monster & NPC, Monster (Grimreaper) | This number is a bitmask, specifying the monster's attacktypes for melee damage. Attacktypes are: physical, magical, fire, cold.. etc. Strong monsters often have more than just physical attacktype. When a monster with multiple attacktypes hits an opponent, it will do as much damage as the "best" of it's attacktypes does. So, the more attacktypes, the more dangerous. Attacktypes "magic" and "chaos" are somehow exceptions. |
Mover | If forced movement is enabled, the mover "freezes" anyone it moves (so they are forced to move along a chain). For players there is no way to escape this forced movement, except being pushed by a second player. |
Potion | There are two types of special effects for potions: 'life restoration' - restore the player's stats lost by death or draining (this has nothing in common with the restoration spell!) 'improvement' - increase the player's maximum health/mana/grace by a very small amount. |
Projectile | This number is a bitmask, specifying the projectile's attacktypes. Attacktypes are: physical, magical, fire, cold.. etc. This works identical to melee weapons. Note that shooting weapons cannot have attacktypes. |
Rune | If there isn't any spell (and <summon monster> is unset), this attribute defines what attacktype to use for direct damage when the rune detonates. |
Trap | This attribute defines what attacktype to use for direct damage when the trap detonates. |
Weapon | This number is a bitmask, specifying the weapon's attacktypes. Attacktypes are: physical, magical, fire, cold.. etc. Most artifact weapons have no more than one or two attacktypes. Keep in mind that all weapons can be blessed by the player's deity, thus adding an additional attacktype. When a player hits a monster with a weapon that has more than one attacktype, then he will do as much damage as the "best" of his attacktypes does. So, the more attacktypes you've got, the better your chance to take advantage of a monster's vulnerabilities. (Btw: Same rule applies for monster vs. player.). Attacktypes "magic" and "chaos" are somehow exceptions. |
Definition at line 193 of file object.h.
Referenced by add_abilities(), animate_bomb(), animate_weapon(), attack_ob_simple(), calc_item_power(), can_merge(), cast_bless(), cast_change_ability(), cast_cone(), cast_destruction(), cast_detection(), cast_heal(), cast_light(), cast_smite_spell(), cfapi_object_get_property(), cfapi_object_set_property(), change_abil(), check_bullet(), counterspell(), create_aura(), create_bomb(), describe_item(), describe_monster(), do_symptoms(), dragon_ability_gain(), dump_gods(), enter_exit(), examine_monster(), explode_bullet(), explosion(), fire_arch_from_position(), fire_bolt(), fire_bow(), fire_bullet(), fire_swarm(), fix_flesh_item(), fix_object(), fix_stopped_arrow(), god_enchants_weapon(), kill_player(), magic_wall(), main(), merge_spell(), mood_change(), move_aura(), move_ball_spell(), move_bolt(), move_cone(), move_player_mover(), move_symptom(), new_exp(), ok_to_put_more(), player_mover_type_move_on(), potion_type_apply(), print_monsters(), rune_attack(), shuffle_attack(), special_potion(), spell_effect_type_move_on(), START_TEST(), summon_golem(), tailor_god_spell(), and trap_adjust().
struct obj* obj::below |
Pointer to the object stacked below this one
Definition at line 145 of file object.h.
Referenced by add_abilities(), adj_stealchance(), alchemy(), alchemy_failure_effect(), apply_changes_to_player(), apply_death_exp_penalty(), attack_hth(), attempt_do_alchemy(), attempt_recipe(), auto_apply(), become_follower(), calc_alch_danger(), can_apply_object(), cancellation(), cast_bless(), cast_change_ability(), cast_consecrate(), cast_create_missile(), cast_curse(), cast_detection(), cast_identify(), cast_polymorph(), cfapi_object_find_archetype_inside(), cfapi_object_get_property(), check_equipment(), check_good_armour(), check_good_weapon(), check_inv_recursive(), check_item(), check_login(), check_move_on(), check_physically_infect(), check_pick(), check_slaying_inventory(), check_special_prayers(), check_spell_known(), check_weapon_power(), clean_object(), clear_object(), command_cast_spell(), command_drop(), command_dropall(), command_dumpbelow(), command_empty(), command_examine(), command_rename_item(), command_resistances(), command_take(), content_recipe_value(), convert_item(), copy_object_with_inv(), count_unpaid(), Crossfire_Object_CheckArchInventory(), cure_disease(), describe_monster(), determine_god(), dispel_rune(), do_auto_apply(), do_harvest(), do_skill(), do_skill_attack(), do_skill_detect_curse(), do_skill_detect_magic(), do_skill_ident(), do_symptoms(), dragon_ability_gain(), dragon_eat_flesh(), dragon_level_gain(), drop(), eat_item(), empty_container(), enter_exit(), esrv_add_spells(), esrv_draw_look(), esrv_get_ob_from_count(), esrv_move_object(), esrv_send_inventory(), esrv_update_spells(), execute_event(), find_arrow(), find_best_apply_object_match(), find_best_player_hth_skill(), find_better_arrow(), find_key(), find_marked_object(), find_mon_throw_ob(), find_obj_by_type_subtype(), find_or_create_connection_for_map(), find_random_spell_in_ob(), find_skill_by_name(), find_skill_by_number(), find_symptom(), find_target_for_friendly_spell(), find_throw_ob(), find_transmution_ob(), find_traps(), fire_bow(), fix_auto_apply(), fix_container(), fix_container_multipart(), fix_object(), flag_inv(), follower_has_similar_item(), follower_remove_given_items(), free_object2(), generate_monster_inv(), get_item_from_body_location(), get_payment(), give_initial_items(), god_enchants_weapon(), god_examines_priest(), god_removes_curse(), grant_immunity(), has_ability(), hit_map(), hit_player(), hit_with_arrow(), hit_with_one_attacktype(), identify_altar_type_move_on(), infect_object(), insert_ob_in_map(), insert_ob_in_ob(), inventory(), is_defined_recipe(), is_old_wraith_pl(), is_true_undead(), is_wraith_pl(), learn_skill(), link_player_skills(), look_at(), lookup_spell_by_name(), loot_object(), mark_inventory_as_no_drop(), meditate(), merge_ob(), monster_apply_below(), monster_check_apply(), monster_check_pickup(), monster_choose_random_spell(), monster_use_range(), monster_use_scroll(), monster_use_skill(), move_creator(), move_detector(), move_marker(), move_ob(), numb_ob_inside(), op_on_battleground(), pay_for_amount(), pay_for_item(), pay_from_container(), perceive_self(), pick_up(), player_apply_below(), player_changer_type_process(), polymorph_living(), pray(), present_arch_in_ob(), present_in_ob(), present_in_ob_by_name(), put_object_in_sack(), query_money(), rangetostring(), remove_contents(), remove_curse(), remove_ob(), remove_trap(), remove_unpaid_objects(), runapplyobject(), runpickup(), runpickupobject(), save_life(), save_throw_object(), sell_item(), shop_mat_type_move_on(), show_matching_spells(), show_skills(), START_TEST(), steal(), stop_using_item(), subtract_player_exp(), sum_weight(), talk_to_npc(), transmute_item_to_flower(), transport_type_apply(), turn_one_transport(), unapply_for_ob(), unflag_inv(), use_alchemy(), use_skill(), and write_rune().
sint8 obj::body_info[NUM_BODY_LOCATIONS] |
Body info as loaded from the file
Definition at line 223 of file object.h.
Referenced by adj_stealchance(), can_apply_object(), command_body(), command_possess(), examine(), first_arch_pass(), fix_object(), get_item_from_body_location(), local_check_loaded_object(), monster_can_pick(), and unapply_for_ob().
sint8 obj::body_used[NUM_BODY_LOCATIONS] |
Calculated value based on items equipped
Definition at line 224 of file object.h.
Referenced by adj_stealchance(), can_apply_object(), command_body(), first_arch_pass(), fix_object(), and unapply_for_ob().
obj::carrying |
How much weight this object contains
Type(s) | Description |
---|---|
Monster & NPC, Monster (Grimreaper) | If a monster has something in the inventory, this value can be set to reflect the slowdown due to the carried weight. |
Definition at line 218 of file object.h.
Referenced by add_weight(), cfapi_object_get_property(), check_login(), check_trigger(), do_throw(), fix_object(), fix_weight(), insert_ob_in_ob(), jump(), key_change_class(), pick_up_object(), query_weight(), remove_ob(), sack_can_hold(), sell_item(), START_TEST(), sub_weight(), sum_weight(), transport_can_hold(), transport_type_apply(), trapdoor_type_move_on(), and update_button().
obj::casting_time |
Time left before spell goes off
Type(s) | Description |
---|---|
Spell | (no description) |
Definition at line 253 of file object.h.
Referenced by append_spell(), attack_ob_simple(), cast_spell(), clear_object(), process_events(), process_players1(), and rangetostring().
struct obj* obj::chosen_skill |
The skill chosen to use
Definition at line 237 of file object.h.
Referenced by add_player_exp(), apply_special(), attack_message(), calc_alch_danger(), cfapi_object_get_property(), cfapi_object_set_property(), change_skill(), change_spell(), clear_skill(), cure_disease(), deathstrike_living(), do_harvest(), do_skill(), do_skill_attack(), fire(), fire_bow(), fix_object(), hit_with_one_attacktype(), kill_object(), legal_range(), monster_use_skill(), pick_arrow_target(), play_again(), rangetostring(), START_TEST(), and unapply_special().
uint16 obj::client_type |
Public type information. see doc/Developers/objects
Definition at line 191 of file object.h.
Referenced by add_object_to_socklist(), can_merge(), and cfapi_object_get_property().
obj::container |
Current container being used. I think this is only used by the player right now.
Type(s) | Description |
---|---|
Container | The container can hold a maximum total weight of the given value in gram. Note that this weight limit is calculated after the weight reduction (<reduce weight>) has been applied. |
Transport | How much this transport can carry. |
Definition at line 149 of file object.h.
Referenced by apply_container(), cfapi_object_get_property(), cfapi_object_set_property(), clear_object(), command_apply(), command_dropall(), command_take(), decrease_ob_nr(), drop(), esrv_get_ob_from_count(), increase_ob_nr(), loot_object(), pick_up(), player_apply_below(), put_object_in_sack(), query_flags(), query_name(), remove_ob(), runapply(), save_player(), send_changed_object(), and START_TEST().
struct pl* obj::contr |
Pointer to the player which control this object
Definition at line 134 of file object.h.
Referenced by action_makes_visible(), add_player_exp(), add_statbonus(), alchemy(), animate_weapon(), apply_changes_to_player(), apply_map_builder(), apply_savebed(), apply_special(), attack_message(), attempt_hide(), attempt_jump(), basic_emote(), become_follower(), blinded_sight(), blocked_link(), book_type_apply(), can_detect_enemy(), cast_create_town_portal(), cast_invisible(), cast_spell(), cast_word_of_recall(), caster_level(), cfapi_object_drop(), cfapi_object_get_property(), cfapi_object_set_property(), cfapi_object_teleport(), cfapi_party_get_property(), change_abil(), change_skill(), change_spell(), check_login(), check_output_buffers(), check_pick(), check_score(), check_special_prayers(), check_wall(), clear_los(), clear_object(), clear_skill(), clock_type_apply(), command_applymode(), command_bowmode(), command_brace(), command_cast_spell(), command_create(), command_diff(), command_drop(), command_dropall(), command_dump(), command_dumpbelow(), command_explore(), command_fire(), command_fire_stop(), command_follow(), command_forget_spell(), command_free(), command_insert_into(), command_kick(), command_language(), command_learn_spell_or_prayer(), command_listen(), command_mark(), command_nowiz(), command_output_count(), command_output_sync(), command_party(), command_party_rejoin(), command_passwd(), command_patch(), command_peaceful(), command_petmode(), command_pickup(), command_possess(), command_quit(), command_remove(), command_reply(), command_reset(), command_run(), command_run_stop(), command_search_items(), command_sound(), command_stack_clear(), command_stack_list(), command_stack_pop(), command_stack_push(), command_statistics(), command_stay(), command_teleport(), command_tell_all(), command_title(), command_toggle_shout(), command_usekeys(), confirm_party_password(), confirm_password(), decrease_ob_nr(), deep_swamp_type_process(), describe_monster(), dimension_door(), display_new_pickup(), do_forget_spell(), do_hidden_move(), do_learn_spell(), do_mood_floor(), do_skill_attack(), do_some_living(), do_wizard_dm(), do_wizard_hide(), draw_client_map(), draw_client_map2(), draw_ext_info(), draw_magic_map(), drop(), drop_object(), eat_special_food(), enter_exit(), enter_map(), enter_player_savebed(), esrv_draw_look(), esrv_get_ob_from_count(), esrv_move_object(), esrv_send_inventory(), esrv_send_item(), esrv_update_item(), execute_newserver_command(), expand_lighted_sight(), expand_sight(), find_key(), find_marked_object(), fire(), fire_bow(), fire_misc_object(), fix_luck(), fix_object(), form_party(), friendly_fire(), get_language(), get_name(), get_party_password(), get_password(), get_pet_enemy(), get_player(), give_skill_by_name(), gravestone_text(), handle_newcs_player(), improve_armour(), improve_weapon(), increase_ob_nr(), insert_ob_in_map(), insert_ob_in_ob(), is_legal_2ways_exit(), item_matched_string(), key_change_class(), key_confirm_quit(), key_roll_stat(), kill_object(), kill_player(), leave(), legal_range(), link_player_skills(), make_visible(), makes_invisible_to(), manual_apply(), move_golem(), move_internal(), move_ob(), move_player(), move_player_attack(), move_player_mover(), pet_move(), pick_up(), play_again(), player_apply(), player_apply_below(), player_can_view(), player_changer_type_process(), player_fire_bow(), player_lvl_adj(), poison_type_apply(), potion_type_apply(), print_los(), print_message(), push_ob(), put_object_in_sack(), rangetostring(), receive_party_password(), receive_play_again(), receive_player_name(), receive_player_password(), remove_ob(), remove_statbonus(), roll_again(), roll_stats(), runghosted(), runmovement(), save_player(), send_changed_object(), send_party_message(), send_plugin_custom_message(), set_dragon_name(), set_first_map(), set_pickup_mode(), set_title(), set_wall(), share_exp(), shop_mat_type_move_on(), should_arena_attack(), show_skills(), skill_attack(), spellbook_type_apply(), stand_near_hostile(), start_info(), START_TEST(), steal(), summon_golem(), swap_stat(), teleport(), transfer_ob(), transmute_item_to_flower(), transport_type_apply(), turn_one_transport(), unapply_special(), update_los(), update_object(), update_position(), write_scroll(), and wrong_password().
tag_t obj::count |
Unique object number for this object
Definition at line 157 of file object.h.
Referenced by add_button_link(), add_friendly_object(), add_object_to_socklist(), animate_weapon(), append_spell(), attack_ob_simple(), cast_cone(), cast_create_missile(), cast_magic_storm(), cast_smite_spell(), cfapi_object_get_property(), cfapi_object_set_property(), cftimer_create(), check_bullet(), check_move_on(), check_pick(), command_cast_spell(), command_create(), command_dumpbelow(), command_lock_item(), command_mark(), command_patch(), command_rename_item(), command_stack_list(), command_stack_push(), Crossfire_Object_new(), Crossfire_Object_wrap(), Crossfire_Player_new(), do_throw(), drop(), drop_object(), dump_all_objects(), dump_friendly_objects(), dump_object(), esrv_get_ob_from_count(), esrv_move_object(), esrv_new_player(), esrv_remove_spell(), esrv_send_inventory(), esrv_send_item(), esrv_update_item(), esrv_update_spells(), explode_bullet(), find_enemy(), find_marked_object(), find_mon_throw_ob(), find_object(), fire(), fire_bow(), free_object2(), get_button_links(), get_button_value(), get_dm_object(), get_object(), get_owner(), get_pet_enemy(), get_who_escape_code_value(), handle_newcs_player(), hit_map(), hit_player(), hit_with_arrow(), insert_ob_in_ob(), inventory(), legal_range(), lighter_type_apply(), look_at(), mark_item_cmd(), monster_check_apply(), monster_check_pickup(), monster_use_range(), monster_use_skill(), move_cone(), move_golem(), move_missile(), move_monster(), move_symptom(), Object_GetExists(), pet_move(), pick_up(), player_apply(), process_events(), put_object_in_sack(), query_cost(), remove_friendly_object(), remove_ob(), rune_attack(), set_owner(), spell_effect_type_move_on(), spell_failure(), spring_trap(), START_TEST(), summon_golem(), transmute_item_to_flower(), treasure_type_apply(), trigger_connected(), update_button(), update_buttons(), and verify_button_links().
struct obj* obj::current_weapon |
Pointer to the weapon currently used
Definition at line 221 of file object.h.
Referenced by attack_message(), attack_ob_simple(), cfapi_object_get_property(), do_skill_attack(), fix_object(), hit_with_one_attacktype(), kill_object(), START_TEST(), and unapply_special().
const char* obj::custom_name |
Custom name assigned by player
Definition at line 285 of file object.h.
Referenced by add_object_to_socklist(), adjust_sign_msg(), can_merge(), cfapi_object_get_property(), cfapi_object_set_property(), command_rename_item(), copy_object(), esrv_update_item(), examine(), item_matched_string(), sell_item(), and START_TEST().
uint8 obj::dam_modifier |
How going up in level effects damage
Definition at line 258 of file object.h.
Referenced by charge_mana_effect(), explode_bullet(), fire_bullet(), fix_generated_item(), level_for_item(), potion_type_apply(), and SP_level_dam_adjust().
struct struct_dialog_information* obj::dialog_information |
Parsed dialog information for this object. Valid if FLAG_DIALOG_PARSED is set (but can be NULL).
Definition at line 158 of file object.h.
Referenced by free_dialog_information(), get_dialog_message(), and parse_dialog_information().
sint8 obj::direction |
Means the object is moving that way.
Definition at line 185 of file object.h.
Referenced by animate_bomb(), animate_object(), animate_weapon(), apply_savebed(), cast_curse(), cfapi_object_get_property(), cfapi_object_set_property(), command_kick(), common_process_projectile(), control_golem(), director_type_move_on(), do_throw(), dragon_ability_gain(), enter_map(), explode_bullet(), fire_arch_from_position(), fire_bolt(), fire_bow(), fire_bullet(), fire_swarm(), fix_stopped_arrow(), fix_summon_pet(), forklightning(), get_player(), handle_newcs_player(), key_confirm_quit(), kill_player(), merge_spell(), monster_use_scroll(), move_ball_spell(), move_bolt(), move_bullet(), move_golem(), move_missile(), move_monster(), move_ob(), move_player(), move_swarm_spell(), pet_move(), process_events(), process_object(), spinner_type_move_on(), spring_trap(), START_TEST(), summon_golem(), turn_one_transport(), turn_transport(), update_turn_face(), and write_rune().
sint16* obj::discrete_damage |
damage values, based on each attacktype.
Definition at line 291 of file object.h.
Referenced by clear_object(), copy_object(), free_arch(), free_object2(), get_object(), and hit_with_one_attacktype().
obj::duration |
How long the spell lasts
Type(s) | Description |
---|---|
Spell | (no description) |
Definition at line 254 of file object.h.
Referenced by alchemy(), animate_bomb(), animate_weapon(), cast_bless(), cast_change_ability(), cast_cone(), cast_create_missile(), cast_curse(), cast_destruction(), cast_heal(), cast_invisible(), cast_light(), cast_magic_storm(), cast_smite_spell(), cast_word_of_recall(), cfapi_object_get_property(), cfapi_object_set_property(), check_spell_expiry(), confuse_living(), create_aura(), create_bomb(), explode_bullet(), explosion(), fire_arch_from_position(), fire_bolt(), fire_bullet(), fire_swarm(), forklightning(), magic_wall(), merge_spell(), move_aura(), move_bolt(), move_cone(), move_swarm_spell(), remove_force(), store_spell_expiry(), summon_golem(), swap_random_stats(), and transmute_item_to_flower().
uint8 obj::duration_modifier |
how level modifies duration
Definition at line 255 of file object.h.
Referenced by fix_generated_item(), level_for_item(), and SP_level_duration_adjust().
obj::elevation |
Elevation of this terrain - used in weather code
Definition at line 273 of file object.h.
Referenced by do_exit_map().
struct obj* obj::enemy |
Monster/player to follow even if not closest
Definition at line 232 of file object.h.
Referenced by alchemy_failure_effect(), cast_invisible(), cfapi_object_get_property(), cfapi_object_set_property(), check_enemy(), command_mon_aggr(), do_mood_floor(), enter_map(), find_enemy(), fix_summon_pet(), flee_player(), get_pet_enemy(), hit_player(), mood_change(), move_monster(), move_player_attack(), npc_call_help(), pet_move(), push_ob(), scare_creature(), START_TEST(), and summon_object().
struct obj* obj::env |
Pointer to the object which is the environment. This is typically the container that the object is in.
Definition at line 151 of file object.h.
Referenced by abort_attack(), add_weight(), animate_bomb(), apply_container(), apply_special(), attempt_recipe(), auto_apply(), blindness_type_process(), book_type_apply(), cancellation(), cfapi_object_get_property(), cfapi_object_set_property(), change_object(), check_infection(), check_spell_expiry(), clear_object(), decrease_ob_nr(), do_symptoms(), drop(), dump_object(), esrv_move_object(), esrv_remove_spell(), esrv_send_item(), esrv_update_item(), execute_word_of_recall(), explode_bullet(), find_by_name(), find_symptom(), fix_container_multipart(), get_player_container(), god_examines_item(), grant_immunity(), handle_apply_yield(), hit_map(), hit_with_arrow(), identify(), increase_ob_nr(), infect_object(), insert_ob_in_ob(), legacy_ob_apply(), local_check_loaded_object(), make_item_from_recipe(), make_object_glow(), move_aura(), move_detector(), move_disease(), move_symptom(), object_get_env_recursive(), pick_up(), pick_up_object(), play_sound_map(), play_sound_player_only(), player_apply(), player_attack_door(), poisoning_type_process(), process_events(), put_object_in_sack(), query_flags(), query_name(), remove_force(), remove_ob(), remove_symptoms(), save_throw_object(), send_changed_object(), spellbook_type_apply(), start_animation(), START_TEST(), sub_weight(), transport_type_apply(), and update_object().
obj::expmul |
needed experience = (calc_exp*expmul) - means some races/classes can need less/more exp to gain levels
Type(s) | Description |
---|---|
Skill | This is the ratio of experience the players total should increase by when this skill is used. If this is zero, then experience only goes to to the skill. Values higher than 1 are allowed. Note that experience rewarded to the players total is in addition to that given to the skill. Eg, if player should get 500 exp for using a skill, and expmul is 1, the player will get 500 added to that skill as well as 500 to their total. |
Definition at line 246 of file object.h.
Referenced by add_player_exp(), cfapi_object_get_property(), cfapi_object_set_property(), clear_object(), command_statistics(), player_lvl_adj(), show_skills(), and START_TEST().
obj::face |
Face with colors
Type(s) | Description |
---|---|
Altar, Altar Trigger, Amulet, Battleground, Book, Boots, Bracers, Breastplate Armor, Button, Button Trigger, Class Changer, Cloak, Clock, Container, Converter, Creator, Detector, Director, Disease, Door, Duplicator, Event, Exit, Flesh, Floor, Floor (Encounter), Food, Gate, Girdle, Gloves, Handle, Handle Trigger, Hazard Floor, Helmet, Holy Altar, Horn, Inorganic, Inventory Checker, Item Transformer, Jewel, Key, Locked Door, Magic Ear, Magic Wall, Marker, Money, Monster & NPC, Monster (Grimreaper), Mood Floor, Mover, Pedestal, Pit, Poison Food, Potion, Power Crystal, Projectile, Ring, Rod, Rune, Savebed, Scroll, Shield, Shooting Weapon, Shop Floor, Shop Mat, Sign & Magic Mouth, Skill, Skill Scroll, Special Key, Spell, Spellbook, Spinner, Swamp, Teleporter, Timed Gate, Transport, Trap, Trapdoor, Treasure, Trigger Marker, Wall, Wand & Staff, Weak Wall, Weapon | The image-name defines what image is displayed for this object in-game. |
Definition at line 183 of file object.h.
Referenced by add_abilities(), add_face_layer(), add_object_to_socklist(), adjust_sign_msg(), animate_object(), animate_weapon(), append_spell(), apply_changes_to_player(), CREUtils::archetypeNode(), CREUtils::artifactNode(), cast_detection(), cfapi_object_get_property(), cfapi_object_set_property(), clear_object(), common_process_projectile(), dragon_ability_gain(), drain_wand_charge(), esrv_new_player(), esrv_update_item(), first_arch_pass(), fix_stopped_arrow(), CREUtils::formulaeNode(), lock_and_hide_doors(), magic_mapping_mark(), magic_mapping_mark_recursive(), main(), map2_add_ob(), move_monster(), place_fountain_with_specials(), process_map(), set_object_face_main(), set_object_face_other(), CREFacePanel::setFace(), START_TEST(), tear_down_wall(), transport_type_apply(), trap_show(), update_position(), and write_rune().
sint8 obj::facing |
Object is oriented/facing that way.
Definition at line 186 of file object.h.
Referenced by add_abilities(), apply_anim_suffix(), apply_changes_to_player(), attempt_jump(), cast_cause_disease(), cfapi_object_get_property(), cfapi_object_set_property(), command_cast_spell(), command_throw(), magic_wall(), monster_use_scroll(), move_monster(), move_player(), pick_lock(), potion_type_apply(), pray_at_altar(), process_events(), process_object(), runturn(), scroll_type_apply(), skill_attack(), turn_one_transport(), turn_transport(), and use_skill().
uint32 obj::flags[4] |
Various flags
Definition at line 266 of file object.h.
Referenced by apply_builder_window(), can_merge(), check_pick(), and fix_walls().
sint8 obj::gen_sp_armour |
Sp regen penalty this object has (was last_heal)
Definition at line 214 of file object.h.
Referenced by add_abilities(), cfapi_object_get_property(), cfapi_object_set_property(), and local_check_loaded_object().
obj::glow_radius |
indicates the glow radius of the object
Definition at line 215 of file object.h.
Referenced by cfapi_object_get_property(), cfapi_object_set_property(), describe_item(), fix_object(), has_carried_lights(), insert_ob_in_map(), insert_ob_in_ob(), make_object_glow(), perceive_self(), remove_ob(), stand_in_light(), and update_position().
struct obj* obj::head |
Points to the main object of a large body
Definition at line 154 of file object.h.
Referenced by add_monster(), altar_type_move_on(), animate_object(), apply_anim_suffix(), attack_ob(), blocked_link(), can_build_over(), can_pick(), can_see_enemy(), cast_cause_disease(), cast_destruction(), cast_light(), cfapi_object_get_property(), check_spell_knockback(), check_trigger(), clear_object(), command_free(), command_remove(), common_pre_ob_move_on(), counterspell(), decay_objects(), delete_unique_items(), do_auto_apply(), do_exit_map(), do_symptoms(), dump_object(), esrv_draw_look(), esrv_get_ob_from_count(), esrv_send_inventory(), esrv_send_item(), esrv_update_item(), examine_monster(), find_dir(), find_mon_throw_ob(), find_multi_free_spot_around(), find_multi_free_spot_within_radius(), first_arch_pass(), fix_auto_apply(), fix_container_multipart(), fix_multipart_object(), fix_summon_pet(), free_all_objects(), friendly_fire(), generate_monster_arch(), get_attack_mode(), get_multi_size(), get_pet_enemy(), get_pointed_target(), hit_map(), hit_player(), hole_type_move_on(), include_map_in_map(), infect_object(), insert_multisquare_ob_in_map(), insert_ob_in_map(), insert_ob_in_map_at(), insert_ob_in_ob(), link_multipart_objects(), load_objects(), look_at(), manual_apply(), map2_add_ob(), mood_change(), move_golem(), move_monster(), move_ob(), move_player_attack(), move_player_mover(), move_symptom(), move_teleporter(), nuke_map_region(), object_create_arch(), object_create_clone(), peacemaker_type_process(), pet_move(), pick_arrow_target(), pick_random_object(), player_can_view(), polymorph_living(), probe(), process_map(), push_ob(), put_a_monster(), remove_monsters(), remove_ob(), roll_ob(), save_objects(), scroll_type_apply(), singing(), spell_find_dir(), START_TEST(), steal(), stick_arrow(), teleport(), transfer_ob(), trigger_altar_type_move_on(), trigger_connected(), trigger_pedestal_type_move_on(), try_fit(), update_button(), and use_oratory().
uint32 obj::hide |
The object is hidden, not invisible
Definition at line 238 of file object.h.
Referenced by action_makes_visible(), attack_ob_simple(), attempt_hide(), attempt_steal(), can_detect_enemy(), can_see_enemy(), cfapi_object_get_property(), cfapi_object_set_property(), do_skill_attack(), hide(), make_visible(), move_monster(), move_player(), and move_player_attack().
struct obj* obj::inv |
Pointer to the first object in the inventory
Definition at line 148 of file object.h.
Referenced by add_abilities(), adj_stealchance(), alchemy(), alchemy_failure_effect(), altar_type_move_on(), apply_changes_to_player(), apply_death_exp_penalty(), attack_hth(), attempt_do_alchemy(), attempt_pick_lock(), attempt_recipe(), attempt_steal(), auto_apply(), become_follower(), calc_alch_danger(), can_apply_object(), can_merge(), can_pay(), cancellation(), cast_bless(), cast_change_ability(), cast_create_missile(), cast_curse(), cast_detection(), cast_dust(), cast_identify(), cfapi_object_find_archetype_inside(), cfapi_object_get_property(), check_equipment(), check_good_armour(), check_good_weapon(), check_inv_recursive(), check_login(), check_physically_infect(), check_slaying_inventory(), check_special_prayers(), check_spell_known(), check_weapon_power(), clean_object(), clear_object(), command_apply(), command_cast_spell(), command_drop(), command_dropall(), command_empty(), command_rename_item(), command_resistances(), command_take(), common_projectile_move_on(), content_recipe_value(), convert_item(), copy_object_with_inv(), count_unpaid(), Crossfire_Object_CheckArchInventory(), cure_disease(), describe_monster(), destroy_object(), determine_god(), dispel_rune(), do_auto_apply(), do_harvest(), do_skill(), do_skill_attack(), do_skill_detect_curse(), do_skill_detect_magic(), do_skill_ident(), do_symptoms(), do_throw(), dragon_ability_gain(), dragon_eat_flesh(), dragon_level_gain(), drain_rod_charge(), dump_object(), empty_container(), enter_exit(), esrv_add_spells(), esrv_draw_look(), esrv_get_ob_from_count(), esrv_move_object(), esrv_send_inventory(), esrv_update_spells(), examine(), execute_event(), find_arrow(), find_best_object_match(), find_best_player_hth_skill(), find_better_arrow(), find_key(), find_marked_object(), find_mon_throw_ob(), find_obj_by_type_subtype(), find_or_create_connection_for_map(), find_random_spell_in_ob(), find_skill_by_name(), find_skill_by_number(), find_symptom(), find_target_for_friendly_spell(), find_throw_ob(), find_traps(), fire_bow(), fire_misc_object(), fix_auto_apply(), fix_container(), fix_container_multipart(), fix_generated_item(), fix_object(), flag_inv(), follower_has_similar_item(), follower_remove_given_items(), free_object2(), generate_monster_inv(), generate_treasure(), get_payment(), give_initial_items(), god_enchants_weapon(), god_examines_priest(), god_gives_present(), god_removes_curse(), grant_immunity(), has_ability(), hit_map(), hit_player(), hit_with_arrow(), hit_with_one_attacktype(), identify(), identify_altar_type_move_on(), infect_object(), insert_ob_in_ob(), inventory(), is_defined_recipe(), is_old_wraith_pl(), is_true_undead(), is_wraith_pl(), kill_player(), learn_skill(), leave(), level_for_item(), link_multipart_objects(), link_player_skills(), load_objects(), local_check_loaded_object(), look_at(), lookup_spell_by_name(), loot_object(), make_item_from_recipe(), mark_inventory_as_no_drop(), meditate(), monster_cast_spell(), monster_check_apply(), monster_choose_random_spell(), monster_use_range(), monster_use_scroll(), monster_use_skill(), move_creator(), move_detector(), move_firewall(), move_marker(), move_ob(), numb_ob_inside(), op_on_battleground(), pay_for_amount(), pay_for_item(), pay_from_container(), perceive_self(), pick_up(), pick_up_object(), player_apply_below(), player_attack_door(), player_changer_type_process(), polymorph_living(), potion_type_apply(), present_arch_in_ob(), present_in_ob(), present_in_ob_by_name(), put_object_in_sack(), query_base_name(), query_money(), query_short_name(), rangetostring(), recharge(), remove_contents(), remove_curse(), remove_force(), remove_ob(), remove_trap(), remove_unpaid_objects(), runapplyobject(), rune_attack(), save_life(), save_player(), save_throw_object(), scroll_type_apply(), sell_item(), shop_mat_type_move_on(), show_matching_spells(), show_skills(), spellbook_type_apply(), spring_trap(), START_TEST(), stop_item(), stop_projectile(), stop_using_item(), subtract_player_exp(), sum_weight(), talk_to_npc(), thrown_object_type_process(), transmute_item_to_flower(), transport_type_apply(), trap_adjust(), trap_disarm(), treasure_type_apply(), turn_one_transport(), unapply_for_ob(), unflag_inv(), use_alchemy(), use_skill(), write_rune(), and write_scroll().
obj::invisible |
How much longer the object will be invis
Definition at line 211 of file object.h.
Referenced by action_makes_visible(), adj_attackroll(), adj_stealchance(), adjust_sign_msg(), animate_object(), animate_one(), apply_special(), attempt_hide(), attempt_steal(), become_follower(), can_be_transmuted(), can_detect_enemy(), can_pick(), can_see_enemy(), cancellation(), cast_detection(), cast_identify(), cast_invisible(), cfapi_object_get_property(), cfapi_object_set_property(), check_wakeup(), command_drop(), command_dropall(), command_invisible(), command_nowiz(), command_rename_item(), command_take(), common_trap_type_process(), create_all_treasures(), create_one_treasure(), determine_holy_arch(), do_hidden_move(), do_skill_attack(), do_skill_detect_curse(), do_skill_detect_magic(), do_skill_ident2(), do_wizard_hide(), dragon_ability_gain(), draw_client_map2(), drop(), find_best_apply_object_match(), find_marked_object(), find_mon_throw_ob(), find_throw_ob(), fire_swarm(), fix_object(), fix_summon_pet(), get_item_from_body_location(), god_intervention(), god_removes_curse(), handle_newcs_player(), hide(), hit_with_one_attacktype(), identify_altar_type_move_on(), inventory(), look_at(), loot_object(), magic_mapping_mark(), magic_mapping_mark_recursive(), make_visible(), makes_invisible_to(), player_apply_below(), polymorph_item(), process_map(), runghosted(), unapply_special(), and update_position().
obj::item_power |
Power rating of the object
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield, Shooting Weapon, Weapon | The <item power> value measures how "powerful" an artifact is. Players will only be able to wear equipment with a certain total amount of <item power>, depending on their own level. This is the only way to prevent low level players to wear "undeserved" equipment (like gifts from other players or cheated items). It is very important to adjust the <item power> value carefully for every artifact you create! If zero/unset, the CF server will calculate a provisional value at runtime, but this is never going to be an accurate measurement of <item power>. |
Definition at line 213 of file object.h.
Referenced by add_abilities(), add_one_item(), apply_special(), can_merge(), cfapi_object_get_property(), cfapi_object_set_property(), describe_item(), do_skill_detect_curse(), do_skill_detect_magic(), do_skill_ident2(), fix_generated_item(), god_enchants_weapon(), improve_armour(), improve_weapon(), improve_weapon_magic(), and local_check_loaded_object().
key_value* obj::key_values |
Fields not explictly known by the loader.
Definition at line 286 of file object.h.
Referenced by can_merge(), compare_ob_value_lists_one(), copy_object(), free_key_values(), get_ob_key_link(), get_ob_key_value(), set_ob_key_value_s(), and START_TEST().
uint8 obj::last_anim |
Last sequence used to draw face
Definition at line 269 of file object.h.
Referenced by animate_weapon(), apply_anim_suffix(), cast_detection(), dragon_ability_gain(), and process_events().
obj::last_eat |
How long since we last ate
Type(s) | Description |
---|---|
Disease | Every time the disease "moves", the player's food is reduced by the value of <food depletion>. For negative values, a %-based amount is taken. |
Definition at line 207 of file object.h.
Referenced by apply_sign(), apply_special(), become_follower(), cast_cause_disease(), cfapi_object_get_property(), cfapi_object_set_property(), describe_item(), do_symptoms(), dragon_eat_flesh(), dragon_level_gain(), dump_gods(), improve_weapon(), improve_weapon_stat(), lighter_type_apply(), and trigger_connected().
obj::last_grace |
As last_sp, except for grace
Type(s) | Description |
---|---|
Disease | The <attenuation> value reduces the diseases' <infectiousness> every time it infects someone new. This limits how many generations a disease can propagate. |
Definition at line 210 of file object.h.
Referenced by become_follower(), cast_curse(), cast_heal(), cfapi_object_get_property(), cfapi_object_set_property(), dump_gods(), infect_object(), and pray().
obj::last_heal |
Last healed. Depends on constitution
Type(s) | Description |
---|---|
Breastplate Armor | This poses a penalty to spell regeneration speed, for wearing the armor. The bigger the spellpoint penalty, the worse. |
Inventory Checker | <remove match> means remove object if found. Setting this is usually not recommended because inventory checkers are in general invisible. So, unlike for altars/ locked doors, the player won't expect to lose an object when walking over that square. And he doesn't even get a message either. So, if you enable <remove match>, make sure to inform the player what's going on! |
Definition at line 208 of file object.h.
Referenced by become_follower(), cast_raise_dead_spell(), cfapi_object_get_property(), cfapi_object_set_property(), check_inv(), dump_gods(), grant_immunity(), local_check_loaded_object(), meditate(), and monster_do_living().
obj::last_sp |
As last_heal, but for spell points
Type(s) | Description |
---|---|
Altar Trigger | If this attribute is enabled, the altar_trigger won't push the connected value by altar reset. Only ONCE by dropping the sacrifice. This is typically used when the altar is connected to a creator, e.g. for selling tickets. If this attribute is disabled (default), the altar_trigger will push the connected value TWICE per sacrifice: First by dropping sacrifice, second by reset. This mode is typically used for altars being connected to gates, resulting in the gate being opened and closed again. |
Breastplate Armor | Slowdown penalty reduces the player's walking speed when wearing the armor. Bigger values are worse - zero is best. |
Disease | If set, the disease imposes a <slowdown penalty> while being infected. The player's speed is reduced by <slowdown penalty> % of normal value. |
Inventory Checker | Enabled means having that object is a match. Disabled means not having that object is a match. |
Mood Floor | <mood> is used to determine what will happen to the monster when affected by the mood floor: <mood> 'furious': Makes all monsters aggressive <mood> 'angry': As above but pets are unaffected <mood> 'calm': Makes all monsters unaggressive <mood> 'sleep': Puts all monsters to sleep <mood> 'charm': Turns monster into a pet of person who triggers the square. This setting is not enabled for continuous operation, you need to insert a <connection> value! |
Weapon | The weapon speed determines how often the wielder can swing the weapon during a certain period of time. The lower the faster, <weapon speed> 1 is best (that is lightning- fast). A typical average value is 8. Speed and damage should be kept in reasonable relation. |
Definition at line 209 of file object.h.
Referenced by add_abilities(), become_follower(), blocked_link(), cast_cause_disease(), cast_heal(), cfapi_object_get_property(), cfapi_object_set_property(), check_inv(), check_trigger(), do_mood_floor(), do_symptoms(), do_throw(), dump_gods(), meditate(), monster_do_living(), and thrown_object_type_process().
obj::level |
Level of creature or object
Type(s) | Description |
---|---|
Book | If this value is set to be greater than zero, the player needs a certain literacy level to succeed reading the book. The book can be read if: mental_level greater <literacy level> - 5. Adding level to a book can be a nice idea, personally I like it when a player needs more than his fighting skills to solve a quest. However, keep the book level at least below 15 because it is quite hard to gain high mental levels. |
Creator | The created object will be of that level. If zero/unset, the standard level of the archetype is used. |
Disease | The <plaque level> is proportional to the disease's deadliness. This mainly reflects in the <damage>. It has no effect on most other symptoms. Nevertheless, it is a very important value for all damage-inflicting diseases. |
Duplicator | The number of items in the target pile will be multiplied by the <multiply factor>. If it is set to zero, all target objects will be destroyed. |
Flesh | The <flesh level> is not visible to the players and it affects only dragon players. Normally this value reflects the level of the monster from which the flesh item originates. Dragon players always search for flesh of highest level possible, because it bears the best chance to gain high resistances. |
Hazard Floor | I guess this value is supposed to work similar to monster levels. But in fact, it does not seem to have an effect. Set any non-zero value to be on the safe side. |
Holy Altar | To re-consecrate an altar, the player's wisdom level must be as high or higher than this value. In that way, some altars can not be re-consecrated, while other altars, like those in dungeons, could be. Altars located in temples should have at least <reconsecrate level> 120. Some characters might need those altars, they would be very unhappy to see them re-consecrated to another cult. |
Horn | The casting level of the <spell> determines it's power. For attack spells, level should not be set too high. |
Magic Wall | The wall will cast it's spells at level <spell level>. "level 1" walls cast spells at minimal strength. "level 100" walls cast deadly spells. Arch default is level 1 - you should always set this value to meet the overall difficulty of your map. |
Monster & NPC, Monster (Grimreaper) | A monster's <level> is the most important attribute. <level> affects the power of a monster in various ways. |
Mover | If <move players> is enabled, both players and monsters will be moved. In the arches' default it is disabled - thus ONLY monsters get moved. Remember that "monsters" includes NPCs! This feature provides you with the possibility to make NPCs literally "come to life". Example: The player is talking with an NPC, speaking a certain keyword. This triggers a magic_ear and activates creators, creating (per default: monster-only) movers under the NPC's feet. The NPC starts "walking" on a predefined route! Note that it's useful to set this NPC immune to everything, preventing the player to push the NPC off his trace. |
Potion | If the potion contains a spell, the spell is cast at this level. For other potions it should be set at least to 1. |
Rod | The casting level of the <spell> determines it's power. For attack spells, level should be set to something reasonable. |
Rune | This value sets the level the rune will cast the spell it contains at, if applicable. A level 99 rune casts a very, very mean spell of whatever. (<rune level> 0 runes won't detonate at all!) Level Also effects how easily a rune may be found and disarmed, and how much experience the player gets for doing so. Beware: High level runes can be quite a cheap source of experience! So either make them tough, or keep the level low. |
Scroll | The spell of the scroll will be casted at this level. This value should always be set, at least to 1. |
Skill, Spell | (no description) |
Trap | Level effects how easily a trap may be found and disarmed, and how much experience the player gets for doing so. Beware: High level traps can be quite a cheap source of experience! So either make them tough, or keep the level low. |
Wand & Staff | The <casting level> of the wand determines it's power. An average level for wands in shops is about 10. |
Weak Wall | The <level> of a weak wall works similar to monster levels. Due to the fact that weak walls cannot attack, the level is much less important though. |
Definition at line 202 of file object.h.
Referenced by add_abilities(), add_book_to_list(), add_death(), add_monster(), add_player_exp(), alchemy_failure_effect(), append_spell(), apply_death_exp_penalty(), apply_special(), attempt_do_alchemy(), attempt_hide(), attempt_pick_lock(), attempt_steal(), become_follower(), book_type_apply(), calc_alch_danger(), calc_skill_exp(), can_detect_enemy(), can_merge(), cast_cause_disease(), cast_cone(), cast_consecrate(), cast_detection(), cast_magic_storm(), cast_raise_dead_spell(), cast_smite_spell(), cast_spell(), cast_wonder(), caster_level(), cfapi_object_get_property(), cfapi_object_set_property(), change_book(), check_spell_knockback(), check_weapon_power(), choose_cult_monster(), command_showpets(), command_statistics(), common_process_projectile(), common_trap_type_move_on(), common_trap_type_process(), cone_drop(), counterspell(), create_aura(), cure_disease(), deathstrike_living(), describe_item(), do_harvest(), do_hidden_move(), do_skill_detect_curse(), do_skill_detect_magic(), do_skill_ident(), do_skill_ident2(), do_symptoms(), do_throw(), dragon_eat_flesh(), dragon_level_gain(), dump_gods(), dump_races(), dump_spells(), esrv_update_stats(), examine(), examine_monster(), find_ingred_cost(), fire_arch_from_position(), fire_bow(), fire_swarm(), fix_flesh_item(), fix_generated_item(), fix_object(), fix_stopped_arrow(), flee_player(), get_living_id(), get_random_mon(), get_who_escape_code_value(), give_initial_items(), give_skill_by_name(), god_examines_priest(), god_intervention(), grant_immunity(), gravestone_text(), hide(), hit_player(), hit_with_one_attacktype(), improve_armour(), improve_weapon(), improve_weapon_magic(), infect_object(), jump(), kill_object(), kill_player(), learn_skill(), level_for_item(), local_check_loaded_object(), magic_wall(), meditate(), merge_spell(), min_casting_level(), mood_change(), move_creator(), move_duplicator(), move_player_mover(), peacemaker_type_process(), pick_arrow_target(), place_chest(), player_lvl_adj(), player_mover_type_move_on(), poison_living(), polymorph_living(), potion_type_apply(), pray_at_altar(), push_ob(), query_base_name(), query_cost(), query_short_name(), recharge(), reflwall(), remove_curse(), remove_door(), remove_locked_door(), remove_trap(), roll_stats(), save_player(), scroll_type_apply(), share_exp(), show_matching_spells(), show_skills(), singing(), SP_level_spellpoint_cost(), spell_failure(), spellbook_type_apply(), spellpath_msg(), START_TEST(), summon_object(), swap_stat(), tailor_readable_ob(), trap_adjust(), trap_disarm(), trap_see(), treasure_type_apply(), use_oratory(), write_rune(), and write_scroll().
const char* obj::lore |
Obscure information about this object, to get put into books and the like.
Definition at line 176 of file object.h.
Referenced by can_merge(), cctk_set_object_strings(), cfapi_object_get_property(), cfapi_object_set_property(), clear_object(), copy_object(), free_object2(), get_object(), main(), move_marker(), reset_object(), and START_TEST().
obj::magic |
Any magical bonuses to this item
Type(s) | Description |
---|---|
Boots | <magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armor-class bonus on the boots. Important: <magic bonus> on boots has no effect if there is no <armor class> set. It only works in combination with <armor class>. |
Bracers | <magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armor-class bonus on the bracers. |
Breastplate Armor | <magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armor-class bonus on the armor. |
Cloak | <magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armor-class bonus on the cloak. Important: <magic bonus> on cloaks has no effect if there is no <armor class> set. It only works in combination with <armor class>. |
Disease | <infection range> sets the range at which infection may occur. If positive, the <infection range> is level dependant - If negative, it is not: E.g. "<infection range> -6" means creatures can be infected in six square range, and <plaque level> doesn't modify that. |
Girdle | <magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armor-class bonus on the helmet. Important: <magic bonus> on girdles has no effect if there is no <armor class> set. Girdles shouldn't have <armor class>, thus <magic bonus> is pointless here. |
Gloves | If the gloves provide <armor class>, <magic bonus> will increase it. If the gloves have <weapon class> instead, then <magic bonus> will increase that. |
Helmet | <magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armor-class bonus on the helmet. Important: <magic bonus> on helmets has no effect if there is no <armor class> set. It only works in combination with <armor class>. Crowns for instance typically provide no <amour class>. |
Projectile | Magic bonus increases chance to hit and damage a little bit. |
Shield | <magic bonus> works just like ac, except that it can be improved by "scrolls of Enchant Armour" or reduced by acid. It is less useful than direct armor-class bonus on the shield. |
Shooting Weapon | <Magic bonus> improves the quality of the shooting weapon. I'm not sure what exactly is increased - maybe weapon class? However, <magic bonus> seems to have a little bit of positive influence on your chance to hit. |
Weapon | For a weapon, magic bonus works just like weapon class, except that magic bonus can be improved by the gods or reduced by acid. Hence, it is less useful than direct weapon class value on a weapon. |
Definition at line 199 of file object.h.
Referenced by add_abilities(), alchemy_failure_effect(), animate_weapon(), attempt_do_alchemy(), calc_alch_danger(), calc_item_power(), calc_skill_exp(), can_merge(), cancellation(), cast_cause_disease(), cast_create_missile(), cfapi_object_get_property(), cfapi_object_set_property(), check_good_armour(), check_good_weapon(), check_infection(), describe_item(), did_make_save_item(), do_skill_ident2(), do_throw(), find_better_arrow(), fire_bow(), fix_generated_item(), generate_artifact(), god_examines_priest(), hit_with_one_attacktype(), improve_armour(), improve_weapon(), improve_weapon_magic(), is_magical(), polymorph_item(), query_base_name(), query_cost(), query_short_name(), set_abs_magic(), and set_materialname().
struct mapdef* obj::map |
Pointer to the map in which this object is present
Definition at line 155 of file object.h.
Referenced by abort_attack(), add_death(), add_player_event(), adj_attackroll(), alchemy(), alchemy_failure_effect(), animate_bomb(), animate_weapon(), apply_builder_floor(), apply_builder_item(), apply_builder_remove(), apply_builder_wall(), apply_builder_window(), apply_container(), apply_map_builder(), apply_savebed(), armour_improver_type_apply(), arrow_type_process(), attack_message(), attempt_hide(), attempt_jump(), attempt_pick_lock(), auto_apply(), basic_emote(), calc_skill_exp(), can_detect_enemy(), can_see_enemy(), cast_cause_disease(), cast_change_map_lightlevel(), cast_cone(), cast_consecrate(), cast_create_obj(), cast_create_town_portal(), cast_destruction(), cast_detection(), cast_earth_to_dust(), cast_identify(), cast_light(), cast_magic_storm(), cast_polymorph(), cast_raise_dead_spell(), cast_smite_spell(), cast_spell(), cast_transfer(), cf_object_out_of_map(), cfapi_object_cast(), cfapi_object_get_property(), cfapi_object_set_property(), change_object(), charge_mana_effect(), check_altar_sacrifice(), check_bullet(), check_infection(), check_move_on(), check_score(), check_spell_knockback(), check_wakeup(), check_wall(), clear_object(), command_cointoss(), command_create(), command_dumpmap(), command_goto(), command_kick(), command_me(), command_nowiz(), command_overlay_reset(), command_overlay_save(), command_reset(), command_save(), command_summon(), command_teleport(), command_whereabouts(), common_process_projectile(), communicate(), compute_path(), cone_drop(), convert_item(), converter_type_move_on(), counterspell(), create_bomb(), current_map_info(), current_region_info(), decrease_ob_nr(), describe_shop(), dimension_door(), dispel_rune(), do_harvest(), do_hidden_move(), do_mood_floor(), do_skill_detect_curse(), do_skill_detect_magic(), do_skill_ident(), do_talk_npc(), do_throw(), do_turn(), do_wizard_hide(), draw_client_map(), draw_client_map2(), draw_magic_map(), drop_object(), emergency_save(), enter_exit(), enter_fixed_template_map(), enter_map(), enter_player_savebed(), enter_random_map(), enter_random_template_map(), enter_unique_map(), esrv_draw_look(), esrv_get_ob_from_count(), esrv_move_object(), eventListener(), execute_event(), execute_word_of_recall(), expand_lighted_sight(), expand_sight(), explode_bullet(), explosion(), ext_info_map(), ext_info_map_except(), ext_info_map_except2(), find_by_name(), find_multi_free_spot_around(), find_multi_free_spot_within_radius(), find_nearest_living_creature(), find_or_create_connection_for_map(), find_target_for_friendly_spell(), find_traps(), fire_arch_from_position(), fire_bolt(), fire_bow(), fire_bullet(), fire_swarm(), fix_generated_item(), fix_multipart_object(), fix_summon_pet(), flee_player(), follow_owner(), forklightning(), free_all_objects(), free_object2(), gate_type_process(), generate_monster(), generate_monster_arch(), generate_monster_inv(), get_button_links(), get_button_value(), get_connection_rune(), get_jail_exit(), get_msg_book(), get_pet_enemy(), get_pointed_target(), get_rangevector(), get_rangevector_from_mapcoord(), get_who_escape_code_value(), handle_apply_yield(), hideability(), hit_map(), hit_player(), hit_with_arrow(), identify(), increase_ob_nr(), infect_object(), insert_multisquare_ob_in_map(), insert_ob_in_map(), insert_ob_in_map_at(), insert_ob_in_ob(), is_in_shop(), is_legal_2ways_exit(), key_change_class(), key_roll_stat(), kill_object(), kill_player(), leave(), list_players(), load_objects(), local_check_loaded_object(), look_at(), loot_object(), magic_mapping_mark(), magic_mapping_mark_recursive(), magic_wall(), make_sure_not_seen(), make_sure_seen(), map2_add_ob(), merge_spell(), metaserver_update(), monster_use_bow(), mood_change(), move_aura(), move_ball_spell(), move_bolt(), move_bullet(), move_cone(), move_creator(), move_detector(), move_duplicator(), move_firewall(), move_golem(), move_marker(), move_missile(), move_monster(), move_ob(), move_player(), move_player_attack(), move_player_mover(), move_swarm_spell(), move_symptom(), move_teleporter(), move_to(), npc_call_help(), npc_say(), on_same_map(), operate_altar(), path_to_player(), peacemaker_type_process(), pet_move(), pick_arrow_target(), pick_lock(), pick_up(), place_alchemy_objects(), play_again(), play_sound_map(), play_sound_player_only(), players_on_map(), polymorph_item(), polymorph_living(), potion_type_apply(), probe(), process_events(), process_players1(), push_ob(), put_a_monster(), put_object_in_sack(), put_treasure(), query_cost(), recharge(), remove_adjacent_doors(), remove_button_link(), remove_door(), remove_force(), remove_locked_door(), remove_ob(), remove_trap(), remove_unpaid_objects(), replace_insert_ob_in_map(), retrofit_joined_wall(), roll_ob(), rune_attack(), runghosted(), runmessage(), save_player(), save_throw_object(), setup(), shop_inventory_type_apply(), shop_mat_type_move_on(), singing(), skill_attack(), spell_failure(), spring_trap(), stand_in_light(), stand_near_hostile(), START_TEST(), steal(), stop_item(), stop_jump(), stop_projectile(), summon_golem(), summon_object(), swap_map(), tear_down_wall(), teleport(), thrown_object_type_process(), transfer_ob(), transport_type_apply(), trap_disarm(), trap_see(), trap_show(), treasure_type_apply(), trigger_connected(), turn_one_transport(), update_all_los(), update_all_map_los(), update_object(), use_alchemy(), use_oratory(), value_limit(), weapon_improver_type_apply(), write_mark(), and write_rune().
uint8 obj::map_layer |
What level to draw this on the map
Definition at line 275 of file object.h.
Referenced by can_merge(), and update_position().
obj::material |
What materials this object consist of
Definition at line 198 of file object.h.
Referenced by add_abilities(), alchemy_failure_effect(), cfapi_object_get_property(), cfapi_object_set_property(), decay_objects(), did_make_save_item(), do_throw(), hit_map(), hit_with_one_attacktype(), kill_player(), place_fountain_with_specials(), query_base_name(), set_materialname(), and spell_effect_type_move_on().
const char* obj::materialname |
Specific material name
Definition at line 197 of file object.h.
Referenced by add_abilities(), alchemy_failure_effect(), animate_weapon(), can_merge(), cctk_set_object_strings(), cfapi_object_get_property(), clear_object(), copy_object(), did_make_save_item(), examine(), free_object2(), get_object(), hit_map(), kill_player(), query_base_name(), query_name(), reset_object(), set_materialname(), spell_effect_type_move_on(), START_TEST(), and transmute_materialname().
struct obj* obj::more |
Pointer to the rest of a large body of objects
Definition at line 153 of file object.h.
Referenced by animate_object(), apply_anim_suffix(), can_build_over(), can_hit(), can_pick(), check_spell_knockback(), clear_object(), command_create(), dump_object(), enter_map(), first_arch_pass(), fix_container_multipart(), fix_multipart_object(), fix_summon_pet(), follow_owner(), free_object2(), generate_monster_arch(), get_rangevector(), insert_multisquare_ob_in_map(), insert_ob_in_map(), insert_ob_in_map_at(), insert_ob_in_ob(), link_multipart_objects(), load_objects(), move_golem(), move_monster(), move_ob(), move_symptom(), move_teleporter(), ob_blocked(), object_create_arch(), object_create_clone(), pet_move(), player_can_view(), process_map(), push_ob(), put_a_monster(), remove_ob(), roll_ob(), START_TEST(), summon_golem(), summon_object(), teleport(), transfer_ob(), trigger_connected(), try_fit(), update_object(), update_transport_block(), and use_oratory().
obj::move_allow |
What movement types explicitly allowed
Type(s) | Description |
---|---|
Transport | The move type the transport grants, regardless of other objects on this tile. |
Definition at line 279 of file object.h.
Referenced by can_merge(), cfapi_object_get_property(), make_map_walls(), update_object(), and update_position().
obj::move_block |
What movement types this blocks
Type(s) | Description |
---|---|
Altar, Altar Trigger, Battleground, Exit, Floor, Floor (Encounter), Hazard Floor, Holy Altar, Magic Wall, Wall | If set, the object cannot be passed by players nor monsters. |
Door | If any movement type is blocked, a player must defeat the door to enter. |
Gate | For open gates, <blocking passage> should be unset. For closed gates it must be set to "all". |
Inventory Checker | If set, only players meeting the match criteria can pass through that space. If unset (default), the inventory checker acts like a trigger/button. |
Timed Gate | For open gates, <blocking movement> should be unset. For closed gates it must be set to "all". |
Definition at line 278 of file object.h.
Referenced by alchemy_failure_effect(), can_merge(), cfapi_object_get_property(), check_move_on(), do_symptoms(), gate_type_process(), grant_immunity(), hit_map(), infect_object(), is_blocking(), is_special_equipment(), magic_wall(), make_map_walls(), pick_lock(), place_exits(), polymorph(), put_decor(), remove_ob(), retrofit_joined_wall(), tear_down_wall(), unblock_exits(), update_object(), and update_position().
MoveType obj::move_off |
Move types affected moving off this space
Definition at line 281 of file object.h.
Referenced by apply_container(), can_merge(), cfapi_object_get_property(), put_object_in_sack(), remove_ob(), update_object(), and update_position().
obj::move_on |
Move types affected moving on to this space
Type(s) | Description |
---|---|
Director | The movement types this director affects. |
Exit | If set, the player will auto-apply the exit with these movement types. This must be set for the invisible exits for example. If unset, the player has to step onto the exit and press 'a' to get transferred. |
Mover | Move creatures using these movement types.. |
Pit | Make creatures using these movement types fall into the pit. Movement types other than walking is not the behavior expected from a pit, and it should only be used for map-mechanisms (e.g. for transporting flying monsters). An interesting side-effect: If this flag is enabled, spell effects like fire/snow also make their way through the pit. |
Shop Mat | If set, the player can enter/leave the shop by using these movement types. |
Sign & Magic Mouth | If set, the player gets the message when using these movement types on top of the object. "invisible 1" should be set in this case. This is the typical configuration for a "magic_mouth": The player walks through a dungeon and suddenly he gets a message. Use this to create some roleplay atmosphere, and to inform the player about possible dangers or secrets. |
Spinner | The movement types this spinner affects. |
Definition at line 280 of file object.h.
Referenced by apply_sign(), attempt_jump(), can_merge(), cast_cone(), cfapi_object_get_property(), check_move_on(), check_trigger(), do_throw(), examine(), explode_bullet(), fire_bow(), fix_stopped_arrow(), move_hole(), player_apply_below(), trapdoor_type_move_on(), update_button(), update_object(), and update_position().
obj::move_slow |
Movement types this slows down
Type(s) | Description |
---|---|
Floor, Floor (Encounter), Hazard Floor, Swamp | The movement types that are affected by <slow penalty>. |
Definition at line 282 of file object.h.
Referenced by can_merge(), check_move_on(), do_exit_map(), save_throw_object(), update_object(), and update_position().
obj::move_slow_penalty |
How much this slows down the object
Type(s) | Description |
---|---|
Floor, Floor (Encounter), Hazard Floor | If <slow movement> is set to a value greater zero, all creatures moving over this spot will be slower than normal. <slow movement> 1 - rough terrain <slow movement> 2 - very rough terrain ... <slow movement> 7 - spider web (sticky as hell) |
Swamp | If <slow movement> is set to a value greater zero, all creatures moving over this spot will be slower than normal. <slow movement> 1 - rough terrain <slow movement> 2 - very rough terrain ... <slow movement> 5 - default for deep swamp |
Definition at line 283 of file object.h.
Referenced by can_merge(), cfapi_object_get_property(), check_move_on(), deep_swamp_type_move_on(), deep_swamp_type_process(), and save_throw_object().
sint32 obj::move_status |
What stage in attack mode
Definition at line 241 of file object.h.
Referenced by cfapi_object_get_property(), cfapi_object_set_property(), circ1_move(), circ2_move(), hitrun_att(), pace2_moveh(), pace2_movev(), pace_moveh(), pace_movev(), rand_move(), run_att(), and wait_att().
obj::move_type |
Type of movement this object uses
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | As soon as the player applies a piece of equipment, the player will start using the granted movement types. |
Monster & NPC, Monster (Grimreaper) | Determines which movement types this monster can use. Flying monsters won't get slowed down in rough terrain and they won't be affected by movers. |
Mover | Determines which movement types this mover affects. This should always include "walk". |
Skill | Determines which movement types this skill grants. |
Transport | The move type the transport uses. |
Definition at line 277 of file object.h.
Referenced by add_abilities(), adj_attackroll(), animate_weapon(), attempt_jump(), blocked_link(), can_merge(), cast_change_ability(), cast_cone(), cfapi_object_get_property(), change_abil(), check_move_on(), check_pick(), check_spell_knockback(), check_trigger(), deep_swamp_type_move_on(), deep_swamp_type_process(), describe_item(), do_throw(), find_dir(), fire_bow(), fix_object(), fix_stopped_arrow(), insert_ob_in_map(), is_aimed_missile(), is_magical(), move_player_mover(), ob_blocked(), pick_up_object(), player_apply(), player_apply_below(), remove_ob(), retrofit_joined_wall(), roll_ob(), trapdoor_type_move_on(), update_button(), update_position(), and update_transport_block().
obj::msg |
If this is a book/sign/magic mouth/etc
Type(s) | Description |
---|---|
Altar, Altar Trigger | This text will be displayed to the player in the exact moment when the altar is activated. |
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This text describes the item's "story". Every decent artifact should have such a description. |
Book | This is the text that appears "written" in the book. |
Button, Button Trigger | This text may describe the item. You can use this message to explain the button's purpose to the player. |
Clock | This text may describe the item |
Container | This text may contain a description of the container. |
Converter | This text may contain a description of the converter. |
Disease | This text is displayed to the player every time the symptoms strike. |
Exit | If set, this message will be displayed to the player when he applies the exit. This is quite useful to throw in some "role-play feeling": "As you enter the dark cave you hear the sound of rustling dragonscales...". Well, my English is poor, but you get the point. =) |
Flesh | This text may describe the item. |
Floor, Floor (Encounter), Jewel | This text may describe the object. |
Handle, Handle Trigger | This text may describe the item. You can use this message to explain the handle's purpose to the player. |
Horn | This text may contain a description of the horn. |
Item Transformer | This text may contain a description of the item transformer. |
Locked Door | When a player is trying to open the door without carrying the appropriate key, this text is displayed to the player. This is a good opportunity to place hints about the special key needed to unlock the door. |
Magic Ear | This text field contains the keyword-matching-syntax. The text should have the following format: "@match <keyword1>|<keyword2>|... ". Any number of keywords from one to infinite is allowed. Make sure they are separated by a '|'. Examples: "@match yes", "@match gold|treasure". The connected value will be triggered when the player speaks any of the given keywords within a two-square radius. IMPORTANT: Upper/lower case does not make a difference! |
Marker, Trigger Marker | In the moment when the player gets marked, this text is displayed to him. You should really set a message in any marker you create, because it's the only way for the player to notice what's going on. |
Monster & NPC, Monster (Grimreaper) | (no description) |
Projectile | This text may describe the projectile. This could be nice for very special ones. |
Rod | This text may contain a description of the rod. |
Rune | When the rune detonates, this text is displayed to the victim. For especially powerful runes, create an appropriate thrilling description. ;) |
Shooting Weapon, Weapon | This text describes the weapons' "story". Every decent artifact weapon should have such a description. |
Sign & Magic Mouth | This text will be displayed to the player. |
Special Key | This will add a description to the object. The player can read this text by clicking on the item in his inventory. Use this message to describe what the key/passport is good for. A player might have 50 different keys on his key-ring. Don't expect players to recall their purpose just by their names. |
Spellbook | This text may contain a nice description of the spellbook's cover or something. |
Trap | When the trap detonates, this text is displayed to the victim. For especially powerful or complex traps, create an appropriate and thrilling description. ;) |
Wand & Staff | This text may contain a description of the wand. |
Definition at line 175 of file object.h.
Referenced by add_abilities(), add_author(), add_book_to_list(), adjust_sign_msg(), append_spell(), apply_sign(), artifact_msg(), blocked_link(), book_type_apply(), can_merge(), cast_create_town_portal(), cast_identify(), cctk_set_object_strings(), cfapi_object_get_property(), change_book(), clear_object(), copy_message(), copy_object(), create_npc_info(), do_skill_ident2(), do_symptoms(), dragon_ability_gain(), dump_gods(), enter_exit(), enter_random_map(), enter_random_template_map(), esrv_add_spells(), examine(), exit_type_apply(), exit_type_move_on(), find_or_create_connection_for_map(), find_title(), fix_generated_item(), follower_has_similar_item(), free_arch(), free_artifact(), free_object2(), get_object(), god_info_msg(), god_intervention(), identify_altar_type_move_on(), key_change_class(), key_roll_stat(), kill_player(), make_formula_book(), move_golem(), move_marker(), move_symptom(), operate_altar(), parse_dialog_information(), place_exits(), place_special_exit(), player_attack_door(), process_map(), reset_object(), shop_mat_type_move_on(), spring_trap(), START_TEST(), tailor_readable_ob(), trigger_connected(), use_oratory(), write_mark(), write_note(), and write_rune().
obj::name |
The name of the object, obviously...
Definition at line 167 of file object.h.
Referenced by add_book_to_list(), add_friendly_object(), add_god_to_list(), add_monster(), add_one_item(), adjust_sign_msg(), alchemy_failure_effect(), altar_type_move_on(), animate_one(), animate_weapon(), append_spell(), apply_changes_to_player(), apply_cmd(), apply_container(), apply_savebed(), apply_special(), artifact_msg(), CREUtils::artifactNode(), attack_hth(), attack_message(), attack_ob_simple(), attempt_do_alchemy(), attempt_jump(), attempt_recipe(), basic_emote(), become_follower(), book_type_apply(), calc_alch_danger(), calc_skill_exp(), can_merge(), cast_bless(), cast_cause_disease(), cast_change_ability(), cast_consecrate(), cast_create_missile(), cast_create_town_portal(), cast_curse(), cast_dust(), cast_raise_dead_spell(), cast_smite_spell(), cast_spell(), cast_wonder(), cctk_set_object_strings(), cfapi_object_delete(), cfapi_object_find_archetype_inside(), cfapi_object_insert(), cfapi_object_remove(), cfapi_object_set_property(), change_book(), change_object(), change_spell(), change_treasure(), check_hp(), check_login(), check_pick(), check_score(), check_special_prayers(), check_spell_expiry(), check_spell_known(), check_trigger(), check_weapon_power(), checkdm(), choose_cult_monster(), clear_object(), command_abil(), command_addexp(), command_arrest(), command_banish(), command_cast_spell(), command_cointoss(), command_create(), command_follow(), command_forget_spell(), command_freeze(), command_goto(), command_kick(), command_kill_pets(), command_learn_spell_or_prayer(), command_loadplugin(), command_me(), command_nowiz(), command_party(), command_patch(), command_reply(), command_reset(), command_setgod(), command_showpets(), command_stack_list(), command_stats(), command_summon(), command_take(), command_teleport(), command_tell_all(), command_toggle_shout(), command_unloadplugin(), command_use(), common_ob_move_on(), common_pre_ob_move_on(), communicate(), confuse_living(), content_recipe_value(), convert_item(), copy_object(), cost_string_from_value(), create_npc_info(), create_singularity(), CREFormulaePanel::CREFormulaePanel(), dead_player(), deathstrike_living(), deep_swamp_type_move_on(), deep_swamp_type_process(), describe_monster(), determine_holy_arch(), do_harvest(), do_learn_spell(), do_server(), do_skill_attack(), do_symptoms(), do_talk_npc(), do_tell(), do_throw(), do_turn(), do_wizard_dm(), do_wizard_hide(), dragon_ability_gain(), dragon_eat_flesh(), dump_abilities(), dump_artifacts(), dump_friendly_objects(), dump_gods(), dump_monster_treasure(), dump_monster_treasure_rec(), dump_object(), dump_spells(), eat_special_food(), emergency_save(), enter_exit(), enter_fixed_template_map(), enter_player_savebed(), enter_unique_map(), esrv_add_spells(), esrv_move_object(), esrv_new_player(), esrv_update_item(), eventListener(), examine(), examine_cmd(), execute_event(), expand_lighted_sight(), find_archetype_by_object_name(), find_archetype_by_object_type_name(), find_by_name(), find_ingred_cost(), find_mon_throw_ob(), find_object_name(), find_player_partial_name(), find_symptom(), find_throw_ob(), find_treasure_by_name(), fire_bow(), fire_misc_object(), fix_container_multipart(), fix_flesh_item(), fix_generated_item(), fix_multipart_object(), fix_object(), fix_weight(), follow_owner(), follower_has_similar_item(), follower_remove_given_items(), food_type_apply(), form_party(), CREUtils::formulaeNode(), free_all_object_data(), free_all_objects(), free_arch(), free_artifact(), free_object2(), gate_type_process(), generate_artifact(), generate_monster(), generate_monster_arch(), generate_monster_inv(), get_living_id(), get_object(), get_other_player_from_name(), get_party_password(), get_player(), get_spell_by_name(), get_split_ob(), get_who_escape_code_value(), give_artifact_abilities(), give_initial_items(), god_enchants_weapon(), god_examines_item(), god_examines_priest(), god_gives_present(), god_info_msg(), god_intervention(), grant_immunity(), gravestone_text(), handle_client(), hit_map(), hit_player(), identify(), infect_object(), init_artifacts(), inscribe_scroll_cmd(), insert_ob_in_ob(), is_animated_player(), is_defined_recipe(), is_legal_2ways_exit(), is_old_wraith_pl(), is_special_equipment(), is_susceptible_to_disease(), is_wraith_pl(), item_matched_string(), key_change_class(), key_confirm_quit(), keyplace(), kill_object(), kill_player(), lamp_type_apply(), learn_skill(), leave(), legal_artifact_combination(), level_for_item(), lighter_type_apply(), list_players(), load_objects(), local_check_loaded_object(), locate_recipe_artifact(), lock_item_cmd(), magic_wall(), main(), make_formula_book(), make_object_glow(), mark_item_cmd(), matches_sacrifice(), mon_desc(), monster_cast_spell(), monster_use_range(), monster_use_skill(), move_cone(), move_creator(), move_detector(), move_firewall(), move_golem(), move_monster(), move_symptom(), new_text_name(), numb_ob_inside(), op_on_battleground(), parse_dialog_information(), pay_from_container(), peacemaker_type_process(), perceive_self(), pick_up(), place_fountain_with_specials(), play_sound_player_only(), player_lvl_adj(), poison_living(), poison_type_apply(), polymorph_item(), pray(), pray_at_altar(), present_in_ob_by_name(), process_events(), process_map(), push_ob(), query_base_name(), query_cost(), query_cost_string(), query_short_name(), rangetostring(), real_money_value(), receive_party_password(), receive_play_again(), receive_player_name(), receive_player_password(), remove_friendly_object(), remove_ob(), reset_object(), runapplyobject(), runpickupobject(), save_player(), scroll_type_apply(), set_title(), CREArtifactPanel::setArtifact(), should_director_abort(), show_matching_spells(), show_skills(), sort_archetypes(), spellbook_type_apply(), spellpath_msg(), start_info(), START_TEST(), summon_golem(), summon_object(), tailor_god_spell(), tear_down_wall(), teleport(), transmute_materialname(), transport_type_apply(), trap_disarm(), trap_see(), trigger_connected(), unique_book(), update_button(), update_buttons(), update_ob_speed(), value_limit(), verify_button_links(), write_mark(), write_rune(), write_scroll(), and wrong_password().
obj::name_pl |
The plural name of the object
Type(s) | Description |
---|---|
Altar, Altar Trigger, Amulet, Battleground, Book, Boots, Bracers, Breastplate Armor, Button, Button Trigger, Class Changer, Cloak, Clock, Container, Creator, Detector, Director, Disease, Door, Duplicator, Event, Exit, Flesh, Floor, Floor (Encounter), Food, Gate, Girdle, Gloves, Handle, Handle Trigger, Hazard Floor, Helmet, Holy Altar, Horn, Inorganic, Inventory Checker, Item Transformer, Jewel, Key, Locked Door, Magic Ear, Magic Wall, Marker, Money, Mood Floor, Mover, Pedestal, Pit, Poison Food, Potion, Power Crystal, Projectile, Ring, Rod, Savebed, Scroll, Shield, Shooting Weapon, Shop Floor, Shop Mat, Sign & Magic Mouth, Skill, Skill Scroll, Special Key, Spell, Spellbook, Spinner, Swamp, Teleporter, Timed Gate, Transport, Trapdoor, Trigger Marker, Wand & Staff, Weak Wall, Weapon | This is the plural name of the object. A plural name must be set for all items that can be picked up and collected by the player. |
Definition at line 168 of file object.h.
Referenced by add_one_item(), adjust_sign_msg(), alchemy_failure_effect(), cast_bless(), cast_change_ability(), cast_create_town_portal(), cast_curse(), cctk_set_object_strings(), cfapi_object_get_property(), cfapi_object_set_property(), change_treasure(), clear_object(), copy_object(), create_singularity(), do_symptoms(), fix_flesh_item(), fix_generated_item(), free_arch(), free_artifact(), free_object2(), get_object(), identify(), item_matched_string(), key_change_class(), kill_player(), local_check_loaded_object(), move_symptom(), place_fountain_with_specials(), query_base_name(), query_cost_string(), query_short_name(), real_money_value(), receive_play_again(), receive_player_name(), reset_object(), START_TEST(), tailor_god_spell(), and wrong_password().
struct obj* obj::next |
Pointer to the next object in the free/used list
Definition at line 135 of file object.h.
Referenced by command_take(), count_free(), count_used(), dump_all_objects(), expand_objects(), find_object(), find_object_name(), free_all_object_data(), free_all_objects(), free_artifact(), free_object2(), get_object(), init_objects(), and START_TEST().
uint8 obj::no_save |
This field indicates that the object should never be saved even for map swapout. Not handled by the loading or saving code.
Definition at line 288 of file object.h.
Referenced by cfapi_object_get_property(), and cfapi_object_set_property().
obj::nrof |
How many of the objects
Definition at line 184 of file object.h.
Referenced by add_abilities(), add_object_to_socklist(), add_shop_item(), add_value(), adjust_product(), animate_weapon(), apply_container(), apply_special(), can_merge(), cast_create_food(), cast_create_missile(), cfapi_object_get_property(), cfapi_object_set_property(), check_altar_sacrifice(), check_item(), check_pick(), check_trigger(), command_create(), command_rename_item(), command_use(), content_recipe_value(), convert_item(), count_unpaid(), create_all_treasures(), create_one_treasure(), decrease_ob_nr(), drop_object(), eat_item(), esrv_update_item(), examine(), find_transmution_ob(), fire_bow(), fix_generated_item(), follower_remove_given_items(), get_split_ob(), give_initial_items(), improve_armour(), increase_ob_nr(), insert_ob_in_map(), insert_ob_in_ob(), is_defined_recipe(), lamp_type_apply(), lighter_type_apply(), loot_object(), make_item_from_recipe(), merge_ob(), move_duplicator(), pay_from_container(), pick_up(), pick_up_object(), polymorph_item(), polymorph_melt(), put_object_in_sack(), query_base_name(), query_cost(), query_money(), query_short_name(), query_weight(), real_money_value(), remove_force(), remove_ob(), remove_value(), save_throw_object(), sell_item(), START_TEST(), sum_weight(), transmute_item_to_flower(), trapdoor_type_move_on(), update_button(), write_note(), and write_scroll().
obj::other_arch |
Pointer used for various things - mostly used for what this objects turns into or what this object creates
Type(s) | Description |
---|---|
Container | This is used for a certain kind of... "animation" when opening the container. Stick to the default arches here and you won't get into trouble. |
Converter | <receive arch> is the name of the archetype to convert into. This field is ignored if the converter has items in inventory. In this case one of the inventory items is duplicated. The duplicated item is randomly chosen from all items present. |
Creator | This string defines the object that will be created. You can choose any of the existing arches. This field is ignored if the creator has items in inventory. In this case one of the inventory items is duplicated. The duplicated item is randomly chosen from all items present. |
Disease | If set, the specified arch is created and dropped every time the symptoms strike. This can be various things: farts, body pieces, eggs ... Even monsters can be created that way. You could also make a disease where some exotic stuff like money/gems is created. |
Door | This string defines the object that will be created when the door was defeated. |
Duplicator | Only objects of matching archetype, lying on top of the duplicator will be duplicated, multiplied or removed. All other objects will be ignored. |
Holy Altar | The altar belongs to the god of the given name. Possible options for <god name> are: Devourers, Lythander, Mostrai, Gaea, Ruggilli, Gnarg, Gorokh, Valriel and Sorig. If you want to have an unconsecrated altar, set <god name> 0 and eventually <reconsecrate level> 0. |
Monster & NPC, Monster (Grimreaper) | This only takes effect if <multiply> is enabled. The monster will create a <breed monster> every once in a while. <breed monster> can be set to any valid arch-name of a monster. |
Rune | This string defines the spell in the rune, if any. <spell arch> is optional, but if present, overrides the <spell> setting. You can choose any of the existing arches. |
Spell | (no description) |
Definition at line 264 of file object.h.
Referenced by add_abilities(), animate_weapon(), cast_cause_disease(), cast_cone(), cast_create_town_portal(), cast_destruction(), cast_detection(), cast_light(), cast_polymorph(), cast_smite_spell(), cfapi_object_get_property(), change_object(), check_bullet(), cone_drop(), convert_item(), create_aura(), create_bomb(), determine_holy_arch(), do_symptoms(), do_turn(), dump_abilities(), dump_gods(), dump_spells(), explode_bullet(), fire_arch_from_position(), fire_bolt(), fire_bullet(), fire_swarm(), fix_flesh_item(), generate_monster_arch(), hit_player(), insert_ob_in_map(), magic_wall(), merge_spell(), mood_change(), move_aura(), move_ball_spell(), move_bullet(), move_cone(), move_creator(), move_duplicator(), move_symptom(), op_on_battleground(), pray(), pray_at_altar(), remove_door(), remove_locked_door(), save_throw_object(), second_arch_pass(), set_object_face_other(), spell_effect(), spring_trap(), START_TEST(), summon_golem(), summon_object(), trap_adjust(), write_mark(), and write_rune().
struct obj* obj::owner |
Pointer to the object which controls this one. Owner should not be referred to directly - get_owner should be used instead.
Definition at line 228 of file object.h.
Referenced by attack_message(), blind_living(), check_enemy(), clear_owner(), common_process_projectile(), common_projectile_move_on(), cone_drop(), counterspell(), do_mood_floor(), do_symptoms(), dump_object(), find_traps(), fix_stopped_arrow(), get_owner(), hit_player(), infect_object(), kill_object(), merge_spell(), move_golem(), peacemaker_type_process(), pet_move(), poison_living(), remove_trap(), save_objects(), set_owner(), START_TEST(), and trap_disarm().
tag_t obj::ownercount |
What count the owner had (in case owner has been freed)
Definition at line 231 of file object.h.
Referenced by clear_owner(), get_owner(), merge_spell(), and set_owner().
sint16 obj::ox |
Definition at line 180 of file object.h.
Referenced by insert_ob_in_map(), insert_ob_in_ob(), and remove_ob().
sint16 obj::oy |
For debugging: Where it was last inserted
Definition at line 180 of file object.h.
Referenced by insert_ob_in_map(), insert_ob_in_ob(), and remove_ob().
obj::path_attuned |
Paths the object is attuned to
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | Click on the <attuned paths> button to select spellpaths. The player will get attuned to the specified spellpaths while wearing this item. |
Monster & NPC, Monster (Grimreaper) | Click on the <attuned paths> button to select spellpaths. The creature will get attuned to the specified spellpaths. |
Weapon | Click on the <attuned paths> button to select spellpaths. The player will get attuned to the specified spellpaths while wearing this weapon. |
Definition at line 194 of file object.h.
Referenced by add_abilities(), append_spell(), become_follower(), calc_item_power(), cast_bless(), cast_spell(), caster_level(), cfapi_object_get_property(), cfapi_object_set_property(), change_abil(), describe_item(), describe_monster(), dragon_ability_gain(), dump_gods(), esrv_update_stats(), find_or_create_connection_for_map(), fix_object(), god_info_msg(), include_map_in_map(), min_casting_level(), ring_desc(), show_matching_spells(), spellpath_msg(), write_rune(), and write_scroll().
obj::path_denied |
Paths the object is denied access to
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | Click on the <denied paths> button to select spellpaths. The specified spellpaths will be denied to the player while wearing this item. |
Monster & NPC, Monster (Grimreaper) | Click on the <denied paths> button to select spellpaths. The creature won't be able to cast spells of the specified paths. |
Weapon | Click on the <denied paths> button to select spellpaths. The specified spellpaths will be denied to the player while wearing this weapon. |
Definition at line 196 of file object.h.
Referenced by add_abilities(), become_follower(), calc_item_power(), cast_curse(), cast_spell(), cfapi_object_get_property(), cfapi_object_set_property(), change_abil(), describe_item(), describe_monster(), dump_gods(), esrv_update_stats(), fix_object(), god_info_msg(), make_object_glow(), min_casting_level(), ring_desc(), show_matching_spells(), write_rune(), and write_scroll().
obj::path_repelled |
Paths the object is repelled from
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | Click on the <repelled paths> button to select spellpaths. The player will get repelled to the specified spellpaths while wearing this item. |
Monster & NPC, Monster (Grimreaper) | Click on the <repelled paths> button to select spellpaths. The creature will get repelled to the specified spellpaths. |
Weapon | Click on the <repelled paths> button to select spellpaths. The player will get repelled to the specified spellpaths while wearing this weapon. |
Definition at line 195 of file object.h.
Referenced by add_abilities(), become_follower(), calc_item_power(), cast_curse(), cast_spell(), caster_level(), cfapi_object_get_property(), cfapi_object_set_property(), change_abil(), describe_item(), describe_monster(), dump_gods(), esrv_update_stats(), fix_object(), god_info_msg(), min_casting_level(), ring_desc(), and write_scroll().
obj::perm_exp |
Permanent exp
Type(s) | Description |
---|---|
Skill | <Permanent experience> is the experience the player gained permanently. Even if a player dies multiple times or gets drained, his <experience> will not fall below <permanent experience>. |
Definition at line 220 of file object.h.
Referenced by add_player_exp(), calc_perm_exp(), cfapi_object_get_property(), cfapi_object_set_property(), check_exp_loss(), and show_skills().
obj::pick_up |
See crossfire.doc
Type(s) | Description |
---|---|
Monster & NPC, Monster (Grimreaper) | Click on the <pick up> button and select which types of objects the creature should try to pick up. Note also that if <can use armor>, <can use weapon>, <can use ring>... etc are set, then the creature will pick up the matching items even if this is not set here. |
Definition at line 212 of file object.h.
Referenced by cfapi_object_get_property(), cfapi_object_set_property(), monster_can_pick(), and move_monster().
struct obj* obj::prev |
Pointer to the previous object in the free/used list
Definition at line 136 of file object.h.
Referenced by expand_objects(), free_object2(), get_object(), init_objects(), and START_TEST().
obj::race |
Human, goblin, dragon, etc
Type(s) | Description |
---|---|
Container | If set, the container will hold only certain types of objects. Possible choices for <container class> are: "gold and jewels", "arrows" and "keys". Unfortunately it is not easy to create new container classes, because items need a matching counterpiece-attribute to the <container class> before they can be put inside a container. This attribute ("race") is set only for the existing container classes. |
Disease | The disease will only infect creatures of the specified <race>. "<race> *" means every creature can be infected. |
Inventory Checker | This string specifies the object we are looking for: We have a match if the player does/don't carry an object of archetype <match arch name>. |
Monster & NPC, Monster (Grimreaper) | Every monster should have a race set to categorize it. The monster's <race> can have different effects: Slaying weapons inflict triple damage against enemy races and holy word kills only enemy races of the god. |
Projectile | Only shooting weapons with matching <ammunition class> can fire these projectiles. For arrows set "arrows", for crossbow bolts set "crossbow bolts" (big surprise). In certain cases, the ammunition class is displayed in the game. Hence, when you create a new ammunition class, choose an intuitive name like "missiles", "spirit bolts" - whatever. You can also make special containers holding these projectiles by setting the <container class> to match your <ammunition class>. |
Rune | If this is set to the arch name of any monster, together with <spell name> "summon evil monster", the rune will summon a bunch of those on detonation. (dam and attacktype will still be ignored in this case). Runes are even capable of summoning multi-square monsters, given enough space. You'd better test it though. |
Shooting Weapon | Only projectiles with matching <ammunition class> can be fired with this weapon. For normal bows set "arrows", for normal crossbows set "crossbow bolts". In certain cases, the ammunition class is displayed in the game. Hence, when you create a new ammunition class, choose an intuitive name like "missiles", "spirit bolts" - whatever. |
Weak Wall | For weak walls, <race> should always be set to "wall", unless you create something fancy like a building which is in fact meant to be a huge animal. Note that shovels slay walls, so they do triple damage against weak walls. |
Definition at line 171 of file object.h.
Referenced by add_abilities(), animate_weapon(), apply_special(), become_follower(), cast_bless(), cast_change_ability(), cast_create_missile(), cast_create_town_portal(), cast_curse(), cast_detection(), cast_invisible(), cast_smite_spell(), cctk_set_object_strings(), cfapi_object_get_property(), cfapi_object_set_property(), change_abil(), change_spell(), check_inv_recursive(), check_race_restrictions(), check_trigger(), choose_cult_monster(), clear_object(), copy_object(), deathstrike_living(), determine_god(), dump_gods(), examine(), find_arrow(), find_better_arrow(), find_key(), fire_bow(), free_arch(), free_object2(), get_god_for_race(), get_object(), get_player(), god_info_msg(), hit_player(), hit_with_one_attacktype(), init_dynamic(), init_races(), is_dragon_pl(), is_legal_2ways_exit(), is_susceptible_to_disease(), magic_wall(), main(), makes_invisible_to(), monster_check_apply(), mood_change(), move_golem(), move_monster(), pay_for_amount(), pay_for_item(), pick_up(), play_sound_player_only(), player_fire_bow(), query_money(), rangetostring(), reset_object(), resurrect_player(), sack_can_hold(), sell_item(), shopkeeper_approval(), should_director_abort(), START_TEST(), summon_golem(), summon_object(), tailor_god_spell(), update_button(), and write_mark().
obj::randomitems |
Items to be generated
Type(s) | Description |
---|---|
Class Changer | This entry determines which initial items the character receives. |
Door | This entry determines what kind of traps will appear in the door. |
Monster & NPC, Monster (Grimreaper) | When the monster is killed, items from the treasurelist will drop to the ground. This is a common way to reward players for killing (masses of) monsters. Note that you can always put items into the monster's inventory. Those will drop-at-kill just like the stuff from the <treasurelist>. |
Shop Floor | This entry determines what kind of treasure will appear, when <generate goods> is enabled. Look into /crossfire/share/crossfire/treasures for details about existing treasurelists. |
Spellbook | There are two ways to put spells into a spellbook:
|
Treasure | This entry determines what kind of treasure will appear. Look into /crossfire/share/crossfire/treasures for details about existing treasurelists. |
Definition at line 236 of file object.h.
Referenced by apply_changes_to_player(), auto_apply(), become_follower(), cast_raise_dead_spell(), cast_wonder(), check_special_prayers(), command_create(), describe_monster(), determine_holy_arch(), do_auto_apply(), dump_monster_treasure(), find_ingred_cost(), fix_auto_apply(), fix_generated_item(), generate_monster_arch(), generate_monster_inv(), give_initial_items(), god_intervention(), identify(), key_change_class(), local_check_loaded_object(), place_chest(), polymorph_living(), put_a_monster(), rune_attack(), second_arch_pass(), CRETreasurePanel::setTreasure(), START_TEST(), and summon_object().
sint8 obj::range |
Range of the spell
Definition at line 256 of file object.h.
Referenced by animate_bomb(), cast_cause_disease(), cast_cone(), cast_curse(), cast_destruction(), cast_detection(), cast_earth_to_dust(), cast_light(), cast_magic_storm(), cast_polymorph(), cast_smite_spell(), create_bomb(), dimension_door(), explode_bullet(), explosion(), fire_arch_from_position(), fire_bolt(), fire_bullet(), insert_ob_in_map(), magic_wall(), merge_spell(), monster_cast_spell(), monster_use_scroll(), mood_change(), move_bolt(), move_bullet(), move_cone(), move_missile(), probe(), and spell_failure().
uint8 obj::range_modifier |
How going up in level effects range
Definition at line 257 of file object.h.
Referenced by fix_generated_item(), level_for_item(), and SP_level_range_adjust().
obj::resist |
Resistance adjustments for attacks
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds acid resistance to the item. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to acid will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds acid resistance to the weapon. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds blinding resistance to the item. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Weapon | This adds blinding resistance to the weapon. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds chaos resistance to the item. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. Note that chaos is not a stand-alone attacktype. Chaos "contains" a combination of other attacktypes. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Weapon | This adds chaos resistance to the weapon. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. Note that chaos is not a stand-alone attacktype. Chaos "contains" a combination of other attacktypes. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds fire resistance to the item. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to cold will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds fire resistance to the weapon. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds confusion resistance to the item. The number is a percent-value in the range 0-100. Confusion resistance is not very effective unless the value comes close to 100 (= perfect immunity). |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to confusion will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds confusion resistance to the weapon. The number is a percent-value in the range 0-100. Confusion resistance is not very effective unless the value comes close to 100 (= perfect immunity). |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds death-attack resistance to the item. The number is a percent-value in the range 0-100. Death-attack resistance is little effective unless the value is 100 (= perfect immunity). Generally, resistance to death-attack is not supposed to be available to players! |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Weapon | This adds death-attack resistance to the weapon. The number is a percent-value in the range 0-100. Death-attack resistance is little effective unless the value is 100 (= perfect immunity). Generally, resistance to death-attack is not supposed to be available to players! |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds depletion resistance to the item. The number is a percent-value in the range 0-100. Depletion resistance is little effective unless the value is 100 (= perfect immunity). |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to depletion will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds depletion resistance to the weapon. The number is a percent-value in the range 0-100. Depletion resistance is little effective unless the value is 100 (= perfect immunity). |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds draining resistance to the item. The number is a percent-value in the range 0-100. Draining resistance is little effective unless the value is 100 (= perfect immunity). |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to draining will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds draining resistance to the weapon. The number is a percent-value in the range 0-100. Draining resistance is little effective unless the value is 100 (= perfect immunity). |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds electricity resistance to the item. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to electricity will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds electricity resistance to the weapon. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds fear resistance to the item. The number is a percent-value in the range 0-100. Resistance to fear is pretty useless. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Weapon | This adds fear resistance to the weapon. The number is a percent-value in the range 0-100. Resistance to fear is pretty useless. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds fire resistance to the item. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to fire will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds fire resistance to the weapon. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds ghosthit resistance to the item. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Weapon | This adds ghosthit resistance to the weapon. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Type(s) | Description |
---|---|
Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds holy power resistance to the item. The number is a percent-value in the range 0-100. Holy power is the attacktype that holyword-type spells use to hurt undead creatures. This kind of resistance is only reasonable for undead players (wraith or devourer cult). Generally, resistance to holy word should not be available for players. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Weapon | This adds holy power resistance to the weapon. The number is a percent-value in the range 0-100. Holy power is the attacktype that holyword-type spells use to hurt undead creatures. This kind of resistance is only reasonable for undead players (wraith or devourer cult). Generally, resistance to holy word should not be available for players. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds magic resistance to the item. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to magic will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds magic resistance to the weapon. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds paralyze resistance to the item. The number is a percent-value in the range 0-100. Paralyze resistance is little effective unless the value is 100 (= perfect immunity). |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to paralyze will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds paralyze resistance to the weapon. The number is a percent-value in the range 0-100. Paralyze resistance is little effective unless the value is 100 (= perfect immunity). |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds physical resistance to the item (= armor value). The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to physical will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds physical resistance to the weapon (= armor value). The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds poison resistance to the item. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to poison will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds poison resistance to the weapon. The number is a percent-value in the range 0-100. Treat this with CARE. Look at other maps and what they require to do for getting this-and-that artifact. |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds fear resistance to the item. The number is a percent-value in the range 0-100. Resistance to fear is pretty useless. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Weapon | This adds fear resistance to the weapon. The number is a percent-value in the range 0-100. Resistance to fear is pretty useless. |
Type(s) | Description |
---|---|
Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Type(s) | Description |
---|---|
Amulet, Boots, Bracers, Breastplate Armor, Cloak, Girdle, Gloves, Helmet, Ring, Shield | This adds weaponmagic resistance to the item. The number is a percent-value in the range 0-100. Weaponmagic resistance generally should not exist on equipment at all. Spells/Monsters doing weaponmagic damage (e.g. comet spell) are not meant to be easily resisted. |
Flesh | Resistances on flesh items make them more durable against spellcraft of the appropriate kind. It also allows dragon players to eventually gain resistance by eating it. Usually resistance should only be set for flesh items in a monster's inventory. |
Inorganic, Magic Wall, Monster & NPC, Monster (Grimreaper), Weak Wall | (no description) |
Potion | The player's resistance to weaponmagic will rise by this value in percent (range -100 till +100). The effect is only temporary, and it does NOT add on the values from the player's equipment. Cursed potions will make negative resistance.. very nasty in combat! |
Weapon | This adds weaponmagic resistance to the weapon. The number is a percent-value in the range 0-100. Weaponmagic resistance generally should not exist on equipment at all. Spells/Monsters doing weaponmagic damage (e.g. comet spell) are not meant to be easily resisted. |
Definition at line 192 of file object.h.
Referenced by add_abilities(), animate_weapon(), become_follower(), blind_living(), calc_item_power(), can_merge(), cast_bless(), cast_change_ability(), cast_destruction(), cfapi_object_get_property(), cfapi_object_set_property(), change_abil(), check_good_armour(), command_resistances(), confuse_living(), describe_monster(), describe_resistance(), did_make_save_item(), dragon_eat_flesh(), dragon_level_gain(), eat_special_food(), esrv_update_stats(), find_better_arrow(), fix_flesh_item(), fix_object(), god_info_msg(), hit_player(), hit_with_one_attacktype(), is_magical(), kill_player(), main(), mood_change(), new_exp(), paralyze_living(), polymorph_living(), potion_type_apply(), print_monsters(), save_throw_object(), set_dragon_name(), set_materialname(), set_ring_bonus(), setup(), special_potion(), START_TEST(), summon_golem(), thrown_item_effect(), and transmute_materialname().
uint16 obj::run_away |
Monster runs away if it's hp goes below this percentage.
Definition at line 235 of file object.h.
Referenced by cfapi_object_get_property(), cfapi_object_set_property(), command_wimpy(), disthit_att(), get_player(), hit_player(), and monster_do_living().
obj::skill |
Name of the skill this object uses/grants
Type(s) | Description |
---|---|
Skill | The <skill name> is used for matchings. When a usable object has an identical <skill name>, players (or monsters) will need this skill to apply/use the object. |
Skill Scroll | The <skill name> matches the skill object that can be learned from this scroll. |
Spell | The <skill name> matches the skill which is needed to cast this spell. This should be one out of "sorcery", "pyromancy", "evocation", "summoning" or "praying". If you want to fiddle with these, please take care not to upset the concept and balance of the various skills. |
Weapon | Matching <skill name> of the skill that is required to use this weapon. |
Definition at line 174 of file object.h.
Referenced by add_player_exp(), adjust_skill_tool(), animate_bomb(), append_spell(), apply_special(), book_type_apply(), can_merge(), cast_destruction(), cast_dust(), cast_spell(), caster_level(), cctk_set_object_strings(), cfapi_object_get_property(), cfapi_object_set_property(), check_spells(), clear_object(), command_cast_spell(), cone_drop(), copy_object(), cure_disease(), do_harvest(), do_hidden_move(), do_skill(), do_skill_attack(), do_symptoms(), do_throw(), dragon_ability_gain(), dump_spells(), examine(), explode_bullet(), find_random_spell_in_ob(), fire_bow(), fix_stopped_arrow(), free_object2(), get_archetype_by_skill_name(), get_object(), hit_with_arrow(), hit_with_one_attacktype(), infect_object(), init_skills(), kill_object(), learn_skill(), link_player_skills(), local_check_loaded_object(), mood_change(), peacemaker_type_process(), poison_living(), pray_at_altar(), reset_object(), scroll_type_apply(), set_spell_skill(), show_matching_spells(), skillscroll_type_apply(), spellbook_type_apply(), START_TEST(), subtract_player_exp(), unapply_special(), use_oratory(), use_skill(), write_note(), write_on_item(), and write_rune().
obj::slaying |
Which race to do double damage to. If this is an exit, this is the filename
Type(s) | Description |
---|---|
Altar, Altar Trigger | This string specifies the item that must be put on the altar to activate it. It can either be the name of an archetype, or directly the name of an object. Yet, titles are not recognized by altars. Remember to put a note somewhere, telling the player what he is expected to drop on the altar. (Often this is put in the altar's name: E.g. "drop 100 platinums") |
Container | If <key string> is set, only players with a special key of matching <key string> are able to open the container. |
Converter | <cost arch> is the name of the archetype the player has to put on the converter, as payment. |
Creator | The created object will bear the name and title specified in <name of creation>. If nothing is set, the standard name and title of the archetype is used. |
Detector | <match name> specifies the name of the object we are looking for. Actually it does also check for the <key string> in key-objects, but for this case inventory checkers are often more powerful to use. |
Event | Specifies the script file name that should be executed. Relative file names are relative to the path name of the map file this even is in. Absolute file names are looked up in the maps base directory. |
Exit | The exit path defines the map that the player is transferred to. You can enter an absolute path, beginning with '/' (for example "/peterm/FireTemple/fire1"). It can also be a relative path, not beginning with '/' (On the map "/peterm/FireTemple/Fire2" for example I could use the relative path "Fire1"). Use relative paths whenever possible! Note that upper/lower case must always be set correctly. However, please use lower case only. It is well possible to have an exit pointing to the same map that the exit is on. If slaying is not set in an exit, the player will see a message like "the exit is closed". |
Inventory Checker | This string specifies the object we are looking for: We have a match if the player does/don't carry a key object or a mark with identical <key string>. Note that key objects usually appear as "passports" in this context. A typical example is the city gate mechanism of Scorn. |
Item Transformer | Contains the verb that is used to construct a message to the player applying the item transformer. |
Locked Door | The <key string> in the door must be identical with the <key string> in the special key, then the door is unlocked. It is VERY important to set the <key string> to something that is unique among the CF map set. DON'T EVER USE the default string "set_individual_value". |
Marker, Trigger Marker | The <key string> can be detected by inventory checkers/detectors. If the player already has a force with that <key string>, there won't be inserted a second one. |
Pedestal | the <match race> defines the object we're looking for. If <match race> matches the monster's or the player's race, we have a match. Yes, pedestals can detect a player's race! E.g. you could create a place where only fireborns can enter, by setting "slaying unnatural". If it is set to "player", any player stepping on the pedestal is a match. Very useful if you want to open a gate for players but not for monsters. |
Projectile | Slaying means the weapon does triple (3x) damage to monsters of the specified race. If <slaying race> matches an arch name, only monsters of that archetype receive triple damage. Triple damage is very effective. |
Rune | Name of the spell in the rune, if any. <spell name> is optional, but if present, overrides the <spell> setting. |
Special Key | This string must be identical with the <key string> in the locked door, then it can be unlocked. It can also be used to trigger inventory checkers. |
Teleporter | The exit path specifies the map that the player is transferred to. <exit path> can be an absolute path, beginning with '/' (for example "/peterm/FireTemple/fire1"). It can also be a relative path, not beginning with '/' (On the map "/peterm/FireTemple/Fire2" for example I could use the relative path "Fire1"). Use relative paths whenever possible! Note that upper/lower case must always be set correctly. However, please use lower case only. If the <exit path> is set, ONLY players can get teleported. If the <exit path> is unset (empty), anything can get teleported: Players, monsters and items. In this case, the destined map is automatically the same map the teleporter is on. |
Weapon | Slaying means the weapon does triple (3x) damage to monsters of the specified race. If <slaying race> matches an arch name (e.g. "big_dragon"), only monsters of that archetype are hit with triple damage. No god blessings are possible for weapons with a race set in this entry (That's because god blessings add triple damage against their own enemy races). Triple damage is very effective. |
Definition at line 172 of file object.h.
Referenced by add_abilities(), add_slaying(), apply_container(), apply_map_builder(), attempt_recipe(), become_follower(), calc_item_power(), can_merge(), cast_bless(), cast_create_missile(), cast_create_town_portal(), cast_detection(), cctk_set_object_strings(), cfapi_object_get_property(), cfapi_object_set_property(), change_treasure(), check_inv_recursive(), check_sacrifice(), check_trigger(), clear_object(), copy_object(), deathstrike_living(), describe_item(), do_exit_map(), do_harvest(), dump_gods(), enter_exit(), eventListener(), execute_event(), find_key(), find_or_create_connection_for_map(), fire_bolt(), fire_bow(), fire_bullet(), fix_generated_item(), fix_object(), fix_stopped_arrow(), follower_has_similar_item(), free_arch(), free_object2(), get_npc(), get_object(), god_enchants_weapon(), god_info_msg(), god_intervention(), hit_player(), hit_with_one_attacktype(), improve_weapon(), keyplace(), local_check_loaded_object(), lock_and_hide_doors(), matches_sacrifice(), mood_change(), move_creator(), move_detector(), move_marker(), op_on_battleground(), operate_altar(), place_chest(), place_exits(), place_special_exit(), process_map(), put_object_in_sack(), remove_locked_door(), reset_object(), sack_can_hold(), should_director_abort(), START_TEST(), summon_golem(), tailor_god_spell(), and update_button().
obj::smoothlevel |
how to smooth this square around
Definition at line 274 of file object.h.
Referenced by map2_add_ob().
sint8 obj::sound_chance |
Probability, 0 to 100, of the object emitting a sound.
Definition at line 244 of file object.h.
Referenced by play_sound_map(), and play_sound_player_only().
obj::speed |
The overall speed of this object
Type(s) | Description |
---|---|
Detector | This value defines the time between two detector-checks. If you want the detector to behave almost like pedestals/buttons, set speed rather high, like <detection speed> 1.0. |
Disease | The <speed> of the disease determines how fast the disease will "move", thus how fast the symptoms strike the host. |
Magic Wall | The <casting speed> defines the spellcasting speed of the wall. You can fine-tune how long the duration between two casts shall be. If you want to create a wall that can be activated (cast per trigger) via connected lever/button/etc, you must set "speed 0". |
Marker | The <marking speed> defines how quickly it will mark something standing on the marker. Set this value rather high to make sure the player really gets his mark. I think <marking speed> 1.0 should do fine. |
Monster & NPC, Monster (Grimreaper) | The <speed> determines how fast a monster will both move and fight. High <speed> makes a monster considerably stronger. |
Mover | The movement speed value determines how fast a chain of these movers will push a player along (default is -0.2). |
Swamp | The higher the <drowning speed>, the faster will players and items sink into the swamp. Swamp with very high <drowning speed> can be a nasty and unexpected death-trap. Players should get a warning before such areas. |
Teleporter | If the <activation speed> is nonzero, the teleporter will automatically be activated in regular time-intervals. Hence, the player can just step on it and gets teleported sooner or later. The duration between two activates depends on the given value. Default in the teleporter arch is <activation speed> 0.1. VERY IMPORTANT: If you want to have your teleporter activated via button/handle/magic_ear/etc, you must set <activation speed> to zero! |
Transport | How fast the transport moves. |
Definition at line 181 of file object.h.
Referenced by add_abilities(), add_object_to_socklist(), animate(), animate_weapon(), apply_savebed(), arrow_type_process(), attack_ob_simple(), blind_living(), can_merge(), cast_bless(), cast_change_ability(), cast_curse(), cast_spell(), cast_word_of_recall(), cfapi_object_get_property(), cfapi_object_set_property(), check_login(), check_move_on(), check_trigger(), command_freeze(), command_remove(), common_process_projectile(), common_projectile_move_on(), confuse_living(), copy_object(), describe_monster(), dimension_door(), do_auto_apply(), do_harvest(), do_symptoms(), do_throw(), drain_wand_charge(), dump_gods(), eat_special_food(), esrv_update_item(), esrv_update_stats(), find_or_create_connection_for_map(), fire_bow(), fix_auto_apply(), fix_object(), fix_stopped_arrow(), free_object2(), gate_type_process(), get_player(), hit_with_arrow(), hit_with_one_attacktype(), insert_ob_in_map(), kill_object(), kill_player(), local_check_loaded_object(), make_object_glow(), map2_add_ob(), merge_spell(), monster_do_living(), move_cone(), move_detector(), move_hole(), move_marker(), move_monster(), move_player_attack(), move_player_mover(), move_teleporter(), new_exp(), new_player_cmd(), paralyze_living(), player_mover_type_move_on(), polymorph(), power_crystal_type_apply(), process_events(), process_players2(), recharge(), remove_all_pets(), remove_door(), remove_locked_door(), setup(), spell_effect_type_move_on(), START_TEST(), stop_item(), summon_golem(), swap_random_stats(), timed_gate_type_process(), transmute_item_to_flower(), transport_type_apply(), trigger_connected(), trigger_move(), and update_ob_speed().
float obj::speed_left |
How much speed is left to spend this round
Definition at line 182 of file object.h.
Referenced by animate(), animate_one(), animate_weapon(), attack_ob_simple(), cast_bless(), cast_change_ability(), cast_curse(), cast_polymorph(), cast_spell(), cast_word_of_recall(), cfapi_object_get_property(), cfapi_object_set_property(), check_move_on(), command_freeze(), common_trap_type_process(), copy_object(), counterspell(), deep_swamp_type_move_on(), deep_swamp_type_process(), dimension_door(), do_harvest(), do_skill(), do_throw(), execute_newserver_command(), explosion(), fire_bow(), first_arch_pass(), fix_summon_pet(), forklightning(), get_player(), handle_client(), handle_newcs_player(), insert_ob_in_map(), kill_object(), kill_player(), merge_spell(), move_bolt(), move_marker(), move_player(), move_player_attack(), move_player_mover(), new_player_cmd(), paralyze_living(), player_mover_type_move_on(), poison_living(), potion_type_apply(), process_events(), process_players1(), process_players2(), remove_door(), remove_locked_door(), setup(), slow_living(), START_TEST(), summon_golem(), transport_type_process(), and trigger_move().
struct obj* obj::spell |
Spell that was being cast
Definition at line 259 of file object.h.
Referenced by cast_spell(), fire_swarm(), move_swarm_spell(), rangetostring(), and START_TEST().
tag_t* obj::spell_tags |
Definition at line 292 of file object.h.
Referenced by copy_object(), free_object2(), get_object(), merge_spell(), and ok_to_put_more().
char* obj::spellarg |
Definition at line 260 of file object.h.
Referenced by cast_spell(), fire_bow(), fix_stopped_arrow(), and START_TEST().
struct obj* obj::spellitem |
Spell ability monster is choosing to use
Definition at line 245 of file object.h.
Referenced by cfapi_object_get_property(), cfapi_object_set_property(), monster_cast_spell(), and START_TEST().
uint8 obj::state |
How the object was last drawn (animation)
Definition at line 200 of file object.h.
Referenced by animate_bomb(), animate_object(), animate_turning(), animate_weapon(), apply_anim_suffix(), cfapi_object_set_property(), common_process_projectile(), dragon_ability_gain(), explosion(), move_hole(), move_player(), process_events(), and process_object().
living obj::stats |
Str, Con, Dex, etc
Definition at line 219 of file object.h.
Referenced by add_abilities(), add_player_exp(), add_statbonus(), add_weight(), alchemy_failure_effect(), allowed_class(), animate_bomb(), animate_trigger(), animate_turning(), animate_weapon(), append_spell(), apply_changes_to_player(), apply_death_exp_penalty(), apply_sign(), apply_special(), attack_ob(), attack_ob_simple(), attempt_hide(), attempt_pick_lock(), attempt_steal(), auto_apply(), become_follower(), blind_living(), blindness_type_process(), calc_alch_danger(), calc_item_power(), calc_perm_exp(), calc_skill_exp(), calculate_difficulty(), can_detect_enemy(), can_merge(), cast_bless(), cast_cause_disease(), cast_change_ability(), cast_change_map_lightlevel(), cast_cone(), cast_create_food(), cast_create_missile(), cast_curse(), cast_destruction(), cast_detection(), cast_heal(), cast_identify(), cast_light(), cast_magic_storm(), cast_polymorph(), cast_smite_spell(), cast_spell(), cast_transfer(), cfapi_object_get_property(), cfapi_object_set_property(), change_abil(), change_exp(), change_luck(), change_object(), charge_mana_effect(), check_bullet(), check_earthwalls(), check_exp_adjust(), check_exp_loss(), check_good_armour(), check_good_weapon(), check_hp(), check_inv_recursive(), check_login(), check_score(), check_spell_knockback(), check_trigger(), check_wakeup(), command_abil(), command_addexp(), command_save(), command_showpets(), command_statistics(), command_stats(), common_trap_type_process(), counterspell(), create_aura(), create_bomb(), cure_disease(), deathstrike_living(), decay_objects(), deep_swamp_type_move_on(), deep_swamp_type_process(), describe_item(), describe_monster(), did_make_save_item(), die_roll(), director_type_move_on(), disthit_att(), do_auto_apply(), do_mood_floor(), do_skill(), do_skill_ident2(), do_some_living(), do_symptoms(), do_throw(), do_turn(), dragon_eat_flesh(), dragon_level_gain(), drain_rod_charge(), drain_specific_stat(), drain_wand_charge(), dump_abilities(), dump_gods(), eat_special_food(), enter_exit(), esrv_update_spells(), esrv_update_stats(), examine(), examine_monster(), explode_bullet(), find_transmution_ob(), find_traps(), fire_arch_from_position(), fire_bolt(), fire_bow(), fire_bullet(), fire_misc_object(), fix_auto_apply(), fix_flesh_item(), fix_generated_item(), fix_object(), fix_stopped_arrow(), fix_summon_pet(), flee_player(), food_type_apply(), forklightning(), gate_type_process(), get_player(), give_initial_items(), give_skill_by_name(), god_enchants_weapon(), god_intervention(), hit_map(), hit_player(), hit_with_arrow(), hit_with_one_attacktype(), hole_type_move_on(), improve_weapon(), infect_object(), is_legal_2ways_exit(), is_magical(), is_true_undead(), jump(), key_change_class(), kill_object(), kill_player(), lamp_type_apply(), learn_skill(), legacy_ob_process(), lighter_type_apply(), local_check_loaded_object(), magic_wall(), main(), make_object_glow(), make_throw_ob(), meditate(), merge_spell(), monster_cast_spell(), monster_do_living(), monster_use_range(), mood_change(), move_ball_spell(), move_bolt(), move_cone(), move_creator(), move_detector(), move_disease(), move_firewall(), move_golem(), move_hole(), move_marker(), move_monster(), move_player_attack(), move_player_mover(), move_symptom(), new_exp(), ok_to_put_more(), peacemaker_type_process(), perceive_self(), pick_arrow_target(), pick_up_object(), place_chest(), place_exits(), place_monsters(), player_lvl_adj(), player_mover_type_move_on(), poison_living(), poison_type_apply(), poisoning_type_process(), polymorph_item(), potion_type_apply(), power_crystal_type_apply(), pray(), pray_at_altar(), print_monsters(), process_object(), push_ob(), query_cost(), random_roll(), random_roll64(), recharge(), regenerate_rod(), remove_statbonus(), remove_trap(), resurrect_player(), ring_desc(), roll_ob(), roll_stats(), rune_attack(), sack_can_hold(), save_life(), save_player(), scroll_failure(), sell_item(), set_dragon_name(), set_materialname(), set_ring_bonus(), setup(), show_skills(), sign_type_move_on(), singing(), skill_attack(), slow_living(), SP_level_spellpoint_cost(), special_potion(), spell_effect_type_move_on(), spell_failure(), spellbook_type_apply(), spellpath_msg(), spinner_type_move_on(), spring_trap(), START_TEST(), stick_arrow(), sub_weight(), subtract_player_exp(), sum_weight(), summon_golem(), summon_object(), swap_random_stats(), swap_stat(), tear_down_wall(), timed_gate_type_process(), trap_adjust(), trap_disarm(), trap_see(), trigger_connected(), trigger_move(), trigger_type_process(), use_oratory(), write_rune(), and write_scroll().
obj::subtype |
Subtype of object
Type(s) | Description |
---|---|
Event | The event type determines the trigger condition. |
Skill | The <skill type> defines the base functionality of the skill. Skill types are hard-coded in the Crossfire server. It isn't hard to create new skill types, but it requires a bit of server-coding. |
Spell | The <spell type> defines the basic type of spell. Some of these types are of a more generic nature than others. |
Definition at line 190 of file object.h.
Referenced by apply_map_builder(), attack_message(), become_follower(), can_merge(), cast_bless(), cast_change_ability(), cast_curse(), cast_destruction(), cast_smite_spell(), cast_spell(), cast_wonder(), cast_word_of_recall(), cfapi_object_get_property(), check_weapon_power(), command_use(), confuse_living(), determine_god(), do_skill(), do_skill_attack(), do_throw(), dragon_ability_gain(), execute_event(), explode_bullet(), find_best_player_hth_skill(), find_obj_by_type_subtype(), get_archetype_by_type_subtype(), get_readable_message_type(), give_skill_by_name(), init_skills(), is_aimed_missile(), link_player_skills(), merge_spell(), monster_should_cast_spell(), move_swarm_spell(), ok_to_put_more(), remove_force(), should_director_abort(), skill_ident(), spell_effect_type_move_on(), spell_effect_type_process(), START_TEST(), and transmute_item_to_flower().
uint8 obj::temp_anim_speed |
Ticks between temporary animation-frames
Definition at line 271 of file object.h.
Referenced by apply_anim_suffix(), process_events(), and process_object().
uint16 obj::temp_animation_id |
An index into the temporary animation array
Definition at line 270 of file object.h.
Referenced by animate_object(), apply_anim_suffix(), process_events(), and process_object().
uint8 obj::temp_last_anim |
Last sequence used to draw temporary animation face
Definition at line 272 of file object.h.
Referenced by apply_anim_suffix().
obj::title |
Of foo, etc
Definition at line 170 of file object.h.
Referenced by add_author(), add_book_to_list(), become_follower(), calc_alch_danger(), can_merge(), cast_smite_spell(), cctk_set_object_strings(), cfapi_object_get_property(), cfapi_object_set_property(), change_book(), change_treasure(), check_inv_recursive(), clear_object(), content_recipe_value(), copy_object(), describe_item(), determine_god(), dump_gods(), dump_monster_treasure(), execute_event(), find_ingred_cost(), fix_container_multipart(), fix_generated_item(), fix_multipart_object(), follower_has_similar_item(), food_type_apply(), free_arch(), free_artifact(), free_object2(), get_npc(), get_object(), give_artifact_abilities(), god_enchants_weapon(), god_examines_item(), god_info_msg(), hit_player(), identify(), improve_armour(), infect_object(), is_defined_recipe(), is_magical(), make_formula_book(), move_creator(), query_base_name(), query_short_name(), reset_object(), START_TEST(), tailor_god_spell(), and unique_book().
uint8 obj::type |
PLAYER, BULLET, etc. See define.h
Definition at line 189 of file object.h.
Referenced by add_abilities(), add_death(), add_map_event(), add_player_exp(), add_shop_item(), add_slaying(), add_weight(), adj_stealchance(), alchemy(), alchemy_failure_effect(), alchemy_object(), altar_type_move_on(), animate_object(), animate_one(), animate_weapon(), apply_builder_floor(), apply_builder_item(), apply_builder_remove(), apply_builder_wall(), apply_builder_window(), apply_changes_to_player(), apply_container(), apply_death_exp_penalty(), apply_map_builder(), apply_special(), armour_improver_type_apply(), arrow_type_process(), artifact_msg(), CREUtils::artifactNode(), attack_melee_weapon(), attack_message(), attack_ob_simple(), attempt_do_alchemy(), attempt_hide(), attempt_jump(), attempt_pick_lock(), attempt_recipe(), attempt_steal(), auto_apply(), become_follower(), blocked_link(), book_type_apply(), build_class_list_reply(), build_race_list_reply(), calc_item_power(), calc_skill_exp(), can_apply_object(), can_be_transmuted(), can_build_over(), can_detect_enemy(), can_merge(), can_pay(), can_pick(), can_see_enemy(), cancellation(), cast_bless(), cast_cause_disease(), cast_change_ability(), cast_cone(), cast_consecrate(), cast_create_food(), cast_create_missile(), cast_curse(), cast_destruction(), cast_detection(), cast_dust(), cast_earth_to_dust(), cast_identify(), cast_invisible(), cast_raise_dead_spell(), cast_smite_spell(), cast_spell(), cast_wonder(), cast_word_of_recall(), caster_level(), cfapi_object_drop(), cfapi_object_get_property(), cfapi_object_say(), cfapi_object_set_property(), cfapi_object_teleport(), change_abil(), change_book(), change_exp(), change_object(), change_skill(), check_doors(), check_earthwalls(), check_enemy(), check_good_armour(), check_good_weapon(), check_inv(), check_inv_recursive(), check_login(), check_move_on(), check_physically_infect(), check_pick(), check_race_restrictions(), check_special_prayers(), check_spell_expiry(), check_spell_known(), check_spells(), check_trigger(), check_weapon_power(), clear_skill(), clock_type_apply(), command_cast_spell(), command_create(), command_drop(), command_dropall(), command_empty(), command_insert_into(), command_possess(), command_remove(), command_resistances(), command_setgod(), command_use(), common_ob_move_on(), common_pre_ob_move_on(), communicate(), confuse_living(), container_type_move_on(), convert_item(), coords_in_shop(), copy_owner(), counterspell(), create_aura(), CREFormulaePanel::CREFormulaePanel(), Crossfire_Object_wrap(), cure_disease(), decay_objects(), deep_swamp_type_move_on(), deep_swamp_type_process(), describe_item(), describe_monster(), describe_resistance(), describe_shop(), determine_god(), determine_holy_arch(), die_roll(), dimension_door(), dispel_rune(), do_auto_apply(), do_exit_map(), do_forget_spell(), do_harvest(), do_hidden_move(), do_learn_spell(), do_mood_floor(), do_skill(), do_skill_attack(), do_skill_ident2(), do_symptoms(), do_talk_npc(), do_throw(), do_turn(), door_in_square(), dragon_ability_gain(), dragon_eat_flesh(), dragon_level_gain(), drain_wand_charge(), draw_client_map(), draw_ext_info(), draw_magic_map(), drop(), drop_object(), dump_monster_treasure_rec(), dump_spells(), enter_exit(), enter_map(), esrv_add_spells(), esrv_get_ob_from_count(), esrv_move_object(), esrv_update_spells(), eventListener(), examine(), execute_event(), execute_word_of_recall(), exit_type_apply(), exit_type_move_on(), explode_bullet(), find_archetype_by_object_type_name(), find_arrow(), find_best_player_hth_skill(), find_dir(), find_enemy(), find_ingred_cost(), find_key(), find_nearest_living_creature(), find_obj_by_type_subtype(), find_or_create_connection_for_map(), find_random_spell_in_ob(), find_symptom(), find_target_for_friendly_spell(), find_throw_ob(), find_traps(), fire(), fire_arch_from_position(), fire_bow(), fire_misc_object(), fix_auto_apply(), fix_flesh_item(), fix_generated_item(), fix_object(), fix_stopped_item(), fix_summon_pet(), fix_walls(), follow_owner(), follower_has_similar_item(), food_type_apply(), free_object2(), friendly_fire(), gate_type_process(), generate_artifact(), get_archetype_by_skill_name(), get_archetype_by_type_subtype(), get_connection_rune(), get_item_from_body_location(), get_jail_exit(), get_living_id(), get_msg_book(), get_payment(), get_pet_enemy(), get_player_archetype(), get_player_container(), get_spell_by_name(), get_wall(), give_initial_items(), god_enchants_weapon(), god_gives_present(), god_intervention(), god_removes_curse(), grant_immunity(), gravestone_text(), has_ability(), hide(), hit_map(), hit_player(), hit_with_arrow(), hit_with_one_attacktype(), identify(), identify_altar_type_move_on(), improve_armour(), improve_weapon(), improve_weapon_magic(), infect_object(), init_artifacts(), init_dynamic(), init_gods(), init_skills(), insert_ob_in_map(), insert_ob_in_ob(), inventory(), is_aimed_missile(), is_dragon_pl(), is_legal_2ways_exit(), is_magical(), is_old_wraith_pl(), is_slaying(), is_special_equipment(), is_true_undead(), is_wraith_pl(), item_matched_string(), kill_object(), kill_player(), learn_skill(), leave(), legacy_ob_apply(), legacy_ob_describe(), legacy_ob_process(), lighter_type_apply(), link_player_skills(), local_check_loaded_object(), locate_recipe_artifact(), look_at(), loot_object(), magic_wall(), make_throw_ob(), make_visible(), makes_invisible_to(), manual_apply(), matches_sacrifice(), meditate(), merge_spell(), monster_apply_below(), monster_can_pick(), monster_cast_spell(), monster_check_apply(), monster_choose_random_spell(), monster_use_range(), monster_use_scroll(), monster_use_skill(), mood_change(), move_detector(), move_marker(), move_ob(), move_player_attack(), move_player_mover(), move_swarm_spell(), move_teleporter(), need_identify(), new_text_name(), ob_apply(), ob_blocked(), ob_describe(), ob_move_on(), ob_process(), ob_trigger(), ok_to_put_more(), op_on_battleground(), pay_for_amount(), pay_for_item(), pay_from_container(), perceive_self(), pet_move(), pick_lock(), pick_up(), pick_up_object(), play_sound_player_only(), player_apply(), player_apply_below(), player_attack_door(), player_can_view(), player_changer_type_process(), player_lvl_adj(), player_mover_type_move_on(), poison_living(), poison_type_apply(), poisoning_type_process(), polymorph(), polymorph_item(), polymorph_living(), potion_type_apply(), power_crystal_type_apply(), pray(), present(), present_in_ob(), present_in_ob_by_name(), print_message(), probe(), process_events(), process_map(), process_object(), push_ob(), put_object_in_sack(), put_treasure(), query_base_name(), query_cost(), query_cost_string(), query_flags(), query_money(), query_name(), query_short_name(), random_roll(), random_roll64(), rangetostring(), real_money_value(), recharge(), remove_adjacent_doors(), remove_all_pets(), remove_curse(), remove_marking_runes(), remove_ob(), remove_trap(), retrofit_joined_wall(), ring_desc(), runapply(), rune_attack(), runghosted(), runmovement(), sack_can_hold(), save_objects(), save_player(), save_throw_object(), savebed_type_apply(), scroll_type_apply(), sell_item(), send_changed_object(), set_abs_magic(), set_materialname(), set_ring_bonus(), CREArtifactPanel::setArtifact(), share_exp(), shop_inventory_type_apply(), shop_mat_type_move_on(), shop_specialisation_ratio(), should_arena_attack(), show_matching_spells(), show_skills(), sign_type_move_on(), singing(), skill_attack(), skill_ident(), skill_throw(), skillscroll_type_apply(), spell_find_dir(), spellbook_type_apply(), spellpath_msg(), spring_trap(), stand_near_hostile(), start_animation(), START_TEST(), steal(), stop_item(), stop_using_item(), sub_weight(), subtract_player_exp(), sum_weight(), summon_golem(), summon_object(), tailor_god_spell(), tailor_readable_ob(), teleport(), thrown_item_effect(), thrown_object_type_process(), transfer_ob(), transmute_materialname(), transport_type_apply(), trap_disarm(), treasure_type_apply(), trigger_connected(), try_fit(), turn_one_transport(), turn_transport(), unapply_for_ob(), unapply_special(), unblock_exits(), update_button(), update_buttons(), update_object(), update_position(), use_oratory(), use_skill(), weapon_improver_type_apply(), write_note(), write_on_item(), write_rune(), and write_scroll().
obj::value |
How much money it is worth (or contains)
Definition at line 201 of file object.h.
Referenced by add_abilities(), add_value(), alchemy_failure_effect(), alchemy_object(), altar_type_move_on(), artifact_msg(), can_merge(), cast_create_food(), cast_create_missile(), cf_handle_type_apply(), cfapi_object_get_property(), cfapi_object_set_property(), check_altar_sacrifice(), check_trigger(), convert_item(), cost_string_from_value(), do_symptoms(), drop_object(), dump_alchemy_costs(), examine(), explosion(), find_ingred_cost(), find_next_coin(), fix_flesh_item(), fix_generated_item(), gate_type_process(), hit_player(), infect_object(), kill_player(), local_check_loaded_object(), move_detector(), move_disease(), move_hole(), operate_altar(), pay_from_container(), polymorph_item(), potion_type_apply(), push_button(), query_cost(), query_cost_string(), query_money(), remove_curse(), remove_value(), sell_item(), set_materialname(), set_ring_bonus(), START_TEST(), timed_gate_type_process(), trapdoor_type_move_on(), trigger_connected(), update_button(), use_trigger(), and write_scroll().
obj::weapontype |
Type of weapon
Type(s) | Description |
---|---|
Weapon | The <weapon type> characterizes the weapon's type of physical attack. It could best be considered a "sub-classification" of the physical attacktype. For now, this is only used for attack messages! You should always set this correctly when creating new weapons for your maps. |
Definition at line 222 of file object.h.
Referenced by attack_message(), and cast_create_town_portal().
obj::weight |
Attributes of the object
Type(s) | Description |
---|---|
Altar, Altar Trigger, Amulet, Battleground, Book, Boots, Bracers, Breastplate Armor, Class Changer, Cloak, Clock, Container, Converter, Creator, Detector, Director, Disease, Door, Duplicator, Event, Exit, Flesh, Floor, Floor (Encounter), Food, Gate, Girdle, Gloves, Handle, Handle Trigger, Hazard Floor, Helmet, Holy Altar, Horn, Inorganic, Inventory Checker, Item Transformer, Jewel, Key, Locked Door, Magic Ear, Magic Wall, Marker, Money, Monster & NPC, Monster (Grimreaper), Mood Floor, Mover, Pedestal, Pit, Poison Food, Potion, Power Crystal, Projectile, Ring, Rod, Savebed, Scroll, Shield, Shooting Weapon, Shop Floor, Shop Mat, Sign & Magic Mouth, Skill, Skill Scroll, Special Key, Spell, Spellbook, Spinner, Swamp, Teleporter, Timed Gate, Transport, Trigger Marker, Wall, Wand & Staff, Weak Wall, Weapon | This value defines the object's weight in grams (1000g is 1kg). Objects with zero weight are not pickable for players. Still, set the "non-pickable"-flag for explicitly non-pickable objects (hey, this is opensource.. you never know ;) ). |
Button, Button Trigger | The button is pressed (triggered), as soon as <press weigh> gram are placed on top of it. |
Trapdoor | This value defines how much weight the trapdoor can hold. Once items or creatures are gathered on the trapdoor, with a total weight surpassing this value, then the trapdoor will open and things start falling through. |
Definition at line 216 of file object.h.
Referenced by add_abilities(), adj_stealchance(), alchemy(), alchemy_failure_effect(), alchemy_object(), can_merge(), can_pick(), cfapi_object_get_property(), cfapi_object_set_property(), check_login(), check_pick(), check_spell_knockback(), check_trigger(), decrease_ob_nr(), do_throw(), examine(), fix_flesh_item(), improve_armour(), improve_weapon(), increase_ob_nr(), insert_ob_in_ob(), key_change_class(), make_item_from_recipe(), merge_ob(), move_cone(), new_text_name(), pick_up_object(), query_base_name(), query_short_name(), query_weight(), remove_force(), remove_ob(), roll_ob(), sack_can_hold(), sell_item(), set_abs_magic(), set_materialname(), START_TEST(), stick_arrow(), sum_weight(), transmute_item_to_flower(), transport_can_hold(), trapdoor_type_move_on(), and update_button().
sint32 obj::weight_limit |
Weight-limit of object
Definition at line 217 of file object.h.
Referenced by cfapi_object_get_property(), cfapi_object_set_property(), examine(), sack_can_hold(), sell_item(), START_TEST(), transport_can_hold(), and transport_type_apply().
obj::will_apply |
See crossfire.doc and What monsters apply
Type(s) | Description |
---|---|
Monster & NPC, Monster (Grimreaper) | This entry defines which kinds of environment actions the creature is able to perform. |
Definition at line 243 of file object.h.
Referenced by monster_apply_below(), monster_check_apply(), move_monster(), and move_ob().
sint16 obj::x |
Definition at line 179 of file object.h.
Referenced by add_one_item(), alchemy(), alchemy_failure_effect(), animate_bomb(), animate_weapon(), apply_builder_remove(), apply_container(), apply_map_builder(), apply_savebed(), armour_improver_type_apply(), attack_message(), attempt_jump(), auto_apply(), can_build_over(), cast_cause_disease(), cast_cone(), cast_consecrate(), cast_create_obj(), cast_create_town_portal(), cast_destruction(), cast_detection(), cast_earth_to_dust(), cast_identify(), cast_light(), cast_magic_storm(), cast_polymorph(), cast_raise_dead_spell(), cast_smite_spell(), cast_spell(), cast_transfer(), cfapi_object_get_property(), cfapi_object_set_property(), change_object(), charge_mana_effect(), check_bullet(), check_hp(), check_infection(), check_login(), check_move_on(), check_spell_knockback(), check_wall(), command_create(), command_reset(), command_save(), command_summon(), command_teleport(), common_process_projectile(), communicate(), compute_path(), cone_drop(), convert_item(), converter_type_move_on(), counterspell(), create_bomb(), create_npc_info(), decrease_ob_nr(), dimension_door(), dispel_rune(), distance(), do_harvest(), do_mood_floor(), do_skill_detect_curse(), do_skill_detect_magic(), do_skill_ident(), do_throw(), do_turn(), draw_client_map(), draw_client_map2(), drop_object(), emergency_save(), enter_exit(), enter_fixed_template_map(), enter_map(), enter_random_map(), enter_random_template_map(), enter_unique_map(), esrv_draw_look(), esrv_get_ob_from_count(), eventListener(), execute_event(), execute_word_of_recall(), expand_lighted_sight(), expand_sight(), explode_bullet(), explosion(), find_multi_free_spot_around(), find_multi_free_spot_within_radius(), find_nearest_living_creature(), find_target_for_friendly_spell(), find_traps(), fire_arch_from_position(), fire_bolt(), fire_bow(), fire_bullet(), fire_swarm(), first_arch_pass(), fix_multipart_object(), fix_summon_pet(), follow_owner(), forklightning(), free_object2(), gate_type_process(), generate_monster_arch(), get_exit_seed(), get_multi_size(), get_pet_enemy(), get_pointed_target(), get_rangevector(), get_rangevector_from_mapcoord(), handle_apply_yield(), hideability(), hit_map(), hit_player(), hit_with_arrow(), identify(), include_map_in_map(), increase_ob_nr(), insert_multisquare_ob_in_map(), insert_ob_in_map(), insert_ob_in_map_at(), insert_ob_in_ob(), is_in_shop(), is_legal_2ways_exit(), key_change_class(), keyplace(), kill_object(), kill_player(), local_check_loaded_object(), lock_and_hide_doors(), look_at(), loot_object(), magic_mapping_mark(), magic_mapping_mark_recursive(), magic_wall(), make_map_floor(), make_map_walls(), make_object_glow(), make_sure_not_seen(), make_sure_seen(), map2_add_ob(), monster_use_bow(), monster_use_range(), monster_use_skill(), mood_change(), move_aura(), move_ball_spell(), move_bolt(), move_bullet(), move_cone(), move_creator(), move_detector(), move_duplicator(), move_firewall(), move_golem(), move_marker(), move_missile(), move_ob(), move_player_attack(), move_player_mover(), move_swarm_spell(), move_symptom(), move_to(), npc_call_help(), ob_blocked(), object_create_arch(), path_to_player(), peacemaker_type_process(), pet_move(), pick_arrow_target(), pick_lock(), place_alchemy_objects(), place_chest(), place_exits(), place_fountain_with_specials(), place_monsters(), place_special_exit(), place_treasure(), play_sound_map(), play_sound_player_only(), player_can_view(), player_fire_bow(), polymorph_item(), polymorph_living(), potion_type_apply(), probe(), process_map(), process_players1(), push_ob(), put_a_monster(), put_decor(), put_doors(), put_floor(), put_object_in_sack(), put_treasure(), recharge(), remove_adjacent_doors(), remove_door(), remove_force(), remove_locked_door(), remove_ob(), remove_trap(), remove_unpaid_objects(), replace_insert_ob_in_map(), retrofit_joined_wall(), roll_ob(), runghosted(), runmoveto(), save_player(), save_throw_object(), set_first_map(), setup(), shop_mat_type_move_on(), singing(), skill_attack(), spell_effect(), spell_failure(), spring_trap(), stand_in_light(), stand_near_hostile(), START_TEST(), steal(), summon_golem(), summon_object(), surround_by_doors(), tear_down_wall(), teleport(), transfer_ob(), transport_type_apply(), trap_show(), treasure_type_apply(), try_fit(), turn_one_transport(), update_all_los(), update_buttons(), update_object(), use_alchemy(), use_oratory(), weapon_improver_type_apply(), write_mark(), and write_rune().
sint16 obj::y |
Position in the map for this object
Definition at line 179 of file object.h.
Referenced by add_one_item(), alchemy(), alchemy_failure_effect(), animate_bomb(), animate_weapon(), apply_builder_remove(), apply_container(), apply_map_builder(), apply_savebed(), armour_improver_type_apply(), attack_message(), attempt_jump(), auto_apply(), can_build_over(), cast_cause_disease(), cast_cone(), cast_consecrate(), cast_create_obj(), cast_create_town_portal(), cast_destruction(), cast_detection(), cast_earth_to_dust(), cast_identify(), cast_light(), cast_magic_storm(), cast_polymorph(), cast_raise_dead_spell(), cast_smite_spell(), cast_spell(), cast_transfer(), cfapi_object_get_property(), cfapi_object_set_property(), change_object(), charge_mana_effect(), check_bullet(), check_hp(), check_infection(), check_login(), check_move_on(), check_spell_knockback(), check_wall(), command_create(), command_reset(), command_save(), command_summon(), command_teleport(), common_process_projectile(), communicate(), compute_path(), cone_drop(), convert_item(), converter_type_move_on(), counterspell(), create_bomb(), create_npc_info(), decrease_ob_nr(), dimension_door(), dispel_rune(), distance(), do_harvest(), do_mood_floor(), do_skill_detect_curse(), do_skill_detect_magic(), do_skill_ident(), do_throw(), do_turn(), draw_client_map(), draw_client_map2(), drop_object(), emergency_save(), enter_exit(), enter_fixed_template_map(), enter_map(), enter_random_map(), enter_random_template_map(), enter_unique_map(), esrv_draw_look(), esrv_get_ob_from_count(), eventListener(), execute_event(), execute_word_of_recall(), expand_lighted_sight(), expand_sight(), explode_bullet(), explosion(), find_multi_free_spot_around(), find_multi_free_spot_within_radius(), find_nearest_living_creature(), find_target_for_friendly_spell(), find_traps(), fire_arch_from_position(), fire_bolt(), fire_bow(), fire_bullet(), fire_swarm(), first_arch_pass(), fix_multipart_object(), fix_summon_pet(), follow_owner(), forklightning(), free_object2(), gate_type_process(), generate_monster_arch(), get_exit_seed(), get_multi_size(), get_pet_enemy(), get_pointed_target(), get_rangevector(), get_rangevector_from_mapcoord(), handle_apply_yield(), hideability(), hit_map(), hit_player(), hit_with_arrow(), identify(), include_map_in_map(), increase_ob_nr(), insert_multisquare_ob_in_map(), insert_ob_in_map(), insert_ob_in_map_at(), insert_ob_in_ob(), is_in_shop(), is_legal_2ways_exit(), key_change_class(), keyplace(), kill_object(), kill_player(), local_check_loaded_object(), lock_and_hide_doors(), look_at(), loot_object(), magic_mapping_mark(), magic_mapping_mark_recursive(), magic_wall(), make_map_floor(), make_map_walls(), make_object_glow(), make_sure_not_seen(), make_sure_seen(), map2_add_ob(), monster_use_bow(), monster_use_range(), monster_use_skill(), mood_change(), move_aura(), move_ball_spell(), move_bolt(), move_bullet(), move_cone(), move_creator(), move_detector(), move_duplicator(), move_firewall(), move_golem(), move_marker(), move_missile(), move_ob(), move_player_attack(), move_player_mover(), move_swarm_spell(), move_symptom(), move_to(), npc_call_help(), ob_blocked(), object_create_arch(), path_to_player(), peacemaker_type_process(), pet_move(), pick_arrow_target(), pick_lock(), place_alchemy_objects(), place_chest(), place_exits(), place_fountain_with_specials(), place_monsters(), place_special_exit(), place_treasure(), play_sound_map(), play_sound_player_only(), player_can_view(), player_fire_bow(), polymorph_item(), polymorph_living(), potion_type_apply(), probe(), process_map(), process_players1(), push_ob(), put_a_monster(), put_decor(), put_doors(), put_floor(), put_object_in_sack(), put_treasure(), recharge(), remove_adjacent_doors(), remove_door(), remove_force(), remove_locked_door(), remove_ob(), remove_trap(), remove_unpaid_objects(), replace_insert_ob_in_map(), retrofit_joined_wall(), roll_ob(), runghosted(), runmoveto(), save_player(), save_throw_object(), set_first_map(), setup(), shop_mat_type_move_on(), singing(), skill_attack(), spell_effect(), spell_failure(), spring_trap(), stand_in_light(), stand_near_hostile(), START_TEST(), steal(), summon_golem(), summon_object(), surround_by_doors(), tear_down_wall(), teleport(), transfer_ob(), transport_type_apply(), trap_show(), treasure_type_apply(), try_fit(), turn_one_transport(), update_all_los(), update_buttons(), update_object(), use_alchemy(), use_oratory(), weapon_improver_type_apply(), write_mark(), and write_rune().