Jak łączyć warunki wyzwalacza?

Edytor Arma (Arma, Arma2, Arma2OA)

Moderatorzy: kondor, Inkwizytor

ODPOWIEDZ
Awatar użytkownika
SaS TrooP
Posty: 1586
Rejestracja: 30 października 2008, 17:30
ID Steam:
ID gracza: 0
Lokalizacja: Wodzisław Śl.
Kontakt:

Jak łączyć warunki wyzwalacza?

Post autor: SaS TrooP »

Ja może założę temat "SaS TrooPa o edytorze dywagacje" :D
Mam stworzone 2 zmienne, które aktywują się gdy teren jest czysty. COś jak o to, o co ostatnio się pytałem, więc:

Kod: Zaznacz cały

Init:
zmiennaA=false
zmiennaB=false
Potem inne skrypty zmieniają je na true, a wyzwalacza kończący misje ma aktywować się, gdy WEST wejdzie w jego obszar i gdy oba te warunki są na true. Niestety, wyzwalacza nie pragnie zaakceptować obu naraz. Próbowałem je łączyć poprzez AND oraz &&, niestety nie skutecznie.

Jak je razem połączyć?
Awatar użytkownika
Maćko
Posty: 653
Rejestracja: 10 grudnia 2007, 15:08
ID Steam:
ID gracza: 1
Lokalizacja: Radom
Kontakt:

Re: Jak łączyć warunki wyzwalacza?

Post autor: Maćko »

jeśli wyzwalacz ma się aktywować np. gdy obszar wyzwalacza będzie wyczyszczony z jednostek wschodu to trzeba zrobić wschód (czy jak tam w edytorze jest?) nieobecny, a w warunku:this and zmiennaA and zmiennaB i musi działać :?

a tak właściwie to nie musisz dawać w init że zmienna jest false, bo domyślna wartość jest false.
Obrazek
Obrazek

-------------
MOBO: MSI H110M PRO-D | CPU: Core i3 6100@3.7GHz | RAM: 8GB DDR4 2400@2133 MHz CL14 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
Awatar użytkownika
Matte
Posty: 805
Rejestracja: 17 stycznia 2007, 12:20
ID Steam:
Numer GG: 3470353
ID gracza: 2166020
Lokalizacja: Sosnowiec

Re: Jak łączyć warunki wyzwalacza?

Post autor: Matte »

Maćko pisze:jeśli wyzwalacz ma się aktywować np. gdy obszar wyzwalacza będzie wyczyszczony z jednostek wschodu to trzeba zrobić wschód (czy jak tam w edytorze jest?) nieobecny, a w warunku:this and zmiennaA and zmiennaB i musi działać :?

a tak właściwie to nie musisz dawać w init że zmienna jest false, bo domyślna wartość jest false.
Tyle, ze A2 wymaga deklaracji zmiennej przed jej użyciem. Z resztą to winien być nawyk. ;]
Jestem BIS fanboyem! :ofp :weteran
FAQ:
Co zrobić gdy powiedzą coś złego o OFP:DR? DR nie żyje, a fani zapomnieli.
Co zrobić gdy powiedzą coś złego o ArmA II? - Do 1.96 jescze trochę brakuję...
All of BIS's programming is done by Ondrej's hair
Blogaska prowadzę, i gadam do mikrofonu w podcaście na matteprl.net
Awatar użytkownika
Maćko
Posty: 653
Rejestracja: 10 grudnia 2007, 15:08
ID Steam:
ID gracza: 1
Lokalizacja: Radom
Kontakt:

Re: Jak łączyć warunki wyzwalacza?

Post autor: Maćko »

Matte pisze:Tyle, ze A2 wymaga deklaracji zmiennej przed jej użyciem. Z resztą to winien być nawyk. ;]
Zrobiłem już z 10 misji w A2 (własnego użytku; nie wydane) robione starym sposobem - wszystko działa jak należy.
Obrazek
Obrazek

-------------
MOBO: MSI H110M PRO-D | CPU: Core i3 6100@3.7GHz | RAM: 8GB DDR4 2400@2133 MHz CL14 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
Awatar użytkownika
SaS TrooP
Posty: 1586
Rejestracja: 30 października 2008, 17:30
ID Steam:
ID gracza: 0
Lokalizacja: Wodzisław Śl.
Kontakt:

Re: Jak łączyć warunki wyzwalacza?

Post autor: SaS TrooP »

Ah, a więc dobrze myślałem :P

Pisałem po prostu:

Kod: Zaznacz cały

ZmiennaA=true && zmiennaB=true
I nie jarzyło, a nieokreślanie true/false w tym wypadku wydało mi się dziwne :)

Senkju wery macz
Awatar użytkownika
kondor
Posty: 1526
Rejestracja: 13 marca 2007, 11:50
ID Steam: Przemek_kondor
Kontakt:

Re: Jak łączyć warunki wyzwalacza?

Post autor: kondor »

Matte ma rację - nie można używać zmiennej przed jej zainicjowaniem. To, że działa w warunkach wyzwalaczy to raczej fart niż cecha. -po prostu waunek się kiełbasi i jest undefined,a następnie jest konwertowany na false.
http://www.arma2.com/comref/comref.html pisze:Variables

Variables have to be inicialized before being used. When any uninitialized variable is detected in any expression, the whole expression results nil (an undefined value). When an undefined value is encountered in a field where a boolean value is expected, it is converted to false. Variables may be unitialized by assigning it the nil value. This effectively destroys the variable as if it never existed.
ODPOWIEDZ

Wróć do „Edycja oraz tworzenie misji, skrypty oraz programowanie”