summaryrefslogtreecommitdiff
path: root/src/map/map.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/map.h')
-rw-r--r--src/map/map.h109
1 files changed, 49 insertions, 60 deletions
diff --git a/src/map/map.h b/src/map/map.h
index 6fbb36cdc..51678d590 100644
--- a/src/map/map.h
+++ b/src/map/map.h
@@ -10,6 +10,11 @@
#include "../common/mapindex.h"
#include "../common/db.h"
+/**
+ * [ro-resources.net]
+ **/
+#include "./config/Core.h"
+
#include <stdarg.h>
struct npc_data;
@@ -68,17 +73,17 @@ enum E_MAPSERVER_ST
#define JOBL_UPPER 0x1000 //4096
#define JOBL_BABY 0x2000 //8192
-#define JOBL_3 0x4000 //16384
+#define JOBL_THIRD 0x4000 //16384
//for filtering and quick checking.
#define MAPID_UPPERMASK 0x0fff
#define MAPID_BASEMASK 0x00ff
+#define MAPID_THIRDMASK (JOBL_THIRD|MAPID_UPPERMASK)
//First Jobs
//Note the oddity of the novice:
//Super Novices are considered the 2-1 version of the novice! Novices are considered a first class type, too...
enum {
MAPID_NOVICE = 0x0,
-//1st classes
MAPID_SWORDMAN,
MAPID_MAGE,
MAPID_ARCHER,
@@ -92,7 +97,7 @@ enum {
MAPID_XMAS,
MAPID_SUMMER,
//2_1 classes
- MAPID_SUPER_NOVICE = JOBL_2_1|MAPID_NOVICE,
+ MAPID_SUPER_NOVICE = JOBL_2_1|0x0,
MAPID_KNIGHT,
MAPID_WIZARD,
MAPID_HUNTER,
@@ -101,29 +106,15 @@ enum {
MAPID_ASSASSIN,
MAPID_STAR_GLADIATOR,
//2_2 classes
- MAPID_CRUSADER = JOBL_2_2|MAPID_SWORDMAN,
+ MAPID_CRUSADER = JOBL_2_2|0x1,
MAPID_SAGE,
MAPID_BARDDANCER,
MAPID_MONK,
MAPID_ALCHEMIST,
MAPID_ROGUE,
MAPID_SOUL_LINKER,
-//3_1 classes
- MAPID_RUNE_KNIGHT = JOBL_3|JOBL_2_1|MAPID_SWORDMAN,
- MAPID_WARLOCK,
- MAPID_RANGER,
- MAPID_ARCHBISHOP,
- MAPID_MECHANIC,
- MAPID_GUILLOTINE_CROSS,
-//3_2 classes
- MAPID_ROYAL_GUARD = JOBL_3|JOBL_2_2|MAPID_SWORDMAN,
- MAPID_SORCERER,
- MAPID_MINSTRELWANDERER,
- MAPID_SURA,
- MAPID_GENETIC,
- MAPID_SHADOW_CHASER,
-//1st, advanced
- MAPID_NOVICE_HIGH = JOBL_UPPER|MAPID_NOVICE,
+//1-1, advanced
+ MAPID_NOVICE_HIGH = JOBL_UPPER|0x0,
MAPID_SWORDMAN_HIGH,
MAPID_MAGE_HIGH,
MAPID_ARCHER_HIGH,
@@ -131,35 +122,21 @@ enum {
MAPID_MERCHANT_HIGH,
MAPID_THIEF_HIGH,
//2_1 advanced
- MAPID_LORD_KNIGHT = JOBL_UPPER|JOBL_2_1|MAPID_SWORDMAN,
+ MAPID_LORD_KNIGHT = JOBL_UPPER|JOBL_2_1|0x1,
MAPID_HIGH_WIZARD,
MAPID_SNIPER,
MAPID_HIGH_PRIEST,
MAPID_WHITESMITH,
MAPID_ASSASSIN_CROSS,
//2_2 advanced
- MAPID_PALADIN = JOBL_UPPER|JOBL_2_2|MAPID_SWORDMAN,
+ MAPID_PALADIN = JOBL_UPPER|JOBL_2_2|0x1,
MAPID_PROFESSOR,
MAPID_CLOWNGYPSY,
MAPID_CHAMPION,
MAPID_CREATOR,
MAPID_STALKER,
-//3_1 advanced
- MAPID_RUNE_KNIGHT_H = JOBL_3|JOBL_UPPER|JOBL_2_1|MAPID_SWORDMAN,
- MAPID_WARLOCK_H,
- MAPID_RANGER_H,
- MAPID_ARCHBISHOP_H,
- MAPID_MECHANIC_H,
- MAPID_GUILLOTINE_CROSS_H,
-//3_2 advanced
- MAPID_ROYAL_GUARD_H = JOBL_3|JOBL_UPPER|JOBL_2_2|MAPID_SWORDMAN,
- MAPID_SORCERER_H,
- MAPID_MINSTRELWANDERER_H,
- MAPID_SURA_H,
- MAPID_GENETIC_H,
- MAPID_SHADOW_CHASER_H,
-//1st baby
- MAPID_BABY = JOBL_BABY|MAPID_NOVICE,
+//1-1 baby
+ MAPID_BABY = JOBL_BABY|0x0,
MAPID_BABY_SWORDMAN,
MAPID_BABY_MAGE,
MAPID_BABY_ARCHER,
@@ -168,7 +145,7 @@ enum {
MAPID_BABY_THIEF,
MAPID_BABY_TAEKWON,
//2_1 baby
- MAPID_SUPER_BABY = JOBL_BABY|JOBL_2_1|MAPID_NOVICE,
+ MAPID_SUPER_BABY = JOBL_BABY|JOBL_2_1|0x0,
MAPID_BABY_KNIGHT,
MAPID_BABY_WIZARD,
MAPID_BABY_HUNTER,
@@ -177,27 +154,38 @@ enum {
MAPID_BABY_ASSASSIN,
MAPID_BABY_STAR_GLADIATOR,
//2_2 baby
- MAPID_BABY_CRUSADER = JOBL_BABY|JOBL_2_2|MAPID_SWORDMAN,
+ MAPID_BABY_CRUSADER = JOBL_BABY|JOBL_2_2|0x1,
MAPID_BABY_SAGE,
MAPID_BABY_BARDDANCER,
MAPID_BABY_MONK,
MAPID_BABY_ALCHEMIST,
MAPID_BABY_ROGUE,
MAPID_BABY_SOUL_LINKER,
-//3_1 baby
- MAPID_BABY_RUNE = JOBL_3|JOBL_BABY|JOBL_2_1|MAPID_SWORDMAN,
- MAPID_BABY_WARLOCK,
- MAPID_BABY_RANGER,
- MAPID_BABY_BISHOP,
- MAPID_BABY_MECHANIC,
- MAPID_BABY_CROSS,
-//3_2 baby
- MAPID_BABY_GUARD = JOBL_3|JOBL_BABY|JOBL_2_2|MAPID_SWORDMAN,
- MAPID_BABY_SORCERER,
- MAPID_BABY_MINSTRELWANDERER,
- MAPID_BABY_SURA,
- MAPID_BABY_GENETIC,
- MAPID_BABY_CHASER
+ MAPID_RUNE_KNIGHT = JOBL_THIRD|JOBL_2_1|0x1,
+ MAPID_WARLOCK,
+ MAPID_RANGER,
+ MAPID_ARCH_BISHOP,
+ MAPID_MECHANIC,
+ MAPID_GUILLOTINE_CROSS,
+ MAPID_ROYAL_GUARD = JOBL_THIRD|JOBL_2_2|0x1,
+ MAPID_SORCERER,
+ MAPID_MINSTRELWANDERER,
+ MAPID_SURA,
+ MAPID_GENETIC,
+ MAPID_SHADOW_CHASER,
+ MAPID_RUNE_KNIGHT_T = JOBL_THIRD|JOBL_UPPER|JOBL_2_1|0x1,
+ MAPID_WARLOCK_T,
+ MAPID_RANGER_T,
+ MAPID_ARCH_BISHOP_T,
+ MAPID_MECHANIC_T,
+ MAPID_GUILLOTINE_CROSS_T,
+ MAPID_ROYAL_GUARD_T = JOBL_THIRD|JOBL_UPPER|JOBL_2_2|0x1,
+ MAPID_SORCERER_T,
+ MAPID_MINSTRELWANDERER_T,
+ MAPID_SURA_T,
+ MAPID_GENETIC_T,
+ MAPID_SHADOW_CHASER_T,
+
};
//Max size for inputs to Graffiti, Talkie Box and Vending text prompts
@@ -313,7 +301,7 @@ struct spawn_data {
signed short xs,ys;
unsigned short num; //Number of mobs using this structure
unsigned short active; //Number of mobs that are already spawned (for mob_remove_damaged: no)
- unsigned int delay1,delay2; //Min delay before respawning after spawn/death
+ unsigned int delay1,delay2; //Spawn delay (fixed base + random variance)
struct {
unsigned int size :2; //Holds if mob has to be tiny/large
unsigned int ai :2; //Holds if mob is special ai.
@@ -380,7 +368,7 @@ enum _sp {
SP_WEAPON_ATK,SP_WEAPON_ATK_RATE, // 1081-1082
SP_DELAYRATE,SP_HP_DRAIN_RATE_RACE,SP_SP_DRAIN_RATE_RACE, // 1083-1085
SP_IGNORE_MDEF_RATE,SP_IGNORE_DEF_RATE,SP_SKILL_HEAL2,SP_ADDEFF_ONSKILL, //1086-1089
- SP_ADD_HEAL_RATE,SP_ADD_HEAL2_RATE,SP_FIXEDCASTRATE,SP_BASE_MATK,SP_WEAPON_MATK,SP_EQUIPMENT_MATK, //1090-1095
+ SP_ADD_HEAL_RATE,SP_ADD_HEAL2_RATE, //1090-1091
SP_RESTART_FULL_RECOVER=2000,SP_NO_CASTCANCEL,SP_NO_SIZEFIX,SP_NO_MAGIC_DAMAGE,SP_NO_WEAPON_DAMAGE,SP_NO_GEMSTONE, // 2000-2005
SP_NO_CASTCANCEL2,SP_NO_MISC_DAMAGE,SP_UNBREAKABLE_WEAPON,SP_UNBREAKABLE_ARMOR, SP_UNBREAKABLE_HELM, // 2006-2010
@@ -520,7 +508,10 @@ struct map_data {
unsigned fireworks : 1;
unsigned sakura : 1; // [Valaris]
unsigned leaves : 1; // [Valaris]
- unsigned rain : 1; // [Valaris]
+ /**
+ * No longer available, keeping here just in case it's back someday. [Ind]
+ **/
+ //unsigned rain : 1; // [Valaris]
unsigned nogo : 1; // [Valaris]
unsigned nobaseexp : 1; // [Lorky] added by Lupus
unsigned nojobexp : 1; // [Lorky]
@@ -687,7 +678,6 @@ int map_random_dir(struct block_list *bl, short *x, short *y); // [Skotlex]
int cleanup_sub(struct block_list *bl, va_list ap);
-void map_helpscreen(int flag); // [Valaris]
int map_delmap(char* mapname);
void map_flags_init(void);
@@ -711,8 +701,6 @@ extern char *SCRIPT_CONF_NAME;
extern char *MSG_CONF_NAME;
extern char *GRF_PATH_FILENAME;
-extern char *map_server_dns;
-
//Useful typedefs from jA [Skotlex]
typedef struct map_session_data TBL_PC;
typedef struct npc_data TBL_NPC;
@@ -741,6 +729,7 @@ extern Sql* logmysql_handle;
extern char item_db_db[32];
extern char item_db2_db[32];
+extern char item_db_re_db[32];
extern char mob_db_db[32];
extern char mob_db2_db[32];