SnowglobeExample.hx 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. package flixelExamples;
  2. import spine.Skin;
  3. import flixel.ui.FlxButton;
  4. import flixel.FlxG;
  5. import spine.flixel.SkeletonSprite;
  6. import spine.flixel.FlixelTextureLoader;
  7. import flixel.FlxState;
  8. import openfl.utils.Assets;
  9. import spine.SkeletonData;
  10. import spine.animation.AnimationStateData;
  11. import spine.atlas.TextureAtlas;
  12. class SnowglobeExample extends FlxState {
  13. var loadBinary = false;
  14. override public function create():Void {
  15. FlxG.cameras.bgColor = 0xffa1b2b0;
  16. var button = new FlxButton(0, 0, "Next scene", () -> FlxG.switchState(() -> new CloudPotExample()));
  17. button.setPosition(FlxG.width * .75, FlxG.height / 10);
  18. add(button);
  19. var atlas = new TextureAtlas(Assets.getText("assets/snowglobe.atlas"), new FlixelTextureLoader("assets/snowglobe.atlas"));
  20. var data = SkeletonData.from(loadBinary ? Assets.getBytes("assets/snowglobe-pro.skel") : Assets.getText("assets/snowglobe-pro.json"), atlas, .125);
  21. var animationStateData = new AnimationStateData(data);
  22. animationStateData.defaultMix = 0.25;
  23. var skeletonSprite = new SkeletonSprite(data, animationStateData);
  24. skeletonSprite.screenCenter();
  25. skeletonSprite.state.setAnimationByName(0, "shake", true);
  26. add(skeletonSprite);
  27. super.create();
  28. }
  29. }