Skocz do zawartości

Zablokowane Życie bohatera i przeciwnika


Lukaso

Rekomendowane odpowiedzi

Witam.Tak jak w opisie.Robie osobny object o nazwie rysunek i daje w nim event draw i klocek draw the health bar.

Potem ustawiam w create bohatera o nazwie bohater1 kod : health=100 .w kolizji z przeciwnikiem : health-=10 .

A w object o nazwie przeciwnik : hp=10 , jak zetknie się z bohaterem : hp-=10 , a jak z pociskiem : hp-=5 .

Chodzi mi o to, że gdybym w object przeciwnik wpisał health=10 , zamiast hp=10 i kolizji z bohaterem oraz pociskiem tak samo to do paska

życia by się naliczało to że np. strzelam bohaterem w przeciwnika, to odejmuje życie , które ma należeć do bohatera.Jak zrobić osobne życie bohaterowi i przeciwnikowi,

z tym, że pasek życia ma mieć tylko bohater? :huh:

Odnośnik do komentarza
Udostępnij na innych stronach

Yyyyy... przecież już mu zrobiłeś życie. Nie wiem czy wiesz, ale to hp, które napisałeś to zmienna i przechowuje dane (tu liczbowe). Jeżeli chcesz, żeby zginął kiedy straci całe życie to przy kolizji w kolcku execute a piece of code (zakładka control) wpisz

GML
if(hp<=0) then instance_destroy();
Poczytaj sobie o GMLu bo widzę, że siedzisz jeszcze w klockach.
Odnośnik do komentarza
Udostępnij na innych stronach

każdy obiekt musi mieć osobne hp, u bohatera jeśli robisz health = XX, to wtedy w draw rysujesz draw_helthbar a u przeciwnika robisz w create: hp = 10 (a nie health, bo health to globalna gamemakera i tutaj ma ją gracz u Ciebie) a potem w kolizji z pociskiem czy graczem robisz: hp-=5 czy ile tam chcesz. odwołujesz się wtedy do hp przeciwnika a nie do health ( w przypadku gdy życie traci przeciwnik.). Natomiast jesli przeciwnik zadaje cios bohaterowi i to bohater traci życie to robisz health-= iletamchcesz i będzie git.

Odnośnik do komentarza
Udostępnij na innych stronach

Nie, nie, nie! Create jak sama angielska nazwa mówi to stworzenie, czyli akcja dziejąca się raz podczas stworzenia. Ja kazałem wrzucić to przy kolizjach razem z utratą życia. Czyli np. tak:

GML
hp-=ileśtam

if hp<1

{

instance_destroy();

}

Gdyby to wrzucić w event step, to sprawdzanie działoby się co klatkę, ale po co, skoro stan zmienia się tylko przy kolizji = utracie życia.

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...