SAIL - Zakończenie misji po wejścu do budynku

Tematy zbędne, ale zbyt dobre by je usunąć znajdują się tutaj.
Zamknuté
Uživatelský avatar
14Lukas14
Soldier level 0
Soldier level 0
Príspevky: 3
Dátum registrácie: stř dub 11, 2007 1:52 pm
Bydliště: Piekło
Kontaktovať používateľa:

SAIL - Zakończenie misji po wejścu do budynku

Příspěvek od používateľa 14Lukas14 »

Z góry przepraszam jeśli było to już gdzieś napisane, ale mam takie pytanko - Jak zrobić, żeby np. po wejściu dojakiegoś tam budynku o jakims id np. eon konczyła się misja

Kód: Vybrat vše

if [jakis tam bohater wchodzi do dajmy eonu ktore ma id eon] then 
begin
SaveCharacter i blebleble
YouWin;
end;
Moze

Kód: Vybrat vše

IsInUnit(nie wiem jak tego się używa); 
:?: :?:
A moze jest coś takiego jak

Kód: Vybrat vše

IsInXY(id_postaci,wspl_x,wspl_y);
?????????????
Bo w tym wypadku te wspl zastapilbym wspl lokalizacji budynku i by bylo gicio :wink: :wink:
I'm what I'm
Thierry Henry is the best !!
I'm what I'm
Obrázek
Uživatelský avatar
NaDoL
Community Veteran
Community Veteran
Príspevky: 379
Dátum registrácie: stř dub 12, 2006 7:43 pm
Bydliště: Poland
Kontaktovať používateľa:

temat

Příspěvek od používateľa NaDoL »

Musisz użyć funkcji ''every'' czyli:
every 0$1 trigger IsInUnit(id_ludzia,id_budynku) do
Begin
kod;
end;

Z tym że nie jestem pewien czy w takiej kolejności te ID bo z pamięci pisze, jak nie zadziała to odwrotnie napisz ID jednostek
Obrázek
Uživatelský avatar
14Lukas14
Soldier level 0
Soldier level 0
Príspevky: 3
Dátum registrácie: stř dub 11, 2007 1:52 pm
Bydliště: Piekło
Kontaktovať používateľa:

Příspěvek od používateľa 14Lukas14 »

Nie działa mi ten kod, ktory napisales :cry: , wiec moje pytanie jest nadal aktualne.
Mam także inne pytanie jedno z nich bardzo podobne.
1: Jaką funkcję zastosować, aby po dojsciu do jakiegoś obszaru (nie arei) o konretnych koordynatach X i Y cos sie dzialo - czy moze sie nie dac i trzeba tworzyc areę

2: Co trzeba dopisać jeszcze, aby doświadczenie było przydzielane ??

Kód: Vybrat vše

RewardPeople(FilterAllUnits([[f_alive,],[f_side,1],[f_type,unit_human]])); 
Daje to, ale później pisze, że zdobyłeś 0 doświadczenia.

3. Jeśli ktoś wymyśli jakiś sposób na skonstruowanie filmiku, który wprowadzałby do gry i wyjaśniał fabułę.

4. Nie chcą mi działać dialogi tzn. napisy się wyświetlają, ale głosu nie ma, który wcześniej nagrałem mimo, iż stosuję się do poleceń

Kód: Vybrat vše

Plik dźwiękowy z nazwą XXMojDialog.wav (gdzie XX jest numerem misji) znajdujący się w [katalog modu]\Dialogs\[strona konfliktu]\XX ([strona konfliktu] może być Am (amerykanie), Ar (arabowie) lub Ru (rosjanie), XX to numer misji) będzie odtworzony jeżeli istnieje. Pliki dzwiękowe muszą być w formacie PCM 22.050 kHz, 16 Bit, Mono.
:P :P :P :P :P :P :P :P
Zrobiłem już pierwszą misję i muszę teraz tylko dodać tą linijkę, żeby po wejściu do eonu mojej załogi (a przynajmniej jednego z nich) kończyła się misja i to doświadczenie nieszczęsne :x
Wierzę, że mi pomożecie.[/code]
I'm what I'm
Thierry Henry is the best !!
I'm what I'm
Obrázek
Radzio
Site Administrator
Site Administrator
Poland
Príspevky: 2898
Dátum registrácie: pát črc 28, 2006 10:58 am
Bydliště: Bialystok, Poland

Příspěvek od používateľa Radzio »

Kod na to wejscie do budynku:

Kód: Vybrat vše

on enterbuilding(b,un) do
  begin
    if b=eon then
    if un=jednostka then
    //kod
    end;
    end;
  end;
Kod zaklada, ze eon ma ident. eon, a jednostka - jednostka :D

1)Jest taki kod, ktory by to umozliwial, ale czy myslisz, ze gracz bedzie probowal dostac sie do danego punktu X Y? Lepiej zrobic aree, prosciej, latwiej, lepiej :D
2)Kod ten jest jak najbardziej poprawny. Jednakze musi stac po kodzie na przydzielenie wszystkich medali i ich wyswietlenie, aby cos dawal. Musisz takze ustawic w ustawieniach mapy numer i rodzaj (kampanie) misji.
3)Zalezy jakiego rodzaju filmik masz na mysli :P
4)N/C, ale nie napisze o tym w tym poscie zeby nie byl za dlugi :D

EDIT:

Ok, wiec:
$ MyUnitsSpeach
- Hello World!

A sound file with the same name as XXUnitsSpeach.wav (Where XX is the mission number. First 2 characters are replaced)

Powyzej ten sam tekst z angielskiej wersji tutka.
Chodzi oto, ze dany dialog (jedna wypowiedz) ma np. ident. ToJa
Jej plik bedzie sie nazywal: XXJa, gdzie XX to numer misji, reszta tak jak w polskiej edycji tutka.

Podsumowanie: Trzeba skrocic nazwe o dwa pierwsze znaki.

EDIT By Shaman: Nie pisz posta pod postem. Naprawiłem twój błąd i skleiłem dwie wypowiedzi. Ale żeby mi się to więcej nie powtórzyło. :lol:
Uživatelský avatar
Odyseusz
Community Veteran
Community Veteran
Príspevky: 180
Dátum registrácie: stř led 24, 2007 12:37 pm
Bydliště: Wygwizdowo Dolne

Příspěvek od používateľa Odyseusz »

Z filmikiem, to chyba chodzi o ten pokroju amerykańskiego dziennika Macmillana w orginalnej kampanii :wink: Ale ten program do ich tworzenia chyba nie działa, gdzieś ktoś o tym już pisał.

EDIT By Shaman: A co ten post wnosi do tematu? Radzę ci go przeedytować, albo będę zmuszony dać ci ostrzeżenie.

Odys. Wjaśniłem, tylko dla Radzia, o jaki rodzaj filmików chodziło, odpowiedź na czyjeś pytanie chyba nie jest punktowana ostrzeżeniem :roll: Ale jak ci ten post nie pasi to go usun i po krzyku :]

EDIT By Shaman: Ale póki co w nazwie tematu nie ma frazy "Filmik" więc odpowiedź w tym wypadku mogła być tylko dodatkiem do posta. Nie dostałeś ostrzeżenia bo mogłeś o tym nie wiedzieć. Ale na przyszłość uważaj.
Naposledy upravil(a) Odyseusz dne sob dub 14, 2007 6:08 pm, celkem upraveno 2 x.
Uživatelský avatar
14Lukas14
Soldier level 0
Soldier level 0
Príspevky: 3
Dátum registrácie: stř dub 11, 2007 1:52 pm
Bydliště: Piekło
Kontaktovať používateľa:

Příspěvek od používateľa 14Lukas14 »

A więc tak
Ten twój kod jest dobry i działa.
1. Chciałem wiedzieć bo gdybym nie znał tej funkcji z budynkiem to możnaby było ją zastąpić z X i Y budynku, ale teraz jest już ok

2. mam ustawione w ustawieniach kampanie amer i misję 01
A kod mam taki mniej wiecej

Kód: Vybrat vše

every 0$3 trigger (cos tam musi zostac spelnione) do
begin
addmedal (tzn poszczegolne medale)
GiveMedals('Main'); 
RewardPeople(FilterAllUnits([[f_alive,],[f_side,1],[f_type,unit_human]]));
youwin;
(itd)
No i po spełnieniu tego warunku pojawiają sie medale, no i pozniej to menu z przydzielaniem doswiadczenia i pisze
zdobyłeś 0 doswiadczenia na kazda postac
3. Chodzi o taki jak np. amerykanski to wprowadzenie do kampanii lub przynajmniej cos podobnego do tego

4. Przez to co napisałeś rozumiem, ze jesli dialog w pliku texts.txt ma nazwe
ktosmowi
to przy nazywaniu pliku muz tego dialogu mam mu dac taka nazwe
01osmowi.wav
gdzie 01 jesli to jest pierwsza misja, czyz tak??
A i ja mam te dialoi w tym pliku texts.txt nazwane d1,d2,d3 tzn. ze mam zmienic nazwy na dluzsze??

No i pojawilo sie kolejne pytanie.
Zrobilem juz calego moda i jak go odpalam w editorze wszystko fajnie, ladnie, a jak odpalam w launcherze to wlacza mi sie oryginalna amerykanska kampania.
Zalezy to chyba gl od pliku mission.dat w katalogu campaigns. A tam mam raczej wszystko dobrze. Wiec w czym moze lezec problem??

EDIT:
Radzio wyslalem. Odbierz i obcykaj.
Naposledy upravil(a) 14Lukas14 dne sob dub 14, 2007 7:11 pm, celkem upraveno 2 x.
I'm what I'm
Thierry Henry is the best !!
I'm what I'm
Obrázek
Radzio
Site Administrator
Site Administrator
Poland
Príspevky: 2898
Dátum registrácie: pát črc 28, 2006 10:58 am
Bydliště: Bialystok, Poland

Příspěvek od používateľa Radzio »

Moze zle ustawiles foldery, jesli ci sie nie laduje w grze. Co do doswiadczenia, to kod wydaje sie byc dobry. Nazwy powinny byc raczej dluzsze. Jesli masz jeszcze jakies problemy to wyslij mi maila z modem.
Tuluk
Soldier level 2
Soldier level 2
Príspevky: 33
Dátum registrácie: stř dub 25, 2007 8:03 am

Příspěvek od používateľa Tuluk »

Czytałem już te posty i też chce skończyć misje czymś takim ale podajcie kod na zakończenie misji bo szukałem i nieznalazłem w tutorialach.
Zamknuté