mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-11-27 14:37:16 +00:00
improved 3D settings: more adapted help text, added eye editing
This commit is contained in:
parent
d864c8cc1e
commit
d235540647
44
config.cpp
44
config.cpp
@ -1423,29 +1423,57 @@ void show3D() {
|
||||
vid.tc_depth = ticks,
|
||||
dialog::editNumber(vid.depth, 0, 5, .1, 1, XLAT("Ground level below the plane"), ""),
|
||||
dialog::extra_options = [] {
|
||||
dialog::addHelp(XLAT(
|
||||
help = XLAT(
|
||||
"Ground level is actually an equidistant surface, "
|
||||
"%1 absolute units below the plane P. "
|
||||
"Theoretically, this value affects the world -- "
|
||||
"for example, eagles could fly %2 times faster by "
|
||||
"flying above the ground level, on the plane P -- "
|
||||
"but the actual game mechanics are not affected. "
|
||||
"but the actual game mechanics are not affected. ", fts(vid.depth), fts(cosh(vid.depth)));
|
||||
if(GDIM == 2)
|
||||
help += XLAT(
|
||||
"(Distances reported by the vector graphics editor "
|
||||
"are not about points on the ground level, but "
|
||||
"about the matching points on the plane P -- "
|
||||
"divide them by the factor above to get actual "
|
||||
"distances.)"
|
||||
|
||||
,
|
||||
fts(vid.depth), fts(cosh(vid.depth))));
|
||||
// mention absolute units
|
||||
);
|
||||
if(GDIM == 3 && pmodel == mdPerspective && !euclid) {
|
||||
ld current_camera_level = hdist0(tC0(radar_transform));
|
||||
help += "\n\n";
|
||||
if(abs(current_camera_level) < 1e-6)
|
||||
help += XLAT(
|
||||
"The camera is currently exactly on the plane P. "
|
||||
"The horizon is seen as a straight line."
|
||||
);
|
||||
else help += XLAT(
|
||||
"The camera is currently %1 units above the plane P. "
|
||||
"This makes you see the floor level as in general perspective projection "
|
||||
"with parameter %2.", fts(current_camera_level), fts(tan_auto(vid.depth) / tan_auto(current_camera_level)));
|
||||
}
|
||||
dialog::addHelp(help);
|
||||
};
|
||||
else if(uni == 'a' && WDIM == 2)
|
||||
else if(uni == 'E' && WDIM == 2 && GDIM == 3)
|
||||
vid.tc_depth = ticks,
|
||||
dialog::editNumber(vid.eye, -5, 5, .1, 0, XLAT("eye level"), ""),
|
||||
dialog::dialogflags |= sm::CENTER,
|
||||
dialog::extra_options = [] {
|
||||
|
||||
dialog::addHelp(XLAT("In the FPP mode, the camera will be set at this altitude (before applying shifts)."));
|
||||
|
||||
dialog::addBoolItem(XLAT("auto-adjust to eyes on the player model"), vid.auto_eye, 'O');
|
||||
dialog::reaction = [] { vid.auto_eye = false; };
|
||||
dialog::add_action([] () {
|
||||
vid.auto_eye = !vid.auto_eye;
|
||||
geom3::do_auto_eye();
|
||||
});
|
||||
};
|
||||
else if(uni == 'p' && WDIM == 2)
|
||||
projectionDialog();
|
||||
else if(uni == 'w' && WDIM == 2) {
|
||||
dialog::editNumber(vid.wall_height, 0, 1, .1, .3, XLAT("Height of walls"), "");
|
||||
dialog::extra_options = [] () {
|
||||
dialog::addHelp(XLAT(
|
||||
dialog::addHelp(GDIM == 3 ? "" : XLAT(
|
||||
"The height of walls, in absolute units. For the current values of g and c, "
|
||||
"wall height of %1 absolute units corresponds to projection value of %2.",
|
||||
fts(actual_wall_height()), fts(factor_to_projection(cgi.WALL))));
|
||||
|
2
hyper.h
2
hyper.h
@ -3559,7 +3559,7 @@ inline hyperpoint tC0(const transmatrix &T) {
|
||||
transmatrix actualV(const heptspin& hs, const transmatrix& V);
|
||||
transmatrix cview();
|
||||
bool isWall3(cell *c, color_t& wcol);
|
||||
extern transmatrix actual_view_transform;
|
||||
extern transmatrix actual_view_transform, radar_transform;
|
||||
ld wall_radar(cell *c, transmatrix T);
|
||||
|
||||
extern string bitruncnames[5];
|
||||
|
@ -4575,17 +4575,21 @@ S("Ground level is actually an equidistant surface, "
|
||||
"Theoretically, this value affects the world -- "
|
||||
"for example, eagles could fly %2 times faster by "
|
||||
"flying above the ground level, on the plane P -- "
|
||||
"but the actual game mechanics are not affected. "
|
||||
"but the actual game mechanics are not affected. ",
|
||||
|
||||
"Úroveň země je ve skutečnosti ekvidistantní plocha, která se nachází %1 absolutních "
|
||||
"jednotek pod rovinou P. Tato hodnota teoreticky ovlivňuje svět -- orli by například "
|
||||
"mohli létat %2-krát rychleji, kdyby létali nad úrovní země v rovině P -- ale herní "
|
||||
"mechaniky jako takové tím ovlivněny nejsou. ")
|
||||
|
||||
S(
|
||||
"(Distances reported by the vector graphics editor "
|
||||
"are not about points on the ground level, but "
|
||||
"about the matching points on the plane P -- "
|
||||
"divide them by the factor above to get actual "
|
||||
"distances.",
|
||||
|
||||
"Úroveň země je ve skutečnosti ekvidistantní plocha, která se nachází %1 absolutních "
|
||||
"jednotek pod rovinou P. Tato hodnota teoreticky ovlivňuje svět -- orli by například "
|
||||
"mohli létat %2-krát rychleji, kdyby létali nad úrovní země v rovině P -- ale herní "
|
||||
"mechaniky jako takové tím ovlivněny nejsou. (Vzdálenosti v editoru vektorové "
|
||||
"(Vzdálenosti v editoru vektorové "
|
||||
"grafiky nejsou vzdálenosti bodů na úrovni země, ale odpovídajících bodů v rovině "
|
||||
"P -- skutečné vzdálenosti získáte jejich vydělením výše zmíněným faktorem.")
|
||||
|
||||
|
@ -4488,18 +4488,21 @@ S("Ground level is actually an equidistant surface, "
|
||||
"Theoretically, this value affects the world -- "
|
||||
"for example, eagles could fly %2 times faster by "
|
||||
"flying above the ground level, on the plane P -- "
|
||||
"but the actual game mechanics are not affected. "
|
||||
"(Distances reported by the vector graphics editor "
|
||||
"are not about points on the ground level, but "
|
||||
"about the matching points on the plane P -- "
|
||||
"divide them by the factor above to get actual "
|
||||
"distances.",
|
||||
"but the actual game mechanics are not affected. ",
|
||||
|
||||
"Poziom podłoża jest w rzeczywistości ekwidystantną powierzchnią "
|
||||
"%1 jednostek pod płaszczyzną P. Teoretycznie, ta wartość "
|
||||
"wpływa na świat -- przykładowo, orły mogłyby latać %2 razy "
|
||||
"szybciej, latając powyżej poziomu podłoża na wysokości płaszczyzny "
|
||||
"P -- ale nie wpływa to na mechanikę gry w żaden sposób. "
|
||||
"P -- ale nie wpływa to na mechanikę gry w żaden sposób. ")
|
||||
|
||||
|
||||
S("(Distances reported by the vector graphics editor "
|
||||
"are not about points on the ground level, but "
|
||||
"about the matching points on the plane P -- "
|
||||
"divide them by the factor above to get actual "
|
||||
"distances.",
|
||||
|
||||
"(Odległości wyświetlane przez edytor grafiki "
|
||||
"dotyczą odległości między odpowiednimi punktami na płaszczyźnie P.")
|
||||
|
||||
|
@ -4664,18 +4664,20 @@ S("Ground level is actually an equidistant surface, "
|
||||
"Theoretically, this value affects the world -- "
|
||||
"for example, eagles could fly %2 times faster by "
|
||||
"flying above the ground level, on the plane P -- "
|
||||
"but the actual game mechanics are not affected. "
|
||||
"(Distances reported by the vector graphics editor "
|
||||
"are not about points on the ground level, but "
|
||||
"about the matching points on the plane P -- "
|
||||
"divide them by the factor above to get actual "
|
||||
"distances.",
|
||||
"but the actual game mechanics are not affected. ",
|
||||
|
||||
"Поверхность земли является эквидистантой на глубине "
|
||||
"%1 единицу ниже плоскости P. Теоретически, это значение "
|
||||
"могло бы влиять на мир. Например, орлы могли бы летать в %2 раз "
|
||||
"быстрее, летая над уровнем земли, на плоскости "
|
||||
"P -- но механика игры не меняется. "
|
||||
"P -- но механика игры не меняется. ")
|
||||
|
||||
S("(Distances reported by the vector graphics editor "
|
||||
"are not about points on the ground level, but "
|
||||
"about the matching points on the plane P -- "
|
||||
"divide them by the factor above to get actual "
|
||||
"distances.",
|
||||
|
||||
"(Расстояния в редакторе векторной графики относятся"
|
||||
"не к точкам на поверхности, а к их проекциям на плоскость P.)")
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user