From fc5113849066669dca22a64268300c58b10656e8 Mon Sep 17 00:00:00 2001 From: MinaciousGrace Date: Sun, 25 Dec 2016 03:05:22 -0500 Subject: [PATCH] add back wip nps vector --- src/Steps.cpp | 34 ++++++++++++++++++++++++++++++++++ src/Steps.h | 2 ++ 2 files changed, 36 insertions(+) diff --git a/src/Steps.cpp b/src/Steps.cpp index 3be46853f4..430ad75bb4 100644 --- a/src/Steps.cpp +++ b/src/Steps.cpp @@ -513,6 +513,40 @@ RString Steps::GenerateChartKey(NoteData& nd, TimingData *td) return o; } +int Steps::GetNPSVector(NoteData nd, vector& etar) +{ + vector> doot; + vector scoot; + int intN = 1; + float intI = 0.5f; + int intT = 0; + vector intervaltaps; + vector& nerv = nd.GetNonEmptyRowVector(); + + for (size_t r = 0; r < nerv.size(); r++) + { + int row = nerv[r]; + if (etar[row] >= intN * intI) { + doot.push_back(scoot); + scoot.clear(); + intN += 1; + + intervaltaps.push_back(intT / intI); + intT = 0; + } + scoot.push_back(row); + for (int t = 0; t < nd.GetNumTracks(); ++t) + { + const TapNote &tn = nd.GetTapNote(t, row); + if (tn.type == TapNoteType_Tap || tn.type == TapNoteType_HoldHead) { + intT += 1; + } + + } + } + return 1; +} + void Steps::Compress() const { // Always leave lights data uncompressed. diff --git a/src/Steps.h b/src/Steps.h index 9b75ab4586..56802a7bc0 100644 --- a/src/Steps.h +++ b/src/Steps.h @@ -183,6 +183,8 @@ class Steps // prolly needs an enum or something idk - mina float GetMSD(float x, int i) const; + int GetNPSVector(NoteData nd, vector& etar); + /* This is a reimplementation of the lua version of the script to generate chart keys, except this time using the notedata stored in game memory immediately after reading it than parsing it using lua. - Mina */ RString GenerateChartKey(NoteData& nd, TimingData *td);