Новости Большое интервью с HotA Crew - часть 2
  • 177
  • 0
HotA Crew о Кронверке и будущих обновлениях (часть 2) Какие герои будут вести армии Кронверка? Герои-воины зовутся Вожди, маги — Старейшины. Их параметры и способности подчеркнут сильные стороны...
Новости Большое интервью с HotA Crew - часть 1
  • 204
  • 0
HotA Crew о Кронверке и будущих обновлениях Важно: весь контент по Кронверку и системе событий находится в разработке, и может ещё поменяться. Итак, следующим городом будет Кронверк. Почему...
С Новым 2025 годом!
  • 1.677
  • 18
Вот и завершается этот год - местами странный, местами крутой, но точно запоминающийся, полный неожиданностей и ярких моментов. Мы благодарны вам за то, что вы были рядом, за все наши совместные...
Новости В Heroes of Might and Magic 3 теперь можно поиграть в веб-браузере
  • 820
  • 3
Совсем недавно энтузиасты из России смогли портировать игру HoMM3 в браузер. Причем веб-версия позволяет пройти все сюжетные компании и даже поиграть по сети. Чтобы сыграть в классику необходимо...
Иконка ресурса

Новые квесты для НБ (0.0.74)

Нет прав доступа на загрузку
Неторопливо наполняю мир Готики квестами
Автор
Автор
O

osipov_jenya

Труженик
Участник форума
Регистрация
27 Окт 2018
Сообщения
490
Реакции
429
Баллы
99
Лучшие ответы
0
Вот шмот топовый для ополченцев,ну и шлем еще
--- Добавлено: ---

Допилил пока только мечи. Мортис теперь всё делает и куёт и улучшает. Тестируйте. Осталось сделать Гараду доспехи и Карлу шлемы
Для удобства редактирования разложил пока в разные файлы. как полностью всё будет готово - объединю в один.

Забыл сказать, для теста пока только Пабло доступен)
--- Добавлено: ---

Добавил пока для 17 НПС диалоги по переэкипировки
 

Вложения

Последнее редактирование:
Автор
Автор
O

osipov_jenya

Труженик
Участник форума
Регистрация
27 Окт 2018
Сообщения
490
Реакции
429
Баллы
99
Лучшие ответы
0
@osipov_jenya, а там же крафт система другая в НБ, там нет диалога, тогда тебе придется вставлять новые объекты в мир, добавить рецепт без изменения dll нельзя. В общем задача слишком сложная, такое уже скриптами в НБ не написать, тебе придется еще и редактор миров лезть.
Подскажи пожалуйста. Никак не могу найти причину.есть 10 диалогов,которые должны последоватьельно идти друг за другом,но опи появляются одновременно и только 6-10, что я намудрил не так?
CSS:
instance DIA_319_Pablo_QuestReEquip_1(C_Info)

{

    npc         = MIL_319_Pablo;

    nr             = 1;

    condition     = DIA_319_Pablo_QuestReEquip_1_condition;

    information = DIA_319_Pablo_QuestReEquip_1_info;

    permanent    = false;

    description = "Перевооружить на Меч ополченца Мк1.";

};



func int DIA_319_Pablo_QuestReEquip_1_condition()

{

    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_01) > 0) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_3) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_4) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_5) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_6) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_7) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_8) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_9) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_10))

    {

        return TRUE;

    };

};



func void DIA_319_Pablo_QuestReEquip_1_info()

{

    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_1_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот меч в качестве новой экипировки.

    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_1_02");    //Великолепно, давай его сюда.

    B_GiveInvItems(hero,self,ItMw_MIL_Sword_01,1);

    AI_StopProcessInfos(self);

    AI_EquipBestMeleeWeapon(self);

    B_GivePlayerXP(100);

    Andre_QuestReEquip_Count += 1;

    AI_StopProcessInfos(self);

};



instance DIA_319_Pablo_QuestReEquip_2(C_Info)

{

    npc         = MIL_319_Pablo;

    nr             = 1;

    condition     = DIA_319_Pablo_QuestReEquip_2_condition;

    information = DIA_319_Pablo_QuestReEquip_2_info;

    permanent    = false;

    description = "Перевооружить на Меч ополченца Мк2.";

};



func int DIA_319_Pablo_QuestReEquip_2_condition()

{

    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_02) > 0) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_3) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_4) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_5) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_6) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_7) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_8) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_9) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_10))

    {

        return TRUE;

    };

};



func void DIA_319_Pablo_QuestReEquip_2_info()

{

    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_2_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот благородный меч в качестве новой экипировки.

    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_2_02");    //Великолепно, давай его сюда.

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    B_GiveInvItems(hero,self,ItMw_MIL_Sword_02,1);

    AI_StopProcessInfos(self);

    AI_EquipBestMeleeWeapon(self);

    B_GivePlayerXP(100);

    Andre_QuestReEquip_Count += 1;

    AI_StopProcessInfos(self);

};



instance DIA_319_Pablo_QuestReEquip_3(C_Info)

{

    npc         = MIL_319_Pablo;

    nr             = 1;

    condition     = DIA_319_Pablo_QuestReEquip_3_condition;

    information = DIA_319_Pablo_QuestReEquip_3_info;

    permanent    = false;

    description = "Перевооружить на Меч ополченца Мк3.";

};



func int DIA_319_Pablo_QuestReEquip_3_condition()

{

    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_03) > 0) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_4) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_5) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_6) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_7) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_8) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_9) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_10))

    {

        return TRUE;

    };

};



func void DIA_319_Pablo_QuestReEquip_3_info()

{

    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_3_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот благородный длинный меч в качестве новой экипировки.

    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_3_02");    //Великолепно, давай его сюда.

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    B_GiveInvItems(hero,self,ItMw_MIL_Sword_03,1);

    AI_StopProcessInfos(self);

    AI_EquipBestMeleeWeapon(self);

    B_GivePlayerXP(100);

    Andre_QuestReEquip_Count += 1;

    AI_StopProcessInfos(self);

};



instance DIA_319_Pablo_QuestReEquip_4(C_Info)

{

    npc         = MIL_319_Pablo;

    nr             = 1;

    condition     = DIA_319_Pablo_QuestReEquip_4_condition;

    information = DIA_319_Pablo_QuestReEquip_4_info;

    permanent    = false;

    description = "Перевооружить на Меч ополченца Мк4.";

};



func int DIA_319_Pablo_QuestReEquip_4_condition()

{

    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_04) > 0) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_5) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_6) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_7) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_8) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_9) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_10))

    {

        return TRUE;

    };

};



func void DIA_319_Pablo_QuestReEquip_4_info()

{

    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_4_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот рубиновый клинок в качестве новой экипировки.

    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_4_02");    //Великолепно, давай его сюда.

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_3))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    B_GiveInvItems(hero,self,ItMw_MIL_Sword_04,1);

    AI_StopProcessInfos(self);

    AI_EquipBestMeleeWeapon(self);

    B_GivePlayerXP(100);

    Andre_QuestReEquip_Count += 1;

    AI_StopProcessInfos(self);

};



instance DIA_319_Pablo_QuestReEquip_5(C_Info)

{

    npc         = MIL_319_Pablo;

    nr             = 1;

    condition     = DIA_319_Pablo_QuestReEquip_5_condition;

    information = DIA_319_Pablo_QuestReEquip_5_info;

    permanent    = false;

    description = "Перевооружить на Меч ополченца Мк5.";

};



func int DIA_319_Pablo_QuestReEquip_5_condition()

{

    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_05) > 0) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_6) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_7) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_8) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_9) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_10))

    {

        return TRUE;

    };

};



func void DIA_319_Pablo_QuestReEquip_5_info()

{

    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_5_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот Эль-бастардо в качестве новой экипировки.

    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_5_02");    //Великолепно, давай его сюда.

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_3))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_4))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    B_GiveInvItems(hero,self,ItMw_MIL_Sword_05,1);

    AI_StopProcessInfos(self);

    AI_EquipBestMeleeWeapon(self);

    B_GivePlayerXP(100);

    Andre_QuestReEquip_Count += 1;

    AI_StopProcessInfos(self);

};



instance DIA_319_Pablo_QuestReEquip_6(C_Info)

{

    npc         = MIL_319_Pablo;

    nr             = 1;

    condition     = DIA_319_Pablo_QuestReEquip_6_condition;

    information = DIA_319_Pablo_QuestReEquip_6_info;

    permanent    = false;

    description = "Перевооружить на Меч ополченца Мк6.";

};



func int DIA_319_Pablo_QuestReEquip_6_condition()

{

    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_06) > 0) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_7) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_8) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_9) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_10))

    {

        return TRUE;

    };

};



func void DIA_319_Pablo_QuestReEquip_6_info()

