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

В процессе Перенести спавн Атилы в канализации в другое место

osipov_jenya

Наемник
Участник форума
Регистрация
27 Окт 2018
Сообщения
659
Реакции
553
Баллы
164
Лучшие ответы
0
До этого были ежедневные квесты рандомные, их без награды делать наскучит, так как они по типу спавн мобов зачистка, принеси мне то. Сейчас же ты сделал единоразовые квесты, если сфокусироваться на них, можно просто сделать стандартные награды в виде золота и опыта, их будут проходить не за награду лишь, а за сами квесты тоже. Полёт возможностей крайне широкий, гильдия воров, гильдия убийц, гильдия охотников, торговцев. В игре полно ги где по главам пару тройку квестов и всё. На это можно сделать упор, на полу мёртвые гильдии, которые доступны для всех. Внести разнообразие в их жизнь, сделать более мастабными. Да, тогда придётся мозговать, но и направление изменится и будет куда интереснее. И в таком случае какие-то плюшки уже не будут столь дисбалансными, так как чтобы их получить, придётся пройти уже квестов 20 у одной ги, более мелкие награды где-то между ними. Правда для идей придётся скорее всего отдельную тему создавать. Иначе они будут в твоей теме теряться либо их с темы плагина себе в блокнот копировать, то есть идеи накидать можно, только вот куда надо придумать. Ну и лучше не 50 программистов, так как их тут или нет, или у них нет желания как у тебя, в данном случае можно ограничиться 50 хорошо продуманных квестов от начала квеста до его конца, чтобы ты уже мог его реализовывать, а не придумывать пол квеста.
Ну я тут,я делаю,не быстро,конечно,но всё задуманное реализовываю.и да,если получается интересная мысль,я сбиваюсь с предыдущей и переключаюсь на интересную,увы.
--- Добавлено: ---

В конечном итоге всё сконцентрируется в квестпаке
 

osipov_jenya

Наемник
Участник форума
Регистрация
27 Окт 2018
Сообщения
659
Реакции
553
Баллы
164
Лучшие ответы
0
Так,после консультаций с ЕГО СВЯТЕЙШЕСТВОМ, я понял как реализовать повышение золота за кражу. Итак, концепция реализации репутации гильдии. На 25% Кассия даст добро на покупку комплекта у Джаспера вора-карманника, доспех(+10 к шансу кражи), ремень и шанку(при одевании всех 3 шанс кражи +10),50%-комплект вора-грабителя(броня +10% к золоту при краже,шапка+5% к золоту при краже,ремень+5% к золоту при краже)(при одевании всех 3 +5% к золоту при краже),75%-бижутерия вора-грабителя(амулет+10% к золоту при краже,кольцо+5% к золоту при краже,кольцо+5% к золоту при краже)(при одевании всех 3 +5% к золоту при краже).При одевании сета брони и сета бижутерии дополнительно +10 процентов к золоту при краже. Всё это будет стоить денег.
--- Добавлено: ---

Реализовал и протестировал сет брони на бонус к украденному золоту кражей. Будет доступен на 50 репутации ГВ
--- Добавлено: ---

шапка+10% стоит 1500,ремень+10%стоит 1500,броня +20% стоит 3000,комплект еще +10%. по цене не стал делать дешёвым,думаю должно окупиться. на 75 репутации будет бижа с идентичными статами и стоимостью
--- Добавлено: ---

хотя,скорее всего,нужно снизить стоимость комплекта,он хрен окупится))
--- Добавлено: ---

Либо выдавать его по квестам.
 
Последнее редактирование:

osipov_jenya

Наемник
Участник форума
Регистрация
27 Окт 2018
Сообщения
659
Реакции
553
Баллы
164
Лучшие ответы
0
C++:
instance DIA_Cassia_ThiefQuest4_End(C_Info)
{
    npc         = VLK_447_Cassia;
    nr            = 2;
    condition     = DIA_Cassia_ThiefQuest4_End_Condition;
    information = DIA_Cassia_ThiefQuest4_End_Info;
    description = "Я выявил стукача.";
};

func int DIA_Cassia_ThiefQuest4_End_Condition()
{
    if((MIS_Thiefquest4 == 6) && ((ThiefQuest4_Nagur == 6) || (ThiefQuest4_Rengaru == 6) || (ThiefQuest4_Joe == 6)))
    {
        return true;
    };
};

