%Header Record Format:MCS1 Type Number:1 File Name:ONETIME Option Name: Communication SW:0 Capacity:2835 Data Type:PG %Data Record Password: BaseN:0 0\->A~Z 3\->X 5\->J \Lbl 0 \ClrText 0\->A~F 0\->H~I 0\->K~W 0\->Y~Z "===== ONE-TIME =====" \Locate 3,3,"DIFFICULTE : < >" \Locate 3,4,"TAILLE : < >" \Locate 3,6,"JOUER!" \Locate 3,7,"AIDE" \Locate 3,6,"JOUER!" \Locate 13,6,"A PROPOS" \Locate 13,7,"QUITTER" \While \ Not Z 0\->W \Locate 17,3,J-1 \If G:\Then \Locate 15,4,"> " \Locate 13,4,G \Else \Locate 13,4,"HAZARD>" \IfEnd X<8\=>\Locate 1,X,"\->" X\>=8\=>\Locate 11,X-2,"\->" '\Do:'\LpWhile \Getkey \While \ Not (W=28\ Or W=37\ Or W=27\ Or W=38\ Or W=31) \Getkey\->W \WhileEnd X<8\=>\Locate 1,X," " X\>=8\=>\Locate 11,X-2," " \If X=3:\Then W=27\=>J<10\=>J+1\->J W=38\=>J>1\=>J-1\->J \IfEnd \If X=4:\Then W=27\=>G<60\=>G+10\->G W=38\=>G>0\=>G-10\->G \IfEnd W=37\=>X+1\->X W=28\=>X-1\->X \If X=5:\Then W=37\=>X+1\->X W=28\=>X-1\->X \IfEnd W=27\=>X\>=6\=>X\<=7\=>X+2\->X W=38\=>X\>=8\=>X\<=9\=>X-2\->X X=2\=>9\->X X=10\=>3\->X \If W=31:\Then X=6\=>\GotoA X=7\=>\Goto3 X=8\=>\Goto4 X=9\=>\Goto5 \IfEnd \WhileEnd \Lbl 3 \ClrText "VOTRE BUT EST DE" "MARCHER SUR TOUTES" "LES CASES." \Locate 21,7,"\->" \Do:\Getkey \LpWhile \Ans \Do:\Getkey \LpWhile \Ans=0 \ClrText "TOUTEFOIS, VOUS NE" "POUVEZ PAS MARCHER 2" "FOIS AU MEME ENDROIT." \Locate 21,7,"\->" \Do:\Getkey \LpWhile \Ans \Do:\Getkey \LpWhile \Ans=0 \ClrText "@:VOUS" "+:CASE NON VALIDEE" "*:CASE VALIDEE" "#:MUR" ">:SORTIE" \Locate 21,7,"\->" \Do:\Getkey \LpWhile \Ans \Do:\Getkey \LpWhile \Ans=0 \ClrText "REPLAY:SE DEPLACER" "F1:RECOMMENCER" "F2:VOIR LA SOLUTION" "F3:MENU" "F4:NOUVEAU NIVEAU" \Locate 21,7,"\->" \Do:\Getkey \LpWhile \Ans \Do:\Getkey \LpWhile \Ans=0 \Goto0 \Lbl 4 \ClrText \Locate 7,2,"ONE-TIME" \Locate 3,4,"PAR 4THINK - 2013" \Locate 21,7,"\->" \Do:\Getkey \LpWhile \Ans \Do:\Getkey \LpWhile \Ans=0 \Goto0 \Lbl 5 \ClrMat C 0\->A~Z 0\->\r 0\->\theta \ClrText \Locate 6,4,"A BIENTOT!" \Stop \Lbl A 0\->A~F 0\->H~I 0\->K~Z 21\->A 7\->B \ClrText "===== ONE-TIME =====" \Locate 2,4,"VEUILLEZ PATIENTER" \Locate 6,6,"CHARGEMENT" '\Int ((A-2)\Ran#+2)\->X '\Int ((B-2)\Ran#+2)\->Y 2\->X 2\->Y \Int ((A-2)\Ran#+2)\->X \Int ((B-2)\Ran#+2)\->Y X\->V Y\->W \ClrMat C {A,B}\->\Dim \Mat C \For 1\->O \To A -5\->\Mat C[O,1] -5\->\Mat C[O,B] \Next \For 1\->O \To B -5\->\Mat C[1,O] -5\->\Mat C[A,O] \Next X\->C Y\->D \Int 4\Ran#+1\->F 21\->O 6\->Z \While 1 N+1\->N C\->\r D\->\theta \If \ Not \Int J\Ran# \Then C1\=>2\->F C>A-C\ And F\<>2\=>1\->F D4\=>3\->F D>B-D\ And F\<>3\=>4\->F F=1\=>Q+1\->Q F=2\=>R+1\->R F=3\=>S+1\->S F=4\=>T+1\->T \IfEnd \If \ Not \Int J\Ran# \Then \Mat C[C-1,D]=0\ And 3Q1\->F \Mat C[C+1,D]=0\ And 3R2\->F \Mat C[C,D+1]=0\ And 3S3\->F \Mat C[C,D-1]=0\ And 3T4\->F F F=1\=>Q+1\->Q F=2\=>R+1\->R F=3\=>S+1\->S F=4\=>T+1\->T \IfEnd \If \Mat C[C+(F=2)-(F=1),D+(F=3)-(F=4)]\<>0 \Then F\->K \Mat C[C-1,D]=0\=>1\->F \Mat C[C+1,D]=0\=>2\->F \Mat C[C,D-1]=0\=>4\->F \Mat C[C,D+1]=0\=>3\->F F=K\=>1\->E F=1\=>Q+1\->Q F=2\=>R+1\->R F=3\=>S+1\->S F=4\=>T+1\->T \IfEnd F\->\Mat C[C,D] C+(F=2)-(F=1)\->C D+(F=3)-(F=4)\->D \Mat C[C,D]\=>\Break C>H\=>C\->H D>L\=>D\->L O>C\=>C\->O Z>D\=>D\->Z \WhileEnd \ClrText N\GotoA \Lbl 1 \ClrText \For Z-1\->D \To L+1 \For O-1\->C \To H+1 \If \Abs \Mat C[C,D]>0\ And \Mat C[C,D]\<>\(-)5 \Then \Mat C[C,D]<0\=>-\Mat C[C,D]\->\Mat C[C,D] \Locate C,D,"+" \Else \Locate C,D,"#" \IfEnd \Next \Next \Locate \r,\theta,">" I=1\=>\Goto2 5\->\Mat C[\r,\theta] 0\->P V\->X W\->Y \Locate X,Y,"@" 1\->R \While P=0 \Getkey \If \Ans \Then X+Y\->S \Locate X,Y,"*" 0<\Mat C[X,Y]\ And \Mat C[X,Y]<5\=>-\Mat C[X,Y]\->\Mat C[X,Y] X-(0<\Mat C[X-1,Y]\ And \Mat C[X-1,Y]<5)(\Ans=38)(X>1)+(0<\Mat C[X+1,Y]\ And \Mat C[X+1,Y]<5)(\Ans=27)(X<21)\->X S=(X+Y)\ And R=(N-1)\=>X+(\Ans=27)(\Mat C[X+1,Y]=5)-(\Ans=38)(\Mat C[X-1,Y]=5)\->X Y-(0<\Mat C[X,Y-1]\ And \Mat C[X,Y-1]<5)(\Ans=28)(Y>1)+(0<\Mat C[X,Y+1]\ And \Mat C[X,Y+1]<5)(\Ans=37)(Y<7)\->Y S=(X+Y)\ And R=(N-1)\=>Y+(\Ans=37)(\Mat C[X,Y+1]=5)-(\Ans=28)(\Mat C[X,Y-1]=5)\->Y R+(S\<>(X+Y))\->R \Locate X,Y,"@" \Ans=79\ Or \Ans=69\ Or \Ans=59\ Or \Ans=49\=>\Ans\->P R=N\=>\GotoA \IfEnd \WhileEnd \Ans=69\=>1\->I \If \Ans=59 \Then 6\->X \Goto0 \IfEnd \Ans=49\=>\GotoA \Goto1 \Lbl 2 V\->X W\->Y \While \ Not \Getkey \Locate X,Y,"@" M+1\->M M=N\=>\Break X\->T Y\->U \Locate X,Y,"*" \Abs \Mat C[T,U]=1\=>X-1\->X \Abs \Mat C[T,U]=2\=>X+1\->X \Abs \Mat C[T,U]=3\=>Y+1\->Y \Abs \Mat C[T,U]=4\=>Y-1\->Y \WhileEnd \Do:\LpWhile \Getkey=0 6\->X \Goto0\@00 %End