FIGURE'IT:
ALL'DICE=SPACE(45)
COUNT=0
IF DIE1 = 1 THEN D1(5)="*"
IF DIE1 = 2 THEN D1(1)="*":D1(9)="*"
IF DIE1 = 3 THEN D1(1)="*":D1(5)="*":D1(9)="*":COUNT=COUNT+2
IF DIE1 = 4 THEN D1(1)="*":D1(3)="*":D1(7)="*":D1(9)="*"
IF DIE1 = 5 THEN D1(1)="*":D1(3)="*":D1(7)="*":D1(9)="*":D1(5)="*":COUNT=COUNT+4
IF DIE1 = 6 THEN D1(1)="*":D1(2)="*":D1(3)="*":D1(7)="*":D1(8)="*":D1(9)="*"
IF DIE2 = 1 THEN D2(5)="*"
IF DIE2 = 2 THEN D2(1)="*":D2(9)="*"
IF DIE2 = 3 THEN D2(1)="*":D2(5)="*":D2(9)="*":COUNT=COUNT+2
IF DIE2 = 4 THEN D2(1)="*":D2(3)="*":D2(7)="*":D2(9)="*"
IF DIE2 = 5 THEN D2(1)="*":D2(3)="*":D2(7)="*":D2(9)="*":D2(5)="*":COUNT=COUNT+4
IF DIE2 = 6 THEN D2(1)="*":D2(2)="*":D2(3)="*":D2(7)="*":D2(8)="*":D2(9)="*"
IF DIE3 = 1 THEN D3(5)="*"
IF DIE3 = 2 THEN D3(1)="*":D3(9)="*"
IF DIE3 = 3 THEN D3(1)="*":D3(5)="*":D3(9)="*":COUNT=COUNT+2
IF DIE3 = 4 THEN D3(1)="*":D3(3)="*":D3(7)="*":D3(9)="*"
IF DIE3 = 5 THEN D3(1)="*":D3(3)="*":D3(7)="*":D3(9)="*":D3(5)="*":COUNT=COUNT+4
IF DIE3 = 6 THEN D3(1)="*":D3(2)="*":D3(3)="*":D3(7)="*":D3(8)="*":D3(9)="*"
IF DIE4 = 1 THEN D4(5)="*"
IF DIE4 = 2 THEN D4(1)="*":D4(9)="*"
IF DIE4 = 3 THEN D4(1)="*":D4(5)="*":D4(9)="*":COUNT=COUNT+2
IF DIE4 = 4 THEN D4(1)="*":D4(3)="*":D4(7)="*":D4(9)="*"
IF DIE4 = 5 THEN D4(1)="*":D4(3)="*":D4(7)="*":D4(9)="*":D4(5)="*":COUNT=COUNT+4
IF DIE4 = 6 THEN D4(1)="*":D4(2)="*":D4(3)="*":D4(7)="*":D4(8)="*":D4(9)="*"
IF DIE5 = 1 THEN D5(5)="*"
IF DIE5 = 2 THEN D5(1)="*":D5(9)="*"
IF DIE5 = 3 THEN D5(1)="*":D5(5)="*":D5(9)="*":COUNT=COUNT+2
IF DIE5 = 4 THEN D5(1)="*":D5(3)="*":D5(7)="*":D5(9)="*"
IF DIE5 = 5 THEN D5(1)="*":D5(3)="*":D5(7)="*":D5(9)="*":D5(5)="*":COUNT=COUNT+4
IF DIE5 = 6 THEN D5(1)="*":D5(2)="*":D5(3)="*":D5(7)="*":D5(8)="*":D5(9)="*"
DRAW'IT:
PRINT TAB(-1,0);
PRINT TAB(-1,23);
PRINT TAB(3,3);TAB(-1,38);
FOR I = 4 TO 14
PRINT TAB(3,I);TAB(-1,46);
NEXT I
PRINT TAB(-1,39);
FOR I = 4 TO 8
PRINT TAB(I,3);TAB(-1,47);TAB(I,15);TAB(-1,47);
NEXT I
PRINT TAB(9,3);TAB(-1,40);
FOR I = 4 TO 14
PRINT TAB(9,I);TAB(-1,46);
NEXT I
PRINT TAB(-1,41);
PRINT TAB(3,16);TAB(-1,38);
FOR I = 17 TO 27
PRINT TAB(3,I);TAB(-1,46);
NEXT I
PRINT TAB(-1,39);
FOR I = 4 TO 8
PRINT TAB(I,16);TAB(-1,47);TAB(I,28);TAB(-1,47);
NEXT I
PRINT TAB(9,16);TAB(-1,40);
FOR I = 17 TO 27
PRINT TAB(9,I);TAB(-1,46);
NEXT I
PRINT TAB(-1,41);
PRINT TAB(3,29);TAB(-1,38);
FOR I = 30 TO 40
PRINT TAB(3,I);TAB(-1,46);
NEXT I
PRINT TAB(-1,39);
FOR I = 4 TO 8
PRINT TAB(I,29);TAB(-1,47);TAB(I,41);TAB(-1,47);
NEXT I
PRINT TAB(9,29);TAB(-1,40);
FOR I = 30 TO 40
PRINT TAB(9,I);TAB(-1,46);
NEXT I
PRINT TAB(-1,41);
PRINT TAB(3,42);TAB(-1,38);
FOR I = 43 TO 53
PRINT TAB(3,I);TAB(-1,46);
NEXT I
PRINT TAB(-1,39);
FOR I = 4 TO 8
PRINT TAB(I,42);TAB(-1,47);TAB(I,54);TAB(-1,47);
NEXT I
PRINT TAB(9,42);TAB(-1,40);
FOR I = 43 TO 53
PRINT TAB(9,I);TAB(-1,46);
NEXT I
PRINT TAB(-1,41);
PRINT TAB(3,55);TAB(-1,38);
FOR I = 56 TO 66
PRINT TAB(3,I);TAB(-1,46);
NEXT I
PRINT TAB(-1,39);
FOR I = 4 TO 8
PRINT TAB(I,55);TAB(-1,47);TAB(I,67);TAB(-1,47);
NEXT I
PRINT TAB(9,55);TAB(-1,40);
FOR I = 56 TO 66
PRINT TAB(9,I);TAB(-1,46);
NEXT I
PRINT TAB(-1,41);
PRINT TAB(-1,24);
PRINT TAB(18,10);"At each roll of the dice there will be a number associated";
PRINT TAB(19,10);"with that roll. Can you guess the number ? If you can get it";
PRINT TAB(20,10);"right three times in a row, you win ! Your only clue is the";
PRINT TAB(21,10);"name of the game, 'Petals Around The Rose'.";
RETURN
ASK'IT:
PRINT TAB(12,20);"Do you have an answer ?";
XCALL INPUT,12,44,2,1,"#E",GUESS,INXCTL,1
IF GUESS="EN" GOTO ENDIT
IF ABS(GUESS)=ABS(COUNT) GOTO GOT'ONE
LAST'RIGHT=0
PRINT TAB(14,20);"Sorry, that is incorrect. The answer is ";COUNT;
PRINT TAB(15,20);"Try again ?";
XCALL INPUT,15,32,1,1,"NY",NIAGA,INXCTL,1
IF NIAGA = "N" OR UCS(NIAGA) = "N" GOTO ENDIT
RETURN
GOT'ONE:
PRINT CHR$(7);
IF LAST'RIGHT=1 THEN RIGHT'ONE=RIGHT'ONE+1
IF LAST'RIGHT=0 THEN LAST'RIGHT=1:RIGHT'ONE=1
MESSAGE=SPACE
IF RIGHT'ONE = "1" THEN MESSAGE="Was it luck or skill ?"
IF RIGHT'ONE = "2" THEN MESSAGE="Two right - one more and you win !"
IF RIGHT'ONE = "3" GOTO WON'GAME
PRINT TAB(14,20);"You got it right ! ";MESSAGE;
PRINT TAB(16,20);"Try again ?";
XCALL INPUT,16,32,1,1,"NY",NIAGA,INXCTL,1
IF NIAGA = "N" OR UCS(NIAGA) = "N" GOTO ENDIT
RETURN