|
|
|
@ -1,9 +1,9 @@
@@ -1,9 +1,9 @@
|
|
|
|
|
import { Attack, SufPassiveSkill } from './base'; |
|
|
|
|
import { ActionSkill, Attack, PassiveSkill, SufPassiveSkill } from './base'; |
|
|
|
|
import i18n from '../i18n'; |
|
|
|
|
import { replace, BattleRole } from '@/tool'; |
|
|
|
|
import { ControlAbnormal } from './buff'; |
|
|
|
|
import { ControlAbnormal, LiuXue } from './buff'; |
|
|
|
|
const { t } = i18n; |
|
|
|
|
|
|
|
|
|
//冰刃
|
|
|
|
|
export class IceBlade extends SufPassiveSkill { |
|
|
|
|
name: string = 'iceBlade'; |
|
|
|
|
rate: number = 10; |
|
|
|
@ -22,13 +22,37 @@ export class IceBlade extends SufPassiveSkill {
@@ -22,13 +22,37 @@ export class IceBlade extends SufPassiveSkill {
|
|
|
|
|
owner.battleLog(replace(t('skill.iceBlade.2'), [additional, t(target.type), this.last])); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
export class SeeRed extends Attack { |
|
|
|
|
order: number = 99; |
|
|
|
|
//见红
|
|
|
|
|
export class SeeRed extends ActionSkill { |
|
|
|
|
name: string = 'seeRed'; |
|
|
|
|
cd: number = 4; |
|
|
|
|
precent: number = 200; |
|
|
|
|
layer: number = 5; |
|
|
|
|
cd: number = 5; |
|
|
|
|
last: number = 5; |
|
|
|
|
desc(): string { |
|
|
|
|
return replace(t('skill.seeRed.1'), [this.precent, this.cd]); |
|
|
|
|
return replace(t('skill.seeRed.1'), [this.layer, this.last]) + replace(t('skill.seeRed.2'), [this.cd]); |
|
|
|
|
} |
|
|
|
|
use(owner: BattleRole, target: BattleRole): void { |
|
|
|
|
owner.skillPercent = 0; |
|
|
|
|
const liuxue = new LiuXue(this.layer, this.last); |
|
|
|
|
target.putBuff(liuxue); |
|
|
|
|
owner.battleLog(replace(t('skill.user'), [t(owner.type), t('skill.' + this.name + '.0')]) + replace(t('skill.seeRed.1'), [this.layer, this.last])); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
//鳍刺
|
|
|
|
|
export class QiCi extends SufPassiveSkill { |
|
|
|
|
name: string = 'qici'; |
|
|
|
|
rate: number = 30; |
|
|
|
|
layer: number = 3; |
|
|
|
|
last: number = 4; |
|
|
|
|
desc(): string { |
|
|
|
|
return replace(t('skill.qici.1'), [this.rate, this.layer, this.last]); |
|
|
|
|
} |
|
|
|
|
trigger(owner: BattleRole, target: BattleRole): boolean { |
|
|
|
|
return owner.dmg > 0 && Math.random() < this.rate / 100; |
|
|
|
|
} |
|
|
|
|
takeEffect(owner: BattleRole, target: BattleRole): void { |
|
|
|
|
const liuxue = new LiuXue(this.layer, this.last); |
|
|
|
|
target.putBuff(liuxue); |
|
|
|
|
owner.battleLog(replace(t('skill.qici.2'), [t(target.type), this.layer, this.last])); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|