pi-jinyong-xia 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +378 -0
  3. package/dist/assets/portrait-ascii/portrait-data.json +1 -0
  4. package/dist/extensions/characters.d.ts +19 -0
  5. package/dist/extensions/characters.js +52 -0
  6. package/dist/extensions/characters.js.map +1 -0
  7. package/dist/extensions/index.d.ts +1 -0
  8. package/dist/extensions/index.js +20 -0
  9. package/dist/extensions/index.js.map +1 -0
  10. package/dist/extensions/missions-mbti.d.ts +39 -0
  11. package/dist/extensions/missions-mbti.js +101 -0
  12. package/dist/extensions/missions-mbti.js.map +1 -0
  13. package/dist/extensions/missions-templates-danger.d.ts +5 -0
  14. package/dist/extensions/missions-templates-danger.js +432 -0
  15. package/dist/extensions/missions-templates-danger.js.map +1 -0
  16. package/dist/extensions/missions-templates-safe.d.ts +34 -0
  17. package/dist/extensions/missions-templates-safe.js +307 -0
  18. package/dist/extensions/missions-templates-safe.js.map +1 -0
  19. package/dist/extensions/missions-templates.d.ts +12 -0
  20. package/dist/extensions/missions-templates.js +26 -0
  21. package/dist/extensions/missions-templates.js.map +1 -0
  22. package/dist/extensions/missions.d.ts +27 -0
  23. package/dist/extensions/missions.js +81 -0
  24. package/dist/extensions/missions.js.map +1 -0
  25. package/dist/extensions/state.d.ts +89 -0
  26. package/dist/extensions/state.js +205 -0
  27. package/dist/extensions/state.js.map +1 -0
  28. package/dist/extensions/telemetry.d.ts +179 -0
  29. package/dist/extensions/telemetry.js +241 -0
  30. package/dist/extensions/telemetry.js.map +1 -0
  31. package/dist/extensions/wuxue-achievements.d.ts +27 -0
  32. package/dist/extensions/wuxue-achievements.js +92 -0
  33. package/dist/extensions/wuxue-achievements.js.map +1 -0
  34. package/dist/extensions/wuxue-boss.d.ts +15 -0
  35. package/dist/extensions/wuxue-boss.js +405 -0
  36. package/dist/extensions/wuxue-boss.js.map +1 -0
  37. package/dist/extensions/wuxue-data.d.ts +35 -0
  38. package/dist/extensions/wuxue-data.js +409 -0
  39. package/dist/extensions/wuxue-data.js.map +1 -0
  40. package/dist/extensions/wuxue-encounter.d.ts +23 -0
  41. package/dist/extensions/wuxue-encounter.js +368 -0
  42. package/dist/extensions/wuxue-encounter.js.map +1 -0
  43. package/dist/extensions/wuxue-faction.d.ts +43 -0
  44. package/dist/extensions/wuxue-faction.js +182 -0
  45. package/dist/extensions/wuxue-faction.js.map +1 -0
  46. package/dist/extensions/wuxue-profession.d.ts +33 -0
  47. package/dist/extensions/wuxue-profession.js +117 -0
  48. package/dist/extensions/wuxue-profession.js.map +1 -0
  49. package/dist/extensions/wuxue-talent.d.ts +41 -0
  50. package/dist/extensions/wuxue-talent.js +209 -0
  51. package/dist/extensions/wuxue-talent.js.map +1 -0
  52. package/dist/extensions/wuxue-types.d.ts +155 -0
  53. package/dist/extensions/wuxue-types.js +28 -0
  54. package/dist/extensions/wuxue-types.js.map +1 -0
  55. package/dist/extensions/wuxue.d.ts +89 -0
  56. package/dist/extensions/wuxue.js +441 -0
  57. package/dist/extensions/wuxue.js.map +1 -0
  58. package/dist/extensions/xia-boss.d.ts +14 -0
  59. package/dist/extensions/xia-boss.js +337 -0
  60. package/dist/extensions/xia-boss.js.map +1 -0
  61. package/dist/extensions/xia-cmd-faction.d.ts +4 -0
  62. package/dist/extensions/xia-cmd-faction.js +313 -0
  63. package/dist/extensions/xia-cmd-faction.js.map +1 -0
  64. package/dist/extensions/xia-cmd-missions.d.ts +4 -0
  65. package/dist/extensions/xia-cmd-missions.js +232 -0
  66. package/dist/extensions/xia-cmd-missions.js.map +1 -0
  67. package/dist/extensions/xia-cmd-shop-rank.d.ts +4 -0
  68. package/dist/extensions/xia-cmd-shop-rank.js +155 -0
  69. package/dist/extensions/xia-cmd-shop-rank.js.map +1 -0
  70. package/dist/extensions/xia-cmd-stats.d.ts +4 -0
  71. package/dist/extensions/xia-cmd-stats.js +290 -0
  72. package/dist/extensions/xia-cmd-stats.js.map +1 -0
  73. package/dist/extensions/xia-commands.d.ts +19 -0
  74. package/dist/extensions/xia-commands.js +138 -0
  75. package/dist/extensions/xia-commands.js.map +1 -0
  76. package/dist/extensions/xia-events.d.ts +58 -0
  77. package/dist/extensions/xia-events.js +615 -0
  78. package/dist/extensions/xia-events.js.map +1 -0
  79. package/dist/extensions/xia-render.d.ts +65 -0
  80. package/dist/extensions/xia-render.js +490 -0
  81. package/dist/extensions/xia-render.js.map +1 -0
  82. package/dist/extensions/xia-select.d.ts +24 -0
  83. package/dist/extensions/xia-select.js +413 -0
  84. package/dist/extensions/xia-select.js.map +1 -0
  85. package/dist/extensions/xia.d.ts +14 -0
  86. package/dist/extensions/xia.js +145 -0
  87. package/dist/extensions/xia.js.map +1 -0
  88. package/entry.js +18 -0
  89. package/package.json +61 -0
  90. package/skills/SKILL.md +83 -0
