Scusate sto modificando un libro sfogliabile trovato gratuitamente online e ho bisogno di una mano per una cosa particolare.
Ho aumentato il numero delle pagine e la misura, tutto torna, adesso vorrei modificare l'angolo della pagina quando la sfoglio
Mi spiego meglio
Quando clicco e trascino la mia pagina si sfoglia creando la curva formata dall'angolo del libro, io non vorrei questo vorrei semplicemente che la mia pagina rimanesse in posizione retta e si sfogliasse senza creare un'angolo
In poche parole vorrei agire sulle angolazioni di spostamento
Come posso fare?
Ditemi se mi sono spiegato male!!!!
Sotto il codice
stop();
_level0.pagesAbs = this;
var pageWi = 477.5;
var PageHi = 319;
var pageWiHi = pageWi+pageHi;
var pivotY = pageHi/2+pageWi;
var pageColor = 0xFFFFE5;
var dir = 1;
var flipPage = 1.5;
var curPage = .5;
var maxPages = 6;
var autoStep = .05;
var dragging = false;
this.attachMovie("cornerButton", "RButton", 11);
with (RButton) {
_x = pageWi;
_y = -pageWi;
}
this.attachMovie("cornerButton", "LButton", 12);
with (LButton) {
_x = -pageWi;
_y = -pageWi;
_xscale = -100;
}
pageInit(flipPage, dir);
_y += pivotY;
//
//
//
//
//
//
function makePage(targ, xQuadrant) {
with (targ) {
beginFill(pageColor, 100);
moveto(0, -pageWi);
lineto(0, -pageWiHi);
lineTo(xQuadrant*pageWi, -pageWiHi);
lineTo(xQuadrant*pageWi, -pageWi);
endFill();
}
}
//
//
function makeShade(targ, xQuadrant) {
with (targ) {
var colors = [0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000];
var alphas = [40, 25, 15, 5, 0, 1, 6];
//var ratios = [0, 1, 17, 51, 89, 132, 255];
var matrix = {matrixType:"box", x:0, yageWi, w:xQuadrant*pageWi, h
ageHi, r:0};
beginGradientFill("linear", colors, alphas, ratios, matrix);
moveto(0, -pageWi);
lineto(0, -pageWiHi);
lineTo(xQuadrant*pageWi, -pageWiHi);
lineTo(xQuadrant*pageWi, -pageWi);
endFill();
}
}
//
//
function makeShadow(targ, xQuadrant) {
with (targ) {
var colors = [0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000, 0x000000];
var alphas = [40, 25, 15, 5, 0, 1, 6];
var ratios = [0, 1, 17, 51, 89, 132, 255];
var maxLength = Math.sqrt((pageWi*pageWi)+(pageWIHi*pageWiHi));
var matrix = {matrixType:"box", x:0, y:-maxLength, w:xQuadrant*pageWi, h:maxLength-pageWi, r:0};
beginGradientFill("linear", colors, alphas, ratios, matrix);
moveto(0, -pageWi);
lineto(0, -maxLength);
lineto(xQuadrant*pageWi, -maxLength);
lineTo(xQuadrant*pageWi, -pageWi);
endFill();
}
}
//
//
function setStationary() {
createEmptyMovieClip("SLPage", 1);
if (flipPage != 1.5) {
makePage(SLPage, -1);
SLPage.attachMovie("print"+(flipPage-1.5), "Print", 1);
with (SLPage.Print) {
_x = -pageWi/2;
_y = -pivotY;
}
}
createEmptyMovieClip("SRPage", 2);
if (flipPage != maxPages-.5) {
makePage(SRPage, 1);
SRPage.attachMovie("print"+(flipPage+1.5), "Print", 1);
with (SRPage.Print) {
_x = pageWi/2;
_y = -pivotY;
}
}
var targ = dir>0 ? SLPage : SRPage;
targ.createEmptyMovieClip("Shade", 2);
makeShade(targ.Shade, -dir);
}
//
//
function setFlipping() {
var targ;
createEmptyMovieClip("FTPage", 3);
makePage(FTPage, dir);
with (FTPage) {
attachMovie("print"+(flipPage-dir*.5), "Print", 1);
with (Print) {
_x = dir*pageWi/2;
_y = -pivotY;
}
}
FTPage.createEmptyMovieClip("Shade", 2);
makeShade(FTPage.Shade, dir);
createEmptyMovieClip("FBPage", 4);
makePage(FBPage, -dir);
FBPage.attachMovie("print"+(flipPage+dir*.5), "Print", 1);
with (FBPage.Print) {
_x = -dir*pageWi/2;
_y = -pivotY;
}
FBPage._rotation = dir*90;
}
//
//
function setShadows() {
var targ;
this.createEmptyMovieClip("FShadow", 5);
makeShadow(FShadow, -dir);
FShadow._rotation = dir*45;
this.createEmptyMovieClip("SShadow", 6);
makeShadow(SShadow, dir);
SShadow._rotation = dir*45;
}
//
//
function makeMasks() {
this.createEmptyMovieClip("FBPageMask", 7);
with (FBPageMask) {
beginFill(0x005500, 100);
lineto(pageWiHi, -PageWiHi);
curveto(0, -2*PageWiHi, -pageWiHi, -pageWiHi);
endFill();
}
FBPageMask.duplicateMovieClip("FTPageMask", 8);
this.createEmptyMovieClip("FShadowMask", 9);
makePage(FShadowMask, -dir);
FShadowMask._rotation = dir*90;
this.createEmptyMovieClip("SShadowMask", 10);
makePage(SShadowMask, dir);
FBPage.setMask(FBPageMask);
FTPage.setMask(FTPageMask);
FShadow.setMask(FShadowMask);
SShadow.setMask(SShadowMask);
}
//
//
function limitBook() {
if (flipPage == 1.5) {
SLPage._visible = 0;
LButton._visible = 0;
SShadow._visible = 0;
if (dir == 1) {
FTPage.Shade._alpha = 67;
SShadow._visible = 1;
} else {
FShadow._alpha = 67;
}
} else if (flipPage == maxPages-.5) {
SRPage._visible = 0;
RButton._visible = 0;
SShadow._visible = 0;
if (dir == -1) {
FTPage.Shade._alpha = 67;
SShadow._visible = 1;
} else {
FShadow._alpha = 67;
}
}
}
//
//
function pageInit(cp, d) {
flipPage = cp;
dir = d;
setStationary();
setFlipping();
setShadows();
makeMasks();
limitBook();
}
//
//
//
//
//
function flip(curVal) {
var rot = dir*45*curVal;
FBPageMask._rotation = FTPageMask._rotation=-rot;
FBPage._rotation = FShadowMask._rotation=(dir*90)-rot*2;
FShadow._rotation = SShadow._rotation=(dir*45)-rot;
}
//
//
function getPageRatio() {
if (dragging) {
pageRatio = -dir*(_xmouse-startX-dir*20)/(2*pageWi);
} else {
pageRatio>2/3 ? pageRatio += autoStep : pageRatio -= autoStep;
}
if (pageRatio<=0) {
pageRatio = 0;
if (!dragging) {
flipDone();
}
} else if (pageRatio>=1) {
pageRatio = 1;
if (!dragging) {
flipDone();
}
}
return (pageRatio);
}
//
//
//
//
//
function startFlip(dir) {
pageInit(curPage+dir, dir);
startX = dir*pageWi;
dragging = true;
RButton._alpha = 0;
Lbutton._alpha = 0;
this.onEnterFrame = function() {
flip(getPageRatio());
};
}
//
//
function flipRelease() {
dragging = false;
if (pageRatio>2/3) {
curPage += 2*dir;
}
}
//
//
function flipDone() {
this.onEnterFrame = null;
RButton._alpha = 100;
LButton._alpha = 100;
if (curPage != .5) {
LButton._visible = 1;
}
if (curPage != maxPages+.5) {
RButton._visible = 1;
}
if (pageRatio == 0) {
FShadow.removeMovieClip();
FShadowMask.removeMovieClip();
SShadow.removeMovieClip();
SShadowMask.removeMovieClip();
FBPage.removeMovieClip();
FBPageMask.removeMovieClip();
if (dir == 1) {
SRPage.removeMovieClip();
} else {
SLPage.removeMovieClip();
}
} else {
FTPage.removeMovieClip();
if (dir == -1) {
SRPage.removeMovieClip();
} else {
SLPage.removeMovieClip();
}
}
FTPageMask.removeMovieClip();
}
//
//
LButton.onPress = function() {
startFlip(-1);
};
LButton.onReleaseOutside = function() {
flipRelease();
};
LButton.onRelease = function() {
flipRelease();
};
RButton.onPress = function() {
startFlip(1);
};
RButton.onReleaseOutside = function() {
flipRelease();
};
RButton.onRelease = function() {
flipRelease();
};
//
//
//
//
//