[R] Le jeu du " Yam's " :)

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
Arkenix
Niveau 4
Niveau 4
Messages : 59
Enregistré le : ven. 27 mai 2011 23:42
Status : Hors ligne

[R] Le jeu du " Yam's " :)

#1

Message par Arkenix »

Bonjour chère amis AutoItiens et AutoItiennes ! et bonne année !

Introduction :

Aujourd'hui nous nous retrouvons après les fêtes, et avons tous eu pour la plupart nos petit cadeaux de Noël ou nos chocolats tant appréciés !

Malheureusement, mauvais garçon que je fait, ma maman n'a pas eu son cadeau a l'heure !

Celle ci, passionnée d'informatique, aime beaucoup les petits jeux de réflexions sur PC.

Aussi, elle a dernièrement voulu avoir un jeu de Yam's (petit jeu de Dés).

Je me suis mis donc dans l'idée de lui faire ce jeu.
Sauf que je pèche un peu pour quelques petits trucs :'( .


Ou en somme nous ?

Mon petit jeu est partiellement terminé, je dirais dans les 80% de réussi :)
-Le Zip vous est joint en pièce jointe

Screen :

Image

Mon problème se trouve surtout du coté des vérifications, lors que l'on doit valider la "Petite suite" .


Énoncé du problème :

Le jeu se passe de la manière suivante :

1 - Nous lançons les dés (il y en a 5 sur le tapis)
2 - Nous gardons de coté les dés qui nous intéresse !
3 - Après 3 lancés maximum, nous pouvons donc choisir dans quelle 'partie' mettre nos dés, afin d'avoir des points.

4 - Dans le cas de la petite suite, nous avons 3 possibilités de P.suite

La première est : [1] > [2] > [3] > [4] > [autre]
(sur 5 Dés)

La deuxième est : [2] > [3] > [4] > [5] > [autre]
(sur 5 Dés)

La troisieme est : [3] > [4] > [5] > [6] > [autre]
(sur 5 Dés)


Le problème, c'est que je n'arrive pas tellement a trouer la bonne méthode pour faire cette vérification.

J' essai de faire la méthode suivante :

Filtre 1 : Sur 5 Dés je regarde si il y a un 3 (oui obligatoire pour une P.Suite)
Filtre 2 : Je vérifie si il y a des doubles, et le supprime de mon array.
Filtre 3 : Je replace par ordre chronologique dans un array mes dés restants avec _ArraySort()
Filtre 4 : Je vérifie si les 4 premières Variables de mon array son égales a leur précédente+1

Et enfin je fini par un If qui nous attribue nos points !

Le seul souci, c'est que je n'arrive pas a faire le Filtre 2, 3, 4 :'(


Ma Question !!

Pensez vous qu'il y a une méthode plus simple, pour vérifier si il y a une petite suite ?

Arriverez vous a me diriger vers peut être une manière de faire, pour réaliser mes filtres ?



Merci a vous chère communauté !!
En espérant que ceci n'a pas déjà été traité ...




EDIT : Fichier à jour pour la petite suite manque encore les autres fonctions tel que :

[ ]Aperçu des points
[x]Animation des points
[ ]Bruitages
[x]Gui en Popup
[ ]Autres Bugs
Fichiers joints
Yams.zip
Script + Images + Exe
(650.9 Kio) Téléchargé 100 fois
Modifié en dernier par Arkenix le lun. 09 janv. 2012 20:23, modifié 6 fois.
Projet Autoit : Faire un jeu "Point & Click" > http://www.lecoindaide.com/forum/viewforum.php?f=44
Avatar du membre
Yogui
Niveau 9
Niveau 9
Messages : 689
Enregistré le : ven. 18 avr. 2008 17:29
Status : Hors ligne

Re: [..] Le jeu du " Yam's " :)

#2

Message par Yogui »

Bonjour,

Je n'ai pas vraiment le temps pour le moment mais je vais regarder votre code un peu plus tard en tout cas bravo pour cette très jolie GUI !!

Première modification :

Code : Tout sélectionner

Fileinstall(@ScriptDir&"\pic\lancer.jpg",@tempdir&"\Yam\lancer.jpg",1)
à la place de :

Code : Tout sélectionner

Fileinstall("C:\Documents and Settings\Administrateur\Bureau\AutoitScripts\Yams\pic\lancer.jpg",@tempdir&"\Yam\lancer.jpg",1)
A très bientôt
Avatar du membre
Arkenix
Niveau 4
Niveau 4
Messages : 59
Enregistré le : ven. 27 mai 2011 23:42
Status : Hors ligne

Re: [..] Le jeu du " Yam's " :)

#3

Message par Arkenix »

Yogui a écrit :en tout cas bravo pour cette très jolie GUI !!
Merci bien =) je vais la mettre en popup par la suite et y mettre des boutons en haut ce sera plus propre ;)
Yogui a écrit : Première modification :

Code : Tout sélectionner

Fileinstall(@ScriptDir&"\pic\lancer.jpg",@tempdir&"\Yam\lancer.jpg",1)
à la place de :

Code : Tout sélectionner

Fileinstall("C:\Documents and Settings\Administrateur\Bureau\AutoitScripts\Yams\pic\lancer.jpg",@tempdir&"\Yam\lancer.jpg",1)
J'y ai pensé, mais je crois que lors de la compilation ça bug =x .
Je test et je dis ça.
Projet Autoit : Faire un jeu "Point & Click" > http://www.lecoindaide.com/forum/viewforum.php?f=44
Avatar du membre
Yogui
Niveau 9
Niveau 9
Messages : 689
Enregistré le : ven. 18 avr. 2008 17:29
Status : Hors ligne

