La Place des Développeurs [EN COURS] Joe&mac Challenge. scrolling du jeu Joe And Ma.

Salut Jipe.
Justement, je vais laisser les Faux sprite [COPY] de coté et je les utiliserai pour animer les Boss.
Pour la phase aventure, j'utiliserai des vrais sprites (Juste des Carrés
)
Je suis en train de travailler sur un moteur avec un rendu physique et pesanteur spécialement pour les sprites.
Je vais le poster dans un autre sujet
Justement, je vais laisser les Faux sprite [COPY] de coté et je les utiliserai pour animer les Boss.
Pour la phase aventure, j'utiliserai des vrais sprites (Juste des Carrés

Je suis en train de travailler sur un moteur avec un rendu physique et pesanteur spécialement pour les sprites.
Je vais le poster dans un autre sujet

igal :
Le plus simple serait alors de déplacer en page 1.
Pour déplacer la zone des sprites en page 1, les commandes à intégrer dans le programme sont :
Code :
VDP(5)=4:VDP(12)=1 '12 parce qu'il y a un décalage à partir du R#8 dans la commande
VDP(6)=17
Je regarde comment faire pour donner l'info au BASIC.
MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
le résultat avec les vrais sprites limite la taille et les couleurs même en superposant
l'animation avec les copy est possible mais assez compliquée a gérer
il m'a fallu de nombreuses heures pour arriver a ceci :
schtroum.zip
lancer x-basic.bas puis neosc5.bas
l'animation avec les copy est possible mais assez compliquée a gérer
il m'a fallu de nombreuses heures pour arriver a ceci :
schtroum.zip
lancer x-basic.bas puis neosc5.bas



Alors voila.
J'ai fusionné [Le moteur de Sprites] avec le [Scroll VDP(24)]
Voici la vidéo:
Voici ce qui reste à faire:
1) En attendant de trouver la solution concernant la [Zone des SPrites] (Décplacement de la zone + redéfinition de la nouvelle zone), j'ai simplement empêché l'écriture sur ces zones.
Un début de réponse à été donné par métalion.
Si vous avez un complément de réponse, le sujet est ici =>
2) Il ne reste plus qu'a relevé la topographie de la mappe pour ensuite égrainer leur apparition à mesure du déroulement de la mappe
Juste une question de temps et de méthodologie
3) Afficher le hero comme déjà fait précédemment.
Forcément, ca va pas accélérer le scroll mais au moins ca sera plus cohérent.
Il faut juste que j'intègre le code que j'ai déjà créé comme ci dessous.
4) La partie un peu plus compliquée est de faire coïncider ma page "Bufferisée" qui fait 212 lignes de haut avec la page affichée qui fait 256 lignes de haut
Voici le Listing:
J'ai fusionné [Le moteur de Sprites] avec le [Scroll VDP(24)]
Voici la vidéo:
Voici ce qui reste à faire:
1) En attendant de trouver la solution concernant la [Zone des SPrites] (Décplacement de la zone + redéfinition de la nouvelle zone), j'ai simplement empêché l'écriture sur ces zones.
Un début de réponse à été donné par métalion.
Si vous avez un complément de réponse, le sujet est ici =>
Metalion :
Pour déplacer la zone des sprites en page 1, les commandes à intégrer dans le programme sont :
Je regarde comment faire pour donner l'info au BASIC.
igal :
Le plus simple serait alors de déplacer en page 1.
Pour déplacer la zone des sprites en page 1, les commandes à intégrer dans le programme sont :
Code :
VDP(5)=4:VDP(12)=1 '12 parce qu'il y a un décalage à partir du R#8 dans la commande
VDP(6)=17
Je regarde comment faire pour donner l'info au BASIC.
2) Il ne reste plus qu'a relevé la topographie de la mappe pour ensuite égrainer leur apparition à mesure du déroulement de la mappe

Juste une question de temps et de méthodologie

3) Afficher le hero comme déjà fait précédemment.
Forcément, ca va pas accélérer le scroll mais au moins ca sera plus cohérent.
Il faut juste que j'intègre le code que j'ai déjà créé comme ci dessous.
4) La partie un peu plus compliquée est de faire coïncider ma page "Bufferisée" qui fait 212 lignes de haut avec la page affichée qui fait 256 lignes de haut

