Forum de discussion
Forum « Flash et Shockwave » (archives)
Problèeme de version de 6 a 8
Envoyé: 1er mars 2006, 15h10 par Casarchie
Je fais l'utilisation de 2 components dans un de mes projet. Un de ces components date un peu. Je l'utilise depuis très longtemps et je le trouve très pratique pour faire des animations simples de mes clips.
Mais la j'ai un problème de version, Celui que j'utilise souvent doit être exporté au maximum en version 6, et l'autre doit être exporter au minimum en version 7.
Je me retrouve donc a devoir laisser tombé un des 2 components... Je me suis dit qu'au lieu de perdre un des components... je serai peut-être mieux de mettre a jour mon vieux components... de le mettre a jour pour qu'il soit compatible dans une version 7.
Il m'arrive souvent de modifier des components pour l'adapter a mes besoins, mais pour celui ci, je ne sais pas c'est quoi la partie de code qui est destié a la version 6.
Je vous copie le code... si vous pouvez voir des parties de codes en version 6 et que je pourrais changer pour qu'il fonctionne en version 7, j'en serais très heureux.
Ce code a été pris sur www.flashcomponents.net
Merci beaucoup de votre aide
Casarchie
//////////////////
/*
------------------------------------------------------
Zoomer Component, v2.2.1
------------------------------------------------------
updated august 21 2002
Martijn de Visser
www.flashcomponents.net
------------------------------------------------------
Public methods:
enable() enables the component
disable() disables the component
isEnabled() returns state of component
*/
#initclip
// construct
ZoomerClass = function(){
// enable by default
this.enabled = true;
// initialize
this.init();
}
// register class
Object.registerClass("ZoomerClassSymbol", ZoomerClass);
// initialize component
ZoomerClass.prototype.init = function()
{
if (this._targetInstanceName.length > 0)
{
this.zoomTarget = this.targetInstance = this._parent[this._targetInstanceName];
if (this.zoomTarget instanceof MovieClip)
{
if ((!this.scaleX)&&(!this.scaleY)) { this.enabled = false; }
this._visible = false;
this.resizing = false;
this.mouseSwitched = false;
this.minZoomX = this.zoomTarget._xscale;
this.minZoomY = this.zoomTarget._yscale;
this.oldDepth = this.zoomTarget.getDepth();
if (this.maxZoom < 100) {this.maxZoom = 100;}
if (this.zoomSpeed < 0.01) {this.zoomSpeed = 0.01;}
if (this.startZoomedIn)
{
this.forward = false;
this.zoomTarget._xscale = this.maxZoom;
this.zoomTarget._yscale = this.maxZoom;
}
else
{
this.forward = true;
}
}
else
{
trace("Zoomer Component: no target movieclip found...");
this.enabled = false;
}
}
}
ZoomerClass.prototype.onMouseMove = function()
{
if (this.enabled)
{
if(this.zoomTarget.hittest(_root._xmouse,_root._ymouse, this.respectShape))
{
// mouse comes within target clip area
if (this.mouseSwitched)
{
this.mouseSwitched = false;
this.mouseEnter();
}
}
else
{
// mouse goes out of target clip area
if (!this.mouseSwitched)
{
this.mouseSwitched = true;
this.mouseLeave();
}
}
}
}
ZoomerClass.prototype.mouseEnter = function()
{
if (!this.resizing)
{
this.resizing = true;
this.forward = true;
}
else
{
if (!this.forward)
{
this.forward = true;
}
else
{
this.forward = false;
}
}
}
ZoomerClass.prototype.mouseLeave = function()
{
if (!this.resizing)
{
this.resizing = true;
this.forward = false;
}
else
{
if (!this.forward)
{
this.forward = true;
}
else
{
this.forward = false;
}
}
}
ZoomerClass.prototype.onEnterFrame = function()
{
if (this.enabled)
{
if(this.zoomTarget.hittest(_root._xmouse,_root._ymouse, this.respectShape))
{
// mouse comes within target clip area
if (this.mouseSwitched)
{
this.mouseSwitched = false;
this.mouseEnter();
}
}
else
{
// mouse goes out of target clip area
if (!this.mouseSwitched)
{
this.mouseSwitched = true;
this.mouseLeave();
}
}
if (this.resizing)
{
if (this.forward)
{
// zoom in
this.zoomTarget.swapDepths(1000);
if (this.scaleX) { this.zoomTarget._xscale = this.zoomTarget._xscale + (this.zoomSpeed*(this.maxZoom-this.zoomTarget._xscale)); }
if (this.scaleY) { this.zoomTarget._yscale = this.zoomTarget._yscale + (this.zoomSpeed*(this.maxZoom-this.zoomTarget._yscale)); }
if ((this.zoomTarget._xscale >= this.maxZoom-1) || (this.zoomTarget._yscale >= this.maxZoom-1))
{
// end of zoom in routine
if (this.scaleX) { this.zoomTarget._xscale = this.maxZoom; }
if (this.scaleY) { this.zoomTarget._yscale = this.maxZoom; }
this.resizing = false;
this.forward = false;
}
}
else
{
// zoom out
if (this.scaleX) { this.zoomTarget._xscale = this.zoomTarget._xscale - (this.zoomSpeed*(this.zoomTarget._xscale-this.minZoomX)); }
if (this.scaleY) { this.zoomTarget._yscale = this.zoomTarget._yscale - (this.zoomSpeed*(this.zoomTarget._yscale-this.minZoomY)); }
if (((this.scaleX) && (this.zoomTarget._xscale < this.minZoomX+1)) || ((this.scaleY) && (this.zoomTarget._yscale < this.minZoomY+1)))
{
// end of zoom out routine
if (this.scaleX) { this.zoomTarget._xscale = this.minZoomX; }
if (this.scaleY) { this.zoomTarget._yscale = this.minZoomY; }
this.resizing = false;
this.forward = true;
this.zoomTarget.swapDepths(this.oldDepth);
}
}
}
}
}
// disable Zoom behaviour
ZoomerClass.prototype.disable = function()
{
this.enabled = false;
}
// enable Zoom behaviour
ZoomerClass.prototype.enable = function()
{
this.enabled = true;
}
// return enabled state
ZoomerClass.prototype.isEnabled = function()
{
return this.enabled;
}
#endinitclip
Réponses
|