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