Voici le Listing:
Code TEXT :
Edité par
igal
Le 27/03/2015 à 12h05
0 'Sauvegarde Travail en cours***** 10 'save"SPRITE42.asc",a 15 'Mode ecran********************* 20 SCREEN5,2:COLOR1,1,1:VDP(24)=VDP(24)-2AND255 22 SET PAGE 0,2:BLOAD"HEROS.SC5",S:COLOR=RESTORE 24 SET PAGE 0,0:'BLOAD"alpha.sc5",S:COLOR=RESTORE 25 ' 27 'Variables Sprites Mobiles****** 28 ' 30 X=1+96+8:Y=0+7:'Position initiale du HERO 31 'XB=32+1:YB=127:' Position initiale ASCENCEUR 32 VM=16:VC=8:VS=16:VH=8:'Vitesses Monte, Chute, Saute, Horizontale 33 SH=1:SD=1:SG=1:'Empeche les sauts. 34 P=1:UP=0:' Active la pesanteur 35 RI=0:LE=0:' Desactive le passe muraille Droite et Gauche 36 'AS=0:Adherence a l Ascenceur 37 SC=2:'Vitesse de scrolling 40 'DATAS des Patterns des Sprites*************** 42 GOTO 1250 44 'Variables des Pattern des sprites************* 46 A=0:B=1:C=2:D=3:E=4 48 'variables Latitudes et Longitudes des sprites fixes 49 ' 50 A1=24:A2=56:A3=88:A4=120:A5=152:A6=184:A7=216 51 AA=183:AB=183:AC=183:AD=183:AE=183:AF=183:AG=183 52 B1=24:B2=56:B3=73:B4=120:B5=137:B6=200:B7=216 53 BA=95:BB=95:BC=95:BD=63:BE=63:BF=111:BG=111 54 C1=24:C2=41:C3=57:C4=136:C5=168:C6=184:C7=216 55 CA=15:CB=15:CC=15:CD=-1:CE=-1:CF=31:CG=31 56 D1=24:D2=56:D3=88:D4=120:D5=152:D6=184:D7=216 57 DA=15:DB=15:DC=15:DD=15:DE=15:DF=16:DG=15 65 'Projection des Sprites Fixes 66 ' 70 PUTSPRITE1,(A1,AA),1,A:PUTSPRITE2,(A2,AB),1,A:PUTSPRITE3,(A3,AC),1,A:PUTSPRITE4,(A4,AD),1,A:PUTSPRITE5,(A5,AE),1,A:PUTSPRITE6,(A6,AF),1,A:PUTSPRITE7,(A7,AG),1,A 75 PUTSPRITE8,(B1,BA),1,A:PUTSPRITE9,(B2,BB),1,A:PUTSPRITE10,(B3,BC),15,C:PUTSPRITE11,(B4,BD),15,D:PUTSPRITE12,(B5,BE),15,C:PUTSPRITE13,(B6,BF),15,D:PUTSPRITE14,(B7,BG),1,A 80 PUTSPRITE15,(C1,CA),15,D:PUTSPRITE16,(C2,CB),1,A:PUTSPRITE17,(C3,CC),15,C:PUTSPRITE18,(C4,CD),15,D:PUTSPRITE19,(C5,CE),15,C:PUTSPRITE20,(C6,CF),15,D:PUTSPRITE21,(C7,CG),1,A 85 'PUTSPRITE22,(D1,DA),1,A:PUTSPRITE23,(D2,DB),1,A:PUTSPRITE24,(D3,DC),1,A:PUTSPRITE25,(D4,DD),1,A:PUTSPRITE26,(D5,DE),1,A:PUTSPRITE27,(D6,DF),1,A:PUTSPRITE28,(D7,DG),1,A 90 ' 92 ' Choix de la première page à afficher 93 ' 94 J=1:' J est le premier répertoire affiché 95 ' 100 IF J=1THEN CALL CHDIR ("I-1"):GOTO 200 102 IF J=2THEN CALL CHDIR ("I-2"):GOTO 200 104 IF J=3THEN CALL CHDIR ("I-3"):GOTO 200 106 IF J=4THEN CALL CHDIR ("I-4"):GOTO 200 200 CALL CHDIR ("D"):VB=D 202 BLOAD"2",S:COPY(0,210)-(255,211),0TO(0,210),1:GOSUB 853 204 BLOAD"1",S:COPY(0,208)-(255,209),0TO(0,208),1:GOSUB 853 206 CALL CHDIR ("..") 300 CALL CHDIR ("C") 302 BLOAD"8",S:COPY(0,206)-(255,207),0TO(0,206),1:GOSUB 853 304 BLOAD"7",S:COPY(0,204)-(255,205),0TO(0,204),1:GOSUB 853 306 BLOAD"6",S:COPY(0,202)-(255,203),0TO(0,202),1:GOSUB 853 308 BLOAD"5",S:COPY(0,200)-(255,201),0TO(0,200),1:GOSUB 853 310 BLOAD"4",S:COPY(0,198)-(255,199),0TO(0,198),1:GOSUB 853 312 BLOAD"3",S:COPY(0,196)-(255,197),0TO(0,196),1:GOSUB 853 314 BLOAD"2",S:COPY(0,194)-(255,195),0TO(0,194),1:GOSUB 853 316 BLOAD"1",S:COPY(0,192)-(255,193),0TO(0,192),1:GOSUB 853 318 CALL CHDIR ("..") 320 CALL CHDIR ("B") 322 BLOAD"8",S:COPY(0,190)-(255,191),0TO(0,190),1:GOSUB 853 324 BLOAD"7",S:COPY(0,188)-(255,189),0TO(0,188),1:GOSUB 853 326 BLOAD"6",S:COPY(0,186)-(255,187),0TO(0,186),1:GOSUB 853 328 BLOAD"5",S:COPY(0,184)-(255,185),0TO(0,184),1:GOSUB 853 330 BLOAD"4",S:COPY(0,182)-(255,183),0TO(0,182),1:GOSUB 853 332 BLOAD"3",S:COPY(0,180)-(255,181),0TO(0,180),1:GOSUB 853 334 BLOAD"2",S:COPY(0,178)-(255,179),0TO(0,178),1:GOSUB 853 336 BLOAD"1",S:COPY(0,176)-(255,177),0TO(0,176),1:GOSUB 853 338 CALL CHDIR ("..") 340 CALL CHDIR ("A") 342 BLOAD"8",S:COPY(0,174)-(255,175),0TO(0,174),1:GOSUB 853 344 BLOAD"7",S:COPY(0,172)-(255,173),0TO(0,172),1:GOSUB 853 346 BLOAD"6",S:COPY(0,170)-(255,171),0TO(0,170),1:GOSUB 853 348 BLOAD"5",S:COPY(0,168)-(255,169),0TO(0,168),1:GOSUB 853 350 BLOAD"4",S:COPY(0,166)-(255,167),0TO(0,166),1:GOSUB 853 352 BLOAD"3",S:COPY(0,164)-(255,165),0TO(0,164),1:GOSUB 853 354 BLOAD"2",S:COPY(0,162)-(255,163),0TO(0,162),1:GOSUB 853 356 BLOAD"1",S:COPY(0,160)-(255,161),0TO(0,160),1:GOSUB 853 358 CALL CHDIR ("..") 360 CALL CHDIR ("9") 362 BLOAD"8",S:COPY(0,158)-(255,159),0TO(0,158),1:GOSUB 853 364 BLOAD"7",S:COPY(0,156)-(255,157),0TO(0,156),1:GOSUB 853 366 BLOAD"6",S:COPY(0,154)-(255,155),0TO(0,154),1:GOSUB 853 368 BLOAD"5",S:COPY(0,152)-(255,153),0TO(0,152),1:GOSUB 853 370 BLOAD"4",S:COPY(0,150)-(255,151),0TO(0,150),1:GOSUB 853 372 BLOAD"3",S:COPY(0,148)-(255,149),0TO(0,148),1:GOSUB 853 374 BLOAD"2",S:COPY(0,146)-(255,147),0TO(0,146),1:GOSUB 853 376 BLOAD"1",S:COPY(0,144)-(255,145),0TO(0,144),1:GOSUB 853 378 CALL CHDIR ("..") 380 CALL CHDIR ("8") 382 BLOAD"8",S:COPY(0,142)-(255,143),0TO(0,142),1:GOSUB 853 384 BLOAD"7",S:COPY(0,140)-(255,141),0TO(0,140),1:GOSUB 853 386 BLOAD"6",S:COPY(0,138)-(255,139),0TO(0,138),1:GOSUB 853 388 BLOAD"5",S:COPY(0,136)-(255,137),0TO(0,136),1:GOSUB 853 390 BLOAD"4",S:COPY(0,134)-(255,135),0TO(0,134),1:GOSUB 853 392 BLOAD"3",S:COPY(0,132)-(255,133),0TO(0,132),1:GOSUB 853 394 BLOAD"2",S:COPY(0,130)-(255,131),0TO(0,130),1:GOSUB 853 396 BLOAD"1",S:COPY(0,128)-(255,129),0TO(0,128),1:GOSUB 853 398 CALL CHDIR ("..") 400 CALL CHDIR ("7") 402 BLOAD"8",S:COPY(0,126)-(255,127),0TO(0,126),1:GOSUB 853 404 BLOAD"7",S:COPY(0,124)-(255,125),0TO(0,124),1:GOSUB 853 406 BLOAD"6",S:COPY(0,122)-(255,123),0TO(0,122),1:GOSUB 853 408 BLOAD"5",S:COPY(0,120)-(255,121),0TO(0,120),1:GOSUB 853 410 BLOAD"4",S:COPY(0,118)-(255,119),0TO(0,118),1:GOSUB 853 412 BLOAD"3",S:COPY(0,116)-(255,117),0TO(0,116),1:GOSUB 853 414 BLOAD"2",S:COPY(0,114)-(255,115),0TO(0,114),1:GOSUB 853 416 BLOAD"1",S:COPY(0,112)-(255,113),0TO(0,112),1:GOSUB 853 418 CALL CHDIR ("..") 420 CALL CHDIR ("6") 422 BLOAD"8",S:COPY(0,110)-(255,111),0TO(0,110),1:GOSUB 853 424 BLOAD"7",S:COPY(0,108)-(255,109),0TO(0,108),1:GOSUB 853 426 BLOAD"6",S:COPY(0,106)-(255,107),0TO(0,106),1:GOSUB 853 428 BLOAD"5",S:COPY(0,104)-(255,105),0TO(0,104),1:GOSUB 853 430 BLOAD"4",S:COPY(0,102)-(255,103),0TO(0,102),1:GOSUB 853 432 BLOAD"3",S:COPY(0,100)-(255,101),0TO(0,100),1:GOSUB 853 434 BLOAD"2",S:COPY(0,98)-(255,99),0TO(0,98),1:GOSUB 853 436 BLOAD"1",S:COPY(0,96)-(255,97),0TO(0,96),1:GOSUB 853 438 CALL CHDIR ("..") 440 CALL CHDIR ("5") 442 BLOAD"8",S:COPY(0,94)-(255,95),0TO(0,94),1:GOSUB 853 444 BLOAD"7",S:COPY(0,92)-(255,93),0TO(0,92),1:GOSUB 853 446 BLOAD"6",S:COPY(0,90)-(255,91),0TO(0,90),1:GOSUB 853 448 BLOAD"5",S:COPY(0,88)-(255,89),0TO(0,88),1:GOSUB 853 450 BLOAD"4",S:COPY(0,86)-(255,87),0TO(0,86),1:GOSUB 853 452 BLOAD"3",S:COPY(0,84)-(255,85),0TO(0,84),1:GOSUB 853 454 BLOAD"2",S:COPY(0,82)-(255,83),0TO(0,82),1:GOSUB 853 456 BLOAD"1",S:COPY(0,80)-(255,81),0TO(0,80),1:GOSUB 853 458 CALL CHDIR ("..") 460 CALL CHDIR ("4") 462 BLOAD"8",S:COPY(0,78)-(255,79),0TO(0,78),1:GOSUB 853 464 BLOAD"7",S:COPY(0,76)-(255,77),0TO(0,76),1:GOSUB 853 466 BLOAD"6",S:COPY(0,74)-(255,75),0TO(0,74),1:GOSUB 853 468 BLOAD"5",S:COPY(0,72)-(255,73),0TO(0,72),1:GOSUB 853 470 BLOAD"4",S:COPY(0,70)-(255,71),0TO(0,70),1:GOSUB 853 472 BLOAD"3",S:COPY(0,68)-(255,69),0TO(0,68),1:GOSUB 853 474 BLOAD"2",S:COPY(0,66)-(255,67),0TO(0,66),1:GOSUB 853 476 BLOAD"1",S:COPY(0,64)-(255,65),0TO(0,64),1:GOSUB 853 478 CALL CHDIR ("..") 480 CALL CHDIR ("3") 482 BLOAD"8",S:COPY(0,62)-(255,63),0TO(0,62),1:GOSUB 853 484 BLOAD"7",S:COPY(0,60)-(255,61),0TO(0,60),1:GOSUB 853 486 BLOAD"6",S:COPY(0,58)-(255,59),0TO(0,58),1:GOSUB 853 488 BLOAD"5",S:COPY(0,56)-(255,57),0TO(0,56),1:GOSUB 853 490 BLOAD"4",S:COPY(0,54)-(255,55),0TO(0,54),1:GOSUB 853 492 BLOAD"3",S:COPY(0,52)-(255,53),0TO(0,52),1:GOSUB 853 494 BLOAD"2",S:COPY(0,50)-(255,51),0TO(0,50),1:GOSUB 853 496 BLOAD"1",S:COPY(0,48)-(255,49),0TO(0,48),1:GOSUB 853 498 CALL CHDIR ("..") 500 CALL CHDIR ("2") 502 BLOAD"8",S:COPY(0,46)-(255,47),0TO(0,46),1:GOSUB 853 504 BLOAD"7",S:COPY(0,44)-(255,45),0TO(0,44),1:GOSUB 853 506 BLOAD"6",S:COPY(0,42)-(255,43),0TO(0,42),1:GOSUB 853 508 BLOAD"5",S:COPY(0,40)-(255,41),0TO(0,40),1:GOSUB 853 510 BLOAD"4",S:COPY(0,38)-(255,39),0TO(0,38),1:GOSUB 853 512 BLOAD"3",S:COPY(0,36)-(255,37),0TO(0,36),1:GOSUB 853 514 BLOAD"2",S:COPY(0,34)-(255,35),0TO(0,34),1:GOSUB 853 516 BLOAD"1",S:COPY(0,32)-(255,33),0TO(0,32),1:GOSUB 853 518 CALL CHDIR ("..") 520 CALL CHDIR ("1") 522 BLOAD"8",S:COPY(0,30)-(255,31),0TO(0,30),1:GOSUB 853 524 BLOAD"7",S:COPY(0,28)-(255,29),0TO(0,28),1:GOSUB 853 526 BLOAD"6",S:COPY(0,26)-(255,27),0TO(0,26),1:GOSUB 853 528 BLOAD"5",S:COPY(0,24)-(255,25),0TO(0,24),1:GOSUB 853 530 BLOAD"4",S:COPY(0,22)-(255,23),0TO(0,22),1:GOSUB 853 532 BLOAD"3",S:COPY(0,20)-(255,21),0TO(0,20),1:GOSUB 853 534 BLOAD"2",S:COPY(0,18)-(255,19),0TO(0,18),1:GOSUB 853 536 BLOAD"1",S:COPY(0,16)-(255,17),0TO(0,16),1:GOSUB 853 538 CALL CHDIR ("..") 540 CALL CHDIR ("0") 542 BLOAD"8",S:COPY(0,14)-(255,15),0TO(0,14),1:GOSUB 853 544 BLOAD"7",S:COPY(0,12)-(255,13),0TO(0,12),1:GOSUB 853 546 BLOAD"6",S:COPY(0,10)-(255,11),0TO(0,10),1:GOSUB 853 548 BLOAD"5",S:COPY(0,8)-(255,9),0TO(0,8),1:GOSUB 853 550 BLOAD"4",S:COPY(0,6)-(255,7),0TO(0,6),1:GOSUB 853 552 BLOAD"3",S:COPY(0,4)-(255,5),0TO(0,4),1:GOSUB 853 554 BLOAD"2",S:COPY(0,2)-(255,3),0TO(0,2),1:GOSUB 853 556 BLOAD"1",S:COPY(0,0)-(255,1),0TO(0,0),1:GOSUB 853 558 CALL CHDIR ("..") 559 IFJ=4THENSC=0:GOSUB853:GOTO559 560 CALL CHDIR ("F") 562 BLOAD"8",S:BLOAD"8",S,0+32768!:GOSUB 853 564 BLOAD"7",S:BLOAD"7",S,0+32768!:GOSUB 853 566 BLOAD"6",S:BLOAD"6",S,0+32768!:GOSUB 853 568 BLOAD"5",S:BLOAD"5",S,0+32768!:GOSUB 853 570 GOSUB853:'BLOAD"4",S:BLOAD"4",S,0+32768!:GOSUB 853 572 GOSUB853:'BLOAD"3",S:BLOAD"3",S,0+32768!:GOSUB 853 574 BLOAD"2",S:BLOAD"2",S,0+32768!:GOSUB 853 576 GOSUB853:'BLOAD"1",S:BLOAD"1",S,0+32768!:GOSUB 853:'Zone Sprites 578 CALL CHDIR ("..") 580 CALL CHDIR ("E") 582 BLOAD"8",S:BLOAD"8",S,0+32768!:GOSUB 853 584 GOSUB853:'BLOAD"7",S:BLOAD"7",S,0+32768!:GOSUB 853:'Zone Sprites 586 GOSUB853:'BLOAD"6",S:BLOAD"6",S,0+32768!:GOSUB 853:'Zone Sprites 588 GOSUB853:'BLOAD"5",S:BLOAD"5",S,0+32768!:GOSUB 853:'Zone Sprites 590 BLOAD"4",S:BLOAD"4",S,0+32768!:GOSUB 853 592 BLOAD"3",S:BLOAD"3",S,0+32768!:GOSUB 853 594 BLOAD"2",S:BLOAD"2",S,0+32768!:GOSUB 853 596 BLOAD"1",S:BLOAD"1",S,0+32768!:GOSUB 853 598 CALL CHDIR ("..") 600 CALL CHDIR ("D") 602 BLOAD"8",S:BLOAD"8",S,0+32768!:GOSUB 853 604 BLOAD"7",S:BLOAD"7",S,0+32768!:GOSUB 853 606 BLOAD"6",S:BLOAD"6",S,0+32768!:GOSUB 853 608 BLOAD"5",S:BLOAD"5",S,0+32768!:GOSUB 853 610 BLOAD"4",S:BLOAD"4",S,0+32768!:GOSUB 853 612 BLOAD"3",S:BLOAD"3",S,0+32768!:GOSUB 853 614 CALL CHDIR (".."):CALL CHDIR (".."):J=J+1:GOTO100 838 'Projection des Sprites Mobiles*************** 839 ' 840 'XB=XB+8AND255:'MOTEUR ASCENCEUR 841 'IFAS=1THENX=XB:'ADHERENCE ASCENCEUR 1 843 'PUTSPRITE29,(XB,YB),15,A:'ASCENCEUR 1 845 'IFY>YB-14THENIFY<YBTHENIFX>XB-4THENIFX<XB+8THENAS=1 847 ' 850 'Moteur Principal 852 ' 853 S=STICK(0):ONS+1GOSUB 860,870,880,890,860,860,860,930,940:'Renvoie selon Stick ZERO 854 VDP(24)=VDP(24)-SCAND255:RETURN 855 ' 856 'Gestion des Mouvements 857 ' 858 'STATIQUE 860 PUTSPRITE0,(X,Y),8,D:ONSPRITE GOSUB1000:SPRITEON:'Si colision aller a 1000 861 'IFRI=1THENP=1 862 'IFLE=1THENP=1 863 IFP=1THEN910:'Si pesanteur alors aller a ligne 210 (chute) 864 RETURN 867 ' 868 'SAUT HAUT 870 PUTSPRITE0,(X,Y),8,D:ONSPRITEGOSUB1010:SPRITEON:'Si colision aller a 1010 872 IFSH=5THEN910:'Si Saut boucle x fois alors aller a 210 873 IFUP=1THENY=Y+2:UP=0:AS=0:'Si saut utilise alors recalibrer Y 874 Y=Y-VS:SH=SH+1:P=1:'Saut Haut utilise! Pesanteur active 876 RETURN 877 ' 878 'SAUT DROITE 880 PUTSPRITE0,(X,Y),8,D:ONSPRITEGOSUB1020:SPRITEON:'Si colision aller a 1020 882 IFSD=3THEN910:'Si Saut Droite deja utilise alors aller a 210 883 IFUP=1THENY=Y+2:UP=0:AS=0:'Si saut utilise alors recalibrer Y 884 X=X+VS:Y=Y-VS:SD=SD+1:P=1:'Saut Droite utilise! Pesanteur active 886 RETURN 887 ' 888 'DROITE 890 PUTSPRITE0,(X,Y),8,A:ONSPRITEGOSUB1030:SPRITEON:'Si colision aller a 1030 892 X=X+VH:'Deplacement a droite 893 ' 894 IFP=1THEN910:'Si pesanteur alors aller a 210 (chute) 896 RETURN 897 ' 898 'CHUTE A DROITE 900 PUTSPRITE0,(X,Y),8,D:ONSPRITEGOSUB1040:SPRITEON:'SI COLISION ALLER A 1040 902 X=X+VC:'Deplacement a Droite 903 IFUP=1THENY=Y+2:UP=0:'si saut utilise alors recalibrer Y 904 IFP=1THENY=Y+VC:'Si pesanteur alors chute de VC pixels 906 RETURN 907 ' 908 'CHUTE 910 PUTSPRITE0,(X,Y),8,D:ONSPRITE GOSUB1050:SPRITEON:'Si colision alors 1050 911 IFLE=1THENEL=EL+1:P=1:'Si RI actif alors Pesanteur Actif 912 IFEL=2THENX=X+1:LE=0:EL=0 913 IFRI=1THENRI=0:P=1:'Si RI actif alors Pesanteur Actif 914 IFUP=1THENY=Y+2:UP=0:'Si saut utilise alors recalibrer Y 915 IFP=1THENY=Y+VC:'Si pesanteur alors chute de VC pixels 916 RETURN 917 ' 918 'CHUTE A GAUCHE 920 PUTSPRITE0,(X,Y),8,D:ONSPRITEGOSUB1060:SPRITEON:SI COLISION ALLER A 1060 922 X=X-16:'Deplacement a Gauche 923 IFUP=1THENY=Y+2:UP=0:SI SAUT UTILISE ALORS RECALIBRER Y 924 IFP=1THENY=Y+VC:'Si pesanteur alors chute de VC pixels 926 RETURN 927 ' 928 'GAUCHE 930 PUTSPRITE0,(X,Y),8,B:ONSPRITE GOSUB1070:'SPRITEON:Si colision aller a 1070 932 X=X-VH:'Deplacement a Gauche 933 ' 934 IFP=1THEN910:'Si pesanteur aller a 210 (chute) 936 RETURN 937 ' 938 'SAUT GAUCHE 940 PUTSPRITE0,(X,Y),8,D:ONSPRITEGOSUB1080:SPRITEON:'Si colision aller a 1020 942 IFSG=3THEN910:'Si Saut Gauche deja utilise alors aller a 210 943 IFUP=1THENY=Y+2:UP=0:AS=0:'Si saut utilise alors recalibrer Y 944 X=X-VS:Y=Y-VS:SG=SG+1:P=1:'Saut Gauche utilisé! Pesanteur active 946 RETURN 998 ' 999 'COLISION STATIQUE 1000 P=0:SH=0:SD=0:SG=0 1001 SPRITEOFF 1002 IFRI=1THENP=1 1003 IFLE=1THENP=1 1004 IFUP=0THENY=Y-2:UP=1 1005 RETURN 1008 ' 1009 'COLISION SAUT HAUT 1010 P=0:SH=0:SD=0:SG=0 1011 SPRITEOFF 1013 IFUP=0THENY=Y-2:UP=1 1014 RETURN 1018 ' 1019 'COLISION SAUT DROITE 1020 P=0:SH=0:SD=0:SG=0 1021 SPRITEOFF 1023 IFUP=0THENY=Y-2:UP=1 1024 RETURN 1028 ' 1029 'COLISION DROITE 1030 IFP=1THENRETURN 1031 P=1:SH=0:SD=0:SG=0:RI=1 1032 SPRITEOFF 1033 IFUP=0THENY=Y-2:UP=1 1034 RETURN 1038 ' 1039 'COLISION CHUTE A DROITE 1040 P=0:SH=0:SD=0:SG=0 1041 SPRITEOFF 1043 IFUP=0THENY=Y-2:UP=1 1044 RETURN 1048 ' 1049 'COLISION BAS 1050 P=0:SH=0:SD=0:SG=0 1051 'SPRITEOFF 1053 IFUP=0THENY=Y-2:UP=1 1054 RETURN 1058 ' 1059 'COLISION CHUTE A GAUCHE 1060 P=0:SH=1:SD=0:SG=0 1061 SPRITEOFF 1063 IFUP=0THENY=Y-2:UP=1 1064 RETURN 1068 ' 1069 'COLISION GAUCHE 1070 IFP=1THENRETURN 1071 P=1:SH=0:SD=0:SG=0:LE=1 1072 X=X-16-1:SPRITEOFF 1073 IFUP=0THENY=Y-2:UP=1 1074 RETURN 1078 ' 1079 'COLISION SAUT GAUCHE 1080 P=0:SH=0:SD=0:SG=0 1081 SPRITEOFF 1083 IFUP=0THENY=Y-2:UP=1 1084 RETURN 1088 ' 1200 DESSIN DES SPRITES 1201 ' 1250 FOR I=1TO16:READA$:S$=S$+CHR$(VAL("&B"+LEFT$(A$,8))):NEXTI 1252 ' DESSIN DES SPRITES 1260 RESTORE 1301 1270 FORI=1TO16:READA$:S$=S$+CHR$(VAL("&B"+RIGHT$(A$,8))):NEXTI 1280 SPRITE$(0)=S$ 1290 GOTO 1350 1301 DATA 0000000000000000 1302 DATA 0000000000000000 1303 DATA 0000000000000000 1304 DATA 0000000000000000 1305 DATA 0000000000000000 1306 DATA 0000000000000000 1307 DATA 0000000000000000 1308 DATA 0000000000000000 1309 DATA 1111111111111111 1310 DATA 1000000000000000 1311 DATA 0000000000000000 1312 DATA 0000000000000000 1313 DATA 0000000000000000 1314 DATA 0000000000000000 1315 DATA 0000000000000000 1316 DATA 0000000000000000 1350 FORJB=1TO16:READA$:T$=T$+CHR$(VAL("&B"+LEFT$(A$,8))):NEXTJB 1360 RESTORE 1401 1370 FORJB=1TO16:READA$:T$=T$+CHR$(VAL("&B"+RIGHT$(A$,8))):NEXTJB 1380 SPRITE$(1)=T$ 1390 GOTO 1450 1401 DATA 0000000000000000 1402 DATA 0000000000000000 1403 DATA 0000000000000000 1404 DATA 0000000000000000 1405 DATA 0000000000000000 1406 DATA 0000000000000000 1407 DATA 0000000000000000 1408 DATA 0000000000000000 1409 DATA 1111111111111111 1410 DATA 0000000000000001 1411 DATA 0000000000000000 1412 DATA 0000000000000000 1413 DATA 0000000000000000 1414 DATA 0000000000000000 1415 DATA 0000000000000000 1416 DATA 0000000000000000 1450 FORK=1TO16:READA$:U$=U$+CHR$(VAL("&B"+LEFT$(A$,8))):NEXTK 1460 RESTORE 1501 1470 FORK=1TO16:READA$:U$=U$+CHR$(VAL("&B"+RIGHT$(A$,8))):NEXTK 1480 SPRITE$(2)=U$ 1490 GOTO 1550 1501 DATA 0000000000000000 1502 DATA 0000000000000000 1503 DATA 0000000000000000 1504 DATA 0000000000000000 1505 DATA 0000000000000000 1506 DATA 0000000000000000 1507 DATA 0000000000000000 1508 DATA 0000000010000000 1509 DATA 1111111111111111 1510 DATA 0000000000000000 1511 DATA 0000000000000000 1512 DATA 0000000000000000 1513 DATA 0000000000000000 1514 DATA 0000000000000000 1515 DATA 0000000000000000 1516 DATA 0000000000000000 1550 FORL=1TO16:READA$:V$=V$+CHR$(VAL("&B"+LEFT$(A$,8))):NEXTL 1560 RESTORE 1601 1570 FORL=1TO16:READA$:V$=V$+CHR$(VAL("&B"+RIGHT$(A$,8))):NEXTL 1580 SPRITE$(3)=V$ 1590 GOTO 44 1601 DATA 0000000000000000 1602 DATA 0000000000000000 1603 DATA 0000000000000000 1604 DATA 0000000000000000 1605 DATA 0000000000000000 1606 DATA 0000000000000000 1607 DATA 0000000000000000 1608 DATA 1000000000000000 1609 DATA 1111111111111111 1610 DATA 0000000000000000 1611 DATA 0000000000000000 1612 DATA 0000000000000000 1613 DATA 0000000000000000 1614 DATA 0000000000000000 1615 DATA 0000000000000000 1616 DATA 0000000000000000
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie