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

Moteurs de jeux vidéo Discussion :

LibGdx : Creer et supprimer Objet


Sujet :

Moteurs de jeux vidéo

  1. #1
    Candidat au Club
    Inscrit en
    Juillet 2012
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Juillet 2012
    Messages : 2
    Points : 2
    Points
    2
    Par défaut LibGdx : Creer et supprimer Objet
    Bonjour ,

    J'ai un petit souci et malgré de nombreuses recherches je ne trouve pas la solution.

    Grâce au code suivant je crée de simples carrés (squareImage) ,lorsque je clic quelque par sur l'écran, représenté par la texture : "player.png".

    J'aimerai pour supprimer chaque carré (actor) indépendamment par un simple Ctrl+clic ou autre commande.

    J'ai essayé d'utilisé squareImage.addlistener mais cela ne fonctionne pas ! il ne détecte même pas lorsque je clic sur une simple carré crée dans la méthode show() (sans la fonction addActor)


    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
     
    public class TestScene2d implements Screen {
     
    	final static int   SCREEN_HEIGHT = 480; 
    	final static int   SCREEN_WIDTH  = 800;		
    	Stage 			stage;
    	int 			posCurseurX,posCurseurY;
    	Skin skin;
    	Image squareImage;
     
    	@Override
    	public void show() {
     
    		stage = new Stage();
    		Gdx.input.setInputProcessor(stage);
     
    		skin = new Skin();
    		skin.add("Square", new Texture("assets/player.png"));
     
     
     
    	}
     
    	@Override
    	public void render(float arg0) {
     
    	 stage.draw();
         stage.act(Gdx.graphics.getDeltaTime());
     
         Gdx.input.setInputProcessor(new InputController() {
     
    			@Override
    			public boolean mouseMoved(int x, int y) {
    			// Récupérer la position du curseur
    				posCurseurX = x;
    				posCurseurY=y;
    				System.out.println("X: "+posCurseurX);
    				System.out.println("Y: "+posCurseurY);
    				return true;
    			}//FIN MOUSE MOVED
     
     
    			@Override
    			public boolean touchDown(int x, int y, int pointer, int button) {
     
    				if(button == Buttons.LEFT){
    					squareImage = new Image(skin, "Square");
    					squareImage.setBounds(posCurseurX, (SCREEN_HEIGHT - posCurseurY), 32, 32);
    					stage.addActor(squareImage);
    				}
    			return true;
    			}//FIN TOUCHDOWN
     
     
    	});//FIN INPUT CONTROLLER
     
     
    }//FIN RENDER			
     
    	@Override
    	public void dispose() {
    		// TODO Auto-generated method stub
     
    	}
     
    	@Override
    	public void hide() {
    		// TODO Auto-generated method stub
     
    	}
     
    	@Override
    	public void pause() {
    		// TODO Auto-generated method stub
     
    	}
     
     
    	@Override
    	public void resize(int arg0, int arg1) {
    		// TODO Auto-generated method stub
     
    	}
     
    	@Override
    	public void resume() {
    		// TODO Auto-generated method stub
     
    	}
     
     
     
     
    }

    Si quelqu'un peut me donner la fonction adéquate...

    Mon but final est de pouvoir creer differentes formes et les supprimer en les touchant sans qu'une forme ne se superpose à une autre.


    Merci par avance

  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Août 2011
    Messages : 342
    Points : 1 091
    Points
    1 091
    Par défaut
    Il faut que tu crées une représentation logique de ton écran, que tu consignes dedans la position de chacune des images placées. A chaque fois que tu cliques sur ton écran, tu testes si la place est déjà prise.

    Attention à ne pas tester que sur l'origine de ton image mais bien sûr toute la surface occupée par ton image (en gros tu dois faire un test sur l'intersection de deux rectangles entre ton image que tu veux ajouter et chacune de celles déjà présentes).

Discussions similaires

  1. Creer et supprimer des champs dynamiquement
    Par cfmreggae dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 13/05/2008, 09h54
  2. [Débutant] Creer dynamiquement des objets
    Par Uragiru dans le forum Interfaces Graphiques
    Réponses: 8
    Dernier message: 29/04/2008, 19h46
  3. supprimer objet dans plusieurs diapo en simultané
    Par pikassiette dans le forum Powerpoint
    Réponses: 1
    Dernier message: 28/06/2007, 16h45
  4. supprimer objet menu
    Par ac/dc dans le forum C++Builder
    Réponses: 2
    Dernier message: 26/11/2006, 10h45

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