begin process at 2012 02 12 18:33:40
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Jeux

 > CARDS.DLL

CARDS.DLL


 Information sur la source

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

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Jeux Niveau :Débutant Date de création :27/01/2005 Date de mise à jour :30/01/2005 21:31:41 Vu / téléchargé :6 112 / 591

Auteur : ScSami

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

 Description

Cliquez pour voir la capture en taille normale
Encore une démo de l'utilisation de l'API des cartes de jeu...

Pour les débutants. Plutôt bien commenté (si vous en voulez plus, ben, demandez-le moi ;-)

Amusez-vous bien avec ce ptit truc.

Source

  • 'Déclaration des API de manipulation des cartes à jouer
  • Private Declare Function cdtInit Lib "Cards" (nWidth As Long, nHeight As Long) As Long
  • Private Declare Function cdtTerm Lib "Cards" () As Long
  • Private Declare Function cdtDraw Lib "Cards" (ByVal hDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nCard As Long, ByVal nDraw As Long, ByVal nColor As Long) As Long
  • 'Private Declare Function cdtDrawExt Lib "Cards" (ByVal hDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal nCard As Long, ByVal nDraw As Long, ByVal nColor As Long) As Long
  • 'Cartes :
  • ' Faces visible : 0-51
  • ' Faces cachée : 53-68
  • ' nDraw : 0 = cartes face visible normale
  • ' 2 = cartes face visible sélectionnée
  • ' 1 = cartes face cachée
  • ' Note: On ne peut pas sélectionner une carte face cachée (!!!).
  • ' nColor : Couleur de sélection. Avec la carte 53 (1ère face visible),
  • ' cette couleur sert de couleur de fond du quadrillage en croix.
  • Private Sub Form_Load()
  • 'Redimensionner la fenêtre
  • Me.Width = 3000
  • Me.Height = 4125
  • Me.Show
  • DoEvents
  • 'Taille par défaut des cartes en pixels
  • cdtInit 71, 96
  • DoEvents
  • 'Initilatise l'affichage pour la 1ère fois
  • OptionCouleurs(0).Value = True
  • Option2(0).Value = True
  • Picture2.Tag = "15"
  • Call Picture2_DblClick
  • End Sub
  • Private Sub Form_Unload(Cancel As Integer)
  • 'Nécéssaire afin de libérer la mémoire prise par ces API...
  • cdtTerm
  • End Sub
  • Private Sub OptionCouleurs_Click(Index As Integer)
  • 'Change la couleur
  • Static t As Integer
  • Static Couleur As Integer
  • Static Carte As Integer
  • 'Recherche la carte...
  • Couleur = Index
  • Carte = 0
  • For t = 0 To (Option2.Count - 1)
  • If Option2(t).Value = True Then Carte = t: Exit For
  • Next t
  • Carte = Index + (Carte * 4) '0-51 [52 cartes]
  • cdtDraw Picture1.hDC, 9, 9, Carte, &H0, RGB(0, 0, 255)
  • End Sub
  • Private Sub Option2_Click(Index As Integer)
  • 'Change la carte
  • Static t As Integer
  • Static Couleur As Integer
  • Static Carte As Integer
  • 'Recherche la couleur...
  • Couleur = 0
  • For t = 0 To (OptionCouleurs.Count - 1)
  • If OptionCouleurs(t).Value = True Then Couleur = t: Exit For
  • Next t
  • Carte = Index
  • Carte = Couleur + (Carte * 4) '0-51 [52 cartes]
  • cdtDraw Picture1.hDC, 9, 9, Carte, &H0, RGB(0, 0, 255)
  • End Sub
  • Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  • 'Selectionne la carte visible
  • Static t As Integer
  • Static Couleur As Integer
  • Static Carte As Integer
  • 'Recherche la couleur...
  • Couleur = 0
  • For t = 0 To (OptionCouleurs.Count - 1)
  • If OptionCouleurs(t).Value = True Then Couleur = t: Exit For
  • Next t
  • 'Recherche la carte...
  • Carte = 0
  • For t = 0 To (Option2.Count - 1)
  • If Option2(t).Value = True Then Carte = t: Exit For
  • Next t
  • Carte = Couleur + (Carte * 4) '0-51 [52 cartes]
  • If (X < 9 Or X > 9 + 70) Or (Y < 9 Or Y > 9 + 95) Then
  • 'La souris est hors de la carte : Désélectionner
  • ' (Afficher la carte normale.)
  • cdtDraw Picture1.hDC, 9, 9, Carte, 0, RGB(0, 0, 255)
  • Else
  • 'La souris est sur la carte : Sélectionner
  • ' (Afficher la carte sélectionnée.)
  • cdtDraw Picture1.hDC, 9, 9, Carte, 2, 16777215
  • End If
  • End Sub
  • Private Sub Picture2_DblClick()
  • 'Change le jeu (l'image)
  • Picture2.Tag = CLng(Picture2.Tag) + 1
  • If Picture2.Tag > 15 Then Picture2.Tag = 0
  • '53-68
  • cdtDraw Picture2.hDC, 9, 9, CLng(Picture2.Tag) + 53, 1, 255
  • End Sub
'Déclaration des API de manipulation des cartes à jouer
Private Declare Function cdtInit Lib "Cards" (nWidth As Long, nHeight As Long) As Long
Private Declare Function cdtTerm Lib "Cards" () As Long
Private Declare Function cdtDraw Lib "Cards" (ByVal hDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nCard As Long, ByVal nDraw As Long, ByVal nColor As Long) As Long
'Private Declare Function cdtDrawExt Lib "Cards" (ByVal hDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal nCard As Long, ByVal nDraw As Long, ByVal nColor As Long) As Long

'Cartes :
' Faces visible : 0-51
' Faces cachée  : 53-68
' nDraw  :  0 = cartes face visible normale
'           2 = cartes face visible sélectionnée
'           1 = cartes face cachée
'  Note: On ne peut pas sélectionner une carte face cachée (!!!).
' nColor :  Couleur de sélection. Avec la carte 53 (1ère face visible),
'           cette couleur sert de couleur de fond du quadrillage en croix.

Private Sub Form_Load()
 'Redimensionner la fenêtre
 Me.Width = 3000
 Me.Height = 4125
 Me.Show
 DoEvents
 
 'Taille par défaut des cartes en pixels
 cdtInit 71, 96
 DoEvents
 
 'Initilatise l'affichage pour la 1ère fois
 OptionCouleurs(0).Value = True
 Option2(0).Value = True
 Picture2.Tag = "15"
 Call Picture2_DblClick
 
End Sub

Private Sub Form_Unload(Cancel As Integer)
 'Nécéssaire afin de libérer la mémoire prise par ces API...
 cdtTerm
End Sub


Private Sub OptionCouleurs_Click(Index As Integer)
 'Change la couleur
 Static t As Integer
 Static Couleur As Integer
 Static Carte As Integer
 
 'Recherche la carte...
 Couleur = Index
 Carte = 0
 For t = 0 To (Option2.Count - 1)
  If Option2(t).Value = True Then Carte = t: Exit For
 Next t
 Carte = Index + (Carte * 4)  '0-51 [52 cartes]
 
 cdtDraw Picture1.hDC, 9, 9, Carte, &H0, RGB(0, 0, 255)
End Sub

Private Sub Option2_Click(Index As Integer)
 'Change la carte
 Static t As Integer
 Static Couleur As Integer
 Static Carte As Integer
 
 'Recherche la couleur...
 Couleur = 0
 For t = 0 To (OptionCouleurs.Count - 1)
  If OptionCouleurs(t).Value = True Then Couleur = t: Exit For
 Next t
 Carte = Index
 Carte = Couleur + (Carte * 4)  '0-51 [52 cartes]
 
 cdtDraw Picture1.hDC, 9, 9, Carte, &H0, RGB(0, 0, 255)
End Sub


Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
 'Selectionne la carte visible
 Static t As Integer
 Static Couleur As Integer
 Static Carte As Integer
 
 'Recherche la couleur...
 Couleur = 0
 For t = 0 To (OptionCouleurs.Count - 1)
  If OptionCouleurs(t).Value = True Then Couleur = t: Exit For
 Next t
 'Recherche la carte...
 Carte = 0
 For t = 0 To (Option2.Count - 1)
  If Option2(t).Value = True Then Carte = t: Exit For
 Next t
 Carte = Couleur + (Carte * 4)  '0-51 [52 cartes]
 
 If (X < 9 Or X > 9 + 70) Or (Y < 9 Or Y > 9 + 95) Then
  'La souris est hors de la carte : Désélectionner
  ' (Afficher la carte normale.)
  cdtDraw Picture1.hDC, 9, 9, Carte, 0, RGB(0, 0, 255)
 Else
  'La souris est sur la carte : Sélectionner
  ' (Afficher la carte sélectionnée.)
  cdtDraw Picture1.hDC, 9, 9, Carte, 2, 16777215
 End If
 
End Sub

Private Sub Picture2_DblClick()
 'Change le jeu (l'image)
 Picture2.Tag = CLng(Picture2.Tag) + 1
 If Picture2.Tag > 15 Then Picture2.Tag = 0
 '53-68
 cdtDraw Picture2.hDC, 9, 9, CLng(Picture2.Tag) + 53, 1, 255
End Sub


 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

30 janvier 2005 21:31:41 :
Petite explication consernant la couleur de sélection...

 Sources du même auteur

Source avec Zip Source avec une capture MOUSE SPEED AND WEIGHT : RETOUR DE FORCE VIRTUEL !
DE RGB À R, G ET B, LA MEILLEUR TECHNIQUE EN VB !
Source avec Zip Source avec une capture POT DE PEINTURE (REMPLISSAGE/FLOOD)
Source avec Zip Source avec une capture INTERSECTION
Source avec Zip Source avec une capture CHAÎNE VERTÉBRALE OPTIMALE

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) DES CHIFFRES ET DES LETTRES par ShayW
Source avec Zip Source avec une capture FAIRE REBONDIR PLUSIEURS BALLES par pierreh51
Source avec Zip Source .NET (Dotnet) JE DES BRIQUES MOUVANTES par alpha5
Source avec Zip Source avec une capture TOWER BATTLE 2 par Softmama
JEU D'ADRESSE ,JEU DE TIR À LA SOURIS par yvesdudu

Commentaires et avis

Commentaire de fkx le 31/01/2005 13:02:01

"Encore une démo de l'utilisation de l'API des cartes de jeu..."

"Encore", peut-être, mais ça reste quand même assez peu répandu, finalement...

Commentaire de ScSami le 01/02/2005 00:00:46

Tu trouves!

Commentaire de SoftechX le 02/02/2005 01:47:12

Tres bonne références... merci... bien sure, ce n'est pas la découverte du ciecle.. mais je suis bien content que quelqu'un d'autre me fasse partagé ses trouvaille... bien sure... j'en connais d'autre... beaucoups d'autre...

Mais je connais pas tout... et c'Est tres peu!... j'aprécie les petites trouvailles comme celle ci... 8/10

Commentaire de ScSami le 03/02/2005 00:52:20

Merci, ça fait plaisir :-)

Commentaire de moutonjr le 16/12/2007 16:45:02

Ce code est on ne peut plus parfait... en VB6.
Saurais-tu comment remplacer les passages impossibles (HDC) de VB6 à .NET? Ca m'aiderait beaucoup...

Commentaire de ScSami le 17/12/2007 12:36:28

Malheureusement... Ne m'étant toujours pas (en 2007), mis au .NET, je ne peux t'aider !
Mais ça ne doit pas être bien compliqué j'imagine (si ce qu'on dit du DOT NET est vrai) ! Faut chercher un peu dans le framework j'imagine.

Encore désolé.

Commentaire de moutonjr le 17/12/2007 19:55:13

Ah, rien de grave, je cherche juste comment remplacer le HDC, je chercherai, j'ai regardé sur MSDN, penses-tu il n'y a rien... je vais continuer mes recherches. En tout cas j'ai testé ça sur VB6 et là, franchement , je peux te dire que tu es le meilleur tutoriel de Cards.dll que j'aie vu!

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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,842 sec (3)

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