diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2009-06-08 15:57:51 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2009-06-08 15:57:51 +0000 |
commit | 180b108a346de47dfe7b386378479e240eb0a4f4 (patch) | |
tree | 04abf119a0fcb673e22e9db594e3b8bca0237d4c /src/map | |
parent | ad0b14806dca1c54c55d0f237dc465c27dc6351f (diff) | |
download | hercules-180b108a346de47dfe7b386378479e240eb0a4f4.tar.gz hercules-180b108a346de47dfe7b386378479e240eb0a4f4.tar.bz2 hercules-180b108a346de47dfe7b386378479e240eb0a4f4.tar.xz hercules-180b108a346de47dfe7b386378479e240eb0a4f4.zip |
- Fixed Swordsman Medallion to be usable by Star Gladiators.
- Fixed Thief Medallion to be usable by Ninjas.
- Fixed Valorous Assassin's Damascus to reduce the strength of its effect.
- Corrected the AUTOLOOT_DISTANCE code not checking for map changes.
- Fixed clif_change_option's "unknown field" to be the character's karma.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13864 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/clif.c | 6 | ||||
-rw-r--r-- | src/map/mob.c | 1 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index 030613377..160724eec 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -2813,10 +2813,12 @@ int clif_changeoption(struct block_list* bl) { unsigned char buf[32]; struct status_change *sc; + struct map_session_data* sd; nullpo_retr(0, bl); sc = status_get_sc(bl); if (!sc) return 0; //How can an option change if there's no sc? + sd = BL_CAST(BL_PC, bl); #if PACKETVER >= 7 WBUFW(buf,0) = 0x229; @@ -2824,7 +2826,7 @@ int clif_changeoption(struct block_list* bl) WBUFW(buf,6) = sc->opt1; WBUFW(buf,8) = sc->opt2; WBUFL(buf,10) = sc->option; - WBUFB(buf,14) = 0; // PK??? + WBUFB(buf,14) = (sd)? sd->status.karma : 0; if(disguised(bl)) { clif_send(buf,packet_len(0x229),bl,AREA_WOS); WBUFL(buf,2) = -bl->id; @@ -2840,7 +2842,7 @@ int clif_changeoption(struct block_list* bl) WBUFW(buf,6) = sc->opt1; WBUFW(buf,8) = sc->opt2; WBUFW(buf,10) = sc->option; - WBUFB(buf,12) = 0; // ?? + WBUFB(buf,12) = (sd)? sd->status.karma : 0; if(disguised(bl)) { clif_send(buf,packet_len(0x119),bl,AREA_WOS); WBUFL(buf,2) = -bl->id; diff --git a/src/map/mob.c b/src/map/mob.c index 369f503f9..598389b3f 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -1719,6 +1719,7 @@ static void mob_item_drop(struct mob_data *md, struct item_drop_list *dlist, str && (battle_config.idle_no_autoloot == 0 || DIFF_TICK(last_tick, sd->idletime) < battle_config.idle_no_autoloot) && (battle_config.homunculus_autoloot?1:!flag) #ifdef AUTOLOOT_DISTANCE + && sd->bl.m == md->bl.m && check_distance_blxy(&sd->bl, dlist->x, dlist->y, AUTOLOOT_DISTANCE) #endif ) { //Autoloot. |