Static variables

staticread onlyinstance:Charter

@:value(false)staticstartHere:Bool = false

@:value(0)staticstartTime:Float = 0

Constructor

@:value({ reload : true })new(song:String, diff:String, reload:Bool = true)

Variables

beatSeparator:FlxBackdrop

charterBG:FunkinSprite

CONFIG & UI (might make this customizable later)

charterCamera:FlxCamera

CAMERAS

@:value([])clipboard:Array<CharterCopyboardObject> = []

eventsBackdrop:FlxBackdrop

@:value(new CharterEventGroup())eventsGroup:CharterEventGroup = new CharterEventGroup()

hitsound:FlxSound

metronome:FlxSound

@:value(new CharterNoteGroup())notesGroup:CharterNoteGroup = new CharterNoteGroup()

@:value([])redoList:Array<CharterChange> = []

sectionSeparator:FlxBackdrop

@:value([])selection:Array<CharterNote> = []

@:value(new FlxTypedGroup<CharterStrumline>())strumLines:FlxTypedGroup<CharterStrumline> = new FlxTypedGroup<CharterStrumline>()

ACTUAL CHART DATA

strumlineInfoBG:FlxSprite

topLimit:FlxSprite

uiCamera:FlxCamera

@:value(new FlxTypedGroup<FlxSprite>())uiGroup:FlxTypedGroup<FlxSprite> = new FlxTypedGroup<FlxSprite>()

@:value([])undoList:Array<CharterChange> = []

vocals:FlxSound

Methods

inlineaddToUndo(c:CharterChange):Void

buildChart():Void

@:value({ addToUndo : true })createStrumline(strumLineID:Int, strL:ChartStrumLine, addToUndo:Bool = true):Void

@:value({ addToUndo : true })deleteNote(note:CharterNote, addToUndo:Bool = true):CharterNote

@:value({ addToUndo : true })deleteNotes(notes:Array<CharterNote>, addToUndo:Bool = true):Array<CharterNote>

@:value({ addToUndo : true })deleteStrumline(strumLineID:Int, addToUndo:Bool = true):Void

inlineeditStrumline(strL:ChartStrumLine):Void

inlinehitsoundsEnabled(id:Int):Bool

loadSong():Void

@:value({ here : false, opponentMode : false, time : 0 })playtestChart(time:Float = 0, opponentMode:Bool = false, here:Bool = false):Void

inlineremoveStrumlineFromSelection(strumLineID:Int):Void

inlinesortNotes():Void

updateNoteLogic(elapsed:Float):Void

Inherited Variables

Defined by UIState

@:value(null)buttonHandler:() ‑> Void = null

@:value(null)curContextMenu:UIContextMenu = null

@:value(ARROW)currentCursor:MouseCursor = ARROW

@:value(null)currentFocus:IUIFocusable = null

@:value(null)hoveredSprite:UISprite = null

Defined by MusicBeatState

@:value(false)cancelConductorUpdate:Bool = false

Whenever the Conductor auto update should be enabled or not.

read onlycontrols:Controls

Game Controls. (All players / Solo)

read onlycontrolsP1:Controls

Game Controls (Player 1 only)

read onlycontrolsP2:Controls

Game Controls (Player 2 only)

read onlycurBeat:Int

Current beat

read onlycurBeatFloat:Float

Current beat, as a Float (ex: 1.24, instead of 1)

read onlycurMeasure:Int

Current beat

read onlycurMeasureFloat:Float

Current beat, as a Float (ex: 1.24, instead of 1)

read onlycurStep:Int

Current step

read onlycurStepFloat:Float

Current step, as a Float (ex: 4.94, instead of 4)

@:value(new GraphicCacheSprite())graphicCache:GraphicCacheSprite = new GraphicCacheSprite()

Dummy sprite used to cache graphics to GPU.

@:value(null)scriptName:String = null

@:value(true)scriptsAllowed:Bool = true

read onlysongPos:Float

Current song position (in milliseconds).

stateScript:Script

Current injected script attached to the state. To add one, create a file at path "data/states/stateName" (ex: data/states/FreeplayState)

Inherited Methods

Defined by UIState

isOverlapping(spr:UISprite, rect:FlxRect):Bool

openContextMenu(options:Array<UIContextMenuOption>, ?callback:Null<UIContextMenuCallback>, ?x:Float, ?y:Float):UIContextMenu

updateButtonHandler(spr:UISprite, buttonHandler:() ‑> Void):Void

updateRectButtonHandler(spr:UISprite, rect:FlxRect, buttonHandler:() ‑> Void):Void

Defined by MusicBeatState

call(name:String, ?args:Array<Dynamic>, ?defaultVal:Dynamic):Dynamic

event<T>(name:String, event:T):T

@:value({ fpsSensitive : false })lerp(v1:Float, v2:Float, ratio:Float, fpsSensitive:Bool = false):Float

Shortcut to FlxMath.lerp or CoolUtil.lerp, depending on fpsSensitive

Parameters:

v1

Value 1

v2

Value 2

ratio

Ratio

fpsSensitive

Whenever the ratio should not be adjusted to run at the same speed independent of framerate.

openSubState(subState:FlxSubState):Void

SCRIPTING STUFF