0.1.37 天人感应·因果织锦:功德系统+飞升试炼+世界奇观+MOD扩展口
This commit is contained in:
@@ -37,6 +37,8 @@ export interface ModPackData {
|
||||
aspirations?: Array<{ id: string; name: string; desc: string; effectType: string; value: number }>
|
||||
formations?: Array<{ id: string; name: string; icon: string; desc: string; atk: number; def: number; retreatWound: number }>
|
||||
traits?: Array<{ id: string; name: string; desc: string; bonus?: Record<string, number> }>
|
||||
/** 0.1.37 奇观类型扩展(MOD 可注册自定义世界奇观——零 rng 消耗,种子派生选取) */
|
||||
wonders?: Array<{ kind: string; name: string; desc: string; duration?: number; effect?: 'tide_up' | 'tide_down' | 'none'; oneshot?: 'bless' | 'loot' | 'none' }>
|
||||
}
|
||||
|
||||
export interface ModPack {
|
||||
@@ -167,5 +169,11 @@ export function validateMod(pack: ModPack): ModValidation {
|
||||
if (!(p.mult === undefined || (p.mult >= 0.5 && p.mult <= 2))) warnings.push(`patch ${p.target}:${p.id} mult 限 0.5~2。`)
|
||||
if (p.mult !== undefined && p.add !== undefined) warnings.push(`patch ${p.target}:${p.id} mult/add 二选一(勿同给)。`)
|
||||
}
|
||||
// 0.1.37 奇观类型校验
|
||||
for (const w of pack.data.wonders ?? []) {
|
||||
if (!w.kind || typeof w.kind !== 'string') warnings.push('奇观缺 kind(唯一 id)。')
|
||||
if (['tide_surge', 'ancient_ruin', 'heaven_bless', 'qi_wane'].includes(w.kind)) warnings.push(`奇观 ${w.kind} 与内置冲突。`)
|
||||
if (w.duration !== undefined && (w.duration < 0 || w.duration > 60)) warnings.push(`奇观 ${w.kind} duration 建议 0~60。`)
|
||||
}
|
||||
return { ok: warnings.length === 0, warnings }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user