• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Skrypt zabijania przeciwników (2D)

Mały hosting, OGROMNE możliwości
0 głosów
921 wizyt
pytanie zadane 16 grudnia 2018 w C# przez Lukas Hajduga Użytkownik (830 p.)
Witajcie !

Mam maly problem. Tworze mała gre platformową w Unity podobną do Mario Brosa. Problem jest taki że niemam pojęcia jak napisać skrypt w C# odpowiedzialny za zabijanie przeciwników kiedy gracz skoczy im na głowe a kiedy gracz wejdzie w przeciwnika to ten zabija gracza. Moglibyscie jakoś pomóc ? Byłbym wam bardzo wdzięczny.
komentarz 16 grudnia 2018 przez Tomek Sochacki Ekspert (227,510 p.)
Nie znam C# i Unity, ale skoro napisałeś obsługę ruchu, zakładam też że np. z kolizjami z przeszkodami itp. to dlaczego nie możesz w analogiczny sposób zaprogramować kolizji z "przeciwnikiem"? To przecież analogiczna sytuacja np. do kolizji ze ścianą, tylko po prostu zdarzenie inne, np. usunięcie z widoku obiektu przeciwnika, dodanie jakieś animacji itp.
1
komentarz 16 grudnia 2018 przez Lukas Hajduga Użytkownik (830 p.)
Samo zaprogramowanie kolizji niesprawia mi trudności, ale porafie zrobić to tylko tak: Kiedy gracz zderza się z przeciwnikiem ten niknie albo kiedy gracz zderza się z przeciwnikiem to przeciwnik umiera. Niewiem w jaki sposób mogę odróżnić kolizje kiedy gracz chce zabić a kiedy to grac zostaje zabijany.

3 odpowiedzi

0 głosów
odpowiedź 16 grudnia 2018 przez Dominik Kostencki Użytkownik (650 p.)
Wydaje mi się, że chodzi ci o to,że jeśli gracz zderzy sie z przeciwnikiem od góry tzn wpadnie w jego Collider Boxa od góry to przeciwnik znika, jeśli kolizja nastąpi od boku to gracz umiera. W unity masz strukture ContactPoint, którą możesz sprecyzować za pomocą tagów.

Wiecej o tym tutaj -> https://docs.unity3d.com/ScriptReference/Collision.html
0 głosów
odpowiedź 16 grudnia 2018 przez PreZmyK Pasjonat (21,530 p.)
Możesz zrobić collider na dole playera, wysunięty trochę bardziej i dodać warunek, że gracz musi spadać, lub bardziej zaawansowany system detekcji z Physics.Raycast();
0 głosów
odpowiedź 16 stycznia 2019 przez Ciepły Obywatel (1,800 p.)
Myślę że najlatwiej było by zrobić dwa collidery, jeden na środku postaci a drugj na glowie postaci i juz :3

Podobne pytania

0 głosów
0 odpowiedzi 309 wizyt
pytanie zadane 4 sierpnia 2017 w C# przez DeBos123 Nałogowiec (44,950 p.)
+1 głos
1 odpowiedź 937 wizyt
pytanie zadane 3 czerwca 2018 w Nasze projekty przez 10kw10 Pasjonat (22,880 p.)
0 głosów
1 odpowiedź 1,577 wizyt
pytanie zadane 21 listopada 2017 w OpenGL, Unity przez Eryk Chojnacki Obywatel (1,420 p.)

93,718 zapytań

142,631 odpowiedzi

323,262 komentarzy

63,266 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...