1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-12-24 17:10:36 +00:00

default_flooralpha and plainfloors

This commit is contained in:
Zeno Rogue 2023-05-30 18:37:37 +02:00
parent d587f29a91
commit e069a2cd46
2 changed files with 14 additions and 4 deletions

View File

@ -2042,6 +2042,8 @@ void celldrawer::bookkeeping() {
} }
} }
EX bool draw_plain_floors;
/** /**
Display text statistics about the cell (distances in viewdists mode, pattern codes, etc.). Display text statistics about the cell (distances in viewdists mode, pattern codes, etc.).
may also change the colors provided in may also change the colors provided in
@ -2133,13 +2135,15 @@ void celldrawer::draw_cellstat() {
} }
} }
EX int default_flooralpha = 255;
void celldrawer::draw_wall_full() { void celldrawer::draw_wall_full() {
shiftmatrix Vf0; shiftmatrix Vf0;
const shiftmatrix& Vf = (chasmg && wmspatial) ? (Vf0=orthogonal_move_fol(V, cgi.BOTTOM)) : V; const shiftmatrix& Vf = (chasmg && wmspatial) ? (Vf0=orthogonal_move_fol(V, cgi.BOTTOM)) : V;
#if CAP_SHAPES #if CAP_SHAPES
int flooralpha = 255; int flooralpha = default_flooralpha;
#endif #endif
#if CAP_EDIT && CAP_TEXTURE #if CAP_EDIT && CAP_TEXTURE
@ -2295,10 +2299,11 @@ void celldrawer::draw_wall_full() {
} }
else { else {
if(patterns::whichShape == '^') poly_outline = darkena(fcol, fd, flooralpha); if(patterns::whichShape == '^') poly_outline = darkena(fcol, fd, flooralpha);
if(WDIM == 2 && GDIM == 3 && qfi.fshape) if(WDIM == 2 && GDIM == 3 && qfi.fshape && !draw_plain_floors)
draw_shapevec(c, V, qfi.fshape->levels[0], darkena(fcol, fd, 255), PPR::FLOOR); draw_shapevec(c, V, qfi.fshape->levels[0], darkena(fcol, fd, 255), PPR::FLOOR);
else else {
draw_qfi(c, V, darkena(fcol, fd, flooralpha)); draw_qfi(c, V, darkena3(fcol, fd, flooralpha));
}
} }
#if MAXMDIM >= 4 #if MAXMDIM >= 4

View File

@ -2765,6 +2765,11 @@ EX int config3 = addHook(hooks_configfile, 100, [] {
param_f(twopoint_xwidth, "twopoint_xwidth"); param_f(twopoint_xwidth, "twopoint_xwidth");
param_f(periodwidth, "periodwidth", 1); param_f(periodwidth, "periodwidth", 1);
param_b(draw_plain_floors, "draw_plain_floors", false)
->editable("draw plain floors in 3D", 'p');
param_i(default_flooralpha, "floor_alpha")
->editable(0, 255, 15, "floor alpha", "255 = opaque", 'a');
param_f(vid.depth_bonus, "depth_bonus", 0) param_f(vid.depth_bonus, "depth_bonus", 0)
->editable(-5, 5, .1, "depth bonus in pseudohedral", "", 'b'); ->editable(-5, 5, .1, "depth bonus in pseudohedral", "", 'b');
param_enum(vid.pseudohedral, "pseudohedral", "pseudohedral", phOFF) param_enum(vid.pseudohedral, "pseudohedral", "pseudohedral", phOFF)