Como fazer um RPG utilizando "Flash" no "AS3"

Escrito por mark stansberry | Traduzido por francisco de castro
  • Compartilhar
  • Tweetar
  • Compartilhar
  • Pin
  • E-mail
Como fazer um RPG utilizando "Flash" no "AS3"
Crie o personagem de uma garçonete para treinar outras garçonetes (Jupiterimages/Goodshoot/Getty Images)

Nos jogos de RPG (Role playing games, em português: "Jogos de interpretação de personagens"), os jogadores assumem o papel de um personagem fictício, como um empregado, que pode ser usado para treinamento de funcionários e aconselhamento de carreira. Com a linguagem de programação Flash ActionScript 3 (AS3), estes jogos podem ser customizados para necessidades específicas. Com comandos de programação "AS3" em interface baseada no design gráfico do "Flash", pode-se ter todas as ferramentas necessárias para fazer um personagem andar, falar, trabalhar, cantar e muito mais. Apesar de não necessitar de muita codificação para se fazer um jogo simples desse tipo, fazer um RPG com muitas animações requer a criação de muitas ilustrações, sons e vídeos.

Nível de dificuldade:
Moderado

Outras pessoas estão lendo

O que você precisa?

  • Versões do Adobe Flash Professional CS3, CS4 ou CS5

Lista completaMinimizar

Instruções

  1. 1

    Importe os gráficos do personagem. Estes incluem a garçonete e um cliente. Use a opção "Import" (Importar) no menu "File" (Arquivo) para importar os arquivos gráficos para o "Flash stage" (Área de trabalho do Flash).

  2. 2

    Use a opção "Convert to Symbol" (Converter para símbolo) no menu "Modify" (Modificar) para converter o gráfico da garçonete e do cliente em clipes de vídeo. Atribua para o símbolo da garçonete um nome de classe "waitress" (garçonete) e para o cliente um nome de classe "customer" (cliente). Escreva o nome da classe no campo de texto "Class" (Classe) na caixa de diálogo "Convert to Symbol" que aparecerá depois que essa opção for selecionada.

  3. 3

    Abra o editor "ActionScript 3" e digite o código abaixo para colocar uma caixa de texto que será utilizada para exibir as mensagens da garçonete para os clientes e as mensagens da garçonete gerente.

    var waitressMessage: TextField = new TextField(); waitressMessage.x = 100; waitressMessage.y = 100; waitressMessage.width = 200; waitressMessage.text = "Waiting for a customer" waitressMessage.multiline = true; waitressMessage.wordWrap = true; addChild(waitressMessage);

    Esse código configura um campo de texto, com largura de 200 pixels e localizado na coordenada (100, 200), que mostrará múltiplas mensagens. O método "addChild" é usado para alocar o campo de texto no "Flash stage".

  4. 4

    Escreva na linha seguinte do editor AS3 o código para criar uma instância do gráfico do cliente e da garçonete.

    var customer1:customer = new customer(); customer1.x = 0; customer1.y = 300; addChild(customer1);

    var waitress1:waitress = new waitress(); waitress1.x = 400; waitress1.y = 400; addChild(waitress);

  5. 5

    Continuando na linha seguinte, escreva o código que moverá o cliente pelo "Flash stage" toda vez que o Flash mostrar uma nova janela de animação e aparecer uma mensagem no campo de texto caso a garçonete falhe ao tentar conseguir a atenção dos clientes.

    customer1.addEventListener(Event.ENTER_FRAME, move_fn);

    function move_fn(moveevent:Event): void {customer1.x = customer1.x +1; if (customer1.x > 400) {waitressMessage.text = "The customer just walked out the door"} };

    O método "addEventListener" executa o código da função chamada "move_fn" toda vez que o "Flash" mostrar uma nova janela. O cliente é movido um pixel para direita sempre que isso ocorrer. Se ele se mover por mais de 400 pixels, a mensgem "The customer just walked out the door" (O cliente acabou de sair do estabelecimento) é mostrada.

  6. 6

    Escreva o código para controlar os movimentos da garçonete. Quando as setas esqueda, direita, baixo e cima do teclado forem pressionadas, ela se moverá na direção correspondente.

    stage.addEventListener(KeyboardEvent.KEY_DOWN, whichKey) function whichKey(event:KeyboardEvent): void { if (event.keyCode == Keyboard.LEFT){waitress.x = waitress.x - 5}; if (event.keyCode == Keyboard.RIGHT){waitress.x = waitress.x + 5}; if (event.keyCode == Keyboard.UP){waitress.y = waitress.y - 5}; if (event.keyCode == Keyboard.DOWN){waitress.y = waitress.y + 5}; if (waitress1.x > customer1.x + 10 && waitress.y < customer1.y) {customer1.removeEventListener (Event.ENTER_FRAME, move_fn); waitressMessage.text = "Would you like to be seated?";}

    };

    A declaração condicional do AS3 (if then)

    if (waitress1.x > customer1.x + 10 && waitress.y < customer1.y) {customer1.removeEventListener (Event.ENTER_FRAME, move_fn); waitressMessage.text = "Would you like to be seated?";}

    detectará quando a garçonete está a mais de 10 pixels para direita do cliente (customer1.x) e posicionada acima dele (customer1.y). Quando ela está nesse intervalo, o "event listener" do "customer1" (cliente1) será removido, o que prevenirá o movimento do cliente quando um novo quadro de animação for exibida.

  7. 7

    Clique em "Test Movie" (Testar o filme) no menu "Control" (Controle). Use as setas cima, baixo, direita e esqueda para posicionar a garçonete. Observe que, quando ela está a direita e acima do cliente, a mensagem "Would you like to be seated?" (Você gostaria de um lugar para sentar?) é mostrada. Se ela se mover para fora do lugar, a mensagem "You missed a customer, the manager would like to speak with you" (Você perdeu um cliente, o gerente gostaria de falar com você) será exibida.

Não perca

Filtro:
  • Geral
  • Artigos
  • Slides
  • Vídeos
Mostrar:
  • Mais relevantes
  • Mais lidos
  • Mais recentes

Nenhum artigo disponível

Nenhum slide disponível

Nenhum vídeo disponível