1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-12-29 19:40:35 +00:00

which_copy now consistenly includes rotation -- seems to fix cat moving problem

This commit is contained in:
Zeno Rogue 2021-11-07 10:03:16 +01:00
parent 18f2ccf1d4
commit ea079ba0d1

View File

@ -2880,7 +2880,7 @@ EX void rotate_view(transmatrix T) {
if(callhandlers(false, hooks_rotate_view, T)) return;
transmatrix& which = get_view_orientation();
which = T * which;
if(!prod && !nonisotropic && !rug::rugged) current_display->which_copy = T * current_display->which_copy;
if(!prod && !rug::rugged) current_display->which_copy = T * current_display->which_copy;
}
/** shift the view according to the given tangent vector */
@ -2911,13 +2911,7 @@ EX void shift_view(hyperpoint H) {
auto oView = View;
View = get_shift_view_of(H, View);
auto& wc = current_display->which_copy;
if(nonisotropic || stretch::in()) {
transmatrix ioldv = eupush(tC0(view_inverse(oView)));
transmatrix newv = inverse(eupush(tC0(view_inverse(View))));
wc = newv * ioldv * wc;
}
else
wc = get_shift_view_of(H, wc);
wc = get_shift_view_of(H, wc);
}
void multiply_view(transmatrix T) {