Herramientas de usuario

Herramientas del sitio


es:sapien_s

SAPIEN'S

Ficha

Autor José Calderón Navarrete
Compatibilidad Amstrad PCW 8256 / 8512 / 9512
Año 1987
Género Tablero
Controles Teclado
Idioma Español
Estado Preservado

Capturas

Descripción

SAPIENS es un juego cuya mecánica consiste en intentar acertar el máximo posible de preguntas en un tiempo determinado. El programa ya incluye un menú donde iremos añadiendo las preguntas y respuestas. Lo bueno de esto es que podremos usarlo inclusive para prepararnos alguna materia si estamos estudiando.

El juego es parecido al trivial pursuit aunque en una versión más pobre.

Listado

  • Listado - SAPIENS.BAS
0 OPTION RUN:PRINT CHR$(27);"2";CHR$(7);:DEFSTR h
1 hesc=CHR$(27)
2 hon=hesc+"p"
3 home=hesc+"E"+hesc+"H"
4 hoff=hesc+"q"
5 hsub.on=hesc+"r"
6 hsub.off=hesc+"u"
7 GOSUB 455
8 GOSUB 419
9 GOTO 18
10 REM *jose calderon navarrete*
11 DEFSTR h
12 hesc=CHR$(27)
13 hon=hesc+"p"
14 home=hesc+"E"+hesc+"H"
15 hoff=hesc+"q"
16 hsub.on=hesc+"r"
17 hsub.off=hesc+"u"
18 REM
19 REM
20 REM
21 REM
22 REM
23 REM
24 REM
25 REM
26 REM
27 OPTION BASE 1
28 DIM resp2$(4)
29 DIM posn(28,2)
30 FOR a=1 TO 8
31 posn(a,1)=5:posn(a,2)=1+((a-1)*5)
32 posn(23-a,1)=19:posn(23-a,2)=1+((a-1)*5)
33 NEXT
34 FOR a=9 TO 14
35 posn(a,1)=5+2*(a-8):posn(a,2)=36
36 posn(37-a,1)=5+2*(a-8):posn(37-a,2)=1
37 NEXT
38 DIM tema$(6)
39 FOR a=1 TO 6
40 READ tema$(a)
41 NEXT
42 DIM hdado(6)
43 DATA Ciencias,Geografia,Historia-Arte-Lit,Cine-Espect-Deportes
44 '
45 hcursor.on=hesc+"e"
46 hcursor.off=hesc+"f"
47 hcab=SPACE$(33)+hsub.on+"S A P I E N ³ S"+hsub.off+STRING$(3,10)+CHR$(13)
48 hdel.line=hesc+"M"
49 hline.back=hesc+"I"
50 hor=CHR$(13)
51 htem=CHR$(134)+STRING$(15,138)+CHR$(142)+STRING$(14,138)+CHR$(140)
52 htem1=CHR$(133)+"Puntos: "+SPACE$(7)+CHR$(133)+"Tiempo: "+SPACE$(6)+CHR$(133)
53 htem2=CHR$(131)+STRING$(15,138)+CHR$(139)+STRING$(14,138)+CHR$(137)
54 hpant1=STRING$(4,138)
55 hpant2=hpant1+CHR$(141)
56 hpant3=CHR$(134)+hpant1+CHR$(142)+hpant1+CHR$(142)+hpant1+CHR$(142)+hpant1+CHR$(142)+hpant1+CHR$(142)+hpant1+CHR$(142)+hpant1+CHR$(142)+hpant1+CHR$(140)
57 hpant4=SPACE$(4)
58 hpant5=CHR$(133)+hpant4+CHR$(133)+hpant4+CHR$(133)+hpant4+CHR$(133)+hpant4+CHR$(133)+hpant4+CHR$(133)+hpant4+CHR$(133)+hpant4+CHR$(133)+hpant4+CHR$(133)
59 hpant6=CHR$(135)+hpant1+CHR$(143)+hpant1+CHR$(139)+hpant1+CHR$(139)+hpant1+CHR$(139)+hpant1+CHR$(139)+hpant1+CHR$(139)+hpant1+CHR$(143)+hpant1+CHR$(141)
60 DEF FN at$(x,y,t$)=hesc+"Y"+CHR$(x+32)+CHR$(y+32)+t$
61 hpant7=CHR$(135)+hpant1+CHR$(143)+hpant1+CHR$(142)+hpant1+CHR$(142)+hpant1+CHR$(142)+hpant1+CHR$(142)+hpant1+CHR$(142)+hpant1+CHR$(143)+hpant1+CHR$(141)
62 hpant8=CHR$(131)+hpant1+CHR$(139)+hpant1+CHR$(139)+hpant1+CHR$(139)+hpant1+CHR$(139)+hpant1+CHR$(139)+hpant1+CHR$(139)+hpant1+CHR$(139)+hpant1+CHR$(137)
63 hos=CHR$(150)+STRING$(5,154)+CHR$(156)
64 hoi=CHR$(147)+STRING$(5,154)+CHR$(153)
65 hret=CHR$(10)+STRING$(7,8)
66 hdado(1)=hos+hret+CHR$(149)+"     "+CHR$(149)+hret+CHR$(149)+"  "+CHR$(128)+"  "+CHR$(149)+hret+CHR$(149)+"     "+CHR$(149)+hret+hoi
67 hdado(2)=hos+hret+CHR$(149)+CHR$(128)+"    "+CHR$(149)+hret+CHR$(149)+"     "+CHR$(149)+hret+CHR$(149)+"    "+CHR$(128)+CHR$(149)+hret+hoi
68 hdado(3)=hos+hret+CHR$(149)+CHR$(128)+"    "+CHR$(149)+hret+CHR$(149)+"  "+CHR$(128)+"  "+CHR$(149)+hret+CHR$(149)+"    "+CHR$(128)+CHR$(149)+hret+hoi
69 hdado(4)=hos+hret+CHR$(149)+CHR$(128)+"   "+CHR$(128)+CHR$(149)+hret+CHR$(149)+"     "+CHR$(149)+hret+CHR$(149)+CHR$(128)+"   "+CHR$(128)+CHR$(149)+hret+hoi
70 hdado(5)=hos+hret+CHR$(149)+CHR$(128)+"   "+CHR$(128)+CHR$(149)+hret+CHR$(149)+"  "+CHR$(128)+"  "+CHR$(149)+hret+CHR$(149)+CHR$(128)+"   "+CHR$(128)+CHR$(149)+hret+hoi
71 hdado(6)=hos+hret+CHR$(149)+CHR$(128)+" "+CHR$(128)+" "+CHR$(128)+CHR$(149)+hret+CHR$(149)+"     "+CHR$(149)+hret+CHR$(149)+CHR$(128)+" "+CHR$(128)+" "+CHR$(128)+CHR$(149)+hret+hoi
72 hdborra="       "+hret+"       "+hret+"       "+hret+"       "+hret+"       "
73 hcua=CHR$(150)+STRING$(76,154)+CHR$(156)
74 hcua1=CHR$(149)+SPACE$(76)+CHR$(149)
75 hcua2=CHR$(147)+STRING$(76,154)+CHR$(153)
76 PRINT home
77 PRINT hcab
78 a$(1)="A|adir fichas"
79 a$(2)="  Consultas  "
80 a$(3)="    Juego    "
81 a$(4)="     Fin     "
82 num%=4:s1=10:s2=33:vuelta%=1
83 GOSUB 343
84 ON ptr GOTO 85,143,180,405
85 OPEN "R",1,"krivial1"
86 OPEN "R",2,"krivial2"
87 FIELD 1,128 AS preg$
88 FIELD 2,32 AS resp$(1),32 AS resp$(2),32 AS resp$(3),32 AS resp$(4)
89 IF FIND$("krivial3")="" THEN 93
90 OPEN "I",3,"Krivial3"
91 INPUT #3,numfich%
92 CLOSE 3
93 PRINT home
94 PRINT hcab
95 PRINT "Numero de ficha introducida:  >";numfich%
96 PRINT:PRINT "Siguiente ficha, numero ";numfich%+1;". Tema: ";tema$(((numfich%+1) MOD 4)+1)
97 PRINT
98 hinput="Nueva pregunta"
99 houtput="pregunta"
100 max.out%=128
101 GOSUB 354
102 LSET preg$=a$
103 hinput="Respuesta correcta"
104 houtput="respuesta correcta"
105 max.out%=32
106 GOSUB 354
107 LSET resp$(1)=a$
108 hinput="Siguiente respuesta"
109 houtput="respuesta"
110 max.out%=32
111 FOR a=2 TO 4
112 GOSUB 354
113 LSET resp$(a)=a$
114 NEXT
115 PRINT home;hcab
116 PRINT "Pregunta:"
117 PRINT CHR$(252);preg$
118 PRINT "respuestas:"
119 FOR a=1 TO 4
120 PRINT CHR$(252);resp$(a)
121 NEXT
122 s1=20:s2=33
123 a$(1)=" Grabar "
124 a$(2)="Corregir"
125 a$(3)="Abandono"
126 num%=3
127 GOSUB 343
128 IF ptr=2 THEN 93
129 IF ptr=3 THEN CLOSE:GOTO 76
130 PUT 1,numfich%+1
131 PUT 2,numfich%+1
132 numfich%=numfich%+1
133 OPEN "O",3,"krivial3"
134 WRITE #3,numfich%
135 CLOSE 3
136 PRINT home;hcab
137 s1=10:s2=32
138 a$(1)="   Continuar grabando   "
139 a$(2)="Volver al menu principal"
140 num%=2
141 GOSUB 343
142 IF ptr=1 THEN 93 ELSE CLOSE:GOTO 76
143 PRINT home;hcab
144 PRINT "Consultas.";CHR$(10)
145 OPEN "R",1,"krivial1"
146 OPEN "R",2,"krivial2"
147 IF FIND$("krivial3")="" THEN PRINT hon;"Sin datos.";hoff:a$=INPUT$(1):CLOSE:GOTO 44
148 OPEN "I",3,"krivial3"
149 INPUT #3,numfich%
150 CLOSE 3
151 FIELD 1,128 AS preg$
152 FIELD 2,32 AS resp$(1),32 AS resp$(2),32 AS respt$(3),32 AS respt$(4)
153 PRINT numfich%;"  Fichas disponibles en el disco."
154 s1=10:s2=35
155 a$(1)="Consultar"
156 a$(2)="Abandonar"
157 num%=2
158 GOSUB 343
159 IF ptr=2 THEN CLOSE:GOTO 76
160 PRINT home;hcab
161 PRINT numfich%;"  fichas disponibles."
162 PRINT CHR$(10);"Numero de ficha para consultar ";CHR$(252);
163 INPUT "",a%
164 IF a%<1 OR a%>numfich% THEN PRINT hon; "No existe este numero. Reescriba por favor";hoff;:a$=INPUT$(1):PRINT hdel.line;hline.back;hor;:GOTO 162
165 GET 1,a%
166 GET 2,a%
167 PRINT home;hcab
168 PRINT "Ficha numero";a%;"de";numfich%;". Tema ";CHR$(252);tema$((a% MOD 4)+1)
169 PRINT"Pregunta"
170 PRINT CHR$(252)+preg$
171 PRINT"Respuestas:"
172 FOR a=1 TO 4
173 PRINT CHR$(252);resp$(a)
174 NEXT
175 s1=20:s2=35
176 a$(1)="Conforme"
177 num%=1
178 GOSUB 343
179 PRINT home;hcab:GOTO 153
180 PRINT home;hcab;hcursor.off
181 INPUT "INTRODUCE <1> o <2> JUGADORES";tecla:IF tecla<1 THEN tecla=1
182 IF tecla>2 THEN tecla=2
183 PRINT:PRINT:INPUT "Jugador 1 (Maximo 10 caracteres)";nomi1$ 
184 IF tecla=2 THEN INPUT "Jugador 2 (Maximo 10 caracteres)";nomi2$ ELSE 185
185 nomi1$=UPPER$(LEFT$(nomi1$,10))
186 nomi2$=UPPER$(LEFT$(nomi2$,10))
187 OPEN "R",1,"krivial1"
188 OPEN "R",2,"krivial2"
189 FIELD 1,128 AS preg$
190 FIELD 2,32 AS resp$(1),32 AS resp$(2),32 AS resp$(3),32 AS resp$(4)
191 IF FIND$("krivial3")="" THEN 196
192 OPEN "I",3,"krivial3"
193 INPUT #3,numfich%
194 CLOSE 3
195 IF numfich%>3 THEN 202
196 PRINT hon;"Imposible jugar, no existen datos suficientes. Retorno al menu principal";hoff
197 s1=10:s2=34
198 a$(1)="Conforme"
199 num%=1
200 GOSUB 343
201 CLOSE:GOTO 76
202 PRINT:PRINT:PRINT numfich%;" fichas disponibles."
203 IF numfich%<105 THEN vec%=numfich%-3 ELSE vec%=100
204 PRINT:PRINT TAB(2) "El intervalo entre repeticiones es de";vec%;"preguntas distintas."
205 DIM vector(vec%)
206 PRINT:PRINT:PRINT:PRINT TAB(37);"JUEGA..: "hon+nomi1$+hoff
207 FOR i=1 TO 4000:NEXT
208 PRINT home;hcab
209 IF vuelta%=1 THEN cleft%=3
210 IF vuelta%>=2 THEN cleft%=cleft%+1
211 PRINT hpant3;TAB(47) htem
212 PRINT hpant5;TAB(47) htem1
213 PRINT hpant6;TAB(47) htem2
214 FOR a=1 TO 5
215 PRINT CHR$(133);TAB(6);CHR$(133);TAB(36);CHR$(133);TAB(41);CHR$(133)
216 PRINT CHR$(135);hpant1;CHR$(141);TAB(36);CHR$(135);hpant1;CHR$(141)
217 NEXT 
218 PRINT CHR$(133);TAB(6);CHR$(133);TAB(36);CHR$(133);TAB(41);CHR$(133)
219 PRINT hpant7;TAB(47) htem
220 PRINT hpant5;TAB(47) CHR$(133);TAB(63) CHR$(133);TAB(78) CHR$(133)
221 PRINT hpant8;TAB(47) htem2
222 PRINT hcua
223 PRINT hcua1
224 PRINT hcua1
225 PRINT hcua1
226 PRINT hcua1
227 PRINT hcua1
228 PRINT hcua1
229 PRINT hcua2
230 PRINT FN at$(24,1,"PREGUNTA :")
231 PRINT FN at$(25,1,"RESPUESTA:")
232 RESTORE 240
233 IF tecla=1 THEN PRINT FN at$(19,49,nomi1$)
234 IF tecla=2 THEN PRINT FN at$(19,49,nomi1$):PRINT FN at$(19,65,nomi2$)
235 IF jug=0 THEN PRINT FN at$(19,47,hon+"  "+nomi1$+"  "+hoff) ELSE PRINT FN at$(19,63,hon+"  "+nomi2$+"  "+hoff)
236 FOR a=1 TO 4
237 READ x1,x2,t$
238 PRINT FN at$(x1,x2,t$)
239 NEXT
240 DATA 5,1,"////",5,36,"////",19,1,"////",19,36,"////"
241 plpos%=1
242 quesos%=0
243 PRINT FN at$(posn(plpos%,1),posn(plpos%,2),hon+"    "+hoff):REM Son cuatro espacios
244 a=0
245 PRINT FN at$(5,55,STR$(puntos%))
246 PRINT FN at$(5,70,"      ")
247 PRINT FN at$(10,58,CHR$(252)+" DADO"):a=a+1:PRINT FN at$(10,58," "):IF INKEY$="" THEN 243
248 a=a+1:PRINT FN at$(10,58,hdado(INT((RND*6)+1))):IF INKEY$="" THEN 248
249 RANDOMIZE a*100/SIN(RND)
250 dd%=INT(RND*6)+1
251 PRINT FN at$(10,58,hdado(dd%))
252 op.pos1%=plpos%-dd%:IF op.pos1%<1 THEN op.pos1%=28+op.pos1%
253 op.pos2%=plpos%+dd%:IF op.pos2%>28 THEN op.pos2%=op.pos2%-28
254 PRINT FN at$(posn(op.pos1%,1),posn(op.pos1%,2),"----")
255 PRINT FN at$(posn(op.pos2%,1),posn(op.pos2%,2),"++++")
256 a$=INPUT$(1)
257 IF a$<>CHR$(22) AND a$<>CHR$(28) THEN 256
258 PRINT FN at$(posn(op.pos1%,1),posn(op.pos1%,2),"    ")
259 PRINT FN at$(posn(op.pos2%,1),posn(op.pos2%,2),"    "):REM todos cuatro espacios
260 PRINT FN at$(posn(plpos%,1),posn(plpos%,2),"    ")
261 IF a$=CHR$(28) THEN plpos%=op.pos1% ELSE plpos%=op.pos2%
262 PRINT FN at$(posn(plpos%,1),posn(plpos%,2),hon+"    "+hoff)
263 FOR a=1 TO 28 STEP 7
264 PRINT FN at$(posn(a,1),posn(a,2),"");
265 IF plpos%=a THEN 267
266 IF pillao((a-1)/7+1)=0 THEN PRINT "////" ELSE PRINT "XXXX"
267 NEXT
268 PRINT FN at$(10,58,hdborra)
269 play%=INT(RND*numfich%)+1
270 a=1
271 IF vector(a)=play% THEN GOTO 269 ELSE a=a+1
272 IF vec.ptr%=a THEN 271
273 vec.ptr%=vec.ptr%+1
274 vector(vec.ptr%)=play%
275 IF vec.ptr%=vec% THEN FOR a=2 TO vec%:vector(a-1)=vector(a):NEXT:vec.ptr%=vec.ptr%-1
276 PRINT FN at$(22,25,"TEMA: "+hsub.on+tema$((play% MOD 4)+1))+hsub.off
277 GET 1,play%
278 GET 2,play%
279 FOR a=1 TO 4
280 resp2$(a)=resp$(a)
281 NEXT
282 cort%=0:a=128
283 a$=MID$(preg$,a,1)
284 WHILE a$=" ":REM Un espacio
285 cort%=cort%+1:a=a-1
286 a$=MID$(preg$,a,1)
287 WEND
288 hpreg=LEFT$(preg$,128-cort%)
289 IF LEN(hpreg)<64 THEN hpreg1=hpreg:hpreg2="":GOTO 296
290 FOR a= 50 TO 66
291 IF MID$(hpreg,a,1)=" " THEN cort2%=a
292 NEXT
293 IF cort2%=0 THEN cort2%=LEN(hpreg)
294 hpreg1=LEFT$(hpreg,cort2%)
295 hpreg2=MID$(hpreg,cort2%,LEN(hpreg)-cort2%+1)
296 hok=resp$(1)
297 FOR a=1 TO 4
298 a1=INT(RND*4)+1
299 a2=INT(RND*4)+1
300 WHILE a1=a2
301 a2=INT(RND*4)+1
302 WEND
303 SWAP resp2$(a1),resp2$(a2)
304 NEXT
305 PRINT FN at$(24,12,"]"+hpreg1);:IF hpreg2="" THEN PRINT "?" ELSE PRINT FN at$(25,12,hpreg2+"?")
306 time=180-(vuelta%*30)
307 IF time<=30 THEN time=30
308 a=1
309 time=time-1:IF time=0 THEN PRINT FN at$(27,12,"Demasiado tarde, la respuesta es "+hok):sres=sres+1:GOTO 330
310 PRINT FN at$(5,70,hon+STR$(INT(time/10))+"  "+hoff)
311 PRINT FN at$(25,12,resp2$(a))
312 a$=INKEY$
313 IF a$=CHR$(28) THEN IF hok<>resp2$(a) THEN a=a+1:GOTO 309 ELSE GOTO 329
314 IF a$=CHR$(22) THEN IF hok<>resp2$(a) THEN 329 ELSE 316
315 GOTO 309
316 PRINT FN at$(27,12,"!Correcto, continua asi! "+STRING$(40,32)):reac=reac+1
317 FOR a=1 TO 1000:NEXT
318 FOR a=1 TO 4
319 IF (plpos%-1)/7+1=a AND pillao(a)=0 THEN pillao(a)=1:quesos%=quesos%+1
320 NEXT
321 IF quesos%=4 THEN vuelta%=vuelta%+1:PRINT home;hcab;"Muy bien! Vamos por la vuelta";vuelta%:ERASE pillao:a$=INPUT$(1):GOTO 208
322 puntos%=puntos%+INT(time/8*(vuelta%*cleft%/4))
323 PRINT FN at$(5,55,STR$(puntos%))
324 PRINT FN at$(22,31,STRING$(20,32))
325 PRINT FN at$(24,12,SPACE$(65))
326 PRINT FN at$(25,12,STRING$(32,32))
327 PRINT FN at$(27,1,SPACE$(76))
328 GOTO 244
329 PRINT FN at$(27,12,"No es cierto, la respuesta es "+hok):fall=fall+1
330 cleft%=cleft%-1
331 FOR a=1 TO 2000:NEXT
332 PRINT FN at$(27,1,SPACE$(76))
333 PRINT FN at$(25,12,STRING$(32,32))
334 PRINT FN at$(24,12,SPACE$(65))
335 PRINT FN at$(22,31,STRING$(20,32))
336 pre=reac+fall+sres 
337 IF cleft%>0 THEN 244
338 jug=jug+1:IF jug=2 THEN 340
339 pun1=puntos%:reac1=reac:fall1=fall:sres1=sres:pre1=pre:IF tecla=1 THEN 360 ELSE 341
340 pun2=puntos%:reac2=reac:fall2=fall:sres2=sres:pre2=pre
341 vector=0:ERASE pillao:puntos%=0:vuelta%=1:reac=0:fall=0:sres=0:pre=0
342 IF jug=1 THEN 415 ELSE 360
343 PRINT hcursor.off
344 FOR a=1 TO num%
345 PRINT FN at$(s1+a,s2+1,a$(a))
346 NEXT
347 ptr=1
348 PRINT FN at$(s1+ptr,s2,CHR$(252)+hon+a$(ptr)+hoff+CHR$(253))
349 a$=INPUT$(1)
350 IF a$=CHR$(30) THEN IF ptr<num% THEN PRINT FN at$(s1+ptr,s2," "+a$(ptr)+" "):ptr=ptr+1
351 IF a$=CHR$(31) THEN IF ptr>1 THEN PRINT FN at$(s1+ptr,s2," "+a$(ptr)+" "):ptr=ptr-1
352 IF a$=CHR$(13) THEN PRINT hcursor.on:RETURN
353 GOTO 348
354 PRINT hinput;" ";CHR$(252)
355 LINE INPUT "",a$
356 IF LEN(a$)>max.out% THEN PRINT:PRINT hon;"La ";houtput;" supera el maximo de caracteres. Reescriba, por favor.";hoff;:a$=INPUT$(1):PRINT hdel.line;hline.back;hor:GOTO 354
357 IF a$="" THEN PRINT hline.back;hor;:GOTO 354
358 RETURN
359 PRINT home
360 PRINT home
361 PRINT TAB(10) hcua
362 PRINT TAB(10) hcua1
363 PRINT TAB(10) hcua1
364 PRINT TAB(10) hcua1
365 PRINT TAB(10) hcua1
366 PRINT TAB(10) hcua1
367 PRINT TAB(10) hcua1
368 PRINT TAB(10) hcua1
369 PRINT TAB(10) hcua1
370 PRINT TAB(10) hcua1
371 PRINT TAB(10) hcua1
372 PRINT TAB(10) hcua1
373 PRINT TAB(10) hcua1
374 PRINT TAB(10) hcua2
375 PRINT TAB(10) hcua
376 PRINT TAB(10) hcua1
377 PRINT TAB(10) hcua1
378 PRINT TAB(10) hcua1
379 PRINT TAB(10) hcua2
380 PRINT FN at$(1,35,hon+"R E S U L T A D O   F I N A L"+hoff);
381 PRINT FN at$(2,12,hon+nomi1$+hoff) 
382 PRINT FN at$(4,12,"Puntuacion obtenida....:"); pun1
383 PRINT FN at$(6,12,"Respuestas acertadas...:"); reac1
384 PRINT FN at$(8,12,"Respuestas falladas....:"); fall1
385 PRINT FN at$(10,12,"Sin respuesta..........:"); sres1
386 PRINT FN at$(12,12,"Preguntas realizadas...:"); pre1
387 PRINT FN at$(15,38,hon+"C O N C L U S I O N"+hoff);
388 IF tecla=2 THEN 398
389 PRINT FN at$(16,11,hon+nomi1$+hoff);
390 resf1=INT(pun1/(pre1+5))
391 IF resf1<3 THEN PRINT FN at$(17,12, "Tienes que estudiar mas pues todavia te queda mucho que aprender.");
392 IF resf1>=3 AND resf1<5 THEN PRINT FN at$(17,12,"No te vendria mal cojer un libro de vez en cuando");
393 IF resf1>=5 AND resf1<8 THEN PRINT FN at$(17,12,"Vale tio, sabes bastante, pero no dejes los libros olvidados");
394 IF resf1>=8 THEN PRINT FN at$(18,12,"Eres inteligente, asi que juega cuantas veces quieras");
395 IF tecla=2 THEN 406
396 PRINT FN at$(21,20,hon+"P U L S A  U N A  T E C L A  P A R A  C O N T I N U A R"+hoff):CLOSE
397 a$=INKEY$:IF a$="" THEN 397 ELSE CLEAR:GOTO 0
398 IF tecla=2 THEN PRINT FN at$(2,75,hon+nomi2$+hoff) ;
399 PRINT FN at$(4,53,"Puntuacion obtenida.....:"); pun2
400 PRINT FN at$(6,53,"Respuestas acertadas....:"); reac2
401 PRINT FN at$(8,53,"Respuestas falladas.....:"); fall2
402 PRINT FN at$(10,53,"Sin respuesta...........:"); sres2
403 PRINT FN at$(12,53,"Preguntas realizadas....:"); pre2
404 GOTO 389
405 PRINT CHR$(27);"2";CHR$(0);:SYSTEM
406 FOR i=1 TO 8000:NEXT
407 FOR i=1 TO 3:PRINT FN at$((15+i),11,SPACE$(65)):NEXT
408 PRINT FN at$(16,11,hon+nomi2$+hoff)
409 resf2=INT(pun2/(pre2+5))
410 IF resf2<3 THEN PRINT FN at$(17,12, "Tienes que estudiar mas pues todavia te queda mucho que aprender.");
411 IF resf2>=3 AND resf2<5 THEN PRINT FN at$(17,12,"No te vendria mal cojer un libro de vez en cuando");
412 IF resf2>=5 AND resf2<8 THEN PRINT FN at$(17,12,"Vale tio, sabes bastante, pero no dejes los libros olvidados");
413 IF resf2>8 THEN PRINT FN at$(18,12,"Eres inteligente, asi que juega cuantas veces quieras");
414 GOTO 396
415 PRINT home
416 PRINT FN at$(12,30,"JUEGA..:"+hon+nomi2$+hoff)
417 FOR i= 1 TO 2500:NEXT
418 GOTO 208
419 REM    Intrucciones
420 PRINT:PRINT:PRINT:PRINT:PRINT TAB(10) hon+"QUIERES INSTRUCCIONES <SI O NO>"+hoff
421 a$=INKEY$:IF a$="s" OR a$="n" THEN 422 ELSE 421
422 IF a$="s" THEN 423 ELSE 454
423 PRINT home
424 PRINT:PRINT TAB(35) hon+"I N S T R U C C I O N E S"+hoff
425 PRINT:PRINT:PRINT TAB(5) "SAPIENS es un juego cuya mecanica consiste en intentar acertar el maximo posible de"
426 PRINT TAB(5) "preguntas en un tiempo determinado, obrando de la siguiente forma:"
427 PRINT:PRINT TAB(10) "1¡.- Pulsando una tecla cualquiera aparecera un dado en movimiento."
428 PRINT:PRINT TAB(10) "2¡.- Volviendo a pulsar otra tecla se parara este en un numero, apareciendo -"
429 PRINT TAB(15) "en el tablero los signos ---- o ++++ tantos espacios como marque el dado," 
430 PRINT TAB(15) "a la izquierda o a la derecha de la ficha (situada cuando comienza el -"
431 PRINT TAB(15) "juego en la parte superior izquierda del tablero)." 
432 PRINT:PRINT TAB(10) "3¡.- Con las teclas '+' o '-' situadas ambas en los extremos de la barra espa-"
433 PRINT TAB(15) "ciadora deberas elegir donde quieres que se ponga tu ficha, por ejemplo"
434 PRINT TAB(15) "si pulsa la tecla '+' la ficha se colocara en la casilla donde esten los"
435 PRINT TAB(15) "signos ++++."
436 PRINT:PRINT TAB(35) "PULSA UNA TECLA PARA CONTINUAR"
437 a$=INKEY$:IF a$="" THEN 437
438 PRINT home
439 PRINT TAB(5) hon+"CONTINUACION"+hoff
440 PRINT:PRINT TAB(10) "4¡.- Una vez pulsada la opcion aparecera una pregunta y una respuesta, si crees"
441 PRINT TAB(15) "que la respuesta es correcta pulsa la tecla '+', si crees que es falsa -"
442 PRINT TAB(15) "pulsa la tecla '-', entonces aparecera otra respuesta si esto era asi, -"
443 PRINT TAB(15) "debiendo obrar de igual forma para esta nueva respuesta."
444 PRINT:PRINT TAB(10) "5¡.- Tiene un tiempo para contestar, si no lo haces se te dara la respuesta -"
445 PRINT TAB(15) "por fallada. A los TRES fallos se acabara el juego."
446 PRINT:PRINT TAB(10) "6¡.- Tu mision consiste en conquistar las 4 esquinas, cuando lo hayas consegui-"
447 PRINT TAB(15) "empezaras una nueva vuelta en la cual el tiempo de respuesta sera menor,"
448 PRINT TAB(15) "pero se te dan 2 posibilades de fallar mas."
449 PRINT:PRINT TAB(10) "7¡.- Conforme contestas se te dara una puntuacion en base a: Tiempo de respues-"
450 PRINT TAB(15) "ta, fallos cometidos y vueltas dadas."
451 PRINT:PRINT TAB(10) "8¡.- Si son 2 jugadores, hasta que no acabe el 1¡ no puede jugar el 2¡."
452 PRINT:PRINT TAB(35) "PULSA UNA TECLA PARA COMENZAR"
453 a$=INKEY$:IF a$="" THEN 453
454 RETURN
455 REM   Pantalla
456 PRINT home
457 PRINT:PRINT:PRINT:PRINT TAB(10) STRING$(65,138)
458 PRINT TAB(10) "sssssss  aaaaaaa  ppppppp  iii  eeeeeee   nn   nn    ³³³  sssssss"
459 PRINT TAB(10)     "ss       aa   aa  pp   pp  iii  ee        nnn  nn   ³³    ss"
460 PRINT TAB(10)     "sssssss  aaaaaaa  ppppppp  iii  eeeeeee   nn n nn   ³     sssssss"
461 PRINT TAB(10)     "     ss  aa   aa  pp       iii  ee        nn  nnn              ss"
462 PRINT TAB(10)     "sssssss  aa   aa  pp       iii  eeeeeee   nn   nn         sssssss"
463 PRINT TAB(10) STRING$(65,138):PRINT
464 PRINT
465 PRINT TAB(10);CHR$(164);" LUIS GARCIA,MAYO/87"
466 FOR i=1 TO 1000:NEXT
467 RETURN

Controles

    MENOS = RESPUESTA NEGATIVA
      MÁS = RESPUESTA POSITIVA 
    SPACE = TIRAR DADO o SELECCIONAR

Carga del programa

1.- Introducir el disco CP/M por la cara 2
2.- Escribir BASIC y esperar a que cargue
3.- Retirar el disco CP/M e introducir el disco que contiene el juego Sapien's
4.- Teclear run "Sapiens" y pulsar la tecla "ENTER"

Descarga

  • Sapien's (juego en formato dsk, comprimido con zip)

Vídeos

es/sapien_s.txt · Última modificación: 2022/06/30 14:59 por jevicac