The main routine is "WHACK-A-MOLE" and it calls "WAM".
Game title and menu, you can change game settings.
to move to game main.
to start the game.
Mole (letter O) appears, and press to key to hit the mole. If you are slow, you will lose LIFE. If you are very slow, you will lose LIFE and PRIZE.
in a mean while (when PRIZE is getting to more than 200 as default), a fake mole (0, zero) appears. If you hit the fake you will lose LIFE.
Sometime fake mole and real mole comes at the same time. Unless you hit only the real mole, you will lose LIFE.
When LIFE is 0 (zero), game is over.
Probably the speed of the mole action is fast enough.
Main Routine "WACK-A-MOLE"
7->M:17->B:25->E 20->F:25->S:200->V Lbl 0 Cls " WHACK-A-MOLE" Locate 5,2,"<0>:SETTINGS" Locate 6,3,"<EXE>:START" Locate 8,4,"<AC>:QUIT" Do Getkey->K If K=25:Then Break:IfEnd LpWhile K≠47 If K=25:Then Cls "LIFE"?M "BURST LIMIT"?B "TIME-OUT"?E "FUND"?F "SHAKE LOSS"?S "INVOKE FAKE"?V Goto 0:IfEnd Prog "WAM" Goto 0
Game main "WAM"
Lbl 2 M->L:0->P:0->Q Cls 10->DimZ 35->Z[1]:36->Z[2] 37->Z[3]:21->Z[4] 22->Z[5]:23->Z[6] 31->Z[7]:32->Z[8] 33->Z[9] For 1->I To 3 Locate 1,I,"[ ][ ][ ]" Next Locate 11,2,"PRIZE" Locate 12,3,P Locate 1,4,"LIFE:" Locate 6,4,L Locate 11,4,"GO:<0>" While Getkey≠25 WhileEnd Locate 11,4," " Lbl 0 RanInt#(1,9)->T RanInt#(1,3)->X RanInt#(1,3)->Y RanInt#(0,3)->Z RanInt#(1,3)->W 9+X-3Y->N If P≥V:Then Z=0=>2->Q Z=1=>1->Q Z≥2=>0->Q Else 0->Q:IfEnd Lbl 1 Dsz T Goto 1 0->C If Q=2:Then Locate 3X-1,Y,"0" Else Q=1=>Locate 3W-1,X,"0" Locate 3X-1,Y,"O" IdEnd Do Isz C If C>E:Then Break:IfEnd Getkey->K LpWhile K=0 Q=1=>Locate 3W-1,X," " Locate 3X-1,Y," " If Q≤1:Then If C≤B And K=Z[N] Then P+F-C->P Else L-1->L If C>E:Then P-S->P:IfEnd IfEnd Else If C≤E:Then L-1->L:IfEnd IfEnd Locate 12,3," " Locate 12,3,P Locate 6,4,L L=>Goto 0 0->DimZ For 1->I To 3 For 1->J To 3 Locate 3,J-1,I,"0" Next:Next Locate 1,2,"GAME OVER" Locate 10,4,"<EXE> "◣ Cls Locate 1,2,"GAME OVER" Locate 2,3,"<0> GO BACK" Locate 1,4,"<RCL>:TRY AGAIN" Do Getkey->K If K=25 Or K=41 Then Break IfEnd LpWhile 1 If K=41:Then Goto 2:IfEnd If K=25:Then Return:IfEnd
Edited by Krtyski, 01 January 2014 - 02:03 PM.