wrzucanie filmiku do moda 12537 46

O temacie

Autor Sergio

Zaczęty 8.02.2010 roku

Wyświetleń 12537

Odpowiedzi 46

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Ech, nie wrzuca się plików na rapida... Wrzuć to na sendspaca, bo z rapida nie da się teraz ściągnąć.

Pawciow

Pawciow

Użytkownicy
posty533
Propsy70
ProfesjaTłumacz
  • Użytkownicy
na sendspace.com czekałem i nie chciało wrzucić....na rapida szybko poszło...wrzuciłbym na przeklej.pl, ale tam mi blokuje kaspersky-nawet dodanie do wyjątków stronki nic nie zmienia; a z rapida nie mam problemów ze ściągnięciem

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja
Dobra, ściągnąłem. Działa. Sprawdzałem w G1. Więc umieściłem filmik w C:\Program Files\Piranha Bytes\Gothic\_Work\Data\Video, a następnie wpisałem w startupie zamiast PlayVideo ("INTRO.BIK"); wpisałem PlayVideo ("test.BIK"); i uruchomiłem Gothic Startera z opcją parsowania skryptów i włączyło się intro z Arcanii :D

Pawciow

Pawciow

Użytkownicy
posty533
Propsy70
ProfesjaTłumacz
  • Użytkownicy

Pawciow

wrzucanie filmiku do moda
#23 2010-02-15, 11:53(Ostatnia zmiana: 2010-02-15, 12:47)
a bo ja w startermodzie nie brałem reparse scripts; ale dziś wziąłem i kurde błąd-no jakim cudem-jak skrypt ze skryptów niemieckich przetłumaczonych na polski jest identyczny (i go też podstawiałem)-w gothic sourcerze błąd nie wyskakuje-a tutaj tak-w pliku dialogu Cavalorna redefined identifier C_BRAGOBANDITSDEAD line 5; no nie mogę już z tymi błędami:
[codebox]///////////////////////////////////////////////////////////////////////
//   C_BragoBanditsDead
///////////////////////////////////////////////////////////////////////

func int C_BragoBanditsDead ()
{
   if ( Npc_IsDead (Ambusher_1013) || (Bdt_1013_Away == TRUE) )
   && (Npc_IsDead (Ambusher_1014))
   && (Npc_IsDead (Ambusher_1015))
   {
      return TRUE;
   };
};

///////////////////////////////////////////////////////////////////////
//   Info EXIT
///////////////////////////////////////////////////////////////////////
INSTANCE DIA_Addon_Cavalorn_EXIT   (C_INFO)
{
   npc       = Bau_4300_Addon_Cavalorn;
   nr        = 999;
   condition   = DIA_Addon_Cavalorn_EXIT_Condition;
   information = DIA_Addon_Cavalorn_EXIT_Info;
   permanent   = TRUE;
   description = DIALOG_ENDE;
};

FUNC INT DIA_Addon_Cavalorn_EXIT_Condition()
{
   return TRUE;
};

FUNC VOID DIA_Addon_Cavalorn_EXIT_Info()
{
   AI_StopProcessInfos (self);
};
// ************************************************************
//                        PICK POCKET
// ************************************************************

INSTANCE DIA_Addon_Cavalorn_PICKPOCKET (C_INFO)
{
   npc         = Bau_4300_Addon_Cavalorn;
   nr         = 900;
   condition   = DIA_Addon_Cavalorn_PICKPOCKET_Condition;
   information   = DIA_Addon_Cavalorn_PICKPOCKET_Info;
   permanent   = TRUE;
   description = "(Kradzież tego kołczanu będzie dość łatwa)";
};                 

FUNC INT DIA_Addon_Cavalorn_PICKPOCKET_Condition()
{
   if (Npc_GetTalentSkill (other,NPC_TALENT_PICKPOCKET) == 1)
   && (self.aivar[AIV_PlayerHasPickedMyPocket] == FALSE)
   && (other.attribute[ATR_DEXTERITY] >= (25 - Theftdiff))
   {
      return TRUE;
   };
};
 
FUNC VOID DIA_Addon_Cavalorn_PICKPOCKET_Info()
{   
   Info_ClearChoices   (DIA_Addon_Cavalorn_PICKPOCKET);
   Info_AddChoice      (DIA_Addon_Cavalorn_PICKPOCKET, DIALOG_BACK       ,DIA_Addon_Cavalorn_PICKPOCKET_BACK);
   Info_AddChoice      (DIA_Addon_Cavalorn_PICKPOCKET, DIALOG_PICKPOCKET   ,DIA_Addon_Cavalorn_PICKPOCKET_DoIt);
};

func void DIA_Addon_Cavalorn_PICKPOCKET_DoIt()
{
   if (other.attribute[ATR_DEXTERITY] >= 25)
   {
      
      B_GiveInvItems (self, other, ItRw_Arrow, 44);
      self.aivar[AIV_PlayerHasPickedMyPocket] = TRUE;
      B_GivePlayerXP (XP_Ambient);
      Info_ClearChoices (DIA_Addon_Cavalorn_PICKPOCKET);
   }
   else
   {
      AI_StopProcessInfos   (self);
      B_Attack (self, other, AR_Theft, 1); //reagiert trotz IGNORE_Theft mit NEWS
   };
};
   
func void DIA_Addon_Cavalorn_PICKPOCKET_BACK()
{
   Info_ClearChoices (DIA_Addon_Cavalorn_PICKPOCKET);
};
///////////////////////////////////////////////////////////////////////
//   Info MeetingIsRunning
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_MeetingIsRunning      (C_INFO)
{
   npc       =    Bau_4300_Addon_Cavalorn;
   nr       =    1;
   condition    =    DIA_Addon_Cavalorn_MeetingIsRunning_Condition;
   information    =    DIA_Addon_Cavalorn_MeetingIsRunning_Info;
   important    =    TRUE;
   permanent    =    TRUE;
};
var int DIA_Addon_Cavalorn_MeetingIsRunning_OneTime;
func int DIA_Addon_Cavalorn_MeetingIsRunning_Condition ()
{
   if (Npc_IsInState (self,ZS_Talk))
   && (RangerMeetingRunning == LOG_RUNNING)
      {
         return TRUE;
      };   
};

func void DIA_Addon_Cavalorn_MeetingIsRunning_Info ()
{
   if (DIA_Addon_Cavalorn_MeetingIsRunning_OneTime == FALSE)
   {
   AI_Output   (self, other, "DIA_Addon_Cavalorn_MeetingIsRunning_08_00"); //Witaj w Kręgu, przyjacielu.
      DIA_Addon_Cavalorn_MeetingIsRunning_OneTime = TRUE;
   }
   else
   {
      AI_Output   (self, other, "DIA_Addon_Gaan_MeetingIsRunning_08_01"); //Vatras da ci kolejne zadanie.
   };
   AI_StopProcessInfos (self);
};

///////////////////////////////////////////////////////////////////////
//   Info Hallo
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_HALLO      (C_INFO)
{
   npc       =    Bau_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_HALLO_Condition;
   information    =    DIA_Addon_Cavalorn_HALLO_Info;

   description    =    "Jakieś kłopoty?";
};

func int DIA_Addon_Cavalorn_HALLO_Condition ()
{
   return TRUE;
};

func void DIA_Addon_Cavalorn_HALLO_Info ()
{
   AI_Output         (other, self, "DIA_Addon_Cavalorn_HALLO_15_00"); //Jakieś kłopoty?
   AI_Output         (self, other, "DIA_Addon_Cavalorn_HALLO_08_01"); //Do diabła. Nie wiem, gdzie się ukrywają. Zabijesz jednego, ale zaraz wracają.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_HALLO_08_02"); //Chwila. Ja ciebie znam. To ty ciągle żebrałeś u mnie o strzały, jeszcze w Górniczej Dolinie.
   
   Info_ClearChoices   (DIA_Addon_Cavalorn_HALLO);
   Info_AddChoice   (DIA_Addon_Cavalorn_HALLO, "Nazywasz się Cavalorn, tak?", DIA_Addon_Cavalorn_HALLO_Ja );
   Info_AddChoice   (DIA_Addon_Cavalorn_HALLO, "Nie przypominam sobie...", DIA_Addon_Cavalorn_HALLO_weissNicht );

};
func void DIA_Addon_Cavalorn_HALLO_weissNicht ()
{
   AI_Output         (other, self, "DIA_Addon_Cavalorn_HALLO_weissNicht_15_00"); //Nie przypominam sobie...
   AI_Output         (self, other, "DIA_Addon_Cavalorn_HALLO_weissNicht_08_01"); //Daj spokój! Nauczyłem cię łucznictwa i skradania się w mojej chatce niedaleko Starego Obozu! Przypominasz sobie?

};

func void DIA_Addon_Cavalorn_HALLO_Ja ()
{
   AI_Output         (other, self, "DIA_Addon_Cavalorn_HALLO_Ja_15_00"); //Nazywasz się Cavalorn, tak?
   AI_Output         (self, other, "DIA_Addon_Cavalorn_HALLO_Ja_08_01"); //Ach, nie zapomniałeś o mnie. Koniec końców obaj przeszliśmy przez tę przeklętą kolonię.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_HALLO_Ja_08_02"); //Dokąd idziesz?
   
   Info_ClearChoices   (DIA_Addon_Cavalorn_HALLO);
   Info_AddChoice   (DIA_Addon_Cavalorn_HALLO, "Nie mam określonego celu.", DIA_Addon_Cavalorn_HALLO_keinZiel );
   Info_AddChoice   (DIA_Addon_Cavalorn_HALLO, "Z powrotem do Górniczej Doliny.", DIA_Addon_Cavalorn_HALLO_Bauern );

   if (Mil_310_Stadtwache.aivar[AIV_PASSGATE] == FALSE)
   {
      Info_AddChoice   (DIA_Addon_Cavalorn_HALLO, "Do miasta.", DIA_Addon_Cavalorn_HALLO_Stadt );
   };
};
func void DIA_Addon_Cavalorn_HALLO_Stadt ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_HALLO_Stadt_15_00"); //Do miasta.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_HALLO_Stadt_08_01"); //Ach, też do miasta.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_HALLO_Stadt_08_02"); //Miałbyś kłopoty ze strażą. Teraz, gdy aż roi się tu od bandytów, nie każdy może wejść do miasta.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_HALLO_Stadt_08_03"); //Kilka dni temu przechodził tędy jeden ze starych Psioników z Górniczej Doliny. Mówił, że może wchodzić i wychodzić z Khorinis, kiedy tylko chce.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_HALLO_Stadt_08_04"); //Poszedł do doliny pod tą dużą wieżą. Gdzieś w okolicy wodospadu musi być przejście.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_HALLO_Stadt_08_05"); //Może powinieneś z nim porozmawiać.
   Info_ClearChoices   (DIA_Addon_Cavalorn_HALLO);
};

func void DIA_Addon_Cavalorn_HALLO_Bauern ()
{
   AI_Output         (other, self, "DIA_Addon_Cavalorn_HALLO_Bauern_15_00"); //Z powrotem do Górniczej Doliny.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_HALLO_Bauern_08_01"); //Naprawdę? Hmm. Szkoda, że nie mogę z tobą iść, ale muszę załatwić kilka spraw.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_HALLO_Bauern_08_02"); //Jeżeli dostaniesz się do Górniczej Doliny, sprawdź, czy moja chata jeszcze stoi, dobrze? Pewnego dnia chciałbym tam wrócić.
   
   MIS_Addon_Cavalorn_TheHut = LOG_RUNNING;   
   Log_CreateTopic (TOPIC_Addon_CavalornTheHut, LOG_MISSION);
   Log_SetTopicStatus(TOPIC_Addon_CavalornTheHut, LOG_RUNNING);
   B_LogEntry (TOPIC_Addon_CavalornTheHut,"Cavalorn chce, żebym sprawdził, czy w Górniczej Dolinie wciąż stoi jego stara chata. Z tego, co pamiętam, znajdowała się ona na wzgórzach na zachód od Starego Obozu. Wydaje mi się, że coś tam mogło zostać.");
   
   Info_ClearChoices   (DIA_Addon_Cavalorn_HALLO);
};

func void DIA_Addon_Cavalorn_HALLO_keinZiel ()
{
   AI_Output         (other, self, "DIA_Addon_Cavalorn_HALLO_keinZiel_15_00"); //Nie mam określonego celu.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_HALLO_keinZiel_08_01"); //Nie chcesz powiedzieć, co? Nie ma sprawy.

   Info_ClearChoices   (DIA_Addon_Cavalorn_HALLO);
};

///////////////////////////////////////////////////////////////////////
//   Info Beutel
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_Beutel      (C_INFO)
{
   npc       =    Bau_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_Beutel_Condition;
   information    =    DIA_Addon_Cavalorn_Beutel_Info;

   description    =    "Byłem w twojej chacie w Górniczej Dolinie.";
};

func int DIA_Addon_Cavalorn_Beutel_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_HALLO))
   && ((Npc_HasItems (other,ItSe_ADDON_CavalornsBeutel))||(SC_OpenedCavalornsBeutel == TRUE))
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_Beutel_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_Beutel_15_00"); //Byłem w twojej chacie w Górniczej Dolinie.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Beutel_08_01"); //A zatem jeszcze stoi.
   if (MIS_Addon_Cavalorn_TheHut == LOG_RUNNING)
   {
      AI_Output   (other, self, "DIA_Addon_Cavalorn_Beutel_15_02"); //Tak. I wiem, co stamtąd chciałeś.
   };
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Beutel_08_03"); //Udało ci się to znaleźć?
   AI_Output   (other, self, "DIA_Addon_Cavalorn_Beutel_15_04"); //Jeżeli mówisz o torbie pełnej rudy... Tak, mam ją.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Beutel_08_05"); //Ale z ciebie spryciula, wiesz o tym?
   if (MIS_Addon_Cavalorn_TheHut == LOG_RUNNING)
   {
      AI_Output   (other, self, "DIA_Addon_Cavalorn_Beutel_15_06"); //A czego mógłbyś potrzebować z tej starej chaty? Nic tam nie zostało.
   };
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Beutel_08_07"); //Masz ją ze sobą? Dam ci za nią 100 sztuk złota.
   TOPIC_End_CavalornTheHut = TRUE;
   B_GivePlayerXP (XP_Ambient);
   Info_ClearChoices   (DIA_Addon_Cavalorn_Beutel);

   if (Npc_HasItems (other,ItSe_ADDON_CavalornsBeutel))
   {
      Info_AddChoice   (DIA_Addon_Cavalorn_Beutel, "Pewnie.", DIA_Addon_Cavalorn_Beutel_ja );
   }
   else if  (Npc_HasItems (other,ItMi_Nugget))
   {
      Info_AddChoice   (DIA_Addon_Cavalorn_Beutel, "Nie, ale mam kawałki rudy.", DIA_Addon_Cavalorn_Beutel_jaerz );
   };
   Info_AddChoice   (DIA_Addon_Cavalorn_Beutel, "Nie.", DIA_Addon_Cavalorn_Beutel_no );
};
func void DIA_Addon_Cavalorn_Beutel_back ()
{
   Info_ClearChoices   (DIA_Addon_Cavalorn_Beutel);
   AI_Output   (self, other, "DIA_Addon_Cavalorn_back_08_00"); //Mam nadzieję, że wkrótce ją odzyskam.
};
func void DIA_Addon_Cavalorn_Beutel_jaerz ()
{
   AI_Output         (other, self, "DIA_Addon_Cavalorn_Beutel_jaerz_15_00"); //Nie, ale mam kawałki rudy.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_Beutel_jaerz_08_01"); //Też dobrze.
   Info_ClearChoices   (DIA_Addon_Cavalorn_Beutel);
   Info_AddChoice   (DIA_Addon_Cavalorn_Beutel, DIALOG_BACK, DIA_Addon_Cavalorn_Beutel_Back );
   Info_AddChoice   (DIA_Addon_Cavalorn_Beutel, "A dlaczego ją zostawiłeś?", DIA_Addon_Cavalorn_Beutel_why );
};
func void DIA_Addon_Cavalorn_Beutel_ja ()
{
   AI_Output         (other, self, "DIA_Addon_Cavalorn_Beutel_ja_15_00"); //Pewnie.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_Beutel_ja_08_01"); //Świetnie.
   Info_ClearChoices   (DIA_Addon_Cavalorn_Beutel);
   Info_AddChoice   (DIA_Addon_Cavalorn_Beutel, DIALOG_BACK, DIA_Addon_Cavalorn_Beutel_Back );
   Info_AddChoice   (DIA_Addon_Cavalorn_Beutel, "A dlaczego ją zostawiłeś?", DIA_Addon_Cavalorn_Beutel_why );
};

func void DIA_Addon_Cavalorn_Beutel_no ()
{
   AI_Output         (other, self, "DIA_Addon_Cavalorn_Beutel_no_15_00"); //Nie.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_Beutel_no_08_01"); //Więc przynieś mi to! Koniec końców sam bym chyba poszedł po ten towar do tej przeklętej Górniczej Doliny.
   AI_Output         (other, self, "DIA_Addon_Cavalorn_Beutel_no_15_02"); //Jestem wzruszony.
   Info_ClearChoices   (DIA_Addon_Cavalorn_Beutel);
   Info_AddChoice   (DIA_Addon_Cavalorn_Beutel, DIALOG_BACK, DIA_Addon_Cavalorn_Beutel_Back );
   Info_AddChoice   (DIA_Addon_Cavalorn_Beutel, "A dlaczego ją zostawiłeś?", DIA_Addon_Cavalorn_Beutel_why );
};

func void DIA_Addon_Cavalorn_Beutel_why ()
{
   AI_Output         (other, self, "DIA_Addon_Cavalorn_Beutel_why_15_00"); //A dlaczego ją zostawiłeś?
   AI_Output         (self, other, "DIA_Addon_Cavalorn_Beutel_why_08_01"); //Kto mógłby przypuszczać, że w Khorinis ruda jest tak cenna.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_Beutel_why_08_02"); //W kolonii za głupi kawałek rudy nie dostałbyś nawet miejsca do spania.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_Beutel_why_08_03"); //W porcie można dostać po głowie za kawałek rudy.
};

///////////////////////////////////////////////////////////////////////
//   Info ErzGeben
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_ErzGeben      (C_INFO)
{
   npc       =    Bau_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_ErzGeben_Condition;
   information    =    DIA_Addon_Cavalorn_ErzGeben_Info;

   description    =    "Daj mi 100 sztuk złota, a przyniosę ci tę rudę.";
};

func int DIA_Addon_Cavalorn_ErzGeben_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_Beutel))
   && ((Npc_HasItems (other,ItSe_ADDON_CavalornsBeutel))||(Npc_HasItems (other,ItMi_Nugget)))
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_ErzGeben_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_ErzGeben_15_00"); //Daj mi 100 sztuk złota, a przyniosę ci tę rudę.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_ErzGeben_08_01"); //Zgoda. Masz.
   CreateInvItems (self, ItMi_Gold, 100);                           
   B_GiveInvItems (self, other, ItMi_Gold, 100);      

   if (B_GiveInvItems (other, self, ItSe_ADDON_CavalornsBeutel,1) == FALSE)
      {
         B_GiveInvItems (other, self, ItMi_Nugget,1);
      };
   AI_Output   (self, other, "DIA_Addon_Cavalorn_ErzGeben_08_02"); //Prawdziwy z ciebie przyjaciel. Dziękuję.
   MIS_Addon_Cavalorn_TheHut = LOG_SUCCESS;
   B_GivePlayerXP (XP_Addon_CavalornsBeutel);
};

///////////////////////////////////////////////////////////////////////
//   Info WasMachstdu
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_WASMACHSTDU      (C_INFO)
{
   npc       =    Bau_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_WASMACHSTDU_Condition;
   information    =    DIA_Addon_Cavalorn_WASMACHSTDU_Info;

   description    =    "Co tu robisz?";
};

func int DIA_Addon_Cavalorn_WASMACHSTDU_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_HALLO))
   && (MIS_Addon_Nefarius_BringMissingOrnaments == 0)
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_WASMACHSTDU_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_WASMACHSTDU_15_00"); //Co tu robisz?
   AI_Output   (self, other, "DIA_Addon_Cavalorn_WASMACHSTDU_08_01"); //Utknąłem. Gdyby nie ci przeklęci bandyci, w ogóle by mnie tu nie było.
   
};

///////////////////////////////////////////////////////////////////////
//   Info Banditen
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_Banditen      (C_INFO)
{
   npc       =    Bau_4300_Addon_Cavalorn;
   nr       =    10;
   condition    =    DIA_Addon_Cavalorn_Banditen_Condition;
   information    =    DIA_Addon_Cavalorn_Banditen_Info;

   description    =    "O co chodzi z tymi bandytami?";
};

func int DIA_Addon_Cavalorn_Banditen_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_WASMACHSTDU))
   && (MIS_Addon_Nefarius_BringMissingOrnaments == 0)
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_Banditen_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_Banditen_15_00"); //O co chodzi z tymi bandytami?
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Banditen_08_01"); //Przespałeś cały ostatni tydzień?
   AI_Output   (other, self, "DIA_Addon_Cavalorn_Banditen_15_02"); //Ech...
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Banditen_08_03"); //Mówię o tych szczurach z kolonii karnej - rozleźli się po całej okolicy; łupią i mordują.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Banditen_08_04"); //Cieszę się, że darowali mi życie. Nie uważałem i dostałem w czaszkę.
   
   if (C_BragoBanditsDead () == FALSE)
   {
      AI_Output   (self, other, "DIA_Addon_Cavalorn_Banditen_08_05"); //Nie wiem, jak mam teraz odzyskać swoje rzeczy.
   };
};

///////////////////////////////////////////////////////////////////////
//   Info ARTEFAKT
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_ARTEFAKT      (C_INFO)
{
   npc       =    BAU_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_ARTEFAKT_Condition;
   information    =    DIA_Addon_Cavalorn_ARTEFAKT_Info;

   description    =    "Zostałeś obrabowany przez bandytów?";
};

func int DIA_Addon_Cavalorn_ARTEFAKT_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_Banditen))
   && (MIS_Addon_Cavalorn_KillBrago != LOG_SUCCESS)
   && (MIS_Addon_Nefarius_BringMissingOrnaments == 0)
   && (MIS_Addon_Cavalorn_Letter2Vatras != LOG_SUCCESS)
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_ARTEFAKT_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_ARTEFAKT_15_00"); //Zostałeś obrabowany przez bandytów?
   AI_Output   (self, other, "DIA_Addon_Cavalorn_ARTEFAKT_08_01"); //Tak. Ogłuszyli mnie i zostawili jako żarcie dla goblinów.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_ARTEFAKT_08_02"); //To były piekielnie ważne rzeczy. List i cała moja gotówka. Muszę je odzyskać.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_ARTEFAKT_08_03"); //Nie pójdę tam jednak bez wsparcia. Ta tchórzliwa hałastra bandytów...
};

///////////////////////////////////////////////////////////////////////
//   Info HELFEN
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_HELFEN      (C_INFO)
{
   npc       =    BAU_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_HELFEN_Condition;
   information    =    DIA_Addon_Cavalorn_HELFEN_Info;

   description    =    "Mogę ci pomóc z tymi bandytami?";
};

func int DIA_Addon_Cavalorn_HELFEN_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_ARTEFAKT))
   && (MIS_Addon_Nefarius_BringMissingOrnaments == 0)
   && (MIS_Addon_Cavalorn_Letter2Vatras != LOG_SUCCESS)
   && (C_BragoBanditsDead () == FALSE)//Joly:VORSICHT!!!!!muss als letztes Stehen
   {
      return TRUE;
   };
};

func void DIA_Addon_Cavalorn_HELFEN_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_HELFEN_15_00"); //Mogę ci pomóc z tymi bandytami?

   if (Npc_HasEquippedArmor(other) == FALSE)
   && (hero.guild == GIL_NONE)
   {
      AI_Output   (self, other, "DIA_Addon_Cavalorn_HELFEN_08_01"); //Może. Ale sądząc po twoim mizernym wyglądzie, mogę powiedzieć, że od tygodni nie miałeś w rękach prawdziwego miecza.
   };
   
   AI_Output   (self, other, "DIA_Addon_Cavalorn_HELFEN_08_02"); //No cóż. Muszę chyba przyjąć twoją ofertę. Nie mam zbyt wiele czasu.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_HELFEN_08_03"); //Dobra, słuchaj. W dole tej ścieżki jest jedna z tych brudnych dziur, w których ukrywają się bandyci.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_HELFEN_08_04"); //To te łotry ukradły moje rzeczy.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_HELFEN_08_05"); //Daj znać, gdy będziesz gotów. Ruszymy za tymi szczurami!
   
   MIS_Addon_Cavalorn_KillBrago = LOG_RUNNING;
   
   Log_CreateTopic (TOPIC_Addon_KillBrago, LOG_MISSION);
   Log_SetTopicStatus(TOPIC_Addon_KillBrago, LOG_RUNNING);
   B_LogEntry (TOPIC_Addon_KillBrago,"Bandyci ukradli coś cennego Cavalornowi. Chce, żebyśmy razem ich zabili.");

   self.aivar[AIV_PARTYMEMBER] = TRUE;
};

///////////////////////////////////////////////////////////////////////
//   Info AUSRUESTUNG
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_AUSRUESTUNG      (C_INFO)
{
   npc       =    BAU_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_AUSRUESTUNG_Condition;
   information    =    DIA_Addon_Cavalorn_AUSRUESTUNG_Info;

   description    =    "Potrzebuję lepszego sprzętu.";
};

func int DIA_Addon_Cavalorn_AUSRUESTUNG_Condition ()
{
   if    (MIS_Addon_Cavalorn_KillBrago != 0)
   && (MIS_Addon_Nefarius_BringMissingOrnaments == 0)
   {
      return TRUE;
   };
};

func void DIA_Addon_Cavalorn_AUSRUESTUNG_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_AUSRUESTUNG_15_00"); //Potrzebuję lepszego sprzętu.
      
      if (C_BragoBanditsDead () == FALSE)
      {
         AI_Output   (self, other, "DIA_Addon_Cavalorn_AUSRUESTUNG_08_01"); //Te świnie nie zostawiły mi zbyt wiele.
      };
      
   AI_Output   (self, other, "DIA_Addon_Cavalorn_AUSRUESTUNG_08_02"); //Mogę ci dać nóż na wilki. Wystarczy?
   AI_Output   (other, self, "DIA_Addon_Cavalorn_AUSRUESTUNG_15_03"); //Tak, nóż będzie dobry.

   CreateInvItems (self, ItMW_Addon_Knife01, 1);                           
   B_GiveInvItems (self, other, ItMW_Addon_Knife01, 1);               
   
   AI_Output   (other, self, "DIA_Addon_Cavalorn_AUSRUESTUNG_15_04"); //A co z leczeniem?
   AI_Output   (self, other, "DIA_Addon_Cavalorn_AUSRUESTUNG_08_05"); //Zostały mi dwie mikstury uzdrawiające. Chcesz?
   AI_Output   (other, self, "DIA_Addon_Cavalorn_AUSRUESTUNG_15_06"); //Pewnie. Wezmę je.
   
   CreateInvItems (self, ItPo_Health_01, 2);                           
   B_GiveInvItems (self, other, ItPo_Health_01, 2);               

};
[/codebox]
[codebox]
///////////////////////////////////////////////////////////////////////
//   Info LETSKILLBANDITS
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_LETSKILLBANDITS      (C_INFO)
{
   npc       =    BAU_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_LETSKILLBANDITS_Condition;
   information    =    DIA_Addon_Cavalorn_LETSKILLBANDITS_Info;

   description    =    "Chodźmy zabić tych gnojków.";
};

func int DIA_Addon_Cavalorn_LETSKILLBANDITS_Condition ()
{
   if (MIS_Addon_Cavalorn_KillBrago == LOG_RUNNING)
   && (MIS_Addon_Nefarius_BringMissingOrnaments == 0)
   && (MIS_Addon_Cavalorn_Letter2Vatras != LOG_SUCCESS)
   && (C_BragoBanditsDead () == FALSE)   //Joly:VORSICHT!!!!!muss als letztes Stehen
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_LETSKILLBANDITS_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_LETSKILLBANDITS_15_00"); //Chodźmy zabić tych gnojków.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_LETSKILLBANDITS_08_01"); //Dobra. Tylko mnie osłaniaj, jasne?
   AI_Output   (self, other, "DIA_Addon_Cavalorn_LETSKILLBANDITS_08_02"); //A teraz czeka ich paskudna niespodzianka.
   AI_StopProcessInfos (self);
   Npc_ExchangeRoutine   (self,"KillBandits");

   if (Bdt_1013_Away == FALSE)
   {
      Ambusher_1013.aivar[AIV_EnemyOverride] = FALSE;
   };
   Ambusher_1014.aivar[AIV_EnemyOverride] = FALSE;
   Ambusher_1015.aivar[AIV_EnemyOverride] = FALSE;
};

func void B_Addon_Cavalorn_VatrasBrief ()
{
   
   if (MIS_Addon_Cavalorn_Letter2Vatras != LOG_SUCCESS)
   {
      AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_00"); //Przynajmniej mogę wykonać zadanie. I tak zmarnowałem już zbyt wiele czasu.
      AI_Output   (other, self, "DIA_Addon_Cavalorn_VatrasBrief_15_01"); //Jakie zadanie...?
      AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_02"); //Ech. Muszę się dostać do miasta, a później...
      AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_03"); //Nie wiem tylko, jak mam zdążyć.
      AI_Output   (other, self, "DIA_Addon_Cavalorn_VatrasBrief_15_04"); //A co ze mną?
      AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_05"); //Hmm. Czemu nie. Mógłbyś zanieść list do miasta.
   };
   
   AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_06"); //Dzięki temu będę miał czas, żeby pozbierać sprzęt.

   if (MIS_Addon_Cavalorn_Letter2Vatras != LOG_SUCCESS)
   {
      AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_07"); //Jeden z tych bandytów powinien mieć list w kieszeni.
      AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_08"); //Zanieś go do miasta i oddaj magowi Kręgu Wody, Vatrasowi. Znajdziesz go w świątyni Adanosa. Naucza tam całymi dniami.
      AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_09"); //Powiedz mu, że nie zdążyłem na czas.
      AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_10"); //A gdyby cię zapytał, gdzie jestem, powiedz, że w drodze na miejsce spotkania, dobrze?
      B_LogEntry (TOPIC_Addon_KDW,"Maga Wody, Vatrasa, można znaleźć w portowym mieście Khorinis. Głosi tam kazania w świątyni Adanosa.");
   };
   
   if (Npc_HasEquippedArmor(other) == FALSE)
   && (hero.guild == GIL_NONE)
   && (Mil_310_schonmalreingelassen == FALSE)
   && (Mil_333_schonmalreingelassen == FALSE)
   {
      AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_11"); //Aha, jeszcze jedno: kup sobie od jakiegoś wieśniaka porządne ubranie.
      AI_Output   (self, other, "DIA_Addon_Cavalorn_VatrasBrief_08_12"); //Inaczej wezmą cię za bandytę. Masz, tu jest parę monet.
      CreateInvItems (self, ItMi_Gold, 50);                           
      B_GiveInvItems (self, other, ItMi_Gold, 50);   
   };
   
   MIS_Addon_Cavalorn_KillBrago = LOG_SUCCESS;

   if (MIS_Addon_Cavalorn_Letter2Vatras == 0)
   {
      MIS_Addon_Cavalorn_Letter2Vatras = LOG_RUNNING;
   };

   Npc_ExchangeRoutine   (self,"Start");
   B_GivePlayerXP (XP_Addon_Cavalorn_KillBrago);
   
   Log_CreateTopic (TOPIC_Addon_KDW, LOG_MISSION);
   Log_SetTopicStatus(TOPIC_Addon_KDW, LOG_RUNNING);

   self.aivar[AIV_PARTYMEMBER] = FALSE;
};

///////////////////////////////////////////////////////////////////////
//   Info BragoKilled
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_BragoKilled      (C_INFO)
{
   npc       =    BAU_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_BragoKilled_Condition;
   information    =    DIA_Addon_Cavalorn_BragoKilled_Info;

   important    =    TRUE;
};

func int DIA_Addon_Cavalorn_BragoKilled_Condition ()
{
   if    (Npc_GetDistToWP(self,"NW_XARDAS_BANDITS_LEFT")<500)
   &&    (MIS_Addon_Cavalorn_KillBrago == LOG_RUNNING)
   &&   (C_BragoBanditsDead () == TRUE)//Joly:VORSICHT!!!!!muss als letztes Stehen
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_BragoKilled_Info ()
{
   AI_Output   (self, other, "DIA_Addon_Cavalorn_BragoKilled_08_00"); //No to załatwione. Ech. Mogli ze mną nie zaczynać.
   
   B_Addon_Cavalorn_VatrasBrief ();
   
};

///////////////////////////////////////////////////////////////////////
//   Info PCKilledBrago
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_PCKilledBrago      (C_INFO)
{
   npc       =    BAU_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_PCKilledBrago_Condition;
   information    =    DIA_Addon_Cavalorn_PCKilledBrago_Info;

   description    =    "Bandyci są już martwi.";
};

func int DIA_Addon_Cavalorn_PCKilledBrago_Condition ()
{
   if    (MIS_Addon_Cavalorn_KillBrago == 0)
   &&  (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_Banditen))
   &&   (C_BragoBanditsDead () == TRUE)    //Joly:VORSICHT!!!!!muss als letztes Stehen
   {
      return TRUE;
   };
};

func void DIA_Addon_Cavalorn_PCKilledBrago_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_PCKilledBrago_15_00"); //Bandyci są już martwi.

   B_Addon_Cavalorn_VatrasBrief ();

};

///////////////////////////////////////////////////////////////////////
//   Info JUNGS
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_JUNGS      (C_INFO)
{
   npc       =    BAU_4300_Addon_Cavalorn;
   nr       =    2;
   condition    =    DIA_Addon_Cavalorn_JUNGS_Condition;
   information    =    DIA_Addon_Cavalorn_JUNGS_Info;

   description    =    "Masz na sobie interesujący pancerz.";
};

func int DIA_Addon_Cavalorn_JUNGS_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_HALLO))
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_JUNGS_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_JUNGS_15_00"); //Masz na sobie interesujący pancerz. Nie należysz już do Cieni?
   AI_Output   (self, other, "DIA_Addon_Cavalorn_JUNGS_08_01"); //Cieni? Od upadku bariery już nie istnieją.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_JUNGS_08_02"); //Gdy tylko mogliśmy opuścić Górniczą Dolinę, nie było powodu, żeby tam dłużej zostawać.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_JUNGS_08_03"); //Teraz pracuję dla magów wody. Jestem członkiem Wodnego Kręgu.
   
   SC_KnowsRanger = TRUE;

   Log_CreateTopic (TOPIC_Addon_RingOfWater, LOG_MISSION);
   Log_SetTopicStatus(TOPIC_Addon_RingOfWater, LOG_RUNNING);
   B_LogEntry (TOPIC_Addon_RingOfWater,"Cavalorn powiedział mi, że należy do grupy zwącej się Wodny Krąg.");

   Cavalorn_RangerHint = TRUE;
};

///////////////////////////////////////////////////////////////////////
//   Ring
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_Ring      (C_INFO)
{
   npc          = BAU_4300_Addon_Cavalorn;
   nr          = 5;
   condition   = DIA_Addon_Cavalorn_Ring_Condition;
   information   = DIA_Addon_Cavalorn_Ring_Info;
   permanent    = FALSE;
   description   = "Powiedz mi coś więcej o Wodnym Kręgu!";
};
func int DIA_Addon_Cavalorn_Ring_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_JUNGS))
   {
      return TRUE;
   };
};
func void DIA_Addon_Cavalorn_Ring_Info ()
{
   AI_Output (other, self, "DIA_Addon_Cavalorn_Ring_15_00"); //Powiedz mi coś więcej o Wodnym Kręgu!
   AI_Output (self, other, "DIA_Addon_Cavalorn_Ring_08_01"); //Nie wolno mi o tym mówić.
   AI_Output (self, other, "DIA_Addon_Cavalorn_Ring_08_02"); //Mogę cię jedynie wysłać do Vartasa. On reprezentuje Magów Wody w Khorinis.
   AI_Output (self, other, "DIA_Addon_Cavalorn_Ring_08_03"); //Najlepiej będzie, jak z nim porozmawiasz. Powiedz, że ja cię przysłałem.
   AI_Output (self, other, "DIA_Addon_Cavalorn_Ring_08_04"); //Może pozwoli ci wstąpić do Kręgu. Bardzo potrzeba nam dobrych ludzi...
   B_LogEntry (TOPIC_Addon_RingOfWater,"Vatras, Mag Wody, może powiedzieć mi więcej o Wodnym Kręgu.");
};
///////////////////////////////////////////////////////////////////////
//   Gegner
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_Feinde (C_INFO)
{
   npc          = BAU_4300_Addon_Cavalorn;
   nr          = 6;
   condition   = DIA_Addon_Cavalorn_Feinde_Condition;
   information   = DIA_Addon_Cavalorn_Feinde_Info;
   permanent    = FALSE;
   description   = "Czy ty i twoi ludzie nie byliście czasem przeciwnikami Magów Wody?";
};
func int DIA_Addon_Cavalorn_Feinde_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_JUNGS))
   {
      return TRUE;
   };
};
func void DIA_Addon_Cavalorn_Feinde_Info ()
{
   AI_Output (other, self, "DIA_Addon_Cavalorn_Feinde_15_00"); //Czy ty i twoi ludzie nie byliście czasem przeciwnikami Magów Wody?
   AI_Output (self, other, "DIA_Addon_Cavalorn_Feinde_08_01"); //Szalona przeszłość jest już za nami. Nie ma już Nowego ani Starego Obozu.
   AI_Output (self, other, "DIA_Addon_Cavalorn_Feinde_08_02"); //A teraz, gdy nie ma już kolonii karnej, każdy odpowiada za siebie.
   AI_Output (self, other, "DIA_Addon_Cavalorn_Feinde_08_03"); //Większość z nas - byłych więźniów - nie została uniewinniona.
   AI_Output (self, other, "DIA_Addon_Cavalorn_Feinde_08_04"); //Magowie Wody zdołali uzyskać dla mnie ułaskawienie i mogę teraz poruszać się swobodnie.
};
///////////////////////////////////////////////////////////////////////
//   Wo KdW
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_KdWTask (C_INFO)
{
   npc          = BAU_4300_Addon_Cavalorn;
   nr          = 6;
   condition   = DIA_Addon_Cavalorn_KdWTask_Condition;
   information   = DIA_Addon_Cavalorn_KdWTask_Info;
   permanent    = FALSE;
   description   = "Co porabiają teraz Magowie Wody?";
};
func int DIA_Addon_Cavalorn_KdWTask_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_JUNGS))
   && (MIS_Addon_Nefarius_BringMissingOrnaments == 0)
   {
      return TRUE;
   };
};
func void DIA_Addon_Cavalorn_KdWTask_Info ()
{
   AI_Output (other, self, "DIA_Addon_Cavalorn_KdWTask_15_00"); //Co porabiają teraz Magowie Wody?
   AI_Output (self, other, "DIA_Addon_Cavalorn_KdWTask_08_01"); //Mają wielki plan. Chodzi o niezbadaną część wyspy.
   AI_Output (other, self, "DIA_Addon_Cavalorn_KdWTask_15_02"); //Niezbadaną część? Gdzie ona jest?
   AI_Output (self, other, "DIA_Addon_Cavalorn_KdWTask_08_03"); //Nie mogę ci powiedzieć nic więcej. Porozmawiaj z Vatrasem w Khorinis.
};   

///////////////////////////////////////////////////////////////////////
//   Info BroughtLetter
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_BroughtLetter      (C_INFO)
{
   npc       =    BAU_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_BroughtLetter_Condition;
   information    =    DIA_Addon_Cavalorn_BroughtLetter_Info;

   description    =    "Dałem Vatrasowi twój list.";
};

