UNPKG

md5-fight-plus

Version:

47 lines (45 loc) 1.25 kB
import { Skill } from "@/types/skill"; import { PlayerInstanceProperty } from "@/types/player"; import _ from "lodash"; import { getOpponent, getRandomItem, releasePoison, removeHookInRoundEnd, } from "@/utils"; import { POISON_TYPE } from "."; import { onAttack } from "@/logs"; const getAttackInfo = (player: PlayerInstanceProperty) => { const info = [`【毒雾】蔓延....`]; return getRandomItem(info); }; export function _poisonCloud(player: PlayerInstanceProperty) { let first = true; player.hooks.onAttack.tap( { name: "poisonCloud", lives: 1000, }, ({ battleField, oneRoundContext }) => { const opponent = getOpponent(player); releasePoison(opponent, 2); if (first) { player.battleField.logger.addInfo( player.name + "释放了【毒雾】", onAttack ); } else { player.battleField.logger.addInfo(getAttackInfo(player), onAttack); } first = false; return { battleField, oneRoundContext, damage: 0 }; } ); } export const poisonCloud: Skill = { name: "毒雾", description: "接下来的整场战斗,我方每回合结束时施加【毒药】2", mana: 3, run: _poisonCloud, type: [POISON_TYPE], };