From bb940a946dbca49dc03af83fe55d195bd9fdc62e Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Sun, 26 Jun 2011 02:34:36 +0300 Subject: even more code refactoring --- src/game.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/game.cpp') diff --git a/src/game.cpp b/src/game.cpp index f3fac0c84..337879cb8 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -30,8 +30,12 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "clouds.h" #include "keycode.h" #include "farmesh.h" +#include "mapblock.h" -// TODO: Move content-aware stuff to separate file +/* + TODO: Move content-aware stuff to separate file by adding properties + and virtual interfaces +*/ #include "content_mapnode.h" #include "content_nodemeta.h" -- cgit v1.2.3 From c1ceabef717d4461cab8832fe75068c7c14cb9b5 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Sun, 26 Jun 2011 03:14:52 +0300 Subject: added and commented out some debug output --- src/game.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'src/game.cpp') diff --git a/src/game.cpp b/src/game.cpp index 337879cb8..aa1cf4a70 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -940,6 +940,8 @@ void the_game( while(device->run() && kill == false) { + //std::cerr<<"frame"<disconnect_requested) { g_gamecallback->disconnect_requested = false; @@ -1221,6 +1223,19 @@ void the_game( chat_lines.push_back(ChatLine(L"fast_move enabled")); } } + else if(input->wasKeyDown(getKeySetting("keymap_frametime_graph"))) + { + if(g_settings.getBool("frametime_graph")) + { + g_settings.set("frametime_graph","false"); + chat_lines.push_back(ChatLine(L"frametime_graph disabled")); + } + else + { + g_settings.set("frametime_graph","true"); + chat_lines.push_back(ChatLine(L"frametime_graph enabled")); + } + } // Item selection with mouse wheel { -- cgit v1.2.3 From 91cfbe2891a3fbec2aac019ccfba74b667d94fc4 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Sun, 26 Jun 2011 15:48:56 +0300 Subject: reorganized a lot of stuff and modified mapgen and objects slightly while doing it --- src/game.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/game.cpp') diff --git a/src/game.cpp b/src/game.cpp index aa1cf4a70..59f14d37d 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -661,7 +661,9 @@ void the_game( screensize = driver->getScreenSize(); const s32 hotbar_itemcount = 8; - const s32 hotbar_imagesize = 36; + //const s32 hotbar_imagesize = 36; + //const s32 hotbar_imagesize = 64; + s32 hotbar_imagesize = 48; // The color of the sky @@ -967,6 +969,14 @@ void the_game( screensize = driver->getScreenSize(); v2s32 displaycenter(screensize.X/2,screensize.Y/2); //bool screensize_changed = screensize != last_screensize; + + // Resize hotbar + if(screensize.Y <= 600) + hotbar_imagesize = 32; + else if(screensize.Y <= 1024) + hotbar_imagesize = 48; + else + hotbar_imagesize = 64; // Hilight boxes collected during the loop and displayed core::list< core::aabbox3d > hilightboxes; -- cgit v1.2.3 From 7e59938c5468a948634d93adaa61a71d383852ff Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Sun, 26 Jun 2011 19:33:40 +0300 Subject: added screenshot key F12 (from spongie) --- src/game.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/game.cpp') diff --git a/src/game.cpp b/src/game.cpp index 59f14d37d..3197985e6 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -1246,6 +1246,25 @@ void the_game( chat_lines.push_back(ChatLine(L"frametime_graph enabled")); } } + else if(input->wasKeyDown(getKeySetting("keymap_screenshot"))) + { + irr::video::IImage* const image = driver->createScreenShot(); + if (image) { + irr::c8 filename[256]; + snprintf(filename, 256, "%s/screenshot_%u.png", + g_settings.get("screenshot_path").c_str(), + device->getTimer()->getRealTime()); + if (driver->writeImageToFile(image, filename)) { + std::wstringstream sstr; + sstr<<"Saved screenshot to '"<drop(); + } + } // Item selection with mouse wheel { -- cgit v1.2.3 From d702a2c33b975a4763f6831a0ba5d8fce110c8f9 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Sun, 26 Jun 2011 20:00:04 +0300 Subject: Made the initial loading screen slightly more alive --- src/game.cpp | 77 ++++++++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 52 insertions(+), 25 deletions(-) (limited to 'src/game.cpp') diff --git a/src/game.cpp b/src/game.cpp index 3197985e6..55ae6686e 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -639,6 +639,34 @@ void update_skybox(video::IVideoDriver* driver, } } +/* + Draws a screen with a single text on it. + Text will be removed when the screen is drawn the next time. +*/ +/*gui::IGUIStaticText **/ +void draw_load_screen(const std::wstring &text, + video::IVideoDriver* driver, gui::IGUIFont* font) +{ + v2u32 screensize = driver->getScreenSize(); + const wchar_t *loadingtext = text.c_str(); + core::vector2d textsize_u = font->getDimension(loadingtext); + core::vector2d textsize(textsize_u.X,textsize_u.Y); + core::vector2d center(screensize.X/2, screensize.Y/2); + core::rect textrect(center - textsize/2, center + textsize/2); + + gui::IGUIStaticText *guitext = guienv->addStaticText( + loadingtext, textrect, false, false); + guitext->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT); + + driver->beginScene(true, true, video::SColor(255,0,0,0)); + guienv->drawAll(); + driver->endScene(); + + guitext->remove(); + + //return guitext; +} + void the_game( bool &kill, bool random_input, @@ -655,6 +683,9 @@ void the_game( { video::IVideoDriver* driver = device->getVideoDriver(); scene::ISceneManager* smgr = device->getSceneManager(); + + // Calculate text height using the font + u32 text_height = font->getDimension(L"Random test string").Height; v2u32 screensize(0,0); v2u32 last_screensize(0,0); @@ -674,20 +705,10 @@ void the_game( /* Draw "Loading" screen */ - const wchar_t *loadingtext = L"Loading and connecting..."; - u32 text_height = font->getDimension(loadingtext).Height; - core::vector2d center(screensize.X/2, screensize.Y/2); - core::vector2d textsize(300, text_height); - core::rect textrect(center - textsize/2, center + textsize/2); - - gui::IGUIStaticText *gui_loadingtext = guienv->addStaticText( - loadingtext, textrect, false, false); - gui_loadingtext->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT); - - driver->beginScene(true, true, video::SColor(255,0,0,0)); - guienv->drawAll(); - driver->endScene(); + /*gui::IGUIStaticText *gui_loadingtext = */ + //draw_load_screen(L"Loading and connecting...", driver, font); + draw_load_screen(L"Loading...", driver, font); /* Create server. @@ -695,6 +716,7 @@ void the_game( */ SharedPtr server; if(address == ""){ + draw_load_screen(L"Creating server...", driver, font); std::cout<start(port); @@ -704,9 +726,11 @@ void the_game( Create client */ + draw_load_screen(L"Creating client...", driver, font); std::cout<remove(); + //gui_loadingtext->remove(); return; } @@ -753,11 +777,17 @@ void the_game( { break; } + + std::wostringstream ss; + ss<beginScene(true, true, video::SColor(255,0,0,0)); guienv->drawAll(); - driver->endScene(); + driver->endScene();*/ // Update client and server @@ -787,7 +817,7 @@ void the_game( error_message = L"Connection timed out."; std::cout<remove(); + //gui_loadingtext->remove(); return; } @@ -849,7 +879,7 @@ void the_game( Move into game */ - gui_loadingtext->remove(); + //gui_loadingtext->remove(); /* Add some gui stuff @@ -2254,15 +2284,12 @@ void the_game( generator and other stuff quits */ { - const wchar_t *shuttingdowntext = L"Shutting down stuff..."; - gui::IGUIStaticText *gui_shuttingdowntext = guienv->addStaticText( - shuttingdowntext, textrect, false, false); - gui_shuttingdowntext->setTextAlignment(gui::EGUIA_CENTER, - gui::EGUIA_UPPERLEFT); - driver->beginScene(true, true, video::SColor(255,0,0,0)); + /*gui::IGUIStaticText *gui_shuttingdowntext = */ + draw_load_screen(L"Shutting down stuff...", driver, font); + /*driver->beginScene(true, true, video::SColor(255,0,0,0)); guienv->drawAll(); driver->endScene(); - gui_shuttingdowntext->remove(); + gui_shuttingdowntext->remove();*/ } } -- cgit v1.2.3 From d09f9c0d1dd579a640ac4e02d19e8b858f2f1e65 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Mon, 27 Jun 2011 00:29:17 +0300 Subject: made dtime jitter compare value and fps calculation a bit faster changing --- src/game.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/game.cpp') diff --git a/src/game.cpp b/src/game.cpp index 55ae6686e..30206bf40 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -1099,7 +1099,7 @@ void the_game( */ static f32 dtime_avg1 = 0.0; - dtime_avg1 = dtime_avg1 * 0.98 + dtime * 0.02; + dtime_avg1 = dtime_avg1 * 0.96 + dtime * 0.04; f32 dtime_jitter1 = dtime - dtime_avg1; static f32 dtime_jitter1_max_sample = 0.0; -- cgit v1.2.3 From 7b290660ead5e9cfc7ee2762217212ff995a6c85 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Fri, 1 Jul 2011 21:25:31 +0300 Subject: made screen go slightly blue when underwater --- src/game.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/game.cpp') diff --git a/src/game.cpp b/src/game.cpp index 30206bf40..faadd0fe7 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -2241,6 +2241,13 @@ void the_game( core::rect(0,0,screensize.X,screensize.Y), NULL); } + + /* + Environment post fx + */ + { + client.getEnv()->drawPostFx(driver, camera_position); + } /* End scene -- cgit v1.2.3