1
Posted by Eduardo Brito on 16:33
Galera, vcs que acompanham meu blog, me descupem por ficar tanto tempo se postar tutoriais, eu estou meio sem tempo , mas aguarde que virão mais, obrigado pela compreenção.

2

Detector de colisão em AS3

Posted by Eduardo Brito on 06:09
E ai galera, beleza?
Bem neste tutorial nós vamos fazer um simples detector de colisões no flash com AS3 (ActionScript 3.0) .
Então vamos começar?!

1.Abra um novo arquivo no flash e escolha AS3.

2.Nesse tutorial nós não vamos usar “class”, mesmo porque sem class é bem mais simples, então não desenhe nada no documento, e ma 1° frame da timeline pressione F9para abrir as ações e digite a seguinte ação (para adicionar os círculos):


var circ1:MovieClip=new MovieClip();
circ1.x=275;
circ1.y=200;


3.Até agora vc não deve ver nada, porque criamos apenas um movieclip vázio, então para adicionar o circulo abaixo desse código faça esse:



addChild(circ1);




var circle1r:uint=new uint(20);
circ1.graphics.beginFill(0xFF0000);
circ1.graphics.drawEllipse(-circle1r,-circle1r,circle1r*2,circle1r*2);
circ1.alpha=.5;


4.agora se vê um circulo no centro, mas nada.
agora para fazer um objeto que colida com ele nós vamos fazer outro circulo, para isto abaixo do código faça esse:

var vx:int=new int();//"velocity-x"
var vy:int=new int();//velocity-y
var len:int=new int();//Distance/Length
stage.addEventListener(MouseEvent.MOUSE_MOVE,mouse_move);//Adds mouse event listener
function mouse_move(event:MouseEvent):void {//The function for it.
circ2.x=mouseX;
circ2.y=mouseY;
vx=circ1.x-circ2.x;//Calculates velocity x
vy=circ1.y-circ2.y;//Calculates velocity y
len=Math.sqrt(vx*vx+vy*vy);//sees the length.
if (len circ1.alpha=1;//Putting the alpha to full.
trace("*Collission*");
} else {//else not.
circ1.alpha=.5;//half of the alpha.
}
}
5. agora nós faremos ele seguir o mouse

var circ2:MovieClip=new MovieClip();
var circle2r:uint=new uint(30);
circ2.graphics.beginFill(0x00FF00);
circ2.graphics.drawEllipse(-circle2r,-circle2r,circle2r*2,circle2r*2);
addChild(circ2);

até a próxima! fonte: http://boxmonster.890m.com/wordpress/?m=200811


6. o final ficaria assim:

DOWNLOAD


0

Paint em AS3

Posted by Eduardo Brito on 15:10
Hoje, vamos criar um paint em que o mouse é o lápis que desenha aonde vc arrasra, é muito fácil por isso vamos começar!

veja o resultado AQUI

1.Crie um novo documento em AS3 no flash e salve ele limpo (não faça nada) em uma pasta chamada paint (que vc vai criar), e nomeie o .fla de "paint" (nossa!).

Image and video hosting by TinyPic

2.Agora crie um arquivo actionscript e digite o seguinte código:
(explicação no action)

