Witam wszystkich ponownie :)
Prosiłabym o pomoc/poradę, wybrałam grafikę SDL2 do zrobienia statków. Mam kod napisany obiektowo w klasach ale pojęcia nie mam jak go przekształcić. On jest ogromny poza tym. Moje pytanie, jak w klasie stworzyć tablicę dwuwymiarową (losowe ustawianie statków) i jak ją wstawić do main'a żeby mi się ładnie wyświetlał w oknie. Kod aktualnie jest prosty, ponieważ nie wiem jak dalej ruszyć. czy ktoś mógłby mnie nakierować. Mam to na zaliczenia przedmiotu, a każdy student wie, że warunku nie fajnie płacić :(
Bardzo dziękuję za poświęcony czas.
aktualny kod c++ biblioteka SDL2 :
#include <SDL2/SDL.h> #include <SDL2/SDL_image.h> #include <SDL2/SDL_ttf.h> #include <SDL2/SDL_mixer.h> #include <windows.h> using namespace std; SDL_Window*okno; SDL_Surface*ekran; SDL_Event zdarzenia; SDL_Rect rect1; SDL_Rect rect2; int frame=0; int main(int argc, char*args[] ) { SDL_Init(SDL_INIT_EVERYTHING); okno = SDL_CreateWindow("nauka",SDL_WINDOWPOS_CENTERED,SDL_WINDOWPOS_CENTERED,800,500,NULL); ekran = SDL_GetWindowSurface(okno); //aby wskazac jakie ono ma byc otwarte Mix_OpenAudio(44100,MIX_DEFAULT_FORMAT,2,1024); //1-mono 2-stereo Mix_Music*muzyka=Mix_LoadMUS("piraci.wav"); Mix_PlayMusic(muzyka,-1); TTF_Init(); TTF_Font*arial=TTF_OpenFont("arial.ttf",30); SDL_Color kolor = {255,0,255}; SDL_Surface*tekst=TTF_RenderText_Blended(arial,"Zapraszam do gry w statki",kolor); while(true) { if(frame==0) { SDL_Surface*obraz_tlo=IMG_Load("grafika/tlo.bmp"); SDL_Surface*obraz_postac=IMG_Load("grafika/postac.bmp"); while(frame==0) { while (SDL_PollEvent(&zdarzenia)) { if (zdarzenia.type==SDL_QUIT) { exit(0); } } //RENDEROWANIE rect2.x=0; //jakies kwadraty i trojkaty rect2.y=0; SDL_BlitSurface(obraz_tlo, NULL, ekran, &rect2); //jaki obraz. czy caly, gdzie, pozycje rect2.x=0; rect2.y=30; SDL_BlitSurface(tekst,NULL,ekran,&rect2); SDL_UpdateWindowSurface(okno); SDL_Delay(16.66666); } } } return 0; }