From 1b3bd9ff1725a68d66fd4015c60d6fe28e4b2334 Mon Sep 17 00:00:00 2001 From: technote24 Date: Fri, 20 Apr 2012 13:06:34 +0000 Subject: =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 --- src/map/battle.c | 3 ++- src/map/battle.h | 2 ++ src/map/itemdb.c | 11 ++++++++++- src/map/pc.c | 3 ++- src/map/pc.h | 6 ++++-- 5 files changed, 20 insertions(+), 5 deletions(-) (limited to 'src/map') 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<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 **/ -- cgit v1.2.3-60-g2f50