I'm currently working on a new platforming game and there's something wrong with my jumping and gravity script.
//scr_ACTIONS script:
//Imagespeed and Gravity setup
//Walking and Running
//Attacking
//Jumping
//Crouching
//Imagespeeds
standspeed = argument0
walkspeed = argument1
runspeed = argument2
attackspeed = argument3
kickspeed = argument4
//Gravity
if place_free(x,y+1)
{
gravity = 0.65
gravity_direction = 270
}
else
{gravity = 0}
if vspeed > 10
{vspeed = 10}
if hit = 2 //if taking damage
{exit}
else
{
-
-
//JUMPING
if place_free(x,y+1)
{
if sprite_index = Pjumps || sprite_index = Pjumpm || sprite_index = Pfall || sprite_index = Pattack || sprite_index = Pairkick
{
sprite_index = sprite_index
exit
}
if (sprite_index != Pjumps || sprite_index != Pjumpm || sprite_index != Pfall || sprite_index != Pattack || sprite_index != Pairkick)
{
if jumpPressed = 0
{
sprite_index = Pfall
image_speed = 0.5
if image_index > 0 && image_index != 1
{image_index = 1}
}
if jumpPressed = 1
{
if sprite_index = Pjumps || sprite_index = Pjumpm
{
if vspeed < -1
{if image_index > 0
{image_index = 0}
}
if (vspeed > -1 && vspeed < 0)
{if image_index > 2
{image_index = 2}
}
if vspeed > 0
{if image_index >= 4
{image_index = 4}
}
}
}
}
if place_free(x,y+1) && (sprite_index != Pjumps || sprite_index != Pjumpm || sprite_index != Pfall || sprite_index != Pattack || sprite_index != Pairkick)
{if vspeed < 0
{sprite_index = Pjumpm}
if vspeed >= 0
{sprite_index = Pfall}
}
}
if keyboard_check_pressed(b_jump)
{
if (!place_free(x,y+1))
{if sprite_index = Pattack
{exit}
if sprite_index = Pstand
{
vspeed = -8
sprite_index = Pjumps
jumpPressed = 1
image_xscale = image_xscale
}
if sprite_index = Pwalk || sprite_index = Prun
{
vspeed = -8
sprite_index = Pjumpm
jumpPressed = 1
image_xscale = image_xscale
}
}
}
if keyboard_check_released(b_jump)
{
if vspeed < 0
{
vspeed /= 1.75
}
}
if !place_free(x,y+1)
{
if sprite_index = Pjumps || sprite_index = Pjumpm || sprite_index = Pfall ||sprite_index = Pairkick
{
if !keyboard_check_pressed(b_left) || !keyboard_check_pressed(b_right)
{
sprite_index = Pstand
image_speed = standspeed
hspeed = 0
jumpPressed = 0
if canAttack = 0
{canAttack = 1}
}
else
{
if runPressed = 0
{
sprite_index = Pwalk
image_speed = walkspeed
if canAttack = 0
{canAttack = 1}
}
if runPressed = 1
{
sprite_index = Prun
image_speed = runspeed
if canAttack = 0
{canAttack = 1}
}
}
}
}
-
}This is my script with only gravity and jumping parts included. Whenever my character jumps, he jumps only for a couple of pixels and starts falling really slowly. Also the jumping sprite isn't correct; whenever jumping only the falling sprite is shown.
-Very Melon



Find content
Male
