[Calc] jeu de dés YAMS

Discussions sur les projets et applications développés en liaison avec une suite bureautique libre.

Modérateur: Vilains modOOs

[Calc] jeu de dés YAMS

Messagepar Gozkel » 18 Juin 2020 09:26


La modération vous a écrit: Suite du sujet Anomalies sur commandes. Nous insérons dans ce message la dernière réponse qui vous avait été faite dans le sujet précédent.


Bonjour,
avec l'aide de ce forum j'ai développé une petite application du jeu de dés YAMS (en PJ). Elle marche globalement bien mais présente parfois des bugs d'utilisation.

Parfois, lorsque je clique sur le jet 2 (ou jet 3), il arrive que les dés sélectionnés ne soient pas relancés.

NB. un autre problème peut-être lié à la même anomalie (indiqué pour info des fois que ce soit le même problème d'origine sinon j'ouvrirai un autre post):
il arrive, lorsque je clique sur "jet 1", que les cases à cocher de sélection sous les dés de la ligne 2 ne soient pas toutes mises, il peut en manquer une ou plusieurs (le clic sur "jet 1" doit normalement lancer les 5 dés et laisser visible toutes les cases à cocher de la ligne "jet 2")

Ces anomalies sont imprévisibles, aléatoires et non répétitives...

Y aurait-il une explication logique et une solution à ce(s) problème(s) à votre avis?

Remarque: j'ai essayé avec la version 6 de libreoffice mais cela ne réglait pas le problème, au contraire je perdais complétement une bonne partie des contrôles donc je suis revenu à une version 5

Merci de votre aide, cordialement

Gozkel
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Loopingss a écrit:L'architecture de votre feuille et par conséquent du code est bien complexe. Je ne suis pas sûr qu'assigner deux macros différentes sur un même élément de formulaire soit très pertinente.
Je pense que vous devriez remplacez les 3 cases à cocher "jet" par un seul bouton. et la case à cocher "reinitialiser les dés" par un autre bouton.
L'appui sur la case à cocher jet remplace le label du bouton par jet 2 ou 3 selon. A chaque fois le même code est utilisé avec éventuellement un test pour savoir quel jet est effectué.
Par ailleurs en cochant les cases des dés à conserver, cela déclenche une macro et change tous les dés comme un jet 1.
Dernière édition par Gozkel le 04 Juil 2020 13:02, édité 4 fois.
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31

Re: Anomalie sur clic de cases à cocher

Messagepar Gozkel » 18 Juin 2020 09:30

Bonjour,
merci pour votre réponse Loopings, je ne sais pas vraiment comment faire mais je vais chercher :D .

Je remets la petite appli en PJ, car je l'ai oubliée lors de la relocalisation du message initial.

Cordialement

Gozkel
Pièces jointes
YAMS - Copie.ods
(35.42 Kio) Téléchargé 23 fois
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31

Re: Anomalie sur clic de cases à cocher

Messagepar Gozkel » 18 Juin 2020 09:49

Bonjour Loopings,
vous avez mentionné:
Par ailleurs en cochant les cases des dés à conserver, cela déclenche une macro et change tous les dés comme un jet 1.

Effectivement c'est un des problèmes que j'avais constaté après avoir installé la version 6 de Libreoffice, d'où mon retour sur la V5 (ce problème n'existe pas sur la version que j'utilise)
Cordialement
Gozkel

La modération vous a écrit: Merci de ne pas poster plusieurs messages à la suite. Vous disposez d'un bouton ÉDITER en haut à droite de chaque message et d'un autre bouton ajout si vous désirez ajouter un complément lorsqu'il n'y a pas de réponse.

LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31

Re: [Calc] Anomalie sur clic de cases à cocher

Messagepar Loopingss » 18 Juin 2020 14:02

Bonjour Godzel.
Voici un exemple d'interface modifiée.
Il y deux boutons à la place de vos 4 cases à cocher. A chaque bouton affecter une macro. Au bouton1 "Initialiser", j'ai affecté la macro décochage. A vous d'adapter le code, quitte à dans "décochage" appeler une 2° macro à exécuter.
Bouton 2. Affecter une seule macro qui effectue les opérations suivantes :
- Test d'un flag pour savoir si vous êtes en tirage 1, 2 ou 3
- Test du tirage tenté, si > 3 exit.
- Accès à l'objet "bouton2", modification de la propriété "Etiquettes" en "Tirage 2" ou "Tirage 3"
- Conservation des dés à conserver
- Tirage puis affichage sur les dés relancés
- Afficher le résultat
Affecter cette macro à l'évènement souris relachée du bouton2.
Bon courage.
COOordialement.
Pièces jointes
YAMS_Lpg.ods
(36.18 Kio) Téléchargé 23 fois
Avatar de l’utilisateur
Loopingss
PassiOOnné
PassiOOnné
 
Message(s) : 741
Inscrit le : 17 Déc 2008 02:50

Re: [Calc] Anomalie sur clic de cases à cocher

Messagepar Gozkel » 18 Juin 2020 16:37

Bonjour Loopingss,
je comprends la logique de la solution mais la réalisation de la macro dépassera largement mes compétences.

J'ai essayé en commençant par ce qui me semblait le plus simple dans la série d'opération à créer, à savoir tentative de renommage de l'étiquette de "tirage 1" en "tirage 2" après "clic" (via macro automatique) mais ça ne marche pas. Je n'ose même pas imaginer le résultat pour les autres tests qui sont encore plus obscures pour moi.
Je préfère donc abandonner cette voie car je ne maitrise pas la notion de "bouton" (avec les cases à cocher, il y a des statuts vrai ou faux plus facilement exploitables pour un novice...):oops:

Du coup je vais essayer de recréer l'application YAMS de A à Z sous la version 6 de LibreOffice. Le bogue sera peut être supprimé de cette façon. Je pensais qu'une version plus récente aurait automatiquement pris en charge une application créée sous un version plus ancienne mais ce n'est pas le cas en ce qui me concerne.

Souhaitez-vous que je ferme ce fil maintenant? Sinon je remonterai le résultat de mon essai en recréant l'application sous version 6.

Merci encore de votre aide et désolé pour mes limites de compétences.

Cordialement

Gozkel
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31

Re: [Calc] Anomalie sur clic de cases à cocher

Messagepar Loopingss » 19 Juin 2020 21:39

Bonjour Gotzel.
Un retour d'expérience et de solutions trouvées est toujours le bienvenu.
COOordialement.

 Ajout : Gotzel. Regardez le fichier ci joint. Il vous écrit en deux boutons et deux macros :
1 : la réinitialisation du tirage pour effectuer un prochain tour.
2 : l'accès au bouton et la modification de son étiquette
Si vous cliquez trois fois sur le bouton de tirage vous verrez se modifier l'étiquette du bouton avec un maximum de trois tirages possibles. 
Pièces jointes
Yams_Bouton.ods
(10.54 Kio) Téléchargé 21 fois
Avatar de l’utilisateur
Loopingss
PassiOOnné
PassiOOnné
 
Message(s) : 741
Inscrit le : 17 Déc 2008 02:50

Re: [Calc] Anomalie sur clic de cases à cocher

Messagepar Gozkel » 19 Juin 2020 23:17

Bonjour Loopingss,
merci du temps passé et de l'explication pour les flags. Je n'y serais jamais arrivé tout seul :wink:

Du coup je vais essayer de compléter la macro avec les moyens du bord (case à cochée remplacée par un bouton... aïe).

