CMainMenu.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. // This is a Demo of the Irrlicht Engine (c) 2005 by N.Gebhardt.
  2. // This file is not documentated.
  3. #ifndef __C_MAIN_MENU_H_INCLUDED__
  4. #define __C_MAIN_MENU_H_INCLUDED__
  5. #include <irrlicht.h>
  6. #ifdef _WIN32__
  7. #include "WindowsIncludes.h" // Prevent 'fd_set' : 'struct' type redefinition
  8. #endif
  9. #include "IGUIEditBox.h"
  10. using namespace irr;
  11. class CMainMenu : public IEventReceiver
  12. {
  13. public:
  14. CMainMenu();
  15. bool run(bool& outFullscreen, bool& outMusic, bool& outShadows,
  16. bool& outAdditive, bool &outVSync, bool& outAA,
  17. video::E_DRIVER_TYPE& outDriver,
  18. core::stringw &playerName);
  19. virtual bool OnEvent(const SEvent& event);
  20. private:
  21. void setTransparency();
  22. gui::IGUIButton* startButton;
  23. IrrlichtDevice *MenuDevice;
  24. s32 selected;
  25. bool start;
  26. bool fullscreen;
  27. bool music;
  28. bool shadows;
  29. bool additive;
  30. bool transparent;
  31. bool vsync;
  32. bool aa;
  33. scene::IAnimatedMesh* quakeLevel;
  34. scene::ISceneNode* lightMapNode;
  35. scene::ISceneNode* dynamicNode;
  36. video::SColor SkinColor [ gui::EGDC_COUNT ];
  37. void getOriginalSkinColor();
  38. // RakNet: Store the edit box pointer so we can get the text later
  39. irr::gui::IGUIEditBox* nameEditBox;
  40. };
  41. #endif
粤ICP备19079148号