JOGO PLATAFORMA SIMPLES COM INIMIGO
// COMO FAÇO PARA O FOGO CAIR DA PLATAFORMA TILES?
import flash.display.MovieClip; // Importar algumas bibliotecas
import flash.events.Event;
import flash.events.KeyboardEvent;
const gravity:int = 1;
const max_speed:int = 8;
const walkspeed:int = 4;
const jumpspeed:int = 25;
const start_x:int = 50;
const start_y:int = 50;
var y_speed:int;
var x_speed:int;
var left:Boolean;
var up:Boolean;
var right:Boolean;
var space:Boolean;
var can_jump:Boolean;
var level:Array = new Array();
var tiles:Array = new Array();
var Map_data = new Data; // Cria uma versão do Data.as
var Hero:hero = new hero;
var Fire:fire = new fire; // Adiciona fogo
BuildMap();
create_hero();
addEventListener(Event.ENTER_FRAME, main);
stage.addEventListener(KeyboardEvent.KEY_DOWN, key_down);
stage.addEventListener(KeyboardEvent.KEY_UP, key_up);
function main(event:Event){
Atualizar_heroi();
Atualizar_Fire();
}
function key_down(event:KeyboardEvent){
if(event.keyCode == 37){
left = true;
}
if(event.keyCode == 38){
up = true;
}
if(event.keyCode == 39){
right = true;
}
}
function key_up(event:KeyboardEvent){
if(event.keyCode == 37){
left = false;
}
if(event.keyCode == 38){
up = false;
}
if(event.keyCode == 39){
right = false;
}
}
function create_hero(){
addChild(Hero);
Hero.x = start_x;
Hero.y = start_y;
///////////////
addChild(Fire);
Fire.x = 1074;
Fire.y = 95;
///////////////
}
function Atualizar_heroi(){ // Coloque na tela
y_speed += gravity;
if(left){
x_speed -= walkspeed;
}
if(right){
x_speed += walkspeed;
}
if(up && can_jump){
y_speed -= jumpspeed;
can_jump = false;
}
if(y_speed > max_speed){
y_speed = max_speed;
}
Hero.y += y_speed;
Hero.x += x_speed;
// MANTEM O PERSONAGEM NO CHÃO
for(var t:int; t < tiles.length; t++){
while(tiles
Hero.y -= 1;
if(y_speed >= 0){ // Minha tentativa de não deixá-lo saltar de estado sem mudar o mais quente
can_jump = true;
}
}
while(tiles
Hero.y += 1;
y_speed = 0;
}
while(tiles
Hero.x -= 1;
}
while(tiles
Hero.x += 1;
}
}
x_speed = 0;
}
function Atualizar_Fire(){ // Coloque na tela
Fire.x -= 2;// Fogo
trace(Fire.x)
// MANTEM O PERSONAGEM NO CHÃO
for(var t:int; t < tiles.length; t++){
while(tiles
/*while(tiles
Hero.x += 1;
}*/
Fire.y -= 2;
}
}
//Hero.y -= 2;
x_speed = 0;
}
function BuildMap(){
Map_data.Setup(); // Dados de configuração do arquivo externo
level = Map_data.level1; // Obtém dados do arquivo externo
for(var t = 0; t < level.length; t++){
for(var u = 0; u < level
if(level
var new_tile:platform_tile = new platform_tile; // Do que construir um bloco
addChild(new_tile); // Coloque na tela
new_tile.gotoAndStop(1);
new_tile.x = u * 60;
new_tile.y = t * 20;
tiles.push(new_tile); // Colocá-lo em uma matriz
}
}
}
}