Je tenterai également de recréer le YAMS sous la V6, mais je dois trouver un deuxième ordi sur lequel j'installerai la V6 et je garderai celui-ci en V5 pour récupérer les éléments et comparer les effets.
Je pense que les copier/coller entrainent parfois des bugs (j'ai déjà subi des petits problèmes qui avaient été corrigés par une saisie manuelle). Je vais donc tout refaire à la main (mais ça me prendra surement du temps maintenant que le confinement est passé)

Bonne soirée, cordialement

GOZKEL
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31

Re: [Calc] Anomalie sur clic de cases à cocher

Messagepar joel275 » 20 Juin 2020 19:47

Bonjour,

ci-dessous ma participation aux travaux, j'espère qu'elle t'aidera: elle affiche les 3 lancés en bloquant éventuellement la valeur d'un dé.
Pour le reste, je ne pourrais t'aider que si tu précises point par point ce que tu attends de ce programme.
Il serait d'ailleurs peut-être pertinent de déplacer ce sujet en rubrique "Projets".
Quelques remarques:
-->l'enregistreur de macros n'est efficace que pour une seule macro (très simple)
-->il vaut mieux mettre les lignes cachées après la page "utile" vue par tous
--> il vaut mieux ancrer les objets à une cellule, ils 'suivront" tout seul en cas de modification du nombre de lignes

Bon courage et à plus.
Pièces jointes
Yams_joel_v1.ods
(15.4 Kio) Téléchargé 25 fois
OpenOffice 4.1.2 LibreOffice 6-2-8-2 Windows 8.1
joel275
InconditiOOnnel
InconditiOOnnel
 
Message(s) : 790
Inscrit le : 10 Jan 2009 09:05

Re: [Calc] Anomalie sur clic de cases à cocher

Messagepar Gozkel » 20 Juin 2020 23:34

Bonjour Joel275,
merci du coup de main et des conseils. C'est vrai que ça allège pas mal la feuille :super: .

Je vais essayer de continuer le développement sur cette base en utilisant/adaptant tes macros si tu me le permets.

Par contre, en faisant plusieurs essais de ta pièce jointe, j'ai constaté des bugs qui pourraient s'apparenter à ceux que je constate avec ma version. Dans la copie d'écran mise en PJ, on peut voir que 3 dés n'apparaissent pas après le clic du tirage 1 (avec d'autres essais s'était parfois 0, 1 ou 2 dés qui pouvaient ne pas apparaitre et pas toujours les mêmes). Je ne sais pas si cela arrive également chez vous.

Je pensais que cela pourrait être lié à la version de LibreOffice (version 5.4.4.2 de Libreoffice utilisée pour pallier à d'autres bugs constatés avec la V6), mais j'ai fait également des tests avec une version 6.3.6.2 de LibreOffice sur un autre ordinateur et l'anomalie est revenue après quelques lancers.

...Je viens de constater quelque chose à l'instant: lorsque j'ouvre directement la PJ à partir du site du forum (elle est donc en lecture seule) le bogue n'apparait pas. Par contre si j'enregistre la pièce jointe sur mon ordi et qu'ensuite je l'ouvre, là j'ai les bugs. Aurais-je oublié de cocher quelque chose sur LibreOffice (ou ailleurs)?
En complément de test, j'ai mis un attribut "en lecture seule" sur le fichier enregistré sur mon ordi et apparemment les bugs n'apparaissent plus. Cela pourrait-il aider pour solutionner le problème? (...mais impossible de renseigner les grilles des joueurs avec un fichier en lecture seule...! :lol: )

Cordialement

Gozkel
Pièces jointes
Capture.PNG
Capture.PNG (9.28 Kio) Consulté 766 fois
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31

Re: [Calc] Anomalie sur clic de cases à cocher

Messagepar OOotremer971 » 21 Juin 2020 02:03

Bonjour,
Gozkel a écrit:on peut voir que 3 dés n'apparaissent pas après le clic du tirage 1 (avec d'autres essais s'était parfois 0, 1 ou 2 dés qui pouvaient ne pas apparaitre et pas toujours les mêmes). Je ne sais pas si cela arrive également chez vous.

Je reproduis effectivement. En modifiant un peu le code dans la Sub Tirage, je ne parviens plus à reproduire en remplaçant :
Code : Tout sélectionner   AgrandirRéduire
if jcase.State = 0 Then
   U(i) = rnd*6
   'affichage des faces de dés obtenues où il faut
   jcell = feuille.getCellByPosition(8+U(i), 0)   ' caractère à afficher
   a = jcell.String
   jcell = feuille.getCellByPosition(1+i, 0)
   jcell.string = a
End if


par

Code : Tout sélectionner   AgrandirRéduire
if jcase.State = 0 Then
   jcell = feuille.getCellByPosition(1+i, 0)
   a = chr(1 + Int(rnd*6) + 9855)
   jcell.string = a
End if


et du coup on peut supprimer les colonnes I à N et la ligne de code :
Code : Tout sélectionner   AgrandirRéduire
U = Array(0,0,0,0,0)      'tirage au sort des valeurs



A+
Pièces jointes
Yams_joel_v1_ Mod1.ods
(15.44 Kio) Téléchargé 24 fois
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10
Ubuntu 18.04.4 LTS
OpenSuse Leap
Avatar de l’utilisateur
OOotremer971
HédOOniste
HédOOniste
 
Message(s) : 2352
Inscrit le : 16 Avr 2010 14:31

Re: [Calc] Anomalie sur clic de cases à cocher

Messagepar Hubert Lambert » 22 Juin 2020 07:45

Bonjour à tous,

Une petite suggestion à mon tour(c'est fou comme on se laisse prendre au jeu :wink: ), pour simplifier et la feuille et le code : utiliser les styles de cellule pour identifier les dés retenus ou à relancer. L'intérêt serait double : supprimer la dépendance aux cases à cocher et gagner une utilisation plus intuitive.
YAMS.jpg
Dans l'exemple joint, un double-clic sur un dé permet de basculer du mode "à relancer" (en noir) au mode "retenu" (en rouge).
Cordialement.
Pièces jointes
YAMS2-simplifié.ods
(12.66 Kio) Téléchargé 26 fois
AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
| « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
Avatar de l’utilisateur
Hubert Lambert
SuppOOrter
SuppOOrter
 
Message(s) : 1214
Inscrit le : 06 Avr 2016 08:26

Re: [Calc] Anomalie sur clic de cases à cocher

Messagepar Gozkel » 22 Juin 2020 09:58

Oh la la génial, il faut que j'essaie tout ça :bravo:

Pour accélérer le choix des dés à relancer, une fonction "simple-clic" existe-t-elle? (j'ai essayé de renommer "sur_double_clic" en "sur_simple_clic" et en "clic" tout court sans succès.

Il ne me restera plus qu'à refaire une mise en page en ajoutant une zone pour les figures réalisées (full, carré, suite...) et les grilles de jeu, mais ça je saurai copier ce que j'avais fait (même si c'est du bidouillage, ça marche).

Un grand bravo à tous vos neurones et merci aux différents intervenants qui m'ont bien aidé. Je pense que la version définitive est très proche maintenant :wink:.

Bonne journée

Gozkel
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31

Re: [Calc] Anomalie sur clic de cases à cocher

Messagepar Hubert Lambert » 22 Juin 2020 10:04

La macro sur un double clic ou un clic-droit peut être affectée facilement via l'onglet de la feuille : clic-droit sur l'onglet et choisir "Événements de feuille".
Paradoxalement, réagir à un simple clic-gauche est possible mais beaucoup plus contraignant (appel à des "listeners").
Le mieux me semble de poursuivre sur le reste du jeu puis, quand tout roulera, de peaufiner ces aspects secondaires ;-) .
Bon courage donc.

La modération vous a écrit: Sujet déplacé en section Projets

AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
| « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
Avatar de l’utilisateur
Hubert Lambert
SuppOOrter
SuppOOrter
 
Message(s) : 1214
Inscrit le : 06 Avr 2016 08:26

Re: [Calc] jeu de dés YAMS

Messagepar Gozkel » 22 Juin 2020 14:50

Bonjour,
pour les jets 2 et 3, il est préférable de choisir les dés que l'on veut relancer plutôt que de choisir les dés que l'on veut garder.
En effet, le joueur étudie les probabilités d'arriver à faire une des combinaisons gagnantes (full, série...) par rapport aux lancés obtenus.
Exemple: il sera tenté d'essayer une série ou un full si 4 dés au moins sont bons. Il est donc plus logique de double-cliquer sur le dé que l'on veut relancer plutôt que de double-cliquer sur les 4 dés que l'on souhaite conserver (moins de clic, moins de temps, moins de risque d'erreurs).

La modification est-elle aisée car je me perds un peu (beaucoup...) dans les macros?

Bien cordialement

Gozkel
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31

Re: [Calc] jeu de dés YAMS

Messagepar Hubert Lambert » 22 Juin 2020 15:02

C'est très simple a priori :
- à la ligne 74, dans la routine "raz", remplace le nom de style "dé" par "dé retenu";
- fais une mise à zéro pour que le changement soit pris en compte.
C'est tout !
Si tu veux personnaliser les couleurs, cela se fait dans le gestionnaire de style (F11).

PS. J'ai fait un essai en utilisant le clic-droit plutôt que le double-clic, c'est plus fluide en effet.
AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
| « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
Avatar de l’utilisateur
Hubert Lambert
SuppOOrter
SuppOOrter
 
Message(s) : 1214
Inscrit le : 06 Avr 2016 08:26

Re: [Calc] jeu de dés YAMS

Messagepar Gozkel » 22 Juin 2020 23:38

Merci Hubert,
effectivement ça marche très bien en modifiant la ligne 74 :D .

A tout hasard, quelle manipulation faire pour remplacer le double-clic par un clic-droit STP? J'essaierais bien pour me faire une idée et décider s'il est intéressant de faire la modification.

Je mettrai la version finale en PJ lorsque le projet sera fini

Gozkel
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31

Re: [Calc] jeu de dés YAMS

Messagepar Hubert Lambert » 23 Juin 2020 06:58

La réponse est dans un des messages précédents :wink: : tu fais un clic-droit sur l'onglet de la feuille et tu choisis Événements de feuille.
La macro s'appliquera à toute la feuille. C'est pour cela que tu verras dans le code une instruction "queryIntersection", qui est une des options permettant de vérifier qu'on a cliqué sur la bonne zone avant d'exécuter la macro.
AOOo 4.1.7 sur Win10
AOOo 4.1.x sur Linux Mint
LibreOffice 5.x/6.x sur Linux Mint
--
| « Nos défauts devraient nous donner une qualité : l'indulgence pour les défauts des autres » (Rivarol)
Avatar de l’utilisateur
Hubert Lambert
SuppOOrter
SuppOOrter
 
Message(s) : 1214
Inscrit le : 06 Avr 2016 08:26

Re: [Calc] jeu de dés YAMS

Messagepar Gozkel » 23 Juin 2020 10:51

Génial!
du coup j'ai laissé les deux possibilités sur la page (double-clic et clic droit), chacun pourra choisir ce qu'il préfère :super:

Quelques bugs de fonctionnement ont été corrigés dernièrement. Il n'est pas exclu qu'il en reste...

Je mets l'appli (2 joueurs max) en copie en PJ si elle peut être utile à quelqu'un. Un onglet donne les règles du jeu.

Remarque: Avec l'aide d'une appli de partage à distance de l'ordi (à n'utiliser qu'avec des personnes dont vous êtes sures!!), vous pourrez jouer en ligne avec un de vos amis.

Bonne journée et merci aux personnes qui m'ont aidées à murir ce petit projet (qui m'aura bien occupé pendant la période de COVID :D )

Gozkel
Pièces jointes
YAMS24-06-2020.ods
(33.55 Kio) Téléchargé 19 fois
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31

Re: [Calc] jeu de dés YAMS

Messagepar Gozkel » 04 Juil 2020 13:02

Bonjour,
après avoir fait plusieurs parties avec un collègue, il nous semble que les dés ne sont parfois pas relancés (phénomène aléatoire et non reproductible).

Avec un dé on peut le comprendre (1 chance sur 6), mais quand cela arrive avec 2, voir 3 et une fois même 4 dés, on se pose des questions, même si ce n'est pas très fréquent....
NB. anomalie constatée sur les 2e et/ou 3e lancer (pas lors des lancers initiaux).

La version a légèrement évolué depuis (en PJ), mais uniquement dans les calculs des grilles de scores (macros non touchées)

Auriez-vous une idée de l'origine de cette anomalie et de la façon de la régler?

Merci d'avance

Gozkel
Pièces jointes
YAMS2020-07-04 - Copie.ods
(33.34 Kio) Téléchargé 17 fois
LibreOffice Version: 5.4.4.2 sous Windows 10 famille
Gozkel
Membre lOOyal
Membre lOOyal
 
Message(s) : 25
Inscrit le : 01 Mai 2020 15:31


Retour vers Projets

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 3 invité(s)