Forge notes
Forge
LegacyPlayer: {
createPlayer()
updateAttribues()
setTeam()
trackProgress()
exportToPros()
}
GrowthPath: {
updatePath()
calculateGrowth()
getProjectedStats()
}
DynastyMode: {
integratePlayer()
progressSeason()
generateEvents()
}
Position: {
getRequiredAttributes()
validateAttributes()
}
Team: {
addPlayer()
removePlayer()
updateRoster()
}
Achievement: {
unlock()
notifyPlayer()
}
PlayerGoal: {
updateProgress()
complete()
checkDeadline()
}
This class diagram represents the key components of the Legacy Player Builder system. The main relationships and responsibilities:
LegacyPlayer (Core Class):
- Contains player’s basic info, attributes, and relationships
- Manages growth, achievements, and goals
- Handles pro export functionality
GrowthPath:
- Defines how player attributes develop over time
- Manages growth rates for different attributes
- Projects future stats based on current trajectory
Team:
- Represents both college and pro teams
- Manages roster and player assignments
- Handles team-specific operations
Achievement & PlayerGoal:
- Track player accomplishments and objectives
- Provide notification system for milestones
- Support different types of achievements/goals
DynastyMode:
- Integrates legacy players into the existing game mode
- Manages season progression
- Coordinates teams and events
Position:
- Defines position-specific attributes and requirements
- Validates player attributes against position requirements
Relationships:
- A LegacyPlayer belongs to one Team
- Each LegacyPlayer has one GrowthPath
- Players can have multiple Achievements and Goals
- DynastyMode manages multiple Teams and LegacyPlayers