blob: 177a4c8533a2463ed7e8609b887741798f9e59ff (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#include "titlestate.h"
#include "util.h"
#include "gamestate.h"
#include "hslist.h"
State* TitleState::operator() (SDL_Renderer* renderer)
{
SDL_Texture* background = loadImage(renderer, "resources/title.bmp");
SDL_Texture* pointer = loadImage(renderer, "resources/pointer.bmp");
int selection = 0;
SDL_Event e;
for (;;)
{
SDL_RenderClear(renderer);
SDL_RenderCopy(renderer, background, NULL, NULL);
applyTexture(renderer, pointer, 136, selection==0?316:(selection==1?350:(selection==2?381:417)));
SDL_RenderPresent(renderer);
while (SDL_PollEvent(&e))
{
if (e.type == SDL_QUIT)
{
return NULL;
} else if (e.type == SDL_KEYDOWN)
{
if ((e.key.keysym.sym == SDLK_UP) && (selection != 0))
{
selection--;
} else if ((e.key.keysym.sym == SDLK_DOWN) && (selection != 3))
{
selection++;
} else if (e.key.keysym.sym == SDLK_RETURN)
{
switch (selection)
{
case 0: return new GameState();
//case 1: return new HowToPlayState();
case 2: return new ChooseHighscoreListState();
case 3: return NULL;
}
}
}
}
}
}
|