diff options
author | Jared Adams <jaxad0127@gmail.com> | 2008-11-02 00:19:12 +0000 |
---|---|---|
committer | Jared Adams <jaxad0127@gmail.com> | 2008-11-02 00:19:12 +0000 |
commit | 8d356dbe3f056474700fcbdd563d8ea437b1464e (patch) | |
tree | 682694884b5cae5a9f6ec9136619ac2a90c8f73e /src/map/battle.c | |
parent | ff4ed0b105b016aa3a7dad07db5fb00456bbe822 (diff) | |
download | tmwa-8d356dbe3f056474700fcbdd563d8ea437b1464e.tar.gz tmwa-8d356dbe3f056474700fcbdd563d8ea437b1464e.tar.bz2 tmwa-8d356dbe3f056474700fcbdd563d8ea437b1464e.tar.xz tmwa-8d356dbe3f056474700fcbdd563d8ea437b1464e.zip |
* Minor cleanup in login server
* Char server now records client version and reports it to map server
* Map server will now report all skills (even ones with dangerous indices) for client version 1 and above
* Use status change val1 (instead of val2) index for speed potions, so that they can be triggered more easily from within scripts
* Item database now also keeps track of the effect that items have on the spower stat
* spower is now based on level + int*2 + modifier (see last point)
* Minor bugfixes in support functionality for the SLang interpreter
- Do not restart the map server without also restarting the char server, as the interserver protocol has changed slightly!
(patch by fate)
Diffstat (limited to 'src/map/battle.c')
-rw-r--r-- | src/map/battle.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/map/battle.c b/src/map/battle.c index 991affd..38a654e 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -963,7 +963,7 @@ int battle_get_adelay(struct block_list *bl) aspd_rate += 25; //増速ポーション使用時は減算 if(sc_data[i=SC_SPEEDPOTION2].timer!=-1 || sc_data[i=SC_SPEEDPOTION1].timer!=-1 || sc_data[i=SC_SPEEDPOTION0].timer!=-1) - aspd_rate -= sc_data[i].val2; + aspd_rate -= sc_data[i].val1; // Fate's `haste' spell works the same as the above if (sc_data[SC_HASTE].timer != -1) aspd_rate -= sc_data[SC_HASTE].val1; @@ -971,6 +971,7 @@ int battle_get_adelay(struct block_list *bl) if(sc_data[SC_DEFENDER].timer != -1) adelay += (1100 - sc_data[SC_DEFENDER].val1*100); } + if(aspd_rate != 100) adelay = adelay*aspd_rate/100; if(adelay < battle_config.monster_max_aspd<<1) adelay = battle_config.monster_max_aspd<<1; @@ -1013,12 +1014,13 @@ int battle_get_amotion(struct block_list *bl) if(sc_data[SC_STEELBODY].timer!=-1) // 金剛 aspd_rate += 25; if(sc_data[i=SC_SPEEDPOTION2].timer!=-1 || sc_data[i=SC_SPEEDPOTION1].timer!=-1 || sc_data[i=SC_SPEEDPOTION0].timer!=-1) - aspd_rate -= sc_data[i].val2; + aspd_rate -= sc_data[i].val1; if (sc_data[SC_HASTE].timer != -1) aspd_rate -= sc_data[SC_HASTE].val1; if(sc_data[SC_DEFENDER].timer != -1) amotion += (550 - sc_data[SC_DEFENDER].val1*50); } + if(aspd_rate != 100) amotion = amotion*aspd_rate/100; if(amotion < battle_config.monster_max_aspd) amotion = battle_config.monster_max_aspd; |