Steve Checkoway
077f826afd
No need for friend. This only uses the public interface.
2006-07-21 08:03:13 +00:00
Steve Checkoway
28e8e9148e
GetTapNoteRangeAllTracks() returns an all_tracks_iterator which can be used to iterate over all of the tracks in all of the rows in the range.
2006-07-21 07:58:30 +00:00
Steve Checkoway
8129d943ba
It's hard to maintain this information when using begin() and end() so rather than wrapping the iterators, just check each time IsComposite() is called since it doesn't happen _that_ often. Just don't call IsComposite() often.
2006-06-26 09:33:11 +00:00
Steve Checkoway
91f1329653
Composite NoteData for when one NoteData represents multiple NoteDatas.
2006-06-20 13:20:45 +00:00
Chris Danford
1ad58b4631
experimental: save NoteData to XML for recording played games
2005-11-22 21:18:45 +00:00
Glenn Maynard
b8838ba5c0
comment to make IsHoldNoteAtRow's behavior clear, add IsHoldHeadOrBodyAtRow
2005-07-22 00:34:54 +00:00
Glenn Maynard
4ec405f13b
IsHoldNoteAtBeat -> IsHoldNoteAtRow
2005-07-22 00:14:24 +00:00
Glenn Maynard
5769d00abf
implement GetPrevTapNoteRowForAllTracks
2005-07-21 22:30:00 +00:00
Glenn Maynard
73f5051118
add NoteData::GetNumRolls
2005-04-25 09:33:58 +00:00
Chris Danford
cd8b35e801
fix "can't paste from clipboard with only one row in clipboard"
...
fix "can't Undo to a blank NoteField"
clamp paste area so that pasting past the maximum beat is impossible
2005-03-29 20:25:14 +00:00
Glenn Maynard
34b8c2a01a
fix hands counting
2005-03-23 10:37:36 +00:00
Chris Danford
5befb60456
method name cleanup, add comments
2005-03-20 20:15:41 +00:00
Glenn Maynard
f752e1c3b0
hide NoteData::InsertHoldTails away in NoteDataUtils
2005-02-07 22:03:32 +00:00
Glenn Maynard
10bc0bf336
remove NoteData::RemoveHoldTails
...
cleanup
2005-02-07 21:55:43 +00:00
Glenn Maynard
bb7482e722
evil big commit (sorry):
...
Remove m_HoldNote array entirely. Remove 2sAnd3s. Store hold note
durations in the hold head. hold_tail only still exists when InsertHoldTails
is used, to make SM parsing a little easier (may go away). Add helpers
for iterating over ranges while including or excluding adjacent and overlapping
hold notes. Range operations are now [start,end) instead of [start,end].
(probably more details coming to sm-dev soon)
2005-01-25 05:02:35 +00:00
Glenn Maynard
206363742d
remove 4s
2005-01-23 21:37:40 +00:00
Glenn Maynard
5da9c848d6
make NoteDataUtil::LoadTransformedLights work
2005-01-23 17:58:32 +00:00
Glenn Maynard
7cf3351851
implement NoteDataUtil::ClearLeft and NoteDataUtil::ClearRight without 4s
2005-01-23 05:31:55 +00:00
Glenn Maynard
14bc4ae9f6
reduce use of 4s
2005-01-22 20:22:12 +00:00
Glenn Maynard
a769bc7c41
cleanup
2005-01-22 19:25:05 +00:00
Glenn Maynard
cd9b66220a
use MAX_NOTE_ROW, fixes
2005-01-22 19:18:42 +00:00
Glenn Maynard
77d58c0d63
"Beat rows" are really just a fixed-point representation of beats. Prefer
...
using them in general over beats: it's more precise (we can tell exactly
how it'll round, and we can compare them without ugly error-margin hacks),
and it's what we need to use them with NoteData.
2005-01-22 17:34:10 +00:00
Glenn Maynard
754bce5c98
optimize rendering iteration
2005-01-22 03:11:29 +00:00
Glenn Maynard
d581ae240e
fix row 0 being skipped
2004-11-03 08:22:20 +00:00
Glenn Maynard
20a278fb92
optimize
2004-10-26 18:34:52 +00:00
Glenn Maynard
b6091d6cd5
NoteData::EliminateAllButOneTap -> NoteDataUtil::RemoveAllButOneTap;
...
use accessors for NoteData::GetFirstRow, NoteData::GetLastRow
2004-10-25 03:36:42 +00:00
Glenn Maynard
a99d7e0dc4
remove ReserveRows
2004-10-25 03:17:56 +00:00
Glenn Maynard
f63c57b5f4
remove GetTapNoteX
2004-10-25 03:16:40 +00:00
Glenn Maynard
c55dfd354f
remove PadTapNotes
2004-10-25 03:12:11 +00:00
Glenn Maynard
514f184fef
NoteData::GetPrevTapNoteRowForTrack
2004-10-25 00:25:49 +00:00
Chris Danford
1b3c786213
cleanup: variable name and const
2004-10-24 10:20:24 +00:00
Chris Danford
584189a10c
naming cleanup: iNoteIndex -> row
2004-10-24 00:17:15 +00:00
Chris Danford
3ac1dba044
simplify TapAttack storage:
...
store attack info in TapNote
in the SMNoteData string, store the attack params inline (like with keysounds)
play keysounds when hit
still doesn't play keysounds on a miss
still doesn't play autoKeysounds
2004-10-23 23:41:49 +00:00
Chris Danford
09193d9e4b
cleanup:
...
use references when passing NoteData
Have player own a NoteDataWithScoring, not derive from it
2004-10-23 17:43:49 +00:00
Chris Danford
0f6ed81faf
Use a associative arrays instead of normal vectors to hold TapNotes.
...
More places NoteDataUtil, NoteDataWithScoring need to be converted to use the new row iteration macros.
2004-09-29 06:43:57 +00:00
Chris Danford
3e140b0af9
remove hard-coded track limit in NoteData
2004-09-25 07:59:56 +00:00
Chris Danford
d2a54cca31
make TapNote a struct. Over time, more properties will move from the enums and into bit flags.
2004-09-12 05:56:24 +00:00
Chris Danford
809dd7dc27
rename: MaxRow -> NumRows
...
fix some off-by-1 row errors
2004-09-11 03:50:37 +00:00
Glenn Maynard
b7799ccd0a
move autogen into NoteDataUtil
2004-07-17 05:10:11 +00:00
Chris Danford
96ca652c94
move RadarValues into a separate file
...
clean up usage of RadarValues
2004-07-11 07:21:33 +00:00
Glenn Maynard
2cab5c4689
license updates
2004-05-31 22:42:12 +00:00
Chris Danford
d65404e750
TapSteps -> TapNotes
2004-05-24 04:26:54 +00:00
Chris Danford
0ec2a536d9
TapSteps -> TapNotes
2004-05-24 04:17:19 +00:00
Chris Danford
4bb777232d
name cleanup: "pNotes" -> "pSteps"
2004-05-24 03:41:39 +00:00
Chris Danford
575a9abf96
improve planted, twister
2004-05-15 03:00:43 +00:00
Chris Danford
15e19d4885
fix AddMines places mines that overlap other taps and hold heads (Disconnected Mobius expert)
2004-02-25 08:40:03 +00:00
Glenn Maynard
91e633d880
fix CopyRange receiving legitimate -1 values for ToIndexBegin
...
and shifting everything by one row
2004-01-19 20:46:34 +00:00
Glenn Maynard
4facdd0a06
fix hold note glitches
2003-12-18 02:34:59 +00:00
Glenn Maynard
f2b06a3ea0
hands fixes
2003-12-16 07:58:37 +00:00
Glenn Maynard
2db4faae95
Optimize:
...
ReserveRows, like vector::reserve
GetTapNoteX, non-bounds-checking GetTapNote
Don't put these large functions in the header; they're probably
too big to inline anyway
2003-12-11 04:52:23 +00:00