Показать сообщение отдельно
Старый 16.11.2006, 09:41   #1996
Dimus

AGFC
Гость
 
Сообщений: n/a

По умолчанию Re: Вопросы по Gothic II:NoTR

2 [oder[:
Вот здесь:
Cпойлер(щелкните, чтобы прочесть):

Story\Dialoge\DIA_VLK_415_Meldor
instance DIA_Meldor_VonLehmar(C_Info)
{
     npc = VLK_415_Meldor;
     nr = 1;
     condition = DIA_Meldor_VonLehmar_Condition;
     information = DIA_Meldor_VonLehmar_Info;
     permanent = FALSE;
     important = TRUE;
};

func int DIA_Meldor_VonLehmar_Condition()
{
     if ((Lehmar_GeldGeliehen_Day <= (Wld_GetDay () - 2)) && (Lehmar_GeldGeliehen != 0) && (RangerHelp_LehmarKohle == FALSE) && (Lehmar.aivar[AIV_DefeatedByPlayer] == FALSE))
     {
           return TRUE;
     };
};

func void DIA_Meldor_VonLehmar_Info()
{
     AI_Output (self, other, "DIA_Meldor_VonLehmar_07_00");      //Эй, подожди...
     AI_Output (self, other, "DIA_Meldor_VonLehmar_07_01");      //У меня есть для тебя сообщение от Лемара...
     AI_StopProcessInfos (self);
     B_Attack (self, other, AR_NONE, 1);
};


Story\Dialoge\DIA_VLK_432_Moe
instance DIA_Moe_LEHMARGELDEINTREIBEN(C_Info)
{
     npc = VLK_432_Moe;
     nr = 2;
     condition = DIA_Moe_LEHMARGELDEINTREIBEN_Condition;
     information = DIA_Moe_LEHMARGELDEINTREIBEN_Info;
     permanent = FALSE;
     important = TRUE;
};

func int DIA_Moe_LEHMARGELDEINTREIBEN_Condition()
{
     if ((Lehmar_GeldGeliehen_Day <= (Wld_GetDay () - 2)) && (Lehmar_GeldGeliehen != 0) && (RangerHelp_LehmarKohle == FALSE) && (Lehmar.aivar[AIV_DefeatedByPlayer] == FALSE))
     {
           return TRUE;
     };
};

func void DIA_Moe_LEHMARGELDEINTREIBEN_Info()
{
     AI_Output (self, other, "DIA_Moe_LEHMARGELDEINTREIBEN_01_00");      //Эй, ты! Лемар передает тебе привет.
     AI_StopProcessInfos (self);
     B_Attack (self, other, AR_NONE, 1);
};


Также, если откажешься платить, на тебя нападает Лемар:
Cпойлер(щелкните, чтобы прочесть):

Story\Dialoge\DIA_VLK_484_Lehmar
var int Lehmar_vorbei;

instance DIA_Lehmar_GELDEINTREIBEN(C_Info)
{
     npc = VLK_484_Lehmar;
     nr = 5;
     condition = DIA_Lehmar_GELDEINTREIBEN_Condition;
     information = DIA_Lehmar_GELDEINTREIBEN_Info;
     permanent = FALSE;
     important = TRUE;
};

func int DIA_Lehmar_GELDEINTREIBEN_Condition()
{
     if ((Lehmar_GeldGeliehen_Day <= (Wld_GetDay () - 2)) && (Lehmar_GeldGeliehen != 0) && (RangerHelp_LehmarKohle == FALSE))
     {
           return TRUE;
     };
};

func void DIA_Lehmar_GELDEINTREIBEN_Info()
{
     AI_Output (self, other, "DIA_Lehmar_GELDEINTREIBEN_09_00");      //Ты не вернул долг, ублюдок! Верни мне мои деньги! А так как мне пришлось напоминать тебе об этом, процент возрастает.
     AI_Output (self, other, "DIA_Lehmar_GELDEINTREIBEN_09_01");      //Теперь это обойдется тебе в 30 процентов вместо обычных 20.
     Info_ClearChoices (DIA_Lehmar_GELDEINTREIBEN);
     Info_AddChoice (DIA_Lehmar_GELDEINTREIBEN, "Я верну свой долг.", DIA_Lehmar_GELDEINTREIBEN_schuldenzahlen);
     Info_AddChoice (DIA_Lehmar_GELDEINTREIBEN, "Я ничего тебе не дам.", DIA_Lehmar_GELDEINTREIBEN_kannstmich);
};

func void DIA_Lehmar_GELDEINTREIBEN_kannstmich()
{
     AI_Output (other, self, "DIA_Lehmar_GELDEINTREIBEN_kannstmich_15_00");      //Я ничего тебе не дам.
     AI_Output (self, other, "DIA_Lehmar_GELDEINTREIBEN_kannstmich_09_01");      //Ох, нет, дашь!
     Lehmar_vorbei = TRUE;
     AI_StopProcessInfos (self);
     B_Attack (self, other, AR_NONE, 1);
};

func void DIA_Lehmar_GELDEINTREIBEN_schuldenzahlen()
{
     AI_Output (other, self, "DIA_Lehmar_GELDEINTREIBEN_schuldenzahlen_15_0 0");      //Я верну свой долг.
     if (Lehmar_GeldGeliehen == 50)
     {
           Lehmar_GeldGeliehen_MitZinsen = 65;
     };
     if (Lehmar_GeldGeliehen == 200)
     {
           Lehmar_GeldGeliehen_MitZinsen = 260;
     };
     if (Lehmar_GeldGeliehen == 100)
     {
           Lehmar_GeldGeliehen_MitZinsen = 130;
     };
     IntToFloat (Lehmar_GeldGeliehen_MitZinsen);
     if (Npc_HasItems (other, ItMi_Gold) >= Lehmar_GeldGeliehen_MitZinsen)
     {
           B_GiveInvItems (other, self, ItMi_Gold, Lehmar_GeldGeliehen_MitZinsen);
           AI_Output (self, other, "DIA_Lehmar_GELDEINTREIBEN_schuldenzahlen_09_0 1");      //Тебе повезло! А теперь проваливай!
           Lehmar_GeldGeliehen = 0;
           AI_StopProcessInfos (self);
     }
     else
     {
           AI_Output (self, other, "DIA_Lehmar_GELDEINTREIBEN_schuldenzahlen_09_0 2");      //У тебя с собой нет столько денег! Ладно. Похоже, мне придется преподать тебе урок.
           AI_Output (self, other, "DIA_Lehmar_GELDEINTREIBEN_schuldenzahlen_09_0 3");      //Ничего личного - мне просто нужно поддерживать свою репутацию.
           Lehmar_vorbei = TRUE;
           AI_StopProcessInfos (self);
           B_Attack (self, other, AR_NONE, 1);
     };
};


instance DIA_Lehmar_GELDZURUECK(C_Info)
{
     npc = VLK_484_Lehmar;
     nr = 6;
     condition = DIA_Lehmar_GELDZURUECK_Condition;
     information = DIA_Lehmar_GELDZURUECK_Info;
     permanent = TRUE;
     description = "Вот твои деньги!";
};


func int DIA_Lehmar_GELDZURUECK_Condition()
{
     if (!Npc_KnowsInfo (other, DIA_Lehmar_GELDEINTREIBEN) && (Lehmar_GeldGeliehen != 0))
     {
           return TRUE;
     };
};

func void DIA_Lehmar_GELDZURUECK_Info()
{
     AI_Output (other, self, "DIA_Lehmar_GELDZURUECK_15_00");      //Вот твои деньги!
     if ((RangerHelp_LehmarKohle == TRUE) && (Lehmar_GeldGeliehen_Day <= (Wld_GetDay () - 2)))
     {
           AI_Output (self, other, "DIA_Addon_Lehmar_GELDZURUECK_09_00");      //Оставь их. Ларес уже обо всем позаботился.
           AI_Output (self, other, "DIA_Addon_Lehmar_GELDZURUECK_09_01");      //Похоже, вы с этим мошенником приятели, а? Ладно, это не мое дело. Удачи.
           Lehmar_GeldGeliehen = 0;
           AI_StopProcessInfos (self);
     }
     else
     {
           if (Lehmar_GeldGeliehen == 50)
           {
                 Lehmar_GeldGeliehen_MitZinsen = 60;
           };
           if (Lehmar_GeldGeliehen == 200)
           {
                 Lehmar_GeldGeliehen_MitZinsen = 240;
           };
           if (Lehmar_GeldGeliehen == 100)
           {
                 Lehmar_GeldGeliehen_MitZinsen = 120;
           };
           IntToFloat (Lehmar_GeldGeliehen_MitZinsen);
           if (Npc_HasItems (other, ItMi_Gold) >= Lehmar_GeldGeliehen_MitZinsen)
           {
                 B_GiveInvItems (other, self, ItMi_Gold, Lehmar_GeldGeliehen_MitZinsen);
                 AI_Output (self, other, "DIA_Lehmar_GELDZURUECK_09_01");      //Превосходно! Приятно иметь с тобой дело.
                 Lehmar_GeldGeliehen = 0;
                 AI_StopProcessInfos (self);
           }
           else
           {
                 AI_Output (self, other, "DIA_Lehmar_GELDZURUECK_09_02");      //Здесь недостаточно! Возвращайся, когда у тебя будет вся сумма. У тебя еще есть время. Помни, 20 процентов!
                 AI_StopProcessInfos (self);
           };
     };
};


instance DIA_Lehmar_NOCHMALGELD(C_Info)
{
     npc = VLK_484_Lehmar;
     nr = 8;
     condition = DIA_Lehmar_NOCHMALGELD_Condition;
     information = DIA_Lehmar_NOCHMALGELD_Info;
     permanent = TRUE;
     description = "Могу я занять у тебя денег?";
};


func int DIA_Lehmar_NOCHMALGELD_Condition()
{
     if ((Lehmar_GeldGeliehen == 0) && (Lehmar_GeldGeliehen_MitZinsen != 0))
     {
           return TRUE;
     };
};

func void DIA_Lehmar_NOCHMALGELD_Info()
{
     AI_Output (other, self, "DIA_Lehmar_NOCHMALGELD_15_00");      //Могу я занять у тебя денег?
     if (Npc_KnowsInfo (other, DIA_Lehmar_GELDEINTREIBEN) || Npc_KnowsInfo (other, DIA_Lehmar_BuchWeg))
     {
           AI_Output (self, other, "DIA_Lehmar_NOCHMALGELD_09_01");      //Ты думаешь, я идиот? Проваливай!
     }
     else
     {
           AI_Output (self, other, "DIA_Lehmar_NOCHMALGELD_09_02");      //Больше не можешь! Я понес большие издержки и теперь у меня на счету каждый цент.
           AI_Output (self, other, "DIA_Lehmar_NOCHMALGELD_09_03");      //Заходи через несколько дней!
     };
};


Кстати, из этого куска скрипта также следует, что можно не возвращать занятые по рекомендации Лареса деньги.
Ответить с цитированием