Guest User

player

a guest
Jun 30th, 2021
20
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1. package;
  2.  
  3. import flixel.FlxG;
  4. import flixel.FlxSprite;
  5. import flixel.util.FlxColor;
  6. import flixel.math.FlxPoint;
  7. import flixel.FlxObject;
  8. import flixel.tweens.FlxTween;
  9. import flixel.tweens.FlxEase;
  10.  
  11. class Player extends FlxSprite
  12. {
  13. static inline var SPEED:Float = 200;
  14.  
  15. override function update(elapsed:Float)
  16. {
  17. updatemovement();
  18. super.update(elapsed);
  19. }
  20.  
  21. public function new(nbj)
  22. {
  23. super(x, y);
  24. loadGraphic(AssetPaths.player__png, true, 16, 16);
  25. setFacingFlip(FlxObject.LEFT, false, false);
  26. setFacingFlip(FlxObject.RIGHT, true, false);
  27. animation.add("lr", [3, 4, 3, 5], 6, false);
  28. animation.add("u", [6, 7, 6, 8], 6, false);
  29. animation.add("d", [0, 1, 0, 2], 6, false);
  30. drag.x = drag.y = 1600;
  31. setSize(8, 8);
  32. offset.set(4, 4);
  33.  
  34. }
  35.  
  36. function updatemovement()
  37. {
  38. var up:Bool = false;
  39. var down:Bool = false;
  40. var left:Bool = false;
  41. var right:Bool = false;
  42. up = FlxG.keys.anyPressed([UP, W]);
  43. down = FlxG.keys.anyPressed([DOWN, S]);
  44. left = FlxG.keys.anyPressed([LEFT, A]);
  45. right = FlxG.keys.anyPressed([RIGHT, D]);
  46. if (up && down)
  47. up = down = false;
  48. if (left && right)
  49. left = right = false;
  50.  
  51. if (up || down || left || right)
  52. {
  53. var newangle:Float = 0;
  54. if (up)
  55. {
  56. newangle = -90;
  57. if (left)
  58. newangle -= 45;
  59. else if (right)
  60. newangle += 45;
  61. }
  62. else if (down)
  63. {
  64. newangle = 90;
  65. if (left)
  66. newangle += 45;
  67. else if (right)
  68. newangle -= 45;
  69. }
  70. else if (left)
  71. newangle = 180;
  72. else if (right)
  73. newangle = 0;
  74. {
  75.  
  76. velocity.set(SPEED, 0);
  77. velocity.rotate(FlxPoint.weak(0, 0), newangle);
  78. }
  79.  
  80. if ((velocity.x != 0 || velocity.y != 0) && touching == FlxObject.NONE)
  81. {
  82. switch (facing)
  83. {
  84. case FlxObject.LEFT, FlxObject.RIGHT:
  85. animation.play("lr");
  86. case FlxObject.UP:
  87. animation.play("u");
  88. case FlxObject.DOWN:
  89. animation.play("d");
  90. }
  91. }
  92. }
  93. }
  94.  
  95. }
  96.  
Advertisement
Add Comment
Please, Sign In to add comment