2022-03-08 08:13:53 +00:00
|
|
|
package funkin;
|
2020-11-07 02:17:27 +00:00
|
|
|
|
2024-03-05 01:47:23 +00:00
|
|
|
import flixel.FlxG;
|
|
|
|
|
2023-11-07 09:04:22 +00:00
|
|
|
/**
|
|
|
|
* A core class which handles tracking score and combo for the current song.
|
|
|
|
*/
|
2020-11-07 02:17:27 +00:00
|
|
|
class Highscore
|
|
|
|
{
|
2024-03-05 01:47:23 +00:00
|
|
|
/**
|
|
|
|
* Keeps track of notes hit for the current song / week,
|
|
|
|
* and how accurate you were with each note (bad, missed, shit, etc.)
|
|
|
|
*/
|
2023-01-23 03:25:45 +00:00
|
|
|
public static var tallies:Tallies = new Tallies();
|
2020-11-07 02:17:27 +00:00
|
|
|
}
|
2022-09-20 06:16:12 +00:00
|
|
|
|
|
|
|
@:forward
|
|
|
|
abstract Tallies(RawTallies)
|
|
|
|
{
|
2023-01-23 03:25:45 +00:00
|
|
|
public function new()
|
|
|
|
{
|
|
|
|
this =
|
|
|
|
{
|
|
|
|
combo: 0,
|
|
|
|
missed: 0,
|
|
|
|
shit: 0,
|
|
|
|
bad: 0,
|
|
|
|
good: 0,
|
|
|
|
sick: 0,
|
|
|
|
totalNotes: 0,
|
|
|
|
totalNotesHit: 0,
|
|
|
|
maxCombo: 0,
|
|
|
|
isNewHighscore: false
|
|
|
|
}
|
|
|
|
}
|
2022-09-20 06:16:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
typedef RawTallies =
|
|
|
|
{
|
2023-01-23 03:25:45 +00:00
|
|
|
var combo:Int;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* How many notes you let scroll by.
|
|
|
|
*/
|
|
|
|
var missed:Int;
|
|
|
|
|
|
|
|
var shit:Int;
|
|
|
|
var bad:Int;
|
|
|
|
var good:Int;
|
|
|
|
var sick:Int;
|
|
|
|
var maxCombo:Int;
|
|
|
|
var isNewHighscore:Bool;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* How many notes total that you hit. (NOT how many notes total in the song!)
|
|
|
|
*/
|
|
|
|
var totalNotesHit:Int;
|
|
|
|
|
|
|
|
/**
|
2024-03-05 01:47:23 +00:00
|
|
|
* How many notes in the current chart
|
2023-01-23 03:25:45 +00:00
|
|
|
*/
|
|
|
|
var totalNotes:Int;
|
2022-09-20 06:16:12 +00:00
|
|
|
}
|