Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /// @description Control the player
- // Initialize control variables
- key_left = keyboard_check(ord("A"));
- key_right = keyboard_check(ord("D"));
- key_jump = keyboard_check_pressed(vk_space);
- // Check for ground
- if (place_meeting(x, y+1, o_wall))
- {
- {
- vspd = 0;
- }
- // Jumping
- if (key_jump)
- {
- vspd = -jspd;
- }
- }
- else
- {
- // Gravity
- if (vspd < 10)
- {
- vspd += grav;
- }
- }
- // Move left
- if (key_left)
- {
- hspd = -spd;
- }
- // Move right
- if (key_right)
- {
- hspd = spd;
- }
- // Horizontal collisions
- if (place_meeting(x+hspd, y, o_wall))
- {
- while (!place_meeting(x+sign(hspd), y, o_wall))
- {
- x += sign(hspd);
- }
- hspd = 0;
- }
- // Move horizontally
- x += hspd;
- // Vertical collisions
- if (place_meeting(x, y+vspd, o_wall))
- {
- while (!place_meeting(x, y+sign(vspd), o_wall))
- {
- y += sign(vspd);
- }
- vspd = 0;
- }
- // Move vertically
- y += vspd;
- // Idle
- if (!key_left) && (!key_right)
- {
- hspd = 0;
- }
Add Comment
Please, Sign In to add comment