summaryrefslogtreecommitdiff
path: root/src/game
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2012-08-05 14:26:17 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-08-05 14:26:17 (GMT)
commited270d8dbf685fdc00e01959e1aa63c2163f152b (patch)
tree6653c43fd2875f32cde195ac43b9d63e8f9b96cb /src/game
parent351ce1525f570a52d571d1da720ae4f6a5815a22 (diff)
downloadpowder-ed270d8dbf685fdc00e01959e1aa63c2163f152b.zip
powder-ed270d8dbf685fdc00e01959e1aa63c2163f152b.tar.gz
Draw gravity zones when using grav wall
Diffstat (limited to 'src/game')
-rw-r--r--src/game/GameController.cpp8
-rw-r--r--src/game/GameModel.cpp1
-rw-r--r--src/game/QuickOptions.h22
3 files changed, 29 insertions, 2 deletions
diff --git a/src/game/GameController.cpp b/src/game/GameController.cpp
index 350bc25..ea21fd1 100644
--- a/src/game/GameController.cpp
+++ b/src/game/GameController.cpp
@@ -653,6 +653,14 @@ void GameController::SetActiveMenu(Menu * menu)
void GameController::SetActiveTool(int toolSelection, Tool * tool)
{
gameModel->SetActiveTool(toolSelection, tool);
+ gameModel->GetRenderer()->gravityZonesEnabled = false;
+ for(int i = 0; i < 3; i++)
+ {
+ if(gameModel->GetActiveTool(i) == gameModel->GetMenuList().at(SC_WALL)->GetToolList().at(WL_GRAV))
+ {
+ gameModel->GetRenderer()->gravityZonesEnabled = true;
+ }
+ }
}
void GameController::OpenSearch()
diff --git a/src/game/GameModel.cpp b/src/game/GameModel.cpp
index 85f54d3..9a9e807 100644
--- a/src/game/GameModel.cpp
+++ b/src/game/GameModel.cpp
@@ -138,6 +138,7 @@ void GameModel::BuildQuickOptionMenu()
quickOptions.push_back(new DecorationsOption(this));
quickOptions.push_back(new NGravityOption(this));
quickOptions.push_back(new AHeatOption(this));
+ quickOptions.push_back(new DrawGravWallOption(this));
notifyQuickOptionsChanged();
UpdateQuickOptions();
diff --git a/src/game/QuickOptions.h b/src/game/QuickOptions.h
index f194c1c..b22834c 100644
--- a/src/game/QuickOptions.h
+++ b/src/game/QuickOptions.h
@@ -29,11 +29,11 @@ public:
}
virtual bool GetToggle()
{
- return m->GetRenderer()->gravifyFieldEnabled;
+ return m->GetRenderer()->gravityFieldEnabled;
}
virtual void perform()
{
- m->GetRenderer()->gravifyFieldEnabled = !m->GetRenderer()->gravifyFieldEnabled;
+ m->GetRenderer()->gravityFieldEnabled = !m->GetRenderer()->gravityFieldEnabled;
}
};
@@ -96,4 +96,22 @@ public:
{
m->GetSimulation()->aheat_enable = !m->GetSimulation()->aheat_enable;
}
+};
+
+class DrawGravWallOption: public QuickOption
+{
+public:
+ DrawGravWallOption(GameModel * m):
+ QuickOption("Z", "Draw gravity zones", m, Toggle)
+ {
+
+ }
+ virtual bool GetToggle()
+ {
+ return m->GetRenderer()->gravityZonesEnabled;
+ }
+ virtual void perform()
+ {
+ m->GetRenderer()->gravityZonesEnabled = !m->GetRenderer()->gravityZonesEnabled;
+ }
}; \ No newline at end of file