1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-11-23 21:07:17 +00:00

3d:: sloppy range checking option

This commit is contained in:
Zeno Rogue 2019-05-04 20:21:04 +02:00
parent 94ccddb873
commit 89a900958b
3 changed files with 6 additions and 1 deletions

View File

@ -385,6 +385,7 @@ void initConfig() {
addsaver(sightranges[gField435], "sight-field435", 3);
addsaver(sightranges[gField534], "sight-field534", 3);
addsaver(vid.sloppy_3d, "sloppy3d", false);
addsaver(smooth_scrolling, "smooth-scrolling", false);
addsaver(mouseaim_sensitivity, "mouseaim_sensitivity", 0.01);
@ -662,6 +663,9 @@ void edit_sightrange() {
dialog::addItem(XLAT("enable the cheat mode for additional options"), 'X');
dialog::add_action(enable_cheat);
}
if(DIM == 3 && !vid.use_smart_range) {
dialog::addBoolItem_action(XLAT("sloppy range checking"), vid.sloppy_3d, 'S');
}
if(DIM == 3 && !vid.use_smart_range) {
dialog::addSelItem(XLAT("limit generation"), fts(extra_generation_distance), 'E');
dialog::add_action([] {

View File

@ -1144,6 +1144,7 @@ struct videopar {
bool drawmousecircle; // draw the circle around the mouse
bool skipstart; // skip the start menu
bool quickmouse; // quick mouse on the map
bool sloppy_3d; // make 3D faster but ugly
int timeformat; // time format used in the message log
int use_smart_range; // 0 = distance-based, 1 = model-based, 2 = model-based and generate

View File

@ -1670,7 +1670,7 @@ bool do_draw(cell *c, const transmatrix& T) {
}
else {
ld dist = hdist0(tC0(T));
if(dist > sightranges[geometry] + corner_bonus) return false;
if(dist > sightranges[geometry] + (vid.sloppy_3d ? 0 : corner_bonus)) return false;
if(dist <= extra_generation_distance) setdist(c, 7, c);
}
return true;