summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortechnote24 <technote24@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-04-20 13:06:34 +0000
committertechnote24 <technote24@54d463be-8e91-2dee-dedb-b68131a5f0ec>2012-04-20 13:06:34 +0000
commit1b3bd9ff1725a68d66fd4015c60d6fe28e4b2334 (patch)
treeae2b21a31c0beb629068355d3e12e659e7ec263d /src
parentcbd95cc5a9a8c9af49d5d2f096ece46bf4d69071 (diff)
downloadhercules-1b3bd9ff1725a68d66fd4015c60d6fe28e4b2334.tar.gz
hercules-1b3bd9ff1725a68d66fd4015c60d6fe28e4b2334.tar.bz2
hercules-1b3bd9ff1725a68d66fd4015c60d6fe28e4b2334.tar.xz
hercules-1b3bd9ff1725a68d66fd4015c60d6fe28e4b2334.zip
=General
*Added CANNONBALL and THROWWEAPON item types as ammo types. -IT_THROWWEAPON will be removed soon as all ammo equiptable -items should be fully treated as ammo type in rAthena and -not as a item type. =Jobs *Added a config to set max stat limit for baby 3rd's. Default is 108. *Kagerou/Oboro stat limit is now set to whatever the limit is set to for 3rd jobs. -Which is the default 120. *Added item job masks for Gangsi, Death Knight, Dark Collector, and Kagerou/Oboro. -Note: Backwards compatibility was added to allow Kagerou/Oboro to use all the equips -the Ninja job can use to prevent needing to edit a chunk of the item database. -The job also has its own exclusive mask which will be used on their exclusive equips soon. *Kagerou/Oboro jobs can now duel weld daggers. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15882 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r--src/map/battle.c3
-rw-r--r--src/map/battle.h2
-rw-r--r--src/map/itemdb.c11
-rw-r--r--src/map/pc.c3
-rw-r--r--src/map/pc.h6
5 files changed, 20 insertions, 5 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index d1e47033f..48f8e1cab 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -5017,7 +5017,8 @@ static const struct _battle_data {
/**
* rAthena
**/
- { "max_third_parameter", &battle_config.max_third_parameter, 20, 0, INT_MAX, },
+ { "max_third_parameter", &battle_config.max_third_parameter, 120, 10, 10000, },
+ { "max_baby_third_parameter", &battle_config.max_baby_third_parameter, 108, 10, 10000, },
{ "atcommand_max_stat_bypass", &battle_config.atcommand_max_stat_bypass, 0, 0, 100, },
{ "skill_amotion_leniency", &battle_config.skill_amotion_leniency, 90, 0, 100 },
};
diff --git a/src/map/battle.h b/src/map/battle.h
index 69728dd68..3e779c212 100644
--- a/src/map/battle.h
+++ b/src/map/battle.h
@@ -467,8 +467,10 @@ extern struct Battle_Config
int bg_magic_damage_rate;
int bg_misc_damage_rate;
int bg_flee_penalty;
+
// rAthena
int max_third_parameter;
+ int max_baby_third_parameter;
int atcommand_max_stat_bypass;
} battle_config;
diff --git a/src/map/itemdb.c b/src/map/itemdb.c
index d2386cad0..44a296bb0 100644
--- a/src/map/itemdb.c
+++ b/src/map/itemdb.c
@@ -259,7 +259,16 @@ static void itemdb_jobid2mapid(unsigned int *bclass, unsigned int jobmask)
if (jobmask & 1<<JOB_GUNSLINGER)
bclass[0] |= 1<<MAPID_GUNSLINGER;
if (jobmask & 1<<JOB_NINJA)
- bclass[0] |= 1<<MAPID_NINJA;
+ {bclass[0] |= 1<<MAPID_NINJA;
+ bclass[1] |= 1<<MAPID_NINJA;}//Kagerou/Oboro jobs can equip Ninja equips. [Rytech]
+ if (jobmask & 1<<26) //Bongun/Munak
+ bclass[0] |= 1<<MAPID_GANGSI;
+ if (jobmask & 1<<27) //Death Knight
+ bclass[1] |= 1<<MAPID_GANGSI;
+ if (jobmask & 1<<28) //Dark Collector
+ bclass[2] |= 1<<MAPID_GANGSI;
+ if (jobmask & 1<<29) //Kagerou / Oboro
+ bclass[1] |= 1<<MAPID_NINJA;
}
static void create_dummy_data(void)
diff --git a/src/map/pc.c b/src/map/pc.c
index 8041fd79c..9e548b038 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -594,7 +594,8 @@ int pc_equippoint(struct map_session_data *sd,int n)
if(sd->inventory_data[n]->look == W_DAGGER ||
sd->inventory_data[n]->look == W_1HSWORD ||
sd->inventory_data[n]->look == W_1HAXE) {
- if(ep == EQP_HAND_R && (pc_checkskill(sd,AS_LEFT) > 0 || (sd->class_&MAPID_UPPERMASK) == MAPID_ASSASSIN))
+ if(ep == EQP_HAND_R && (pc_checkskill(sd,AS_LEFT) > 0 || (sd->class_&MAPID_UPPERMASK) == MAPID_ASSASSIN ||
+ (sd->class_&MAPID_UPPERMASK) == MAPID_KAGEROUOBORO))//Kagerou and Oboro can dual wield daggers. [Rytech]
return EQP_ARMS;
}
return ep;
diff --git a/src/map/pc.h b/src/map/pc.h
index ed6695a4f..e74d4a5d0 100644
--- a/src/map/pc.h
+++ b/src/map/pc.h
@@ -521,7 +521,9 @@ enum ammo_type {
A_SHELL, //4
A_GRENADE, //5
A_SHURIKEN, //6
- A_KUNAI //7
+ A_KUNAI, //7
+ A_CANNONBALL, //8
+ A_THROWWEAPON //9
};
//Equip position constants
@@ -614,7 +616,7 @@ enum e_pc_permission {
#define pc_isinvisible(sd) ( (sd)->sc.option&OPTION_INVISIBLE )
#define pc_is50overweight(sd) ( (sd)->weight*100 >= (sd)->max_weight*battle_config.natural_heal_weight_rate )
#define pc_is90overweight(sd) ( (sd)->weight*10 >= (sd)->max_weight*9 )
-#define pc_maxparameter(sd) ( (sd)->class_&JOBL_THIRD ? battle_config.max_third_parameter : (sd)->class_&JOBL_BABY ? battle_config.max_baby_parameter : battle_config.max_parameter )
+#define pc_maxparameter(sd) ( ((((sd)->class_&MAPID_UPPERMASK) == MAPID_KAGEROUOBORO) || (sd)->class_&JOBL_THIRD ? ((sd)->class_&JOBL_BABY ? battle_config.max_baby_third_parameter : battle_config.max_third_parameter) : ((sd)->class_&JOBL_BABY ? battle_config.max_baby_parameter : battle_config.max_parameter)) )
/**
* Ranger
**/