Glenn Maynard
116890da25
fix autoplay, mines
2005-01-28 04:37:48 +00:00
Glenn Maynard
f91c0b49ba
Player::GetClosestNote, Player::GetClosestNoteDirectional with note rows
...
and iterators; eliminates arbitrary "999999" constant
2005-01-25 19:39:31 +00:00
Glenn Maynard
d4a46a214d
deps cleanup
2005-01-25 18:29:42 +00:00
Glenn Maynard
f083765d69
remove ProTimingDisplay; too hard to read to be useful
2005-01-25 18:22:22 +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
6ece8829c4
shut up already
2005-01-25 01:22:32 +00:00
Glenn Maynard
c670a3b62d
cleanup
2005-01-23 23:20:15 +00:00
Glenn Maynard
7185c4c018
fix
2005-01-23 20:43:43 +00:00
Glenn Maynard
edc2c6c300
fix some more cases of iterating over every row
2005-01-22 20:41:50 +00:00
Glenn Maynard
4970e024f3
NoteDataWithScoring has no members; turn it into a namespace
2005-01-22 18:22:38 +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
032ddf0e08
Don't hold a redundant copy of the NoteData in NoteField. NoteField is
...
now just a renderer for NoteData. This means we don't have to carefully
apply all changes to NoteData to NoteField.
2005-01-22 02:50:45 +00:00
Glenn Maynard
46ace22b79
continue merging NoteDataWithScoring stuff
2005-01-22 02:10:54 +00:00
Glenn Maynard
c321bbe196
start merging NoteDataWithScoring and NoteField per-hold and per-tap
...
data into TapNote and HoldNote. This reduces lookup costs significantly.
It's a bit simpler, though I'm not entirely happy with the resulting encapsulation ...
2005-01-22 01:37:32 +00:00
Glenn Maynard
b0df65805e
Update iLastHeldRow even when out of range, to be sure it's clamped
...
properly. Fixed hold counting glitches.
2005-01-18 08:20:14 +00:00
Glenn Maynard
0409fe9d96
comment, cleanup
...
don't reload sounds unnecessarily
2005-01-15 03:10:08 +00:00
Glenn Maynard
0dfdaee605
remove some more old experimental stuff
2005-01-15 02:01:26 +00:00
Glenn Maynard
f8b90e0bcf
remove some old experimental stuff
2005-01-15 01:38:42 +00:00
Glenn Maynard
f4391c932b
remove some old experimental stuff
2005-01-15 01:35:58 +00:00
Glenn Maynard
3a9b2f7f4b
working on fixing up extra loads when entering play mode in the editor
2005-01-15 01:28:29 +00:00
Glenn Maynard
36445d1e1b
typo
2005-01-15 01:09:08 +00:00
Glenn Maynard
8431430721
merge PlayerMinus and Player back together
2005-01-15 01:03:48 +00:00
Glenn Maynard
e4799d5b0e
fix miss combo
2005-01-09 05:24:46 +00:00
Glenn Maynard
3366f50e31
fix combo announcer
2005-01-08 15:34:22 +00:00
Glenn Maynard
7e9a296b7a
cleanup
2005-01-08 15:31:55 +00:00
Glenn Maynard
fae341d21f
cleanup
2005-01-08 15:30:57 +00:00
Chris Danford
9132b5a518
remove unnecessary dependencies on ScreenGameplay
2005-01-06 01:52:45 +00:00
Glenn Maynard
c5a683b03c
optimize battle mode: don't call NoteField::CacheAllUsedNoteSkins every frame
2005-01-01 22:39:08 +00:00
Ben Anderson
dee52f75b1
Fix combos (does ScoreKeeper5th need fixing too?)
2004-12-29 19:12:25 +00:00
Chris Danford
798b55b41e
remove unused variables
2004-12-22 08:06:51 +00:00
Chris Danford
a1340dd1c0
have gameplay objects access PlayerStageStats though a member pointer and not directly access g_CurStageStats.
2004-12-22 07:31:27 +00:00
Chris Danford
09d018444e
split StageStats into player-specific and non-player-specific structs
2004-12-20 10:47:41 +00:00
Chris Danford
f840c014a9
Move some player-specific data out of the bloated GameState class.
...
Have gameplay objects hold a PlayerState pointer instead of a PlayerNumber and indexing back into GameState.
This will simplify off-screen players (e.g. CPU ghosts, network replicated human players, >2 players using one NoteField)
2004-12-20 06:25:59 +00:00
Glenn Maynard
7e2adc093a
simplify
2004-12-06 05:25:00 +00:00
Chris Danford
ed19821e09
rename: ActorCommand -> Command
...
Make Command smaller and more generic.
Parse arguments on use, not in Command::Load.
2004-12-03 05:19:46 +00:00
Glenn Maynard
1b7fbd69d6
unneeded now
2004-11-08 07:14:47 +00:00
Chris Danford
ec4090a3eb
fix VC7 warnings
2004-11-08 06:16:22 +00:00
Glenn Maynard
7a8116c119
Play the ghost flash for all judgements; if a note skin doesn't want this,
...
disable it in metrics.
2004-11-08 04:05:46 +00:00
Chris Danford
d08e8b9d96
metrics cleanup
2004-11-07 10:38:20 +00:00
Chris Danford
b8259d7af9
move player positions from Style into metrics
2004-11-07 05:49:06 +00:00
Glenn Maynard
072d41aada
Fix "Assertion 'iNumTapsInRow > 0' failed" if attack notes happen to slip
...
into the data. (They aren't generally used yet, and not recommended since
they may change significantly, but they occasionally end up in data, so let's
not crash.)
2004-11-06 23:31:03 +00:00
Chris Danford
5127ceef4d
remove CachedThemeMetrics in favor of ThemeMetric<T>
...
fix "CachedThemeMetrics don't read HTML colors and don't evaluate Lua expressions"
2004-11-06 20:36:04 +00:00
Chris Danford
72bd480883
CENTER_* -> SCREEN_CENTER
2004-11-05 06:35:10 +00:00
Glenn Maynard
15bfa19e4b
always preload keys
2004-10-25 00:59:54 +00:00
Glenn Maynard
b364bb830b
separate search for key to play
2004-10-25 00:46:08 +00:00
Glenn Maynard
ef1a3fe1c4
simplify
2004-10-25 00:31:56 +00:00
Glenn Maynard
515b57c8d3
non-brute-force search for nearest grading note, add bAllowGraded (not
...
used yet)
2004-10-25 00:29:34 +00:00
Glenn Maynard
2ad02a8332
Always play the key, even if it's already been hit.
2004-10-24 23:41:02 +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