func int DIA_Addon_Cavalorn_BroughtLetter_Condition ()
{
   if (MIS_Addon_Cavalorn_Letter2Vatras == LOG_SUCCESS)
   && (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_JUNGS))
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_BroughtLetter_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_BroughtLetter_15_00"); //Dałem Vatrasowi twój list.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_BroughtLetter_08_01"); //Nie oczekiwałem od ciebie niczego innego. Dziękuję.
   B_GivePlayerXP (XP_Ambient);
};


///////////////////////////////////////////////////////////////////////
//   Info Ornament
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_Ornament      (C_INFO)
{
   npc       =    Bau_4300_Addon_Cavalorn;
   nr       =    2;
   condition    =    DIA_Addon_Cavalorn_Ornament_Condition;
   information    =    DIA_Addon_Cavalorn_Ornament_Info;

   description    =    "Szukasz czegoś?";
};

func int DIA_Addon_Cavalorn_Ornament_Condition ()
{
   if (MIS_Addon_Nefarius_BringMissingOrnaments == LOG_RUNNING)
   && (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_HALLO))
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_Ornament_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_Ornament_15_00"); //Szukasz czegoś?
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Ornament_08_01"); //To takie oczywiste? Tak, Magowie Wody kazali mi szukać zgubionych ornamentów.
   AI_Output   (other, self, "DIA_Addon_Cavalorn_Ornament_15_02"); //Interesujący zbieg okoliczności. Otrzymałem taki sam rozkaz od Nefariusa.

   if (SC_KnowsRanger == TRUE)
   {
      AI_Output   (self, other, "DIA_Addon_Cavalorn_Ornament_08_03"); //Należysz więc do Wodnego Kręgu?
      if (SC_IsRanger == TRUE)
      {
         AI_Output   (other, self, "DIA_Addon_Cavalorn_Ornament_15_04"); //Tak.
      }
      else
      {
         AI_Output   (other, self, "DIA_Addon_Cavalorn_Ornament_15_05"); //Jeszcze nie, ale pracuję nad tym.
      };
   };
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Ornament_08_06"); //To dobrze. W takim razie nie muszę tego robić sam.
   AI_Output   (other, self, "DIA_Addon_Cavalorn_Ornament_15_07"); //Znalazłeś już jakiś ornament?
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Ornament_08_08"); //Znam miejsce, w którym powinniśmy coś znaleźć.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Ornament_08_09"); //Ten kamienny krąg może być jedną z tych budowli, które opisał Nefarius.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Ornament_08_10"); //Teraz musimy tylko znaleźć mechanizm.
};
///////////////////////////////////////////////////////////////////////
//   Info Triggered
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_Triggered      (C_INFO)
{
   npc       =    Bau_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_Triggered_Condition;
   information    =    DIA_Addon_Cavalorn_Triggered_Info;

   description    =    "Uruchomiłem mechanizm. Nic się nie stało.";
};

func int DIA_Addon_Cavalorn_Triggered_Condition ()
{
   if (MIS_Addon_Nefarius_BringMissingOrnaments == LOG_RUNNING)
   && (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_Ornament))
   && (ORNAMENT_SWITCHED_FARM == TRUE)
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_Triggered_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_Triggered_15_00"); //Uruchomiłem mechanizm. Nic się nie stało.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Triggered_08_01"); //W takim razie wieśniacy Lobarta mieli rację.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Triggered_08_02"); //Powiedzieli, że ktoś już kręcił się przy tych kamieniach.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Triggered_08_03"); //Nagle znikąd pojawił się kamienny strażnik i ich zaatakował.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Triggered_08_04"); //Farmerzy wezwali straż, żołnierze paladynów, a ci przyszli i zniszczyli potwora.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_Triggered_08_05"); //Przeszukałem już cały teren. Jeżeli był tu jakiś ornament, mają go teraz paladyni.
   
   Info_ClearChoices   (DIA_Addon_Cavalorn_Triggered);
   Info_AddChoice   (DIA_Addon_Cavalorn_Triggered, "Jeden z nas musi pójść do górnego miasta.", DIA_Addon_Cavalorn_Triggered_Pal );
   Info_AddChoice   (DIA_Addon_Cavalorn_Triggered, "W takim razie pójdę do nich i odzyskam ornament.", DIA_Addon_Cavalorn_Triggered_OBack );
};
func void B_Cavalorn_Triggered_Wohin ()
{
   AI_Output         (self, other, "DIA_Addon_Cavalorn_Triggered_Wohin_08_00"); //Pójdę do miasta. Spotkamy się u Vatrasa.
   AI_StopProcessInfos (self);
   Npc_ExchangeRoutine   (self,"Stadt");
   
   Log_CreateTopic (TOPIC_Addon_Ornament, LOG_MISSION);
   Log_SetTopicStatus(TOPIC_Addon_Ornament, LOG_RUNNING);
   B_LogEntry (TOPIC_Addon_Ornament,"Jeden z brakujących fragmentów ornamentu jest w posiadaniu paladynów w górnym mieście.");

   MIS_Addon_Cavalorn_GetOrnamentFromPAL = LOG_RUNNING;
   self.flags = 0;
};

func void DIA_Addon_Cavalorn_Triggered_OBack ()
{
   AI_UnequipArmor   (self);
   CreateInvItems (self, ITAR_BAU_L, 1);   
   Npc_RemoveInvItems   (self, ITAR_RANGER_Addon,   Npc_HasItems (self, ITAR_RANGER_Addon ) );
   Npc_RemoveInvItems   (self, ITAR_Fake_RANGER,   Npc_HasItems (self, ITAR_Fake_RANGER ) );
   AI_EquipBestArmor (self);
   AI_Output         (other, self, "DIA_Addon_Cavalorn_Triggered_OBack_15_00"); //W takim razie pójdę do nich i odzyskam ornament.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_Triggered_OBack_08_01"); //Dobrze.
   B_Cavalorn_Triggered_Wohin ();
};

func void DIA_Addon_Cavalorn_Triggered_Pal ()
{
   AI_UnequipArmor   (self);
   CreateInvItems (self, ITAR_BAU_L, 1);   
   Npc_RemoveInvItems   (self, ITAR_RANGER_Addon,   Npc_HasItems (self, ITAR_RANGER_Addon ) );
   Npc_RemoveInvItems   (self, ITAR_Fake_RANGER,   Npc_HasItems (self, ITAR_Fake_RANGER ) );
   AI_EquipBestArmor (self);
   AI_Output         (other, self, "DIA_Addon_Cavalorn_Triggered_Pal_15_00"); //Jeden z nas musi pójść do górnego miasta.
   AI_Output         (self, other, "DIA_Addon_Cavalorn_Triggered_Pal_08_01"); //Nie mam na to czasu. Ty musisz to zrobić.
   B_Cavalorn_Triggered_Wohin ();
};

///////////////////////////////////////////////////////////////////////
//   Info GotOrnaFromHagen
///////////////////////////////////////////////////////////////////////
instance DIA_Addon_Cavalorn_GotOrnaFromHagen      (C_INFO)
{
   npc       =    Bau_4300_Addon_Cavalorn;
   nr       =    5;
   condition    =    DIA_Addon_Cavalorn_GotOrnaFromHagen_Condition;
   information    =    DIA_Addon_Cavalorn_GotOrnaFromHagen_Info;

   description    =    "Dostałem brakujący ornament od Lorda Hagena.";
};

