Added commision objectives
This commit is contained in:
+17
-9
@@ -41,9 +41,9 @@ content space.
|
||||
- **`ExposeBodyPart(part, duration)`** ✅ — **`UExposeBodyPartObjective`** *(implemented)*
|
||||
- **`BeFullyNakedNearNPCs(count, duration)`** ✅ — **`UBeFullyNakedNearNPCsObjective`** *(implemented)*
|
||||
- `WearOnlyUnderwear(duration)` ✅ — **`UWearOnlyUnderwearObjective`** *(implemented)*. Exhibitionist.
|
||||
- `BeToplessOnly` / `BeBottomlessOnly(duration)` ✅ — one region bare, the other covered.
|
||||
- `StayBelowCoverage(threshold, duration)` ✅ — total/region coverage under X (revealing, not nude).
|
||||
- `ExposeWhileWalking(part, meters)` ✅ — keep a part revealing across N meters (per-part walk).
|
||||
- `BeToplessOnly` / `BeBottomlessOnly(duration)` ✅ — **`UBareRegionObjective`** *(implemented; `EBareRegion` data value picks the bare half)*. One region bare, the other covered.
|
||||
- `StayBelowCoverage(threshold, duration)` ✅ — **`UStayBelowCoverageObjective`** *(implemented; names its own threshold)*. Every region under X (revealing, not nude).
|
||||
- `ExposeWhileWalking(part, meters)` ✅ — **`UExposeWhileWalkingObjective`** *(implemented)*. Keep a part revealing across N meters (per-part walk).
|
||||
- `UseExposeAction(part, count)` ✅ (after VS‑3) — trigger the §6.3.6 flash action N times.
|
||||
|
||||
## Observation / NPC reactions (✅ count-based; 🔶 type-based)
|
||||
@@ -65,14 +65,18 @@ content space.
|
||||
|
||||
- `EnterLocationNaked(tag)` ✅ · `TourLocationsNaked(tagset)` ✅ · `LingerExposed(tag, duration)` ✅
|
||||
(the last two = `BeFullyNaked` + a `ULocationConstraint`).
|
||||
- `ReachLocationAwayFromClothing(tag, meters)` ✅ — arrive having left clothes ≥N m behind.
|
||||
- `ReachLocationAwayFromClothing(tag, meters)` ✅ *(no new class)* — `MoveDistanceFromClothing` + a `ULocationConstraint`: arrive at the location having left clothes ≥N m behind.
|
||||
- `ReturnHomeNaked()` ✅-ish — end the session at the apartment with no clothing (loop-closer).
|
||||
|
||||
## Movement / endurance (✅)
|
||||
|
||||
- `WalkNakedDistance(meters)` ✅ (in §13.4) · `MoveDistanceFromClothing(meters)` ✅ (in §13.4).
|
||||
- `WalkNakedDistance(meters)` ✅ (in §13.4) — **`UWalkNakedDistanceObjective`** *(implemented)*. Naked travel at any gait. · `MoveDistanceFromClothing(meters)` ✅ (in §13.4) — **`UMoveDistanceFromClothingObjective`** *(implemented; polls `UDroppedClothingSubsystem` for the nearest dropped garment)*.
|
||||
- `RunNakedDistance(meters)` ✅ — **`URunNakedDistanceObjective`** *(implemented)*. Distance accrues only while running + naked.
|
||||
- `WalkNakedWhileObserved(meters, minObservers)` ✅.
|
||||
- `WalkNakedWhileObserved(meters, minObservers)` ✅ — **`UWalkNakedWhileObservedObjective`** *(implemented)*.
|
||||
|
||||
> All four distance objectives share **`UTravelObjectiveBase`** (`UCoverageObjectiveBase` subclass) — it owns the
|
||||
> clamped distance-sampling timer; subclasses only override `DoesSampleCount()` (e.g. naked+run, part revealing,
|
||||
> naked+observed). New "travel while X" objectives are a one-method subclass.
|
||||
|
||||
## Clothing / outfits / restraints
|
||||
|
||||
@@ -105,9 +109,13 @@ content space.
|
||||
|
||||
1. **Structural** — constraints framework + sequential steps. *(done)*
|
||||
2. **All-✅ objectives** — done: `StayUnseenWhileNaked`, `GatherCrowd`, `BeObservedWhileExposed`,
|
||||
`WearOnlyUnderwear`, `RunNakedDistance`, `ReachEmbarrassment`/`SustainEmbarrassment`. Location
|
||||
objectives (`EnterLocationNaked`, `LingerExposed`, …) need no new class — author them as
|
||||
`BeFullyNaked` / `ExposeBodyPart` + a `ULocationConstraint`.
|
||||
`WearOnlyUnderwear`, `ReachEmbarrassment`/`SustainEmbarrassment`, the `UTravelObjectiveBase` distance
|
||||
family (`RunNakedDistance`, `WalkNakedDistance`, `ExposeWhileWalking`, `WalkNakedWhileObserved`), and the
|
||||
coverage pair `BareRegion` (topless/bottomless) + `StayBelowCoverage`. Location objectives
|
||||
(`EnterLocationNaked`, `LingerExposed`, …) need no new class — author them as `BeFullyNaked` /
|
||||
`ExposeBodyPart` + a `ULocationConstraint`. `MoveDistanceFromClothing` (+ its
|
||||
`ReachLocationAwayFromClothing` compose) now landed on `UDroppedClothingSubsystem`. Remaining all-✅
|
||||
gap: `WearOutfit` needs an outfit tag/id on items.
|
||||
3. **Location system** — done: `ULocationSubsystem` + `ULocationConstraint`; the whole Location/travel
|
||||
group and `WhileAtLocation` are unblocked. (Build the location *objectives* with the ✅ batch.)
|
||||
4. **Per-system batches** as VS‑5 (NPC types), VS‑2 (lust/pulse), toys, restraints, and Phase 8
|
||||
|
||||
Reference in New Issue
Block a user