export type PostEffectType = 'expAll' | 'marketIncome' | 'battlePower' | 'meditation' | 'familyRep' export interface PostDef { id: string name: string icon: string desc: string max: number effect: { type: PostEffectType; value: number } } export const POSTS: Record = { head: { id: 'head', name: '家主', icon: '主', desc: '族纲所系:声望逐年 +1,决策由玩家亲定。', max: 1, effect: { type: 'familyRep', value: 1 } }, elder: { id: 'elder', name: '长老', icon: '长', desc: '垂教宗族:全族修炼速度 +5%(每名)。', max: 2, effect: { type: 'expAll', value: 0.05 } }, guardian: { id: 'guardian', name: '供奉', icon: '供', desc: '克敌之锐:宗族战力 +8%(每名)。', max: 2, effect: { type: 'battlePower', value: 0.08 } }, steward: { id: 'steward', name: '执事', icon: '执', desc: '持家之能:坊市收入 +10%(每名)。', max: 2, effect: { type: 'marketIncome', value: 0.1 } }, master: { id: 'master', name: '掌教', icon: '掌', desc: '授道之责:闭关子弟修炼 +6%(每名)。', max: 1, effect: { type: 'meditation', value: 0.06 } } } export const POST_ORDER = ['head', 'elder', 'guardian', 'steward', 'master'] export function postById(id: string | undefined): PostDef | null { if (!id) return null return POSTS[id] ?? null }