diff --git a/Doxyfile b/Doxyfile
index 70fe13e98a154b9e0a34c25c5e0012b2d8cbdd36..a837fa0c40d02cc1101d304a9479f14f60903176 100644
--- a/Doxyfile
+++ b/Doxyfile
@@ -74,7 +74,7 @@ PROJECT_ICON           =
 # entered, it will be relative to the location where Doxygen was started. If
 # left blank the current directory will be used.
 
-OUTPUT_DIRECTORY       = ./assets/docs
+OUTPUT_DIRECTORY       = ./docs
 
 # If the CREATE_SUBDIRS tag is set to YES then Doxygen will create up to 4096
 # sub-directories (in 2 levels) under the output directory of each output format
diff --git a/assets/Heart.png b/assets/Heart.png
new file mode 100644
index 0000000000000000000000000000000000000000..4b428e8ad05f8033ecccc23d2a6ca09613d3669e
Binary files /dev/null and b/assets/Heart.png differ
diff --git a/assets/docs/html/class_game_state.js b/assets/docs/html/class_game_state.js
deleted file mode 100644
index 29e1f867442ef5074cc23610e3b0ae4f33355ca4..0000000000000000000000000000000000000000
--- a/assets/docs/html/class_game_state.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var class_game_state =
-[
-    [ "GameState", "class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153", null ],
-    [ "event_handling", "class_game_state.html#a180391dfe966058da0389146534e66d0", null ],
-    [ "render", "class_game_state.html#a2c36ada0cae89f91d956e2c91b070893", null ],
-    [ "update", "class_game_state.html#a3610da76344c5c2cbcc5921f877226dc", null ]
-];
\ No newline at end of file
diff --git a/assets/docs/html/class_i_game_event.png b/assets/docs/html/class_i_game_event.png
deleted file mode 100644
index ca094e3a8e9255973dd74cb2576db4a44ae2265b..0000000000000000000000000000000000000000
Binary files a/assets/docs/html/class_i_game_event.png and /dev/null differ
diff --git a/assets/docs/html/search/all_7.js b/assets/docs/html/search/all_7.js
deleted file mode 100644
index 39076b186917fd50b3ed2ca93c1765d9b74760e7..0000000000000000000000000000000000000000
--- a/assets/docs/html/search/all_7.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
-  ['handle_0',['handle',['../class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43',1,'DeleteStaticEntity']]]
-];
diff --git a/assets/docs/html/search/all_c.js b/assets/docs/html/search/all_c.js
deleted file mode 100644
index 5b6d73e03191a0b784b1f7551a9f181de2fb182a..0000000000000000000000000000000000000000
--- a/assets/docs/html/search/all_c.js
+++ /dev/null
@@ -1,9 +0,0 @@
-var searchData=
-[
-  ['pacman_0',['Pacman',['../class_pacman.html',1,'Pacman'],['../class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2',1,'Pacman::Pacman()']]],
-  ['pacmantexture_1',['PacmanTexture',['../class_pacman_texture.html',1,'']]],
-  ['pacmantexture2_2',['PacmanTexture2',['../class_pacman_texture2.html',1,'']]],
-  ['pass_3',['Pass',['../class_pass.html',1,'']]],
-  ['prepare_5ffor_5fdrawing_4',['prepare_for_drawing',['../class_pacman.html#ad41930fae2878425f80e4fea614f3a3d',1,'Pacman']]],
-  ['process_5fmouse_5',['process_mouse',['../class_menu.html#a9174cfc103dba0ee0613196385691872',1,'Menu']]]
-];
diff --git a/assets/docs/html/search/classes_a.js b/assets/docs/html/search/classes_a.js
deleted file mode 100644
index ef9350f4fb46af80eb49c38870ead0b2ed1424ac..0000000000000000000000000000000000000000
--- a/assets/docs/html/search/classes_a.js
+++ /dev/null
@@ -1,7 +0,0 @@
-var searchData=
-[
-  ['pacman_0',['Pacman',['../class_pacman.html',1,'']]],
-  ['pacmantexture_1',['PacmanTexture',['../class_pacman_texture.html',1,'']]],
-  ['pacmantexture2_2',['PacmanTexture2',['../class_pacman_texture2.html',1,'']]],
-  ['pass_3',['Pass',['../class_pass.html',1,'']]]
-];
diff --git a/assets/docs/html/search/functions_6.js b/assets/docs/html/search/functions_6.js
deleted file mode 100644
index 39076b186917fd50b3ed2ca93c1765d9b74760e7..0000000000000000000000000000000000000000
--- a/assets/docs/html/search/functions_6.js
+++ /dev/null
@@ -1,4 +0,0 @@
-var searchData=
-[
-  ['handle_0',['handle',['../class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43',1,'DeleteStaticEntity']]]
-];
diff --git a/config.h b/config.h
index c28d60adfb4f49ad6dcf71b171cb11eb940322bd..6c105725d7c33f7554ec695dc1b6da56c4e368ed 100644
--- a/config.h
+++ b/config.h
@@ -2,24 +2,20 @@
 #include "SFML/Graphics.hpp"
 
 namespace config {
-    // Общее:
     const unsigned int FRAME_RATE_LIMIT = 60;
-    // Меню:
     const sf::Vector2f BUTTON_SIZE = { 250, 100 };
-    const size_t BUTTON_FONT_SIZE = static_cast<size_t>(BUTTON_SIZE.y / 1.5f); const float BUTTON_FRAME_THICKNESS = 2.0f;
+    const size_t BUTTON_FONT_SIZE = static_cast<size_t>(BUTTON_SIZE.y / 1.5f);
+    const float BUTTON_FRAME_THICKNESS = 2.0f;
     const char FONT_FILE[] = "Calibri.ttf";
     const char SELECT_LEVEL_TITLE_WINDOW[] = "Settings";
     const char GAME_COUNTER[] = "Game Counter";
+    const char GAME_LIVES[] = "Lives";
     const char SELECT_LEVEL_TITLE[] = "Select Level:";
     const char SELECT_LEVEL_TITLE_PLAYER[] = "Select Player:";
     const char SELECT_THEME[] = "Select Theme:";
     const char BUTTON_THEME_WHITE[] = "Theme: White";
     const char BUTTON_THEME_BLACK[] = "Theme: Black";
     const sf::VideoMode SELECT_LEVEL_VIDEO_MODE{ 1138, 620 };
-    const std::vector<std::string> BUTTON_TEXT = {"Easy","Medium", "Hard", "Exit"};
-    const char BUTTON_TEXT_EASY[] = "Easy";
-    const char BUTTON_TEXT_MEDIUM[] = "Medium";
-    const char BUTTON_TEXT_HARD[] = "Hard";
     const char BUTTON_TEXT_EXIT[] = "Exit";
 // Игра:
     const sf::VideoMode GAME_VIDEO_MODE{ 1138, 620 };
@@ -38,40 +34,33 @@ namespace config {
     const float ROOM_SIZE = 50;
     const float GAME_ENEMY_SIZE = ROOM_SIZE * 0.7;
     const float GAME_FOOD_SIZE = ROOM_SIZE * 0.2;
-// Пакмэн:
     const float GAME_PACMAN_SIZE = ROOM_SIZE * 0.8;
     const sf::Keyboard::Key KEY_LEFT = sf::Keyboard::A;
     const sf::Keyboard::Key KEY_RIGHT = sf::Keyboard::D;
     const sf::Keyboard::Key KEY_UP = sf::Keyboard::W;
     const sf::Keyboard::Key KEY_DOWN = sf::Keyboard::S;
-// Цвета:
-    const sf::Color BUTTON_COLOR_TEXT{ 255, 255, 255 };
-    const sf::Color BUTTON_COLOR_FILL{ 0, 0, 0 };
-    const sf::Color BUTTON_COLOR_SELECTION{ 50, 50, 100 };
-    const sf::Color BUTTON_COLOR_FRAME{ 0, 0, 255 };
-    const sf::Color SELECT_LEVEL_BACKGROUND_COLOR{ 25,25,25 };
-    const sf::Color GAME_COLOR_BACKGROUND_INGAME{ 50,50,50 };
-    const sf::Color GAME_COLOR_BACKGROUND_WIN{ 0, 100, 0 };
-    const sf::Color GAME_COLOR_BACKGROUND_LOST{ 100, 0, 0 };
-    const sf::Color GAME_COLOR_PACMAN{ 250, 250, 0 };
-    const sf::Color GAME_COLOR_PACMAN_INVISIBLE  { 250, 250, 0, 128 };
-    const sf::Color GAME_COLOR_ROOM{ 0, 0, 0 };
-    const sf::Color GAME_COLOR_WALL{ 0, 0, 255 };
-    const sf::Color GAME_FOOD_COLOR{ 0, 200, 100 };
-    const sf::Color GAME_ENEMY_COLOR{ 255, 50, 0 };
-//    const sf::Color BUTTON_COLOR_TEXT{ 0, 0, 0 };
-//    const sf::Color BUTTON_COLOR_FILL{ 180, 180, 180 };
-//    const sf::Color BUTTON_COLOR_SELECTION{ 255, 180, 180 };
-//    const sf::Color BUTTON_COLOR_FRAME{ 0, 0, 0 };
-//    const sf::Color SELECT_LEVEL_BACKGROUND_COLOR{ 230,230,230 };
-//    const sf::Color GAME_COLOR_BACKGROUND_INGAME{ 230,230,230 };
-//    const sf::Color GAME_COLOR_BACKGROUND_WIN{ 0, 255, 0 };
-//    const sf::Color GAME_COLOR_BACKGROUND_LOST{ 255, 0, 0 };
-//    const sf::Color GAME_COLOR_PACMAN{ 250, 150, 0 };
-//    const sf::Color GAME_COLOR_ROOM{ 255, 255, 255 };
-//    const sf::Color GAME_COLOR_WALL{ 0, 0, 0 };
-//    const sf::Color GAME_FOOD_COLOR{ 0, 200, 100 };
-//    const sf::Color GAME_ENEMY_COLOR{ 255, 50, 0 };
+// Цвета для темной темы
+    const sf::Color COLOR_TEXT_DARK{ 255, 255, 255 };
+    const sf::Color BUTTON_COLOR_FILL_DARK{ 21, 117, 217 };
+    const sf::Color BUTTON_COLOR_SELECTION_DARK{ 0, 0, 0 };
+    const sf::Color BUTTON_COLOR_FRAME_DARK{ 255, 255, 255 };
+    const sf::Color GAME_COLOR_BACKGROUND_INGAME_DARK{ 50,50,50 };
+    const sf::Color GAME_COLOR_BACKGROUND_WIN_DARK{ 0, 100, 0 };
+    const sf::Color GAME_COLOR_BACKGROUND_LOST_DARK{ 100, 0, 0 };
+    const sf::Color GAME_COLOR_ROOM_DARK{ 0, 0, 0 };
+    const sf::Color GAME_COLOR_WALL_DARK{ 0, 0, 255 };
+    const sf::Color BUTTON_TEXT_SCORE_DARK{255, 255, 255};
+// Цвета для cветлой темы
+    const sf::Color COLOR_TEXT_LIGHT{ 255, 255, 255 };
+    const sf::Color BUTTON_COLOR_FILL_LIGHT{ 21, 117, 217 };
+    const sf::Color BUTTON_COLOR_SELECTION_LIGHT{ 0, 0, 0 };
+    const sf::Color BUTTON_COLOR_FRAME_LIGHT{ 255, 255, 255 };
+    const sf::Color GAME_COLOR_BACKGROUND_INGAME_LIGHT{ 230,230,230 };
+    const sf::Color GAME_COLOR_BACKGROUND_WIN_LIGHT{ 0, 255, 0 };
+    const sf::Color GAME_COLOR_BACKGROUND_LOST_LIGHT{  255, 0, 0 };
+    const sf::Color GAME_COLOR_ROOM_LIGHT{ 255, 255, 255};
+    const sf::Color GAME_COLOR_WALL_LIGHT{ 0, 0, 0  };
+    const sf::Color BUTTON_TEXT_SCORE_LIGHT{0, 0, 0};
 }
 
 
diff --git a/assets/docs/html/_application_8h_source.html b/docs/html/_application_8h_source.html
similarity index 100%
rename from assets/docs/html/_application_8h_source.html
rename to docs/html/_application_8h_source.html
diff --git a/assets/docs/html/_bob_builder_director_8h_source.html b/docs/html/_bob_builder_director_8h_source.html
similarity index 100%
rename from assets/docs/html/_bob_builder_director_8h_source.html
rename to docs/html/_bob_builder_director_8h_source.html
diff --git a/assets/docs/html/_button_8h_source.html b/docs/html/_button_8h_source.html
similarity index 100%
rename from assets/docs/html/_button_8h_source.html
rename to docs/html/_button_8h_source.html
diff --git a/assets/docs/html/_context_8h_source.html b/docs/html/_context_8h_source.html
similarity index 100%
rename from assets/docs/html/_context_8h_source.html
rename to docs/html/_context_8h_source.html
diff --git a/assets/docs/html/_game_builders_8h_source.html b/docs/html/_game_builders_8h_source.html
similarity index 100%
rename from assets/docs/html/_game_builders_8h_source.html
rename to docs/html/_game_builders_8h_source.html
diff --git a/assets/docs/html/_game_state_8h_source.html b/docs/html/_game_state_8h_source.html
similarity index 90%
rename from assets/docs/html/_game_state_8h_source.html
rename to docs/html/_game_state_8h_source.html
index 6c41363a8a3e6c25ec520156611dd358c2d0bcda..12b08b071e0edf1db602497832c0e6647924a2c1 100644
--- a/assets/docs/html/_game_state_8h_source.html
+++ b/docs/html/_game_state_8h_source.html
@@ -127,9 +127,9 @@ $(function(){initNavTree('_game_state_8h_source.html',''); initResizable(true);
 <div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    <span class="keywordtype">void</span> set_context(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>&amp;&amp; context);</div>
 <div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keywordtype">bool</span> process_key_pressed(sf::Keyboard::Key code);</div>
 <div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    <span class="keyword">const</span> <a class="code hl_class" href="class_score_count.html">ScoreCount</a>&amp; get_score_count()<span class="keyword"> const </span>{<span class="keywordflow">return</span> *m_score_count_one, *m_score_count_two; }</div>
-<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span> </div>
-<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    <span class="keyword">enum class</span> Music {NONE, INGAME, LOST, WIN};</div>
-<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    Music m_current_music = Music::NONE; </div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_game_state.html#a8538d9088ff9371e69e19ad6661b6391">handle_screamer</a>(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>&amp; context); </div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a">   26</a></span>    <span class="keyword">enum class</span> <a class="code hl_enumeration" href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a">Music</a> {NONE, INGAME, LOST, WIN};</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    <a class="code hl_enumeration" href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a">Music</a> m_current_music = Music::NONE; </div>
 <div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span><span class="keyword">private</span>:</div>
 <div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <a class="code hl_class" href="class_maze.html">Maze</a> m_maze;</div>
 <div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    <a class="code hl_class" href="class_menu_game.html">MenuGame</a> m_menu;</div>
@@ -147,11 +147,13 @@ $(function(){initNavTree('_game_state_8h_source.html',''); initResizable(true);
 </div>
 <div class="ttc" id="aclass_context_manager_html"><div class="ttname"><a href="class_context_manager.html">ContextManager</a></div><div class="ttdef"><b>Определения</b> Context.h:27</div></div>
 <div class="ttc" id="aclass_game_state_html_a180391dfe966058da0389146534e66d0"><div class="ttname"><a href="class_game_state.html#a180391dfe966058da0389146534e66d0">GameState::event_handling</a></div><div class="ttdeci">void event_handling() override</div><div class="ttdef"><b>Определения</b> GameState.cpp:23</div></div>
-<div class="ttc" id="aclass_game_state_html_a2c36ada0cae89f91d956e2c91b070893"><div class="ttname"><a href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893">GameState::render</a></div><div class="ttdeci">void render() override</div><div class="ttdef"><b>Определения</b> GameState.cpp:141</div></div>
-<div class="ttc" id="aclass_game_state_html_a3610da76344c5c2cbcc5921f877226dc"><div class="ttname"><a href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc">GameState::update</a></div><div class="ttdeci">void update() override</div><div class="ttdef"><b>Определения</b> GameState.cpp:89</div></div>
+<div class="ttc" id="aclass_game_state_html_a2c36ada0cae89f91d956e2c91b070893"><div class="ttname"><a href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893">GameState::render</a></div><div class="ttdeci">void render() override</div><div class="ttdef"><b>Определения</b> GameState.cpp:175</div></div>
+<div class="ttc" id="aclass_game_state_html_a3610da76344c5c2cbcc5921f877226dc"><div class="ttname"><a href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc">GameState::update</a></div><div class="ttdeci">void update() override</div><div class="ttdef"><b>Определения</b> GameState.cpp:91</div></div>
+<div class="ttc" id="aclass_game_state_html_a8538d9088ff9371e69e19ad6661b6391"><div class="ttname"><a href="class_game_state.html#a8538d9088ff9371e69e19ad6661b6391">GameState::handle_screamer</a></div><div class="ttdeci">void handle_screamer(GameContext &amp;context)</div><div class="ttdef"><b>Определения</b> GameState.cpp:143</div></div>
 <div class="ttc" id="aclass_game_state_html_a90b51ee7191c9fd1fc5e207bc35f1153"><div class="ttname"><a href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153">GameState::GameState</a></div><div class="ttdeci">GameState(IStateManager &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</div><div class="ttdef"><b>Определения</b> GameState.cpp:7</div></div>
+<div class="ttc" id="aclass_game_state_html_aa34cf16f95e6ee5a539a5865e7f2128a"><div class="ttname"><a href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a">GameState::Music</a></div><div class="ttdeci">Music</div><div class="ttdef"><b>Определения</b> GameState.h:26</div></div>
 <div class="ttc" id="aclass_maze_html"><div class="ttname"><a href="class_maze.html">Maze</a></div><div class="ttdef"><b>Определения</b> Maze.h:30</div></div>
-<div class="ttc" id="aclass_menu_game_html"><div class="ttname"><a href="class_menu_game.html">MenuGame</a></div><div class="ttdef"><b>Определения</b> MenuInGame.h:5</div></div>
+<div class="ttc" id="aclass_menu_game_html"><div class="ttname"><a href="class_menu_game.html">MenuGame</a></div><div class="ttdef"><b>Определения</b> MenuInGame.h:7</div></div>
 <div class="ttc" id="aclass_score_count_html"><div class="ttname"><a href="class_score_count.html">ScoreCount</a></div><div class="ttdoc">Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик ...</div><div class="ttdef"><b>Определения</b> IObserver.h:16</div></div>
 <div class="ttc" id="astruct_game_context_html"><div class="ttname"><a href="struct_game_context.html">GameContext</a></div><div class="ttdoc">Контекст игры. Тут хранится состояние всего того, что происходит в лабиринте</div><div class="ttdef"><b>Определения</b> Context.h:14</div></div>
 <div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
diff --git a/assets/docs/html/_i_drawable_8h_source.html b/docs/html/_i_drawable_8h_source.html
similarity index 100%
rename from assets/docs/html/_i_drawable_8h_source.html
rename to docs/html/_i_drawable_8h_source.html
diff --git a/assets/docs/html/_i_entity_8h_source.html b/docs/html/_i_entity_8h_source.html
similarity index 99%
rename from assets/docs/html/_i_entity_8h_source.html
rename to docs/html/_i_entity_8h_source.html
index 32dfb337718bcce0f028650ab1984ece8bcbe20e..86fc3b63c61233cdd8d5c395fcb27ce7e631705e 100644
--- a/assets/docs/html/_i_entity_8h_source.html
+++ b/docs/html/_i_entity_8h_source.html
@@ -109,7 +109,7 @@ $(function(){initNavTree('_i_entity_8h_source.html',''); initResizable(true); })
 <div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
 <div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../IDrawable.h&quot;</span></div>
 <div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../../Event/IGameEvent.h&quot;</span></div>
-<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;MyTexture.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;../../Utilities/MyTexture.h&quot;</span></div>
 <div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
 <div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span><span class="keyword">class </span><a class="code hl_class" href="class_room.html">Room</a>;</div>
 <div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">class </span><a class="code hl_class" href="class_food.html">Food</a>;</div>
diff --git a/assets/docs/html/_i_game_builder_8h_source.html b/docs/html/_i_game_builder_8h_source.html
similarity index 100%
rename from assets/docs/html/_i_game_builder_8h_source.html
rename to docs/html/_i_game_builder_8h_source.html
diff --git a/assets/docs/html/_i_game_event_8h_source.html b/docs/html/_i_game_event_8h_source.html
similarity index 72%
rename from assets/docs/html/_i_game_event_8h_source.html
rename to docs/html/_i_game_event_8h_source.html
index d078c9b67ebbb01edc767810943539a79e5298e5..90340e7074e106dcfd1d2a8817f3779f7f78dbca 100644
--- a/assets/docs/html/_i_game_event_8h_source.html
+++ b/docs/html/_i_game_event_8h_source.html
@@ -114,76 +114,89 @@ $(function(){initNavTree('_i_game_event_8h_source.html',''); initResizable(true)
 <div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
 <div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">class </span><a class="code hl_struct" href="struct_game_context.html">GameContext</a>;</div>
 <div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="keyword">class </span><a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>;</div>
-<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span></div>
-<div class="foldopen" id="foldopen00015" data-start="{" data-end="};">
-<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"><a class="line" href="class_i_game_event.html">   15</a></span><span class="keyword">class </span><a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
-<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="keyword">public</span>:</div>
-<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) = 0; </div>
-<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">   18</a></span>    <span class="keyword">virtual</span> <a class="code hl_function" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>() = <span class="keywordflow">default</span>;</div>
-<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <span class="keywordtype">void</span> add_observer(<a class="code hl_class" href="class_i_observer.html">IObserver</a>* observer);</div>
-<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span> </div>
-<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span><span class="keyword">protected</span>:</div>
-<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    <span class="keywordtype">void</span> notify() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
-<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span><span class="keyword">private</span>:</div>
-<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    std::vector&lt;IObserver*&gt; m_observers;</div>
-<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
-<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>};</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span><span class="keyword">class </span><a class="code hl_class" href="class_pacman.html">Pacman</a>;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span></div>
+<div class="foldopen" id="foldopen00016" data-start="{" data-end="};">
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"><a class="line" href="class_i_game_event.html">   16</a></span><span class="keyword">class </span><a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keyword">virtual</span> <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) = 0; </div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"><a class="line" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">   19</a></span>    <span class="keyword">virtual</span> <a class="code hl_function" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>() = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <span class="keywordtype">void</span> add_observer(<a class="code hl_class" href="class_i_observer.html">IObserver</a>* observer);</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span><span class="keyword">protected</span>:</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    <span class="keywordtype">void</span> notify() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span> </div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    std::vector&lt;IObserver*&gt; m_observers;</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span> </div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>};</div>
 </div>
-<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span></div>
-<div class="foldopen" id="foldopen00032" data-start="{" data-end="};">
-<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="class_win_game.html">   32</a></span><span class="keyword">class </span><a class="code hl_class" href="class_win_game.html">WinGame</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
-<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span><span class="keyword">public</span>:</div>
-<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
-<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>};</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span></div>
+<div class="foldopen" id="foldopen00033" data-start="{" data-end="};">
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"><a class="line" href="class_win_game.html">   33</a></span><span class="keyword">class </span><a class="code hl_class" href="class_win_game.html">WinGame</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>};</div>
 </div>
-<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span></div>
-<div class="foldopen" id="foldopen00041" data-start="{" data-end="};">
-<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="class_lost_game.html">   41</a></span><span class="keyword">class </span><a class="code hl_class" href="class_lost_game.html">LostGame</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
-<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span><span class="keyword">public</span>:</div>
-<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
-<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>};</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span></div>
+<div class="foldopen" id="foldopen00042" data-start="{" data-end="};">
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="class_lost_game.html">   42</a></span><span class="keyword">class </span><a class="code hl_class" href="class_lost_game.html">LostGame</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>};</div>
 </div>
-<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span></div>
-<div class="foldopen" id="foldopen00051" data-start="{" data-end="};">
-<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"><a class="line" href="class_delete_static_entity.html">   51</a></span><span class="keyword">class </span>DeleteStaticEntity : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
-<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span><span class="keyword">public</span>:</div>
-<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>    DeleteStaticEntity(<a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* ptr_entity);</div>
-<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">handle</a>(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
-<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span><span class="keyword">private</span>:</div>
-<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span>    <a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* m_ptr_entity;</div>
-<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>};</div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span></div>
+<div class="foldopen" id="foldopen00052" data-start="{" data-end="};">
+<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"><a class="line" href="class_delete_static_entity.html">   52</a></span><span class="keyword">class </span>DeleteStaticEntity : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    DeleteStaticEntity(<a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* ptr_entity);</div>
+<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">handle</a>(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    <a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* m_ptr_entity;</div>
+<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>};</div>
 </div>
-<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span></div>
-<div class="foldopen" id="foldopen00063" data-start="{" data-end="};">
-<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"><a class="line" href="struct_screamer_event.html">   63</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_screamer_event.html">ScreamerEvent</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
-<div class="line"><a id="l00064" name="l00064"></a><span class="lineno">   64</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
-<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>    sf::Sound m_sound;</div>
-<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>};</div>
+<div class="line"><a id="l00059" name="l00059"></a><span class="lineno">   59</span></div>
+<div class="foldopen" id="foldopen00064" data-start="{" data-end="};">
+<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"><a class="line" href="struct_screamer_event.html">   64</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_screamer_event.html">ScreamerEvent</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00065" name="l00065"></a><span class="lineno">   65</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00066" name="l00066"></a><span class="lineno">   66</span>    sf::Sound m_sound;</div>
+<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span>};</div>
 </div>
-<div class="line"><a id="l00067" name="l00067"></a><span class="lineno">   67</span></div>
-<div class="foldopen" id="foldopen00072" data-start="{" data-end="};">
-<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="class_screamer_composite_event.html">   72</a></span><span class="keyword">class </span>ScreamerCompositeEvent : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
-<div class="line"><a id="l00073" name="l00073"></a><span class="lineno">   73</span><span class="keyword">public</span>:</div>
-<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span>    ScreamerCompositeEvent(<a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* food) : m_food(food) {}</div>
-<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context)<span class="keyword"> override </span>{</div>
-<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>        <a class="code hl_class" href="class_delete_static_entity.html">DeleteStaticEntity</a>(m_food).<a class="code hl_function" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">handle</a>(context);</div>
-<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>        <a class="code hl_struct" href="struct_screamer_event.html">ScreamerEvent</a>().handle(context);</div>
-<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span>    }</div>
-<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span><span class="keyword">private</span>:</div>
-<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span>    <a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* m_food;</div>
-<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>};</div>
+<div class="line"><a id="l00068" name="l00068"></a><span class="lineno">   68</span></div>
+<div class="foldopen" id="foldopen00073" data-start="{" data-end="};">
+<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"><a class="line" href="class_screamer_composite_event.html">   73</a></span><span class="keyword">class </span>ScreamerCompositeEvent : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00074" name="l00074"></a><span class="lineno">   74</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00075" name="l00075"></a><span class="lineno">   75</span>    <span class="keyword">explicit</span> ScreamerCompositeEvent(<a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* food) : m_food(food) {}</div>
+<div class="line"><a id="l00076" name="l00076"></a><span class="lineno">   76</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context)<span class="keyword"> override </span>{</div>
+<div class="line"><a id="l00077" name="l00077"></a><span class="lineno">   77</span>        <a class="code hl_class" href="class_delete_static_entity.html">DeleteStaticEntity</a>(m_food).<a class="code hl_function" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">handle</a>(context);</div>
+<div class="line"><a id="l00078" name="l00078"></a><span class="lineno">   78</span>        <a class="code hl_struct" href="struct_screamer_event.html">ScreamerEvent</a>().handle(context);</div>
+<div class="line"><a id="l00079" name="l00079"></a><span class="lineno">   79</span>    }</div>
+<div class="line"><a id="l00080" name="l00080"></a><span class="lineno">   80</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00081" name="l00081"></a><span class="lineno">   81</span>    <a class="code hl_struct" href="struct_i_static_entity.html">IStaticEntity</a>* m_food;</div>
+<div class="line"><a id="l00082" name="l00082"></a><span class="lineno">   82</span>};</div>
 </div>
-<div class="ttc" id="aclass_delete_static_entity_html"><div class="ttname"><a href="class_delete_static_entity.html">DeleteStaticEntity</a></div><div class="ttdoc">Удаление еды.</div><div class="ttdef"><b>Определения</b> IGameEvent.h:51</div></div>
+<div class="line"><a id="l00083" name="l00083"></a><span class="lineno">   83</span></div>
+<div class="foldopen" id="foldopen00089" data-start="{" data-end="};">
+<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"><a class="line" href="class_pacman_lose_life_event.html">   89</a></span><span class="keyword">class </span>PacmanLoseLifeEvent : <span class="keyword">public</span> <a class="code hl_class" href="class_i_game_event.html">IGameEvent</a> {</div>
+<div class="line"><a id="l00090" name="l00090"></a><span class="lineno">   90</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00091" name="l00091"></a><span class="lineno">   91</span>    <span class="keyword">explicit</span> PacmanLoseLifeEvent(<span class="keywordtype">bool</span> second_player) : m_second_player(second_player) {}</div>
+<div class="line"><a id="l00092" name="l00092"></a><span class="lineno">   92</span> </div>
+<div class="line"><a id="l00093" name="l00093"></a><span class="lineno">   93</span>    <span class="keywordtype">void</span> handle(<a class="code hl_struct" href="struct_game_context.html">GameContext</a>* context) <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00094" name="l00094"></a><span class="lineno">   94</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00095" name="l00095"></a><span class="lineno">   95</span>    <span class="keywordtype">bool</span> m_second_player;</div>
+<div class="line"><a id="l00096" name="l00096"></a><span class="lineno">   96</span>};</div>
+</div>
+<div class="ttc" id="aclass_delete_static_entity_html"><div class="ttname"><a href="class_delete_static_entity.html">DeleteStaticEntity</a></div><div class="ttdoc">Удаление еды.</div><div class="ttdef"><b>Определения</b> IGameEvent.h:52</div></div>
 <div class="ttc" id="aclass_delete_static_entity_html_aadc4bbbd570e947fca78e222dbfacb43"><div class="ttname"><a href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">DeleteStaticEntity::handle</a></div><div class="ttdeci">void handle(GameContext *context) override</div><div class="ttdef"><b>Определения</b> IGameEvent.cpp:18</div></div>
-<div class="ttc" id="aclass_i_game_event_html"><div class="ttname"><a href="class_i_game_event.html">IGameEvent</a></div><div class="ttdoc">Абстрактрый класс для различных игровых событий</div><div class="ttdef"><b>Определения</b> IGameEvent.h:15</div></div>
+<div class="ttc" id="aclass_i_game_event_html"><div class="ttname"><a href="class_i_game_event.html">IGameEvent</a></div><div class="ttdoc">Абстрактрый класс для различных игровых событий</div><div class="ttdef"><b>Определения</b> IGameEvent.h:16</div></div>
 <div class="ttc" id="aclass_i_game_event_html_ae84f5f2b3d3bd7834e334c4e6fcde711"><div class="ttname"><a href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">IGameEvent::~IGameEvent</a></div><div class="ttdeci">virtual ~IGameEvent()=default</div></div>
 <div class="ttc" id="aclass_i_observer_html"><div class="ttname"><a href="class_i_observer.html">IObserver</a></div><div class="ttdoc">Паттерн Observer. Общий интерфейс для наблюдателей</div><div class="ttdef"><b>Определения</b> IObserver.h:7</div></div>
-<div class="ttc" id="aclass_lost_game_html"><div class="ttname"><a href="class_lost_game.html">LostGame</a></div><div class="ttdef"><b>Определения</b> IGameEvent.h:41</div></div>
-<div class="ttc" id="aclass_win_game_html"><div class="ttname"><a href="class_win_game.html">WinGame</a></div><div class="ttdef"><b>Определения</b> IGameEvent.h:32</div></div>
+<div class="ttc" id="aclass_lost_game_html"><div class="ttname"><a href="class_lost_game.html">LostGame</a></div><div class="ttdef"><b>Определения</b> IGameEvent.h:42</div></div>
+<div class="ttc" id="aclass_pacman_html"><div class="ttname"><a href="class_pacman.html">Pacman</a></div><div class="ttdef"><b>Определения</b> Pacman.h:8</div></div>
+<div class="ttc" id="aclass_win_game_html"><div class="ttname"><a href="class_win_game.html">WinGame</a></div><div class="ttdef"><b>Определения</b> IGameEvent.h:33</div></div>
 <div class="ttc" id="astruct_game_context_html"><div class="ttname"><a href="struct_game_context.html">GameContext</a></div><div class="ttdoc">Контекст игры. Тут хранится состояние всего того, что происходит в лабиринте</div><div class="ttdef"><b>Определения</b> Context.h:14</div></div>
 <div class="ttc" id="astruct_i_static_entity_html"><div class="ttname"><a href="struct_i_static_entity.html">IStaticEntity</a></div><div class="ttdoc">Статические сущности, наследник IEntity -&gt; неперемещаемые объекты, с которыми будет взаимодействовать...</div><div class="ttdef"><b>Определения</b> IEntity.h:43</div></div>
-<div class="ttc" id="astruct_screamer_event_html"><div class="ttname"><a href="struct_screamer_event.html">ScreamerEvent</a></div><div class="ttdoc">Скример</div><div class="ttdef"><b>Определения</b> IGameEvent.h:63</div></div>
+<div class="ttc" id="astruct_screamer_event_html"><div class="ttname"><a href="struct_screamer_event.html">ScreamerEvent</a></div><div class="ttdoc">Скример</div><div class="ttdef"><b>Определения</b> IGameEvent.h:64</div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
diff --git a/assets/docs/html/_i_observer_8h_source.html b/docs/html/_i_observer_8h_source.html
similarity index 99%
rename from assets/docs/html/_i_observer_8h_source.html
rename to docs/html/_i_observer_8h_source.html
index 4126202ebe896c76b5025a2a718259e15681838f..1322a159d4c058671f7869fbb4deeb063bf6c197 100644
--- a/assets/docs/html/_i_observer_8h_source.html
+++ b/docs/html/_i_observer_8h_source.html
@@ -132,7 +132,7 @@ $(function(){initNavTree('_i_observer_8h_source.html',''); initResizable(true);
 <div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    <span class="keywordtype">int</span> m_player;</div>
 <div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>};</div>
 </div>
-<div class="ttc" id="aclass_i_game_event_html"><div class="ttname"><a href="class_i_game_event.html">IGameEvent</a></div><div class="ttdoc">Абстрактрый класс для различных игровых событий</div><div class="ttdef"><b>Определения</b> IGameEvent.h:15</div></div>
+<div class="ttc" id="aclass_i_game_event_html"><div class="ttname"><a href="class_i_game_event.html">IGameEvent</a></div><div class="ttdoc">Абстрактрый класс для различных игровых событий</div><div class="ttdef"><b>Определения</b> IGameEvent.h:16</div></div>
 <div class="ttc" id="aclass_i_observer_html"><div class="ttname"><a href="class_i_observer.html">IObserver</a></div><div class="ttdoc">Паттерн Observer. Общий интерфейс для наблюдателей</div><div class="ttdef"><b>Определения</b> IObserver.h:7</div></div>
 <div class="ttc" id="aclass_score_count_html_ac3920f1272e0d1df949eea48b04896c1"><div class="ttname"><a href="class_score_count.html#ac3920f1272e0d1df949eea48b04896c1">ScoreCount::on_notify</a></div><div class="ttdeci">void on_notify(const IGameEvent &amp;event) override</div><div class="ttdef"><b>Определения</b> IObserver.cpp:5</div></div>
 </div><!-- fragment --></div><!-- contents -->
diff --git a/assets/docs/html/_i_select_command_8h_source.html b/docs/html/_i_select_command_8h_source.html
similarity index 100%
rename from assets/docs/html/_i_select_command_8h_source.html
rename to docs/html/_i_select_command_8h_source.html
diff --git a/assets/docs/html/_i_state_8h_source.html b/docs/html/_i_state_8h_source.html
similarity index 100%
rename from assets/docs/html/_i_state_8h_source.html
rename to docs/html/_i_state_8h_source.html
diff --git a/assets/docs/html/_i_window_keeper_8h_source.html b/docs/html/_i_window_keeper_8h_source.html
similarity index 100%
rename from assets/docs/html/_i_window_keeper_8h_source.html
rename to docs/html/_i_window_keeper_8h_source.html
diff --git a/assets/docs/html/_maze_8h_source.html b/docs/html/_maze_8h_source.html
similarity index 100%
rename from assets/docs/html/_maze_8h_source.html
rename to docs/html/_maze_8h_source.html
diff --git a/assets/docs/html/_menu_8h_source.html b/docs/html/_menu_8h_source.html
similarity index 100%
rename from assets/docs/html/_menu_8h_source.html
rename to docs/html/_menu_8h_source.html
diff --git a/assets/docs/html/_menu_in_game_8h_source.html b/docs/html/_menu_in_game_8h_source.html
similarity index 77%
rename from assets/docs/html/_menu_in_game_8h_source.html
rename to docs/html/_menu_in_game_8h_source.html
index c3855a26de8e94bca881113f65c7691eac407295..b31c021030ea129ac60c1c29621433f8decf53a5 100644
--- a/assets/docs/html/_menu_in_game_8h_source.html
+++ b/docs/html/_menu_in_game_8h_source.html
@@ -108,27 +108,35 @@ $(function(){initNavTree('_menu_in_game_8h_source.html',''); initResizable(true)
 <div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
 <div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &lt;SFML/Graphics.hpp&gt;</span></div>
 <div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../../Entity/IObserver.h&quot;</span></div>
-<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span> </div>
-<div class="foldopen" id="foldopen00005" data-start="{" data-end="};">
-<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"><a class="line" href="class_menu_game.html">    5</a></span><span class="keyword">class </span>MenuGame {</div>
-<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="keyword">public</span>:</div>
-<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    MenuGame();</div>
-<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow &amp;window, <span class="keyword">const</span> <a class="code hl_class" href="class_score_count.html">ScoreCount</a>&amp; scores_one, <span class="keyword">const</span> <a class="code hl_class" href="class_score_count.html">ScoreCount</a>&amp; scores_two);</div>
-<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    <span class="keywordtype">void</span> draw_button(sf::RenderWindow &amp;window);</div>
-<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keywordtype">bool</span> is_clicked(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);</div>
-<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span> </div>
-<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span><span class="keyword">private</span>:</div>
-<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    sf::RenderWindow m_window;</div>
-<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    sf::RectangleShape m_background;</div>
-<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    sf::RectangleShape m_button;</div>
-<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span> </div>
-<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    sf::Text m_player_one_score;</div>
-<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    sf::Text m_player_two_score;</div>
-<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span> </div>
-<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    sf::Texture m_sound_texture;</div>
-<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    sf::Sprite m_sound_sprite;</div>
-<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>};</div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../../../Context/Context.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;../../../State/IState.h&quot;</span></div>
+<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span> </div>
+<div class="foldopen" id="foldopen00007" data-start="{" data-end="};">
+<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="class_menu_game.html">    7</a></span><span class="keyword">class </span>MenuGame {</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    MenuGame();</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow &amp;window, <span class="keyword">const</span> <a class="code hl_class" href="class_score_count.html">ScoreCount</a>&amp; scores_one, <span class="keyword">const</span> <a class="code hl_class" href="class_score_count.html">ScoreCount</a>&amp; scores_two);</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <span class="keywordtype">void</span> draw_button(sf::RenderWindow &amp;window);</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordtype">void</span> draw_hearts(sf::RenderWindow &amp;window, <span class="keywordtype">int</span> lives, <span class="keywordtype">float</span> pos);</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keywordtype">bool</span> is_clicked(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span> </div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <a class="code hl_class" href="class_context_manager.html">ContextManager</a> m_context;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    sf::RenderWindow m_window;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    sf::RectangleShape m_background;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    sf::RectangleShape m_button;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span> </div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    sf::Text m_player_one_score;</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    sf::Text m_player_two_score;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    sf::Texture m_sound_texture;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    sf::Sprite m_sound_sprite;</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    sf::Texture m_lives_texture;</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    sf::Sprite m_lives_sprite;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>};</div>
 </div>
+<div class="ttc" id="aclass_context_manager_html"><div class="ttname"><a href="class_context_manager.html">ContextManager</a></div><div class="ttdef"><b>Определения</b> Context.h:27</div></div>
 <div class="ttc" id="aclass_score_count_html"><div class="ttname"><a href="class_score_count.html">ScoreCount</a></div><div class="ttdoc">Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик ...</div><div class="ttdef"><b>Определения</b> IObserver.h:16</div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/_my_texture_8h_source.html b/docs/html/_my_texture_8h_source.html
similarity index 97%
rename from assets/docs/html/_my_texture_8h_source.html
rename to docs/html/_my_texture_8h_source.html
index d655813c1f4394656c59e39be9bd0604cf571e74..770c195088ae9275b7a807ba3c781d2035be614a 100644
--- a/assets/docs/html/_my_texture_8h_source.html
+++ b/docs/html/_my_texture_8h_source.html
@@ -5,7 +5,7 @@
 <meta http-equiv="X-UA-Compatible" content="IE=11"/>
 <meta name="generator" content="Doxygen 1.13.2"/>
 <meta name="viewport" content="width=device-width, initial-scale=1"/>
-<title>Pacman: Исходный файл source/application/Drawable/Entity/MyTexture.h</title>
+<title>Pacman: Исходный файл source/application/Utilities/MyTexture.h</title>
 <link href="tabs.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="jquery.js"></script>
 <script type="text/javascript" src="dynsections.js"></script>
@@ -185,7 +185,7 @@ $(function(){initNavTree('_my_texture_8h_source.html',''); initResizable(true);
 <!-- start footer part -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
   <ul>
-    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html">Drawable</a></li><li class="navelem"><a class="el" href="dir_36512145787243429e2d8387a78e16b9.html">Entity</a></li><li class="navelem"><b>MyTexture.h</b></li>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_ac1e7d56941449703ea96678bf1e9a08.html">Utilities</a></li><li class="navelem"><b>MyTexture.h</b></li>
     <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
   </ul>
 </div>
diff --git a/assets/docs/html/_pacman_8h_source.html b/docs/html/_pacman_8h_source.html
similarity index 83%
rename from assets/docs/html/_pacman_8h_source.html
rename to docs/html/_pacman_8h_source.html
index 9a6877336018e933f5b1b4d80b747e5091c7d98a..780aea42afaa9ea5404568f75c96f4148540b516 100644
--- a/assets/docs/html/_pacman_8h_source.html
+++ b/docs/html/_pacman_8h_source.html
@@ -109,34 +109,39 @@ $(function(){initNavTree('_pacman_8h_source.html',''); initResizable(true); });
 <div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span> </div>
 <div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;IEntity.h&quot;</span></div>
 <div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../Maze/Maze.h&quot;</span></div>
-<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;MyTexture.h&quot;</span></div>
+<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span><span class="preprocessor">#include &quot;../../Utilities/MyTexture.h&quot;</span></div>
 <div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span><span class="preprocessor">#include &quot;SFML/Audio/Sound.hpp&quot;</span></div>
 <div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span> </div>
 <div class="foldopen" id="foldopen00008" data-start="{" data-end="};">
-<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="class_pacman.html">    8</a></span><span class="keyword">class </span><a class="code hl_function" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_entity.html">IEntity</a>, <span class="keyword">public</span> <a class="code hl_class" href="class_i_visitor.html">IVisitor</a> {</div>
+<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"><a class="line" href="class_pacman.html">    8</a></span><span class="keyword">class </span><a class="code hl_function" href="class_pacman.html#a4000caf3daa707f177de875075a72c83">Pacman</a> : <span class="keyword">public</span> <a class="code hl_class" href="class_i_entity.html">IEntity</a>, <span class="keyword">public</span> <a class="code hl_class" href="class_i_visitor.html">IVisitor</a> {</div>
 <div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span><span class="keyword">public</span>:</div>
-<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">explicit</span> <a class="code hl_function" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a>(<a class="code hl_class" href="class_my_texture.html">MyTexture</a>* texture);</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">explicit</span> <a class="code hl_function" href="class_pacman.html#a4000caf3daa707f177de875075a72c83">Pacman</a>(<a class="code hl_class" href="class_my_texture.html">MyTexture</a>* texture,  <span class="keywordtype">bool</span> is_second_player);</div>
 <div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">move</a>(Room::Direction direction);</div>
 <div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">prepare_for_drawing</a>() <span class="keyword">override</span>;</div>
 <div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keywordtype">void</span> draw_into(sf::RenderWindow&amp; window) <span class="keyword">override</span>;</div>
 <div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    std::unique_ptr&lt;IGameEvent&gt; <a class="code hl_function" href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">visit</a>(<a class="code hl_class" href="class_food.html">Food</a>* ptr_entity) <span class="keyword">override</span>;</div>
 <div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    std::unique_ptr&lt;IGameEvent&gt; <a class="code hl_function" href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">visit</a>(<a class="code hl_class" href="class_enemy.html">Enemy</a>* ptr_entity) <span class="keyword">override</span>;</div>
-<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <a class="code hl_function" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">~Pacman</a>() <span class="keyword">override</span> = <span class="keywordflow">default</span>;</div>
-<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span><span class="keyword">private</span>:</div>
-<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    sf::Sprite m_sprite;</div>
-<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    sf::Sound m_sound;</div>
-<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <a class="code hl_class" href="class_my_texture.html">MyTexture</a>* m_ptr_texture;</div>
-<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>};</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keywordtype">bool</span> died()<span class="keyword"> const </span>{<span class="keywordflow">return</span> m_lives &lt;= 0; }</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keywordtype">void</span> lose_life() {<span class="keywordflow">if</span> (m_lives &gt; 0) m_lives--;}</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <span class="keywordtype">int</span> get_lives() {<span class="keywordflow">return</span> m_lives; }</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    <a class="code hl_function" href="class_pacman.html#a4000caf3daa707f177de875075a72c83">~Pacman</a>() <span class="keyword">override</span> = <span class="keywordflow">default</span>;</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    <span class="keywordtype">int</span> m_lives = 3; </div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    sf::Sprite m_sprite;</div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span>    sf::Sound m_sound;</div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>    <a class="code hl_class" href="class_my_texture.html">MyTexture</a>* m_ptr_texture;</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span>    <span class="keywordtype">bool</span> m_second_player;</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>};</div>
 </div>
 <div class="ttc" id="aclass_enemy_html"><div class="ttname"><a href="class_enemy.html">Enemy</a></div><div class="ttdoc">Конкретный наследник Enemy - враг. Если пакман наткнется хотя бы на одного врага, то он умрет -&gt; уров...</div><div class="ttdef"><b>Определения</b> IEntity.h:62</div></div>
 <div class="ttc" id="aclass_food_html"><div class="ttname"><a href="class_food.html">Food</a></div><div class="ttdoc">Наследник IStaticEntity - еда.</div><div class="ttdef"><b>Определения</b> IEntity.h:81</div></div>
 <div class="ttc" id="aclass_i_entity_html"><div class="ttname"><a href="class_i_entity.html">IEntity</a></div><div class="ttdoc">IEntity любая сущность, которая может быть помощена в лабиринт.</div><div class="ttdef"><b>Определения</b> IEntity.h:31</div></div>
 <div class="ttc" id="aclass_i_visitor_html"><div class="ttname"><a href="class_i_visitor.html">IVisitor</a></div><div class="ttdoc">Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...</div><div class="ttdef"><b>Определения</b> IEntity.h:15</div></div>
 <div class="ttc" id="aclass_my_texture_html"><div class="ttname"><a href="class_my_texture.html">MyTexture</a></div><div class="ttdef"><b>Определения</b> MyTexture.h:5</div></div>
-<div class="ttc" id="aclass_pacman_html_a72fa328d22c8fa39cf6b941ec10cd8a2"><div class="ttname"><a href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman::Pacman</a></div><div class="ttdeci">Pacman(MyTexture *texture)</div><div class="ttdoc">Pacman - главный герой. В конструкторе в пакмана загружаем звук, который он будет издавать при поедан...</div><div class="ttdef"><b>Определения</b> Pacman.cpp:10</div></div>
-<div class="ttc" id="aclass_pacman_html_aa957cbb7b0ad1bc1f6ef2aac82423cd8"><div class="ttname"><a href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">Pacman::move</a></div><div class="ttdeci">void move(Room::Direction direction)</div><div class="ttdoc">Перемещение пакмана</div><div class="ttdef"><b>Определения</b> Pacman.cpp:21</div></div>
-<div class="ttc" id="aclass_pacman_html_ac4b928c45d22d9814a02b7a621c5ae7c"><div class="ttname"><a href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">Pacman::visit</a></div><div class="ttdeci">std::unique_ptr&lt; IGameEvent &gt; visit(Food *ptr_entity) override</div><div class="ttdoc">Посещение пакманом еды Проводим взаимодействие, только если еда и пакман находятся в одной комнате,...</div><div class="ttdef"><b>Определения</b> Pacman.cpp:37</div></div>
-<div class="ttc" id="aclass_pacman_html_ad41930fae2878425f80e4fea614f3a3d"><div class="ttname"><a href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">Pacman::prepare_for_drawing</a></div><div class="ttdeci">void prepare_for_drawing() override</div><div class="ttdoc">Подготовка перед отрисовкой. Загружает текстуру в m_sprite и назначаем позицию, куда его расположить</div><div class="ttdef"><b>Определения</b> Pacman.cpp:28</div></div>
+<div class="ttc" id="aclass_pacman_html_a4000caf3daa707f177de875075a72c83"><div class="ttname"><a href="class_pacman.html#a4000caf3daa707f177de875075a72c83">Pacman::Pacman</a></div><div class="ttdeci">Pacman(MyTexture *texture, bool is_second_player)</div><div class="ttdoc">Pacman - главный герой. В конструкторе в пакмана загружаем звук, который он будет издавать при поедан...</div><div class="ttdef"><b>Определения</b> Pacman.cpp:10</div></div>
+<div class="ttc" id="aclass_pacman_html_aa957cbb7b0ad1bc1f6ef2aac82423cd8"><div class="ttname"><a href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">Pacman::move</a></div><div class="ttdeci">void move(Room::Direction direction)</div><div class="ttdoc">Перемещение пакмана</div><div class="ttdef"><b>Определения</b> Pacman.cpp:22</div></div>
+<div class="ttc" id="aclass_pacman_html_ac4b928c45d22d9814a02b7a621c5ae7c"><div class="ttname"><a href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">Pacman::visit</a></div><div class="ttdeci">std::unique_ptr&lt; IGameEvent &gt; visit(Food *ptr_entity) override</div><div class="ttdoc">Посещение пакманом еды Проводим взаимодействие, только если еда и пакман находятся в одной комнате,...</div><div class="ttdef"><b>Определения</b> Pacman.cpp:38</div></div>
+<div class="ttc" id="aclass_pacman_html_ad41930fae2878425f80e4fea614f3a3d"><div class="ttname"><a href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">Pacman::prepare_for_drawing</a></div><div class="ttdeci">void prepare_for_drawing() override</div><div class="ttdoc">Подготовка перед отрисовкой. Загружает текстуру в m_sprite и назначаем позицию, куда его расположить</div><div class="ttdef"><b>Определения</b> Pacman.cpp:29</div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
diff --git a/assets/docs/html/_select_state_8h_source.html b/docs/html/_select_state_8h_source.html
similarity index 87%
rename from assets/docs/html/_select_state_8h_source.html
rename to docs/html/_select_state_8h_source.html
index 0c08e5b639dfcbd3ca9dfa915ccf7f06f9a7edf8..46c9d46a6397dfb12d906eccbe4e2e31cb634949 100644
--- a/assets/docs/html/_select_state_8h_source.html
+++ b/docs/html/_select_state_8h_source.html
@@ -108,29 +108,26 @@ $(function(){initNavTree('_select_state_8h_source.html',''); initResizable(true)
 <div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
 <div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;IState.h&quot;</span></div>
 <div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span><span class="preprocessor">#include &quot;../Drawable/DrawMenu/Menu/Menu.h&quot;</span></div>
-<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;ThemeManager.h&quot;</span></div>
+<div class="line"><a id="l00004" name="l00004"></a><span class="lineno">    4</span><span class="preprocessor">#include &quot;../Utilities/ThemeManager.h&quot;</span></div>
 <div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span></div>
 <div class="foldopen" id="foldopen00009" data-start="{" data-end="};">
 <div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="struct_select_state.html">    9</a></span><span class="keyword">struct </span><a class="code hl_function" href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState</a>: <span class="keyword">public</span> IState, <span class="keyword">public</span> IWindowKeeper {</div>
 <div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <a class="code hl_function" href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState</a>(<a class="code hl_struct" href="struct_i_state_manager.html">IStateManager</a>&amp; state_manager, <span class="keyword">const</span> sf::VideoMode&amp; video_mode, <span class="keyword">const</span> std::string&amp; window_title);</div>
 <div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <span class="keywordtype">void</span> event_handling() <span class="keyword">override</span>;</div>
-<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordtype">void</span> set_texture(<a class="code hl_class" href="class_my_texture.html">MyTexture</a>* ptr_texture) { m_background = ptr_texture; }</div>
-<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">update</a>() <span class="keyword">override</span>;</div>
-<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">render</a>() <span class="keyword">override</span>;</div>
-<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keywordtype">bool</span> do_step() <span class="keyword">override</span>;</div>
-<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span><span class="keyword">private</span>:</div>
-<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keywordtype">void</span> update_theme() { ThemeManager::Instance().applyTheme(); }</div>
-<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <a class="code hl_class" href="class_my_texture.html">MyTexture</a>* m_background;</div>
-<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    sf::Sprite m_backgorund_sprite;</div>
-<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    <a class="code hl_class" href="class_menu.html">Menu</a> m_menu;</div>
-<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>};</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">update</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keywordtype">void</span> <a class="code hl_function" href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">render</a>() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keywordtype">bool</span> do_step() <span class="keyword">override</span>;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keywordtype">void</span> update_theme() { ThemeManager::Instance().applyTheme(); }</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    sf::Sprite m_backgorund_sprite;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    <a class="code hl_class" href="class_menu.html">Menu</a> m_menu;</div>
+<div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>};</div>
 </div>
 <div class="ttc" id="aclass_menu_html"><div class="ttname"><a href="class_menu.html">Menu</a></div><div class="ttdef"><b>Определения</b> Menu.h:7</div></div>
-<div class="ttc" id="aclass_my_texture_html"><div class="ttname"><a href="class_my_texture.html">MyTexture</a></div><div class="ttdef"><b>Определения</b> MyTexture.h:5</div></div>
 <div class="ttc" id="astruct_i_state_manager_html"><div class="ttname"><a href="struct_i_state_manager.html">IStateManager</a></div><div class="ttdef"><b>Определения</b> IState.h:31</div></div>
-<div class="ttc" id="astruct_select_state_html_a52b35ea72577fb2d5429daf43f9110e7"><div class="ttname"><a href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">SelectState::render</a></div><div class="ttdeci">void render() override</div><div class="ttdef"><b>Определения</b> SelectState.cpp:32</div></div>
-<div class="ttc" id="astruct_select_state_html_af3cc640f19d315eb79b7c9c0673a6562"><div class="ttname"><a href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState::SelectState</a></div><div class="ttdeci">SelectState(IStateManager &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</div><div class="ttdef"><b>Определения</b> SelectState.cpp:7</div></div>
-<div class="ttc" id="astruct_select_state_html_af82dbfa9bc9fc892d55baabc3f5b5243"><div class="ttname"><a href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">SelectState::update</a></div><div class="ttdeci">void update() override</div><div class="ttdef"><b>Определения</b> SelectState.cpp:24</div></div>
+<div class="ttc" id="astruct_select_state_html_a52b35ea72577fb2d5429daf43f9110e7"><div class="ttname"><a href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">SelectState::render</a></div><div class="ttdeci">void render() override</div><div class="ttdef"><b>Определения</b> SelectState.cpp:33</div></div>
+<div class="ttc" id="astruct_select_state_html_af3cc640f19d315eb79b7c9c0673a6562"><div class="ttname"><a href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState::SelectState</a></div><div class="ttdeci">SelectState(IStateManager &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</div><div class="ttdef"><b>Определения</b> SelectState.cpp:9</div></div>
+<div class="ttc" id="astruct_select_state_html_af82dbfa9bc9fc892d55baabc3f5b5243"><div class="ttname"><a href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">SelectState::update</a></div><div class="ttdeci">void update() override</div><div class="ttdef"><b>Определения</b> SelectState.cpp:25</div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
diff --git a/assets/docs/html/_texture___sound_8h_source.html b/docs/html/_texture___sound_8h_source.html
similarity index 94%
rename from assets/docs/html/_texture___sound_8h_source.html
rename to docs/html/_texture___sound_8h_source.html
index c3cbdf3e47e2754f42e788ec86a42e5df5cdfd26..c951ae7ba1111958fd791e98edb77455161d5450 100644
--- a/assets/docs/html/_texture___sound_8h_source.html
+++ b/docs/html/_texture___sound_8h_source.html
@@ -5,7 +5,7 @@
 <meta http-equiv="X-UA-Compatible" content="IE=11"/>
 <meta name="generator" content="Doxygen 1.13.2"/>
 <meta name="viewport" content="width=device-width, initial-scale=1"/>
-<title>Pacman: Исходный файл source/application/Assets/Texture_Sound.h</title>
+<title>Pacman: Исходный файл source/application/Utilities/Texture_Sound.h</title>
 <link href="tabs.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="jquery.js"></script>
 <script type="text/javascript" src="dynsections.js"></script>
@@ -114,25 +114,26 @@ $(function(){initNavTree('_texture___sound_8h_source.html',''); initResizable(tr
 <div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    MyAssets_one() = <span class="keyword">delete</span>;</div>
 <div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    <span class="keyword">static</span> sf::Font&amp; GetFont();</div>
 <div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    <span class="keyword">static</span> sf::Texture&amp; GetScreamerTexture();</div>
-<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSound();</div>
-<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSoundWin();</div>
-<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSoundLost();</div>
-<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSoundInGame();</div>
-<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSceamer();</div>
-<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>};</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    <span class="keyword">static</span> sf::Texture&amp; GetBackgroundTexture();</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSound();</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSoundWin();</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSoundLost();</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSoundInGame();</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    <span class="keyword">static</span> sf::SoundBuffer&amp; GetSceamer();</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>};</div>
 </div>
-<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span> </div>
 <div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span> </div>
 <div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span> </div>
 <div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span> </div>
 <div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span> </div>
 <div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span> </div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
   <ul>
-    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_5ac36eadb58257c11ffd1fe0c36f8d44.html">Assets</a></li><li class="navelem"><b>Texture_Sound.h</b></li>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_ac1e7d56941449703ea96678bf1e9a08.html">Utilities</a></li><li class="navelem"><b>Texture_Sound.h</b></li>
     <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
   </ul>
 </div>
diff --git a/assets/docs/html/_theme_manager_8h_source.html b/docs/html/_theme_manager_8h_source.html
similarity index 69%
rename from assets/docs/html/_theme_manager_8h_source.html
rename to docs/html/_theme_manager_8h_source.html
index d09ea336822694193407a4ac7c8c3a23d451ba8c..92c5728e6d890680436ce8fb5c9dcff94ca97f96 100644
--- a/assets/docs/html/_theme_manager_8h_source.html
+++ b/docs/html/_theme_manager_8h_source.html
@@ -5,7 +5,7 @@
 <meta http-equiv="X-UA-Compatible" content="IE=11"/>
 <meta name="generator" content="Doxygen 1.13.2"/>
 <meta name="viewport" content="width=device-width, initial-scale=1"/>
-<title>Pacman: Исходный файл source/application/State/ThemeManager.h</title>
+<title>Pacman: Исходный файл source/application/Utilities/ThemeManager.h</title>
 <link href="tabs.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="jquery.js"></script>
 <script type="text/javascript" src="dynsections.js"></script>
@@ -107,73 +107,61 @@ $(function(){initNavTree('_theme_manager_8h_source.html',''); initResizable(true
 <div class="contents">
 <div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno">    1</span><span class="preprocessor">#pragma once</span></div>
 <div class="line"><a id="l00002" name="l00002"></a><span class="lineno">    2</span><span class="preprocessor">#include &quot;../../../config.h&quot;</span></div>
-<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span> </div>
-<div class="foldopen" id="foldopen00004" data-start="{" data-end="};">
-<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"><a class="line" href="struct_theme_colors.html">    4</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_theme_colors.html">ThemeColors</a> {</div>
-<div class="line"><a id="l00005" name="l00005"></a><span class="lineno">    5</span>    sf::Color button_text;</div>
-<div class="line"><a id="l00006" name="l00006"></a><span class="lineno">    6</span>    sf::Color button_fill;</div>
-<div class="line"><a id="l00007" name="l00007"></a><span class="lineno">    7</span>    sf::Color button_selection;</div>
-<div class="line"><a id="l00008" name="l00008"></a><span class="lineno">    8</span>    sf::Color button_frame;</div>
-<div class="line"><a id="l00009" name="l00009"></a><span class="lineno">    9</span>    sf::Color select_level_background;</div>
-<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    sf::Color game_background_ingame;</div>
-<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    sf::Color game_background_win;</div>
-<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    sf::Color game_background_lost;</div>
-<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    sf::Color game_pacman;</div>
-<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    sf::Color game_pacman_invisible;</div>
-<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    sf::Color game_room;</div>
-<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    sf::Color game_wall;</div>
-<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    sf::Color game_food;</div>
-<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    sf::Color game_enemy;</div>
+<div class="line"><a id="l00003" name="l00003"></a><span class="lineno">    3</span></div>
+<div class="foldopen" id="foldopen00009" data-start="{" data-end="};">
+<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"><a class="line" href="struct_theme_colors.html">    9</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_theme_colors.html">ThemeColors</a> {</div>
+<div class="line"><a id="l00010" name="l00010"></a><span class="lineno">   10</span>    sf::Color button_text;</div>
+<div class="line"><a id="l00011" name="l00011"></a><span class="lineno">   11</span>    sf::Color button_fill;</div>
+<div class="line"><a id="l00012" name="l00012"></a><span class="lineno">   12</span>    sf::Color button_selection;</div>
+<div class="line"><a id="l00013" name="l00013"></a><span class="lineno">   13</span>    sf::Color button_frame;</div>
+<div class="line"><a id="l00014" name="l00014"></a><span class="lineno">   14</span>    sf::Color game_background_ingame;</div>
+<div class="line"><a id="l00015" name="l00015"></a><span class="lineno">   15</span>    sf::Color game_background_win;</div>
+<div class="line"><a id="l00016" name="l00016"></a><span class="lineno">   16</span>    sf::Color game_background_lost;</div>
+<div class="line"><a id="l00017" name="l00017"></a><span class="lineno">   17</span>    sf::Color game_room;</div>
+<div class="line"><a id="l00018" name="l00018"></a><span class="lineno">   18</span>    sf::Color game_wall;</div>
 <div class="line"><a id="l00019" name="l00019"></a><span class="lineno">   19</span>    sf::Color title_text;</div>
-<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    sf::Color room_color;</div>
-<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>    sf::Color wall_color;</div>
-<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span>    sf::Color button_text_score;</div>
-<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
-<div class="line"><a id="l00024" name="l00024"></a><span class="lineno">   24</span>};</div>
+<div class="line"><a id="l00020" name="l00020"></a><span class="lineno">   20</span>    sf::Color button_text_score;</div>
+<div class="line"><a id="l00021" name="l00021"></a><span class="lineno">   21</span>};</div>
 </div>
-<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span> </div>
-<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span> </div>
-<div class="foldopen" id="foldopen00027" data-start="{" data-end="};">
-<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"><a class="line" href="class_theme_manager.html">   27</a></span><span class="keyword">class </span>ThemeManager {</div>
-<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span><span class="keyword">public</span>:</div>
-<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="keyword">enum class</span> Theme { LIGHT, DARK };</div>
-<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span> </div>
-<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    ThemeManager(<span class="keyword">const</span> ThemeManager&amp;) = <span class="keyword">delete</span>;</div>
-<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span>    ThemeManager&amp; operator=(<span class="keyword">const</span> ThemeManager&amp;) = <span class="keyword">delete</span>;</div>
-<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    <span class="keyword">static</span> ThemeManager&amp; Instance();</div>
-<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    <span class="keywordtype">void</span> applyTheme() {loadThemeColors(); }</div>
-<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    <span class="keywordtype">void</span> set_theme(Theme newTheme);</div>
-<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span> </div>
-<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    sf::Color getButtonFillColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    sf::Color getButtonOutlineColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    sf::Color getButtonTextColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    sf::Color getButtonSelectionColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span> </div>
-<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    sf::Color getTitleTextColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span> </div>
-<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span>    sf::Color getGameBackgroundInGameColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span>    sf::Color getGameBackgroundWinColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span>    sf::Color getGameBackgroundLostColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    sf::Color getRoomColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    sf::Color getWallColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    sf::Color getButtonScoreColor() <span class="keyword">const</span>;</div>
-<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span> </div>
-<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span> </div>
-<div class="line"><a id="l00052" name="l00052"></a><span class="lineno">   52</span><span class="keyword">private</span>:</div>
-<div class="line"><a id="l00053" name="l00053"></a><span class="lineno">   53</span>    Theme m_theme = Theme::LIGHT;</div>
-<div class="line"><a id="l00054" name="l00054"></a><span class="lineno">   54</span>    <a class="code hl_struct" href="struct_theme_colors.html">ThemeColors</a> m_currentColors;</div>
-<div class="line"><a id="l00055" name="l00055"></a><span class="lineno">   55</span>    <span class="keywordtype">void</span> loadThemeColors();</div>
-<div class="line"><a id="l00056" name="l00056"></a><span class="lineno">   56</span> </div>
-<div class="line"><a id="l00057" name="l00057"></a><span class="lineno">   57</span>    ThemeManager() {set_theme(Theme::LIGHT);};</div>
-<div class="line"><a id="l00058" name="l00058"></a><span class="lineno">   58</span>};</div>
+<div class="line"><a id="l00022" name="l00022"></a><span class="lineno">   22</span> </div>
+<div class="line"><a id="l00023" name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="foldopen" id="foldopen00024" data-start="{" data-end="};">
+<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"><a class="line" href="class_theme_manager.html">   24</a></span><span class="keyword">class </span>ThemeManager {</div>
+<div class="line"><a id="l00025" name="l00025"></a><span class="lineno">   25</span><span class="keyword">public</span>:</div>
+<div class="line"><a id="l00026" name="l00026"></a><span class="lineno">   26</span>    <span class="keyword">enum class</span> Theme { LIGHT, DARK };</div>
+<div class="line"><a id="l00027" name="l00027"></a><span class="lineno">   27</span>    ThemeManager(<span class="keyword">const</span> ThemeManager&amp;) = <span class="keyword">delete</span>;</div>
+<div class="line"><a id="l00028" name="l00028"></a><span class="lineno">   28</span>    ThemeManager&amp; operator=(<span class="keyword">const</span> ThemeManager&amp;) = <span class="keyword">delete</span>;</div>
+<div class="line"><a id="l00029" name="l00029"></a><span class="lineno">   29</span>    <span class="keyword">static</span> ThemeManager&amp; Instance();</div>
+<div class="line"><a id="l00030" name="l00030"></a><span class="lineno">   30</span>    <span class="keywordtype">void</span> applyTheme() {loadThemeColors(); }</div>
+<div class="line"><a id="l00031" name="l00031"></a><span class="lineno">   31</span>    <span class="keywordtype">void</span> set_theme(Theme newTheme);</div>
+<div class="line"><a id="l00032" name="l00032"></a><span class="lineno">   32</span> </div>
+<div class="line"><a id="l00033" name="l00033"></a><span class="lineno">   33</span>    sf::Color getButtonFillColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00034" name="l00034"></a><span class="lineno">   34</span>    sf::Color getButtonOutlineColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00035" name="l00035"></a><span class="lineno">   35</span>    sf::Color getButtonTextColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00036" name="l00036"></a><span class="lineno">   36</span>    sf::Color getButtonSelectionColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00037" name="l00037"></a><span class="lineno">   37</span>    sf::Color getTitleTextColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00038" name="l00038"></a><span class="lineno">   38</span>    sf::Color getGameBackgroundInGameColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00039" name="l00039"></a><span class="lineno">   39</span>    sf::Color getGameBackgroundWinColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00040" name="l00040"></a><span class="lineno">   40</span>    sf::Color getGameBackgroundLostColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00041" name="l00041"></a><span class="lineno">   41</span>    sf::Color getRoomColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00042" name="l00042"></a><span class="lineno">   42</span>    sf::Color getWallColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00043" name="l00043"></a><span class="lineno">   43</span>    sf::Color getButtonScoreColor() <span class="keyword">const</span>;</div>
+<div class="line"><a id="l00044" name="l00044"></a><span class="lineno">   44</span> </div>
+<div class="line"><a id="l00045" name="l00045"></a><span class="lineno">   45</span> </div>
+<div class="line"><a id="l00046" name="l00046"></a><span class="lineno">   46</span><span class="keyword">private</span>:</div>
+<div class="line"><a id="l00047" name="l00047"></a><span class="lineno">   47</span>    Theme m_theme = Theme::LIGHT;</div>
+<div class="line"><a id="l00048" name="l00048"></a><span class="lineno">   48</span>    <a class="code hl_struct" href="struct_theme_colors.html">ThemeColors</a> m_currentColors;</div>
+<div class="line"><a id="l00049" name="l00049"></a><span class="lineno">   49</span>    <span class="keywordtype">void</span> loadThemeColors();</div>
+<div class="line"><a id="l00050" name="l00050"></a><span class="lineno">   50</span>    ThemeManager() {set_theme(Theme::LIGHT);}; </div>
+<div class="line"><a id="l00051" name="l00051"></a><span class="lineno">   51</span>};</div>
 </div>
-<div class="ttc" id="astruct_theme_colors_html"><div class="ttname"><a href="struct_theme_colors.html">ThemeColors</a></div><div class="ttdef"><b>Определения</b> ThemeManager.h:4</div></div>
+<div class="ttc" id="astruct_theme_colors_html"><div class="ttname"><a href="struct_theme_colors.html">ThemeColors</a></div><div class="ttdoc">Менеджер для загрузки цветов через паттер Singletone С помощью set_theme() устанавливается тема прило...</div><div class="ttdef"><b>Определения</b> ThemeManager.h:9</div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
   <ul>
-    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html">State</a></li><li class="navelem"><b>ThemeManager.h</b></li>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_ac1e7d56941449703ea96678bf1e9a08.html">Utilities</a></li><li class="navelem"><b>ThemeManager.h</b></li>
     <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
   </ul>
 </div>
diff --git a/assets/docs/html/annotated.html b/docs/html/annotated.html
similarity index 85%
rename from assets/docs/html/annotated.html
rename to docs/html/annotated.html
index bde058ad0ac69a0799ee58fd6a76a3cfce614755..c5928e9fb175255dbebfd42eee5b52965fde6c88 100644
--- a/assets/docs/html/annotated.html
+++ b/docs/html/annotated.html
@@ -139,7 +139,7 @@ $(function(){initNavTree('annotated.html',''); initResizable(true); });
 <tr id="row_29_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_state_manager.html" target="_self">IStateManager</a></td><td class="desc"></td></tr>
 <tr id="row_30_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_static_entity.html" target="_self">IStaticEntity</a></td><td class="desc">Статические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; неперемещаемые объекты, с которыми будет взаимодействовать Пакман Чтобы скопировать статические сущности, применяем паттерн Prototype. Для этого создает возможность клонирования </td></tr>
 <tr id="row_31_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitable.html" target="_self">IVisitable</a></td><td class="desc"></td></tr>
-<tr id="row_32_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitor.html" target="_self">IVisitor</a></td><td class="desc">Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) и <a class="el" href="class_i_visitable.html">IVisitable</a> (нечто посещаемое) </td></tr>
+<tr id="row_32_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitor.html" target="_self">IVisitor</a></td><td class="desc">Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) </td></tr>
 <tr id="row_33_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_window_keeper.html" target="_self">IWindowKeeper</a></td><td class="desc"></td></tr>
 <tr id="row_34_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_lost_game.html" target="_self">LostGame</a></td><td class="desc"></td></tr>
 <tr id="row_35_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_maze.html" target="_self">Maze</a></td><td class="desc"></td></tr>
@@ -148,19 +148,20 @@ $(function(){initNavTree('annotated.html',''); initResizable(true); });
 <tr id="row_38_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_my_assets__one.html" target="_self">MyAssets_one</a></td><td class="desc">загрузка текстур, звука, шрифта </td></tr>
 <tr id="row_39_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_my_texture.html" target="_self">MyTexture</a></td><td class="desc"></td></tr>
 <tr id="row_40_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman.html" target="_self">Pacman</a></td><td class="desc"></td></tr>
-<tr id="row_41_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture.html" target="_self">PacmanTexture</a></td><td class="desc"></td></tr>
-<tr id="row_42_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture2.html" target="_self">PacmanTexture2</a></td><td class="desc"></td></tr>
-<tr id="row_43_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pass.html" target="_self">Pass</a></td><td class="desc">проход, который знает о двух комнатах, которые он связывает </td></tr>
-<tr id="row_44_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_room.html" target="_self">Room</a></td><td class="desc"></td></tr>
-<tr id="row_45_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_score_count.html" target="_self">ScoreCount</a></td><td class="desc">Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик для конкретного игрока </td></tr>
-<tr id="row_46_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_screamer_composite_event.html" target="_self">ScreamerCompositeEvent</a></td><td class="desc">Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить </td></tr>
-<tr id="row_47_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_screamer_event.html" target="_self">ScreamerEvent</a></td><td class="desc">Скример </td></tr>
-<tr id="row_48_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_select_state.html" target="_self">SelectState</a></td><td class="desc"><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры </td></tr>
-<tr id="row_49_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_simple_builder.html" target="_self">SimpleBuilder</a></td><td class="desc"></td></tr>
-<tr id="row_50_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_theme_colors.html" target="_self">ThemeColors</a></td><td class="desc"></td></tr>
-<tr id="row_51_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_theme_manager.html" target="_self">ThemeManager</a></td><td class="desc"></td></tr>
-<tr id="row_52_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_wall.html" target="_self">Wall</a></td><td class="desc">стена, которая хранит в себе информацию о том в какой комнате находится </td></tr>
-<tr id="row_53_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_win_game.html" target="_self">WinGame</a></td><td class="desc"></td></tr>
+<tr id="row_41_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_lose_life_event.html" target="_self">PacmanLoseLifeEvent</a></td><td class="desc">Событие: потеря жизни у Пакманов. Всего три жизни, когда они кончились, то игра провалена В ресурсах храним пакмана </td></tr>
+<tr id="row_42_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture.html" target="_self">PacmanTexture</a></td><td class="desc"></td></tr>
+<tr id="row_43_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture2.html" target="_self">PacmanTexture2</a></td><td class="desc"></td></tr>
+<tr id="row_44_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pass.html" target="_self">Pass</a></td><td class="desc">проход, который знает о двух комнатах, которые он связывает </td></tr>
+<tr id="row_45_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_room.html" target="_self">Room</a></td><td class="desc"></td></tr>
+<tr id="row_46_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_score_count.html" target="_self">ScoreCount</a></td><td class="desc">Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик для конкретного игрока </td></tr>
+<tr id="row_47_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_screamer_composite_event.html" target="_self">ScreamerCompositeEvent</a></td><td class="desc">Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить </td></tr>
+<tr id="row_48_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_screamer_event.html" target="_self">ScreamerEvent</a></td><td class="desc">Скример </td></tr>
+<tr id="row_49_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_select_state.html" target="_self">SelectState</a></td><td class="desc"><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры </td></tr>
+<tr id="row_50_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_simple_builder.html" target="_self">SimpleBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_51_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_theme_colors.html" target="_self">ThemeColors</a></td><td class="desc">Менеджер для загрузки цветов через паттер Singletone С помощью set_theme() устанавливается тема приложения: светлая или темная Изначально светлая тема </td></tr>
+<tr id="row_52_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_theme_manager.html" target="_self">ThemeManager</a></td><td class="desc"></td></tr>
+<tr id="row_53_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_wall.html" target="_self">Wall</a></td><td class="desc">стена, которая хранит в себе информацию о том в какой комнате находится </td></tr>
+<tr id="row_54_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_win_game.html" target="_self">WinGame</a></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->
diff --git a/assets/docs/html/annotated_dup.js b/docs/html/annotated_dup.js
similarity index 97%
rename from assets/docs/html/annotated_dup.js
rename to docs/html/annotated_dup.js
index 27c426d67fa03fd9f20ef3bf641b9233355e32aa..ade7549c6c4f7b488d582d66b3e2f7b788b2ecce 100644
--- a/assets/docs/html/annotated_dup.js
+++ b/docs/html/annotated_dup.js
@@ -41,6 +41,7 @@ var annotated_dup =
     [ "MyAssets_one", "struct_my_assets__one.html", null ],
     [ "MyTexture", "class_my_texture.html", null ],
     [ "Pacman", "class_pacman.html", "class_pacman" ],
+    [ "PacmanLoseLifeEvent", "class_pacman_lose_life_event.html", null ],
     [ "PacmanTexture", "class_pacman_texture.html", null ],
     [ "PacmanTexture2", "class_pacman_texture2.html", null ],
     [ "Pass", "class_pass.html", null ],
diff --git a/assets/docs/html/bc_s.png b/docs/html/bc_s.png
similarity index 100%
rename from assets/docs/html/bc_s.png
rename to docs/html/bc_s.png
diff --git a/assets/docs/html/bc_sd.png b/docs/html/bc_sd.png
similarity index 100%
rename from assets/docs/html/bc_sd.png
rename to docs/html/bc_sd.png
diff --git a/assets/docs/html/class_application-members.html b/docs/html/class_application-members.html
similarity index 100%
rename from assets/docs/html/class_application-members.html
rename to docs/html/class_application-members.html
diff --git a/assets/docs/html/class_application.html b/docs/html/class_application.html
similarity index 100%
rename from assets/docs/html/class_application.html
rename to docs/html/class_application.html
diff --git a/assets/docs/html/class_application.png b/docs/html/class_application.png
similarity index 100%
rename from assets/docs/html/class_application.png
rename to docs/html/class_application.png
diff --git a/assets/docs/html/class_background_texture-members.html b/docs/html/class_background_texture-members.html
similarity index 100%
rename from assets/docs/html/class_background_texture-members.html
rename to docs/html/class_background_texture-members.html
diff --git a/assets/docs/html/class_background_texture.html b/docs/html/class_background_texture.html
similarity index 98%
rename from assets/docs/html/class_background_texture.html
rename to docs/html/class_background_texture.html
index e7aca0bda97b4e4260af1c1372124966c963ef7f..8cc5be53bbc126731708daf7f0c71823988b3c54 100644
--- a/assets/docs/html/class_background_texture.html
+++ b/docs/html/class_background_texture.html
@@ -182,9 +182,8 @@ Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b>
 
 </div>
 </div>
-<hr/>Объявления и описания членов классов находятся в файлах:<ul>
-<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
-<li>source/application/Drawable/Entity/<b>MyTexture.cpp</b></li>
+<hr/>Объявления и описания членов класса находятся в файле:<ul>
+<li>source/application/Utilities/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
 </ul>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/class_background_texture.png b/docs/html/class_background_texture.png
similarity index 100%
rename from assets/docs/html/class_background_texture.png
rename to docs/html/class_background_texture.png
diff --git a/assets/docs/html/class_button-members.html b/docs/html/class_button-members.html
similarity index 100%
rename from assets/docs/html/class_button-members.html
rename to docs/html/class_button-members.html
diff --git a/assets/docs/html/class_button.html b/docs/html/class_button.html
similarity index 100%
rename from assets/docs/html/class_button.html
rename to docs/html/class_button.html
diff --git a/assets/docs/html/class_button.png b/docs/html/class_button.png
similarity index 100%
rename from assets/docs/html/class_button.png
rename to docs/html/class_button.png
diff --git a/assets/docs/html/class_change_state_command-members.html b/docs/html/class_change_state_command-members.html
similarity index 100%
rename from assets/docs/html/class_change_state_command-members.html
rename to docs/html/class_change_state_command-members.html
diff --git a/assets/docs/html/class_change_state_command.html b/docs/html/class_change_state_command.html
similarity index 100%
rename from assets/docs/html/class_change_state_command.html
rename to docs/html/class_change_state_command.html
diff --git a/assets/docs/html/class_change_state_command.png b/docs/html/class_change_state_command.png
similarity index 100%
rename from assets/docs/html/class_change_state_command.png
rename to docs/html/class_change_state_command.png
diff --git a/assets/docs/html/class_choose_button-members.html b/docs/html/class_choose_button-members.html
similarity index 100%
rename from assets/docs/html/class_choose_button-members.html
rename to docs/html/class_choose_button-members.html
diff --git a/assets/docs/html/class_choose_button.html b/docs/html/class_choose_button.html
similarity index 100%
rename from assets/docs/html/class_choose_button.html
rename to docs/html/class_choose_button.html
diff --git a/assets/docs/html/class_choose_button.png b/docs/html/class_choose_button.png
similarity index 100%
rename from assets/docs/html/class_choose_button.png
rename to docs/html/class_choose_button.png
diff --git a/assets/docs/html/class_common_builder-members.html b/docs/html/class_common_builder-members.html
similarity index 100%
rename from assets/docs/html/class_common_builder-members.html
rename to docs/html/class_common_builder-members.html
diff --git a/assets/docs/html/class_common_builder.html b/docs/html/class_common_builder.html
similarity index 100%
rename from assets/docs/html/class_common_builder.html
rename to docs/html/class_common_builder.html
diff --git a/assets/docs/html/class_common_builder.js b/docs/html/class_common_builder.js
similarity index 100%
rename from assets/docs/html/class_common_builder.js
rename to docs/html/class_common_builder.js
diff --git a/assets/docs/html/class_common_builder.png b/docs/html/class_common_builder.png
similarity index 100%
rename from assets/docs/html/class_common_builder.png
rename to docs/html/class_common_builder.png
diff --git a/assets/docs/html/class_complex_builder-members.html b/docs/html/class_complex_builder-members.html
similarity index 100%
rename from assets/docs/html/class_complex_builder-members.html
rename to docs/html/class_complex_builder-members.html
diff --git a/assets/docs/html/class_complex_builder.html b/docs/html/class_complex_builder.html
similarity index 100%
rename from assets/docs/html/class_complex_builder.html
rename to docs/html/class_complex_builder.html
diff --git a/assets/docs/html/class_complex_builder.js b/docs/html/class_complex_builder.js
similarity index 100%
rename from assets/docs/html/class_complex_builder.js
rename to docs/html/class_complex_builder.js
diff --git a/assets/docs/html/class_complex_builder.png b/docs/html/class_complex_builder.png
similarity index 100%
rename from assets/docs/html/class_complex_builder.png
rename to docs/html/class_complex_builder.png
diff --git a/assets/docs/html/class_context_manager-members.html b/docs/html/class_context_manager-members.html
similarity index 100%
rename from assets/docs/html/class_context_manager-members.html
rename to docs/html/class_context_manager-members.html
diff --git a/assets/docs/html/class_context_manager.html b/docs/html/class_context_manager.html
similarity index 100%
rename from assets/docs/html/class_context_manager.html
rename to docs/html/class_context_manager.html
diff --git a/assets/docs/html/class_context_manager.js b/docs/html/class_context_manager.js
similarity index 100%
rename from assets/docs/html/class_context_manager.js
rename to docs/html/class_context_manager.js
diff --git a/assets/docs/html/class_delete_static_entity-members.html b/docs/html/class_delete_static_entity-members.html
similarity index 100%
rename from assets/docs/html/class_delete_static_entity-members.html
rename to docs/html/class_delete_static_entity-members.html
diff --git a/assets/docs/html/class_delete_static_entity.html b/docs/html/class_delete_static_entity.html
similarity index 100%
rename from assets/docs/html/class_delete_static_entity.html
rename to docs/html/class_delete_static_entity.html
diff --git a/assets/docs/html/class_delete_static_entity.js b/docs/html/class_delete_static_entity.js
similarity index 100%
rename from assets/docs/html/class_delete_static_entity.js
rename to docs/html/class_delete_static_entity.js
diff --git a/assets/docs/html/class_delete_static_entity.png b/docs/html/class_delete_static_entity.png
similarity index 100%
rename from assets/docs/html/class_delete_static_entity.png
rename to docs/html/class_delete_static_entity.png
diff --git a/assets/docs/html/class_enemy-members.html b/docs/html/class_enemy-members.html
similarity index 100%
rename from assets/docs/html/class_enemy-members.html
rename to docs/html/class_enemy-members.html
diff --git a/assets/docs/html/class_enemy.html b/docs/html/class_enemy.html
similarity index 100%
rename from assets/docs/html/class_enemy.html
rename to docs/html/class_enemy.html
diff --git a/assets/docs/html/class_enemy.js b/docs/html/class_enemy.js
similarity index 100%
rename from assets/docs/html/class_enemy.js
rename to docs/html/class_enemy.js
diff --git a/assets/docs/html/class_enemy.png b/docs/html/class_enemy.png
similarity index 100%
rename from assets/docs/html/class_enemy.png
rename to docs/html/class_enemy.png
diff --git a/assets/docs/html/class_enemy_texture-members.html b/docs/html/class_enemy_texture-members.html
similarity index 100%
rename from assets/docs/html/class_enemy_texture-members.html
rename to docs/html/class_enemy_texture-members.html
diff --git a/assets/docs/html/class_enemy_texture.html b/docs/html/class_enemy_texture.html
similarity index 98%
rename from assets/docs/html/class_enemy_texture.html
rename to docs/html/class_enemy_texture.html
index 73fa14c0b5e97d5bf63bbf94c142a60707798e01..33c39b197fe4086fae2f08707e4a127e56bc9fca 100644
--- a/assets/docs/html/class_enemy_texture.html
+++ b/docs/html/class_enemy_texture.html
@@ -183,8 +183,8 @@ Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b>
 </div>
 </div>
 <hr/>Объявления и описания членов классов находятся в файлах:<ul>
-<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
-<li>source/application/Drawable/Entity/<b>MyTexture.cpp</b></li>
+<li>source/application/Utilities/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+<li>source/application/Utilities/<b>MyTexture.cpp</b></li>
 </ul>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/class_enemy_texture.png b/docs/html/class_enemy_texture.png
similarity index 100%
rename from assets/docs/html/class_enemy_texture.png
rename to docs/html/class_enemy_texture.png
diff --git a/assets/docs/html/class_exit_command-members.html b/docs/html/class_exit_command-members.html
similarity index 100%
rename from assets/docs/html/class_exit_command-members.html
rename to docs/html/class_exit_command-members.html
diff --git a/assets/docs/html/class_exit_command.html b/docs/html/class_exit_command.html
similarity index 100%
rename from assets/docs/html/class_exit_command.html
rename to docs/html/class_exit_command.html
diff --git a/assets/docs/html/class_exit_command.png b/docs/html/class_exit_command.png
similarity index 100%
rename from assets/docs/html/class_exit_command.png
rename to docs/html/class_exit_command.png
diff --git a/assets/docs/html/class_exit_state-members.html b/docs/html/class_exit_state-members.html
similarity index 100%
rename from assets/docs/html/class_exit_state-members.html
rename to docs/html/class_exit_state-members.html
diff --git a/assets/docs/html/class_exit_state.html b/docs/html/class_exit_state.html
similarity index 100%
rename from assets/docs/html/class_exit_state.html
rename to docs/html/class_exit_state.html
diff --git a/assets/docs/html/class_exit_state.png b/docs/html/class_exit_state.png
similarity index 100%
rename from assets/docs/html/class_exit_state.png
rename to docs/html/class_exit_state.png
diff --git a/assets/docs/html/class_food-members.html b/docs/html/class_food-members.html
similarity index 100%
rename from assets/docs/html/class_food-members.html
rename to docs/html/class_food-members.html
diff --git a/assets/docs/html/class_food.html b/docs/html/class_food.html
similarity index 100%
rename from assets/docs/html/class_food.html
rename to docs/html/class_food.html
diff --git a/assets/docs/html/class_food.js b/docs/html/class_food.js
similarity index 100%
rename from assets/docs/html/class_food.js
rename to docs/html/class_food.js
diff --git a/assets/docs/html/class_food.png b/docs/html/class_food.png
similarity index 100%
rename from assets/docs/html/class_food.png
rename to docs/html/class_food.png
diff --git a/assets/docs/html/class_food_texture-members.html b/docs/html/class_food_texture-members.html
similarity index 100%
rename from assets/docs/html/class_food_texture-members.html
rename to docs/html/class_food_texture-members.html
diff --git a/assets/docs/html/class_food_texture.html b/docs/html/class_food_texture.html
similarity index 98%
rename from assets/docs/html/class_food_texture.html
rename to docs/html/class_food_texture.html
index 536ccec415437e61d43554ea84c9969b676ca2bd..f4b5f332c685a783c4008dd4896c5268041fa0c7 100644
--- a/assets/docs/html/class_food_texture.html
+++ b/docs/html/class_food_texture.html
@@ -183,8 +183,8 @@ Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b>
 </div>
 </div>
 <hr/>Объявления и описания членов классов находятся в файлах:<ul>
-<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
-<li>source/application/Drawable/Entity/<b>MyTexture.cpp</b></li>
+<li>source/application/Utilities/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+<li>source/application/Utilities/<b>MyTexture.cpp</b></li>
 </ul>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/class_food_texture.png b/docs/html/class_food_texture.png
similarity index 100%
rename from assets/docs/html/class_food_texture.png
rename to docs/html/class_food_texture.png
diff --git a/assets/docs/html/class_game_builder_director-members.html b/docs/html/class_game_builder_director-members.html
similarity index 100%
rename from assets/docs/html/class_game_builder_director-members.html
rename to docs/html/class_game_builder_director-members.html
diff --git a/assets/docs/html/class_game_builder_director.html b/docs/html/class_game_builder_director.html
similarity index 100%
rename from assets/docs/html/class_game_builder_director.html
rename to docs/html/class_game_builder_director.html
diff --git a/assets/docs/html/class_game_command-members.html b/docs/html/class_game_command-members.html
similarity index 100%
rename from assets/docs/html/class_game_command-members.html
rename to docs/html/class_game_command-members.html
diff --git a/assets/docs/html/class_game_command.html b/docs/html/class_game_command.html
similarity index 100%
rename from assets/docs/html/class_game_command.html
rename to docs/html/class_game_command.html
diff --git a/assets/docs/html/class_game_command.png b/docs/html/class_game_command.png
similarity index 100%
rename from assets/docs/html/class_game_command.png
rename to docs/html/class_game_command.png
diff --git a/assets/docs/html/class_game_state-members.html b/docs/html/class_game_state-members.html
similarity index 66%
rename from assets/docs/html/class_game_state-members.html
rename to docs/html/class_game_state-members.html
index ba2d4ccfdf69a3d60b5f7534870c2622961be8c8..69b2616bbee1b2abc9f62b72db1bbc769c689f3b 100644
--- a/assets/docs/html/class_game_state-members.html
+++ b/docs/html/class_game_state-members.html
@@ -112,20 +112,21 @@ $(function(){initNavTree('class_game_state.html',''); initResizable(true); });
   <tr class="odd"><td class="entry"><a class="el" href="class_game_state.html#a180391dfe966058da0389146534e66d0">event_handling</a>() override</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153">GameState</a>(IStateManager &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_score_count</b>() const (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>IState</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>IWindowKeeper</b>(const sf::VideoMode &amp;video_mode, const std::string &amp;window_title) (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_current_music</b> (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_state_manager</b> (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">m_window</a></td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Music</b> перечисление (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>process_key_pressed</b>(sf::Keyboard::Key code) (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
-  <tr class="odd"><td class="entry"><a class="el" href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893">render</a>() override</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_context</b>(GameContext &amp;&amp;context) (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_maze</b>(Maze &amp;&amp;maze) (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc">update</a>() override</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~GameState</b>() override (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IState</b>()=default (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IWindowKeeper</b>()=default (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_game_state.html#a8538d9088ff9371e69e19ad6661b6391">handle_screamer</a>(GameContext &amp;context)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>IState</b>(IStateManager &amp;state_manager) (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>IWindowKeeper</b>(const sf::VideoMode &amp;video_mode, const std::string &amp;window_title) (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_current_music</b> (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_state_manager</b> (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">m_window</a></td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a">Music</a> перечисление</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>process_key_pressed</b>(sf::Keyboard::Key code) (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893">render</a>() override</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_context</b>(GameContext &amp;&amp;context) (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_maze</b>(Maze &amp;&amp;maze) (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc">update</a>() override</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~GameState</b>() override (определено в <a class="el" href="class_game_state.html">GameState</a>)</td><td class="entry"><a class="el" href="class_game_state.html">GameState</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IState</b>()=default (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IWindowKeeper</b>()=default (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
 </table></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
diff --git a/assets/docs/html/class_game_state.html b/docs/html/class_game_state.html
similarity index 87%
rename from assets/docs/html/class_game_state.html
rename to docs/html/class_game_state.html
index 4852bc71412d73ebdcfec7318d360146e1b233df..1750af6bbb461bd3b582ddd4260c8081a592bcb4 100644
--- a/assets/docs/html/class_game_state.html
+++ b/docs/html/class_game_state.html
@@ -128,7 +128,7 @@ $(function(){initNavTree('class_game_state.html',''); initResizable(true); });
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
 Открытые типы</h2></td></tr>
-<tr class="memitem:aa34cf16f95e6ee5a539a5865e7f2128a" id="r_aa34cf16f95e6ee5a539a5865e7f2128a"><td class="memItemLeft" align="right" valign="top"><a id="aa34cf16f95e6ee5a539a5865e7f2128a" name="aa34cf16f95e6ee5a539a5865e7f2128a"></a>enum class &#160;</td><td class="memItemRight" valign="bottom"><b>Music</b> { <b>NONE</b>
+<tr class="memitem:aa34cf16f95e6ee5a539a5865e7f2128a" id="r_aa34cf16f95e6ee5a539a5865e7f2128a"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa34cf16f95e6ee5a539a5865e7f2128a">Music</a> { <b>NONE</b>
 , <b>INGAME</b>
 , <b>LOST</b>
 , <b>WIN</b>
@@ -159,6 +159,8 @@ bool&#160;</td><td class="memItemRight" valign="bottom"><b>process_key_pressed</
 <tr class="memitem:ab33b33278bf7a3967bcc6a42d693482a" id="r_ab33b33278bf7a3967bcc6a42d693482a"><td class="memItemLeft" align="right" valign="top"><a id="ab33b33278bf7a3967bcc6a42d693482a" name="ab33b33278bf7a3967bcc6a42d693482a"></a>
 const <a class="el" href="class_score_count.html">ScoreCount</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>get_score_count</b> () const</td></tr>
 <tr class="separator:ab33b33278bf7a3967bcc6a42d693482a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8538d9088ff9371e69e19ad6661b6391" id="r_a8538d9088ff9371e69e19ad6661b6391"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8538d9088ff9371e69e19ad6661b6391">handle_screamer</a> (<a class="el" href="struct_game_context.html">GameContext</a> &amp;context)</td></tr>
+<tr class="separator:a8538d9088ff9371e69e19ad6661b6391"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="inherit_header pub_methods_class_i_state"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_state')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_state.html">IState</a></td></tr>
 <tr class="memitem:af6af0f026f832dd82a6989ba54c5bf25 inherit pub_methods_class_i_state" id="r_af6af0f026f832dd82a6989ba54c5bf25"><td class="memItemLeft" align="right" valign="top">
 &#160;</td><td class="memItemRight" valign="bottom"><b>IState</b> (<a class="el" href="struct_i_state_manager.html">IStateManager</a> &amp;state_manager)</td></tr>
@@ -171,7 +173,7 @@ const <a class="el" href="class_score_count.html">ScoreCount</a> &amp;&#160;</td
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
 Открытые атрибуты</h2></td></tr>
 <tr class="memitem:ae5fdfc1894b6df21658937d12ed6582c" id="r_ae5fdfc1894b6df21658937d12ed6582c"><td class="memItemLeft" align="right" valign="top"><a id="ae5fdfc1894b6df21658937d12ed6582c" name="ae5fdfc1894b6df21658937d12ed6582c"></a>
-Music&#160;</td><td class="memItemRight" valign="bottom"><b>m_current_music</b> = Music::NONE</td></tr>
+<a class="el" href="#aa34cf16f95e6ee5a539a5865e7f2128a">Music</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_current_music</b> = Music::NONE</td></tr>
 <tr class="separator:ae5fdfc1894b6df21658937d12ed6582c"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
@@ -186,7 +188,33 @@ Music&#160;</td><td class="memItemRight" valign="bottom"><b>m_current_music</b>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
 <div class="textblock"><p>Взаимодействие врага с объектами лабиринта, что порождает игровые события </p>
-</div><h2 class="groupheader">Конструктор(ы)</h2>
+</div><h2 class="groupheader">Перечисления</h2>
+<a id="aa34cf16f95e6ee5a539a5865e7f2128a" name="aa34cf16f95e6ee5a539a5865e7f2128a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa34cf16f95e6ee5a539a5865e7f2128a">&#9670;&#160;</a></span>Music</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">enum class <a class="el" href="#aa34cf16f95e6ee5a539a5865e7f2128a">GameState::Music</a></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel strong">strong</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>обработка события со скримером </p>
+</blockquote>
+
+</div>
+</div>
+<h2 class="groupheader">Конструктор(ы)</h2>
 <a id="a90b51ee7191c9fd1fc5e207bc35f1153" name="a90b51ee7191c9fd1fc5e207bc35f1153"></a>
 <h2 class="memtitle"><span class="permalink"><a href="#a90b51ee7191c9fd1fc5e207bc35f1153">&#9670;&#160;</a></span>GameState()</h2>
 
@@ -267,11 +295,40 @@ Music&#160;</td><td class="memItemRight" valign="bottom"><b>m_current_music</b>
 </table>
 </div><div class="memdoc">
 <blockquote class="doxtable">
-<p>переключение состояния </p>
+<p>если нажимаем Cmd+Z делаем шаг назад </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>правой кнопкой мыши - включить или выключть звук </p>
 </blockquote>
 
 <p>Замещает <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>.</p>
 
+</div>
+</div>
+<a id="a8538d9088ff9371e69e19ad6661b6391" name="a8538d9088ff9371e69e19ad6661b6391"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8538d9088ff9371e69e19ad6661b6391">&#9670;&#160;</a></span>handle_screamer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void GameState::handle_screamer </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_game_context.html">GameContext</a> &amp;</td>          <td class="paramname"><span class="paramname"><em>context</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<blockquote class="doxtable">
+<p>растягиваем текстуру на весь экран </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>эффект тряски через случайное смещение на +- 10 пикселей </p>
+</blockquote>
+<blockquote class="doxtable">
+<p>если скример не активен </p>
+</blockquote>
+
 </div>
 </div>
 <a id="a2c36ada0cae89f91d956e2c91b070893" name="a2c36ada0cae89f91d956e2c91b070893"></a>
diff --git a/docs/html/class_game_state.js b/docs/html/class_game_state.js
new file mode 100644
index 0000000000000000000000000000000000000000..2f19336d134c598c4442243e5b0c461ef0fed965
--- /dev/null
+++ b/docs/html/class_game_state.js
@@ -0,0 +1,14 @@
+var class_game_state =
+[
+    [ "Music", "class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a", [
+      [ "NONE", "class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aab50339a10e1de285ac99d4c3990b8693", null ],
+      [ "INGAME", "class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aaa2e8a4a15de815a5b9e3830fa3b986d6", null ],
+      [ "LOST", "class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aac6daca30aef2af1d72715733825806a3", null ],
+      [ "WIN", "class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aa92e56d8195a9dd45a9b90aacf82886b1", null ]
+    ] ],
+    [ "GameState", "class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153", null ],
+    [ "event_handling", "class_game_state.html#a180391dfe966058da0389146534e66d0", null ],
+    [ "handle_screamer", "class_game_state.html#a8538d9088ff9371e69e19ad6661b6391", null ],
+    [ "render", "class_game_state.html#a2c36ada0cae89f91d956e2c91b070893", null ],
+    [ "update", "class_game_state.html#a3610da76344c5c2cbcc5921f877226dc", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/class_game_state.png b/docs/html/class_game_state.png
similarity index 100%
rename from assets/docs/html/class_game_state.png
rename to docs/html/class_game_state.png
diff --git a/assets/docs/html/class_i_entity-members.html b/docs/html/class_i_entity-members.html
similarity index 100%
rename from assets/docs/html/class_i_entity-members.html
rename to docs/html/class_i_entity-members.html
diff --git a/assets/docs/html/class_i_entity.html b/docs/html/class_i_entity.html
similarity index 100%
rename from assets/docs/html/class_i_entity.html
rename to docs/html/class_i_entity.html
diff --git a/assets/docs/html/class_i_entity.png b/docs/html/class_i_entity.png
similarity index 100%
rename from assets/docs/html/class_i_entity.png
rename to docs/html/class_i_entity.png
diff --git a/assets/docs/html/class_i_game_builder-members.html b/docs/html/class_i_game_builder-members.html
similarity index 100%
rename from assets/docs/html/class_i_game_builder-members.html
rename to docs/html/class_i_game_builder-members.html
diff --git a/assets/docs/html/class_i_game_builder.html b/docs/html/class_i_game_builder.html
similarity index 100%
rename from assets/docs/html/class_i_game_builder.html
rename to docs/html/class_i_game_builder.html
diff --git a/assets/docs/html/class_i_game_builder.png b/docs/html/class_i_game_builder.png
similarity index 100%
rename from assets/docs/html/class_i_game_builder.png
rename to docs/html/class_i_game_builder.png
diff --git a/assets/docs/html/class_i_game_event-members.html b/docs/html/class_i_game_event-members.html
similarity index 100%
rename from assets/docs/html/class_i_game_event-members.html
rename to docs/html/class_i_game_event-members.html
diff --git a/assets/docs/html/class_i_game_event.html b/docs/html/class_i_game_event.html
similarity index 96%
rename from assets/docs/html/class_i_game_event.html
rename to docs/html/class_i_game_event.html
index 184f6543957c7be5399d728f2fe5deb9d12ce697..699593204d424b428d4e459cac769e852b0267f5 100644
--- a/assets/docs/html/class_i_game_event.html
+++ b/docs/html/class_i_game_event.html
@@ -122,9 +122,10 @@ $(function(){initNavTree('class_i_game_event.html',''); initResizable(true); });
   <map id="IGameEvent_map" name="IGameEvent_map">
 <area href="class_delete_static_entity.html" title="Удаление еды." alt="DeleteStaticEntity" shape="rect" coords="0,56,157,80"/>
 <area href="class_lost_game.html" alt="LostGame" shape="rect" coords="167,56,324,80"/>
-<area href="class_screamer_composite_event.html" title="Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить." alt="ScreamerCompositeEvent" shape="rect" coords="334,56,491,80"/>
-<area href="struct_screamer_event.html" title="Скример" alt="ScreamerEvent" shape="rect" coords="501,56,658,80"/>
-<area href="class_win_game.html" alt="WinGame" shape="rect" coords="668,56,825,80"/>
+<area href="class_pacman_lose_life_event.html" title="Событие: потеря жизни у Пакманов. Всего три жизни, когда они кончились, то игра провалена В ресурсах ..." alt="PacmanLoseLifeEvent" shape="rect" coords="334,56,491,80"/>
+<area href="class_screamer_composite_event.html" title="Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить." alt="ScreamerCompositeEvent" shape="rect" coords="501,56,658,80"/>
+<area href="struct_screamer_event.html" title="Скример" alt="ScreamerEvent" shape="rect" coords="668,56,825,80"/>
+<area href="class_win_game.html" alt="WinGame" shape="rect" coords="835,56,992,80"/>
   </map>
 </div></div>
 <table class="memberdecls">
diff --git a/assets/docs/html/class_i_game_event.js b/docs/html/class_i_game_event.js
similarity index 100%
rename from assets/docs/html/class_i_game_event.js
rename to docs/html/class_i_game_event.js
diff --git a/docs/html/class_i_game_event.png b/docs/html/class_i_game_event.png
new file mode 100644
index 0000000000000000000000000000000000000000..555fc3cd27b9ddb61e4f5b7b6eb0af00da14e009
Binary files /dev/null and b/docs/html/class_i_game_event.png differ
diff --git a/assets/docs/html/class_i_observer-members.html b/docs/html/class_i_observer-members.html
similarity index 100%
rename from assets/docs/html/class_i_observer-members.html
rename to docs/html/class_i_observer-members.html
diff --git a/assets/docs/html/class_i_observer.html b/docs/html/class_i_observer.html
similarity index 100%
rename from assets/docs/html/class_i_observer.html
rename to docs/html/class_i_observer.html
diff --git a/assets/docs/html/class_i_observer.png b/docs/html/class_i_observer.png
similarity index 100%
rename from assets/docs/html/class_i_observer.png
rename to docs/html/class_i_observer.png
diff --git a/assets/docs/html/class_i_room_side-members.html b/docs/html/class_i_room_side-members.html
similarity index 100%
rename from assets/docs/html/class_i_room_side-members.html
rename to docs/html/class_i_room_side-members.html
diff --git a/assets/docs/html/class_i_room_side.html b/docs/html/class_i_room_side.html
similarity index 100%
rename from assets/docs/html/class_i_room_side.html
rename to docs/html/class_i_room_side.html
diff --git a/assets/docs/html/class_i_room_side.png b/docs/html/class_i_room_side.png
similarity index 100%
rename from assets/docs/html/class_i_room_side.png
rename to docs/html/class_i_room_side.png
diff --git a/assets/docs/html/class_i_select_command-members.html b/docs/html/class_i_select_command-members.html
similarity index 100%
rename from assets/docs/html/class_i_select_command-members.html
rename to docs/html/class_i_select_command-members.html
diff --git a/assets/docs/html/class_i_select_command.html b/docs/html/class_i_select_command.html
similarity index 100%
rename from assets/docs/html/class_i_select_command.html
rename to docs/html/class_i_select_command.html
diff --git a/assets/docs/html/class_i_select_command.png b/docs/html/class_i_select_command.png
similarity index 100%
rename from assets/docs/html/class_i_select_command.png
rename to docs/html/class_i_select_command.png
diff --git a/assets/docs/html/class_i_state-members.html b/docs/html/class_i_state-members.html
similarity index 100%
rename from assets/docs/html/class_i_state-members.html
rename to docs/html/class_i_state-members.html
diff --git a/assets/docs/html/class_i_state.html b/docs/html/class_i_state.html
similarity index 100%
rename from assets/docs/html/class_i_state.html
rename to docs/html/class_i_state.html
diff --git a/assets/docs/html/class_i_state.png b/docs/html/class_i_state.png
similarity index 100%
rename from assets/docs/html/class_i_state.png
rename to docs/html/class_i_state.png
diff --git a/assets/docs/html/class_i_visitable-members.html b/docs/html/class_i_visitable-members.html
similarity index 100%
rename from assets/docs/html/class_i_visitable-members.html
rename to docs/html/class_i_visitable-members.html
diff --git a/assets/docs/html/class_i_visitable.html b/docs/html/class_i_visitable.html
similarity index 100%
rename from assets/docs/html/class_i_visitable.html
rename to docs/html/class_i_visitable.html
diff --git a/assets/docs/html/class_i_visitable.png b/docs/html/class_i_visitable.png
similarity index 100%
rename from assets/docs/html/class_i_visitable.png
rename to docs/html/class_i_visitable.png
diff --git a/assets/docs/html/class_i_visitor-members.html b/docs/html/class_i_visitor-members.html
similarity index 100%
rename from assets/docs/html/class_i_visitor-members.html
rename to docs/html/class_i_visitor-members.html
diff --git a/assets/docs/html/class_i_visitor.html b/docs/html/class_i_visitor.html
similarity index 97%
rename from assets/docs/html/class_i_visitor.html
rename to docs/html/class_i_visitor.html
index bb63f3bc2664bdf14404e992acabea01db2fc54b..d2019a44f3fe0faac8d4d5c76798a0eac2b5d948 100644
--- a/assets/docs/html/class_i_visitor.html
+++ b/docs/html/class_i_visitor.html
@@ -109,7 +109,7 @@ $(function(){initNavTree('class_i_visitor.html',''); initResizable(true); });
 </div><!--header-->
 <div class="contents">
 
-<p>Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) и <a class="el" href="class_i_visitable.html">IVisitable</a> (нечто посещаемое)  
+<p>Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель)  
  <a href="#details">Подробнее...</a></p>
 
 <p><code>#include &lt;<a class="el" href="_i_entity_8h_source.html">IEntity.h</a>&gt;</code></p>
@@ -132,7 +132,7 @@ virtual std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEv
 <tr class="separator:a2aa4d23b41981e5c9c38509ad4273970"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
-<div class="textblock"><p>Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) и <a class="el" href="class_i_visitable.html">IVisitable</a> (нечто посещаемое) </p>
+<div class="textblock"><p>Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) </p>
 </div><h2 class="groupheader">Методы</h2>
 <a id="a174fa4b935c2adda01244b21ab5cf915" name="a174fa4b935c2adda01244b21ab5cf915"></a>
 <h2 class="memtitle"><span class="permalink"><a href="#a174fa4b935c2adda01244b21ab5cf915">&#9670;&#160;</a></span>visit()</h2>
diff --git a/assets/docs/html/class_i_visitor.png b/docs/html/class_i_visitor.png
similarity index 100%
rename from assets/docs/html/class_i_visitor.png
rename to docs/html/class_i_visitor.png
diff --git a/assets/docs/html/class_i_window_keeper-members.html b/docs/html/class_i_window_keeper-members.html
similarity index 100%
rename from assets/docs/html/class_i_window_keeper-members.html
rename to docs/html/class_i_window_keeper-members.html
diff --git a/assets/docs/html/class_i_window_keeper.html b/docs/html/class_i_window_keeper.html
similarity index 100%
rename from assets/docs/html/class_i_window_keeper.html
rename to docs/html/class_i_window_keeper.html
diff --git a/assets/docs/html/class_i_window_keeper.js b/docs/html/class_i_window_keeper.js
similarity index 100%
rename from assets/docs/html/class_i_window_keeper.js
rename to docs/html/class_i_window_keeper.js
diff --git a/assets/docs/html/class_i_window_keeper.png b/docs/html/class_i_window_keeper.png
similarity index 100%
rename from assets/docs/html/class_i_window_keeper.png
rename to docs/html/class_i_window_keeper.png
diff --git a/assets/docs/html/class_lost_game-members.html b/docs/html/class_lost_game-members.html
similarity index 100%
rename from assets/docs/html/class_lost_game-members.html
rename to docs/html/class_lost_game-members.html
diff --git a/assets/docs/html/class_lost_game.html b/docs/html/class_lost_game.html
similarity index 100%
rename from assets/docs/html/class_lost_game.html
rename to docs/html/class_lost_game.html
diff --git a/assets/docs/html/class_lost_game.png b/docs/html/class_lost_game.png
similarity index 100%
rename from assets/docs/html/class_lost_game.png
rename to docs/html/class_lost_game.png
diff --git a/assets/docs/html/class_maze-members.html b/docs/html/class_maze-members.html
similarity index 100%
rename from assets/docs/html/class_maze-members.html
rename to docs/html/class_maze-members.html
diff --git a/assets/docs/html/class_maze.html b/docs/html/class_maze.html
similarity index 100%
rename from assets/docs/html/class_maze.html
rename to docs/html/class_maze.html
diff --git a/assets/docs/html/class_maze.png b/docs/html/class_maze.png
similarity index 100%
rename from assets/docs/html/class_maze.png
rename to docs/html/class_maze.png
diff --git a/assets/docs/html/class_menu-members.html b/docs/html/class_menu-members.html
similarity index 100%
rename from assets/docs/html/class_menu-members.html
rename to docs/html/class_menu-members.html
diff --git a/assets/docs/html/class_menu.html b/docs/html/class_menu.html
similarity index 100%
rename from assets/docs/html/class_menu.html
rename to docs/html/class_menu.html
diff --git a/assets/docs/html/class_menu.js b/docs/html/class_menu.js
similarity index 100%
rename from assets/docs/html/class_menu.js
rename to docs/html/class_menu.js
diff --git a/assets/docs/html/class_menu.png b/docs/html/class_menu.png
similarity index 100%
rename from assets/docs/html/class_menu.png
rename to docs/html/class_menu.png
diff --git a/assets/docs/html/class_menu_game-members.html b/docs/html/class_menu_game-members.html
similarity index 81%
rename from assets/docs/html/class_menu_game-members.html
rename to docs/html/class_menu_game-members.html
index 736e85c96aa7725f723c78de08f065fe9e4f3c88..95ef9b221518b8f05f8a3b30389fec4a499a4603 100644
--- a/assets/docs/html/class_menu_game-members.html
+++ b/docs/html/class_menu_game-members.html
@@ -109,9 +109,10 @@ $(function(){initNavTree('class_menu_game.html',''); initResizable(true); });
 <p>Полный список членов класса <a class="el" href="class_menu_game.html">MenuGame</a>, включая наследуемые из базового класса</p>
 <table class="directory">
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_button</b>(sf::RenderWindow &amp;window) (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window, const ScoreCount &amp;scores_one, const ScoreCount &amp;scores_two) (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>is_clicked</b>(int x, int y) (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>MenuGame</b>() (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>draw_hearts</b>(sf::RenderWindow &amp;window, int lives, float pos) (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window, const ScoreCount &amp;scores_one, const ScoreCount &amp;scores_two) (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>is_clicked</b>(int x, int y) (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MenuGame</b>() (определено в <a class="el" href="class_menu_game.html">MenuGame</a>)</td><td class="entry"><a class="el" href="class_menu_game.html">MenuGame</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
diff --git a/assets/docs/html/class_menu_game.html b/docs/html/class_menu_game.html
similarity index 93%
rename from assets/docs/html/class_menu_game.html
rename to docs/html/class_menu_game.html
index 974a7e5012c1af9cab7ecf20182d04b5e9823361..827245f416f3704c442e3c0c57f90b5e8c0da705 100644
--- a/assets/docs/html/class_menu_game.html
+++ b/docs/html/class_menu_game.html
@@ -117,6 +117,9 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>draw_into</b> (sf::Re
 <tr class="memitem:a27268ef73f9c87cde7982a482b956a4a" id="r_a27268ef73f9c87cde7982a482b956a4a"><td class="memItemLeft" align="right" valign="top"><a id="a27268ef73f9c87cde7982a482b956a4a" name="a27268ef73f9c87cde7982a482b956a4a"></a>
 void&#160;</td><td class="memItemRight" valign="bottom"><b>draw_button</b> (sf::RenderWindow &amp;window)</td></tr>
 <tr class="separator:a27268ef73f9c87cde7982a482b956a4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44a58f7b4da053439dcc8ddb32860705" id="r_a44a58f7b4da053439dcc8ddb32860705"><td class="memItemLeft" align="right" valign="top"><a id="a44a58f7b4da053439dcc8ddb32860705" name="a44a58f7b4da053439dcc8ddb32860705"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>draw_hearts</b> (sf::RenderWindow &amp;window, int lives, float pos)</td></tr>
+<tr class="separator:a44a58f7b4da053439dcc8ddb32860705"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ab52036850f0b5e437b7e50cfcd1409bb" id="r_ab52036850f0b5e437b7e50cfcd1409bb"><td class="memItemLeft" align="right" valign="top"><a id="ab52036850f0b5e437b7e50cfcd1409bb" name="ab52036850f0b5e437b7e50cfcd1409bb"></a>
 bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_clicked</b> (int x, int y)</td></tr>
 <tr class="separator:ab52036850f0b5e437b7e50cfcd1409bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
diff --git a/assets/docs/html/class_my_texture-members.html b/docs/html/class_my_texture-members.html
similarity index 100%
rename from assets/docs/html/class_my_texture-members.html
rename to docs/html/class_my_texture-members.html
diff --git a/assets/docs/html/class_my_texture.html b/docs/html/class_my_texture.html
similarity index 98%
rename from assets/docs/html/class_my_texture.html
rename to docs/html/class_my_texture.html
index 1a5466414e0c0e01b2d2207ec6d8a6e83fa70aab..9ed32aa78afa9083305ca89c220d965275c46f18 100644
--- a/assets/docs/html/class_my_texture.html
+++ b/docs/html/class_my_texture.html
@@ -155,7 +155,7 @@ Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b>
 <tr class="separator:a9c56deb491e39a56350cc8029567d001"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <hr/>Объявления и описания членов класса находятся в файле:<ul>
-<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+<li>source/application/Utilities/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
 </ul>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/class_my_texture.png b/docs/html/class_my_texture.png
similarity index 100%
rename from assets/docs/html/class_my_texture.png
rename to docs/html/class_my_texture.png
diff --git a/assets/docs/html/class_pacman-members.html b/docs/html/class_pacman-members.html
similarity index 59%
rename from assets/docs/html/class_pacman-members.html
rename to docs/html/class_pacman-members.html
index 34c554f6ef095cf410dc20d728fc033888853c14..fdf3ea9708c2034e3f4cb53b73624f13ce7b2ba1 100644
--- a/assets/docs/html/class_pacman-members.html
+++ b/docs/html/class_pacman-members.html
@@ -108,17 +108,20 @@ $(function(){initNavTree('class_pacman.html',''); initResizable(true); });
 
 <p>Полный список членов класса <a class="el" href="class_pacman.html">Pacman</a>, включая наследуемые из базового класса</p>
 <table class="directory">
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window) override (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>died</b>() const (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>draw_into</b>(sf::RenderWindow &amp;window) override (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_lives</b>() (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_location</b>() (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_ptr_room</b> (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr class="odd"><td class="entry"><a class="el" href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">move</a>(Room::Direction direction)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a>(MyTexture *texture)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
-  <tr class="odd"><td class="entry"><a class="el" href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">prepare_for_drawing</a>() override</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_location</b>(Room *ptr_room) (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"></td></tr>
-  <tr class="odd"><td class="entry"><a class="el" href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">visit</a>(Food *ptr_entity) override</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>visit</b>(Enemy *ptr_entity) override (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Pacman</b>() override=default (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>lose_life</b>() (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_ptr_room</b> (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">move</a>(Room::Direction direction)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"></td></tr>
+  <tr class="odd"><td class="entry"><a class="el" href="class_pacman.html#a4000caf3daa707f177de875075a72c83">Pacman</a>(MyTexture *texture, bool is_second_player)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">prepare_for_drawing</a>() override</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_location</b>(Room *ptr_room) (определено в <a class="el" href="class_i_entity.html">IEntity</a>)</td><td class="entry"><a class="el" href="class_i_entity.html">IEntity</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c">visit</a>(Food *ptr_entity) override</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>visit</b>(Enemy *ptr_entity) override (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IDrawable</b>()=default (определено в <a class="el" href="struct_i_drawable.html">IDrawable</a>)</td><td class="entry"><a class="el" href="struct_i_drawable.html">IDrawable</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~Pacman</b>() override=default (определено в <a class="el" href="class_pacman.html">Pacman</a>)</td><td class="entry"><a class="el" href="class_pacman.html">Pacman</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
diff --git a/assets/docs/html/class_pacman.html b/docs/html/class_pacman.html
similarity index 90%
rename from assets/docs/html/class_pacman.html
rename to docs/html/class_pacman.html
index 6983fa2289abe90cd64a05c060b12da10008adca..f6cfc0da4b72264cf8561e8486cc0931c406cfc3 100644
--- a/assets/docs/html/class_pacman.html
+++ b/docs/html/class_pacman.html
@@ -123,9 +123,9 @@ $(function(){initNavTree('class_pacman.html',''); initResizable(true); });
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
 Открытые члены</h2></td></tr>
-<tr class="memitem:a72fa328d22c8fa39cf6b941ec10cd8a2" id="r_a72fa328d22c8fa39cf6b941ec10cd8a2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a> (<a class="el" href="class_my_texture.html">MyTexture</a> *texture)</td></tr>
-<tr class="memdesc:a72fa328d22c8fa39cf6b941ec10cd8a2"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_pacman.html">Pacman</a> - главный герой. В конструкторе в пакмана загружаем звук, который он будет издавать при поедании еды  <br /></td></tr>
-<tr class="separator:a72fa328d22c8fa39cf6b941ec10cd8a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4000caf3daa707f177de875075a72c83" id="r_a4000caf3daa707f177de875075a72c83"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4000caf3daa707f177de875075a72c83">Pacman</a> (<a class="el" href="class_my_texture.html">MyTexture</a> *texture, bool is_second_player)</td></tr>
+<tr class="memdesc:a4000caf3daa707f177de875075a72c83"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="class_pacman.html">Pacman</a> - главный герой. В конструкторе в пакмана загружаем звук, который он будет издавать при поедании еды  <br /></td></tr>
+<tr class="separator:a4000caf3daa707f177de875075a72c83"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aa957cbb7b0ad1bc1f6ef2aac82423cd8" id="r_aa957cbb7b0ad1bc1f6ef2aac82423cd8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa957cbb7b0ad1bc1f6ef2aac82423cd8">move</a> (Room::Direction direction)</td></tr>
 <tr class="memdesc:aa957cbb7b0ad1bc1f6ef2aac82423cd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Перемещение пакмана  <br /></td></tr>
 <tr class="separator:aa957cbb7b0ad1bc1f6ef2aac82423cd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -139,6 +139,15 @@ $(function(){initNavTree('class_pacman.html',''); initResizable(true); });
 <tr class="separator:ac4b928c45d22d9814a02b7a621c5ae7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ad41a3b2493a209cc237d4ddcb1e1eb24" id="r_ad41a3b2493a209cc237d4ddcb1e1eb24"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="class_i_game_event.html">IGameEvent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad41a3b2493a209cc237d4ddcb1e1eb24">visit</a> (<a class="el" href="class_enemy.html">Enemy</a> *ptr_entity) override</td></tr>
 <tr class="separator:ad41a3b2493a209cc237d4ddcb1e1eb24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9cc9494e2b9e1fd332df527d8c626e8" id="r_ac9cc9494e2b9e1fd332df527d8c626e8"><td class="memItemLeft" align="right" valign="top"><a id="ac9cc9494e2b9e1fd332df527d8c626e8" name="ac9cc9494e2b9e1fd332df527d8c626e8"></a>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>died</b> () const</td></tr>
+<tr class="separator:ac9cc9494e2b9e1fd332df527d8c626e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0cadd1a7c1a3e759318c25b10d557541" id="r_a0cadd1a7c1a3e759318c25b10d557541"><td class="memItemLeft" align="right" valign="top"><a id="a0cadd1a7c1a3e759318c25b10d557541" name="a0cadd1a7c1a3e759318c25b10d557541"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>lose_life</b> ()</td></tr>
+<tr class="separator:a0cadd1a7c1a3e759318c25b10d557541"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e5bf98ac4ccea821c94bca869ef5d32" id="r_a7e5bf98ac4ccea821c94bca869ef5d32"><td class="memItemLeft" align="right" valign="top"><a id="a7e5bf98ac4ccea821c94bca869ef5d32" name="a7e5bf98ac4ccea821c94bca869ef5d32"></a>
+int&#160;</td><td class="memItemRight" valign="bottom"><b>get_lives</b> ()</td></tr>
+<tr class="separator:a7e5bf98ac4ccea821c94bca869ef5d32"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="inherit_header pub_methods_class_i_entity"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_entity')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_entity.html">IEntity</a></td></tr>
 <tr class="memitem:a548495c468f307c780941faa5b4c08a8 inherit pub_methods_class_i_entity" id="r_a548495c468f307c780941faa5b4c08a8"><td class="memItemLeft" align="right" valign="top">
 void&#160;</td><td class="memItemRight" valign="bottom"><b>set_location</b> (<a class="el" href="class_room.html">Room</a> *ptr_room)</td></tr>
@@ -155,8 +164,8 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>set_location</b> (<a
 <tr class="separator:a7d0bfa7b8516df82bd6de6b6283f0315 inherit pro_attribs_class_i_entity"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <h2 class="groupheader">Конструктор(ы)</h2>
-<a id="a72fa328d22c8fa39cf6b941ec10cd8a2" name="a72fa328d22c8fa39cf6b941ec10cd8a2"></a>
-<h2 class="memtitle"><span class="permalink"><a href="#a72fa328d22c8fa39cf6b941ec10cd8a2">&#9670;&#160;</a></span>Pacman()</h2>
+<a id="a4000caf3daa707f177de875075a72c83" name="a4000caf3daa707f177de875075a72c83"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4000caf3daa707f177de875075a72c83">&#9670;&#160;</a></span>Pacman()</h2>
 
 <div class="memitem">
 <div class="memproto">
@@ -167,8 +176,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>set_location</b> (<a
         <tr>
           <td class="memname">Pacman::Pacman </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="class_my_texture.html">MyTexture</a> *</td>          <td class="paramname"><span class="paramname"><em>texture</em></span></td><td>)</td>
+          <td class="paramtype"><a class="el" href="class_my_texture.html">MyTexture</a> *</td>          <td class="paramname"><span class="paramname"><em>texture</em></span>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
           <td></td>
+          <td class="paramtype">bool</td>          <td class="paramname"><span class="paramname"><em>is_second_player</em></span>&#160;)</td>
         </tr>
       </table>
   </td>
diff --git a/assets/docs/html/class_pacman.js b/docs/html/class_pacman.js
similarity index 76%
rename from assets/docs/html/class_pacman.js
rename to docs/html/class_pacman.js
index e8ca41f539fb3127bee32fff17f009a6b2bb5022..e9d72b01a036ee9dc160c1b0b09a688dbe4c7c43 100644
--- a/assets/docs/html/class_pacman.js
+++ b/docs/html/class_pacman.js
@@ -1,6 +1,6 @@
 var class_pacman =
 [
-    [ "Pacman", "class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2", null ],
+    [ "Pacman", "class_pacman.html#a4000caf3daa707f177de875075a72c83", null ],
     [ "move", "class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8", null ],
     [ "prepare_for_drawing", "class_pacman.html#ad41930fae2878425f80e4fea614f3a3d", null ],
     [ "visit", "class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c", null ]
diff --git a/assets/docs/html/class_pacman.png b/docs/html/class_pacman.png
similarity index 100%
rename from assets/docs/html/class_pacman.png
rename to docs/html/class_pacman.png
diff --git a/docs/html/class_pacman_lose_life_event-members.html b/docs/html/class_pacman_lose_life_event-members.html
new file mode 100644
index 0000000000000000000000000000000000000000..e371cb50b19c929a9f54cba87275ecfb46afa35a
--- /dev/null
+++ b/docs/html/class_pacman_lose_life_event-members.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Cписок членов класса</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_pacman_lose_life_event.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">PacmanLoseLifeEvent Cписок членов класса</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Полный список членов класса <a class="el" href="class_pacman_lose_life_event.html">PacmanLoseLifeEvent</a>, включая наследуемые из базового класса</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>add_observer</b>(IObserver *observer) (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>handle</b>(GameContext *context) override (определено в <a class="el" href="class_pacman_lose_life_event.html">PacmanLoseLifeEvent</a>)</td><td class="entry"><a class="el" href="class_pacman_lose_life_event.html">PacmanLoseLifeEvent</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>notify</b>() const (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>PacmanLoseLifeEvent</b>(bool second_player) (определено в <a class="el" href="class_pacman_lose_life_event.html">PacmanLoseLifeEvent</a>)</td><td class="entry"><a class="el" href="class_pacman_lose_life_event.html">PacmanLoseLifeEvent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>()=default</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/docs/html/class_pacman_lose_life_event.html b/docs/html/class_pacman_lose_life_event.html
new file mode 100644
index 0000000000000000000000000000000000000000..09a4d068fe102dca38a95e527c987a1d8df2d843
--- /dev/null
+++ b/docs/html/class_pacman_lose_life_event.html
@@ -0,0 +1,191 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Класс PacmanLoseLifeEvent</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('class_pacman_lose_life_event.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Открытые члены</a> &#124;
+<a href="class_pacman_lose_life_event-members.html">Полный список членов класса</a>  </div>
+  <div class="headertitle"><div class="title">Класс PacmanLoseLifeEvent</div></div>
+</div><!--header-->
+<div class="contents">
+
+<p>Событие: потеря жизни у Пакманов. Всего три жизни, когда они кончились, то игра провалена В ресурсах храним пакмана  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a>&gt;</code></p>
+<div class="dynheader">
+Граф наследования:PacmanLoseLifeEvent:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="class_pacman_lose_life_event.png" usemap="#PacmanLoseLifeEvent_map" alt=""/>
+  <map id="PacmanLoseLifeEvent_map" name="PacmanLoseLifeEvent_map">
+<area href="class_i_game_event.html" title="Абстрактрый класс для различных игровых событий" alt="IGameEvent" shape="rect" coords="0,0,137,24"/>
+  </map>
+</div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
+Открытые члены</h2></td></tr>
+<tr class="memitem:ac372192dbd0bb9fa29bc1c269f93d924" id="r_ac372192dbd0bb9fa29bc1c269f93d924"><td class="memItemLeft" align="right" valign="top"><a id="ac372192dbd0bb9fa29bc1c269f93d924" name="ac372192dbd0bb9fa29bc1c269f93d924"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>PacmanLoseLifeEvent</b> (bool second_player)</td></tr>
+<tr class="separator:ac372192dbd0bb9fa29bc1c269f93d924"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50466cdb70ac7a3439327192db9e5d63" id="r_a50466cdb70ac7a3439327192db9e5d63"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a50466cdb70ac7a3439327192db9e5d63">handle</a> (<a class="el" href="struct_game_context.html">GameContext</a> *context) override</td></tr>
+<tr class="separator:a50466cdb70ac7a3439327192db9e5d63"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Открытые члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event" id="r_ae84f5f2b3d3bd7834e334c4e6fcde711"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a> ()=default</td></tr>
+<tr class="separator:ae84f5f2b3d3bd7834e334c4e6fcde711 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event" id="r_a6b231dafdf4bdbc98f7d75b5205a8b99"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>add_observer</b> (<a class="el" href="class_i_observer.html">IObserver</a> *observer)</td></tr>
+<tr class="separator:a6b231dafdf4bdbc98f7d75b5205a8b99 inherit pub_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
+Дополнительные унаследованные члены</h2></td></tr>
+<tr class="inherit_header pro_methods_class_i_game_event"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_methods_class_i_game_event')"><img src="closed.png" alt="-"/>&#160;Защищенные члены унаследованные от <a class="el" href="class_i_game_event.html">IGameEvent</a></td></tr>
+<tr class="memitem:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event" id="r_a1bc7533cd09ababa60363e5afbb7e787"><td class="memItemLeft" align="right" valign="top">
+void&#160;</td><td class="memItemRight" valign="bottom"><b>notify</b> () const</td></tr>
+<tr class="separator:a1bc7533cd09ababa60363e5afbb7e787 inherit pro_methods_class_i_game_event"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Событие: потеря жизни у Пакманов. Всего три жизни, когда они кончились, то игра провалена В ресурсах храним пакмана </p>
+</div><h2 class="groupheader">Методы</h2>
+<a id="a50466cdb70ac7a3439327192db9e5d63" name="a50466cdb70ac7a3439327192db9e5d63"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a50466cdb70ac7a3439327192db9e5d63">&#9670;&#160;</a></span>handle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">void PacmanLoseLifeEvent::handle </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="struct_game_context.html">GameContext</a> *</td>          <td class="paramname"><span class="paramname"><em>context</em></span></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel override">override</span><span class="mlabel virtual">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Замещает <a class="el" href="class_i_game_event.html">IGameEvent</a>.</p>
+
+</div>
+</div>
+<hr/>Объявления и описания членов классов находятся в файлах:<ul>
+<li>source/application/Event/<a class="el" href="_i_game_event_8h_source.html">IGameEvent.h</a></li>
+<li>source/application/Event/<b>IGameEvent.cpp</b></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="class_pacman_lose_life_event.html">PacmanLoseLifeEvent</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/docs/html/class_pacman_lose_life_event.png b/docs/html/class_pacman_lose_life_event.png
new file mode 100644
index 0000000000000000000000000000000000000000..c3f8e998ab278c82b3f2abb5c61b9810ec5ed7e5
Binary files /dev/null and b/docs/html/class_pacman_lose_life_event.png differ
diff --git a/assets/docs/html/class_pacman_texture-members.html b/docs/html/class_pacman_texture-members.html
similarity index 100%
rename from assets/docs/html/class_pacman_texture-members.html
rename to docs/html/class_pacman_texture-members.html
diff --git a/assets/docs/html/class_pacman_texture.html b/docs/html/class_pacman_texture.html
similarity index 98%
rename from assets/docs/html/class_pacman_texture.html
rename to docs/html/class_pacman_texture.html
index 6e256776f65fb48322cff926832e5c76cbf3d84d..574383762e243c244f85bb3f2c5edcf741ec53d3 100644
--- a/assets/docs/html/class_pacman_texture.html
+++ b/docs/html/class_pacman_texture.html
@@ -183,8 +183,8 @@ Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b>
 </div>
 </div>
 <hr/>Объявления и описания членов классов находятся в файлах:<ul>
-<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
-<li>source/application/Drawable/Entity/<b>MyTexture.cpp</b></li>
+<li>source/application/Utilities/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+<li>source/application/Utilities/<b>MyTexture.cpp</b></li>
 </ul>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/class_pacman_texture.png b/docs/html/class_pacman_texture.png
similarity index 100%
rename from assets/docs/html/class_pacman_texture.png
rename to docs/html/class_pacman_texture.png
diff --git a/assets/docs/html/class_pacman_texture2-members.html b/docs/html/class_pacman_texture2-members.html
similarity index 100%
rename from assets/docs/html/class_pacman_texture2-members.html
rename to docs/html/class_pacman_texture2-members.html
diff --git a/assets/docs/html/class_pacman_texture2.html b/docs/html/class_pacman_texture2.html
similarity index 98%
rename from assets/docs/html/class_pacman_texture2.html
rename to docs/html/class_pacman_texture2.html
index 53b5b3fd5e52acdce26376fedc7c16d7262b68c8..b23ce9ed1830b94e753f23cc43086e835987b3e3 100644
--- a/assets/docs/html/class_pacman_texture2.html
+++ b/docs/html/class_pacman_texture2.html
@@ -183,8 +183,8 @@ Direction&#160;</td><td class="memItemRight" valign="bottom"><b>m_direction</b>
 </div>
 </div>
 <hr/>Объявления и описания членов классов находятся в файлах:<ul>
-<li>source/application/Drawable/Entity/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
-<li>source/application/Drawable/Entity/<b>MyTexture.cpp</b></li>
+<li>source/application/Utilities/<a class="el" href="_my_texture_8h_source.html">MyTexture.h</a></li>
+<li>source/application/Utilities/<b>MyTexture.cpp</b></li>
 </ul>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/class_pacman_texture2.png b/docs/html/class_pacman_texture2.png
similarity index 100%
rename from assets/docs/html/class_pacman_texture2.png
rename to docs/html/class_pacman_texture2.png
diff --git a/assets/docs/html/class_pass-members.html b/docs/html/class_pass-members.html
similarity index 100%
rename from assets/docs/html/class_pass-members.html
rename to docs/html/class_pass-members.html
diff --git a/assets/docs/html/class_pass.html b/docs/html/class_pass.html
similarity index 100%
rename from assets/docs/html/class_pass.html
rename to docs/html/class_pass.html
diff --git a/assets/docs/html/class_pass.png b/docs/html/class_pass.png
similarity index 100%
rename from assets/docs/html/class_pass.png
rename to docs/html/class_pass.png
diff --git a/assets/docs/html/class_room-members.html b/docs/html/class_room-members.html
similarity index 100%
rename from assets/docs/html/class_room-members.html
rename to docs/html/class_room-members.html
diff --git a/assets/docs/html/class_room.html b/docs/html/class_room.html
similarity index 100%
rename from assets/docs/html/class_room.html
rename to docs/html/class_room.html
diff --git a/assets/docs/html/class_room.png b/docs/html/class_room.png
similarity index 100%
rename from assets/docs/html/class_room.png
rename to docs/html/class_room.png
diff --git a/assets/docs/html/class_score_count-members.html b/docs/html/class_score_count-members.html
similarity index 100%
rename from assets/docs/html/class_score_count-members.html
rename to docs/html/class_score_count-members.html
diff --git a/assets/docs/html/class_score_count.html b/docs/html/class_score_count.html
similarity index 100%
rename from assets/docs/html/class_score_count.html
rename to docs/html/class_score_count.html
diff --git a/assets/docs/html/class_score_count.js b/docs/html/class_score_count.js
similarity index 100%
rename from assets/docs/html/class_score_count.js
rename to docs/html/class_score_count.js
diff --git a/assets/docs/html/class_score_count.png b/docs/html/class_score_count.png
similarity index 100%
rename from assets/docs/html/class_score_count.png
rename to docs/html/class_score_count.png
diff --git a/assets/docs/html/class_screamer_composite_event-members.html b/docs/html/class_screamer_composite_event-members.html
similarity index 98%
rename from assets/docs/html/class_screamer_composite_event-members.html
rename to docs/html/class_screamer_composite_event-members.html
index 8a34078a662bef11d1ba65aa38eb06d4a8f2cc12..406680fcccab24c447a6e61ea324268618db12a3 100644
--- a/assets/docs/html/class_screamer_composite_event-members.html
+++ b/docs/html/class_screamer_composite_event-members.html
@@ -111,7 +111,7 @@ $(function(){initNavTree('class_screamer_composite_event.html',''); initResizabl
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>add_observer</b>(IObserver *observer) (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>handle</b>(GameContext *context) override (определено в <a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a>)</td><td class="entry"><a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>notify</b>() const (определено в <a class="el" href="class_i_game_event.html">IGameEvent</a>)</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>ScreamerCompositeEvent</b>(IStaticEntity *food) (определено в <a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a>)</td><td class="entry"><a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>ScreamerCompositeEvent</b>(IStaticEntity *food) (определено в <a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a>)</td><td class="entry"><a class="el" href="class_screamer_composite_event.html">ScreamerCompositeEvent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="class_i_game_event.html#ae84f5f2b3d3bd7834e334c4e6fcde711">~IGameEvent</a>()=default</td><td class="entry"><a class="el" href="class_i_game_event.html">IGameEvent</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
 </table></div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/class_screamer_composite_event.html b/docs/html/class_screamer_composite_event.html
similarity index 100%
rename from assets/docs/html/class_screamer_composite_event.html
rename to docs/html/class_screamer_composite_event.html
diff --git a/assets/docs/html/class_screamer_composite_event.png b/docs/html/class_screamer_composite_event.png
similarity index 100%
rename from assets/docs/html/class_screamer_composite_event.png
rename to docs/html/class_screamer_composite_event.png
diff --git a/assets/docs/html/class_simple_builder-members.html b/docs/html/class_simple_builder-members.html
similarity index 100%
rename from assets/docs/html/class_simple_builder-members.html
rename to docs/html/class_simple_builder-members.html
diff --git a/assets/docs/html/class_simple_builder.html b/docs/html/class_simple_builder.html
similarity index 100%
rename from assets/docs/html/class_simple_builder.html
rename to docs/html/class_simple_builder.html
diff --git a/assets/docs/html/class_simple_builder.js b/docs/html/class_simple_builder.js
similarity index 100%
rename from assets/docs/html/class_simple_builder.js
rename to docs/html/class_simple_builder.js
diff --git a/assets/docs/html/class_simple_builder.png b/docs/html/class_simple_builder.png
similarity index 100%
rename from assets/docs/html/class_simple_builder.png
rename to docs/html/class_simple_builder.png
diff --git a/assets/docs/html/class_theme_manager-members.html b/docs/html/class_theme_manager-members.html
similarity index 100%
rename from assets/docs/html/class_theme_manager-members.html
rename to docs/html/class_theme_manager-members.html
diff --git a/assets/docs/html/class_theme_manager.html b/docs/html/class_theme_manager.html
similarity index 98%
rename from assets/docs/html/class_theme_manager.html
rename to docs/html/class_theme_manager.html
index c2bdf19e4e18594fa7b4011311080f1abc250ca0..c2955db99249abd0b24791733b378f0d6f569bbe 100644
--- a/assets/docs/html/class_theme_manager.html
+++ b/docs/html/class_theme_manager.html
@@ -173,8 +173,8 @@ static <a class="el" href="class_theme_manager.html">ThemeManager</a> &amp;&#160
 <tr class="separator:a42780ddd22847733e994ca2ff9831198"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <hr/>Объявления и описания членов классов находятся в файлах:<ul>
-<li>source/application/State/<a class="el" href="_theme_manager_8h_source.html">ThemeManager.h</a></li>
-<li>source/application/State/<b>ThemeManager.cpp</b></li>
+<li>source/application/Utilities/<a class="el" href="_theme_manager_8h_source.html">ThemeManager.h</a></li>
+<li>source/application/Utilities/<b>ThemeManager.cpp</b></li>
 </ul>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/class_wall-members.html b/docs/html/class_wall-members.html
similarity index 100%
rename from assets/docs/html/class_wall-members.html
rename to docs/html/class_wall-members.html
diff --git a/assets/docs/html/class_wall.html b/docs/html/class_wall.html
similarity index 100%
rename from assets/docs/html/class_wall.html
rename to docs/html/class_wall.html
diff --git a/assets/docs/html/class_wall.png b/docs/html/class_wall.png
similarity index 100%
rename from assets/docs/html/class_wall.png
rename to docs/html/class_wall.png
diff --git a/assets/docs/html/class_win_game-members.html b/docs/html/class_win_game-members.html
similarity index 100%
rename from assets/docs/html/class_win_game-members.html
rename to docs/html/class_win_game-members.html
diff --git a/assets/docs/html/class_win_game.html b/docs/html/class_win_game.html
similarity index 100%
rename from assets/docs/html/class_win_game.html
rename to docs/html/class_win_game.html
diff --git a/assets/docs/html/class_win_game.png b/docs/html/class_win_game.png
similarity index 100%
rename from assets/docs/html/class_win_game.png
rename to docs/html/class_win_game.png
diff --git a/assets/docs/html/classes.html b/docs/html/classes.html
similarity index 97%
rename from assets/docs/html/classes.html
rename to docs/html/classes.html
index 49a500fce1c9a02d1f174793397a02ef63d4d593..0666c078a6e247a2697bbd41c42a4a6215d7406b 100644
--- a/assets/docs/html/classes.html
+++ b/docs/html/classes.html
@@ -139,7 +139,7 @@ $(function(){initNavTree('classes.html',''); initResizable(true); });
 <dd><a class="el" href="class_maze.html">Maze</a></dd><dd><a class="el" href="class_menu.html">Menu</a></dd><dd><a class="el" href="class_menu_game.html">MenuGame</a></dd><dd><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></dd><dd><a class="el" href="class_my_texture.html">MyTexture</a></dd></dl>
 <dl class="classindex even">
 <dt class="alphachar"><a id="letter_P" name="letter_P">P</a></dt>
-<dd><a class="el" href="class_pacman.html">Pacman</a></dd><dd><a class="el" href="class_pacman_texture.html">PacmanTexture</a></dd><dd><a class="el" href="class_pacman_texture2.html">PacmanTexture2</a></dd><dd><a class="el" href="class_pass.html">Pass</a></dd></dl>
+<dd><a class="el" href="class_pacman.html">Pacman</a></dd><dd><a class="el" href="class_pacman_lose_life_event.html">PacmanLoseLifeEvent</a></dd><dd><a class="el" href="class_pacman_texture.html">PacmanTexture</a></dd><dd><a class="el" href="class_pacman_texture2.html">PacmanTexture2</a></dd><dd><a class="el" href="class_pass.html">Pass</a></dd></dl>
 <dl class="classindex odd">
 <dt class="alphachar"><a id="letter_R" name="letter_R">R</a></dt>
 <dd><a class="el" href="class_room.html">Room</a></dd></dl>
diff --git a/assets/docs/html/clipboard.js b/docs/html/clipboard.js
similarity index 100%
rename from assets/docs/html/clipboard.js
rename to docs/html/clipboard.js
diff --git a/assets/docs/html/closed.png b/docs/html/closed.png
similarity index 100%
rename from assets/docs/html/closed.png
rename to docs/html/closed.png
diff --git a/assets/docs/html/cookie.js b/docs/html/cookie.js
similarity index 100%
rename from assets/docs/html/cookie.js
rename to docs/html/cookie.js
diff --git a/assets/docs/html/dir_059b8d327d09617c411023af730a36c0.html b/docs/html/dir_059b8d327d09617c411023af730a36c0.html
similarity index 98%
rename from assets/docs/html/dir_059b8d327d09617c411023af730a36c0.html
rename to docs/html/dir_059b8d327d09617c411023af730a36c0.html
index acba3d1d4a4215f962b363f0740845b1c7918595..68aa13553db925df86bfb4d38585123de2b30841 100644
--- a/assets/docs/html/dir_059b8d327d09617c411023af730a36c0.html
+++ b/docs/html/dir_059b8d327d09617c411023af730a36c0.html
@@ -110,8 +110,6 @@ $(function(){initNavTree('dir_059b8d327d09617c411023af730a36c0.html',''); initRe
 Директории</h2></td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_f4241d05c30ca25826da7a6464eec250.html">App</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_5ac36eadb58257c11ffd1fe0c36f8d44.html">Assets</a></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html">BobBuilder</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_592f7e24f8e0510a8dca7f53521ecb86.html">Context</a></td></tr>
@@ -124,6 +122,8 @@ $(function(){initNavTree('dir_059b8d327d09617c411023af730a36c0.html',''); initRe
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html">State</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><span class="iconfclosed"></span>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_ac1e7d56941449703ea96678bf1e9a08.html">Utilities</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/dir_059b8d327d09617c411023af730a36c0.js b/docs/html/dir_059b8d327d09617c411023af730a36c0.js
similarity index 83%
rename from assets/docs/html/dir_059b8d327d09617c411023af730a36c0.js
rename to docs/html/dir_059b8d327d09617c411023af730a36c0.js
index 53d7dea62ef63bad06b68a79b0645e044c221f54..8df5500e83aac6245e386c6bd3b59bad78d99d49 100644
--- a/assets/docs/html/dir_059b8d327d09617c411023af730a36c0.js
+++ b/docs/html/dir_059b8d327d09617c411023af730a36c0.js
@@ -1,11 +1,11 @@
 var dir_059b8d327d09617c411023af730a36c0 =
 [
     [ "App", "dir_f4241d05c30ca25826da7a6464eec250.html", "dir_f4241d05c30ca25826da7a6464eec250" ],
-    [ "Assets", "dir_5ac36eadb58257c11ffd1fe0c36f8d44.html", "dir_5ac36eadb58257c11ffd1fe0c36f8d44" ],
     [ "BobBuilder", "dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html", "dir_e555ea8018a5abfa1e2fbc7e0b1e63c9" ],
     [ "Context", "dir_592f7e24f8e0510a8dca7f53521ecb86.html", "dir_592f7e24f8e0510a8dca7f53521ecb86" ],
     [ "Drawable", "dir_0620867b96a9d6681889b0cd51382a82.html", "dir_0620867b96a9d6681889b0cd51382a82" ],
     [ "Event", "dir_35461bf8feb23080c5804a15bfe2f4aa.html", "dir_35461bf8feb23080c5804a15bfe2f4aa" ],
     [ "SelectCommand", "dir_dd6fd865ae52f5fee8c57e83b77289db.html", "dir_dd6fd865ae52f5fee8c57e83b77289db" ],
-    [ "State", "dir_eb37150066857c324af7acaa5f9b7e6c.html", "dir_eb37150066857c324af7acaa5f9b7e6c" ]
+    [ "State", "dir_eb37150066857c324af7acaa5f9b7e6c.html", "dir_eb37150066857c324af7acaa5f9b7e6c" ],
+    [ "Utilities", "dir_ac1e7d56941449703ea96678bf1e9a08.html", "dir_ac1e7d56941449703ea96678bf1e9a08" ]
 ];
\ No newline at end of file
diff --git a/assets/docs/html/dir_0620867b96a9d6681889b0cd51382a82.html b/docs/html/dir_0620867b96a9d6681889b0cd51382a82.html
similarity index 100%
rename from assets/docs/html/dir_0620867b96a9d6681889b0cd51382a82.html
rename to docs/html/dir_0620867b96a9d6681889b0cd51382a82.html
diff --git a/assets/docs/html/dir_0620867b96a9d6681889b0cd51382a82.js b/docs/html/dir_0620867b96a9d6681889b0cd51382a82.js
similarity index 100%
rename from assets/docs/html/dir_0620867b96a9d6681889b0cd51382a82.js
rename to docs/html/dir_0620867b96a9d6681889b0cd51382a82.js
diff --git a/assets/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.html b/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.html
similarity index 100%
rename from assets/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.html
rename to docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.html
diff --git a/assets/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.js b/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.js
similarity index 100%
rename from assets/docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.js
rename to docs/html/dir_1ec01c3d118a92a59cb64fdd508b6eff.js
diff --git a/assets/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.html b/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.html
similarity index 100%
rename from assets/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.html
rename to docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.html
diff --git a/assets/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.js b/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.js
similarity index 100%
rename from assets/docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.js
rename to docs/html/dir_35461bf8feb23080c5804a15bfe2f4aa.js
diff --git a/assets/docs/html/dir_36512145787243429e2d8387a78e16b9.html b/docs/html/dir_36512145787243429e2d8387a78e16b9.html
similarity index 95%
rename from assets/docs/html/dir_36512145787243429e2d8387a78e16b9.html
rename to docs/html/dir_36512145787243429e2d8387a78e16b9.html
index e144359b6cd67b78945b086017750d6c990ce215..efe0ae27c8593ef3a94a848cda4bbbbd455696ff 100644
--- a/assets/docs/html/dir_36512145787243429e2d8387a78e16b9.html
+++ b/docs/html/dir_36512145787243429e2d8387a78e16b9.html
@@ -112,8 +112,6 @@ $(function(){initNavTree('dir_36512145787243429e2d8387a78e16b9.html',''); initRe
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_i_observer_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>IObserver.h</b></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_my_texture_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>MyTexture.h</b></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_pacman_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>Pacman.h</b></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
diff --git a/assets/docs/html/dir_36512145787243429e2d8387a78e16b9.js b/docs/html/dir_36512145787243429e2d8387a78e16b9.js
similarity index 77%
rename from assets/docs/html/dir_36512145787243429e2d8387a78e16b9.js
rename to docs/html/dir_36512145787243429e2d8387a78e16b9.js
index b557660d26ecdc46180004de5c32c61944c24931..3fc6fbbaa9fa484536b25e4b6a330500f7a0ac9e 100644
--- a/assets/docs/html/dir_36512145787243429e2d8387a78e16b9.js
+++ b/docs/html/dir_36512145787243429e2d8387a78e16b9.js
@@ -2,6 +2,5 @@ var dir_36512145787243429e2d8387a78e16b9 =
 [
     [ "IEntity.h", "_i_entity_8h_source.html", null ],
     [ "IObserver.h", "_i_observer_8h_source.html", null ],
-    [ "MyTexture.h", "_my_texture_8h_source.html", null ],
     [ "Pacman.h", "_pacman_8h_source.html", null ]
 ];
\ No newline at end of file
diff --git a/assets/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.html b/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.html
similarity index 100%
rename from assets/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.html
rename to docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.html
diff --git a/assets/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.js b/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.js
similarity index 100%
rename from assets/docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.js
rename to docs/html/dir_592f7e24f8e0510a8dca7f53521ecb86.js
diff --git a/assets/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.html b/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.html
similarity index 100%
rename from assets/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.html
rename to docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.html
diff --git a/assets/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.js b/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.js
similarity index 100%
rename from assets/docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.js
rename to docs/html/dir_5ac36eadb58257c11ffd1fe0c36f8d44.js
diff --git a/assets/docs/html/dir_a2a010966b562bcf41b620d047d98a69.html b/docs/html/dir_a2a010966b562bcf41b620d047d98a69.html
similarity index 100%
rename from assets/docs/html/dir_a2a010966b562bcf41b620d047d98a69.html
rename to docs/html/dir_a2a010966b562bcf41b620d047d98a69.html
diff --git a/assets/docs/html/dir_a2a010966b562bcf41b620d047d98a69.js b/docs/html/dir_a2a010966b562bcf41b620d047d98a69.js
similarity index 100%
rename from assets/docs/html/dir_a2a010966b562bcf41b620d047d98a69.js
rename to docs/html/dir_a2a010966b562bcf41b620d047d98a69.js
diff --git a/docs/html/dir_ac1e7d56941449703ea96678bf1e9a08.html b/docs/html/dir_ac1e7d56941449703ea96678bf1e9a08.html
new file mode 100644
index 0000000000000000000000000000000000000000..601d5cc4996bb63f26da311699ca97ee7a9fb84f
--- /dev/null
+++ b/docs/html/dir_ac1e7d56941449703ea96678bf1e9a08.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Содержание директории source/application/Utilities</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('dir_ac1e7d56941449703ea96678bf1e9a08.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="header">
+  <div class="headertitle"><div class="title">Содержание директории Utilities</div></div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="files" name="files"></a>
+Файлы</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_my_texture_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>MyTexture.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_texture___sound_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>Texture_Sound.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_theme_manager_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>ThemeManager.h</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="navelem"><a class="el" href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html">source</a></li><li class="navelem"><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html">application</a></li><li class="navelem"><a class="el" href="dir_ac1e7d56941449703ea96678bf1e9a08.html">Utilities</a></li>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/docs/html/dir_ac1e7d56941449703ea96678bf1e9a08.js b/docs/html/dir_ac1e7d56941449703ea96678bf1e9a08.js
new file mode 100644
index 0000000000000000000000000000000000000000..f7e3383012b35ecb4425b86120ea11c79b32f300
--- /dev/null
+++ b/docs/html/dir_ac1e7d56941449703ea96678bf1e9a08.js
@@ -0,0 +1,6 @@
+var dir_ac1e7d56941449703ea96678bf1e9a08 =
+[
+    [ "MyTexture.h", "_my_texture_8h_source.html", null ],
+    [ "Texture_Sound.h", "_texture___sound_8h_source.html", null ],
+    [ "ThemeManager.h", "_theme_manager_8h_source.html", null ]
+];
\ No newline at end of file
diff --git a/assets/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html b/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html
similarity index 100%
rename from assets/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html
rename to docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html
diff --git a/assets/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.js b/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.js
similarity index 100%
rename from assets/docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.js
rename to docs/html/dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.js
diff --git a/assets/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.html b/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.html
similarity index 100%
rename from assets/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.html
rename to docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.html
diff --git a/assets/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.js b/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.js
similarity index 100%
rename from assets/docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.js
rename to docs/html/dir_dbd25d32f158f8fe0ac7baf637feb24d.js
diff --git a/assets/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.html b/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.html
similarity index 100%
rename from assets/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.html
rename to docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.html
diff --git a/assets/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.js b/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.js
similarity index 100%
rename from assets/docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.js
rename to docs/html/dir_dd6fd865ae52f5fee8c57e83b77289db.js
diff --git a/assets/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.html b/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.html
similarity index 100%
rename from assets/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.html
rename to docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.html
diff --git a/assets/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.js b/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.js
similarity index 100%
rename from assets/docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.js
rename to docs/html/dir_e31f3142f437cc9199f6e7da6a0351a8.js
diff --git a/assets/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html b/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html
similarity index 100%
rename from assets/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html
rename to docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html
diff --git a/assets/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.js b/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.js
similarity index 100%
rename from assets/docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.js
rename to docs/html/dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.js
diff --git a/assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.html b/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.html
similarity index 95%
rename from assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.html
rename to docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.html
index c46b3896bc9b1aa6f68471e5d12d0b5b84478e3a..19f78d31c94c42f659132fbec4c87a81f733ab8f 100644
--- a/assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.html
+++ b/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.html
@@ -116,8 +116,6 @@ $(function(){initNavTree('dir_eb37150066857c324af7acaa5f9b7e6c.html',''); initRe
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_select_state_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>SelectState.h</b></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top"><a href="_theme_manager_8h_source.html"><span class="icondoc"></span></a>&#160;</td><td class="memItemRight" valign="bottom"><b>ThemeManager.h</b></td></tr>
-<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.js b/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.js
similarity index 63%
rename from assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.js
rename to docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.js
index 58e364253d13158d71134475e83521feb10f0e21..972d3f3d0e1627e7e0751d2c537782ae5dbedc2e 100644
--- a/assets/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.js
+++ b/docs/html/dir_eb37150066857c324af7acaa5f9b7e6c.js
@@ -3,6 +3,5 @@ var dir_eb37150066857c324af7acaa5f9b7e6c =
     [ "GameState.h", "_game_state_8h_source.html", null ],
     [ "IState.h", "_i_state_8h_source.html", null ],
     [ "IWindowKeeper.h", "_i_window_keeper_8h_source.html", null ],
-    [ "SelectState.h", "_select_state_8h_source.html", null ],
-    [ "ThemeManager.h", "_theme_manager_8h_source.html", null ]
+    [ "SelectState.h", "_select_state_8h_source.html", null ]
 ];
\ No newline at end of file
diff --git a/assets/docs/html/dir_f4241d05c30ca25826da7a6464eec250.html b/docs/html/dir_f4241d05c30ca25826da7a6464eec250.html
similarity index 100%
rename from assets/docs/html/dir_f4241d05c30ca25826da7a6464eec250.html
rename to docs/html/dir_f4241d05c30ca25826da7a6464eec250.html
diff --git a/assets/docs/html/dir_f4241d05c30ca25826da7a6464eec250.js b/docs/html/dir_f4241d05c30ca25826da7a6464eec250.js
similarity index 100%
rename from assets/docs/html/dir_f4241d05c30ca25826da7a6464eec250.js
rename to docs/html/dir_f4241d05c30ca25826da7a6464eec250.js
diff --git a/assets/docs/html/doc.svg b/docs/html/doc.svg
similarity index 100%
rename from assets/docs/html/doc.svg
rename to docs/html/doc.svg
diff --git a/assets/docs/html/docd.svg b/docs/html/docd.svg
similarity index 100%
rename from assets/docs/html/docd.svg
rename to docs/html/docd.svg
diff --git a/assets/docs/html/doxygen.css b/docs/html/doxygen.css
similarity index 100%
rename from assets/docs/html/doxygen.css
rename to docs/html/doxygen.css
diff --git a/assets/docs/html/doxygen.svg b/docs/html/doxygen.svg
similarity index 100%
rename from assets/docs/html/doxygen.svg
rename to docs/html/doxygen.svg
diff --git a/assets/docs/html/doxygen_crawl.html b/docs/html/doxygen_crawl.html
similarity index 92%
rename from assets/docs/html/doxygen_crawl.html
rename to docs/html/doxygen_crawl.html
index b62c6c403b21226d93421911a42b46e33a9146d0..01b9a4d3b1472f6249b2436647fcac2f721fedc0 100644
--- a/assets/docs/html/doxygen_crawl.html
+++ b/docs/html/doxygen_crawl.html
@@ -86,7 +86,13 @@
 <a href="class_game_state.html#a180391dfe966058da0389146534e66d0"/>
 <a href="class_game_state.html#a2c36ada0cae89f91d956e2c91b070893"/>
 <a href="class_game_state.html#a3610da76344c5c2cbcc5921f877226dc"/>
+<a href="class_game_state.html#a8538d9088ff9371e69e19ad6661b6391"/>
 <a href="class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153"/>
+<a href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a"/>
+<a href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aa92e56d8195a9dd45a9b90aacf82886b1"/>
+<a href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aaa2e8a4a15de815a5b9e3830fa3b986d6"/>
+<a href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aab50339a10e1de285ac99d4c3990b8693"/>
+<a href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aac6daca30aef2af1d72715733825806a3"/>
 <a href="class_i_entity-members.html"/>
 <a href="class_i_entity.html"/>
 <a href="class_i_game_builder-members.html"/>
@@ -126,10 +132,12 @@
 <a href="class_my_texture.html"/>
 <a href="class_pacman-members.html"/>
 <a href="class_pacman.html"/>
-<a href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2"/>
+<a href="class_pacman.html#a4000caf3daa707f177de875075a72c83"/>
 <a href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8"/>
 <a href="class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c"/>
 <a href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d"/>
+<a href="class_pacman_lose_life_event-members.html"/>
+<a href="class_pacman_lose_life_event.html"/>
 <a href="class_pacman_texture-members.html"/>
 <a href="class_pacman_texture.html"/>
 <a href="class_pacman_texture2-members.html"/>
@@ -160,8 +168,8 @@
 <a href="dir_35461bf8feb23080c5804a15bfe2f4aa.html"/>
 <a href="dir_36512145787243429e2d8387a78e16b9.html"/>
 <a href="dir_592f7e24f8e0510a8dca7f53521ecb86.html"/>
-<a href="dir_5ac36eadb58257c11ffd1fe0c36f8d44.html"/>
 <a href="dir_a2a010966b562bcf41b620d047d98a69.html"/>
+<a href="dir_ac1e7d56941449703ea96678bf1e9a08.html"/>
 <a href="dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html"/>
 <a href="dir_dbd25d32f158f8fe0ac7baf637feb24d.html"/>
 <a href="dir_dd6fd865ae52f5fee8c57e83b77289db.html"/>
@@ -172,6 +180,7 @@
 <a href="doxygen_crawl.html"/>
 <a href="files.html"/>
 <a href="functions.html"/>
+<a href="functions_enum.html"/>
 <a href="functions_func.html"/>
 <a href="functions_vars.html"/>
 <a href="hierarchy.html"/>
diff --git a/assets/docs/html/dynsections.js b/docs/html/dynsections.js
similarity index 100%
rename from assets/docs/html/dynsections.js
rename to docs/html/dynsections.js
diff --git a/assets/docs/html/files.html b/docs/html/files.html
similarity index 70%
rename from assets/docs/html/files.html
rename to docs/html/files.html
index b989cd3804551932ecd22ae2e2ccbe90336bd89a..9f71b2127dc780d77f92e5c85dd26bfce0a31f13 100644
--- a/assets/docs/html/files.html
+++ b/docs/html/files.html
@@ -111,39 +111,39 @@ $(function(){initNavTree('files.html',''); initResizable(true); });
 <tr id="row_0_0_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_0_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_')">&#9660;</span><span id="img_0_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_')">&#160;</span><a class="el" href="dir_059b8d327d09617c411023af730a36c0.html" target="_self">application</a></td><td class="desc"></td></tr>
 <tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_0_')">&#9660;</span><span id="img_0_0_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_0_')">&#160;</span><a class="el" href="dir_f4241d05c30ca25826da7a6464eec250.html" target="_self">App</a></td><td class="desc"></td></tr>
 <tr id="row_0_0_0_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_application_8h_source.html"><span class="icondoc"></span></a><b>Application.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_1_" class="arrow" onclick="dynsection.toggleFolder('0_0_1_')">&#9660;</span><span id="img_0_0_1_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_1_')">&#160;</span><a class="el" href="dir_5ac36eadb58257c11ffd1fe0c36f8d44.html" target="_self">Assets</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_1_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_texture___sound_8h_source.html"><span class="icondoc"></span></a><b>Texture_Sound.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_2_" class="arrow" onclick="dynsection.toggleFolder('0_0_2_')">&#9660;</span><span id="img_0_0_2_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_2_')">&#160;</span><a class="el" href="dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html" target="_self">BobBuilder</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_2_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_bob_builder_director_8h_source.html"><span class="icondoc"></span></a><b>BobBuilderDirector.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_2_1_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_game_builders_8h_source.html"><span class="icondoc"></span></a><b>GameBuilders.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_2_2_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_game_builder_8h_source.html"><span class="icondoc"></span></a><b>IGameBuilder.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_3_" class="arrow" onclick="dynsection.toggleFolder('0_0_3_')">&#9660;</span><span id="img_0_0_3_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_3_')">&#160;</span><a class="el" href="dir_592f7e24f8e0510a8dca7f53521ecb86.html" target="_self">Context</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_3_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_context_8h_source.html"><span class="icondoc"></span></a><b>Context.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_4_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_')">&#9660;</span><span id="img_0_0_4_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_')">&#160;</span><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html" target="_self">Drawable</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_0_0_4_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_0_')">&#9660;</span><span id="img_0_0_4_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_0_')">&#160;</span><a class="el" href="dir_1ec01c3d118a92a59cb64fdd508b6eff.html" target="_self">DrawMenu</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_0_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span id="arr_0_0_4_0_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_0_0_')">&#9660;</span><span id="img_0_0_4_0_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_0_0_')">&#160;</span><a class="el" href="dir_e31f3142f437cc9199f6e7da6a0351a8.html" target="_self">Button</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_0_0_0_" class="odd"><td class="entry"><span style="width:96px;display:inline-block;">&#160;</span><a href="_button_8h_source.html"><span class="icondoc"></span></a><b>Button.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_0_1_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span id="arr_0_0_4_0_1_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_0_1_')">&#9660;</span><span id="img_0_0_4_0_1_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_0_1_')">&#160;</span><a class="el" href="dir_a2a010966b562bcf41b620d047d98a69.html" target="_self">Menu</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_0_1_0_" class="odd"><td class="entry"><span style="width:96px;display:inline-block;">&#160;</span><a href="_menu_8h_source.html"><span class="icondoc"></span></a><b>Menu.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_0_1_1_" class="even"><td class="entry"><span style="width:96px;display:inline-block;">&#160;</span><a href="_menu_in_game_8h_source.html"><span class="icondoc"></span></a><b>MenuInGame.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_1_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_0_0_4_1_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_1_')">&#9660;</span><span id="img_0_0_4_1_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_1_')">&#160;</span><a class="el" href="dir_36512145787243429e2d8387a78e16b9.html" target="_self">Entity</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_1_0_" class="even"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_i_entity_8h_source.html"><span class="icondoc"></span></a><b>IEntity.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_1_1_" class="odd"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_i_observer_8h_source.html"><span class="icondoc"></span></a><b>IObserver.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_1_2_" class="even"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_my_texture_8h_source.html"><span class="icondoc"></span></a><b>MyTexture.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_1_3_" class="odd"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_pacman_8h_source.html"><span class="icondoc"></span></a><b>Pacman.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_0_0_4_2_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_2_')">&#9660;</span><span id="img_0_0_4_2_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_2_')">&#160;</span><a class="el" href="dir_dbd25d32f158f8fe0ac7baf637feb24d.html" target="_self">Maze</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_2_0_" class="odd"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_maze_8h_source.html"><span class="icondoc"></span></a><b>Maze.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_4_3_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_drawable_8h_source.html"><span class="icondoc"></span></a><b>IDrawable.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_5_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_5_" class="arrow" onclick="dynsection.toggleFolder('0_0_5_')">&#9660;</span><span id="img_0_0_5_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_5_')">&#160;</span><a class="el" href="dir_35461bf8feb23080c5804a15bfe2f4aa.html" target="_self">Event</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_5_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_game_event_8h_source.html"><span class="icondoc"></span></a><b>IGameEvent.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_6_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_6_" class="arrow" onclick="dynsection.toggleFolder('0_0_6_')">&#9660;</span><span id="img_0_0_6_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_6_')">&#160;</span><a class="el" href="dir_dd6fd865ae52f5fee8c57e83b77289db.html" target="_self">SelectCommand</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_6_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_select_command_8h_source.html"><span class="icondoc"></span></a><b>ISelectCommand.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_7_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_7_" class="arrow" onclick="dynsection.toggleFolder('0_0_7_')">&#9660;</span><span id="img_0_0_7_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_7_')">&#160;</span><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html" target="_self">State</a></td><td class="desc"></td></tr>
-<tr id="row_0_0_7_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_game_state_8h_source.html"><span class="icondoc"></span></a><b>GameState.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_7_1_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_state_8h_source.html"><span class="icondoc"></span></a><b>IState.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_7_2_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_window_keeper_8h_source.html"><span class="icondoc"></span></a><b>IWindowKeeper.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_7_3_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_select_state_8h_source.html"><span class="icondoc"></span></a><b>SelectState.h</b></td><td class="desc"></td></tr>
-<tr id="row_0_0_7_4_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_theme_manager_8h_source.html"><span class="icondoc"></span></a><b>ThemeManager.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_1_" class="arrow" onclick="dynsection.toggleFolder('0_0_1_')">&#9660;</span><span id="img_0_0_1_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_1_')">&#160;</span><a class="el" href="dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html" target="_self">BobBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_bob_builder_director_8h_source.html"><span class="icondoc"></span></a><b>BobBuilderDirector.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_1_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_game_builders_8h_source.html"><span class="icondoc"></span></a><b>GameBuilders.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_2_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_game_builder_8h_source.html"><span class="icondoc"></span></a><b>IGameBuilder.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_2_" class="arrow" onclick="dynsection.toggleFolder('0_0_2_')">&#9660;</span><span id="img_0_0_2_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_2_')">&#160;</span><a class="el" href="dir_592f7e24f8e0510a8dca7f53521ecb86.html" target="_self">Context</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_context_8h_source.html"><span class="icondoc"></span></a><b>Context.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_3_" class="arrow" onclick="dynsection.toggleFolder('0_0_3_')">&#9660;</span><span id="img_0_0_3_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_3_')">&#160;</span><a class="el" href="dir_0620867b96a9d6681889b0cd51382a82.html" target="_self">Drawable</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_0_0_3_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_3_0_')">&#9660;</span><span id="img_0_0_3_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_3_0_')">&#160;</span><a class="el" href="dir_1ec01c3d118a92a59cb64fdd508b6eff.html" target="_self">DrawMenu</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_0_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span id="arr_0_0_3_0_0_" class="arrow" onclick="dynsection.toggleFolder('0_0_3_0_0_')">&#9660;</span><span id="img_0_0_3_0_0_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_3_0_0_')">&#160;</span><a class="el" href="dir_e31f3142f437cc9199f6e7da6a0351a8.html" target="_self">Button</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_0_0_0_" class="odd"><td class="entry"><span style="width:96px;display:inline-block;">&#160;</span><a href="_button_8h_source.html"><span class="icondoc"></span></a><b>Button.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_0_1_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><span id="arr_0_0_3_0_1_" class="arrow" onclick="dynsection.toggleFolder('0_0_3_0_1_')">&#9660;</span><span id="img_0_0_3_0_1_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_3_0_1_')">&#160;</span><a class="el" href="dir_a2a010966b562bcf41b620d047d98a69.html" target="_self">Menu</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_0_1_0_" class="odd"><td class="entry"><span style="width:96px;display:inline-block;">&#160;</span><a href="_menu_8h_source.html"><span class="icondoc"></span></a><b>Menu.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_0_1_1_" class="even"><td class="entry"><span style="width:96px;display:inline-block;">&#160;</span><a href="_menu_in_game_8h_source.html"><span class="icondoc"></span></a><b>MenuInGame.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_1_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_0_0_3_1_" class="arrow" onclick="dynsection.toggleFolder('0_0_3_1_')">&#9660;</span><span id="img_0_0_3_1_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_3_1_')">&#160;</span><a class="el" href="dir_36512145787243429e2d8387a78e16b9.html" target="_self">Entity</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_1_0_" class="even"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_i_entity_8h_source.html"><span class="icondoc"></span></a><b>IEntity.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_1_1_" class="odd"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_i_observer_8h_source.html"><span class="icondoc"></span></a><b>IObserver.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_1_2_" class="even"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_pacman_8h_source.html"><span class="icondoc"></span></a><b>Pacman.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_2_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span id="arr_0_0_3_2_" class="arrow" onclick="dynsection.toggleFolder('0_0_3_2_')">&#9660;</span><span id="img_0_0_3_2_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_3_2_')">&#160;</span><a class="el" href="dir_dbd25d32f158f8fe0ac7baf637feb24d.html" target="_self">Maze</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_2_0_" class="even"><td class="entry"><span style="width:80px;display:inline-block;">&#160;</span><a href="_maze_8h_source.html"><span class="icondoc"></span></a><b>Maze.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_3_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_drawable_8h_source.html"><span class="icondoc"></span></a><b>IDrawable.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_4_" class="arrow" onclick="dynsection.toggleFolder('0_0_4_')">&#9660;</span><span id="img_0_0_4_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_4_')">&#160;</span><a class="el" href="dir_35461bf8feb23080c5804a15bfe2f4aa.html" target="_self">Event</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_game_event_8h_source.html"><span class="icondoc"></span></a><b>IGameEvent.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_5_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_5_" class="arrow" onclick="dynsection.toggleFolder('0_0_5_')">&#9660;</span><span id="img_0_0_5_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_5_')">&#160;</span><a class="el" href="dir_dd6fd865ae52f5fee8c57e83b77289db.html" target="_self">SelectCommand</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_5_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_select_command_8h_source.html"><span class="icondoc"></span></a><b>ISelectCommand.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_6_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_6_" class="arrow" onclick="dynsection.toggleFolder('0_0_6_')">&#9660;</span><span id="img_0_0_6_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_6_')">&#160;</span><a class="el" href="dir_eb37150066857c324af7acaa5f9b7e6c.html" target="_self">State</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_6_0_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_game_state_8h_source.html"><span class="icondoc"></span></a><b>GameState.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_6_1_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_state_8h_source.html"><span class="icondoc"></span></a><b>IState.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_6_2_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_i_window_keeper_8h_source.html"><span class="icondoc"></span></a><b>IWindowKeeper.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_6_3_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_select_state_8h_source.html"><span class="icondoc"></span></a><b>SelectState.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span id="arr_0_0_7_" class="arrow" onclick="dynsection.toggleFolder('0_0_7_')">&#9660;</span><span id="img_0_0_7_" class="iconfopen" onclick="dynsection.toggleFolder('0_0_7_')">&#160;</span><a class="el" href="dir_ac1e7d56941449703ea96678bf1e9a08.html" target="_self">Utilities</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_0_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_my_texture_8h_source.html"><span class="icondoc"></span></a><b>MyTexture.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_1_" class="odd"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_texture___sound_8h_source.html"><span class="icondoc"></span></a><b>Texture_Sound.h</b></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_2_" class="even"><td class="entry"><span style="width:64px;display:inline-block;">&#160;</span><a href="_theme_manager_8h_source.html"><span class="icondoc"></span></a><b>ThemeManager.h</b></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->
diff --git a/assets/docs/html/files_dup.js b/docs/html/files_dup.js
similarity index 100%
rename from assets/docs/html/files_dup.js
rename to docs/html/files_dup.js
diff --git a/assets/docs/html/folderclosed.svg b/docs/html/folderclosed.svg
similarity index 100%
rename from assets/docs/html/folderclosed.svg
rename to docs/html/folderclosed.svg
diff --git a/assets/docs/html/folderclosedd.svg b/docs/html/folderclosedd.svg
similarity index 100%
rename from assets/docs/html/folderclosedd.svg
rename to docs/html/folderclosedd.svg
diff --git a/assets/docs/html/folderopen.svg b/docs/html/folderopen.svg
similarity index 100%
rename from assets/docs/html/folderopen.svg
rename to docs/html/folderopen.svg
diff --git a/assets/docs/html/folderopend.svg b/docs/html/folderopend.svg
similarity index 100%
rename from assets/docs/html/folderopend.svg
rename to docs/html/folderopend.svg
diff --git a/assets/docs/html/functions.html b/docs/html/functions.html
similarity index 97%
rename from assets/docs/html/functions.html
rename to docs/html/functions.html
index 859e99b24bf45d875bea0084560395c5df00afd2..1b9cb626154883ecec6365b11bccc0f270d832b3 100644
--- a/assets/docs/html/functions.html
+++ b/docs/html/functions.html
@@ -142,6 +142,7 @@ $(function(){initNavTree('functions.html',''); initResizable(true); });
 
 <h3><a id="index_h" name="index_h"></a>- h -</h3><ul>
 <li>handle()&#160;:&#160;<a class="el" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">DeleteStaticEntity</a></li>
+<li>handle_screamer()&#160;:&#160;<a class="el" href="class_game_state.html#a8538d9088ff9371e69e19ad6661b6391">GameState</a></li>
 </ul>
 
 
@@ -149,6 +150,7 @@ $(function(){initNavTree('functions.html',''); initResizable(true); });
 <li>m_window&#160;:&#160;<a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">IWindowKeeper</a></li>
 <li>Menu()&#160;:&#160;<a class="el" href="class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee">Menu</a></li>
 <li>move()&#160;:&#160;<a class="el" href="class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8">Pacman</a></li>
+<li>Music&#160;:&#160;<a class="el" href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a">GameState</a></li>
 </ul>
 
 
@@ -158,7 +160,7 @@ $(function(){initNavTree('functions.html',''); initResizable(true); });
 
 
 <h3><a id="index_p" name="index_p"></a>- p -</h3><ul>
-<li>Pacman()&#160;:&#160;<a class="el" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a></li>
+<li>Pacman()&#160;:&#160;<a class="el" href="class_pacman.html#a4000caf3daa707f177de875075a72c83">Pacman</a></li>
 <li>prepare_for_drawing()&#160;:&#160;<a class="el" href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">Pacman</a></li>
 <li>process_mouse()&#160;:&#160;<a class="el" href="class_menu.html#a9174cfc103dba0ee0613196385691872">Menu</a></li>
 </ul>
diff --git a/docs/html/functions_enum.html b/docs/html/functions_enum.html
new file mode 100644
index 0000000000000000000000000000000000000000..fc6a1889eefe253ed9836e558a2e6504948bdb18
--- /dev/null
+++ b/docs/html/functions_enum.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=11"/>
+<meta name="generator" content="Doxygen 1.13.2"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Pacman: Члены классов - Перечисления</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<script type="text/javascript" src="clipboard.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="cookie.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+  $(function() { init_search(); });
+/* @license-end */
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr id="projectrow">
+  <td id="projectalign">
+   <div id="projectname">Pacman
+   </div>
+  </td>
+    <td>        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <span id="MSearchSelect"                onmouseover="return searchBox.OnSearchSelectShow()"                onmouseout="return searchBox.OnSearchSelectHide()">&#160;</span>
+          <input type="text" id="MSearchField" value="" placeholder="РџРѕРёСЃРє" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
+          </span>
+        </div>
+</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Создано системой Doxygen 1.13.2 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+var searchBox = new SearchBox("searchBox", "search/",'.html');
+/* @license-end */
+</script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function() { codefold.init(0); });
+/* @license-end */
+</script>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+  <div id="nav-tree">
+    <div id="nav-tree-contents">
+      <div id="nav-sync" class="sync"></div>
+    </div>
+  </div>
+  <div id="splitbar" style="-moz-user-select:none;" 
+       class="ui-resizable-handle">
+  </div>
+</div>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
+$(function(){initNavTree('functions_enum.html',''); initResizable(true); });
+/* @license-end */
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<div id="MSearchResults">
+<div class="SRPage">
+<div id="SRIndex">
+<div id="SRResults"></div>
+<div class="SRStatus" id="Loading">Загрузка...</div>
+<div class="SRStatus" id="Searching">РџРѕРёСЃРє...</div>
+<div class="SRStatus" id="NoMatches">Не найдено</div>
+</div>
+</div>
+</div>
+</div>
+
+<div class="contents">
+<div class="textblock">Список всех задокументированных перечислителей со ссылками на документацию класса каждого члена:</div><ul>
+<li>Music&#160;:&#160;<a class="el" href="class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a">GameState</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Создано системой <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
+  </ul>
+</div>
+</body>
+</html>
diff --git a/assets/docs/html/functions_func.html b/docs/html/functions_func.html
similarity index 98%
rename from assets/docs/html/functions_func.html
rename to docs/html/functions_func.html
index a64d47360d05752e529f12fe06e42c5d07575ca0..6ce089323358c6e162dcfd39c416efe987e8b390 100644
--- a/assets/docs/html/functions_func.html
+++ b/docs/html/functions_func.html
@@ -142,6 +142,7 @@ $(function(){initNavTree('functions_func.html',''); initResizable(true); });
 
 <h3><a id="index_h" name="index_h"></a>- h -</h3><ul>
 <li>handle()&#160;:&#160;<a class="el" href="class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43">DeleteStaticEntity</a></li>
+<li>handle_screamer()&#160;:&#160;<a class="el" href="class_game_state.html#a8538d9088ff9371e69e19ad6661b6391">GameState</a></li>
 </ul>
 
 
@@ -157,7 +158,7 @@ $(function(){initNavTree('functions_func.html',''); initResizable(true); });
 
 
 <h3><a id="index_p" name="index_p"></a>- p -</h3><ul>
-<li>Pacman()&#160;:&#160;<a class="el" href="class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2">Pacman</a></li>
+<li>Pacman()&#160;:&#160;<a class="el" href="class_pacman.html#a4000caf3daa707f177de875075a72c83">Pacman</a></li>
 <li>prepare_for_drawing()&#160;:&#160;<a class="el" href="class_pacman.html#ad41930fae2878425f80e4fea614f3a3d">Pacman</a></li>
 <li>process_mouse()&#160;:&#160;<a class="el" href="class_menu.html#a9174cfc103dba0ee0613196385691872">Menu</a></li>
 </ul>
diff --git a/assets/docs/html/functions_vars.html b/docs/html/functions_vars.html
similarity index 100%
rename from assets/docs/html/functions_vars.html
rename to docs/html/functions_vars.html
diff --git a/assets/docs/html/hierarchy.html b/docs/html/hierarchy.html
similarity index 63%
rename from assets/docs/html/hierarchy.html
rename to docs/html/hierarchy.html
index 823138f1ad3a00f659219115dd5b9024c5cbd102..371f411e3cf4d44decacdc2722f6bfc816c0ec15 100644
--- a/assets/docs/html/hierarchy.html
+++ b/docs/html/hierarchy.html
@@ -133,39 +133,40 @@ $(function(){initNavTree('hierarchy.html',''); initResizable(true); });
 <tr id="row_5_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_5_" class="arrow" onclick="dynsection.toggleFolder('5_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_game_event.html" target="_self">IGameEvent</a></td><td class="desc">Абстрактрый класс для различных игровых событий </td></tr>
 <tr id="row_5_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_delete_static_entity.html" target="_self">DeleteStaticEntity</a></td><td class="desc">Удаление еды </td></tr>
 <tr id="row_5_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_lost_game.html" target="_self">LostGame</a></td><td class="desc"></td></tr>
-<tr id="row_5_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_screamer_composite_event.html" target="_self">ScreamerCompositeEvent</a></td><td class="desc">Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить </td></tr>
-<tr id="row_5_3_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_screamer_event.html" target="_self">ScreamerEvent</a></td><td class="desc">Скример </td></tr>
-<tr id="row_5_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_win_game.html" target="_self">WinGame</a></td><td class="desc"></td></tr>
-<tr id="row_6_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_6_" class="arrow" onclick="dynsection.toggleFolder('6_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_observer.html" target="_self">IObserver</a></td><td class="desc">Паттерн Observer. Общий интерфейс для наблюдателей </td></tr>
-<tr id="row_6_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_score_count.html" target="_self">ScoreCount</a></td><td class="desc">Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик для конкретного игрока </td></tr>
-<tr id="row_7_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_7_" class="arrow" onclick="dynsection.toggleFolder('7_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_select_command.html" target="_self">ISelectCommand</a></td><td class="desc"></td></tr>
-<tr id="row_7_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_7_0_" class="arrow" onclick="dynsection.toggleFolder('7_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_change_state_command.html" target="_self">ChangeStateCommand</a></td><td class="desc"></td></tr>
-<tr id="row_7_0_0_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_exit_command.html" target="_self">ExitCommand</a></td><td class="desc"></td></tr>
-<tr id="row_7_0_1_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_command.html" target="_self">GameCommand</a></td><td class="desc"></td></tr>
-<tr id="row_8_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_8_" class="arrow" onclick="dynsection.toggleFolder('8_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_state.html" target="_self">IState</a></td><td class="desc"></td></tr>
-<tr id="row_8_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_exit_state.html" target="_self">ExitState</a></td><td class="desc">Состояние, которое завершает игры. Для этого в do_step всегда возвращает false -&gt; так <a class="el" href="class_application.html">Application</a> поймет, что надо завершить работу и выйти из бесконечного цикла делегирования своей работы состояниям </td></tr>
-<tr id="row_8_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_state.html" target="_self">GameState</a></td><td class="desc">Взаимодействие врага с объектами лабиринта, что порождает игровые события </td></tr>
-<tr id="row_8_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_select_state.html" target="_self">SelectState</a></td><td class="desc"><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры </td></tr>
-<tr id="row_9_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_9_" class="arrow" onclick="dynsection.toggleFolder('9_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_state_manager.html" target="_self">IStateManager</a></td><td class="desc"></td></tr>
-<tr id="row_9_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_application.html" target="_self">Application</a></td><td class="desc"></td></tr>
-<tr id="row_10_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_10_" class="arrow" onclick="dynsection.toggleFolder('10_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitable.html" target="_self">IVisitable</a></td><td class="desc"></td></tr>
-<tr id="row_10_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_dynamic_entity.html" target="_self">IDynamicEntity</a></td><td class="desc">Динамические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; может выполнять какие-то действия </td></tr>
-<tr id="row_10_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_static_entity.html" target="_self">IStaticEntity</a></td><td class="desc">Статические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; неперемещаемые объекты, с которыми будет взаимодействовать Пакман Чтобы скопировать статические сущности, применяем паттерн Prototype. Для этого создает возможность клонирования </td></tr>
-<tr id="row_11_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_11_" class="arrow" onclick="dynsection.toggleFolder('11_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitor.html" target="_self">IVisitor</a></td><td class="desc">Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) и <a class="el" href="class_i_visitable.html">IVisitable</a> (нечто посещаемое) </td></tr>
-<tr id="row_11_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman.html" target="_self">Pacman</a></td><td class="desc"></td></tr>
-<tr id="row_12_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_12_" class="arrow" onclick="dynsection.toggleFolder('12_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_window_keeper.html" target="_self">IWindowKeeper</a></td><td class="desc"></td></tr>
-<tr id="row_12_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_state.html" target="_self">GameState</a></td><td class="desc">Взаимодействие врага с объектами лабиринта, что порождает игровые события </td></tr>
-<tr id="row_12_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_select_state.html" target="_self">SelectState</a></td><td class="desc"><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры </td></tr>
-<tr id="row_13_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_menu_game.html" target="_self">MenuGame</a></td><td class="desc"></td></tr>
-<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_my_assets__one.html" target="_self">MyAssets_one</a></td><td class="desc">загрузка текстур, звука, шрифта </td></tr>
-<tr id="row_15_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_15_" class="arrow" onclick="dynsection.toggleFolder('15_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_my_texture.html" target="_self">MyTexture</a></td><td class="desc"></td></tr>
-<tr id="row_15_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_background_texture.html" target="_self">BackgroundTexture</a></td><td class="desc"></td></tr>
-<tr id="row_15_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_enemy_texture.html" target="_self">EnemyTexture</a></td><td class="desc"></td></tr>
-<tr id="row_15_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_food_texture.html" target="_self">FoodTexture</a></td><td class="desc"></td></tr>
-<tr id="row_15_3_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture.html" target="_self">PacmanTexture</a></td><td class="desc"></td></tr>
-<tr id="row_15_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture2.html" target="_self">PacmanTexture2</a></td><td class="desc"></td></tr>
-<tr id="row_16_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_theme_colors.html" target="_self">ThemeColors</a></td><td class="desc"></td></tr>
-<tr id="row_17_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_theme_manager.html" target="_self">ThemeManager</a></td><td class="desc"></td></tr>
+<tr id="row_5_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_lose_life_event.html" target="_self">PacmanLoseLifeEvent</a></td><td class="desc">Событие: потеря жизни у Пакманов. Всего три жизни, когда они кончились, то игра провалена В ресурсах храним пакмана </td></tr>
+<tr id="row_5_3_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_screamer_composite_event.html" target="_self">ScreamerCompositeEvent</a></td><td class="desc">Совмещение двум событий: удаление еды и скример В ресурсах храним сущность, которую хотим удалить </td></tr>
+<tr id="row_5_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_screamer_event.html" target="_self">ScreamerEvent</a></td><td class="desc">Скример </td></tr>
+<tr id="row_5_5_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_win_game.html" target="_self">WinGame</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_6_" class="arrow" onclick="dynsection.toggleFolder('6_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_observer.html" target="_self">IObserver</a></td><td class="desc">Паттерн Observer. Общий интерфейс для наблюдателей </td></tr>
+<tr id="row_6_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_score_count.html" target="_self">ScoreCount</a></td><td class="desc">Наблюдатель - счетчик еды. При съедании еды посылается уведомление и наблюдатель увеличивает счетчик для конкретного игрока </td></tr>
+<tr id="row_7_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_7_" class="arrow" onclick="dynsection.toggleFolder('7_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_select_command.html" target="_self">ISelectCommand</a></td><td class="desc"></td></tr>
+<tr id="row_7_0_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_7_0_" class="arrow" onclick="dynsection.toggleFolder('7_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_change_state_command.html" target="_self">ChangeStateCommand</a></td><td class="desc"></td></tr>
+<tr id="row_7_0_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_exit_command.html" target="_self">ExitCommand</a></td><td class="desc"></td></tr>
+<tr id="row_7_0_1_" class="odd"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_command.html" target="_self">GameCommand</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_8_" class="arrow" onclick="dynsection.toggleFolder('8_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_state.html" target="_self">IState</a></td><td class="desc"></td></tr>
+<tr id="row_8_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_exit_state.html" target="_self">ExitState</a></td><td class="desc">Состояние, которое завершает игры. Для этого в do_step всегда возвращает false -&gt; так <a class="el" href="class_application.html">Application</a> поймет, что надо завершить работу и выйти из бесконечного цикла делегирования своей работы состояниям </td></tr>
+<tr id="row_8_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_state.html" target="_self">GameState</a></td><td class="desc">Взаимодействие врага с объектами лабиринта, что порождает игровые события </td></tr>
+<tr id="row_8_2_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_select_state.html" target="_self">SelectState</a></td><td class="desc"><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры </td></tr>
+<tr id="row_9_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_9_" class="arrow" onclick="dynsection.toggleFolder('9_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_state_manager.html" target="_self">IStateManager</a></td><td class="desc"></td></tr>
+<tr id="row_9_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_application.html" target="_self">Application</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_10_" class="arrow" onclick="dynsection.toggleFolder('10_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitable.html" target="_self">IVisitable</a></td><td class="desc"></td></tr>
+<tr id="row_10_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_dynamic_entity.html" target="_self">IDynamicEntity</a></td><td class="desc">Динамические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; может выполнять какие-то действия </td></tr>
+<tr id="row_10_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_i_static_entity.html" target="_self">IStaticEntity</a></td><td class="desc">Статические сущности, наследник <a class="el" href="class_i_entity.html" title="IEntity любая сущность, которая может быть помощена в лабиринт.">IEntity</a> -&gt; неперемещаемые объекты, с которыми будет взаимодействовать Пакман Чтобы скопировать статические сущности, применяем паттерн Prototype. Для этого создает возможность клонирования </td></tr>
+<tr id="row_11_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_11_" class="arrow" onclick="dynsection.toggleFolder('11_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_visitor.html" target="_self">IVisitor</a></td><td class="desc">Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: <a class="el" href="class_i_visitor.html" title="Паттерн VISITOR для взаимодействия пакмана с объектами игры. Создаем две абстрации: IVisitor (посетит...">IVisitor</a> (посетитель) </td></tr>
+<tr id="row_11_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman.html" target="_self">Pacman</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="odd"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_12_" class="arrow" onclick="dynsection.toggleFolder('12_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_i_window_keeper.html" target="_self">IWindowKeeper</a></td><td class="desc"></td></tr>
+<tr id="row_12_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_game_state.html" target="_self">GameState</a></td><td class="desc">Взаимодействие врага с объектами лабиринта, что порождает игровые события </td></tr>
+<tr id="row_12_1_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_select_state.html" target="_self">SelectState</a></td><td class="desc"><a class="el" href="struct_select_state.html" title="SelectState - состояние, при котором происходит выбор уровня и выход из игры.">SelectState</a> - состояние, при котором происходит выбор уровня и выход из игры </td></tr>
+<tr id="row_13_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_menu_game.html" target="_self">MenuGame</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_my_assets__one.html" target="_self">MyAssets_one</a></td><td class="desc">загрузка текстур, звука, шрифта </td></tr>
+<tr id="row_15_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_15_" class="arrow" onclick="dynsection.toggleFolder('15_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_my_texture.html" target="_self">MyTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_background_texture.html" target="_self">BackgroundTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_enemy_texture.html" target="_self">EnemyTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_2_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_food_texture.html" target="_self">FoodTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture.html" target="_self">PacmanTexture</a></td><td class="desc"></td></tr>
+<tr id="row_15_4_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_pacman_texture2.html" target="_self">PacmanTexture2</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_theme_colors.html" target="_self">ThemeColors</a></td><td class="desc">Менеджер для загрузки цветов через паттер Singletone С помощью set_theme() устанавливается тема приложения: светлая или темная Изначально светлая тема </td></tr>
+<tr id="row_17_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_theme_manager.html" target="_self">ThemeManager</a></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->
diff --git a/assets/docs/html/hierarchy.js b/docs/html/hierarchy.js
similarity index 97%
rename from assets/docs/html/hierarchy.js
rename to docs/html/hierarchy.js
index 0678e0546cb3f62530fa603d5ffe810834d7335c..a0029f0d46a78f54d72a5361638c1f5c0f1cc8a0 100644
--- a/assets/docs/html/hierarchy.js
+++ b/docs/html/hierarchy.js
@@ -34,6 +34,7 @@ var hierarchy =
     [ "IGameEvent", "class_i_game_event.html", [
       [ "DeleteStaticEntity", "class_delete_static_entity.html", null ],
       [ "LostGame", "class_lost_game.html", null ],
+      [ "PacmanLoseLifeEvent", "class_pacman_lose_life_event.html", null ],
       [ "ScreamerCompositeEvent", "class_screamer_composite_event.html", null ],
       [ "ScreamerEvent", "struct_screamer_event.html", null ],
       [ "WinGame", "class_win_game.html", null ]
diff --git a/assets/docs/html/index.html b/docs/html/index.html
similarity index 100%
rename from assets/docs/html/index.html
rename to docs/html/index.html
diff --git a/assets/docs/html/jquery.js b/docs/html/jquery.js
similarity index 100%
rename from assets/docs/html/jquery.js
rename to docs/html/jquery.js
diff --git a/assets/docs/html/minus.svg b/docs/html/minus.svg
similarity index 100%
rename from assets/docs/html/minus.svg
rename to docs/html/minus.svg
diff --git a/assets/docs/html/minusd.svg b/docs/html/minusd.svg
similarity index 100%
rename from assets/docs/html/minusd.svg
rename to docs/html/minusd.svg
diff --git a/assets/docs/html/nav_f.png b/docs/html/nav_f.png
similarity index 100%
rename from assets/docs/html/nav_f.png
rename to docs/html/nav_f.png
diff --git a/assets/docs/html/nav_fd.png b/docs/html/nav_fd.png
similarity index 100%
rename from assets/docs/html/nav_fd.png
rename to docs/html/nav_fd.png
diff --git a/assets/docs/html/nav_g.png b/docs/html/nav_g.png
similarity index 100%
rename from assets/docs/html/nav_g.png
rename to docs/html/nav_g.png
diff --git a/assets/docs/html/nav_h.png b/docs/html/nav_h.png
similarity index 100%
rename from assets/docs/html/nav_h.png
rename to docs/html/nav_h.png
diff --git a/assets/docs/html/nav_hd.png b/docs/html/nav_hd.png
similarity index 100%
rename from assets/docs/html/nav_hd.png
rename to docs/html/nav_hd.png
diff --git a/assets/docs/html/navtree.css b/docs/html/navtree.css
similarity index 100%
rename from assets/docs/html/navtree.css
rename to docs/html/navtree.css
diff --git a/assets/docs/html/navtree.js b/docs/html/navtree.js
similarity index 100%
rename from assets/docs/html/navtree.js
rename to docs/html/navtree.js
diff --git a/assets/docs/html/navtreedata.js b/docs/html/navtreedata.js
similarity index 92%
rename from assets/docs/html/navtreedata.js
rename to docs/html/navtreedata.js
index 1092ec68e4dcdf95a6300d9444feaa092dbe5b4a..cf9d3c16fb61bd79d2af916864bc457285071e8d 100644
--- a/assets/docs/html/navtreedata.js
+++ b/docs/html/navtreedata.js
@@ -32,7 +32,8 @@ var NAVTREE =
       [ "Члены классов", "functions.html", [
         [ "Указатель", "functions.html", null ],
         [ "Функции", "functions_func.html", null ],
-        [ "Переменные", "functions_vars.html", null ]
+        [ "Переменные", "functions_vars.html", null ],
+        [ "Перечисления", "functions_enum.html", null ]
       ] ]
     ] ],
     [ "Файлы", "files.html", [
diff --git a/assets/docs/html/navtreeindex0.js b/docs/html/navtreeindex0.js
similarity index 60%
rename from assets/docs/html/navtreeindex0.js
rename to docs/html/navtreeindex0.js
index a9c0f2cc84239f8033c8167d1b063737312d708a..7b0ef855d62ff0846ef5ce8b4898cdb18c19a45b 100644
--- a/assets/docs/html/navtreeindex0.js
+++ b/docs/html/navtreeindex0.js
@@ -1,27 +1,27 @@
 var NAVTREEINDEX0 =
 {
 "_application_8h_source.html":[1,0,0,0,0,0],
-"_bob_builder_director_8h_source.html":[1,0,0,0,2,0],
-"_button_8h_source.html":[1,0,0,0,4,0,0,0],
-"_context_8h_source.html":[1,0,0,0,3,0],
-"_game_builders_8h_source.html":[1,0,0,0,2,1],
-"_game_state_8h_source.html":[1,0,0,0,7,0],
-"_i_drawable_8h_source.html":[1,0,0,0,4,3],
-"_i_entity_8h_source.html":[1,0,0,0,4,1,0],
-"_i_game_builder_8h_source.html":[1,0,0,0,2,2],
-"_i_game_event_8h_source.html":[1,0,0,0,5,0],
-"_i_observer_8h_source.html":[1,0,0,0,4,1,1],
-"_i_select_command_8h_source.html":[1,0,0,0,6,0],
-"_i_state_8h_source.html":[1,0,0,0,7,1],
-"_i_window_keeper_8h_source.html":[1,0,0,0,7,2],
-"_maze_8h_source.html":[1,0,0,0,4,2,0],
-"_menu_8h_source.html":[1,0,0,0,4,0,1,0],
-"_menu_in_game_8h_source.html":[1,0,0,0,4,0,1,1],
-"_my_texture_8h_source.html":[1,0,0,0,4,1,2],
-"_pacman_8h_source.html":[1,0,0,0,4,1,3],
-"_select_state_8h_source.html":[1,0,0,0,7,3],
-"_texture___sound_8h_source.html":[1,0,0,0,1,0],
-"_theme_manager_8h_source.html":[1,0,0,0,7,4],
+"_bob_builder_director_8h_source.html":[1,0,0,0,1,0],
+"_button_8h_source.html":[1,0,0,0,3,0,0,0],
+"_context_8h_source.html":[1,0,0,0,2,0],
+"_game_builders_8h_source.html":[1,0,0,0,1,1],
+"_game_state_8h_source.html":[1,0,0,0,6,0],
+"_i_drawable_8h_source.html":[1,0,0,0,3,3],
+"_i_entity_8h_source.html":[1,0,0,0,3,1,0],
+"_i_game_builder_8h_source.html":[1,0,0,0,1,2],
+"_i_game_event_8h_source.html":[1,0,0,0,4,0],
+"_i_observer_8h_source.html":[1,0,0,0,3,1,1],
+"_i_select_command_8h_source.html":[1,0,0,0,5,0],
+"_i_state_8h_source.html":[1,0,0,0,6,1],
+"_i_window_keeper_8h_source.html":[1,0,0,0,6,2],
+"_maze_8h_source.html":[1,0,0,0,3,2,0],
+"_menu_8h_source.html":[1,0,0,0,3,0,1,0],
+"_menu_in_game_8h_source.html":[1,0,0,0,3,0,1,1],
+"_my_texture_8h_source.html":[1,0,0,0,7,0],
+"_pacman_8h_source.html":[1,0,0,0,3,1,2],
+"_select_state_8h_source.html":[1,0,0,0,6,3],
+"_texture___sound_8h_source.html":[1,0,0,0,7,1],
+"_theme_manager_8h_source.html":[1,0,0,0,7,2],
 "annotated.html":[0,0],
 "class_application.html":[0,0,0],
 "class_background_texture.html":[0,0,1],
@@ -57,10 +57,16 @@ var NAVTREEINDEX0 =
 "class_game_builder_director.html":[0,0,15],
 "class_game_command.html":[0,0,16],
 "class_game_state.html":[0,0,18],
-"class_game_state.html#a180391dfe966058da0389146534e66d0":[0,0,18,1],
-"class_game_state.html#a2c36ada0cae89f91d956e2c91b070893":[0,0,18,2],
-"class_game_state.html#a3610da76344c5c2cbcc5921f877226dc":[0,0,18,3],
-"class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153":[0,0,18,0],
+"class_game_state.html#a180391dfe966058da0389146534e66d0":[0,0,18,2],
+"class_game_state.html#a2c36ada0cae89f91d956e2c91b070893":[0,0,18,4],
+"class_game_state.html#a3610da76344c5c2cbcc5921f877226dc":[0,0,18,5],
+"class_game_state.html#a8538d9088ff9371e69e19ad6661b6391":[0,0,18,3],
+"class_game_state.html#a90b51ee7191c9fd1fc5e207bc35f1153":[0,0,18,1],
+"class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a":[0,0,18,0],
+"class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aa92e56d8195a9dd45a9b90aacf82886b1":[0,0,18,0,3],
+"class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aaa2e8a4a15de815a5b9e3830fa3b986d6":[0,0,18,0,1],
+"class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aab50339a10e1de285ac99d4c3990b8693":[0,0,18,0,0],
+"class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128aac6daca30aef2af1d72715733825806a3":[0,0,18,0,2],
 "class_i_entity.html":[0,0,21],
 "class_i_game_builder.html":[0,0,22],
 "class_i_game_event.html":[0,0,23],
@@ -84,41 +90,43 @@ var NAVTREEINDEX0 =
 "class_menu_game.html":[0,0,37],
 "class_my_texture.html":[0,0,39],
 "class_pacman.html":[0,0,40],
-"class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2":[0,0,40,0],
+"class_pacman.html#a4000caf3daa707f177de875075a72c83":[0,0,40,0],
 "class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8":[0,0,40,1],
 "class_pacman.html#ac4b928c45d22d9814a02b7a621c5ae7c":[0,0,40,3],
 "class_pacman.html#ad41930fae2878425f80e4fea614f3a3d":[0,0,40,2],
-"class_pacman_texture.html":[0,0,41],
-"class_pacman_texture2.html":[0,0,42],
-"class_pass.html":[0,0,43],
-"class_room.html":[0,0,44],
-"class_score_count.html":[0,0,45],
-"class_score_count.html#ac3920f1272e0d1df949eea48b04896c1":[0,0,45,0],
-"class_screamer_composite_event.html":[0,0,46],
-"class_simple_builder.html":[0,0,49],
-"class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa":[0,0,49,1],
-"class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226":[0,0,49,0],
-"class_theme_manager.html":[0,0,51],
-"class_wall.html":[0,0,52],
-"class_win_game.html":[0,0,53],
+"class_pacman_lose_life_event.html":[0,0,41],
+"class_pacman_texture.html":[0,0,42],
+"class_pacman_texture2.html":[0,0,43],
+"class_pass.html":[0,0,44],
+"class_room.html":[0,0,45],
+"class_score_count.html":[0,0,46],
+"class_score_count.html#ac3920f1272e0d1df949eea48b04896c1":[0,0,46,0],
+"class_screamer_composite_event.html":[0,0,47],
+"class_simple_builder.html":[0,0,50],
+"class_simple_builder.html#aa1c6b39ff7d52a0f8cf811ef91d1feaa":[0,0,50,1],
+"class_simple_builder.html#ad02dcc4d85cec356f6169ce938242226":[0,0,50,0],
+"class_theme_manager.html":[0,0,52],
+"class_wall.html":[0,0,53],
+"class_win_game.html":[0,0,54],
 "classes.html":[0,1],
 "dir_059b8d327d09617c411023af730a36c0.html":[1,0,0,0],
-"dir_0620867b96a9d6681889b0cd51382a82.html":[1,0,0,0,4],
-"dir_1ec01c3d118a92a59cb64fdd508b6eff.html":[1,0,0,0,4,0],
-"dir_35461bf8feb23080c5804a15bfe2f4aa.html":[1,0,0,0,5],
-"dir_36512145787243429e2d8387a78e16b9.html":[1,0,0,0,4,1],
-"dir_592f7e24f8e0510a8dca7f53521ecb86.html":[1,0,0,0,3],
-"dir_5ac36eadb58257c11ffd1fe0c36f8d44.html":[1,0,0,0,1],
-"dir_a2a010966b562bcf41b620d047d98a69.html":[1,0,0,0,4,0,1],
+"dir_0620867b96a9d6681889b0cd51382a82.html":[1,0,0,0,3],
+"dir_1ec01c3d118a92a59cb64fdd508b6eff.html":[1,0,0,0,3,0],
+"dir_35461bf8feb23080c5804a15bfe2f4aa.html":[1,0,0,0,4],
+"dir_36512145787243429e2d8387a78e16b9.html":[1,0,0,0,3,1],
+"dir_592f7e24f8e0510a8dca7f53521ecb86.html":[1,0,0,0,2],
+"dir_a2a010966b562bcf41b620d047d98a69.html":[1,0,0,0,3,0,1],
+"dir_ac1e7d56941449703ea96678bf1e9a08.html":[1,0,0,0,7],
 "dir_b2f33c71d4aa5e7af42a1ca61ff5af1b.html":[1,0,0],
-"dir_dbd25d32f158f8fe0ac7baf637feb24d.html":[1,0,0,0,4,2],
-"dir_dd6fd865ae52f5fee8c57e83b77289db.html":[1,0,0,0,6],
-"dir_e31f3142f437cc9199f6e7da6a0351a8.html":[1,0,0,0,4,0,0],
-"dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html":[1,0,0,0,2],
-"dir_eb37150066857c324af7acaa5f9b7e6c.html":[1,0,0,0,7],
+"dir_dbd25d32f158f8fe0ac7baf637feb24d.html":[1,0,0,0,3,2],
+"dir_dd6fd865ae52f5fee8c57e83b77289db.html":[1,0,0,0,5],
+"dir_e31f3142f437cc9199f6e7da6a0351a8.html":[1,0,0,0,3,0,0],
+"dir_e555ea8018a5abfa1e2fbc7e0b1e63c9.html":[1,0,0,0,1],
+"dir_eb37150066857c324af7acaa5f9b7e6c.html":[1,0,0,0,6],
 "dir_f4241d05c30ca25826da7a6464eec250.html":[1,0,0,0,0],
 "files.html":[1,0],
 "functions.html":[0,3,0],
+"functions_enum.html":[0,3,3],
 "functions_func.html":[0,3,1],
 "functions_vars.html":[0,3,2],
 "hierarchy.html":[0,2],
@@ -131,10 +139,10 @@ var NAVTREEINDEX0 =
 "struct_i_state_manager.html":[0,0,29],
 "struct_i_static_entity.html":[0,0,30],
 "struct_my_assets__one.html":[0,0,38],
-"struct_screamer_event.html":[0,0,47],
-"struct_select_state.html":[0,0,48],
-"struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7":[0,0,48,1],
-"struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562":[0,0,48,0],
-"struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243":[0,0,48,2],
-"struct_theme_colors.html":[0,0,50]
+"struct_screamer_event.html":[0,0,48],
+"struct_select_state.html":[0,0,49],
+"struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7":[0,0,49,1],
+"struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562":[0,0,49,0],
+"struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243":[0,0,49,2],
+"struct_theme_colors.html":[0,0,51]
 };
diff --git a/assets/docs/html/open.png b/docs/html/open.png
similarity index 100%
rename from assets/docs/html/open.png
rename to docs/html/open.png
diff --git a/assets/docs/html/plus.svg b/docs/html/plus.svg
similarity index 100%
rename from assets/docs/html/plus.svg
rename to docs/html/plus.svg
diff --git a/assets/docs/html/plusd.svg b/docs/html/plusd.svg
similarity index 100%
rename from assets/docs/html/plusd.svg
rename to docs/html/plusd.svg
diff --git a/assets/docs/html/resize.js b/docs/html/resize.js
similarity index 100%
rename from assets/docs/html/resize.js
rename to docs/html/resize.js
diff --git a/assets/docs/html/search/all_0.js b/docs/html/search/all_0.js
similarity index 100%
rename from assets/docs/html/search/all_0.js
rename to docs/html/search/all_0.js
diff --git a/assets/docs/html/search/all_1.js b/docs/html/search/all_1.js
similarity index 100%
rename from assets/docs/html/search/all_1.js
rename to docs/html/search/all_1.js
diff --git a/assets/docs/html/search/all_10.js b/docs/html/search/all_10.js
similarity index 100%
rename from assets/docs/html/search/all_10.js
rename to docs/html/search/all_10.js
diff --git a/assets/docs/html/search/all_11.js b/docs/html/search/all_11.js
similarity index 100%
rename from assets/docs/html/search/all_11.js
rename to docs/html/search/all_11.js
diff --git a/assets/docs/html/search/all_12.js b/docs/html/search/all_12.js
similarity index 100%
rename from assets/docs/html/search/all_12.js
rename to docs/html/search/all_12.js
diff --git a/assets/docs/html/search/all_13.js b/docs/html/search/all_13.js
similarity index 100%
rename from assets/docs/html/search/all_13.js
rename to docs/html/search/all_13.js
diff --git a/assets/docs/html/search/all_2.js b/docs/html/search/all_2.js
similarity index 100%
rename from assets/docs/html/search/all_2.js
rename to docs/html/search/all_2.js
diff --git a/assets/docs/html/search/all_3.js b/docs/html/search/all_3.js
similarity index 100%
rename from assets/docs/html/search/all_3.js
rename to docs/html/search/all_3.js
diff --git a/assets/docs/html/search/all_4.js b/docs/html/search/all_4.js
similarity index 100%
rename from assets/docs/html/search/all_4.js
rename to docs/html/search/all_4.js
diff --git a/assets/docs/html/search/all_5.js b/docs/html/search/all_5.js
similarity index 100%
rename from assets/docs/html/search/all_5.js
rename to docs/html/search/all_5.js
diff --git a/assets/docs/html/search/all_6.js b/docs/html/search/all_6.js
similarity index 100%
rename from assets/docs/html/search/all_6.js
rename to docs/html/search/all_6.js
diff --git a/docs/html/search/all_7.js b/docs/html/search/all_7.js
new file mode 100644
index 0000000000000000000000000000000000000000..2887213f8a77b6eaede3637149187da20050469e
--- /dev/null
+++ b/docs/html/search/all_7.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['handle_0',['handle',['../class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43',1,'DeleteStaticEntity']]],
+  ['handle_5fscreamer_1',['handle_screamer',['../class_game_state.html#a8538d9088ff9371e69e19ad6661b6391',1,'GameState']]]
+];
diff --git a/assets/docs/html/search/all_8.js b/docs/html/search/all_8.js
similarity index 100%
rename from assets/docs/html/search/all_8.js
rename to docs/html/search/all_8.js
diff --git a/assets/docs/html/search/all_9.js b/docs/html/search/all_9.js
similarity index 100%
rename from assets/docs/html/search/all_9.js
rename to docs/html/search/all_9.js
diff --git a/assets/docs/html/search/all_a.js b/docs/html/search/all_a.js
similarity index 68%
rename from assets/docs/html/search/all_a.js
rename to docs/html/search/all_a.js
index f9143e01657c7e7331b893ca8ec24567c5c0b770..563580be55f380606c9f12687b74bffc83027e5b 100644
--- a/assets/docs/html/search/all_a.js
+++ b/docs/html/search/all_a.js
@@ -5,6 +5,7 @@ var searchData=
   ['menu_2',['Menu',['../class_menu.html',1,'Menu'],['../class_menu.html#aa9374182bab451e7f7bb8cc02b0db0ee',1,'Menu::Menu()']]],
   ['menugame_3',['MenuGame',['../class_menu_game.html',1,'']]],
   ['move_4',['move',['../class_pacman.html#aa957cbb7b0ad1bc1f6ef2aac82423cd8',1,'Pacman']]],
-  ['myassets_5fone_5',['MyAssets_one',['../struct_my_assets__one.html',1,'']]],
-  ['mytexture_6',['MyTexture',['../class_my_texture.html',1,'']]]
+  ['music_5',['Music',['../class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a',1,'GameState']]],
+  ['myassets_5fone_6',['MyAssets_one',['../struct_my_assets__one.html',1,'']]],
+  ['mytexture_7',['MyTexture',['../class_my_texture.html',1,'']]]
 ];
diff --git a/assets/docs/html/search/all_b.js b/docs/html/search/all_b.js
similarity index 100%
rename from assets/docs/html/search/all_b.js
rename to docs/html/search/all_b.js
diff --git a/docs/html/search/all_c.js b/docs/html/search/all_c.js
new file mode 100644
index 0000000000000000000000000000000000000000..6666cf5349e498a94ee63982d89c90a9ef2d58af
--- /dev/null
+++ b/docs/html/search/all_c.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+  ['pacman_0',['Pacman',['../class_pacman.html',1,'Pacman'],['../class_pacman.html#a4000caf3daa707f177de875075a72c83',1,'Pacman::Pacman()']]],
+  ['pacmanloselifeevent_1',['PacmanLoseLifeEvent',['../class_pacman_lose_life_event.html',1,'']]],
+  ['pacmantexture_2',['PacmanTexture',['../class_pacman_texture.html',1,'']]],
+  ['pacmantexture2_3',['PacmanTexture2',['../class_pacman_texture2.html',1,'']]],
+  ['pass_4',['Pass',['../class_pass.html',1,'']]],
+  ['prepare_5ffor_5fdrawing_5',['prepare_for_drawing',['../class_pacman.html#ad41930fae2878425f80e4fea614f3a3d',1,'Pacman']]],
+  ['process_5fmouse_6',['process_mouse',['../class_menu.html#a9174cfc103dba0ee0613196385691872',1,'Menu']]]
+];
diff --git a/assets/docs/html/search/all_d.js b/docs/html/search/all_d.js
similarity index 100%
rename from assets/docs/html/search/all_d.js
rename to docs/html/search/all_d.js
diff --git a/assets/docs/html/search/all_e.js b/docs/html/search/all_e.js
similarity index 100%
rename from assets/docs/html/search/all_e.js
rename to docs/html/search/all_e.js
diff --git a/assets/docs/html/search/all_f.js b/docs/html/search/all_f.js
similarity index 100%
rename from assets/docs/html/search/all_f.js
rename to docs/html/search/all_f.js
diff --git a/assets/docs/html/search/classes_0.js b/docs/html/search/classes_0.js
similarity index 100%
rename from assets/docs/html/search/classes_0.js
rename to docs/html/search/classes_0.js
diff --git a/assets/docs/html/search/classes_1.js b/docs/html/search/classes_1.js
similarity index 100%
rename from assets/docs/html/search/classes_1.js
rename to docs/html/search/classes_1.js
diff --git a/assets/docs/html/search/classes_2.js b/docs/html/search/classes_2.js
similarity index 100%
rename from assets/docs/html/search/classes_2.js
rename to docs/html/search/classes_2.js
diff --git a/assets/docs/html/search/classes_3.js b/docs/html/search/classes_3.js
similarity index 100%
rename from assets/docs/html/search/classes_3.js
rename to docs/html/search/classes_3.js
diff --git a/assets/docs/html/search/classes_4.js b/docs/html/search/classes_4.js
similarity index 100%
rename from assets/docs/html/search/classes_4.js
rename to docs/html/search/classes_4.js
diff --git a/assets/docs/html/search/classes_5.js b/docs/html/search/classes_5.js
similarity index 100%
rename from assets/docs/html/search/classes_5.js
rename to docs/html/search/classes_5.js
diff --git a/assets/docs/html/search/classes_6.js b/docs/html/search/classes_6.js
similarity index 100%
rename from assets/docs/html/search/classes_6.js
rename to docs/html/search/classes_6.js
diff --git a/assets/docs/html/search/classes_7.js b/docs/html/search/classes_7.js
similarity index 100%
rename from assets/docs/html/search/classes_7.js
rename to docs/html/search/classes_7.js
diff --git a/assets/docs/html/search/classes_8.js b/docs/html/search/classes_8.js
similarity index 100%
rename from assets/docs/html/search/classes_8.js
rename to docs/html/search/classes_8.js
diff --git a/assets/docs/html/search/classes_9.js b/docs/html/search/classes_9.js
similarity index 100%
rename from assets/docs/html/search/classes_9.js
rename to docs/html/search/classes_9.js
diff --git a/docs/html/search/classes_a.js b/docs/html/search/classes_a.js
new file mode 100644
index 0000000000000000000000000000000000000000..ac6bd4b1d4124bac94f798a2b28660c8f964a54f
--- /dev/null
+++ b/docs/html/search/classes_a.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+  ['pacman_0',['Pacman',['../class_pacman.html',1,'']]],
+  ['pacmanloselifeevent_1',['PacmanLoseLifeEvent',['../class_pacman_lose_life_event.html',1,'']]],
+  ['pacmantexture_2',['PacmanTexture',['../class_pacman_texture.html',1,'']]],
+  ['pacmantexture2_3',['PacmanTexture2',['../class_pacman_texture2.html',1,'']]],
+  ['pass_4',['Pass',['../class_pass.html',1,'']]]
+];
diff --git a/assets/docs/html/search/classes_b.js b/docs/html/search/classes_b.js
similarity index 100%
rename from assets/docs/html/search/classes_b.js
rename to docs/html/search/classes_b.js
diff --git a/assets/docs/html/search/classes_c.js b/docs/html/search/classes_c.js
similarity index 100%
rename from assets/docs/html/search/classes_c.js
rename to docs/html/search/classes_c.js
diff --git a/assets/docs/html/search/classes_d.js b/docs/html/search/classes_d.js
similarity index 100%
rename from assets/docs/html/search/classes_d.js
rename to docs/html/search/classes_d.js
diff --git a/assets/docs/html/search/classes_e.js b/docs/html/search/classes_e.js
similarity index 100%
rename from assets/docs/html/search/classes_e.js
rename to docs/html/search/classes_e.js
diff --git a/assets/docs/html/search/close.svg b/docs/html/search/close.svg
similarity index 100%
rename from assets/docs/html/search/close.svg
rename to docs/html/search/close.svg
diff --git a/docs/html/search/enums_0.js b/docs/html/search/enums_0.js
new file mode 100644
index 0000000000000000000000000000000000000000..1e737cf97eaec60c19ef014a1f2f4a7518eb9490
--- /dev/null
+++ b/docs/html/search/enums_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+  ['music_0',['Music',['../class_game_state.html#aa34cf16f95e6ee5a539a5865e7f2128a',1,'GameState']]]
+];
diff --git a/assets/docs/html/search/functions_0.js b/docs/html/search/functions_0.js
similarity index 100%
rename from assets/docs/html/search/functions_0.js
rename to docs/html/search/functions_0.js
diff --git a/assets/docs/html/search/functions_1.js b/docs/html/search/functions_1.js
similarity index 100%
rename from assets/docs/html/search/functions_1.js
rename to docs/html/search/functions_1.js
diff --git a/assets/docs/html/search/functions_2.js b/docs/html/search/functions_2.js
similarity index 100%
rename from assets/docs/html/search/functions_2.js
rename to docs/html/search/functions_2.js
diff --git a/assets/docs/html/search/functions_3.js b/docs/html/search/functions_3.js
similarity index 100%
rename from assets/docs/html/search/functions_3.js
rename to docs/html/search/functions_3.js
diff --git a/assets/docs/html/search/functions_4.js b/docs/html/search/functions_4.js
similarity index 100%
rename from assets/docs/html/search/functions_4.js
rename to docs/html/search/functions_4.js
diff --git a/assets/docs/html/search/functions_5.js b/docs/html/search/functions_5.js
similarity index 100%
rename from assets/docs/html/search/functions_5.js
rename to docs/html/search/functions_5.js
diff --git a/docs/html/search/functions_6.js b/docs/html/search/functions_6.js
new file mode 100644
index 0000000000000000000000000000000000000000..2887213f8a77b6eaede3637149187da20050469e
--- /dev/null
+++ b/docs/html/search/functions_6.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+  ['handle_0',['handle',['../class_delete_static_entity.html#aadc4bbbd570e947fca78e222dbfacb43',1,'DeleteStaticEntity']]],
+  ['handle_5fscreamer_1',['handle_screamer',['../class_game_state.html#a8538d9088ff9371e69e19ad6661b6391',1,'GameState']]]
+];
diff --git a/assets/docs/html/search/functions_7.js b/docs/html/search/functions_7.js
similarity index 100%
rename from assets/docs/html/search/functions_7.js
rename to docs/html/search/functions_7.js
diff --git a/assets/docs/html/search/functions_8.js b/docs/html/search/functions_8.js
similarity index 100%
rename from assets/docs/html/search/functions_8.js
rename to docs/html/search/functions_8.js
diff --git a/assets/docs/html/search/functions_9.js b/docs/html/search/functions_9.js
similarity index 72%
rename from assets/docs/html/search/functions_9.js
rename to docs/html/search/functions_9.js
index d2007405c9842d8bbb46eb4973f53d187166218b..38edb6f17f1d706ef8be5a56717ea0405c9658d0 100644
--- a/assets/docs/html/search/functions_9.js
+++ b/docs/html/search/functions_9.js
@@ -1,6 +1,6 @@
 var searchData=
 [
-  ['pacman_0',['Pacman',['../class_pacman.html#a72fa328d22c8fa39cf6b941ec10cd8a2',1,'Pacman']]],
+  ['pacman_0',['Pacman',['../class_pacman.html#a4000caf3daa707f177de875075a72c83',1,'Pacman']]],
   ['prepare_5ffor_5fdrawing_1',['prepare_for_drawing',['../class_pacman.html#ad41930fae2878425f80e4fea614f3a3d',1,'Pacman']]],
   ['process_5fmouse_2',['process_mouse',['../class_menu.html#a9174cfc103dba0ee0613196385691872',1,'Menu']]]
 ];
diff --git a/assets/docs/html/search/functions_a.js b/docs/html/search/functions_a.js
similarity index 100%
rename from assets/docs/html/search/functions_a.js
rename to docs/html/search/functions_a.js
diff --git a/assets/docs/html/search/functions_b.js b/docs/html/search/functions_b.js
similarity index 100%
rename from assets/docs/html/search/functions_b.js
rename to docs/html/search/functions_b.js
diff --git a/assets/docs/html/search/functions_c.js b/docs/html/search/functions_c.js
similarity index 100%
rename from assets/docs/html/search/functions_c.js
rename to docs/html/search/functions_c.js
diff --git a/assets/docs/html/search/functions_d.js b/docs/html/search/functions_d.js
similarity index 100%
rename from assets/docs/html/search/functions_d.js
rename to docs/html/search/functions_d.js
diff --git a/assets/docs/html/search/functions_e.js b/docs/html/search/functions_e.js
similarity index 100%
rename from assets/docs/html/search/functions_e.js
rename to docs/html/search/functions_e.js
diff --git a/assets/docs/html/search/mag.svg b/docs/html/search/mag.svg
similarity index 100%
rename from assets/docs/html/search/mag.svg
rename to docs/html/search/mag.svg
diff --git a/assets/docs/html/search/mag_d.svg b/docs/html/search/mag_d.svg
similarity index 100%
rename from assets/docs/html/search/mag_d.svg
rename to docs/html/search/mag_d.svg
diff --git a/assets/docs/html/search/mag_sel.svg b/docs/html/search/mag_sel.svg
similarity index 100%
rename from assets/docs/html/search/mag_sel.svg
rename to docs/html/search/mag_sel.svg
diff --git a/assets/docs/html/search/mag_seld.svg b/docs/html/search/mag_seld.svg
similarity index 100%
rename from assets/docs/html/search/mag_seld.svg
rename to docs/html/search/mag_seld.svg
diff --git a/assets/docs/html/search/search.css b/docs/html/search/search.css
similarity index 100%
rename from assets/docs/html/search/search.css
rename to docs/html/search/search.css
diff --git a/assets/docs/html/search/search.js b/docs/html/search/search.js
similarity index 100%
rename from assets/docs/html/search/search.js
rename to docs/html/search/search.js
diff --git a/assets/docs/html/search/searchdata.js b/docs/html/search/searchdata.js
similarity index 72%
rename from assets/docs/html/search/searchdata.js
rename to docs/html/search/searchdata.js
index cca42bf727fe4668b6eae0666067262172680b7f..4b2e91a0ce3045e312b158c8fd6a10348331cb97 100644
--- a/assets/docs/html/search/searchdata.js
+++ b/docs/html/search/searchdata.js
@@ -3,7 +3,8 @@ var indexSectionsWithContent =
   0: "abcdefghilmoprstuvw~",
   1: "abcdefgilmprstw",
   2: "acdefghmoprsuv~",
-  3: "m"
+  3: "m",
+  4: "m"
 };
 
 var indexSectionNames =
@@ -11,7 +12,8 @@ var indexSectionNames =
   0: "all",
   1: "classes",
   2: "functions",
-  3: "variables"
+  3: "variables",
+  4: "enums"
 };
 
 var indexSectionLabels =
@@ -19,6 +21,7 @@ var indexSectionLabels =
   0: "Указатель",
   1: "Классы",
   2: "Функции",
-  3: "Переменные"
+  3: "Переменные",
+  4: "Перечисления"
 };
 
diff --git a/assets/docs/html/search/variables_0.js b/docs/html/search/variables_0.js
similarity index 100%
rename from assets/docs/html/search/variables_0.js
rename to docs/html/search/variables_0.js
diff --git a/assets/docs/html/splitbar.png b/docs/html/splitbar.png
similarity index 100%
rename from assets/docs/html/splitbar.png
rename to docs/html/splitbar.png
diff --git a/assets/docs/html/splitbard.png b/docs/html/splitbard.png
similarity index 100%
rename from assets/docs/html/splitbard.png
rename to docs/html/splitbard.png
diff --git a/assets/docs/html/struct_game_context-members.html b/docs/html/struct_game_context-members.html
similarity index 100%
rename from assets/docs/html/struct_game_context-members.html
rename to docs/html/struct_game_context-members.html
diff --git a/assets/docs/html/struct_game_context.html b/docs/html/struct_game_context.html
similarity index 100%
rename from assets/docs/html/struct_game_context.html
rename to docs/html/struct_game_context.html
diff --git a/assets/docs/html/struct_i_drawable-members.html b/docs/html/struct_i_drawable-members.html
similarity index 100%
rename from assets/docs/html/struct_i_drawable-members.html
rename to docs/html/struct_i_drawable-members.html
diff --git a/assets/docs/html/struct_i_drawable.html b/docs/html/struct_i_drawable.html
similarity index 100%
rename from assets/docs/html/struct_i_drawable.html
rename to docs/html/struct_i_drawable.html
diff --git a/assets/docs/html/struct_i_drawable.png b/docs/html/struct_i_drawable.png
similarity index 100%
rename from assets/docs/html/struct_i_drawable.png
rename to docs/html/struct_i_drawable.png
diff --git a/assets/docs/html/struct_i_dynamic_entity-members.html b/docs/html/struct_i_dynamic_entity-members.html
similarity index 100%
rename from assets/docs/html/struct_i_dynamic_entity-members.html
rename to docs/html/struct_i_dynamic_entity-members.html
diff --git a/assets/docs/html/struct_i_dynamic_entity.html b/docs/html/struct_i_dynamic_entity.html
similarity index 100%
rename from assets/docs/html/struct_i_dynamic_entity.html
rename to docs/html/struct_i_dynamic_entity.html
diff --git a/assets/docs/html/struct_i_dynamic_entity.png b/docs/html/struct_i_dynamic_entity.png
similarity index 100%
rename from assets/docs/html/struct_i_dynamic_entity.png
rename to docs/html/struct_i_dynamic_entity.png
diff --git a/assets/docs/html/struct_i_preparable-members.html b/docs/html/struct_i_preparable-members.html
similarity index 100%
rename from assets/docs/html/struct_i_preparable-members.html
rename to docs/html/struct_i_preparable-members.html
diff --git a/assets/docs/html/struct_i_preparable.html b/docs/html/struct_i_preparable.html
similarity index 100%
rename from assets/docs/html/struct_i_preparable.html
rename to docs/html/struct_i_preparable.html
diff --git a/assets/docs/html/struct_i_preparable.png b/docs/html/struct_i_preparable.png
similarity index 100%
rename from assets/docs/html/struct_i_preparable.png
rename to docs/html/struct_i_preparable.png
diff --git a/assets/docs/html/struct_i_state_manager-members.html b/docs/html/struct_i_state_manager-members.html
similarity index 100%
rename from assets/docs/html/struct_i_state_manager-members.html
rename to docs/html/struct_i_state_manager-members.html
diff --git a/assets/docs/html/struct_i_state_manager.html b/docs/html/struct_i_state_manager.html
similarity index 100%
rename from assets/docs/html/struct_i_state_manager.html
rename to docs/html/struct_i_state_manager.html
diff --git a/assets/docs/html/struct_i_state_manager.png b/docs/html/struct_i_state_manager.png
similarity index 100%
rename from assets/docs/html/struct_i_state_manager.png
rename to docs/html/struct_i_state_manager.png
diff --git a/assets/docs/html/struct_i_static_entity-members.html b/docs/html/struct_i_static_entity-members.html
similarity index 100%
rename from assets/docs/html/struct_i_static_entity-members.html
rename to docs/html/struct_i_static_entity-members.html
diff --git a/assets/docs/html/struct_i_static_entity.html b/docs/html/struct_i_static_entity.html
similarity index 100%
rename from assets/docs/html/struct_i_static_entity.html
rename to docs/html/struct_i_static_entity.html
diff --git a/assets/docs/html/struct_i_static_entity.png b/docs/html/struct_i_static_entity.png
similarity index 100%
rename from assets/docs/html/struct_i_static_entity.png
rename to docs/html/struct_i_static_entity.png
diff --git a/assets/docs/html/struct_my_assets__one-members.html b/docs/html/struct_my_assets__one-members.html
similarity index 67%
rename from assets/docs/html/struct_my_assets__one-members.html
rename to docs/html/struct_my_assets__one-members.html
index bae1d1c9c12dabec45789df8a20cdedf04fbd07d..6abdca904c0f078634db2bc277fd3eb8caeb7758 100644
--- a/assets/docs/html/struct_my_assets__one-members.html
+++ b/docs/html/struct_my_assets__one-members.html
@@ -108,14 +108,15 @@ $(function(){initNavTree('struct_my_assets__one.html',''); initResizable(true);
 
 <p>Полный список членов класса <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>, включая наследуемые из базового класса</p>
 <table class="directory">
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetFont</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetSceamer</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetScreamerTexture</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetSound</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetSoundInGame</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetSoundLost</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetSoundWin</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>MyAssets_one</b>()=delete (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetBackgroundTexture</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetFont</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetSceamer</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetScreamerTexture</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetSound</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetSoundInGame</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetSoundLost</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetSoundWin</b>() (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MyAssets_one</b>()=delete (определено в <a class="el" href="struct_my_assets__one.html">MyAssets_one</a>)</td><td class="entry"><a class="el" href="struct_my_assets__one.html">MyAssets_one</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
diff --git a/assets/docs/html/struct_my_assets__one.html b/docs/html/struct_my_assets__one.html
similarity index 93%
rename from assets/docs/html/struct_my_assets__one.html
rename to docs/html/struct_my_assets__one.html
index dabf2bca1da828e70ee202afaad03b474c25975c..5d91a90985bbdc945985a37ce91f44f2bead2d0a 100644
--- a/assets/docs/html/struct_my_assets__one.html
+++ b/docs/html/struct_my_assets__one.html
@@ -122,6 +122,9 @@ static sf::Font &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetF
 <tr class="memitem:aff97e0aa7085508f883cb455c2b2132c" id="r_aff97e0aa7085508f883cb455c2b2132c"><td class="memItemLeft" align="right" valign="top"><a id="aff97e0aa7085508f883cb455c2b2132c" name="aff97e0aa7085508f883cb455c2b2132c"></a>
 static sf::Texture &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetScreamerTexture</b> ()</td></tr>
 <tr class="separator:aff97e0aa7085508f883cb455c2b2132c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28f0f887d3916fb45e6e5701e81f3259" id="r_a28f0f887d3916fb45e6e5701e81f3259"><td class="memItemLeft" align="right" valign="top"><a id="a28f0f887d3916fb45e6e5701e81f3259" name="a28f0f887d3916fb45e6e5701e81f3259"></a>
+static sf::Texture &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetBackgroundTexture</b> ()</td></tr>
+<tr class="separator:a28f0f887d3916fb45e6e5701e81f3259"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a79a84a79fc7d086ef7967d5ff961fee1" id="r_a79a84a79fc7d086ef7967d5ff961fee1"><td class="memItemLeft" align="right" valign="top"><a id="a79a84a79fc7d086ef7967d5ff961fee1" name="a79a84a79fc7d086ef7967d5ff961fee1"></a>
 static sf::SoundBuffer &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>GetSound</b> ()</td></tr>
 <tr class="separator:a79a84a79fc7d086ef7967d5ff961fee1"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -141,8 +144,8 @@ static sf::SoundBuffer &amp;&#160;</td><td class="memItemRight" valign="bottom">
 <a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
 <div class="textblock"><p>загрузка текстур, звука, шрифта </p>
 </div><hr/>Объявления и описания членов структур находятся в файлах:<ul>
-<li>source/application/Assets/<a class="el" href="_texture___sound_8h_source.html">Texture_Sound.h</a></li>
-<li>source/application/Assets/<b>Texture_Sound.cpp</b></li>
+<li>source/application/Utilities/<a class="el" href="_texture___sound_8h_source.html">Texture_Sound.h</a></li>
+<li>source/application/Utilities/<b>Texture_Sound.cpp</b></li>
 </ul>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/struct_screamer_event-members.html b/docs/html/struct_screamer_event-members.html
similarity index 100%
rename from assets/docs/html/struct_screamer_event-members.html
rename to docs/html/struct_screamer_event-members.html
diff --git a/assets/docs/html/struct_screamer_event.html b/docs/html/struct_screamer_event.html
similarity index 100%
rename from assets/docs/html/struct_screamer_event.html
rename to docs/html/struct_screamer_event.html
diff --git a/assets/docs/html/struct_screamer_event.png b/docs/html/struct_screamer_event.png
similarity index 100%
rename from assets/docs/html/struct_screamer_event.png
rename to docs/html/struct_screamer_event.png
diff --git a/assets/docs/html/struct_select_state-members.html b/docs/html/struct_select_state-members.html
similarity index 85%
rename from assets/docs/html/struct_select_state-members.html
rename to docs/html/struct_select_state-members.html
index 287dc0d459aa9b57de061cacb9bf6de393297613..f8a60162d940bc523df22a7941241f90e74ff22d 100644
--- a/assets/docs/html/struct_select_state-members.html
+++ b/docs/html/struct_select_state-members.html
@@ -116,10 +116,9 @@ $(function(){initNavTree('struct_select_state.html',''); initResizable(true); })
   <tr class="odd"><td class="entry"><a class="el" href="class_i_window_keeper.html#aef0780725b6f210bcbeb3b03da2445b8">m_window</a></td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="struct_select_state.html#a52b35ea72577fb2d5429daf43f9110e7">render</a>() override</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
   <tr class="odd"><td class="entry"><a class="el" href="struct_select_state.html#af3cc640f19d315eb79b7c9c0673a6562">SelectState</a>(IStateManager &amp;state_manager, const sf::VideoMode &amp;video_mode, const std::string &amp;window_title)</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_texture</b>(MyTexture *ptr_texture) (определено в <a class="el" href="struct_select_state.html">SelectState</a>)</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr class="odd"><td class="entry"><a class="el" href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">update</a>() override</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IState</b>()=default (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IWindowKeeper</b>()=default (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="struct_select_state.html#af82dbfa9bc9fc892d55baabc3f5b5243">update</a>() override</td><td class="entry"><a class="el" href="struct_select_state.html">SelectState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IState</b>()=default (определено в <a class="el" href="class_i_state.html">IState</a>)</td><td class="entry"><a class="el" href="class_i_state.html">IState</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~IWindowKeeper</b>()=default (определено в <a class="el" href="class_i_window_keeper.html">IWindowKeeper</a>)</td><td class="entry"><a class="el" href="class_i_window_keeper.html">IWindowKeeper</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
 </table></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
diff --git a/assets/docs/html/struct_select_state.html b/docs/html/struct_select_state.html
similarity index 97%
rename from assets/docs/html/struct_select_state.html
rename to docs/html/struct_select_state.html
index a8306a708dedd62a80077dcbbd50d5aa321db72c..1c75fb27a20a1c6c2789eeffb39e6590ab4459b4 100644
--- a/assets/docs/html/struct_select_state.html
+++ b/docs/html/struct_select_state.html
@@ -130,9 +130,6 @@ $(function(){initNavTree('struct_select_state.html',''); initResizable(true); })
 <tr class="separator:af3cc640f19d315eb79b7c9c0673a6562"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a42934d0842634240dafe15af750a6090" id="r_a42934d0842634240dafe15af750a6090"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a42934d0842634240dafe15af750a6090">event_handling</a> () override</td></tr>
 <tr class="separator:a42934d0842634240dafe15af750a6090"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a29aa6f7798ddcc3da5a6cfbad6104d7d" id="r_a29aa6f7798ddcc3da5a6cfbad6104d7d"><td class="memItemLeft" align="right" valign="top"><a id="a29aa6f7798ddcc3da5a6cfbad6104d7d" name="a29aa6f7798ddcc3da5a6cfbad6104d7d"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>set_texture</b> (<a class="el" href="class_my_texture.html">MyTexture</a> *ptr_texture)</td></tr>
-<tr class="separator:a29aa6f7798ddcc3da5a6cfbad6104d7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:af82dbfa9bc9fc892d55baabc3f5b5243" id="r_af82dbfa9bc9fc892d55baabc3f5b5243"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af82dbfa9bc9fc892d55baabc3f5b5243">update</a> () override</td></tr>
 <tr class="separator:af82dbfa9bc9fc892d55baabc3f5b5243"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a52b35ea72577fb2d5429daf43f9110e7" id="r_a52b35ea72577fb2d5429daf43f9110e7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a52b35ea72577fb2d5429daf43f9110e7">render</a> () override</td></tr>
diff --git a/assets/docs/html/struct_select_state.js b/docs/html/struct_select_state.js
similarity index 100%
rename from assets/docs/html/struct_select_state.js
rename to docs/html/struct_select_state.js
diff --git a/assets/docs/html/struct_select_state.png b/docs/html/struct_select_state.png
similarity index 100%
rename from assets/docs/html/struct_select_state.png
rename to docs/html/struct_select_state.png
diff --git a/assets/docs/html/struct_theme_colors-members.html b/docs/html/struct_theme_colors-members.html
similarity index 80%
rename from assets/docs/html/struct_theme_colors-members.html
rename to docs/html/struct_theme_colors-members.html
index 014eb6f991414aff13ea0ff7269d43d1558cc8db..50a8ab11cb1e507c922f1c18a7d961bcc7d72be1 100644
--- a/assets/docs/html/struct_theme_colors-members.html
+++ b/docs/html/struct_theme_colors-members.html
@@ -116,16 +116,9 @@ $(function(){initNavTree('struct_theme_colors.html',''); initResizable(true); })
   <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>game_background_ingame</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>game_background_lost</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>game_background_win</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>game_enemy</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>game_food</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>game_pacman</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>game_pacman_invisible</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>game_room</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>game_wall</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>room_color</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>select_level_background</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>title_text</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>wall_color</b> (определено в <a class="el" href="struct_theme_colors.html">ThemeColors</a>)</td><td class="entry"><a class="el" href="struct_theme_colors.html">ThemeColors</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 </div><!-- doc-content -->
 <!-- start footer part -->
diff --git a/assets/docs/html/struct_theme_colors.html b/docs/html/struct_theme_colors.html
similarity index 75%
rename from assets/docs/html/struct_theme_colors.html
rename to docs/html/struct_theme_colors.html
index 2382805ef6bc17574ff83a0af3874de7316052c3..01d2d901f5a423a389af9fe1107e248a34365c77 100644
--- a/assets/docs/html/struct_theme_colors.html
+++ b/docs/html/struct_theme_colors.html
@@ -108,6 +108,11 @@ $(function(){initNavTree('struct_theme_colors.html',''); initResizable(true); })
   <div class="headertitle"><div class="title">Структура ThemeColors</div></div>
 </div><!--header-->
 <div class="contents">
+
+<p>Менеджер для загрузки цветов через паттер Singletone С помощью set_theme() устанавливается тема приложения: светлая или темная Изначально светлая тема  
+ <a href="#details">Подробнее...</a></p>
+
+<p><code>#include &lt;<a class="el" href="_theme_manager_8h_source.html">ThemeManager.h</a>&gt;</code></p>
 <table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
 Открытые атрибуты</h2></td></tr>
@@ -123,9 +128,6 @@ sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>button_selection
 <tr class="memitem:ad808b1f08ba6edff3802389436a1958e" id="r_ad808b1f08ba6edff3802389436a1958e"><td class="memItemLeft" align="right" valign="top"><a id="ad808b1f08ba6edff3802389436a1958e" name="ad808b1f08ba6edff3802389436a1958e"></a>
 sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>button_frame</b></td></tr>
 <tr class="separator:ad808b1f08ba6edff3802389436a1958e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6f81700886febcec01f79d3196914f2c" id="r_a6f81700886febcec01f79d3196914f2c"><td class="memItemLeft" align="right" valign="top"><a id="a6f81700886febcec01f79d3196914f2c" name="a6f81700886febcec01f79d3196914f2c"></a>
-sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>select_level_background</b></td></tr>
-<tr class="separator:a6f81700886febcec01f79d3196914f2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a4a003f79702deae034f387b9dfb80bb3" id="r_a4a003f79702deae034f387b9dfb80bb3"><td class="memItemLeft" align="right" valign="top"><a id="a4a003f79702deae034f387b9dfb80bb3" name="a4a003f79702deae034f387b9dfb80bb3"></a>
 sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_background_ingame</b></td></tr>
 <tr class="separator:a4a003f79702deae034f387b9dfb80bb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -135,39 +137,23 @@ sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_background_
 <tr class="memitem:a0e52c3e335db05f6703201106c190e22" id="r_a0e52c3e335db05f6703201106c190e22"><td class="memItemLeft" align="right" valign="top"><a id="a0e52c3e335db05f6703201106c190e22" name="a0e52c3e335db05f6703201106c190e22"></a>
 sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_background_lost</b></td></tr>
 <tr class="separator:a0e52c3e335db05f6703201106c190e22"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ab3d3900547e87ed94e76cec23653e6d3" id="r_ab3d3900547e87ed94e76cec23653e6d3"><td class="memItemLeft" align="right" valign="top"><a id="ab3d3900547e87ed94e76cec23653e6d3" name="ab3d3900547e87ed94e76cec23653e6d3"></a>
-sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_pacman</b></td></tr>
-<tr class="separator:ab3d3900547e87ed94e76cec23653e6d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a73b67c0a3462e0e7c3b06e6103d7cf56" id="r_a73b67c0a3462e0e7c3b06e6103d7cf56"><td class="memItemLeft" align="right" valign="top"><a id="a73b67c0a3462e0e7c3b06e6103d7cf56" name="a73b67c0a3462e0e7c3b06e6103d7cf56"></a>
-sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_pacman_invisible</b></td></tr>
-<tr class="separator:a73b67c0a3462e0e7c3b06e6103d7cf56"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a2e9794e0936c9869a6bfe83e1721b9d8" id="r_a2e9794e0936c9869a6bfe83e1721b9d8"><td class="memItemLeft" align="right" valign="top"><a id="a2e9794e0936c9869a6bfe83e1721b9d8" name="a2e9794e0936c9869a6bfe83e1721b9d8"></a>
 sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_room</b></td></tr>
 <tr class="separator:a2e9794e0936c9869a6bfe83e1721b9d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ad5046e9e7316ee883758590f05f301bd" id="r_ad5046e9e7316ee883758590f05f301bd"><td class="memItemLeft" align="right" valign="top"><a id="ad5046e9e7316ee883758590f05f301bd" name="ad5046e9e7316ee883758590f05f301bd"></a>
 sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_wall</b></td></tr>
 <tr class="separator:ad5046e9e7316ee883758590f05f301bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a51f6031f200e585f8f52a52ba9847528" id="r_a51f6031f200e585f8f52a52ba9847528"><td class="memItemLeft" align="right" valign="top"><a id="a51f6031f200e585f8f52a52ba9847528" name="a51f6031f200e585f8f52a52ba9847528"></a>
-sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_food</b></td></tr>
-<tr class="separator:a51f6031f200e585f8f52a52ba9847528"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a43e6375652d041c41f01ec06244c822b" id="r_a43e6375652d041c41f01ec06244c822b"><td class="memItemLeft" align="right" valign="top"><a id="a43e6375652d041c41f01ec06244c822b" name="a43e6375652d041c41f01ec06244c822b"></a>
-sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>game_enemy</b></td></tr>
-<tr class="separator:a43e6375652d041c41f01ec06244c822b"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ae040c25433c192e06451aa59518143be" id="r_ae040c25433c192e06451aa59518143be"><td class="memItemLeft" align="right" valign="top"><a id="ae040c25433c192e06451aa59518143be" name="ae040c25433c192e06451aa59518143be"></a>
 sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>title_text</b></td></tr>
 <tr class="separator:ae040c25433c192e06451aa59518143be"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9cb0ac57097ccc0bb5e121ce2f99af38" id="r_a9cb0ac57097ccc0bb5e121ce2f99af38"><td class="memItemLeft" align="right" valign="top"><a id="a9cb0ac57097ccc0bb5e121ce2f99af38" name="a9cb0ac57097ccc0bb5e121ce2f99af38"></a>
-sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>room_color</b></td></tr>
-<tr class="separator:a9cb0ac57097ccc0bb5e121ce2f99af38"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a352e588343ff40f5311636c5597ea8c9" id="r_a352e588343ff40f5311636c5597ea8c9"><td class="memItemLeft" align="right" valign="top"><a id="a352e588343ff40f5311636c5597ea8c9" name="a352e588343ff40f5311636c5597ea8c9"></a>
-sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>wall_color</b></td></tr>
-<tr class="separator:a352e588343ff40f5311636c5597ea8c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a9a2eec4e3dad104a5de00515cdf31d09" id="r_a9a2eec4e3dad104a5de00515cdf31d09"><td class="memItemLeft" align="right" valign="top"><a id="a9a2eec4e3dad104a5de00515cdf31d09" name="a9a2eec4e3dad104a5de00515cdf31d09"></a>
 sf::Color&#160;</td><td class="memItemRight" valign="bottom"><b>button_text_score</b></td></tr>
 <tr class="separator:a9a2eec4e3dad104a5de00515cdf31d09"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
-<hr/>Объявления и описания членов структуры находятся в файле:<ul>
-<li>source/application/State/<a class="el" href="_theme_manager_8h_source.html">ThemeManager.h</a></li>
+<a name="details" id="details"></a><h2 class="groupheader">Подробное описание</h2>
+<div class="textblock"><p>Менеджер для загрузки цветов через паттер Singletone С помощью set_theme() устанавливается тема приложения: светлая или темная Изначально светлая тема </p>
+</div><hr/>Объявления и описания членов структуры находятся в файле:<ul>
+<li>source/application/Utilities/<a class="el" href="_theme_manager_8h_source.html">ThemeManager.h</a></li>
 </ul>
 </div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/assets/docs/html/sync_off.png b/docs/html/sync_off.png
similarity index 100%
rename from assets/docs/html/sync_off.png
rename to docs/html/sync_off.png
diff --git a/assets/docs/html/sync_on.png b/docs/html/sync_on.png
similarity index 100%
rename from assets/docs/html/sync_on.png
rename to docs/html/sync_on.png
diff --git a/assets/docs/html/tab_a.png b/docs/html/tab_a.png
similarity index 100%
rename from assets/docs/html/tab_a.png
rename to docs/html/tab_a.png
diff --git a/assets/docs/html/tab_ad.png b/docs/html/tab_ad.png
similarity index 100%
rename from assets/docs/html/tab_ad.png
rename to docs/html/tab_ad.png
diff --git a/assets/docs/html/tab_b.png b/docs/html/tab_b.png
similarity index 100%
rename from assets/docs/html/tab_b.png
rename to docs/html/tab_b.png
diff --git a/assets/docs/html/tab_bd.png b/docs/html/tab_bd.png
similarity index 100%
rename from assets/docs/html/tab_bd.png
rename to docs/html/tab_bd.png
diff --git a/assets/docs/html/tab_h.png b/docs/html/tab_h.png
similarity index 100%
rename from assets/docs/html/tab_h.png
rename to docs/html/tab_h.png
diff --git a/assets/docs/html/tab_hd.png b/docs/html/tab_hd.png
similarity index 100%
rename from assets/docs/html/tab_hd.png
rename to docs/html/tab_hd.png
diff --git a/assets/docs/html/tab_s.png b/docs/html/tab_s.png
similarity index 100%
rename from assets/docs/html/tab_s.png
rename to docs/html/tab_s.png
diff --git a/assets/docs/html/tab_sd.png b/docs/html/tab_sd.png
similarity index 100%
rename from assets/docs/html/tab_sd.png
rename to docs/html/tab_sd.png
diff --git a/assets/docs/html/tabs.css b/docs/html/tabs.css
similarity index 100%
rename from assets/docs/html/tabs.css
rename to docs/html/tabs.css
diff --git a/source/application/Context/Context.cpp b/source/application/Context/Context.cpp
index 2eb517b3a090158e5dd098137aee4c4de5fa1871..b199179639d0565a0707cf46f43df56fcf1c4217 100644
--- a/source/application/Context/Context.cpp
+++ b/source/application/Context/Context.cpp
@@ -1,8 +1,8 @@
 #include "Context.h"
 
 GameContext::GameContext()
-        : pacman(&PacmanTexture::instance()),
-          pacman2(&PacmanTexture2::instance()),
+        : pacman(&PacmanTexture::instance(), false),
+          pacman2(&PacmanTexture2::instance(), true),
           static_objects(),
           dynamic_objects()
 {}
diff --git a/source/application/Drawable/DrawMenu/Button/Button.cpp b/source/application/Drawable/DrawMenu/Button/Button.cpp
index 0da439c6866ee8fac7bfe350799c2a07a9fcb2d3..087ecad75ee153d48d9117c619da65abc0b12671 100644
--- a/source/application/Drawable/DrawMenu/Button/Button.cpp
+++ b/source/application/Drawable/DrawMenu/Button/Button.cpp
@@ -1,7 +1,7 @@
 #include "Button.h"
 #include "../../../../../config.h"
-#include "../../../Assets/Texture_Sound.h"
-#include "../../../State/ThemeManager.h"
+#include "../../../Utilities/Texture_Sound.h"
+#include "../../../Utilities/ThemeManager.h"
 
 Button::Button(sf::Vector2f pos, sf::Vector2f button_size,
                const std::string& text, size_t font_size,
diff --git a/source/application/Drawable/DrawMenu/Menu/Menu.cpp b/source/application/Drawable/DrawMenu/Menu/Menu.cpp
index f34b2dec2a484b94780a9f9998002c03f94935d9..1c8a1f0c8877593168cc108148e67cecaaa4ba70 100644
--- a/source/application/Drawable/DrawMenu/Menu/Menu.cpp
+++ b/source/application/Drawable/DrawMenu/Menu/Menu.cpp
@@ -1,8 +1,8 @@
 #include "Menu.h"
 #include "../../../../../config.h"
 #include "../../../BobBuilder/GameBuilders.h"
-#include "../../../State/ThemeManager.h"
-#include "../../../Assets/Texture_Sound.h"
+#include "../../../Utilities/ThemeManager.h"
+#include "../../../Utilities/Texture_Sound.h"
 #include <memory>
 
 /** @brief
diff --git a/source/application/Drawable/DrawMenu/Menu/MenuInGame.cpp b/source/application/Drawable/DrawMenu/Menu/MenuInGame.cpp
index 409915935dd152f07f967265d4438c72d7333e45..43a7d5fc90749c8992052541b061f2da00bb8dd0 100644
--- a/source/application/Drawable/DrawMenu/Menu/MenuInGame.cpp
+++ b/source/application/Drawable/DrawMenu/Menu/MenuInGame.cpp
@@ -1,18 +1,21 @@
 #include "MenuInGame.h"
 #include "../../../../config.h"
-#include "../../../State/ThemeManager.h"
-#include "../../../Assets/Texture_Sound.h"
+#include "../../../Utilities/ThemeManager.h"
+#include "../../../Utilities/Texture_Sound.h"
 
-MenuGame::MenuGame() {
+MenuGame::MenuGame()  {
     if (!m_sound_texture.loadFromFile(std::string(ASSETS_PATH) + "Voice.png"))
     throw std::runtime_error("Can't added Texture for voice");
     m_sound_sprite.setTexture(m_sound_texture);
+
+    if (!m_lives_texture.loadFromFile(std::string(ASSETS_PATH) + "Heart.png"))
+        throw std::runtime_error("Can't added Texture for lives");
+    m_lives_sprite.setTexture(m_lives_texture);
     m_sound_sprite.setPosition(200.f, 25.f);
 }
 
 void MenuGame::draw_into(sf::RenderWindow &window, const ScoreCount& scores_one, const ScoreCount& scores_two) {
-
-    sf::Text m_title(config::GAME_COUNTER, MyAssets_one::GetFont(), 40);
+    sf::Text m_title(config::GAME_COUNTER, MyAssets_one::GetFont(), 30);
     m_title.setFillColor(ThemeManager::Instance().getButtonScoreColor());
     m_title.setPosition(10.f, 55.f);
     window.draw(m_title);
@@ -28,6 +31,11 @@ void MenuGame::draw_into(sf::RenderWindow &window, const ScoreCount& scores_one,
         player_two.setPosition(10.f, 125.f);
         window.draw(player_two);
     }
+    sf::Text m_lives(config::GAME_LIVES, MyAssets_one::GetFont(), 30);
+    m_lives.setFillColor(ThemeManager::Instance().getButtonScoreColor());
+    m_lives.setPosition(10.f, 150.f);
+    window.draw(m_lives);
+
 }
 
 void MenuGame::draw_button(sf::RenderWindow &window) {
@@ -38,3 +46,23 @@ bool MenuGame::is_clicked(int x, int y) {
     return m_sound_sprite.getGlobalBounds().contains(x, y);
 }
 
+void MenuGame::draw_hearts(sf::RenderWindow &window, int lives, float pos) {
+
+    if (m_lives_texture.getSize().x == 0) return;
+    sf::Text m_pacman1("Pacman 1:", MyAssets_one::GetFont(), 25);
+    m_pacman1.setFillColor(ThemeManager::Instance().getButtonScoreColor());
+    m_pacman1.setPosition(10.f, 190.f);
+    window.draw(m_pacman1);
+
+    if (pos != 0.f) {
+        sf::Text m_pacman1("Pacman 2:", MyAssets_one::GetFont(), 25);
+        m_pacman1.setFillColor(ThemeManager::Instance().getButtonScoreColor());
+        m_pacman1.setPosition(10.f, 210.f + pos - 20.f);
+        window.draw(m_pacman1);
+    }
+    for (int i = 0; i < lives; i++) {
+        m_lives_sprite.setPosition(10.f + i * (m_lives_texture.getSize().x + 5.f), 210.f + pos);
+        window.draw(m_lives_sprite);
+    }
+}
+
diff --git a/source/application/Drawable/DrawMenu/Menu/MenuInGame.h b/source/application/Drawable/DrawMenu/Menu/MenuInGame.h
index c7abe681a7b546be9387abeb57945e92a4c1ad4c..f3ec062b50f7da340cec97b93f97d25b7b20cace 100644
--- a/source/application/Drawable/DrawMenu/Menu/MenuInGame.h
+++ b/source/application/Drawable/DrawMenu/Menu/MenuInGame.h
@@ -1,15 +1,19 @@
 #pragma once
 #include <SFML/Graphics.hpp>
 #include "../../Entity/IObserver.h"
+#include "../../../Context/Context.h"
+#include "../../../State/IState.h"
 
 class MenuGame {
 public:
     MenuGame();
     void draw_into(sf::RenderWindow &window, const ScoreCount& scores_one, const ScoreCount& scores_two);
     void draw_button(sf::RenderWindow &window);
+    void draw_hearts(sf::RenderWindow &window, int lives, float pos);
     bool is_clicked(int x, int y);
 
 private:
+    ContextManager m_context;
     sf::RenderWindow m_window;
     sf::RectangleShape m_background;
     sf::RectangleShape m_button;
@@ -19,4 +23,7 @@ private:
 
     sf::Texture m_sound_texture;
     sf::Sprite m_sound_sprite;
+
+    sf::Texture m_lives_texture;
+    sf::Sprite m_lives_sprite;
 };
diff --git a/source/application/Drawable/Entity/IEntity.h b/source/application/Drawable/Entity/IEntity.h
index 7e9997eb83b75f410c90e6ce4f33c1ff7dc15899..cf6b7976213cd522bf5b9ef8141a23630887a057 100644
--- a/source/application/Drawable/Entity/IEntity.h
+++ b/source/application/Drawable/Entity/IEntity.h
@@ -2,7 +2,7 @@
 
 #include "../IDrawable.h"
 #include "../../Event/IGameEvent.h"
-#include "MyTexture.h"
+#include "../../Utilities/MyTexture.h"
 
 class Room;
 class Food;
@@ -10,7 +10,7 @@ class Enemy;
 
 /**
  * @brief Паттерн VISITOR для взаимодействия пакмана с объектами игры.
- * Создаем две абстрации: IVisitor (посетитель) и IVisitable (нечто посещаемое)
+ * Создаем две абстрации: IVisitor (посетитель)
  */
 class IVisitor {
 public:
diff --git a/source/application/Drawable/Entity/Pacman.cpp b/source/application/Drawable/Entity/Pacman.cpp
index 75ba6fbf7e7ae02c22f29cf05cd12ea866d2442d..97eef631929fa816b94df2d9642c365f8268fbc6 100644
--- a/source/application/Drawable/Entity/Pacman.cpp
+++ b/source/application/Drawable/Entity/Pacman.cpp
@@ -1,13 +1,14 @@
 #include "Pacman.h"
 #include "../../../../config.h"
-#include "../../Assets/Texture_Sound.h"
+#include "../../Utilities/Texture_Sound.h"
 
 /**
  * @brief Pacman - главный герой.
  * В конструкторе в пакмана загружаем звук, который он будет издавать при поедании еды
  * @param texture
  */
-Pacman::Pacman(MyTexture* texture) : m_ptr_texture(texture) {
+Pacman::Pacman(MyTexture* texture, bool is_second_player) : m_ptr_texture(texture),
+m_second_player(is_second_player){
     m_sound.setBuffer(MyAssets_one::GetSound());
 }
 
@@ -45,7 +46,7 @@ std::unique_ptr<IGameEvent> Pacman::visit(Food* ptr_food) {
 
 std::unique_ptr<IGameEvent> Pacman::visit(Enemy* ptr_enemy) {
     if (ptr_enemy->get_location() != this->get_location()) return {};
-    return std::make_unique<LostGame>();
+    return std::make_unique<PacmanLoseLifeEvent>(m_second_player);
 }
 
 void Pacman::draw_into(sf::RenderWindow& window) {
diff --git a/source/application/Drawable/Entity/Pacman.h b/source/application/Drawable/Entity/Pacman.h
index 5e0d9cde946440a0b0fe9e4bdb159164f1e2bfef..ef6a1b353cf6eb70cb9aaf89fb0e21fa5835624a 100644
--- a/source/application/Drawable/Entity/Pacman.h
+++ b/source/application/Drawable/Entity/Pacman.h
@@ -2,20 +2,25 @@
 
 #include "IEntity.h"
 #include "../Maze/Maze.h"
-#include "MyTexture.h"
+#include "../../Utilities/MyTexture.h"
 #include "SFML/Audio/Sound.hpp"
 
 class Pacman : public IEntity, public IVisitor {
 public:
-    explicit Pacman(MyTexture* texture);
+    explicit Pacman(MyTexture* texture,  bool is_second_player);
     void move(Room::Direction direction);
     void prepare_for_drawing() override;
     void draw_into(sf::RenderWindow& window) override;
     std::unique_ptr<IGameEvent> visit(Food* ptr_entity) override;
     std::unique_ptr<IGameEvent> visit(Enemy* ptr_entity) override;
+    bool died() const {return m_lives <= 0; }
+    void lose_life() {if (m_lives > 0) m_lives--;}
+    int get_lives() {return m_lives; }
     ~Pacman() override = default;
 private:
+    int m_lives = 3; ///> количество жизней
     sf::Sprite m_sprite;
     sf::Sound m_sound;
     MyTexture* m_ptr_texture;
+    bool m_second_player;
 };
diff --git a/source/application/Drawable/Maze/Maze.cpp b/source/application/Drawable/Maze/Maze.cpp
index 7da8a48e15a5add932eed11517beaedc25e671e5..07b1abdebe24b2b544fc308bed04ca55fe5dcce8 100644
--- a/source/application/Drawable/Maze/Maze.cpp
+++ b/source/application/Drawable/Maze/Maze.cpp
@@ -1,6 +1,6 @@
 #include "Maze.h"
 #include "../../../../config.h"
-#include "../../State/ThemeManager.h"
+#include "../../Utilities/ThemeManager.h"
 
 Room::Room(float size) : m_rectangle({size, size}){
     m_rectangle.setOrigin(m_rectangle.getSize().x/2,m_rectangle.getSize().y/2 );
diff --git a/source/application/Event/IGameEvent.cpp b/source/application/Event/IGameEvent.cpp
index 1368b3cb4a8515cfb044f87668e80ade6a61f33d..85b24445fffedde7f2852c4857d580d9a52e30d3 100644
--- a/source/application/Event/IGameEvent.cpp
+++ b/source/application/Event/IGameEvent.cpp
@@ -1,6 +1,6 @@
 #include "IGameEvent.h"
 #include "../Context/Context.h"
-#include "../Assets/Texture_Sound.h"
+#include "../Utilities/Texture_Sound.h"
 
 void IGameEvent::add_observer(IObserver *observer) {
     m_observers.push_back(observer);
@@ -38,3 +38,26 @@ void ScreamerEvent::handle(GameContext *context) {
         m_sound.play();
     }
 }
+
+void PacmanLoseLifeEvent::handle(GameContext *context) {
+    Pacman& pacman_lose_life = m_second_player ? context->pacman2 : context->pacman;
+    pacman_lose_life.lose_life();
+
+    if (pacman_lose_life.died()) {
+        if (context->pacman.died() && context->pacman2.died())
+            context->state = GameContext::LOST;
+    }
+
+    for (auto& obj : context->dynamic_objects) {
+        if (auto* enemy = dynamic_cast<Enemy*>(obj.get())) {
+            Room* random_room = nullptr;
+            if (!context->static_objects.empty()) {
+                size_t random_index = rand() % context->static_objects.size();
+                auto it = context->static_objects.begin();
+                std::advance(it, random_index);
+                random_room = (*it)->get_location();
+                enemy->set_location(random_room);
+            }
+        }
+    }
+}
diff --git a/source/application/Event/IGameEvent.h b/source/application/Event/IGameEvent.h
index 6cacfeead0d14e8a1f9d3f2e226b62990d17232a..5cfe7f42b103fe314d359cd78f8dac98c26ae83c 100644
--- a/source/application/Event/IGameEvent.h
+++ b/source/application/Event/IGameEvent.h
@@ -7,6 +7,7 @@
 
 class GameContext;
 class IStaticEntity;
+class Pacman;
 
 /**
  * @brief Абстрактрый класс для различных игровых событий
@@ -71,11 +72,25 @@ struct ScreamerEvent : public IGameEvent {
  */
 class ScreamerCompositeEvent : public IGameEvent {
 public:
-    ScreamerCompositeEvent(IStaticEntity* food) : m_food(food) {}
+    explicit ScreamerCompositeEvent(IStaticEntity* food) : m_food(food) {}
     void handle(GameContext* context) override {
         DeleteStaticEntity(m_food).handle(context);
         ScreamerEvent().handle(context);
     }
 private:
     IStaticEntity* m_food;
+};
+
+/**
+ * @brief Событие: потеря жизни у Пакманов.
+ * Всего три жизни, когда они кончились, то игра провалена
+ * В ресурсах храним пакмана
+ */
+class PacmanLoseLifeEvent : public IGameEvent {
+public:
+    explicit PacmanLoseLifeEvent(bool second_player) : m_second_player(second_player) {}
+
+    void handle(GameContext* context) override;
+private:
+    bool m_second_player;
 };
\ No newline at end of file
diff --git a/source/application/State/GameState.cpp b/source/application/State/GameState.cpp
index 72a8c9518246a0a72ecf639e7af34904ec663a5f..074f65676283fa8bf731ee7272eb24bffcbf81fe 100644
--- a/source/application/State/GameState.cpp
+++ b/source/application/State/GameState.cpp
@@ -1,7 +1,7 @@
 #include "GameState.h"
 #include "SelectState.h"
-#include "ThemeManager.h"
-#include "../Assets/Texture_Sound.h"
+#include "../Utilities/ThemeManager.h"
+#include "../Utilities/Texture_Sound.h"
 sf::Clock m_clock;
 
 GameState::GameState(IStateManager &state_manager, const sf::VideoMode &video_mode, const std::string &window_title) :
@@ -30,6 +30,7 @@ void GameState::event_handling() {
 
         if (context.screamer_active) continue;
 
+        ///> если нажимаем Cmd+Z делаем шаг назад
         if (event.type == sf::Event::KeyPressed && event.key.code == sf::Keyboard::Z)
             m_context_manager.restore_previous_context();
 
@@ -38,9 +39,10 @@ void GameState::event_handling() {
                 mode_made = process_key_pressed(event.key.code);
         }
 
+        ///> правой кнопкой мыши - включить или выключть звук
         if (event.type == sf::Event::MouseButtonPressed && event.mouseButton.button == sf::Mouse::Right) {
             if (m_menu.is_clicked(event.mouseButton.x, event.mouseButton.y)) {
-                m_sound_active = !m_sound_active;  ///> переключение состояния
+                m_sound_active = !m_sound_active;
                 if (!m_sound_active) {
                     m_sound_ingame.stop();
                     m_sound_win.stop();
@@ -63,10 +65,10 @@ bool GameState::process_key_pressed(sf::Keyboard::Key code) {
     if (code == sf::Keyboard::W || code == sf::Keyboard::A || code == sf::Keyboard::S || code == sf::Keyboard::D) {
         m_context_manager.save_current_context();
         switch (code) {
-            case sf::Keyboard::W: context.pacman.move(Room::UP); break;
-            case sf::Keyboard::S: context.pacman.move(Room::DOWN); break;
-            case sf::Keyboard::A: context.pacman.move(Room::LEFT); break;
-            case sf::Keyboard::D: context.pacman.move(Room::RIGHT); break;
+            case config::KEY_UP: context.pacman.move(Room::UP); break;
+            case config::KEY_DOWN: context.pacman.move(Room::DOWN); break;
+            case config::KEY_LEFT: context.pacman.move(Room::LEFT); break;
+            case config::KEY_RIGHT: context.pacman.move(Room::RIGHT); break;
         }
         return true;
     }
@@ -138,6 +140,38 @@ void GameState::update() {
     game_events.clear();
 }
 
+void GameState::handle_screamer(GameContext& context) {
+    if (context.screamer_active) {
+        if (m_screamer_music.getStatus() != sf::SoundSource::Playing) {
+            m_sound_ingame.stop();
+            m_sound_win.stop();
+            m_sound_lost.stop();
+            m_screamer_music.play();
+        }
+
+        sf::Sprite sprite;
+        sprite.setTexture(MyAssets_one::GetScreamerTexture());
+
+        ///> растягиваем текстуру на весь экран
+        sprite.setScale(
+                static_cast<float>(m_window.getSize().x) / sprite.getTexture()->getSize().x,
+                static_cast<float>(m_window.getSize().y) / sprite.getTexture()->getSize().y
+        );
+
+        ///> эффект тряски через случайное смещение на +- 10 пикселей
+        const int shakeRange = 10;
+        float offsetX = rand() % (shakeRange * 2 + 1) - shakeRange;
+        float offsetY = rand() % (shakeRange * 2 + 1) - shakeRange;
+        sprite.setPosition(offsetX, offsetY);
+        m_window.draw(sprite);
+    }
+    else {
+        ///> если скример не активен
+        if (m_screamer_music.getStatus() == sf::SoundSource::Playing)
+            m_screamer_music.stop();
+    }
+}
+
 void GameState::render() {
     GameContext& context = m_context_manager.get_current_context();
     sf::Color backgroundColor;
@@ -171,11 +205,15 @@ void GameState::render() {
             backgroundColor = ThemeManager::Instance().getGameBackgroundWinColor();
     }
     m_window.clear(backgroundColor);
-    if (context.pacman2.get_location() != nullptr)
+    if (context.pacman2.get_location() != nullptr) {
         m_menu.draw_into(m_window, *m_score_count_one, *m_score_count_two);
+        m_menu.draw_hearts(m_window, context.pacman2.get_lives(), 70.f);
+    }
     else
         m_menu.draw_into(m_window, *m_score_count_one, ScoreCount(0));
     m_menu.draw_button(m_window);
+    m_menu.draw_hearts(m_window, context.pacman.get_lives(), 0.f);
+
     m_maze.draw_into(m_window);
     context.pacman.draw_into(m_window);
     if (context.pacman2.get_location() != nullptr)
@@ -185,36 +223,7 @@ void GameState::render() {
     for (auto& el : context.dynamic_objects)
         el->draw_into(m_window);
 
-    if (context.screamer_active) {
-        if (m_screamer_music.getStatus() != sf::SoundSource::Playing) {
-            m_sound_ingame.stop();
-            m_sound_win.stop();
-            m_sound_lost.stop();
-            m_screamer_music.play();
-        }
-
-        sf::Sprite sprite;
-        sprite.setTexture(MyAssets_one::GetScreamerTexture());
-
-        sf::Vector2u windowSize = m_window.getSize();
-        sf::Vector2u textureSize = sprite.getTexture()->getSize();
-
-        sprite.setScale(
-                static_cast<float>(windowSize.x) / textureSize.x,
-                static_cast<float>(windowSize.y) / textureSize.y
-        );
-
-        const int shakeRange = 10;
-        int offsetX = rand() % (shakeRange * 2 + 1) - shakeRange;
-        int offsetY = rand() % (shakeRange * 2 + 1) - shakeRange;
-        sprite.setPosition(static_cast<float>(offsetX), static_cast<float>(offsetY));
-
-        m_window.draw(sprite);
-    }
-    else {
-        if (m_screamer_music.getStatus() == sf::SoundSource::Playing)
-            m_screamer_music.stop();
-    }
+    handle_screamer(context);
 
     m_window.display();
 }
diff --git a/source/application/State/GameState.h b/source/application/State/GameState.h
index e1c26b5c01dd8d9dd3a08b0d33ca56fdd86517d8..de53895ca0afb37f2492e76b17e6206c15d894b3 100644
--- a/source/application/State/GameState.h
+++ b/source/application/State/GameState.h
@@ -22,7 +22,7 @@ public:
     void set_context(GameContext&& context);
     bool process_key_pressed(sf::Keyboard::Key code);
     const ScoreCount& get_score_count() const {return *m_score_count_one, *m_score_count_two; }
-
+    void handle_screamer(GameContext& context); ///> обработка события со скримером
     enum class Music {NONE, INGAME, LOST, WIN};
     Music m_current_music = Music::NONE; ///> текущая музыка
 private:
diff --git a/source/application/State/SelectState.cpp b/source/application/State/SelectState.cpp
index fb03218e692babe08de6f113702a8cce2d10ccb7..e492af2f4890d96ca9f7ef837c856337a00e11c2 100644
--- a/source/application/State/SelectState.cpp
+++ b/source/application/State/SelectState.cpp
@@ -1,14 +1,15 @@
 #include "SelectState.h"
+#include "../Utilities/Texture_Sound.h"
 
 /**
  * @details В конструкторе делегирует аргументы с режимом и названием окна конструктору IWindowKeeper
  * В конструктор Menu отправляет аргумент со ссылкой на менеджера состояний
  */
+
 SelectState::SelectState(IStateManager& state_manager, const sf::VideoMode& video_mode, const std::string& window_title) :
                          IState(state_manager), IWindowKeeper(video_mode, window_title), m_menu(state_manager) {
     update_theme();
-    set_texture(&BackgroundTexture::instance());
-    m_backgorund_sprite.setTexture(m_background->get_texture());
+    m_backgorund_sprite.setTexture(MyAssets_one::GetBackgroundTexture());
 }
 
 void SelectState::event_handling() {
diff --git a/source/application/State/SelectState.h b/source/application/State/SelectState.h
index 69b532204e38558f597ae68c31bbf227d94e141d..779ad61a8c64f0bda651282297cc78834f59de8a 100644
--- a/source/application/State/SelectState.h
+++ b/source/application/State/SelectState.h
@@ -1,7 +1,7 @@
 #pragma once
 #include "IState.h"
 #include "../Drawable/DrawMenu/Menu/Menu.h"
-#include "ThemeManager.h"
+#include "../Utilities/ThemeManager.h"
 
 /**
  * @brief SelectState - состояние, при котором происходит выбор уровня и выход из игры.
@@ -9,13 +9,11 @@
 struct SelectState: public IState, public IWindowKeeper {
     SelectState(IStateManager& state_manager, const sf::VideoMode& video_mode, const std::string& window_title);
     void event_handling() override;
-    void set_texture(MyTexture* ptr_texture) { m_background = ptr_texture; }
     void update() override;
     void render() override;
     bool do_step() override;
 private:
     void update_theme() { ThemeManager::Instance().applyTheme(); }
-    MyTexture* m_background;
     sf::Sprite m_backgorund_sprite;
     Menu m_menu;
 };
\ No newline at end of file
diff --git a/source/application/State/ThemeManager.cpp b/source/application/State/ThemeManager.cpp
deleted file mode 100644
index 134812bcb1e556763a0122f1c8ba2b612f149c2e..0000000000000000000000000000000000000000
--- a/source/application/State/ThemeManager.cpp
+++ /dev/null
@@ -1,103 +0,0 @@
-#include "ThemeManager.h"
-
-ThemeManager& ThemeManager::Instance() {
-    static ThemeManager instance;
-    return instance;
-}
-
-sf::Color ThemeManager::getButtonFillColor() const {
-    return m_currentColors.button_fill;
-}
-
-void ThemeManager::set_theme(ThemeManager::Theme newTheme) {
-    m_theme = newTheme;
-    loadThemeColors();
-}
-
-sf::Color ThemeManager::getButtonOutlineColor() const {
-    return m_currentColors.button_frame;
-}
-
-sf::Color ThemeManager::getButtonTextColor() const {
-    return m_currentColors.button_text;
-}
-
-sf::Color ThemeManager::getButtonSelectionColor() const {
-    return m_currentColors.button_selection;
-}
-
-sf::Color ThemeManager::getTitleTextColor() const {
-    return m_currentColors.title_text;
-}
-
-sf::Color ThemeManager::getGameBackgroundInGameColor() const {
-    return m_currentColors.game_background_ingame;
-}
-
-sf::Color ThemeManager::getGameBackgroundWinColor() const {
-    return m_currentColors.game_background_win;
-}
-
-sf::Color ThemeManager::getGameBackgroundLostColor() const {
-    return m_currentColors.game_background_lost;
-}
-
-sf::Color ThemeManager::getRoomColor() const {
-    return m_currentColors.room_color;
-}
-
-sf::Color ThemeManager::getWallColor() const {
-    return m_currentColors.wall_color;
-}
-
-sf::Color ThemeManager::getButtonScoreColor() const {
-    return m_currentColors.button_text_score;
-}
-
-void ThemeManager::loadThemeColors() {
-    if (m_theme == Theme::LIGHT) {
-        m_currentColors = {
-                sf::Color::White,         // button_text
-                sf::Color(21, 117, 217), // button_fill
-                sf::Color(0, 0, 0), // button_selection
-                sf::Color::White,         // button_frame
-                sf::Color(240, 240, 240), // select_level_background
-                sf::Color(255, 255, 255), // game_background_ingame
-                sf::Color(0, 255, 0),     // game_background_win
-                sf::Color(255, 0, 0),     // game_background_lost
-                sf::Color(255, 255, 0),   // game_pacman
-                sf::Color(100, 100, 100), // game_pacman_invisible
-                sf::Color(200, 200, 255), // game_room
-                sf::Color(50, 50, 50),    // game_wall
-                sf::Color(255, 165, 0),   // game_food
-                sf::Color(255, 0, 0),     // game_enemy
-                sf::Color::White,    // title_text
-                sf::Color(255, 255, 255), // room_color
-                sf::Color(0, 0, 0), // wall_color
-                sf::Color::Black
-        };
-
-    } else if (m_theme == Theme::DARK) {
-        m_currentColors = {
-                sf::Color::White,         // button_text
-                sf::Color(21, 117, 217),    // button_fill
-                sf::Color(80, 80, 80),    // button_selection
-                sf::Color::White,         // button_frame
-                sf::Color(30, 30, 30),    // select_level_background
-                sf::Color(40, 40, 40),    // game_background_ingame
-                sf::Color(0, 255, 0),     // game_background_win
-                sf::Color(255, 0, 0),     // game_background_lost
-                sf::Color(255, 255, 0),   // game_pacman
-                sf::Color(100, 100, 100), // game_pacman_invisible
-                sf::Color(100, 100, 100), // game_room
-                sf::Color(50, 50, 50),    // game_wall
-                sf::Color(255, 165, 0),   // game_food
-                sf::Color(255, 0, 0),     // game_enemy
-                sf::Color::White,         // title_text
-                sf::Color(0, 0, 0), // room_color
-                sf::Color(0, 0, 255), // wall_color
-                sf::Color::White
-        };
-    }
-}
-
diff --git a/source/application/Drawable/Entity/MyTexture.cpp b/source/application/Utilities/MyTexture.cpp
similarity index 94%
rename from source/application/Drawable/Entity/MyTexture.cpp
rename to source/application/Utilities/MyTexture.cpp
index 5872eec0669ffa8e9b45c23cda6248d38ac475b3..179a480964494da69d41430fc80c776f5341ec66 100644
--- a/source/application/Drawable/Entity/MyTexture.cpp
+++ b/source/application/Utilities/MyTexture.cpp
@@ -56,6 +56,3 @@ EnemyTexture::EnemyTexture() {
     m_texture_enemy.loadFromFile(std::string(ASSETS_PATH) + "enemy.png");
 }
 
-BackgroundTexture::BackgroundTexture() {
-    m_texture_background.loadFromFile(std::string(ASSETS_PATH) + "background.png");
-}
\ No newline at end of file
diff --git a/source/application/Drawable/Entity/MyTexture.h b/source/application/Utilities/MyTexture.h
similarity index 100%
rename from source/application/Drawable/Entity/MyTexture.h
rename to source/application/Utilities/MyTexture.h
diff --git a/source/application/Assets/Texture_Sound.cpp b/source/application/Utilities/Texture_Sound.cpp
similarity index 90%
rename from source/application/Assets/Texture_Sound.cpp
rename to source/application/Utilities/Texture_Sound.cpp
index 2dfe5813941245ccf64884b4edfaddd0875b990f..18e4567103c92d559aa38dc4784405a4f988226b 100644
--- a/source/application/Assets/Texture_Sound.cpp
+++ b/source/application/Utilities/Texture_Sound.cpp
@@ -62,6 +62,14 @@ sf::Texture &MyAssets_one::GetScreamerTexture() {
     return texture;
 }
 
+sf::Texture &MyAssets_one::GetBackgroundTexture() {
+    static sf::Texture texture;
+    if (texture.getSize() != sf::Vector2u{0, 0}) return texture;
+    if (!texture.loadFromFile(ASSETS_PATH "background.png"))
+        throw std::runtime_error("Failed to load texture for background");
+    return texture;
+}
+
 
 //@todo
 //sf::Texture& MyAssets_one::GetFood() {
diff --git a/source/application/Assets/Texture_Sound.h b/source/application/Utilities/Texture_Sound.h
similarity index 91%
rename from source/application/Assets/Texture_Sound.h
rename to source/application/Utilities/Texture_Sound.h
index df1d9e130d1f5417b9f53a8e48996bce889a4923..fd9d0fb01b7a99f1b01635059551e61b8dea7214 100644
--- a/source/application/Assets/Texture_Sound.h
+++ b/source/application/Utilities/Texture_Sound.h
@@ -9,6 +9,7 @@ struct MyAssets_one {
     MyAssets_one() = delete;
     static sf::Font& GetFont();
     static sf::Texture& GetScreamerTexture();
+    static sf::Texture& GetBackgroundTexture();
     static sf::SoundBuffer& GetSound();
     static sf::SoundBuffer& GetSoundWin();
     static sf::SoundBuffer& GetSoundLost();
diff --git a/source/application/Utilities/ThemeManager.cpp b/source/application/Utilities/ThemeManager.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..59ad16f5627a5b471cb6e760ec92bf0b9058bf27
--- /dev/null
+++ b/source/application/Utilities/ThemeManager.cpp
@@ -0,0 +1,89 @@
+#include "ThemeManager.h"
+
+ThemeManager& ThemeManager::Instance() {
+    static ThemeManager instance;
+    return instance;
+}
+
+sf::Color ThemeManager::getButtonFillColor() const {
+    return m_currentColors.button_fill;
+}
+
+void ThemeManager::set_theme(ThemeManager::Theme newTheme) {
+    m_theme = newTheme;
+    loadThemeColors();
+}
+
+sf::Color ThemeManager::getButtonOutlineColor() const {
+    return m_currentColors.button_frame;
+}
+
+sf::Color ThemeManager::getButtonTextColor() const {
+    return m_currentColors.button_text;
+}
+
+sf::Color ThemeManager::getButtonSelectionColor() const {
+    return m_currentColors.button_selection;
+}
+
+sf::Color ThemeManager::getTitleTextColor() const {
+    return m_currentColors.title_text;
+}
+
+sf::Color ThemeManager::getGameBackgroundInGameColor() const {
+    return m_currentColors.game_background_ingame;
+}
+
+sf::Color ThemeManager::getGameBackgroundWinColor() const {
+    return m_currentColors.game_background_win;
+}
+
+sf::Color ThemeManager::getGameBackgroundLostColor() const {
+    return m_currentColors.game_background_lost;
+}
+
+sf::Color ThemeManager::getRoomColor() const {
+    return m_currentColors.game_room;
+}
+
+sf::Color ThemeManager::getWallColor() const {
+    return m_currentColors.game_wall;
+}
+
+sf::Color ThemeManager::getButtonScoreColor() const {
+    return m_currentColors.button_text_score;
+}
+
+void ThemeManager::loadThemeColors() {
+    if (m_theme == Theme::LIGHT) {
+        m_currentColors = {
+                config::COLOR_TEXT_LIGHT,
+                config::BUTTON_COLOR_FILL_LIGHT,
+                config::BUTTON_COLOR_SELECTION_LIGHT,
+                config::BUTTON_COLOR_FRAME_LIGHT,
+                config::GAME_COLOR_BACKGROUND_INGAME_LIGHT,
+                config::GAME_COLOR_BACKGROUND_WIN_LIGHT,
+                config::GAME_COLOR_BACKGROUND_LOST_LIGHT,
+                config::GAME_COLOR_ROOM_LIGHT,
+                config::GAME_COLOR_WALL_LIGHT,
+                config::COLOR_TEXT_LIGHT,
+                config::BUTTON_TEXT_SCORE_LIGHT
+        };
+
+    } else if (m_theme == Theme::DARK) {
+        m_currentColors = {
+                config::COLOR_TEXT_DARK,
+                config::BUTTON_COLOR_FILL_DARK,
+                config::BUTTON_COLOR_SELECTION_DARK,
+                config::BUTTON_COLOR_FRAME_DARK,
+                config::GAME_COLOR_BACKGROUND_INGAME_DARK,
+                config::GAME_COLOR_BACKGROUND_WIN_DARK,
+                config::GAME_COLOR_BACKGROUND_LOST_DARK,
+                config::GAME_COLOR_ROOM_DARK,
+                config::GAME_COLOR_WALL_DARK,
+                config::COLOR_TEXT_DARK,
+                config::BUTTON_TEXT_SCORE_DARK
+        };
+    }
+}
+
diff --git a/source/application/State/ThemeManager.h b/source/application/Utilities/ThemeManager.h
similarity index 76%
rename from source/application/State/ThemeManager.h
rename to source/application/Utilities/ThemeManager.h
index 049de717f4dee1f1927956131f9d0961ee91926f..40fce72172cfd33de8bad312caefbe2a10ca7715 100644
--- a/source/application/State/ThemeManager.h
+++ b/source/application/Utilities/ThemeManager.h
@@ -1,33 +1,29 @@
 #pragma once
 #include "../../../config.h"
 
+/**
+ * @brief Менеджер для загрузки цветов через паттер Singletone
+ * С помощью set_theme() устанавливается тема приложения: светлая или темная
+ * Изначально светлая тема
+ */
 struct ThemeColors {
     sf::Color button_text;
     sf::Color button_fill;
     sf::Color button_selection;
     sf::Color button_frame;
-    sf::Color select_level_background;
     sf::Color game_background_ingame;
     sf::Color game_background_win;
     sf::Color game_background_lost;
-    sf::Color game_pacman;
-    sf::Color game_pacman_invisible;
     sf::Color game_room;
     sf::Color game_wall;
-    sf::Color game_food;
-    sf::Color game_enemy;
     sf::Color title_text;
-    sf::Color room_color;
-    sf::Color wall_color;
     sf::Color button_text_score;
-
 };
 
 
 class ThemeManager {
 public:
     enum class Theme { LIGHT, DARK };
-
     ThemeManager(const ThemeManager&) = delete;
     ThemeManager& operator=(const ThemeManager&) = delete;
     static ThemeManager& Instance();
@@ -38,9 +34,7 @@ public:
     sf::Color getButtonOutlineColor() const;
     sf::Color getButtonTextColor() const;
     sf::Color getButtonSelectionColor() const;
-
     sf::Color getTitleTextColor() const;
-
     sf::Color getGameBackgroundInGameColor() const;
     sf::Color getGameBackgroundWinColor() const;
     sf::Color getGameBackgroundLostColor() const;
@@ -53,6 +47,5 @@ private:
     Theme m_theme = Theme::LIGHT;
     ThemeColors m_currentColors;
     void loadThemeColors();
-
-    ThemeManager() {set_theme(Theme::LIGHT);};
+    ThemeManager() {set_theme(Theme::LIGHT);}; ///> изначальное светлая тема
 };