Teraz jest Pt 19 kwi, 2024 10:20


Chronologiczne spełnianie warunków

Dział poświęcony edytorowi ArmA II i Operation Arrowhead, czyli tworzeniu misji.
  • Autor
  • Wiadomość
Offline
Avatar użytkownika

Wódz Naczelny

Szeregowy

Szeregowy

  • Posty: 29
  • Dołączył(a): Pt 04 cze, 2010 23:08

Chronologiczne spełnianie warunków

PostCz 25 lis, 2010 14:25

Mam problem, a mianowicie:

Misja polega na eliminacji przeciwnika z danego terenu. Mam wyzwalacz odpowiedni do tego zadania. Wszystko działa. Następny wyzwalacz jest odpowiedzialny za ewakuację i tu się pojawia problem. Gracz przechodzi przez niego w drodze do celu spełniając w ten sposób warunek "This" drugi warunek ustawiłem po ; "obj1" (robię wg. poradnika Maverick`a :cfaniak: ). Po eliminacji celów na wyznaczonym obszarze następuje koniec misji :/ . Oczywiście jest jeszcze trzeci wyzwalać "kończący" (obj1 AND obj2). W wyzwalaczu "ewakuacji" próbowałem nawet kolejność warunków pozmieniać, ale nie ma to znaczenia.

Jest może jakiś skrypt odpowiedzialny za chronologiczne wykonywanie warunków?

Szukałem wczoraj na forum jakąś godzinkę i nic nie znalazłem.
Pierwsza misja nie kopcie, nie bijcie...
Ostatnio edytowano N 05 gru, 2010 16:04 przez Wódz Naczelny, łącznie edytowano 3 razy
Offline
Avatar użytkownika

Kadryl

Major

Major

  • Posty: 883
  • Dołączył(a): Cz 14 wrz, 2006 14:04
  • Lokalizacja: Wa-wa

PostCz 25 lis, 2010 16:19

Chronologia

Nie musi być skrypt wystarczy odpowiedni warunek w wyzwalaczu:
np.

Wyzwalacz 1
Warunek: akcja1

Wyzwalacz 2
Warunek: akcja1 && akcja2

Wyzwalacz 3
Warunek: akcja1 && akcja2 && akcja3

takie rozwiązanie uniemożliwia uruchomienie się wyzwalacza kolejnego jeżeli nie jest aktywowany wyzwalacz poprzedni.
Offline
Avatar użytkownika

Wódz Naczelny

Szeregowy

Szeregowy

  • Posty: 29
  • Dołączył(a): Pt 04 cze, 2010 23:08

PostCz 25 lis, 2010 19:09

Tak, przepraszam. Poprawiłem.

Już wiem na czym polegał mój błąd. Zamiast AND w warunku wstawiłem ";" który z tego co wydedukowałem :chat: działa tak samo jak OR.

Dzięki Kadryl. :spoko:

Temat do zamknięcia.
Offline
Avatar użytkownika

tsuki

Porucznik

Porucznik

  • Posty: 491
  • Dołączył(a): Cz 21 sty, 2010 22:33
  • Lokalizacja: z Nienacka

PostPt 26 lis, 2010 10:32

";" nie działa jak OR.

W polu aktywacji sprawdzana jest ostatnia zmienna bez średnika. Jeżeli wpiszesz:
Kod: Zaznacz cały
ZMIENNA1;ZMIENNA2

to będzie on true tylko jeżeli zmienna2 będzie true.
Obrazek
Offline
Avatar użytkownika

Jasina

Porucznik

Porucznik

  • Posty: 433
  • Dołączył(a): Cz 19 sie, 2010 13:26
  • Lokalizacja: Inowrocław

PostPt 26 lis, 2010 15:37

ale najlepiej zrób tak:
obj1 - oczyszczenie wioski
obj2 - ewakuacja

w polu warunku dla obj2 wpisz:
Kod: Zaznacz cały
obj1=true


Dzięki temu obj2 nie aktywuje się dopóki nie oczyścisz wioski
nick w grze: Jasina
kanał na YouTube: http://www.youtube.com/user/Jasina85
Offline
Avatar użytkownika

Maćko

Generał

Generał

  • Posty: 3140
  • Dołączył(a): Pt 29 gru, 2006 23:33
  • Lokalizacja: Radom

PostPt 26 lis, 2010 15:40

Jasina napisał(a):ale najlepiej zrób tak:
obj1 - oczyszczenie wioski
obj2 - ewakuacja

w polu warunku dla obj2 wpisz:
Kod: Zaznacz cały
obj1=true


Dzięki temu obj2 nie aktywuje się dopóki nie oczyścisz wioski

Niby dobrze, ale wprowadzasz błąd - warunku nie może być ob1=true, wystarczy (i musi być) tylko obj1.
Obrazek
Obrazek
-------------
MOBO: MSI H110M PRO-D | CPU: Core i3 6100@3.7GHz | RAM: 8GB DDR4 2400@2133 MHz CL12 Goodram Play |
GPU: Asus GTX 760 DirectCU II 2GB GDDR5 | SSD: Samsung 850 EVO 250GB | HDD: Samsung HD502HJ 500GB |
PSU: Corsair VS450 | Case: SilentiumPC Brutus S20 | FAN: SilentiumPC Mistral 120 mm
Offline
Avatar użytkownika

Jasina

Porucznik

Porucznik

  • Posty: 433
  • Dołączył(a): Cz 19 sie, 2010 13:26
  • Lokalizacja: Inowrocław

PostPt 26 lis, 2010 17:08

dobra i dzięki maćko że mnie poprawiłeś
nick w grze: Jasina
kanał na YouTube: http://www.youtube.com/user/Jasina85
Offline
Avatar użytkownika

Wódz Naczelny

Szeregowy

Szeregowy

  • Posty: 29
  • Dołączył(a): Pt 04 cze, 2010 23:08

PostPt 26 lis, 2010 19:29

Czyli źle wydedukowałem z tym średnikiem.

Dzięki za wyjaśnienie.
Offline
Avatar użytkownika

tsuki

Porucznik

Porucznik

  • Posty: 491
  • Dołączył(a): Cz 21 sty, 2010 22:33
  • Lokalizacja: z Nienacka

PostPt 26 lis, 2010 23:11

Niby dobrze, ale wprowadzasz błąd - warunku nie może być ob1=true, wystarczy (i musi być) tylko obj1.

Niby dobrze, ale nie dobrze. Operator porównania to "==". Poprzez "ob1=true" przypisałby do zmiennej "ob1" wartość true.
Operator porównania sprawdza, czy dwie dane zmienne są równe co do typu i wartości. Zwraca on true, jezeli są. Nie ma jednak możliwości sprawdzenia nim zmiennych typu bool (true/false), bo do tego są inne komendy (OR, AND, NOT, XOR). Polecam się z nimi zaznajomić, bo mocno ułatwiają życie.

AND zwraca true, tylko jeżeli dwie zmienne typu bool są true.
OR zwraca true, jeżeli którakolwiek ze zmiennych typu bool jest true.
NOT zwraca true, jeżeli zmienna typu bool jest false.
XOR zwraca true, jeżeli zmienne typu bool są różne.

Niech z1= true; z2 = false;
Kod: Zaznacz cały
z1 AND z2 zwraca false
z1 OR z2 zwraca true
NOT z1 zwraca false
NOT z2 zwraca true
z1 XOR z2 zwraca true
Obrazek
Offline
Avatar użytkownika

kondor

Major

Major

  • Posty: 880
  • Dołączył(a): Pt 11 lut, 2005 04:00
  • Lokalizacja: Berlin (wschodni)

PostPt 26 lis, 2010 23:55

To w końcu zgadzasz się z Maćkiem, czy nie, bo się zgubiłem w tym logicznym wywodzie?
Offline
Avatar użytkownika

tsuki

Porucznik

Porucznik

  • Posty: 491
  • Dołączył(a): Cz 21 sty, 2010 22:33
  • Lokalizacja: z Nienacka

PostSo 27 lis, 2010 11:24

Maćko pisze dobrze-powinno być samo ob1, bo operator porównania nie porównuje zmiennych bool. Problem w tym, że Jasina źle napisał porównanie, czego nikt nie zauważył, a co sam doskonale na pewno wiesz ;).
Obrazek
Offline
Avatar użytkownika

Jasina

Porucznik

Porucznik

  • Posty: 433
  • Dołączył(a): Cz 19 sie, 2010 13:26
  • Lokalizacja: Inowrocław

PostSo 27 lis, 2010 14:24

tsuki napisał(a):Maćko pisze dobrze-powinno być samo ob1, bo operator porównania nie porównuje zmiennych bool. Problem w tym, że Jasina źle napisał porównanie, czego nikt nie zauważył, a co sam doskonale na pewno wiesz ;).

więc tuski morze mi go wskażesz(chyba że to błąd który wskazał mi Maćko)
nick w grze: Jasina
kanał na YouTube: http://www.youtube.com/user/Jasina85
Offline
Avatar użytkownika

tsuki

Porucznik

Porucznik

  • Posty: 491
  • Dołączył(a): Cz 21 sty, 2010 22:33
  • Lokalizacja: z Nienacka

PostSo 27 lis, 2010 15:45

tsuki napisał(a):Niby dobrze, ale nie dobrze. Operator porównania to "==". Poprzez "ob1=true" przypisałby do zmiennej "ob1" wartość true.
Obrazek

Powrót do [ArmA II] Edytor

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 27 gości

cron