{

    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_6_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот Эль-бастардо в качестве новой экипировки.

    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_6_02");    //Великолепно, давай его сюда.

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_3))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_4))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_5))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    B_GiveInvItems(hero,self,ItMw_MIL_Sword_06,1);

    AI_StopProcessInfos(self);

    AI_EquipBestMeleeWeapon(self);

    B_GivePlayerXP(100);

    Andre_QuestReEquip_Count += 1;

    AI_StopProcessInfos(self);

};



instance DIA_319_Pablo_QuestReEquip_7(C_Info)

{

    npc         = MIL_319_Pablo;

    nr             = 1;

    condition     = DIA_319_Pablo_QuestReEquip_7_condition;

    information = DIA_319_Pablo_QuestReEquip_7_info;

    permanent    = false;

    description = "Перевооружить на Меч ополченца Мк7.";

};



func int DIA_319_Pablo_QuestReEquip_7_condition()

{

    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_07) > 0) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_8) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_9) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_10))

    {

        return TRUE;

    };

};



func void DIA_319_Pablo_QuestReEquip_7_info()

{

    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_7_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот Эль-бастардо в качестве новой экипировки.

    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_7_02");    //Великолепно, давай его сюда.

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_3))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_4))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_5))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_6))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    B_GiveInvItems(hero,self,ItMw_MIL_Sword_07,1);

    AI_StopProcessInfos(self);

    AI_EquipBestMeleeWeapon(self);

    B_GivePlayerXP(100);

    Andre_QuestReEquip_Count += 1;

    AI_StopProcessInfos(self);

};



instance DIA_319_Pablo_QuestReEquip_8(C_Info)

{

    npc         = MIL_319_Pablo;

    nr             = 1;

    condition     = DIA_319_Pablo_QuestReEquip_8_condition;

    information = DIA_319_Pablo_QuestReEquip_8_info;

    permanent    = false;

    description = "Перевооружить на Меч ополченца Мк8.";

};



func int DIA_319_Pablo_QuestReEquip_8_condition()

{

    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_08) > 0) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_9) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_10))

    {

        return TRUE;

    };

};



func void DIA_319_Pablo_QuestReEquip_8_info()

{

    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_8_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот Эль-бастардо в качестве новой экипировки.

    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_8_02");    //Великолепно, давай его сюда.

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_3))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_4))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_5))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_6))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_7))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    B_GiveInvItems(hero,self,ItMw_MIL_Sword_08,1);

    AI_StopProcessInfos(self);

    AI_EquipBestMeleeWeapon(self);

    B_GivePlayerXP(100);

    Andre_QuestReEquip_Count += 1;

    AI_StopProcessInfos(self);

};



instance DIA_319_Pablo_QuestReEquip_9(C_Info)

{

    npc         = MIL_319_Pablo;

    nr             = 1;

    condition     = DIA_319_Pablo_QuestReEquip_9_condition;

    information = DIA_319_Pablo_QuestReEquip_9_info;

    permanent    = false;

    description = "Перевооружить на Меч ополченца Мк9.";

};



func int DIA_319_Pablo_QuestReEquip_9_condition()

{

    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_09) > 0) && !Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_10))

    {

        return TRUE;

    };

};



func void DIA_319_Pablo_QuestReEquip_9_info()

{

    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_9_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот Эль-бастардо в качестве новой экипировки.

    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_9_02");    //Великолепно, давай его сюда.

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_3))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_4))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_5))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_6))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_7))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_8))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    B_GiveInvItems(hero,self,ItMw_MIL_Sword_09,1);

    AI_StopProcessInfos(self);

    AI_EquipBestMeleeWeapon(self);

    B_GivePlayerXP(100);

    Andre_QuestReEquip_Count += 1;

    AI_StopProcessInfos(self);

};



instance DIA_319_Pablo_QuestReEquip_10(C_Info)

{

    npc         = MIL_319_Pablo;

    nr             = 1;

    condition     = DIA_319_Pablo_QuestReEquip_10_condition;

    information = DIA_319_Pablo_QuestReEquip_10_info;

    permanent    = false;

    description = "Перевооружить на Меч ополченца Мк10.";

};



func int DIA_319_Pablo_QuestReEquip_10_condition()

{

    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_10) > 0))

    {

        return TRUE;

    };

};



func void DIA_319_Pablo_QuestReEquip_10_info()

