Dziś jest: Sobota, 4 lipca 2020, godzina 20:35
zaloguj się :


Odpowiedź

Temat: Widoczność

Axator
Wiadomość [#1]: 19.06.2013 o 23:18

Konto skasowane





Witam,
tworzę mapę typu Hero Defence/ Survival.
Ustawiłem wydarzenie, które pokazuje wszystkim graczom region w miejscu wybierania Hero. Chciałbym, aby po 60 sekundach ten region był niewidoczny (zamglony).
Próbowałem Disable (Last created visibility modifier), a także Destroy (Last created visibility modifier) i nie podziałało. Wie ktoś jak to ustawić?

Pojawił się także inny problem. Chciałem ustawić komendę -random, aby wybrać losowego Hero. Stworzyłem dwie zmienne RandomHero - typu rodzaj jednostki i NumHero typu C. Ustawiłem wyzwalacz:
Wydarzenie:
Map initialization
Warunki:
Brak
Akcje:
Set RandomHero[1] - Hero1
Set RandomHero[2] = Hero2
Itd.
Na końcu ustawiłem
Set NumHero = 16

Potem zrobiłem nowy wyzwalacz:
Wydarzenie:
Player (Red) types a message containing -random as idealna zgodność
Warunki:
Brak
Akcje:
Jednostka - Create 1 RandomHero[(Random integer number between 1 and NumHero)] for Gracz 1 (Czerwony) at (Center of Region) facing Domyślna orientacja budynku degrees

W grze po wpisaniu komendy -random, pojawia się tylko pierwszy Hero ustawiony jako RandomHero[1] - Hero1
Siedziałem nad tym z 2h szukając błędu, ale nic się nie dopatrzyłem. Może ktoś zauważy to czego ja nie widzę? Albo jak to inaczej zrobić?

Pozdrawiam.

[Edycja Axator - 20.06.2013 o 14:33]

Drakonno
Wiadomość [#2]: 20.06.2013 o 15:01

Konto skasowane





Warcraft nie ma czegoś takiego jak... Seed. Ziarno. Coś, co jest jakby argumentem funkcji, która zwraca jakąś wartość. Zwykle programy pobierają czas komputera do tego, więc co sekundę będzie inny wynik. Musisz napisać własną funkcję losującą liczbę. Spróbowałbym z pobieraniem "gameTime" i zwracaniem reszty z dzielenia.
Co do pierwszego zależy jak wygląda ta Twoja funkcja, bo może tworzysz więcej modyfikatorów widoczności. I jak coś, to przeszukaj po prostu dostępne akcje z zakładek, prawdopodobnie "gra" i "widzialność".



Skromna animacja - http://img694.imagesha(...)fend.gif

-Brrr... A którego z nich, powiedz, można ukatrupić za pomocą zwierciadła?
-Każdego. Jeśli walnąć prosto w łeb.
A. Sapkowski - Rozmowa wiedźmina z rycerzem po zabiciu kuroliszka.

-Gdzie podkop, jaki podkop, lampa w podłodze! Jakie to wszystko popieprzone!
Seksmisja
Hertaos
Wiadomość [#3]: 20.06.2013 o 15:32

Konto skasowane





Axator napisał
Witam,
tworzę mapę typu Hero Defence/ Survival.
Ustawiłem wydarzenie, które pokazuje wszystkim graczom region w miejscu wybierania Hero. Chciałbym, aby po 60 sekundach ten region był niewidoczny (zamglony).
Próbowałem Disable (Last created visibility modifier), a także Destroy (Last created visibility modifier) i nie podziałało. Wie ktoś jak to ustawić?

I w czym niby problem?
Elapsed game time is 60 second
Actions
Create initialy enabled visiblity modifier at region_wyboru_bohatera emiting fog of war for player 1, player 2 itp
Axator napisał
Pojawił się także inny problem. Chciałem ustawić komendę -random, aby wybrać losowego Hero. Stworzyłem dwie zmienne RandomHero - typu rodzaj jednostki i NumHero typu C. Ustawiłem wyzwalacz:
Wydarzenie:
Map initialization
Warunki:
Brak
Akcje:
Set RandomHero[1] - Hero1
Set RandomHero[2] = Hero2
Itd.
Na końcu ustawiłem
Set NumHero = 16

Potem zrobiłem nowy wyzwalacz:
Wydarzenie:
Player (Red) types a message containing -random as idealna zgodność
Warunki:
Brak
Akcje:
Jednostka - Create 1 RandomHero[(Random integer number between 1 and NumHero)] for Gracz 1 (Czerwony) at (Center of Region) facing Domyślna orientacja budynku degrees

W grze po wpisaniu komendy -random, pojawia się tylko pierwszy Hero ustawiony jako RandomHero[1] - Hero1
Siedziałem nad tym z 2h szukając błędu, ale nic się nie dopatrzyłem. Może ktoś zauważy to czego ja nie widzę? Albo jak to inaczej zrobić?

Pozdrawiam.

[Edycja Axator - 20.06.2013 o 14:33]

Dlaczego niby zrobiłeś zmienną RandomHero? Nie wystarczy po prostu że jak masz w zmiennej RandomHero 2 opcje to robisz
Jednostka - Create 1 RandomHero[(Random integer number between 1 and 2)] for Gracz 1 (Czerwony) at (Center of Region) facing Domyślna orientacja budynku degrees
Robienie dodatkowej zmiennej tylko komplikuje sprawę.

Axator
Wiadomość [#4]: 20.06.2013 o 16:25

Konto skasowane





Dzięki Drakonno.
Przyznam, że nie do końca zrozumiałem twoje wytłumaczenie, ale napisałem własną "funkcję" w zależności od złota gracza którego nie ma :P
Stworzyłem wyzwalacz:
Wydarzenia:
Czas - Every 0.01 seconds of game time
Warunki:
Brak
Akcje:
Gracz - Set Gracz10 (Jasnoniebieski) Aktualna ilość złota to (Random integer number between 1 and 16)

A w poprzednim wyzwalaczu z komendą -repick, dałem coś takiego
Jednostka - Create 1 RandomHero[((Gracz10 (Jasnoniebieski) Aktualna ilość złota) + 0)] for Gracz 1 (Czerwony) at (Center of Revive <gen>) facing Domyślna orientacja budynku degrees

I zadziałało biggrin.gif

Hertaos,
zastanawiałem się czy nie wywalić tej zmiennej NumHero i zamiast niej wstawić zwykłą liczbę. Zamierzam to sprawdzić.

[Edycja Axator - 20.06.2013 o 16:06]

[Edycja Axator - 20.06.2013 o 16:06]

Hertaos napisał

I w czym niby problem?
Elapsed game time is 60 second
Actions
Create initialy enabled visiblity modifier at region_wyboru_bohatera emiting fog of war for player 1, player 2 itp



Nie działa.

Mój wyzwalacz wygląda tak:
Wydarzenia:
Czas - Elapsed game time is 0.50 seconds
Warunki:
Brak
Akcje:
Grupa graczy - Pick every player in (All players) and do (Widzialność - Create an initially Włączone visibility modifier for (Picked player) emitting Widzialność across HERO SPOTS <gen>)
Wait 60.00 seconds
Grupa graczy - Pick every player in (All players) and do (Widzialność - Create an initially Włączone visibility modifier for (Picked player) emitting Wojenna zasłona across HERO SPOTS <gen>)

Drakonno
Wiadomość [#5]: 21.06.2013 o 01:32

Konto skasowane





Ja tylko dokładniej wytłumaczyć chcę, gdyby ktoś miał inny problem.

Najpierw kilka słów do tagu: losowy, liczba, losowość, losowa, random, number.

A teraz tak... Komputer to nie człowiek, który sobie weźmie: "Hm... Ładne słońce, w sumie to jest 7 rano, o, samochód miał rejestrację z liczbą 9, jak dodam i podzielę, to będę miał 8."
On ma wbudowaną funkcję f(x), gdzie x to po prostu argument. Może wyglądać różnie f(x)=x, f(x)=10/(x*5+10)/10 itp. itd. Po prostu otrzymujemy jakąś wartość. I teraz, żeby były różne wartości, to muszą być różne argumenty, to jest oczywiste. Najprostszym, zawsze różnym, argumentem, jest czas komputera. Jako, że nie ma w W3 chyba funkcji od tego równie dobrze sprawdzi się aktualny czas gry. Jeśli zwrócisz sobie w dodatku resztę z dzielenia tego czasu przez 16, to już w ogóle miód, bo będziesz miał liczby z przedziału <0;15>, więc starczy dodać 1 i masz przedział <1;16>, czyli to co chcesz.



Skromna animacja - http://img694.imagesha(...)fend.gif

-Brrr... A którego z nich, powiedz, można ukatrupić za pomocą zwierciadła?
-Każdego. Jeśli walnąć prosto w łeb.
A. Sapkowski - Rozmowa wiedźmina z rycerzem po zabiciu kuroliszka.

-Gdzie podkop, jaki podkop, lampa w podłodze! Jakie to wszystko popieprzone!
Seksmisja
Axator
Wiadomość [#6]: 21.06.2013 o 13:55

Konto skasowane





Nowe wytłumaczenie jest o niebo lepsze biggrin.gif

Mam nowe pytania:
1) Czy jest jakiś warunek typu Jednostka posiadająca Ability typu SKILL? Szukam i szukam ale nie mogę znaleźć.
2) W jaki sposób uzależnić warunki od levelu skilla? Zakładam że to są jakieś zmienne, nie potrafię tego ustawić :/

Drakonno
Wiadomość [#7]: 21.06.2013 o 17:38

Konto skasowane





Boolean Comparison, jeśli mnie pamięć nie myli, przetrzymuje różne ciekawe wartości. Między innymi poziom zdolności.
Plus tak, jest też Ability Comparison, które sprawdza, czy na przykład "rzucone zaklęcie to zaklęcie X".



Skromna animacja - http://img694.imagesha(...)fend.gif

-Brrr... A którego z nich, powiedz, można ukatrupić za pomocą zwierciadła?
-Każdego. Jeśli walnąć prosto w łeb.
A. Sapkowski - Rozmowa wiedźmina z rycerzem po zabiciu kuroliszka.

-Gdzie podkop, jaki podkop, lampa w podłodze! Jakie to wszystko popieprzone!
Seksmisja
Axator
Wiadomość [#8]: 21.06.2013 o 17:52

Konto skasowane





Mi konkretnie chodziło o to, że jednostka posiada jakąś zdolność, a nie ją używa. Na przykład w boolean comparision jest opcja jednostka - unit has specific buff. Ja poszukuję czegoś podobnego, tylko skill a nie buff.

Czy warunek Hero Skill Comparision odpowiada za uczenie się jakiegoś czaru czy posiadanie go?

Mógłbyś podać konkretniej jak wygląda ten warunek na poziom zdolności w boolean comparision? Bo coś nie mogę go znaleźć :/
Dobra, już znalazłem, nie było w boolean comparision tylko w integer comparision biggrin.gif
[Edycja Axator - 21.06.2013 o 17:55]

[Edycja Axator - 21.06.2013 o 19:00]

REKLAMA
Strona 1 z 1.
Idź do strony :

Odpowiedź

Skocz do :