diff --git a/desktop_version/src/Game.cpp b/desktop_version/src/Game.cpp index a7a10dd0..00569209 100644 --- a/desktop_version/src/Game.cpp +++ b/desktop_version/src/Game.cpp @@ -6837,42 +6837,49 @@ void Game::createmenu( enum Menu::MenuName t, bool samemenu/*= false*/ ) break; case Menu::credits: option("next page"); + option("last page"); option("return"); menuxoff = 20; menuyoff = 64; break; case Menu::credits2: option("next page"); + option("previous page"); option("return"); menuxoff = 20; menuyoff = 64; break; case Menu::credits25: option("next page"); + option("previous page"); option("return"); menuxoff = 20; menuyoff = 64; break; case Menu::credits3: option("next page"); + option("previous page"); option("return"); menuxoff = 20; menuyoff = 64; break; case Menu::credits4: option("next page"); + option("previous page"); option("return"); menuxoff = 20; menuyoff = 64; break; case Menu::credits5: option("next page"); + option("previous page"); option("return"); menuxoff = 20; menuyoff = 64; break; case Menu::credits6: option("first page"); + option("previous page"); option("return"); menuxoff = 20; menuyoff = 64; diff --git a/desktop_version/src/Input.cpp b/desktop_version/src/Input.cpp index 2fb71da1..66271d3f 100644 --- a/desktop_version/src/Input.cpp +++ b/desktop_version/src/Input.cpp @@ -701,6 +701,13 @@ void menuactionpress() game.createmenu(Menu::credits2, true); map.nexttowercolour(); break; + case 1: + //last page + music.playef(11); + game.createmenu(Menu::credits6, true); + game.currentmenuoption = 1; + map.nexttowercolour(); + break; default: //back music.playef(11); @@ -719,6 +726,13 @@ void menuactionpress() map.nexttowercolour(); break; case 1: + //previous page + music.playef(11); + game.createmenu(Menu::credits, true); + game.currentmenuoption = 1; + map.nexttowercolour(); + break; + case 2: //back music.playef(11); game.returnmenu(); @@ -735,6 +749,13 @@ void menuactionpress() game.createmenu(Menu::credits3, true); map.nexttowercolour(); break; + case 1: + //previous page + music.playef(11); + game.createmenu(Menu::credits2, true); + game.currentmenuoption = 1; + map.nexttowercolour(); + break; default: //back music.playef(11); @@ -763,6 +784,26 @@ void menuactionpress() game.createmenu(Menu::credits3, true); } + map.nexttowercolour(); + break; + case 1: + //previous page + music.playef(11); + game.current_credits_list_index -= 9; + + if (game.current_credits_list_index < 0) + { + //No more super patrons. Move to the previous credits section + game.current_credits_list_index = 0; + game.createmenu(Menu::credits25, true); + } + else + { + //There are more super patrons. Refresh the menu with the next ones + game.createmenu(Menu::credits3, true); + } + game.currentmenuoption = 1; + map.nexttowercolour(); break; default: @@ -794,6 +835,26 @@ void menuactionpress() game.createmenu(Menu::credits4, true); } + map.nexttowercolour(); + break; + case 1: + //previous page + music.playef(11); + game.current_credits_list_index -= 14; + + if (game.current_credits_list_index < 0) + { + //No more patrons. Move to the previous credits section + game.current_credits_list_index = game.superpatrons.size() - 1 - (game.superpatrons.size()-1)%9; + game.createmenu(Menu::credits3, true); + } + else + { + //There are more patrons. Refresh the menu with the next ones + game.createmenu(Menu::credits4, true); + } + game.currentmenuoption = 1; + map.nexttowercolour(); break; default: @@ -825,6 +886,26 @@ void menuactionpress() game.createmenu(Menu::credits5, true); } + map.nexttowercolour(); + break; + case 1: + //previous page + music.playef(11); + game.current_credits_list_index -= 9; + + if (game.current_credits_list_index < 0) + { + //No more GitHub contributors. Move to the previous credits section + game.current_credits_list_index = game.patrons.size() - 1 - (game.patrons.size()-1)%14; + game.createmenu(Menu::credits4, true); + } + else + { + //There are more GitHub contributors. Refresh the menu with the next ones + game.createmenu(Menu::credits5, true); + } + game.currentmenuoption = 1; + map.nexttowercolour(); break; default: @@ -845,6 +926,14 @@ void menuactionpress() game.createmenu(Menu::credits, true); map.nexttowercolour(); break; + case 1: + //previous page + music.playef(11); + game.current_credits_list_index = game.githubfriends.size() - 1 - (game.githubfriends.size()-1)%9; + game.createmenu(Menu::credits5, true); + game.currentmenuoption = 1; + map.nexttowercolour(); + break; default: //back music.playef(11);