Ola pessoal,Me perdoem o sumico, estive ocupado com dois projetos nas ultimas semanas.Semana que vem voltaremos com nossa programacao normal.. e quem sabe alguns videos!! Em "O Basico", nos incorporamos uma imagem e atribuimos ela a uma Entity como objeto de imagem. Porem, a Classe Image e para imagens de um unico frame, este tutorial ira lhe mostrar como criar graficos animados usando a Classe Spritemap.CRIANDO UM SPRITEMAPA primeira coisa que devemos fazer e criar um objeto spritemap para nosso Entity, da mesma forma como criamos uma Image anteriormente. Por examplo, Eu irei animar este mapa de sprites:O tamanho total do mapa de sprites e 288x64 pixels, mas cada frame individual tem 48x32 pixels, que e o que precisamos saber para criar nosso objeto spritemap.Entao para este exemplo, vamos criar a classe Player e encorporar o PNG:package{ import net.flashpunk.Entity; public class Player extends Entity { [Embed(source = 'assets/swordguy.png')] private const SWORDGUY:Class; public function Player() { } }}Proximo passo, iremos criar um objeto Spritemap e atribuir ele a uma variavel:package{ import net.flashpunk.Entity; import net.flashpunk.graphics.Spritemap; public class Player extends Entity { [Embed(source = 'assets/swordguy.png')] private const SWORDGUY:Class; public var sprSwordguy:Spritemap = new Spritemap(SWORDGUY, 48, 32); public function Player() { } }}O que fizemos acima? Criamos um objeto e atribuimos o arquivo de imagem a ele. Mas como um Spritemap nao mostra somente uma imagem, mas sim frames individuais de um mapa de sprites, ele precisa saber o tamanho deste frame. Entao passamos a altura e largura tambem.CRIANDO ANIMACOESAgora, nos queremos atribuir uma animacao para nosso Spritemap. Entao nossso mapa de sprites tem 2 animacoes, uma animacao parada e uma correndo, ambos tem o tamanho de 6 frames. Adicionamos animacoes usando a funcao add(), assim:package{ import net.flashpunk.Entity; import net.flashpunk.graphics.Spritemap; public class Player extends Entity { [Embed(source = 'assets/swordguy.png')] private const SWORDGUY:Class; public var sprSwordguy:Spritemap = new Spritemap(SWORDGUY, 48, 32); public function Player() { sprSwordguy.add("stand", [0, 1, 2, 3, 4, 5], 20, true); sprSwordguy.add("run", [6, 7, 8, 9, 10, 11], 20, true); } }}Aqui, eu criei duas animacoes, "stand" e "run". A funcao add() recebe 4 parametros:Nome : Name (uma string)Frames : Frames (um array de frames para rodar)Velocidade : Speed (frames por segundo)Repete : Looping (verdadeiro ou falso)Damos nomes para nossas animacoes para podermos acessa-las mais tarde, quando querermos rodar ou trocar uma animacao. Entao, atribuimos um conjunto de frames. O frame superior esquerdo de um mapa de sprites tem a posicao 0, e continua contando da esquerda para direita e de cima para baixo.O terceiro valor e a velocidade da animacao, em frames por segundo. Eu escolhi 20 para estas animacoes em particular.E Finalmente, com o ultimo parametro sabemos se voce quer ou nao que sua animacao repita.Nao esqueca de atribuir seu Spritemap para sua Entity.package{ import net.flashpunk.Entity; import net.flashpunk.graphics.Spritemap; public class Player extends Entity { [Embed(source = 'assets/swordguy.png')] private const SWORDGUY:Class; public var sprSwordguy:Spritemap = new Spritemap(SWORDGUY, 48, 32); public function Player() { sprSwordguy.add("stand", [0, 1, 2, 3, 4, 5], 20, true); sprSwordguy.add("run", [6, 7, 8, 9, 10, 11], 20, true); graphic = sprSwordguy; } }}RODANDO ANIMACOESAgora que ja criamos nossas preciosas animacoes,