feat(runtime): initialize mission ore properties
Docs Deploy / Build and Deploy MkDocs (push) Successful in 1m9s

This commit is contained in:
Valentin Popov committed 2026-10-22 11:45:23 +04:00
1 parent 374db10daf
commit dcc6459891
5 files changed
+379 -4

No files matched your search

+12
View File
@@ -92,3 +92,15 @@ slot `+0x40` в путь выбора AI в Behavior. Поэтому Rust сох
`Property` состоит из четырёх raw `u32` и имени. Typed views разрешены только
для доказанных property names и consumers.
Для свойств объекта `MisLoad.dll!FUN_10003ab0` (RVA `0x3ab0`) переставляет
дисковые слова в runtime-запись, а `FUN_100040b0` (RVA `0x40b0`) проходит её
таблицу в порядке runtime-дескрипторов. Поиск имени учитывает длину и байты с
точным регистром и использует первое совпадение. В подтверждённом пути
дисковое `raw_value[1]` становится первым DWORD аргумента setter-а, поэтому
значение передаётся как биты, без промежуточного float-преобразования.
Например, Behavior регистрирует `CurrentOre` под кодом `5`; его setter кладёт
полученные биты в основное слово свойства `0x02000100`. `MaximumOre` с кодом
`4` читает дополнительное слово той же записи, а setter этого дескриптора
ничего не меняет. Подтверждение классов и native getter/setter находится в
[главе о Behavior](../tomes/06-behavior.md#начальные-свойства-запасов-руды).