Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/presentation/src/world_entities/tools/scrolling_screen.h

Last change on this file was 10618, checked in by bknecht, 18 years ago

merged cleanup into trunk (only improvements)

File size: 1.3 KB
Line 
1#ifndef _SCROLLING_SCREEN_H
2#define _SCROLLING_SCREEN_H
3
4#include "world_entity.h"
5
6
7class TiXmlElement;
8class Material;
9
10class ScrollingScreen : public WorldEntity
11{
12  ObjectListDeclaration(ScrollingScreen);
13
14
15
16public:
17  ScrollingScreen();
18  ScrollingScreen(const TiXmlElement* root);
19  virtual ~ScrollingScreen();
20
21  typedef enum ScScMode
22  {
23     SCSC_FULL  = 0,
24     SCSC_VIEW
25  };
26
27  void init();
28  virtual void loadParams(const TiXmlElement* root);
29
30  void start();
31
32  void fadeIn(float speed);
33  void fadeOut(float speed);
34
35  void setTexture(const std::string& texture);
36
37  void setSpeed(float speed) { this->scrollingSpeed = speed; }
38  void setViewHeight(float height) { this->viewHeight = height; }
39  void setSizeY(float ySize) { this->ySize = ySize; }
40  void setSizeX(float xSize) { this->xSize = xSize; }
41
42  virtual void tick (float time);
43
44  virtual void draw() const;
45  void drawFull() const;
46  void drawView() const;
47
48
49private:
50  Material*       material;
51  bool            isTransparent;
52  float           transparency;
53  float           fadeingSpeed;
54
55  float           scrollingSpeed;
56  float           viewHeight;
57  float           offset;
58  float           ratio;
59
60  float           xSize;
61  float           ySize;
62
63  int             mode;
64
65  bool            bRun;
66};
67
68#endif /* _SCROLLING_SCREEN_H */
Note: See TracBrowser for help on using the repository browser.