|
Crossfire Server
1.75.0
|
Plugin API. More...
#include <assert.h>#include <stdlib.h>#include <string.h>#include "plugin.h"#include "shop.h"#include "sproto.h"#include "svnversion.h"#include "timers.h"#include "assets.h"#include "AssetsManager.h"#include "server.h"Go to the source code of this file.
Macros | |
| #define | NR_OF_HOOKS (sizeof(plug_hooks)/sizeof(*plug_hooks)) |
| Number of hooked functions a plugin can call. More... | |
| #define | string_get_int(name) |
Functions | |
| static void | cfapi_archetype_get_property (int *type,...) |
| static void | cfapi_cost_string_from_value (int *type,...) |
| Wrapper for cost_string_from_value, modified to take a buffer and length instead of a StringBuffer. More... | |
| static void | cfapi_friendlylist_get_next (int *type,...) |
| Friend list access, to get objects on it. More... | |
| static void | cfapi_generate_random_map (int *type,...) |
| Wrapper for generate_random_map(). More... | |
| static void | cfapi_get_hooks (int *type,...) |
| static void | cfapi_get_month_name (int *type,...) |
| Wrapper for get_season_name(). More... | |
| static void | cfapi_get_periodofday_name (int *type,...) |
| Wrapper for get_season_name(). More... | |
| static void | cfapi_get_season_name (int *type,...) |
| Wrapper for get_season_name(). More... | |
| static void | cfapi_get_time (int *type,...) |
| Wrapper for get_tod(). More... | |
| static void | cfapi_get_weekday_name (int *type,...) |
| Wrapper for get_season_name(). More... | |
| static void | cfapi_log (int *type,...) |
| Wrapper for LOG(). More... | |
| static void | cfapi_map_change_light (int *type,...) |
| Wrapper for change_map_light(). More... | |
| static void | cfapi_map_create_path (int *type,...) |
| Wrapper for create_pathname() and create_overlay_pathname(). More... | |
| static void | cfapi_map_delete_map (int *type,...) |
| static void | cfapi_map_find_by_archetype_name (int *type,...) |
| Kinda wrapper for map_find_by_archetype() (but uses a string, not an archetype*). More... | |
| static void | cfapi_map_get_map (int *type,...) |
| Gets map information. More... | |
| static void | cfapi_map_get_map_property (int *type,...) |
| static void | cfapi_map_get_object_at (int *type,...) |
| Wrapper for GET_MAP_OB(). More... | |
| static void | cfapi_map_has_been_loaded (int *type,...) |
| Wrapper for has_been_loaded(). More... | |
| static void | cfapi_map_message (int *type,...) |
| static void | cfapi_map_out_of_map (int *type,...) |
| Wrapper for out_of_map(). More... | |
| static void | cfapi_map_set_map_property (int *type,...) |
| static void | cfapi_map_trigger_connected (int *type,...) |
| Wrapper for trigger_connected(). More... | |
| static void | cfapi_map_update_position (int *type,...) |
| Wrapper for update_position(). More... | |
| static void | cfapi_object_apply (int *type,...) |
| Applies an object. More... | |
| static void | cfapi_object_apply_below (int *type,...) |
| Applies an object below. More... | |
| static void | cfapi_object_cast (int *type,...) |
| Wrapper for query_money(). More... | |
| static void | cfapi_object_change_abil (int *type,...) |
| Wrapper for change_abil(). More... | |
| static void | cfapi_object_change_exp (int *type,...) |
| Wrapper for change_exp(). More... | |
| static void | cfapi_object_check_spell (int *type,...) |
| Wrapper for check_spell_known(). More... | |
| static void | cfapi_object_check_trigger (int *type,...) |
| Wrapper for check_trigger(). More... | |
| static void | cfapi_object_clean_object (int *type,...) |
| static void | cfapi_object_clear (int *type,...) |
| Wrapper for object_clear(). More... | |
| static void | cfapi_object_clone (int *type,...) |
| Clone an object, either through object_create_clone() or object_copy(). More... | |
| static void | cfapi_object_create (int *type,...) |
| Wrapper for object_new(), create_archetype() and create_archetype_by_object_name(). More... | |
| static void | cfapi_object_delete (int *type,...) |
| static void | cfapi_object_describe (int *type,...) |
| Wrapper for describe_item(). More... | |
| static void | cfapi_object_distance (int *type,...) |
| Wrapper for object_distance(). More... | |
| static void | cfapi_object_drain (int *type,...) |
| static void | cfapi_object_drop (int *type,...) |
| Wrapper for drop(). More... | |
| static void | cfapi_object_find_archetype_inside (int *type,...) |
| Kinda wrapper for arch__present_in_ob(). More... | |
| static void | cfapi_object_find_by_arch_name (int *type,...) |
| static void | cfapi_object_find_by_name (int *type,...) |
| static void | cfapi_object_fix (int *type,...) |
| static void | cfapi_object_forget_spell (int *type,...) |
| static void | cfapi_object_get_key (int *type,...) |
| Gets a key/value value for an object. More... | |
| static void | cfapi_object_get_property (int *type,...) |
| Main object property getter. More... | |
| static void | cfapi_object_give_skill (int *type,...) |
| static void | cfapi_object_identify (int *type,...) |
| Wrapper for identify(). More... | |
| static void | cfapi_object_insert (int *type,...) |
| static void | cfapi_object_learn_spell (int *type,...) |
| static void | cfapi_object_merge (int *type,...) |
| Wrapper for object_merge(). More... | |
| static void | cfapi_object_move (int *type,...) |
| Moves an object. More... | |
| static void | cfapi_object_on_same_map (int *type,...) |
| static void | cfapi_object_pay_amount (int *type,...) |
| Wrapper for pay_for_amount(). More... | |
| static void | cfapi_object_pay_item (int *type,...) |
| Wrapper for pay_for_item(). More... | |
| static void | cfapi_object_perm_exp (int *type,...) |
| Wrapper for permanent experience calculation. More... | |
| static void | cfapi_object_pickup (int *type,...) |
| static void | cfapi_object_query_money (int *type,...) |
| Wrapper for query_money(). More... | |
| static void | cfapi_object_remove (int *type,...) |
| static void | cfapi_object_remove_depletion (int *type,...) |
| static void | cfapi_object_reset (int *type,...) |
| Wrapper for clear_reset(). More... | |
| static void | cfapi_object_say (int *type,...) |
| static void | cfapi_object_set_key (int *type,...) |
| Write a key/value for an object. More... | |
| static void | cfapi_object_set_property (int *type,...) |
| Sets the property of an object. More... | |
| static void | cfapi_object_split (int *type,...) |
| Wrapper for object_split(). More... | |
| static void | cfapi_object_spring_trap (int *type,...) |
| static void | cfapi_object_teleport (int *type,...) |
| Teleports an object at a specified destination if possible. More... | |
| static void | cfapi_object_transfer (int *type,...) |
| Object transfer. More... | |
| static void | cfapi_object_transmute (int *type,...) |
| static void | cfapi_object_update (int *type,...) |
| Wrapper for object_update(). More... | |
| static void | cfapi_object_user_event (int *type,...) |
| static void | cfapi_party_get_property (int *type,...) |
| Party-related functions. More... | |
| static void | cfapi_player_can_pay (int *type,...) |
| Wrapper for can_pay(). More... | |
| static void | cfapi_player_find (int *type,...) |
| Wrapper for find_player_partial_name(). More... | |
| static void | cfapi_player_knowledge (int *type,...) |
| Wrapper for knowledge-related functions(). More... | |
| static void | cfapi_player_message (int *type,...) |
| static void | cfapi_player_quest (int *type,...) |
| Quest-related wrappers, for all quest-related operations. More... | |
| static void | cfapi_region_get_property (int *type,...) |
| Regions-related functions. More... | |
| static void | cfapi_register_command (int *type,...) |
| static void | cfapi_set_random_map_variable (int *type,...) |
| Wrapper for set_random_map_variable(). More... | |
| static void | cfapi_system_add_string (int *type,...) |
| Wrapper for add_string(). More... | |
| static void | cfapi_system_check_path (int *type,...) |
| Wrapper for check_path(). More... | |
| static void | cfapi_system_directory (int *type,...) |
| static void | cfapi_system_find_animation (int *type,...) |
| Wrapper for find_animation(). More... | |
| static void | cfapi_system_find_face (int *type,...) |
| Wrapper for find_face(). More... | |
| static void | cfapi_system_find_string (int *type,...) |
| Wrapper for find_string(). More... | |
| static void | cfapi_system_get_archetype_vector (int *type,...) |
| static void | cfapi_system_get_map_vector (int *type,...) |
| static void | cfapi_system_get_object_vector (int *type,...) |
| static void | cfapi_system_get_party_vector (int *type,...) |
| static void | cfapi_system_get_region_vector (int *type,...) |
| static void | cfapi_system_re_cmp (int *type,...) |
| Wrapper for re_cmp(). More... | |
| static void | cfapi_system_register_global_event (int *type,...) |
| static void | cfapi_system_remove_string (int *type,...) |
| Wrapper for free_string(). More... | |
| static void | cfapi_system_strdup_local (int *type,...) |
| Wrapper for strdup_local(). More... | |
| static void | cfapi_system_unregister_global_event (int *type,...) |
| static void | cfapi_timer_create (int *type,...) |
| Wrapper for cfapi_timer_create(). More... | |
| static void | cfapi_timer_destroy (int *type,...) |
| Wrapper for cftimer_destroy(). More... | |
| static void | cfapi_unregister_command (int *type,...) |
| void | cleanupPlugins (void) |
| Call the crossfire_plugin::closefunc on the various plugins, used at server shutdown. More... | |
| static void | copy_message (object *op, const char *msg) |
| Utility function to copy the string to op->msg. More... | |
| void | initPlugins (void) |
| Plugins initialization. More... | |
| void | plugins_display_list (object *op) |
| Displays a list of loaded plugins (keystrings and description) in the game log window. More... | |
| static crossfire_plugin * | plugins_find_plugin (const char *id) |
| Find a plugin from its internal name. More... | |
| int | plugins_init_plugin (const char *libfile) |
| Try to load the specified plugin. More... | |
| int | plugins_remove_plugin (const char *id) |
| Unload the specified plugin. More... | |
| static void | send_changed_object (object *op) |
| Notify clients about a changed object. More... | |
Variables | |
| static const hook_entry | plug_hooks [] |
| All hooked functions plugins can call. More... | |
| std::vector< crossfire_plugin * > | plugins_list |
| List of loaded plugins. More... | |
Plugin API.
Definition in file plugins.cpp.
| #define NR_OF_HOOKS (sizeof(plug_hooks)/sizeof(*plug_hooks)) |
Number of hooked functions a plugin can call.
Definition at line 50 of file plugins.cpp.
Referenced by cfapi_get_hooks().
| #define string_get_int | ( | name | ) |
Definition at line 886 of file plugins.cpp.
Referenced by cfapi_get_month_name(), cfapi_get_periodofday_name(), cfapi_get_season_name(), and cfapi_get_weekday_name().
|
static |
Definition at line 4195 of file plugins.cpp.
References CFAPI_ARCH_PROP_CLONE, CFAPI_ARCH_PROP_HEAD, CFAPI_ARCH_PROP_MORE, CFAPI_ARCH_PROP_NAME, CFAPI_ARCH_PROP_NEXT, CFAPI_NONE, CFAPI_PARCH, CFAPI_POBJECT, CFAPI_SSTRING, archetype::clone, get_next_archetype(), archetype::head, archetype::more, and archetype::name.
|
static |
Wrapper for cost_string_from_value, modified to take a buffer and length instead of a StringBuffer.
| type | will be CFAPI_NONE. |
Definition at line 498 of file plugins.cpp.
References CFAPI_NONE, and cost_string_from_value().
|
static |
Friend list access, to get objects on it.
Expects one parameter, ob.
| type | unused |
Definition at line 4378 of file plugins.cpp.
References CFAPI_POBJECT, and get_next_friend().
|
static |
Wrapper for generate_random_map().
| type | unused. |
Definition at line 4424 of file plugins.cpp.
References generate_random_map().
|
static |
Definition at line 328 of file plugins.cpp.
References buf, CFAPI_FUNC, CFAPI_NONE, hook_entry::func, and NR_OF_HOOKS.
Referenced by plugins_init_plugin().
|
static |
Wrapper for get_season_name().
| type | will be CFAPI_STRING. Other parameters are int index and char** where to store result string |
Definition at line 929 of file plugins.cpp.
References get_month_name(), and string_get_int.
|
static |
Wrapper for get_season_name().
| type | will be CFAPI_STRING. Other parameters are int index and char** where to store result string |
Definition at line 941 of file plugins.cpp.
References get_periodofday(), and string_get_int.
|
static |
Wrapper for get_season_name().
| type | will be CFAPI_STRING. Other parameters are int index and char** where to store result string |
Definition at line 905 of file plugins.cpp.
References get_season_name(), and string_get_int.
|
static |
Wrapper for get_tod().
| type | will be CFAPI_NONE. |
Definition at line 874 of file plugins.cpp.
References CFAPI_NONE, and get_tod().
|
static |
Wrapper for get_season_name().
| type | will be CFAPI_STRING. Other parameters are int index and char** where to store result string |
Definition at line 917 of file plugins.cpp.
References get_weekday(), and string_get_int.
|
static |
Wrapper for LOG().
| type | will be CFAPI_NONE. |
Definition at line 1008 of file plugins.cpp.
References CFAPI_NONE, and LOG().
|
static |
Wrapper for change_map_light().
| type | will be CFAPI_INT. |
Definition at line 1426 of file plugins.cpp.
References CFAPI_INT, and change_map_light().
|
static |
Wrapper for create_pathname() and create_overlay_pathname().
| type | will be CFAPI_STRING. |
Definition at line 1101 of file plugins.cpp.
References CFAPI_NONE, CFAPI_STRING, create_overlay_pathname(), create_pathname(), and MAX_BUF.
|
static |
Definition at line 1335 of file plugins.cpp.
References CFAPI_NONE, and delete_map().
|
static |
Kinda wrapper for map_find_by_archetype() (but uses a string, not an archetype*).
| type | will be CFAPI_POBJECT. |
Definition at line 1399 of file plugins.cpp.
References CFAPI_POBJECT, map_find_by_archetype(), and try_find_archetype().
|
static |
Gets map information.
First parameter is a integer, which should be:
Definition at line 1032 of file plugins.cpp.
References CFAPI_NONE, CFAPI_PMAP, get_empty_map(), get_map_from_coord(), m, and ready_map_name().
|
static |
Definition at line 1135 of file plugins.cpp.
References calculate_difficulty(), CFAPI_INT, CFAPI_MAP_PROP_DARKNESS, CFAPI_MAP_PROP_DIFFICULTY, CFAPI_MAP_PROP_ENTER_X, CFAPI_MAP_PROP_ENTER_Y, CFAPI_MAP_PROP_FLAGS, CFAPI_MAP_PROP_HEIGHT, CFAPI_MAP_PROP_MESSAGE, CFAPI_MAP_PROP_NAME, CFAPI_MAP_PROP_NEXT, CFAPI_MAP_PROP_PATH, CFAPI_MAP_PROP_PLAYERS, CFAPI_MAP_PROP_REGION, CFAPI_MAP_PROP_RESET_TIME, CFAPI_MAP_PROP_RESET_TIMEOUT, CFAPI_MAP_PROP_TMPNAME, CFAPI_MAP_PROP_UNIQUE, CFAPI_MAP_PROP_WIDTH, CFAPI_NONE, CFAPI_PMAP, CFAPI_PREGION, CFAPI_SSTRING, mapstruct::darkness, mapstruct::enter_x, mapstruct::enter_y, first_map, get_map_flags(), get_region_by_map(), mapstruct::height, mapstruct::msg, mapstruct::name, mapstruct::next, mapstruct::path, mapstruct::players, mapstruct::reset_time, mapstruct::reset_timeout, mapstruct::tmpname, mapstruct::unique, and mapstruct::width.
|
static |
Wrapper for GET_MAP_OB().
| type | will be CFAPI_POBJECT. |
Definition at line 1370 of file plugins.cpp.
References CFAPI_POBJECT, get_map_flags(), GET_MAP_OB, and P_OUT_OF_MAP.
|
static |
Wrapper for has_been_loaded().
| type | will be CFAPI_PMAP. |
Definition at line 1083 of file plugins.cpp.
References CFAPI_PMAP, and has_been_loaded().
|
static |
Definition at line 1348 of file plugins.cpp.
References CFAPI_NONE, ext_info_map(), MSG_SUBTYPE_NONE, and MSG_TYPE_MISC.
|
static |
Wrapper for out_of_map().
| type | will be CFAPI_INT. |
Definition at line 1297 of file plugins.cpp.
References CFAPI_INT, and out_of_map().
|
static |
Definition at line 1267 of file plugins.cpp.
References buf, CFAPI_MAP_PROP_PATH, CFAPI_NONE, CFAPI_STRING, mapstruct::path, and strlcpy().
|
static |
Wrapper for trigger_connected().
Expected parameters after type:
| [out] | type | Will be CFAPI_NONE. |
Definition at line 3638 of file plugins.cpp.
References CFAPI_NONE, and trigger_connected().
|
static |
Wrapper for update_position().
| type | CFAPI_NONE. |
Definition at line 1319 of file plugins.cpp.
References CFAPI_NONE, and update_position().
|
static |
Applies an object.
| type | will be CFAPI_INT. |
Definition at line 3055 of file plugins.cpp.
References apply_manual(), and CFAPI_INT.
|
static |
Applies an object below.
| type | will be CFAPI_NONE. |
Definition at line 3035 of file plugins.cpp.
References apply_by_living_below(), and CFAPI_NONE.
|
static |
Wrapper for query_money().
| type | Will be CFAPI_INT. |
Definition at line 3677 of file plugins.cpp.
References cast_spell(), CFAPI_INT, and object::map.
|
static |
Wrapper for change_abil().
Definition at line 3965 of file plugins.cpp.
References CFAPI_INT, and change_abil().
|
static |
Wrapper for change_exp().
| type | will be CFAPI_NONE. |
Definition at line 4069 of file plugins.cpp.
References CFAPI_NONE, and change_exp().
|
static |
Wrapper for check_spell_known().
| type | Will be CFAPI_POBJECT. |
Definition at line 3740 of file plugins.cpp.
References CFAPI_POBJECT, and check_spell_known().
|
static |
Wrapper for check_trigger().
| type | Will be CFAPI_INT. |
Definition at line 3611 of file plugins.cpp.
References CFAPI_INT, and check_trigger().
|
static |
Definition at line 3565 of file plugins.cpp.
References CFAPI_NONE, and clean_object().
|
static |
Wrapper for object_clear().
| type | Will be CFAPI_NONE. |
Definition at line 3533 of file plugins.cpp.
References CFAPI_NONE, and object_clear().
|
static |
Clone an object, either through object_create_clone() or object_copy().
| type | will be CFAPI_POBJECT. |
Definition at line 3257 of file plugins.cpp.
References CFAPI_POBJECT, object_copy(), object_create_clone(), and object_new().
|
static |
Wrapper for object_new(), create_archetype() and create_archetype_by_object_name().
| type | will be CFAPI_POBJECT, or CFAPI_NONE if invalid value asked for. |
Definition at line 3289 of file plugins.cpp.
References CFAPI_NONE, CFAPI_POBJECT, find_archetype_by_object_name(), object_create_arch(), object_new(), and try_find_archetype().
|
static |
Definition at line 3230 of file plugins.cpp.
References CFAPI_NONE, FLAG_FREED, FLAG_REMOVED, llevError, LOG(), object::name, object_free_drop_inventory(), and QUERY_FLAG.
|
static |
Wrapper for describe_item().
| type | will be CFAPI_STRING. |
Definition at line 3100 of file plugins.cpp.
References CFAPI_STRING, describe_item(), and stringbuffer_finish().
|
static |
Wrapper for object_distance().
| type | will be CFAPI_INT. |
Definition at line 3492 of file plugins.cpp.
References CFAPI_INT, and object_distance().
|
static |
Definition at line 3122 of file plugins.cpp.
References CFAPI_NONE, and drain_specific_stat().
|
static |
Wrapper for drop().
| type | will be CFAPI_NONE. |
Definition at line 3941 of file plugins.cpp.
References CFAPI_NONE, object::contr, player::count, drop(), FLAG_NO_DROP, PLAYER, QUERY_FLAG, player::socket, object::type, and socket_struct::update_look.
|
static |
Kinda wrapper for arch__present_in_ob().
Definition at line 3869 of file plugins.cpp.
References arch_present_in_ob(), CFAPI_POBJECT, FOR_INV_FINISH, FOR_INV_PREPARE, MAX_BUF, query_name(), and try_find_archetype().
|
static |
Definition at line 3904 of file plugins.cpp.
References CFAPI_POBJECT, and object_find_by_arch_name().
|
static |
Definition at line 3920 of file plugins.cpp.
References CFAPI_POBJECT, and object_find_by_name().
|
static |
Definition at line 3159 of file plugins.cpp.
References CFAPI_NONE, and fix_object().
|
static |
Definition at line 3720 of file plugins.cpp.
References CFAPI_NONE, do_forget_spell(), MAX_BUF, and query_name().
|
static |
Gets a key/value value for an object.
| type | will contain CFAPI_SSTRING. |
Definition at line 1507 of file plugins.cpp.
References CFAPI_SSTRING, and object_get_value().
|
static |
Main object property getter.
Definition at line 1552 of file plugins.cpp.
References object::above, living::ac, object::active_next, object::active_prev, object::anim_speed, object::animation, object::arch, arch_present_in_ob(), object::attack_movement, object::attacked_by, object::attacktype, player::bed_x, player::bed_y, object::below, buf, object::carrying, CFAPI_DOUBLE, CFAPI_FLOAT, CFAPI_INT, CFAPI_INT16, CFAPI_LONG, CFAPI_MOVETYPE, CFAPI_NONE, CFAPI_OBJECT_PROP_AC, CFAPI_OBJECT_PROP_ANIM_SPEED, CFAPI_OBJECT_PROP_ANIMATION, CFAPI_OBJECT_PROP_ARCH_NAME, CFAPI_OBJECT_PROP_ARCHETYPE, CFAPI_OBJECT_PROP_ATTACK_MOVEMENT, CFAPI_OBJECT_PROP_ATTACK_TYPE, CFAPI_OBJECT_PROP_ATTACKED_BY, CFAPI_OBJECT_PROP_BASE_NAME, CFAPI_OBJECT_PROP_CARRYING, CFAPI_OBJECT_PROP_CHA, CFAPI_OBJECT_PROP_CHEATER, CFAPI_OBJECT_PROP_CHOSEN_SKILL, CFAPI_OBJECT_PROP_CLIENT_TYPE, CFAPI_OBJECT_PROP_CON, CFAPI_OBJECT_PROP_CONTAINER, CFAPI_OBJECT_PROP_COUNT, CFAPI_OBJECT_PROP_CURRENT_WEAPON, CFAPI_OBJECT_PROP_CUSTOM_NAME, CFAPI_OBJECT_PROP_DAM, CFAPI_OBJECT_PROP_DEX, CFAPI_OBJECT_PROP_DIRECTION, CFAPI_OBJECT_PROP_DURATION, CFAPI_OBJECT_PROP_ENEMY, CFAPI_OBJECT_PROP_ENVIRONMENT, CFAPI_OBJECT_PROP_EXP, CFAPI_OBJECT_PROP_EXP_MULTIPLIER, CFAPI_OBJECT_PROP_FACE, CFAPI_OBJECT_PROP_FACING, CFAPI_OBJECT_PROP_FLAGS, CFAPI_OBJECT_PROP_FP, CFAPI_OBJECT_PROP_FRIENDLY, CFAPI_OBJECT_PROP_GEN_SP_ARMOUR, CFAPI_OBJECT_PROP_GLOW_RADIUS, CFAPI_OBJECT_PROP_GOD, CFAPI_OBJECT_PROP_GP, CFAPI_OBJECT_PROP_HEAD, CFAPI_OBJECT_PROP_HIDDEN, CFAPI_OBJECT_PROP_HP, CFAPI_OBJECT_PROP_INT, CFAPI_OBJECT_PROP_INVENTORY, CFAPI_OBJECT_PROP_INVISIBLE, CFAPI_OBJECT_PROP_INVISIBLE_TIME, CFAPI_OBJECT_PROP_ITEM_POWER, CFAPI_OBJECT_PROP_LAST_EAT, CFAPI_OBJECT_PROP_LAST_GRACE, CFAPI_OBJECT_PROP_LAST_HEAL, CFAPI_OBJECT_PROP_LAST_SP, CFAPI_OBJECT_PROP_LEVEL, CFAPI_OBJECT_PROP_LORE, CFAPI_OBJECT_PROP_LUCK, CFAPI_OBJECT_PROP_MAGIC, CFAPI_OBJECT_PROP_MAGICAL, CFAPI_OBJECT_PROP_MAP, CFAPI_OBJECT_PROP_MATERIAL, CFAPI_OBJECT_PROP_MATERIAL_NAME, CFAPI_OBJECT_PROP_MAXGP, CFAPI_OBJECT_PROP_MAXHP, CFAPI_OBJECT_PROP_MAXSP, CFAPI_OBJECT_PROP_MERGEABLE, CFAPI_OBJECT_PROP_MESSAGE, CFAPI_OBJECT_PROP_MOVE_ALLOW, CFAPI_OBJECT_PROP_MOVE_BLOCK, CFAPI_OBJECT_PROP_MOVE_OFF, CFAPI_OBJECT_PROP_MOVE_ON, CFAPI_OBJECT_PROP_MOVE_SLOW, CFAPI_OBJECT_PROP_MOVE_SLOW_PENALTY, CFAPI_OBJECT_PROP_MOVE_STATUS, CFAPI_OBJECT_PROP_MOVE_TYPE, CFAPI_OBJECT_PROP_NAME, CFAPI_OBJECT_PROP_NAME_PLURAL, CFAPI_OBJECT_PROP_NEXT_ACTIVE_OB, CFAPI_OBJECT_PROP_NROF, CFAPI_OBJECT_PROP_OB_ABOVE, CFAPI_OBJECT_PROP_OB_BELOW, CFAPI_OBJECT_PROP_OTHER_ARCH, CFAPI_OBJECT_PROP_OWNER, CFAPI_OBJECT_PROP_PATH_ATTUNED, CFAPI_OBJECT_PROP_PATH_DENIED, CFAPI_OBJECT_PROP_PATH_REPELLED, CFAPI_OBJECT_PROP_PICK_UP, CFAPI_OBJECT_PROP_PICKABLE, CFAPI_OBJECT_PROP_POW, CFAPI_OBJECT_PROP_PRESENT, CFAPI_OBJECT_PROP_PREV_ACTIVE_OB, CFAPI_OBJECT_PROP_RACE, CFAPI_OBJECT_PROP_RAW_NAME, CFAPI_OBJECT_PROP_RESIST, CFAPI_OBJECT_PROP_RUN_AWAY, CFAPI_OBJECT_PROP_SHORT_NAME, CFAPI_OBJECT_PROP_SKILL, CFAPI_OBJECT_PROP_SLAYING, CFAPI_OBJECT_PROP_SP, CFAPI_OBJECT_PROP_SPEED, CFAPI_OBJECT_PROP_SPEED_LEFT, CFAPI_OBJECT_PROP_SPELL_ITEM, CFAPI_OBJECT_PROP_STR, CFAPI_OBJECT_PROP_SUBTYPE, CFAPI_OBJECT_PROP_TITLE, CFAPI_OBJECT_PROP_TOTAL_EXP, CFAPI_OBJECT_PROP_TYPE, CFAPI_OBJECT_PROP_VALUE, CFAPI_OBJECT_PROP_WC, CFAPI_OBJECT_PROP_WEIGHT, CFAPI_OBJECT_PROP_WEIGHT_LIMIT, CFAPI_OBJECT_PROP_WIS, CFAPI_OBJECT_PROP_X, CFAPI_OBJECT_PROP_Y, CFAPI_PARCH, CFAPI_PLAYER_PROP_BED_MAP, CFAPI_PLAYER_PROP_BED_X, CFAPI_PLAYER_PROP_BED_Y, CFAPI_PLAYER_PROP_COUNT, CFAPI_PLAYER_PROP_IP, CFAPI_PLAYER_PROP_MARKED_ITEM, CFAPI_PLAYER_PROP_NEXT, CFAPI_PLAYER_PROP_PARTY, CFAPI_PLAYER_PROP_TITLE, CFAPI_PLAYER_PROP_TRANSPORT, CFAPI_PMAP, CFAPI_POBJECT, CFAPI_PPARTY, CFAPI_SINT64, CFAPI_SSTRING, CFAPI_STRING, living::Cha, object::chosen_skill, object::client_type, living::Con, object::container, object::contr, player::count, object::count, object::current_weapon, CUSTOM_NAME_FIELD, living::dam, determine_god(), living::Dex, object::direction, object::duration, object::enemy, object::env, living::exp, object::expmul, object::face, object::facing, find_marked_object(), first_player, FLAG_WAS_WIZ, living::food, object::gen_sp_armour, object::glow_radius, living::grace, object::head, object::hide, socket_struct::host, living::hp, living::Int, object::inv, object::invisible, is_friendly(), is_magical(), object::item_power, object::last_eat, object::last_grace, object::last_heal, object::last_sp, object::level, object::lore, living::luck, object::magic, object::map, object::material, object::materialname, living::maxgrace, living::maxhp, living::maxsp, object::move_allow, object::move_block, object::move_off, object::move_on, object::move_slow_penalty, object::move_status, object::move_type, object::msg, Face::name, Animations::name, object::name, archetype::name, object::name_pl, player::next, NROF(), player::ob, object_can_merge(), object_can_pick(), object_get_owner(), object_get_value(), object_present_in_ob(), object_present_in_ob_by_name(), object::other_arch, player::party, object::path_attuned, object::path_denied, object::path_repelled, object::pick_up, player_get_title(), living::Pow, query_base_name(), QUERY_FLAG, query_name(), query_short_name(), object::race, object::resist, object::run_away, player::savebed_map, object::skill, object::slaying, player::socket, living::sp, object::speed, object::speed_left, object::spellitem, object::stats, living::Str, strlcpy(), object::subtype, object::title, object::total_exp, player::transport, object::type, object::value, living::wc, object::weight, object::weight_limit, living::Wis, object::x, and object::y.
|
static |
Definition at line 3175 of file plugins.cpp.
References CFAPI_POBJECT, and give_skill_by_name().
|
static |
Wrapper for identify().
| type | will be CFAPI_NONE. |
Definition at line 3080 of file plugins.cpp.
References CFAPI_POBJECT, and identify().
|
static |
Definition at line 3328 of file plugins.cpp.
References CFAPI_NONE, CFAPI_POBJECT, FLAG_FREED, FLAG_REMOVED, FREE_OBJ_NO_DESTROY_CALLBACK, freearr_x, freearr_y, llevError, LOG(), object::name, object_find_free_spot(), object_free(), object_free_drop_inventory(), object_insert_in_map_at(), object_insert_in_ob(), object_remove(), QUERY_FLAG, SIZEOFFREE, object::x, and object::y.
|
static |
Definition at line 3705 of file plugins.cpp.
References CFAPI_NONE, and do_learn_spell().
|
static |
Wrapper for object_merge().
| type | Will be CFAPI_POBJECT. |
Definition at line 3469 of file plugins.cpp.
References CFAPI_POBJECT, and object_merge().
|
static |
Moves an object.
Syntax is: cfapi_object_move(&type, kind) where kind is:
| type | will contain CFAPI_INT. |
Definition at line 1457 of file plugins.cpp.
References CFAPI_INT, move_ob(), move_player(), player::ob, and player_arrest().
|
static |
Definition at line 3576 of file plugins.cpp.
References CFAPI_INT, and on_same_map().
|
static |
Wrapper for pay_for_amount().
| type | will be CFAPI_INT. |
Definition at line 3760 of file plugins.cpp.
References CFAPI_INT, and pay_for_amount().
|
static |
Wrapper for pay_for_item().
| type | will be CFAPI_INT. |
Definition at line 3781 of file plugins.cpp.
References CFAPI_INT, and pay_for_item().
|
static |
Wrapper for permanent experience calculation.
This is because the settings struct is not visible inside the plugin.
| type | will be CFAPI_SINT64. |
Definition at line 4050 of file plugins.cpp.
References CFAPI_SINT64, PERM_EXP, and object::total_exp.
|
static |
Definition at line 4179 of file plugins.cpp.
|
static |
Wrapper for query_money().
| type | Will be CFAPI_INT. |
Definition at line 3658 of file plugins.cpp.
References CFAPI_INT, and query_money().
|
static |
Definition at line 3209 of file plugins.cpp.
References CFAPI_NONE, FLAG_REMOVED, llevError, LOG(), object::name, object_remove(), and QUERY_FLAG.
|
static |
Definition at line 3140 of file plugins.cpp.
References CFAPI_INT, level, and remove_depletion().
|
static |
Wrapper for clear_reset().
| type | Will be CFAPI_NONE. |
Definition at line 3551 of file plugins.cpp.
References CFAPI_NONE, and object_reset().
|
static |
Definition at line 3980 of file plugins.cpp.
References CFAPI_INT, command_say(), monster_npc_say(), PLAYER, and object::type.
|
static |
Write a key/value for an object.
| type | will contain CFAPI_SSTRING. |
Definition at line 1529 of file plugins.cpp.
References CFAPI_INT, and object_set_value().
|
static |
Sets the property of an object.
Will send changes to client if required. First argument should be an object*, second an integer.. Will not change an archetype's object.
| type | will contain the type of the first argument used to change the property. |
Definition at line 2381 of file plugins.cpp.
References living::ac, add_friendly_object(), object::anim_speed, object::animation, object::arch, object::attack_movement, object::attacktype, player::bed_x, player::bed_y, CFAPI_DOUBLE, CFAPI_FLOAT, CFAPI_INT, CFAPI_INT16, CFAPI_LONG, CFAPI_MOVETYPE, CFAPI_NONE, CFAPI_OBJECT_PROP_AC, CFAPI_OBJECT_PROP_ANIM_SPEED, CFAPI_OBJECT_PROP_ANIMATION, CFAPI_OBJECT_PROP_ATTACK_MOVEMENT, CFAPI_OBJECT_PROP_ATTACK_TYPE, CFAPI_OBJECT_PROP_CHA, CFAPI_OBJECT_PROP_CHEATER, CFAPI_OBJECT_PROP_CHOSEN_SKILL, CFAPI_OBJECT_PROP_CON, CFAPI_OBJECT_PROP_CUSTOM_NAME, CFAPI_OBJECT_PROP_DAM, CFAPI_OBJECT_PROP_DEX, CFAPI_OBJECT_PROP_DIRECTION, CFAPI_OBJECT_PROP_DURATION, CFAPI_OBJECT_PROP_ENEMY, CFAPI_OBJECT_PROP_EXP, CFAPI_OBJECT_PROP_EXP_MULTIPLIER, CFAPI_OBJECT_PROP_FACE, CFAPI_OBJECT_PROP_FACING, CFAPI_OBJECT_PROP_FLAGS, CFAPI_OBJECT_PROP_FP, CFAPI_OBJECT_PROP_FRIENDLY, CFAPI_OBJECT_PROP_GEN_SP_ARMOUR, CFAPI_OBJECT_PROP_GLOW_RADIUS, CFAPI_OBJECT_PROP_GP, CFAPI_OBJECT_PROP_HIDDEN, CFAPI_OBJECT_PROP_HP, CFAPI_OBJECT_PROP_INT, CFAPI_OBJECT_PROP_INVISIBLE_TIME, CFAPI_OBJECT_PROP_ITEM_POWER, CFAPI_OBJECT_PROP_LAST_EAT, CFAPI_OBJECT_PROP_LAST_GRACE, CFAPI_OBJECT_PROP_LAST_HEAL, CFAPI_OBJECT_PROP_LAST_SP, CFAPI_OBJECT_PROP_LEVEL, CFAPI_OBJECT_PROP_LORE, CFAPI_OBJECT_PROP_LUCK, CFAPI_OBJECT_PROP_MAGIC, CFAPI_OBJECT_PROP_MATERIAL, CFAPI_OBJECT_PROP_MATERIAL_NAME, CFAPI_OBJECT_PROP_MAXGP, CFAPI_OBJECT_PROP_MAXHP, CFAPI_OBJECT_PROP_MAXSP, CFAPI_OBJECT_PROP_MESSAGE, CFAPI_OBJECT_PROP_MOVE_ALLOW, CFAPI_OBJECT_PROP_MOVE_BLOCK, CFAPI_OBJECT_PROP_MOVE_OFF, CFAPI_OBJECT_PROP_MOVE_ON, CFAPI_OBJECT_PROP_MOVE_SLOW, CFAPI_OBJECT_PROP_MOVE_STATUS, CFAPI_OBJECT_PROP_MOVE_TYPE, CFAPI_OBJECT_PROP_NAME, CFAPI_OBJECT_PROP_NAME_PLURAL, CFAPI_OBJECT_PROP_NROF, CFAPI_OBJECT_PROP_OWNER, CFAPI_OBJECT_PROP_PATH_ATTUNED, CFAPI_OBJECT_PROP_PATH_DENIED, CFAPI_OBJECT_PROP_PATH_REPELLED, CFAPI_OBJECT_PROP_PICK_UP, CFAPI_OBJECT_PROP_POW, CFAPI_OBJECT_PROP_RACE, CFAPI_OBJECT_PROP_RESIST, CFAPI_OBJECT_PROP_RUN_AWAY, CFAPI_OBJECT_PROP_SKILL, CFAPI_OBJECT_PROP_SLAYING, CFAPI_OBJECT_PROP_SP, CFAPI_OBJECT_PROP_SPEED, CFAPI_OBJECT_PROP_SPEED_LEFT, CFAPI_OBJECT_PROP_SPELL_ITEM, CFAPI_OBJECT_PROP_STR, CFAPI_OBJECT_PROP_TITLE, CFAPI_OBJECT_PROP_TOTAL_EXP, CFAPI_OBJECT_PROP_VALUE, CFAPI_OBJECT_PROP_WC, CFAPI_OBJECT_PROP_WEIGHT, CFAPI_OBJECT_PROP_WEIGHT_LIMIT, CFAPI_OBJECT_PROP_WIS, CFAPI_PLAYER_PROP_BED_MAP, CFAPI_PLAYER_PROP_BED_X, CFAPI_PLAYER_PROP_BED_Y, CFAPI_PLAYER_PROP_MARKED_ITEM, CFAPI_PLAYER_PROP_PARTY, CFAPI_PLAYER_PROP_TITLE, CFAPI_POBJECT, CFAPI_PPARTY, CFAPI_SINT64, CFAPI_STRING, living::Cha, object::chosen_skill, CLEAR_FLAG, archetype::clone, living::Con, object::container, object::contr, copy_message(), object::count, CUSTOM_NAME_FIELD, living::dam, living::Dex, object::direction, object::duration, object::env, esrv_update_item(), living::exp, object::expmul, object::face, object::facing, first_player, fix_object(), living::food, FOR_ABOVE_FINISH, FOR_ABOVE_PREPARE, FREE_AND_COPY, object::gen_sp_armour, object::glow_radius, living::grace, object::hide, living::hp, living::Int, object::invisible, is_friendly(), object::item_power, object::last_eat, object::last_grace, object::last_heal, object::last_sp, object::level, object::lore, living::luck, object::magic, object::map, player::mark, player::mark_count, object::material, MAX_BUF, living::maxgrace, living::maxhp, living::maxsp, MOVE_ALL, object::move_allow, object::move_block, object::move_off, object::move_on, object::move_status, object::move_type, object::name, object::name_pl, player::next, object::nrof, Animations::num, Face::number, player::ob, object_decrease_nrof(), object_get_env_recursive(), object_get_player_container(), object_set_cheat(), object_set_enemy(), object_set_owner(), object_set_value(), object_sum_weight(), object_update(), object_update_speed(), P_NEED_UPDATE, party_join(), object::path_attuned, object::path_denied, object::path_repelled, object::pick_up, PLAYER, player_set_own_title(), living::Pow, object::race, remove_friendly_object(), object::resist, object::run_away, safe_strncpy, player::savebed_map, send_changed_object(), SET_ANIMATION, SET_FLAG, SET_MAP_FLAGS, object::skill, object::slaying, player::socket, living::sp, object::speed, object::speed_left, object::spellitem, object::state, object::stats, living::Str, object::title, object::total_exp, try_find_animation(), try_find_face(), object::type, UP_OBJ_FACE, UP_OBJ_INSERT, UPD_NROF, UPD_WEIGHT, update_all_los(), socket_struct::update_look, update_position(), object::value, living::wc, object::weight, object::weight_limit, living::Wis, object::x, and object::y.
|
static |
Wrapper for object_split().
| type | will be CFAPI_POBJECT, or CFAPI_NONE if split failed. |
Definition at line 3436 of file plugins.cpp.
References buf, CFAPI_NONE, CFAPI_POBJECT, object_split(), and split().
|
static |
Definition at line 3592 of file plugins.cpp.
References CFAPI_NONE, and spring_trap().
|
static |
Teleports an object at a specified destination if possible.
| type | Will be CFAPI_INT. |
Definition at line 4160 of file plugins.cpp.
References CFAPI_INT, and object_teleport().
|
static |
Object transfer.
Parameters are object*, int meaning: 0: call to transfer_ob() 1: call to object_insert_in_map_at() 2: call to move_to()
Definition at line 3805 of file plugins.cpp.
References CFAPI_INT, CFAPI_NONE, CFAPI_POBJECT, mapstruct::enter_x, mapstruct::enter_y, move_to(), object_insert_in_map_at(), and transfer_ob().
|
static |
Definition at line 3192 of file plugins.cpp.
References CFAPI_NONE, and transmute_materialname().
|
static |
Wrapper for object_update().
| type | Will be CFAPI_NONE. |
Definition at line 3513 of file plugins.cpp.
References CFAPI_NONE, and object_update().
|
static |
Definition at line 4443 of file plugins.cpp.
References CFAPI_INT, and events_execute_object_user().
|
static |
Party-related functions.
| type | data type returned. |
Definition at line 4250 of file plugins.cpp.
References CFAPI_NONE, CFAPI_PARTY_PROP_NAME, CFAPI_PARTY_PROP_NEXT, CFAPI_PARTY_PROP_PASSWORD, CFAPI_PARTY_PROP_PLAYER, CFAPI_PPARTY, CFAPI_PPLAYER, CFAPI_SSTRING, object::contr, first_player, player::next, party_get_first(), party_get_next(), party_get_password(), and partylist::partyname.
|
static |
Wrapper for can_pay().
| type | will be CFAPI_INT. |
Definition at line 4092 of file plugins.cpp.
|
static |
Wrapper for find_player_partial_name().
| type | will be CFAPI_PPLAYER. |
Definition at line 4009 of file plugins.cpp.
References CFAPI_PPLAYER, and find_player_partial_name().
|
static |
Wrapper for knowledge-related functions().
| type | Depends on the type. |
Definition at line 4111 of file plugins.cpp.
References CFAPI_INT, CFAPI_NONE, object::contr, knowledge_give(), knowledge_player_knows(), llevError, LOG(), and object::name.
|
static |
Definition at line 4024 of file plugins.cpp.
References buf, CFAPI_NONE, draw_ext_info(), flags, MSG_SUBTYPE_NONE, MSG_TYPE_MISC, and NDI_DELAYED.
|
static |
Quest-related wrappers, for all quest-related operations.
Definition at line 4467 of file plugins.cpp.
References CFAPI_INT, CFAPI_NONE, CFAPI_PLAYER_QUEST_GET_STATE, CFAPI_PLAYER_QUEST_SET_STATE, CFAPI_PLAYER_QUEST_START, CFAPI_PLAYER_QUEST_WAS_COMPLETED, object::contr, llevError, LOG(), object::name, quest_get_player_state(), quest_set_player_state(), quest_start(), and quest_was_completed().
|
static |
Regions-related functions.
| type | data type returned. |
Return values.
Definition at line 4305 of file plugins.cpp.
References CFAPI_INT, CFAPI_NONE, CFAPI_PREGION, CFAPI_REGION_PROP_JAIL_PATH, CFAPI_REGION_PROP_JAIL_X, CFAPI_REGION_PROP_JAIL_Y, CFAPI_REGION_PROP_LONGNAME, CFAPI_REGION_PROP_MESSAGE, CFAPI_REGION_PROP_NAME, CFAPI_REGION_PROP_NEXT, CFAPI_REGION_PROP_PARENT, CFAPI_SSTRING, region::jailmap, region::jailx, region::jaily, region::longname, region::msg, region::name, and region::parent.
|
static |
Definition at line 4518 of file plugins.cpp.
References CFAPI_SINT64, command_register(), command_register_extra(), COMMAND_TYPE_NORMAL, and COMMAND_TYPE_WIZARD.
|
static |
Wrapper for set_random_map_variable().
| type | will be CFAPI_INT. |
Definition at line 4402 of file plugins.cpp.
References buf, CFAPI_INT, and set_random_map_variable().
|
static |
Wrapper for add_string().
| type | will be CFAPI_SSTRING. |
Definition at line 723 of file plugins.cpp.
References add_string(), and CFAPI_SSTRING.
|
static |
Wrapper for check_path().
| type | will be CFAPI_INT. |
Definition at line 780 of file plugins.cpp.
References CFAPI_INT, and check_path().
|
static |
Definition at line 821 of file plugins.cpp.
References CFAPI_STRING, Settings::confdir, Settings::datadir, Settings::localdir, Settings::mapdir, Settings::playerdir, settings, Settings::tmpdir, and Settings::uniquedir.
|
static |
Wrapper for find_animation().
| type | will be CFAPI_INT. |
Definition at line 528 of file plugins.cpp.
References CFAPI_INT, Animations::num, and try_find_animation().
|
static |
Wrapper for find_face().
| type | will be CFAPI_INT. |
Definition at line 549 of file plugins.cpp.
References CFAPI_INT, get_face_by_id(), Face::number, and try_find_face().
|
static |
Wrapper for find_string().
| type | will be CFAPI_SSTRING. |
Definition at line 761 of file plugins.cpp.
References CFAPI_SSTRING, and find_string().
|
static |
Definition at line 671 of file plugins.cpp.
References AssetsManager::archetypes(), CFAPI_ARCHETYPE_VECTOR, CFAPI_SYSTEM_ARCHETYPES, AssetsCollection< T, Key >::each(), and getManager().
|
static |
Definition at line 655 of file plugins.cpp.
References CFAPI_MAP_VECTOR, CFAPI_SYSTEM_MAPS, first_map, and mapstruct::next.
|
static |
Definition at line 627 of file plugins.cpp.
References CFAPI_OBJECT_VECTOR, CFAPI_SYSTEM_FRIENDLY_LIST, CFAPI_SYSTEM_PLAYERS, first_player, get_next_friend(), and player::next.
|
static |
Definition at line 699 of file plugins.cpp.
References CFAPI_PARTY_VECTOR, CFAPI_SYSTEM_PARTIES, party_get_first(), and party_get_next().
|
static |
Definition at line 685 of file plugins.cpp.
References all_regions, CFAPI_REGION_VECTOR, and CFAPI_SYSTEM_REGIONS.
|
static |
Wrapper for re_cmp().
| type | will be CFAPI_STRING. |
Definition at line 803 of file plugins.cpp.
References CFAPI_STRING, and re_cmp().
|
static |
Definition at line 586 of file plugins.cpp.
References CFAPI_NONE, events_register_global_handler(), crossfire_plugin::global_registration, and plugins_find_plugin().
|
static |
Wrapper for free_string().
| type | will be CFAPI_NONE. |
Definition at line 743 of file plugins.cpp.
References CFAPI_NONE, and free_string().
|
static |
Wrapper for strdup_local().
| type | will be CFAPI_STRING. |
Definition at line 572 of file plugins.cpp.
References CFAPI_STRING, and strdup_local.
|
static |
Definition at line 607 of file plugins.cpp.
References CFAPI_NONE, events_unregister_global_handler(), crossfire_plugin::global_registration, and plugins_find_plugin().
|
static |
Wrapper for cfapi_timer_create().
| type | unused |
Additional parameters:
Definition at line 956 of file plugins.cpp.
References CFAPI_INT, cftimer_create(), cftimer_find_free_id(), TIMER_ERR_ID, and TIMER_ERR_NONE.
|
static |
Wrapper for cftimer_destroy().
| type | will be CFAPI_INT. |
Additional parameters:
Definition at line 989 of file plugins.cpp.
References CFAPI_INT, and cftimer_destroy().
|
static |
Definition at line 4553 of file plugins.cpp.
References command_unregister().
| void cleanupPlugins | ( | void | ) |
Call the crossfire_plugin::closefunc on the various plugins, used at server shutdown.
Will not unload plugins. Free all items of plugins_list.
Definition at line 4621 of file plugins.cpp.
References plugins_list.
Referenced by cleanup().
|
static |
Utility function to copy the string to op->msg.
| op | object to copy to. |
| msg | message to copy. |
Definition at line 2364 of file plugins.cpp.
References free_dialog_information(), and object_set_msg().
Referenced by cfapi_object_set_property().
| void initPlugins | ( | void | ) |
Plugins initialization.
Browses the plugins directory and call plugins_init_plugin() for each file found.
Definition at line 4573 of file plugins.cpp.
References buf, closedir(), dirent, ServerSettings::disabled_plugins, llevDebug, llevInfo, LOG(), opendir(), plugins_init_plugin(), readdir(), and serverSettings.
Referenced by server_main().
| void plugins_display_list | ( | object * | op | ) |
Displays a list of loaded plugins (keystrings and description) in the game log window.
| op | who to display the list to. |
Definition at line 480 of file plugins.cpp.
References draw_ext_info(), draw_ext_info_format(), MSG_TYPE_COMMAND, MSG_TYPE_COMMAND_DEBUG, NDI_UNIQUE, and plugins_list.
Referenced by command_listplugins().
|
static |
Find a plugin from its internal name.
| id | internal plugin name. |
Definition at line 269 of file plugins.cpp.
References buf, plugins_dlerror, and plugins_list.
Referenced by cfapi_system_register_global_event(), and cfapi_system_unregister_global_event().
| int plugins_init_plugin | ( | const char * | libfile | ) |
Try to load the specified plugin.
Update plugins_list if successful. Log errors at llevError.
| libfile | full path to the plugin. |
Definition at line 374 of file plugins.cpp.
References cfapi_get_hooks(), crossfire_plugin::closefunc, events_register_object_handler(), crossfire_plugin::fullname, crossfire_plugin::global_registration, crossfire_plugin::id, Settings::ignore_plugin_compatibility, crossfire_plugin::libptr, LIBPTRTYPE, llevError, LOG(), NR_EVENTS, plugins_dlclose, plugins_dlerror, plugins_dlopen, plugins_dlsym, plugins_list, crossfire_plugin::propfunc, and settings.
Referenced by command_loadplugin(), and initPlugins().
| int plugins_remove_plugin | ( | const char * | id | ) |
Unload the specified plugin.
No logging is done in case of error. Updates plugins_list.
| id | plugin internal identifier. |
Definition at line 455 of file plugins.cpp.
References crossfire_plugin::closefunc, events_unregister_global_handler(), events_unregister_object_handler(), crossfire_plugin::global_registration, crossfire_plugin::id, crossfire_plugin::libptr, NR_EVENTS, plugins_dlclose, and plugins_list.
Referenced by command_unloadplugin().
|
static |
Notify clients about a changed object.
| op | the object that has changed |
Definition at line 302 of file plugins.cpp.
References object::container, object::contr, object::env, esrv_update_item(), first_player, FOR_ABOVE_FINISH, FOR_ABOVE_PREPARE, player::next, player::ob, object_get_player_container(), PLAYER, player::socket, object::type, UPD_ALL, and socket_struct::update_look.
Referenced by cfapi_object_set_property().
|
static |
All hooked functions plugins can call.
Definition at line 155 of file plugins.cpp.
| std::vector<crossfire_plugin *> plugins_list |
List of loaded plugins.
Definition at line 258 of file plugins.cpp.
Referenced by cleanupPlugins(), plugins_display_list(), plugins_find_plugin(), plugins_init_plugin(), and plugins_remove_plugin().