Deeangbandのフルスクラッチ新ソースコード。
BSD系ライセンスを採用予定。
Revision | 4202db3b4c1efa179a21d50ab0e13386f8459a97 (tree) |
---|---|
Time | 2015-01-20 23:50:22 |
Author | Deskull <desull@user...> |
Commiter | Deskull |
GameElementにstaticなポインタ GameWorldPtr, GameSurfacePtr, GameLoggerPtrを追加。 / Add static pointers to GameElement.
@@ -30,8 +30,14 @@ namespace Deeangband | ||
30 | 30 | for(x = 0; x < width; x++) |
31 | 31 | { |
32 | 32 | squares[y].push_back(boost::shared_ptr<Square>(new Square())); |
33 | - if(Dice::Cast(1, 4) == 3) squares[y][x]->SetFloorTag(dungeonPtr->GetInnerWallFloorTag()); | |
34 | - else squares[y][x]->SetFloorTag(dungeonPtr->GetFloorFloorTag()); | |
33 | + if(Dice::Cast(1, 4) == 3) | |
34 | + { | |
35 | + squares[y][x]->SetFloorTag(dungeonPtr->GetInnerWallFloorTag()); | |
36 | + } | |
37 | + else | |
38 | + { | |
39 | + squares[y][x]->SetFloorTag(dungeonPtr->GetFloorFloorTag()); | |
40 | + } | |
35 | 41 | } |
36 | 42 | } |
37 | 43 |
@@ -9,9 +9,15 @@ | ||
9 | 9 | #include "stdafx.h" |
10 | 10 | #include "GameElement.h" |
11 | 11 | #include "GameWorld.h" |
12 | +#include "GameSurface.h" | |
13 | +#include "GameLogger.h" | |
12 | 14 | |
13 | 15 | namespace Deeangband |
14 | 16 | { |
17 | + GameWorld *GameElement::GameWorldPtr; | |
18 | + GameSurface *GameElement::GameSurfacePtr; | |
19 | + GameLogger *GameElement::GameLoggerPtr; | |
20 | + | |
15 | 21 | GameElement::GameElement(void) |
16 | 22 | { |
17 | 23 | this->WipeData(); |
@@ -13,6 +13,8 @@ | ||
13 | 13 | namespace Deeangband |
14 | 14 | { |
15 | 15 | class GameWorld; |
16 | + class GameSurface; | |
17 | + class GameLogger; | |
16 | 18 | |
17 | 19 | /*! |
18 | 20 | * @class GameElement |
@@ -49,6 +51,10 @@ namespace Deeangband | ||
49 | 51 | |
50 | 52 | public: |
51 | 53 | |
54 | + static GameWorld *GameWorldPtr; | |
55 | + static GameSurface *GameSurfacePtr; | |
56 | + static GameLogger *GameLoggerPtr; | |
57 | + | |
52 | 58 | /*! |
53 | 59 | * @brief 長さを単位つきでstringに変換する。 |
54 | 60 | */ |
@@ -24,6 +24,10 @@ namespace Deeangband | ||
24 | 24 | gameSurface = new GameSurfaceSDL(gameWorld); |
25 | 25 | gameLogger = new GameLogger(); |
26 | 26 | |
27 | + GameElement::GameWorldPtr = gameWorld; | |
28 | + GameElement::GameSurfacePtr = gameSurface; | |
29 | + GameElement::GameLoggerPtr = gameLogger; | |
30 | + | |
27 | 31 | gameSurface->SetField(gameWorld->GetField(0)); |
28 | 32 | gameSurface->SetSideStatusCreature(gameWorld->GetCreature(0)); |
29 | 33 | this->gameLogger->PutLog("GameEngine開始"); |
@@ -60,8 +60,8 @@ namespace Deeangband | ||
60 | 60 | void Square::WipeData(void); |
61 | 61 | |
62 | 62 | /*! |
63 | - * @brief 所属するフロアのポインタを返す。 | |
64 | - */ | |
63 | + * @brief 所属するフロアのポインタを返す。 | |
64 | + */ | |
65 | 65 | Field* Square::GetFieldPtr(void); |
66 | 66 | |
67 | 67 | /*! |