PEW PEW PEW #1

Dzisiaj na pewno nie o rozdzielczości. Wiem że temat wraca co kilka dni, ale nie jestem jeszcze na to gotowy 🙂 A po co wyświetlać wynik gracza, jeśli jedynym sposobem na niszczenie przeciwników jest zderzanie się z nimi? Przydało by się uzbroić naszego bohatera.

Temat ten wydaje się być dość rozległy, dlatego podzielę go na kilka wpisów. W pierwszym stworzony zostanie prefab pocisku i obsługa logiki strzału. W drugim wprowadzę kolizje i uszkodzenia (wrogowie dostaną punkty życia). W kolejnych (kwiecień/maj) zostanie zaimplementowane kilka typów broni.

Skrypt

Wygląda dość podobnie do kodu odpowiadającego za tworzenie wrogów. Jedyną różnicą tutaj jest sprawdzenie czy użytkownik trzyma przycisk odpowiadający za strzał, zamiast jednostajnego wywoływania funkcji co określoną ilość czasu.

Prefab

Wyobraźmy sobie że gracz strzela przeciwnikami, z tą różnicą że są oni mniejsi i muszą lecieć w przeciwną stronę. Potrzebujemy tylko dodać kolejny materiał w odmiennym kolorze, np jasnoniebieskim.

Przypomnijmy sobie jakie elementy powinien posiadać prefab wroga (oczywiście dostosujemy je teraz pocisku):

  1. Mesh Filter (Quad).
  2. Mesh Renderer.
  3. Rigidbody2D – ustawiamy Gravity Scale na 0.
  4. Move One Direction – kierunek góra i szybkość 10.
  5. Self Destruct – 2s starczą.

Object Pool

W zeszłym tygodniu opisywałem wzorzec Object Pool.

Tak wyglądała pierwsza wersja logiki strzału (bez niego):

Następnie po zastosowaniu wzorca – przeskok między pociskami zniknął:

Wujek Bob rozpoczyna jedną ze swoich książek słowami: ‚Uczciwość w małych rzeczach nie jest małą rzeczą.’. Będę się starać dopracowywać każdy najmniejszy element w grze, bo inaczej pozostanie niedosyt testując końcowy produkt.