summaryrefslogtreecommitdiff
path: root/src/map/party.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-06-07 18:57:21 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-06-07 18:57:21 +0000
commit5d9d254ef290e9cc8acfdd08af279fdc1a439853 (patch)
tree4707121165dabe5aaff75d887a1e9ef230786659 /src/map/party.c
parentb4d8c6be13e3755ec9104f5317b88069860e5aef (diff)
downloadhercules-5d9d254ef290e9cc8acfdd08af279fdc1a439853.tar.gz
hercules-5d9d254ef290e9cc8acfdd08af279fdc1a439853.tar.bz2
hercules-5d9d254ef290e9cc8acfdd08af279fdc1a439853.tar.xz
hercules-5d9d254ef290e9cc8acfdd08af279fdc1a439853.zip
- Added pc_calcexp to calculate individual exp bonuses acquired from exp's source (race bonus cards, SG Exp skills, pk-mode higher level exp)
- pc_gain_exp now also receives the source of the exp, when said source exists, bonuses are applicated as needed. - Added status_kill when capturing a mob, should take care of the mob not respawning after caputed. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7037 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/party.c')
-rw-r--r--src/map/party.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/map/party.c b/src/map/party.c
index 736dd55a2..b7c00db4d 100644
--- a/src/map/party.c
+++ b/src/map/party.c
@@ -659,7 +659,7 @@ int party_send_xy_clear(struct party *p)
}
// exp share and added zeny share [Valaris]
-int party_exp_share(struct party *p,int map,unsigned int base_exp,unsigned int job_exp,int zeny)
+int party_exp_share(struct party *p,struct block_list *src,unsigned int base_exp,unsigned int job_exp,int zeny)
{
struct map_session_data* sd[MAX_PARTY];
int i;
@@ -668,7 +668,7 @@ int party_exp_share(struct party *p,int map,unsigned int base_exp,unsigned int j
nullpo_retr(0, p);
for (i = c = 0; i < MAX_PARTY; i++)
- if ((sd[c] = p->member[i].sd)!=NULL && sd[c]->bl.m == map && !pc_isdead(sd[c])) {
+ if ((sd[c] = p->member[i].sd)!=NULL && sd[c]->bl.m == src->m && !pc_isdead(sd[c])) {
if (battle_config.idle_no_share && (sd[c]->chatID || sd[c]->vender_id || (sd[c]->idletime < (last_tick - battle_config.idle_no_share))))
continue;
c++;
@@ -694,7 +694,7 @@ int party_exp_share(struct party *p,int map,unsigned int base_exp,unsigned int j
for (i = 0; i < c; i++)
{
- pc_gainexp(sd[i], base_exp, job_exp);
+ pc_gainexp(sd[i], src, base_exp, job_exp);
if (battle_config.zeny_from_mobs) // zeny from mobs [Valaris]
pc_getzeny(sd[i],bonus*zeny/(c*100));
}