Add nurse care queue and person-card health tab.

Sick people seek MedicalOffice for tend by Medicine skill; symptoms cut talk weight; no heal API.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Leonid Pershin
2026-08-21 16:17:51 +03:00
co-authored by Cursor
parent afab014572
commit 33f253c9e3
33 changed files with 1568 additions and 34 deletions
+17 -1
View File
@@ -377,10 +377,16 @@ the client. HTTP JSON is additive — no protocol version bump.
in the world and in `people.json`. Mark rows carry `subject`, `subjectLabel`, `value` (25),
`time`, `period`. Attendance rows carry `subject`, `subjectLabel`, `status`
(`present` / `late` / `absent`), `statusLabel` (mod locale), `time`, `period`, and optional
`absenceReason` (vanilla `truancy`; illness comes later). Empty is `[]`. Ceilings live on
`absenceReason` (vanilla `truancy` or `illness`). Empty is `[]`. Ceilings live on
`BehaviorDef` (`lessonMarkMax`, `attendanceMax`). There is **no** POST/PUT to set marks or
attendance — guests and owners only read. The people list does not include these fields.
`healthConditions` is the **Здоровье** tab (slice 14 phase 80): active medical conditions in the
same order as on the person. Each row has `defName`, `label` (mod locale), `severity` / `progress`
(01), optional `stageLabel`, and optional `effect` (short symptom line from the disease stage).
Empty is `[]` when healthy. There is **no** POST/PUT to heal or tend — the nurse system is
simulation-only; guests and owners only read. The people list does not include these fields.
```json
{
"id": "f0.c0",
@@ -467,6 +473,16 @@ attendance — guests and owners only read. The people list does not include the
"absenceReason": null
}
],
"healthConditions": [
{
"defName": "CommonCold",
"label": "ОРВИ",
"severity": 0.55,
"progress": 0.2,
"stageLabel": null,
"effect": "Слабость, реже болтает"
}
],
"connections": {
"family": {
"parents": [