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

Flash Discussion :

jeu de tir mais ou est la bal?


Sujet :

Flash

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 177
    Points : 74
    Points
    74
    Par défaut jeu de tir mais ou est la bal?
    Voilà j'ai une boule et un bullet(balle d'une arme)
    j'ai tout un code mais le bullet ne monte pas à l'endroit où je tire
    Je ne trouve pas mon erreur

    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
     
    xmax=cercle._x+100
    xmin=cercle._x-100
     
    cercle.currentItem=0;
     
    cercle.onEnterFrame=function(){
     
    if(Key.isDown(Key.RIGHT) && this._x<xmax) {
    this._x+=10
    }
    if(Key.isDown(Key.LEFT) && this._x>xmin) {
    this._x-=10
    }
    if(Key.isDown(Key.SPACE))
    	{		
    		_root.attachMovie("bullet","bullet"+this.currentItem,50+this.currentItem);	
    		_root["bullet"+this.currentItem]._x=this._x+5;
    		_root["bullet"+this.currentItem]._y=this._y-5;
    		_root["bullet"+this.currentItem].onEnterFrame=function()
    	{
    	this.currentItem++;
    	}
    	}
    }
    je joins mon fichier fla
    Fichiers attachés Fichiers attachés

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 56
    Points : 56
    Points
    56
    Par défaut
    y'a plus qu'à changer la direction de tir
    Fichiers attachés Fichiers attachés

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 177
    Points : 74
    Points
    74
    Par défaut
    Par rapport à ce que tu m'as donné cela fonctionne
    j'ai fait des modifications en conséquence

    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
     
    xmax=cercle._x+100
    xmin=cercle._x-100
    ymax=cercle._y-100
    ymin=cercle._y+10
     
    i=0;
     
    cercle.onEnterFrame=function(){
     
    if(Key.isDown(Key.RIGHT) && cercle._x<xmax) {
    cercle._x+=10
    posx=cercle._x
    }
    if(Key.isDown(Key.LEFT) && cercle._x>xmin) {
    cercle._x-=10
    }
    if(Key.isDown(Key.UP) && cercle._y>ymax) {
    cercle._y-=10
    posy=cercle._y
    }
    if(Key.isDown(Key.DOWN) && cercle._y<ymin) {
    cercle._y+=10
    posy=cercle._y
    }
    if(Key.isDown(Key.SPACE))
    	{		
    		duplicateMovieClip("bullet","bullet"+i,100+i);	
    		_root["bullet"+i]._x=cercle._x
    		_root["bullet"+i]._y=cercle._y+cercle._height
    		_root["bullet"+i].onEnterFrame=function(){
    			this._y+=5
    		}
    	{
    	i++;
    	}
    	}
    }
    J'ai découvert donc(et oui ca parrait étonnant mais je ne le savait pas) qu'avec _y plus on montait vers le haut plus la position est négative alors que j'étais persuadé que c'était positif

    De plus "this" correspond à ""bullet"+1"?

    "100+i" correspond à quoi?

    Pourquoi "_root.attachMovieClip" ne fonctionnait pas?

    j'ai utilisé un exemple chopé sur le net pour comprendre le fonctionnement etc... sous flash(je comprends assez rapidement ca ressemble à du Delphi pour moi ^^)

    la personne a utilisé ce procéder pourtant et cela fonctionne(je comprends pas pourtquoi ><)

    encore une dernière question j'ai vu qu'avec "this._y=5" plus on augmente le chiffre plus il va vite(logique) mais comment donner un espace entre chaque tir tout en laissant appuyer sur la touche espace?

    désolé de faire mon noob mais j'aime bien tout comprendre pour ne plus poser de question ^^

    (encore une dernière concernant le forum on est limité dans le mois pour l'upload de fichier sur le forum?)
    Fichiers attachés Fichiers attachés

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 56
    Points : 56
    Points
    56
    Par défaut
    - "this" correspond à chaque "bullet" que tu crées, cad bullet1, bullet2 ......

    - 100+i, c'est toi qui l'a mis, j'ai fait que remplacé l'ancienne variable par "i"

    sinon c'est la profondeur du bullet crée

    - attachMovie() fonctionne mais c'est juste un peu plus long à faire, faut exporter l'objet pour l'actionscript.. sinon c'est la même chose, tu peux aussi l'utiliser

    - pour mettre un espace à chaque tir, tu fais en sorte qu'en appuyant sur SPACE

    if(peutpastirer==false){

    //places le code pour tirer le bullet

    //empêche de tirer une nouvelle fois
    peutpastirer=true

    }

    puis tu mets une fonction EnterFrame qui permet de lancer un décompte de 0.5 secondes lorsque "peutpastirer" est activé

    à la fin du décompte, peutpastirer=false et tu peux à nouveau tirer

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 177
    Points : 74
    Points
    74
    Par défaut
    pour créer la condition true false aucun souci mais comment peut on gérer le temps justement?quel fonctions utiliser et où?

    getTimer permet d'obtenir le temps depuis le début du lancement du .swf
    SetInterval je ne comprends pas trop comment l'utiliser(est ce cette fonction qu'il faut utiliser?

    Voilà mon code modifier(ca tire une fois et après on ne peut plus vu que j'ai pas encore défini comment mettre False quand 0.5 seconde est passé), il manque plus qu'à placer la gestion par exemple comme tu as dis des 0.5 seconde et qu'il mette false pour pouvoir que cela tir.

    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
     
    xmax=cercle._x+100
    xmin=cercle._x-100
    ymax=cercle._y-100
    ymin=cercle._y+10
    tire=false
    i=0;
     
    cercle.onEnterFrame=function(){
     
    if(Key.isDown(Key.RIGHT) && cercle._x<xmax) {
    cercle._x+=10
    posx=cercle._x
    }
    if(Key.isDown(Key.LEFT) && cercle._x>xmin) {
    cercle._x-=10
    }
    if(Key.isDown(Key.UP) && cercle._y>ymax) {
    cercle._y-=10
    posy=cercle._y
    }
    if(Key.isDown(Key.DOWN) && cercle._y<ymin) {
    cercle._y+=10
    posy=cercle._y
    }
    if(Key.isDown(Key.SPACE))
    	{		
    		if (tire==false)
    			{
     
    			duplicateMovieClip("bullet","bullet"+i,1+i)	
    			_root["bullet"+i]._x=cercle._x
    			_root["bullet"+i]._y=cercle._y+cercle._height
    			_root["bullet"+i].onEnterFrame=function()
    				{
    				this._y+=5
    				}
    			tire=true
    			}
    	{
    	i++;
    	}
    	}
    }

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 56
    Points : 56
    Points
    56
    Par défaut
    je sais pas vraiment faire un chrono (eh oui débutant moi aussi) alors je l'ai fait à ma façon (du moment que ca marche et que c'est pas du code pour rien ca reste bon)
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. [Android] [Jeu] Mais où est passé . . . ?
    Par aziraphale76 dans le forum Mon application mobile
    Réponses: 1
    Dernier message: 13/10/2014, 17h36
  2. [SdlDotNet] Mais où est la boucle de jeu ?
    Par Invité dans le forum C#
    Réponses: 4
    Dernier message: 28/05/2008, 21h53
  3. [VC++ .NET] mais où est passée SignedXML ???
    Par benoitB dans le forum MFC
    Réponses: 4
    Dernier message: 30/04/2004, 08h14
  4. [Flash MX ]Un jeu en flash mais un problème !
    Par barthmania dans le forum Flash
    Réponses: 9
    Dernier message: 02/03/2004, 20h45
  5. Une table qui existe mais qui est inconnu! ?
    Par Nino dans le forum InterBase
    Réponses: 6
    Dernier message: 13/06/2003, 11h47

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