Skip to content

Instantly share code, notes, and snippets.

@Olbergx
Created May 30, 2019 09:07
Show Gist options
  • Save Olbergx/42969287438690602553149c4f607dc6 to your computer and use it in GitHub Desktop.
Save Olbergx/42969287438690602553149c4f607dc6 to your computer and use it in GitHub Desktop.
import flash.events.MouseEvent;
var start_x:int = 50;
var start_y:int = 150;
var grav:Number = 0;
var gravity:Number = 2;
var speed:Number = 3;
var maxJump:Number = -25;
var touchingGround:Boolean = false;
var list_platforms: Array = new Array();
var list_coins: Array = new Array();
var left_key_down: Boolean = false;
var right_key_down: Boolean = false;
var jump_key_down: Boolean = false;
moving_platform.moving = true;
moving_platform.start_y = moving_platform.y;
moving_platform.sp = 1.0;
char.platform = null;
addEventListener( Event.ENTER_FRAME, enter_frame );
stage.addEventListener( KeyboardEvent.KEY_DOWN, on_keydown );
stage.addEventListener( KeyboardEvent.KEY_UP, on_keyup );
function enter_frame ( e: Event ) : void {
char.y += grav;
grav += gravity;
for ( var i : int = 0; i < list_platforms.length; i++ ) {
var platform: MovieClip = list_platforms[ i ];
if (platform.moving){
platform.y += platform.sp;
if (char.platform == platform){
char.y += platform.sp;
}
if (platform.y>=platform.start_y+50 || platform.y<=platform.start_y-50){
platform.sp=platform.sp*-1;
}
}
if(platform.hitTestPoint( char.x-15, char.y ) || platform.hitTestPoint( char.x+15, char.y )){
char.platform = platform;
char.y = platform.y;
grav = 0;
touchingGround = true;
}
else{
touchingGround = false;
}
if (jump_key_down && touchingGround) {
grav = maxJump;
}
if (platform.hitTestPoint(char.x, char.y - (char.height))) {
grav = 3;
}
}
if (right_key_down) {
char.x += speed;
}
if (left_key_down) {
char.x -= speed;
}
for (i = 0; i < list_coins.length; i++) {
var coin : MovieClip = list_coins[ i ];
if (coin.hitTestObject(char)){
removeChild(coin);
list_coins.splice(i,1);
}
}
if (char.y > 450) {
char.x = start_x;
char.y = start_y;
grav = 0;
}
}
function on_keydown( e : KeyboardEvent ) : void {
//LEFT Key
if (e.keyCode == 37) {
left_key_down = true;
}
//RIGHT Key
else if (e.keyCode == 39) {
right_key_down = true;
}
//Up Key
else if (e.keyCode == 38 || e.keyCode == 32) {
jump_key_down = true;
}
}
function on_keyup( e : KeyboardEvent ) : void {
//LEFT Key
if (e.keyCode == 37) {
left_key_down = false;
}
//RIGHT Key
else if (e.keyCode == 39) {
right_key_down = false;
}
//Up Key
else if (e.keyCode == 38 || e.keyCode == 32) {
jump_key_down = false;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment