From d344caa08d461f8c1f8e82ed07765fea05305a33 Mon Sep 17 00:00:00 2001 From: Atemo Date: Fri, 21 Jun 2024 14:48:26 +0200 Subject: [PATCH] Implemented NPC_DEADLYCURSE2 and NPC_DEADLYCURSE (#8447) * Implemented NPC_DEADLYCURSE2 * Splash skill inflicting no damage and activating the status "Deadly_Defeasance" on surrounding target * Unknown if the duration scale with level. The duration at level 5 is 30s * Implemented NPC_DEADLYCURSE * There is not much information on this, assuming it is a single target skill * Does not deal any damage * No info on max level, monsters use it level 1 * Duration at level 1 is 15s * Uncommented NPC_DEADLYCURSE2 in mob_skill_db --- db/re/mob_skill_db.txt | 4 ++-- db/re/skill_db.yml | 37 +++++++++++++++++++++++++++++++++++++ src/map/skill.cpp | 2 ++ 3 files changed, 41 insertions(+), 2 deletions(-) diff --git a/db/re/mob_skill_db.txt b/db/re/mob_skill_db.txt index a4bbcd28d9..a57f29caf0 100644 --- a/db/re/mob_skill_db.txt +++ b/db/re/mob_skill_db.txt @@ -14673,7 +14673,7 @@ 21360,EP18_MD_SCHULANG_L@NPC_TELEKINESISATTACK,attack,191,2,3000,0,5000,yes,target,always,0,,,,,,, 21360,EP18_MD_SCHULANG_L@NPC_POWERUP,attack,349,3,5000,0,30000,yes,self,always,0,,,,,,, 21360,EP18_MD_SCHULANG_L@NPC_DARKSTRIKE,chase,340,3,3000,200,15000,yes,target,always,0,,,,,,, -// 21360,EP18_MD_SCHULANG_L@NPC_DEADLYCURSE2,attack,779,5,5000,1000,30000,no,self,always,0,,,,,,55, +21360,EP18_MD_SCHULANG_L@NPC_DEADLYCURSE2,attack,779,5,5000,1000,30000,no,self,always,0,,,,,,55, 21360,EP18_MD_SCHULANG_L@NPC_BLOODDRAIN,attack,199,1,2000,0,10000,yes,target,always,0,,,,,,, 21360,EP18_MD_SCHULANG_L@NPC_DARKSTRIKE,attack,340,3,3000,200,15000,yes,target,always,0,,,,,,, 21360,EP18_MD_SCHULANG_L@NPC_WIDESTONE2,attack,759,3,3000,500,30000,no,target,always,0,,,,,,, @@ -14698,6 +14698,6 @@ 21361,EP18_MD_DEMI_FREYJA_L@NPC_HELLJUDGEMENT2,attack,768,5,1000,500,120000,yes,target,always,0,,,,,,, 21361,EP18_MD_DEMI_FREYJA_L@NPC_CHANGEDARKNESS,attack,168,1,1000,0,120000,yes,self,always,0,,,,,,, 21361,EP18_MD_DEMI_FREYJA_L@NPC_CHANGEHOLY,attack,167,1,3000,0,120000,yes,self,always,0,,,,,,, -// 21361,EP18_MD_DEMI_FREYJA_L@NPC_DEADLYCURSE2,attack,779,5,5000,1000,30000,no,self,always,0,,,,,,55, +21361,EP18_MD_DEMI_FREYJA_L@NPC_DEADLYCURSE2,attack,779,5,5000,1000,30000,no,self,always,0,,,,,,55, 21361,EP18_MD_DEMI_FREYJA_L@NPC_CANE_OF_EVIL_EYE,chase,780,3,8000,300,30000,no,target,always,0,,,,,,, 21361,EP18_MD_DEMI_FREYJA_L@NPC_CANE_OF_EVIL_EYE,attack,780,5,7000,300,30000,yes,target,always,0,,,,,,, diff --git a/db/re/skill_db.yml b/db/re/skill_db.yml index fcdc35aec2..baf04fa4d6 100644 --- a/db/re/skill_db.yml +++ b/db/re/skill_db.yml @@ -18362,6 +18362,43 @@ Body: HitCount: 1 Duration1: 60000 Status: Relieve_off + - Id: 776 + Name: NPC_DEADLYCURSE + Description: Deadly Curse + MaxLevel: 1 + TargetType: Attack + DamageFlags: + NoDamage: true + Flags: + IgnoreGtb: true + IsNpc: true + Range: 1 + Duration1: 15000 + Status: Deadly_Defeasance + - Id: 779 + Name: NPC_DEADLYCURSE2 + Description: Deadly Curse 2 + MaxLevel: 5 + TargetType: Self + DamageFlags: + NoDamage: true + Splash: true + Flags: + IgnoreGtb: true + IsNpc: true + SplashArea: + - Level: 1 + Area: 2 + - Level: 2 + Area: 3 + - Level: 3 + Area: 4 + - Level: 4 + Area: 5 + - Level: 5 + Area: 6 + Duration2: 30000 + Status: Deadly_Defeasance - Id: 780 Name: NPC_CANE_OF_EVIL_EYE Description: Cane of evil eye diff --git a/src/map/skill.cpp b/src/map/skill.cpp index 61755a412c..3d93ccb29b 100755 --- a/src/map/skill.cpp +++ b/src/map/skill.cpp @@ -8018,6 +8018,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui break; case NPC_GRADUAL_GRAVITY: + case NPC_DEADLYCURSE: status_change_start(src, bl, type, 10000, skill_lv, 0, 0, 0, skill_get_time(skill_id, skill_lv), SCSTART_NOAVOID|SCSTART_NOTICKDEF|SCSTART_NORATEDEF); clif_skill_nodamage(src, bl, skill_id, skill_lv, 1); break; @@ -10758,6 +10759,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui case NPC_WIDE_DEEP_SLEEP: case NPC_WIDESIREN: case NPC_WIDEWEB: + case NPC_DEADLYCURSE2: if (flag&1){ switch ( type ) { case SC_BURNING: