Koniec gry po dialogu oraz filmy w grze. 5653 0

O temacie

Autor Sawik

Zaczęty 11.08.2011 roku

Wyświetleń 5653

Odpowiedzi 0

Sawik

Sawik

Moderator działu
Rebel
posty4772
Propsy3197
ProfesjaNierób
  • Moderator działu
  • Rebel

Sawik
Moderator działu

Koniec gry po dialogu oraz filmy w grze.
2011-08-11, 20:30(Ostatnia zmiana: 2011-08-17, 03:47)
Na podstawie oryginalnego G2NK pokażę wam jak zrobić by gra kończyła się po dialogu razem z outro i credits.

Część dialogowa

func void DIA_Jorgen_DI_UndeadDragonDead_over ()
{
AI_StopProcessInfos (self);
B_Extro_Avi ();
};

func void DIA_Jorgen_DI_UndeadDragonDead_over ()Funkcja dialogu jest to funkcja którą przypisujemy danemu dialogowi po więcej informacji odsyłam do tutoriali oddanych dialogom.

AI_StopProcessInfos (self);
Kończy dialog

B_Extro_Avi ();
Wywołuje funkcję opisaną w oddzielnym pliku który musi być repasrowany przed dialogami(które są chyba reparsowane na końcu).
Zawartość B_extro_avi lub naszego pliku z tą funkcją opisaną.

func void  B_Extro_Avi ()
{
if (Npc_IsDead(PC_Thief_DI) == FALSE)
&& (Npc_IsDead(PC_Fighter_DI) == FALSE)
{
DiegAndGornAreOnboard = TRUE;
};

PlayVideo ( "Extro_Xardas.BIK");
PlayVideo ( "Credits_Extro.BIK");
PlayVideo ( "Credits2.BIK");

if (DiegAndGornAreOnboard == TRUE)
{
PlayVideo ( "Extro_AllesWirdGut.BIK");
};

ExitSession ();
};


func void  B_Extro_Avi ()Jest to definicja funkcji tą nazwę podamy w naszym dialogu po więcej szczegółów dotyczących funkcji polecam zajrzeć do tutoriala "Funkcje".
Ode mnie tylko jedno:
Zwróćcie uwagę że po funkcji nie ma średnika (;) wielu początkujących skrypterów robi ten błąd.

if (Npc_IsDead(PC_Thief_DI) == FALSE)
 To sprawdza czy Diego (pc_thief możemy podać inną instancję) żyje. Jest to chyba dobry przykład ponieważ większość modów kończy się po zabiciu kogoś tam (najczęściej czarnego maga). Można również napisać inne odwołania na przykład do zakończonego zadania czy to znanej nam informacji, posiadania odpowiednich przedmiotów

DiegAndGornAreOnboard = TRUE; Jeżeli zarówno Gorn jak i Diego są żywi funkcja zwróci TRUE.

My również możemy napisać własną funkcje którą umieścimy jako nasz element tutaj ale pamiętajcie że musi być to zreparsowane przed jej użyciem ponieważ inaczej dostaniecie błąd



PlayVideo ( "Extro_Xardas.BIK"); PlayVideo znaczy po angielsku odtwórz film. I ta funkcja właśnie to robi :lol:
W nawiasie mamy opisany plik z rozszerzeniem (zwróćcie uwagę że jest to napisane w cudzysłowach ("")).
Pliki filmowe (intro, outro itp) znajdują się w:
Dla Gothic 1
x:\Program Files\Piranha Bytes\Gothic\_Work\Data\Video\Extro.bikDla Gothic 2
x:\Program Files\JoWood\Gothic II\_Work\Data\videoGdzie x tam litera dysku na jaki zainstalowaliście Gothic (domyślnie C)
Jest to domyślna ścieżka instalacji jeżeli podaliście inna to ineresuje was tekst od Gothic dalej
Nie próbowałem dawać filmów w inne miejsce ani z innym rozszerzeniem możecie spróbować lecz nie jest to mądry pomysł.
Przykład przeze mnie pokazany udowadnia że możemy pokazać kilka filmów naraz zostaną one pokazane jeden po drugim w kolejności wystąpienia.  
ExitSession (); Z angielskiego zamknij sesję.
Zamyka bieżącą grę oraz pokazuje nam menu startowe.


Możemy użyć tego również by dawać przerywniki w grze wtedy do funkcji dialogu (nie musi być to wywoływane przez dialog, możemy użyć innego warunku) nie dajemy
AI_StopProcessInfos (self); chyba że chcemy by rozmowa się skończyła po filmie.
Oraz w funkcji wywoływanej przez nas nie dajemy
ExitSession (); ponieważ gra zakończy się przed wcześnie.
Drogą na skróty która możemy wykorzystać w dialogach jest danie
PlayVideo ("Intro_ADDON");do func void dialogu.

Mam nadzieję że wszystko jasno opisałem.

Kopiujcie jak chcecie ale na dole niech pisze by Sawik :D
 
Życzę wam seksu analnego po stronie biernej.
Dropbox +500 mb na start
LowPoly
Wykonanie modelu niskopoligonowego to sztuka kompromisu. Nie jest to jedynie uproszczenie modelu wysokopoligonowego, ale głęboka modyfikacja oraz podejmowanie decyzji często zmieniających wygląd pierwotny obiektu, tak by przy najmniejszej ilości trójkątów uzyskać jak najwierniej odwzorowany kształt oryginału. Nie można też zapomnieć o tym iż musi nadal wyglądać przekonywająco i tak balansować by uzyskać efekt optymalny.

Podstawowym założeniem jest, że model nie powinien mieć zbędnych, niewidocznych dla gracza detali włączonych w geometrie. Większość obiektów jakie znajdują się w grze powinna prezentować się najlepiej z odległości około 3-5 metrów. Wszelkie detale, które zanikają, wydają się płaskie lub zlewają się z bryłą modelu należy uznać za zbędne i pozostawić je na normal mapie.

Fakt, iż gracz będzie w stanie podejść bliżej do obiektu i zobaczyć go z mniejszej niż 3m odległości nie powinno stanowić większego problemu, gdyż większą rolę odgrywają wtedy tekstury oraz dodatkowy detal zależny od materiału obiektu. To właśnie kompromis między wydajnością, a szczegółowością otoczenia.

Detal, którego nie widać z 3-5 metrów nie powinnien istnieć w geometrii modelu.
Krawędzie znajdujące się blisko siebie, które zlewają się z większej odległości należy uprościć do wspólnej płaszczyzny


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