diff options
author | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-08-01 15:56:57 +0000 |
---|---|---|
committer | skotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-08-01 15:56:57 +0000 |
commit | a9397aeb5a7a50c1fae39dbacb40faeb0722f6ae (patch) | |
tree | be977ec88a9f562f1d3f8b1ed2509ae507fa9d7c /src/map/status.c | |
parent | d9ef2dcf2cbc5fe59f8c22641760bada628f0810 (diff) | |
download | hercules-a9397aeb5a7a50c1fae39dbacb40faeb0722f6ae.tar.gz hercules-a9397aeb5a7a50c1fae39dbacb40faeb0722f6ae.tar.bz2 hercules-a9397aeb5a7a50c1fae39dbacb40faeb0722f6ae.tar.xz hercules-a9397aeb5a7a50c1fae39dbacb40faeb0722f6ae.zip |
- Modified Self Destruction, so that Marine Spheres in non-versus maps will hurt only enemies, while in all other situations this skill will hurt everyone around them.
- Expanded setting debuff_on_logout so that &1 removes negative buffs and &2 removes positive buffs.
- Food status boosts will no longer end on death, but they will end when you respawn or logout.
- Added battle config file status.conf, moved some settings from skill.conf and battle.conf to it since they are entirely Status-Change related.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8033 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r-- | src/map/status.c | 38 |
1 files changed, 29 insertions, 9 deletions
diff --git a/src/map/status.c b/src/map/status.c index 2e3607ec8..87ebd6795 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -5623,16 +5623,36 @@ int status_change_clear(struct block_list *bl,int type) skill_stop_dancing(bl); for(i = 0; i < SC_MAX; i++) { - //Type 0: PC killed -> Place here stats that do not dispel on death. - if(sc->data[i].timer == -1 || - (type == 0 && ( - i == SC_EDP || i == SC_MELTDOWN || i == SC_XMAS || i == SC_NOCHAT || - i == SC_FUSION || i == SC_TKREST || i == SC_READYSTORM || - i == SC_READYDOWN || i == SC_READYCOUNTER || i == SC_READYTURN || - i == SC_DODGE || i == SC_JAILED - ))) + if(sc->data[i].timer == -1) + continue; + if(type == 0) + switch (i) + { //Type 0: PC killed -> Place here stats that do not dispel on death. + case SC_EDP: + case SC_MELTDOWN: + case SC_XMAS: + case SC_NOCHAT: + case SC_FUSION: + case SC_TKREST: + case SC_READYSTORM: + case SC_READYDOWN: + case SC_READYCOUNTER: + case SC_READYTURN: + case SC_DODGE: + case SC_JAILED: + case SC_STRFOOD: + case SC_AGIFOOD: + case SC_VITFOOD: + case SC_INTFOOD: + case SC_DEXFOOD: + case SC_LUKFOOD: + case SC_HITFOOD: + case SC_FLEEFOOD: + case SC_BATKFOOD: + case SC_WATKFOOD: + case SC_MATKFOOD: continue; - + } status_change_end(bl, i, -1); if (type == 1 && sc->data[i].timer != -1) |