begin process at 2010 02 09 22:01:49
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Jeux

 > UNE MACHINE À SOUS

UNE MACHINE À SOUS


 Information sur la source

Note :
8 / 10 - par 1 personne
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Jeux Classé sous :machine, simulation, hasard Niveau :Débutant Date de création :19/06/2009 Date de mise à jour :19/06/2009 17:14:15 Vu / téléchargé :2 177 / 302

Auteur : debiars87

Ecrire un message privé
Commentaire sur cette source (21)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
C'est une Simulation d'un appareil électronique de jeux de hasard et d'argent qui ne demande aucune stratégie ou habileté particulière et dont les lots sont déterminés au lancement du jeu et non au moment de son arrêt par l'utilisateur grâce à un levier, bouton ou pression du doigt sur un écran tactile. Ceux-ci n'ont d'utilité que celle d'induire l'illusion d'un contrôle par l'utilisateur. << WIKIPEDIA >>


 Conclusion

j'accepte tous les conseils,Critiques, et propositions d'amélioration...
Où Contacter moi sur MSN: debiars87@live.fr

DEBIARS JUNIOR

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

19 juin 2009 17:14:16 :
Conclusion

 Sources de la même categorie

Source avec Zip Source avec une capture JEU DE DÉS ZORG6 par dubois77
Source avec Zip Source avec une capture JOUEZ : LIGHTS 1.4 par JulioDelphi
Source avec Zip Source avec une capture JEU DE DAME DELPHI 7 par aom333
Source avec Zip JEU RAMI DES CHIFFRES SOLITAIRE par Toidil
Source avec Zip JEU DE TAQUIN par JCLESAGE

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture DES DÉS ... par f0xi
Source avec Zip Source avec une capture SIMULATION DE PLUSIEURS TIRAGES DU JEU DE JOKER (LOTTO) par bad_dark_spirit
Source avec Zip Source avec une capture SIMULATION CHUTE TARTINE BEURRÉE par snakehill
Source avec Zip Source avec une capture BOIDS DE CRAIG REYNOLDS par barbichette
Source avec Zip Source avec une capture COLLISIONS DE BABALLES par barbichette

Commentaires et avis

Commentaire de blueperfect le 19/06/2009 17:51:48

Yep !

Puisque tu travailles dans le visuel :

* Toutes tes constantes tableaux de chaines, tu peux les intégrer visuellement dans un TDataModule, sous forme de ListBox ou de ValueList...:-)
* L'une des extensions de ton programme semble être le TImageList, mais contenant des images de "grande taille"... Un composant avec une colletion de TBitmap !
* Tu aurais pu grouper les OnTimer, et tu devrais instaurer une logique de réentrance (un test sur un flag à l'entrée...)

Sinon, c marrant !

Commentaire de debiars87 le 19/06/2009 22:48:03

de très Bon conseils
Je vais les noter tout de suite
MERci BLUEPERFECT !!
DEBIARS JUNIOR

Commentaire de Bacterius le 24/06/2009 23:03:57

Bon, pour être constructif, Offl... Débiars87, ton code est à mon avis à revoir. Tu mets 584 là où il pourrait ne y en avoir que 250. Et il y a trop de TImages. Essaye de centraliser tout ça (un bitmap de "background", dans 1 seul TImage), et dessiner les objets de la machine à sous (cerise, bar, etc ...) dedans ... je sais c'est plus dur mais il faut faire comme ça.
Sinon, il y a trop de redondances. Il y a sûrement un moyen intelligent et concis d'allier simplicité, brièveté et performance (il n'y a qu'à voir entre les lignes de code 206 et 364 ! 158 lignes de code contre 30 si l'on avait codé proprement ...). Si tu veux plus de détails, n'hésites pas à demander.

Cordialement, Bacterius !

Commentaire de Bacterius le 24/06/2009 23:04:46

Euh j'ai oublié un mot, il faut lire "Tu mets 584 lignes ...".

Cordialement, Bacterius !

Commentaire de debiars87 le 25/06/2009 01:59:09

HEU !!
"Offl..." ça veut dire quoi en fait ? " c'est un nouvelle abréviation !! "
non mais attend c'est mon premier code ici !!
et pour l'optimisation j'ai envie que tu m'aide Thomas franchement ton aide est précieuse pour moi!
j'ai envie vraiment d'améliorer ce code.
merci d'avance!
DEBIARS JUNIOR

Commentaire de Bacterius le 25/06/2009 09:00:33

Tu seras bien sympa de pas mentionner mon prénom sur ce site, j'aimerais garder mon pseudonyme.

Cordialement, Bacterius !

Commentaire de debiars87 le 25/06/2009 12:45:33

un débat sans suite.
DEBIARS JUNIOR

Commentaire de debiars87 le 25/06/2009 12:47:41

"Si tu veux plus de détails, n'hésites pas à demander"
Oui j'aimerai bien que tu me montre comment je procede !!
DEBIARS JUNIOR

Commentaire de debiars87 le 25/06/2009 12:50:26

entre les lignes de code 206 et 364
Un Simple case me fera l'affaire et ne pas répéter les panels
j'ai faits ça parce que c'est mon premier code ici !!
DEBIARS JUNIOR

Commentaire de Bacterius le 25/06/2009 14:09:57

Ouhla t'enerve pas comme ça, l'énervement ne conduit qu'à des pertes de contrôle, et peut se retourner contre toi ... Enfin bref.
Entre les lignes de code 206 et 364 : je te montre comment obtenir le même résultat sans faire de redondances abusives :

______________________________________________


const
BarColors: array [Boolean, 0..1] of TColor = ((clMaroon, clOlive), (clRed, clYellow));
var
I: Integer;
Panels: array [1..8] of Pointer;
begin
...
Panels[1] := @Panel1;
Panels[2] := @Panel2;
Panels[3] := @Panel3;
Panels[4] := @Panel4;
Panels[5] := @Panel5;
Panels[6] := @Panel6;
Panels[7] := @Panel7;
Panels[8] := @Panel8;
OfferaHold := (BarNum = 8);
for I := 1 to 8 do
  with TPanel(Panels[I]) do
   begin
    Color := BarColors[BarNum > Pred(I), 0];
    Font.Color := BarColors[BarNum > Pred(I), 1];
   end;
end;
______________________________________________

Et on peut mieux faire.
Les explications dans le prochain commentaire.

Cordialement, Bacterius !

Commentaire de Bacterius le 25/06/2009 14:11:17

Ah une petite seconde le code ne marche pas tout à fait, je l'arrange.

Cordialement, Bacterius !

Commentaire de Bacterius le 25/06/2009 14:19:18

Voilà le code fonctionnel :

______________________________________________


const
BarColors: array [Boolean, 0..1] of TColor = ((clMaroon, clOlive), (clRed, clYellow));
var
I, N: Integer;
begin
...
OfferaHold := (BarNum = 8);
N := 0;
for I := 0 to ComponentCount - 1 do
  if Components[I] is TPanel then with TPanel(Components[I]) do
   begin
    Color := BarColors[BarNum > N, 0];
    Font.Color := BarColors[BarNum > N, 1];
    Inc(N);
   end;
end;
______________________________________________

C'est encore plus concis.

Cordialement, Bacterius !

Commentaire de Bacterius le 25/06/2009 14:24:32

Les explications : le tableau en constante BarColors contient les couleurs des TPanels (ainsi que la couleur de la police) selon si le bonus est atteint. Il se présente alors sous la forme d'un tableau à deux dimensions : deux couleurs, 1 pour le panel et 1 pour la police, et ces deux couleurs à la fois si le bonus est atteint ou pas. Premier paramètre du tableau (Boolean) : False si le bonus n'est pas atteint, True si il l'est. Deuxième paramètre (Integer) : 1 pour la couleur du panel, 2 pour celle de la police.
Ensuite, on met OfferaHold à True si BarNum = 8 (ce que j'ai cru comprendre).
Ensuite, on parcourt chaque composant de la fiche, jusqu'à tomber sur un TPanel (on profite qu'ils soient dans l'ordre). Alors, on va changer sa couleur en fonction (puis on incrémente N qui représente le panel actuel pour passer au suivant). Pour savoir si le bonus est atteint ou pas, une simple condition booléenne suffit : si BarNum est supérieur à l'index du panel (on commence par 0 pour le panel 1, 1 pour le panel 2, etc ...), alors le bonus est atteint, sinon non.
Et voilà comment on compresse 158 lignes de code en 15 lignes ... si tu n'as pas tout compris demande-moi.

Cordialement, Bacterius !

Commentaire de Bacterius le 25/06/2009 14:33:28

Bon je t'ai fait une bonne partie de l'optimisation, à toi de faire le reste (il y en a encore pas mal). Si tu veux, je peux faire ma propre version de cette source (telle que je l'aurai codé, en reprenant les mêmes images que toi), et te l'envoyer (poster sur le site pourquoi pas), et tu pourras le regarder pour voir un peu les différences.
Sinon, comprends-tu ce que tu écris ? J'ai la méchante impression que tu as passé cette phrase dans le traducteur google :
"qui est mis en place à courir après trois arrêts Bobine!"
Ce qui est la traduction littérale de l'anglais "which is set to run after three reel stops", qui veut dire autre chose ("qui est enclenché après trois arrêts de bobine"). Bref, juste pour savoir si tu te contentais de passer des phrases recopiées dans un traducteur où si tu essayerais véritablement de "commenter" ce que tu écris (ce n'est pas que pour les autres, c'est pour toi aussi, dans 2 ou 3 ans si tu veux retrouver cette source tu ne vas pas comprendre tes commentaires).

Cordialement, Bacterius !

Commentaire de debiars87 le 25/06/2009 15:04:00

c'est clair que c'est une phrase traduit par google
Which is (( qui est ))... etc , parceque je ne suis pas fort en français
même la description c'est WIKIPEDIA.
j'ai fait de mon mieux de faire tout en français sauf peut être les variables Globaux..etc pour permettre aux USERS de comprendre à peu prés ce que fait le CODE
mais bon ce n'est pas très important dans le bon sens du terme..

Bactérius Essai de faire ta propre version !!
Et puis poste la moi dans cette Email: debiars87@live.fr
et après je vais voir la différence.
Merci d'avance!
DEBIARS JUNIOR

Commentaire de debiars87 le 25/06/2009 15:05:20

et pour les explication rien à dire
c'est du vrai à 100% Thanks !!
DEBIARS JUNIOR

Commentaire de Bacterius le 25/06/2009 15:28:13

D'accord, mais il ne sera peut-être pas aussi beau (dégradés, etc ...) que celui-ci. Mais l'intérêt réside dans le code.

Cordialement, Bacterius !

Commentaire de debiars87 le 25/06/2009 17:22:46

Le Dégradés je lai fait simplement pour que les USERS comprenne que c'est une machine à Sous tout simplement,et ajouter du plus à cette simulation.
moi j'ai vue ce dégradés dans une vrai machine à sous dans un Casino prés de chez nous, et j'ai voulu le recopier sur mon code on faisant un peut de trafique on va dire à l'aide d'un logiciel de traitement d'image et voilà le résultat !
On peut les enlever sans problème le titre veut tout dire, par conséquent ça va diminuer le code et le travail à faire!
DEBIARS JUNIOR

Commentaire de Mowglinaute le 17/07/2009 10:44:24 8/10

Excellent et amusant pour les moments de détente.
Bonne continuation à l'auteur de cette application.

Dr. Joseph LOMBET.

Commentaire de beckerich le 17/07/2009 20:14:02

bonsoir,

@bacterius : si tu ne veux pas que ton prénom soit connu, retires-le de ta fiche...
http://www.delphifr.com/auteur/BACTERIUS/1247343.aspx

Commentaire de Bacterius le 17/07/2009 21:20:04

Nan mais merci mais en général on appelle les gens par leur pseudo, mon prénom est là à titre indicatif, et c'est assez incongru (enfin c'est ce que je pense) d'appeler les gens par une information se situant dans leur profil sur une source ...
Merci quand même mais je ne me cache pas ;)

Cordialement, Bacterius !

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Resourse machine [ par commodore ] J'ai fait un petit soft pour telecharger des fichiers avec le FPiettedés que je lance l'application j'ai l'utilisation du processeur de ma machine a 1 Simulation de touche [ par Amadeus ] Comment faire pour simuler l'appuie sur une touche, par exemple faire croire au prog que la touche Echap a été enfoncé.merci d'avance mowack v1.0 : simulation de vie de créatures aquatiques [ par sebrs1 ] salut à tous,voici ma nouvelle crétion, mowack, des créatures aquatiques qui doivent se reproduire, manger, se battre entre especes (bon sa c'est pas Réseaux, composants...connection failed! [ par Vinasse ] Bonjour à tous! J'avoue que le titre de mon message est pas très explicite... Je résume la situation: Je suis en train de créer un logiciel qui va per simulation et files d'attentes [ par ryadus ] je voudrai des informrations concernant les files d'attente et la simulation: exemple: etude de temps d'arret dans un carrefourmerci Simulation, graph, math... [ par ryadus ] Salut, je voudrais savoir si quelqu'un connais quelques chose sur la simulation, comment dessiner la courbe d'une fonction, sur l'optimisation, les fi simulation appui touche keybd_event ne suffit pas :) [ par noelemac ] Bonjour a tousJ'ai un soft qui tourne sous windows auquel je souhaiterai transmetttre des appuis touches clavier de manière logiciel.Ce soft ne tourne Problème de position de simulation de bouton d'une souris [ par ElecInfoLolo1 ] Salutj'ai trouvé sur le site de delphifr.com les fonctions qui permettent de simuler les touches d'une souris.Ces fonctions fonctionnent correctement, Delphi 7.0 et SQL 2000 Pour un Newbie [ par Evos ] Bonjour voila je m'explique :Je cherche a faire un application me permettant de modifier certaine tables dans quelques bases de données sur SQL 2000.L Adresse IP et Nom de machine sous DELPHI [ par cornelia ] Bonjour,J'ai une base de données PROTEST et je voudrais un petit code ( y compris les composants nécessaires ) sous DELPHI 5 ou DELPHI 7 qui me perm


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,811 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales