00001 // --------------------------------------------------------------------------- 00002 // PLATFORM: All - 00003 // PRODUCT: Fourplay - 00004 // VISIBILITY: Public - 00005 // --------------------------------------------------------------------------- 00006 // - 00007 // PURPOSE: The in-game highscore table. - 00008 // - 00009 // --------------------------------------------------------------------------- 00010 00011 #ifndef HIGHSCORETABLE_H 00012 #define HIGHSCORETABLE_H 00013 00014 #include "Iw2D.h" 00015 #include "IwGx.h" 00016 #include "Input.h" 00017 #include "CollisionManager.h" 00018 #include "HttpHandler.h" 00019 #include "Menu.h" 00020 #include "string" 00021 #include "vector" 00022 00028 class HighScoreTable : public Menu 00029 { 00030 public: 00034 HighScoreTable(); 00035 00039 ~HighScoreTable(); 00040 00045 int Update(); 00046 00050 void Draw() override; 00051 00056 void SplitResult(char* arr); 00057 00061 void DrawResult(); 00062 00063 protected: 00065 CIwFVec2 m_position; 00066 00068 CIw2DImage *m_background; 00069 00071 CIw2DImage *m_backButton; 00072 00074 CIwFVec2 m_backButtonPosition; 00075 00077 CIwFVec2 m_backButtonDimensions; 00078 00080 HttpHandler *m_http; 00081 00083 CIw2DFont *m_font; 00084 00086 char *m_scoreResult; 00087 00089 bool m_hasScores; 00090 00092 std::vector<std::string> m_tableElements; 00093 00095 CIwFVec2 m_connectionTextPos; 00096 00098 CIwFVec2 m_textDisplayRectangle; 00099 00101 CIwFVec2 m_nameDrawPos; 00102 00104 CIwFVec2 m_scoreDrawPos; 00105 00107 static const int m_lineSeparation = 25; 00108 }; 00109 00110 #endif