1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-06-18 11:19:59 +00:00

fixed graphical/movement glitches in the minimal quotient space

This commit is contained in:
Zeno Rogue 2018-09-23 16:30:56 +02:00
parent 631b3216ad
commit 5fac74b1cb
2 changed files with 3 additions and 2 deletions

View File

@ -1899,8 +1899,8 @@ void moveEffect(cell *ct, cell *cf, eMonster m, int direction_hint);
void flameHalfvine(cell *c, int val) {
if(itemBurns(c->item)) {
addMessage(XLAT("%The1 burns!", c->item));
c->item = itNone;
addMessage(XLAT("%The1 burns!", c->item)), c->item = itNone;
}
c->wall = waPartialFire;
c->wparam = val;

View File

@ -125,12 +125,13 @@ transmatrix calc_relative_matrix(cell *c2, cell *c1, const hyperpoint& point_hin
for(int d=0; d<S7; d++) if(h2->move(d)) {
int sp = h2->c.spin(d);
transmatrix S = heptmove[sp] * spin(2*M_PI*d/S7);
if(h2->c.mirror(d)) S = heptmove[sp] * Mirror * spin(2*M_PI*d/S7);
if(h2->move(d) == h1) {
transmatrix T1 = gm * S * where;
auto curdist = hdist(tC0(T1), point_hint);
if(curdist < bestdist) T = T1, bestdist = curdist;
}
for(int e=0; e<S7; e++) if(h2->move(d)->move(e) == h1) {
if(geometry != gMinimal) for(int e=0; e<S7; e++) if(h2->move(d)->move(e) == h1) {
int sp2 = h2->move(d)->c.spin(e);
transmatrix T1 = gm * heptmove[sp2] * spin(2*M_PI*e/S7) * S * where;
auto curdist = hdist(tC0(T1), point_hint);