diff options
Diffstat (limited to 'src/char')
32 files changed, 150 insertions, 130 deletions
diff --git a/src/char/char.c b/src/char/char.c index 3e24ceae0..4741c3115 100644 --- a/src/char/char.c +++ b/src/char/char.c @@ -87,6 +87,7 @@ char char_reg_str_db[32] = "char_reg_str_db"; char char_reg_num_db[32] = "char_reg_num_db"; struct char_interface char_s; +struct char_interface *chr; // show loading/saving messages int save_log = 1; diff --git a/src/char/char.h b/src/char/char.h index 1f5df2750..e79cc1898 100644 --- a/src/char/char.h +++ b/src/char/char.h @@ -5,7 +5,7 @@ #ifndef CHAR_CHAR_H #define CHAR_CHAR_H -#include "common/cbasetypes.h" +#include "common/hercules.h" #include "common/core.h" // CORE_ST_LAST #include "common/db.h" #include "common/mmo.h" @@ -64,57 +64,6 @@ enum { TABLE_GUILD_STORAGE, }; -#ifdef HERCULES_CORE -extern int char_name_option; -extern char char_name_letters[]; -extern bool char_gm_read; -extern int autosave_interval; -extern int save_log; -extern char db_path[]; -extern char char_db[256]; -extern char scdata_db[256]; -extern char cart_db[256]; -extern char inventory_db[256]; -extern char charlog_db[256]; -extern char storage_db[256]; -extern char interlog_db[256]; -extern char skill_db[256]; -extern char memo_db[256]; -extern char guild_db[256]; -extern char guild_alliance_db[256]; -extern char guild_castle_db[256]; -extern char guild_expulsion_db[256]; -extern char guild_member_db[256]; -extern char guild_position_db[256]; -extern char guild_skill_db[256]; -extern char guild_storage_db[256]; -extern char party_db[256]; -extern char pet_db[256]; -extern char mail_db[256]; -extern char auction_db[256]; -extern char quest_db[256]; -extern char homunculus_db[256]; -extern char skill_homunculus_db[256]; -extern char mercenary_db[256]; -extern char mercenary_owner_db[256]; -extern char ragsrvinfo_db[256]; -extern char elemental_db[256]; -extern char acc_reg_num_db[32]; -extern char acc_reg_str_db[32]; -extern char char_reg_str_db[32]; -extern char char_reg_num_db[32]; - -extern int db_use_sql_item_db; -extern int db_use_sql_mob_db; -extern int db_use_sql_mob_skill_db; - -extern int guild_exp_rate; -extern int log_inter; - -void char_load_defaults(); -void char_defaults(); -#endif // HERCULES_CORE - struct char_auth_node { int account_id; int char_id; @@ -310,6 +259,57 @@ struct char_interface { int (*config_read) (const char* cfgName); }; -struct char_interface *chr; +#ifdef HERCULES_CORE +extern int char_name_option; +extern char char_name_letters[]; +extern bool char_gm_read; +extern int autosave_interval; +extern int save_log; +extern char db_path[]; +extern char char_db[256]; +extern char scdata_db[256]; +extern char cart_db[256]; +extern char inventory_db[256]; +extern char charlog_db[256]; +extern char storage_db[256]; +extern char interlog_db[256]; +extern char skill_db[256]; +extern char memo_db[256]; +extern char guild_db[256]; +extern char guild_alliance_db[256]; +extern char guild_castle_db[256]; +extern char guild_expulsion_db[256]; +extern char guild_member_db[256]; +extern char guild_position_db[256]; +extern char guild_skill_db[256]; +extern char guild_storage_db[256]; +extern char party_db[256]; +extern char pet_db[256]; +extern char mail_db[256]; +extern char auction_db[256]; +extern char quest_db[256]; +extern char homunculus_db[256]; +extern char skill_homunculus_db[256]; +extern char mercenary_db[256]; +extern char mercenary_owner_db[256]; +extern char ragsrvinfo_db[256]; +extern char elemental_db[256]; +extern char acc_reg_num_db[32]; +extern char acc_reg_str_db[32]; +extern char char_reg_str_db[32]; +extern char char_reg_num_db[32]; + +extern int db_use_sql_item_db; +extern int db_use_sql_mob_db; +extern int db_use_sql_mob_skill_db; + +extern int guild_exp_rate; +extern int log_inter; + +void char_load_defaults(); +void char_defaults(); +#endif // HERCULES_CORE + +HPShared struct char_interface *chr; #endif /* CHAR_CHAR_H */ diff --git a/src/char/geoip.c b/src/char/geoip.c index 8c415b6bf..65bb2bdd4 100644 --- a/src/char/geoip.c +++ b/src/char/geoip.c @@ -17,6 +17,7 @@ struct s_geoip geoip_data; struct geoip_interface geoip_s; +struct geoip_interface *geoip; /* [Dekamaster/Nightroad] */ #define GEOIP_MAX_COUNTRIES 255 diff --git a/src/char/geoip.h b/src/char/geoip.h index 4d39011aa..5a6abf68a 100644 --- a/src/char/geoip.h +++ b/src/char/geoip.h @@ -5,7 +5,7 @@ #ifndef CHAR_GEOIP_H #define CHAR_GEOIP_H -#include "common/cbasetypes.h" +#include "common/hercules.h" /** * GeoIP information @@ -26,10 +26,10 @@ struct geoip_interface { void (*init) (void); }; -struct geoip_interface *geoip; - #ifdef HERCULES_CORE void geoip_defaults(void); #endif // HERCULES_CORE +HPShared struct geoip_interface *geoip; + #endif /* CHAR_GEOIP_H */ diff --git a/src/char/int_auction.c b/src/char/int_auction.c index 8d51777fb..67c83ca22 100644 --- a/src/char/int_auction.c +++ b/src/char/int_auction.c @@ -25,6 +25,7 @@ #include <stdlib.h> struct inter_auction_interface inter_auction_s; +struct inter_auction_interface *inter_auction; static int inter_auction_count(int char_id, bool buy) { diff --git a/src/char/int_auction.h b/src/char/int_auction.h index 610042b9a..37fd48264 100644 --- a/src/char/int_auction.h +++ b/src/char/int_auction.h @@ -4,13 +4,10 @@ #ifndef CHAR_INT_AUCTION_H #define CHAR_INT_AUCTION_H +#include "common/hercules.h" #include "common/db.h" #include "common/mmo.h" -#ifdef HERCULES_CORE -void inter_auction_defaults(void); -#endif // HERCULES_CORE - /** * inter_auction_interface interface **/ @@ -27,6 +24,10 @@ struct inter_auction_interface { void (*sql_final) (void); }; -struct inter_auction_interface *inter_auction; +#ifdef HERCULES_CORE +void inter_auction_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_auction_interface *inter_auction; #endif /* CHAR_INT_AUCTION_H */ diff --git a/src/char/int_elemental.c b/src/char/int_elemental.c index eff84c57d..e7708179a 100644 --- a/src/char/int_elemental.c +++ b/src/char/int_elemental.c @@ -22,6 +22,7 @@ #include <stdlib.h> struct inter_elemental_interface inter_elemental_s; +struct inter_elemental_interface *inter_elemental; bool mapif_elemental_save(struct s_elemental* ele) { bool flag = true; diff --git a/src/char/int_elemental.h b/src/char/int_elemental.h index 7385fc496..0fae74cd0 100644 --- a/src/char/int_elemental.h +++ b/src/char/int_elemental.h @@ -4,11 +4,7 @@ #ifndef CHAR_INT_ELEMENTAL_H #define CHAR_INT_ELEMENTAL_H -#include "common/cbasetypes.h" - -#ifdef HERCULES_CORE -void inter_elemental_defaults(void); -#endif // HERCULES_CORE +#include "common/hercules.h" /** * inter_elemental_interface interface @@ -19,6 +15,10 @@ struct inter_elemental_interface { int (*parse_frommap) (int fd); }; -struct inter_elemental_interface *inter_elemental; +#ifdef HERCULES_CORE +void inter_elemental_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_elemental_interface *inter_elemental; #endif /* CHAR_INT_ELEMENTAL_H */ diff --git a/src/char/int_guild.c b/src/char/int_guild.c index 24561fe21..54355161d 100644 --- a/src/char/int_guild.c +++ b/src/char/int_guild.c @@ -35,6 +35,7 @@ #define GUILD_ALLIANCE_REMOVE 0x08 struct inter_guild_interface inter_guild_s; +struct inter_guild_interface *inter_guild; static const char dataToHex[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'}; diff --git a/src/char/int_guild.h b/src/char/int_guild.h index eb4c930fc..7a5ed3aae 100644 --- a/src/char/int_guild.h +++ b/src/char/int_guild.h @@ -23,10 +23,6 @@ enum { GS_REMOVE = 0x8000, }; -#ifdef HERCULES_CORE -void inter_guild_defaults(void); -#endif // HERCULES_CORE - /** * inter_guild interface **/ @@ -59,6 +55,10 @@ struct inter_guild_interface { int (*broken) (int guild_id); }; -struct inter_guild_interface *inter_guild; +#ifdef HERCULES_CORE +void inter_guild_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_guild_interface *inter_guild; #endif /* CHAR_INT_GUILD_H */ diff --git a/src/char/int_homun.c b/src/char/int_homun.c index eda2afe69..be72ecd58 100644 --- a/src/char/int_homun.c +++ b/src/char/int_homun.c @@ -22,6 +22,7 @@ #include <stdlib.h> struct inter_homunculus_interface inter_homunculus_s; +struct inter_homunculus_interface *inter_homunculus; int inter_homunculus_sql_init(void) { diff --git a/src/char/int_homun.h b/src/char/int_homun.h index 113c6d340..d5a35283f 100644 --- a/src/char/int_homun.h +++ b/src/char/int_homun.h @@ -4,13 +4,7 @@ #ifndef CHAR_INT_HOMUN_H #define CHAR_INT_HOMUN_H -#include "common/cbasetypes.h" - -struct s_homunculus; - -#ifdef HERCULES_CORE -void inter_homunculus_defaults(void); -#endif // HERCULES_CORE +#include "common/hercules.h" /** * inter_homunculus interface @@ -21,6 +15,10 @@ struct inter_homunculus_interface { int (*parse_frommap) (int fd); }; -struct inter_homunculus_interface *inter_homunculus; +#ifdef HERCULES_CORE +void inter_homunculus_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_homunculus_interface *inter_homunculus; #endif /* CHAR_INT_HOMUN_H */ diff --git a/src/char/int_mail.c b/src/char/int_mail.c index d4bfe14e4..854fe31b1 100644 --- a/src/char/int_mail.c +++ b/src/char/int_mail.c @@ -22,6 +22,7 @@ #include <stdlib.h> struct inter_mail_interface inter_mail_s; +struct inter_mail_interface *inter_mail; static int inter_mail_fromsql(int char_id, struct mail_data* md) { diff --git a/src/char/int_mail.h b/src/char/int_mail.h index 8e6acf846..d15b264b5 100644 --- a/src/char/int_mail.h +++ b/src/char/int_mail.h @@ -4,16 +4,12 @@ #ifndef CHAR_INT_MAIL_H #define CHAR_INT_MAIL_H -#include "common/cbasetypes.h" +#include "common/hercules.h" struct item; struct mail_data; struct mail_message; -#ifdef HERCULES_CORE -void inter_mail_defaults(void); -#endif // HERCULES_CORE - /** * inter_mail interface **/ @@ -28,6 +24,10 @@ struct inter_mail_interface { void (*sendmail) (int send_id, const char* send_name, int dest_id, const char* dest_name, const char* title, const char* body, int zeny, struct item *item); }; -struct inter_mail_interface *inter_mail; +#ifdef HERCULES_CORE +void inter_mail_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_mail_interface *inter_mail; #endif /* CHAR_INT_MAIL_H */ diff --git a/src/char/int_mercenary.c b/src/char/int_mercenary.c index 02082aa13..dd40a0224 100644 --- a/src/char/int_mercenary.c +++ b/src/char/int_mercenary.c @@ -23,6 +23,7 @@ #include <stdlib.h> struct inter_mercenary_interface inter_mercenary_s; +struct inter_mercenary_interface *inter_mercenary; bool inter_mercenary_owner_fromsql(int char_id, struct mmo_charstatus *status) { diff --git a/src/char/int_mercenary.h b/src/char/int_mercenary.h index 632a9ab37..0d52b02e1 100644 --- a/src/char/int_mercenary.h +++ b/src/char/int_mercenary.h @@ -4,14 +4,10 @@ #ifndef CHAR_INT_MERCENARY_H #define CHAR_INT_MERCENARY_H -#include "common/cbasetypes.h" +#include "common/hercules.h" struct mmo_charstatus; -#ifdef HERCULES_CORE -void inter_mercenary_defaults(void); -#endif // HERCULES_CORE - /** * inter_mercenary interface **/ @@ -24,6 +20,10 @@ struct inter_mercenary_interface { int (*parse_frommap) (int fd); }; -struct inter_mercenary_interface *inter_mercenary; +#ifdef HERCULES_CORE +void inter_mercenary_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_mercenary_interface *inter_mercenary; #endif /* CHAR_INT_MERCENARY_H */ diff --git a/src/char/int_party.c b/src/char/int_party.c index 3b857318c..aedcb8535 100644 --- a/src/char/int_party.c +++ b/src/char/int_party.c @@ -24,6 +24,7 @@ #include <stdlib.h> struct inter_party_interface inter_party_s; +struct inter_party_interface *inter_party; //Updates party's level range and unsets even share if broken. static int inter_party_check_lv(struct party_data *p) { diff --git a/src/char/int_party.h b/src/char/int_party.h index 99ee5b13e..af3877549 100644 --- a/src/char/int_party.h +++ b/src/char/int_party.h @@ -4,6 +4,7 @@ #ifndef CHAR_INT_PARTY_H #define CHAR_INT_PARTY_H +#include "common/hercules.h" #include "common/db.h" #include "common/mmo.h" @@ -24,10 +25,6 @@ struct party_data { unsigned char size; //Total size of party. }; -#ifdef HERCULES_CORE -void inter_party_defaults(void); -#endif // HERCULES_CORE - /** * inter_party interface **/ @@ -49,6 +46,10 @@ struct inter_party_interface { int (*CharOffline) (int char_id, int party_id); }; -struct inter_party_interface *inter_party; +#ifdef HERCULES_CORE +void inter_party_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_party_interface *inter_party; #endif /* CHAR_INT_PARTY_H */ diff --git a/src/char/int_pet.c b/src/char/int_pet.c index 22fe2dcc2..97b2fb6a4 100644 --- a/src/char/int_pet.c +++ b/src/char/int_pet.c @@ -22,6 +22,7 @@ #include <stdlib.h> struct inter_pet_interface inter_pet_s; +struct inter_pet_interface *inter_pet; //--------------------------------------------------------- int inter_pet_tosql(int pet_id, struct s_pet* p) diff --git a/src/char/int_pet.h b/src/char/int_pet.h index 69e440781..213c377ee 100644 --- a/src/char/int_pet.h +++ b/src/char/int_pet.h @@ -4,11 +4,9 @@ #ifndef CHAR_INT_PET_H #define CHAR_INT_PET_H -struct s_pet; +#include "common/hercules.h" -#ifdef HERCULES_CORE -void inter_pet_defaults(void); -#endif // HERCULES_CORE +struct s_pet; /** * inter_pet interface @@ -23,6 +21,10 @@ struct inter_pet_interface { int (*parse_frommap) (int fd); }; -struct inter_pet_interface *inter_pet; +#ifdef HERCULES_CORE +void inter_pet_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_pet_interface *inter_pet; #endif /* CHAR_INT_PET_H */ diff --git a/src/char/int_quest.c b/src/char/int_quest.c index cf9b9c172..fcd56230b 100644 --- a/src/char/int_quest.c +++ b/src/char/int_quest.c @@ -22,6 +22,7 @@ #include <stdlib.h> struct inter_quest_interface inter_quest_s; +struct inter_quest_interface *inter_quest; /** * Loads the entire questlog for a character. diff --git a/src/char/int_quest.h b/src/char/int_quest.h index ee04388fc..c2393d103 100644 --- a/src/char/int_quest.h +++ b/src/char/int_quest.h @@ -4,9 +4,7 @@ #ifndef CHAR_INT_QUEST_H #define CHAR_INT_QUEST_H -#ifdef HERCULES_CORE -void inter_quest_defaults(void); -#endif // HERCULES_CORE +#include "common/hercules.h" /** * inter_quest interface @@ -15,7 +13,11 @@ struct inter_quest_interface { int (*parse_frommap) (int fd); }; -struct inter_quest_interface *inter_quest; +#ifdef HERCULES_CORE +void inter_quest_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_quest_interface *inter_quest; #endif /* CHAR_INT_QUEST_H */ diff --git a/src/char/int_storage.c b/src/char/int_storage.c index a12d9fe17..3a8a6a169 100644 --- a/src/char/int_storage.c +++ b/src/char/int_storage.c @@ -24,6 +24,7 @@ #define STORAGE_MEMINC 16 struct inter_storage_interface inter_storage_s; +struct inter_storage_interface *inter_storage; /// Save storage data to sql int inter_storage_tosql(int account_id, struct storage_data* p) diff --git a/src/char/int_storage.h b/src/char/int_storage.h index 11a16de83..f02decf49 100644 --- a/src/char/int_storage.h +++ b/src/char/int_storage.h @@ -4,13 +4,11 @@ #ifndef CHAR_INT_STORAGE_H #define CHAR_INT_STORAGE_H +#include "common/hercules.h" + struct storage_data; struct guild_storage; -#ifdef HERCULES_CORE -void inter_storage_defaults(void); -#endif // HERCULES_CORE - /** * inter_storage interface **/ @@ -26,6 +24,10 @@ struct inter_storage_interface { int (*parse_frommap) (int fd); }; -struct inter_storage_interface *inter_storage; +#ifdef HERCULES_CORE +void inter_storage_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_storage_interface *inter_storage; #endif /* CHAR_INT_STORAGE_H */ diff --git a/src/char/inter.c b/src/char/inter.c index eceb649f3..548b24ee8 100644 --- a/src/char/inter.c +++ b/src/char/inter.c @@ -36,6 +36,7 @@ #define WISDELLIST_MAX 256 // Number of elements in the list Delete data Wis struct inter_interface inter_s; +struct inter_interface *inter; int char_server_port = 3306; char char_server_ip[32] = "127.0.0.1"; diff --git a/src/char/inter.h b/src/char/inter.h index 2e89a685b..743f7e2f1 100644 --- a/src/char/inter.h +++ b/src/char/inter.h @@ -5,20 +5,12 @@ #ifndef CHAR_INTER_H #define CHAR_INTER_H -#include "common/cbasetypes.h" +#include "common/hercules.h" #include "common/db.h" #include "common/sql.h" #include <stdarg.h> -struct accreg; - -#ifdef HERCULES_CORE -extern unsigned int party_share_level; - -void inter_defaults(void); -#endif // HERCULES_CORE - /** * inter interface **/ @@ -44,6 +36,12 @@ struct inter_interface { void (*final) (void); }; -struct inter_interface *inter; +#ifdef HERCULES_CORE +extern unsigned int party_share_level; + +void inter_defaults(void); +#endif // HERCULES_CORE + +HPShared struct inter_interface *inter; #endif /* CHAR_INTER_H */ diff --git a/src/char/loginif.c b/src/char/loginif.c index 4eac78774..d55701aaa 100644 --- a/src/char/loginif.c +++ b/src/char/loginif.c @@ -20,6 +20,7 @@ #include <string.h> struct loginif_interface loginif_s; +struct loginif_interface *loginif; /// Resets all the data. void loginif_reset(void) diff --git a/src/char/loginif.h b/src/char/loginif.h index 548eaff02..44cf1ebf6 100644 --- a/src/char/loginif.h +++ b/src/char/loginif.h @@ -5,7 +5,7 @@ #ifndef CHAR_LOGINIF_H #define CHAR_LOGINIF_H -#include "common/cbasetypes.h" +#include "common/hercules.h" struct char_session_data; @@ -28,10 +28,10 @@ struct loginif_interface { void (*connect_to_server) (void); }; -struct loginif_interface *loginif; - #ifdef HERCULES_CORE void loginif_defaults(void); #endif // HERCULES_CORE +HPShared struct loginif_interface *loginif; + #endif /* CHAR_LOGINIF_H */ diff --git a/src/char/mapif.c b/src/char/mapif.c index 92506cd49..eb5a6690a 100644 --- a/src/char/mapif.c +++ b/src/char/mapif.c @@ -189,6 +189,7 @@ void mapif_namechange_ack(int fd, int account_id, int char_id, int type, int fla int mapif_parse_NameChangeRequest(int fd); struct mapif_interface mapif_s; +struct mapif_interface *mapif; void mapif_defaults(void) { mapif = &mapif_s; diff --git a/src/char/mapif.h b/src/char/mapif.h index 6b015d155..a986cd46f 100644 --- a/src/char/mapif.h +++ b/src/char/mapif.h @@ -5,7 +5,7 @@ #ifndef CHAR_MAPIF_H #define CHAR_MAPIF_H -#include "common/cbasetypes.h" +#include "common/hercules.h" #include "common/mmo.h" struct WisData; @@ -184,10 +184,10 @@ struct mapif_interface { int (*parse_NameChangeRequest) (int fd); }; -struct mapif_interface *mapif; - #ifdef HERCULES_CORE void mapif_defaults(void); #endif // HERCULES_CORE +HPShared struct mapif_interface *mapif; + #endif /* CHAR_MAPIF_H */ diff --git a/src/char/pincode.c b/src/char/pincode.c index 5085349cc..f5992de83 100644 --- a/src/char/pincode.c +++ b/src/char/pincode.c @@ -19,6 +19,7 @@ #include <stdlib.h> struct pincode_interface pincode_s; +struct pincode_interface *pincode; void pincode_handle (int fd, struct char_session_data* sd) { struct online_char_data* character; diff --git a/src/char/pincode.h b/src/char/pincode.h index 01f6c7bf9..3cda11768 100644 --- a/src/char/pincode.h +++ b/src/char/pincode.h @@ -5,7 +5,7 @@ #ifndef CHAR_PINCODE_H #define CHAR_PINCODE_H -#include "common/cbasetypes.h" +#include "common/hercules.h" struct char_session_data; @@ -42,10 +42,10 @@ struct pincode_interface { bool (*config_read) (char *w1, char *w2); }; -struct pincode_interface *pincode; - #ifdef HERCULES_CORE void pincode_defaults(void); #endif // HERCULES_CORE +HPShared struct pincode_interface *pincode; + #endif /* CHAR_PINCODE_H */ |