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

XNA/Monogame Discussion :

Créer missile pour un shoot


Sujet :

XNA/Monogame

  1. #1
    Membre habitué
    Avatar de Shinja
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2012
    Messages : 153
    Points : 156
    Points
    156
    Par défaut Créer missile pour un shoot
    Salut, je débute en XNA et en C#. Je suis en train de développer un shoot'em up à ma sauce, enfin bref je sèche pour la création des missiles.

    J'ai vu un peu de code dans différents tutoriels en anglais mais c'est des méthodes qui ne corresponds pas avec la manière dont j'ai appris à coder en C#.

    Je vous explique rapidement :

    J'ai différentes classes, dont le classe Sprite qui s'occupe de créer et afficher les sprites. J'ai une classe Player qui correspond au vaisseau, elle ne comporte que les commandes aux claviers et la position de départ.

    J'ai ajouté une classe Missile mais je vois pas du tout comment m'y prendre pour afficher les missiles à partir de la position du vaisseau.

    J'ai essayé de coder quelque chose comme sa :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
          public void Update(GameTime gameTime)
            {
     
     
                if (ServiceHelper.Get<IKeyboardService>().IsKeyDown(Keys.C))
                    position = new Vector2(player.position.X, player.position.Y + (float)(0.9f * gameTime.ElapsedGameTime.Milliseconds));
     
     
     
            }
        }
    Mais cela ne donne rien si ce n'est une erreur lorsque j'appuie sur la touche C.

    Bref je n'arrive pas à créer un sprite à partir du vaisseau et je ne vois pas comment implanter une boucle...

    Si vous pouviez m'aider, se serait vraiment sympa

  2. #2
    Membre confirmé

    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    786
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 786
    Points : 602
    Points
    602
    Par défaut
    Salut,

    pour get le state du clavier, c'est quelque chose comme:

    Keyboard.GetState().IsKeyDown....


    Ensuite ce que je te conseille de faire c'est de mettre une fonction update a ton missile.
    Meme a toutes tes entities. Et dans ton game tu stock une liste de AEntity.
    Ensuite tu fais dans ton Scene.Update une boucle pour updater et draw toutes tes entities.

    Apres donc dans ta classe missiles tu peux stocker des valeurs telles que :
    - IsActive
    - Direction
    - Speed

    Ainsi dans l'update de ta classe missile tu peux faire quelque chose comme:

    If IsActive:
    Position += Direction * Speed.

    Bon courage.

  3. #3
    Membre habitué
    Avatar de Shinja
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2012
    Messages : 153
    Points : 156
    Points
    156
    Par défaut
    Merci pour ta réponse.

    J'ai préféré recommencer le projet depuis le début et j'ai finalement trouvé comme créer ces foutus missiles.

    Pour le reste je rame pas mal et je me demande si le C# + XNA n'est pas un peu trop difficile en vue de mes connaissances car parfois je me sens vraiment perdu. Je ne sais pas s'il existe un langage de programmation un plus accessible...

  4. #4
    Membre confirmé

    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    786
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 786
    Points : 602
    Points
    602
    Par défaut
    Le C# reste assez haut niveau...
    Apres avec xna tu n'as pas tous les outils comme tu pourrais trouver dans un moteur.

Discussions similaires

  1. Programmation pattern missile pour jeu style shoot'em up
    Par mixka13 dans le forum XNA/Monogame
    Réponses: 7
    Dernier message: 19/05/2012, 14h36
  2. créer alias pour lancer commande en console ?
    Par snoop dans le forum Windows XP
    Réponses: 8
    Dernier message: 23/10/2006, 16h47
  3. créer bouton pour enregistrer BDD sur une page
    Par guimauve dans le forum Access
    Réponses: 3
    Dernier message: 11/07/2006, 11h01
  4. créer aide pour access
    Par cbleas dans le forum Access
    Réponses: 2
    Dernier message: 07/07/2006, 19h01
  5. Créer .bat pour mise à jour de mon antivirus
    Par ardamus dans le forum Windows
    Réponses: 1
    Dernier message: 17/02/2006, 11h41

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