Re: [..] Le jeu du " Yam's " :)

#4

Message par Yogui »

Effectivement c'est même marqué dans la Doc :
The source path of the file to compile. This must be a literal string; it cannot be a variable or the result of a function call. It can be a relative path (using .\ or ..\ in the path) to the source file (.au3).



donc :

Code : Tout sélectionner

Fileinstall(".\pic\lancer.jpg",@tempdir&"\Yam\lancer.jpg",1)
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Le jeu du " Yam's " :)

#5

Message par mikell »

Pour la vérification de la petite suite en principe ça devrait marcher :
1 - éliminer les doublons dans l'array avec _ArrayUnique
2 - Si l'array résultante contient + de 3 éléments et que leur total est égal à 10, 14 ou 18 alors c'est une petite suite
c'est valable quel que soit le tirage du 5ème dé
Pour la grande suite c'est similaire (_ArrayUnique doit renvoyer 5 éléments et le total être égal à 15 ou 20 )

Code : Tout sélectionner

$total = ""
$aNewArray = _ArrayUnique($aArray, 1, 1)
If $aNewArray[0] > 3 Then
  For $i = 1 To aNewArray[0]
    $total += $aNewArray[$i]
  Next
EndIf
If $total = 10 OR $total = 14 OR $total = 18 Then .... ( valider )
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
Arkenix
Niveau 4
Niveau 4
Messages : 59
Enregistré le : ven. 27 mai 2011 23:42
Status : Hors ligne

Re: [..] Le jeu du " Yam's " :)

#6

Message par Arkenix »

mikell a écrit :Pour la vérification de la petite suite en principe ça devrait marcher :
1 - éliminer les doublons dans l'array avec _ArrayUnique
2 - Si l'array résultante contient + de 3 éléments et que leur total est égal à 10, 14 ou 18 alors c'est une petite suite
c'est valable quel que soit le tirage du 5ème dé
Pour la grande suite c'est similaire (_ArrayUnique doit renvoyer 5 éléments et le total être égal à 15 ou 20 )

Code : Tout sélectionner

$total = ""
$aNewArray = _ArrayUnique($aArray, 1, 1)
If $aNewArray[0] > 3 Then
  For $i = 1 To aNewArray[0]
    $total += $aNewArray[$i]
  Next
EndIf
If $total = 10 OR $total = 14 OR $total = 18 Then .... ( valider )

Merci de l'info, j'ai regardé de plus près la fonction.

Voici donc ce que j'ai fait :

Code : Tout sélectionner

If $Menu = 10 Then
        Local $B[6] = [0, $De1, $De2, $De3, $De4, $De5]


        _ArraySort($B)
        $ArrayUnique = _ArrayUnique($B,1,1)

        Local $Verification = 0
        
        For $T = 1 To 4 Step 1
            $Verification += $ArrayUnique[$T]
        Next

    If $ArrayUnique[0] > 3 And $Verification = 10 Or $Verification = 14 Or $Verification = 18 Then
    $TotalPoint = $TotalPoint+30    
    EndIf
Endif
Ça m'a l'air de fonctionner ;)

Edit : oui apparemment pas de souci :) et un [R] de plus dans le forum :D
Merci a tout les deux =)
Projet Autoit : Faire un jeu "Point & Click" > http://www.lecoindaide.com/forum/viewforum.php?f=44
Avatar du membre
Arkenix
Niveau 4
Niveau 4
Messages : 59
Enregistré le : ven. 27 mai 2011 23:42
Status : Hors ligne

Re: [R] Le jeu du " Yam's " :)

#7

Message par Arkenix »

Petite mise à jour
Up du script et quelques modifs =)

J'aimerais maintenant faire une animation plus jolie pour le 'mélange' des Dés et pourquoi pas lorsqu'ils montent dans la 'zone' de sauvegarde.

Une animation plus fluide et qui ressemble moins a une téléportation de l'image x) ..

Avez vous une idée ?

J'avais personnellement pensé à mettre les Dé sur une GUI Child, mais a voir XD !
Projet Autoit : Faire un jeu "Point & Click" > http://www.lecoindaide.com/forum/viewforum.php?f=44
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [R] Le jeu du " Yam's " :)

#8

Message par Tlem »

Le but de ce forum est de résoudre les problèmes en faisant en sorte qu'ils soient facile à retrouver. Le fait de faire un sujet avec plusieurs questions différentes et d'au moins plusieurs dizaines de messages n'arrange pas la recherche.

Je vous demanderais donc de créer un sujet par problème en limitant les quantités de code non indispensables.

Merci d'avance.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Avatar du membre
Arkenix
Niveau 4
Niveau 4
Messages : 59
Enregistré le : ven. 27 mai 2011 23:42
Status : Hors ligne

Re: [R] Le jeu du " Yam's " :)

#9

Message par Arkenix »

Tlem a écrit :Le but de ce forum est de résoudre les problèmes en faisant en sorte qu'ils soient facile à retrouver. Le fait de faire un sujet avec plusieurs questions différentes et d'au moins plusieurs dizaines de messages n'arrange pas la recherche.

Je vous demanderais donc de créer un sujet par problème en limitant les quantités de code non indispensables.

Merci d'avance.
Bonjour Tlem.

Veuillez m'excuser pour le manque de conformisme, je tacherai de m'en souvenir pour la prochaine fois ;)
Projet Autoit : Faire un jeu "Point & Click" > http://www.lecoindaide.com/forum/viewforum.php?f=44
Répondre