' Software by Piero Tofy
' All rights reserved
' www.pierotofy.too.it
CLS
'variabili e costanti
CONST center = 40
DIM nome AS STRING
'fine dichiarazioni
'Intro
COLOR 11
LOCATE 12, 30
PRINT "A Piero Tofy Production"
WHILE INKEY$ = "": WEND
DIM x AS INTEGER
x = 1
CLS
COLOR 10
LOCATE 12, center: PRINT ""
PRINT " Spy"
WHILE INKEY$ = "": WEND
100
300
CLS
COLOR 11
PRINT "Lo scopo del gioco Š trovare la spie nascoste nella mappa."
PRINT "Si hanno 2 tentativi per trovare 2 spie nascoste nella mappa."
PRINT "Basta trovare una spia per passare di livello!"
PRINT "Il gioco termina quando non si riesce a trovare neanche una spia."
COLOR 14
LOCATE 12, 37: PRINT "Comandi:"
PRINT ""
PRINT " Numeri (1,2,3...)"
PRINT " Invio-Conferma; "
COLOR 13
LOCATE 20, 65: PRINT "Are you Ready?"
WHILE INKEY$ = "": WEND
CLS
'fine intro
'input nome
COLOR 15
LOCATE 12, 30: INPUT "Inserisci il tuo Nome:"; nome
IF nome = "" THEN
nome = "Player 1"
END IF
'fine input nome
CLS
'dichiarazione dei soldati
COLOR 11
'inizio dichiariazioni variabili
DIM level AS INTEGER
level = 1
DIM numerosoldati AS INTEGER
numerosoldati = 3
DIM soldato AS STRING
soldato = "Ü"
DIM spieprese AS INTEGER
spieprese = 0
DIM laspia1 AS INTEGER
DIM laspia2 AS INTEGER
DIM rand AS INTEGER
DIM rand2 AS INTEGER
rand = 72
rand2 = 18
DIM posizionex AS INTEGER
DIM posizioney AS INTEGER
DIM nomesoldato AS INTEGER
nomesoldato = 1
'fine variabili
500
COLOR 10
LOCATE 1, 20: PRINT nome + ", trova le 2 spie nascoste fra i soldati!"
FOR crea = 1 TO numerosoldati
'indica la posizione casuale dei soldati
posizionex = (rand * RND)
posizioney = (rand2 * RND)
'dice di attribuire un numero ad ogni soldato
LOCATE posizioney, posizionex
'stampa sullo schermo i soldati
PRINT nomesoldato
LOCATE posizioney + 1, posizionex + 1
PRINT soldato
nomesoldato = nomesoldato + 1
NEXT crea
'crea il numero casuale della posizione delle spie
laspia1 = (RND * numerosoldati + 1)
laspia2 = (RND * numerosoldati + 1)
400
'crea la domanda che chiede le spie
LOCATE 21, 32: INPUT "Qual'Š la 1 Spia"; spy1
LOCATE 22, 32: INPUT "Qual'Š la 2 Spia"; spy2
IF spy1 = spy2 THEN
GOTO 400
END IF
IF spy2 = spy1 THEN
GOTO 400
END IF
'Controlla se ho azzeccato le spie
IF spy1 = laspia1 THEN
spieprese = spieprese + 1
punti = punti + 1
END IF
IF spy1 = laspia2 THEN
spieprese = spieprese + 1
punti = punti + 1
END IF
IF spy2 = laspia1 THEN
spieprese = spieprese + 1
punti = punti + 1
END IF
IF spy2 = laspia2 THEN
spieprese = spieprese + 1
punti = punti + 1
END IF
'controlla se Š game over
IF spieprese >= 1 THEN
numerosoldati = numerosoldati + 1
spieprese = 0
nomesoldato = 1
CLS
LOCATE 12, 25: PRINT "Livello superato! Le spie sono state prese!"
LOCATE 14, 25: PRINT "Go to Next Level!"
WHILE INKEY$ = "": WEND
CLS
GOTO 500
END IF
IF spieprese = 0 THEN
CLS
COLOR 11
LOCATE 12, 20: PRINT "Mi dispiace, le spie hanno sabotato la tua base!"
END IF
WHILE INKEY$ = "": WEND
CLS
LOCATE 12, 34: INPUT "Play Again (Y/N)"; retry$
IF retry$ = "y" THEN
spieprese = 0
laspia1 = 0
laspia2 = 0
CLS
GOTO 300
END IF
IF retry$ = "n" THEN
CLS
END
END IF