API 参考 / spi 包:游戏模式、谱面扩展与内容
SkinSlot
皮肤槽位枚举,SkinProvider.image(SkinSlot) 的查询键,与宿主内置四类音符一一对应。同一槽位在图片皮肤里是一张固定用途的 PNG,在字符皮肤里对应 note.json 的同名配置段。
常量
| 常量 | 对应音符 | 图片规范 |
|---|---|---|
NORMAL | 普通音符 | 1000×100 |
HOLD | 长条音符 | 1000×1100(三段式九宫格) |
EXPLOIT | exploit 音符 | 1000×100 |
PAYLOAD | payload 音符 | 1000×100 |
方法速览
| 方法 | 用途 |
|---|---|
values() | 按声明顺序返回全部常量 |
valueOf(String) | 按名称取常量,名称非法时抛 IllegalArgumentException |
values()
签名:
java
public static SkinSlot[] values();行为:返回 {NORMAL, HOLD, EXPLOIT, PAYLOAD},每次调用返回新数组。
valueOf(String name)
签名:
java
public static SkinSlot valueOf(String name);行为:按名称精确匹配(区分大小写);null 或未知名称抛 IllegalArgumentException。
示例
java
for (SkinSlot slot : SkinSlot.values()) {
String ref = provider.image(slot);
}完整签名
java
public enum SkinSlot {
NORMAL,
HOLD,
EXPLOIT,
PAYLOAD
}线程:源码未声明额外线程约束;枚举常量不可变,可跨线程读取。
生命周期阶段:运行期由宿主按槽位查询素材。
稳定性:2.0 加性新增;枚举只增不破(新增枚举常量对既有 switch 表达式是源码级破坏,宿主消费方一律走 default 分支兜底)。