A veces complican demasiado lo sencillo...
Un ejemplo básico en pseudocódigo.
Código PHP:
variable entera jumper = 7; // Con este se inicia, puede ser más o menos
si (jumper < 0 && presionandoSalto) jugador.velocidadY += jumper--;
// *persionandoSalto es la tecla de brinco.
// Si jumper aun es mayor que 0, se suma a la velocidadY.
jugador.velocidadY--; // Gravedad
jugador.y -= jugador.velocidadY // Se mueve el personaje
si (hitTest(suelo)){ // Al tocar el suelo
jugador.velocidadY = 0; // Toca suelo, deja de caer.
jugador.Y = suelo.Y - jugador.Altura; // Se pone el jugador al ras del suelo.
jumper = 7; // Regresas la habilidad de brincar a tu personaje.
}
Eso sería básicamente el código de un juego de plataformas básico. Caminar a los lados es como en los demás juegos, supondré que eso ya sabes hacerlo. Si tienes problemas para adaptar el pseudocódigo, seguro podremos ayudarte con tus dudas.
Suerte
Edito: Perdona si no puedo ayudarte a adaptarlo a AS2, estoy más acostumbrado a AS3. Suerte