diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-07-27 14:59:23 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-07-27 14:59:23 +0000 |
commit | e374dbba803c5d79ec3113bc80fece056193df31 (patch) | |
tree | 275e40425f542b254eed8eb76706b1614642905d | |
parent | b3dae1ee6a703c8e42230d12b93929e48b75553f (diff) | |
download | hercules-e374dbba803c5d79ec3113bc80fece056193df31.tar.gz hercules-e374dbba803c5d79ec3113bc80fece056193df31.tar.bz2 hercules-e374dbba803c5d79ec3113bc80fece056193df31.tar.xz hercules-e374dbba803c5d79ec3113bc80fece056193df31.zip |
- Some cleaning in status.c. Removed some unnecessary lines, and added proper lower caps to some status_calc_* functions (flee/hit/flee2/cri)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7921 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | src/map/status.c | 82 |
1 files changed, 20 insertions, 62 deletions
diff --git a/src/map/status.c b/src/map/status.c index a93ea6fc9..39034a9b7 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -1292,7 +1292,7 @@ int status_calc_mob(struct mob_data* md, int first) if(battle_config.enemy_critical_rate != 100) status->cri = status->cri*battle_config.enemy_critical_rate/100; if (!status->cri && battle_config.enemy_critical_rate) - status->cri = 1; + status->cri = 10; //Initial battle status if (!first) @@ -2167,7 +2167,7 @@ int status_calc_homunculus(struct homun_data *hd, int first) if(battle_config.homun_critical_rate != 100) status->cri = status->cri*battle_config.homun_critical_rate/100; if (!status->cri && battle_config.homun_critical_rate) - status->cri = 1; + status->cri = 10; status_calc_bl(&hd->bl, SCB_ALL); //Status related changes. @@ -2613,22 +2613,6 @@ void status_calc_bl_sub_hom(struct homun_data *hd, unsigned long flag) //[orn] status->matk_max = status_calc_matk(&hd->bl, &hd->sc, status->matk_max); } - - if(flag&SCB_HIT) { - if(status->hit < 1) status->hit = 1; - } - - if(flag&SCB_FLEE) { - if(status->flee < 1) status->flee = 1; - } - - if(flag&SCB_DEF2) { - if(status->def2 < 1) status->def2 = 1; - } - - if(flag&SCB_MDEF2) { - if(status->mdef2 < 1) status->mdef2 = 1; - } if(flag&SCB_SPEED) { if(status->speed < battle_config.max_walk_speed) @@ -2657,43 +2641,17 @@ void status_calc_bl_sub_hom(struct homun_data *hd, unsigned long flag) //[orn] status->dmotion = status_calc_dmotion(&hd->bl, &hd->sc, b_status->dmotion); } - if(flag&SCB_CRI) - { - if(status->cri < 10) status->cri = 10; - } - - if(flag&SCB_FLEE2) { - if(status->flee2 < 10) status->flee2 = 10; - } if (flag == SCB_ALL) return; //Refresh is done on invoking function (status_calc_hom) - if ( (flag&SCB_SPEED) || - (flag&SCB_STR) || - (flag&SCB_AGI) || - (flag&SCB_VIT) || - (flag&SCB_INT) || - (flag&SCB_DEX) || - (flag&SCB_LUK) || - (flag&SCB_HIT) || - (flag&SCB_FLEE) || - (flag&SCB_ASPD) || - (flag&(SCB_BATK|SCB_WATK)) || - (flag&SCB_DEF) || - (flag&SCB_WATK) || - (flag&SCB_DEF2) || - (flag&SCB_FLEE2) || - (flag&SCB_CRI) || - (flag&SCB_MATK) || - (flag&SCB_MDEF) || - (flag&SCB_MDEF2) || - (flag&SCB_RANGE) || - (flag&SCB_MAXHP) || - (flag&SCB_MAXSP) - ) - { - clif_hominfo(hd->master,0); - } + if (flag&( + SCB_STR|SCB_AGI|SCB_VIT|SCB_INT|SCB_DEX|SCB_LUK| + SCB_HIT|SCB_FLEE|SCB_CRI|SCB_FLEE2| + SCB_DEF|SCB_DEF2|SCB_MDEF|SCB_MDEF2| + SCB_BATK|SCB_WATK|SCB_MATK|SCB_ASPD|SCB_SPEED| + SCB_RANGE|SCB_MAXHP|SCB_MAXSP) + ) + clif_hominfo(hd->master,0); } void status_calc_bl(struct block_list *bl, unsigned long flag) @@ -3213,7 +3171,7 @@ static unsigned short status_calc_matk(struct block_list *bl, struct status_chan static signed short status_calc_critical(struct block_list *bl, struct status_change *sc, int critical) { if(!sc || !sc->count) - return cap_value(critical,0,SHRT_MAX); + return cap_value(critical,10,SHRT_MAX); if (sc->data[SC_EXPLOSIONSPIRITS].timer!=-1) critical += sc->data[SC_EXPLOSIONSPIRITS].val2; @@ -3224,14 +3182,14 @@ static signed short status_calc_critical(struct block_list *bl, struct status_ch if(sc->data[SC_CLOAKING].timer!=-1) critical += critical; - return cap_value(critical,0,SHRT_MAX); + return cap_value(critical,10,SHRT_MAX); } static signed short status_calc_hit(struct block_list *bl, struct status_change *sc, int hit) { if(!sc || !sc->count) - return cap_value(hit,0,SHRT_MAX); + return cap_value(hit,1,SHRT_MAX); if(sc->data[SC_INCHIT].timer != -1) hit += sc->data[SC_INCHIT].val1; @@ -3252,7 +3210,7 @@ static signed short status_calc_hit(struct block_list *bl, struct status_change if(sc->data[SC_INCREASING].timer!=-1) hit += 20; // RockmanEXE; changed based on updated [Reddozen] - return cap_value(hit,0,SHRT_MAX); + return cap_value(hit,1,SHRT_MAX); } static signed short status_calc_flee(struct block_list *bl, struct status_change *sc, int flee) @@ -3261,7 +3219,7 @@ static signed short status_calc_flee(struct block_list *bl, struct status_change flee -= flee * battle_config.gvg_flee_penalty/100; if(!sc || !sc->count) - return cap_value(flee,0,SHRT_MAX); + return cap_value(flee,1,SHRT_MAX); if(sc->data[SC_INCFLEE].timer!=-1) flee += sc->data[SC_INCFLEE].val1; @@ -3292,18 +3250,18 @@ static signed short status_calc_flee(struct block_list *bl, struct status_change if(sc->data[SC_SPEED].timer!=-1) flee += 10 + sc->data[SC_SPEED].val1 * 10 ; - return cap_value(flee,0,SHRT_MAX); + return cap_value(flee,1,SHRT_MAX); } static signed short status_calc_flee2(struct block_list *bl, struct status_change *sc, int flee2) { if(!sc || !sc->count) - return cap_value(flee2,0,SHRT_MAX); + return cap_value(flee2,10,SHRT_MAX); if(sc->data[SC_WHISTLE].timer!=-1) flee2 += sc->data[SC_WHISTLE].val3*10; - return cap_value(flee2,0,SHRT_MAX); + return cap_value(flee2,10,SHRT_MAX); } static signed char status_calc_def(struct block_list *bl, struct status_change *sc, int def) @@ -3348,7 +3306,7 @@ static signed char status_calc_def(struct block_list *bl, struct status_change * static signed short status_calc_def2(struct block_list *bl, struct status_change *sc, int def2) { if(!sc || !sc->count) - return cap_value(def2,0,SHRT_MAX); + return cap_value(def2,1,SHRT_MAX); if(sc->data[SC_BERSERK].timer!=-1) return 0; @@ -3377,7 +3335,7 @@ static signed short status_calc_def2(struct block_list *bl, struct status_change if(sc->data[SC_FLING].timer!=-1) def2 -= def2 * (sc->data[SC_FLING].val3)/100; - return cap_value(def2,0,SHRT_MAX); + return cap_value(def2,1,SHRT_MAX); } static signed char status_calc_mdef(struct block_list *bl, struct status_change *sc, int mdef) |