Okno dialogowe z jednym przyciskiem
Aby stworzyć okno z komunikatem i przyciskiem potwierdzenia:
!!IF:M^Tekst^;
Okno dialogowe z dwoma przyciskami
Aby stworzyć okno z komunikatem i dwoma przyciskami:
!!IF:Q2^Tekst^;
!!IF&2:M^Ok^;
!!IF&-2:M^Anuluj^;
W wypadku wybrania pierwszego przycisku otrzymamy komunikat OK a w drugim ANULUJ. Dzieje się tak ponieważ że we fladze warunkowej (w tym wypadku 2) zostaje zapisana wartość rożna w zależności od tego, który przycisk zostanie wybrany.
Aby do tego dać obraz trzeba się trochę natrudzić. Ogółem konstrukcja jest następująca:
!!IF:Q#1/#2/#3/#4^Text^;
Gdzie:
#1 to flaga (2,3,4...1000)
#2 to typ obrazka (0...36)
#3 to podtyp obrazka (rożny w zależności od typu)
#4 odpowiada za rodzaj okna dialogowego:
1 - komunikat z jednym przyciskiem (OK)
2 - komunikat z dwoma przyciskami
4 - komunikat bez przycisków "tekst podpowiedzi" (Hint Text)
Dla dwóch obrazów jest podobnie:
!!IF:Q#1/#2/#3/#4/#5/#6^Text^;
Gdzie:
#1 to flaga (2,3,4...1000)
#2 to typ obrazka (0...36)
#3 to podtyp obrazka (rożny w zależności od typu)
#4 to typ obrazka (0...36)
#5 to podtyp obrazka (rożny w zależności od typu)
#6 odpowiada za rodzaj okna dialogowego:
1 - komunikat z jednym przyciskiem (OK)
2 - komunikat z dwoma przyciskami
4 - komunikat bez przycisków "tekst podpowiedzi" (Hint Text)
7 - komunikat z jednym przyciskiem (OK) który pozostaję nieaktywny do chwili wyboru jednego z obrazków (lewego lub prawego)(flaga 1...1000)
10 - komunikat z dwoma przyciskami i dwoma obrazkami - możliwy wybór to lewy obrazek lub prawy lub przycisk anuluj (jak na zdjęciu) (zmienna v 1...10000)
Dla trzech obrazków:
!!IF:Q#1/#2/#3/#4/#5/#6/#7/#8^Tekst^
Gdzie:
#1 to flaga (2,3,4...1000)
#2 to typ obrazka (0...36)
#3 to podtyp obrazka (rożny w zależności od typu)
#4 to typ obrazka (0...36)
#5 to podtyp obrazka (rożny w zależności od typu)
#6 to typ obrazka (0...36)
#7 to podtyp obrazka (rożny w zależności od typu)
#8 odpowiada za rodzaj okna dialogowego:
1 - komunikat z jednym przyciskiem (OK)
2 - komunikat z dwoma przyciskami
4 - komunikat bez przycisków "tekst podpowiedzi" (Hint Text)
10 - komunikat z dwoma przyciskami i dwoma obrazkami - możliwy wybór to lewy obrazek lub prawy lub przycisk anuluj (jak na zdjęciu) (zmienna v 1...10000)
Okno dialogowe z większą ilością obrazów
Jest składnia dodania w najnowszej wersji WOG'a (3.58). Umożliwiające stworzenia okna wyglądającego jak po wygranej bitwie w Smoczej utopi:
!!IF:N#1/#2/#3/#4/#5/#6/#7/#8/ #9/#10/#11/#12/#13/#14/#15/#16;
!!IF:N^Tekst^;
gdzie: #1 to typ obrazka (0...36)
#2 to podtyp obrazka
#3 to typ obrazka (0...36)
#4 to podtyp obrazka
#5 to typ obrazka (0...36)
#6 to podtyp obrazka
#7 to typ obrazka (0...36)
#8 to podtyp obrazka
#9 to typ obrazka (0...36)
#10 to podtyp obrazka
#11 to typ obrazka (0...36)
#12 to podtyp obrazka
#13 to typ obrazka (0...36)
#14 to podtyp obrazka
#15 to typ obrazka (0...36)
#16 to podtyp obrazka
Uwaga! Tekst w składni:
!!IF:N^Tekst^;
nie może mieć więcej niż 11 linii!
Nowe okna dialogowe WOG
Oprócz wspomnianych wyżej standardowych okien Heroesa, istnieją także inne okna dialogowe. Jest ich kilka typów omówię najważniejsze z nich:
- z jednym obrazkiem (plik zewnętrzny)
- menu wielokrotnego wyboru
- menu z przyciskami "radiowymi"
- okno z czterema własnymi obrazkami, czterema opcjami menu oraz jednoliniowym polem tekstowym (wszystko opcjonalne)
Okno z jednym własnym obrazkiem
Jak już wspominałem może wstawić do tego okna własny obrazek lub animację. Dozwolonymi formatami są: jpg, gif, bmp i avi.
Ogólna składnia ma postać:
!!IF:B#/$1/$2;
Gdzie:
# - numer dialogu (1..100) $1 - numer zmiennej z (BMP, GIF or JPG) or AVI file $2 - zapętlenie pliku avi (1) lub nie (0)
Skrypt powinien mieć postać:
np.
!!VRz115:S^moj_obraz.jpg^;
!!IF:B1/z115/0;
Menu wielokrotnego wyboru
Aby sprawdzić skryptem kilka zależność należy użyć odpowiedniej składni.
Ogólny wygląd składni to:
!!IF:G0/#1/#2/#3/#4/#5/#6/#7/#8/#9/#10/#11/#12/#13/#14/#15;
gdzie:
#1 - numer zmiennej v w której zostanie zapisana wartość (w zależności od dokonanego wyboru)
#2 - domyślna wartość początkowa
#3 - numer zmiennej z nagłówka menu
#4 ... #15 - numery zmiennych z dla kolejnych opcji menu.
przykład:
!!VRz111:S^tytuł^;
!!VRz112:S^opcja 1^;
!!VRz113:S^opcja 2^;
!!VRz114:S^opcja 3^;
!!VRz115:S^opcja 4^;
!!VRz116:S^opcja 5^;
!!VRz117:S^^;
!!IF:G0/8/0/z111/z112/z113/z114/z115/z116/z117/z117/z117/z117/z117/z117/z117;
Uwaga!!Należy pamiętać że pierwsza opcja ma wartość 1, druga 2, trzecia 4, czwarta 8... Ich suma jest zapisywana w zmienne v (np.1+2+4+8+16...)
Menu z jedną możliwą opcją wyboru naraz
Ogólna składnia jest bardzo podobna do menu wielokrotnego wyboru:
!!IF:G1/#1/#2/#3/#4/#5/#6/#7/#8/#9/#10/#11/#12/#13/#14/#15
gdzie:
#1 - numer zmiennej v w której zostanie zapisana wartość (w zależności od dokonanego wyboru)
#2 - domyślna wartość początkowa
#3 - numer zmiennej z nagłówka menu
#4 ... #15 - numery zmiennych z dla kolejnych opcji menu.
przykład:
!!VRz111:S^tytuł^;
!!VRz112:S^opcja 1^;
!!VRz113:S^opcja 2^;
!!VRz114:S^opcja 3^;
!!VRz115:S^opcja 4^;
!!VRz116:S^anuluj^;
!!VRz117:S^^;
!!IF:G1/8/16/z111/z112/z113/z114/z115/z116/z117/z117/z117/z117/z117/z117/z117;
Uwaga!!Należy pamiętać że pierwsza opcja ma wartość 1, druga 2, trzecia 4, czwarta 8... Zmienna v może przybierać TYLKO jedną z tych (1 lub 2 lub 4...)
Ostatnia aktualizacja: 2008-06-14