Thai Pangsakulyanont
83c5b67647
[splittiming]
...
- #include "global.h" in SongPosition.cpp to make it build in MSVC.
- Add SongPosition.cpp to VC2008 project.
2011-05-12 23:34:57 +07:00
Thai Pangsakulyanont
1501924780
[default -> splittiming] merge
2011-05-12 23:28:55 +07:00
Thai Pangsakulyanont
469edbc73c
Merge
2011-05-12 23:25:54 +07:00
Thai Pangsakulyanont
b22bd332f5
Disable the use of precompiled headers for libpng.
2011-05-12 23:23:15 +07:00
Thai Pangsakulyanont
a09e3d51c2
[splittiming]
...
- calculate m_fFirstBeat and m_fLastBeat correctly
- fix a crash caused by calculating by tidying the timing first.
- make editor go back to right place after playing (the editor should be fairly working now!)
2011-05-12 19:07:41 +07:00
Thai Pangsakulyanont
6847ef9087
[splittiming] Now that we have split timing, Compress/Expand in ScreenEdit no longer need to affect any other notes anymore.
2011-05-12 17:11:54 +07:00
Thai Pangsakulyanont
e9ba0103b6
[default -> splittiming] and another merge
2011-05-12 16:56:41 +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
Thai Pangsakulyanont
a478308345
[splittiming] Fix crash. I don't know what caused it and how it was caused, but this fixed it.
2011-05-11 22:57:55 +07:00
Thai Pangsakulyanont
c625f19fee
[splittiming] marge
2011-05-11 22:09:12 +07:00
Thai Pangsakulyanont
a8f2d0094f
[splittiming] I accidently hardcoded PLAYER_1 in NoteField
2011-05-11 22:08:38 +07:00
Thai Pangsakulyanont
378b438389
[splittiming] screenedit now behaves (just moving around, charting process not tested)
...
some work need to be done on snapping and transitioning between editing and playing.
2011-05-11 21:22:18 +07:00
Thai Pangsakulyanont
1bf99bd528
[splittiming] make screenedit work with the steps' timing.
2011-05-11 20:53:40 +07:00
Thai Pangsakulyanont
2c87c34899
[splittiming] ArrowEffects, BPMDisplay, Inventory, MeterDisplay
2011-05-10 21:44:25 +07:00
Thai Pangsakulyanont
5209585cdc
[splittiming] merge (81)
2011-05-10 21:24:34 +07:00
Thai Pangsakulyanont
b8a4521f9c
Move the reset code to SongPosition.
2011-05-10 21:22:01 +07:00
Thai Pangsakulyanont
722d22dffc
[splittiming] temporary fix for ScreenEdit. It uses song position for now. (82)
...
So once it builds we have to test it extensively to see where it could be wrong.
2011-05-10 21:21:23 +07:00
Thai Pangsakulyanont
ab8b76b3b8
[splittiming] NoteDisplay, NoteField, Player, PlayerState (182)
2011-05-10 20:27:12 +07:00
Thai Pangsakulyanont
38a4852180
[splittiming] Fix Player.cpp (198)
2011-05-10 20:18:17 +07:00
Thai Pangsakulyanont
8c8ba93006
[default -> splittiming] and another merge.
2011-05-10 20:05:33 +07:00
Thai Pangsakulyanont
990b6cb125
[splittiming] and a merge
2011-05-10 20:04:47 +07:00
Thai Pangsakulyanont
e1e605b736
[splittiming] move bogus variables back to GameState (210)
2011-05-10 20:03:51 +07:00
Thai Pangsakulyanont
241738c18b
[splittiming] Let's break things again! (222)
...
We introduced a new class, called "SongPosition", that replaces some instance variables in the GameState class. (GameState::m_Position).
Then, you also have it in PlayerState class which keeps track of the position based on their steps. (PlayerState::m_Position).
Fixing the build errors:
- GAMESTATE->m_fSomething should now be:
- GAMESTATE->m_Position.m_fSomething
- pPlayerState->m_Position.m_fSomething (or m_pPlayerState for some instance!)
2011-05-10 19:54:05 +07:00
Thai Pangsakulyanont
ce91d1a431
[splittiming] load split timing from ssc files
2011-05-10 17:44:12 +07:00
Thai Pangsakulyanont
d0e9e58030
[splittiming] make ScreenEdit edit the Steps's timing data only.
...
NOTES: now, newly created songs will have the default timing data (60bpm throughout the song) and
NoteFields currently doesn't work yet.
2011-05-10 16:55:00 +07:00
Thai Pangsakulyanont
b634639e8e
Write timing tags for SSC files.
...
WARN: This does not work with ScreenEdit, yet!
2011-05-10 16:00:47 +07:00
Thai Pangsakulyanont
285f227851
[splittiming] tie Step's TimingData to player.
2011-05-10 13:27:35 +07:00
Thai Pangsakulyanont
e3df0d49be
[default -> splittiming] forgot to push my merge. ouch
2011-05-10 12:57:54 +07:00
Thai Pangsakulyanont
1e2be7d389
[default -> splittiming] occasional merge.
...
again, we have notes about this branch here: http://sync.in/splittiming
2011-05-09 23:37:27 +07:00
Thai Pangsakulyanont
6162fe519b
[splittiming] ArrowEffects and ScreenGameplay (222)
2011-05-09 23:00:29 +07:00
Thai Pangsakulyanont
31848e79c4
[splittiming] replace new Steps with [song].CreateSteps() (224 build errors)
2011-05-09 22:47:47 +07:00
Thai Pangsakulyanont
0d42b00621
[splittiming] Fix NotesLoaderDWI, NotesLoaderSM, NotesWriterSWI, NotesWriterSM by replace occurences of m_Timing with m_SongTiming. (224 build errors)
2011-05-09 22:41:49 +07:00
Thai Pangsakulyanont
9384f82ccd
[splittiming] a function to create steps for the song (259 build errors)
2011-05-09 22:37:15 +07:00
Thai Pangsakulyanont
40651800f0
[splittiming] temporarily rename these functions to make sure that we don't call the wrong one.
...
after it's settled we can rename it back.
2011-05-08 01:20:58 +07:00
Thai Pangsakulyanont
0e1843ff80
[splittiming] 919 errors => 236 errors
2011-05-08 01:15:25 +07:00
Thai Pangsakulyanont
94f112e923
[timingdata] Let's break things! (for now)
2011-05-08 00:58:03 +07:00
Thai Pangsakulyanont
b687c859bb
this might work for the offsynced keysounds issue.
2011-04-17 16:55:01 +07:00
Thai Pangsakulyanont
77c4768313
merge
2011-04-09 15:47:30 +07:00
Thai Pangsakulyanont
c2e89cb63c
[sm130futures] judge first, then update the rolling numbers.
2011-04-09 15:45:55 +07:00
Thai Pangsakulyanont
20b3d682ac
merge
2011-04-07 06:39:13 +07:00
Thai Pangsakulyanont
2875a6ff00
make keysounds on hold notes work on pump mode.
2011-04-07 06:37:47 +07:00
Thai Pangsakulyanont
11a163a395
added NoOffset.
...
I believe that this should probably fix the global offset
offsyncing problem on Windows: http://www.youtube.com/watch?v=6egnvovtfHw
2011-04-01 00:34:09 +07:00
Thai Pangsakulyanont
a9cde864fa
merge with stops fix
2011-03-31 23:31:29 +07:00
Thai Pangsakulyanont
22e2c8f625
fix stops bug
...
on stops longer than 1 seconds, iStepSearchRows is 0.
the fix is to look backwards in addition to looking forwards.
2011-03-31 23:31:13 +07:00
Thai Pangsakulyanont
c0acb4e336
fix: stops in warps are judged, but not delays
2011-03-27 15:56:40 +07:00
Thai Pangsakulyanont
42893d2dc2
name changes
2011-03-27 15:11:27 +07:00
Thai Pangsakulyanont
ac336215bd
[warps] allow stops inside warps and convert high bpm to warps
...
+ sometimes there are delays/stops in high BPM sections,
they have to be handled inside a warp to be able to convert
it easily.
+ on the stopped / delayed rows with warps, judging become
enabled for that row.
Issues:
+ the bpm threshould is hardcoded (right now it's 400000.0).
someone change it please.
+ slight off-sync from conversion. haven't figured out how to
work around it yet.
2011-03-26 22:07:24 +07:00
Thai Pangsakulyanont
bfd7e9c914
[warps] merge
2011-03-26 14:53:27 +07:00
Thai Pangsakulyanont
ff739605ec
[warps] Some simfiles change BPM after the warp, so should keep the positive BPM changes. Example simfile: Tsusurvivorgamush.
2011-03-26 14:51:30 +07:00
Thai Pangsakulyanont
eed0be6fe0
[warps] ScaleRegion, InsertRows, DeleteRows to make it point warps to the right place.
2011-03-26 14:21:06 +07:00
Thai Pangsakulyanont
15fd68a7f0
merge
2011-03-26 13:43:53 +07:00
Thai Pangsakulyanont
e66b0cbf39
[warps] judgement fix
...
+ iStepSearchRows is now seconds-based.
+ GetClosestNonEmptyRowDirectional and GetClosestNoteDirectional no longer return row in warps.
2011-03-26 13:42:41 +07:00
Thai Pangsakulyanont
f4ecfd08f9
[warps] Fix IsWarpAtRow.
2011-03-25 23:40:03 +07:00
Thai Pangsakulyanont
4316579e89
[warps] my attempt at making warps work. see commit message.
...
+ TimingData: rewrote GetBeatAndBPSFromElapsedTimeNoOffset and GetBeatFromElapsedTimeNoOffset
to make it simpler and compute times correctly, by going through 3 arrays at the same time.
+ TimingData: added TimingData::IsWarpAtRow(int) just in case.
+ The skipping part is now handled by TimingData.
Current issues:
+ the rewritten function does not check if the vectors are sorted.
+ if you press the notes after the skip before the skip is reached, the notes in the warp
range got hit instead because m_iWarpBeginRow was not set before the warp is reached.
+ the notes after the skipped part are not judged if hit before the warp is reached and
the warp is big enough.
2011-03-25 23:19:31 +07:00
Thai Pangsakulyanont
da20a87814
delete m_pTextSectionCount in destructor.
2011-03-25 13:22:49 +07:00
Thai Pangsakulyanont
6f504f6317
merge with "[ " stripping code
2011-03-23 12:06:04 +07:00
Thai Pangsakulyanont
aab30fbfa1
Remove trailing " [" from common substring when loading BMS files.
2011-03-23 09:59:39 +07:00
Thai Pangsakulyanont
a044bf149e
Merge with PMS loading code. Though the notes load now, the samples are in Microsoft ADPCM which can't be loaded correctly at this time.
2011-03-21 01:51:04 +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
fb56c8762d
some PMS files have #PLAYER set to 3
2011-03-20 09:24:47 +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
8d80ddedf2
Compress/Expand shall not break apart hold notes that overlaps the start/end marker.
2011-03-19 19:38:45 +07:00
Thai Pangsakulyanont
a9af35d94e
Make compress/expand preserve timing data by also adjusting BPM changes between start and end marker. The adjusting part is at TimingData::ScaleRegion.
2011-03-19 18:58:44 +07:00
Thai Pangsakulyanont
dc1be26231
Added my changes to the changelog. Put it on 20110316 because I pushed to sm-ssc on that day.
2011-03-18 22:32:00 +07:00
Thai Pangsakulyanont
f044f15444
commit
2011-03-18 12:28:31 +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
af425e798b
merge
2011-03-18 01:21:37 +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
Thai Pangsakulyanont
e3aa689b7d
Make it play the right keysound on press. Improvements on hold notes.
2011-03-16 23:50:53 +07:00
Thai Pangsakulyanont
f1d5a13df8
merge
2011-03-16 18:03:17 +07:00
Thai Pangsakulyanont
b21487b8fa
fix some misaligned charts by making it ignore time signatures before notes.
...
for full explanation see the diff.
2011-03-16 17:44:54 +07:00
Thai Pangsakulyanont
b26867a52c
remove unused variables from PlaceAutoKeysound (5=>3)
2011-03-16 17:02:05 +07:00
Thai Pangsakulyanont
606e6ffce3
sData->nData in one more place
2011-03-16 10:56:51 +07:00
Thai Pangsakulyanont
52c2629868
merge+fix NotesLoaderBMS.cpp
2011-03-15 21:57:04 +07:00
Thai Pangsakulyanont
742304fb73
fix crash
2011-03-10 00:36:23 +07:00
Thai Pangsakulyanont
c1f4967f1c
merge
...
+ support o2mania style BMS (7 keys)
+ move notes to autokeysound when reducing tracks
2011-03-09 19:24:15 +07:00
Thai Pangsakulyanont
0575e73b1e
It wasn't there! I modified the wrong place!
2011-03-01 16:52:59 +07:00
Thai Pangsakulyanont
265c511a60
Better BPM loading!
2011-03-01 16:52:28 +07:00
Thai Pangsakulyanont
43313b76f2
roll notes volume
2011-02-26 12:39:30 +07:00
Thai Pangsakulyanont
37384c9f2f
THIS IS MERGE
2011-02-26 01:19:54 +07:00
Thai Pangsakulyanont
686869f0a3
lol break
2011-02-25 20:43:35 +07:00
Thai Pangsakulyanont
1aa51dca15
Autokeysound transformation!
2011-02-25 20:42:50 +07:00
Thai Pangsakulyanont
69ff65b9a7
Changed hold notes timing.
2011-02-24 13:54:56 +07:00
Thai Pangsakulyanont
e942c4b3d4
improvements on keysounds logic for hold notes
2011-02-24 09:47:57 +07:00
Thai Pangsakulyanont
253049f0a4
hg merge
2011-02-23 21:45:26 +07:00
Thai Pangsakulyanont
a1f425291d
took me a couple of hours to figure out that NotesLoaderSSC is the one
...
that prevents BMS files from loaded: it didn't check for #NOTES2
also added an entry to .hgignore so that it stops bugging me about the Songs folder.
2011-02-23 21:43:07 +07:00
Thai Pangsakulyanont
22845e473e
hg merge from 24a15ba
2011-02-14 21:42:27 +07:00
Thai Pangsakulyanont
a5a23fe963
hg merge: add my own code
2010-12-19 17:44:39 +07:00
Thai Pangsakulyanont
fa7037a0fa
hg merge
2010-10-15 18:04:36 +07:00
Thai Pangsakulyanont
63ebda8a8a
Something changed in project file. Don't know what/where.
2010-10-15 18:04:17 +07:00
Thai Pangsakulyanont
f5cf4ef4ce
Should not have killed the head. Make it tap note.
...
Just like uBMplay.
2010-09-30 16:36:20 +07:00
Thai Pangsakulyanont
853101b6f0
Merge with BMS code
2010-09-30 16:06:59 +07:00
Thai Pangsakulyanont
87d6c4b376
Moved the hold note handling code to below the reading loop because the note data needs to be sorted and in the reading loop, the notes aren't really sorted.
2010-09-29 18:59:24 +07:00