Skip to content

Class: StoryboardAnimation ​

Defined in: src/beatmap/storyboard/elements.ts:138

ts
import { FileRef, StoryboardAnimation, LoopType } from 'osu-files'

const animation = new StoryboardAnimation(
  new FileRef('animation.png', { hash: 'a'.repeat(64) }),
  4,
  80,
  undefined,
  undefined,
  LoopType.LoopForever,
)

return { path: animation.path, frames: animation.frameCount }

Extends ​

Constructors ​

new StoryboardAnimation(fileRef, frameCount, frameDelay, origin?, initialPosition?, loopType?, source?): StoryboardAnimation

Defined in: src/beatmap/storyboard/elements.ts:143

Parameters ​

ParameterTypeDefault value
fileRefFileRefundefined
frameCountnumberundefined
frameDelaynumberundefined
originAnchorAnchor.Centre
initialPosition?Vec2undefined
loopType?LoopTypeLoopType.LoopForever
source?StoryboardElementSourceundefined

Returns ​

StoryboardAnimation

Overrides ​

StoryboardSprite.constructor

ts
import { FileRef, StoryboardAnimation, LoopType } from 'osu-files'

const animation = new StoryboardAnimation(
  new FileRef('animation.png', { hash: 'a'.repeat(64) }),
  4,
  80,
  undefined,
  undefined,
  LoopType.LoopForever,
)

return { path: animation.path, frames: animation.frameCount }

Properties ​

frameCount ​

frameCount: number

Defined in: src/beatmap/storyboard/elements.ts:139


frameDelay ​

frameDelay: number

Defined in: src/beatmap/storyboard/elements.ts:140


initialPosition ​

initialPosition: Vec2

Defined in: src/beatmap/storyboard/elements.ts:12

Inherited from ​

StoryboardSprite.initialPosition


loopingGroups ​

loopingGroups: StoryboardLoopingGroup[] = []

Defined in: src/beatmap/storyboard/elements.ts:14

Inherited from ​

StoryboardSprite.loopingGroups


source ​

source: StoryboardElementSource = 'beatmap'

Defined in: src/beatmap/storyboard/elements.ts:9

Inherited from ​

StoryboardSprite.source


triggerGroups ​

triggerGroups: StoryboardTriggerGroup[] = []

Defined in: src/beatmap/storyboard/elements.ts:15

Inherited from ​

StoryboardSprite.triggerGroups

Accessors ​

endTime ​

get endTime(): number | undefined

Defined in: src/beatmap/storyboard/elements.ts:40

Returns ​

number | undefined

Inherited from ​

StoryboardSprite.endTime

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addScale(Easing.Out, 0, 1000, 1.1)
return sprite.endTime

path ​

get path(): string

Defined in: src/beatmap/storyboard/elements.ts:28

Returns ​

string

Inherited from ​

StoryboardSprite.path

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

return sprite.path

startTime ​

get startTime(): number | undefined

Defined in: src/beatmap/storyboard/elements.ts:39

Returns ​

number | undefined

Inherited from ​

StoryboardSprite.startTime

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addScale(Easing.Out, 0, 1000, 1.1)
return sprite.startTime

Methods ​

addAlpha() ​

addAlpha(easing, startTime, endTime?, endValue?, startValue?): this

Defined in: src/beatmap/storyboard/elements.ts:60

Parameters ​

ParameterType
easingEasing
startTimenumber
endTime?number
endValue?number
startValue?number

Returns ​

this

Inherited from ​

StoryboardSprite.addAlpha

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addAlpha(Easing.Out, 0, 500, 1, 0)
return sprite.commands.alpha.length

addBlending() ​

addBlending(easing, startTime, endTime?, endValue?, startValue?): this

Defined in: src/beatmap/storyboard/elements.ts:81

Parameters ​

ParameterType
easingEasing
startTimenumber
endTime?number
endValue?BlendingMode
startValue?BlendingMode

Returns ​

this

Inherited from ​

StoryboardSprite.addBlending

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addBlending(Easing.None, 0, undefined, 'Additive')
return sprite.commands.blending.length

addColour() ​

addColour(easing, startTime, endTime?, endR?, endG?, endB?, startR?, startG?, startB?): this

Defined in: src/beatmap/storyboard/elements.ts:72

Parameters ​

ParameterType
easingEasing
startTimenumber
endTime?number
endR?number
endG?number
endB?number
startR?number
startG?number
startB?number

Returns ​

this

Inherited from ​

StoryboardSprite.addColour

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addColour(Easing.Out, 0, 500, 255, 200, 180)
return sprite.commands.colour.length

addFlipH() ​

addFlipH(easing, startTime, endTime?, endValue?, startValue?): this

Defined in: src/beatmap/storyboard/elements.ts:79

Parameters ​

ParameterType
easingEasing
startTimenumber
endTime?number
endValue?boolean
startValue?boolean

Returns ​

this

Inherited from ​

StoryboardSprite.addFlipH

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addFlipH(Easing.None, 0, undefined, true)
return sprite.commands.flipH.length

addFlipV() ​

addFlipV(easing, startTime, endTime?, endValue?, startValue?): this

Defined in: src/beatmap/storyboard/elements.ts:80

Parameters ​

ParameterType
easingEasing
startTimenumber
endTime?number
endValue?boolean
startValue?boolean

Returns ​

this

Inherited from ​

StoryboardSprite.addFlipV

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addFlipV(Easing.None, 0, undefined, true)
return sprite.commands.flipV.length

addLoopingGroup() ​

addLoopingGroup(loopStartTime, totalIterations): StoryboardLoopingGroup

Defined in: src/beatmap/storyboard/elements.ts:83

Parameters ​

ParameterType
loopStartTimenumber
totalIterationsnumber

Returns ​

StoryboardLoopingGroup

Inherited from ​

StoryboardSprite.addLoopingGroup

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

const group = sprite.addLoopingGroup(0, 2)
return group.totalIterations

addMoveX() ​

addMoveX(easing, startTime, endTime?, endValue?, startValue?): this

Defined in: src/beatmap/storyboard/elements.ts:61

Parameters ​

ParameterType
easingEasing
startTimenumber
endTime?number
endValue?number
startValue?number

Returns ​

this

Inherited from ​

StoryboardSprite.addMoveX

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addMoveX(Easing.Out, 0, 500, 400, 320)
return sprite.commands.x.length

addMoveY() ​

addMoveY(easing, startTime, endTime?, endValue?, startValue?): this

Defined in: src/beatmap/storyboard/elements.ts:62

Parameters ​

ParameterType
easingEasing
startTimenumber
endTime?number
endValue?number
startValue?number

Returns ​

this

Inherited from ​

StoryboardSprite.addMoveY

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addMoveY(Easing.Out, 0, 500, 300, 240)
return sprite.commands.y.length

addRotation() ​

addRotation(easing, startTime, endTime?, endValue?, startValue?): this

Defined in: src/beatmap/storyboard/elements.ts:71

Parameters ​

ParameterType
easingEasing
startTimenumber
endTime?number
endValue?number
startValue?number

Returns ​

this

Inherited from ​

StoryboardSprite.addRotation

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addRotation(Easing.Out, 0, 500, 1)
return sprite.commands.rotation.length

addScale() ​

addScale(easing, startTime, endTime?, endValue?, startValue?): this

Defined in: src/beatmap/storyboard/elements.ts:63

Parameters ​

ParameterType
easingEasing
startTimenumber
endTime?number
endValue?number
startValue?number

Returns ​

this

Inherited from ​

StoryboardSprite.addScale

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addScale(Easing.Out, 0, 500, 1.1, 1)
return sprite.commands.scale.length

addTriggerGroup() ​

addTriggerGroup(triggerName, triggerStartTime, triggerEndTime, groupNumber): StoryboardTriggerGroup

Defined in: src/beatmap/storyboard/elements.ts:91

Parameters ​

ParameterType
triggerNameTriggerName
triggerStartTimenumber
triggerEndTimenumber
groupNumbernumber

Returns ​

StoryboardTriggerGroup

Inherited from ​

StoryboardSprite.addTriggerGroup

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

const group = sprite.addTriggerGroup('HitSound', 0, 1000, 0)
return group.triggerName

addVectorScale() ​

addVectorScale(easing, startTime, endTime?, endX?, endY?, startX?, startY?): this

Defined in: src/beatmap/storyboard/elements.ts:64

Parameters ​

ParameterType
easingEasing
startTimenumber
endTime?number
endX?number
endY?number
startX?number
startY?number

Returns ​

this

Inherited from ​

StoryboardSprite.addVectorScale

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addVectorScale(Easing.Out, 0, 500, 1.1, 1.1)
return sprite.commands.vectorScale.length

clearLoopingGroups() ​

clearLoopingGroups(): void

Defined in: src/beatmap/storyboard/elements.ts:104

Returns ​

void

Inherited from ​

StoryboardSprite.clearLoopingGroups

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addLoopingGroup(0, 2)
sprite.clearLoopingGroups()
return sprite.loopingGroups.length

clearTriggerGroups() ​

clearTriggerGroups(): void

Defined in: src/beatmap/storyboard/elements.ts:110

Returns ​

void

Inherited from ​

StoryboardSprite.clearTriggerGroups

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addTriggerGroup('HitSound', 0, 1000, 0)
sprite.clearTriggerGroups()
return sprite.triggerGroups.length

clone() ​

clone(): this

Defined in: src/beatmap/storyboard/elements.ts:158

Returns ​

this

Overrides ​

StoryboardSprite.clone

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

const copy = sprite.clone()
return { sameFile: copy.path === sprite.path, commands: copy.commands.allCommands().length }

removeLoopingGroup() ​

removeLoopingGroup(indexOrGroup): void

Defined in: src/beatmap/storyboard/elements.ts:99

Parameters ​

ParameterType
indexOrGroupnumber | StoryboardLoopingGroup

Returns ​

void

Inherited from ​

StoryboardSprite.removeLoopingGroup

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addLoopingGroup(0, 2)
sprite.removeLoopingGroup(0)
return sprite.loopingGroups.length

removeTriggerGroup() ​

removeTriggerGroup(indexOrGroup): void

Defined in: src/beatmap/storyboard/elements.ts:105

Parameters ​

ParameterType
indexOrGroupnumber | StoryboardTriggerGroup

Returns ​

void

Inherited from ​

StoryboardSprite.removeTriggerGroup

ts
import { FileRef, Storyboard, StoryboardSprite, Easing } from 'osu-files'

const storyboard = new Storyboard()
const sprite = new StoryboardSprite(
  new FileRef('background.jpg', { hash: 'a'.repeat(64) }),
)
storyboard.getLayer('Foreground').add(sprite)

sprite.addTriggerGroup('HitSound', 0, 1000, 0)
sprite.removeTriggerGroup(0)
return sprite.triggerGroups.length

Released under the MIT License.