diff --git a/src/game/GameController.cpp b/src/game/GameController.cpp index dfe3a9449..07ccfe909 100644 --- a/src/game/GameController.cpp +++ b/src/game/GameController.cpp @@ -860,6 +860,12 @@ void GameController::SetDecoration() gameModel->SetDecoration(!gameModel->GetDecoration()); } +void GameController::ShowGravityGrid() +{ + gameModel->ShowGravityGrid(!gameModel->GetGravityGrid()); + gameModel->UpdateQuickOptions(); +} + void GameController::SetActiveColourPreset(int preset) { gameModel->SetActiveColourPreset(preset); diff --git a/src/game/GameController.h b/src/game/GameController.h index 2ac8bea1c..4c7a8c984 100644 --- a/src/game/GameController.h +++ b/src/game/GameController.h @@ -94,6 +94,7 @@ public: void SetPaused(); void SetDecoration(bool decorationState); void SetDecoration(); + void ShowGravityGrid(); void SetActiveMenu(Menu * menu); void SetActiveTool(int toolSelection, Tool * tool); void SetActiveColourPreset(int preset); diff --git a/src/game/GameModel.cpp b/src/game/GameModel.cpp index 0a3c57701..4a11d5520 100644 --- a/src/game/GameModel.cpp +++ b/src/game/GameModel.cpp @@ -802,6 +802,20 @@ bool GameModel::GetAHeatEnable() return sim->aheat_enable; } +void GameModel::ShowGravityGrid(bool showGrid) +{ + ren->gravityFieldEnabled = showGrid; + if (showGrid) + SetInfoTip("Gravity Grid: On"); + else + SetInfoTip("Gravity Grid: Off"); +} + +bool GameModel::GetGravityGrid() +{ + return ren->gravityFieldEnabled; +} + void GameModel::FrameStep(int frames) { sim->framerender += frames; diff --git a/src/game/GameModel.h b/src/game/GameModel.h index 7288c3266..c1d97d627 100644 --- a/src/game/GameModel.h +++ b/src/game/GameModel.h @@ -162,6 +162,8 @@ public: void SetDecoration(bool decorationState); bool GetAHeatEnable(); void SetAHeatEnable(bool aHeat); + bool GetGravityGrid(); + void ShowGravityGrid(bool showGrid); void ClearSimulation(); vector