Gra a'la pacman w C

0

Witam
Otóz zmagam się z takim problemem. Mam do napisania grę o następującej treści:Napisz grę dla jednego gracza polegająca na poszukiwaniu monety na planszy i uciekaniu przed robotami. Plansza ma rozmiar 60x20 znaków. Polonezie monety i robotów jest losowe.

Na planszy znajdują się 4 roboty oznaczone jako "R" które z każda runda przesuwają się o jedno pole w kierunku gracza(porusza się w 8 kierunkach: pion,poziom,ukos). Na przykład, gdy postać jest w pozycji (15,11) a robot (11,21) to przesunie się o wektor [1,-1] by zbliżyć się do gracza.

Gracz oznaczony jako "@" porusza się z wykorzystaniem klawiszy numerycznych w 8 kierunkach, gdy natomiast naciśnie 5 teleportuje się w dowolne miejsce na mapie. Gdy gracz zdobędzie monetę oznacza "o" to gra kończy się.

Mniej więcej to ma wyglądać tak:
...........................
......R..............O...
...........R..............
[email protected]
R.........................
...R......................

Jestem początkującym a do napisania tej gry mogę tylko wykorzystać instrukcje iteracyjne oraz pętle. Niestety doszłam tylko do tego żeby poszczególne elementy wybierać za pomocą rand() a sama plansze wyświetlać za pomocą 2 pętli for. i elementy za pomocą if.

Z góry dzięki za pomoc.
Pzdr.

0
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main(int argc, char *argv[])
{
    const int szer=60;
    const int wys=20;
    int licz;
    int los=0;
    int losszer,loswys;
    int x,y;
    for(x=0;x<wys;x++)
    {
                      for(y=0;y<szer;y++)
                      {
                                         if(licz<5&&x==rand()%20||y==rand()%20)
                                         {
                                         printf("R");
                                         licz++;
                                         }
                                         else printf(".");
                      }
                      printf("\n");
    }
  system("PAUSE");  
  return 0;
}

taki oto kod, który i tak do końca nie jest poprawny bo wyświetla więcej R niż powinien.

0

Długa droga przed Tobą. Po pierwsze nie inicjujesz nigdzie zmiennej licz, więc ma taką wartość, jaka została na stosie (można uznać, że losową). Innym problemem jest to, że za każdym wywołaniem pętli R będzie w zupełnie innych miejscach. Ogólną strukturę prostej gry można wyrazić przez pętlę główną, w której następują 3 rzeczy, mianowicie wyświetlenie grafiki, pobranie wejścia użytkownika (np. naciśnięty klawisz) oraz obsłużenie wejścia (dalszy krok, klatka gry). Spróbuj napisać to w ten sposób. Zacznij od przechowywania planszy w tablicy przed wyświetleniem.

0

Problem w tym ze nie mogę wykorzystywać tablic. Tylko i wyłącznie pętle oraz instrukcje iteracyjne. To jest gra z laborek.

0

A struktur, funkcji możesz używać? Bez struktur będziesz potrzebować 8 zmiennych do przechowywania współrzędnych robotów i 2 zmiennych do przechowywania współrzędnych gracza.

0

Niestety tylko tego co napisałem poprzednio - instrukcje iteracyjne i pętle. To w sumie mieliśmy omawiane na wykładach i z taka wiedza mamy stworzyć tą grę. Czy to niemożliwe ?

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0