blob: e8a5af27a157fdef4c4d3c537bbf7099eb3ab837 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
import type { GameTime } from '@hollowdark/time/gameTime'
import type { InstitutionId } from '@hollowdark/engine/entities/base'
export type CareerTrajectory = 'rising' | 'steady' | 'declining' | 'stalled'
export interface CareerPerformance {
readonly quality: number
readonly reputationAtEmployer: number
readonly yearsSinceLastRecognition: number
}
export interface CareerHistoryEntry {
readonly careerId: string
readonly employerId: InstitutionId | null
readonly role: string
readonly startedAt: GameTime
readonly endedAt: GameTime | null
readonly reasonEnded: string | null
readonly notableEvents: readonly string[]
}
export interface CareerState {
readonly currentCareerId: string | null
readonly currentRole: string
readonly currentEmployerId: InstitutionId | null
readonly yearsInCurrentRole: number
readonly yearsInCurrentCareer: number
readonly careerHistory: readonly CareerHistoryEntry[]
readonly performance: CareerPerformance
readonly trajectory: CareerTrajectory
readonly jobSatisfaction: number
}
|