Commit Graph

105 Commits

Author SHA1 Message Date
Michael Votaw bb6f55e8b9 Explicitly cache #PEAKNPS instead of deriving it from NPSPerMeasure. 2025-03-19 23:19:00 -07:00
Michael Votaw 239d38d5aa pre-initialize size of vectors for writing nps/notes per measure to cache file. 2025-03-03 21:24:17 -08:00
Michael Votaw 2625394ac0 Only store NotesPerMeasure and NpsPerMeasure values per-player if the steps type has different steps per player. 2025-03-03 21:24:17 -08:00
Michael Votaw fd790eb83e Replace #MEASUREINFO with two separate tags, #NPSPERMEASURE and #NOTESPERMEASURE. Stop storing MeasureInfo objects on Steps, and just directly store NpsPerMeasure, NotesPerMeasure, and peakNPS. 2025-03-03 21:24:17 -08:00
Michael Votaw 97cefc6d71 Reduce the precision of nps to 3 decimal places, and don't use ssprint to join all of it together (very very long charts would cause a stack overflow on Windows) 2025-02-11 19:39:03 -08:00
teejusb 49263f3c3e Mostly stylistic changes 2025-02-11 19:39:03 -08:00
Michael Votaw 905e44330a Added methods to load/write tech counts to cache. 2025-02-11 19:39:03 -08:00
Michael Votaw 429fab2fbc Added MeasureInfo calculations, and loader/writer for #MEASUREINFO cache 2025-02-11 19:39:03 -08:00
Martin Natano bacecae1f7 Decouple <vector> 2023-04-21 22:13:41 +02:00
Martin Natano 093675cdc3 Use attributes where possible 2023-04-20 11:21:29 +02:00
Brian Phlipot c1a3455ce4 Explicitly create RStrings to avoid MSVC compiler errors. 2022-10-03 16:21:19 -07:00
Michael Sundqvist 0cba3579de Remove global "using namespace std;" declarations, use "std::" prefixes on all std elements
Fix whitespace changes
2022-07-31 22:14:38 +02:00
teejusb 7e3789b131 Integrate C++11 branch into 5_1-new 2019-06-22 12:35:38 -07:00
Jason Felds edabf4605b Clean up three sets of warnings:
* Ensure all switches have a default when working with enums.
* Match defined new[] calls with delete[] calls.
* Respect variable initialization order.
2016-03-24 18:30:29 -04:00
Kyzentun fa0478affa Merged per-chart music. Updated changelog. 2015-03-09 19:06:57 -06:00
Kyzentun 0318f07d2d Implement preview music properly as a new optional tag in the ssc file. Changed ScreenManager to emit an error instead of asserting if a screen attempts to use SetNewScreen inside an InitCommand. Changed decorations layer to be a proper child instead of stripping away the ActorFrame. 2015-03-04 01:31:02 -07:00
Kyzentun 846f79879c Added MUSIC tag to note data to allow each chart in a simfile to use a different music file. 2015-03-02 18:44:01 -07:00
Kyzentun c16f045cb4 Fixed UnknownStyleSupport. 2014-10-20 05:14:54 -06:00
Jason Felds 395107d3d5 Revert "Preserve Steps of unknown Style."
This reverts commit 8edd929e24.

This also updates the song cache.
2014-10-19 10:06:40 -04:00
Kyzentun 8edd929e24 Preserve Steps of unknown Style. 2014-10-01 17:12:01 -06:00
Jason Felds c67419ecc8 There goes the macro file.
This is one of my bigger commits in this branch.

Still, shouldn't cause a problem.
2013-05-01 23:54:39 -04:00
Jason Felds 02b409e374 Another writer. 2013-04-28 23:07:44 -04:00
Devin J. Pohly 7703070817 merge from upstream 2013-01-24 00:43:15 -05:00
Devin J. Pohly 533b0f9eff NotesWriterSSC: fix steps offset when saving 2013-01-24 00:20:56 -05:00
Devin J. Pohly ce507b9800 use empty TimingData in Steps to signify fallback on Song timing.
This required using the new Steps::GetTimingData function and the allowEmpty
parameter to TimingData::TidyUpData when appropriate, as well as clearing the
TimingData to remove step timing rather than coping the song timing over it.

