function script SoulMenhir { mes "[Soul Menhir]"; mes "(A mystical aura surrounds this stone. You feel mysteriously attracted to it. Something tells you to touch it. What do you do?)"; next; menu "Touch it", -, "Leave it alone", L_Return; if (Menhir_Activated == 1) goto L_Shortversion; mes "[Soul Menhir]"; mes "(You touch the mysteriouse stone. Somehow it feels warm and cold at the same time.)"; next; mes "[Soul Menhir]"; mes "(Suddenly a strange sensation flows through you. It feels like your soul leaves your body and becomes one with the stone.)"; next; mes "[Soul Menhir]"; mes "(As suddenly as the feeling started it stops. The strange attraction is away from one moment to the next and the menhir feels like just an ordinary stone.)"; next; set Menhir_Activated, 1; goto L_Save; L_Shortversion: mes "[Soul Menhir]"; mes "(A strange sensation flows through you. It feels like your soul leaves your body and becomes one with the stone. as suddenly as the feeling started it stops.)"; next; L_Save: if (@x == 0 && @y == 0) goto L_FindPoint; L_Do_Save: savepoint @map$, @x, @y; goto L_Return; L_FindPoint: set @n, rand(getarraysize(@Xs)); set @x, @Xs[@n]; set @y, @Ys[@n]; goto L_Do_Save; L_Return: return; }