OSDN Git Service

17a21009d0674841823d5c2a7ef844bd85b26b33
[deeangband/Deeangband-new.git] / Deeangband / GameLogger.h
1 /*!
2 * @file GameLogger.h
3 * @brief GameLogger\83N\83\89\83X\82Ì\83v\83\8d\83g\83^\83C\83v
4 * @date 2013/07/06
5 * @author Deskull
6 * 2014 Sikabane Works.
7 */
8
9 #pragma once
10
11 #include "stdafx.h"
12 #include "Deeangband.h"
13 #include "GameMessage.h"
14
15 namespace Deeangband
16 {
17
18         /*! 
19         * @class GameLogger
20         * @brief \83Q\81[\83\80\83\8d\83O\8aÇ\97\9d\83N\83\89\83X
21         */
22         class GameLogger
23         {
24         protected:
25                 std::ofstream ofs;
26                 std::vector<std::shared_ptr<GameMessage>> gameMessages; //!< \83Q\81[\83\80\83\8d\83O\94z\97ñ
27
28         public:
29
30                 /*!
31                  * @brief GaneLogger\83N\83\89\83X\83R\83\93\83X\83g\83\89\83N\83^
32                  */
33                 GameLogger::GameLogger(void);
34
35                 /*!
36                  * @brief GaneLogger\83N\83\89\83X\83f\83X\83g\83\89\83N\83^
37                  */
38                 GameLogger::~GameLogger(void);
39
40                 /*!
41                  * @brief \83\8d\83O\83\81\83b\83Z\81[\83W\82ð\8fo\97Í\82·\82é
42                  * @param \8fo\97Í\95\8e\9a\97ñ
43                  * @return \82È\82µ
44                  */
45                 void GameLogger::PutLog(std::string log);
46
47                 /*!
48                  * @brief \83N\83\8a\81[\83`\83\83\81[\82Ì\88Ú\93®\82ð\8bL\98^\82·\82é\81B
49                  * @param creatureID \88Ú\93®\82µ\82½\83N\83\8a\81[\83`\83\83\81[\82ÌID
50                  * @param name \88Ú\93®\82µ\82½\83N\83\8a\81[\83`\83\83\81[\82Ì\96¼\91O
51                  * @param dir \88Ú\93®\82µ\82½\95û\8cü
52                  * @return \82È\82µ
53                  */
54                 void GameLogger::CreatureMoved(ID creatureID, NAME name, DIRECTION dir);
55
56                 /*!
57                  * @brief \83N\83\8a\81[\83`\83\83\81[\82Ì\94\92\95º\8f\88\97\9d\8aJ\8en\82ð\8bL\98^\82·\82é
58                  * @param attackerName \8dU\8c\82\91¤\83N\83\8a\81[\83`\83\83\81[\82Ì\96¼\91O
59                  * @param targetName \96h\8cä\91¤\83N\83\8a\81[\83`\83\83\81[\82Ì\96¼\91O
60                  * @return \82È\82µ
61                  */
62                 void GameLogger::CreaturesCombated(NAME attackerName, NAME targetName);
63
64                 //this->gameMessages.emplace_back(boost::make_shared<GameMessage>(message, type));
65
66         };
67 }