1
0

Step_0.gml 529 B

123456789101112131415161718192021222324252627282930
  1. image_angle++;
  2. y_spd += global.g;
  3. if place_meeting(x, y + y_spd, oParentSolid)
  4. {
  5. while !place_meeting(x, y + sign(y_spd), oParentSolid)
  6. y += sign(y_spd);
  7. if y_spd > 2
  8. {
  9. y_spd *= -restitution;
  10. x_spd *= restitution;
  11. } // 落地反弹
  12. else
  13. {
  14. y_spd = 0;
  15. x_spd = 0;
  16. }
  17. }
  18. y += y_spd;
  19. if place_meeting(x + x_spd, y, oParentSolid)
  20. {
  21. while !place_meeting(x + sign(x_spd), y, oParentSolid)
  22. x += sign(x_spd);
  23. x_spd *= restitution; // 撞墙反弹
  24. }
  25. x += x_spd;
  26. pickup_timer--;