Building Blocks of ReamberPy
All objects build on top of a Base class.
We illustrate the example with OsuHit, you can replace GAME_NAME with any game name.
For example in the case of Hit:
We also have HitList which is a list of Hits.
Thus, you can expect that QuaHitList(...).offset & OsuHitList(...).offset to behave the same.
Properties
Usually, if it exists, then it'll be implemented.
For example:
OsuHold will implement:
offset, the LN Headtail_offset, the LN Taillength, the LN lengthcolumn, the column of the note.
Accessed via .___ syntax.
Pandas-like Operations
A great feature of ReamberPy objects is that they can be broadcasted to much like pandas.
For example
OsuHoldList(...).offset += 1000will add 1 second to all objectsOsuBpmList(...).bpm += 100will add 100 to all BPMs
In fact, the underlying data representation is pandas' DataFrame!. Thus you can expect all the same operations to work.