IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Aide pour un jeu: recherche de fluidité [Toutes versions]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif Avatar de Gorzyne
    Profil pro
    Collégien
    Inscrit en
    Janvier 2008
    Messages
    337
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Janvier 2008
    Messages : 337
    Par défaut Aide pour un jeu: recherche de fluidité
    Bonjour à toutes et à tous, alors voilà pour des raisons qui m'appartiennent je développe un petit jeu d'aventure sous excel basé sur la police webdings,

    globalement on déplace le curseur de cellule en cellule et à partir de la macro événementielle Worksheet_SelectionChange j'execute différentes macros fonction de la couleur de fonds, de la valeur de la cellule, etc...

    bref le jeu est très fun, ça a commencé par des petits labyrinthes et la j'en suis à des villes beaucoup plus grandes, où le joueur prend le métro, se déplace en vélo, voiture, fait le plein d'essence, interagit avec les pnj etc...

    toujours est-il qu'avec le grossissement de la taille des cartes (en ordre de grandeur le niveau 11 par exemple fait 2,5millions de cellules) et avec le grossissement des macros du jeu, celui ci devient moins fluide, et par ailleurs on a toujours le carré de sélection de la cellule

    du coup je me demande si j'ai pas plutôt intérêt à me passer de la macro événementielle et à passer par un listen sur les touches claviers, ce qui me permettrait au passage d'utiliser d'autres touches du clavier pour activer les objets du jeu

    est ce que vous pensez que ça risque d'être mieux ou moins bien niveau fluidité ? c'est juste que si je bascule sur un fonctionnement application.onkey ça me demande de réécrire pas mal de chose dans le moteur de jeu du coup je souhaitais un peu de retex sur le sujet... l'intérêt c'est également de faire disparaître le curseur de sélection qui est pas très joli

    merci pour votre aide
    Gorz

  2. #2
    Rédacteur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2013
    Messages
    1 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 1 035
    Par défaut
    Bonjour.
    Dans un jeu j'utiliserai l'API GetKeyState (version 32 bits) pour tester si une touche (ou une combinaison de touches) est utilisée.
    Exemple :

    Code VBA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
     
    '---------------------------------------------------------------------------------------
    Private Function TestToucheEnfoncée() As Boolean
    '---------------------------------------------------------------------------------------
    ' Retourne : Vrai si les touches Majuscule Fin sont enfoncées.
    '---------------------------------------------------------------------------------------
    DoEvents
    If GetKeyState(vbKeyEnd) < 0 And GetKeyState(vbKeyShift) < 0 Then
            ...
    End If
    End Function

    Et j'utiliserai le mode graphique. Voir dans ma signature le tome 2.
    Cordialement.

  3. #3
    Membre très actif Avatar de Gorzyne
    Profil pro
    Collégien
    Inscrit en
    Janvier 2008
    Messages
    337
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Janvier 2008
    Messages : 337
    Par défaut
    merci beaucoup pour ta réponse
    j'ai fait une traduction de mon jeu en utilisant les Onkey ça ressemble fortement à GetKeyState il y a peut être des nuances je sais pas, sauf qu'on a pas besoin de mettre un doevents ça pourrait être un avantage

    pour cette histoire de mode graphique je vais jeter un oeil je me souviens qu'on pouvait programmer au pixel près en vba après j'ai pas prévu d'aller la dessus si c'est ça la suggestion

    sinon pour revenir au passage de la méthode select à la méthode onkey ça n'améliore pas significativement la vitesse du jeu, mais j'ai optimisé certains passages redondant ce qui a bien amélioré la vitesse globale et ça permet de ne pas avoir le carré de sélection moche autour du perso surtout

    en prime je vais pouvoir créer des interactions avec l'ensemble du clavier maintenant

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 02/09/2008, 21h57
  2. Aide pour l'instruction rechercher
    Par secondechance dans le forum Débuter
    Réponses: 5
    Dernier message: 14/05/2008, 21h16
  3. Aide pour premier jeu.
    Par Silvering dans le forum Tkinter
    Réponses: 9
    Dernier message: 30/03/2008, 15h59
  4. aide pour programmer jeu de l'oie en ruby
    Par waelgaaloul dans le forum Ruby
    Réponses: 1
    Dernier message: 03/12/2007, 19h08
  5. Aide pour créer jeu de figurine (Windows)
    Par Nezzarathon dans le forum Développement 2D, 3D et Jeux
    Réponses: 1
    Dernier message: 03/11/2006, 19h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo