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;
}