summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/map/battle/player.conf5
-rw-r--r--src/map/battle.c1
-rw-r--r--src/map/battle.h2
-rw-r--r--src/map/pc.h1
4 files changed, 8 insertions, 1 deletions
diff --git a/conf/map/battle/player.conf b/conf/map/battle/player.conf
index e478a92a1..39e1d9287 100644
--- a/conf/map/battle/player.conf
+++ b/conf/map/battle/player.conf
@@ -110,9 +110,12 @@ max_parameter: 99
// Same as max_parameter, but for 3rd classes.
max_third_parameter: 130
-// Same as max_parameter, but for extend classes (Ex. Super Novice, Kagero/Oboro, Rebellion).
+// Same as max_parameter, but for extended classes (Ex. Super Novice, Kagero/Oboro, Rebellion).
max_extended_parameter: 125
+// Same as max_parameter, but for summoner class
+max_summoner_parameter: 120
+
// Same as max_parameter, but for baby classes.
max_baby_parameter: 80
diff --git a/src/map/battle.c b/src/map/battle.c
index f7ac60031..8c1a3f364 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -7318,6 +7318,7 @@ static const struct battle_data {
{ "save_body_style", &battle_config.save_body_style, 0, 0, 1, },
{ "player_warp_keep_direction", &battle_config.player_warp_keep_direction, 0, 0, 1, },
{ "atcommand_levelup_events", &battle_config.atcommand_levelup_events, 0, 0, 1, },
+ { "max_summoner_parameter", &battle_config.max_summoner_parameter, 120, 10, 10000, },
};
#ifndef STATS_OPT_OUT
/**
diff --git a/src/map/battle.h b/src/map/battle.h
index ebfa0e305..7e7048a38 100644
--- a/src/map/battle.h
+++ b/src/map/battle.h
@@ -544,6 +544,8 @@ struct Battle_Config {
int player_warp_keep_direction;
int atcommand_levelup_events; // Enable atcommands trigger level up events for NPCs
+
+ int max_summoner_parameter; // Summoner Max Stats
};
/* criteria for battle_config.idletime_critera */
diff --git a/src/map/pc.h b/src/map/pc.h
index 2d6ca48a0..5d1404b2a 100644
--- a/src/map/pc.h
+++ b/src/map/pc.h
@@ -635,6 +635,7 @@ END_ZEROED_BLOCK;
#define pc_is50overweight(sd) ( (sd)->weight*100 >= (sd)->max_weight*battle->bc->natural_heal_weight_rate )
#define pc_is90overweight(sd) ( (sd)->weight*10 >= (sd)->max_weight*9 )
#define pc_maxparameter(sd) ( \
+ ((sd)->class_&MAPID_BASEMASK) == MAPID_SUMMONER ? battle->bc->max_summoner_parameter : \
( ((sd)->class_&MAPID_UPPERMASK) == MAPID_KAGEROUOBORO \
|| ((sd)->class_&MAPID_UPPERMASK) == MAPID_REBELLION \
|| ((sd)->class_&MAPID_THIRDMASK) == MAPID_SUPER_NOVICE_E \