Skip to main content

FB2School

Overview

  • No description available.

Metadata

FieldValue
Kindstruct
EnvironmentB2 - Simulation
Categorystructs
ExtendsFB2CareerBase

Properties (20)

NameTypeDescription
ClassSectionsFB1ClassSectionData[]List of class sections (initialized with DA values in InitCareerData).
CurrentExamScheduleDataFB1ScheduledExamData
CurrentGraduationDataFB1GraduationDataGraduation-ceremony runtime state (reset after the event ends, on growth detection).
CurrentPromPartyDataFB1PromPartyDataProm-party runtime state (reset weekly).
DisplayOnlyDefaultUniformConsumedGenderstable<EB1GenderType, boolean>
ExamDayOfWeekEB1DayOfWeekExam day (can differ per school; default Thursday). Set in InitCareerData from UB1SchoolDataAsset::ExamDayOfWeek. DA validation (B1SchoolDefine.cpp::Validate) restricts it to Monday-Friday.
NextEvictionSectionIndexintegerIndex of the next section to evict (round-robin).
PendingSectionAssignmenttable<integer, FB2PendingStudents>
PrincipalIdFB1EntityIdPrincipal EntityId (belongs to Business; reference only, cached in TryRegisterToSchool).
SchoolUniformDataFB1SchoolUniformData
StudentCounselingMaptable<FB1EntityId, FB1CounselingData>Per-student counseling state. One entry is created on entering academic-warning stage 2 or the misbehavior-counseling stage. If SiteEventId is valid, a counseling SocialEvent is scheduled/in progress. Cleaned up via ResetCounselingData on student dropout/expulsion/death.
StudentDemeritMaptable<FB1EntityId, integer>Per-student accumulated demerits. Accumulated for life until graduation (no weekly reset). Reaching the threshold (DA->DemeritThresholdForCounseling) auto-triggers counseling, and passing counseling resets it to 0. Auto-removed via RequestLeave when the student leaves the school (graduation/dropout/expulsion).
StudentEvaluationMaptable<FB1EntityId, FB1SchoolEvaluationData>Per-student weekly evaluation state. Each weekday, DailyRecords are filled via RecordAttendance/RecordHomework/RecordRelationEvent; each exam day, FinalizeWeeklyEvaluation computes the weekly result and appends to WeeklyHistory. Backfilled by MemberInfo in OnPostInit (save compatibility).
StudentHomeworkMaptable<FB1EntityId, FB1SchoolHomeworkAssignment>Tracks homework assigned per student (one per student). The result is recorded in the collection-day (today) cell.
TodayAbsenceMissionVisitedStudentIdstable<FB1EntityId, boolean>
UserPinnedStudentstable<FB1EntityId, integer>
WeeklyAnnouncementSentResidenceStudentstable<FB1EntityId, boolean>EntityIds of ResidenceFamily students to whom this week's exam/timetable announcement wall-post was sent. Emptied in OnWeekReset. Non-ResidenceFamily students are skipped and not included. Tracks only the target students in a Set (instead of a per-student bool flag) to minimize data use.
bInitialSectionAssignmentPhaseboolean
bTodayAbsenceMissionCheckedboolean
bTodayEvaluationDonebooleanWhether ProcessTodaySchoolEvaluation ran once today. An idempotency flag to change OnHourChanged's on-time guard from strict equality to 'has passed + not yet processed'. Reset to false in OnDayChanged. Must be serialized (prevents duplicate runs after loading on the same day).