{

    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_10_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот Эль-бастардо в качестве новой экипировки.

    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_10_02");    //Великолепно, давай его сюда.

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_3))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_4))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_5))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_6))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_7))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_8))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_9))

    {

        Andre_QuestReEquip_Count += 1;

        B_GivePlayerXP(100);

    };

    B_GiveInvItems(hero,self,ItMw_MIL_Sword_10,1);

    AI_StopProcessInfos(self);

    AI_EquipBestMeleeWeapon(self);

    B_GivePlayerXP(100);

    Andre_QuestReEquip_Count += 1;

    AI_StopProcessInfos(self);

};
--- Добавлено: ---
 
Последнее редактирование:

n1kx

Гвардеец
Локализатор
Участник форума
Регистрация
4 Май 2017
Сообщения
1.441
Реакции
957
Баллы
236
Лучшие ответы
108
Прячь в спойлеры огромные куски кода

А делать условия примерно так, проверять надо типо предыдущий диалог, он раз одноразовый, то не вылезет
CSS:
func int DIA_319_Pablo_QuestReEquip_1_condition()
{
    if ((MIS_Andre_QuestReEquip == LOG_Running)
    && (Npc_HasItems(other,ItMw_MIL_Sword_01) > 0))
    {
        return TRUE;
    };
};

func int DIA_319_Pablo_QuestReEquip_2_condition()
{
    if ((MIS_Andre_QuestReEquip == LOG_Running)
    && (Npc_HasItems(other,ItMw_MIL_Sword_02) > 0)
    && (Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1)))
    {
        return TRUE;
    };
};

func int DIA_319_Pablo_QuestReEquip_3_condition()
{
    if ((MIS_Andre_QuestReEquip == LOG_Running)
    && (Npc_HasItems(other,ItMw_MIL_Sword_03) > 0)
    && (Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2)))
    {
        return TRUE;
    };
};

func int DIA_319_Pablo_QuestReEquip_4_condition()
{
    if ((MIS_Andre_QuestReEquip == LOG_Running)
    && (Npc_HasItems(other,ItMw_MIL_Sword_04) > 0)
    && (Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_3)))
    {
        return TRUE;
    };
};
//и т.д.
 

Хедин

Герой
Пользователь VIP
Модостроитель
Почётный пользователь
Участник форума
Регистрация
10 Июл 2013
Сообщения
5.684
Реакции
6.946
Баллы
776
Лучшие ответы
101
@osipov_jenya, лучше не только в спойлер, но и код оформлять нормально.

1720670944569.png
 
Автор
Автор
O

osipov_jenya

Труженик
Участник форума
Регистрация
27 Окт 2018
Сообщения
490
Реакции
429
Баллы
99
Лучшие ответы
0

DLCMob

Постоялец
Участник форума
Регистрация
11 Май 2021
Сообщения
93
Реакции
25
Баллы
60
Лучшие ответы
0

Хедин

Герой
Пользователь VIP
Модостроитель
Почётный пользователь
Участник форума
Регистрация
10 Июл 2013
Сообщения
5.684
Реакции
6.946
Баллы
776
Лучшие ответы
101
@osipov_jenya, ты сообщение выше и приведи в порядок сразу. Кстати, описание квестов в шапке темы тоже можешь добавить и оформить нормально в виде спойлеров.
 

DLCMob

Постоялец
Участник форума
Регистрация
11 Май 2021
Сообщения
93
Реакции
25
Баллы
60
Лучшие ответы
0
@osipov_jenya, для Мортиса я думаю стоит отключить перевооружение ( Тобишь поменять ему пуху ), словил баг после которого он не хочет ковать мечи больше.
Диалог пропадает
 
Автор
Автор
O

osipov_jenya

Труженик
Участник форума
Регистрация
27 Окт 2018
Сообщения
490
Реакции
429
Баллы
99
Лучшие ответы
0
Столкнулся с другой проблемой,как сделать как чтобы переменная считалась корректно. например у меня доступно 3 диалога с перевооружением на мк1,мк2,мк3.и таких диалогов будет 10. просто не хочется делать условия чтобы диалог мк2 был доступен после диалога мк1 и тд, делать 10 разных мечей для 1 нпс(а их 40+) утомительно. условие любого диалога будет наличие определенного меча,но, задача корректо посчитать очки перевооружения Andre_QuestReEquip_Count. как видно на примере если я возьму диалог мк3 то получу бонусы за 1 и 2 (если эти диалоги я не слышал), но если я потом возьму 2 диалог мк2, то я опять получу бонус за диалог мк2, как вы понимаете, на следующих диалогах мк4-мк10 я буду с каждого диалога получать лишние очки. как этого избежать?
CSS:
instance DIA_319_Pablo_QuestReEquip_1(C_Info)
{
    npc         = MIL_319_Pablo;
    nr             = 1;
    condition     = DIA_319_Pablo_QuestReEquip_1_condition;
    information = DIA_319_Pablo_QuestReEquip_1_info;
    permanent    = false;
    description = "Перевооружить на Меч ополченца Мк1.";
};

