diff --git a/floorshapes.cpp b/floorshapes.cpp index db77b7d2..9f4eaae8 100644 --- a/floorshapes.cpp +++ b/floorshapes.cpp @@ -780,6 +780,12 @@ EX int shvid(cell *c) { product::in_underlying_map([&] { d = shvid(c1); }); return d; } + else if(GOLDBERG) + return gp::get_plainshape_id(c); + else if(IRREGULAR) + return irr::cellindex[c]; + else if(archimedean) + return arcm::id_of(c->master); else if(geosupport_football() == 2) return pseudohept(c); else if(geometry == gBinaryTiling) diff --git a/graph.cpp b/graph.cpp index 697f59d9..e0c8fe00 100644 --- a/graph.cpp +++ b/graph.cpp @@ -865,7 +865,10 @@ EX bool drawItemType(eItem it, cell *c, const transmatrix& V, color_t icol, int transmatrix Vit = V; if(GDIM == 3 && WDIM == 2 && c && it != itBabyTortoise) Vit = mscale(V, cgi.STUFF); - if(GDIM == 3 && c && it != itBabyTortoise) Vit = face_the_player(Vit); + if(c && prod) + Vit = mscale(Vit, sin(ptick(750)) * cgi.plevel / 4); + else + if(GDIM == 3 && c && it != itBabyTortoise) Vit = face_the_player(Vit); // V * cspin(0, 2, ptick(618, 0)); if(c && history::includeHistory && history::infindhistory.count(c)) poly_outline = OUTLINE_DEAD;