func void DIA_Cassia_ThiefQuest4_End_Info()
{
    AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_00");        //Я выявил стукача.
    AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_01");        //И кто это?
    if(ThiefQuest4_Nagur == 6)
    {
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_02");    //Это Нагур.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_03");    //Расскажи как ты это узнал.
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_04");    //Я ему рассказал что ты дала мне задание обчистить дом Валентино и попросил его совета в какое время это лучше сделать.
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_05");    //И пришёл в дом Валентина именно в том время, которое посоветовал Нагур.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_06");    //И?
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_07");    //И там был паладин Лотар, который ждал меня и напал, я еле ноги унёс.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_08");    //Понятно. Спасибо за твою информацию. Держи эту награду, ты её заслужил.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_09");    //Передай Аттиле мой приказ. Нагур должен умереть.
        MIS_Thiefquest4 = LOG_SUCCESS;
        B_LogEntry(TOPIC_Thief_quest4, "Я рассказал Кассии, что Нагур оказался стукачем.");
        Log_SetTopicStatus(TOPIC_Thief_quest4,LOG_SUCCESS);
        thiefquestday = Wld_GetDay();
        B_CloseTopic_Now(TOPIC_Thief_quest4,MIS_Thiefquest4,0,2);
        ai_printbonus("Репутация в Гильдии Воров +2");
        B_GivePlayerXP(1000);
        B_GiveInvItems(self,other, ItMi_Gold, 1000);
        MIS_Thiefquest5 = LOG_Running;
        Log_CreateTopic(TOPIC_Thief_quest5,LOG_MISSION);
        Log_SetTopicStatus(TOPIC_Thief_quest5,LOG_Running);
        B_LogEntry(TOPIC_Thief_quest5, "Кассия поручила мне передать приказ Аттиле убить Нагура.");
    };
    if(ThiefQuest4_Rengaru == 6)
    {
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_10");    //Это Ренгару.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_03");    //Расскажи как ты это узнал.
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_04");    //Я ему рассказал что ты дала мне задание обчистить дом Валентино и попросил его совета в какое время это лучше сделать.
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_11");    //И пришёл в дом Валентина именно в том время, которое посоветовал Ренгару.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_06");    //И?
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_07");    //И там был паладин Лотар, который ждал меня и напал, я еле ноги унёс.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_08");    //Понятно. Спасибо за твою информацию. Держи эту награду, ты её заслужил.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_12");    //Передай Аттиле мой приказ. Ренгару должен умереть.
        MIS_Thiefquest4 = LOG_SUCCESS;
        B_LogEntry(TOPIC_Thief_quest4, "Я рассказал Кассии, что Ренгару оказался стукачем.");
        Log_SetTopicStatus(TOPIC_Thief_quest4,LOG_SUCCESS);
        thiefquestday = Wld_GetDay();
        B_CloseTopic_Now(TOPIC_Thief_quest4,MIS_Thiefquest4,0,2);
        ai_printbonus("Репутация в Гильдии Воров +2");
        B_GivePlayerXP(1000);
        B_GiveInvItems(self,other, ItMi_Gold, 1000);
        MIS_Thiefquest5 = LOG_Running;
        Log_CreateTopic(TOPIC_Thief_quest5,LOG_MISSION);
        Log_SetTopicStatus(TOPIC_Thief_quest5,LOG_Running);
        B_LogEntry(TOPIC_Thief_quest5, "Кассия поручила мне передать приказ Аттиле убить Ренгару.");
    };
    if(ThiefQuest4_Joe == 6)
    {
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_13");    //Это Джо.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_03");    //Расскажи как ты это узнал.
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_04");    //Я ему рассказал что ты дала мне задание обчистить дом Валентино и попросил его совета в какое время это лучше сделать.
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_14");    //И пришёл в дом Валентина именно в том время, которое посоветовал Джо.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_06");    //И?
        AI_Output(other,self,"DIA_Cassia_ThiefQuest4_End_07");    //И там был паладин Лотар, который ждал меня и напал, я еле ноги унёс.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_08");    //Понятно. Спасибо за твою информацию. Держи эту награду, ты её заслужил.
        AI_Output(self,other,"DIA_Cassia_ThiefQuest4_End_15");    //Передай Аттиле мой приказ. Джо должен умереть.
        MIS_Thiefquest4 = LOG_SUCCESS;
        B_LogEntry(TOPIC_Thief_quest4, "Я рассказал Кассии, что Джо оказался стукачем.");
        Log_SetTopicStatus(TOPIC_Thief_quest4,LOG_SUCCESS);
        thiefquestday = Wld_GetDay();
        B_CloseTopic_Now(TOPIC_Thief_quest4,MIS_Thiefquest4,0,2);
        ai_printbonus("Репутация в Гильдии Воров +2");
        B_GivePlayerXP(1000);
        B_GiveInvItems(self,other, ItMi_Gold, 1000);
        MIS_Thiefquest5 = LOG_Running;
        Log_CreateTopic(TOPIC_Thief_quest5,LOG_MISSION);
        Log_SetTopicStatus(TOPIC_Thief_quest5,LOG_Running);
        B_LogEntry(TOPIC_Thief_quest5, "Кассия поручила мне передать приказ Аттиле убить Джо.");
    };
    AI_StopProcessInfos(self);
};   

