Na camada botões, crie um movie clip e o instancie de "buttons" (sem áspas).
Dentro deste movie clip crie cinco botões e os instancie de "button1", "button2", "button3", "button4" e "button5" - todos sem áspas.
Note que não há ações para os botões - esta é uma das grandes novas do Flash MX, botões que podem ser instanciados e ter seus scripts declarados em um frame. =)
Volte para a cena principal.
Agora, na camada movieclips, crie uma barra horizontal com preenchimento e bordas.
Selecione somente a borda e pressione F8 - marque a opção Movie Clip. Uma vez transformada a borda em movie clip, instancie-o de "progressbar_bord" (sem áspas).
Agora selecione somente o preenchimento da barra e pressione F8 - marque a opção Movie Clip. Uma vez transformado o preenchimento em movie clip, instancie-o de "progressbar" (sem áspas).
Na camada layout, crie um layout que desejar.
Agora abra um novo arquivo de texto no bloco de notas, iremos criar o arquivo preloader.as.
Insira as seguintes linhas dentro do novo arquivo de texto:
Pergunta
Rezinha
Oi galera....
To fazendo o curso de Flash.... to no exercíco Preload Class, fiz ele todinho..só q não tá dando certo... aparece a seguinte menssagem de erro :
Cena=Cena 1, Camada=Scripts, Quadro=1: Linha 4: Diretiva #include mal formulada
#include "preloader.as" // inclui arquivo externo - preloader.as
Vou colar o exercício todo aki pra q vocês possam me ajudar... porque não to conseguindo achar o meu erro..lá vai :
Começaremos criando um arquivo com o tamanho de palco em 320 x 240 px e com quatro camadas:
scripts
botões
movieclips
layout
No primeiro frame da camada scripts insira o seguinte código:
// -------------------------------------------------------------------
// Image Preloader 2
// by Jonas Galvez (jonasgalvez@uol.com.br)
// -------------------------------------------------------------------
fscommand("allowscale", false); //fixa o tamanho no palco do swf, para não distorcer a imagem
this.stop();
#include "preloader.as" // inclui arquivo externo - preloader.as
this.createEmptyMovieClip("images", -1); // cria um movieclip vazio, instancia de images e seta o local no palco
this.images._x = ((320/2)-(305/2)) - 1;
this.images._y = ((240/2)-(178/2)) - 1;
this.buttons._visible = false; // torna as instancias de botão invísivel, a barra e //suas bordas visíveis enquanto os movies externos são carregados.
this.progressbar._visible = true;
this.progressbar_border._visible = true;
this.attachMovie("status_message", "status_message", 0); // anexa o mc //status_message
this.status_message._x = 15;
this.status_message._y = 12;
var total_images = 5; // define o nº total de imagens
var preloaderObj = new Preloader(); //seta a variável preloaderObj
for(var i = 1; i < (total_images+1); i++) {
this.images.createEmptyMovieClip("image" + i, i);
this.images["image" + i].loadMovie("image" + i + ".swf");
preloaderObj.addMovieClips(this.images["image" + i]);
this.buttons["button" + i].onRelease = function() {
for(var mc in _root.images) _root.images[mc]._visible = false;
_root.images["image" + this.i]._visible = true;
};
this.buttons["button" + i].i = i;
};
preloaderObj.startPreload();
preloaderObj.onPreloadUpdate = function() {
_root.progressbar._xscale = this.percentage;
};
preloaderObj.onPreloadComplete = function() {
for(var i = 0; i < this.movieclips.length; i++) {
this.movieclips._visible = false;
this.movieclips.gotoAndStop(2);
};
_root.status_message.removeMovieClip();
_root.buttons._visible = true;
_root.progressbar._visible = false;
_root.progressbar_border._visible = false;
};
// -------------------------------------------------------------------
// ENG DTP & Multimídia
// http://www.eng.com.br/
// -------------------------------------------------------------------
Na camada botões, crie um movie clip e o instancie de "buttons" (sem áspas).
Dentro deste movie clip crie cinco botões e os instancie de "button1", "button2", "button3", "button4" e "button5" - todos sem áspas.
Note que não há ações para os botões - esta é uma das grandes novas do Flash MX, botões que podem ser instanciados e ter seus scripts declarados em um frame. =)
Volte para a cena principal.
Agora, na camada movieclips, crie uma barra horizontal com preenchimento e bordas.
Selecione somente a borda e pressione F8 - marque a opção Movie Clip. Uma vez transformada a borda em movie clip, instancie-o de "progressbar_bord" (sem áspas).
Agora selecione somente o preenchimento da barra e pressione F8 - marque a opção Movie Clip. Uma vez transformado o preenchimento em movie clip, instancie-o de "progressbar" (sem áspas).
Na camada layout, crie um layout que desejar.
Agora abra um novo arquivo de texto no bloco de notas, iremos criar o arquivo preloader.as.
Insira as seguintes linhas dentro do novo arquivo de texto:
// ------------------------------------------------------------------------
// Preloader Class v2.0
// by Jonas Galvez (jonasgalvez@uol.com.br)
// ------------------------------------------------------------------------
_global.Preloader = function() {
var args = (arguments[0].length) ? arguments[0] : arguments;
this.mcTotal = this.total = this.left = 0;
this.loaded = this._percentage = 0;
this.movieclips = new Array();
for(var i = 0; i < args.length; i++) {
if(args instanceof MovieClip) {
this.mcTotal += args.getBytesTotal();
this.movieclips[this.movieclips.length] = args;
};
};
};
ASSetPropFlags(_global, "Preloader", 7);
Preloader.prototype.getBytesTotal = function() { return this.total; };
Preloader.prototype.addProperty("bytesTotal", Preloader.prototype.getBytesTotal, null);
ASSetPropFlags(Preloader.prototype, "getBytesTotal", 7);
Preloader.prototype.getBytesLoaded = function() { return this.loaded; };
Preloader.prototype.addProperty("bytesLoaded", Preloader.prototype.getBytesLoaded, null);
ASSetPropFlags(Preloader.prototype, "getBytesLoaded", 7);
Preloader.prototype.getBytesLeft = function() { return this.left; };
Preloader.prototype.addProperty("bytesLeft", Preloader.prototype.getBytesLeft, null);
ASSetPropFlags(Preloader.prototype, "addMovieClips", 7);
Preloader.prototype.getPercentage = function() { return this._percentage; };
Preloader.prototype.addProperty("percentage", Preloader.prototype.getPercentage, null);
Preloader.prototype.startPreload = function() {
if(this.movieclips.length) this._interval = setInterval(this, "_main", 100);
};
ASSetPropFlags(Preloader.prototype, "startPreload", 7);
Preloader.prototype.stopPreload = function() {
clearInterval(this._interval);
};
ASSetPropFlags(Preloader.prototype, "stopPreload", 7);
Preloader.prototype.hasMovieClip = function(mc) {
if(mc instanceof MovieClip) {
for(var i = 0; i < this.movieclips.length; i++) {
if(this.movieclips == mc) return true;
};
};
return false;
};
ASSetPropFlags(Preloader.prototype, "hasMovieClip", 7);
Preloader.prototype.addMovieClips = function() {
var args = (arguments[0].length) ? arguments[0] : arguments;
for(var i = 0; i < args.length; i++) {
if(args instanceof MovieClip) if(!this.hasMovieClip(args)) {
this.mcTotal += args.getBytesTotal();
this.movieclips[this.movieclips.length] = args;
};
};
};
ASSetPropFlags(Preloader.prototype, "addMovieClips", 7);
Preloader.prototype.removeMovieClips = function() {
var args = (arguments[0].length) ? arguments[0] : arguments;
for(var i = 0; i < args.length; i++) {
if(!this.hasMovieClip(args)) {
this.mcTotal -= args.getBytesTotal();
for(var j = 0; j < this.movieclips.length; j++) {
if(this.movieclips[j] == args) this.movieclips.splice(j, 1);
};
};
};
};
ASSetPropFlags(Preloader.prototype, "removeMovieClips", 7);
Preloader.prototype._main = function() {
this.total = this.loaded = 0;
for(var j = 0; j < this.movieclips.length; j++) {
this.total += this.movieclips[j].getBytesTotal();
this.loaded += this.movieclips[j].getBytesLoaded();
};
if(this.total != this.mcTotal) {
this.left = this.total - this.loaded;
this._percentage = Math.round(this.loaded*100/this.total);
this.onPreloadUpdate();
};
if(this._percentage == 100) {
this.onPreloadComplete();
this.mcTotal = this.total = this.left = 0;
this.stopPreload();
};
};
ASSetPropFlags(Preloader.prototype, "_main", 7);
MovieClip.prototype.preloadMovie = function(url, variables) {
if(variables.length) this.loadMovie(url, variables);
else this.loadMovie(url);
return new Preloader(this);
};
ASSetPropFlags(MovieClip.prototype, "preloadMovie", 7);
// ------------------------------------------------------------------------
// ENG DTP & Multimidia
// http://www.eng.com.br/
// ------------------------------------------------------------------------
Salve o arquivo como preloader.as no mesmo diretório em que vão estar todos os filmes deste tutorial.
Agora, criaremos os filmes contendo as imagens.
Abra um novo arquivo do Flash MX no tamanho 284 x 160 px, com uma camada e dois quadros-chves.
No primeiro quadro-chave insira a seguinte ação:
this.stop();
Na segunda camada, insira a imagem desejada e a transforme em movie clip.
Exporte e salve o arquivo no mesmo diretório dos outros como "image1" - sem áspas.
Faça o mesmo com os outros quatro arquivos:
image2
image3
image4
image5
Lembre-se de exportá-las!
... é isso ...
Espero q vocês possam me ajudar....
Valeu bjos
Link para o comentário
Compartilhar em outros sites
20 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.