summaryrefslogtreecommitdiff
path: root/noncore/games/sfcave-sdl/starfield.h
blob: 133cb5481efda91686368c418caa725036b6f071 (plain)
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
#ifndef __STARFIELD_H
#define __STARFIELD_H

class StarField
{
public:
	StarField( bool side = false, int nrStars = 100, int mx = 240, int my = 320, int minz = 32, int maxz = 725 );
	~StarField();

	void init();
    void move( );
    void draw( SDL_Surface *screen, int w = 240, int h = 320 );

private:
	// 3d effect
	int *x;
	int *y;
	int *z;

	int maxX;
	int maxY;
	int minZ;
	int maxZ;

	// Sideways
	int *star_color;
	int *vel_x;
	int *vel_y;
	int *pos_x;
	int *pos_y;
	int min_brightness;
	int top_star_speed;

	bool sideways;
	int nrStars;

	void newStar( int i );
};


#endif