Skip to content

Commit 0554c75

Browse files
committed
fixup to more extended geometry
1 parent 1913eb4 commit 0554c75

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

rogueviz/seuphorica.cpp

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ bool gok_hv() { return cflags & HAS_HV; }
200200
bool gok_gigacombo() { return cflags & HAS_GIGACOMBO; }
201201

202202
bool gok_rev() { return (cflags & (HAS_ALL_FORWARD | HAS_SOME_FORWARD)) || bidirectional; }
203-
bool gok_rev_on(vect2 v) {
203+
bool gok_rev_on(vect2 v) {
204204
if(bidirectional) return true;
205205
if(cflags & HAS_SOME_FORWARD) return v.spin == 2;
206206
return gok_rev();
@@ -350,8 +350,21 @@ void push_tile_info_screen(tile &t, cell *c, vector<tile>* origbox, int boxid) {
350350
}
351351
c = get_gigantic(c);
352352
if(c && just_placed.count(c)) {
353-
for(int i=euv; i<c->type; i+=euv)
353+
int z = FULL_EDGE;
354+
if(cflags & HAS_ROTATE_ALL) z = 1;
355+
if(cflags & HAS_ROTATE_EVEN) z = 2;
356+
for(int i=z; i<c->type; z++) {
357+
if((cflags & HAS_ROTATE_ALL) || ((cflags & HAS_ROTATE_EVEN) && (i%2 == 0)))
358+
354359
help_extensions.push_back(help_extension{char('0'+i), "rotate " + its(i), [c,i] () { tile_orientation[c]+=i; popScreen(); }});
360+
}
361+
if(nonorientable)
362+
help_extensions.push_back(help_extension{'m', "mirror", [c] () {
363+
if(!tile_orientation.count(c)) return;
364+
if(cflags & HAS_ALL_FORWARD) tile_orientation[c]++;
365+
tile_orientation[c].mirrored ^= true;
366+
popScreen();
367+
}});
355368
}
356369
}
357370

0 commit comments

Comments
 (0)