[POBIERZ] kod źródłowy i inne pliki potrzebne do uruchomienia gry  [POBIERZ] 

Zachęcam do komentowania :) Mile widziane sugestie i pytania, na które chętnie odpowiem

19 wrz 2010

Klasa wroga HARD

Podobnie do klasy MEDIUM dziedziczymy z Cwrog i "edytujemy" tylko funkcję poruszanie_wroga().

class Cwrog_hard : public Cwrog
{
public:
  int lot_pion;
 Cwrog_hard::Cwrog_hard()
 {
    lot_pion=0;
    zycia=5;
    ogranicz_czest_poc=100;
 }

 void poruszanie_wroga()
 {
    if(zycia<=0)
    {
        punktacja=punktacja+3;
    }

    if(lot_pion==3)
    {
       pozwro_y++;
       lot_pion=0;
    }
    lot_pion++;

    if( (pozwro_y>430) || (zycia<=0) )
    {
       zycia=5;
       pozwro_x=rand()%740;
       pozwro_y=-70;
    }

    if(pozwro_x>790)
    {
       pozwro_x=0;
    }
    pozwro_x++;
 }

};

Dodałem do Bazowej klasy zmienną ogranicz_czest_poc. Dzięki niej możemy przy tworzeniu potomnych klas ustalić częstotliwość z jaką zostanie wystrzelony kolejny pocisk od wroga. 

W klasie HARD edytowałem poruszanie wroga, które wygląda następująco:
po wróg porusza się po skosie w prawo, jak dojdzie do prawej krawędzi ekranu to pojawia się z lewej strony (taka teleportacja :P) i w porównaniu do wroga medium szybciej wystrzeli kolejny pocisk. 

Aha i w zależności od stopnia wroga dostajemy za zestrzelenie punkty punktacja=punktacja+3; ale o tym czemu ma to służyć napiszę w przyszłości...

Rysunek pomocniczy obrazujący ruch wroga_hard


Jak narazie kończą mi się pomysły na kolejnych wrogów... Jeżeli nie będę miał pomysłów to zabiorę się za cośinnego np. stworzę bossa :P i może w trakcie prac coś wymyślę lub ktoś z WAS będzie miał jakieś pomysły? 

Brak komentarzy:

Prześlij komentarz