minuteries...essayer quelque chose de funky

  • chopficaro
  • Novice
  • Novice
  • No Avatar
  • Inscription: Jan 23, 2010
  • Messages: 30
  • Status: Offline

Message Janvier 27th, 2010, 2:39 am

Im essayant de trouver comment faire quelque chose de vraiment dur et je pense que la seule manière que je puisse faire est de passer d'une minuterie un argument. Je veux créer une classe qui déplace les boutons à droite sur la souris au-dessus, et les déplace de retour sur le déploiement. Mais Im essayant de faire une sorte d'assouplissement en vigueur en action script.

le dernier mouvement devrait être de 1 pixel, les 2 seconde pour le dernier déplacement pixels, la troisième à la dernière de 3 pixels etc

heres ce que j'ai dans ma tête: la classe aura une variable qui stocke l'original coordonnée x et le repos souhaité coordonner pour le bouton sur roll over. sur les roll over, le script calcule le nombre de pixels entre l'endroit où il est et de la destination, ou sur le déploiement, il serait de calculer le nombre de pixels de son posision en cours à la posision original. alors elle utiliser ce numéro pour faire le calcul suivant:
ACTIONSCRIPT Code: [ Select ]
while(numPix>countPix)
{
count++
countPix+=count
}
this.x=destinationX-countPix /*or + count pix depending on weather its moving to the right or left*/
while(count>0)
{
this.x+=count /*or -= if moving back*/
count--
/*timer would elapse here*/
}
 
  1. while(numPix>countPix)
  2. {
  3. count++
  4. countPix+=count
  5. }
  6. this.x=destinationX-countPix /*or + count pix depending on weather its moving to the right or left*/
  7. while(count>0)
  8. {
  9. this.x+=count /*or -= if moving back*/
  10. count--
  11. /*timer would elapse here*/
  12. }
  13.  

so u voir, il compte le nombre de pixels dont il a besoin de se déplacer, alors il compte le nombre de paliers (count) dont il a besoin de se déplacer entre les minuteries pour ce genre d'assouplissement motion. Je ne sais pas comment l'implémenter dans ActionScript
Moderator Remark: Please wrap your script in [code][/code] tags
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Janvier 27th, 2010, 2:39 am

  • graphixboy
  • Control + Z
  • Mastermind
  • Avatar de l’utilisateur
  • Inscription: Juil 11, 2005
  • Messages: 1828
  • Loc: In the Great White North
  • Status: Offline

Message Janvier 27th, 2010, 7:33 pm

Eh bien, vous faire cela d'une manière vraiment dur. Je suggère aux soins dans une bibliothèque pré-compilés, comme l'assouplissement tweenlite qui va faire tout cela pour vous.

Si vous voulez vraiment faire cela en main, vous devez utiliser le onEnterFrame "()" fonction qui est exécutée une fois par trame basée sur le taux de trame.

Je ne sais pas quelle version d'ActionScript de votre aide car le vôtre n'est pas correct pour soit la version 2 ou 3. Si mal de vous donner un exemple en AS2 depuis son un peu plus facile à suivre.

ACTIONSCRIPT Code: [ Select ]
function moveObject(targObject, targX){
   targObject.onEnterframe = function(){
      var currX = this._x;
      if(math.floor(currX) > targX){ // round so we don't try to move sub pixels.
         // you'll have to change the pluses and greater thans based on your start/end locations
         // move object half the distance to the target each frame (linear ease)
         targObject._x = (currX - targX)/2;
      }else{
         delete this.onEnterFrame; // delete the onEnterFrame so its now always using up ram
      }
   }
}
  1. function moveObject(targObject, targX){
  2.    targObject.onEnterframe = function(){
  3.       var currX = this._x;
  4.       if(math.floor(currX) > targX){ // round so we don't try to move sub pixels.
  5.          // you'll have to change the pluses and greater thans based on your start/end locations
  6.          // move object half the distance to the target each frame (linear ease)
  7.          targObject._x = (currX - targX)/2;
  8.       }else{
  9.          delete this.onEnterFrame; // delete the onEnterFrame so its now always using up ram
  10.       }
  11.    }
  12. }


Je n'ai pas testé ce code, mais elle devrait vous donner un point de départ.
If at first you don't succeed F1... If that doesn't work try Google!
//// Designer, Developer & Teacher - Interactive, Motion and 3D \\\\
Portfolio at WhenImNotSleeping.com

Afficher de l'information

  • Total des messages de ce sujet: 2 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 36 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC