Natasha flottante

GW-Basic, utilisé par PC-Basic

Programme avec Graphique et Texte

PC-BASIC

Je pense que vous conviendrez que l'animal en peluche Natasha est suffisamment mignon pour justifier sa propre section (et programme) :

Exécutez TATA.BAS et vous verrez Natasha flotter à l'écran.

TATA.BAS fonctionne de manière similaire à FISH.BAS. Pour l'animation et autres types de mouvements graphiques, il ne devrait y avoir aucun doute : PUT et GET, associés à PCOPY, sont vos meilleures options.

Imaginez une histoire – et un jeu – autour de Natasha (alias Tata). Elle est tout simplement trop adorable pour ne pas le faire, vous ne trouvez pas ?

TATA.BAS

10 RANDOMIZE TIMER:KEY OFF:SCREEN 7:SCREEN 9:SCREEN 9,,0:PALETTE 8,32:PALETTE 9,55:PALETTE 5,47:PALETTE 13,56:X=120:Y=195
240 CLS
250 PSET(120,95),13:DRAW"R100 D70 L100 U70"
260 PAINT(125,99),1,13:PSET(134,165),13:DRAW"M131,160 M130,155 M131,150 M135,145 M139,146 M144,147 M151,148 M160,148 M165,147 M168,149 M172,151 M177,153 M183,155 M193,157 M202,159 M211,160 M220,160":PAINT(169,159),9, 13
265 DRAW"C13 BM135,145 M128,149 M129,146 M126,145 M121,148 M121,142 M125,139 M120,136 M120,130 M127,128 M124,127 M122,125 M125,124 M127,123 M124,122 M122,120 M128,119 M132,118 M128,111 M128,104 M132,109 M134,106 M137,108 M141,102 M144,107 M151,100"
270 DRAW"M150,107 M154,107 M164,98 M159,107 M169,103 M163,111 M174,106 M179,106 M181,108 M178,108 M171,112 M180,114 M173,115 M180,117 M183,124 M175,119 M181,129 M176,128 M180,137 M173,135 M174,140 M171,142 M174,145 M167,145 M168,149"
273 DRAW"BM134,141 M131,123 M133,120 M137,117 M142,116 M151,115 M163,116 M171,120 M171,124 M162,141 M156,143 M141,143 M134,141 BM132,131 M142,127 M145,128 M146,134 M155,134 M157,130 M160,128 M164,128 M167,131":PAINT(151,122),5, 13
275 PAINT(152,111),10,13:PAINT(153,138),9,13: PSET(146,135), 13:DRAW"M148,136 M153,136 M155,134 M151,136 M151,138 M150,138 M150,136":PAINT(150,135),8,13
278 PSET(147,139),12:DRAW"M153,139 M153,140 M148,140 C13 BM154,139 M158,138 M161,137 BM146,139 M140,138 M138,137"
280 PSET(136,124),13:DRAW"M136,122 M137,120 M139,119 M141,119 M143,121 M143,123 M136,124 BM138,124 M141,125 M143,123":PAINT(140,121), 2,13:PAINT(141,124),15,13
282 PSET(157,123),13:DRAW"M159,121 M162,120 M164,121 M164,123 M164,124 M164,125 M157,123":PAINT(162,122),2,13:PSET(158,123),13 :DRAW"M160,126 M163,125":PAINT(161,125),15,13
285 DIM PA(1000):GET(119,95)-(221,165),PA:CLS
290 CLS:PCOPY 0,1:SCREEN 9:CLS:RANDOMIZE TIMER
300 T=INT(1+5*RND(1))
305 V=INT(1+5*RND(1))
306 C=INT(1+5*RND(1))
307 B=INT(1+2*RND(1))
308 N=INT(1+2*RND(1))
309 IF B=2 THEN V=-(V)
310 IF N=2 THEN C=-(C)
311 FD=INT(1+1000*RND(1))
320 FOR A=1 TO T
325 PUT(X,Y),PA,XOR
330 FOR DF=1 TO FO:NEXT DF
340 PUT(X,Y),PA,XOR
350 X=X+V:Y=Y+C
351 IF X=<1 THEN X=1
352 IF X=>535 THEN X=535
353 IF Y=>270 THEN Y=270
354 IF Y=<1 THEN Y=1
355 NEXT A
360 GOTO 300