π
<-
Chat plein-écran
[^]

Le Temple

Re: Le Temple

Message non lude Bisam » 12 Mai 2018, 13:20

loupiot a écrit:Le problème défaire (sic) un tableau des scores où on rajoute des pseudos un à un, c'est qu'on a très vite dépasser (sic) les 10 pseudos, et alors l'affichage sera compliqué.

Mais en quoi est-ce plus compliqué d'afficher 10 pseudos que d'afficher 10 scores ???

Par ailleurs, pour un tel affichage, il serait quand même beaucoup plus sympa d'avoir le pseudo ET le score avec...

Encore une fois, vous voyez des problèmes là où il n'y en a pas.

Faisons un résumé de ce qui pourrait être intéressant :
  • il faut une liste des meilleurs scores : j'ai déjà donné une façon pour la tenir à jour
  • il faut tenir en parallèle une liste des identifiants des joueurs ayant obtenu ces meilleurs scores (bien plus facile à mettre à jour qu'une chaîne de caractères puisqu'il suffit de appliquer la même technique que dans la liste des scores)
  • il faut une chaîne de caractères qui enregistre tous les pseudos de tous les joueurs et savoir gérer cette chaîne pour qu'un utilisateur qui revient puisse réutiliser son pseudo sans que cela prenne plus de place dans la chaîne (pour cela, il suffit de faire une recherche de son pseudo dans la chaîne)
  • il faut du coup également une façon de donner un identifiant à chaque joueur... et pour cela, le numéro du premier caractère de son pseudo dans la chaîne fait très bien l'affaire
  • enfin, il faut une routine d'affichage qui permette d'afficher tout cela proprement, le plus joli étant sans doute d'afficher pseudo et score sur une même ligne, l'un à gauche et l'autre à droite

J'espère que cette fois c'est plus clair, et sinon, au besoin, je donnerai un exemple.
Avatar de l’utilisateur
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 69.6%
 
Messages: 5665
Inscription: 11 Mar 2008, 00:00
Localisation: Lyon
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Le Temple

Message non lude FjFk » 12 Mai 2018, 13:30

ok, alors, comment faire concrètement ?
Image
Tu veux découvrir mon projet Anonymous ?
Leviathan
Avatar de l’utilisateur
FjFk
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 82.9%
 
Messages: 282
Images: 18
Inscription: 01 Mai 2018, 15:59
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: T STL

Re: Le Temple

Message non lude loupiot » 12 Mai 2018, 14:32

Le découpage de la liste qui indique la taille des pseudos était le pire possible.
Tu veux 5 pseudos avec le score en dessous (même si comme Bisam je trouve plus joli le score à droite):
Code: Tout sélectionner
EffÉcran
1→A
For(N,1,5
⌊J1(N→B
Output(2N-1,1,sousch(Chn1,A,B
Output(2N,1,⌊S1(N
B+A→A
End


Pour la chaîne avec les pseudos (la méthode ne change pas donc le script est potentiellement améliorable, mais il est beaucoup plus lisible et une erreur qui se produisait a été corrigée) :
-S est le score du joueur à la fi de la partie
-⌊S1 est la liste qui contient les 5 records
-C est la position du score du joueur dans la liste des records
Code: Tout sélectionner
0→C
For(A,5,1,­1
If S>⌊S1(A
A→C
End
"test si le score bat un record. Renvoit sa position dans le top 5
If C≠0
Then
"→Chn0
Repeat longueur(Chn0)<21 et longueur(Chn0)>0
Input "PSEUDO : ",Chn0
End
longueur(Chn0→X
1→B
For(A,1,C-1
B+⌊J1(A→B
End
"B donne la position dans Chn1 à laquelle le pseudo va être insere
If C=1
Chn0+sousch(Chn1,B,longueur(Chn1)+1-B-⌊J1(5→Chn1
If C=5
sousch(Chn1,1,B-1)+Chn0→Chn1
If C≠1 et C≠5
sousch(Chn1,1,B-1)+Chn0+sousch(Chn1,B,longueur(Chn1)+1-B-⌊J1(5→Chn1
"oblige de faire du cas par cas, car sousch(Chn1,1,0) cree une erreur
For(A,C,5
⌊J1(A→P
X→⌊J1(A
P→X
End
"le nombre de caractères du pseudo saisi est rentre dans la position qu'il tient au tableau, et les elements en dessous ont ete decale
augmenter(⌊S1,{S→⌊S1
"on ajoute le score dans la liste des records
TriD(⌊S1
5→dim(⌊S1
"enleve le dernier element
End
Avatar de l’utilisateur
loupiotProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 1.9%
 
Messages: 158
Images: 4
Inscription: 30 Oct 2015, 13:23
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: 2A ENS Lyon maths

Re: Le Temple

Message non lude FjFk » 12 Mai 2018, 14:55

et je fait ça 5 fois ou c'est bon ?
et tu pourrais réussir à mettre le score à droite du pseudo ? car j'ai fait pas mal de tests et ça marchais pas ...
et A est quoi ?
Image
Tu veux découvrir mon projet Anonymous ?
Leviathan
Avatar de l’utilisateur
FjFk
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 82.9%
 
Messages: 282
Images: 18
Inscription: 01 Mai 2018, 15:59
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: T STL

Re: Le Temple

Message non lude loupiot » 12 Mai 2018, 15:01

A c'est pas grand chose, il est juste là pour faire des boucles.
par exemple si t'as
Code: Tout sélectionner
For A(1,5
...
End

A va prendre toutes les valeurs entières entre 1 et 5 inclus.
Si tu veux le score à droite, alors t'as :
Code: Tout sélectionner
EffÉcran
1→A
For(N,1,5
⌊J1(N→B
Output(2N-1,1,sousch(Chn1,A,B
Output(2N-1,1,⌊S1(N
B+A→A
End

Dans ce script, A est la position du premier caractère du mot dans la chaîne.
Malheureusement tu devras recopier 5 fois ce code, pas de possibilité de créer des fonctions en basic ... Tu devras changer les noms des listes et chaînes, Chn1 deviendra Chn2 etc ... Oublie pas d'initialiser les listes et les chaînes. La méthode pour le faire est sur ton ancien topic
Avatar de l’utilisateur
loupiotProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 1.9%
 
Messages: 158
Images: 4
Inscription: 30 Oct 2015, 13:23
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: 2A ENS Lyon maths

Re: Le Temple

Message non lude FjFk » 12 Mai 2018, 15:05

finalement, j'utilise combien de chaines ?
Image
Tu veux découvrir mon projet Anonymous ?
Leviathan
Avatar de l’utilisateur
FjFk
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 82.9%
 
Messages: 282
Images: 18
Inscription: 01 Mai 2018, 15:59
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: T STL

Re: Le Temple

Message non lude Bisam » 12 Mai 2018, 15:10

loupiot a écrit:pas de possibilité de créer des fonctions en basic

En fait, ce n'est pas tout-à-fait exact.
Puisque les variables utilisées sont globales à tous les programmes et que la variable Ans peut être utilisée pour passer un argument à un programme ou comme valeur de retour, il est envisageable de faire des sortes de fonctions en TI-Basic.
Avatar de l’utilisateur
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 69.6%
 
Messages: 5665
Inscription: 11 Mar 2008, 00:00
Localisation: Lyon
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Le Temple

Message non lude loupiot » 12 Mai 2018, 16:57

ha oui bien vu :p
petite erreur dans mon message précédant, si tu veux le score à droite il y a ce script (rien en change à part la position du score
Code: Tout sélectionner
EffÉcran
1→A
For(N,1,5
⌊J1(N→B
Output(2N-1,1,sousch(Chn1,A,B
Output(2N-1,22,⌊S1(N
B+A→A
End

Cette méthode te fera utiliser 6 chaînes, dont 5 permanent (tu peux garder Chn0 qui te sert de "pivot"). C'est dommage, parce que ça oblige à recopier pleins de fois le script avec juste une variable de modifiée ...
Avatar de l’utilisateur
loupiotProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 1.9%
 
Messages: 158
Images: 4
Inscription: 30 Oct 2015, 13:23
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: 2A ENS Lyon maths

Re: Le Temple

Message non lude FjFk » 12 Mai 2018, 17:08

si tu utilise 5 chaines, je peux le faire tout seul sans prendre autant de lignes.
ce que je voulais était d'utiliser que une chaine pour tout les pseudos, car j'ai 2 jeux et que je ne eux pas bouffer toutes les chaines de l'utilisateur.
dsl.
Image
Tu veux découvrir mon projet Anonymous ?
Leviathan
Avatar de l’utilisateur
FjFk
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 82.9%
 
Messages: 282
Images: 18
Inscription: 01 Mai 2018, 15:59
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: T STL

Re: Le Temple

Message non lude Bisam » 12 Mai 2018, 17:23

Non, il y a seulement une chaîne qui sert à stocker et l'autre qui est "temporaire".
Je pense qu'il parlait de 5 chaînes si tu veux faire 5 jeux...
Avatar de l’utilisateur
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 69.6%
 
Messages: 5665
Inscription: 11 Mar 2008, 00:00
Localisation: Lyon
Genre: Homme
Calculatrice(s):
MyCalcs profile

PrécédenteSuivante

Retourner vers TI-Basic

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 15 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1279 utilisateurs:
>1241 invités
>33 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)