func void rtn_Thiefquest5_493()
{
    TA_Sit_Chair(14, 0, 23, 50, "NW_CITY_HABOUR_TAVERN01_02");
    TA_Stand_Armscrossed(23, 50, 6, 0, "NW_CITY_HABOUR_POOR_AREA_BACK_ALLEY_01");
    TA_Sit_Chair(6, 0, 14, 0, "NW_CITY_HABOUR_TAVERN01_02");
};

func void rtn_Thiefquest5_492()
{
    TA_Stand_Armscrossed(18, 0, 23, 50, "NW_CITY_HABOUR_KASERN_19");
    TA_Stand_Armscrossed(23, 50, 6, 0, "NW_CITY_HABOUR_POOR_AREA_BACK_ALLEY_01");
    TA_Stand_Armscrossed(6, 0, 18, 00, "NW_CITY_HABOUR_KASERN_19");
};

func void rtn_Thiefquest5_448()
{
    TA_Sit_Bench(12, 0, 15, 0, "NW_CITY_WAY_TO_SHIP_03");
    TA_Stand_Drinking(15, 0, 23, 50, "NW_CITY_HABOUR_TAVERN01_08");
    TA_Stand_Armscrossed(23, 50, 6, 0, "NW_CITY_HABOUR_POOR_AREA_BACK_ALLEY_01");
    TA_Sit_Bench(6, 0, 12, 0, "NW_CITY_WAY_TO_SHIP_03");
};

instance dia_attila_Thiefquest5_start(C_INFO)
{
    npc         = Vlk_494_Attila;
    nr            = 2;
    condition     = dia_attila_Thiefquest5_start_condition;
    information = dia_attila_Thiefquest5_start_info;
    description = "Передать приказ Кассии.";
};

func int dia_attila_Thiefquest5_start_condition()
{
    if(MIS_Thiefquest5 == LOG_Running)
    {
        return TRUE;
    };
};

func void dia_attila_Thiefquest5_start_info()
{
    AI_Output(other, self, "dia_attila_Thiefquest5_start_00");         // Кассия требует мести за предательство.
    AI_Output(self, other, "dia_attila_Thiefquest5_start_01");         // И кто оказался стукачом?
    if(ThiefQuest4_Nagur == 6)
    {
        AI_Output(other, self, "dia_attila_Thiefquest5_start_02");     // Нагур.
        Npc_ExchangeRoutine(Vlk_494_Attila,"Thiefquest5");
        Npc_ExchangeRoutine(Vlk_493_Nagur,"Thiefquest5");
        B_LogEntry(TOPIC_Thief_quest5, "Аттила назначит встресу с Нагуром за домом Хальвора ночью. Нужно подготовится к смертельной драке.");
        MIS_Thiefquest5 = 2;
    };
    if(ThiefQuest4_Rengaru == 6)
    {
        AI_Output(other, self, "dia_attila_Thiefquest5_start_03");     // Ренгару.
        Npc_ExchangeRoutine(Vlk_494_Attila,"Thiefquest5");
        Npc_ExchangeRoutine(Vlk_492_Rengaru,"Thiefquest5");
        B_LogEntry(TOPIC_Thief_quest5, "Аттила назначит встресу с Ренгару за домом Хальвора ночью. Нужно подготовится к смертельной драке.");
        MIS_Thiefquest5 = 3;
    };
    if(ThiefQuest4_Joe == 6)
    {
        AI_Output(other, self, "dia_attila_Thiefquest5_start_04");     // Джо.
        Npc_ExchangeRoutine(Vlk_494_Attila,"Thiefquest5");
        Npc_ExchangeRoutine(Vlk_448_Joe,"Thiefquest5");
        B_LogEntry(TOPIC_Thief_quest5, "Аттила назначит встресу с Джо за домом Хальвора ночью. Нужно подготовится к смертельной драке.");
        MIS_Thiefquest5 = 4;
    };
    AI_Output(self, other, "dia_attila_Thiefquest5_start_05");         // Ясно. Ну чтож, так значит так. Он сам себя приговорил.
    AI_Output(other, self, "dia_attila_Thiefquest5_start_06");         // Какие будут наши действия?
    AI_Output(self, other, "dia_attila_Thiefquest5_start_07");         // Я ему назначу встречу на ночь за домом Хальвора, приходи, но будь готов к смертельной драке, сомневаюсь, что он придёт неподготовленным.
    AI_Output(self, other, "dia_attila_Thiefquest5_start_08");         // И к тебе небольшая просьба, если у тебя есть хороший меч или броня, принеси мне.
    B_LogEntry(TOPIC_Thief_quest5, "По возможности Аттила просит хороший меч и броню перед боем. Лучше это сделать до встречи со стукачом.");
    self.aivar[AIV_PARTYMEMBER] = true;
    AI_StopProcessInfos(self);
};

instance bdt_Thiefquest5_l(NPC_DEFAULT)
{
    name = NAME_BANDIT;
    guild = GIL_BDT;
    flags = 0;
    npctype = NPCTYPE_AMBIENT;
    B_SetAttributesToChapter(bdt_Thiefquest5_l, 2);
    fight_tactic = FAI_HUMAN_STRONG;
    EquipItem(bdt_Thiefquest5_l, itmw_schwert2);
    B_CreateAmbientInv(bdt_Thiefquest5_l);
    B_SetNpcVisual(bdt_Thiefquest5_l, MALE, "Hum_Head_Bald", FACE_L_TOUGH02, BODYTEX_L, 25039);
    Mdl_SetModelFatness(bdt_Thiefquest5_l, 0.00);
    Mdl_ApplyOverlayMds(bdt_Thiefquest5_l, "Humans_Relaxed.mds");
    B_GiveNpcTalents(bdt_Thiefquest5_l);
    B_SetFightSkills(bdt_Thiefquest5_l, 30);
    start_aistate = zs_bandit;
};

instance bdt_Thiefquest5_2(NPC_DEFAULT)
{
    name = NAME_BANDIT;
    guild = GIL_BDT;
    flags = 0;
    npctype = NPCTYPE_AMBIENT;
    B_SetAttributesToChapter(bdt_Thiefquest5_2, 2);
    fight_tactic = FAI_HUMAN_STRONG;
    EquipItem(bdt_Thiefquest5_2, itmw_schwert2);
    B_CreateAmbientInv(bdt_Thiefquest5_2);
    B_SetNpcVisual(bdt_Thiefquest5_2, MALE, "Hum_Head_Bald", FACE_L_TOUGH02, BODYTEX_L, 25039);
    Mdl_SetModelFatness(bdt_Thiefquest5_2, 0.00);
    Mdl_ApplyOverlayMds(bdt_Thiefquest5_2, "Humans_Relaxed.mds");
    B_GiveNpcTalents(bdt_Thiefquest5_2);
    B_SetFightSkills(bdt_Thiefquest5_2, 30);
    start_aistate = zs_bandit;
};

instance dia_attila_Thiefquest5_Next(C_INFO)
{
    npc         = Vlk_494_Attila;
    condition     = dia_attila_Thiefquest5_Next_condition;
    information = dia_attila_Thiefquest5_Next_info;
    important     = true;
};

func int dia_attila_Thiefquest5_Next_condition()
{
    if((Npc_GetDistToWP(hero, "NW_CITY_HABOUR_POOR_AREA_BACK_ALLEY_01") <= 500) && (Wld_IsTime(0, 10, 5, 50)) && ((MIS_Thiefquest5 == 2) || (MIS_Thiefquest5 == 3) || (MIS_Thiefquest5 == 4)))
    {
        return TRUE;
    };
};

func void dia_attila_Thiefquest5_Next_info()
{
    if(ThiefQuest4_Nagur == 6)
    {
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_00");         //(Аттила говорит Нагуру) Ты зачем предал нас?
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_01");         //(Нагур говорит Аттиле) Потому что вы жалкие крысы, готовые ради наживы идти по головам. Я не хочу быть частью таких крыс.
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_02");         //(Аттила говорит Нагуру) Так ты сам превратился в такую крысу(смеётся)
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_03");         //(Нагур говорит Аттиле) Говори что хочешь, сделанного уже не изменить.
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_04");         //(Нагур говорит Аттиле) А вот и подмога. Умрите!!!
        Vlk_493_Nagur.guild = GIL_BDT;
        Vlk_493_Nagur.aivar[AIV_DROPDEADANDKILL] = TRUE;
        B_Attack(Vlk_493_Nagur,Vlk_494_Attila,AR_KILL,2);
        B_LogEntry(TOPIC_Thief_quest5, "Нагур привёл головорезов, чтобы избавится от нас.");
        MIS_Thiefquest5 = 5;
    };
    if(ThiefQuest4_Rengaru == 6)
    {
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_00");         //(Аттила говорит Ренгару) Ты зачем предал нас?
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_01");         //(Ренгару говорит Аттиле) Потому что вы жалкие крысы, готовые ради наживы идти по головам. Я не хочу быть частью таких крыс.
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_02");         //(Аттила говорит Ренгару) Так ты сам превратился в такую крысу(смеётся)
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_03");         //(Ренгару говорит Аттиле) Говори что хочешь, сделанного уже не изменить.
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_04");         //(Ренгару говорит Аттиле) А вот и подмога. Умрите!!!
        Vlk_492_Rengaru.guild = GIL_BDT;
        Vlk_492_Rengaru.aivar[AIV_DROPDEADANDKILL] = TRUE;
        B_Attack(Vlk_492_Rengaru,Vlk_494_Attila,AR_KILL,3);
        B_LogEntry(TOPIC_Thief_quest5, "Ренгару привёл головорезов, чтобы избавится от нас.");
        MIS_Thiefquest5 = 6;
    };
    if(ThiefQuest4_Joe == 6)
    {
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_00");         //(Аттила говорит Джо) Ты зачем предал нас?
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_01");         //(Джо говорит Аттиле) Потому что вы жалкие крысы, готовые ради наживы идти по головам. Я не хочу быть частью таких крыс.
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_02");         //(Аттила говорит Джо) Так ты сам превратился в такую крысу(смеётся)
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_03");         //(Джо говорит Аттиле) Говори что хочешь, сделанного уже не изменить.
        AI_Output(self, other, "dia_attila_Thiefquest5_Next_04");         //(Джо говорит Аттиле) А вот и подмога. Умрите!!!
        Vlk_448_Joe.guild = GIL_BDT;
        Vlk_448_Joe.aivar[AIV_DROPDEADANDKILL] = TRUE;
        B_Attack(Vlk_448_Joe,Vlk_494_Attila,AR_KILL,3);
        B_LogEntry(TOPIC_Thief_quest5, "Джо привёл головорезов, чтобы избавится от нас.");
        MIS_Thiefquest5 = 7;
    };
    AI_StopProcessInfos(self);
    Vlk_494_Attila.aivar[AIV_CANNODEAD] = TRUE;
    Wld_InsertNpc(bdt_Thiefquest5_l,"NW_CITY_HABOUR_POOR_AREA_PATH_01_03");
    AI_Teleport(bdt_Thiefquest5_l,"NW_CITY_HABOUR_POOR_AREA_PATH_01_03");
    Wld_InsertNpc(bdt_Thiefquest5_2,"NW_CITY_HABOUR_POOR_AREA_BACK_ALLEY_02");
    AI_Teleport(bdt_Thiefquest5_2,"NW_CITY_HABOUR_POOR_AREA_BACK_ALLEY_02");
    B_Attack(bdt_Thiefquest5_l,Vlk_494_Attila,AR_NONE,3);
    B_Attack(bdt_Thiefquest5_2,Vlk_494_Attila,AR_NONE,3);
};

instance dia_attila_Thiefquest5_End(C_INFO)
{
    npc         = Vlk_494_Attila;
    condition     = dia_attila_Thiefquest5_End_condition;
    information = dia_attila_Thiefquest5_End_info;
    important     = true;
};

