[{"data":1,"prerenderedAt":2694},["ShallowReactive",2],{"navigation_docs":3,"-snowygems-skills":60,"-snowygems-skills-surround":2689},[4],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":59},"SnowyGems","i-lucide-gem","\u002Fsnowygems","1.snowygems",[10,15,20,24,29,34,39,44,49,54],{"title":11,"path":12,"stem":13,"icon":14},"安装与快速上手","\u002Fsnowygems\u002Fgetting-started","1.snowygems\u002F1.getting-started","i-lucide-rocket",{"title":16,"path":17,"stem":18,"icon":19},"版本更新与公告","\u002Fsnowygems\u002Fupdate","1.snowygems\u002F10.update","i-lucide-bell-ring",{"title":21,"path":22,"stem":23,"icon":6},"宝石配置","\u002Fsnowygems\u002Fgems","1.snowygems\u002F2.gems",{"title":25,"path":26,"stem":27,"icon":28},"技能与 BUFF","\u002Fsnowygems\u002Fskills","1.snowygems\u002F3.skills","i-lucide-sparkles",{"title":30,"path":31,"stem":32,"icon":33},"菜单配置","\u002Fsnowygems\u002Fmenus","1.snowygems\u002F4.menus","i-lucide-layout-grid",{"title":35,"path":36,"stem":37,"icon":38},"多版本兼容","\u002Fsnowygems\u002Fcompat","1.snowygems\u002F5.compat","i-lucide-git-compare",{"title":40,"path":41,"stem":42,"icon":43},"排错与调试","\u002Fsnowygems\u002Ftroubleshooting","1.snowygems\u002F6.troubleshooting","i-lucide-wrench",{"title":45,"path":46,"stem":47,"icon":48},"汉化与文案自定义","\u002Fsnowygems\u002Flanguage","1.snowygems\u002F7.language","i-lucide-languages",{"title":50,"path":51,"stem":52,"icon":53},"查看与拆卸宝石","\u002Fsnowygems\u002Fdismantle","1.snowygems\u002F8.dismantle","i-lucide-unplug",{"title":55,"path":56,"stem":57,"icon":58},"权限节点","\u002Fsnowygems\u002Fpermissions","1.snowygems\u002F9.permissions","i-lucide-shield-check",false,{"id":61,"title":25,"body":62,"description":2680,"extension":2681,"links":2682,"meta":2683,"navigation":2684,"path":26,"seo":2685,"stem":27,"__hash__":2688},"docs\u002F1.snowygems\u002F3.skills.md",{"type":63,"value":64,"toc":2650},"minimark",[65,69,83,86,166,169,172,176,236,255,262,264,267,275,278,342,345,388,390,393,537,570,581,583,586,596,600,669,674,677,773,776,881,884,887,969,986,992,995,1072,1077,1138,1141,1144,1296,1307,1312,1408,1429,1435,1464,1479,1491,1493,1497,1502,1550,1555,1621,1623,1626,1630,1703,1707,1759,1763,1817,1821,1874,1878,1966,1984,1986,1990,1993,1999,2035,2042,2049,2051,2055,2062,2215,2224,2237,2249,2263,2265,2269,2279,2317,2320,2324,2334,2372,2382,2386,2391,2526,2540,2544,2547,2568,2574,2576,2579,2612,2614,2617,2624,2643,2646],[66,67,25],"h1",{"id":68},"技能与-buff",[70,71,72,73,77,78,82],"p",{},"技能定义放在 ",[74,75,76],"code",{},"plugins\u002FSnowyGems\u002Fskills\u002F"," 下，文件名任意。技能不是绑在宝石上的，而是",[79,80,81],"strong",{},"绑在装备的 lore 文本上","：装备 lore 里出现某段文字，就获得对应技能。",[70,84,85],{},"一个最小可用的技能：",[87,88,93],"pre",{"className":89,"code":90,"language":91,"meta":92,"style":92},"language-yaml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","向前闪现:                        # 技能 ID\n  Lore: \"右键即可闪现\"            # 装备 lore 含这段文字就绑定此技能\n  Cooldown: 10.0                 # 冷却 10 秒\n  Skills:\n    - Blink{distance=32} ~onUse @Forward\n","yaml","",[74,94,95,112,133,148,157],{"__ignoreMap":92},[96,97,100,104,108],"span",{"class":98,"line":99},"line",1,[96,101,103],{"class":102},"swJcz","向前闪现",[96,105,107],{"class":106},"sMK4o",":",[96,109,111],{"class":110},"sHwdD","                        # 技能 ID\n",[96,113,115,118,120,123,127,130],{"class":98,"line":114},2,[96,116,117],{"class":102},"  Lore",[96,119,107],{"class":106},[96,121,122],{"class":106}," \"",[96,124,126],{"class":125},"sfazB","右键即可闪现",[96,128,129],{"class":106},"\"",[96,131,132],{"class":110},"            # 装备 lore 含这段文字就绑定此技能\n",[96,134,136,139,141,145],{"class":98,"line":135},3,[96,137,138],{"class":102},"  Cooldown",[96,140,107],{"class":106},[96,142,144],{"class":143},"sbssI"," 10.0",[96,146,147],{"class":110},"                 # 冷却 10 秒\n",[96,149,151,154],{"class":98,"line":150},4,[96,152,153],{"class":102},"  Skills",[96,155,156],{"class":106},":\n",[96,158,160,163],{"class":98,"line":159},5,[96,161,162],{"class":106},"    -",[96,164,165],{"class":125}," Blink{distance=32} ~onUse @Forward\n",[70,167,168],{},"玩家拿着一件 lore 里有「右键即可闪现」的装备，右键就会向前闪现 32 格。",[170,171],"hr",{},[173,174,175],"h2",{"id":175},"技能定义的字段",[177,178,179,192],"table",{},[180,181,182],"thead",{},[183,184,185,189],"tr",{},[186,187,188],"th",{},"字段",[186,190,191],{},"说明",[193,194,195,206,216,226],"tbody",{},[183,196,197,203],{},[198,199,200],"td",{},[74,201,202],{},"Lore",[198,204,205],{},"绑定标记。装备 lore 含这段文字即生效（去色比较，可含颜色码）",[183,207,208,213],{},[198,209,210],{},[74,211,212],{},"Cooldown",[198,214,215],{},"冷却秒数，不写或 0 表示无冷却",[183,217,218,223],{},[198,219,220],{},[74,221,222],{},"CooldownTip",[198,224,225],{},"冷却中的提示，本身也是一个函数表达式",[183,227,228,233],{},[198,229,230],{},[74,231,232],{},"Skills",[198,234,235],{},"技能行列表",[237,238,240,242,243,246,247,250,251,254],"alert",{"icon":239},"i-lucide-info",[74,241,202],{}," 留空的技能定义",[79,244,245],{},"不会被任何装备触发","——它只能作为形态切换的目标（见下文 ",[74,248,249],{},"Switch","），或者被 ",[74,252,253],{},"Reward{...}"," 嵌套调用。",[70,256,257,258,261],{},"冷却是",[79,259,260],{},"按技能定义","计算的，不是按技能行。同一个定义里多行技能共享一个冷却。",[170,263],{},[173,265,266],{"id":266},"技能行结构",[87,268,273],{"className":269,"code":271,"language":272},[270],"language-text","函数名{参数1=值;参数2=值} ~触发标记 @作用目标\n","text",[74,274,271],{"__ignoreMap":92},[70,276,277],{},"三部分：",[177,279,280,292],{},[180,281,282],{},[183,283,284,287,290],{},[186,285,286],{},"部分",[186,288,289],{},"必填",[186,291,191],{},[193,293,294,311,326],{},[183,295,296,301,304],{},[198,297,298],{},[74,299,300],{},"函数名{参数}",[198,302,303],{},"是",[198,305,306,307,310],{},"做什么。参数用 ",[74,308,309],{},";"," 分隔",[183,312,313,318,320],{},[198,314,315],{},[74,316,317],{},"~触发标记",[198,319,303],{},[198,321,322,323],{},"什么时候触发。不写则",[79,324,325],{},"永远不会触发",[183,327,328,333,336],{},[198,329,330],{},[74,331,332],{},"@作用目标",[198,334,335],{},"否",[198,337,338,339],{},"作用于谁，默认 ",[74,340,341],{},"@Self",[70,343,344],{},"作用目标：",[177,346,347,357],{},[180,348,349],{},[183,350,351,354],{},[186,352,353],{},"写法",[186,355,356],{},"含义",[193,358,359,368,378],{},[183,360,361,365],{},[198,362,363],{},[74,364,341],{},[198,366,367],{},"作用于自己（默认）",[183,369,370,375],{},[198,371,372],{},[74,373,374],{},"@Entity",[198,376,377],{},"作用于被攻击\u002F被命中的实体",[183,379,380,385],{},[198,381,382],{},[74,383,384],{},"@Location",[198,386,387],{},"作用于命中坐标（闪现、粒子、闪电常用）",[170,389],{},[173,391,392],{"id":392},"触发标记",[177,394,395,405],{},[180,396,397],{},[183,398,399,402],{},[186,400,401],{},"标记",[186,403,404],{},"触发时机",[193,406,407,417,427,437,447,457,467,477,487,497,507,517,527],{},[183,408,409,414],{},[198,410,411],{},[74,412,413],{},"~onUse",[198,415,416],{},"右键使用",[183,418,419,424],{},[198,420,421],{},[74,422,423],{},"~onShiftUse",[198,425,426],{},"潜行 + 右键",[183,428,429,434],{},[198,430,431],{},[74,432,433],{},"~onSwing",[198,435,436],{},"左键挥臂",[183,438,439,444],{},[198,440,441],{},[74,442,443],{},"~onShiftSwing",[198,445,446],{},"潜行 + 左键（三叉戟\u002F矛也可用）",[183,448,449,454],{},[198,450,451],{},[74,452,453],{},"~onAttack",[198,455,456],{},"近战攻击命中实体",[183,458,459,464],{},[198,460,461],{},[74,462,463],{},"~onKill",[198,465,466],{},"击杀实体",[183,468,469,474],{},[198,470,471],{},[74,472,473],{},"~onHit",[198,475,476],{},"发射物命中（任意类型）",[183,478,479,484],{},[198,480,481],{},[74,482,483],{},"~onHit:类型",[198,485,486],{},"发射物命中指定类型",[183,488,489,494],{},[198,490,491],{},[74,492,493],{},"~onLaunch",[198,495,496],{},"发射物射出（任意类型）",[183,498,499,504],{},[198,500,501],{},[74,502,503],{},"~onLaunch:类型",[198,505,506],{},"发射物射出指定类型",[183,508,509,514],{},[198,510,511],{},[74,512,513],{},"~onBreak",[198,515,516],{},"挖掉方块",[183,518,519,524],{},[198,520,521],{},[74,522,523],{},"~onDamaged",[198,525,526],{},"物品即将损失耐久",[183,528,529,534],{},[198,530,531],{},[74,532,533],{},"~onTimer",[198,535,536],{},"每秒轮询（常驻 BUFF 用）",[70,538,539,541,542,545,546,549,550,549,553,549,556,549,559,549,562,565,566,569],{},[74,540,483],{}," 的类型直接取实体类型名，",[79,543,544],{},"不是固定清单","：",[74,547,548],{},"ARROW","、",[74,551,552],{},"TRIDENT",[74,554,555],{},"SPEAR",[74,557,558],{},"EGG",[74,560,561],{},"SNOWBALL",[74,563,564],{},"FIREBALL","… 服务端有什么实体就能写什么。所以 1.21.11 的矛投出去后写 ",[74,567,568],{},"~onHit:SPEAR"," 直接可用。",[70,571,572,573,576,577,580],{},"游戏内用 ",[74,574,575],{},"\u002Fsgem triggers"," 查看清单（内容来自 ",[74,578,579],{},"lang.yml","，可自行增删措辞）。",[170,582],{},[173,584,585],{"id":585},"函数清单",[70,587,572,588,591,592,595],{},[74,589,590],{},"\u002Fsgem skills [关键字]"," 查看，会标出每个函数在",[79,593,594],{},"当前版本","是否可用。",[597,598,599],"h3",{"id":599},"位移",[177,601,602,615],{},[180,603,604],{},[183,605,606,609,612],{},[186,607,608],{},"函数",[186,610,611],{},"别名",[186,613,614],{},"用法",[193,616,617,642],{},[183,618,619,624,633],{},[198,620,621],{},[74,622,623],{},"Blink",[198,625,626,629,630],{},[74,627,628],{},"Teleport"," ",[74,631,632],{},"闪现",[198,634,635,638,639,641],{},[74,636,637],{},"{distance=10}"," 沿视线瞬移；配合 ",[74,640,384],{}," 传送到命中处",[183,643,644,649,660],{},[198,645,646],{},[74,647,648],{},"Velocity",[198,650,651,629,654,629,657],{},[74,652,653],{},"Push",[74,655,656],{},"击退",[74,658,659],{},"冲刺",[198,661,662,665,666],{},[74,663,664],{},"{forward=1.5;up=0.5}"," 或 ",[74,667,668],{},"{x=0;y=1;z=0}",[70,670,671,673],{},[74,672,623],{}," 会沿视线逐格前进，撞到非空气就停在前一格，不会把玩家塞进墙里。",[597,675,676],{"id":676},"战斗",[177,678,679,689],{},[180,680,681],{},[183,682,683,685,687],{},[186,684,608],{},[186,686,611],{},[186,688,614],{},[193,690,691,708,727,748],{},[183,692,693,698,703],{},[198,694,695],{},[74,696,697],{},"Damage",[198,699,700],{},[74,701,702],{},"伤害",[198,704,705],{},[74,706,707],{},"{amount=5}",[183,709,710,715,723],{},[198,711,712],{},[74,713,714],{},"Heal",[198,716,717,629,720],{},[74,718,719],{},"治疗",[74,721,722],{},"恢复",[198,724,725],{},[74,726,707],{},[183,728,729,734,742],{},[198,730,731],{},[74,732,733],{},"Fire",[198,735,736,629,739],{},[74,737,738],{},"点燃",[74,740,741],{},"燃烧",[198,743,744,747],{},[74,745,746],{},"{ticks=100}","（20 tick = 1 秒）",[183,749,750,755,763],{},[198,751,752],{},[74,753,754],{},"Lightning",[198,756,757,629,760],{},[74,758,759],{},"闪电",[74,761,762],{},"雷击",[198,764,765,768,769,772],{},[74,766,767],{},"{damage=true}","，",[74,770,771],{},"false"," 则只有视觉效果",[597,774,775],{"id":775},"反馈",[177,777,778,788],{},[180,779,780],{},[183,781,782,784,786],{},[186,783,608],{},[186,785,611],{},[186,787,614],{},[193,789,790,813,830,847,864],{},[183,791,792,797,808],{},[198,793,794],{},[74,795,796],{},"Chat",[198,798,799,629,802,629,805],{},[74,800,801],{},"Message",[74,803,804],{},"Msg",[74,806,807],{},"消息",[198,809,810],{},[74,811,812],{},"{m=&a技能发动!}",[183,814,815,820,825],{},[198,816,817],{},[74,818,819],{},"ActionBar",[198,821,822],{},[74,823,824],{},"动作栏",[198,826,827],{},[74,828,829],{},"{m=&b蓄力完成}",[183,831,832,837,842],{},[198,833,834],{},[74,835,836],{},"Title",[198,838,839],{},[74,840,841],{},"标题",[198,843,844],{},[74,845,846],{},"{m=主标题;s=副标题;fadeIn=10;stay=40;fadeOut=10}",[183,848,849,854,859],{},[198,850,851],{},[74,852,853],{},"Sound",[198,855,856],{},[74,857,858],{},"音效",[198,860,861],{},[74,862,863],{},"{name=ENTITY_PLAYER_LEVELUP;volume=1;pitch=1}",[183,865,866,871,876],{},[198,867,868],{},[74,869,870],{},"Particle",[198,872,873],{},[74,874,875],{},"粒子",[198,877,878],{},[74,879,880],{},"{name=FLAME;count=20;ox=0.5;oy=0.5;oz=0.5;speed=0}",[70,882,883],{},"音效名和粒子名随版本增删，写错或版本不支持会跳过并在日志说明，不会报错崩溃。",[597,885,886],{"id":886},"药水效果",[177,888,889,899],{},[180,890,891],{},[183,892,893,895,897],{},[186,894,608],{},[186,896,611],{},[186,898,614],{},[193,900,901,928,948],{},[183,902,903,908,919],{},[198,904,905],{},[74,906,907],{},"Potion",[198,909,910,629,913,629,916],{},[74,911,912],{},"PotionBuff",[74,914,915],{},"Buff",[74,917,918],{},"药水",[198,920,921,924,925],{},[74,922,923],{},"{type=SPEED;level=2;duration=10}","，duration 单位为",[79,926,927],{},"秒",[183,929,930,935,940],{},[198,931,932],{},[74,933,934],{},"Debuff",[198,936,937],{},[74,938,939],{},"负面",[198,941,942,665,945],{},[74,943,944],{},"{type=move;duration=5}",[74,946,947],{},"{type=BLINDNESS;level=1;duration=5}",[183,949,950,955,963],{},[198,951,952],{},[74,953,954],{},"ClearPotion",[198,956,957,629,960],{},[74,958,959],{},"RemovePotion",[74,961,962],{},"清除效果",[198,964,965,968],{},[74,966,967],{},"{type=POISON}","，不带参数则清除全部",[70,970,971,973,974,977,978,981,982,985],{},[74,972,934],{}," 有两个语义化的特殊值：",[74,975,976],{},"type=move"," 是强力缓慢（定身），",[74,979,980],{},"type=fly"," 是禁飞。其余一律按效果名解析，所以 ",[74,983,984],{},"Debuff{type=weaving}"," 这种新版本效果也能写。",[70,987,988,991],{},[74,989,990],{},"level"," 是「第几级」（从 1 起），不是 amplifier。",[597,993,994],{"id":994},"物品操作",[177,996,997,1007],{},[180,998,999],{},[183,1000,1001,1003,1005],{},[186,1002,608],{},[186,1004,611],{},[186,1006,614],{},[193,1008,1009,1029,1048],{},[183,1010,1011,1016,1021],{},[198,1012,1013],{},[74,1014,1015],{},"Enchant",[198,1017,1018],{},[74,1019,1020],{},"附魔",[198,1022,1023,665,1026],{},[74,1024,1025],{},"{name=sharpness;level=5}",[74,1027,1028],{},"{name=fortune;limit=3}",[183,1030,1031,1035,1043],{},[198,1032,1033],{},[74,1034,249],{},[198,1036,1037,629,1040],{},[74,1038,1039],{},"形态切换",[74,1041,1042],{},"切换",[198,1044,1045],{},[74,1046,1047],{},"{s=精准;时运}",[183,1049,1050,1055,1063],{},[198,1051,1052],{},[74,1053,1054],{},"Repair",[198,1056,1057,629,1060],{},[74,1058,1059],{},"修复",[74,1061,1062],{},"耐久",[198,1064,1065,768,1068,1071],{},[74,1066,1067],{},"{amount=100}",[74,1069,1070],{},"amount=full"," 则完全修复",[70,1073,1074,1076],{},[74,1075,1015],{}," 的四种语义：",[177,1078,1079,1088],{},[180,1080,1081],{},[183,1082,1083,1085],{},[186,1084,353],{},[186,1086,1087],{},"效果",[193,1089,1090,1100,1114,1124],{},[183,1091,1092,1097],{},[198,1093,1094],{},[74,1095,1096],{},"level=5",[198,1098,1099],{},"设为 5 级",[183,1101,1102,1107],{},[198,1103,1104],{},[74,1105,1106],{},"level=0",[198,1108,1109,1110,1113],{},"移除，并",[79,1111,1112],{},"记住原等级","（供 restore 用）",[183,1115,1116,1121],{},[198,1117,1118],{},[74,1119,1120],{},"level=restore",[198,1122,1123],{},"恢复之前记住的等级",[183,1125,1126,1131],{},[198,1127,1128,1129],{},"不写 ",[74,1130,990],{},[198,1132,1133,1134,1137],{},"当前等级 +1，受 ",[74,1135,1136],{},"limit"," 限制",[597,1139,1140],{"id":1140},"控制流",[70,1142,1143],{},"这一层是「技能引擎足够聪明」的关键：有了条件和组合，你可以自己拼出复杂逻辑，不需要等插件加新函数。",[177,1145,1146,1156],{},[180,1147,1148],{},[183,1149,1150,1152,1154],{},[186,1151,608],{},[186,1153,611],{},[186,1155,614],{},[193,1157,1158,1179,1200,1220,1238,1255,1276],{},[183,1159,1160,1165,1173],{},[198,1161,1162],{},[74,1163,1164],{},"All",[198,1166,1167,629,1170],{},[74,1168,1169],{},"Group",[74,1171,1172],{},"组合",[198,1174,1175,1178],{},[74,1176,1177],{},"{Damage{amount=5};Fire{ticks=60}}"," 依次执行多个",[183,1180,1181,1186,1194],{},[198,1182,1183],{},[74,1184,1185],{},"Chance",[198,1187,1188,629,1191],{},[74,1189,1190],{},"Random",[74,1192,1193],{},"概率",[198,1195,1196,1199],{},[74,1197,1198],{},"{p=0.3;Damage{amount=10}}","，p 为 0~1",[183,1201,1202,1207,1215],{},[198,1203,1204],{},[74,1205,1206],{},"If",[198,1208,1209,629,1212],{},[74,1210,1211],{},"Condition",[74,1213,1214],{},"条件",[198,1216,1217],{},[74,1218,1219],{},"{c=health\u003C0.3;Heal{amount=10}}",[183,1221,1222,1227,1232],{},[198,1223,1224],{},[74,1225,1226],{},"Delay",[198,1228,1229],{},[74,1230,1231],{},"延迟",[198,1233,1234,1237],{},[74,1235,1236],{},"{t=20;Damage{amount=5}}"," 延迟 20 tick",[183,1239,1240,1245,1250],{},[198,1241,1242],{},[74,1243,1244],{},"Repeat",[198,1246,1247],{},[74,1248,1249],{},"循环",[198,1251,1252],{},[74,1253,1254],{},"{times=3;interval=6;Damage{amount=2}}",[183,1256,1257,1262,1270],{},[198,1258,1259],{},[74,1260,1261],{},"Reward",[198,1263,1264,629,1267],{},[74,1265,1266],{},"Do",[74,1268,1269],{},"执行",[198,1271,1272,1275],{},[74,1273,1274],{},"{Chat{m=&a触发!}}"," 包一层（兼容老配置）",[183,1277,1278,1283,1291],{},[198,1279,1280],{},[74,1281,1282],{},"Command",[198,1284,1285,629,1288],{},[74,1286,1287],{},"Cmd",[74,1289,1290],{},"命令",[198,1292,1293],{},[74,1294,1295],{},"{c=give %player% diamond 1;as=console}",[70,1297,1298,1299,1302,1303,1306],{},"嵌套里可以",[79,1300,1301],{},"再套控制流","，例如 ",[74,1304,1305],{},"If{c=health\u003C0.3;All{Heal{amount=20};Potion{type=RESISTANCE;level=3}}}","。",[70,1308,1309,1311],{},[74,1310,1206],{}," 支持的条件变量：",[177,1313,1314,1323],{},[180,1315,1316],{},[183,1317,1318,1321],{},[186,1319,1320],{},"变量",[186,1322,356],{},[193,1324,1325,1339,1349,1359,1369,1378,1388,1398],{},[183,1326,1327,1332],{},[198,1328,1329],{},[74,1330,1331],{},"health",[198,1333,1334,1335,1338],{},"自己的生命",[79,1336,1337],{},"比例","（0~1）",[183,1340,1341,1346],{},[198,1342,1343],{},[74,1344,1345],{},"raw_health",[198,1347,1348],{},"自己的生命绝对值",[183,1350,1351,1356],{},[198,1352,1353],{},[74,1354,1355],{},"max_health",[198,1357,1358],{},"自己的生命上限",[183,1360,1361,1366],{},[198,1362,1363],{},[74,1364,1365],{},"food",[198,1367,1368],{},"饱食度（0~20）",[183,1370,1371,1375],{},[198,1372,1373],{},[74,1374,990],{},[198,1376,1377],{},"经验等级",[183,1379,1380,1385],{},[198,1381,1382],{},[74,1383,1384],{},"y",[198,1386,1387],{},"所在高度",[183,1389,1390,1395],{},[198,1391,1392],{},[74,1393,1394],{},"target_health",[198,1396,1397],{},"目标的生命比例（0~1）",[183,1399,1400,1405],{},[198,1401,1402],{},[74,1403,1404],{},"target_raw_health",[198,1406,1407],{},"目标的生命绝对值",[70,1409,1410,1411,629,1414,629,1417,629,1420,629,1423,629,1426],{},"运算符：",[74,1412,1413],{},">",[74,1415,1416],{},">=",[74,1418,1419],{},"\u003C",[74,1421,1422],{},"\u003C=",[74,1424,1425],{},"==",[74,1427,1428],{},"!=",[237,1430,1431,1434],{"icon":239},[74,1432,1433],{},"target_*"," 在这次触发没有目标实体时取不到值，条件直接判为不成立（不是报错）。",[70,1436,1437,1439,1440,1443,1444,1447,1448,1451,1452,1455,1456,1459,1460,1463],{},[74,1438,1282],{}," 的 ",[74,1441,1442],{},"as"," 参数：",[74,1445,1446],{},"player","（默认）、",[74,1449,1450],{},"op","（临时提权后还原）、",[74,1453,1454],{},"console","。命令里可用 ",[74,1457,1458],{},"%player%"," 和 ",[74,1461,1462],{},"%uuid%"," 占位符。",[237,1465,1468,1471,1472,1475,1476,1306],{"icon":1466,"type":1467},"i-lucide-shield-alert","warning",[74,1469,1470],{},"Command{as=op}"," 会临时给玩家 OP 权限执行命令。虽然执行完立即还原，但如果命令内容里含玩家可控的文本（比如从 lore 读来的值），存在被利用的风险。能用 ",[74,1473,1474],{},"as=console"," 就别用 ",[74,1477,1478],{},"as=op",[70,1480,1481,1439,1483,1486,1487,1490],{},[74,1482,1244],{},[74,1484,1485],{},"times"," 上限是 100，防止手滑写 ",[74,1488,1489],{},"times=99999"," 卡死主线程。",[170,1492],{},[173,1494,1496],{"id":1495},"cooldowntip冷却提示","CooldownTip：冷却提示",[70,1498,1499,1501],{},[74,1500,222],{}," 本身也是一个函数表达式，支持三种：",[1503,1504,1505,1520,1535],"code-group",{},[87,1506,1509],{"className":89,"code":1507,"filename":1508,"language":91,"meta":92,"style":92},"CooldownTip: ActionBar{p=&c冷却时间;s=&a%.2fs;empty=&f|;full=&a|;length=75}\n","进度条",[74,1510,1511],{"__ignoreMap":92},[96,1512,1513,1515,1517],{"class":98,"line":99},[96,1514,222],{"class":102},[96,1516,107],{"class":106},[96,1518,1519],{"class":125}," ActionBar{p=&c冷却时间;s=&a%.2fs;empty=&f|;full=&a|;length=75}\n",[87,1521,1524],{"className":89,"code":1522,"filename":1523,"language":91,"meta":92,"style":92},"CooldownTip: Chat{m=&c技能还在冷却中}\n","聊天栏",[74,1525,1526],{"__ignoreMap":92},[96,1527,1528,1530,1532],{"class":98,"line":99},[96,1529,222],{"class":102},[96,1531,107],{"class":106},[96,1533,1534],{"class":125}," Chat{m=&c技能还在冷却中}\n",[87,1536,1539],{"className":89,"code":1537,"filename":1538,"language":91,"meta":92,"style":92},"CooldownTip: Title{m=&c冷却中}\n","大标题",[74,1540,1541],{"__ignoreMap":92},[96,1542,1543,1545,1547],{"class":98,"line":99},[96,1544,222],{"class":102},[96,1546,107],{"class":106},[96,1548,1549],{"class":125}," Title{m=&c冷却中}\n",[70,1551,1552,1554],{},[74,1553,819],{}," 模式的参数：",[177,1556,1557,1566],{},[180,1558,1559],{},[183,1560,1561,1564],{},[186,1562,1563],{},"参数",[186,1565,191],{},[193,1567,1568,1577,1591,1601,1611],{},[183,1569,1570,1574],{},[198,1571,1572],{},[74,1573,70],{},[198,1575,1576],{},"前缀文字",[183,1578,1579,1584],{},[198,1580,1581],{},[74,1582,1583],{},"s",[198,1585,1586,1587,1590],{},"后缀模板，",[74,1588,1589],{},"%.2f"," 会被替换成剩余秒数",[183,1592,1593,1598],{},[198,1594,1595],{},[74,1596,1597],{},"empty",[198,1599,1600],{},"进度条未填充部分的字符",[183,1602,1603,1608],{},[198,1604,1605],{},[74,1606,1607],{},"full",[198,1609,1610],{},"已填充部分的字符",[183,1612,1613,1618],{},[198,1614,1615],{},[74,1616,1617],{},"length",[198,1619,1620],{},"进度条长度",[170,1622],{},[173,1624,1625],{"id":1625},"完整示例",[597,1627,1629],{"id":1628},"条件技能濒死保命","条件技能：濒死保命",[87,1631,1633],{"className":89,"code":1632,"language":91,"meta":92,"style":92},"濒死守护:\n  Lore: \"&c濒死守护\"\n  Cooldown: 30.0\n  CooldownTip: ActionBar{p=&c守护冷却;s=&c%.2fs;empty=&8|;full=&c|;length=40}\n  Skills:\n    # 被打到 30% 以下时，回血 + 抗性 + 音效\n    - If{c=health\u003C0.3;All{Heal{amount=20};Potion{type=RESISTANCE;level=3;duration=6};Sound{name=ITEM_TOTEM_USE}}} ~onDamaged\n    - If{c=health\u003C0.3;Title{m=&c&l守护发动;s=&7生命已恢复}} ~onDamaged\n",[74,1634,1635,1642,1656,1665,1675,1681,1687,1695],{"__ignoreMap":92},[96,1636,1637,1640],{"class":98,"line":99},[96,1638,1639],{"class":102},"濒死守护",[96,1641,156],{"class":106},[96,1643,1644,1646,1648,1650,1653],{"class":98,"line":114},[96,1645,117],{"class":102},[96,1647,107],{"class":106},[96,1649,122],{"class":106},[96,1651,1652],{"class":125},"&c濒死守护",[96,1654,1655],{"class":106},"\"\n",[96,1657,1658,1660,1662],{"class":98,"line":135},[96,1659,138],{"class":102},[96,1661,107],{"class":106},[96,1663,1664],{"class":143}," 30.0\n",[96,1666,1667,1670,1672],{"class":98,"line":150},[96,1668,1669],{"class":102},"  CooldownTip",[96,1671,107],{"class":106},[96,1673,1674],{"class":125}," ActionBar{p=&c守护冷却;s=&c%.2fs;empty=&8|;full=&c|;length=40}\n",[96,1676,1677,1679],{"class":98,"line":159},[96,1678,153],{"class":102},[96,1680,156],{"class":106},[96,1682,1684],{"class":98,"line":1683},6,[96,1685,1686],{"class":110},"    # 被打到 30% 以下时，回血 + 抗性 + 音效\n",[96,1688,1690,1692],{"class":98,"line":1689},7,[96,1691,162],{"class":106},[96,1693,1694],{"class":125}," If{c=health\u003C0.3;All{Heal{amount=20};Potion{type=RESISTANCE;level=3;duration=6};Sound{name=ITEM_TOTEM_USE}}} ~onDamaged\n",[96,1696,1698,1700],{"class":98,"line":1697},8,[96,1699,162],{"class":106},[96,1701,1702],{"class":125}," If{c=health\u003C0.3;Title{m=&c&l守护发动;s=&7生命已恢复}} ~onDamaged\n",[597,1704,1706],{"id":1705},"概率技能攻击时随机触发","概率技能：攻击时随机触发",[87,1708,1710],{"className":89,"code":1709,"language":91,"meta":92,"style":92},"雷霆之刃:\n  Lore: \"&b雷霆之刃\"\n  Skills:\n    - Chance{p=0.2;Lightning{damage=true}} ~onAttack @Entity\n    - Chance{p=0.3;Fire{ticks=80}} ~onAttack @Entity\n    - Chance{p=0.2;ActionBar{m=&e&l雷霆!}} ~onAttack\n",[74,1711,1712,1719,1732,1738,1745,1752],{"__ignoreMap":92},[96,1713,1714,1717],{"class":98,"line":99},[96,1715,1716],{"class":102},"雷霆之刃",[96,1718,156],{"class":106},[96,1720,1721,1723,1725,1727,1730],{"class":98,"line":114},[96,1722,117],{"class":102},[96,1724,107],{"class":106},[96,1726,122],{"class":106},[96,1728,1729],{"class":125},"&b雷霆之刃",[96,1731,1655],{"class":106},[96,1733,1734,1736],{"class":98,"line":135},[96,1735,153],{"class":102},[96,1737,156],{"class":106},[96,1739,1740,1742],{"class":98,"line":150},[96,1741,162],{"class":106},[96,1743,1744],{"class":125}," Chance{p=0.2;Lightning{damage=true}} ~onAttack @Entity\n",[96,1746,1747,1749],{"class":98,"line":159},[96,1748,162],{"class":106},[96,1750,1751],{"class":125}," Chance{p=0.3;Fire{ticks=80}} ~onAttack @Entity\n",[96,1753,1754,1756],{"class":98,"line":1683},[96,1755,162],{"class":106},[96,1757,1758],{"class":125}," Chance{p=0.2;ActionBar{m=&e&l雷霆!}} ~onAttack\n",[597,1760,1762],{"id":1761},"连招延迟与重复","连招：延迟与重复",[87,1764,1766],{"className":89,"code":1765,"language":91,"meta":92,"style":92},"三段斩:\n  Lore: \"&6三段斩\"\n  Cooldown: 8.0\n  Skills:\n    - Repeat{times=3;interval=6;All{Damage{amount=4};Particle{name=SWEEP_ATTACK;count=8}}} ~onAttack @Entity\n    - Sound{name=ENTITY_PLAYER_ATTACK_SWEEP} ~onAttack\n",[74,1767,1768,1775,1788,1797,1803,1810],{"__ignoreMap":92},[96,1769,1770,1773],{"class":98,"line":99},[96,1771,1772],{"class":102},"三段斩",[96,1774,156],{"class":106},[96,1776,1777,1779,1781,1783,1786],{"class":98,"line":114},[96,1778,117],{"class":102},[96,1780,107],{"class":106},[96,1782,122],{"class":106},[96,1784,1785],{"class":125},"&6三段斩",[96,1787,1655],{"class":106},[96,1789,1790,1792,1794],{"class":98,"line":135},[96,1791,138],{"class":102},[96,1793,107],{"class":106},[96,1795,1796],{"class":143}," 8.0\n",[96,1798,1799,1801],{"class":98,"line":150},[96,1800,153],{"class":102},[96,1802,156],{"class":106},[96,1804,1805,1807],{"class":98,"line":159},[96,1806,162],{"class":106},[96,1808,1809],{"class":125}," Repeat{times=3;interval=6;All{Damage{amount=4};Particle{name=SWEEP_ATTACK;count=8}}} ~onAttack @Entity\n",[96,1811,1812,1814],{"class":98,"line":1683},[96,1813,162],{"class":106},[96,1815,1816],{"class":125}," Sound{name=ENTITY_PLAYER_ATTACK_SWEEP} ~onAttack\n",[597,1818,1820],{"id":1819},"发射物技能飞雷神","发射物技能：飞雷神",[87,1822,1824],{"className":89,"code":1823,"language":91,"meta":92,"style":92},"飞雷神三叉戟:\n  Lore: \"飞雷神三叉戟\"\n  Cooldown: 15.0\n  Skills:\n    - Blink{distance=120} ~onHit:TRIDENT @Location\n    - Reward{Title{m=&e飞雷神之术}} ~onHit:TRIDENT\n",[74,1825,1826,1833,1845,1854,1860,1867],{"__ignoreMap":92},[96,1827,1828,1831],{"class":98,"line":99},[96,1829,1830],{"class":102},"飞雷神三叉戟",[96,1832,156],{"class":106},[96,1834,1835,1837,1839,1841,1843],{"class":98,"line":114},[96,1836,117],{"class":102},[96,1838,107],{"class":106},[96,1840,122],{"class":106},[96,1842,1830],{"class":125},[96,1844,1655],{"class":106},[96,1846,1847,1849,1851],{"class":98,"line":135},[96,1848,138],{"class":102},[96,1850,107],{"class":106},[96,1852,1853],{"class":143}," 15.0\n",[96,1855,1856,1858],{"class":98,"line":150},[96,1857,153],{"class":102},[96,1859,156],{"class":106},[96,1861,1862,1864],{"class":98,"line":159},[96,1863,162],{"class":106},[96,1865,1866],{"class":125}," Blink{distance=120} ~onHit:TRIDENT @Location\n",[96,1868,1869,1871],{"class":98,"line":1683},[96,1870,162],{"class":106},[96,1872,1873],{"class":125}," Reward{Title{m=&e飞雷神之术}} ~onHit:TRIDENT\n",[597,1875,1877],{"id":1876},"矛技能12111","矛技能（1.21.11+）",[87,1879,1881],{"className":89,"code":1880,"language":91,"meta":92,"style":92},"穿云长矛:\n  Lore: \"&f穿云长矛\"\n  Cooldown: 6.0\n  Skills:\n    # 投出瞬间\n    - Sound{name=ITEM_TRIDENT_THROW} ~onLaunch:SPEAR\n    - ActionBar{m=&f长矛已投出} ~onLaunch:SPEAR\n    # 命中处\n    - Particle{name=EXPLOSION;count=1} ~onHit:SPEAR @Location\n    - Damage{amount=6} ~onHit:SPEAR @Entity\n    - Blink{distance=120} ~onHit:SPEAR @Location\n",[74,1882,1883,1890,1903,1912,1918,1923,1930,1937,1942,1950,1958],{"__ignoreMap":92},[96,1884,1885,1888],{"class":98,"line":99},[96,1886,1887],{"class":102},"穿云长矛",[96,1889,156],{"class":106},[96,1891,1892,1894,1896,1898,1901],{"class":98,"line":114},[96,1893,117],{"class":102},[96,1895,107],{"class":106},[96,1897,122],{"class":106},[96,1899,1900],{"class":125},"&f穿云长矛",[96,1902,1655],{"class":106},[96,1904,1905,1907,1909],{"class":98,"line":135},[96,1906,138],{"class":102},[96,1908,107],{"class":106},[96,1910,1911],{"class":143}," 6.0\n",[96,1913,1914,1916],{"class":98,"line":150},[96,1915,153],{"class":102},[96,1917,156],{"class":106},[96,1919,1920],{"class":98,"line":159},[96,1921,1922],{"class":110},"    # 投出瞬间\n",[96,1924,1925,1927],{"class":98,"line":1683},[96,1926,162],{"class":106},[96,1928,1929],{"class":125}," Sound{name=ITEM_TRIDENT_THROW} ~onLaunch:SPEAR\n",[96,1931,1932,1934],{"class":98,"line":1689},[96,1933,162],{"class":106},[96,1935,1936],{"class":125}," ActionBar{m=&f长矛已投出} ~onLaunch:SPEAR\n",[96,1938,1939],{"class":98,"line":1697},[96,1940,1941],{"class":110},"    # 命中处\n",[96,1943,1945,1947],{"class":98,"line":1944},9,[96,1946,162],{"class":106},[96,1948,1949],{"class":125}," Particle{name=EXPLOSION;count=1} ~onHit:SPEAR @Location\n",[96,1951,1953,1955],{"class":98,"line":1952},10,[96,1954,162],{"class":106},[96,1956,1957],{"class":125}," Damage{amount=6} ~onHit:SPEAR @Entity\n",[96,1959,1961,1963],{"class":98,"line":1960},11,[96,1962,162],{"class":106},[96,1964,1965],{"class":125}," Blink{distance=120} ~onHit:SPEAR @Location\n",[237,1967,1968,1969,1972,1973,1975,1976,1979,1980,1983],{"icon":239},"矛的",[79,1970,1971],{},"七种材质","（木\u002F石\u002F铜\u002F铁\u002F金\u002F钻石\u002F下界合金）都会触发 ",[74,1974,568],{}," 与 ",[74,1977,1978],{},"~onLaunch:SPEAR","，不需要按材质分别写。这两个触发标记由 ",[74,1981,1982],{},"Compat.Modules.Spear"," 管辖，在没有矛的版本上自动失效。",[170,1985],{},[173,1987,1989],{"id":1988},"从-lore-读数值lore","从 lore 读数值：$LORE:$",[70,1991,1992],{},"技能参数可以从装备 lore 里动态读数值：",[87,1994,1997],{"className":1995,"code":1996,"language":272},[270],"$LORE:标签?默认值$\n",[74,1998,1996],{"__ignoreMap":92},[87,2000,2002],{"className":89,"code":2001,"language":91,"meta":92,"style":92},"向前闪现:\n  Lore: \"右键即可闪现\"\n  Skills:\n    - Blink{distance=$LORE:闪现距离?32$} ~onUse @Forward\n",[74,2003,2004,2010,2022,2028],{"__ignoreMap":92},[96,2005,2006,2008],{"class":98,"line":99},[96,2007,103],{"class":102},[96,2009,156],{"class":106},[96,2011,2012,2014,2016,2018,2020],{"class":98,"line":114},[96,2013,117],{"class":102},[96,2015,107],{"class":106},[96,2017,122],{"class":106},[96,2019,126],{"class":125},[96,2021,1655],{"class":106},[96,2023,2024,2026],{"class":98,"line":135},[96,2025,153],{"class":102},[96,2027,156],{"class":106},[96,2029,2030,2032],{"class":98,"line":150},[96,2031,162],{"class":106},[96,2033,2034],{"class":125}," Blink{distance=$LORE:闪现距离?32$} ~onUse @Forward\n",[70,2036,2037,2038,2041],{},"装备 lore 里写「闪现距离 64」就用 64，没写就用 32。标签要写",[79,2039,2040],{},"去掉颜色码","的形式——插件会先把 lore 去色再比较，所以颜色码穿插在中间也能匹配。",[70,2043,2044,2045,2048],{},"这套机制让「同一个技能定义，不同装备不同数值」成为可能，配合宝石的 ",[74,2046,2047],{},"LoreVar"," 就能做出可升级的技能。",[170,2050],{},[173,2052,2054],{"id":2053},"形态切换switch","形态切换：Switch",[70,2056,2057,2058,2061],{},"「精准 ↔ 时运」这类切换：两个形态各自是一个技能定义，用 ",[74,2059,2060],{},"RewardSwitch"," 声明进入该形态要做什么。",[87,2063,2065],{"className":89,"code":2064,"language":91,"meta":92,"style":92},"精准时运切换:\n  Lore: \"§2Shift+右键切换模式(精准\u002F时运)\"\n  Cooldown: 4.0\n  CooldownTip: ActionBar{p=&c切换冷却;s=&a%.2fs;empty=&f|;full=&c|;length=75}\n  Skills:\n    - Switch{s=精准;时运} ~onShiftUse\n\n# 精准模式：收起时运，恢复精准\n精准:\n  Skills:\n    - RewardSwitch{Enchant{name=fortune;level=0}}\n    - RewardSwitch{Enchant{name=silk_touch;level=restore}}\n    - RewardSwitch{ActionBar{m=&b&l切换为精准模式}}\n\n# 时运模式：收起精准，恢复时运\n时运:\n  Skills:\n    - RewardSwitch{Enchant{name=silk_touch;level=0}}\n    - RewardSwitch{Enchant{name=fortune;level=restore}}\n    - RewardSwitch{ActionBar{m=&a&l切换为时运模式}}\n",[74,2066,2067,2074,2087,2096,2105,2111,2118,2124,2129,2136,2142,2149,2157,2165,2170,2176,2184,2191,2199,2207],{"__ignoreMap":92},[96,2068,2069,2072],{"class":98,"line":99},[96,2070,2071],{"class":102},"精准时运切换",[96,2073,156],{"class":106},[96,2075,2076,2078,2080,2082,2085],{"class":98,"line":114},[96,2077,117],{"class":102},[96,2079,107],{"class":106},[96,2081,122],{"class":106},[96,2083,2084],{"class":125},"§2Shift+右键切换模式(精准\u002F时运)",[96,2086,1655],{"class":106},[96,2088,2089,2091,2093],{"class":98,"line":135},[96,2090,138],{"class":102},[96,2092,107],{"class":106},[96,2094,2095],{"class":143}," 4.0\n",[96,2097,2098,2100,2102],{"class":98,"line":150},[96,2099,1669],{"class":102},[96,2101,107],{"class":106},[96,2103,2104],{"class":125}," ActionBar{p=&c切换冷却;s=&a%.2fs;empty=&f|;full=&c|;length=75}\n",[96,2106,2107,2109],{"class":98,"line":159},[96,2108,153],{"class":102},[96,2110,156],{"class":106},[96,2112,2113,2115],{"class":98,"line":1683},[96,2114,162],{"class":106},[96,2116,2117],{"class":125}," Switch{s=精准;时运} ~onShiftUse\n",[96,2119,2120],{"class":98,"line":1689},[96,2121,2123],{"emptyLinePlaceholder":2122},true,"\n",[96,2125,2126],{"class":98,"line":1697},[96,2127,2128],{"class":110},"# 精准模式：收起时运，恢复精准\n",[96,2130,2131,2134],{"class":98,"line":1944},[96,2132,2133],{"class":102},"精准",[96,2135,156],{"class":106},[96,2137,2138,2140],{"class":98,"line":1952},[96,2139,153],{"class":102},[96,2141,156],{"class":106},[96,2143,2144,2146],{"class":98,"line":1960},[96,2145,162],{"class":106},[96,2147,2148],{"class":125}," RewardSwitch{Enchant{name=fortune;level=0}}\n",[96,2150,2152,2154],{"class":98,"line":2151},12,[96,2153,162],{"class":106},[96,2155,2156],{"class":125}," RewardSwitch{Enchant{name=silk_touch;level=restore}}\n",[96,2158,2160,2162],{"class":98,"line":2159},13,[96,2161,162],{"class":106},[96,2163,2164],{"class":125}," RewardSwitch{ActionBar{m=&b&l切换为精准模式}}\n",[96,2166,2168],{"class":98,"line":2167},14,[96,2169,2123],{"emptyLinePlaceholder":2122},[96,2171,2173],{"class":98,"line":2172},15,[96,2174,2175],{"class":110},"# 时运模式：收起精准，恢复时运\n",[96,2177,2179,2182],{"class":98,"line":2178},16,[96,2180,2181],{"class":102},"时运",[96,2183,156],{"class":106},[96,2185,2187,2189],{"class":98,"line":2186},17,[96,2188,153],{"class":102},[96,2190,156],{"class":106},[96,2192,2194,2196],{"class":98,"line":2193},18,[96,2195,162],{"class":106},[96,2197,2198],{"class":125}," RewardSwitch{Enchant{name=silk_touch;level=0}}\n",[96,2200,2202,2204],{"class":98,"line":2201},19,[96,2203,162],{"class":106},[96,2205,2206],{"class":125}," RewardSwitch{Enchant{name=fortune;level=restore}}\n",[96,2208,2210,2212],{"class":98,"line":2209},20,[96,2211,162],{"class":106},[96,2213,2214],{"class":125}," RewardSwitch{ActionBar{m=&a&l切换为时运模式}}\n",[70,2216,2217,2218,2220,2221,2223],{},"工作原理：",[74,2219,1106],{}," 移除附魔并记住原等级，",[74,2222,1120],{}," 恢复记住的等级。切换状态存在物品的 PDC 里。",[237,2225,2227,2230,2231,665,2233,2236],{"icon":2226},"i-lucide-lightbulb",[79,2228,2229],{},"你新写任意一组切换都不需要改插件。"," 引擎会读取两个形态各自声明的「特征附魔」（",[74,2232,1120],{},[74,2234,2235],{},"level>0"," 的那些），看物品上实际带着谁的附魔，据此反推当前形态。所以「忠诚 ↔ 激流」「经验修补 ↔ 无限」「火焰附加 ↔ 击退」都能照抄上面的结构直接用。",[70,2238,2239,2240,2245,2246,2248],{},"两个形态定义",[79,2241,2242,2243],{},"不需要写 ",[74,2244,202],{},"——它们不由装备直接触发，而是被 ",[74,2247,249],{}," 调用。",[70,2250,2251,2252,2254,2255,2254,2257,2259,2260,2262],{},"如果目标形态自己配了 ",[74,2253,796],{},"\u002F",[74,2256,819],{},[74,2258,836],{},"，就以配置为准；没配的话插件会发一条来自 ",[74,2261,579],{}," 的兜底提示，避免按下去毫无反应像是插件坏了。",[170,2264],{},[173,2266,2268],{"id":2267},"常驻-buff","常驻 BUFF",[70,2270,2271,2272,2275,2276,2278],{},"BUFF 引擎每秒扫描每个在线玩家的",[79,2273,2274],{},"主手、副手、四件盔甲","，命中 lore 标记就执行该定义里带 ",[74,2277,533],{}," 的技能行。",[87,2280,2282],{"className":89,"code":2281,"language":91,"meta":92,"style":92},"发光:\n  Lore: \"&6&l[&c&lBUFF&6&l] &b&l发光\"\n  Skills:\n    - Potion{type=GLOWING} ~onTimer\n",[74,2283,2284,2291,2304,2310],{"__ignoreMap":92},[96,2285,2286,2289],{"class":98,"line":99},[96,2287,2288],{"class":102},"发光",[96,2290,156],{"class":106},[96,2292,2293,2295,2297,2299,2302],{"class":98,"line":114},[96,2294,117],{"class":102},[96,2296,107],{"class":106},[96,2298,122],{"class":106},[96,2300,2301],{"class":125},"&6&l[&c&lBUFF&6&l] &b&l发光",[96,2303,1655],{"class":106},[96,2305,2306,2308],{"class":98,"line":135},[96,2307,153],{"class":102},[96,2309,156],{"class":106},[96,2311,2312,2314],{"class":98,"line":150},[96,2313,162],{"class":106},[96,2315,2316],{"class":125}," Potion{type=GLOWING} ~onTimer\n",[70,2318,2319],{},"因为是每秒重新施加，效果时长只要 ≥2 秒就不会闪断（插件内部会把时长夹到至少 40 tick）。",[597,2321,2323],{"id":2322},"可叠加等级的-buff","可叠加等级的 BUFF",[70,2325,2326,2327,2329,2330,2333],{},"配合宝石的 ",[74,2328,2047],{}," 写数字，这里用 ",[74,2331,2332],{},"$LORE:$"," 读回来：",[87,2335,2337],{"className":89,"code":2336,"language":91,"meta":92,"style":92},"抗性提升:\n  Lore: \"&6&l[&c&lBUFF&6&l] &b&l抗性提升 \"\n  Skills:\n    - Potion{type=DAMAGE_RESISTANCE;level=$LORE:[BUFF] 抗性提升?1$} ~onTimer\n",[74,2338,2339,2346,2359,2365],{"__ignoreMap":92},[96,2340,2341,2344],{"class":98,"line":99},[96,2342,2343],{"class":102},"抗性提升",[96,2345,156],{"class":106},[96,2347,2348,2350,2352,2354,2357],{"class":98,"line":114},[96,2349,117],{"class":102},[96,2351,107],{"class":106},[96,2353,122],{"class":106},[96,2355,2356],{"class":125},"&6&l[&c&lBUFF&6&l] &b&l抗性提升 ",[96,2358,1655],{"class":106},[96,2360,2361,2363],{"class":98,"line":135},[96,2362,153],{"class":102},[96,2364,156],{"class":106},[96,2366,2367,2369],{"class":98,"line":150},[96,2368,162],{"class":106},[96,2370,2371],{"class":125}," Potion{type=DAMAGE_RESISTANCE;level=$LORE:[BUFF] 抗性提升?1$} ~onTimer\n",[237,2373,2375,2378,2379,2381],{"icon":2374,"type":1467},"i-lucide-triangle-alert",[74,2376,2377],{},"$LORE:"," 引用的标记必须和自己的 ",[74,2380,202],{}," 一致（去色后比较），否则等级永远读默认值 1——不报错，只是等级不涨。",[597,2383,2385],{"id":2384},"智能-buff","智能 BUFF",[70,2387,2388,2390],{},[74,2389,533],{}," 上同样能用控制流，于是可以写「满足条件才生效」的 BUFF：",[1503,2392,2393,2431,2474],{},[87,2394,2397],{"className":89,"code":2395,"filename":2396,"language":91,"meta":92,"style":92},"濒死爆发:\n  Lore: \"&6&l[&c&lBUFF&6&l] &c&l濒死爆发\"\n  Skills:\n    - If{c=health\u003C0.3;All{Potion{type=resistance;level=2};Potion{type=regeneration;level=2}}} ~onTimer\n","濒死爆发",[74,2398,2399,2405,2418,2424],{"__ignoreMap":92},[96,2400,2401,2403],{"class":98,"line":99},[96,2402,2396],{"class":102},[96,2404,156],{"class":106},[96,2406,2407,2409,2411,2413,2416],{"class":98,"line":114},[96,2408,117],{"class":102},[96,2410,107],{"class":106},[96,2412,122],{"class":106},[96,2414,2415],{"class":125},"&6&l[&c&lBUFF&6&l] &c&l濒死爆发",[96,2417,1655],{"class":106},[96,2419,2420,2422],{"class":98,"line":135},[96,2421,153],{"class":102},[96,2423,156],{"class":106},[96,2425,2426,2428],{"class":98,"line":150},[96,2427,162],{"class":106},[96,2429,2430],{"class":125}," If{c=health\u003C0.3;All{Potion{type=resistance;level=2};Potion{type=regeneration;level=2}}} ~onTimer\n",[87,2432,2435],{"className":89,"code":2433,"filename":2434,"language":91,"meta":92,"style":92},"矿工直觉:\n  Lore: \"&6&l[&c&lBUFF&6&l] &e&l矿工直觉\"\n  Skills:\n    # y\u003C0 = 深板岩层\u002F深暗之域\n    - If{c=y\u003C0;All{Potion{type=night_vision;duration=15};Potion{type=haste;level=2}}} ~onTimer\n","矿工直觉",[74,2436,2437,2443,2456,2462,2467],{"__ignoreMap":92},[96,2438,2439,2441],{"class":98,"line":99},[96,2440,2434],{"class":102},[96,2442,156],{"class":106},[96,2444,2445,2447,2449,2451,2454],{"class":98,"line":114},[96,2446,117],{"class":102},[96,2448,107],{"class":106},[96,2450,122],{"class":106},[96,2452,2453],{"class":125},"&6&l[&c&lBUFF&6&l] &e&l矿工直觉",[96,2455,1655],{"class":106},[96,2457,2458,2460],{"class":98,"line":135},[96,2459,153],{"class":102},[96,2461,156],{"class":106},[96,2463,2464],{"class":98,"line":150},[96,2465,2466],{"class":110},"    # y\u003C0 = 深板岩层\u002F深暗之域\n",[96,2468,2469,2471],{"class":98,"line":159},[96,2470,162],{"class":106},[96,2472,2473],{"class":125}," If{c=y\u003C0;All{Potion{type=night_vision;duration=15};Potion{type=haste;level=2}}} ~onTimer\n",[87,2475,2478],{"className":89,"code":2476,"filename":2477,"language":91,"meta":92,"style":92},"不稳定祝福:\n  Lore: \"&6&l[&c&lBUFF&6&l] &d&l不稳定祝福\"\n  Skills:\n    - Chance{p=0.1;Potion{type=speed;level=2;duration=5}} ~onTimer\n    - Chance{p=0.1;Potion{type=strength;duration=5}} ~onTimer\n    - Chance{p=0.02;Potion{type=wind_charged;duration=5}} ~onTimer\n","不稳定祝福",[74,2479,2480,2486,2499,2505,2512,2519],{"__ignoreMap":92},[96,2481,2482,2484],{"class":98,"line":99},[96,2483,2477],{"class":102},[96,2485,156],{"class":106},[96,2487,2488,2490,2492,2494,2497],{"class":98,"line":114},[96,2489,117],{"class":102},[96,2491,107],{"class":106},[96,2493,122],{"class":106},[96,2495,2496],{"class":125},"&6&l[&c&lBUFF&6&l] &d&l不稳定祝福",[96,2498,1655],{"class":106},[96,2500,2501,2503],{"class":98,"line":135},[96,2502,153],{"class":102},[96,2504,156],{"class":106},[96,2506,2507,2509],{"class":98,"line":150},[96,2508,162],{"class":106},[96,2510,2511],{"class":125}," Chance{p=0.1;Potion{type=speed;level=2;duration=5}} ~onTimer\n",[96,2513,2514,2516],{"class":98,"line":159},[96,2515,162],{"class":106},[96,2517,2518],{"class":125}," Chance{p=0.1;Potion{type=strength;duration=5}} ~onTimer\n",[96,2520,2521,2523],{"class":98,"line":1683},[96,2522,162],{"class":106},[96,2524,2525],{"class":125}," Chance{p=0.02;Potion{type=wind_charged;duration=5}} ~onTimer\n",[237,2527,2528,2529,629,2532,2535,2536,2539],{"icon":239},"引擎",[79,2530,2531],{},"没有",[74,2533,2534],{},"in_water"," 这类环境变量。想判断「在水下」只能用 ",[74,2537,2538],{},"y\u003C你服的海平面高度"," 近似。",[597,2541,2543],{"id":2542},"buff-与宝石配对","BUFF 与宝石配对",[70,2545,2546],{},"BUFF 定义只是「准备好一个标记」。要让玩家能获得它，二选一：",[2548,2549,2550,2565],"ol",{},[2551,2552,2553,2554,2557,2558,2561,2562],"li",{},"在 ",[74,2555,2556],{},"gems\u002F"," 里写一颗宝石，",[74,2559,2560],{},"Rewards"," 用 ",[74,2563,2564],{},"LoreAdd{lore=这里的 Lore 文本}",[2551,2566,2567],{},"直接把这行 lore 加到装备上（用其他插件或命令）",[70,2569,2570,2573],{},[74,2571,2572],{},"skills\u002FModernBuffs.yml"," 里有 7 个已标注为「模板」的定义就属于第一种情况——标记准备好了但没配套宝石，需要你自己加。",[170,2575],{},[173,2577,2578],{"id":2578},"性能提醒",[237,2580,2582,2588],{"icon":2581,"type":1467},"i-lucide-gauge",[70,2583,2584,2585,2587],{},"BUFF 引擎每秒对每个在线玩家扫 6 个物品槽 × 所有带 ",[74,2586,202],{}," 的技能定义。定义数量大（几百个）且在线人数多（上百）时会有可观开销。建议：",[2589,2590,2591,2594,2603],"ul",{},[2551,2592,2593],{},"不需要的 BUFF 定义直接删掉，别留着",[2551,2595,2596,2597,2599,2600,2602],{},"常驻 BUFF 用 ",[74,2598,533],{},"，一次性效果用 ",[74,2601,413],{}," 等事件触发标记",[2551,2604,2605,2607,2608,2611],{},[74,2606,1244],{}," + 短 ",[74,2609,2610],{},"interval"," 会在短时间内塞入大量调度任务，谨慎用于高频触发的技能",[170,2613],{},[173,2615,2616],{"id":2616},"验证",[70,2618,2619,2620,2623],{},"改完技能配置后 ",[74,2621,2622],{},"\u002Fsgem reload","，然后：",[2589,2625,2626,2632,2637],{},[2551,2627,2628,2631],{},[74,2629,2630],{},"\u002Fsgem skills"," 确认函数名没写错",[2551,2633,2634,2636],{},[74,2635,575],{}," 确认触发标记没写错",[2551,2638,2639,2642],{},[74,2640,2641],{},"\u002Fsgem compat all"," 查看配置自检结果",[70,2644,2645],{},"配置自检会明确报出「不是已注册的技能函数」（含拼写建议）和「这一行没有写触发标记，永远不会被触发」这两类最常见的笔误。",[2647,2648,2649],"style",{},"html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":92,"searchDepth":114,"depth":114,"links":2651},[2652,2653,2654,2655,2663,2664,2671,2672,2673,2678,2679],{"id":175,"depth":114,"text":175},{"id":266,"depth":114,"text":266},{"id":392,"depth":114,"text":392},{"id":585,"depth":114,"text":585,"children":2656},[2657,2658,2659,2660,2661,2662],{"id":599,"depth":135,"text":599},{"id":676,"depth":135,"text":676},{"id":775,"depth":135,"text":775},{"id":886,"depth":135,"text":886},{"id":994,"depth":135,"text":994},{"id":1140,"depth":135,"text":1140},{"id":1495,"depth":114,"text":1496},{"id":1625,"depth":114,"text":1625,"children":2665},[2666,2667,2668,2669,2670],{"id":1628,"depth":135,"text":1629},{"id":1705,"depth":135,"text":1706},{"id":1761,"depth":135,"text":1762},{"id":1819,"depth":135,"text":1820},{"id":1876,"depth":135,"text":1877},{"id":1988,"depth":114,"text":1989},{"id":2053,"depth":114,"text":2054},{"id":2267,"depth":114,"text":2268,"children":2674},[2675,2676,2677],{"id":2322,"depth":135,"text":2323},{"id":2384,"depth":135,"text":2385},{"id":2542,"depth":135,"text":2543},{"id":2578,"depth":114,"text":2578},{"id":2616,"depth":114,"text":2616},"技能行语法、24 个内置函数、触发标记、条件与概率、形态切换、常驻 BUFF 的完整配置参考。","md",null,{},{"icon":28},{"title":2686,"description":2687},"SnowyGems 技能与 BUFF 配置手册","服主视角的技能引擎参考：技能行结构、全部函数清单、触发标记、控制流写法与形态切换。","dO_jgoCcJESGwit6t9MdFtAlOduqtToemT5aSRFgzJU",[2690,2692],{"title":21,"path":22,"stem":23,"description":2691,"icon":6,"children":-1},"gems\u002F 目录下宝石的全部字段、Rewards 奖励函数、Require 适用范围写法与完整示例。",{"title":30,"path":31,"stem":32,"description":2693,"icon":33,"children":-1},"gui\u002F 目录下工作台菜单的字符网格布局、五种槽位类型、宝石分类限制与实战示例。",1785558357487]