SAIL - Komunikaty tekstowe w grze bez/z opcjami wyboru
Serpent pisze:Wyświetlanie okien tekstowy jest bardzo często wykorzystywane w prawie wszystkich modyfikacjach. Ma ono zazwyczaj na celu poinformować gracza o jakimś wydarzeniu, popchnąć fabułę do przodu lub zmusić gracza do wyboru jednej z kilku opcji.
Tworzenie struktury okna w pliku tekstowym:
Spoiler:
Przechodzimy do naszego pliku z dialogami (…/Twoj_Mod/Campaigns/NACJA (Am, Ar, Ru)/#pol/TxtXX.wri).
Okno tekstowe ma następującą strukturę:
Kod:
? ? identyfikator tekst - opcja1 - opcja2 - opcja3 ... ? ?Przykład:
Kod:
? ? Trudnosc Wybierz poziom trudności: - Łatwy - Średni - Trudny ? ?Należy pamiętać że zarówno tekst jak i liczba opcji nie mogą być nieograniczone ze względu na wymiary dopuszczalne okienka.
Zalecam też zapisywać tekst w jednej linii.
Okno tekstowe w SAIL’u:
Spoiler:
Istnieje kilka sposobów na wyświetlenie okienka.
Jedna opcja wyboru:
Tu sprawa jest prosta, zakładamy że nasze okienko ma taką strukturę:Kod:
? ? id CosTamCosTam - OK. ? ?Aby wyświetlić takie okno używamy funkcji Query.
Kod:
Query('id');Spowoduje to wyświetlenie okna z jedną opcją wyboru.
Kilka opcji wyboru:
Tutaj sprawa wygląda nieco trudniej.Kod:
Case Query('identyfikator') of 1: begin // co się stanie w razie wybrania opcji nr. 1; end; 2: begin // co się stanie w razie wybrania opcji nr. 2; end; 3: begin // co się stanie w razie wybrania opcji nr. 3; end; End;Wybranie danej opcji spowoduje wykonanie się kodu z bloku oznaczanego danym numerem i pominięcie innych bloków.
Przykład:
Kod:
Case Query('Trudnosc') of 1: begin Difficulty := 1; // np. usuwa zbędne jednostki RemoveUnit(bunkier1); end; 2: begin Difficulty := 2; // np. usuwa zbędne jednostki RemoveUnit(bunkier2); end; 3: begin Difficulty := 3; end; End;Oto efekt wizualny:
Untitled-1.jpg
Author: Serpent
Topic: https://forum.original-war.net/viewtopic.php?f=42&t=4328



