diff options
author | celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2004-12-20 11:20:46 +0000 |
---|---|---|
committer | celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2004-12-20 11:20:46 +0000 |
commit | 274a85296ab978f42c083e1dfbf8764ab67de6d0 (patch) | |
tree | 5298f681c02b5ba4a49c30697feb62528a0047e8 /src/map/pc.c | |
parent | 492443cd3a0eddabb24212e6b04a3f7d3c9bce88 (diff) | |
download | hercules-274a85296ab978f42c083e1dfbf8764ab67de6d0.tar.gz hercules-274a85296ab978f42c083e1dfbf8764ab67de6d0.tar.bz2 hercules-274a85296ab978f42c083e1dfbf8764ab67de6d0.tar.xz hercules-274a85296ab978f42c083e1dfbf8764ab67de6d0.zip |
* Reverting a change on deleting any skill units when we're logging off
* Added check whether an item is allowed to be dropped
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@655 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/pc.c')
-rw-r--r-- | src/map/pc.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/map/pc.c b/src/map/pc.c index 4e90aebd2..4a019de58 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -1475,7 +1475,7 @@ int pc_calcstatus(struct map_session_data* sd,int first) } // New guild skills - Celest - if (sd->status.guild_id > 0) { + if (sd->status.guild_id > 0 && !(first&4)) { struct guild *g; if ((g = guild_search(sd->status.guild_id)) && strcmp(sd->status.name,g->master)==0) { if (!sd->state.leadership_flag && guild_checkskill(g, GD_LEADERSHIP)>0) { @@ -3174,19 +3174,16 @@ int pc_dropitem(struct map_session_data *sd,int n,int amount) nullpo_retr(1, sd); if(n < 0 || n >= MAX_INVENTORY) - return 1; - if(amount <= 0) - return 1; - if (sd->status.inventory[n].nameid <= 0 || sd->status.inventory[n].amount < amount || sd->trade_partner != 0 || sd->vender_id != 0 || - sd->status.inventory[n].amount <= 0) + sd->status.inventory[n].amount <= 0 || + itemdb_isdropable(sd->status.inventory[n].nameid) == 0) // Celest return 1; map_addflooritem(&sd->status.inventory[n], amount, sd->bl.m, sd->bl.x, sd->bl.y, NULL, NULL, NULL, 0); pc_delitem(sd, n, amount, 0); |