slideshow pas calé

  • Créateur du sujet Créateur du sujet vector
  • Date de début Date de début
ola.

j'ai fait des slideshow pour mon site et je n'arrive pas à calé correctement l'arrêt de la photo à droite et à gauche.
Ça c'est parce que tu as récupéré un .fla déjà codé à l'arrach et que tu as essayé de le bidouiller par-dessus, ce qui peut aboutir qu'à pire que mieux.

C'est un pur drame de code ce truc malheureusement... Tout le code est dans les clips, y'a des trucs bizarres et dépréciés, ça fait un peu peur en fait. J'ai cherché hein, mais impossible de comprendre pourquoi il y a tout ce b%$*£/\>el juste pour faire un pauvre défilement.

À ta place sois je ferais pomme-N et je recommencerais à zéro, soit je chercherais une meilleure source à adapter.
 
bon je sais..je ne pratique pas suffisament flash pour m'y mettre à fond...donc je récupère bien des flas tout prêts...:rose:
Bloc de code:
stop(); 
// le clip panaramique 
var mcP:MovieClip = this.large; 
// la vitesse de scroll 
var nSpeed:Number = 0.2; 
// la largeur de la scène 
var W:Number = 600; 
// 
var wEcartMax:Number = W/2; 
mcP.onEnterFrame = function() { 
   var xMouse:Number = this._parent._xmouse-W/2; 
   var xRapport:Number = xMouse/wEcartMax; 
   var xFinal:Number = xRapport*(wEcartMax-mcP._width/2) + W/2; 
   var xEcart:Number = xFinal-mcP._x; 
   mcP._x += xEcart*nSpeed; 
}
voilà ce qu'on m'a proposé de mettre à la place de mon code mais ça marche plus du tout...
 
Évidemment que ça marche pas y'a des problèmes de scope gros comme des éléphants déjà, et en plus les variables sont typées alors que c'est de l'AS1.... le gars qui t'as posté ça peut retourner s'entrainer.

Le truc pour faire ça simplement c'est :
- Réduire la position de la souris en fonction de la largeur de la scène à un chiffre entre 0 et 1.
- Appliquer ça en coefficient de [la largeur de la scène moins la largeur du bandeau].
- Placer le bandeau avec ça.
- Fini.
- Rajouter un peu d'easing, mais que si ça fonctionne déjà sans.
 
Avec un clip bien calé à 0,0... voilà ce que ça donne, avec l'easing inside ;)
4 lignes :siffle: :siffle: :siffle:

Bloc de code:
this.larTravail = Stage.width - this.large._width;
this.onEnterFrame = function() {
	this.large._x += ((this._xmouse/Stage.width)*larTravail - this.large._x)/5;
}

Le fla ici (je te l'ai refait parce que le Fla d'origine avait des paramètres d'export de m****)
 
Et beaucoup, beaucoup de flasheurs ne soupçonnent même pas la puissance de ramener les choses dans des intervalles entre 0 et 1. Ça simplifie la vie, d'ailleurs meme adobe, pour AS3, a passé toutes les props style alpha scale etc entre 0 et 1 au lieu de 0 et 100. Ils sont longs à la détente mais ils ont compris.
 
  • J’aime
Réactions: vector