Advertisement
Guest User

Untitled

a guest
Sep 21st, 2014
221
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.46 KB | None | 0 0
  1. #include "Menu_State.h"
  2. #include "GameState.h"
  3. #include <iostream>
  4.  
  5. Menu_State::Menu_State(sf::Font &c_font) : triangle(15,3)
  6. {
  7. if(!c_font.loadFromFile("martell.otf"))
  8. std::cout << "break in font" << std::endl;
  9. font = c_font;
  10.  
  11. play_game.setFont(font);
  12. play_game.setString("Play");
  13. play_game.setPosition(sf::Vector2f(100,100));
  14. play_game.setCharacterSize(25);
  15. play_game.setColor(sf::Color(190,190,190));
  16. //white
  17.  
  18. help.setFont(font);
  19. help.setString("Help");
  20. help.setPosition(sf::Vector2f(100,150));
  21. help.setCharacterSize(25);
  22. help.setColor(sf::Color(190,190,190));
  23.  
  24. quit_game.setFont(font);
  25. quit_game.setString("Quit");
  26. quit_game.setPosition(sf::Vector2f(100,200));
  27. quit_game.setCharacterSize(25);
  28. quit_game.setColor(sf::Color(190,190,190));
  29.  
  30. state = Play;
  31.  
  32. triangle.rotate(90);
  33. triangle.setFillColor(sf::Color::Green);
  34.  
  35.  
  36. }
  37. void Menu_State::moveInMenu()
  38. {
  39. if(sf::Keyboard::isKeyPressed(sf::Keyboard::Down))
  40. {
  41. if(clock.getElapsedTime().asMilliseconds() >= 150.f){
  42. if(state != 2)
  43. state+=1;
  44. else
  45. state = 0;
  46. clock.restart();
  47. }
  48.  
  49. }
  50. else if(sf::Keyboard::isKeyPressed(sf::Keyboard::Up))
  51. {
  52. if(clock.getElapsedTime().asMilliseconds()>= 150.f){
  53. if(state != 0)
  54. state--;
  55. else
  56. state = 2;
  57. clock.restart();
  58. }
  59. }
  60. check();
  61. }
  62. void Menu_State::check()
  63. {
  64. switch(state)
  65. {
  66. case Play:
  67. quit_game.setColor(sf::Color(190,190,190));
  68. help.setColor(sf::Color(190,190,190));
  69. play_game.setColor(sf::Color::White);
  70. triangle.setPosition(play_game.getPosition().x - 45, play_game.getPosition().y);
  71. break;
  72. case Help:
  73. quit_game.setColor(sf::Color(190,190,190));
  74. play_game.setColor(sf::Color(190,190,190));
  75. help.setColor(sf::Color::White);
  76. triangle.setPosition(help.getPosition().x - 45, help.getPosition().y);
  77. break;
  78. case Quit:
  79. help.setColor(sf::Color(190,190,190));
  80. play_game.setColor(sf::Color(190,190,190));
  81. quit_game.setColor(sf::Color::White);
  82. triangle.setPosition(quit_game.getPosition().x - 45, quit_game.getPosition().y);
  83. break;
  84. }
  85. }
  86. int Menu_State::checkIfClicked() const
  87. {
  88. if(sf::Keyboard::isKeyPressed(sf::Keyboard::Return))
  89. {
  90. switch(state)
  91. {
  92. case 0:
  93. return 0;
  94. break;
  95. case 1:
  96. return 1;
  97. break;
  98. case 2:
  99. return 2;
  100. break;
  101. }
  102. }
  103. return 3;
  104. }
  105. void Menu_State::draw_options(sf::RenderWindow *window) const
  106. {
  107. window->draw(play_game);
  108. window->draw(quit_game);
  109. window->draw(help);
  110. window->draw(triangle);
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement