summaryrefslogtreecommitdiff
path: root/src/map/status.c
diff options
context:
space:
mode:
authorskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-04-21 19:55:35 +0000
committerskotlex <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-04-21 19:55:35 +0000
commit67b2fe3dac066c0d917fcd208b59895d62788d1f (patch)
treec44cdf5f185d7fad1d8a65a306ec117e353b21e5 /src/map/status.c
parent90796b261595dd03227e6000978a600178f0c4ff (diff)
downloadhercules-67b2fe3dac066c0d917fcd208b59895d62788d1f.tar.gz
hercules-67b2fe3dac066c0d917fcd208b59895d62788d1f.tar.bz2
hercules-67b2fe3dac066c0d917fcd208b59895d62788d1f.tar.xz
hercules-67b2fe3dac066c0d917fcd208b59895d62788d1f.zip
- SC_CLOAKING's val4 now holds whether cloaking ends or not on attack.
- Implemented NPC_INVISIBLE, it starts SC_CLOAKING with val4 set to 1, skill duration is 30 secs. - Moved uncloaking on attack from attack_timer_sub to battle_calc_weapon_attack. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6223 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/status.c')
-rw-r--r--src/map/status.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/map/status.c b/src/map/status.c
index 14498f490..a4e47a97f 100644
--- a/src/map/status.c
+++ b/src/map/status.c
@@ -206,6 +206,7 @@ void initChangeTables(void) {
set_sc(NPC_STOP, SC_STOP, SI_BLANK);
set_sc(NPC_BREAKWEAPON, SC_BROKENWEAPON, SI_BROKENWEAPON);
set_sc(NPC_BREAKARMOR, SC_BROKENARMOR, SI_BROKENARMOR);
+ set_sc(NPC_INVISIBLE, SC_CLOAKING, SI_CLOAKING);
set_sc(LK_AURABLADE, SC_AURABLADE, SI_AURABLADE);
set_sc(LK_PARRYING, SC_PARRYING, SI_PARRYING);
set_sc(LK_CONCENTRATION, SC_CONCENTRATION, SI_CONCENTRATION);
@@ -4178,11 +4179,17 @@ int status_change_start(struct block_list *bl,int type,int rate,int val1,int val
case SC_CLOAKING: /* クロ?キング */
if (flag&4)
break;
- if(bl->type != BL_PC)
- tick = 5000*val1;
calc_flag = 1; // [Celest]
val2 = tick;
val3 = type==SC_CLOAKING ? 130-val1*3 : 135-val1*5;
+ if (!val4)
+ { //val4 signals eternal cloaking (not cancelled on attack) [Skotlex]
+ //Standard cloaking.
+ if (bl->type == BL_PC)
+ val4 = battle_config.pc_cloak_check_type&2?1:0;
+ else
+ val4 = battle_config.monster_cloak_check_type&2?1:0;
+ }
break;
case SC_SIGHT: /* サイト/ルアフ */
case SC_RUWACH: