Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Napisanie gry darts/rzutki/lotki

jedrus55 20 Sty 2012 15:01 1265 4
  • #1 20 Sty 2012 15:01
    jedrus55
    Poziom 12  

    Witam. Chciałem zrobić prostą grę typu darts. Wszystko odbywałoby się na takiej planszy: http://www.darts.org.nz/image/boardbullinner.jpg . Mam dwa pomysłu na sposób rzucania. Pierwszy to z góry schodzi oś X i na kliknięcie się zatrzymuje, później z lewej strony schodzi oś Y i także zatrzymuje się na kliknięcie, a lotka leci w miejsce przecięcia się osi. Drugi pomysł to sterowanie myszką, przy czym kursor drga co utrudnia dokładne trafienie. Z programowaniem miałem mało do czynienia, tylko to co w technikum informatycznym, no a poziom programowania jest opłakany. Umiem w C++ podstawowe operacje na zmiennych, instrukcje warunkowe, pętle czyli bardzo mało. Byłbym gotów sam się uczyć gdybyście mogli mi doradzić co muszę umieć do napisania takiej gry. Napisanie gry ma służyć do zagospodarowania wolnego czasu i szkolenia samego siebie. Z góry dziękuje za pomoc :)

    0 4
  • #2 20 Sty 2012 15:08
    McMonster
    Poziom 32  

    Operacje na grafice, zdarzenia myszy itp.

    Poza tym ogólna znajomość algorytmów, np. poprzez schematy blokowe. Jeżeli będziesz w stanie rozbić grę na takie podstawowe zagadnienia, to będziesz ją w stanie napisać.

    0
  • #3 20 Sty 2012 16:32
    wiesniak
    Poziom 31  

    jedrus55 -> Zainteresuj się jakąś biblioteką do grafiki 2D. Polecam SFML, która jest w pełni obiektowa, więc będzie się wygodnie "integrować" z C++. Jest też całkiem niezłe Allegro czy SDL.

    Jeśli chodzi o sam algorytm celowania, to mógłbyś krążyć lotką po planszy ruchem spirografowym zbliżonym do kołowego. Nawet znalazłem jakieś przykłady implementacji https://developer.mozilla.org/pl/Przewodnik_po_canvas/Transformacje.
    Widziałem takie coś w jakiejś grze w darty na komórce.

    0
  • #4 20 Sty 2012 19:06
    jedrus55
    Poziom 12  

    Chcąć skorzystać z allegro zainstalowałem właśnie Allegro na Devie wg tego tutoriala: http://cpp0x.pl/kursy/Kurs-Allegro-C++/Instalacja-Allegro/62 .
    Przy kroku Czas na odpalenie i napisanie pierwszej aplikacji. Plik - > Nowy - > Projekt - > Przechodzimy na zakładkę MultiMedia - > Allegro Application Static. w zakładce MultiMedia wcale nie mam nic przypominającego Allegro, jest tylko OpenGL.
    W zakładce basic mam Allegro 5.0.4 Application, ale wybierając to jest coś całkiem innego.
    Autor tutorialu podaje:

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    a ja mam:
    Kod: cpp
    Zaloguj się, aby zobaczyć kod


    Myślałem o tym, że to po prostu nowsza wersja Allegro ale zmiany są dość duże. Ktoś wie w czym tkwi problem?

    0
  • #5 21 Sty 2012 12:32
    jedrus55
    Poziom 12  

    Dobra już rozumiem, tu chodzi o różnice między Allegro 4, a 5. Wybrałem 4 bo był do niego dobry poradnik. Zacząłem pisać moją grę. Dużo nie zrobiłem ale mam już początek. To mój pierwszy program w Allegro i pierwszy poważniejszy projekt w C++.
    Mógłby ktoś zerknąć i ocenić mój program? Wiem że nic nie robi oprócz wczytywania pliku tarcza ale sam sposób pisania czy jest dobry.

    Kod: cpp-qt
    Zaloguj się, aby zobaczyć kod


    Teraz chciałbym zrobić coś takiego, że jak kliknę poza tarczą to 0 pkt, jak w którymś miejscu w tarczy to mnoży 1*x. Czy to jest do zrobienia w Allegro? I gdzie mógłbym poczytać o tym albo może jakieś nakierowanie? Nie liczę na gotowca bo chce podszkolić sam siebie :)

    0