Commit Graph

430 Commits

Author SHA1 Message Date
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