+static int fly(token_t obj)
+/* Fly. Snide remarks unless hovering rug is here. */
+{
+ if (obj == INTRANSITIVE) {
+ if (game.prop[RUG] != 2)SPK=224;
+ if (!HERE(RUG))SPK=225;
+ if (SPK/2 == 112) return(2011);
+ obj=RUG;
+ }
+
+ if (obj != RUG) return(2011);
+ SPK=223;
+ if (game.prop[RUG] != 2) return(2011);
+ game.oldlc2=game.oldloc;
+ game.oldloc=game.loc;
+ game.newloc=game.place[RUG]+game.fixed[RUG]-game.loc;
+ SPK=226;
+ if (game.prop[SAPPH] >= 0)SPK=227;
+ RSPEAK(SPK);
+ return(2);
+}
+