mirror of
https://github.com/prosolis/gogobee.git
synced 2026-07-16 08:52:42 +00:00
Pets: fire 25% morning event from expedition briefing + fix defense-buff leak
Recovers the genuinely-missing half of ade0335 (orphaned on the unmerged phase-H-harvest-charges branch).3ed2e1dredid pet *arrival* via the emergence seam and explicitly deferred the morning event; this closes that gap. - deliverBriefing now rolls the 25% morning pet event (petMorningEvent, already present but only wired into the overworld DM that underground players never see) and prepends it to the briefing body, granting the one-day PetMorningDefense buff. - Add resetAllPetMorningDefense + wire it into midnightReset. The buff was leaking permanently even on HEAD's existing overworld path — it was set on the 25% roll but never cleared. Resets the pet_flags_json key in place. Deliberately omits ade0335's ArrivalPending machinery: arrival is now the emergence seam's job (3ed2e1d+978dc5e+513cf32), so queuing arrival from the briefing would double-roll it.
This commit is contained in:
@@ -909,6 +909,19 @@ func resetAllPlayerMetaDailyActions() error {
|
||||
return err
|
||||
}
|
||||
|
||||
// resetAllPetMorningDefense clears the one-day pet morning-defense buff for
|
||||
// every player. The buff is a fresh morning grant (25% roll in the briefing /
|
||||
// overworld DM), so it must not survive past the midnight rollover. The flag
|
||||
// lives inside pet_flags_json (see petFlagsJSON), so patch that key in place;
|
||||
// only rows where it's currently set are touched.
|
||||
func resetAllPetMorningDefense() error {
|
||||
_, err := db.Get().Exec(`
|
||||
UPDATE player_meta
|
||||
SET pet_flags_json = json_set(pet_flags_json, '$.morning_defense', json('false'))
|
||||
WHERE json_extract(pet_flags_json, '$.morning_defense') = 1`)
|
||||
return err
|
||||
}
|
||||
|
||||
// DeathState mirrors player_meta's death-state columns. Phase L5e ports
|
||||
// these fields off AdvCharacter (gogobee_legacy_migration.md §7.3 L5e).
|
||||
// Mutation surface is large (~50 saveAdvCharacter sites touch death
|
||||
|
||||
Reference in New Issue
Block a user