From 4648780eb184ed69cb38ccd61905fefe4233d76d Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Sun, 26 Apr 2020 11:02:27 +0200 Subject: [PATCH] fixed Butterflies in non-orientable geometries --- monstermove.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/monstermove.cpp b/monstermove.cpp index 6e0da9bc..0bb73239 100644 --- a/monstermove.cpp +++ b/monstermove.cpp @@ -354,8 +354,9 @@ EX int angledist(int t, int d1, int d2) { return dd; } -EX int angledistButterfly(int t, int d1, int d2) { +EX int angledistButterfly(int t, int d1, int d2, bool mirrored) { int dd = d1 - d2; + if(mirrored) dd = -dd; while(dd<0) dd += t; return dd; } @@ -485,7 +486,7 @@ EX int moveval(cell *c1, cell *c2, int d, flagtype mf) { if(m == moBat && batsAfraid(c2)) return 790; if(m == moButterfly) - return 1500 + angledistButterfly(c1->type, c1->mondir, d); + return 1500 + angledistButterfly(c1->type, c1->mondir, d, c1->monmirror); if(m == moRagingBull && c1->mondir != NODIR) return 1500 - bulldist(c2);