ARMA 2 / Operation Arrowhead - ARMED ASSAULT

Forum fanów ARMA II / OA / ArmedAssault i Operation Flashpoint
Teraz jest 07 września 2010, 02:03

Wszystkie czasy w strefie UTC + 1 [czas letni (DST)]




Utwórz nowy temat Odpowiedz w temacie  [ Posty: 19 ]  Przejdź na stronę 1, 2  Następna strona
Autor Wiadomość
 Tytuł: aktywacja gdy padnie strzał z m107.
PostNapisane: 30 stycznia 2010, 01:16 
Offline

Dołączył(a): 01 listopada 2009, 20:08
Posty: 20
Reputacja: 0
kmax1 doesn't have reputation
Nie bardzo wiem jak zadać pytanie, wiec napiszę co zrobiłem, a co mi nie wychodzi.
snajper ma wyeliminować cel, który przybędzie helikopterem. Próbowałem stworzyć kilka warunków powodzenia lub niepowodzenia misji, a mianowicie:

-gdy mi8 z celem na pokładzie leci w stronę lotniska a ja strzelę zanim wyląduje to mi8 zawraca i następuje koniec misji (niepowodzenie)
zrobiłem kilka waypointów, w ostatnim dałem "wyładuj transport". w init wpisałem: mi8 action ["ENGINEOFF, mi8]. Postawiłem wyzwalacz w którym -gdy strzal=true [patrz skrypt nizej] to mi8 move getpos "1" i to pieknie działa. Strzelam i śmigłowiec zawraca i leci do GameLogic "1"

-gdy mi8 ląduje, cel wysiada, idzie w stronę centrum dowodzenia, ja go zabijam - koniec misji (powodzenie)
zrobiłem to tak: cel moveincargo mi8, w ostatnim waypoincie mi8 dałem: cel action ["GETOUT", mi8], cel move getpos "2". Wszystko pięknie działa. Strzelam, zabijam cel i misja zakonczona jest powodzeniem.
ale....
-gdy mi8 ląduje, cel idzie w stronę centrum dowodzenia, ja strzelam i pudłuję - zostaje włączony alarm, cel ucieka z powrotem do mi8 i odlatuje - następuje koniec misji (niepowodzenie)
czyli (czesc tak jak wyzej): cel moveincargo mi8, w ostatnim waypoincie mi8 dałem: cel action ["GETOUT", mi8], cel move getpos "2".
Ustawiłem wyzwalacz: gdy strzał=true to: [cel ] join mi8; cel move getpos mi8; cel ordergetin true; cel assignascargo mi8;
W założeniu proste ale za nic nie chce mi to działać. Cel po moim "pudle" ucieka do śmigłowca ale ten na niego nie czeka tylko sam odlatuje. Nawet gdy dałem mu chyba z 30-40 sek. [w polach min. mid. max.] czekania. Stoi chyba z 5 sek i odlatuje.

Jeśli ktoś zna rozwiązanie mojego problemu lub ewentualnie wie jak inaczej to zrobić, będę bardzo wdzięczny.

skrypt, którego użyłem w tej misji, a który aktywuje (strzał=true) gdy padnie strzał z broni m107 to ten, co dotyczył chyba flar lub świec dymnych... (mam nadzieję, że nie łamie regulaminu)
----------------------------------------------------------------------------------
w init.sqf
strzal = false;
sniper addEventHandler ["fired", {[_this select 4] execVM "sniper.sqf";}];
----------------------------------------------------------------------------------
w sniper.sqf
_pocisk = _this select 0;
if (_pocisk == "B_127x99_Ball_noTracer") then
{
strzal = true;
publicVariable "strzal";

}
else
{
if (_pocisk == "B_127x99_Ball_noTracer") then
{
strzal = true;
publicVariable "strzal";

};
};
------------------------------------------------------


Ostatnio edytowano 02 lutego 2010, 03:23 przez kmax1, łącznie edytowano 1 raz

Góra
 Zobacz profil  
 
 Tytuł: Re: aktywacja gdy padnie strzał z m107.
PostNapisane: 30 stycznia 2010, 12:10 
Offline

Dołączył(a): 31 grudnia 2009, 15:51
Posty: 77
Reputacja: 7
krzysiek2222 doesn't have reputation
Moim zdaniem to przy strzale z m107 możesz zrobić coś takiego
kolejny skrypt np. strzal.sqf
Kod:
if (alive cel) then {
if (cel in mi8) then {
mi8 move getpos "1";
}
else {
cel assignAsCargo mi8;
cel orderGetIn true;
waitUntil {cel in mi8};
mi8 move getpos "1";
}
}
else {
mi8 move getpos "1";
sleep 3;
endMission "END1"
}
sleep 15;
if (alive cel and (sniper distance cel > 1000)) then {
endMission "LOSER";
}
else {
if (not alive cel) then {
sleep 3;
endMission "END1";
}
else {
sleep 20
if (not alive cel) then {
sleep 3;
endMission "END1"
}
else {
endMission "LOSER";
}
}
}

I dajesz wyzwalacz z warunkiem strzal i w aktywacji [] exec "strzal.sqf";
Dałbym jeszcze wyzwalacz z końcem misji #2
Kod:
not (alive cel or strzal)

na wypadek rozbicia się śmigłowca przed wysadzeniem celu.
Wiem, że wykroczyłem poza pytanie, ale moim zdaniem trzeba dać chłopakowi szansę zrehabilitować się po spudłowaniu.

Pozdrawiam

_________________
Stronka o ARMA II


Góra
 Zobacz profil  
 
 Tytuł: Re: aktywacja gdy padnie strzał z m107.
PostNapisane: 30 stycznia 2010, 16:06 
Offline

Dołączył(a): 01 listopada 2009, 20:08
Posty: 20
Reputacja: 0
kmax1 doesn't have reputation
Witam! Dziękuję za ekspresową odpowiedz i poświęcony czas.
Niestety zastosowałem Twój skrypt i u mnie nie chce działać. Pewnie to jak zwykle jakiś mój drobny błąd. Nie wiem ale poddaję się powoli...
Zrobiłem wszystko od początku, nie bawiąc się w waypointy itp. postawiłem ruska(cel), snajpera (sniper) i śmiglowiec (mi8). Zastosowałem skrypt rozpoznający wystrzał z m107. Następnie użyłem Twojego skryptu "strzal.sqf" ( wyzwalacz - warunek strzal i w init. [] exec "strzal.sqf";) dałem też drugi wyzwalacz z warunkiem not (alive cel or strzal) z zakończeniem END#2.
Wygląda to tak: Bez względu na to czy zabiję cel czy w niego nie trafię, natychmiast włącza mi się koniec misji. Myślałem, że może winą jest ACE więc włączyłem "czystą" Armę2 i niestety mam to samo. :-( Nie mam już pomysłu o co może chodzić...


Góra
 Zobacz profil  
 
 Tytuł: Re: aktywacja gdy padnie strzał z m107.
PostNapisane: 30 stycznia 2010, 19:38 
Offline
Avatar użytkownika

Dołączył(a): 29 czerwca 2007, 21:02
Posty: 405
Lokalizacja: Żywiec
Reputacja: 20
Artek3333 doesn't have reputation
kmax1 napisał(a):
...( wyzwalacz - warunek strzal i w init. [] exec "strzal.sqf";) ...

w init daj
Kod:
[]execVM"strzal.sqf";
bez VM to tylko sqs.


Góra
 Zobacz profil  
 
 Tytuł: Re: aktywacja gdy padnie strzał z m107.
PostNapisane: 30 stycznia 2010, 19:48 
Offline

Dołączył(a): 31 grudnia 2009, 15:51
Posty: 77
Reputacja: 7
krzysiek2222 doesn't have reputation
No faktycznie zapomniałem o tych 2 literkach, przez które wszystko nie działało. I jeszcze pytanie: jaki jest dystans do celu jak oddajesz strzał?

_________________
Stronka o ARMA II


Góra
 Zobacz profil  
 
 Tytuł: Re: aktywacja gdy padnie strzał z m107.
PostNapisane: 30 stycznia 2010, 20:03 
Offline

Dołączył(a): 01 listopada 2009, 20:08
Posty: 20
Reputacja: 0
kmax1 doesn't have reputation
dzięki! wszystko sprawdzę jak tylko bedę w domu. Jeśli chodzi o odległość snajpera, to rozumiem, że chodzi o zapisany parametr w skrypcie,
(..)if (alive cel and (sniper distance cel > 1000)) then {
endMission "LOSER"
(...); w którym chodzi o to, że jeśli snajper byłby dalej niż 1000m, to misja też zakończyłaby się niepowodzeniem.
Jeśli dobrze to zrozumiałem, to z tym nie bedę miał chyba problemu (ewentualnie wpiszę inną odległość). Dziekuję wszystkim za pomoc. Dam znać czy wszystko działa.


Góra
 Zobacz profil  
 
 Tytuł: Re: aktywacja gdy padnie strzał z m107.
PostNapisane: 30 stycznia 2010, 20:13 
Offline

Dołączył(a): 31 grudnia 2009, 15:51
Posty: 77
Reputacja: 7
krzysiek2222 doesn't have reputation
Chodzi mi tylko o to, że jak po 15 sek. od strzału cel oddali się na 1000m od snajpera to marne szanse, żeby go załatwić (trzeba byłoby szukać igły w stogu siana). Chodzi też o inną ewentualność: odleci śmigłowcem, a snajperowi nie uda się zestrzelić śmigłowca. Ten dystans możesz spokojnie zmieniać w zależności od tego, jaki to teren.

_________________
Stronka o ARMA II


Góra
 Zobacz profil  
 
 Tytuł: Re: aktywacja gdy padnie strzał z m107.
PostNapisane: 31 stycznia 2010, 20:44 
Offline

Dołączył(a): 01 listopada 2009, 20:08
Posty: 20
Reputacja: 0
kmax1 doesn't have reputation
Troche mi głupio, bo wiem, że to pewnie jakiś banał ale gdy wpisalem w init w wyzwalaczu []execVM "strzal.sqf" wyskakuje mi Type script, expected nothing Nie znam się niestety na skryptach, wiec przepraszam za zadawanie banalnych pytań.


Góra
 Zobacz profil  
 
 Tytuł: Re: aktywacja gdy padnie strzał z m107.
PostNapisane: 31 stycznia 2010, 20:47 
Offline
Avatar użytkownika

Dołączył(a): 30 października 2008, 18:30
Posty: 1306
Lokalizacja: Wodzisław Śl.
Reputacja: 18
SaS TrooP doesn't have reputation
dummyshit = [] exec "skrypt.sqf";

po [] jest spacja, a .sqf wymaga wartości, która nie jest używana, w tym przypadku dummyshit (to ma lepszą nazwę, ale teraz jej nie pamiętam)

_________________
Obrazek


Góra
 Zobacz profil  
 
 Tytuł: Re: aktywacja gdy padnie strzał z m107.
PostNapisane: 31 stycznia 2010, 20:53 
Offline
Avatar użytkownika

Dołączył(a): 13 marca 2007, 12:50
Posty: 1008
Reputacja: 25
kondor doesn't have reputation
1. @Sas Troop: używaj ładniejszych słów
2. temp = [] execVM "strzal.sqf" a nie exec
3. zmiennej temp można użyć, żeby sprawdzić, czy skrypt się już skończył (komenda scriptDone)


Góra
 Zobacz profil  
 
 Tytuł: Re: aktywacja gdy padnie strzał z m107.
PostNapisane: 31 stycznia 2010, 21:59 
Offline
Avatar użytkownika

Dołączył(a): 30 października 2008, 18:30
Posty: 1306
Lokalizacja: Wodzisław Śl.
Reputacja: 18
SaS TrooP doesn't have reputation
execVM, sorry, teraz ja namieszałem :P

_________________
Obrazek


Góra
 Zobacz profil  
 
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy temat Odpowiedz w temacie  [ Posty: 19 ]  Przejdź na stronę 1, 2  Następna strona

Wszystkie czasy w strefie UTC + 1 [czas letni (DST)]


Kto przegląda forum

Użytkownicy przeglądający ten dział: Googlebot i 1 gość


Nie możesz rozpoczynać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Forum ARMA / OFP