Некоторое время назад я пытался перенести геров из хотса в ск2. И в определенный момент столкнулся с тем что система талантов после переноса не работает вообще. Позже выяснилось что эти таланты сами по себе не работают. И я решил выяснить в чем же дело. Как оказалось эта вкладка в редакторе данных просто заглушка и вся эта система работает триггерно. Основные функции это CatalogFieldValueSet и CatalogFieldValueGet.
Используются эти функции примерно так
Используются эти функции примерно так
CatalogFieldValueSet(lv_catalog, lv_entry, lv_field, lp_player, lv_offsetString);
Все параметры этой функции получаются следущей функцией
CatalogFieldValueGet(c_gameCatalogTalent, lv_talentID, "AbilityModificationArray[i].Modifications[j]." + field, c_playerAny);
i и j - индексы модификаци, хотя чаще всего там одна. Если их несколько нужно обходить в цикле.
field - это поля, например Catalog, Field или Value.
field - это поля, например Catalog, Field или Value.
CatalogFieldValueGet(c_gameCatalogTalent, lv_talentID, "RankArray[i].BehaviorArray[j]", c_playerAny));
Герою добавляются все behavior'ы с помощью функции UnitBehaviorAdd.