md5-fight-plus
Version:
91 lines (90 loc) • 2.26 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const battle_field_1 = require("../../../battle-field");
const player_1 = require("../../../player");
const vitest_1 = require("vitest");
function createPlayer(player) {
return (0, player_1.loadPlayer)({
name: player.name,
skills: player.skills || ["a"],
level: 1,
baseProperty: {
SPD: 10,
STR: 10,
MANA: 10,
CON: 10,
},
});
}
function fight(p1, p2) {
const battleField = (0, battle_field_1.createBattleField)(p1, p2);
battleField.fight();
console.log(battleField.logger.LogContainer.map((item) => item.message).join("\n"));
return battleField;
}
(0, vitest_1.test)("normalAttack", () => {
const p1 = createPlayer({
name: "p1",
skills: ["normalAttack"],
});
const p2 = createPlayer({
name: "p2",
skills: ["normalAttack"],
});
fight(p1, p2);
});
(0, vitest_1.test)("assassinate", () => {
const p1 = createPlayer({
name: "p1",
skills: ["assassinate"],
});
const p2 = createPlayer({
name: "p2",
skills: ["normalAttack"],
});
fight(p1, p2);
});
(0, vitest_1.test)("finalAttack", () => {
const p1 = createPlayer({
name: "p1",
skills: ["finalAttack"],
});
const p2 = createPlayer({
name: "p2",
skills: ["normalAttack"],
});
fight(p1, p2);
});
(0, vitest_1.test)("waiting && gentlyAttack", () => {
const p1 = createPlayer({
name: "p1",
skills: ["waiting", "gentlyAttack"],
});
const p2 = createPlayer({
name: "p2",
skills: ["normalAttack"],
});
fight(p1, p2);
});
(0, vitest_1.test)("sneak", () => {
const p1 = createPlayer({
name: "p1",
skills: ["sneak", "gentlyAttack"],
});
const p2 = createPlayer({
name: "p2",
skills: ["normalAttack"],
});
fight(p1, p2);
});
(0, vitest_1.test)("double", () => {
const p1 = createPlayer({
name: "p1",
skills: ["double", "normalAttack"],
});
const p2 = createPlayer({
name: "p2",
skills: ["normalAttack"],
});
fight(p1, p2);
});