Труп «Жертвы» открывается сам, как ящик: без мешка

Обыск больше не превращает труп в мешок. Труп получает сумку со списком добычи zPackVictim
и открывается игровым путём (LockRequestLocal -> LootBagOpened -> окно добычи с игровым
таймером обыска). Запрет открывать мёртвых у EntityAlive снят префиксами только для таких
трупов. Открытый и не опустошённый труп лежит час, опустошённый убирается сразу.
После загрузки труп узнаётся по сохранённой сумке (баффы зомби в сейв не пишутся).
LockRequestLocal вызывается из TEPersistence (перегрузка с ReadOnlySpan не компилируется
в основном проекте). Класс EntityLootContainerVictim оставлен ради старых сейвов.
Описание ножа исправлено на всех языках, README - текущее описание.

Проверено в игре на 3.3: открытие, таймер, уборка опустошённых, восстановление после загрузки.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
AlexCube
2026-09-26 19:33:52 +03:00
co-authored by Claude Opus 5.5
parent 1c2e3f2cdf
commit e25544521d
10 changed files with 239 additions and 104 deletions
+4 -4
View File
@@ -1,8 +1,8 @@
<config>
<!-- "Жертва" (Victim) green loot bag - BACKLOG.md item 5, Necromancer's Knife. Guaranteed
drop off a zombie killed while carrying buffNecroVictim (see HarmonySrc/VictimPatch.cs,
which force-spawns EntityLootContainerVictim from entityclasses.xml on death, bypassing
the normal LootDropProb roll entirely).
<!-- "Жертва" (Victim) loot - BACKLOG.md item 5, Necromancer's Knife. С 1.5.0 это список
добычи САМОГО ТРУПА зомби, умершего с buffNecroVictim: труп получает сумку с этим
списком и открывается как ящик (HarmonySrc/CorpseLootPatch.cs, CorpseLoot.VictimLootList).
До 1.5.0 список наполнял мешок EntityLootContainerVictim, который появлялся при обыске.
Contents per user: random hides (usually one or none), rotten flesh, bones, and a chance
at "Кожа жертвы" (resourceVictimSkin, items.xml) - a crafting resource for summon books.