summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/status.c')
-rw-r--r--src/map/status.c33
1 files changed, 26 insertions, 7 deletions
diff --git a/src/map/status.c b/src/map/status.c
index 57858a493..096e673c2 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -4913,10 +4913,14 @@ defType status_calc_def(struct block_list *bl, struct status_change *sc, int def
return (defType)cap_value(def,DEFTYPE_MIN,DEFTYPE_MAX);
}
-defType status_calc_def2(struct block_list *bl, struct status_change *sc, int def2, bool viewable)
+signed short status_calc_def2(struct block_list *bl, struct status_change *sc, int def2, bool viewable)
{
if(!sc || !sc->count)
- return (defType)cap_value(def2,DEFTYPE_MIN,DEFTYPE_MAX);
+#ifdef RENEWAL
+ return (short)cap_value(def2,SHRT_MIN,SHRT_MAX);
+#else
+ return (short)cap_value(def2,1,SHRT_MAX);
+#endif
if( !viewable ){
/* some statuses that are hidden in the status window */
@@ -4976,7 +4980,11 @@ defType status_calc_def2(struct block_list *bl, struct status_change *sc, int de
if (sc->data[SC_NEEDLE_OF_PARALYZE])
def2 -= def2 * sc->data[SC_NEEDLE_OF_PARALYZE]->val2 / 100;
- return (defType)cap_value(def2,DEFTYPE_MIN,DEFTYPE_MAX);
+#ifdef RENEWAL
+ return (short)cap_value(def2,SHRT_MIN,SHRT_MAX);
+#else
+ return (short)cap_value(def2,1,SHRT_MAX);
+#endif
}
@@ -5028,17 +5036,24 @@ defType status_calc_mdef(struct block_list *bl, struct status_change *sc, int md
return (defType)cap_value(mdef,DEFTYPE_MIN,DEFTYPE_MAX);
}
-defType status_calc_mdef2(struct block_list *bl, struct status_change *sc, int mdef2, bool viewable) {
+signed short status_calc_mdef2(struct block_list *bl, struct status_change *sc, int mdef2, bool viewable)
+{
if(!sc || !sc->count)
- return (defType)cap_value(mdef2,DEFTYPE_MIN,DEFTYPE_MAX);
+#ifdef RENEWAL
+ return (short)cap_value(mdef2,SHRT_MIN,SHRT_MAX);
+#else
+ return (short)cap_value(mdef2,1,SHRT_MAX);
+#endif
if( !viewable ){
/* some statuses that are hidden in the status window */
#ifdef RENEWAL
if(sc && sc->data[SC_ASSUMPTIO])
mdef2 <<= 1;
+ return (short)cap_value(mdef2,SHRT_MIN,SHRT_MAX);
+#else
+ return (short)cap_value(mdef2,1,SHRT_MAX);
#endif
- return (defType)cap_value(mdef2,DEFTYPE_MIN,DEFTYPE_MAX);
}
if (sc->data[SC_BERSERK] || sc->data[SC__BLOODYLUST])
@@ -5050,7 +5065,11 @@ defType status_calc_mdef2(struct block_list *bl, struct status_change *sc, int m
if(sc->data[SC_ANALYZE])
mdef2 -= mdef2 * ( 14 * sc->data[SC_ANALYZE]->val1 ) / 100;
- return (defType)cap_value(mdef2,DEFTYPE_MIN,DEFTYPE_MAX);
+#ifdef RENEWAL
+ return (short)cap_value(mdef2,SHRT_MIN,SHRT_MAX);
+#else
+ return (short)cap_value(mdef2,1,SHRT_MAX);
+#endif
}
static unsigned short status_calc_speed(struct block_list *bl, struct status_change *sc, int speed)