//main file #include #include #include"entity.h" #include"player.h" #include"block.h" #include"powerup.h" #include"camera.h" const int SCREEN_WIDTH = 640; const int SCREEN_HEIGHT = 480; SDL_Window* gWindow = NULL; SDL_Renderer* gRenderer = NULL; //12 sz of height and 16 of width const int sz = SCREEN_WIDTH/16; void init(); bool loadMedia(); void close(); bool loadMedia(){ bool success = true; return success; } void init(){ SDL_Init(SDL_INIT_VIDEO); gWindow = SDL_CreateWindow("Platform Test!",SDL_WINDOWPOS_CENTERED,SDL_WINDOWPOS_CENTERED,SCREEN_WIDTH,SCREEN_HEIGHT,SDL_WINDOW_SHOWN); gRenderer = SDL_CreateRenderer(gWindow,-1,SDL_RENDERER_ACCELERATED | SDL_RENDERER_PRESENTVSYNC); SDL_SetRenderDrawColor(gRenderer,0xFF,0xFF,0xFF,0xFF); } void close(){ SDL_DestroyRenderer(gRenderer); SDL_DestroyWindow(gWindow); gWindow = NULL; gRenderer = NULL; SDL_Quit(); } int main(int argc, char* args[]){ init(); loadMedia(); bool quit = false; SDL_Event e; Camera camera(36*sz,SCREEN_WIDTH); Player posweg(100,100,sz,sz,&gRenderer); Block wallA(8*sz,SCREEN_HEIGHT-sz*5,sz*2,sz*2,&gRenderer,&posweg); Block wallB(4*sz,SCREEN_HEIGHT-sz*3,sz,sz*2,&gRenderer,&posweg); Block wallC(6*sz,SCREEN_HEIGHT-sz*3,sz,sz*2,&gRenderer,&posweg); Block ground(0,SCREEN_HEIGHT-sz,SCREEN_WIDTH,sz,&gRenderer,&posweg); Block ground2(SCREEN_WIDTH+sz*4,SCREEN_HEIGHT-sz,SCREEN_WIDTH,sz,&gRenderer,&posweg); Powerup powerup(13*sz,SCREEN_HEIGHT-sz*4,&gRenderer,&posweg); while(!quit){ while(SDL_PollEvent(&e)!=0){ if(e.type == SDL_QUIT){ quit = true; } } SDL_SetRenderDrawColor(gRenderer,0,0,100,0xFF); SDL_RenderClear(gRenderer); camera.update(posweg.getRectangle().x,posweg.getRectangle().y); posweg.print(camera.getPosX()); wallA.print(camera.getPosX()); wallB.print(camera.getPosX()); wallC.print(camera.getPosX()); ground.print(camera.getPosX()); ground2.print(camera.getPosX()); powerup.print(camera.getPosX()); //Entity *ePwrUp = &powerup; /*posweg.check(wallA.getRectangle()); posweg.check(wallB.getRectangle()); posweg.check(wallC.getRectangle()); posweg.check(ground.getRectangle()); posweg.check(ground2.getRectangle());*/ //posweg.check(ePwrUp); SDL_RenderPresent(gRenderer); } close(); return 0; }