summaryrefslogtreecommitdiff
path: root/src/map/clif.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2008-03-09 20:11:14 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2008-03-09 20:11:14 +0000
commit203b881a3f76e822a0052e58c67bf46ba6ad0596 (patch)
tree9f918bdf4a68aa659f3c5c45186e198cbe2388b5 /src/map/clif.c
parenta3e718b798e8b7c5848b58a7646a783ac0163364 (diff)
downloadhercules-203b881a3f76e822a0052e58c67bf46ba6ad0596.tar.gz
hercules-203b881a3f76e822a0052e58c67bf46ba6ad0596.tar.bz2
hercules-203b881a3f76e822a0052e58c67bf46ba6ad0596.tar.xz
hercules-203b881a3f76e822a0052e58c67bf46ba6ad0596.zip
- Modified attack_walk_delay so it behaves on a 'per-object' basis, and changed the default to 15 (all types).
- Modified battle_delay_damage so damage is not delayed more than one second for non-player attacks. - Modified party_member_added with a hack so that the clif functions will send the info of the new member since party_recv_info has not yet arrived. - Updated clif_calc_delay so the type sent to the client is based on the number of hits of the skill (as Aegis packets reveal) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12332 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/clif.c')
-rw-r--r--src/map/clif.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/map/clif.c b/src/map/clif.c
index 551155ea3..03a2b10b9 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -3473,7 +3473,8 @@ void clif_getareachar_unit(struct map_session_data* sd,struct block_list *bl)
}
//Modifies the type of damage according to status changes [Skotlex]
-#define clif_calc_delay(type,damage,delay) ((type)==0x0a?type:((delay)==0&&(damage)>0?9:type))
+//Aegis data specifies that: 4 endure against single hit sources, 9 against multi-hit.
+#define clif_calc_delay(type,div,damage,delay) ((delay)==0&&(damage)>0?((div)>1?9:4):type)
/*==========================================
* Estimates walk delay based on the damage criteria. [Skotlex]
@@ -3518,7 +3519,7 @@ int clif_damage(struct block_list* src, struct block_list* dst, unsigned int tic
nullpo_retr(0, src);
nullpo_retr(0, dst);
- type = clif_calc_delay(type,damage+damage2,ddelay);
+ type = clif_calc_delay(type,div,damage+damage2,ddelay);
sc = status_get_sc(dst);
if(sc && sc->count) {
if(sc->data[SC_HALLUCINATION]) {
@@ -4092,7 +4093,7 @@ int clif_skill_damage(struct block_list *src,struct block_list *dst,unsigned int
nullpo_retr(0, src);
nullpo_retr(0, dst);
- type = clif_calc_delay(type,damage,ddelay);
+ type = clif_calc_delay(type,div,damage,ddelay);
sc = status_get_sc(dst);
if(sc && sc->count) {
if(sc->data[SC_HALLUCINATION] && damage)
@@ -4180,7 +4181,7 @@ int clif_skill_damage2(struct block_list *src,struct block_list *dst,unsigned in
nullpo_retr(0, dst);
type = (type>0)?type:skill_get_hit(skill_id);
- type = clif_calc_delay(type,damage,ddelay);
+ type = clif_calc_delay(type,div,damage,ddelay);
sc = status_get_sc(dst);
if(sc && sc->count) {