FUJIbaud[data0VUUTO ZEROHOP [HOME GORA :y.0 PRAWO :x.0 PRZOD :z.0]ENDTO WOKOL.PUNKTU :x :y :zMAKE "x.0 ( - :x )MAKE "y.0 ( - :y )MAKE "x.0data UU ( - :z )ENDTO ZBLIZENIE :krotnoscPODZIALKI :krotnosc * :podzx :krotnosc * :podzy :krotnosc * :podzzENDTO OD.SPODUSYMETRdata UU.XZ SYMETR.YZENDTO OD.TYLUSYMETR.XY SYMETR.YZENDTO SYMETR.YZMAKE "katx :katx + 180ENDTO SYMETR.XZMAKE "katy :katy + data UU180ENDTO SYMETR.XYMAKE "katz :katz + 180ENDTO OBROCONE :katMAKE "katx :katx + :katMAKE "katy :katy + :katMAKE "katz :kdata UUatz + :katENDTO ODLEGLOSC :x :yMAKE "deltax :x - XCORMAKE "deltay :y - YCOROUTPUT SQRT ( :deltax * :deltax + :deltay * :dewdata UUltay )ENDTO ODC :dx :dy :dzMAKE "now.xcor ( SUM XCOR :podzx * :dx * SIN :katx :podzy * :dy * SIN :katy :podzz * :dz * SIN :kdata UUatz )MAKE "now.ycor ( SUM YCOR :podzx * :dx * COS :katx :podzy * :dy * COS :katy :podzz * :dz * COS :katzSETH TOWARDS :now.xcodata UUr :now.ycorNAPRZOD ODLEGLOSC :now.xcor :now.ycorENDTO PROST.YZ :y :zGORA :y PRZOD :z DOL :y TYL :zENDTO PROST.XZ :x :zPZdata UURZOD :z PRAWO :x TYL :z LEWO :xENDTO PROST.XY :x :yGORA :y PRAWO :x DOL :y LEWO :xENDTO KOSTKA :x :y :zPROST.XY :x :yPRdata UUOST.XZ :x :zHOP [PRZOD :z] PROST.XY :x :yHOP [TYL :z GORA :y]PROST.XZ :x :zHOP [DOL :y]ENDTO UKLADHOP [HOME] PRAWO 200 Hmdatar UUOP [HOME]GORA 200 HOP [HOME]PRZOD 200 HOP [HOME]ENDTO HOP :co.zrobicPENUP RUN :co.zrobic PENDOWNENDTO TYL :odlPRZOD - data UU:odlENDTO PRZOD :odlSETH :katzNAPRZOD :odl * :podzzENDTO DOL :odlGORA - :odlENDTO GORA :odlSETH :katyNAPRZOD :odl data UU* :podzyENDTO LEWO :odlSETH :katx + 180NAPRZOD :odl * :podzxENDTO NAPRZOD :odlFD :odlENDTO PRAWO :odlSETH :katxNAPdata} UURZOD :odl * :podzxENDTO RZUT :nazwaIF MEMBERP :nazwa [prostokatny p P] [OSIE 90 0 225 PODZIALKI 1 1 0.5 CS STOP]IF MEMBERP qdata} UU:nazwa [jednomiarowy j J] [OSIE 120 0 240 PODZIALKI 1 1 1 CS STOP]IF MEMBERP :nazwa [wojskowy w W] [OSIE 135 0 225 PODZIALKI 1 data UU0.5 1 CS STOP]IF MEMBERP :nazwa [gorny g G] [OSIE 90 0 180 PODZIALKI 1 0 1 CS STOP]IF MEMBERP :nazwa [boczny b B] [OSIE 0 0 90Kdata UU PODZIALKI 0 1 1 CS STOP]IF MEMBERP :nazwa [z.przodu z Z] [OSIE 90 0 0 PODZIALKI 1 1 0 CS STOP]IF MEMBERP :nazwa [trzy.czwarteYdata{ UU t T] [OSIE 100 0 235 PODZIALKI 1 1 0.65 CS STOP]PRINT [Nie znam takiego rzutu !]ENDTO PODZIALKI :x :y :zMAKE "podzx :xMAKdata UUE "podzy :yMAKE "podzz :zENDTO OSIE :x :y :zMAKE "katx :xMAKE "katy :yMAKE "katz :zENDTO TOWARDS :X2 :Y2MAKE "X1 XCORGdata! UUMAKE "Y1 YCORMAKE "X :X2 - :X1 + 2.0E-03MAKE "Y :Y2 - :Y1 + 2.0E-03IF :X < 0 [MAKE "X3 - :X]IF ( OR :X > 0 :X = 0 ) [MAKE "xdata| UUX3 :X]MAKE "A ( 180 * SQRT ( ( 8 * :X * :X ) / 3 - ( 8 * :X3 * SQRT ( :X * :X + :Y * :Y ) ) / 3 + ( 7 * :Y * :Y ) / 3 ) ) / ( 3Vdatau UU.1415927 * SQRT ( :X * :X + :Y * :Y ) )IF ( AND :Y < 0 OR :X = 0 :X > 0 ) [OUTPUT ROUND ( 90 + :A )]IF ( AND :Y < 0 OR :X = 0 data UU:X < 0 ) [OUTPUT ROUND ( 270 - :A )]IF ( AND :X < 0 OR :Y = 0 :Y > 0 ) [OUTPUT ROUND ( 270 + :A )]OUTPUT ROUND ( 90 - :A )ENDdata UU< 0 ) [OUTPUT ROUND ( 270 - :A )]IF ( AND :X < 0 OR :Y = 0 :Y > 0 ) [OUTPUT ROUND ( 270 + :A )]OUTPUT ROUND ( 90 - :A )ENdata UU