Цитата(ForserX @ 13.06.2019, 21:23)
.ltx CLASS_ID
Это ещё что?=)
Цитата(ForserX @ 13.06.2019, 21:23)
Хотя не, давай не так, пруф можно? O_0
Не совсем понимаю, что доказывать.
У нас имеется секция - именованный набор параметров, в ней есть поле class с указателем на зарегистрированную связку {серверный объект : клиентский объект}
Потом, при использовании F_create_entity, движок понимает какую связку использовать исходя из пар. class (например, ссылающегося на CLSID_AI_DOG_BLA т.е. на AI_DOG_1)
Т.е. мы можем объявить
Код
#define CLSID_AI_DOG_BLACK MK_CLSID('A','I','_','D','O','G','_','0')
#define CLSID_AI_DOG_BLA MK_CLSID('A','I','_','D','O','G','_','1')
#define CLSID_AI_DOG_BL MK_CLSID('A','I','_','D','O','G','_','2')
ADD(CAI_PseudoDog, CSE_ALifeMonsterBase, CLSID_AI_DOG_BLACK, "dog_black");
ADD(CAI_PseudoDog, CSE_ALifeMonsterBase, CLSID_AI_DOG_BLA, "dog_bla");
ADD(CAI_PseudoDog, CSE_ALifeMonsterBase, CLSID_AI_DOG_BL, "dog_bl");
И движок выберет именно связку { CAI_PseudoDog : CSE_ALifeMonsterBase }.
Естественно не рекомендуется объявлять пары с одинаковыми соответственно clsid & script_clsid, но движок крешится только в дебажной сборке, ибо VERIFY. Из чего можно сделать вывод, что не так уж это и фатально объявлять пары с одинаковыми соответственно clsid & script_clsid.
PS: вообще по большей мере мой пост это краткий пересказ статьи Malandrinus'а c АМК 2009 года.
ЗЫЫ: всё что я описал относится к ТЧ, не ковырял ЗП по этому делу.
Поправьте меня тапком, ежели что не так