酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

生成无名杀技能代码;技能名:魔网,技能效果:锁定技,你的锦囊牌在每回合中造成的首次伤害+1;出牌阶段开始时,你随机获得一张普通锦囊牌

# 无名杀技能代码:魔网 ```javascript // 魔网技能实现 { name: '魔网', frequency: '锁定技', description: '你的锦囊牌在每回合中造成的首次伤害+1;出牌阶段开始时,你随机获得一张普通锦囊牌', // 初始化技能 init: function(player) { player.storage.mowang = { damageBoosted: false, // 标记本回合是否已触发伤害加成 gotCard: false // 标记本回合是否已获得锦囊牌 }; // 监听回合开始事件重置标记 player.listenTo(game, 'phaseBegin', function(event) { if (event.player === player) { player.storage.mowang.damageBoosted = false; player.storage.mowang.gotCard = false; } }); // 监听出牌阶段开始事件 player.listenTo(game, 'phaseUseBegin', function(event) { if (event.player === player && !player.storage.mowang.gotCard) { // 随机获取一张普通锦囊牌 const normalTricks = game.filterCardPile(card => card.isTrick() && !card.isDelayTrick() ); if (normalTricks.length > 0) { const randomCard = normalTricks[Math.floor(Math.random() * normalTricks.length)]; player.gain(randomCard, 'hand'); player.storage.mowang.gotCard = true; game.log(player, '获得了锦囊牌【' + randomCard.name + '】'); } } }); // 监听伤害事件 player.listenTo(game, 'damage', function(event) { if (event.card && event.card.isTrick() && event.source === player && !player.storage.mowang.damageBoosted) { // 首次锦囊牌伤害+1 event.num++; player.storage.mowang.damageBoosted = true; game.log(player, '触发【魔网】效果,锦囊牌伤害+1'); } }); } } ``` 需要注意的逻辑点: 1. 伤害加成效果只对每回合的首次锦囊牌伤害有效,后续伤害不受影响 2. 随机获取的锦囊牌不包括延时类锦囊(如闪电、兵粮寸断等) 3. 技能效果在回合开始时重置,确保每回合都能触发一次加成和获取效果 [2025-04-10 01:24:19 | AI写代码神器 | 554点数解答]

相关提问