UNPKG

md5-fight-plus

Version:

37 lines (34 loc) 1.08 kB
import { Skill } from "@/types/skill"; import { PlayerInstanceProperty } from "@/types/player"; import { getOpponent, getRandomItem, releaseFrostbite, removeHookInRoundEnd, } from "@/utils"; import { FIRE_TYPE } from "../firing"; const getAttackInfo = (player: PlayerInstanceProperty, atk: number) => { const defender = getOpponent(player); const info = [ `空气中逐渐浮现出一丝冰晶,随着时间流逝,这片空间都被冻结了!${player.name}释放【绝对零度】,施加【霜蚀】50!`, ]; return getRandomItem(info); }; export function _absoluteZero(player: PlayerInstanceProperty) { const id = player.hooks.onAttack.tap("absoluteZero", (props) => { releaseFrostbite(player, 50); player.battleField.logger.addInfo( getAttackInfo(player, 5), player.hooks.onAttack ); return { ...props, damage: 0 }; }); removeHookInRoundEnd(player, id, "onAttack"); } export const absoluteZero: Skill = { name: "绝对零度", description: "【霜蚀】50", mana: 8, run: _absoluteZero, type: [FIRE_TYPE], };