func int DIA_Addon_Cavalorn_GotOrnaFromHagen_Condition ()
{
   if (Lord_Hagen_GotOrnament == TRUE)
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_GotOrnaFromHagen_Info ()
{
   AI_Output   (other, self, "DIA_Addon_Cavalorn_GotOrnaFromHagen_15_00"); //Dostałem brakujący ornament od Lorda Hagena.
   AI_Output   (self, other, "DIA_Addon_Cavalorn_GotOrnaFromHagen_08_01"); //Widzisz? Wiedziałem, że mieli go paladyni.
   B_GivePlayerXP (XP_Ambient);
   MIS_Addon_Cavalorn_GetOrnamentFromPAL = LOG_SUCCESS;
};

// ************************************************************
//                        WannaLearn
// ************************************************************
instance DIA_Addon_Cavalorn_WannaLearn (C_INFO)
{
   npc          = BAU_4300_Addon_Cavalorn;
   nr          = 7;
   condition   = DIA_Addon_Cavalorn_WannaLearn_Condition;
   information   = DIA_Addon_Cavalorn_WannaLearn_Info;
   permanent    = FALSE;
   description   = "Możesz mnie czegoś nauczyć?";
};

func int DIA_Addon_Cavalorn_WannaLearn_Condition ()
{
   if (Npc_KnowsInfo (other, DIA_Addon_Cavalorn_Hallo))
   && (C_BragoBanditsDead () == TRUE)//Joly:VORSICHT!!!!!muss als letztes Stehen
      {
         return TRUE;
      };
};

func void DIA_Addon_Cavalorn_WannaLearn_Info ()
{
   AI_Output (other, self, "DIA_Addon_Cavalorn_WannaLearn_15_00"); //Możesz mnie czegoś nauczyć?
   AI_Output (self, other, "DIA_Addon_Cavalorn_WannaLearn_08_01"); //Pewnie. Przecież wiesz. Oj, chłopie, nieźle cię przegonili.
   AI_Output (self, other, "DIA_Addon_Cavalorn_WannaLearn_08_02"); //Niczego nie pamiętasz, prawda?
   
   Cavalorn_Addon_TeachPlayer = TRUE;
   Log_CreateTopic (Topic_OutTeacher,LOG_NOTE);
   B_LogEntry (Topic_OutTeacher, LogText_Addon_Cavalorn_Teach);
};

// ************************************************************
//                        TEACH
// ************************************************************
var int Addon_Cavalorn_Merke_Bow;
var int Addon_Cavalorn_Merke_1h;
// ------------------------------------------------------

instance DIA_Addon_Cavalorn_TEACH (C_INFO)
{
   npc          = BAU_4300_Addon_Cavalorn;
   nr          = 8;
   condition   = DIA_Addon_Cavalorn_TEACH_Condition;
   information   = DIA_Addon_Cavalorn_TEACH_Info;
   permanent    = TRUE;
   description   = "Chcę się czegoś od ciebie nauczyć.";
};

func int DIA_Addon_Cavalorn_TEACH_Condition ()
{
   if (Cavalorn_Addon_TeachPlayer == TRUE)
   {
      return TRUE;
   };
};

func VOID DIA_Addon_Cavalorn_TEACH_Choices ()
{
   Info_ClearChoices (DIA_Addon_Cavalorn_Teach);
   Info_AddChoice (DIA_Addon_Cavalorn_Teach, DIALOG_BACK, DIA_Addon_Cavalorn_Teach_Back);

   if (Npc_GetTalentSkill (other,NPC_TALENT_SNEAK) == FALSE)
         {
            Info_AddChoice      (DIA_Addon_Cavalorn_Teach, B_BuildLearnString("Skradanie się"   , B_GetLearnCostTalent(other, NPC_TALENT_SNEAK, 1))      ,DIA_Addon_Cavalorn_Teach_Sneak);
         };

   Info_AddChoice (DIA_Addon_Cavalorn_Teach, B_BuildLearnString(PRINT_LearnBow1, B_GetLearnCostTalent(other, NPC_TALENT_BOW, 1))    ,DIA_Addon_Cavalorn_Teach_Bow_1);
   Info_AddChoice (DIA_Addon_Cavalorn_Teach, B_BuildLearnString(PRINT_LearnBow5, B_GetLearnCostTalent(other, NPC_TALENT_BOW, 1)*5) ,DIA_Addon_Cavalorn_Teach_Bow_5);
   Info_AddChoice (DIA_Addon_Cavalorn_Teach, B_BuildLearnString(PRINT_Learn1h1   , B_GetLearnCostTalent(other, NPC_TALENT_1H, 1))    ,DIA_Addon_Cavalorn_Teach_1H_1);
   Info_AddChoice (DIA_Addon_Cavalorn_Teach, B_BuildLearnString(PRINT_Learn1h5   , B_GetLearnCostTalent(other, NPC_TALENT_1H, 1)*5)    ,DIA_Addon_Cavalorn_Teach_1H_5);
   
};
func void DIA_Addon_Cavalorn_TEACH_Info ()
{
   AI_Output (other, self, "DIA_Addon_Cavalorn_TEACH_15_00"); //Chcę się czegoś od ciebie nauczyć.
   AI_Output (self, other, "DIA_Addon_Cavalorn_TEACH_08_01"); //Pewnie. Co chcesz wiedzieć?
   
   Addon_Cavalorn_Merke_Bow = other.HitChance[NPC_TALENT_BOW];
   Addon_Cavalorn_Merke_1h =  other.HitChance[NPC_TALENT_1H];
   
   DIA_Addon_Cavalorn_TEACH_Choices ();
};

FUNC VOID DIA_Addon_Cavalorn_Teach_Sneak ()
{
   if (B_TeachThiefTalent (self, other, NPC_TALENT_SNEAK))
      {
         AI_Output         (self, other, "DIA_Addon_Cavalorn_Teach_Sneak_08_00"); //Na miękkich podeszwach mamy większe szanse podkraść się niezauważenie do przeciwnika.
      };

   DIA_Addon_Cavalorn_TEACH_Choices ();
};

FUNC VOID DIA_Addon_Cavalorn_Teach_BOW_1 ()
{
   B_TeachFightTalentPercent (self, other, NPC_TALENT_BOW, 1, 90);
   
   DIA_Addon_Cavalorn_TEACH_Choices ();
};

FUNC VOID DIA_Addon_Cavalorn_Teach_BOW_5 ()
{
   B_TeachFightTalentPercent (self, other, NPC_TALENT_BOW, 5, 90);
   
   DIA_Addon_Cavalorn_TEACH_Choices ();
};

FUNC VOID DIA_Addon_Cavalorn_Teach_1H_1 ()
{
   B_TeachFightTalentPercent (self, other, NPC_TALENT_1H, 1, 30);
   
   DIA_Addon_Cavalorn_TEACH_Choices ();
};

FUNC VOID DIA_Addon_Cavalorn_Teach_1H_5 ()
{
   B_TeachFightTalentPercent (self, other, NPC_TALENT_1H, 5, 30);

   DIA_Addon_Cavalorn_TEACH_Choices ();
};

FUNC VOID DIA_Addon_Cavalorn_Teach_Back ()
{
   if (Addon_Cavalorn_Merke_Bow < other.HitChance[NPC_TALENT_BOW])
   || (Addon_Cavalorn_Merke_1h  < other.HitChance[NPC_TALENT_1H])
   {
      AI_Output (self ,other,"DIA_Addon_Cavalorn_Teach_BACK_08_00"); //Od razu lepiej. Wiele zapomniałeś, ale doprowadzimy cię do formy.
   };

   Info_ClearChoices (DIA_Addon_Cavalorn_Teach);
};[/codebox]
co tu jest źle??

Podzieliłem skrypt, bo za długi był,
Adanos

Tomek

Tomek

Użytkownicy
Kapitan Rob
posty2181
Propsy2189
ProfesjaNierób
  • Użytkownicy
  • Kapitan Rob

Tomek

wrzucanie filmiku do moda
#24 2010-02-15, 12:02(Ostatnia zmiana: 2010-02-15, 12:05)
Funkcja func int C_BragoBanditsDead ()
Nie babrałem się w skryptach dwa lata, ale czy nie powinno być:
func int C_BragoBanditsDead (C_INFO)?
Z góry mówię, że robione na logikę, nawet nie wiem co C_INFO oznacza. Nie zaszkodzi jednak spróbować.
 

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja

Adanos
Administrator

wrzucanie filmiku do moda
#25 2010-02-15, 12:48(Ostatnia zmiana: 2010-02-15, 12:49)
Mylisz się Ogrodnik. Błąd polega na tym, że funkcja została dwa razy zdefiniowana. Tak więc należy poszukać, gdzie jest ta druga definicja funkcji i sprawdzić, czy są takie same. A później jedną dać w komentarz.

Pawciow

Pawciow

Użytkownicy
posty533
Propsy70
ProfesjaTłumacz
  • Użytkownicy

Pawciow

wrzucanie filmiku do moda
#26 2010-02-15, 18:05(Ostatnia zmiana: 2010-02-15, 18:46)
w tym pliku nie jest zdefiniowana 2 razy(albo ślepy jestem), a w innych plikach jej nie ma wg mnie ; przydałby mi się niemiecki skrypt dialogu Cavalorna na z gmdk, bo już podmieniłem z polskimi; jakby ktoś mógł użyczyć;)

