diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2008-02-11 13:11:15 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2008-02-11 13:11:15 +0000 |
commit | ea4d8114ce4aa030d224acdd00af66d0ee1a979d (patch) | |
tree | a7cd9a82bee432937222bec025aa77fa9e7896da | |
parent | a24b7ddbd3dcc44f9a158414340283b2aa25ff6d (diff) | |
download | hercules-ea4d8114ce4aa030d224acdd00af66d0ee1a979d.tar.gz hercules-ea4d8114ce4aa030d224acdd00af66d0ee1a979d.tar.bz2 hercules-ea4d8114ce4aa030d224acdd00af66d0ee1a979d.tar.xz hercules-ea4d8114ce4aa030d224acdd00af66d0ee1a979d.zip |
- 'Forget me Not' no longer blocks ASPD bonuses from working or prevents their re-casting, they are simply dispelled when the effect takes place.
- Fixed a possible crash when a player logs out before their create-party request is accepted.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12193 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | Changelog-Trunk.txt | 4 | ||||
-rw-r--r-- | src/map/party.c | 9 | ||||
-rw-r--r-- | src/map/status.c | 6 |
3 files changed, 12 insertions, 7 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index 7ea683182..50f836594 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,10 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. 2008/02/11 + * 'Forget me Not' no longer blocks ASPD bonuses from working or prevents + their re-casting, they are simply dispelled when the effect takes place. + * Fixed a possible crash when a player logs out before their create-party + request is accepted. [Skotlex] * Expanded the script command 'input': (bugreport:811) [FlavioJS] - two new optional arguments 'min' and 'max' - return value indicating if it's in the correct range diff --git a/src/map/party.c b/src/map/party.c index c6bfb2224..47648b889 100644 --- a/src/map/party.c +++ b/src/map/party.c @@ -108,9 +108,12 @@ int party_created(int account_id,int char_id,int fail,int party_id,char *name) struct party_data *p; sd=map_id2sd(account_id); - nullpo_retr(0, sd); - if (sd->status.char_id != char_id) - return 0; //unlikely failure... + if (!sd || sd->status.char_id != char_id) + { //Character logged off before creation ack? + if (!fail) //break up party since player could not be added to it. + intif_party_leave(party_id,account_id,char_id); + return 0; + } if(fail){ clif_party_created(sd,1); diff --git a/src/map/status.c b/src/map/status.c index 7e6585085..015ce1ddf 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -3775,7 +3775,7 @@ static short status_calc_aspd_rate(struct block_list *bl, struct status_change * if(!sc || !sc->count) return cap_value(aspd_rate,0,SHRT_MAX); - if(!sc->data[SC_QUAGMIRE] && !sc->data[SC_DONTFORGETME]) + if(!sc->data[SC_QUAGMIRE]) { int max = 0; if(sc->data[SC_STAR_COMFORT]) @@ -4659,7 +4659,6 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val if(sd && !pc_check_weapontype(sd,skill_get_weapontype(BS_ADRENALINE))) return 0; if (sc->data[SC_QUAGMIRE] || - sc->data[SC_DONTFORGETME] || sc->data[SC_DECREASEAGI] ) return 0; @@ -4668,7 +4667,6 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val if(sd && !pc_check_weapontype(sd,skill_get_weapontype(BS_ADRENALINE2))) return 0; if (sc->data[SC_QUAGMIRE] || - sc->data[SC_DONTFORGETME] || sc->data[SC_DECREASEAGI] ) return 0; @@ -4684,7 +4682,7 @@ int status_change_start(struct block_list* bl,enum sc_type type,int rate,int val case SC_WINDWALK: case SC_CARTBOOST: case SC_ASSNCROS: - if (sc->data[SC_QUAGMIRE] || sc->data[SC_DONTFORGETME]) + if (sc->data[SC_QUAGMIRE]) return 0; break; case SC_CLOAKING: |