func int dia_attila_Thiefquest5_End_condition()
{
    if((((MIS_Thiefquest5 == 5) && (Npc_IsDead(Vlk_493_Nagur))) || ((MIS_Thiefquest5 == 6) && (Npc_IsDead(Vlk_492_Rengaru))) || ((MIS_Thiefquest5 == 7) && (Npc_IsDead(Vlk_448_Joe)))) && (Npc_IsDead(bdt_Thiefquest5_l)) && (Npc_IsDead(bdt_Thiefquest5_2)))
    {
        return TRUE;
    };
};

func void dia_attila_Thiefquest5_End_info()
{
    self.aivar[AIV_PARTYMEMBER] = false;
    self.attribute[1] += 500;
    self.attribute += 500;
    self.attribute[4] += 50;
    if((MIS_Thiefquest5 == 5) && (Npc_IsDead(Vlk_493_Nagur)))
    {
        AI_Output(self, other, "dia_attila_Thiefquest5_End_00");         //Нагур и его подельники мерты. Можешь доложить Кассии об этом. Мне нужно немного отдохнуть.
        B_LogEntry(TOPIC_Thief_quest5, "Нагур и его подельники мерты. Нужно рассказать об этом Кассии.");
        MIS_Thiefquest5 = 8;
    };
    if((MIS_Thiefquest5 == 6) && (Npc_IsDead(Vlk_492_Rengaru)))
    {
        AI_Output(self, other, "dia_attila_Thiefquest5_End_00");         //Ренгару и его подельники мерты. Можешь доложить Кассии об этом. Мне нужно немного отдохнуть.
        B_LogEntry(TOPIC_Thief_quest5, "Ренгару и его подельники мерты. Нужно рассказать об этом Кассии.");
        MIS_Thiefquest5 = 9;
    };
    if((MIS_Thiefquest5 == 7) && (Npc_IsDead(Vlk_448_Joe)))
    {
        AI_Output(self, other, "dia_attila_Thiefquest5_End_00");         //Джо и его подельники мерты. Можешь доложить Кассии об этом. Мне нужно немного отдохнуть.
        B_LogEntry(TOPIC_Thief_quest5, "Джо и его подельники мерты. Нужно рассказать об этом Кассии.");
        MIS_Thiefquest5 = 10;
    };
    AI_StopProcessInfos(self);
};

instance DIA_Cassia_ThiefQuest5_End(C_Info)
{
    npc         = VLK_447_Cassia;
    nr            = 2;
    condition     = DIA_Cassia_ThiefQuest5_End_Condition;
    information = DIA_Cassia_ThiefQuest5_End_Info;
    description = "Стукач наказан.";
};

func int DIA_Cassia_ThiefQuest5_End_Condition()
{
    if((MIS_Thiefquest5 == 8) || (MIS_Thiefquest5 == 9) || (MIS_Thiefquest5 == 10))
    {
        return true;
    };
};

func void DIA_Cassia_ThiefQuest5_End_Info()
{   
    if(MIS_Thiefquest5 == 8)
    {
        AI_Output(other, self, "DIA_Cassia_ThiefQuest5_End_00");     //Нагур и его подельники мерты.
    };
    if(MIS_Thiefquest5 == 9)
    {
        AI_Output(self, other, "DIA_Cassia_ThiefQuest5_End_01");     //Ренгару и его подельники мерты.
    };
    if(MIS_Thiefquest5 == 10)
    {
        AI_Output(self, other, "DIA_Cassia_ThiefQuest5_End_02");     //Джо и его подельники мерты.
    };
    AI_Output(self, other, "DIA_Cassia_ThiefQuest5_End_03");         //Подельники?
    AI_Output(other, self, "DIA_Cassia_ThiefQuest5_End_04");         //Да, он был не один. С собой он привёл двоих бандитов, но ему это не помогло(улыбается)
    AI_Output(self, other, "DIA_Cassia_ThiefQuest5_End_05");         //Понятно, крыса даже перед смертью опасна. Я рада, что вы справились.
    AI_Output(self, other, "DIA_Cassia_ThiefQuest5_End_06");         //Раз проблема стукача решена, нужно теперь занятся Ристером.
    AI_Output(other, self, "DIA_Cassia_ThiefQuest5_End_07");         //Что мне с ним сделать?
    AI_Output(self, other, "DIA_Cassia_ThiefQuest5_End_08");         //Есть несколько вариантов, ты можешь поробовать его подкупить,уговорить или запугать - выбор за тобой, только не убивай.
    AI_Output(self, other, "DIA_Cassia_ThiefQuest5_End_09");         //Вот твоя награда за стукача и я дам тебе 1000 золотых на подкуп судьи, если решишь этот вопрос без золота, можешь оставить его себе.
    AI_Output(other, self, "DIA_Cassia_ThiefQuest5_End_10");         //Хорошо, я подумаю как лучше его "уговорить".
    MIS_Thiefquest5 = LOG_SUCCESS;
    B_LogEntry(TOPIC_Thief_quest5, "Я рассказал Кассии, что Джо оказался стукачем.");
    Log_SetTopicStatus(TOPIC_Thief_quest5,LOG_SUCCESS);
    thiefquestday = Wld_GetDay();
    B_CloseTopic_Now(TOPIC_Thief_quest5,MIS_Thiefquest5,0,2);
    ai_printbonus("Репутация в Гильдии Воров +3");
    B_GivePlayerXP(1000);
    B_GiveInvItems(self,other, ItMi_Gold, 2500);
    MIS_Thiefquest6 = LOG_Running;
    Log_CreateTopic(TOPIC_Thief_quest6,LOG_MISSION);
    Log_SetTopicStatus(TOPIC_Thief_quest6,LOG_Running);
    B_LogEntry(TOPIC_Thief_quest6, "Нужно каким-либо способом (уговорить) Ристера снять обвинения против Рамиреса, только не убивать.");
    AI_StopProcessInfos(self);
};
--- Добавлено: ---

