diff options
author | shennetsind <shennetsind@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-06-01 23:01:40 +0000 |
---|---|---|
committer | shennetsind <shennetsind@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-06-01 23:01:40 +0000 |
commit | 0c6160d8de14fc9a5255309d12ef9fa33f6425a5 (patch) | |
tree | a4fce895d1c5490e2c3e3db8c3cefe2fe82afc5e /src/map/clif.c | |
parent | 67a0736c51678e453497660ef7df7bd601e57101 (diff) | |
download | hercules-0c6160d8de14fc9a5255309d12ef9fa33f6425a5.tar.gz hercules-0c6160d8de14fc9a5255309d12ef9fa33f6425a5.tar.bz2 hercules-0c6160d8de14fc9a5255309d12ef9fa33f6425a5.tar.xz hercules-0c6160d8de14fc9a5255309d12ef9fa33f6425a5.zip |
Follow up r16209 moving on; yet another performance improvement. added 3 other states for the system to speed up. modified the scs_flag to be accurate (with one conditional flag they could stack and give undesired results e.g. with cloacking)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16210 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/clif.c')
-rw-r--r-- | src/map/clif.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index 7d508eb21..f5066551a 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -10010,18 +10010,11 @@ void clif_parse_TakeItem(int fd, struct map_session_data *sd) if (fitem == NULL || fitem->bl.type != BL_ITEM || fitem->bl.m != sd->bl.m) break; - - if (pc_cant_act(sd)) - break; - if(sd->sc.count && ( - sd->sc.data[SC_HIDING] || - sd->sc.data[SC_CLOAKING] || - sd->sc.data[SC_TRICKDEAD] || - sd->sc.data[SC_BLADESTOP] || - sd->sc.data[SC_CLOAKINGEXCEED] || - (sd->sc.data[SC_NOCHAT] && sd->sc.data[SC_NOCHAT]->val1&MANNER_NOITEM)) - ) + if( sd->sc.cant.pickup ) + break; + + if (pc_cant_act(sd)) break; if (!pc_takeitem(sd, fitem)) |