@@ -0,0 +1,409 @@
1
+ // ═══════════════════════════════════════════════════════════════════════════
2
+ // 武功
3
+ // ═══════════════════════════════════════════════════════════════════════════
4
+ export const SKILL_POOL = [
5
+ { id: "jiuyang", name: "九阳神功", description: "至阳至刚,内力生生不息", element: "火" },
6
+ { id: "jiuyin", name: "九阴真经", description: "天下武学总纲,博大精深", element: "水" },
7
+ { id: "beiming", name: "北冥神功", description: "海纳百川,吸纳万物内力", element: "水" },
8
+ { id: "lingbo", name: "凌波微步", description: "按易理行走,飘然若仙", element: "水" },
9
+ { id: "qiankun", name: "乾坤大挪移", description: "移星换斗,扭转乾坤", element: "土" },
10
+ { id: "yiyang", name: "一阳指", description: "大理段氏武功,一指点乾坤", element: "火" },
11
+ { id: "taiji-quan", name: "太极拳", description: "以柔克刚,四两拨千斤", element: "土" },
12
+ { id: "taiji-jian", name: "太极剑法", description: "剑随心动,圆转如意", element: "土" },
13
+ { id: "tanzhi", name: "弹指神通", description: "弹指间制敌,无坚不摧", element: "金" },
14
+ { id: "bihai", name: "碧海潮生曲", description: "以音律攻心,防不胜防", element: "水" },
15
+ { id: "anran", name: "黯然销魂掌", description: "至情至性,掌力无穷", element: "木" },
16
+ { id: "liumai", name: "六脉神剑", description: "无形气剑,隔空伤人", element: "金" },
17
+ { id: "xianglong", name: "降龙十八掌", description: "天下第一阳刚掌法", element: "火" },
18
+ { id: "dugu", name: "独孤九剑", description: "无招胜有招,破尽天下武功", element: "金" },
19
+ { id: "xixing", name: "吸星大法", description: "吸取他人内力为己用", element: "木" },
20
+ { id: "zuoyou", name: "左右互搏", description: "一心二用,双倍战力", element: "木" },
21
+ { id: "yirong", name: "蛤蟆功", description: "蓄力一击,势不可挡", element: "土" },
22
+ { id: "shenxing", name: "金刚不坏体", description: "刀枪不入,万法不侵", element: "金" },
23
+ { id: "huagu", name: "化骨绵掌", description: "绵里藏针,阴柔至极", element: "土" },
24
+ { id: "dagou", name: "打狗棒法", description: "丐帮镇帮武功,变化多端", element: "木" },
25
+ // 角色专属武功
26
+ { id: "douzhuan", name: "斗转星移", description: "以彼之道还施彼身", element: "金" },
27
+ { id: "wuxue-dianpin", name: "武学点评", description: "熟读天下武学,指点乾坤", element: "水" },
28
+ { id: "bingxue", name: "冰雪聪明", description: "聪慧灵巧,变化莫测", element: "水" },
29
+ { id: "jiuyin-zhuazhao", name: "九阴白骨爪", description: "九阴真经邪功,阴毒无比", element: "水" },
30
+ { id: "eymei-jianfa", name: "峨眉剑法", description: "峨眉派镇山剑法", element: "金" },
31
+ { id: "moulue", name: "谋略无双", description: "运筹帷幄,决胜千里", element: "土" },
32
+ { id: "qinyin", name: "琴音化剑", description: "以琴音驭剑,音波伤人", element: "水" },
33
+ { id: "ningbi", name: "凝碧剑法", description: "天地会总舵主绝学", element: "水" },
34
+ { id: "hujiadao", name: "胡家刀法", description: "胡一刀家传刀法", element: "金" },
35
+ { id: "lanxin", name: "兰心蕙质", description: "大家闺秀,慧质兰心", element: "木" },
36
+ { id: "yangjia-qiang", name: "杨家枪法", description: "杨家将世代相传枪法", element: "金" },
37
+ { id: "nizhao", name: "泥沼遁术", description: "泥沼中如鱼得水", element: "土" },
38
+ ];
39
+ /** 最大武功持有数 */
40
+ export const MAX_SKILLS = 5;
41
+ export function getRandomSkill() {
42
+ return SKILL_POOL[Math.floor(Math.random() * SKILL_POOL.length)];
43
+ }
44
+ /** 获取一个未拥有的随机武功 */
45
+ // 所有角色的专属武功 ID 集合
46
+ export const EXCLUSIVE_SKILL_IDS = new Set([
47
+ "douzhuan", "wuxue-dianpin", "liumai", "lingbo", "xianglong", "dagou",
48
+ "bingxue", "jiuyin", "bihai", "zuoyou", "jiuyin-zhuazhao", "anran",
49
+ "dugu", "yirong", "eymei-jianfa", "qiankun", "jiuyang", "moulue",
50
+ "tanzhi", "qinyin", "huagu", "ningbi", "hujiadao", "lanxin",
51
+ "yangjia-qiang", "nizhao",
52
+ ]);
53
+ /** 获取公共武功(shop 可购买的,不含角色专属) */
54
+ export function getShopSkills(ownedIds) {
55
+ return SKILL_POOL.filter(s => !EXCLUSIVE_SKILL_IDS.has(s.id) && !ownedIds.includes(s.id));
56
+ }
57
+ export function getRandomUnownedSkill(ownedIds) {
58
+ const unowned = SKILL_POOL.filter(s => !ownedIds.includes(s.id));
59
+ if (unowned.length === 0)
60
+ return null;
61
+ return unowned[Math.floor(Math.random() * unowned.length)];
62
+ }
63
+ export function getSkill(id) {
64
+ return SKILL_POOL.find(s => s.id === id);
65
+ }
66
+ /** 武功升到下一级所需经验 */
67
+ export function getSkillXpToNext(level) {
68
+ return level * 80;
69
+ }
70
+ /** 给武功加经验,返回是否升级 */
71
+ export function addSkillXp(currentLevel, currentXp, amount) {
72
+ let level = currentLevel;
73
+ let xp = currentXp + amount;
74
+ let leveledUp = false;
75
+ while (xp >= getSkillXpToNext(level) && level < 20) {
76
+ xp -= getSkillXpToNext(level);
77
+ level++;
78
+ leveledUp = true;
79
+ }
80
+ return { level, xp, leveledUp };
81
+ }
82
+ /** 武功商店价格表 */
83
+ export function getSkillPrice() {
84
+ return 500;
85
+ }
86
+ // ═══════════════════════════════════════════════════════════════════════════
87
+ // 武器
88
+ // ═══════════════════════════════════════════════════════════════════════════
89
+ export const WEAPON_DEFS = [
90
+ // ── 凡品 ──
91
+ { id: "mu-jian", name: "木剑", type: "剑", attack: 4, rarity: "凡品", description: "木制长剑,习武练功之用", element: "木" },
92
+ { id: "cai-dao", name: "菜刀", type: "刀", attack: 3, rarity: "凡品", description: "厨房用刀,勉强可战", element: "金" },
93
+ { id: "tie-jian", name: "铁剑", type: "剑", attack: 8, rarity: "凡品", description: "精铁铸造,初入江湖", element: "金" },
94
+ { id: "sheng-xiu-tie-dao", name: "生锈铁刀", type: "刀", attack: 5, rarity: "凡品", description: "锈迹斑斑,但仍有杀伤力", element: "金" },
95
+ { id: "chun-gang-jian", name: "纯钢剑", type: "剑", attack: 10, rarity: "凡品", description: "纯钢所铸,坚硬锋利", element: "金" },
96
+ { id: "dan-dao", name: "单刀", type: "刀", attack: 10, rarity: "凡品", description: "五尺单面刀,厚重实用", element: "金" },
97
+ { id: "xi-yang-jian", name: "西洋剑", type: "剑", attack: 11, rarity: "凡品", description: "西洋传来的细长刺剑", element: "金" },
98
+ { id: "gang-dao", name: "钢刀", type: "刀", attack: 12, rarity: "凡品", description: "百炼钢锻造,锋利耐用", element: "金" },
99
+ { id: "bai-la-gan", name: "白蜡杆", type: "枪", attack: 11, rarity: "凡品", description: "一寸长一寸强", element: "木" },
100
+ { id: "qi-mei-gun", name: "齐眉棍", type: "棍", attack: 9, rarity: "凡品", description: "少林入门兵器", element: "木" },
101
+ { id: "mu-gun", name: "木棍", type: "棍", attack: 5, rarity: "凡品", description: "随手捡来的木棍", element: "木" },
102
+ { id: "tie-bi-shou", name: "铁匕首", type: "匕", attack: 8, rarity: "凡品", description: "寻常铁匠打造,短小精悍", element: "金" },
103
+ { id: "lu-ye-bian", name: "绿竹棒", type: "棒", attack: 7, rarity: "凡品", description: "翠竹削成,轻便灵巧", element: "木" },
104
+ { id: "fei-huang-shi", name: "飞蝗石", type: "暗", attack: 6, rarity: "凡品", description: "普通石子,暗器入门", element: "土" },
105
+ { id: "jin-qian-biao", name: "金钱镖", type: "暗", attack: 8, rarity: "凡品", description: "铜钱磨制而成的暗器", element: "金" },
106
+ { id: "fei-dao", name: "飞刀", type: "暗", attack: 10, rarity: "凡品", description: "小巧飞刀,百步之内伤人", element: "金" },
107
+ { id: "pu-ti-zi", name: "菩提子", type: "暗", attack: 12, rarity: "凡品", description: "菩提树籽制成,佛门暗器", element: "木" },
108
+ { id: "du-ji-li", name: "毒蒺藜", type: "暗", attack: 11, rarity: "凡品", description: "四角淬毒铁蒺藜", element: "土" },
109
+ { id: "liu-ye-dao", name: "柳叶刀", type: "刀", attack: 14, rarity: "凡品", description: "柳叶状薄钢刀,轻灵优美", element: "金" },
110
+ { id: "yan-ling-dao", name: "燕翎刀", type: "刀", attack: 15, rarity: "凡品", description: "状如燕翅,多为女子所用", element: "金" },
111
+ { id: "zhan-ma-dao", name: "斩马刀", type: "刀", attack: 16, rarity: "凡品", description: "沉重长刀,可斩战马", element: "金" },
112
+ // ── 良品 ──
113
+ { id: "jiu-huan-dao", name: "九环刀", type: "刀", attack: 17, rarity: "良品", description: "九环大刀,声威赫赫", element: "金" },
114
+ { id: "tu-niu-dao", name: "屠牛刀", type: "刀", attack: 18, rarity: "良品", description: "屠牛所用,刀锋厚重", element: "金" },
115
+ { id: "po-feng-dao", name: "破风刀", type: "刀", attack: 19, rarity: "良品", description: "刀势破风,势如破竹", element: "金" },
116
+ { id: "ning-bi-jian", name: "凝碧剑", type: "剑", attack: 18, rarity: "良品", description: "碧光莹莹,寒气逼人", element: "木" },
117
+ { id: "bi-shui-jian", name: "碧水剑", type: "剑", attack: 19, rarity: "良品", description: "碧水寒潭所铸,清波流转", element: "水" },
118
+ { id: "long-quan-jian", name: "龙泉剑", type: "剑", attack: 20, rarity: "良品", description: "龙泉宝剑,千年名剑", element: "金" },
119
+ { id: "leng-ning-jian", name: "冷凝剑", type: "剑", attack: 21, rarity: "良品", description: "寒气凝结,触之冰手", element: "水" },
120
+ { id: "huo-long-jian", name: "火龙剑", type: "剑", attack: 22, rarity: "良品", description: "赤红如焰,灼热逼人", element: "火" },
121
+ { id: "song-wen-jian", name: "松纹剑", type: "剑", attack: 20, rarity: "良品", description: "剑身松纹密布,古朴典雅", element: "木" },
122
+ { id: "zi-wei-ruan-jian", name: "紫薇软剑", type: "剑", attack: 23, rarity: "良品", description: "三十岁前所用,误伤义士", element: "金" },
123
+ { id: "bai-jian", name: "白剑", type: "剑", attack: 22, rarity: "良品", description: "通体雪白,峨眉之物", element: "金" },
124
+ { id: "hei-jian", name: "黑剑", type: "剑", attack: 22, rarity: "良品", description: "通体漆黑,无名之剑", element: "水" },
125
+ { id: "qin-jian", name: "秦剑", type: "剑", attack: 21, rarity: "良品", description: "古秦制式长剑", element: "金" },
126
+ { id: "bai-long-jian", name: "白龙剑", type: "剑", attack: 23, rarity: "良品", description: "白龙吐珠,剑气如虹", element: "金" },
127
+ { id: "jin-she-jian", name: "金蛇剑", type: "剑", attack: 24, rarity: "良品", description: "金蛇秘笈所载,诡异莫测", element: "金" },
128
+ { id: "zhou-gong-jian", name: "周公剑", type: "剑", attack: 22, rarity: "良品", description: "周公所遗之剑,厚重古朴", element: "土" },
129
+ { id: "bing-po-yin-zhen", name: "冰魄银针", type: "暗", attack: 20, rarity: "良品", description: "李莫愁暗器,寒毒入骨", element: "水" },
130
+ { id: "hei-xue-shen-zhen", name: "黑血神针", type: "暗", attack: 22, rarity: "良品", description: "魔教至宝,见血封喉", element: "土" },
131
+ { id: "yu-feng-zhen", name: "玉蜂针", type: "暗", attack: 18, rarity: "良品", description: "古墓派暗器,玉蜂尾针所制", element: "木" },
132
+ { id: "jin-she-zhui", name: "金蛇锥", type: "暗", attack: 23, rarity: "良品", description: "金蛇秘传暗器,诡异莫测", element: "金" },
133
+ { id: "fei-yan-yin-suo", name: "飞燕银梭", type: "暗", attack: 21, rarity: "良品", description: "银光飞梭,速度极快", element: "金" },
134
+ { id: "xue-dao", name: "血刀", type: "刀", attack: 24, rarity: "良品", description: "血刀门至宝,邪气凛然", element: "火" },
135
+ { id: "shu-nv-jian", name: "淑女剑", type: "剑", attack: 23, rarity: "良品", description: "古墓传承,柔美含锋", element: "水" },
136
+ // ── 精品 ──
137
+ { id: "chu-wang-jian", name: "楚王剑", type: "剑", attack: 28, rarity: "精品", description: "楚国名剑,王者之气", element: "金" },
138
+ { id: "fu-chai-jian", name: "夫差剑", type: "剑", attack: 29, rarity: "精品", description: "吴王夫差佩剑,锋芒毕露", element: "金" },
139
+ { id: "gong-bu-jian", name: "工布剑", type: "剑", attack: 30, rarity: "精品", description: "欧冶子所铸,削铁如泥", element: "金" },
140
+ { id: "ju-que-jian", name: "巨阙剑", type: "剑", attack: 32, rarity: "精品", description: "穿透巨阙,天下利器", element: "金" },
141
+ { id: "long-yuan-jian", name: "龙渊剑", type: "剑", attack: 31, rarity: "精品", description: "欧冶子与干将合铸,七星龙渊", element: "金" },
142
+ { id: "yuan-yang-dao", name: "鸳鸯刀", type: "刀", attack: 30, rarity: "精品", description: "仁者无敌,双刀合璧天下无双", element: "火" },
143
+ { id: "pi-li-kuang-dao", name: "霹雳狂刀", type: "刀", attack: 33, rarity: "精品", description: "霹雳堂宝刀,雷霆万钧", element: "火" },
144
+ { id: "bai-hong-jian", name: "白虹剑", type: "剑", attack: 31, rarity: "精品", description: "白虹贯日,剑气横空", element: "金" },
145
+ { id: "xuan-tie-jian", name: "玄铁重剑", type: "剑", attack: 35, rarity: "精品", description: "重剑无锋,大巧不工", element: "金" },
146
+ { id: "bi-xue-jian", name: "碧血剑", type: "剑", attack: 34, rarity: "精品", description: "忠义之剑,浩气长存", element: "木" },
147
+ // ── 极品 ──
148
+ { id: "jun-zi-jian", name: "君子剑", type: "剑", attack: 42, rarity: "极品", description: "谦谦君子,温润如玉", element: "水" },
149
+ { id: "zhen-wu-jian", name: "真武剑", type: "剑", attack: 45, rarity: "极品", description: "武当镇派之宝,真武大帝赐剑", element: "水" },
150
+ { id: "yi-tian-jian", name: "倚天剑", type: "剑", attack: 50, rarity: "极品", description: "武林至尊,倚天不出", element: "金" },
151
+ { id: "tu-long-dao", name: "屠龙刀", type: "刀", attack: 52, rarity: "极品", description: "号令天下,莫敢不从", element: "火" },
152
+ { id: "da-gou-bang", name: "打狗棒", type: "棒", attack: 44, rarity: "极品", description: "丐帮历代帮主信物", element: "木" },
153
+ { id: "sheng-huo-ling", name: "圣火令", type: "令", attack: 46, rarity: "极品", description: "明教圣物,诡异莫测", element: "火" },
154
+ { id: "she-zhang", name: "蛇杖", type: "杖", attack: 47, rarity: "极品", description: "欧阳锋随身兵器,杖头双蛇翻飞", element: "木" },
155
+ { id: "yu-xiao-jian", name: "玉箫剑", type: "剑", attack: 43, rarity: "极品", description: "黄药师以箫代剑,音波伤人", element: "水" },
156
+ { id: "jin-lun", name: "金轮", type: "轮", attack: 48, rarity: "极品", description: "金轮法王法器,金铁交鸣震人心魄", element: "金" },
157
+ { id: "xuan-tie-ling", name: "玄铁令", type: "令", attack: 44, rarity: "极品", description: "谢烟客信物,持此令者有求必应", element: "金" },
158
+ { id: "wu-lun", name: "五轮", type: "轮", attack: 49, rarity: "极品", description: "金银铜铁铅五轮齐出", element: "金" },
159
+ { id: "tai-ji-jian", name: "太极剑", type: "剑", attack: 46, rarity: "极品", description: "张三丰所铸,太极阴阳之剑", element: "土" },
160
+ // ── 神器 ──
161
+ { id: "dugu-jian", name: "独孤求败之剑", type: "剑", attack: 70, rarity: "神器", description: "四十岁后,不滞于物", element: "金" },
162
+ { id: "pi-li-dan", name: "霹雳弹", type: "暗", attack: 55, rarity: "神器", description: "霹雳堂镇堂之宝,一弹惊天", element: "火" },
163
+ { id: "jia-yi-tian-jian", name: "假倚天剑", type: "剑", attack: 35, rarity: "精品", description: "仿倚天剑所铸,形似神不似", element: "金" },
164
+ { id: "lv-bo-bai-he", name: "绿波竹棒", type: "棒", attack: 60, rarity: "神器", description: "丐帮帮主至宝,翠竹通灵", element: "木" },
165
+ { id: "xuan-tie-zhui", name: "玄铁匕首", type: "匕", attack: 65, rarity: "神器", description: "玄铁所铸,削铁如泥", element: "金" },
166
+ { id: "tai-a-jian", name: "太阿剑", type: "剑", attack: 75, rarity: "神器", description: "上古名剑,威道之剑", element: "火" },
167
+ { id: "zhan-lu-jian", name: "湛卢剑", type: "剑", attack: 78, rarity: "神器", description: "仁道之剑,不杀而屈人", element: "水" },
168
+ { id: "tai-xu-jian", name: "太虚剑", type: "剑", attack: 72, rarity: "神器", description: "太虚天道之剑", element: "土" },
169
+ { id: "pu-dao", name: "朴刀", type: "刀", attack: 10, rarity: "凡品", description: "朴素无华,实用可靠", element: "金" },
170
+ { id: "pi-feng-bian", name: "劈风鞭", type: "鞭", attack: 8, rarity: "凡品", description: "软鞭如蛇,变化莫测", element: "水" },
171
+ { id: "tie-qiang", name: "铁枪", type: "枪", attack: 9, rarity: "凡品", description: "军中铁枪", element: "金" },
172
+ { id: "shi-tou", name: "石子", type: "暗", attack: 5, rarity: "凡品", description: "随手可得的石子", element: "土" },
173
+ { id: "he-jin-dao", name: "鹤嘴刀", type: "刀", attack: 13, rarity: "凡品", description: "形如鹤嘴,刺击为主", element: "金" },
174
+ { id: "tian-shan-jian", name: "天山剑", type: "剑", attack: 13, rarity: "凡品", description: "天山派制式长剑", element: "水" },
175
+ { id: "e-mei-ci", name: "峨眉刺", type: "暗", attack: 14, rarity: "凡品", description: "峨眉派暗器", element: "金" },
176
+ { id: "tong-chui", name: "铜锤", type: "锤", attack: 12, rarity: "凡品", description: "铜制短锤", element: "金" },
177
+ { id: "kong-ming-quan", name: "孔明锁", type: "暗", attack: 11, rarity: "凡品", description: "机关暗器,巧妙异常", element: "金" },
178
+ { id: "tai-hu-dao", name: "太湖刀", type: "刀", attack: 16, rarity: "凡品", description: "太湖水匪所用", element: "金" },
179
+ { id: "hei-dao", name: "黑道刀", type: "刀", attack: 15, rarity: "凡品", description: "黑道中人常用", element: "火" },
180
+ { id: "da-mo-jian", name: "达摩剑", type: "剑", attack: 25, rarity: "良品", description: "少林达摩所传剑法配合之剑", element: "金" },
181
+ { id: "tian-shan-zhe-mei-shou", name: "天山折梅手", type: "暗", attack: 24, rarity: "良品", description: "天山童姥暗器手法配合", element: "水" },
182
+ { id: "pi-xie-jian", name: "辟邪剑", type: "剑", attack: 26, rarity: "良品", description: "林家祖传辟邪剑法配合", element: "金" },
183
+ { id: "wu-dang-chang-jian", name: "武当长剑", type: "剑", attack: 17, rarity: "良品", description: "武当弟子制式剑", element: "水" },
184
+ { id: "ming-jiao-dao", name: "明教刀", type: "刀", attack: 23, rarity: "良品", description: "明教锐金旗所用", element: "火" },
185
+ { id: "pi-li-an-qi", name: "霹雳暗器", type: "暗", attack: 25, rarity: "良品", description: "霹雳堂特制火器", element: "火" },
186
+ { id: "gu-mu-jian", name: "古墓剑", type: "剑", attack: 27, rarity: "良品", description: "古墓派佩剑", element: "水" },
187
+ { id: "tai-chang-jian", name: "太常剑", type: "剑", attack: 26, rarity: "良品", description: "朝廷太常寺所用", element: "金" },
188
+ { id: "qi-xing-jian", name: "七星剑", type: "剑", attack: 28, rarity: "良品", description: "北斗七星图案长剑", element: "金" },
189
+ { id: "tian-shan-xue-jian", name: "天山雪剑", type: "剑", attack: 33, rarity: "精品", description: "天山冰雪所淬之剑", element: "水" },
190
+ { id: "tie-zhang", name: "铁掌", type: "拳", attack: 32, rarity: "精品", description: "铁掌帮帮主装备", element: "金" },
191
+ { id: "ming-wang-fa-zhang", name: "明王法杖", type: "杖", attack: 34, rarity: "精品", description: "金刚宗法王所持", element: "金" },
192
+ { id: "kui-hua-bao-dian", name: "葵花针", type: "暗", attack: 48, rarity: "极品", description: "葵花宝典所载暗器", element: "火" },
193
+ { id: "tai-xu-jian", name: "太虚剑", type: "剑", attack: 72, rarity: "神器", description: "太虚天道之剑", element: "土" },
194
+ { id: "qian-kun-jian", name: "乾坤一剑", type: "剑", attack: 15, rarity: "凡品", description: "乾坤派制式长剑", element: "土" },
195
+ ];
196
+ const WEAPON_MAP = new Map(WEAPON_DEFS.map(w => [w.id, w]));
197
+ export function getWeaponDef(id) { return WEAPON_MAP.get(id); }
198
+ export function getRaritySymbol(rarity) {
199
+ switch (rarity) {
200
+ case "凡品": return "⚪";
201
+ case "良品": return "🟢";
202
+ case "精品": return "🔵";
203
+ case "极品": return "🟣";
204
+ case "神器": return "🟡";
205
+ default: return "⚪";
206
+ }
207
+ }
208
+ // ═══════════════════════════════════════════════════════════════════════════
209
+ // 道具
210
+ // ═══════════════════════════════════════════════════════════════════════════
211
+ export const ITEM_DEFS = [
212
+ // ── 原版伤药/补品 ──
213
+ { id: "kang-bei-te", name: "康倍特", type: "恢复", description: "恢复20血量", effect: { hp: 20 } },
214
+ { id: "jing-qi-wan", name: "精气丸", type: "恢复", description: "恢复15血量", effect: { hp: 15 } },
215
+ { id: "xiao-huan-dan", name: "小还丹", type: "恢复", description: "恢复60血量", effect: { hp: 60 } },
216
+ { id: "yu-dong-hei-shi-dan", name: "玉洞黑石丹", type: "恢复", description: "恢复50血量", effect: { hp: 50 } },
217
+ { id: "yu-zhen-san", name: "玉真散", type: "恢复", description: "少林伤科圣药,恢复60血量", effect: { hp: 60 } },
218
+ { id: "san-huang-bao-la-wan", name: "三黄宝腊丸", type: "恢复", description: "恢复50血量", effect: { hp: 50 } },
219
+ { id: "yu-ling-san", name: "玉灵散", type: "恢复", description: "少林伤科圣药,恢复80血量", effect: { hp: 80 } },
220
+ { id: "tian-xiang-duan-xu-jiao", name: "天香断续胶", type: "恢复", description: "续筋接骨,恢复100血量", effect: { hp: 100 } },
221
+ { id: "hei-yu-duan-xu-gao", name: "黑玉断续膏", type: "恢复", description: "续筋接骨,恢复全部血量", effect: { hp: 1049 } },
222
+ { id: "jin-niu-yun-gong-san", name: "金牛运功散", type: "恢复", description: "恢复100血量", effect: { hp: 100 } },
223
+ { id: "ren-shen", name: "人参", type: "恢复", description: "名贵补品,恢复40血量", effect: { hp: 40 } },
224
+ { id: "bai-yun-xiong-dan-wan", name: "白云熊胆丸", type: "恢复", description: "恢复90血量", effect: { hp: 90 } },
225
+ { id: "jiu-hua-yu-lu-wan", name: "九花玉露丸", type: "恢复", description: "桃花岛秘药,恢复110血量", effect: { hp: 110 } },
226
+ { id: "jiu-zhuan-ling-bao-wan", name: "九转灵宝丸", type: "恢复", description: "恢复100血量", effect: { hp: 100 } },
227
+ { id: "tian-qi-sha-dan-san", name: "田七鲨胆散", type: "恢复", description: "恢复100血量", effect: { hp: 100 } },
228
+ { id: "jiu-zhuan-xiong-she-wan", name: "九转熊蛇丸", type: "恢复", description: "逍遥派疗伤圣药,补满血量", effect: { hp: 999 } },
229
+ { id: "wu-chang-dan", name: "无常丹", type: "恢复", description: "恢复120血量", effect: { hp: 120 } },
230
+ { id: "zhen-xin-li-qi-wan", name: "镇心理气丸", type: "恢复", description: "调理内息,恢复100血量", effect: { hp: 100 } },
231
+ { id: "sheng-sheng-zao-hua-dan", name: "生生造化丹", type: "恢复", description: "疗伤圣药,有起死回生之效,恢复全部血量", effect: { hp: 999 } },
232
+ { id: "tian-wang-bao-ming-dan", name: "天王保命丹", type: "恢复", description: "神奇丹药,起死回生,恢复全部血量", effect: { hp: 999 } },
233
+ { id: "bao-ji-wan", name: "宝济丸", type: "恢复", description: "恢复30血量", effect: { hp: 30 } },
234
+ { id: "huang-lian-jie-du-wan", name: "黄连解毒丸", type: "恢复", description: "清热解毒,恢复40血量", effect: { hp: 40 } },
235
+ { id: "tian-xin-jie-du-dan", name: "天心解毒丹", type: "恢复", description: "解毒良药,恢复50血量", effect: { hp: 50 } },
236
+ { id: "hui-yang-yu-long-gao", name: "回阳玉龙膏", type: "恢复", description: "回阳救逆,恢复80血量", effect: { hp: 80 } },
237
+ { id: "niu-huang-xue-jie-dan", name: "牛黄血竭丹", type: "恢复", description: "活血化瘀,恢复70血量", effect: { hp: 70 } },
238
+ { id: "liu-yang-zheng-qi-dan", name: "六阳正气丹", type: "恢复", description: "少林秘药,恢复100血量", effect: { hp: 100 } },
239
+ { id: "zhu-jing-bing-chan", name: "朱睛冰蟾", type: "恢复", description: "万毒之克星,恢复全部血量", effect: { hp: 999 } },
240
+ { id: "fu-ling-shou-wu-wan", name: "茯苓首乌丸", type: "恢复", description: "千年奇药,恢复全部血量", effect: { hp: 999 } },
241
+ { id: "qian-nian-ling-zhi", name: "千年灵芝", type: "恢复", description: "千年灵药,恢复100血量", effect: { hp: 100 } },
242
+ { id: "qian-nian-ren-shen", name: "千年人参", type: "恢复", description: "千岁人参,恢复全部血量", effect: { hp: 999 } },
243
+ { id: "tian-shan-xue-lian", name: "天山雪莲", type: "恢复", description: "极寒之花,恢复全部血量", effect: { hp: 999 } },
244
+ { id: "tong-xi-di-long-wan", name: "通犀地龙丸", type: "恢复", description: "至阳之药,恢复全部血量", effect: { hp: 999 } },
245
+ { id: "qian-nian-bing-chong", name: "千年冰虫", type: "恢复", description: "极寒之物,恢复全部血量", effect: { hp: 999 } },
246
+ { id: "mang-gu-zhu-ha", name: "莽牯朱蛤", type: "恢复", description: "万毒之王,服之百毒不侵,恢复全部血量", effect: { hp: 999 } },
247
+ { id: "she-dan", name: "蛇胆", type: "恢复", description: "异蛇之胆,恢复20血量", effect: { hp: 20 } },
248
+ { id: "wu-bao-hua-mi-jiu", name: "五宝花蜜酒", type: "恢复", description: "恢复100血量", effect: { hp: 100 } },
249
+ { id: "la-ba-zhou", name: "腊八粥", type: "恢复", description: "少林腊八粥,恢复130血量", effect: { hp: 130 } },
250
+ { id: "da-pan-tao", name: "大蟠桃", type: "恢复", description: "仙桃,恢复全部血量", effect: { hp: 999 } },
251
+ { id: "xu-ming-ba-wan", name: "续命八丸", type: "恢复", description: "起死回生,恢复全部血量", effect: { hp: 999 } },
252
+ { id: "qing-hua-du-jie-yao", name: "情花毒解药", type: "恢复", description: "解情花之毒,恢复100血量", effect: { hp: 100 } },
253
+ // ── 原版食物 ──
254
+ { id: "rou-bu-rou", name: "肉脯", type: "恢复", description: "恢复15血量", effect: { hp: 15 } },
255
+ { id: "jiao-hua-ji", name: "叫花鸡", type: "恢复", description: "洪七公最爱,恢复40血量", effect: { hp: 40 } },
256
+ { id: "nuo-mi-jiu", name: "糯米酒", type: "恢复", description: "香甜糯米酒,恢复18血量", effect: { hp: 18 } },
257
+ { id: "fo-tiao-qiang", name: "佛跳墙", type: "恢复", description: "人间美味,恢复60血量", effect: { hp: 60 } },
258
+ { id: "hong-shao-rou", name: "红烧肉", type: "恢复", description: "肥而不腻,恢复30血量", effect: { hp: 30 } },
259
+ // ── 增益 ──
260
+ { id: "bao-tai-yi-jin-wan", name: "豹胎易筋丸", type: "增益", description: "下次Boss战攻防+25", effect: { attackBuff: 25, defenseBuff: 25 } },
261
+ { id: "shi-xiang-ruan-jin-san", name: "十香软筋散", type: "增益", description: "下次Boss战防御+20", effect: { defenseBuff: 20 } },
262
+ { id: "bei-su-qing-feng", name: "悲酥清风", type: "增益", description: "下次Boss战攻击+25", effect: { attackBuff: 25 } },
263
+ { id: "san-shi-nao-shen-dan", name: "三尸脑神丹", type: "增益", description: "日月神教禁药,攻击+30", effect: { attackBuff: 30 } },
264
+ { id: "xi-sui-dan", name: "洗髓丹", type: "增益", description: "下次Boss战攻防+20", effect: { attackBuff: 20, defenseBuff: 20 } },
265
+ { id: "tie-bi-san", name: "铁壁散", type: "增益", description: "下次Boss战防御+10", effect: { defenseBuff: 10 } },
266
+ { id: "wu-gong-san", name: "悟性散", type: "增益", description: "下次修炼经验×2", effect: { xpBonus: 2 } },
267
+ { id: "wu-du-mi-yao", name: "五毒秘药", type: "增益", description: "五毒教秘制,攻击+12", effect: { attackBuff: 12 } },
268
+ { id: "ming-wang-huo-dan", name: "明王火丹", type: "增益", description: "金刚明王之力,攻击+28", effect: { attackBuff: 28 } },
269
+ { id: "hua-gong-san", name: "化功散", type: "增益", description: "削敌内力,攻击+15", effect: { attackBuff: 15 } },
270
+ // ── 武功秘籍 ──
271
+ { id: "zi-xia-mi-ji", name: "紫霞秘笈", type: "武功", description: "华山派内功心法,内功经验+30", effect: { xpBonus: 30 } },
272
+ { id: "xiao-wu-xiang-gong", name: "小无相功", type: "武功", description: "逍遥派心法,内功经验+40", effect: { xpBonus: 40 } },
273
+ { id: "shi-ba-ni-ou", name: "十八泥偶", type: "武功", description: "神秘泥偶藏有武功,内功经验+50", effect: { xpBonus: 50 } },
274
+ { id: "shen-zhao-jing", name: "神照经", type: "武功", description: "起死回生之术,内功经验+60", effect: { xpBonus: 60 } },
275
+ { id: "yi-jin-jing-quan", name: "易筋经", type: "武功", description: "少林至宝,内功经验+120", effect: { xpBonus: 120 } },
276
+ { id: "xi-sui-jing", name: "洗髓经", type: "武功", description: "少林秘传,内功经验+100", effect: { xpBonus: 100 } },
277
+ { id: "jiu-yang-zhen-jing", name: "九阳真经", type: "武功", description: "至高无上内功心法,内功经验+100", effect: { xpBonus: 100 } },
278
+ { id: "jiu-yin-zhen-jing-ye", name: "九阴真经残页", type: "武功", description: "天下武学总纲,掌法经验+60", effect: { xpBonus: 60 } },
279
+ { id: "bei-ming-shen-gong-can", name: "北冥神功残页", type: "武功", description: "逍遥派至宝,内功经验+80", effect: { xpBonus: 80 } },
280
+ { id: "liu-mai-shen-jian-tu", name: "六脉神剑图", type: "武功", description: "段氏秘传,剑法经验+50", effect: { xpBonus: 50 } },
281
+ { id: "xiang-long-shi-ba-zhang-tu", name: "降龙十八掌图", type: "武功", description: "丐帮武功,掌法经验+50", effect: { xpBonus: 50 } },
282
+ { id: "qian-kun-da-na-yi-can", name: "乾坤大挪移残页", type: "武功", description: "明教至宝,内功经验+70", effect: { xpBonus: 70 } },
283
+ { id: "an-ran-xiao-hun-can", name: "黯然销魂掌谱", type: "武功", description: "杨过所创,掌法经验+80", effect: { xpBonus: 80 } },
284
+ { id: "yu-nv-xin-jing-can", name: "玉女心经残页", type: "武功", description: "古墓秘传,内功经验+60", effect: { xpBonus: 60 } },
285
+ { id: "ling-bo-wei-bu-tu", name: "凌波微步图", type: "武功", description: "轻功秘籍,经验+60", effect: { xpBonus: 60 } },
286
+ { id: "xi-xing-da-fa-tu", name: "吸星大法图", type: "武功", description: "日月神教秘传,内功经验+60", effect: { xpBonus: 60 } },
287
+ { id: "zuo-you-hu-bo-tu", name: "左右互搏图", type: "武功", description: "老顽童自创,经验+50", effect: { xpBonus: 50 } },
288
+ { id: "tan-zhi-shen-tong-tu", name: "弹指神通图", type: "武功", description: "桃花岛武功,经验+60", effect: { xpBonus: 60 } },
289
+ { id: "bi-hai-chao-sheng-pu", name: "碧海潮生曲谱", type: "武功", description: "黄药师所创,内功经验+60", effect: { xpBonus: 60 } },
290
+ { id: "yi-yang-zhi-tu", name: "一阳指图", type: "武功", description: "大理段氏武功,经验+60", effect: { xpBonus: 60 } },
291
+ { id: "tai-ji-jian-fa-can", name: "太极剑法残谱", type: "武功", description: "武当武功,剑法经验+60", effect: { xpBonus: 60 } },
292
+ { id: "tai-ji-quan-jing", name: "太极拳经", type: "武功", description: "张三丰所创,拳法经验+60", effect: { xpBonus: 60 } },
293
+ { id: "long-xiang-ban-ruo-gong", name: "龙象般若功", type: "武功", description: "密宗至高护法神功,内功经验+70", effect: { xpBonus: 70 } },
294
+ { id: "qi-shang-quan-pu", name: "七伤拳谱", type: "武功", description: "崆峒派独门拳法,拳法经验+40", effect: { xpBonus: 40 } },
295
+ { id: "xue-dao-mi-ji", name: "血刀秘笈", type: "武功", description: "血刀门武术集成,刀法经验+40", effect: { xpBonus: 40 } },
296
+ { id: "bi-xie-jian-pu", name: "辟邪剑谱", type: "武功", description: "林家祖传剑法,剑法经验+50", effect: { xpBonus: 50 } },
297
+ { id: "xun-lei-jian-pu", name: "迅雷剑谱", type: "武功", description: "昆仑派剑法,剑法经验+40", effect: { xpBonus: 40 } },
298
+ // ── 金庸小说补充道具 ──
299
+ { id: "jin-chuang-yao", name: "金创药", type: "恢复", description: "外伤良药,恢复30血量", effect: { hp: 30 } },
300
+ { id: "hu-gu-wan", name: "虎骨丸", type: "恢复", description: "虎骨炼制,恢复45血量", effect: { hp: 45 } },
301
+ { id: "yu-feng-wan", name: "玉蜂丸", type: "恢复", description: "古墓派秘制,恢复70血量", effect: { hp: 70 } },
302
+ { id: "xiong-dan-jiu", name: "熊胆丸", type: "恢复", description: "恢复40血量", effect: { hp: 40 } },
303
+ { id: "wu-gong-jiu", name: "蜈蚣酒", type: "恢复", description: "以毒攻毒,恢复30血量", effect: { hp: 30 } },
304
+ { id: "hu-gu-gao", name: "虎骨膏", type: "恢复", description: "接骨续筋,恢复60血量", effect: { hp: 60 } },
305
+ { id: "tian-shan-bing-can", name: "天山冰蚕", type: "恢复", description: "极寒之物,恢复全部血量", effect: { hp: 999 } },
306
+ { id: "he-ding-hong-jie-yao", name: "鹤顶红解药", type: "恢复", description: "解鹤顶红之毒,恢复50血量", effect: { hp: 50 } },
307
+ { id: "jin-can-gu-jie", name: "金蚕蛊解药", type: "恢复", description: "苗疆解蛊良药,恢复40血量", effect: { hp: 40 } },
308
+ { id: "jiao-zi", name: "饺子", type: "恢复", description: "热腾腾的饺子,恢复8血量", effect: { hp: 8 } },
309
+ { id: "shao-bing", name: "烧饼", type: "恢复", description: "饱腹之物,恢复12血量", effect: { hp: 12 } },
310
+ { id: "zhu-rou-bao", name: "猪肉包", type: "恢复", description: "美味肉包,恢复15血量", effect: { hp: 15 } },
311
+ { id: "qing-tang-mian", name: "清汤面", type: "恢复", description: "暖心暖胃,恢复10血量", effect: { hp: 10 } },
312
+ { id: "wan-du-bu-qin-dan", name: "万毒不侵丹", type: "增益", description: "百毒不侵,攻防+15", effect: { attackBuff: 15, defenseBuff: 15 } },
313
+ { id: "bao-ji-wan", name: "爆击丸", type: "增益", description: "攻击+15", effect: { attackBuff: 15 } },
314
+ { id: "wu-lin-mi-ji", name: "武林秘籍", type: "武功", description: "随机经验+50", effect: { xpBonus: 50 } },
315
+ { id: "du-gu-jiu-jian-can", name: "独孤九剑残谱", type: "武功", description: "独孤前辈遗物,剑法经验+70", effect: { xpBonus: 70 } },
316
+ { id: "da-gou-bang-fa-tu", name: "打狗棒法图", type: "武功", description: "丐帮秘籍,棍法经验+50", effect: { xpBonus: 50 } },
317
+ ];
318
+ const ITEM_MAP = new Map(ITEM_DEFS.map(i => [i.id, i]));
319
+ export function getItemDef(id) { return ITEM_MAP.get(id); }
320
+ /** 使用道具 */
321
+ export function useItem(state, itemId) {
322
+ const def = getItemDef(itemId);
323
+ if (!def)
324
+ return { success: false, msg: "没找到这个道具", effect: "" };
325
+ let effectDesc = "";
326
+ // 血量恢复
327
+ if (def.effect.hp) {
328
+ const before = Math.round(state.hp);
329
+ state.hp = Math.min(state.maxHp, state.hp + def.effect.hp);
330
+ const healed = Math.round(state.hp) - before;
331
+ effectDesc = `血量 +${healed}`;
332
+ }
333
+ if (def.effect.attackBuff)
334
+ state.attackBuff += def.effect.attackBuff;
335
+ if (def.effect.defenseBuff)
336
+ state.defenseBuff += def.effect.defenseBuff;
337
+ if (def.effect.xpBonus && def.type === "增益")
338
+ state.xpBonus = Math.max(state.xpBonus, def.effect.xpBonus);
339
+ if (def.effect.xpBonus && def.type === "武功") {
340
+ if (def.id === "yi-jin-jing") {
341
+ const neigong = state.skills.find(s => s.id === "neigong" && s.unlocked);
342
+ if (neigong) {
343
+ neigong.xp += 80;
344
+ effectDesc = "内功心法经验 +80";
345
+ if (neigong.xp >= neigong.level * 50 && neigong.level < 10) {
346
+ neigong.xp = 0;
347
+ neigong.level++;
348
+ effectDesc += ",技能提升!";
349
+ }
350
+ }
351
+ else
352
+ return { success: false, msg: "内功心法尚未解锁", effect: "" };
353
+ }
354
+ else if (def.id === "shao-lin-xiao-huan-dan") {
355
+ // 少林小还丹:随机技能经验+30,恢复血量
356
+ const unlocked = state.skills.filter(s => s.unlocked);
357
+ if (unlocked.length === 0)
358
+ return { success: false, msg: "没有已解锁的技能", effect: "" };
359
+ const target = unlocked[Math.floor(Math.random() * unlocked.length)];
360
+ target.xp += 30;
361
+ effectDesc = `${target.name}经验 +30`;
362
+ if (target.xp >= target.level * 50 && target.level < 10) {
363
+ target.xp = 0;
364
+ target.level++;
365
+ effectDesc += ",技能提升!";
366
+ }
367
+ }
368
+ else if (def.id === "jiu-yang-zhen-jing") {
369
+ // 九阳真经残页:内功心法经验+100
370
+ const neigong = state.skills.find(s => s.id === "neigong" && s.unlocked);
371
+ if (neigong) {
372
+ neigong.xp += 100;
373
+ effectDesc = "内功心法经验 +100";
374
+ if (neigong.xp >= neigong.level * 50 && neigong.level < 10) {
375
+ neigong.xp = 0;
376
+ neigong.level++;
377
+ effectDesc += ",技能提升!";
378
+ }
379
+ }
380
+ else
381
+ return { success: false, msg: "内功心法尚未解锁", effect: "" };
382
+ }
383
+ else if (def.id === "san-shi-nao-shen-dan") {
384
+ // 三尸脑神丹:攻击+30但只恢复少量血量
385
+ if (def.effect.hp) {
386
+ const before = Math.round(state.hp);
387
+ state.hp = Math.min(state.maxHp, def.effect.hp);
388
+ const healed = Math.round(state.hp) - before;
389
+ if (healed > 0)
390
+ effectDesc = `血量 +${healed}`;
391
+ }
392
+ }
393
+ else {
394
+ const unlocked = state.skills.filter(s => s.unlocked);
395
+ if (unlocked.length === 0)
396
+ return { success: false, msg: "没有已解锁的技能", effect: "" };
397
+ const target = unlocked[Math.floor(Math.random() * unlocked.length)];
398
+ target.xp += 50;
399
+ effectDesc = `${target.name}经验 +50`;
400
+ if (target.xp >= target.level * 50 && target.level < 10) {
401
+ target.xp = 0;
402
+ target.level++;
403
+ effectDesc += ",技能提升!";
404
+ }
405
+ }
406
+ }
407
+ return { success: true, msg: `使用了「${def.name}」`, effect: effectDesc || def.description };
408
+ }
409
+ //# sourceMappingURL=wuxue-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wuxue-data.js","sourceRoot":"","sources":["../../extensions/wuxue-data.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * 武功系统 - 江湖遭遇、地点事件
3
+ */
4
+ import type { DropResult } from "./wuxue-types.js";
5
+ interface LocationDef {
6
+ id: string;
7
+ name: string;
8
+ description: string;
9
+ }
10
+ interface EventDef {
11
+ id: string;
12
+ name: string;
13
+ description: string;
14
+ goldMin: number;
15
+ goldMax: number;
16
+ xpMin: number;
17
+ xpMax: number;
18
+ }
19
+ export declare function getLocation(): LocationDef;
20
+ export declare function getEvent(): EventDef;
21
+ /** 生成一次江湖遭遇(100% 触发) */
22
+ export declare function generateEncounter(level: number, equippedWeaponAtk: number, currentHp: number, maxHp: number): DropResult;
23
+ export {};