Venom Splasher, Venom Knife (#8248)

- Venom Splasher now ignores +% damage cards, but no longer ignores weapon element
- Venom Splasher now uses the correct durations and cooldowns in pre-re (was already correct in renewal)
- Venom Splasher and Venom Knife now correctly use default poison duration
- Venom Splasher and Venom Knife now have a poison chance of 100%
- Fixes #8221
This commit is contained in:
Playtester 2024-04-12 21:56:39 +02:00 committed by GitHub
parent 9eff7be9cd
commit 81894eeba6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 43 additions and 65 deletions

View File

@ -4998,7 +4998,7 @@ Body:
TargetType: Attack TargetType: Attack
DamageFlags: DamageFlags:
NoDamage: true NoDamage: true
IgnoreElement: true IgnoreAtkCard: true
IgnoreFlee: true IgnoreFlee: true
Range: 1 Range: 1
Hit: Single Hit: Single
@ -5013,26 +5013,47 @@ Body:
CastTime: 1000 CastTime: 1000
Duration1: Duration1:
- Level: 1 - Level: 1
Time: 5000 Time: 11000
- Level: 2 - Level: 2
Time: 5500 Time: 10000
- Level: 3 - Level: 3
Time: 6000 Time: 9000
- Level: 4 - Level: 4
Time: 6500 Time: 8000
- Level: 5 - Level: 5
Time: 7000 Time: 7000
- Level: 6 - Level: 6
Time: 7500 Time: 6000
- Level: 7 - Level: 7
Time: 8000 Time: 5000
- Level: 8 - Level: 8
Time: 8500 Time: 4000
- Level: 9 - Level: 9
Time: 9000 Time: 3000
- Level: 10 - Level: 10
Time: 9500 Time: 2000
Duration2: 60000 Duration2: 60000
Cooldown:
- Level: 1
Time: 7500
- Level: 2
Time: 8000
- Level: 3
Time: 8500
- Level: 4
Time: 9000
- Level: 5
Time: 9500
- Level: 6
Time: 10000
- Level: 7
Time: 10500
- Level: 8
Time: 11000
- Level: 9
Time: 11500
- Level: 10
Time: 12000
Requires: Requires:
SpCost: SpCost:
- Level: 1 - Level: 1
@ -16942,32 +16963,13 @@ Body:
Skill: Skill:
Plagiarism: true Plagiarism: true
Reproduce: true Reproduce: true
Duration2: Duration2: 60000
- Level: 1
Time: 15000
- Level: 2
Time: 20000
- Level: 3
Time: 25000
- Level: 4
Time: 30000
- Level: 5
Time: 35000
- Level: 6
Time: 40000
- Level: 7
Time: 45000
- Level: 8
Time: 50000
- Level: 9
Time: 55000
- Level: 10
Time: 60000
Requires: Requires:
SpCost: 15 SpCost: 15
Ammo: Ammo:
Dagger: true Dagger: true
AmmoAmount: 1 AmmoAmount: 1
Status: Poison
- Id: 1005 - Id: 1005
Name: RG_CLOSECONFINE Name: RG_CLOSECONFINE
Description: Close Confine Description: Close Confine

View File

@ -5243,7 +5243,7 @@ Body:
TargetType: Attack TargetType: Attack
DamageFlags: DamageFlags:
NoDamage: true NoDamage: true
IgnoreElement: true IgnoreAtkCard: true
IgnoreFlee: true IgnoreFlee: true
Range: 1 Range: 1
Hit: Single Hit: Single
@ -5277,7 +5277,7 @@ Body:
Time: 3000 Time: 3000
- Level: 10 - Level: 10
Time: 2000 Time: 2000
Duration2: 20000 Duration2: 18000
Cooldown: Cooldown:
- Level: 1 - Level: 1
Time: 7500 Time: 7500
@ -18507,32 +18507,13 @@ Body:
Skill: Skill:
Plagiarism: true Plagiarism: true
Reproduce: true Reproduce: true
Duration2: Duration2: 18000
- Level: 1
Time: 15000
- Level: 2
Time: 20000
- Level: 3
Time: 25000
- Level: 4
Time: 30000
- Level: 5
Time: 35000
- Level: 6
Time: 40000
- Level: 7
Time: 45000
- Level: 8
Time: 50000
- Level: 9
Time: 55000
- Level: 10
Time: 60000
Requires: Requires:
SpCost: 35 SpCost: 35
Ammo: Ammo:
Dagger: true Dagger: true
AmmoAmount: 1 AmmoAmount: 1
Status: Poison
- Id: 1005 - Id: 1005
Name: RG_CLOSECONFINE Name: RG_CLOSECONFINE
Description: Close Confine Description: Close Confine

View File

@ -1422,14 +1422,12 @@ int skill_additional_effect( struct block_list* src, struct block_list *bl, uint
break; break;
case AS_VENOMKNIFE: case AS_VENOMKNIFE:
if (sd) //Poison chance must be that of Envenom. [Skotlex]
skill_lv = pc_checkskill(sd, TF_POISON);
[[fallthrough]];
case TF_POISON:
case AS_SPLASHER: case AS_SPLASHER:
if(!sc_start2(src,bl,SC_POISON,(4*skill_lv+10),skill_lv,src->id,skill_get_time2(skill_id,skill_lv)) sc_start2(src, bl, SC_POISON, 100, skill_lv, src->id, skill_get_time2(skill_id, skill_lv));
&& sd && skill_id==TF_POISON break;
)
case TF_POISON:
if (!sc_start2(src, bl, SC_POISON, (4 * skill_lv + 10), skill_lv, src->id, skill_get_time2(skill_id, skill_lv)) && sd)
clif_skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0); clif_skill_fail(sd, skill_id, USESKILL_FAIL_LEVEL, 0);
break; break;
@ -10254,9 +10252,6 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
} }
clif_skill_nodamage(src,bl,skill_id,skill_lv, clif_skill_nodamage(src,bl,skill_id,skill_lv,
sc_start4(src,bl,type,100,skill_lv,skill_id,src->id,skill_get_time(skill_id,skill_lv),1000)); sc_start4(src,bl,type,100,skill_lv,skill_id,src->id,skill_get_time(skill_id,skill_lv),1000));
#ifndef RENEWAL
if (sd) skill_blockpc_start (sd, skill_id, skill_get_time(skill_id, skill_lv)+3000);
#endif
break; break;
case PF_MINDBREAKER: case PF_MINDBREAKER: