Advertisement
Guest User

Untitled

a guest
Dec 18th, 2014
203
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.51 KB | None | 0 0
  1. //characterscreen.hpp
  2. #pragma once
  3.  
  4. #include "Scene.hpp"
  5.  
  6. class CharacterScreen{
  7. protected:
  8. sf::RenderWindow *gameWindow;
  9. Scene scene;
  10. vector<SceneElement*> v;
  11.  
  12. TextSceneElement *sceneEle;
  13. TextSceneElement *raceLabel;
  14. TextSceneElement *raceAnswer;
  15. TextSceneElement *roleLabel;
  16. public:
  17. ~CharacterScreen(){}
  18. CharacterScreen(sf::RenderWindow*);
  19.  
  20. void strToScEle(string, TextSceneElement*, int, int, int, int);
  21.  
  22. void showQuests();
  23. void showCharacter();
  24. void lvlUp();
  25.  
  26. };
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35. //characterscreen.cpp
  36. #include "characterscreen.hpp"
  37. #include "character.hpp"
  38.  
  39. CharacterScreen::CharacterScreen(sf::RenderWindow *gameWindow)
  40. : gameWindow(gameWindow)
  41. {
  42. scene = Scene();
  43. scene.setBackground("Tekstury/woodBG.jpg", 800, 600);
  44. scene.setBgPosition(0,0);
  45. scene.setInterval(300);
  46. sceneEle = new TextSceneElement();
  47. raceLabel = new TextSceneElement();
  48. raceAnswer = new TextSceneElement();
  49. roleLabel = new TextSceneElement();
  50.  
  51. }
  52.  
  53. void CharacterScreen::strToScEle(string text, TextSceneElement *sceneEle, int xCoord, int yCoord, int xRect, int yRect)
  54. {
  55. sceneEle->loadFont("./fonts/LiberationMono.ttf");
  56. sceneEle->setTextStyle(sf::Text::Regular, sf::Color::Black, 20);
  57. //sceneEle.setTextPosition(110,105);
  58. sceneEle->setCoordinates(xCoord, yCoord);
  59. sceneEle->setRect(xRect, yRect);
  60. string t = TextConverter::truncateText(text, sceneEle->getMaxRowsNum(),sceneEle->getMaxLettersNumInRow());
  61. sceneEle->setText(t);
  62.  
  63.  
  64. v.push_back(sceneEle);
  65. }
  66.  
  67. void CharacterScreen::showCharacter()
  68. {
  69. v.clear();
  70. Character &pc = Character::getInstance();
  71.  
  72. string tmpText = " Information about character:";
  73. strToScEle(tmpText , sceneEle, 50, 50, 400, 100);
  74.  
  75. tmpText = " Race:";
  76. strToScEle(tmpText, raceLabel, 50, 100, 100, 100);
  77.  
  78.  
  79. strToScEle(" " + pc.getRaceName(), raceAnswer, 150, 100, 90, 150);
  80.  
  81. tmpText = " Role:";
  82. strToScEle(tmpText, roleLabel, 50, 150, 100, 100);
  83.  
  84. scene.setSceneElementsVector(v);
  85. scene.draw(gameWindow);
  86.  
  87. }
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95. //main
  96. #include <iostream>
  97. #include <cstdlib>
  98. #include <ctime>
  99. #include <string>
  100. #include <SFML/System.hpp>
  101. #include <SFML/Graphics.hpp>
  102. #include <SFML/Window.hpp>
  103.  
  104. #include "character.hpp"
  105. #include "passiveskill.hpp"
  106. #include "offensiveskill.hpp"
  107. #include "defensiveskill.hpp"
  108. #include "racegenerator.hpp"
  109. #include "rolegenerator.hpp"
  110.  
  111. #include "characterscreen.hpp"
  112.  
  113. #include "Scene.hpp"
  114.  
  115. int main(){
  116.  
  117. sf::RenderWindow gameWindow(sf::VideoMode(800,600,32), "Character Screen");
  118. sf::Texture texture;
  119.  
  120. sf::Clock c;
  121.  
  122. CharacterScreen charView = CharacterScreen(&gameWindow);
  123.  
  124.  
  125. srand(time(0));
  126.  
  127. RaceGenerator rg = RaceGenerator();
  128. Race** races = rg.getRaces();
  129.  
  130. RoleGenerator ro = RoleGenerator();
  131. Role** roles = ro.getRoles();
  132.  
  133. Character& pc = Character::getInstance();
  134. pc.setCharacter(new Race(races[0]), new Role(roles[4]));
  135.  
  136. cout << pc.getRaceName();
  137.  
  138. while (gameWindow.isOpen())
  139. {
  140. sf::Event event;
  141.  
  142. while (gameWindow.pollEvent(event))
  143. {
  144. if (event.type == sf::Event::Closed)
  145. gameWindow.close();
  146.  
  147. if(sf::Keyboard::isKeyPressed((sf::Keyboard::Escape)))
  148. {
  149. gameWindow.close();
  150. }
  151. }
  152.  
  153. gameWindow.clear();
  154.  
  155. charView.showCharacter();
  156.  
  157. gameWindow.display();
  158. }
  159.  
  160.  
  161.  
  162. return 0;
  163. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement