PACMUMMY : JEU DANS UN LABYRINTHE

Signaler
Messages postés
1154
Date d'inscription
samedi 14 août 2004
Statut
Membre
Dernière intervention
5 avril 2012
-
EddiTheHead
Messages postés
58
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
2 juin 2006
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/30551-pacmummy-jeu-dans-un-labyrinthe

EddiTheHead
Messages postés
58
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
2 juin 2006

WhiteHippo,

C'est exactement ce que je cherchais. Les touches sont moins sensibles si qui rend les déplacement plus faciles.

La source a été mise à jour.

Vu la quantité de fichiers utilisés, je crois que je vais étudier de près l'utilisation du fichier ressource.

Merci.
WhiteHippo
Messages postés
1154
Date d'inscription
samedi 14 août 2004
Statut
Membre
Dernière intervention
5 avril 2012

Pour le curseur :
tu supprimes ces 2 lignes
Screen.Cursors[CrMouseOff] := LoadCursorFromFile('MouseOff.CUR');
PaintBox1.Cursor := crMouseOff;
que tu remplaces par
PaintBox1.Cursor := crNone ;

Pour le clavier, 3 choses à faire :
- Dans les propriétés de ta fiche mettre le KeyPreview à la valeur TRUE.
- Supprimer ton TimerClavier et son code
- Ajouter le code suivant dans OnKeyDown de ta fiche :

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
case key of
VK_NUMPAD4 : DeplacementJoueurGauche ;
VK_NUMPAD5 : DeplacementJoueurBas ;
VK_NUMPAD6 : DeplacementJoueurDroite ;
VK_NUMPAD7 : DeplacementJoueurPivoterGauche ;
VK_NUMPAD8 : DeplacementJoueurHaut ;
VK_NUMPAD9 : DeplacementJoueurPivoterDroite ;
end ;
end;

Pour les coordonnées du curseur souris
Tu supprimes le code suivant :
GetCursorPos(TCoordSouris); // Coordonnée de la souris par rapport à l'écran
TCoordSouris.X := TCoordSouris.X - Left - 24; // Positionnement sur la fenêtre de jeu
TCoordSouris.Y := TCoordSouris.Y - Top - 49;

Tu ajoutes un evenement OnMouseMove au PaintBox1 avec le code suivant :
procedure TForm1.PaintBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
TCoordSouris := Point( X, Y ) ;
end;

Quand aux critiques constructives, désolé mais là j'ai plus le temps d'éplucher ton code (je pense que d'autres se chargeront volontier de le commenter)

Cordialement.