summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db/const.txt1
-rw-r--r--doc/item_bonus.txt1
-rw-r--r--src/map/map.h2
-rw-r--r--src/map/pc.c4
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;