Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash > AS1/AS2
AS1/AS2 Questions relatives à la programmation ActionScript 1 et 2 (Cours AS2)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/03/2011, 18h10   #1
Nouveau Membre du Club
 
Inscription : juillet 2009
Messages : 147
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 147
Points : 29
Points : 29
Par défaut Implémenter un schéma de classes et d'interfaces

Voici le schéma suivant que je dois implémenter en ActionScript2 (.as) sous Macromedia Flash Professionnal 8.

Pour cela, j'ai créer 5fichiers ".as" qui sont les interfaces (Tracable, Deplacable, Deplacable3d, Flottable et Submersible) et que j'ai développé.
Egalement, 5fichiers ".as" représentant les classes (Vehicule, Vehicule3d, Avion, Bateau et SousMarin)

J'ai développé la classe Vehicule comme suit :
Code :
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
class vehicule.Vehicule implements Deplacable, Tracable {
	static var NORD:Number  =  90;
	static var EST:Number   =   0;
	static var SUD:Number   = -90;
	static var OUEST:Number = 180;
	static var nbVehicules:Number = 0;
	static var tabFlotte:Array = [];
 
	var nom:String;
	private var vitesse:Number;
	private var capaciteMax:Number;
	private var capacite:Number = 0;
	private var x:Number = 0, y:Number = 0;
 
	function Vehicule(nom:String, vitesse:Number, capaciteMax:Number) {
		this.nom = nom;
		this.vitesse = vitesse;
		this.capaciteMax = capaciteMax;
		nbVehicules++;
		tabFlotte.push(this);
	}
 
	static function listerFlotte() {
		trace("La flotte comporte " + nbVehicules + " véhicules :");
		for (var i:Number = 0; i < tabFlotte.length; i++) {
			tabFlotte[i].tracer();
		}
	}
 
	function deplacer(angle:Number, duree:Number):Void {
		// 0 <= angle < 360 °
		x += vitesse * Math.cos(angle * Math.PI / 180) * duree;
		y += vitesse * Math.sin(angle * Math.PI / 180) * duree;
	}
 
	function remplir(nb:Number):Void {
		capacite += nb;
		capacite = Math.max(0, Math.min(capacite, capaciteMax));
	}
 
	function tracer():Void {
		trace(nom + " contient " + capacite + " p. " +
			  "en (" + Math.round(x) + ", " + Math.round(y) + ")");
	}
}
Quelqu'un pourrati-il m'aider pour développer la classe Vehicule3d que j'ai commencé mais je ne sais pas comment faire, je ne suis qu'une simple débutante
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
import vehicule.Vehicule;
 
class vehicule.Vehicule3d extends Vehicule implements Deplacable3d {
 
	function Deplacer3d(theta:Number, phi:Number, duree:Number):Void {
		var r:Number = vitesse * duree;
		if ( z >= 0 ) {
			super.deplacer3d(); 
		}
		else {
			trace("L'avion s'est crashé aux coordonnées (" + Math.round(x) + ", " + Math.round(y) + ", " + Math.round(z) + ")");
		}
	}
Images attachées
Type de fichier : jpg Exercice Flash.JPG (93,3 Ko, 0 affichages)
Lenou est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h51.


 
 
 
 
Partenaires

Hébergement Web