Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
558 connectés 

  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  Problème de programmation Jeu de Tir As3

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème de programmation Jeu de Tir As3

n°2166229
Martiz
Posté le 30-11-2012 à 21:14:04  profilanswer
 

Bonjour à tous,
 
Dans le cadre de mon projet de diplôme je dois réaliser un jeu en flash. Le jeu en question et un jeu de type "Shoot them up" avec des aliens qui tombent. j'ai presque fini mais je suis confronté à trois problèmes que je n'arrive pas à gérer seul. En effet je souhaiterais faire tomber des vies de façon aléatoire lorsque mon nombre de vie est égale à 3/5 , puis faire tomber "des ralentisseurs" après avoir dépassé les 20 pts(les aliens augmentant de vitesse de chute tout les 10 pts). Enfin mon plus gros problème à l'heure actuel est lorsque je crée un bouton "try again" je n'arrive pas à cliquer dessus, j'ai réussi à faire réapparaitre le curseur de la souris à la place de la cible mais rien ne fonctionne...
 
Bref, j'espere que quelqu'un saura m'aider, merci. ;)  
 
Voici le code:
 
package  
{
 import flash.display.MovieClip;
 import flash.events.MouseEvent;
 import flash.events.Event;
 import flash.ui.Mouse;
 import flash.utils.*;
 import flash.media.*;
 import flash.net.URLRequest;
 
 public class Main extends MovieClip
 {
  var alien:Alien = new Alien();
  var randomX:Number;
         var points:int;  
  var vitesse:int = 3;
  var _vitesse = vitesse;  
  var erreur:int = 5;
  var maxErreur:int = erreur;  
  var activTir:Boolean = true;
  var sound:sonFond_intro = new sonFond_intro();
  var channel:SoundChannel;
  var sound2:sonTir = new sonTir();
  var channel2:SoundChannel;
   
 
  public function Main()
  {
   btn_start.addEventListener(MouseEvent.MOUSE_DOWN,startGame);
   btn_start.addEventListener('mouseOver',function(me:MouseEvent){me.target.gotoAndPlay('over')});
   btn_start.addEventListener('mouseOut',function(me:MouseEvent){me.target.gotoAndPlay('out')});
   channel = sound.play();
   }
  function startGame(event:MouseEvent):void
  {
   channel.stop();
   gotoAndPlay(2);
   alien.x= (stage.stageWidth - alien.width) /2;
   err_txt.text = erreur + '/' + maxErreur;
   addChild(alien);
   Mouse.hide();
   alien.addEventListener(Event.ENTER_FRAME, aniAlien);
   stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseCible );
   var mySound:Sound = new sonFond();
   mySound.play(0,999);
   
   
  }
  function alea(min:Number, max:Number):Number
 
  {
   var aleaNum:Number =Math.floor(Math.random()*(max-min +1)) +min;
   return aleaNum;
   
  }
  function aniAlien(e:Event):void
   
  {
   setChildIndex(cible,this.numChildren -1);
   randomX= alea (alien.width/2, stage.stageWidth - (alien.width/2));
   niveau(points);
   alien.y +=  vitesse;
       
   if (alien.y > stage.stageHeight)
   {
    perdu.gotoAndPlay('loose');
    erreur--;
    removeChild(alien);
    addChild(alien);
    alien.x = randomX;
    alien.y =  -  alien.height;
    err_txt.text = erreur + '/' + maxErreur;
   
   }
   stage.addEventListener(MouseEvent.CLICK, tirer);
  }
  function mouseCible(me:MouseEvent):void
  {
   cible.x = mouseX;
   cible.y = mouseY;
   
  }
  function tirer(me:MouseEvent):void
  {
   if (activTir)
   {
    channel2 = sound2.play();
    if (cible.hitTestObject(alien))
    {
     var mySound3:Sound = new sonAlien();
     mySound3.play();
     activTir = false;
     points++;
     points_txt.text = points.toString();
     vitesse = 0;
     alien.gotoAndPlay('explosion');
     setTimeout(function(){alien.x =randomX; alien.y=0; vitesse=_vitesse; activTir=true},900);
     
    }
   }
  }
  function niveau($points):void
  {
   var p = int($points);
   if (p>9)
   {
    _vitesse = 5;
   }
   if (p>19)
   {
    _vitesse = 6;
   }
   if (p>29)
   {
    _vitesse = 7;
   }
   if (p>39)
   {
    _vitesse = 8;
   }
   if (p>49)
   {
    _vitesse = 9;
   }
   if (p>59)
   {
    _vitesse = 10;
   }
   if (p>69)
   {
    _vitesse = 12;
   }
   if (p>79)
   {
    _vitesse = 14;
   }
 
 
   if (erreur==0)
   {
    channel2.stop();
    perdu.gotoAndPlay('gameOver');
    alien.removeEventListener(Event.ENTER_FRAME, aniAlien);
    removeChild(alien);
    Mouse.show();
    removeChild (cible) ;  
     
   }
  }
 }
 
}

mood
Publicité
Posté le 30-11-2012 à 21:14:04  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  Problème de programmation Jeu de Tir As3

 

Sujets relatifs
Problème de disparition programmée en AS3programmation d'un serveur par socket en C++
AIDE A LA PROGRAMMATION[Résolu] Problème de bordure rémanente intempestive après clic sur img
le programmation en cProblème d'affichage IE/Opera
Problème formule à plusieurs conditionsProbleme Warning: session_start() [function.session-start]
Problème de select qui sors en erreur 
Plus de sujets relatifs à : Problème de programmation Jeu de Tir As3


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR