Class: OsuRuby::Beatmap::Data

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Includes:
Interface::ExtendableMethod
Defined in:
(osu-ruby2 0.0.2) osu-ruby2/beatmap/data.rb

Overview

Represents Beatmap data in general.

Constant Summary collapse

SPECIAL_SECTIONS =

TODO: define special section for parsing etc.

%i(TimingPoints HitObjects).freeze
SPINNER_DIFFICULTY =

defines global spinner difficulty used through all main modes.

DifficultyProgress.new(3.0,5.0,7.5)
LATEST_FILE_VERSION =

osu! beatmap latest version

14

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Interface::MultiplexerInterface

extended

Constructor Details

#initializeData

Returns a new instance of Data.

Class Method Details

.parse(str) ⇒ Object

Instance Method Details

#bpm_at(time) ⇒ Float

Returns current BPM at given time position.

Parameters:

  • time (Float)

    position to check

Returns:

  • (Float)

    current BPM at given time position

See Also:

#clear(mode = nil)

This method returns an undefined value.

reset beatmap cache and process the extensions defined

Parameters:

  • mode (Symbol, nil) (defaults to: nil)

    TBD

#clear_caches

This method returns an undefined value.

Clear existing caches stored in a beatmap. Currently it supports following operations:

  • Clears cached timing from current beatmap.

#initialize_copy(other) ⇒ Object

copies all soft references of the original beatmap to current beatmap. pretty useful for handling converts or mods.

#quad_tick_rate?Boolean

Returns checks whether the beatmap have 2 x 2^n tick rate.

Returns:

  • (Boolean)

    checks whether the beatmap have 2 x 2^n tick rate.

#spinner_difficultyFloat

Returns obtain current beatmap spinner difficulty.

Returns:

  • (Float)

    obtain current beatmap spinner difficulty.

#strange_tick_rate?Boolean

Returns checks whether does not satisfy the usual tick rate divisor.

Returns:

  • (Boolean)

    checks whether does not satisfy the usual tick rate divisor.

See Also:

#sv_at(time) ⇒ Float

Returns current Slider Velocity at given time position.

Parameters:

  • time (Float)

    position to check

Returns:

  • (Float)

    current Slider Velocity at given time position

See Also:

#timing_at(time) ⇒ TimingPoints::Compound

TODO:

Different behavior checks will be implemented later.

Note:

This behavior changed in b20210823.cuttingedge build.

obtain timing point property at given time

Parameters:

  • time (Numeric, Float)

    time position to check with.

Returns:

See Also:

#triple_tick_rate?Boolean

Returns checks whether the beatmap have 3 x 2^n tick rate.

Returns:

  • (Boolean)

    checks whether the beatmap have 3 x 2^n tick rate.

#unusual_tick_rate?Boolean

Returns checks whether does not use the standard supported tick rate.

Returns:

  • (Boolean)

    checks whether does not use the standard supported tick rate.

See Also:

#update_contents(parser_data) ⇒ Object