From 26b5d55224b3636f915da7ece28e1f235b4bd57c Mon Sep 17 00:00:00 2001 From: ? Date: Wed, 27 Feb 2019 13:30:09 +0100 Subject: [PATCH] 3D:: 123 keys now switch perspectives --- control.cpp | 5 +++++ menus.cpp | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/control.cpp b/control.cpp index 04fefc3f..3ce67263 100644 --- a/control.cpp +++ b/control.cpp @@ -963,6 +963,11 @@ void gmodekeys(int sym, int uni) { vid.wallmode--; } } + else { + if(NUMBERKEY == '1') { vid.yshift = 0; vid.sspeed = 0; } + if(NUMBERKEY == '2') { vid.yshift = 0; vid.sspeed = -10; } + if(NUMBERKEY == '3') { vid.yshift = 2; vid.sspeed = 0; } + } if(NUMBERKEY == '6') vid.grid = !vid.grid; if(NUMBERKEY == '7') { vid.darkhepta = !vid.darkhepta; } } diff --git a/menus.cpp b/menus.cpp index 7d29900b..f6253fbd 100644 --- a/menus.cpp +++ b/menus.cpp @@ -340,6 +340,11 @@ void showDisplayMode() { dialog::addBoolItem(XLAT(sphere ? "zoomed stereographic projection" : euclid ? "zoomed in" : "big Poincaré model"), vid.alpha == 1 && vid.scale >= 1, '3'); dialog::addBoolItem(XLAT((sphere || euclid) ? "gnomonic projection" : "Klein-Beltrami model"), vid.alpha == 0, '4'); } + else { + dialog::addBoolItem(XLAT("first person perspective"), vid.yshift == 0 && vid.sspeed > -5, '1'); + dialog::addBoolItem(XLAT("fixed point of view"), vid.sspeed <= -5, '2'); + dialog::addBoolItem(XLAT("third person perspective"), vid.yshift > 0 && vid.sspeed > -5, '3'); + } dialog::addSelItem(XLAT("wall display mode"), XLAT(wdmodes[vid.wallmode]), '5'); if(getcstat == '5')