Ehh... to może i ja się zgłoszę. Chociaż znając The Sect to byle jakie dialogi im się nie podobają no ale. Mogę zająć się pisaniem tych dialogów czy czego tam chcecie. A ten dialog pisałem kilka dni, jest on próbny, więc wypowiedzi nie bierzcie pod uwagę. Mam jeszcze parę innych skryptów, np. skrypt mikstury, chodzi o item:
[codebox]// ************************************************************
// EXIT
// ************************************************************
INSTANCE DIA_James_EXIT(C_INFO)
{
npc = Bdt_3000_James;
nr = 999;
condition = DIA_James_EXIT_Condition;
information = DIA_James_EXIT_Info;
permanent = 1;
description = DIALOG_ENDE;
};
FUNC INT DIA_James_EXIT_Condition()
{
return 1;
};
FUNC VOID DIA_James_EXIT_Info()
{
AI_StopProcessInfos (self);
};
// ************************************************************
// Hallo
// ************************************************************
INSTANCE DIA_James_Hello (C_INFO)
{
npc = Bdt_3000_James;
nr = 1;
condition = DIA_James_Hello_Condition;
information = DIA_James_Hello_Info;
permanent = 0;
important = 0;
};
FUNC INT DIA_James_Hello_Condition()
{
return 1;
};
FUNC VOID DIA_James_Hello_Info()
{
AI_Output (self,other,"DIA_James_Hello_15_00"); //Wstawaj gnojku i bierz się do roboty!
AI_Output (other,self,"DIA_James_Hello_13_01"); //Już wstaję, spokojnie, nie trzeba mnie poganiać.
AI_Output (self,other,"DIA_James_Hello_15_02"); //Jeżeli następnym razem nie wstaniesz na czas i będę musiał cię budzić dostaniesz solidną nauczkę!
AI_Output (other,self,"DIA_James_Hello_13_03"); //Spokojnie, człowieku...
AI_Output (self,other,"DIA_James_Hello_15_04"); //Coś mówiłeś?
Info_ClearChoices(DIA_James_Hello);
Info_AddChoice (DIA_James_Hello, "Nie, nic... no to dobra, co mam zrobić?" ,DIA_James_Hello_Yes);
Info_AddChoice (DIA_James_Hello, "Tak, mam ci coś do powiedzenia!" ,DIA_James_Hello_No);
};
func void DIA_James_Hello_Yes()
{
AI_Output (other, self,"DIA_James_Hello_Yes_15_00"); //Nie, nic... no to dobra, co mam zrobić?
AI_Output (self, other,"DIA_James_Hello_Yes_01_01"); //Masz szczęście, już chciałem ci przywalić.
AI_Output (self, other,"DIA_James_Hello_Yes_01_02"); //Weź ten kilof i marsz do kopalni, nie pokazuj mi się bez 20 samorodków!
B_GiveInvItems (self, other, ItMw_2H_Axe_L_01 , 1);
James_Hello = LOG_RUNNING;
Log_CreateTopic(CH1_Samorodes, LOG_MISSION);
Log_SetTopicStatus(CH1_Samorodes, LOG_RUNNING);
B_LogEntry( CH1_Samorodes, "Mam wydobyć 20 bryłek złota z kopalni i oddać je Jamesowi. Lepiej z nim nie zadzierać, może jak nie będę mu się przeciwstawiał, nie będzie taki brutalny.");
Info_ClearChoices(DIA_James_Hello);
};
func void DIA_James_Hello_No()
{
AI_Output (other, self,"DIA_James_Hello_No_15_00"); //Tak, chciałem ci powiedzieć, że jak widzę twój ryj to zbiera mi się na wymioty...
AI_Output (self, other,"DIA_James_Hello_No_01_01"); //Sam tego chciałeś!
AI_StopProcessInfos(self);
Npc_SetTarget(self, other);
AI_StartState(self,ZS_Attack,1,"");
Info_ClearChoices(DIA_James_Hello);
};
// ************************************************************
// What
// ************************************************************
INSTANCE DIA_James_What (C_INFO)
{
npc = Bdt_3000_James;
nr = 2;
condition = DIA_James_What_Condition;
information = DIA_James_What_Info;
permanent = 0;
important = 0;
};
FUNC INT DIA_James_What_Condition()
{
if (Npc_KnowsInfo (hero,DIA_James_Hello))
{
return 1;
};
};
FUNC VOID DIA_James_What_Info()
{
AI_Output (self, other,"DIA_James_What_15_00"); //Następnym razem cię zabiję! Jesteś tylko gówno wartym niewolnikiem!
AI_Output (self, other,"DIA_James_What_13_01"); //A teraz łap kilof i spieprzaj do kopalni! Masz wrócić z 30 samorodkami!
B_GiveInvItems (self, other, ItMw_2H_Axe_L_01 , 1);
AI_Output (self, other,"DIA_James_What_15_02"); //Jak cię zobaczę w obozie i nie będziesz miał odpowiedniej ilości złota, to zakończę ten twój gówniany żywot bez wachania! Idź już!
James_What = LOG_RUNNING;
Log_CreateTopic(CH1_Samorodes, LOG_MISSION);
Log_SetTopicStatus(CH1_Samorodes, LOG_RUNNING);
B_LogEntry( CH1_Samorodes, "Mam wydobyć 30 bryłek złota i oddać je temu debilnemu Jamesowi. Lepiej jak nie będę się pokazywał mu na oczy bez odpowiedniej ilości samorodków, bo groził mi śmiercią.");
};
// ************************************************************
// PERM
// ************************************************************
INSTANCE DIA_James_PERM (C_INFO)
{
npc = Bdt_3000_James;
nr = 3;
condition = DIA_James_PERM_Condition;
information = DIA_James_PERM_Info;
permanent = 0;
description = "Proszę, oto 20 bryłek złota";
};
FUNC INT DIA_James_PERM_Condition()
{
if (Npc_KnowsInfo (hero,DIA_James_What))
&& (Npc_HasItems(other,ItMi_GoldNugget_Addon) >= 20 )
{
return 1;
};
};
FUNC VOID DIA_James_PERM_Info()
{
AI_Output (other, self,"DIA_James_PERM_15_00"); //Proszę, oto 20 bryłek złota.
B_GiveInvItems (self, other, ItMi_GoldNugget_Addon , 20);
James_What = LOG_SUCCESS;
Log_CreateTopic(CH1_Samorodes, LOG_MISSION);
Log_SetTopicStatus(CH1_Samorodes, LOG_SUCCESS);
B_LogEntry( CH1_Samorodes, "Przyniosłem Jamesowi 20 samorodków złota, mam nadzieję że tym razem odpocznę sobie.");
B_GivePlayerXP (XP_Samorodes);
AI_Output (self, other,"DIA_James_PERM_13_01"); //Dobrze, widzę, że się spisałeś.
AI_Output (self, other,"DIA_James_PERM_13_02"); //Jesteś jednym z lepszych niewolników.
AI_Output (self, other,"DIA_James_PERM_13_03"); //Zasłużyłeś sobie, weź ten strój, to dalej dziurawa szmata, ale lepsza od tych łachmanów które masz na sobie.
AI_Output (self, other,"DIA_James_PERM_13_04"); //To ma cię zmobilizować do pracy.
B_GiveInvItems (self, other, ITAR_BAU_L , 1);
AI_Output (other, self,"DIA_James_PERM_15_05"); //Dzięki, nie spodziewałem się tego.
AI_Output (self, other,"DIA_James_PERM_13_06"); //Jeżeli nie będziesz sprawiał problemów, to czasem dostaniesz coś więcej niż tylko jedzenie.
AI_Output (self, other,"DIA_James_PERM_13_07"); //Tylko nie licz że zawsze będziesz dostawał takie nagrody.
AI_Output (self, other,"DIA_James_PERM_13_08"); //Wciąż jesteś tylko gównianym śmieciem, mogę cię zabić w każdej chwili.
AI_Output (self, other,"DIA_James_PERM_13_09"); //Ale jak na razie, to na to się nie zanosi, jesteś wciąż przydatny.
AI_Output (other, self,"DIA_James_PERM_15_10"); //Staram się.
AI_Output (self, other,"DIA_James_PERM_13_11"); //Dlatego dostaniesz teraz lekką robotę. Idź do rybaka i przynieś mi 5 ryb.
AI_Output (self, other,"DIA_James_PERM_13_12"); //Powiedz mu że przysyłają cię bandyci. Da ci je za darmo.
AI_Output (self, other,"DIA_James_PERM_13_13"); //Chata rybaka znajduje się na plaży. Powinieneś tam trafić...
James_PERM = LOG_RUNNING;
Log_CreateTopic(CH1_FishBandits, LOG_MISSION);
Log_SetTopicStatus(CH1_FishBandits, LOG_RUNNING);
B_LogEntry( CH1_FishBandits, "James kazał mi przynieść 5 ryb. Chatę rybaka znajdę na plaży. James nie jest tak brutalny, gdy nie robi się problemów.");
};
// ************************************************************
// Gold
// ************************************************************
INSTANCE DIA_James_Gold (C_INFO)
{
npc = Bdt_3000_James;
nr = 1;
condition = DIA_James_Gold_Condition;
information = DIA_James_Gold_Info;
permanent = 0;
description = "Mam 30 bryłek złota!";
};
FUNC INT DIA_James_Gold_Condition()
{
if (Npc_KnowsInfo (hero,DIA_James_PERM))
&& (Npc_HasItems(other,ItMi_GoldNugget_Addon) >= 30 )
{
return 1;
};
FUNC VOID DIA_James_Gold_Info()
{
AI_Output (other, self,"DIA_James_Gold_15_00"); //Mam 30 bryłek złota!
B_GiveInvItems (self, other, ItMi_GoldNugget_Addon , 30);
James_What = LOG_SUCCESS;
Log_CreateTopic(CH1_Samorodes, LOG_MISSION);
Log_SetTopicStatus(CH1_Samorodes, LOG_SUCCESS);
B_LogEntry( CH1_Samorodes, "Przyniosłem Jamesowi 30 samorodków złota, mam nadzieję że tym razem odpocznę sobie.");
B_GivePlayerXP (XP_Samorodes);
AI_Output (self, other,"DIA_James_Gold_13_01"); //Prawdę mówiąc, nie potrzebujemy tyle, ale od przybytku głowa nie boli.
AI_Output (self, other,"DIA_James_Gold_15_02"); //A ty dostałeś karę za swoje zachowanie.
Info_ClearChoices(DIA_James_Hello);
Info_AddChoice (DIA_James_Gold, "Traktujesz mnie jak gówno! Co ty sobie myślisz?" ,DIA_James_Gold_OK);
Info_AddChoice (DIA_James_Gold, "Tak, dostałem karę, zrozumiałem, czy mogę już odpocząć?" ,DIA_James_Gold_Non);
};
func void DIA_James_Gold_OK()
{
AI_Output (other, self,"DIA_James_Gold_OK_15_00"); //Traktujesz mnie jak gówno! Co ty sobie myślisz?
AI_Output (self, other,"DIA_James_Gold_OK_01_01"); //To były twoje ostatnie słowa!
AI_StopProcessInfos (self);
Npc_SetPermAttitude (self, ATT_HOSTILE);
Npc_SetTarget (self,other);
AI_StartState (self,ZS_ATTACK,1,"");
Info_ClearChoices(DIA_James_Gold);
};
func void DIA_James_Gold_Non()
{
AI_Output (other, self,"DIA_James_Hello_Gold_15_00"); //Tak, dostałem karę, zrozumiałem, czy mogę już odpocząć?
AI_Output (self, other,"DIA_James_Hello_Gold_01_01"); //Hmm... nie!
Info_ClearChoices(DIA_James_Gold);
};
// ************************************************************
// Ehh
// ************************************************************
INSTANCE DIA_James_Ehh (C_INFO)
{
npc = Bdt_3000_James;
nr = 1;
condition = DIA_James_Ehh_Condition;
information = DIA_James_Ehh_Info;
permanent = 0;
description = "To co mam jeszcze zrobić?";
};
FUNC INT DIA_James_Ehh_Condition()
{
if (Npc_KnowsInfo (hero,DIA_James_Gold))
{
return 1;
};
FUNC VOID DIA_James_Ehh_Info()
{
AI_Output (other, self,"DIA_James_Ehh_15_00"); //To co mam jeszcze zrobić?
AI_Output (self, other,"DIA_James_Ehh_13_01"); //Przynieś od rybaka 10 ryb. Idź! I to migiem!
Info_ClearChoices(DIA_James_Ehh);
Info_AddChoice (DIA_James_Ehh, "A gdzie znajduje się chata rybaka?" ,DIA_James_Ehh_He);
Info_AddChoice (DIA_James_Ehh, "Dobrze, pójdę już." ,DIA_James_Ehh_Ye);
Info_AddChoice (DIA_James_Ehh, "Co?" ,DIA_James_Ehh_Who);
};
func void DIA_James_Ehh_He()
{
AI_Output (other, self,"DIA_James_Ehh_He_15_00"); //A gdzie znajduje się chata rybaka?
AI_Output (self, other,"DIA_James_Ehh_He_01_01"); //Chatę rybaka znajdziesz na plaży. Powinieneś ją znaleźć.
AI_Output (self, other,"DIA_James_Ehh_He_01_02"); //A teraz idź już!
James_Ehh = LOG_RUNNING;
Log_CreateTopic(CH1_BanditsFish, LOG_MISSION);
Log_SetTopicStatus(CH1_BanditsFish, LOG_RUNNING);
B_LogEntry( CH1_BanditsFish, "James kazał przynieść mi 10 ryb. Chatę rybaka znajdę na plaży.");
Info_ClearChoices(DIA_James_Ehh);
};
func void DIA_James_Ehh_Ye()
{
AI_Output (other, self,"DIA_James_Ehh_Ye_15_00"); //Dobrze, pójdę już.
AI_Output (self, other,"DIA_James_Ehh_Ye_01_01"); //To wynocha!
James_Ehh = LOG_RUNNING;
Log_CreateTopic(CH1_BanditsFish, LOG_MISSION);
Log_SetTopicStatus(CH1_BanditsFish, LOG_RUNNING);
B_LogEntry( CH1_BanditsFish, "Bandycki James kazał przynieść mi 10 ryb. Chatę rybaka znajdę na plaży.");
Info_ClearChoices(DIA_James_Ehh);
};
func void DIA_James_Ehh_Who()
{
AI_Output (other, self,"DIA_James_Ehh_Who_15_00"); //Co?
AI_Output (self, other,"DIA_James_Ehh_Who_01_01"); //Gówno!
AI_StopProcessInfos (self);
Npc_SetPermAttitude (self, ATT_HOSTILE);
Npc_SetTarget (self,other);
AI_StartState (self,ZS_ATTACK,1,"");
Info_ClearChoices(DIA_James_Ehh);
};
// ************************************************************
// Fish
// ************************************************************
INSTANCE DIA_James_Fish (C_INFO)
{
npc = Bdt_3000_James;
nr = 1;
condition = DIA_James_Fish_Condition;
information = DIA_James_Fish_Info;
permanent = 0;
description = "Mam ryby!";
};
FUNC INT DIA_James_Fish_Condition()
{
if (Npc_KnowsInfo (hero,DIA_James_Ehh))
&& (Npc_HasItems(other,ItMi_GoldNugget_Addon) >= 15 )
{
return 1;
};
FUNC VOID DIA_James_Fish_Info()
{
AI_Output (other, self,"DIA_James_Fish_15_00"); //Mam ryby!
AI_Output (self, other,"DIA_James_Fish_13_01"); //Dobrze. Zatem dawaj je szybko!
B_GiveInvItems (other, self, ITFO_FISH, 15);
AI_Output (other, self,"DIA_James_Fish_15_02"); //Proszę.
AI_Output (self, other,"DIA_James_Fish_13_03"); //A nie widziałeś niczego podejrzanego po drodze?
AI_Output (other, self,"DIA_James_Fish_15_04"); //Nie.
AI_Output (self, other,"DIA_James_Fish_13_05"); //Na pewno?
AI_Output (other, self,"DIA_James_Fish_15_06"); //No przecież mówię że nie!
AI_Output (self, other,"DIA_James_Fish_13_07"); //No dobrze. W takim razie wracaj do pracy! I nie pokazuj się bez 20 samorodków złota!
AI_Output (other, self,"DIA_James_Fish_15_08"); //CO?! Ty się ze mnie nabijasz?
AI_Output (self, other,"DIA_James_Fish_13_09"); //A co?! Nie wolno? Marsz do kopalni!
AI_Output (other, self,"DIA_James_Fish_15_10"); //Co takiego?
AI_Output (self, other,"DIA_James_Fish_13_11"); //Jajco! Ty głuchy jesteś?!
AI_StopProcessInfos(self);
Npc_SetTarget(self, other);
AI_StartState(self,ZS_Attack,1,"");
};
// ************************************************************
// Go
// ************************************************************
INSTANCE DIA_James_Go (C_INFO)
{
npc = Bdt_3000_James;
nr = 1;
condition = DIA_James_Go_Condition;
information = DIA_James_Go_Info;
permanent = 0;
important = 0;
};
FUNC INT DIA_James_Fish_Condition()
{
if (Npc_KnowsInfo (hero,DIA_James_Fish))
{
return 1;
};
FUNC VOID DIA_James_Go_Info()
{
AI_Output (other, self,"DIA_James_Go_15_00"); //Następnym razem przerobię cię na kotlety! Szczurze.
};
[/codebox]