diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-06-07 18:57:21 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-06-07 18:57:21 +0000 |
commit | 5d9d254ef290e9cc8acfdd08af279fdc1a439853 (patch) | |
tree | 4707121165dabe5aaff75d887a1e9ef230786659 /src/map/party.c | |
parent | b4d8c6be13e3755ec9104f5317b88069860e5aef (diff) | |
download | hercules-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.c | 6 |
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));
}
|