Fixes some odd editor behavior when changing song timing, and is overall a
slightly less hacky way of doing things.
2013-01-23 14:51:18 -05:00
Jason Felds ada0c3cdd0 Restore storing to 6 decimals. 2013-01-06 21:15:36 -05:00
Jason Felds 44d8eaa10a Don't write empty labels.
Not worth a cache increase I think.
2012-01-16 13:10:10 -05:00
Marcio Barrientos 11a02660be Change #PREVIEWBG to #PREVIEWVID and update the changelog 2012-01-11 14:21:55 -06:00
Marcio Barrientos da84ef04ad Added tags #PREVIEW for .sma and #PREVIEWBG for .ssc
Added HasPreviewBG() and GetPreviewBGPath() lua bindings
2012-01-11 13:53:30 -06:00
AJ Kelly 63055788ca add #JACKET, #CDIMAGE, and #DISCIMAGE tags to .ssc format (up to v0.81 now). 2012-01-04 12:42:53 -06:00
Thai Pangsakulyanont 248504f275 escape # in first keysound entry, fixed ADPCM reader and make PMS load more correctly.
- [NoteField] fix build warnings, and change the maximum number of displayed notes
  after the receptor to 64.
- [Player] fix build warnings.
- [NotesLoaderSSC, NotesWriterSSC] The MSD file reader seems to treat # that comes
  directly after : as new tag, and as many PMS and BMS files has keysounds which filename
  starts with #, so it looks like this: #KEYSOUNDS:#bgm.wav,01.wav,02.wav,..
  The MSD parser will see it as 2 different tags. So I added a backslash in front of the
  # sign if it's at the start when saving and remove it when loading.
- [RageSoundReader_WAV] ADPCM now works very well and doesn't return error when
  end of file is reached anymore.
- [Steps] Use BMS loader when loading the note data.
2011-11-11 18:40:34 +07:00
AJ Kelly 382f16cc00 small todo 2011-11-10 23:13:16 -06:00
AJ Kelly 391dd8624a try to get attack tags (song timing) to print out like course mods do in .ssc files (I tried doing the same with the one in the steps, but it didn't work so it's not included) 2011-11-10 01:11:28 -06:00
Jason Felds c6fff60998 Finish the 3 decimal write out.
Observation: we have two ways of writing out timing tags in
NotesWriterSSC. Perhaps these should be unified soon.
2011-09-23 22:33:46 -04:00
Mark Cannon 8099e25dcc stage 3 of TimingData changes: changed external interface, enforce encapsulation more strictly 2011-09-15 03:28:58 +00:00
Jason Felds 047bc7a5dc Allow all timing tags regardless of timing. 2011-09-12 19:43:41 -04:00
Mark Cannon df9c4d8142 segment renovation stage 2: redefine TimingSegments as simple structs, standardize names and functions, use only rows for constructors (we'll limit allocation through TimingData::AddSegment in the near future) 2011-09-11 17:13:10 +00:00
Mark Cannon 0d4e43f9e3 stage 1 of TimingSegment cleanup: consolidate genericizable code in TimingData, use a proper variable name 2011-09-10 03:08:59 +00:00
AJ Kelly e06c7d334f back to 3 significant digits for .ssc files. 2011-09-07 22:17:20 -05:00
Jason Felds e854b79b84 Trying to reduce tags for non split timing.
Need assistance to finish the task.

Please bump SSC version to 0.78 when completed.
2011-07-31 23:44:48 -04:00
Jason Felds 7c75347e40 Revert "Remove #INSTRUMENTTRACK. It's guitar only."
This reverts commit 176b6f55ea.

Glad I learned this command.
2011-07-30 15:56:30 -04:00
Jason Felds 176b6f55ea Remove #INSTRUMENTTRACK. It's guitar only. 2011-07-30 15:33:00 -04:00
Jason Felds b6fe8a0de0 [timing] Notes* mostly covered. 2011-07-27 22:33:50 -04:00
Jason Felds 92bab49a16 Hurp-a-durp.
...never let me say that again. Cache increased.
2011-07-17 22:21:16 -04:00
Jason Felds 48226f2027 No longer store #NOTES in cache.
Use the #STEPFILENAME tag to access the files
as appropriate.

To the betting pool fans: file cache version is 192.
2011-07-17 16:06:40 -04:00
Jason Felds 09dc94cfe8 Abstract common functionality. 2011-07-17 12:54:50 -04:00
Jason Felds 759fc0fa6b [timing] This one is converted. 2011-07-14 14:12:20 -04:00
Jason Felds 08d5f8f722 Add Miss Combo support in #COMBOS tag. 2011-07-09 02:28:15 -04:00
Jason Felds c528e8ced3 Start using the tag.
I think this is needed for proper testing.
2011-07-07 18:27:59 -04:00
Jason Felds f16fec8438 Well EXCUUUUUUUUUUUUUUUUUUUUUUUUUSE ME, Princess! 2011-07-07 13:55:46 -04:00