卡牌技能揭秘:“渐营”技能逻辑、存储机制与触发限制全解析
```javascript skill = { audio: 2, trigger: { player: "useCard", }, frequent: true, filter: function (event, player) { if (!event.cards || event.cards.length != 1) return false; if (_status.currentPhase != '出牌阶段') return false; // 检查渐营效果条件:与上一张牌花色或点数相同 let lastCard = player.storage.lastCard; if (!lastCard) return false; if (get.suit(event.cards[0]) != get.suit(lastCard) && event.cards[0].number != lastCard.number) { return false; } return true; }, content: function () { this.player.draw(); // 记录最后使用的牌 this.player.storage.lastCard = this.event.cards[0]; }, intro: { content: "card", }, group: ["jianying2", "jianying3"], }, skill2 = { name: "渐营", audio: 2, trigger: { player: "useCard", }, limited: { maxTimes: 1, phase: '出牌阶段' }, filter: function (event, player) { if (!event.cards || event.cards.length != 1) return false; if (_status.currentPhase != '出牌阶段') return false; // 检查转换基本牌的条件 let lastCard = player.storage.lastCard; if (lastCard && get.suit(lastCard)) { // 若上一张牌有花色,则当前牌花色视为相同 event.cards[0] = clone(event.cards[0]); event.cards[0].suit = lastCard.suit; } return true; }, content: function () { // 允许将牌当做基本牌使用 this.game.modifyCardType(this.event.cards[0], 'basic'); }, intro: { content: "card", }, group: ["jianying2", "jianying3"], } ``` 三条额外需要注意的逻辑点: 1. 存储机制:`player.storage.lastCard` 用于记录玩家在出牌阶段使用的上一张牌,需确保每次使用牌后正确更新此变量。 2. 花色继承:当玩家将牌当做基本牌使用时,若上一张牌有花色,当前牌的花色会继承上一张牌的花色,需通过 `clone` 和修改 `suit` 属性实现。 3. 触发次数限制:`limited` 中的 `maxTimes` 和 `phase` 确保技能在出牌阶段最多触发一次,避免重复摸牌或多次转换基本牌。 ######[AI写代码神器 | 713点数解答 | 2025-07-05 23:27:14]
- Java实现有序集合合并与交集算法(顺序表+单链表)(百度文心 | 1247点数解答 | 2026-03-25 10:35:22)27
- Golang开发:解析JSON数据时数值默认类型及示例解析(百度文心 | 393点数解答 | 2023-11-09 18:13:06)306
- SQL Working Areas Sizing: Manual vs. Automatic Policy - A Comprehensive Analysis(阿里通义 | 530点数解答 | 2024-05-13 10:55:58)326
- 深入解析Golang Work Stealing机制:多核处理器工作负载平衡之道(百度文心 | 391点数解答 | 2023-11-09 18:16:09)302
- 深入剖析Go语言:揭秘Go Hand Off机制及示例演示 (百度文心 | 413点数解答 | 2023-11-09 18:16:10)260
- 苍溪县 2026 全民阅读周:协同发力,书香满城展成效(字节豆包 | 862点数解答 | 2026-03-11 10:27:57)34
- 「alfr round 3」b:巧用贪心与栈,求解序列swap & delete最小操作数(百度文心 | 637点数解答 | 2024-12-21 14:56:50)330
- ALFR Round 3:巧用贪心与栈求解序列清空最小操作数(百度文心 | 969点数解答 | 2024-12-21 14:56:57)350
- 「alfr round 3」:揭秘长序列通过交换与删除操作清空的最小操作数(百度文心 | 1279点数解答 | 2024-12-21 14:57:07)408
- 「alfr round 3」:巧用算法求解b swap & delete序列清空最小操作数(百度文心 | 2038点数解答 | 2024-12-21 14:57:39)362
- 求解序列清空最小操作数:含Python代码与注意要点(字节豆包 | 372点数解答 | 2024-12-21 15:27:24)260
- C++ 求解长为 n 序列清空最小操作次数:含题目分析与代码实现(字节豆包 | 407点数解答 | 2024-12-21 15:27:41)324