From: Daniel Karbach Date: Fri, 13 Mar 2015 16:48:39 +0000 (+0100) Subject: print block info on keypress X-Git-Url: http://git.localhorst.tv/?a=commitdiff_plain;ds=sidebyside;h=d242294d15e7465f915d4c79ce563a557afc74d8;p=blank.git print block info on keypress --- diff --git a/src/interface.cpp b/src/interface.cpp index 1f66b73..00c291d 100644 --- a/src/interface.cpp +++ b/src/interface.cpp @@ -3,8 +3,10 @@ #include "geometry.hpp" #include "world.hpp" +#include #include #include +#include namespace blank { @@ -65,6 +67,15 @@ void Interface::Handle(const SDL_KeyboardEvent &event) { TurnBlock(); } break; + + case SDLK_b: + if (event.state == SDL_PRESSED) { + PrintBlockInfo(); + } + case SDLK_p: + if (event.state == SDL_PRESSED) { + PrintSelectionInfo(); + } } } @@ -78,6 +89,31 @@ void Interface::TurnBlock() { hud.Display(selection); } +void Interface::PrintBlockInfo() { + std::cout << std::endl; + if (!aim_chunk) { + std::cout << "not looking at any block" << std::endl; + return; + } + std::cout << "looking at block " << aim_block + << " " << Chunk::ToCoords(aim_block) + << " of chunk " << aim_chunk->Position() + << std::endl; + Print(aim_chunk->BlockAt(aim_block)); +} + +void Interface::PrintSelectionInfo() { + std::cout << std::endl; + Print(selection); +} + +void Interface::Print(const Block &block) { + std::cout << "type: " << block.type + << ", face: " << block.GetFace() + << ", turn: " << block.GetTurn() + << std::endl; +} + void Interface::Handle(const SDL_MouseMotionEvent &event) { ctrl.RotateYaw(event.xrel * yaw_sensitivity); diff --git a/src/interface.hpp b/src/interface.hpp index a4b7a92..6817305 100644 --- a/src/interface.hpp +++ b/src/interface.hpp @@ -33,6 +33,10 @@ public: void PlaceBlock(); void RemoveBlock(); + void PrintBlockInfo(); + void PrintSelectionInfo(); + void Print(const Block &); + void SelectNext(); void SelectPrevious();