(15.01.2020 16:01)Berserker Wrote: Такое бывает в героях, чтобы номер города на карте отличался от его индекса в массиве городов в нормальном случае?
Я думаю что нет, не отличается. Просто, как я понимаю, ты говоришь о массиве городов в игровом менеджере 0x699538
Доступ к структуре города правильно получать (0x699538->0x21614) + 360 * town_id)
Вот town_id как раз и есть номер города на карте.
А в справке в команде OW:W речь идет конкретно о стуктуре игрока (красный, синий и т.д.), в которой в каждой есть свой массив с кол-вом городов под контролем игрока и массивом городов byte[48], в которых индекс (это номер города в списке у конкретного игрока) и значением (номер города на карте town_id ).
Надеюсь я правильно донёс смысл.
Что-то типо этого: получить структуру третьего города у красного игрока:
Code:
BYTE town_id = o_GameMgr->Player[0].towns_ids[2];
_Town_* town = o_GameMgr->(0x21614) + 360 * town_id;