/*------------------------------------------------------------------------\
| protos.h : Function Prototypes www.yourmud.org |
| Copyright (C) 2006, Project Argila: Auroness |
| |
| All rights reserved. See Licensing documents included. |
| |
| Based upon Shadows of Isildur RPI Engine |
| Copyright C. W. McHenry [Traithe], 2004 |
| Derived under license from DIKU GAMMA (0.0). |
\------------------------------------------------------------------------*/
#include <stdlib.h>
#include <sys/time.h>
#include <time.h>
#include <mysql/mysql.h>
#include <stdarg.h>
#include "lua/lua.h"
#include "lua/lualib.h"
#include "lua/lauxlib.h"
typedef void * malloc_t;
/* EXTERNAL DECLARATIONS */
lua_State *luaVM;
extern ACCOUNT_DATA *account_list;
extern AFFECTED_TYPE *world_affects;
extern BOARD_DATA *full_board_list;
extern bool fCopyOver;
extern bool maintenance_lock;
extern bool Memory_check;
extern bool pending_reboot;
extern bool disable_timer_abort;
extern char *accent[];
extern char *action_bits[];
extern char *affected_bits[];
extern char *apply_types[];
extern char *armor_types [];
extern char *attack_names [];
extern char *attack_names_plural [];
extern char *attack_part [];
extern char *attrs [];
extern char *break_def [];
extern char *color_liquid [];
extern char *connected_types[];
extern char *crithit [];
extern char *crithits [];
extern char *cs_name [];
extern char *deity_name[];
extern char *dirs [];
extern char *drab_object_colors[];
extern char *drinks [];
extern char *econ_flags [];
extern char *emergency_data;
extern char *exit_bits [];
extern char *extra_bits[];
extern char *fancy_dirs [];
extern char *fine_object_colors[];
extern char *fog_states [];
extern char *forms[];
extern char *frames [];
extern char *fullness [];
extern char *holiday_names [];
extern char *holiday_short_names [];
extern char *idol_name[];
extern char *item_default_flags [];
extern char *item_types [];
extern char *locations [];
extern char *magnitudes[];
extern char *max_online_date;
extern char *mobprog_triggers [];
extern char *month_name [];
extern char *month_short_name [];
extern char *mount_speeds [];
extern char *mount_speeds_ing [];
extern char *mud_time_str;
extern char *old_skills [];
extern char *phase_flags [];
extern char *position_types[];
extern char *professions[];
extern char *race_help[];
extern char *relative_dirs [];
extern char *rfuncs[];
extern char *role_info[];
extern char *role_lines[];
extern char *room_bits[];
extern char *rs_name [];
extern char *save_knor_cast_msgs [];
extern char *season_string [];
extern char *seasons[];
extern char *sector_types[];
extern char *sex_types[];
extern char *sizes [];
extern char *sizes_named [];
extern char *speeds [];
extern char *standard_object_colors[];
extern char *state_name[];
extern char *subcraft_flags [];
extern char *targets [];
extern char *techniques[];
extern char *variable_races[];
extern char *verbal_time [];
extern char *verbose_dirs [];
extern char *weapon_theme [];
extern char *wear_bits[];
extern char *weather_clouds [];
extern char *weather_room [];
extern char *weather_states [];
extern char *where[];
extern char *wind_speeds [];
extern char *wound_locations[];
extern char *wtype [];
extern char *wtype2 [];
extern char b_buf[];
extern char BOOT[];
extern char full_last_command[];
extern char last_command[];
extern char s_buf[];
extern CHAR_DATA *character_list;
extern CHAR_DATA *free_char_list;
extern CHAR_DATA *full_mobile_list;
extern CHAR_DATA *loaded_list;
extern CHAR_DATA *mob_tab [ZONE_SIZE];
extern CHAR_DATA *combat_list;
extern CLAN_DATA *clan_list;
extern COMBAT_MSG_DATA *cm_list;
extern COMMON_DATA *common_list;
extern DESCRIPTOR_DATA *last_descriptor;
extern float move_speeds [];
extern HELP_DATA *bhelp_list;
extern HELP_DATA *help_list;
extern int advance_hour_now;
extern int booting;
extern int check_characters;
extern int check_objects;
extern int control;
extern int count_guest_online;
extern int count_max_online;
extern int desc_weather[];
extern int dodge_defense [4] [4];
extern int dodge_offense [4] [4];
extern int earth_grid[];
extern int finished_booting;
extern int fire_grid[];
extern int forkedpid;
extern int guest_conns;
extern int hash_dup_length;
extern int hash_dup_strings;
extern int humans;
extern int ignore_offense [4];
extern int knockout;
extern int loud_log;
extern int MAX_MEMORY;
extern int MAX_OVERHEAD;
extern int MAX_ZONE;
extern int maxdesc;
extern int mem_allocated;
extern int mob_start_stat;
extern int moon_light;
extern int movement_loss [];
extern int mp_dirty;
extern int new_accounts;
extern int next_mob_coldload_id;
extern int next_obj_coldload_id;
extern int next_pc_coldload_id;
extern int num_save_knor_cast_msgs;
extern int num_texts;
extern int number_of_shops;
extern int orcs;
extern int PERM_MEMORY_SIZE;
extern int port;
extern int pulse_violence;
extern int reboot_mud;
extern int rev_dir [];
extern int role_costs[];
extern int run_mult;
extern int season_time;
extern int seasonal_temp[7][12];
extern int second_affect_active;
extern int shadow_grid[];
extern int shield_parry_defense [4] [4];
extern int shield_parry_offense [4] [4];
extern int shutd;
extern int sun_light;
extern int sunrise[];
extern int sunset[];
extern int tics;
extern int times_do_hour_called;
extern int water_grid[];
extern int weapon_armor_table [6] [6];
extern int weapon_nat_attack_table [4] [6];
extern int wind_grid[];
extern int x1;
extern long mud_time;
extern long starttime;
extern MOBPROG_DATA *full_prog_list;
extern MYSQL *database;
extern MYSQL mysql;
extern NAME_SWITCH_DATA *clan_name_switch_list;
extern NEWBIE_HINT *hint_list;
extern OBJ_DATA *free_obj_list;
extern OBJ_DATA *full_object_list;
extern OBJ_DATA *obj_tab [ZONE_SIZE];
extern OBJ_DATA *object_list;
extern QE_DATA *quarter_event_list;
extern RANDOM_CH_DATA *random_char_list;
extern RECIPE_DATA *recipe_list;
extern REGISTRY_DATA *registry [];
extern ROLE_DATA *role_list;
extern ROOM_DATA *full_room_list;
extern ROOM_DATA *wld_tab [ZONE_SIZE];
extern SECOND_AFFECT *second_affect_list;
extern SITE_INFO *banned_site;
extern struct body_info body_tab [NUM_BODIES] [MAX_HITLOC];
extern struct command_data commands [];
extern struct db_race_data db_race_table [];
extern struct descriptor_data *descriptor_list;
extern struct econ_data default_econ_info [];
extern struct encumberance_info enc_tab [];
extern struct fatigue_data fatigue [];
extern struct fight_data fight_tab [];
extern struct language_data language_tab [];
extern struct message_list fight_messages [MAX_MESSAGES];
extern struct msg_data *msg_list;
extern struct religion_data religion_trees [];
extern struct room_direction_data *dir_options[];
extern struct skill_data_list skill_data[];
extern struct str_app_type str_app [];
extern struct time_info_data time_info;
extern struct use_table_data use_table [];
extern struct weather_data weather_info [];
extern struct zone_data *zone_table;
extern SUBCRAFT_HEAD_DATA *crafts;
extern TEXT_DATA *document_list;
extern TEXT_DATA *text_list;
extern time_t next_hour_update;
extern time_t next_minute_update;
extern VAR_DATA *global_vars;
int s;
void init_descriptor (struct descriptor_data *newd, int desc);
void prepare_copyover (CHAR_DATA *ch, int cmd);
void check_reboot (void);
/* COMMAND PROTOTYPES */
void do_accept (CHAR_DATA *ch, char *argument, int cmd);
void do_accuse (CHAR_DATA *ch, char *argument, int cmd);
void do_addcraft (CHAR_DATA *ch, char *argument, int cmd);
void do_affect (CHAR_DATA *ch, char *argument, int cmd);
void do_aim (CHAR_DATA *ch, char *argument, int cmd);
void do_alert (CHAR_DATA *ch, char *argument, int cmd);
void do_alias (CHAR_DATA *ch, char *argument, int cmd);
void do_alog (CHAR_DATA *ch, char *argument, int cmd);
void do_apply (CHAR_DATA *ch, char *argument, int cmd);
void do_as (CHAR_DATA *ch, char *argument, int cmd);
void do_ask (CHAR_DATA *ch, char *argument, int cmd);
void do_assign (CHAR_DATA *ch, char *argument, int cmd);
void do_at (CHAR_DATA *ch, char *argument, int cmd);
void do_attack (CHAR_DATA *ch, char *argument, int cmd);
void do_awaken (CHAR_DATA *ch, char *argument, int cmd);
void do_award (CHAR_DATA *ch, char *argument, int cmd);
void do_ban (CHAR_DATA *ch, char *argument, int cmd);
void do_barter (CHAR_DATA *ch, char *argument, int cmd);
void do_behead (CHAR_DATA *ch, char *argument, int cmd);
void do_bind (CHAR_DATA *ch, char *argument, int cmd);
void do_blindfold (CHAR_DATA *ch, char *argument, int cmd);
void do_blog (CHAR_DATA *ch, char *argument, int cmd);
void do_bolt (CHAR_DATA *ch, char *argument, int cmd);
void do_bridle (CHAR_DATA *ch, char *argument, int cmd);
void do_broadcast (CHAR_DATA *ch, char *argument, int cmd);
void do_buck (CHAR_DATA *ch, char *argument, int cmd);
void do_bug (CHAR_DATA *ch, char *argument, int cmd);
void do_buy (CHAR_DATA *ch, char *argument, int cmd);
void do_camp (CHAR_DATA *ch, char *argument, int cmd);
void do_castout (CHAR_DATA *ch, char *argument, int cmd);
void do_choke (CHAR_DATA *ch, char *argument, int cmd);
void do_clockout (CHAR_DATA *ch, char *argument, int cmd);
void do_clockin (CHAR_DATA *ch, char *argument, int cmd);
void do_clog (CHAR_DATA *ch, char *argument, int cmd);
void do_close (CHAR_DATA *ch, char *argument, int cmd);
void do_clan (CHAR_DATA *ch, char *argument, int cmd);
void do_combine (CHAR_DATA *ch, char *argument, int cmd);
void do_commands (CHAR_DATA *ch, char *argument, int cmd);
void do_commence (CHAR_DATA *ch, char *argument, int cmd);
void do_compact (CHAR_DATA *ch, char *argument, int cmd);
void do_compare (CHAR_DATA *ch, char *argument, int cmd);
void do_compete (CHAR_DATA *ch, char *argument, int cmd);
void do_contents (CHAR_DATA *ch, char *argument, int cmd);
void do_convert (CHAR_DATA *ch, char *argument, int cmd);
void do_count (CHAR_DATA *ch, char *argument, int cmd);
void do_crafts (CHAR_DATA *ch, char *argument, int cmd);
void do_credits (CHAR_DATA *ch, char *argument, int cmd);
void do_cset (CHAR_DATA *ch, char *argument, int cmd);
void do_day (CHAR_DATA *ch, char *argument, int cmd);
void do_debug (CHAR_DATA *ch, char *argument, int cmd);
void do_decline (CHAR_DATA *ch, char *argument, int cmd);
void do_deduct (CHAR_DATA *ch, char *argument, int cmd);
void do_diagnose (CHAR_DATA *ch, char *argument, int cmd);
void do_dip (CHAR_DATA *ch, char *argument, int cmd);
void do_disband (CHAR_DATA *ch, char *argument, int cmd);
void do_dismantle (CHAR_DATA *ch, char *argument, int cmd);
void do_dismount (CHAR_DATA *ch, char *argument, int cmd);
void do_down (CHAR_DATA *ch, char *argument, int cmd);
void do_drag (CHAR_DATA *ch, char *argument, int cmd);
void do_draw (CHAR_DATA *ch, char *argument, int cmd);
void do_dreams (CHAR_DATA *ch, char *argument, int cmd);
void do_drink (CHAR_DATA *ch, char *argument, int cmd);
void do_drop (CHAR_DATA *ch, char *argument, int cmd);
void do_east (CHAR_DATA *ch, char *argument, int cmd);
void do_eat (CHAR_DATA *ch, char *argument, int cmd);
void do_echo (CHAR_DATA *ch, char *argument, int cmd);
void do_edit (CHAR_DATA *ch, char *argument, int cmd);
void do_email (CHAR_DATA *ch, char *argument, int cmd);
void do_emote (CHAR_DATA *ch, char *argument, int cmd);
void do_empty (CHAR_DATA *ch, char *argument, int cmd);
void do_enter (CHAR_DATA *ch, char *argument, int cmd);
void do_equipment (CHAR_DATA *ch, char *argument, int cmd);
void do_erase (CHAR_DATA *ch, char *argument, int cmd);
void do_escape (CHAR_DATA *ch, char *argument, int cmd);
void do_evaluate (CHAR_DATA *ch, char *argument, int cmd);
void do_examine (CHAR_DATA *ch, char *argument, int cmd);
void do_exit (CHAR_DATA *ch, char *argument, int cmd);
void do_exits (CHAR_DATA *ch, char *argument, int cmd);
void do_fill (CHAR_DATA *ch, char *argument, int cmd);
void do_find (CHAR_DATA *ch, char *argument, int cmd);
void do_fire (CHAR_DATA *ch, char *argument, int cmd);
void do_fivenet (CHAR_DATA *ch, char *argument, int cmd);
void do_flee (CHAR_DATA *ch, char *argument, int cmd);
void do_flip (CHAR_DATA *ch, char *argument, int cmd);
void do_follow (CHAR_DATA *ch, char *argument, int cmd);
void do_forage (CHAR_DATA *ch, char *argument, int cmd);
void do_force (CHAR_DATA *ch, char *argument, int cmd);
void do_freeze (CHAR_DATA *ch, char *argument, int cmd);
void do_gather (CHAR_DATA *ch, char *argument, int cmd);
void do_gecho (CHAR_DATA *ch, char *argument, int cmd);
void do_get (CHAR_DATA *ch, char *argument, int cmd);
void do_give (CHAR_DATA *ch, char *argument, int cmd);
void do_givedream (CHAR_DATA *ch, char *argument, int cmd);
void do_goto (CHAR_DATA *ch, char *argument, int cmd);
void do_grip (CHAR_DATA *ch, char *argument, int cmd);
void do_group (CHAR_DATA *ch, char *argument, int cmd);
void do_gstat (CHAR_DATA *ch, char *argument, int cmd);
void do_guard (CHAR_DATA *ch, char *argument, int cmd);
void do_guide (CHAR_DATA *ch, char *argument, int cmd);
void do_heal (CHAR_DATA *ch, char *argument, int cmd);
void do_health (CHAR_DATA *ch, char *argument, int cmd);
void do_hedit (CHAR_DATA *ch, char *argument, int cmd);
void do_help (CHAR_DATA *ch, char *argument, int cmd);
void do_hex (CHAR_DATA *ch, char *argument, int cmd);
void do_hide (CHAR_DATA *ch, char *argument, int cmd);
void do_history (CHAR_DATA *ch, char *argument, int cmd);
void do_hit (CHAR_DATA *ch, char *argument, int cmd);
void do_hitch (CHAR_DATA *ch, char *argument, int cmd);
void do_hood (CHAR_DATA *ch, char *argument, int cmd);
void do_hour (CHAR_DATA *ch, char *argument, int cmd);
void do_ichat (CHAR_DATA *ch, char *argument, int cmd);
void do_idea (CHAR_DATA *ch, char *argument, int cmd);
void do_identify (CHAR_DATA *ch, char *argument, int cmd);
void do_immcommands (CHAR_DATA *ch, char *argument, int cmd);
void do_immtell (CHAR_DATA *ch, char *argument, int cmd);
void do_info (CHAR_DATA *ch, char *argument, int cmd);
void do_initiate (CHAR_DATA *ch, char *argument, int cmd);
void do_instruct (CHAR_DATA *ch, char *argument, int cmd);
void do_inventory (CHAR_DATA *ch, char *argument, int cmd);
void do_invis (CHAR_DATA *ch, char *argument, int cmd);
void do_invite (CHAR_DATA *ch, char *argument, int cmd);
void do_invoke (CHAR_DATA *ch, char *argument, int cmd);
void do_job (CHAR_DATA *ch, char *argument, int cmd);
void do_jerase (CHAR_DATA *ch, char *argument, int cmd);
void do_journal (CHAR_DATA *ch, char *argument, int cmd);
void do_jwrite (CHAR_DATA *ch, char *argument, int cmd);
void do_jread (CHAR_DATA *ch, char *argument, int cmd);
void do_junk (CHAR_DATA *ch, char *argument, int cmd);
void do_nokill (CHAR_DATA *ch, char *argument, int cmd);
void do_kill (CHAR_DATA *ch, char *argument, int cmd);
void do_knock (CHAR_DATA *ch, char *argument, int cmd);
void do_last (CHAR_DATA *ch, char *argument, int cmd);
void do_leave (CHAR_DATA *ch, char *argument, int cmd);
void do_light (CHAR_DATA *ch, char *argument, int cmd);
void do_list (CHAR_DATA *ch, char *argument, int cmd);
void do_load (CHAR_DATA *ch, char *argument, int cmd);
void do_locate (CHAR_DATA *ch, char *argument, int cmd);
void do_lock (CHAR_DATA *ch, char *argument, int cmd);
void do_log (CHAR_DATA *ch, char *argument, int cmd);
void do_look (CHAR_DATA *ch, char *argument, int cmd);
void do_map (CHAR_DATA *ch, char *argument, int cmd);
void do_materials (CHAR_DATA *ch, char *argument, int cmd);
void do_mbhelp (CHAR_DATA *ch, char *argument, int cmd);
void do_mclone (CHAR_DATA *ch, char *argument, int cmd);
void do_mcopy (CHAR_DATA *ch, char *argument, int cmd);
void do_minit (CHAR_DATA *ch, char *argument, int cmd);
void do_mobile (CHAR_DATA *ch, char *argument, int cmd);
void do_mount (CHAR_DATA *ch, char *argument, int cmd);
void do_move (CHAR_DATA *ch, char *argument, int cmd);
void do_mset (CHAR_DATA *ch, char *argument, int cmd);
void do_munused (CHAR_DATA *ch, char *argument, int cmd);
void do_mute (CHAR_DATA *ch, char *argument, int cmd);
void do_mysql (CHAR_DATA *ch, char *argument, int cmd);
void do_news (CHAR_DATA *ch, char *argument, int cmd);
void do_nod (CHAR_DATA *ch, char *argument, int cmd);
void do_north (CHAR_DATA *ch, char *argument, int cmd);
void do_notes (CHAR_DATA *ch, char *argument, int cmd);
void do_notify (CHAR_DATA *ch, char *argument, int cmd);
void do_nuke (CHAR_DATA *ch, char *argument, int cmd);
void do_object (CHAR_DATA *ch, char *argument, int cmd);
void do_offer (CHAR_DATA *ch, char *argument, int cmd);
void do_oinit (CHAR_DATA *ch, char *argument, int cmd);
void do_olist (CHAR_DATA *ch, char *argument, int cmd);
void do_omote (CHAR_DATA *ch, char *argument, int cmd);
void do_ooc (CHAR_DATA *ch, char *argument, int cmd);
void do_open (CHAR_DATA *ch, char *argument, int cmd);
void do_openskill (CHAR_DATA *ch, char *argument, int cmd);
void do_order (CHAR_DATA *ch, char *argument, int cmd);
void do_oset (CHAR_DATA *ch, char *argument, int cmd);
void do_ounused (CHAR_DATA *ch, char *argument, int cmd);
void do_outfit (CHAR_DATA *ch, char *argument, int cmd);
void do_outside (CHAR_DATA *ch, char *argument, int cmd);
void do_palm (CHAR_DATA *ch, char *argument, int cmd);
void do_pay (CHAR_DATA *ch, char *argument, int cmd);
void do_payday (CHAR_DATA *ch, char *argument, int cmd);
void do_pardon (CHAR_DATA *ch, char *argument, int cmd);
void do_passwd (CHAR_DATA *ch, char *argument, int cmd);
void do_pecho (CHAR_DATA *ch, char *argument, int cmd);
void do_petition (CHAR_DATA *ch, char *argument, int cmd);
void do_pfile (CHAR_DATA *ch, char *argument, int cmd);
void do_pick (CHAR_DATA *ch, char *argument, int cmd);
void do_pitch (CHAR_DATA *ch, char *argument, int cmd);
void do_plog (CHAR_DATA *ch, char *argument, int cmd);
void do_pmote (CHAR_DATA *ch, char *argument, int cmd);
void do_point (CHAR_DATA *ch, char *argument, int cmd);
void do_pour (CHAR_DATA *ch, char *argument, int cmd);
void do_prescience (CHAR_DATA *ch, char *argument, int cmd);
void do_preview (CHAR_DATA *ch, char *argument, int cmd);
void do_print (CHAR_DATA *ch, char *argument, int cmd);
void do_professions (CHAR_DATA *ch, char *argument, int cmd);
void do_prog (CHAR_DATA *ch, char *argument, int cmd);
void do_promote (CHAR_DATA *ch, char *argument, int cmd);
void do_purge (CHAR_DATA *ch, char *argument, int cmd);
void do_put (CHAR_DATA *ch, char *argument, int cmd);
void do_quaff (CHAR_DATA *ch, char *argument, int cmd);
void do_quit (CHAR_DATA *ch, char *argument, int cmd);
void do_rappend (CHAR_DATA *ch, char *argument, int cmd);
void do_rblock (CHAR_DATA *ch, char *argument, int cmd);
void do_rclone (CHAR_DATA *ch, char *argument, int cmd);
void do_rcret (CHAR_DATA *ch, char *argument, int cmd);
void do_rddesc (CHAR_DATA *ch, char *argument, int cmd);
void do_rdesc (CHAR_DATA *ch, char *argument, int cmd);
void do_rdflag (CHAR_DATA *ch, char *argument, int cmd);
void do_rdoor (CHAR_DATA *ch, char *argument, int cmd);
void do_rdelete (CHAR_DATA *ch, char *argument, int cmd);
void do_reach (CHAR_DATA *ch, char *argument, int cmd);
void do_read (CHAR_DATA *ch, char *argument, int cmd);
void do_recipe (CHAR_DATA *ch, char *argument, int cmd);
void do_recruit (CHAR_DATA *ch, char *argument, int cmd);
void do_redesc (CHAR_DATA *ch, char *argument, int cmd);
void do_refresh (CHAR_DATA *ch, char *argument, int cmd);
void do_register (CHAR_DATA *ch, char *argument, int cmd);
void do_release (CHAR_DATA *ch, char *argument, int cmd);
void do_remcraft (CHAR_DATA *ch, char *argument, int cmd);
void do_remove (CHAR_DATA *ch, char *argument, int cmd);
void do_replace (CHAR_DATA *ch, char *argument, int cmd);
void do_report (CHAR_DATA *ch, char *argument, int cmd);
void do_rescue (CHAR_DATA *ch, char *argument, int cmd);
void do_resets (CHAR_DATA *ch, char *argument, int cmd);
void do_rest (CHAR_DATA *ch, char *argument, int cmd);
void do_restore (CHAR_DATA *ch, char *argument, int cmd);
void do_return (CHAR_DATA *ch, char *argument, int cmd);
void do_review (CHAR_DATA *ch, char *argument, int cmd);
void do_rexit (CHAR_DATA *ch, char *argument, int cmd);
void do_rexitrm (CHAR_DATA *ch, char *argument, int cmd);
void do_rflags (CHAR_DATA *ch, char *argument, int cmd);
void do_rinit (CHAR_DATA *ch, char *argument, int cmd);
void do_rkey (CHAR_DATA *ch, char *argument, int cmd);
void do_rlink (CHAR_DATA *ch, char *argument, int cmd);
void do_rlinkrm (CHAR_DATA *ch, char *argument, int cmd);
void do_rmove (CHAR_DATA *ch, char *argument, int cmd);
void do_rname (CHAR_DATA *ch, char *argument, int cmd);
void do_role (CHAR_DATA *ch, char *argument, int cmd);
void do_roll (CHAR_DATA *ch, char *argument, int cmd);
void do_roster (CHAR_DATA *ch, char *argument, int cmd);
void do_rpadd (CHAR_DATA *ch, char *argument, int cmd);
void do_rpapp (CHAR_DATA *ch, char *argument, int cmd);
void do_rpcmd (CHAR_DATA *ch, char *argument, int cmd);
void do_rpdel (CHAR_DATA *ch, char *argument, int cmd);
void do_rpkey (CHAR_DATA *ch, char *argument, int cmd);
void do_rpprg (CHAR_DATA *ch, char *argument, int cmd);
void do_rpstat (CHAR_DATA *ch, char *argument, int cmd);
void do_rsector (CHAR_DATA *ch, char *argument, int cmd);
void do_rset (CHAR_DATA *ch, char *argument, int cmd);
void do_rummage (CHAR_DATA *ch, char *argument, int cmd);
void do_runused (CHAR_DATA *ch, char *argument, int cmd);
void do_rxchange (CHAR_DATA *ch, char *argument, int cmd);
void do_sail (CHAR_DATA *ch, char *argument, int cmd);
void do_save (CHAR_DATA *ch, char *argument, int cmd);
void do_saverooms (CHAR_DATA *ch, char *argument, int cmd);
void do_say (CHAR_DATA *ch, char *argument, int cmd);
void do_scan (CHAR_DATA *ch, char *argument, int cmd);
void do_score (CHAR_DATA *ch, char *argument, int cmd);
void do_scribe (CHAR_DATA *ch, char *argument, int cmd);
void do_search (CHAR_DATA *ch, char *argument, int cmd);
void do_see (CHAR_DATA *ch, char *argument, int cmd);
void do_select_script (CHAR_DATA *ch, char *argument, int cmd);
void do_sell (CHAR_DATA *ch, char *argument, int cmd);
void do_send (CHAR_DATA *ch, char *argument, int cmd);
void do_sense (CHAR_DATA *ch, char *argument, int cmd);
void do_set (CHAR_DATA *ch, char *argument, int cmd);
void do_shadow (CHAR_DATA *ch, char *argument, int cmd);
void do_sheathe (CHAR_DATA *ch, char *argument, int cmd);
void do_shout (CHAR_DATA *ch, char *argument, int cmd);
void do_show (CHAR_DATA *ch, char *argument, int cmd);
void do_shutdown (CHAR_DATA *ch, char *argument, int cmd);
void do_sing (CHAR_DATA *ch, char *argument, int cmd);
void do_sit (CHAR_DATA *ch, char *argument, int cmd);
void do_skills (CHAR_DATA *ch, char *argument, int cmd);
void do_skin (CHAR_DATA *ch, char *argument, int cmd);
void do_sleep (CHAR_DATA *ch, char *argument, int cmd);
void do_slog (CHAR_DATA *ch, char *argument, int cmd);
void do_smell (CHAR_DATA *ch, char *argument, int cmd);
void do_sneak (CHAR_DATA *ch, char *argument, int cmd);
void do_snoop (CHAR_DATA *ch, char *argument, int cmd);
void do_south (CHAR_DATA *ch, char *argument, int cmd);
void do_speak (CHAR_DATA *ch, char *argument, int cmd);
void do_stable (CHAR_DATA *ch, char *argument, int cmd);
void do_stand (CHAR_DATA *ch, char *argument, int cmd);
void do_stat (CHAR_DATA *ch, char *argument, int cmd);
void do_stayput (CHAR_DATA *ch, char *argument, int cmd);
void do_steal (CHAR_DATA *ch, char *argument, int cmd);
void do_stop (CHAR_DATA *ch, char *argument, int cmd);
void do_study (CHAR_DATA *ch, char *argument, int cmd);
void do_subdue (CHAR_DATA *ch, char *argument, int cmd);
void do_summon (CHAR_DATA *ch, char *argument, int cmd);
void do_surrender (CHAR_DATA *ch, char *argument, int cmd);
void do_swap (CHAR_DATA *ch, char *argument, int cmd);
void do_swim (CHAR_DATA *ch, char *argument, int cmd);
void do_switch (CHAR_DATA *ch, char *argument, int cmd);
void do_switch_item (CHAR_DATA *ch, char *argument, int cmd);
void do_tables (CHAR_DATA *ch, char *argument, int cmd);
void do_tags (CHAR_DATA *ch, char *argument, int cmd);
void do_take (CHAR_DATA *ch, char *argument, int cmd);
void do_talk (CHAR_DATA *ch, char *argument, int cmd);
void do_tame (CHAR_DATA *ch, char *argument, int cmd);
void do_teach (CHAR_DATA *ch, char *argument, int cmd);
void do_tear (CHAR_DATA *ch, char *argument, int cmd);
void do_tell (CHAR_DATA *ch, char *argument, int cmd);
void do_thaw (CHAR_DATA *ch, char *argument, int cmd);
void do_think (CHAR_DATA *ch, char *argument, int cmd);
void do_throw (CHAR_DATA *ch, char *argument, int cmd);
void do_time (CHAR_DATA *ch, char *argument, int cmd);
void do_timeconvert (CHAR_DATA *ch, char *argument, int cmd);
void do_title (CHAR_DATA *ch, char *argument, int cmd);
void do_toll (CHAR_DATA *ch, char *argument, int cmd);
void do_track (CHAR_DATA *ch, char *argument, int cmd);
void do_transfer (CHAR_DATA *ch, char *argument, int cmd);
void do_transmute (CHAR_DATA *ch, char *argument, int cmd);
void do_travel (CHAR_DATA *ch, char *argument, int cmd); /* act.comm.c */
void do_treat (CHAR_DATA *ch, char *argument, int cmd);
void do_typo (CHAR_DATA *ch, char *argument, int cmd);
void do_unban (CHAR_DATA *ch, char *argument, int cmd);
void do_unlock (CHAR_DATA *ch, char *argument, int cmd);
void do_unload (CHAR_DATA *ch, char *argument, int cmd);
void do_unhitch (CHAR_DATA *ch, char *argument, int cmd);
void do_up (CHAR_DATA *ch, char *argument, int cmd);
void do_users (CHAR_DATA *ch, char *argument, int cmd);
void do_utter (CHAR_DATA *ch, char *argument, int cmd);
void do_value (CHAR_DATA *ch, char *argument, int cmd);
void do_vboards (CHAR_DATA *ch, char *argument, int cmd);
void do_viewbug (CHAR_DATA *ch, char *argument, int cmd);
void do_vis (CHAR_DATA *ch, char *argument, int cmd);
void do_voice (CHAR_DATA *ch, char *argument, int cmd);
void do_wake (CHAR_DATA *ch, char *argument, int cmd);
void do_wanted (CHAR_DATA *ch, char *argument, int cmd);
void do_watch (CHAR_DATA *ch, char *arguemnt, int cmd);
void do_wclone (CHAR_DATA *ch, char *argument, int cmd);
void do_wear (CHAR_DATA *ch, char *argument, int cmd);
void do_wearloc (CHAR_DATA *ch, char *argument, int cmd);
void do_weather (CHAR_DATA *ch, char *argument, int cmd);
void do_west (CHAR_DATA *ch, char *argument, int cmd);
void do_whap (CHAR_DATA *ch, char *argument, int cmd);
void do_where (CHAR_DATA *ch, char *argument, int cmd);
void do_where2 (CHAR_DATA *ch, char *argument, int cmd);
void do_whirl (CHAR_DATA *ch, char *argument, int cmd);
void do_whisper (CHAR_DATA *ch, char *argument, int cmd);
void do_who (CHAR_DATA *ch, char *argument, int cmd);
void do_wield (CHAR_DATA *ch, char *argument, int cmd);
void do_wizlist (CHAR_DATA *ch, char *argument, int cmd);
void do_wizlock (CHAR_DATA *ch, char *argument, int cmd);
void do_wlog (CHAR_DATA *ch, char *argument, int cmd);
void do_worship (CHAR_DATA *ch, char *argument, int cmd);
void do_would (CHAR_DATA *ch, char *argument, int cmd);
void do_write (CHAR_DATA *ch, char *argument, int cmd);
void do_write_book (CHAR_DATA *ch, char *argument, int cmd);
void do_writings (CHAR_DATA *ch, char *argument, int cmd);
void do_wsave (CHAR_DATA *ch, char *argument, int cmd);
void do_zecho (CHAR_DATA *ch, char *argument, int cmd);
void do_zlife (CHAR_DATA *ch, char *argument, int cmd);
void do_zlock (CHAR_DATA *ch, char *argument, int cmd);
void do_zmode (CHAR_DATA *ch, char *argument, int cmd);
void do_zname (CHAR_DATA *ch, char *argument, int cmd);
void do_zreboot (CHAR_DATA *ch, char *argument, int cmd);
void do_zsave (CHAR_DATA *ch, char *argument, int cmd);
void do_zset (CHAR_DATA *ch, char *argument, int cmd);
/** misccellaneous functions **/
void add_clandef (char *argument);
char *display_clan_ranks (CHAR_DATA *targ, CHAR_DATA *observer);
char *value_to_clan_rank (char *clan_name, int clan_flags, CHAR_DATA *ch);
int get_user_seconds(void);
int fread_number(FILE *fp);
void update_crafts_file(void);
char *breath_bar (CHAR_DATA *ch);
char *fatigue_bar (CHAR_DATA *ch);
char *mana_bar (CHAR_DATA *ch);
int get_token (char **s, char *token);
char *resolved_host (char *ip);
void mysql_secure_query (MYSQL *conn, char *query, int length);
void retrieve_mysql_board_listing (CHAR_DATA *ch, char *board_name);
void display_mysql_board_message (CHAR_DATA *ch, char *board_name, int msg_num);
int IsGuarded (ROOM_DATA *room, int dir);
int get_comestible_range (int num);
int keeper_has_money (CHAR_DATA *keeper, int cost);
void show_obj_to_char (OBJ_DATA *obj, CHAR_DATA *ch, int mode);
int has_craft (CHAR_DATA *ch, SUBCRAFT_HEAD_DATA *craft);
void pad_buffer (char *buf, int pad_stop);
void remove_threat (CHAR_DATA *victim, CHAR_DATA *threat);
void delayed_rummage (CHAR_DATA *ch);
void delayed_pitch (CHAR_DATA *ch);
void delayed_quaff (CHAR_DATA *ch);
void delayed_skin_new1 (CHAR_DATA *ch);
void delayed_skin_new2 (CHAR_DATA *ch);
void delayed_skin_new3 (CHAR_DATA *ch);
void delayed_treatment (CHAR_DATA *ch);
int meets_skill_requirements (CHAR_DATA *ch, SUBCRAFT_HEAD_DATA *craft);
int natural_healing_check (CHAR_DATA *ch, WOUND_DATA *wound);
void remove_charm (CHAR_DATA *ch, CHARM_DATA *ench);
void morph_obj (OBJ_DATA *obj);
int mob_weather_reaction (CHAR_DATA *ch);
int would_attack (CHAR_DATA *ch, CHAR_DATA *tch);
void ready_melee_weapons (CHAR_DATA *ch);
int get_stat_range (int score);
void reformat_say_string (char *source, char **target);
void alarm_update(void);
void reset_itimer(void);
void alarm_handler (int signo);
void init_alarm_handler(void);
void temproom (CHAR_DATA *ch, int type);
char *char_short (CHAR_DATA *c);
char *char_names (CHAR_DATA *ch);
char *char_long (CHAR_DATA *c, int show_tname);
void combat_round (void);
void write_object (DESCRIPTOR_DATA *d);
void write_obj_data_mysql (OBJ_DATA *obj, char *wc, int pos, int objstack);
void scribe (int new_message, int virtual, char *author, char *date, char *message, long flags);
void wear_off_message (CHAR_DATA *ch, CHARM_DATA *ench);
char *show_charm (CHARM_DATA *charm);
int general_damage (CHAR_DATA *ch, int amount);
void initialize_weather_zones (void);
int wound_to_char (CHAR_DATA *ch, char *location, int damage, int type, int bleeding, int poison, int infection);
char *downsized_wound (CHAR_DATA *ch, WOUND_DATA *wound);
void heal_all_wounds (CHAR_DATA *ch);
void lodge_from_char (CHAR_DATA *ch, LODGED_OBJECT_INFO *lodged);
void lodge_from_obj (OBJ_DATA *obj, LODGED_OBJECT_INFO *lodged);
void wound_from_char (CHAR_DATA *ch, WOUND_DATA *wound);
void wound_from_obj (OBJ_DATA *obj, WOUND_DATA *wound);
char *expand_wound_loc (char *location);
char *show_wounds (CHAR_DATA *ch, int mode);
char *show_damage (OBJ_DATA *obj);
char *figure_location (CHAR_DATA *tar, int location);
char *wound_total (CHAR_DATA *ch);
void make_quiet(CHAR_DATA *ch);
void close_socket(struct descriptor_data *d);
int str_cmp(char *arg1, char *arg2);
int cmp_strn(char *arg1, char *arg2, int n);
void send_email (ACCOUNT_DATA *account, char *cc, char *from, char *subject, char *message);
void send_to_gods(char *messg);
void send_to_imms(char *messg);
int is_yours (char *name, char *account);
int is_being_reviewed (char *name, char *account);
int is_guide (char *username);
int is_newbie (CHAR_DATA *ch);
void send_outside (char *message);
void send_outside_zone (char *message, int zone);
#ifndef MACOSX
int MAX(int a, int b);
int MIN(int a, int b);
#endif
int dice(int number, int size);
char *timestr (char *date);
struct time_info_data age(CHAR_DATA *ch);
void reload_roles (void);
void get_damage (CHAR_DATA *ch, CHAR_DATA *victim, int *dam,
int attack_num, int *location);
void affect_modify (CHAR_DATA *ch, int type, int loc, int mod, int bitv,
int add, int sn);
int get_damage_total (CHAR_DATA *ch);
void affect_to_char( CHAR_DATA *ch, struct affected_type *af );
void affect_remove( CHAR_DATA *ch, struct affected_type *af );
void affect_join( CHAR_DATA *ch, struct affected_type *af, bool avg_dur, bool avg_mod );
OBJ_DATA *create_money( int amount );
int vnpc_customer (CHAR_DATA *keeper, int purse);
void refresh_colors (CHAR_DATA *keeper);
void money_to_storeroom (CHAR_DATA *keeper, int amount);
int name_is(char *str, char *namelist);
char *fname(char *namelist);
char *fname_hyphen(char *namelist);
void obj_to_char (OBJ_DATA *obj, CHAR_DATA *ch);
void obj_from_char (OBJ_DATA **obj, int count);
void equip_char(CHAR_DATA *ch, OBJ_DATA *obj, int pos);
OBJ_DATA *unequip_char(CHAR_DATA *ch, int pos);
OBJ_DATA *get_carried_item (CHAR_DATA *ch, int item_type);
OBJ_DATA *get_obj_in_list(char *name, OBJ_DATA *list);
OBJ_DATA *get_obj_in_list_num (int num, OBJ_DATA *list);
OBJ_DATA *get_obj(char *name);
void obj_to_room (OBJ_DATA *obj, int room);
void obj_from_room (OBJ_DATA **obj, int count);
void obj_to_obj (OBJ_DATA *obj, OBJ_DATA *container);
void obj_from_obj (OBJ_DATA **obj, int count);
void object_list_new_owner (OBJ_DATA *list, CHAR_DATA *ch);
void extract_obj (OBJ_DATA *obj);
void starting_skill_boost (CHAR_DATA *ch, int skill);
void setup_new_character (CHAR_DATA *tch);
void npc_archery_retaliation (CHAR_DATA *target, CHAR_DATA *ch);
int has_been_sighted (CHAR_DATA *ch, CHAR_DATA *target);
int can_obj_to_container (OBJ_DATA *obj, OBJ_DATA *container, char **msg, int count);
CHAR_DATA *is_switched (CHAR_DATA *ch);
CHAR_DATA *get_mob_vnum(int virtual);
CHAR_DATA *get_char_id (int coldload_id);
OBJ_DATA *get_obj_id (int coldload_id);
OBJ_DATA *get_obj_in_list_id (int coldload_id, OBJ_DATA *list);
CHAR_DATA *get_char_room(char *name, int room);
CHAR_DATA *get_char(char *name);
CHAR_DATA *get_char_nomask (char *name);
void char_from_room(CHAR_DATA *ch);
void char_to_room(CHAR_DATA *ch, int room);
CHAR_DATA *get_char_room_vis(CHAR_DATA *ch, char *name);
CHAR_DATA *get_char_room_vis2(CHAR_DATA *ch, int vnum, char *name);
CHAR_DATA *get_char_vis(CHAR_DATA *ch, char *name);
void soma_ten_second_affect(CHAR_DATA *ch, AFFECTED_TYPE *af);
void soma_rl_minute_affect(CHAR_DATA *ch, AFFECTED_TYPE *af);
OBJ_DATA *get_obj_in_list_vis(CHAR_DATA *ch, char *name, OBJ_DATA *list);
OBJ_DATA *get_obj_vis(CHAR_DATA *ch, char *name);
void extract_char(CHAR_DATA *ch);
int generic_find(char *arg, int bitvector, CHAR_DATA *ch, CHAR_DATA **tar_ch, OBJ_DATA **tar_obj);
void clear_pmote(CHAR_DATA *ch);
void clear_omote(OBJ_DATA *obj);
void clear_voice(CHAR_DATA *ch);
int drowned (CHAR_DATA *ch);
void clear_travel(CHAR_DATA *ch); /* act.comm.c */
void boot_crafts (void);
void insert_string_variables (OBJ_DATA *new_obj, OBJ_DATA *proto, char *string);
void boot_db (void);
void delayed_remove (CHAR_DATA *ch);
void reg_read_crafts (FILE *fp_reg, char *buf);
void boot_mobiles (void);
void boot_mobprogs (void);
void boot_objects (void);
void boot_recipe (void);
void copyover_recovery (void);
int is_direction (char *argument);
void vote_notifications (void);
void update_website_statistics (void);
void update_crafts_database (void);
int mysql_safe_query (char *fmt, ...);
char *expand_wound_loc (char *location);
int number(int from, int to);
void hunger_thirst_process (CHAR_DATA *ch);
void add_shop (int vnum);
void save_shop(FILE *fs, int vnum);
void reset_zone(int zone);
int hit_gain (CHAR_DATA *ch, int poisons_only);
int move_gain (CHAR_DATA *ch);
void sprinttype(int type, char *names, char *result);
void list_all_crafts (CHAR_DATA *ch);
void display_craft (CHAR_DATA *ch, SUBCRAFT_HEAD_DATA *craft);
int craft_uses (SUBCRAFT_HEAD_DATA *craft, int vnum);
void sprintbit(long vektor, char *names[], char *result);
int rnum_to_znum (int rnum, int zonesize);
void hit_char (CHAR_DATA *ch, CHAR_DATA *victim, int smite_parm);
void stop_fighting(CHAR_DATA *ch);
void renum_zone_table(void);
void update_room_tracks (void);
void update_pos(CHAR_DATA *victim);
void update_char_objects(CHAR_DATA *ch);
int is_number(char *str);
int do_simple_move(CHAR_DATA *ch, int dir, int following, int falling, int speed);
void raw_kill(CHAR_DATA *ch);
OBJ_DATA *get_object_in_equip_vis(CHAR_DATA *ch, char *arg, OBJ_DATA *equipment, int *j);
void gain_condition(CHAR_DATA *ch, int condition, int value);
void evade_attacker (CHAR_DATA *ch, int dir);
void refresh_map (void);
void page_string(struct descriptor_data *d, char *str);
int save_rooms (CHAR_DATA *ch, int zone);
void arg_splitter(int argc, char *fmt, ...);
ROOM_DATA *allocate_room (int virtual);
void stop_follower(CHAR_DATA *ch);
void perform_pfile_update (CHAR_DATA *ch);
int is_abbrev(char *arg1, char *arg2);
void free_obj(OBJ_DATA *obj);
int search_block(char *arg, char **list, bool exact);
int r_program(CHAR_DATA *ch, char *argument);
void add_memory(CHAR_DATA *add, CHAR_DATA *mob);
bool get_obj_in_equip_num(CHAR_DATA *ch, long vnum);
void spitstat (CHAR_DATA *ch, DESCRIPTOR_DATA *recipient);
void save_char_objs(CHAR_DATA *ch, char *name);
void spellcheck (CHAR_DATA *ch, char *description);
void criminalize (CHAR_DATA *ch, CHAR_DATA *vict, int zone, int penalty_time);
int skill_use (CHAR_DATA *ch, int skill, int diff_mod);
int curve (int number);
int figure_wound_skillcheck_penalties (CHAR_DATA *ch, int skill_lev);
void add_mob_to_hash (CHAR_DATA *add_mob);
void add_obj_to_hash (OBJ_DATA *add_obj);
ROOM_DATA *vtor (int virtual);
OBJ_DATA *vtoo (int virtual);
CHAR_DATA *vtom (int virtual);
AFFECTED_TYPE *is_crafting (CHAR_DATA *ch);
void randomize_mobile (CHAR_DATA *mob);
CHAR_DATA *load_mobile (int virtual);
OBJ_DATA *load_object (int virtual);
void soma_stat (CHAR_DATA *ch, AFFECTED_TYPE *af);
OBJ_DATA *load_colored_object (int virtual, char *string);
CHAR_DATA *fread_mobile (int vnum, int zone, FILE *fp);
OBJ_DATA *fread_object (int vnum, int zone, FILE *fp);
void death_email (CHAR_DATA *ch);
int index_lookup (char **index, char *lookup);
int skill_index_lookup (char *lookup);
int check_climb (CHAR_DATA *ch);
void archive_log (int log_type);
void create_menu_options (DESCRIPTOR_DATA *d);
MYSQL_RES *mysql_player_search (int search_type, char *string);
CHAR_DATA *load_char (CHAR_DATA *ch, char *buf);
CHAR_DATA *load_char_mysql (char *name);
int save_char (CHAR_DATA *ch, int save_objs);
void save_char_mysql (CHAR_DATA *ch);
int mem_free (malloc_t ptr);
AFFECTED_TYPE *is_room_affected (AFFECTED_TYPE *af, int type);
void room_update (void);
void learn_circles_spells (CHAR_DATA *target, CHAR_DATA *ch);
int lookup_value (char *string, int reg_index);
AFFECTED_TYPE *get_affect (CHAR_DATA *ch, int spell);
int swimming_check (CHAR_DATA *ch);
char *lookup_string (int value, int reg_index);
void set_hobbitmail_flags(int id, int flags);
void setup_registry (void);
void free_registry (void);
void nanny_create_guest (DESCRIPTOR_DATA *d, char *argument);
struct time_info_data real_time_passed (time_t t2, time_t t1);
int calc_lookup (CHAR_DATA *ch, int index, int entry);
int damage (CHAR_DATA *ch, CHAR_DATA *victim, int dam,
int attacktype);
void setup_new_account (ACCOUNT_DATA *account);
void mobile_routines (int pulse);
int is_enchanted (CHAR_DATA *ch, char *charm_name);
int smite (CHAR_DATA *src, CHAR_DATA *tar, int attack_num);
int is_threat (CHAR_DATA *ch, CHAR_DATA *tch);
void add_threat (CHAR_DATA *victim, CHAR_DATA *threat, int amount);
void show_char_to_char (CHAR_DATA *i, CHAR_DATA *ch, int mode);
OBJ_DATA *get_equip (CHAR_DATA *ch, int location);
void combine_money_inv (OBJ_DATA *source, CHAR_DATA *ch);
void combine_money_obj (OBJ_DATA *source, OBJ_DATA *container, CHAR_DATA *ch);
void show_waiting_prisoners (CHAR_DATA *ch);
void notify_captors (CHAR_DATA *ch);
int is_in_cell (CHAR_DATA *ch, int zone);
void ready_melee_weapon (CHAR_DATA *ch);
void unready_bow (CHAR_DATA *ch);
void create_guest_avatar (DESCRIPTOR_DATA *d);
int can_handle (OBJ_DATA *obj, CHAR_DATA *ch);
int just_a_number (char *buf);
void stop_counting (CHAR_DATA *ch);
int can_obj_to_inv (OBJ_DATA *obj, CHAR_DATA *ch, int *error,int count);
char *encrypt_buf (char *buf);
void free_lodged (LODGED_OBJECT_INFO *lodged);
void free_wound (WOUND_DATA *wound);
void free_char (CHAR_DATA *ch);
void free_descriptor (DESCRIPTOR_DATA *d);
void free_account (ACCOUNT_DATA *account);
OBJ_DATA *find_dwelling_obj (int dwelling_room);
ROOM_DATA *generate_dwelling_room (OBJ_DATA *dwelling);
void add_room_affect (AFFECTED_TYPE **af, int type, int duration);
void cleanup_the_dead (int mode);
void subtract_keeper_money (CHAR_DATA *keeper, int cost);
int calculate_missile_result (CHAR_DATA *ch, int ch_skill, int att_modifier, CHAR_DATA *target, int def_modifier, OBJ_DATA *weapon, OBJ_DATA *missile, AFFECTED_TYPE *spell, int *location, float *damage);
int projectile_shield_block (CHAR_DATA *ch, int result);
char *time_string(CHAR_DATA *ch);
void insert_newsletter_into_website (int timestamp, char *newsletter);
void update_website(void);
void check_maintenance(void);
void unban_site (SITE_INFO *site);
void disconnect_banned_hosts(void);
void ban_host (char *host, char *banned_by, int length);
void list_validate (char *name);
int unused_writing_id (void);
int remove_room_affect (ROOM_DATA *room, int type);
void act_black_curse (CHAR_DATA *ch);
void print_mem_stats (CHAR_DATA *ch);
void init_memory (void);
char *get_mem (int size);
char *add_hash (char *string);
void save_hobbitmail_message (ACCOUNT_DATA *account, MUDMAIL_DATA *message);
char *str_dup (char *string);
void process_reviews (void);
PHASE_DATA *new_phase (void);
CHAR_DATA *new_char (int pc_type);
OBJ_DATA *new_object (void);
void add_follower (CHAR_DATA *ch, CHAR_DATA *leader);
int attempt_disarm (CHAR_DATA *ch, CHAR_DATA *victim);
void forget (CHAR_DATA *ch, CHAR_DATA *foe);
void sort_int_array (int *array, int entries);
int redefine_mobiles (CHAR_DATA *proto);
AFFECTED_TYPE *get_obj_affect (OBJ_DATA *obj, int type);
void intialize_new_spawnpoints (int zone, int reset_cmd);
AFFECTED_TYPE *get_obj_affect_location (OBJ_DATA *obj, int location);
void remove_obj_affect (OBJ_DATA *obj, int type);
void remove_obj_affect_location (OBJ_DATA *obj, int location);
void affect_to_obj (OBJ_DATA *obj, AFFECTED_TYPE *af);
void process_queued_reviews (void);
char *colnum_to_color (int colnum);
char *colorize (char *source, char *target, DESCRIPTOR_DATA *d);
int trigger (CHAR_DATA *ch, char *argument, int trigger);
void trigger_say (CHAR_DATA *ch, CHAR_DATA *mob, char *prog, char *arg);
void hourly_update (void);
void traslate_it (int num);
OBJ_DATA *get_obj_in_dark (CHAR_DATA *ch, char *name, OBJ_DATA *list);
char getall (char *name, char *newname);
void define_variable (CHAR_DATA *mob, MOBPROG_DATA *program, char *argument);
VAR_DATA *setvar (CHAR_DATA *mob, char *var_name, int value, int type);
VAR_DATA *getvar (CHAR_DATA *mob, char *var_name);
int mp_eval_eq (CHAR_DATA *mob, char **equation);
FILE *open_and_rename (CHAR_DATA *ch, char *name, int zone);
int weaken (CHAR_DATA *victim, int hits, int moves, char *log_msg);
void save_writing (OBJ_DATA *obj);
void load_writing (OBJ_DATA *obj);
void load_all_writing (void);
void save_player_rooms (void);
void load_save_rooms (void);
void load_save_room (ROOM_DATA *room);
void load_mysql_save_rooms (void);
void save_account (ACCOUNT_DATA *account);
ACCOUNT_DATA *load_account (char *argument);
void save_banned_sites (void);
void save_roles (void);
void save_stayput_mobiles (void);
void load_stayput_mobiles (void);
void update_race_rpp_data (void);
void save_reboot_mobiles (void);
void load_reboot_mobiles (void);
void lodge_missile (CHAR_DATA *target, OBJ_DATA *ammo, char *smite_location);
void stock_new_deliveries (void);
void save_tracks (void);
void load_tracks (void);
void load_leantos (void);
void load_online_stats (void);
int is_circle_spell (CHAR_DATA *ch, char *spell_name);
void nullify_affects (CHAR_DATA *ch);
void reapply_affects (CHAR_DATA *ch);
int real_skill (CHAR_DATA *ch, int skill);
int is_in_room (CHAR_DATA *ch, CHAR_DATA *target);
void write_to_q (char *txt, struct txt_q *queue);
void get_break_delay (CHAR_DATA *ch);
void command_interpreter (CHAR_DATA *ch, char *argument);
void argument_interpreter (char *argument, char *first_arg, char *second_arg);
char *one_argument (char *argument,char *first_arg);
int fill_word (char *argument);
void half_chop (char *string, char *arg1, char *arg2);
void nanny (DESCRIPTOR_DATA *d, char *arg);
void check_psionic_talents (CHAR_DATA *ch);
int social (CHAR_DATA *ch, char *argument);
void checkpointing (int);
void shutdown_request (int);
void logsig (int);
void hupsig (int);
void sigsegv (int);
void sigchld (int);
void sigabrt (int);
void add_room_to_hash (ROOM_DATA *add_room);
int create_entry (char *name);
void zone_update (void);
void clear_char (CHAR_DATA *ch);
void clear_object (OBJ_DATA *obj);
char *read_string (char *string);
char *fread_string (FILE *fl);
char *fread_word (FILE *fl);
void load_boards (void);
int add_registry (int reg_index, int value, char *string);
void write_board_list (void);
BOARD_DATA *board_lookup (char *name);
void add_message (char *name, int msg_type, char *poster,
char *date, char *subject, char *info, char *message,
long flags);
void add_char (char *buf, char c);
void add_board (int level, char *name, char *title);
void send_to_all (char *message);
void send_to_all_unf (char *message);
void send_to_char (char *message, CHAR_DATA *ch);
void send_to_room(char *message, int room_num);
void send_to_room_unf(char *message, int room_num);
void mark_as_read (CHAR_DATA *ch, int number);
int adjust_wound (CHAR_DATA *ch, WOUND_DATA *wound, int amount);
MESSAGE_DATA *load_mysql_message (char *msg_name, int board_type, int msg_number);
int erase_mysql_board_post (CHAR_DATA *ch, char *name, int board_type, char *argument);
int get_mysql_board_listing (CHAR_DATA *ch, int board_type, char *name);
void add_message_to_mysql_vboard (char *name, char *poster, MESSAGE_DATA *message);
void add_message_to_mysql_player_notes (char *name, char *poster, MESSAGE_DATA *message);
void act (char *str, int hide_invisible, CHAR_DATA *ch, OBJ_DATA *obj,
void *vict_obj, int type);
int write_to_descriptor (DESCRIPTOR_DATA *d, char *txt);
CHAR_DATA *try_load_char (char *name);
void dream (CHAR_DATA *ch);
void awaken_break_delay (CHAR_DATA *ch);
int is_he_here (CHAR_DATA *ch, CHAR_DATA *he, int check);
int is_he_somewhere (CHAR_DATA *he);
void post_greater (DESCRIPTOR_DATA *d);
void post_dream (DESCRIPTOR_DATA *d);
void post_lesser (DESCRIPTOR_DATA *d);
void post_prescience (DESCRIPTOR_DATA *d);
void post_mset (DESCRIPTOR_DATA *d);
void post_track_response (DESCRIPTOR_DATA *d);
void post_oset (DESCRIPTOR_DATA *d);
void post_to_mysql_virtual_board (DESCRIPTOR_DATA *d);
void post_to_mysql_player_board (DESCRIPTOR_DATA *d);
void post_to_mysql_journal (DESCRIPTOR_DATA *d);
void post_to_mysql_board (DESCRIPTOR_DATA *d);
void post_message (DESCRIPTOR_DATA *d);
void sense_activity (CHAR_DATA *user, int talent);
void check_idlers (void);
void check_linkdead (void);
void delayed_trigger_activity (void);
void delayed_ooc (CHAR_DATA *ch);
void delayed_track (CHAR_DATA *ch);
void delayed_load (CHAR_DATA *ch);
void delayed_alert (CHAR_DATA *ch);
void delayed_awaken (CHAR_DATA *ch);
void delayed_bind (CHAR_DATA *ch);
void delayed_bolt (CHAR_DATA *ch);
void delayed_combine (CHAR_DATA *ch);
void delayed_camp1 (CHAR_DATA *ch);
void delayed_camp2 (CHAR_DATA *ch);
void delayed_camp3 (CHAR_DATA *ch);
void delayed_camp4 (CHAR_DATA *ch);
void delayed_count_coin (CHAR_DATA *ch);
void delayed_forage (CHAR_DATA *ch);
void delayed_forage_seek (CHAR_DATA *ch);
void delayed_gather (CHAR_DATA *ch);
void delayed_get (CHAR_DATA *ch);
void delayed_heal (CHAR_DATA *ch);
void delayed_hide (CHAR_DATA *ch);
void delayed_hide_obj (CHAR_DATA *ch);
void delayed_identify (CHAR_DATA *ch);
void delayed_join_faith (CHAR_DATA *ch);
void delayed_quick_scan (CHAR_DATA *ch);
void delayed_pick (CHAR_DATA *ch);
void delayed_pick_obj (CHAR_DATA *ch);
void delayed_putchar (CHAR_DATA *ch);
void delayed_scan (CHAR_DATA *ch);
void delayed_search (CHAR_DATA *ch);
void delayed_skin (CHAR_DATA *ch);
void delayed_study (CHAR_DATA *ch);
void delayed_take (CHAR_DATA *ch);
void delayed_whap (CHAR_DATA *ch);
void delayed_worship (CHAR_DATA *ch);
int track_room (ROOM_DATA *from_room, int to_room);
int track (CHAR_DATA *ch, int to_room);
int release_prisoner (CHAR_DATA *ch, CHAR_DATA *target);
void name_to_ident (CHAR_DATA *ch, char *buf);
void figure_damage (CHAR_DATA *src, CHAR_DATA *tar,
OBJ_DATA *attack_weapon, int off_result,
int *damage, int *location);
void combat_results (CHAR_DATA *src, CHAR_DATA *tar, OBJ_DATA *attack_weapon,
OBJ_DATA *defense_weapon, OBJ_DATA *broken_eq, int damage, char *location,
int off_result, int def_result, int attack_num,
char *fd, int off_success, int def_success);
void fix_offense (CHAR_DATA *ch);
void add_second_affect (int type, int seconds, CHAR_DATA *ch,
OBJ_DATA *obj, char *info, int info2);
void second_affect_update (void);
void hour_affect_update (void);
int add_to_list (ROOM_DATA **list, ROOM_DATA *start_room, int *elements);
void get_room_list (int radius, ROOM_DATA *base_room, ROOM_DATA **near_rooms, int *num_rooms);
void wolf_howl (CHAR_DATA *ch);
void show_contents (CHAR_DATA *ch, int cmd);
int find_door (CHAR_DATA *ch, char *type, char *dir);
char *get_profession_name (int prof_id);
void add_profession_skills (CHAR_DATA *ch, char *skill_list);
int has_required_crafting_skills (CHAR_DATA *ch, SUBCRAFT_HEAD_DATA *craft);
int is_opening_craft (CHAR_DATA *ch, SUBCRAFT_HEAD_DATA *craft);
OBJ_DATA *has_key (CHAR_DATA *ch, OBJ_DATA *obj, int key);
int is_brother (CHAR_DATA *ch, CHAR_DATA *tch);
void refresh_zone (void);
int is_leader (CHAR_DATA *src, CHAR_DATA *tar);
void invite_accept (CHAR_DATA *ch, char *argument);
void tashal_prisoner_release (CHAR_DATA *ch);
malloc_t get_perm (int size);
int flee_attempt (CHAR_DATA *ch);
SECOND_AFFECT *get_second_affect (CHAR_DATA *ch, int type, OBJ_DATA *obj);
void remove_second_affect (SECOND_AFFECT *sa);
void map_next_step (CHAR_DATA *ch);
void open_skill (CHAR_DATA *ch, int skill);
int get_trust (CHAR_DATA *ch);
int real_trust (CHAR_DATA *ch);
int is_obj_here (CHAR_DATA *ch, OBJ_DATA *obj, int check);
void jailer_func (CHAR_DATA *ch);
void coronan_arena_check (CHAR_DATA *victim);
void reformat_string (char *source, char **target);
CHAR_DATA *get_pc (char *buf);
CHAR_DATA *load_pc (char *buf);
void unload_pc (CHAR_DATA *ch);
void pc_to_game (CHAR_DATA *ch);
void create_menu_actions (DESCRIPTOR_DATA *d, char *arg);
void attribute_priorities (DESCRIPTOR_DATA *d, char *arg);
void sex_selection (DESCRIPTOR_DATA *d, char *arg);
void race_selection (DESCRIPTOR_DATA *d, char *arg);
void skill_selection (DESCRIPTOR_DATA *d, char *argument);
void skill_display (DESCRIPTOR_DATA *d);
char *read_a_line (FILE *fp);
MESSAGE_DATA *load_message (char *msg_name, int pc_message, int msg_number);
void unload_message (MESSAGE_DATA *message);
void scary_dream (CHAR_DATA *ch);
OBJ_DATA *get_item_obj (CHAR_DATA *ch, DEFAULT_ITEM_DATA *item, PHASE_DATA *phase);
int is_dark (ROOM_DATA *room);
void reformat_desc (char *s, char **t);
void process_quarter_events (void);
int is_he_there (CHAR_DATA *ch, ROOM_DATA *room);
void damage_to_obj (OBJ_DATA *obj, int impact, int type);
void initiate_move (CHAR_DATA *ch);
void clear_moves (CHAR_DATA *ch);
void stop_followers (CHAR_DATA *ch);
void followers_follow (CHAR_DATA *ch, int dir, int leave_time,
int arrive_time);
void save_mud_time (time_t game_time);
void load_common_knowledge (void);
void intialize_weather_zones (void);
void follower_catchup (CHAR_DATA *ch);
int combat_roll (int ability);
int clear_current_move (CHAR_DATA *ch);
int spell_chill_touch (CHAR_DATA *ch, CHAR_DATA *victim, int sn);
void weight_change_object (OBJ_DATA *obj, int weight);
int is_blind (CHAR_DATA *ch);
int wakeup (CHAR_DATA *ch);
void remove_object_affect (OBJ_DATA *obj, AFFECTED_TYPE *af);
int eval_att_eq (CHAR_DATA *ch, char **equation);
void knock_out (CHAR_DATA *ch, int seconds);
CHAR_DATA *being_dragged (CHAR_DATA *ch);
void update_crafts (CHAR_DATA *ch);
int keeper_makes (CHAR_DATA *keeper, int ovnum);
int keeper_uses_currency_type (int currency_type, OBJ_DATA *obj);
int get_size (CHAR_DATA *ch);
int get_weight (CHAR_DATA *ch);
DESCRIPTOR_DATA *is_pc_attached (char *buf);
int is_mounted (CHAR_DATA *ch);
void rl_minute_affect_update (void);
int race_lookup (char *buf);
void clear_watch (CHAR_DATA *ch);
void show_unread_messages (CHAR_DATA *ch);
void show_string (DESCRIPTOR_DATA *d, char *input);
char *file_to_string (char *name);
void check_memory (void);
OBJ_DATA *get_bow (CHAR_DATA *ch);
int is_obj_in_list (OBJ_DATA *obj, OBJ_DATA *list);
int is_restricted_skill (CHAR_DATA *ch, int skill);
int is_restricted_profession (CHAR_DATA *ch, char *skill_list);
int add_msg_to_board (char *board_name, int board_type,
MESSAGE_DATA *message, int virtual);
void release_nonplaying_pc (CHAR_DATA *ch);
void release_pc (CHAR_DATA *ch);
void hitches_follow (CHAR_DATA *ch, int dir, int leave_time,
int arrive_time);
void dump_rider (CHAR_DATA *rider, int forced);
CHAR_DATA *load_saved_mobiles (CHAR_DATA *ch, char *name);
void save_mobile (CHAR_DATA *mob, FILE *fp, char *save_reason,
int extract);
void save_attached_mobiles (CHAR_DATA *ch, int extract);
CHAR_DATA *load_a_saved_mobile (int virtual, FILE *fp, bool stable);
int hitch_char (CHAR_DATA *ch, CHAR_DATA *hitch);
void load_rooms (void);
void job_add_affect (CHAR_DATA *ch, int type, int days, int pay_date,
int cash, int count, int object_vnum, int employer);
AFFECTED_TYPE *get_obj_affect_type (OBJ_DATA *obj, int type);
void aggressive_follow (CHAR_DATA *ch);
CHAR_DATA *is_following (CHAR_DATA *ch);
CHAR_DATA *is_guarded (CHAR_DATA *victim, CHAR_DATA *criminal);
void sa_rescue (SECOND_AFFECT *sa);
int decipher_speakign (CHAR_DATA *ch, int skillnum, int skill);
int rescue_attempt (CHAR_DATA *ch, CHAR_DATA *friend);
int is_archer (CHAR_DATA *ch);
int charge_archer (CHAR_DATA *ch, CHAR_DATA *archer);
int morale_broken (CHAR_DATA *ch);
int survival_routine (CHAR_DATA *ch);
void attacker_from_char (CHAR_DATA *ch, ATTACKER_DATA *att);
void threat_from_char (CHAR_DATA *ch, THREAT_DATA *att);
void remove_attacker (CHAR_DATA *ch, CHAR_DATA *threat);
void guard_check (CHAR_DATA *victim);
OBJ_DATA *is_at_table (CHAR_DATA *ch, OBJ_DATA *table);
void print_bit_map (void);
void set_bit (int bit_no);
void reset_bit (int bit_no);
int is_bit_set (int bit_no);
void clear_bits (void);
int whisper_it (CHAR_DATA *ch, int skill, char *source, char *target);
int sleep_needed_in_seconds (CHAR_DATA *ch);
void sleep_credit (CHAR_DATA *ch);
void sleep_need (CHAR_DATA *ch);
int would_reveal (CHAR_DATA *ch);
void shadowers_shadow (CHAR_DATA *ch, int to_room, int move_dir);
int could_see (CHAR_DATA *ch, CHAR_DATA *target);
void craft_command (CHAR_DATA *ch, char *command_args,
AFFECTED_TYPE *craft_affect);
AFFECTED_TYPE *is_craft_command (CHAR_DATA *ch, char *argument);
void activate_phase (CHAR_DATA *ch, AFFECTED_TYPE *af);
char *obj_short_desc (OBJ_DATA *obj);
char *obj_desc (OBJ_DATA *obj);
OBJ_DATA *split_obj (OBJ_DATA *obj, int count);
void ten_second_update (void);
char *get_line (char **buf, char *ret_buf);
ALIAS_DATA *is_alias (CHAR_DATA *ch, char *argument);
void alias_free (ALIAS_DATA *alias);
void update_weapon_skills (OBJ_DATA *obj);
void missing_item_msg (CHAR_DATA *ch, DEFAULT_ITEM_DATA *item,
char *header);
void web_reply (DESCRIPTOR_DATA *d, char *reply, char *message);
void web_verify_logon (DESCRIPTOR_DATA *d, char *argument);
void web_process (DESCRIPTOR_DATA *d, char *argument);
void web_send_craft (DESCRIPTOR_DATA *d, char *argument);
void web_send_craft_list (DESCRIPTOR_DATA *d);
void web_process_input (DESCRIPTOR_DATA *d);
int check_password (char *pass, char *encrypted);
char *generate_password (int argc, char ** argv);
void web_send_room (DESCRIPTOR_DATA *d, int room_num);
int can_move (CHAR_DATA *ch);
void magic_add_delayed_affect (CHAR_DATA *victim, int sn, int delay,
int duration, int power);
int magic_add_affect (CHAR_DATA *ch, int type, int duration, int modifier,
int location, int bitvector, int sn);
void rl_minute_delayed_affects (void);
int enforcer (CHAR_DATA *ch, CHAR_DATA *crim, int will_act,
int witness);
void offline_healing (CHAR_DATA *ch, int since);
int is_hooded (CHAR_DATA *ch);
void add_criminal_time (CHAR_DATA *ch, int zone, int penalty_time);
void remove_affect_type (CHAR_DATA *ch, int type);
int could_see_obj (CHAR_DATA *ch, OBJ_DATA *obj);
OBJ_DATA *get_obj_in_list_vis_not_money (CHAR_DATA *ch, char *name,
OBJ_DATA *list);
void init_mysql (void);
void refresh_db_connection (void);
void reload_sitebans (void);
void reload_mob_resets (void);
void target_sighted (CHAR_DATA *ch, CHAR_DATA *target);
void system_log (char *str, bool error);
void player_log (CHAR_DATA *ch, char *command, char *str);
void weather_and_time(int mode);
void autosave (void);
void autosave_stayputs (void);
void update_delays(void);
void newbie_hints (void);
void set_fighting(struct char_data *ch, struct char_data *vict);
void die(struct char_data *ch);
void die_follower(struct char_data *ch);
void break_delay(struct char_data *ch);
void equip_newbie (CHAR_DATA *ch);
int load_char_objs(struct char_data *ch, char *name);
void read_obj_suppliment (struct char_data *ch, FILE *fp);
void write_obj_suppliment (struct char_data *ch, FILE *fp);
void unstable (CHAR_DATA *ch, OBJ_DATA *ticket, CHAR_DATA *keeper);
int apply_affect (CHAR_DATA *ch, int sn, int duration, int power);
void craft_prepare_message (CHAR_DATA *ch, char *message, CHAR_DATA *n,
CHAR_DATA *N, CHAR_DATA *T, char *phase_msg,
OBJ_DATA *tool, OBJ_DATA **obj_list);
int odds_sqrt (int percent);
void room_light (ROOM_DATA *room);
CHAR_DATA *next_random (int *id);
CHAR_DATA *random_chars (CHAR_DATA *char_head, int *id);
void free_random_char (int *id);
void activate_resets (CHAR_DATA *ch);
int get_stink_message (CHAR_DATA *ch, ROOM_DATA *room, char *stink_buf,
CHAR_DATA *smeller);
int can_see_obj (CHAR_DATA *ch, OBJ_DATA *obj);
void room_affect_wearoff (ROOM_DATA *room, int type);
void reset_insert (CHAR_DATA *ch, RESET_DATA *reset);
int is_true_brother (CHAR_DATA *ch, CHAR_DATA *tch);
void m (void);
void mm (char *msg);
void stop_tolls (CHAR_DATA *ch);
int is_human (CHAR_DATA *ch);
int is_toll_paid (CHAR_DATA *ch, int dir);
CHAR_DATA *levy_collector (ROOM_DATA *room, int dir);
void write_stats (void);
int is_same_zone (int zone1, int zone2);
TEXT_DATA *add_text (TEXT_DATA **list, char *filename, char *document_name);
void edit_string (DESCRIPTOR_DATA *d, char *argument);
void save_document (CHAR_DATA *ch, char *document_name);
HELP_DATA *load_help_file (FILE *fp);
void load_help (void);
void load_bhelp (void);
HELP_DATA *is_help (HELP_DATA *list, char *topic);
void write_help (char *filename, HELP_DATA *list);
int doc_parse (CHAR_DATA *ch, char *argument, char **start, int *length,
int *start_line, int *doc_type);
char *get_text_buffer (CHAR_DATA *ch, TEXT_DATA *list, char *text_name);
TEXT_DATA *find_text (TEXT_DATA *list, char *buf);
void load_documents (void);
void write_text (CHAR_DATA *ch, TEXT_DATA *text);
HELP_DATA *add_help_topics (CHAR_DATA *ch, HELP_DATA **list, char *argument);
void delete_help_topics (CHAR_DATA *ch, HELP_DATA **list,
char *argument);
int get_next_coldload_id (int for_a_pc);
void load_clan_registry (void);
char *get_shared_clan (CHAR_DATA *ch, CHAR_DATA *other);
void add_clan_id (CHAR_DATA *ch, char *clan_name, char *clan_flags);
void add_clan_id_string (char *string, char *clan_name, char *clan_flags);
int get_clan (CHAR_DATA *ch, char *clan, int *clan_flags);
int get_clan_in_string (char *string, char *clan, int *clan_flags);
int get_next_clan (char **p, char *clan_name, int *clan_flags);
void add_clan (CHAR_DATA *ch, char *new_clan_name, int clan_flags);
char *add_clan_to_string (char *string, char *new_clan_name, int clan_flags);
void remove_clan (CHAR_DATA *ch, char *old_clan_name);
char *remove_clan_from_string (char *string, char *old_clan_name);
char *value_to_clan_flags (int flags);
int clan_flags_to_value (char *flag_names);
char *display_clan_ranks (CHAR_DATA *ch, CHAR_DATA *observer);
int get_next_leader (char **p, char *clan_name, int *clan_flags);
int is_area_enforcer (CHAR_DATA *ch);
int is_area_leader (CHAR_DATA *ch);
char *get_clan_rank_name (int flags);
CLAN_DATA *get_clandef (char *clan_name);
CLAN_DATA *get_clandef_long (char *clan_long_name);
int is_clan_member (CHAR_DATA *ch, char *clan_name);
void clan_object_equip (CHAR_DATA *ch, OBJ_DATA *obj);
void clan_object_unequip (CHAR_DATA *ch, OBJ_DATA *obj);
int is_clan_member_player (CHAR_DATA *ch, char *clan_name);
int get_clan_long (CHAR_DATA *ch, char *clan_name, int *clan_flags);
int get_clan_long_short (CHAR_DATA *ch, char *clan_name,
int *clan_flags);
int can_subtract_money (CHAR_DATA *ch, int coppers_to_subtract, int currency_type);
void subtract_money (CHAR_DATA *ch, int coppers_to_subtract, int currency_type);
int redefine_objects (OBJ_DATA *proto);
float econ_markup (CHAR_DATA *keeper, OBJ_DATA *obj);
float econ_discount (CHAR_DATA *keeper, OBJ_DATA *obj);
int make_change(int money, CHAR_DATA *keeper, int currency_type, OBJ_DATA *tobj, int cmd, CHAR_DATA *ch);
void add_combat_log (CHAR_DATA *ch, char *msg);
int zone_to_econ_zone (int zone);
int get_bite_value (OBJ_DATA *obj);
void light (CHAR_DATA *ch, OBJ_DATA *obj, int on, int on_off_msg);
void make_height (CHAR_DATA *mob, int range);
void make_frame (CHAR_DATA *mob);
int is_name_in_list (char *name, char *list);
char *vnum_to_liquid_name (int vnum);
int obj_mass (OBJ_DATA *obj);
int carrying (CHAR_DATA *ch);
char *tilde_eliminator (char *string);
char *reference_ip (char *guest_name, char *host);
int check_account_flags (char *host);
void answer_application (CHAR_DATA *ch, char *argument, int cmd);
char *see_person (CHAR_DATA *vict, CHAR_DATA *ch);
char *see_object (CHAR_DATA *vict, OBJ_DATA *obj);
char *see_object_in (CHAR_DATA *vict, OBJ_DATA *obj);
void menu_choice (DESCRIPTOR_DATA *d);
malloc_t alloc (int bytes, int dtype);
/********** LUA PROTOTYPES *******/
struct larg_data *larg_userdata_list;
void larg_trigger_time_select(void);
void larg_room_trigger_time(ROOM_DATA *targ, CHAR_DATA *ch_targ);
void larg_obj_trigger_time(OBJ_DATA *targ, CHAR_DATA *tch);
void larg_mob_trigger_time(CHAR_DATA *targ, CHAR_DATA *tch);
TRIGGER_DATA *larg_trigger_room_create(int type, char *script, int rvnum, int source);
TRIGGER_DATA *larg_trigger_obj_create(int type, char *script, int ovnum, int source);
TRIGGER_DATA *larg_trigger_mob_create(int type, char *script, int mvnum, int source);
void larg_trigger_add(TRIGGER_DATA *t, TRIGGER_DATA **l);
void larg_trigger_remove(TRIGGER_DATA *t);
void larg_pushuserdata(lua_State *Lvm, void *data, int type);
int larg_execute_script(char *script, char *func, int source, int me, int room, CHAR_DATA *ch_targ, OBJ_DATA *obj, CHAR_DATA *ch, char *txt);
void larg_setup_room_triggers(FILE *fl, ROOM_DATA *room);
void larg_setup_obj_triggers(FILE *fl, OBJ_DATA *obj);
void larg_setup_mob_triggers(FILE *fl, CHAR_DATA *tch);
void do_rscript_add (CHAR_DATA *ch, char *argument, int cmd);
void larg_room_script_add (CHAR_DATA *ch, char *argument, ROOM_DATA *room);
void do_rscript_del (CHAR_DATA *ch, char *argument, int cmd);
void larg_room_script_delete (CHAR_DATA *ch, char *argument, ROOM_DATA *room);
void do_rscript_list (CHAR_DATA *ch, char *argument, int cmd);
void larg_room_script_list(CHAR_DATA *ch, char *argument, ROOM_DATA *room);
void larg_mo_script_delete (TRIGGER_DATA *targ, TRIGGER_DATA *list_scrpt);
int larg_echo_send_room(lua_State *Lvm);