diff options
-rw-r--r-- | db/const.txt | 1 | ||||
-rw-r--r-- | doc/item_bonus.txt | 1 | ||||
-rw-r--r-- | src/map/map.h | 2 | ||||
-rw-r--r-- | src/map/pc.c | 4 |
4 files changed, 7 insertions, 1 deletions
diff --git a/db/const.txt b/db/const.txt index 7317cceb7..e09200500 100644 --- a/db/const.txt +++ b/db/const.txt @@ -594,6 +594,7 @@ bVariableCast 2058 bSetDefRace 2059 bSetMDefRace 2060 bAddRaceTolerance 2061 +bAddMaxWeight 2062 //reference to script.c::script_defaults():equip[] array used for easy-conversion EQI_HEAD_TOP 1 diff --git a/doc/item_bonus.txt b/doc/item_bonus.txt index 2d29165a8..6aeca16ea 100644 --- a/doc/item_bonus.txt +++ b/doc/item_bonus.txt @@ -147,6 +147,7 @@ bonus bSpeedAddRate,n; Moving speed + n% bonus bAspd,n; Attack speed + n bonus bAspdRate,n; Attack speed + n% bonus bAtkRange,n; Attack range + n +bonus bAddMaxWeight,n; MaxWeight + n (in units of 0.1) ======================= | 2. Extended Bonuses | diff --git a/src/map/map.h b/src/map/map.h index d133ad4c1..84af04f77 100644 --- a/src/map/map.h +++ b/src/map/map.h @@ -483,7 +483,7 @@ enum status_point_types { SP_SKILL_COOLDOWN,SP_SKILL_FIXEDCAST, SP_SKILL_VARIABLECAST, SP_FIXCASTRATE, SP_VARCASTRATE, //2050-2054 SP_SKILL_USE_SP,SP_MAGIC_ATK_ELE, SP_ADD_FIXEDCAST, SP_ADD_VARIABLECAST, //2055-2058 SP_SET_DEF_RACE,SP_SET_MDEF_RACE, //2059-2060 - SP_RACE_TOLERANCE, //2061 + SP_RACE_TOLERANCE,SP_ADDMAXWEIGHT, //2061-2062 /* must be the last, plugins add bonuses from this value onwards */ SP_LAST_KNOWN, diff --git a/src/map/pc.c b/src/map/pc.c index 699df4990..d5d68d299 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -2861,6 +2861,10 @@ int pc_bonus(struct map_session_data *sd,int type,int val) { if (sd->state.lr_flag != 2) pc->bonus_item_drop(sd->add_drop, ARRAYLENGTH(sd->add_drop), 0, val, map->race_id2mask(RC_ALL), 10000); break; + case SP_ADDMAXWEIGHT: + if (sd->state.lr_flag != 2) + sd->max_weight += val; + break; default: ShowWarning("pc_bonus: unknown type %d %d !\n",type,val); break; |