Spoiler
// ****************************
// Wegbescreibungenin der Stadt
// ****************************
func void B_AddCityGuideChoices()
{
Info_ClearChoices (DIA_CITYGUIDE);
if (!C_IsQuarterNearest(self, Q_UNTERSTADT))
{
Info_AddChoice (DIA_CITYGUIDE, "Do dolnej części miasta.", DIA_CITYGUIDE_UNTERSTADT);
};
if (!C_IsQuarterNearest(self, Q_OBERSTADT))
{
Info_AddChoice (DIA_CITYGUIDE, "Do górnego miasta.", DIA_CITYGUIDE_OBERSTADT);
};
if (!C_IsQuarterNearest(self, Q_TEMPEL))
{
Info_AddChoice (DIA_CITYGUIDE, "Do świątyni Adanosa.", DIA_CITYGUIDE_TEMPEL);
};
if (!C_IsQuarterNearest(self, Q_MARKT))
{
Info_AddChoice (DIA_CITYGUIDE, "Do targowiska.", DIA_CITYGUIDE_MARKT);
};
if (!C_IsQuarterNearest(self, Q_GALGEN))
{
Info_AddChoice (DIA_CITYGUIDE, "Do placu wisielców.", DIA_CITYGUIDE_GALGEN);
};
if (!C_IsQuarterNearest(self, Q_KASERNE))
{
Info_AddChoice (DIA_CITYGUIDE, "Do koszar.", DIA_CITYGUIDE_KASERNE);
};
if (!C_IsQuarterNearest(self, Q_HAFEN))
{
Info_AddChoice (DIA_CITYGUIDE, "Do dzielnicy portowej.", DIA_CITYGUIDE_HAFEN);
};
Info_AddChoice (DIA_CITYGUIDE, "Dzięki, tylko tyle chciałem wiedzieć.", DIA_CITYGUIDE_BACK);
};
INSTANCE DIA_CITYGUIDE (C_INFO)
{
nr = 700;
condition = DIA_CITYGUIDE_Condition;
information = DIA_CITYGUIDE_Info;
permanent = TRUE;
description = "Co możesz mi powiedzieć o tym miejscu?";
};
FUNC INT DIA_CITYGUIDE_Condition()
{
return TRUE;
};
FUNC VOID DIA_CITYGUIDE_Info()
{
AI_Output (other, self, "DIA_CITYGUIDE_15_00"); //Co możesz mi powiedzieć o tym miejscu?
// ------ Du bist jetzt ------
if (C_NpcIsInQuarter(self) == Q_UNTERSTADT)
{
B_Say (self, other, "$UNTERSTADT"); //Jesteś teraz w dolnej części miasta.
}
else if (C_NpcIsInQuarter(self) == Q_OBERSTADT)
{
B_Say (self, other, "$OBERSTADT"); //Jesteś teraz w górnym mieście.
}
else if (C_NpcIsInQuarter(self) == Q_TEMPEL)
{
B_Say (self, other, "$TEMPEL"); //Jesteś teraz przy świątyni.
}
else if (C_NpcIsInQuarter(self) == Q_MARKT)
{
B_Say (self, other, "$MARKT"); //Jesteś teraz na targowisku.
}
else if (C_NpcIsInQuarter(self) == Q_GALGEN)
{
B_Say (self, other, "$GALGEN"); //Jesteś teraz na placu wisielców.
}
else if (C_NpcIsInQuarter(self) == Q_KASERNE)
{
B_Say (self, other, "$KASERNE"); //To są koszary.
}
else if (C_NpcIsInQuarter(self) == Q_HAFEN)
{
B_Say (self, other, "$HAFEN"); //Jesteś teraz w dzielnicy portowej.
};
B_Say (self, other, "$WHERETO"); //A gdzie się wybierasz?
B_AddCityGuideChoices();
};
func void DIA_CITYGUIDE_BACK()
{
AI_Output (other, self, "DIA_CITYGUIDE_BACK_15_00"); //Dzięki, tylko tyle chciałem wiedzieć.
Info_ClearChoices (DIA_CITYGUIDE);
};
func void DIA_CITYGUIDE_UNTERSTADT()
{
AI_Output (other, self, "DIA_CITYGUIDE_UNTERSTADT_15_00"); //Jak mogę się dostać do dolnej części miasta?
if (C_NpcIsInQuarter(self) == Q_OBERSTADT)
{
B_Say (self, other, "$OBERSTADT_2_UNTERSTADT"); //Przejdź przez wewnętrzną bramę, a dojdziesz do dolnej części miasta.
}
else if (C_NpcIsInQuarter(self) == Q_TEMPEL)
{
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
}
else if (C_NpcIsInQuarter(self) == Q_MARKT)
{
B_Say (self, other, "$MARKT_2_TEMPEL"); //Jeżeli pójdziesz wzdłuż murów miejskich od strony targowiska, to dojdziesz do świątyni.
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
}
else if (C_NpcIsInQuarter(self) == Q_GALGEN)
{
B_Say (self, other, "$GALGEN_2_TEMPEL"); //Idź od strony placu wisielców w dół uliczką, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
}
else if (C_NpcIsInQuarter(self) == Q_KASERNE)
{
B_Say (self, other, "$KASERNE_2_GALGEN"); //Po prostu zejdź po schodach na prawo od głównego wejścia, a dojdziesz do placu wisielców.
B_Say (self, other, "$GALGEN_2_TEMPEL"); //Idź od strony placu wisielców w dół uliczką, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
}
else if (C_NpcIsInQuarter(self) == Q_HAFEN)
{
B_Say (self, other, "$HAFEN_2_UNTERSTADT"); //Idź od strony muru przy nabrzeżu w górę ulicą portową, a dojdziesz do dolnej części miasta.
};
B_AddCityGuideChoices();
};
func void DIA_CITYGUIDE_OBERSTADT()
{
AI_Output (other, self, "DIA_CITYGUIDE_OBERSTADT_15_00"); //Jak dostać się do górnego miasta?
if (C_NpcIsInQuarter(self) == Q_UNTERSTADT)
{
B_Say (self, other, "$UNTERSTADT_2_OBERSTADT"); //Przy południowej bramie znajdują się schody, które prowadzą do bramy wewnętrznej. Za nią zaczyna się górne miasto.
}
else if (C_NpcIsInQuarter(self) == Q_TEMPEL)
{
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_OBERSTADT"); //Przy południowej bramie znajdują się schody, które prowadzą do bramy wewnętrznej. Za nią zaczyna się górne miasto.
}
else if (C_NpcIsInQuarter(self) == Q_MARKT)
{
B_Say (self, other, "$MARKT_2_TEMPEL"); //Jeżeli pójdziesz wzdłuż murów miejskich od strony targowiska, to dojdziesz do świątyni.
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_OBERSTADT"); //Przy południowej bramie znajdują się schody, które prowadzą do bramy wewnętrznej. Za nią zaczyna się górne miasto.
}
else if (C_NpcIsInQuarter(self) == Q_GALGEN)
{
B_Say (self, other, "$GALGEN_2_TEMPEL"); //Idź od strony placu wisielców w dół uliczką, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_OBERSTADT"); //Przy południowej bramie znajdują się schody, które prowadzą do bramy wewnętrznej. Za nią zaczyna się górne miasto.
}
else if (C_NpcIsInQuarter(self) == Q_KASERNE)
{
B_Say (self, other, "$KASERNE_2_GALGEN"); //Po prostu zejdź po schodach na prawo od głównego wejścia, a dojdziesz do placu wisielców.
B_Say (self, other, "$GALGEN_2_TEMPEL"); //Idź od strony placu wisielców w dół uliczką, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_OBERSTADT"); //Przy południowej bramie znajdują się schody, które prowadzą do bramy wewnętrznej. Za nią zaczyna się górne miasto.
}
else if (C_NpcIsInQuarter(self) == Q_HAFEN)
{
B_Say (self, other, "$HAFEN_2_UNTERSTADT"); //Idź od strony muru przy nabrzeżu w górę ulicą portową, a dojdziesz do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_OBERSTADT"); //Przy południowej bramie znajdują się schody, które prowadzą do bramy wewnętrznej. Za nią zaczyna się górne miasto.
};
B_AddCityGuideChoices();
};
func void DIA_CITYGUIDE_TEMPEL()
{
AI_Output (other, self, "DIA_CITYGUIDE_TEMPEL_15_00"); //Szukam świątyni.
if (C_NpcIsInQuarter(self) == Q_UNTERSTADT)
{
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
}
else if (C_NpcIsInQuarter(self) == Q_OBERSTADT)
{
B_Say (self, other, "$OBERSTADT_2_UNTERSTADT"); //Przejdź przez wewnętrzną bramę, a dojdziesz do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
}
else if (C_NpcIsInQuarter(self) == Q_MARKT)
{
B_Say (self, other, "$MARKT_2_TEMPEL"); //Jeżeli pójdziesz wzdłuż murów miejskich od strony targowiska, to dojdziesz do świątyni.
}
else if (C_NpcIsInQuarter(self) == Q_GALGEN)
{
B_Say (self, other, "$GALGEN_2_TEMPEL"); //Idź od strony placu wisielców w dół uliczką, a dojdziesz do placu świątynnego.
}
else if (C_NpcIsInQuarter(self) == Q_KASERNE)
{
B_Say (self, other, "$KASERNE_2_MARKT"); //Po prostu zejdź po schodach na lewo od głównego wejścia, a dojdziesz do targowiska.
B_Say (self, other, "$MARKT_2_TEMPEL"); //Wenn du vom Marktplatz aus an der hohen Stadtmauer entlang gehst, kommst du zum Tempel.
}
else if (C_NpcIsInQuarter(self) == Q_HAFEN)
{
B_Say (self, other, "$HAFEN_2_UNTERSTADT"); //Idź od strony muru przy nabrzeżu w górę ulicą portową, a dojdziesz do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
};
B_AddCityGuideChoices();
};
func void DIA_CITYGUIDE_MARKT()
{
AI_Output (other, self, "DIA_CITYGUIDE_MARKT_15_00"); //Gdzie jest targowisko?
if (C_NpcIsInQuarter(self) == Q_UNTERSTADT)
{
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_MARKT"); //Kiedy będziesz przed świątynią, skręć w lewo i idź wzdłuż murów miejskich, a dojdziesz do targowiska.
}
else if (C_NpcIsInQuarter(self) == Q_OBERSTADT)
{
B_Say (self, other, "$OBERSTADT_2_UNTERSTADT"); //Przejdź przez wewnętrzną bramę, a dojdziesz do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_MARKT"); //Kiedy będziesz przed świątynią, skręć w lewo i idź wzdłuż murów miejskich, a dojdziesz do targowiska.
}
else if (C_NpcIsInQuarter(self) == Q_TEMPEL)
{
B_Say (self, other, "$TEMPEL_2_MARKT"); //Kiedy będziesz przed świątynią, skręć w lewo i idź wzdłuż murów miejskich, a dojdziesz do targowiska.
}
else if (C_NpcIsInQuarter(self) == Q_GALGEN)
{
B_Say (self, other, "$GALGEN_2_MARKT"); //Po prostu przejdź obok koszar, a dojdziesz do targowiska.
}
else if (C_NpcIsInQuarter(self) == Q_KASERNE)
{
B_Say (self, other, "$KASERNE_2_MARKT"); //Po prostu zejdź po schodach na lewo od głównego wejścia, a dojdziesz do targowiska.
}
else if (C_NpcIsInQuarter(self) == Q_HAFEN)
{
B_Say (self, other, "$HAFEN_2_UNTERSTADT"); //Idź od strony muru przy nabrzeżu w górę ulicą portową, a dojdziesz do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_MARKT"); //Kiedy będziesz przed świątynią, skręć w lewo i idź wzdłuż murów miejskich, a dojdziesz do targowiska.
};
B_AddCityGuideChoices();
};
func void DIA_CITYGUIDE_GALGEN()
{
AI_Output (other, self, "DIA_CITYGUIDE_GALGEN_15_00"); //Jak dostać się na Plac Wisielców?
if (C_NpcIsInQuarter(self) == Q_UNTERSTADT)
{
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_GALGEN"); //Jeżeli idąc od strony świątyni, skręcisz przy knajpie w lewo, dojdziesz do placu wisielców.
}
else if (C_NpcIsInQuarter(self) == Q_OBERSTADT)
{
B_Say (self, other, "$OBERSTADT_2_UNTERSTADT"); //Przejdź przez wewnętrzną bramę, a dojdziesz do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_GALGEN"); //Jeżeli idąc od strony świątyni, skręcisz przy knajpie w lewo, dojdziesz do placu wisielców.
}
else if (C_NpcIsInQuarter(self) == Q_TEMPEL)
{
B_Say (self, other, "$TEMPEL_2_GALGEN"); //Jeżeli idąc od strony świątyni, skręcisz przy knajpie w lewo, dojdziesz do placu wisielców.
}
else if (C_NpcIsInQuarter(self) == Q_MARKT)
{
B_Say (self, other, "$MARKT_2_GALGEN"); //Po prostu przejdź obok koszar, a dojdziesz do placu wisielców.
}
else if (C_NpcIsInQuarter(self) == Q_KASERNE)
{
B_Say (self, other, "$KASERNE_2_GALGEN"); //Po prostu zejdź po schodach na prawo od głównego wejścia, a dojdziesz do placu wisielców.
}
else if (C_NpcIsInQuarter(self) == Q_HAFEN)
{
B_Say (self, other, "$HAFEN_2_UNTERSTADT"); //Idź od strony muru przy nabrzeżu w górę ulicą portową, a dojdziesz do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_GALGEN"); //Jeżeli idąc od strony świątyni, skręcisz przy knajpie w lewo, dojdziesz do placu wisielców.
};
B_AddCityGuideChoices();
};
func void DIA_CITYGUIDE_KASERNE()
{
AI_Output (other, self, "DIA_CITYGUIDE_KASERNE_15_00"); //Gdzie są koszary?
if (C_NpcIsInQuarter(self) == Q_UNTERSTADT)
{
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_GALGEN"); //Jeżeli idąc od strony świątyni, skręcisz przy knajpie w lewo, dojdziesz do placu wisielców.
B_Say (self, other, "$GALGEN_2_KASERNE"); //Koszary to ten wielki budynek. Dostaniesz się do niego po schodach.
}
else if (C_NpcIsInQuarter(self) == Q_OBERSTADT)
{
B_Say (self, other, "$OBERSTADT_2_UNTERSTADT"); //Przejdź przez wewnętrzną bramę, a dojdziesz do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_GALGEN"); //Jeżeli idąc od strony świątyni, skręcisz przy knajpie w lewo, dojdziesz do placu wisielców.
B_Say (self, other, "$GALGEN_2_KASERNE"); //Koszary to ten wielki budynek. Dostaniesz się do niego po schodach.
}
else if (C_NpcIsInQuarter(self) == Q_TEMPEL)
{
B_Say (self, other, "$TEMPEL_2_GALGEN"); //Jeżeli idąc od strony świątyni, skręcisz przy knajpie w lewo, dojdziesz do placu wisielców.
B_Say (self, other, "$GALGEN_2_KASERNE"); //Koszary to ten wielki budynek. Dostaniesz się do niego po schodach.
}
else if (C_NpcIsInQuarter(self) == Q_MARKT)
{
B_Say (self, other, "$MARKT_2_KASERNE"); //Koszary to ten wielki budynek. Dostaniesz się do nich po schodach naprzeciwko gospody.
}
else if (C_NpcIsInQuarter(self) == Q_GALGEN)
{
B_Say (self, other, "$GALGEN_2_KASERNE"); //Koszary to ten wielki budynek. Dostaniesz się do niego po schodach.
}
else if (C_NpcIsInQuarter(self) == Q_HAFEN)
{
B_Say (self, other, "$HAFEN_2_UNTERSTADT"); //Idź od strony muru przy nabrzeżu w górę ulicą portową, a dojdziesz do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_TEMPEL"); //Idź od strony kuźni przez przejście, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_GALGEN"); //Jeżeli idąc od strony świątyni, skręcisz przy knajpie w lewo, dojdziesz do placu wisielców.
B_Say (self, other, "$GALGEN_2_KASERNE"); //Koszary to ten wielki budynek. Dostaniesz się do niego po schodach.
};
B_AddCityGuideChoices();
};
func void DIA_CITYGUIDE_HAFEN()
{
AI_Output (other, self, "DIA_CITYGUIDE_HAFEN_15_00"); //Jak dostać się do portu?
if (C_NpcIsInQuarter(self) == Q_UNTERSTADT)
{
B_Say (self, other, "$UNTERSTADT_2_HAFEN"); //Idź od strony kuźni w dół ulicą portową, a dojdziesz do portu.
}
else if (C_NpcIsInQuarter(self) == Q_OBERSTADT)
{
B_Say (self, other, "$OBERSTADT_2_UNTERSTADT"); //Przejdź przez wewnętrzną bramę, a dojdziesz do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_HAFEN"); //Idź od strony kuźni w dół ulicą portową, a dojdziesz do portu.
}
else if (C_NpcIsInQuarter(self) == Q_TEMPEL)
{
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_HAFEN"); //Idź od strony kuźni w dół ulicą portową, a dojdziesz do portu.
}
else if (C_NpcIsInQuarter(self) == Q_MARKT)
{
B_Say (self, other, "$MARKT_2_TEMPEL"); //Jeżeli pójdziesz wzdłuż murów miejskich od strony targowiska, to dojdziesz do świątyni.
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_HAFEN"); //Idź od strony kuźni w dół ulicą portową, a dojdziesz do portu.
}
else if (C_NpcIsInQuarter(self) == Q_GALGEN)
{
B_Say (self, other, "$GALGEN_2_TEMPEL"); //Idź od strony placu wisielców w dół uliczką, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_HAFEN"); //Idź od strony kuźni w dół ulicą portową, a dojdziesz do portu.
}
else if (C_NpcIsInQuarter(self) == Q_KASERNE)
{
B_Say (self, other, "$KASERNE_2_GALGEN"); //Po prostu zejdź po schodach na prawo od głównego wejścia, a dojdziesz do placu wisielców.
B_Say (self, other, "$GALGEN_2_TEMPEL"); //Idź od strony placu wisielców w dół uliczką, a dojdziesz do placu świątynnego.
B_Say (self, other, "$TEMPEL_2_UNTERSTADT"); //Od placu świątynnego odchodzi przejście prowadzące do dolnej części miasta.
B_Say (self, other, "$UNTERSTADT_2_HAFEN"); //Idź od strony kuźni w dół ulicą portową, a dojdziesz do portu.
};
B_AddCityGuideChoices();
};
// *********************************************************
// ---------------------------------------------------------
func void B_AssignCityGuide (var C_NPC slf)
{
DIA_CITYGUIDE.npc = Hlp_GetInstanceID(slf);
};