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

ActionScript 3 Discussion :

Mini Jeux video


Sujet :

ActionScript 3

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 13
    Points : 11
    Points
    11
    Par défaut Mini Jeux video
    Bonjour, voilà mon problème, je tente de faire une classe Missiles qui doit reconnaître mes Antagonistes. Une fois le missile lancé, il doit supprimer l'antagoniste et l'enlever du tableau antagoniste qui est stocké dans la classe Jeu. L'objet missile est instancié grâce à l'avatar une fois la touche SPACE enfoncé.

    Le problème est le suivant : flash me dit que mon hitTestObject ne doit pas être vide. Pourtant, j'y ai mis mes antagonistes. Si quelqu'un avait la patience et le temps d'analyser mon code et de m'expliquer mon erreur, se serait sympas. Merci!

    Voici mes classes :

    JEU
    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
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
     
    package {
    	import ca.qc.cegepstefoy.*;
    	import flash.display.MovieClip;
    	import flash.utils.Timer;
    	import flash.events.*;
    	import flash.geom.Point;
     
    	public class Jeu extends MovieClip {
    		private var avatar:Avatar;
    		private var energie:Energie;
    		private var tAntagonistes:Array=new Array();
    		private var tObstacles:Array=new Array();
    		private var tCitrouilles:Array=new Array();
    		private var tRadis:Array=new Array();
    		private var tVies:Array=new Array();
    		private var tMissiles:Array=new Array();
    		private var maMinuterie:Timer = new Timer(50,0);
    		private var point:uint = 1;
     
    		private var nombreHasard:uint = Math.floor(Math.random() * 1 + 9);
    		private var maMinuterieEnnemi:Timer = new Timer(4000,nombreHasard);
    		private var maMinuterieObstacles:Timer = new Timer(6000,nombreHasard);
    		private var maMinuterieCitrouilles:Timer = new Timer(5000,0);
    		private var maMinuterieRadis:Timer = new Timer(3000,0);
    		private var monScenario:MovieClip;
    		public function Jeu () {
    			//this.tAntagonistes[0]= new Antagoniste(this.monScenario,this.maMinuterie);
    			this.ajouterAvatar ();
    			this.tCitrouilles.push ( new Citrouille(this));
    			this.tRadis.push ( new Radis(this));
    			this.ajouterEnergie ();
    			this.ajouterVies ();
     
    			this.maMinuterieEnnemi.addEventListener (TimerEvent.TIMER,this.ajouterAntagoniste);
    			this.maMinuterieObstacles.addEventListener (TimerEvent.TIMER,this.ajouterObstacles);
    			this.maMinuterieRadis.addEventListener (TimerEvent.TIMER,this.ajouterRadis);
    			this.maMinuterieCitrouilles.addEventListener (TimerEvent.TIMER,this.ajouterCitrouilles);
    			this.maMinuterie.addEventListener (TimerEvent.TIMER,classerObjetsParY);
     
     
    			this.maMinuterieRadis.start ();
    			this.maMinuterieCitrouilles.start ();
    			this.maMinuterieEnnemi.start ();
    			this.maMinuterieObstacles.start ();
     
    			this.maMinuterie.start ();
     
     
    			Antagoniste.ajusterVitesse ();
    			Obstacles.ajusterVitesse ();
    			Citrouille.ajusterVitesse ();
    			Radis.ajusterVitesse ();
     
     
    		}//fin fonction Jeu
     
    		/**************************AJOUT DES OCCURENCES******************************************************/
    		private function ajouterAntagoniste (evenement:TimerEvent):void {
    			this.tAntagonistes.push ( new Antagoniste(this));
    		}//fin fonction ajouterAntagoniste
     
    		private function ajouterObstacles (evenement:TimerEvent):void {
    			this.tObstacles.push ( new Obstacles(this));
    		}//fin fonction ajouterObstacles
     
    		private function ajouterCitrouilles (evenement:TimerEvent):void {
    			this.tCitrouilles.push ( new Citrouille(this));
    		}//fin fonction ajouterCitrouilles
     
    		private function ajouterRadis (evenement:TimerEvent):void {
    			this.tRadis.push ( new Radis(this));
    		}//fin fonction ajouterRadis
     
    		/**/
    		private function ajouterAvatar ():void {
    			this.avatar = new Avatar(this,this.tAntagonistes,this.tObstacles,this.tMissiles);
    		}//fin function ajouterAvatar
     
    		private function ajouterEnergie ():void {
    			this.energie = new Energie(this);
    		}//fin function ajouterEnergie
     
    		private function ajouterVies ():void {
    			this.tVies[0] = new Vies(this,60,80);
    			this.tVies[1] = new Vies(this,90,80);
    			this.tVies[2] = new Vies(this,120,80);
    			this.tVies[3] = new Vies(this,150,80);
    			this.tVies[4] = new Vies(this,180,80);
    		}//fin function ajouterVies
     
    		/*********************SUPPRESSION ANTAGONISTES***************************************************/
     
    		private function supprimerAntagoniste ():void {
    			this.maMinuterieEnnemi.removeEventListener (TimerEvent.TIMER,this.ajouterAntagoniste);
    			for (var cpt:uint=0; cpt<=this.tAntagonistes.length; cpt++) {
    				this.tAntagonistes[cpt].supprimerAntagoniste ();
    			}
     
    			this.tAntagonistes.splice (0,this.tAntagonistes.length);
    		}
     
    		public function enleverAntagonisteTableau (refAnta:MovieClip):void {
    			var antagoniste = this.tAntagonistes.indexOf(refAnta);
    			this.tAntagonistes.splice (antagoniste,1);
    			trace(this.tAntagonistes)
    		}
     
    		/***********************SUPPRESSION OBSTACLE**********************************************/
     
    		private function supprimerObstacles ():void {
    			this.maMinuterieObstacles.removeEventListener (TimerEvent.TIMER,this.ajouterObstacles);
    			for (var cpt:uint=0; cpt<=this.tObstacles.length; cpt++) {
    				this.tObstacles[cpt].supprimerObstacles ();
    			}
     
    			this.tObstacles.splice (0,this.tObstacles.length);
    		}
     
    		public function enleverObstaclesTableau (refObsta:MovieClip):void {
    			var obstacles = this.tObstacles.indexOf(refObsta);
    			this.tObstacles.splice (obstacles,1);
    		}
     
    		/***********************SUPPRESSION CITROUILLES******************************************************/
     
    		private function supprimerCitrouilles ():void {
    			this.maMinuterieCitrouilles.removeEventListener (TimerEvent.TIMER,this.ajouterCitrouilles);
    			for (var cpt:uint=0; cpt<=this.tCitrouilles.length; cpt++) {
    				this.tCitrouilles[cpt].supprimerCitrouilles ();
    			}
     
    			this.tCitrouilles.splice (0,this.tCitrouilles.length);
    		}
     
    		public function enleverCitrouillesTableau (refCit:MovieClip):void {
    			var citrouilles = this.tCitrouilles.indexOf(refCit);
    			this.tCitrouilles.splice (citrouilles,1);
     
     
     
    		}
     
    		/**********************SUPPRESSION RADIS*********************************************************/
     
    		private function supprimerRadis ():void {
    			this.maMinuterieRadis.removeEventListener (TimerEvent.TIMER,this.ajouterRadis);
    			for (var cpt:uint=0; cpt<=this.tRadis.length; cpt++) {
    				this.tRadis[cpt].supprimerRadis ();
    			}
     
    			this.tRadis.splice (0,this.tRadis.length);
    		}
     
    		public function enleverRadisTableau (refRadis:MovieClip):void {
    			var radis = this.tRadis.indexOf(refRadis);
    			this.tRadis.splice (radis,1);
    		}
     
    		/**********************SUPPRESSION MISSILES*********************************************************/
    		public function enleverMissilesTableau (refMissile:MovieClip):void {
    			var missiles = this.tMissiles.indexOf(refMissile);
    			this.tMissiles.splice (missiles,1);
     
    		}
     
    		/**********************SUPPRESSION ENERGIE*********************************************************/
     
    		private function supprimerEnergie ():void {
    			this.energie.supprimerEnergie ();
    		}
     
     
    		/******************************GESTION BARRE DE VIE ET POINTS DE VIE*********************************************************/
    		public function faireSuppEnergie () {
     
    			this.point += 1;
    			this.energie.enleverEnergie (this.point);
    			if (this.point==9) {
     
    				this.point=1;
    				this.enleverVie ();
    				this.energie.enleverEnergie (this.point);
    			}
    		}
    		private function enleverVie () {
    			this.tVies.splice (this.tVies.length, 1);
    			var vie:Number=tVies.length-1;
    			this.tVies[vie].supprimerVies ();
    		}
    		/*********************************************SWAPPING******************************************/
    		private function classerObjetsParY (evenement:TimerEvent):void {
    			//crée une liste temporaire qui servira au tri des objects à l'écran
    			var maListeTriee:Array=new Array();
    			//insère l'avatar dans la liste
    			maListeTriee.push (this.avatar);
    			maListeTriee=maListeTriee.concat(this.tAntagonistes);//duplique
    			maListeTriee=maListeTriee.concat(this.tCitrouilles);
    			maListeTriee=maListeTriee.concat(this.tObstacles);
    			maListeTriee=maListeTriee.concat(this.tRadis);
    			//trace (maListeTriee);
    			maListeTriee=maListeTriee.sortOn("y",Array.NUMERIC);
    			for (var i=0; i<maListeTriee.length; i++) {
     
    				this.setChildIndex (maListeTriee[i], i+4);
     
    			}
    			//trace("apres reset profondeur");
    		}
     
     
    		public function getMinuterie ():Timer {
    			return this.maMinuterie;
    		}
     
    	}//fin classe
    }//fin pkg
    AVATAR
    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
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    package ca.qc.cegepstefoy{
    	import flash.display.MovieClip;
    	import flash.events.*;
    	import flash.ui.Keyboard;
    	import flash.utils.Timer;
    	import flash.geom.Point;
    	public class Avatar extends ObjetVisible {
    		private var mesAntagonistes:Array = new Array  ;
    		private var mesObstacles:Array = new Array  ;
    		private var mesMissiles:Array=new Array;
    		private var tTouches:Array = new Array(false,false,false,false);
    		private var maMinuterie:Timer = new Timer(30,0);
    		private const POSITION_DEPART = new Point(50,380);
    		private const LIMITE_DEPLACEMENT_Y = new Point(380,550);
    		private const VITESSE_AVATAR = 5;
    		private var missiles:Array=new Array;
     
     
    		public function Avatar (refScenario:MovieClip,refAntagonistes:Array, refObstacles:Array, refMissiles:Array) {
    			super (refScenario);
    			this.mesAntagonistes = refAntagonistes;
    			this.mesObstacles = refObstacles;
    			this.mesMissiles = refMissiles;
    			this.maMinuterie.start();
    			this.x = POSITION_DEPART.x;
    			this.y = POSITION_DEPART.y;
    			this.scaleY = this.y / LIMITE_DEPLACEMENT_Y.y * 0.9;
    			this.scaleX = this.y / LIMITE_DEPLACEMENT_Y.y * 0.9;
    			refScenario.stage.addEventListener (KeyboardEvent.KEY_DOWN,this.changerTableauDown);
    			refScenario.stage.addEventListener (KeyboardEvent.KEY_UP,this.changerTableauUp);
    			this.maMinuterie.addEventListener (TimerEvent.TIMER,this.detecterCollision);
    		}//fin fonction Avatar
     
    		private function changerTableauDown (evenement:KeyboardEvent):void {
    			switch (evenement.keyCode) {
    				case Keyboard.RIGHT :
     
    					this.tTouches[0] = true;
    					break;
    				case Keyboard.LEFT :
     
    					this.tTouches[1] = true;
    					break;
    				case Keyboard.UP :
     
    					this.tTouches[2] = true;
    					break;
    				case Keyboard.DOWN :
     
    					this.tTouches[3] = true;
    					break;
    				case Keyboard.SPACE :
    					this.mesMissiles.push (new Missiles(this,this.scn,this.x,this.y, this.mesAntagonistes));
    					break;
    			}
     
     
    			if (this.maMinuterie.running == false) {
    				this.maMinuterie.addEventListener (TimerEvent.TIMER,this.deplacer);
    				this.maMinuterie.start ();
    			}
    		}//fin fonction changerTableauDown
     
    		private function changerTableauUp (evenement:KeyboardEvent):void {
    			switch (evenement.keyCode) {
    				case Keyboard.RIGHT :
     
    					this.tTouches[0] = false;
     
    					break;
    				case Keyboard.LEFT :
     
    					this.tTouches[1] = false;
    					break;
    				case Keyboard.UP :
     
    					this.tTouches[2] = false;
    					break;
    				case Keyboard.DOWN :
     
    					this.tTouches[3] = false;
    					break;
    			}
    			this.gotoAndStop("marche");
    			if (this.tTouches.indexOf(true) == -1) {
    				this.maMinuterie.stop ();
    				this.maMinuterie.removeEventListener (TimerEvent.TIMER,this.deplacer);
    			}
    		}//fin fonction changerTableauUp
     
    		private function deplacer (evenement:TimerEvent):void {
     
    			var deplacement:Number = 0;
    			if (this.tTouches[0] == true) {
    				this.x += 5;
    				this.gotoAndStop("cours");
    			}
    			if (this.tTouches[1]==true) {
    				this.x-=5;
    				this.gotoAndStop("recule");
    			}
    			if (this.tTouches[2]==true) {
    				deplacement=this.y-VITESSE_AVATAR;
    			}
    			if (this.tTouches[3]==true) {
    				deplacement=this.y+VITESSE_AVATAR;
    			}
     
    			if (deplacement>LIMITE_DEPLACEMENT_Y.x&&deplacement<LIMITE_DEPLACEMENT_Y.y) {
    				//déplacer l'avatar
    				this.y=deplacement;
    				//remettre à l'échelle
    				this.scaleY=this.y/LIMITE_DEPLACEMENT_Y.y*0.9;
    				this.scaleX=this.y/LIMITE_DEPLACEMENT_Y.y*0.9;
    			}
    		}//fin fonction deplacer
     
    		private function detecterCollision (evenement:TimerEvent):void {
    			var collisionAnta:Boolean=false;
    			var collisionObstacle:Boolean=false;
     
    			/*DÉTECTION ANTAGONISTE*/
    			for (var cptA:uint=0; cptA<this.mesAntagonistes.length && collisionAnta==false; cptA++) {
    				if (this.hitTestObject(this.mesAntagonistes[cptA])) {
    					collisionAnta=true;
    					this.mesAntagonistes[cptA].supprimerAntagoniste ();
    					//this.mesAntagonistes.splice (cptA,1);//premier nombre est l'index, le deuxième nombre est la longueur qu'on veut supprimer
    					this.scn.faireSuppEnergie ();
    				}
    			}
    			/*DÉTECTION OBSTACLES*/
    			for (var cptO:uint=0; cptO<this.mesObstacles.length && collisionObstacle==false; cptO++) {
    				if (this.hitTestObject(this.mesObstacles[cptO])) {
    					collisionObstacle=true;
    					this.mesObstacles.splice (cptO,1);//premier nombre est l'index, le deuxième nombre est la longueur qu'on veut supprimer
    					this.scn.faireSuppEnergie ();
    				}
    			}
    		}//fin fonction detecterCollision
     
     
     
    		public function supprimerAvatar ():void {
     
    			this.scn.stage.removeEventListener (KeyboardEvent.KEY_DOWN,this.changerTableauDown);
    			this.scn.stage.removeEventListener (KeyboardEvent.KEY_UP,this.changerTableauUp);
    			this.supprimerObjet ();
    		}//fin fonction supprimerAvatar
     
    	}//fin classe
    }//fin pkg

    ANTAGONISTES

    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
    package ca.qc.cegepstefoy{
    	import flash.display.MovieClip;
    	import flash.utils.Timer;
    	import flash.events.*;
    	public class Antagoniste extends ObjetVisible {
    		private static var vitesse:uint;
    		private var maMinuterie:Timer;
     
     
    		public function Antagoniste (refScenario:MovieClip) {
    			super (refScenario);
    			this.maMinuterie= refScenario.getMinuterie();
    			//this.scn=refScenario;
     
    			this.maMinuterie.addEventListener (TimerEvent.TIMER,this.bouger);
    			this.x = 800;
    			this.y = Math.floor(Math.random()*150+400);
     
    		}//fin fonction Antagoniste
     
    		private function bouger (evenement:TimerEvent):void {
     
    			this.x -= Antagoniste.vitesse;
    			if (this.x<=0) {
    				this.supprimerAntagoniste ();
    			}
    		}//fin fonction bouger
     
    		public static function ajusterVitesse ():void {
     
    			Antagoniste.vitesse=10;
    		}// fin fonction ajusterVitesse
     
    		public function supprimerAntagoniste ():void {
     
    this.scn.enleverAntagonisteTableau(this);
    			this.maMinuterie.removeEventListener (TimerEvent.TIMER,this.bouger);
    			this.supprimerObjet ();
    		}//fin fonction supprimerAntagoniste
     
    	}//fin classe
    }//fin pkg
    MISSILES
    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
    package ca.qc.cegepstefoy{
    	import flash.display.MovieClip;
    	import flash.utils.Timer;
    	import flash.events.*;
    	import fl.transitions.Tween;
    	import fl.transitions.TweenEvent;
    	import fl.transitions.easing.*;
    	public class Missiles extends ObjetVisible {
    		private static var vitesse:uint;
    		private var maMinuterie:Timer = new Timer(50,1);
     
    		private var mesAntagonistes:Array = new Array  ;
    		private var trajX:Tween;
    		private var trajY:Tween;
     
    		public function Missiles (avatar:Avatar, refScenario:MovieClip, refX:uint, refY:uint, antagonistes:Array) {
    			super (refScenario);
     
    			this.x = refX;
    			this.y = avatar.y - 50;
    			this.mesAntagonistes = antagonistes;
    			this.maMinuterie.addEventListener (TimerEvent.TIMER,this.lancerMissiles);
    			this.maMinuterie.addEventListener (TimerEvent.TIMER,this.detecterCollision);
     
    			this.maMinuterie.start ();
    		}
    		//Fin fonction Missile
     
    		private function lancerMissiles (evenement:TimerEvent) {
    			this.trajX = new Tween(this,"x",Regular.easeOut,this.x,this.x + 500,2,true);
    			this.trajY = new Tween(this,"y",Bounce.easeOut,this.y,this.y + 30,2,true);
    			trajX.addEventListener (TweenEvent.MOTION_FINISH, supprimerMissiles);
     
    		}//fin function lancerMissiles
     
    		private function detecterCollision (evenement:TimerEvent) {
    			//trace("Détecter Collision");
    			//var collisionAnta:Boolean = false;
    			for (var cptA:uint=0; cptA<=this.mesAntagonistes.length /*&& collisionAnta==false*/; cptA++) {
    				//trace (this.mesAntagonistes[cptA])
    				if (this.hitTestObject(this.mesAntagonistes[cptA])) {
    					//collisionAnta = true;
    					//trace(this.mesAntagonistes + "avant suppression");
    					this.mesAntagonistes[cptA].supprimerAntagoniste ();
    					//trace (this.mesAntagonistes+"Anta deleté");
    				}
    			}
    		}//fin détecterCollision
     
     
    		public function supprimerMissiles (evenement:TweenEvent):void {
    			this.trajX = null;
    			this.trajY = null;
    			this.supprimerObjet ();
    			this.scn.enleverMissilesTableau (this);
    		}//fin fonction supprimerMissiles
     
    	}//fin classe
    }//fin pkg
    ENERGIE
    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
    package ca.qc.cegepstefoy{
    	import flash.display.MovieClip;
    	import flash.utils.Timer;
    	import flash.events.*;
    	public class Energie extends ObjetVisible {
     
     
    		public function Energie (refScenario:MovieClip) {
    			super (refScenario);
    			this.x =225;
    			this.y = 100;
     
    		}//fin fonction Energie
     
    		/********************ENLEVER ENERGIE************************/		
     
    		public function enleverEnergie(point){
     
    			this.gotoAndStop(point);
     
     
    		}//fin fonction enleverEnergie
     
     
    		public function supprimerEnergie ():void {
     
    			this.supprimerObjet ();
    		}//fin fonction supprimerCitrouille
     
    	}//fin classe
    }//fin pkg
    CITROUILLES
    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
    package ca.qc.cegepstefoy{
    	import flash.display.MovieClip;
    	import flash.utils.Timer;
    	import flash.events.*;
    	public class Citrouille extends ObjetVisible {
    		private static var vitesse:uint;
    		private var maMinuterie:Timer;
     
    		public function Citrouille (refScenario:MovieClip) {
    			super (refScenario);
    			this.maMinuterie= refScenario.getMinuterie();
     
    			this.maMinuterie.addEventListener (TimerEvent.TIMER,this.bouger);
    			this.x = 950;
    			this.y = 340;
     
    		}//fin fonction Citrouille
     
    		private function bouger (evenement:TimerEvent):void {
     
    			this.x -= Citrouille.vitesse;
    			if (this.x<=0) {
    				this.scn.enleverCitrouillesTableau(this);
    				this.supprimerCitrouilles ();
    			}
    		}//fin fonction bouger
     
    		public static function ajusterVitesse ():void {
     
    			Citrouille.vitesse=3;
    		}// fin fonction ajusterVitesse
     
    		/********************************POUR LE SWAPING*****************/
     
     
    		public function supprimerCitrouilles ():void {
     
    			this.maMinuterie.removeEventListener (TimerEvent.TIMER,this.bouger);
    			this.supprimerObjet ();
    		}//fin fonction supprimerCitrouille
     
    	}//fin classe
    }//fin pkg

    OBJET VISIBLE
    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
    package ca.qc.cegepstefoy{
    	import flash.events.*;
    	import flash.display.MovieClip;
    	import flash.utils.Timer;
    	public class ObjetVisible extends MovieClip {
     
    		protected var scn:MovieClip=null;
     
    		public function ObjetVisible (refScene) {
    			this.scn=refScene
    			refScene.addChild (this);
    		}
     
    		public function supprimerObjet () {
    			this.scn.removeChild (this);
     
    		}
    	}
    }

    RADIS
    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
    package ca.qc.cegepstefoy{
    	import flash.display.MovieClip;
    	import flash.utils.Timer;
    	import flash.events.*;
    	public class Radis extends ObjetVisible {
    		private static var vitesse:uint;
    		private var maMinuterie:Timer;
     
     
    		public function Radis (refScenario:MovieClip) {
    			super (refScenario);
    			this.maMinuterie= refScenario.getMinuterie();
     
     
    			this.maMinuterie.addEventListener (TimerEvent.TIMER,this.bouger);
    			this.x = 975;
    			this.y = 375;
     
    		}//fin fonction Radis
     
    		private function bouger (evenement:TimerEvent):void {
     
    			this.x -= Radis.vitesse;
    			if (this.x<=0) {
    				this.scn.enleverRadisTableau(this);
    				this.supprimerRadis ();
    			}
    		}//fin fonction bouger
     
    		public static function ajusterVitesse ():void {
     
    			Radis.vitesse=3;
    		}// fin fonction ajusterVitesse
     
     
    		public function supprimerRadis ():void {
     
    			this.maMinuterie.removeEventListener (TimerEvent.TIMER,this.bouger);
    			this.supprimerObjet ();
    		}//fin fonction supprimerRadis
     
    	}//fin classe
    }//fin pkg

    VIES
    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
    package ca.qc.cegepstefoy{
    	import flash.display.MovieClip;
    	import flash.utils.Timer;
    	import flash.events.*;
    	public class Vies extends ObjetVisible {
    		private static var vitesse:uint;
    		private var maMinuterie:Timer;
     
    		public function Vies (refScenario:MovieClip, refX:uint, refY:uint) {
    			super (refScenario);
    			this.maMinuterie= refScenario.getMinuterie();
    			this.x =refX;
    			this.y = refY;
    		}
    		//Fin fonction Vies
     
     
    		public function supprimerVies():void {
     
    			this.supprimerObjet ();
    		}//fin fonction supprimerCitrouille
     
    	}//fin classe
    }//fin pkg

    OBSTACLES
    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
    package ca.qc.cegepstefoy{
    	import flash.display.MovieClip;
    	import flash.utils.Timer;
    	import flash.events.*;
    	public class Obstacles extends ObjetVisible {
    		private static var vitesse:uint;
    		private var maMinuterie:Timer;
     
     
    		public function Obstacles (refScenario:MovieClip) {
    			super (refScenario);
    			this.maMinuterie= refScenario.getMinuterie();
     
     
    			this.maMinuterie.addEventListener (TimerEvent.TIMER,this.bouger);
    			this.x = 800;
    			this.y = Math.floor(Math.random()*150+400);
     
    		}//fin fonction Obstacles
     
    		private function bouger (evenement:TimerEvent):void {
     
    			this.x -= Obstacles.vitesse;
    			if (this.x<=0) {
    				this.scn.enleverObstaclesTableau(this);
    				this.supprimerObstacles ();
    			}
    		}//fin fonction bouger
     
    		public static function ajusterVitesse ():void {
     
    			Obstacles.vitesse=4;
    		}// fin fonction ajusterVitesse
     
     
     
    		public function supprimerObstacles ():void {
     
    			this.maMinuterie.removeEventListener (TimerEvent.TIMER,this.bouger);
    			this.supprimerObjet ();
    		}//fin fonction supprimerObstacles
     
    	}//fin classe
    }//fin pkg

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 147
    Points : 174
    Points
    174
    Par défaut
    quand tu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    trace (this.mesAntagonistes[cptA])
    tu as bien quelque chose ?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    oui, ça me sort : [object Antagoniste]

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    J'ai trouvé mon erreur, en fait c'était la minuterie que je faisais aller qu'une fois dans ma classe Missiles.

Discussions similaires

  1. Développement jeux vidéo : quelles bases à avoir absolument ?
    Par Ezechiel dans le forum Développement 2D, 3D et Jeux
    Réponses: 175
    Dernier message: 20/02/2018, 16h14
  2. Réponses: 26
    Dernier message: 24/01/2007, 19h30
  3. Jeux video Style RPG 2D
    Par nanotrex dans le forum Projets
    Réponses: 11
    Dernier message: 25/06/2006, 21h25

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