Animation Properties - Floogen/FashionSense GitHub Wiki

Property Required Description Default
Frame 1 true Determines which sprite (horizontally) to use for the appearance.
This property starts at 0, which would be the first sprite.
N/A
Light false If given, allows the appearance to give off a custom light.
See See this page for more details.
false
EndWhenFarmerFrameUpdates false When true this animation will ignore the Duration property and immediately stop (and go to the next frame) when the player's farmer sprite updates.

The farmer's sprite updates when performing animations such as walking (each frame change will trigger this property).
See the section below for more details.
false
OverrideStartingIndex false When true the animation will start from this point onward.
It will continue to do this until its Conditions are false or the player changes direction / movement state
false
Duration false Determines how long this section plays in milliseconds.
This can utilize the random function.
1000
Conditions false If given, this section will only play if the required conditions evaluate true.
See this page for more details.
null
  1. The sprite displayed is based off the following formula: StartingPosition + SpriteSize * Frame.

 

Animation Types

Fashion Sense has three different types of animations available:

  • UniformAnimation
  • IdleAnimation
  • MovementAnimation

IdleAnimation

IdleAnimation is an animation that plays while the player is not moving. Can be used in conjunction with MovementAnimation.

MovementAnimation

MovementAnimation is an animation that plays while the player is moving. Can be used in conjunction with IdleAnimation.

UniformAnimation

UniformAnimation is an animation that always plays, regardless if the player is moving or not.

Note: Fashion Sense will ignore UniformAnimation if IdleAnimation or MovementAnimation is given.

 

EndWhenFarmerFrameUpdates Property

This property causes the current frame to end when the farmer's sprite updates (such as when the farmer uses their tool or walks forward). This is especially useful when creating sleeves or pants pack, as it allows the framework to determine when to update the sprite instead of relying on a static duration.

Note: The Duration property is ignored when using this property.

Additional Note: If the farmer's sprite doesn't update (such as when riding a horse), the frame will play indefinitely until the farmer's sprite updates again (such as when dismounting).

 

AppearanceSyncing Property

This property allows for syncing your Fashion Sense appearance with a different appearance (such as syncing shoes to pants), causing both to animate at the same time.

For more details, see the Appearance Syncing page.

 

Example Hairstyle Animation

{
  "Name": "Short Hair With Curl",
  "FrontHair": {
    "StartingPosition": {
      "X": 0,
      "Y": 0
    },
    "HeadPosition": {
      "X": 0,
      "Y": 0
    },
    "HairSize": {
      "Width": 16,
      "Length": 16
    },
    "IdleAnimation": [
      {
        "Frame": 0,
        "Duration": 5000
      },
      {
        "Frame": 1,
        "Duration": 250
      },
      {
        "Frame": 2,
        "Duration": 250
      },
      {
        "Frame": 3,
        "Duration": 250
      },
      {
        "Frame": 4,
        "Duration": 250
      }
    ]
  }
}
⚠️ **GitHub.com Fallback** ⚠️