func int DIA_319_Pablo_QuestReEquip_1_condition()
{
    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_01) > 0))
    {
        return TRUE;
    };
};

func void DIA_319_Pablo_QuestReEquip_1_info()
{
    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_1_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот меч в качестве новой экипировки.
    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_1_02");    //Великолепно, давай его сюда.
    B_GiveInvItems(hero,self,ItMw_MIL_Sword_01,1);
    AI_StopProcessInfos(self);
    AI_EquipBestMeleeWeapon(self);
    B_GivePlayerXP(100);
    Andre_QuestReEquip_Count += 1;
    AI_StopProcessInfos(self);
};

instance DIA_319_Pablo_QuestReEquip_2(C_Info)
{
    npc         = MIL_319_Pablo;
    nr             = 1;
    condition     = DIA_319_Pablo_QuestReEquip_2_condition;
    information = DIA_319_Pablo_QuestReEquip_2_info;
    permanent    = false;
    description = "Перевооружить на Меч ополченца Мк2.";
};

func int DIA_319_Pablo_QuestReEquip_2_condition()
{
    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_02) > 0))
    {
        return TRUE;
    };
};

func void DIA_319_Pablo_QuestReEquip_2_info()
{
    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_2_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот благородный меч в качестве новой экипировки.
    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_2_02");    //Великолепно, давай его сюда.
    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))
    {
        Andre_QuestReEquip_Count += 1;
        B_GivePlayerXP(100);
    };
    B_GiveInvItems(hero,self,ItMw_MIL_Sword_02,1);
    AI_StopProcessInfos(self);
    AI_EquipBestMeleeWeapon(self);
    B_GivePlayerXP(100);
    Andre_QuestReEquip_Count += 1;
    AI_StopProcessInfos(self);
};

instance DIA_319_Pablo_QuestReEquip_3(C_Info)
{
    npc         = MIL_319_Pablo;
    nr             = 1;
    condition     = DIA_319_Pablo_QuestReEquip_3_condition;
    information = DIA_319_Pablo_QuestReEquip_3_info;
    permanent    = false;
    description = "Перевооружить на Меч ополченца Мк3.";
};

func int DIA_319_Pablo_QuestReEquip_3_condition()
{
    if((MIS_Andre_QuestReEquip == LOG_Running) && (Npc_HasItems(other,ItMw_MIL_Sword_03) > 0))
    {
        return TRUE;
    };
};

func void DIA_319_Pablo_QuestReEquip_3_info()
{
    AI_Output(other,self,"DIA_319_Pablo_QuestReEquip_3_01");    //По заданию Лорда Андре я перевооружаю ополчение, прими этот благородный длинный меч в качестве новой экипировки.
    AI_Output(self,other,"DIA_319_Pablo_QuestReEquip_3_02");    //Великолепно, давай его сюда.
    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_1))
    {
        Andre_QuestReEquip_Count += 1;
        B_GivePlayerXP(100);
    };
    if(!Npc_KnowsInfo(hero,DIA_319_Pablo_QuestReEquip_2))
    {
        Andre_QuestReEquip_Count += 1;
        B_GivePlayerXP(100);
    };
    B_GiveInvItems(hero,self,ItMw_MIL_Sword_03,1);
    AI_StopProcessInfos(self);
    AI_EquipBestMeleeWeapon(self);
    B_GivePlayerXP(100);
    Andre_QuestReEquip_Count += 1;
    AI_StopProcessInfos(self);
};
 

AvaL0N

Бродяга
Участник форума
Регистрация
19 Авг 2023
Сообщения
26
Реакции
23
Баллы
14
Лучшие ответы
0
Автор молодец! Видно, что загорелся энтузиазмом. :flower: Вижу работа прям кипит. БЛАГОДАРЮ тебя за твои труды!
 
Сверху Снизу