Sergio

Sergio

Użytkownicy
Główny scenarzysta, skrypter i założyciel teamu
posty449
Propsy12
  • Użytkownicy
  • Główny scenarzysta, skrypter i założyciel teamu
Ściągnij sobie, przecież to kwestia pięciu minut.

A wracając do filmiku to wciąż mi nie działa    :lol2:  
Czy może mieć  coś do rzeczy fakt iż mam go zainstalowanego na dysku roboczym (D)?
 



Zachęcam do oglądania mojego kanału na youtube, może nie jestem teraz jakimś mistrzem ale rozkręcam się. Hit na ten moment: http://www.youtube.com/watch?v=vzOXV0Nb658 Dla wszystkich tych którzy nie mają nic przeciw porcji śmiechu w oparciu o gothic.

Pawciow

Pawciow

Użytkownicy
posty533
Propsy70
ProfesjaTłumacz
  • Użytkownicy

Pawciow

wrzucanie filmiku do moda
#28 2010-02-17, 13:39(Ostatnia zmiana: 2010-02-18, 14:43)
że gothica zainstalowanego? to nie ma nic do rzeczy, gdy naprawię (o ile jest to wykonalne) ten redefined identifier, to zreparsuję w gothic_starter_modzie-ale ja kto możliwe, że w spacerze nie ma błędów, a gothic_starter_mod z opcja reparse scripts wyłapuje nieistniejące(jak dla mnie) błędy?


edit: uporałem się z tym; jednakże test.bik nei wyświetla się wciąż, zarówno po kliknięciu w "Nowa gra"(załaduje się i nie pokazuje się intro), jak i kliknięciu we "Wprowadzenie"(całe menu gothica tylko mrugnie i nic się nie pojawia)

Sergio

Sergio

Użytkownicy
Główny scenarzysta, skrypter i założyciel teamu
posty449
Propsy12
  • Użytkownicy
  • Główny scenarzysta, skrypter i założyciel teamu
Mam to samo
 



Zachęcam do oglądania mojego kanału na youtube, może nie jestem teraz jakimś mistrzem ale rozkręcam się. Hit na ten moment: http://www.youtube.com/watch?v=vzOXV0Nb658 Dla wszystkich tych którzy nie mają nic przeciw porcji śmiechu w oparciu o gothic.

Pawciow

Pawciow

Użytkownicy
posty533
Propsy70
ProfesjaTłumacz
  • Użytkownicy

Pawciow

wrzucanie filmiku do moda
#30 2010-02-19, 15:50(Ostatnia zmiana: 2010-02-19, 17:33)
znalazłem przyczynę problemu-dość dziwną, ale myślę, że to wina (niskiej?)rozdzielczości:



edit: oryginalne intro z g2nk ma rozdzielczość 640x360, a mój bik ma 854x480 ; spróbuję zmienić rozdzielczość na 640x360; ale to i tak trochę idiotyczne jak dla mnie; w Juranie czy innym modzie, rozdzielczości są inne i wszystkie filmiki działają

edit:problem u mnie rozwiązany-rozdzielczość bika nie może być większa niż 800x600; sprawdź u siebie Sergio

Sergio

Sergio

Użytkownicy
Główny scenarzysta, skrypter i założyciel teamu
posty449
Propsy12
  • Użytkownicy
  • Główny scenarzysta, skrypter i założyciel teamu

Sergio

wrzucanie filmiku do moda
#31 2010-02-22, 21:00(Ostatnia zmiana: 2010-03-13, 06:55)
sprawdzę

U mnie rozdzielczość jest mniejsza niż 800x600
Mam 756xcoś tam   i nadal nie działa     ;p
 



Zachęcam do oglądania mojego kanału na youtube, może nie jestem teraz jakimś mistrzem ale rozkręcam się. Hit na ten moment: http://www.youtube.com/watch?v=vzOXV0Nb658 Dla wszystkich tych którzy nie mają nic przeciw porcji śmiechu w oparciu o gothic.

Sergio

Sergio

Użytkownicy
Główny scenarzysta, skrypter i założyciel teamu
posty449
Propsy12
  • Użytkownicy
  • Główny scenarzysta, skrypter i założyciel teamu

Sergio

wrzucanie filmiku do moda
#32 2010-03-13, 06:57(Ostatnia zmiana: 2010-03-13, 07:01)
(muszę napisać drugiego posta żeby ktoś przypomniał sobie o tym temacie  :lol:  )


Jeżeli ktoś jeszcze zechciałby mi pomóc to tu jest link do intra w wersji bik (waży jakieś 23mb)
http://www.megaupload.com/?d=QDMJ66HV
 



Zachęcam do oglądania mojego kanału na youtube, może nie jestem teraz jakimś mistrzem ale rozkręcam się. Hit na ten moment: http://www.youtube.com/watch?v=vzOXV0Nb658 Dla wszystkich tych którzy nie mają nic przeciw porcji śmiechu w oparciu o gothic.

Pawciow

Pawciow

Użytkownicy
posty533
Propsy70
ProfesjaTłumacz
  • Użytkownicy
zrób 640x360 rozdzielczość-ja tak zrobiłem i poszło, spróbuj

Sergio

Sergio

Użytkownicy
Główny scenarzysta, skrypter i założyciel teamu
posty449
Propsy12
  • Użytkownicy
  • Główny scenarzysta, skrypter i założyciel teamu
a jak mogę zmienić jego rozdzielczość?
 



Zachęcam do oglądania mojego kanału na youtube, może nie jestem teraz jakimś mistrzem ale rozkręcam się. Hit na ten moment: http://www.youtube.com/watch?v=vzOXV0Nb658 Dla wszystkich tych którzy nie mają nic przeciw porcji śmiechu w oparciu o gothic.

Chmiel

Chmiel

Użytkownicy
posty93
  • Użytkownicy
 

Sergio

Sergio

Użytkownicy
Główny scenarzysta, skrypter i założyciel teamu
posty449
Propsy12
  • Użytkownicy
  • Główny scenarzysta, skrypter i założyciel teamu

Sergio

wrzucanie filmiku do moda
#36 2010-03-26, 16:37(Ostatnia zmiana: 2010-03-26, 16:37)
Ok, wielkie dzięki, za jakiś czas zabiorę się za patcha i wtedy skorzystam z waszych cennych porad.    ;)


Jak umiesz chmielu zrobić tigger mover za pomocą eventsa to możesz pracować ze mną.   :lol:
 



Zachęcam do oglądania mojego kanału na youtube, może nie jestem teraz jakimś mistrzem ale rozkręcam się. Hit na ten moment: http://www.youtube.com/watch?v=vzOXV0Nb658 Dla wszystkich tych którzy nie mają nic przeciw porcji śmiechu w oparciu o gothic.

Chmiel

Chmiel

Użytkownicy
posty93
  • Użytkownicy

Chmiel

wrzucanie filmiku do moda
#37 2010-03-26, 17:00(Ostatnia zmiana: 2010-03-26, 17:01)
Umie robić bramy i wszystko na przełącznik
chyba ot to ci chodzi?
 

Sergio

Sergio

Użytkownicy
Główny scenarzysta, skrypter i założyciel teamu
posty449
Propsy12
  • Użytkownicy
  • Główny scenarzysta, skrypter i założyciel teamu
nie, to to ja też umiem robić, tu chodzi o to że jeśli bohater zbliży się do jakiegoś miejsca to tigger mover się uruchamia
 



Zachęcam do oglądania mojego kanału na youtube, może nie jestem teraz jakimś mistrzem ale rozkręcam się. Hit na ten moment: http://www.youtube.com/watch?v=vzOXV0Nb658 Dla wszystkich tych którzy nie mają nic przeciw porcji śmiechu w oparciu o gothic.

Chmiel

Chmiel

Użytkownicy
posty93
  • Użytkownicy

Chmiel

wrzucanie filmiku do moda
#39 2010-03-26, 17:21(Ostatnia zmiana: 2010-03-26, 18:07)
Umiem zrobić takie cuś
 


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry