Guest User

Untitled

a guest
Jun 23rd, 2018
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //Friction Switch \o/
  2. switch(ins=instance_place(x,y,obj_grass_flat).object_index)
  3. {
  4.     case obj_grass_flat:
  5.         var_default_friction=1;
  6.         break;
  7.        
  8.     case obj_2:
  9.         var_default_friction=0;
  10.         var_plat_speed=ins.hspeed;
  11.         break;
  12. }
  13.  
  14. //Reset image speed
  15. if (sprite_index != spr_greg_jump_R) image_speed = 0.3;
  16.  
  17. //Maximum vspeed
  18. vspeed = min(vspeed, 6);
  19.  
  20. // Movement
  21. var_test = (k_right - k_left);
  22.  
  23. if (var_test == 0)
  24. {
  25.     sprite_index = spr_greg_idle_R;
  26.     if (!var_jumping) friction = (friction <= var_default_friction-var_increment_friction) ? (friction + var_increment_friction) : var_default_friction;
  27. }
  28. else
  29. {
  30.     var_facing = (-(var_test - 1)/2);
  31.     friction = (friction >= var_increment_friction) ? (friction - var_increment_friction) : 0;
  32.    
  33.     //If going right or left increase / decrease hspeed accordingly
  34.     if (var_facing) hspeed += (hspeed >= -var_max_hspeed) ? -var_increment_hspeed : var_plat_speed;
  35.     else hspeed += (hspeed <= var_max_hspeed) ? var_increment_hspeed : var_plat_speed;
  36. }
  37.  
  38. //Run
  39. var_max_hspeed = (k_z || (var_jumping && abs(hspeed) > var_default_hspeed)) ? (var_defaut_hspeed*2) : var_defaut_hspeed;
  40.  
  41. // Jumping
  42. if (k_up && !var_jumping)
  43. {
  44.     vspeed = -11;
  45.     gravity = var_default_gravity;
  46.     var_jumping = true;
  47.     friction = 0;
  48. }
  49.  
  50. //Limit jump height based on how long you hold key
  51. if (vspeed < 0 && k_up_released) vspeed *= 0.5;
  52.  
  53. //Landing
  54. if (position_meeting(x, y, obj_grass_flat))
  55. {
  56.     if (vspeed > 0)
  57.     {
  58.         var_jumping = false;
  59.         vspeed = 0;
  60.         gravity = 0;
  61.         y = instance_place(x, y, obj_grass_flat).y;
  62.     }
  63. }
  64. else gravity = var_default_gravity;
  65.  
  66. if (position_meeting(x, y, obj_grass_flat) && abs(hspeed) > 0) sprite_index = (k_z) ? spr_greg_run_R : spr_greg_walk_R;
  67. else if (var_jumping && vspeed < 0) sprite_index = spr_greg_jump_R;
  68. else if (vspeed > 0) sprite_index = spr_greg_fall_R;
Add Comment
Please, Sign In to add comment