Commit Graph

66 Commits

Author SHA1 Message Date
zardoru 5f9660751c Couple hack-fixes for BMS crashes. 2014-12-23 23:20:54 -03:00
Kyzentun 3b36858cf8 Merge pull request #366 from kyzentun/bgm_formats
Unduplicate file extension lists.
2014-12-01 16:18:09 -07:00
Jason Felds 3451b2f2d5 Use operator overloading best practices.
Not all files covered.

Refer to StackOverflow for details: http://stackoverflow.com/a/4421719
2014-11-26 14:51:21 -05:00
Kyzentun e22e99251e Added functions to ActorUtil for converting the extension to a file type and changed various places that had lists of extensions to use ActorUtil instead of duplicating the list of extensions. Added webm and wmv to list of video types. 2014-11-09 00:04:47 -07:00
sigatrev 82cb4a198d Enums for TapNoteType, TapNoteSubType, and TapNoteSource
I intend to make additional useful information available on judgments,
such as TapNoteType and TapNoteSubType( for hold judgments ).

I am submitting this part as a separate pull request because it is more
generally applicable to anything TapNote related.
2014-08-02 00:38:48 -07:00
Devin J. Pohly 0ae7b0da85 TimingData: add allowEmpty parameter to TidyUpData. always false for now... 2013-01-23 14:38:57 -05:00
Devin J. Pohly 8815da5f1f replace SongManager::GetSongFromSteps with use of song pointer 2013-01-20 19:51:59 -05:00
Jason Felds 1fc16698ba War on -Werror, part 12: explicit bool usage.
It may save a few cycles, but it's best to be
explicit on boolean operations, especially with
ASSERT.
2012-12-27 11:38:53 -05:00
Devin J. Pohly d45afb73d8 war on -Werror, part 1: constructor order, c++ actually cares 2012-12-26 20:14:40 -05:00
AJ Kelly a9c8a9517b fix missing semicolon; whoops. 2012-06-02 22:55:18 -05:00
Jason Felds d624ae5010 I think false was intended here. 2012-05-21 08:59:57 -04:00
Thai Pangsakulyanont f2697f9eb5 fix possible syntax error 2012-05-21 16:03:42 +07:00
Thai Pangsakulyanont 1c85c74785 remove the debugging code 2012-05-21 14:02:38 +07:00
Thai Pangsakulyanont 3a82222c83 add background support to BMS files (only #BMP, not #BGA) 2012-05-21 13:58:40 +07:00
AJ Kelly 99e6c6a2cd [NotesLoaderBMS] Fix calculating stops, Support for #LNOBJ, Don't use #BACKBMP as song background if main StepsType is beat-*. [hanubeki]
These changes constitute revisions f26caccf103e, 2d114b38c6c9, and b60f021d2b67 of hanubeki-modified-sm-ssc. (http://code.google.com/r/hanubeki-modified-sm-ssc/)
2012-03-02 23:19:12 -06:00
Thai Pangsakulyanont 01f85359e9 BMSLoader: fall back to 7k IIDX stepstype when a non-familiar number of columns are found. 2012-01-08 18:59:51 +07:00
Thai Pangsakulyanont 460d92f5e8 add time signature segments when handling time signatures when loading BMS.
something I have forgotten but should have not forgotten. :S
2011-10-11 00:26:54 +07:00
Thai Pangsakulyanont 95fac0f969 fixed adpcm, bring back PMS (using BMSLoader) 2011-10-10 00:31:57 +07:00
Thai Pangsakulyanont 18b2ff07b3 fix a bug when the BMS file has a keysounded note, but the
#WAV entry points to a file with invalid name, or points to
a nonexistant file, for example

#WAVAA NoSuchFile.wav
#00101:AA

In which case, the note will be assigned the first valid
keysound, instead of not being assigned keysound at all.
This is a very silly bug with a simple fix, but didn't
manage to fix it before SM5P4 comes out. Sorry for that.
2011-10-09 18:33:45 +07:00
Thai Pangsakulyanont fc0ee6543b insert notes first, then add autokeysounds thereafter. 2011-09-10 17:11:46 +07:00
Thai Pangsakulyanont afd64f3ed9 fix the comment. 2011-09-10 15:14:04 +07:00
AJ Kelly 5c7e13af14 comment this out because it's breaking the build and I'm not sure how to fix it. 2011-09-10 02:05:28 -05:00
AJ Kelly ae8bf617a3 slight cleanup 2011-09-10 02:05:12 -05:00
Thai Pangsakulyanont b26dc2b3bd major rewrite of NotesLoaderBMS. now it needs a lot of testing.
- handles BPM changes correctly
- songs should load faster
- auto-adjusts time signature changes (not sure how well will it perform.)
- add some code to differentiate between beat_single5 and popn_five, fixes bug 430
- also, bug 500 seems to be fixed after the rewrite, after some other attempts fail

what's not supported yet:
- #LNOBJ long note parsing
- #LNTYPE 2 long note parsing [http://nvyu.net/rdm/ex.php]
2011-09-10 01:08:04 +07:00
Thai Pangsakulyanont 6b6f9bba35 Send the actual song file to LoadFromBMSFile in BMSLoader::LoadNoteDataFromSimfile
instead of the dummy one, because the keysounds are in the song.

Also recreate the intermediate data structure that is required by LoadFromBMSFile.

This fixes the wrong sound issue, but the code still looks messy.
2011-08-08 00:29:32 +07:00
Jason Felds b6fe8a0de0 [timing] Notes* mostly covered. 2011-07-27 22:33:50 -04:00
Jason Felds dbdab4759e [Xcode4] May as well fix switch warnings.
Still need some assistance for the linker error.
2011-07-20 11:11:04 -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 199af25f31 Get inserts working via passing TimingSegments.
Unsure if this is the right way:
code review may be needed.
2011-07-14 19:01:12 -04:00
Jason Felds 4b32d9ecac Spelling. 2011-06-20 19:03:29 -04:00
Jason Felds 7d79762076 Better error message on failure. 2011-06-20 19:02:44 -04:00
Jason Felds 0498ad5f70 Ensure all BM* files have a BGM track. 2011-06-20 19:00:22 -04:00
Thai Pangsakulyanont 5cd05670ab NotesLoaderBMS: Fix loading BPM changes by putting all of them in a map first and then finally add the BPM segments.
As the BMS loader sorts the definitions by measure and channel, they are not sorted by time, so there are cases that this can happen:

#00103:7F
#00203:007F0000
#00208:01
#BPM01 63.5

In this case, the segment in the second line is parsed before the third line, and because of the BPM is the same as the segment before it (the first line), no BPM changes will be added, the segment in the third line will then set the BPM of the rest of the song, which is wrong. To fix this the BPM needs to be sorted.
2011-06-13 10:54:18 +07:00
Jason Felds df6a00b53e Stops (and Delays) now templated.
This is all of them at this present time.

At some point in the future, we should make
DelaySegments separate from StopSegments.
2011-06-01 09:50:34 -04:00
Jason Felds e99178c02d Signed vs unsigned warning. 2011-05-25 15:09:10 -04:00
Thai Pangsakulyanont 0994bd64bc fix crash in NotesLoaderBMS 2011-05-24 11:12:47 +07:00
Thai Pangsakulyanont 6bbb43bb91 show song BPM on BMS file (based on main steps type) instead of defaulting to 60. 2011-05-21 14:55:01 +07:00
Thai Pangsakulyanont 2507cf7c0a [splittiming] merge 2011-05-12 16:56:15 +07:00
Thai Pangsakulyanont eda727ddf9 [splittiming]
- load split timing from BMS files
- fix a crash because autogen'd steps don't inherit the timing from parent
- be more verbose in UpdateSongPosition
2011-05-12 16:44:24 +07:00
Jason Felds 8de6ddb7e3 [default -> splittiming] Cleanliness. 2011-05-11 17:07:20 -04:00
Jason Felds da51e26d07 Standardize conversion processes.
Too many arguments for or against the many methods:
stick to one inside a common function.

This commit will force recompilation of many files.
2011-05-11 15:58:31 -04:00
Jason Felds 71bf72e964 [splittiming] More error fixes. (153)
Nothing has been tied to the steps yet.
2011-05-09 20:48:23 -04:00
Thai Pangsakulyanont 31848e79c4 [splittiming] replace new Steps with [song].CreateSteps() (224 build errors) 2011-05-09 22:47:47 +07:00
Thai Pangsakulyanont aab30fbfa1 Remove trailing " [" from common substring when loading BMS files. 2011-03-23 09:59:39 +07:00
Thai Pangsakulyanont 255b3444aa Add the Pop'n #PLAYER 3 cases to BmsLoader too. 2011-03-20 09:25:45 +07:00
Thai Pangsakulyanont 31f7b16f47 Add *.bml to BMSLoader::GetApplicableFiles. BML stands for Be-Music Longnote.
Because it is an extension to BMS, so most apps save them with bms extension anyway,
there exist some convertors that output to .bml files however.
2011-03-19 20:57:38 +07:00
Thai Pangsakulyanont c2fe12120c fixed missing autokeysounds when they are inserted on the tail of a hold note (they are removed) 2011-03-18 12:25:20 +07:00
Thai Pangsakulyanont 87109a1a66 + make it support o2mania-style notecharts when playing on beat_single7
+ comments cleanup
2011-03-18 01:19:06 +07:00
Jason Felds a085d0d1da Line endings...be normalized! 2011-03-17 01:47:30 -04:00
Thai Pangsakulyanont f1d5a13df8 merge 2011-03-16 18:03:17 +07:00