Играбельный скрипт
 

Вложения

valvego

Рыцарь
Цугундер
Участник форума
Регистрация
28 Апр 2015
Сообщения
2.002
Реакции
509
Баллы
311
Лучшие ответы
1

TraZag

Полубог
Команда форума
Модератор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
6 Окт 2012
Сообщения
13.053
Реакции
11.482
Баллы
1.071
Лучшие ответы
2
VK | VK
этот аматор уже и до Архолоса добрался...
Ху а ю мистер аматор?:P Честно говоря не понимаю, зачем делать еще одну озвучку. :think: С другой стороны. Можно потом третью сделать - собрав в общую кучу первые две и выбрав из них наилучший вариант для каждого нпс. ;D
 
Последнее редактирование:

valvego

Рыцарь
Цугундер
Участник форума
Регистрация
28 Апр 2015
Сообщения
2.002
Реакции
509
Баллы
311
Лучшие ответы
1
Ху а ю мистер аматор?:P Честно говоря не понимаю, зачем делать еще одну озвучку. :think: С другой стороны. Можно потом третью сделать - собрав в общую кучу первые две и выбрав из них наилучший вариант для каждого нпс. ;D
Послушайте внимательно Йорна, ах да ему мало было одного персонажа, он сразу нескольких запорол
--- Добавлено: ---

Послушайте внимательно Йорна, ах да ему мало было одного персонажа, он сразу нескольких запорол
Хотя, лучше Девира послушайте, эта таже убогая интонация с которой он озвучивал ГГ в нб
 

TraZag

Полубог
Команда форума
Модератор раздела
Модостроитель
Почётный пользователь
 
Участник форума
Регистрация
6 Окт 2012
Сообщения
13.053
Реакции
11.482
Баллы
1.071
Лучшие ответы
2
Послушайте внимательно Йорна, ах да ему мало было одного персонажа, он сразу нескольких запорол
--- Добавлено: ---


Хотя, лучше Девира послушайте, эта таже убогая интонация с которой он озвучивал ГГ в нб
Ну Йорн мне больше нравится в озвучке от рыбозера... Истару подходят хорошо пафосные персонажи. как то Ксардас, Пирокар, Грег...

По остальным хз...
 

valvego

Рыцарь
Цугундер
Участник форума
Регистрация
28 Апр 2015
Сообщения
2.002
Реакции
509
Баллы
311
Лучшие ответы
1
Ну Йорн мне больше нравится в озвучке от рыбозера... Истару подходят хорошо пафосные персонажи. как то Ксардас, Пирокар, Грег...

По остальным хз...
Йорн ок, пусть будет Ксардасом, но послушайте Девира, разве это нормально?
--- Добавлено: ---

Йорн, Аделард просто своим голосом читает, который чисто субъективно у меня не вызывает никакой симпатии, но как он читает интонации ГГ в нб( в архолосе Девира) за такое нужно пожизненно лишать права на озвучку, но этот же господин возомнил себя кем то и в весь готический модострой сует свой поганый рот, еще и требует за это немалый аванс
 
Последнее редактирование:
Сверху Снизу