package {
//importando as linhas para o stage
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.events.MouseEvent;
import flash.display.MovieClip;
import flash.geom.Point;

//definindo as variáveis
public class paint extends MovieClip {
var paintStage:BitmapData=new BitmapData(550,400,false,0xFFFFFF);
var paintDisplay:Bitmap=new Bitmap(paintStage);
var drawing:Boolean=new Boolean(false);

var vx:Number=new Number(2);
var vy:Number=new Number(2);
var len:uint=new uint;
var i:uint=new uint();

var p0:Point=new Point();
var p1:Point=new Point();

//ao clicar do mouse...
public function paint() {
addChild(paintDisplay);
stage.addEventListener(MouseEvent.MOUSE_DOWN,md);
stage.addEventListener(MouseEvent.MOUSE_UP,mu);
stage.addEventListener(MouseEvent.MOUSE_MOVE,mm);
}
function md(event:MouseEvent) {
drawing=true;
p0.x=event.stageX;
p0.y=event.stageY;
p1.x=p0.x;
p1.y=p0.y;
}
function mu(event:MouseEvent) {
drawing=false;
}
//tamanho da linha, e cor
function mm(event:MouseEvent) {
if (drawing) {
p1.x=event.stageX;
p1.y=event.stageY;
paintStage.setPixel(event.stageX,event.stageY,0x000000);
vx=p1.x-p0.x;
vy=p1.y-p0.y;
len=Math.sqrt(vx*vx+vy*vy);
vx/=len;
vy/=len;
for (i=0; i paintStage.setPixel(p0.x+(vx*i),p0.y+(vy*i),0x000000);
}
p0.x=p1.x;
p0.y=p1.y;
}
}
}
}


3.agora slave o arquivo ActionScript no mesma pasta do .fla

Image and video hosting by TinyPic

4.agora coloque o frame rate em 120, e o document class "paint" como mostra a imagem a baixo:

Image and video hosting by TinyPic

Até a próxima!
fonte : http://boxmonster.890m.com/wordpress/?p=123

2

Criando um game de nave em AS3

Posted by Eduardo Brito on 11:05
Hoje, nós vamos fazer um jogo de nave clássico em ActionScript 3. eu espero que você aprenda disto! vamos comçar?

1.Faça um fundo ou simplismente faça como eu, coloque a cor preta, agora precisamos fazer nossa nave, dessa vez eu fiz uma nave legal (hehe) mais vcs podem fazer só um triângulo com a ponta apontando para cima.

Image and video hosting by TinyPic

2.Agora Trnasforme a nave em movieclip, e em coloque "mcMain" (sem aspas)

Image and video hosting by TinyPic

3. Agora crie uma nova layer chamada "actions" e cole a seguinte ação:(a explicação está na action)


var leftDown:Boolean = false;
var upDown:Boolean = false;
var rightDown:Boolean = false;
var downDown:Boolean = false;
//isso é a velocidade dp personagem
var mainSpeed:int = 5;

//adicionando movimentos ao caracte.
mcMain.addEventListener(Event.ENTER_FRAME, moveChar);
function moveChar(event:Event):void{
//checandose está se movendo
if(leftDown){
mcMain.x -= mainSpeed;
}
if(upDown){
mcMain.y -= mainSpeed;
}
if(rightDown){
mcMain.x += mainSpeed;
}
if(downDown){
mcMain.y += mainSpeed;
}
if(mcMain.x <= 0){
mcMain.x += mainSpeed;
}
if(mcMain.y <= 0){
mcMain.y += mainSpeed;
}
if(mcMain.x >= stage.stageWidth - mcMain.width){
mcMain.x -= mainSpeed;
}
if(mcMain.y >= stage.stageHeight - mcMain.height){
mcMain.y -= mainSpeed;
}
}
stage.addEventListener(KeyboardEvent.KEY_DOWN, checkKeysDown);
function checkKeysDown(event:KeyboardEvent):void{
if(event.keyCode == 37 || event.keyCode == 65){
leftDown = true;
}
if(event.keyCode == 38 || event.keyCode == 87){
upDown = true;
}
if(event.keyCode == 39 || event.keyCode == 68){
rightDown = true;
}
if(event.keyCode == 40 || event.keyCode == 83){
downDown = true;
}
}
//botões sendo apertados
stage.addEventListener(KeyboardEvent.KEY_UP, checkKeysUp);
function checkKeysUp(event:KeyboardEvent):void{
if(event.keyCode == 37 || event.keyCode == 65){
leftDown = false;
}
if(event.keyCode == 38 || event.keyCode == 87){
upDown = false;
}
if(event.keyCode == 39 || event.keyCode == 68){
rightDown = false;
}
if(event.keyCode == 40 || event.keyCode == 83){
downDown = false;
}
}



4.agora sua nave já se move sobre o stage, veja se a sua ficou ASSIM

Aguarde as outras partes do tutorial.
Até a póxima!
fonte: www.mrsunstudios.com

0

Criando um game básico de plataforma em AS3

Posted by Eduardo Brito on 16:54
Sumário: Olá, nesse tutorial ensinarei um pouco de AS3, e vem uma série de games em AS3, um jogo de plataforma básico com movimentos e pulo só para praticar.

1.Bem vamos começar criando um personagem, eu criei uma bola (êta criatividade!) (obs: Coloque o frame rate em 30, e crie seu personagem no fim do documento pois lá será o solo)

Image and video hosting by TinyPic

2.transformem ela em movie clip e coloque seu instance name de "mcMain" (sem aspas)

Image and video hosting by TinyPic

3.Agora copie o código e cole na 1° frame (é claro q no AS3 não podemos colocar no movieclip) esses códigos vão fazer nosso personagem se mover e pular:

//These variables will note which keys are down
//We don't need the up or down key just yet
//but we will later
var leftKeyDown:Boolean = false;
var upKeyDown:Boolean = false;
var rightKeyDown:Boolean = false;
var downKeyDown:Boolean = false;
//the main character's speed
var mainSpeed:Number = 7;
//whether or not the main guy is jumping
var mainJumping:Boolean = false;
//how quickly should the jump start off
var jumpSpeedLimit:int = 15;
//the current speed of the jump;
var jumpSpeed:Number = 0;

//adding a listener to mcMain which will make it move
//based on the key strokes that are down
mcMain.addEventListener(Event.ENTER_FRAME, moveChar);
function moveChar(event:Event):void{
//if certain keys are down then move the character
if(leftKeyDown){
mcMain.x -= mainSpeed;
}
if(rightKeyDown){
mcMain.x += mainSpeed;
}
if(upKeyDown || mainJumping){
mainJump();
}
}

stage.addEventListener(KeyboardEvent.KEY_DOWN, checkKeysDown);
function checkKeysDown(event:KeyboardEvent):void{
//making the booleans true based on the keycode
//WASD Keys or arrow keys
if(event.keyCode == 37 || event.keyCode == 65){
leftKeyDown = true;
}
if(event.keyCode == 38 || event.keyCode == 87){
upKeyDown = true;
}
if(event.keyCode == 39 || event.keyCode == 68){
rightKeyDown = true;
}
if(event.keyCode == 40 || event.keyCode == 83){
downKeyDown = true;
}
}
//this listener will listen for keys being released
stage.addEventListener(KeyboardEvent.KEY_UP, checkKeysUp);
function checkKeysUp(event:KeyboardEvent):void{
//making the booleans false based on the keycode
if(event.keyCode == 37 || event.keyCode == 65){
leftKeyDown = false;
}
if(event.keyCode == 38 || event.keyCode == 87){
upKeyDown = false;
}
if(event.keyCode == 39 || event.keyCode == 68){
rightKeyDown = false;
}
if(event.keyCode == 40 || event.keyCode == 83){
downKeyDown = false;
}
}

//jumping function
function mainJump():void{
//if main isn't already jumping
if(!mainJumping){
//then start jumping
mainJumping = true;
jumpSpeed = jumpSpeedLimit*-1;
mcMain.y += jumpSpeed;
} else {
//then continue jumping if already in the air
//crazy math that I won't explain
if(jumpSpeed < 0){
jumpSpeed *= 1 - jumpSpeedLimit/75;
if(jumpSpeed > -jumpSpeedLimit/5){
jumpSpeed *= -1;
}
}
if(jumpSpeed > 0 && jumpSpeed <= jumpSpeedLimit){
jumpSpeed *= 1 + jumpSpeedLimit/50;
}
mcMain.y += jumpSpeed;
//if main hits the floor, then stop jumping
//of course, we'll change this once we create the level
if(mcMain.y >= stage.stageHeight - mcMain.height){
mainJumping = false;
mcMain.y = stage.stageHeight - mcMain.height;
}
}
}


Explicação:

//jumping function
function mainJump():void{
//if main isn't already jumping
if(!mainJumping){
//then start jumping
mainJumping = true;
jumpSpeed = jumpSpeedLimit*-1;
mcMain.y += jumpSpeed;
} else {
//then continue jumping if already in the air
//crazy math that I won't explain
if(jumpSpeed < 0){
jumpSpeed *= 1 - jumpSpeedLimit/75;
if(jumpSpeed > -jumpSpeedLimit/5){
jumpSpeed *= -1;
}
}
if(jumpSpeed > 0 && jumpSpeed <= jumpSpeedLimit){
jumpSpeed *= 1 + jumpSpeedLimit/50;
}
mcMain.y += jumpSpeed;
//if main hits the floor, then stop jumping
//of course, we'll change this once we create the level
if(mcMain.y >= stage.stageHeight - mcMain.height){
mainJumping = false;
mcMain.y = stage.stageHeight - mcMain.height;
}
}
}


Este código faz o personagem pular simplismente(jump), e o começo do código faz os movimentos do personagem (key).

Até a próxima!
fonte: www.mrsunstudios.com
(continuaremos com AS3)
Opniões e dúvias, comentem.

0

Criando um jogo de Mouse

Posted by Eduardo Brito on 11:44
Súmario: veja o resultado dese jogo AQUI

1.Crie duas layersde o nome de uma AS e da outra "MC's".

Image and video hosting by TinyPic

2.Agora na layer MC's crie uma bola grande com outra na ponta, e outra bolinha pequena que será o mouse.

Image and video hosting by TinyPic

3.Converta a bola grande em MovieClip e dê o nome que quiser, no coloque exatamente isto: "mochithing" (sem aspas), agora Converta a bola pequena em MC e dê o seu de: "mousep" (sem aspas)

Image and video hosting by TinyPic



4.Agora na frame AS na 1° frame abra a janela de ações (F9) e digite a seguinte ação:





Mouse.hide();
delay=10;
_root.attachMovie("mousep","mousep",_root.getNextHighestDepth());
_root.attachMovie("mochithing","mochithing",_root.getNextHighestDepth());
mousep.onEnterFrame = function() {
this._x = _root._xmouse;
this._y = _root._ymouse;
};
mochithing.onEnterFrame = function() {
dist_x = mousep._x-this._x;
dist_y = mousep._y-this._y;
distance = Math.sqrt(dist_x*dist_x+dist_y*dist_y);
angle = Math.atan2(dist_y, dist_x);
speed = distance/delay;
xspeed = speed*Math.cos(angle);
yspeed = speed*Math.sin(angle);
this._x += xspeed;
this._y += yspeed;
this._rotation = angle*180/Math.PI
};



Obs:para seu jogo ficar mais rápido coloque 30 no frame rate

Fim! agora é só testar o jogo e se divertir!
até a próxima!
fonte: http://www.emanueleferonato.com

1

Jogo do balão - parte 2

Posted by Eduardo Brito on 12:50
Para quem perdeu a primeira parte aqui está: 1° parte
Bem, vamos continuar:
1. Agora precisamos criar um limite para o balão, quando ele colidir com o muro ele volta para seu ponto de inicio, agora crie retângulos que formem o quadro do tamanho do documento e alguns obstáculos no meio, +ou –assim:

Image and video hosting by TinyPic

2. Selecione todos os retângulos segurando “Shift” e pressione F8 converta os retângulos em movie clip, coloque seu de “wall” (sem aspas)

3. Na action da aula passada já foi adicionado o detector de colisões, então seu jogo esta pronto!
Obrigado e até a próxima!

para ver o resultado click AQUI

0

Tutorial: Jogo de balão

Posted by Eduardo Brito on 05:22
Smário:olá gente!, neste tutorial ensinarei passo-a-passo com se cria um jogo de balão, este jogo é diferente de outros jogos de balão, esse vc terá uma mangueira soltando vento, e o balão sobe, agora chega de papo, e vamos lá:

01- Crie um novo documento em flash e selecione actionscript 2.0

Image and video hosting by TinyPic

02-Agora crie um balão, ou um simples circulo

Image and video hosting by TinyPic

03-agora crie um funil parecido com este

Image and video hosting by TinyPic

04-depois de ter desenhado os dois, converta o balão em movie clip (F+8) e o nomeie de "balão", e depois do blão transforme o funil tabém, e coloque o nome de funil.

Image and video hosting by TinyPic

05- Clique no mivie clip "balão", na janela properties encontre o lugar onde se encontra "", clique lá e coloque o nome de "ball" (sem aspas).

06.faça o mesmo com o funil, só que no coloque "arrow" (sem aspas).

07. e coloque o seguinte código na 1° frame do timeline




//http://www.emanueleferonato.com
_root.attachMovie("ball", "ball", _root.getNextHighestDepth(), {_x:50, _y:50});
_root.attachMovie("wall", "wall", _root.getNextHighestDepth(), {_x:240, _y:200});
_root.attachMovie("arrow", "arrow", _root.getNextHighestDepth());
moving = false;
gravity = 0.01;
xspeed = 0;
yspeed = 0;
precision = 24;
radius = 15;
Mouse.hide();
arrow.onEnterFrame = function() {
this._x = _xmouse;
this._y = _ymouse;
dist_x = ball._x-this._x;
dist_y = ball._y-this._y;
total_dist = Math.sqrt(dist_x*dist_x+dist_y*dist_y);
if (total_dist>300) {
total_dist = 300;
}
total_dist = (300-total_dist)/500;
angle = Math.atan2(dist_y, dist_x);
this._rotation = angle*57.2957795;
};
ball.onEnterFrame = function() {
if (moving) {
dir = arrow._rotation;
xspeed += total_dist*Math.cos(dir*0.0174532925);
yspeed += total_dist*Math.sin(dir*0.0174532925);
}
yspeed += gravity;
this._x += xspeed;
this._y += yspeed;
xspeed *= 0.99;
yspeed *= 0.99;
for (x=1; x spot_x = this._x+radius*Math.sin(x*360/precision*0.0174532925);
spot_y = this._y-radius*Math.cos(x*360/precision*0.0174532925);
if (wall.hitTest(spot_x, spot_y, true)) {
xspeed = 0;
yspeed = 0;
this._x = 50;
this._y = 50;
}
}
};
_root.onMouseDown = function() {
moving = true;
};
_root.onMouseUp = function() {
moving = false;
};



08. aguardem a parte 2 que é a criação do muro mas por enquanto já da pra se divertir com ele!
Até a próxima!
fonte: http://www.emanueleferonato.com

0

.:Extras:.

Posted by Eduardo Brito on 08:00
Como programar um circulo em AS3:(explicação no código)

1.Abra um novo arquivo flash em AS3 e não desenhe nada, agora na 1.° frame coloque o seguinte código:

//dedinindo uma nova vareável que será o circulo
var newCircle:Shape = new Shape();
//Agora damos cor à o circulo
//eu escolhi a cor vermelha mas vc pode mudar
newCircle.graphics.beginFill(0xFF0000);
//agora darei nome ao circulo
//o primeiro valor (100) é o valor de x
// o segundo valor (100) é o valor de y
//e o valor(50), é o radio do circulo
//o x e o y são as medidas des de o centro do circulo
//Aqui o circulo fica do lado esquerdo da tela
newCircle.graphics.drawCircle(100,100,50);
//estamos quase terminando...
//usa a cor vermelha....
newCircle.graphics.endFill();
//e adiciona o circulo ao stage! Pronto!
addChild(newCircle);

0

Linke-me:

Posted by Eduardo Brito on 07:00
seja nosso parceiro, publique o banner em seu site ou blog!

Link-Me






Copyright © 2009 .:EBL Design:. All rights reserved. Theme by Laptop Geek. | Bloggerized by FalconHive. Distribuído por Templates