Autor |
Wiadomość |
Nnorm
Dołączył: 26 Sie 2010
Posty: 3
Przeczytał: 0 tematów
Ostrzeżeń: 0/3
|
Wysłany:
Pią 21:24, 17 Lut 2012 |
|
Dzięki, zadziałało Wcześniej coś takiego próbowałem zrobić tylko nie wychodziło
|
Post został pochwalony 0 razy
|
|
|
|
|
|
JacobvsLocke
Dołączył: 05 Maj 2011
Posty: 8
Przeczytał: 0 tematów
Ostrzeżeń: 0/3
Płeć:
|
Wysłany:
Nie 18:47, 11 Mar 2012 |
|
Jak zrobić, aby rycerz, którego bije mój hero co sekundę otrzymywał -1 do ataku??
|
Post został pochwalony 0 razy
|
|
|
|
firefly
Straż Miejska
Dołączył: 20 Sie 2009
Posty: 950
Przeczytał: 1 temat
Pomógł: 62 razy
Ostrzeżeń: 2/3
Płeć:
|
Wysłany:
Czw 13:58, 15 Mar 2012 |
|
Nie da sie dokladnie tak zrobic. Najblizsze mozliwe rozwiazanie, to połączenie dwóch warunków
1. wyrażenie do obiektu, zaznaczasz rycerza, wpisujesz $program == X (tu sprawdź w podręczniku nigiego ile wynosi zmienna program dla ataku)
2. obiekt w obszarze, rycerz, obszar Twój hero, odległość 1
3. Akcja opóźnij 1000ms
4. Akcja wyrażenie do obiektu rycerz $attack = $attack - 1
5. Akcja zachowaj regułę
Ograniczenia:
1. działa na konkretnego rycerza. Jeżeli chcesz by działało na wszystkich rycerzy, to będzie to dużo bardziej skomplikowane - ale damy radę
2. Twój hero nie musi atakować rycerza. Będzie to działało, gdy rycerz będzie atakował Twojego hero, oraz będzie w odległości 1. Czyli Twój hero może walczyć z kimś innym, lub nawet uciekać, a będzie to działało - tego niestety nie ominiesz
|
Post został pochwalony 0 razy
|
|
|
|
JacobvsLocke
Dołączył: 05 Maj 2011
Posty: 8
Przeczytał: 0 tematów
Ostrzeżeń: 0/3
Płeć:
|
Wysłany:
Sob 19:00, 17 Mar 2012 |
|
Zacznę od tego, że to ma działać na wszystkich rycerzy gracza nr 2. Mam ustawione, że wszyscy rycerze gracza 2 jeśli są w odl. 1 od hero, otrzymują -1 do ataku co 10 sekund. Ustawiłem za pomocą funkcji "program" że hero musi walczyć. Ale teraz jeśli mojego hero atakują dwa rycerze, to atak jest odejmowany im obu.
Chodzi mi o to, żeby ustawić, że dany rycerz musi walczyć (być raniony) z moim hero, aby atak mu się odjął.
Mam pewien pomysł ale nie wiem jak to zrobić. Chodzi o to, żeby dodać jeszcze "Wyrażenie do obiektu" i w nim ustawić, że zdrowie tego rycerza (tego który stoi w odl. 1 od herosa) się zmniejsza. Wtedy naturalne będzie to, że to hero go atakuje. Problem w tym, że to ma dotyczyć każdego rycerza - również tego wyprodukowanego w koszarach.
|
Post został pochwalony 0 razy
|
|
|
|
firefly
Straż Miejska
Dołączył: 20 Sie 2009
Posty: 950
Przeczytał: 1 temat
Pomógł: 62 razy
Ostrzeżeń: 2/3
Płeć:
|
Wysłany:
Sob 21:29, 17 Mar 2012 |
|
No to ja widzę to tak - warunki:
Twój bohater $ program == walczy
Rycerz którykolwiek gracza 2 $program == walczy
Akcja: Ustaw właściwości obiektu - heros, wyrażenie : $pozx = $x ; $pozy = $y
Ustaw właściwości obiektu - rycerze gracza 2 (wszyscy): $attack = $attack - XXX * ($x<pozx>$pozx-2)*($y<pozy>$pozy-2)
i akcja zachowaj regułę. W miejsce XXX wstawiasz ile ataku ma spadać. Teraz będzie wyglądało to tak: Ty musisz walczyć, dowolny rycerz musi walczyć. Wtedy każdy rycerz w odległości 1 będzie tracił atak. Niestety nie bardzo da radę wsadzić tam regułę o utracie życia - to można by zrobić tylko dla konkretnego rycerza. Możesz za to dopisać do powyższego " * ($health < $maxhealth)", wtedy rycerz będzie musiał być dodatkowo ranny
I widzę że jesteś kumaty w edytorze, więc Ci wyjaśnie czemu tego warunku z życiem nie damy rady zrobić. Oto jak by to wyglądało dla konkretnego rycerza:
ustaw właściwości $zycie = $health, wykonuj co pół sekundy albo sekunde (trzeba by zobaczyć jak lepiej działa)
i w warunku do utraty ataku dodać, że $health < $zycie. Dzialalo by to tak, ze zmienna zycie zawiera ilosc zycia rycerza, po czym gdy ten poziom spadnie, to odejmie sie rycerzowi atak, i po chwili zmienna zycie przyjmie nowa wartosc. Ale niestety nie da sie tak zrobic dla grupy jednostek, gdyz kazda musialaby miec osobna zmienna, oraz kazdy rycerz musialby stac na mapie od poczatku - nie dzialaloby to na "koszarowców"
|
Post został pochwalony 0 razy
Ostatnio zmieniony przez firefly dnia Sob 21:33, 17 Mar 2012, w całości zmieniany 1 raz
|
|
|
|
JacobvsLocke
Dołączył: 05 Maj 2011
Posty: 8
Przeczytał: 0 tematów
Ostrzeżeń: 0/3
Płeć:
|
Wysłany:
Nie 20:22, 18 Mar 2012 |
|
" * ($health < $maxhealth)"
To powinno wystarczyć. Dzięki za pomoc.
|
Post został pochwalony 0 razy
|
|
|
|
firefly
Straż Miejska
Dołączył: 20 Sie 2009
Posty: 950
Przeczytał: 1 temat
Pomógł: 62 razy
Ostrzeżeń: 2/3
Płeć:
|
Wysłany:
Nie 21:00, 18 Mar 2012 |
|
Zawsze będzie to miało sens, że np bohater zatruwa przeciwnika, i ten traci stopniowo atak
|
Post został pochwalony 0 razy
|
|
|
|
GameTzar
Dołączył: 15 Kwi 2011
Posty: 39
Przeczytał: 0 tematów
Pomógł: 5 razy
Ostrzeżeń: 0/3
Skąd: Irlandia / Sligo Płeć:
|
Wysłany:
Czw 7:17, 06 Wrz 2012 |
|
Witam
Chciałbym dowiedzieć się co zrobić aby po jakiejś konwersacji odjęło graczu np 100 złota.
|
Post został pochwalony 0 razy
|
|
|
|
firefly
Straż Miejska
Dołączył: 20 Sie 2009
Posty: 950
Przeczytał: 1 temat
Pomógł: 62 razy
Ostrzeżeń: 2/3
Płeć:
|
Wysłany:
Czw 9:16, 06 Wrz 2012 |
|
http://www.tzar.fora.pl/mapy-i-inne-do-sciagniecia,15/podreczniki-wszystko-czego-potrzeba-do-stworzenia-mapki,4372.html ---> http://www.tzar.fora.pl/mapy-i-inne-do-sciagniecia,15/edytor-troche-porad-i-wskazowek,3252.html ---> wyrażenie @setgold(1,@gold(1)+10) wklejasz np jako wynik frazy
"*numer gracza, jaki otrzymuje złoto, jest definiowany przez obie pogrubione liczby @setgold(1,@gold(1)+10) (liczby mogą być różne, akcja działa w następujacy sposób: ustawia złoto gracza okreslonego pierwszą pogrubioną cyfrą, na złoto gracza pogrubionego drugą cyfrą, plus ta trzecia liczba. Jeżeli obaj gracze są jednakowi, wtedy poprostu dodaje złoto
*możesz zmienić zasób, jaki jest dodawany: @setgold(1,@gold(1)+10) - zamiast gold, może być: food, wood, stone"
|
Post został pochwalony 1 raz
|
|
|
|
GameTzar
Dołączył: 15 Kwi 2011
Posty: 39
Przeczytał: 0 tematów
Pomógł: 5 razy
Ostrzeżeń: 0/3
Skąd: Irlandia / Sligo Płeć:
|
Wysłany:
Czw 17:46, 06 Wrz 2012 |
|
Wielkie dzięki za pomoc ))
Wszystko działa poprawnie
|
Post został pochwalony 0 razy
|
|
|
|
King Paweł
Dołączył: 28 Sty 2007
Posty: 449
Przeczytał: 0 tematów
Pomógł: 21 razy
Ostrzeżeń: 0/3
|
Wysłany:
Pią 20:23, 07 Wrz 2012 |
|
Czy jest taka możliwość, aby dać grupie jednostek rozkaz trzymania pozycji?
Tak żeby stali i bili tylko jednostki w zasięgu ataku.
Próbowałem dać akcje rozkaz dla obiektu: Broń pozycji, ale nigdy mi to nie działało.
|
Post został pochwalony 0 razy
|
|
|
|
ziomal6512
Dołączył: 22 Cze 2010
Posty: 49
Przeczytał: 0 tematów
Ostrzeżeń: 0/3
Skąd: Legnica Płeć:
|
Wysłany:
Nie 18:57, 23 Gru 2012 |
|
Witajcie. Mam problem gdyż chcę aby za każdym razem kiedy zabiję wrogą jednostkę dostawał 10 złota. Próbowałem kombinowac wyrażeniami ale jedynie co z tego wychodzi to to że jak zabiję dowolną jednostkę to co sekundę dostaje te 10 złota
|
Post został pochwalony 0 razy
|
|
|
|
firefly
Straż Miejska
Dołączył: 20 Sie 2009
Posty: 950
Przeczytał: 1 temat
Pomógł: 62 razy
Ostrzeżeń: 2/3
Płeć:
|
Wysłany:
Wto 20:55, 25 Gru 2012 |
|
|
|
|
kaboomb
Dołączył: 01 Mar 2013
Posty: 1
Przeczytał: 0 tematów
Ostrzeżeń: 0/3
Płeć:
|
Wysłany:
Pią 18:23, 01 Mar 2013 |
|
Wie ktoś może jak zrobić aby po konwersacji jednostka zmieniała swoje królestwo z królestwa 6 do królestwa 1?
|
Post został pochwalony 0 razy
|
|
|
|
firefly
Straż Miejska
Dołączył: 20 Sie 2009
Posty: 950
Przeczytał: 1 temat
Pomógł: 62 razy
Ostrzeżeń: 2/3
Płeć:
|
Wysłany:
Sob 10:35, 02 Mar 2013 |
|
W wyniku ostatniej frazy w konwersacji wpisujesz $zmienna = 1 (slowo zmienna mozesz zastapic dowolna nazwa).
Robisz regułę. W warunku wpisujesz $zmienna == 1
Akcja: zmień właściciela obiektu - tu już sobie poradzisz
|
Post został pochwalony 0 razy
|
|
|
|
|