# 无名杀技能代码:玉碎 ```javascript // 玉碎技能实现 skills.lieyu: { name: "玉碎", trigger: { player: "phaseStart" }, filter: function (event, player) { return player.hp > 0; // 只有体力大于0才能发动 }, content: function () { // 选择一名其他角色作为目标 let target = game.choosePlayerTarget(this, "请选择一名其他角色", "he"); if (target) { let lose = this.player.hp; // 记录当前体力值 // 失去所有体力 this.player.loseHp(lose, this); // 对目标造成等量伤害 target.damage(lose, this); game.log(this.player, "发动了【玉碎】,失去了所有" + lose + "点体力,并对", target, "造成了" + lose + "点伤害"); } }, ai: { // AI使用策略:当自己体力较低且能击杀敌人时使用 value: function (player, event) { if (player.hp <= 1) return 0; // 只有1点体力时不建议使用 let enemies = game.getEnemies(player); if (enemies.length === 0) return 0; // 检查是否有敌人血量低于自己当前血量 let canKill = enemies.some(e => e.hp <= player.hp); return canKill ? 5 : -5; } } } ``` ## 代码说明: 1. 技能触发时机为"phaseStart"(回合开始时) 2. 技能会先让使用者失去所有体力,然后对目标造成等量伤害 3. 添加了AI逻辑,使AI能合理使用该技能 ## 注意事项: - 技能使用时需要确保目标选择合法(不能选择自己) - 失去体力和造成伤害的顺序很重要,必须先失去体力再造成伤害 - 该技能有自杀性质,使用时需谨慎评估收益 [2025-05-04 13:59:48 | AI写代码神器 | 451点数解答]