Hello
Pour les besoins du jeu Demineur Xtreme, je voulais un menu avec drapeaux et souris (tirtue) odnt le pointeur change suivant le contexte. Un peu comme quajnd on va sur un navigateur web et que le opinteur change si son est sur un lien
En bien le Basic (128 ou 512) fait super bien le job!
Voici un exemple affichant des drapeaux end es endroit pfrécis (dessinés en basic) en mode BM 16 et un pointeur de souris qui change suivant qu'on se trouve sur ou en dehors d'un drapeau. Et c'est très fluide malgré le basic
J'espèce que cette routine servira...
Code:
20 DEFINT A-Z :turtle 0,,,"R32D16L128U16L96D8L128U8R64D8"
21 turtle 1,,,"R0U1L64U1R64D4R64D2R64D4L64D4R64D2R64D4L64D4R64D2R64D4L64D4R64D2R64D4"
26 INMOUSE OLDXMOUS, OLDYMOUS:NUMSOURIS = 0
50 LOCATE 22,0,0:CONSOLE,,,,3: CLS : BOXF(0,0)-(159,199),6 'MODE BM16...
51 BOXF(4,8)-(12,44),4:BOXF-(20,8),7:BOXF-(27,44),1 'DRAPEAU FRANCAIS (4,8)-(27,44)
52 BOXF(36,8)-(59,44),4: FOR I=-2 TO 2 : LINE(36+I,8)-(59+I,44),7:LINE(36+I,44)-(59+I,8),7:NEXT:LINE(36,8)-(59,44),1:LINE(36,44)-(59,8),1:FOR I=1 TO 3 :BOX(36-I,8-I)-(59+I,44+I),6:NEXT 'DRAPEAU ANGLAIS (PART 1) (32,8)-(55,44)
53 BOXF(36,22)-(59,30),7:BOXF(46,8)-(49,44),7:BOXF(36,24)-(59,27),1:BOXF(47,8)-(48,44),1 'DRAPEAU ANGLAIS (PART 2) (32,8)-(55,44)
54 BOXF(68,8)-(91,20),0:BOXF-(68,32),1:BOXF-(91,44),3 'DRAPEAU ALLEMAND (68,8)-(91,44)
55 BOXF(100,8)-(123,20),1:BOXF-(100,32),3:BOXF-(123,44),1 'DRAPEAU ESPAGNOL (68,8)-(91,44)
56 BOXF(132,8)-(140,44),2:BOXF-(148,8),7:BOXF-(155,44),1 'DRAPEAU ITALIEN (4,8)-(27,44)
57 NBCHOICES=2:RESTORE 70: FOR I=0 TO 4: READ X1VIGNETTE(I),Y1VIGNETTE(I),X2VIGNETTE(I),Y2VIGNETTE(I):NEXT
60 COLOR 3: SHOW 1,1
61 INMOUSE XMOUS,YMOUS : DANSDRAPEAU=0: FOR I=0 TO 4 : IF XMOUS>=X1VIGNETTE(I) AND XMOUS<=X2VIGNETTE(I) AND YMOUS>=Y1VIGNETTE(I) AND YMOUS<=Y2VIGNETTE(I) THEN DANSDRAPEAU=1:I=5
62 NEXT I : IF DANSDRAPEAU <> NUMSOURIS THEN TURTLE NUMSOURIS: SHOW 0 : NUMSOURIS=DANSDRAPEAU: TURTLE NUMSOURIS:SHOW 1,1
64 TURTLE NUMSOURIS,XMOUS,YMOUS
68 CLICMOUS=MTRIG(0) : IF CLICMOUS=0 THEN 61
69 CONSOLE,,,,0:END
70 DATA 4,8,27,44
71 DATA 36,8,59,44
72 DATA 68,8,91,44
73 DATA 100,8,123,44
74 DATA 132,8,155,44
Pour changer la couleur de souris (turtle) en mode bm 16, il suffit de changer le "color" (attention ici en mettant à 0, ça n'affiche rien).
Les ligne 51 à 56 servent à dessiner les drapeaux.
On sort d ela routine en cliquant avec la souris.