1

Salut Vince, dans mon clone de Pong j'ai décidé d'utiliser les fonctions de texte de Matthias Domin pour afficher le score des joueurs mais le jeu est beaucoup plus lent depuis. Est-ce normal? Y a-t-il une solution?

Aussi il y a une seule police disponible et en une seule taille, comment faire pour changer tout ça? utiliser des sprites?

Beaucoup de questions je sais, je débute embarrassed
Previously known as Damdam

2

la fonction de matthias domin est trop généraliste pour ce que tu comptes faire je pense...

le plus simple serait en effet d'utiliser des sprites (définis en taille, après c toi qui voit)


tu prédéfinis les sprites des chiffres 0 à F
ensuite, tu te fais une liste chainée de scb avec pour chacune d'elle scbdata qui pointe sur le sprite 0
enfin tu n'as plus qu'à changerla valeur de scbdata du Nème digit quand on marque des points...

en résumé tu garde en variable globale la valeur de 5 digit (exemple pour un score de 00000 à FFFFF)
et au moment de l'afficher tu procèdes par masque :

(valeurHexa && 0x0000F) te donnera la valeur du premier digit
( (valeurHexa && 0x000F0) / 0x00010 ) te donnera la valeur du second digit
( (valeurHexa && 0x00F00) / 0x00100 ) te donnera la valeur du second digit
( (valeurHexa && 0x0F000) / 0x01000 ) te donnera la valeur du second digit
( (valeurHexa && 0xF0000) / 0x10000 ) te donnera la valeur du second digit

après ça tu tu n'as plus qu'a sélectionner le sprite qui va bien en fonction du tableau

avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

3

Ce n'est pas && mais & plutôt non ?

Ensuite, c'est sûrement plus rapide de faire un décalage plutôt qu'une division :
( (valeurHexa & 0x000F0) >> 4 ).

4

le décalage n'est, je crois, pas supporté par le compilateur de BS42
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

5

Merci pour la réponse rapide, je vais essayer ça dès que j'ai le temps smile
Previously known as Damdam

6

par contre pour le simple &, je me suis en effet trompé, le double && sert aux tests conditionnels
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

7

Oki, j'ai compris la théorie du masquage mais je n'ai pas appliqué ça puisque je voulais compter simplement de 0 à 9. J'essayerai toutefois plus tard pour bien comprendre.

J'ai une autre question : j'affiche bien mes sprites de chiffres, mais je voudrais avoir le fond transparent, comment faire? C'est avec la palette?
Previously known as Damdam

8

ouais la palette par défaut c'est le 0 pour la couleur transparente.
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca