Forums Développement Multimédia

Aller au contenu

pol2095

Inscrit(e) (le) 03 Dec 2003
Déconnecté Dernière activité aujourd'hui, 00:01 AM
*****

Messages que j'ai postés

Dans le sujet : Code pour plusieurs clips

06 February 2018 - 20:28 PM

ça doit fonctionner avec ton code tel quel

peut-être des soucis avec mouseX qui sera relatif à ton clip et non au stage, à vérifier

Dans le sujet : Code pour plusieurs clips

06 February 2018 - 09:37 AM

Tu dois avoir du code qui traine sur la frame1 dans ton MovieCip peut-être ?

Dans le sujet : Code pour plusieurs clips

05 February 2018 - 23:11 PM

c'est bizarre, une erreur à la ligne 97, mais la classe ne fait pas 97 lignes ?

Dans le sujet : Code pour plusieurs clips

04 February 2018 - 20:42 PM

Non, le point c'est bon, il ne faut rien toucher.

il faut juste remplacer dans ta classe "import com.display.MyClip;" par "import flash.display.MovieClip;"


ça drevrait corriger cette erreur

Citation

1017 : La définition de la classe de base MovieClip est introuvable.

5000 : La classe 'com.display.MyClip' doit être une sous-classe de 'flash.display.MovieClip', puisqu'elle est liée à un symbole de bibliothèque du type correspondant


j'ai remis en forme ton code

package com.display
{
  import flash.display.MovieClip;
 
  public class MyClip extends MovieClip
  {
    public var currentStep: Number;
    public var step: Number = 330;
    public var max: Number = 0;
    public var min: Number = -660;
    public var distMin: Number = 15;
    public var nextX: Number;
    public var startX: Number;
    public var offsetX: Number;
    public var moving: Boolean = false;
    public var smooth: Number = 0.30;
    public var mouseIsUp: Boolean = true;
   
    public function MyClip()
    {
          this.x = 0;
          currentStep = this.x;
          nextX = currentStep;
          this.addEventListener(MouseEvent.MOUSE_DOWN, onDown);
    }
   
    public function onDown(e: MouseEvent): void
    {
          offsetX = this.mouseX;
          startX = mouseX;
          moving = true;
          mouseIsUp = false;
          if (!hasEventListener(Event.ENTER_FRAME)) addEventListener(Event.ENTER_FRAME, update);
          stage.addEventListener(MouseEvent.MOUSE_MOVE, onMove);
          stage.addEventListener(MouseEvent.MOUSE_UP, onUp);
    }
   
    public function onUp(e: MouseEvent): void
    {
          mouseIsUp = true;
          var dx: Number = mouseX - startX;
          if (dx < -distMin)
          {
            currentStep -= step;
            if (currentStep < min) currentStep = min;
          }
          else if (dx > distMin)
          {
            currentStep += step;
            if (currentStep > max) currentStep = max;
          }
          nextX = currentStep;
          stage.removeEventListener(MouseEvent.MOUSE_MOVE, onMove);
          stage.removeEventListener(MouseEvent.MOUSE_UP, onUp);
    }
   
    public function onMove(e: MouseEvent): void
    {
          nextX = mouseX - offsetX;
    }
   
    public function update(e: Event): void
    {
          if (moving)
          {
            this.x -= (this.x - nextX) * smooth;
            if (mouseIsUp && Math.abs(this.x - nextX) < 1)
            {
                  this.x = nextX;
                  moving = false;
                  removeEventListener(Event.ENTER_FRAME, update);
            }
          }
    }
  }
}

Dans le sujet : Code pour plusieurs clips

04 February 2018 - 18:35 PM

Regarde si dans Fichier > Paramètres avancés d'ActionScript 3.0 > onglet chemin source > il y a un dossier nommé "."

au début de ta classe il y a une erreur, c'est "import flash.display.MovieClip;" et non "import com.display.MyClip;", on va étendre

flash.display.MovieClip


authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP